@scaleflex/widget-utils 4.8.5 → 4.8.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. package/CHANGELOG.md +7425 -7416
  2. package/LICENSE +21 -21
  3. package/README.md +58 -58
  4. package/package.json +3 -3
  5. package/types/index.d.ts +279 -279
  6. package/lib/AbortController.js +0 -20
  7. package/lib/BlurHash/base83.js +0 -10
  8. package/lib/BlurHash/decode.js +0 -80
  9. package/lib/BlurHash/error.js +0 -28
  10. package/lib/BlurHash/utils.js +0 -22
  11. package/lib/CustomDate.js +0 -157
  12. package/lib/EventTracker.js +0 -42
  13. package/lib/FOCUSABLE_ELEMENTS.js +0 -1
  14. package/lib/LinkHelper.js +0 -153
  15. package/lib/NetworkError.js +0 -30
  16. package/lib/ProgressTimeout.js +0 -45
  17. package/lib/RateLimitedQueue.js +0 -197
  18. package/lib/RequestError.js +0 -38
  19. package/lib/Timeframes/getDateRange.js +0 -45
  20. package/lib/TranslationMissingKeysConsoleHelper.js +0 -113
  21. package/lib/Translator.js +0 -200
  22. package/lib/addUrlParams.js +0 -27
  23. package/lib/adjustUpdatedFolders.js +0 -22
  24. package/lib/asyncTimeout.js +0 -6
  25. package/lib/audioMimeTypes.js +0 -3
  26. package/lib/blobToDataURI.js +0 -13
  27. package/lib/callIfFunction.js +0 -10
  28. package/lib/canEditVideo.js +0 -9
  29. package/lib/canvasToBlob.js +0 -18
  30. package/lib/capitalizeFirstLetter.js +0 -4
  31. package/lib/checkConnection.js +0 -4
  32. package/lib/checkFileOrFolderNameValidation.js +0 -4
  33. package/lib/checkIfPngSvgGIF.js +0 -3
  34. package/lib/checkImageIfPngJpegOrWebpOrAvif.js +0 -5
  35. package/lib/checkItemsSupportExportWithReason.js +0 -41
  36. package/lib/checkPermissions.js +0 -26
  37. package/lib/cloudimageSupportedInputMimeTypes.js +0 -2
  38. package/lib/clsx.js +0 -14
  39. package/lib/constants.js +0 -572
  40. package/lib/convertBytesToMb.js +0 -5
  41. package/lib/convertGbToBytes.js +0 -4
  42. package/lib/convertVideoFileTypeToSupported.js +0 -17
  43. package/lib/copyText.js +0 -25
  44. package/lib/createFolderVirtualPath.js +0 -14
  45. package/lib/createThunk.js +0 -350
  46. package/lib/customEncodeURIComponent.js +0 -47
  47. package/lib/dataURItoBlob.js +0 -33
  48. package/lib/dataURItoFile.js +0 -4
  49. package/lib/dateStrToClearDateTime.js +0 -20
  50. package/lib/debounce.js +0 -14
  51. package/lib/deepEqual.js +0 -23
  52. package/lib/deepMerge.js +0 -56
  53. package/lib/deserializeFunction.js +0 -5
  54. package/lib/documentMimeTypes.js +0 -2
  55. package/lib/downloadFromBlob.js +0 -16
  56. package/lib/emitSocketProgress.js +0 -18
  57. package/lib/escapeRegExp.js +0 -4
  58. package/lib/extractFileDataNoBlob.js +0 -12
  59. package/lib/fetchWithNetworkError.js +0 -14
  60. package/lib/fieldsQueriesGetters.js +0 -46
  61. package/lib/findAllDOMElements.js +0 -18
  62. package/lib/findAllRegexMatchesInString.js +0 -16
  63. package/lib/findDOMElement.js +0 -17
  64. package/lib/findIndex.js +0 -9
  65. package/lib/formatDuration.js +0 -22
  66. package/lib/formatNumbers.js +0 -32
  67. package/lib/formatResolution.js +0 -17
  68. package/lib/formatSeconds.js +0 -14
  69. package/lib/generateFileId.js +0 -53
  70. package/lib/generateI18nKeyFromString.js +0 -11
  71. package/lib/generatePsdThumbnail/adaptHexBoundries.js +0 -9
  72. package/lib/generatePsdThumbnail/bufferToHex.js +0 -12
  73. package/lib/generatePsdThumbnail/generatePsdThumbnail.js +0 -36
  74. package/lib/generatePsdThumbnail/generatePsdThumbnailBytes.js +0 -8
  75. package/lib/generatePsdThumbnail/generatePsdThumbnailHex.js +0 -4
  76. package/lib/generateSelectInputPlaceholder.js +0 -24
  77. package/lib/getActionErrorState.js +0 -17
  78. package/lib/getArraysMutualObjects.js +0 -12
  79. package/lib/getBytesRemaining.js +0 -9
  80. package/lib/getClientTimezone.js +0 -5
  81. package/lib/getCloudimagePrefixedUrl.js +0 -23
  82. package/lib/getDateDaysFromNow.js +0 -17
  83. package/lib/getDateMinusDay.js +0 -5
  84. package/lib/getDateString.js +0 -20
  85. package/lib/getDaysLeft.js +0 -9
  86. package/lib/getDecodedUriComponent.js +0 -10
  87. package/lib/getDownloadSpeed.js +0 -7
  88. package/lib/getDroppedFiles/index.js +0 -24
  89. package/lib/getDroppedFiles/utils/fallbackApi.js +0 -7
  90. package/lib/getDroppedFiles/utils/webkitGetAsEntryApi/getFilesAndDirectoriesFromDirectory.js +0 -36
  91. package/lib/getDroppedFiles/utils/webkitGetAsEntryApi/getRelativePath.js +0 -16
  92. package/lib/getDroppedFiles/utils/webkitGetAsEntryApi/index.js +0 -57
  93. package/lib/getEncodedWrappedUrl.js +0 -7
  94. package/lib/getFileAssetsTokenUrl.js +0 -14
  95. package/lib/getFileCdnLink.js +0 -6
  96. package/lib/getFileDefaultIcon.js +0 -14
  97. package/lib/getFileDetails.js +0 -81
  98. package/lib/getFileExtension.js +0 -32
  99. package/lib/getFileLink.js +0 -17
  100. package/lib/getFileNameAndExtension.js +0 -22
  101. package/lib/getFileType.js +0 -23
  102. package/lib/getFileTypeExtension.js +0 -22
  103. package/lib/getFilterFileFormatIcon.js +0 -6
  104. package/lib/getFolderDetails.js +0 -30
  105. package/lib/getFormattedPreviewUrl.js +0 -79
  106. package/lib/getHoursAndMinutes.js +0 -9
  107. package/lib/getImageEditUrl.js +0 -36
  108. package/lib/getImgFileDimensions.js +0 -25
  109. package/lib/getItemIcon.js +0 -112
  110. package/lib/getItemPath.js +0 -10
  111. package/lib/getItemPreviewWidthHeight.js +0 -10
  112. package/lib/getItemsSizeInBytes.js +0 -12
  113. package/lib/getJsonParsedValue.js +0 -11
  114. package/lib/getLinkWithNewParams.js +0 -13
  115. package/lib/getMetadataMultiSelectQuery.js +0 -66
  116. package/lib/getNormalizedItems.js +0 -55
  117. package/lib/getObjectsMutualProperties.js +0 -32
  118. package/lib/getRandomNumber.js +0 -12
  119. package/lib/getSocketHost.js +0 -7
  120. package/lib/getSpeed.js +0 -8
  121. package/lib/getTime.js +0 -18
  122. package/lib/getTimeStamp.js +0 -18
  123. package/lib/handleError.js +0 -13
  124. package/lib/handlePressEnter.js +0 -9
  125. package/lib/handlePromise.js +0 -39
  126. package/lib/hasProperty.js +0 -3
  127. package/lib/hexToRgb.js +0 -15
  128. package/lib/htmlSanitizer.js +0 -6
  129. package/lib/humanReadableDate.js +0 -45
  130. package/lib/humanReadableDateWithTranslations.js +0 -29
  131. package/lib/i18n.client.js +0 -54
  132. package/lib/ignoreEvent.js +0 -10
  133. package/lib/index.js +0 -0
  134. package/lib/injectVirtualPathToFolders.js +0 -24
  135. package/lib/isAi.js +0 -7
  136. package/lib/isArchive.js +0 -12
  137. package/lib/isAudio.js +0 -9
  138. package/lib/isAudioAndSupportsPlayback.js +0 -10
  139. package/lib/isCloudimageFastPreviewSupported.js +0 -16
  140. package/lib/isDOMElement.js +0 -9
  141. package/lib/isDocument.js +0 -10
  142. package/lib/isDragDropSupported.js +0 -20
  143. package/lib/isEmptyObject.js +0 -4
  144. package/lib/isEps.js +0 -8
  145. package/lib/isFile.js +0 -5
  146. package/lib/isFileSupportedByCloudimage.js +0 -14
  147. package/lib/isFolder.js +0 -4
  148. package/lib/isFontFile.js +0 -9
  149. package/lib/isFunction.js +0 -4
  150. package/lib/isImage.js +0 -11
  151. package/lib/isJpg.js +0 -8
  152. package/lib/isMobileDevice.js +0 -12
  153. package/lib/isNetworkError.js +0 -7
  154. package/lib/isNumber.js +0 -4
  155. package/lib/isObjectType.js +0 -5
  156. package/lib/isObjectURL.js +0 -10
  157. package/lib/isOpenedFromAdobe.js +0 -3
  158. package/lib/isOtf.js +0 -10
  159. package/lib/isPdf.js +0 -9
  160. package/lib/isPhotoshopFile.js +0 -8
  161. package/lib/isPreviewSupported.js +0 -12
  162. package/lib/isPromise.js +0 -5
  163. package/lib/isPsd.js +0 -8
  164. package/lib/isScriptFile.js +0 -12
  165. package/lib/isSupportedVideo.js +0 -8
  166. package/lib/isSvg.js +0 -5
  167. package/lib/isTextFile.js +0 -8
  168. package/lib/isThumbnailCloudimgSupported.js +0 -13
  169. package/lib/isThumbnailLocallySupported.js +0 -9
  170. package/lib/isTiff.js +0 -8
  171. package/lib/isTransparencySupported.js +0 -12
  172. package/lib/isTtf.js +0 -11
  173. package/lib/isUploadableFile.js +0 -7
  174. package/lib/isUrl.js +0 -5
  175. package/lib/isValidUri.js +0 -18
  176. package/lib/isVideo.js +0 -8
  177. package/lib/isVideoResourceIntensive.js +0 -9
  178. package/lib/literalDateFromDateObj.js +0 -6
  179. package/lib/logErrorIfDevEnv.js +0 -7
  180. package/lib/lowercaseFirstLetter.js +0 -4
  181. package/lib/mapArrayByStep.js +0 -12
  182. package/lib/metadata/checkFieldValidation.js +0 -51
  183. package/lib/metadata/generateItemMetadataState.js +0 -63
  184. package/lib/metadata/generateMetadataDefaultState.js +0 -30
  185. package/lib/metadata/getFileCustomMetadataGroups.js +0 -23
  186. package/lib/metadata/getGeoPointValidationErrors.js +0 -32
  187. package/lib/metadata/getMetaAttachmentFields.js +0 -9
  188. package/lib/metadata/getMetadataEmptyAssets.js +0 -28
  189. package/lib/metadata/getMetadataFieldGeoPointValue.js +0 -42
  190. package/lib/metadata/getMetadataFieldVariantValue.js +0 -31
  191. package/lib/metadata/getMetadataGroups.js +0 -16
  192. package/lib/metadata/getRequiredMetadataFields.js +0 -13
  193. package/lib/metadata/isM0LegacyMetaVersion.js +0 -5
  194. package/lib/metadata/isM1EdgyMetaVersion.js +0 -5
  195. package/lib/metadata/mapMetaAttachmentsObjsToUuids.js +0 -21
  196. package/lib/metadata/updateValidationErrors.js +0 -59
  197. package/lib/metadata/validateItemMetadata.js +0 -70
  198. package/lib/mimeTypes.js +0 -60
  199. package/lib/nanoid.js +0 -18
  200. package/lib/openLink.js +0 -3
  201. package/lib/openLinkInNewTab.js +0 -12
  202. package/lib/prettyETA.js +0 -15
  203. package/lib/prettyFileSize.js +0 -7
  204. package/lib/preventDefault.js +0 -4
  205. package/lib/provideSvgStrWithCurrColor.js +0 -10
  206. package/lib/recursiveFnCall.js +0 -26
  207. package/lib/removeAllUrlParams.js +0 -4
  208. package/lib/removeDuplicatesFromArray.js +0 -20
  209. package/lib/removeEmptyFolders.js +0 -8
  210. package/lib/removeFileExtension.js +0 -4
  211. package/lib/removeUrlParamsWithRegex.js +0 -14
  212. package/lib/reorder.js +0 -15
  213. package/lib/requestFile.js +0 -36
  214. package/lib/rgbToHex.js +0 -4
  215. package/lib/secondsToTime.js +0 -10
  216. package/lib/serializeFunction.js +0 -4
  217. package/lib/settle.js +0 -19
  218. package/lib/sortEntitiesByName.js +0 -18
  219. package/lib/splitCamelCase.js +0 -4
  220. package/lib/splitPathToPathsAndNames.js +0 -25
  221. package/lib/stopPropagation.js +0 -4
  222. package/lib/styledComponentsMixins/truncate.mixin.js +0 -8
  223. package/lib/timeZones.js +0 -1
  224. package/lib/toArray.js +0 -6
  225. package/lib/toLowerCase.js +0 -5
  226. package/lib/toggleElementFullscreen.js +0 -27
  227. package/lib/visibility.js +0 -39
package/types/index.d.ts CHANGED
@@ -1,279 +1,279 @@
1
- declare module "@scaleflex/widget-utils/lib/Translator" {
2
- namespace Translator {
3
- export interface Locale {
4
- strings?: {
5
- [key: string]: string | { [plural: number]: string };
6
- };
7
- pluralize?: (n: number) => number;
8
- }
9
- }
10
-
11
- class Translator {
12
- constructor(opts: Translator.Locale | Translator.Locale[]);
13
- }
14
-
15
- export = Translator;
16
- }
17
-
18
- declare module "@scaleflex/widget-utils/lib/EventTracker" {
19
- namespace EventTracker {
20
- export type EventHandler = (...args: any[]) => void;
21
- export interface Emitter {
22
- on: (event: string, handler: EventHandler) => void;
23
- off: (event: string, handler: EventHandler) => void;
24
- }
25
- }
26
-
27
- class EventTracker {
28
- constructor(emitter: EventTracker.Emitter);
29
- on(event: string, handler: EventTracker.EventHandler): void;
30
- remove(): void;
31
- }
32
-
33
- export = EventTracker;
34
- }
35
-
36
- declare module "@scaleflex/widget-utils/lib/ProgressTimeout" {
37
- class ProgressTimeout {
38
- constructor(timeout: number, timeoutHandler: () => void);
39
- progress(): void;
40
- done(): void;
41
- }
42
- export = ProgressTimeout;
43
- }
44
-
45
- declare module "@scaleflex/widget-utils/lib/RateLimitedQueue" {
46
- namespace RateLimitedQueue {
47
- export type AbortFunction = () => void;
48
- export type PromiseFunction = (...args: any[]) => Promise<any>;
49
- export type QueueEntry = {
50
- abort: () => void;
51
- done: () => void;
52
- };
53
- export type QueueOptions = {
54
- priority?: number;
55
- };
56
- }
57
-
58
- class RateLimitedQueue {
59
- constructor(limit: number);
60
- run(
61
- fn: () => RateLimitedQueue.AbortFunction,
62
- queueOptions?: RateLimitedQueue.QueueOptions
63
- ): RateLimitedQueue.QueueEntry;
64
- wrapPromiseFunction(
65
- fn: () => RateLimitedQueue.PromiseFunction,
66
- queueOptions?: RateLimitedQueue.QueueOptions
67
- ): RateLimitedQueue.PromiseFunction;
68
- }
69
-
70
- export = RateLimitedQueue;
71
- }
72
-
73
- declare module "@scaleflex/widget-utils/lib/canvasToBlob" {
74
- function canvasToBlob(
75
- canvas: HTMLCanvasElement,
76
- type: string,
77
- quality?: number
78
- ): Promise<Blob>;
79
- export = canvasToBlob;
80
- }
81
-
82
- declare module "@scaleflex/widget-utils/lib/dataURItoBlob" {
83
- function dataURItoBlob(
84
- dataURI: string,
85
- opts: { mimeType?: string; name?: string }
86
- ): Blob;
87
- export = dataURItoBlob;
88
- }
89
-
90
- declare module "@scaleflex/widget-utils/lib/dataURItoFile" {
91
- function dataURItoFile(
92
- dataURI: string,
93
- opts: { mimeType?: string; name?: string }
94
- ): File;
95
- export = dataURItoFile;
96
- }
97
-
98
- declare module "@scaleflex/widget-utils/lib/emitSocketProgress" {
99
- import FilerobotUtils = require("@scaleflex/widget-utils");
100
-
101
- interface ProgressData {
102
- progress: number;
103
- bytesFinished: number;
104
- bytesTotal: number;
105
- }
106
-
107
- function emitSocketProgress(
108
- filerobot: object,
109
- progressData: ProgressData,
110
- file: FilerobotUtils.FilerobotFile
111
- ): void;
112
- export = emitSocketProgress;
113
- }
114
-
115
- declare module "@scaleflex/widget-utils/lib/findAllDOMElements" {
116
- function findAllDOMElements(element: string | HTMLElement): HTMLElement[];
117
- export = findAllDOMElements;
118
- }
119
-
120
- declare module "@scaleflex/widget-utils/lib/findDOMElement" {
121
- function findDOMElement(element: string | HTMLElement): HTMLElement | null;
122
- export = findDOMElement;
123
- }
124
-
125
- declare module "@scaleflex/widget-utils/lib/generateFileId" {
126
- import FilerobotUtils = require("@scaleflex/widget-utils");
127
-
128
- function generateFileId(file: FilerobotUtils.FilerobotFile): string;
129
- export = generateFileId;
130
- }
131
-
132
- declare module "@scaleflex/widget-utils/lib/getBytesRemaining" {
133
- function getBytesRemaining(files): number;
134
- export = getBytesRemaining;
135
- }
136
-
137
- declare module "@scaleflex/widget-utils/lib/getETA" {
138
- function getETA(progress: object): number;
139
- export = getETA;
140
- }
141
-
142
- declare module "@scaleflex/widget-utils/lib/getFileNameAndExtension" {
143
- function getFileNameAndExtension(filename: string): {
144
- name: string;
145
- extension: string | undefined;
146
- };
147
- export = getFileNameAndExtension;
148
- }
149
-
150
- declare module "@scaleflex/widget-utils/lib/getFileType" {
151
- import FilerobotUtils = require("@scaleflex/widget-utils");
152
-
153
- function getFileType(file: FilerobotUtils.FilerobotFile): string | null;
154
- export = getFileType;
155
- }
156
-
157
- declare module "@scaleflex/widget-utils/lib/getFileTypeExtension" {
158
- function getFileTypeExtension(mime: string): string;
159
- export = getFileTypeExtension;
160
- }
161
-
162
- declare module "@scaleflex/widget-utils/lib/getSocketHost" {
163
- function getSocketHost(url: string): string;
164
- export = getSocketHost;
165
- }
166
-
167
- declare module "@scaleflex/widget-utils/lib/getSpeed" {
168
- function getSpeed(progress: {
169
- bytesTotal: number;
170
- bytesFinished: number;
171
- }): number;
172
- export = getSpeed;
173
- }
174
-
175
- declare module "@scaleflex/widget-utils/lib/getTimeStamp" {
176
- function getTimeStamp(): string;
177
- export = getTimeStamp;
178
- }
179
-
180
- declare module "@scaleflex/widget-utils/lib/isDOMElement" {
181
- function isDOMElement(element: any): boolean;
182
- export = isDOMElement;
183
- }
184
-
185
- declare module "@scaleflex/widget-utils/lib/isObjectURL" {
186
- function isObjectURL(url: string): boolean;
187
- export = isObjectURL;
188
- }
189
-
190
- declare module "@scaleflex/widget-utils/lib/isDragDropSupported" {
191
- function isDragDropSupported(): boolean;
192
- export = isDragDropSupported;
193
- }
194
-
195
- declare module "@scaleflex/widget-utils/lib/isPreviewSupported" {
196
- function isPreviewSupported(mime: string): boolean;
197
- export = isPreviewSupported;
198
- }
199
-
200
- declare module "@scaleflex/widget-utils/lib/isTouchDevice" {
201
- function isTouchDevice(): boolean;
202
- export = isTouchDevice;
203
- }
204
-
205
- declare module "@scaleflex/widget-utils/lib/prettyETA" {
206
- function prettyETA(seconds: number): string;
207
- export = prettyETA;
208
- }
209
-
210
- declare module "@scaleflex/widget-utils/lib/secondsToTime" {
211
- function secondsToTime(seconds: number): string;
212
- export = secondsToTime;
213
- }
214
-
215
- declare module "@scaleflex/widget-utils/lib/settle" {
216
- function settle<T>(
217
- promises: Promise<T>[]
218
- ): Promise<{ successful: T[]; failed: any[] }>;
219
- export = settle;
220
- }
221
-
222
- declare module "@scaleflex/widget-utils/lib/toArray" {
223
- function toArray(list: any): any[];
224
- export = toArray;
225
- }
226
-
227
- declare module "@scaleflex/widget-utils/lib/getDroppedFiles" {
228
- function getDroppedFiles(
229
- dataTransfer: DataTransfer,
230
- options?: object
231
- ): Promise<File[]>;
232
- export = getDroppedFiles;
233
- }
234
-
235
- declare module "@scaleflex/widget-utils" {
236
- interface IndexedObject<T> {
237
- [key: string]: T;
238
- [key: number]: T;
239
- }
240
- export type InternalMetadata = { name: string; type?: string };
241
- export interface FilerobotFile<
242
- TMeta = IndexedObject<any>,
243
- TBody = IndexedObject<any>
244
- > {
245
- data: Blob | File;
246
- extension: string;
247
- id: string;
248
- isRemote: boolean;
249
- meta: InternalMetadata & TMeta;
250
- name: string;
251
- preview?: string;
252
- progress?: {
253
- activity: string;
254
- startedAt: number | null;
255
- percentage: number;
256
- bytesFinished: number;
257
- bytesTotal: number;
258
- status: string;
259
- };
260
- remote?: {
261
- host: string;
262
- url: string;
263
- body?: object;
264
- };
265
- size: number;
266
- source?: string;
267
- type?: string;
268
- response?: {
269
- body: TBody;
270
- status: number;
271
- uploadURL: string | undefined;
272
- };
273
- }
274
- export interface Store {
275
- getState(): object;
276
- setState(patch: object): void;
277
- subscribe(listener: any): () => void;
278
- }
279
- }
1
+ declare module "@scaleflex/widget-utils/lib/Translator" {
2
+ namespace Translator {
3
+ export interface Locale {
4
+ strings?: {
5
+ [key: string]: string | { [plural: number]: string };
6
+ };
7
+ pluralize?: (n: number) => number;
8
+ }
9
+ }
10
+
11
+ class Translator {
12
+ constructor(opts: Translator.Locale | Translator.Locale[]);
13
+ }
14
+
15
+ export = Translator;
16
+ }
17
+
18
+ declare module "@scaleflex/widget-utils/lib/EventTracker" {
19
+ namespace EventTracker {
20
+ export type EventHandler = (...args: any[]) => void;
21
+ export interface Emitter {
22
+ on: (event: string, handler: EventHandler) => void;
23
+ off: (event: string, handler: EventHandler) => void;
24
+ }
25
+ }
26
+
27
+ class EventTracker {
28
+ constructor(emitter: EventTracker.Emitter);
29
+ on(event: string, handler: EventTracker.EventHandler): void;
30
+ remove(): void;
31
+ }
32
+
33
+ export = EventTracker;
34
+ }
35
+
36
+ declare module "@scaleflex/widget-utils/lib/ProgressTimeout" {
37
+ class ProgressTimeout {
38
+ constructor(timeout: number, timeoutHandler: () => void);
39
+ progress(): void;
40
+ done(): void;
41
+ }
42
+ export = ProgressTimeout;
43
+ }
44
+
45
+ declare module "@scaleflex/widget-utils/lib/RateLimitedQueue" {
46
+ namespace RateLimitedQueue {
47
+ export type AbortFunction = () => void;
48
+ export type PromiseFunction = (...args: any[]) => Promise<any>;
49
+ export type QueueEntry = {
50
+ abort: () => void;
51
+ done: () => void;
52
+ };
53
+ export type QueueOptions = {
54
+ priority?: number;
55
+ };
56
+ }
57
+
58
+ class RateLimitedQueue {
59
+ constructor(limit: number);
60
+ run(
61
+ fn: () => RateLimitedQueue.AbortFunction,
62
+ queueOptions?: RateLimitedQueue.QueueOptions
63
+ ): RateLimitedQueue.QueueEntry;
64
+ wrapPromiseFunction(
65
+ fn: () => RateLimitedQueue.PromiseFunction,
66
+ queueOptions?: RateLimitedQueue.QueueOptions
67
+ ): RateLimitedQueue.PromiseFunction;
68
+ }
69
+
70
+ export = RateLimitedQueue;
71
+ }
72
+
73
+ declare module "@scaleflex/widget-utils/lib/canvasToBlob" {
74
+ function canvasToBlob(
75
+ canvas: HTMLCanvasElement,
76
+ type: string,
77
+ quality?: number
78
+ ): Promise<Blob>;
79
+ export = canvasToBlob;
80
+ }
81
+
82
+ declare module "@scaleflex/widget-utils/lib/dataURItoBlob" {
83
+ function dataURItoBlob(
84
+ dataURI: string,
85
+ opts: { mimeType?: string; name?: string }
86
+ ): Blob;
87
+ export = dataURItoBlob;
88
+ }
89
+
90
+ declare module "@scaleflex/widget-utils/lib/dataURItoFile" {
91
+ function dataURItoFile(
92
+ dataURI: string,
93
+ opts: { mimeType?: string; name?: string }
94
+ ): File;
95
+ export = dataURItoFile;
96
+ }
97
+
98
+ declare module "@scaleflex/widget-utils/lib/emitSocketProgress" {
99
+ import FilerobotUtils = require("@scaleflex/widget-utils");
100
+
101
+ interface ProgressData {
102
+ progress: number;
103
+ bytesFinished: number;
104
+ bytesTotal: number;
105
+ }
106
+
107
+ function emitSocketProgress(
108
+ filerobot: object,
109
+ progressData: ProgressData,
110
+ file: FilerobotUtils.FilerobotFile
111
+ ): void;
112
+ export = emitSocketProgress;
113
+ }
114
+
115
+ declare module "@scaleflex/widget-utils/lib/findAllDOMElements" {
116
+ function findAllDOMElements(element: string | HTMLElement): HTMLElement[];
117
+ export = findAllDOMElements;
118
+ }
119
+
120
+ declare module "@scaleflex/widget-utils/lib/findDOMElement" {
121
+ function findDOMElement(element: string | HTMLElement): HTMLElement | null;
122
+ export = findDOMElement;
123
+ }
124
+
125
+ declare module "@scaleflex/widget-utils/lib/generateFileId" {
126
+ import FilerobotUtils = require("@scaleflex/widget-utils");
127
+
128
+ function generateFileId(file: FilerobotUtils.FilerobotFile): string;
129
+ export = generateFileId;
130
+ }
131
+
132
+ declare module "@scaleflex/widget-utils/lib/getBytesRemaining" {
133
+ function getBytesRemaining(files): number;
134
+ export = getBytesRemaining;
135
+ }
136
+
137
+ declare module "@scaleflex/widget-utils/lib/getETA" {
138
+ function getETA(progress: object): number;
139
+ export = getETA;
140
+ }
141
+
142
+ declare module "@scaleflex/widget-utils/lib/getFileNameAndExtension" {
143
+ function getFileNameAndExtension(filename: string): {
144
+ name: string;
145
+ extension: string | undefined;
146
+ };
147
+ export = getFileNameAndExtension;
148
+ }
149
+
150
+ declare module "@scaleflex/widget-utils/lib/getFileType" {
151
+ import FilerobotUtils = require("@scaleflex/widget-utils");
152
+
153
+ function getFileType(file: FilerobotUtils.FilerobotFile): string | null;
154
+ export = getFileType;
155
+ }
156
+
157
+ declare module "@scaleflex/widget-utils/lib/getFileTypeExtension" {
158
+ function getFileTypeExtension(mime: string): string;
159
+ export = getFileTypeExtension;
160
+ }
161
+
162
+ declare module "@scaleflex/widget-utils/lib/getSocketHost" {
163
+ function getSocketHost(url: string): string;
164
+ export = getSocketHost;
165
+ }
166
+
167
+ declare module "@scaleflex/widget-utils/lib/getSpeed" {
168
+ function getSpeed(progress: {
169
+ bytesTotal: number;
170
+ bytesFinished: number;
171
+ }): number;
172
+ export = getSpeed;
173
+ }
174
+
175
+ declare module "@scaleflex/widget-utils/lib/getTimeStamp" {
176
+ function getTimeStamp(): string;
177
+ export = getTimeStamp;
178
+ }
179
+
180
+ declare module "@scaleflex/widget-utils/lib/isDOMElement" {
181
+ function isDOMElement(element: any): boolean;
182
+ export = isDOMElement;
183
+ }
184
+
185
+ declare module "@scaleflex/widget-utils/lib/isObjectURL" {
186
+ function isObjectURL(url: string): boolean;
187
+ export = isObjectURL;
188
+ }
189
+
190
+ declare module "@scaleflex/widget-utils/lib/isDragDropSupported" {
191
+ function isDragDropSupported(): boolean;
192
+ export = isDragDropSupported;
193
+ }
194
+
195
+ declare module "@scaleflex/widget-utils/lib/isPreviewSupported" {
196
+ function isPreviewSupported(mime: string): boolean;
197
+ export = isPreviewSupported;
198
+ }
199
+
200
+ declare module "@scaleflex/widget-utils/lib/isTouchDevice" {
201
+ function isTouchDevice(): boolean;
202
+ export = isTouchDevice;
203
+ }
204
+
205
+ declare module "@scaleflex/widget-utils/lib/prettyETA" {
206
+ function prettyETA(seconds: number): string;
207
+ export = prettyETA;
208
+ }
209
+
210
+ declare module "@scaleflex/widget-utils/lib/secondsToTime" {
211
+ function secondsToTime(seconds: number): string;
212
+ export = secondsToTime;
213
+ }
214
+
215
+ declare module "@scaleflex/widget-utils/lib/settle" {
216
+ function settle<T>(
217
+ promises: Promise<T>[]
218
+ ): Promise<{ successful: T[]; failed: any[] }>;
219
+ export = settle;
220
+ }
221
+
222
+ declare module "@scaleflex/widget-utils/lib/toArray" {
223
+ function toArray(list: any): any[];
224
+ export = toArray;
225
+ }
226
+
227
+ declare module "@scaleflex/widget-utils/lib/getDroppedFiles" {
228
+ function getDroppedFiles(
229
+ dataTransfer: DataTransfer,
230
+ options?: object
231
+ ): Promise<File[]>;
232
+ export = getDroppedFiles;
233
+ }
234
+
235
+ declare module "@scaleflex/widget-utils" {
236
+ interface IndexedObject<T> {
237
+ [key: string]: T;
238
+ [key: number]: T;
239
+ }
240
+ export type InternalMetadata = { name: string; type?: string };
241
+ export interface FilerobotFile<
242
+ TMeta = IndexedObject<any>,
243
+ TBody = IndexedObject<any>
244
+ > {
245
+ data: Blob | File;
246
+ extension: string;
247
+ id: string;
248
+ isRemote: boolean;
249
+ meta: InternalMetadata & TMeta;
250
+ name: string;
251
+ preview?: string;
252
+ progress?: {
253
+ activity: string;
254
+ startedAt: number | null;
255
+ percentage: number;
256
+ bytesFinished: number;
257
+ bytesTotal: number;
258
+ status: string;
259
+ };
260
+ remote?: {
261
+ host: string;
262
+ url: string;
263
+ body?: object;
264
+ };
265
+ size: number;
266
+ source?: string;
267
+ type?: string;
268
+ response?: {
269
+ body: TBody;
270
+ status: number;
271
+ uploadURL: string | undefined;
272
+ };
273
+ }
274
+ export interface Store {
275
+ getState(): object;
276
+ setState(patch: object): void;
277
+ subscribe(listener: any): () => void;
278
+ }
279
+ }
@@ -1,20 +0,0 @@
1
- /**
2
- * Little AbortController proxy module so we can swap out the implementation easily later.
3
- */
4
-
5
- import { AbortController, AbortSignal } from 'abortcontroller-polyfill/dist/abortcontroller';
6
- import { ABORTED_ERROR } from './constants';
7
- function createAbortError() {
8
- var message = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ABORTED_ERROR === null || ABORTED_ERROR === void 0 ? void 0 : ABORTED_ERROR.message;
9
- try {
10
- return new DOMException(message, 'AbortError');
11
- } catch (_unused) {
12
- // For Internet Explorer
13
- var error = new Error(message);
14
- error.name = 'AbortError';
15
- return error;
16
- }
17
- }
18
- exports.AbortController = AbortController;
19
- exports.AbortSignal = AbortSignal;
20
- exports.createAbortError = createAbortError;
@@ -1,10 +0,0 @@
1
- var digitCharacters = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '#', '$', '%', '*', '+', ',', '-', '.', ':', ';', '=', '?', '@', '[', ']', '^', '_', '{', '|', '}', '~'];
2
- export var decode83 = function decode83(str) {
3
- var value = 0;
4
- for (var i = 0; i < str.length; i++) {
5
- var c = str[i];
6
- var digit = digitCharacters.indexOf(c);
7
- value = value * 83 + digit;
8
- }
9
- return value;
10
- };
@@ -1,80 +0,0 @@
1
- import { decode83 } from './base83';
2
- import { sRGBToLinear, signPow, linearTosRGB } from './utils';
3
- import { ValidationError } from './error';
4
-
5
- /**
6
- * Returns an error message if invalid or undefined if valid
7
- *
8
- * @param blurhash
9
- */
10
-
11
- var validateBlurhash = function validateBlurhash(blurhash) {
12
- if (!blurhash || blurhash.length < 6) {
13
- throw new ValidationError('The blurhash string must be at least 6 characters');
14
- }
15
- var sizeFlag = decode83(blurhash[0]);
16
- var numY = Math.floor(sizeFlag / 9) + 1;
17
- var numX = sizeFlag % 9 + 1;
18
- if (blurhash.length !== 4 + 2 * numX * numY) {
19
- throw new ValidationError("blurhash length mismatch: length is ".concat(blurhash.length, " but it should be ").concat(4 + 2 * numX * numY));
20
- }
21
- };
22
- var decodeDC = function decodeDC(value) {
23
- var intR = value >> 16;
24
- var intG = value >> 8 & 255;
25
- var intB = value & 255;
26
- return [sRGBToLinear(intR), sRGBToLinear(intG), sRGBToLinear(intB)];
27
- };
28
- var decodeAC = function decodeAC(value, maximumValue) {
29
- var quantR = Math.floor(value / (19 * 19));
30
- var quantG = Math.floor(value / 19) % 19;
31
- var quantB = value % 19;
32
- var rgb = [signPow((quantR - 9) / 9, 2.0) * maximumValue, signPow((quantG - 9) / 9, 2.0) * maximumValue, signPow((quantB - 9) / 9, 2.0) * maximumValue];
33
- return rgb;
34
- };
35
- var decode = function decode(blurhash, width, height, punch) {
36
- validateBlurhash(blurhash);
37
- punch = punch | 1;
38
- var sizeFlag = decode83(blurhash[0]);
39
- var numY = Math.floor(sizeFlag / 9) + 1;
40
- var numX = sizeFlag % 9 + 1;
41
- var quantisedMaximumValue = decode83(blurhash[1]);
42
- var maximumValue = (quantisedMaximumValue + 1) / 166;
43
- var colors = new Array(numX * numY);
44
- for (var i = 0; i < colors.length; i++) {
45
- if (i === 0) {
46
- var value = decode83(blurhash.substring(2, 6));
47
- colors[i] = decodeDC(value);
48
- } else {
49
- var _value = decode83(blurhash.substring(4 + i * 2, 6 + i * 2));
50
- colors[i] = decodeAC(_value, maximumValue * punch);
51
- }
52
- }
53
- var bytesPerRow = width * 4;
54
- var pixels = new Uint8ClampedArray(bytesPerRow * height);
55
- for (var y = 0; y < height; y++) {
56
- for (var x = 0; x < width; x++) {
57
- var r = 0;
58
- var g = 0;
59
- var b = 0;
60
- for (var j = 0; j < numY; j++) {
61
- for (var _i = 0; _i < numX; _i++) {
62
- var basis = Math.cos(Math.PI * x * _i / width) * Math.cos(Math.PI * y * j / height);
63
- var color = colors[_i + j * numX];
64
- r += color[0] * basis;
65
- g += color[1] * basis;
66
- b += color[2] * basis;
67
- }
68
- }
69
- var intR = linearTosRGB(r);
70
- var intG = linearTosRGB(g);
71
- var intB = linearTosRGB(b);
72
- pixels[4 * x + 0 + y * bytesPerRow] = intR;
73
- pixels[4 * x + 1 + y * bytesPerRow] = intG;
74
- pixels[4 * x + 2 + y * bytesPerRow] = intB;
75
- pixels[4 * x + 3 + y * bytesPerRow] = 255; // alpha
76
- }
77
- }
78
- return pixels;
79
- };
80
- export default decode;