github.com/minio/console@v1.4.1/web-app/src/screens/Console/ObjectBrowser/transferManager.ts (about) 1 // This file is part of MinIO Console Server 2 // Copyright (c) 2022 MinIO, Inc. 3 // 4 // This program is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU Affero General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // This program is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU Affero General Public License for more details. 13 // 14 // You should have received a copy of the GNU Affero General Public License 15 // along with this program. If not, see <http://www.gnu.org/licenses/>. 16 17 let objectCalls: { [key: string]: XMLHttpRequest } = {}; 18 let formDataElements: { [key: string]: FormData } = {}; 19 20 export const storeCallForObjectWithID = (id: string, call: any) => { 21 objectCalls[id] = call; 22 }; 23 24 export const callForObjectID = (id: string): any => { 25 return objectCalls[id]; 26 }; 27 28 export const storeFormDataWithID = (id: string, formData: FormData) => { 29 formDataElements[id] = formData; 30 }; 31 32 export const formDataFromID = (id: string): FormData => { 33 return formDataElements[id]; 34 }; 35 36 export const removeTrace = (id: string) => { 37 delete objectCalls[id]; 38 delete formDataElements[id]; 39 }; 40 41 export const makeid = (length: number) => { 42 var result = ""; 43 var characters = 44 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; 45 var charactersLength = characters.length; 46 for (var i = 0; i < length; i++) { 47 result += characters.charAt(Math.floor(Math.random() * charactersLength)); 48 } 49 return result; 50 };