@uploadcare/file-uploader 1.15.0-alpha.9 → 1.15.0

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 (279) hide show
  1. package/abstract/ActivityBlock.d.ts +5 -5
  2. package/abstract/ActivityBlock.d.ts.map +1 -1
  3. package/abstract/Block.d.ts +3 -9
  4. package/abstract/Block.d.ts.map +1 -1
  5. package/abstract/CTX.d.ts +6 -6
  6. package/abstract/CTX.d.ts.map +1 -1
  7. package/abstract/LocaleManager.d.ts +3 -3
  8. package/abstract/LocaleManager.d.ts.map +1 -1
  9. package/abstract/ModalManager.d.ts +13 -18
  10. package/abstract/ModalManager.d.ts.map +1 -1
  11. package/abstract/ModalManager.js +19 -10
  12. package/abstract/SecureUploadsManager.d.ts +2 -2
  13. package/abstract/SecureUploadsManager.d.ts.map +1 -1
  14. package/abstract/SolutionBlock.d.ts +2 -2
  15. package/abstract/SolutionBlock.d.ts.map +1 -1
  16. package/abstract/TypedCollection.d.ts +44 -44
  17. package/abstract/TypedCollection.d.ts.map +1 -1
  18. package/abstract/TypedCollection.js +53 -33
  19. package/abstract/TypedData.d.ts +71 -25
  20. package/abstract/TypedData.d.ts.map +1 -1
  21. package/abstract/TypedData.js +74 -17
  22. package/abstract/UploaderBlock.d.ts +10 -10
  23. package/abstract/UploaderBlock.d.ts.map +1 -1
  24. package/abstract/UploaderBlock.js +22 -10
  25. package/abstract/UploaderPublicApi.d.ts +24 -23
  26. package/abstract/UploaderPublicApi.d.ts.map +1 -1
  27. package/abstract/UploaderPublicApi.js +21 -10
  28. package/abstract/ValidationManager.d.ts +125 -6
  29. package/abstract/ValidationManager.d.ts.map +1 -1
  30. package/abstract/ValidationManager.js +1 -1
  31. package/abstract/a11y.d.ts +2 -2
  32. package/abstract/a11y.d.ts.map +1 -1
  33. package/abstract/buildOutputCollectionState.d.ts +1 -1
  34. package/abstract/buildOutputCollectionState.d.ts.map +1 -1
  35. package/abstract/defineComponents.d.ts.map +1 -1
  36. package/abstract/l10nProcessor.d.ts.map +1 -1
  37. package/abstract/loadFileUploaderFrom.d.ts +1 -1
  38. package/abstract/loadFileUploaderFrom.d.ts.map +1 -1
  39. package/abstract/localeRegistry.d.ts.map +1 -1
  40. package/abstract/sharedConfigKey.d.ts.map +1 -1
  41. package/abstract/uploadEntrySchema.d.ts +123 -63
  42. package/abstract/uploadEntrySchema.d.ts.map +1 -1
  43. package/abstract/uploadEntrySchema.js +66 -81
  44. package/blocks/CameraSource/CameraSource.d.ts +9 -9
  45. package/blocks/CameraSource/CameraSource.d.ts.map +1 -1
  46. package/blocks/CameraSource/calcCameraModes.d.ts +1 -1
  47. package/blocks/CameraSource/constants.d.ts.map +1 -1
  48. package/blocks/CloudImageEditor/src/CloudImageEditorBlock.d.ts.map +1 -1
  49. package/blocks/CloudImageEditor/src/CropFrame.d.ts +1 -1
  50. package/blocks/CloudImageEditor/src/EditorFilterControl.js +1 -1
  51. package/blocks/CloudImageEditor/src/EditorImageCropper.d.ts +3 -3
  52. package/blocks/CloudImageEditor/src/EditorImageCropper.js +1 -1
  53. package/blocks/CloudImageEditor/src/EditorImageFader.d.ts +1 -1
  54. package/blocks/CloudImageEditor/src/EditorImageFader.d.ts.map +1 -1
  55. package/blocks/CloudImageEditor/src/EditorImageFader.js +1 -1
  56. package/blocks/CloudImageEditor/src/EditorSlider.d.ts +1 -1
  57. package/blocks/CloudImageEditor/src/EditorSlider.d.ts.map +1 -1
  58. package/blocks/CloudImageEditor/src/EditorToolbar.d.ts +1 -1
  59. package/blocks/CloudImageEditor/src/EditorToolbar.js +1 -1
  60. package/blocks/CloudImageEditor/src/crop-utils.d.ts +14 -14
  61. package/blocks/CloudImageEditor/src/crop-utils.d.ts.map +1 -1
  62. package/blocks/CloudImageEditor/src/cropper-constants.d.ts.map +1 -1
  63. package/blocks/CloudImageEditor/src/lib/applyFocusVisiblePolyfill.d.ts +1 -1
  64. package/blocks/CloudImageEditor/src/lib/applyFocusVisiblePolyfill.d.ts.map +1 -1
  65. package/blocks/CloudImageEditor/src/lib/parseCropPreset.d.ts +1 -1
  66. package/blocks/CloudImageEditor/src/lib/transformationUtils.d.ts +3 -3
  67. package/blocks/CloudImageEditor/src/lib/transformationUtils.d.ts.map +1 -1
  68. package/blocks/CloudImageEditor/src/state.d.ts +4 -4
  69. package/blocks/CloudImageEditor/src/svg-sprite.d.ts.map +1 -1
  70. package/blocks/CloudImageEditor/src/types.d.ts +8 -58
  71. package/blocks/CloudImageEditor/src/types.d.ts.map +1 -1
  72. package/blocks/CloudImageEditorActivity/CloudImageEditorActivity.d.ts +5 -2
  73. package/blocks/CloudImageEditorActivity/CloudImageEditorActivity.d.ts.map +1 -1
  74. package/blocks/CloudImageEditorActivity/CloudImageEditorActivity.js +7 -3
  75. package/blocks/Config/Config.d.ts +3 -12
  76. package/blocks/Config/Config.d.ts.map +1 -1
  77. package/blocks/Config/assertions.d.ts +1 -1
  78. package/blocks/Config/initialConfig.d.ts +1 -1
  79. package/blocks/Config/initialConfig.d.ts.map +1 -1
  80. package/blocks/Config/initialConfig.js +1 -1
  81. package/blocks/Config/normalizeConfigValue.d.ts.map +1 -1
  82. package/blocks/Config/side-effects.d.ts.map +1 -1
  83. package/blocks/Config/validatorsType.d.ts +1 -1
  84. package/blocks/Config/validatorsType.d.ts.map +1 -1
  85. package/blocks/DropArea/DropArea.d.ts +2 -2
  86. package/blocks/DropArea/DropArea.d.ts.map +1 -1
  87. package/blocks/DropArea/addDropzone.d.ts.map +1 -1
  88. package/blocks/DropArea/drop-area.css +4 -2
  89. package/blocks/DropArea/getDropItems.d.ts +2 -2
  90. package/blocks/DropArea/getDropItems.d.ts.map +1 -1
  91. package/blocks/ExternalSource/ExternalSource.d.ts +3 -3
  92. package/blocks/ExternalSource/ExternalSource.d.ts.map +1 -1
  93. package/blocks/ExternalSource/MessageBridge.d.ts +3 -3
  94. package/blocks/ExternalSource/MessageBridge.d.ts.map +1 -1
  95. package/blocks/ExternalSource/query-string.d.ts.map +1 -1
  96. package/blocks/ExternalSource/types.d.ts +64 -64
  97. package/blocks/ExternalSource/types.d.ts.map +1 -1
  98. package/blocks/FileItem/FileItem.d.ts +12 -39
  99. package/blocks/FileItem/FileItem.d.ts.map +1 -1
  100. package/blocks/FileItem/FileItem.js +114 -178
  101. package/blocks/FileItem/FileItemConfig.d.ts +28 -0
  102. package/blocks/FileItem/FileItemConfig.d.ts.map +1 -0
  103. package/blocks/FileItem/FileItemConfig.js +74 -0
  104. package/blocks/FileItem/file-item.css +21 -6
  105. package/blocks/Img/ImgBase.d.ts +3 -3
  106. package/blocks/Img/ImgBase.d.ts.map +1 -1
  107. package/blocks/Img/ImgBase.js +9 -9
  108. package/blocks/Img/ImgConfig.d.ts.map +1 -1
  109. package/blocks/Img/configurations.d.ts.map +1 -1
  110. package/blocks/Modal/Modal.d.ts +4 -4
  111. package/blocks/Modal/Modal.d.ts.map +1 -1
  112. package/blocks/ProgressBar/ProgressBar.d.ts +6 -1
  113. package/blocks/ProgressBar/ProgressBar.d.ts.map +1 -1
  114. package/blocks/ProgressBar/ProgressBar.js +41 -44
  115. package/blocks/ProgressBar/progress-bar.css +8 -6
  116. package/blocks/Range/Range.d.ts.map +1 -1
  117. package/blocks/SimpleBtn/SimpleBtn.d.ts +2 -2
  118. package/blocks/SimpleBtn/SimpleBtn.d.ts.map +1 -1
  119. package/blocks/SourceBtn/SourceBtn.d.ts +2 -5
  120. package/blocks/SourceBtn/SourceBtn.d.ts.map +1 -1
  121. package/blocks/SourceBtn/SourceBtn.js +5 -5
  122. package/blocks/SourceList/SourceList.js +2 -2
  123. package/blocks/Spinner/Spinner.d.ts.map +1 -1
  124. package/blocks/Thumb/Thumb.d.ts +30 -5
  125. package/blocks/Thumb/Thumb.d.ts.map +1 -1
  126. package/blocks/Thumb/Thumb.js +188 -22
  127. package/blocks/UploadCtxProvider/EventEmitter.d.ts +20 -20
  128. package/blocks/UploadCtxProvider/EventEmitter.d.ts.map +1 -1
  129. package/blocks/UploadCtxProvider/UploadCtxProvider.d.ts +4 -4
  130. package/blocks/UploadCtxProvider/UploadCtxProvider.d.ts.map +1 -1
  131. package/blocks/UploadList/UploadList.d.ts +3 -3
  132. package/blocks/UploadList/UploadList.d.ts.map +1 -1
  133. package/blocks/svg-backgrounds/svg-backgrounds.d.ts +3 -3
  134. package/blocks/svg-backgrounds/svg-backgrounds.d.ts.map +1 -1
  135. package/blocks/themes/uc-basic/svg-sprite.d.ts.map +1 -1
  136. package/blocks/utils/UploadSource.d.ts.map +1 -1
  137. package/blocks/utils/debounce.d.ts +3 -1
  138. package/blocks/utils/debounce.d.ts.map +1 -1
  139. package/blocks/{CloudImageEditor/src/lib → utils}/preloadImage.js +1 -1
  140. package/blocks/utils/resizeImage.d.ts +1 -1
  141. package/blocks/utils/resizeImage.d.ts.map +1 -1
  142. package/blocks/utils/throttle.d.ts +3 -1
  143. package/blocks/utils/throttle.d.ts.map +1 -1
  144. package/blocks/utils/userAgent.d.ts +1 -1
  145. package/blocks/utils/userAgent.d.ts.map +1 -1
  146. package/env.d.ts +1 -1
  147. package/env.d.ts.map +1 -1
  148. package/env.js +1 -1
  149. package/index.d.ts +1 -0
  150. package/index.js +1 -0
  151. package/index.ssr.d.ts +9 -1
  152. package/index.ssr.d.ts.map +1 -1
  153. package/index.ssr.js +16 -10
  154. package/locales/file-uploader/ar.d.ts +1 -0
  155. package/locales/file-uploader/ar.js +1 -0
  156. package/locales/file-uploader/az.d.ts +1 -0
  157. package/locales/file-uploader/az.js +1 -0
  158. package/locales/file-uploader/ca.d.ts +1 -0
  159. package/locales/file-uploader/ca.js +1 -0
  160. package/locales/file-uploader/cs.d.ts +1 -0
  161. package/locales/file-uploader/cs.js +1 -0
  162. package/locales/file-uploader/da.d.ts +1 -0
  163. package/locales/file-uploader/da.js +1 -0
  164. package/locales/file-uploader/de.d.ts +1 -0
  165. package/locales/file-uploader/de.js +1 -0
  166. package/locales/file-uploader/el.d.ts +1 -0
  167. package/locales/file-uploader/el.js +1 -0
  168. package/locales/file-uploader/en.d.ts +1 -0
  169. package/locales/file-uploader/en.js +1 -0
  170. package/locales/file-uploader/es.d.ts +1 -0
  171. package/locales/file-uploader/es.js +1 -0
  172. package/locales/file-uploader/et.d.ts +1 -0
  173. package/locales/file-uploader/et.js +1 -0
  174. package/locales/file-uploader/fi.d.ts +1 -0
  175. package/locales/file-uploader/fi.js +1 -0
  176. package/locales/file-uploader/fr.d.ts +1 -0
  177. package/locales/file-uploader/fr.js +1 -0
  178. package/locales/file-uploader/he.d.ts +1 -0
  179. package/locales/file-uploader/he.js +1 -0
  180. package/locales/file-uploader/hy.d.ts +1 -0
  181. package/locales/file-uploader/hy.js +1 -0
  182. package/locales/file-uploader/is.d.ts +1 -0
  183. package/locales/file-uploader/is.js +1 -0
  184. package/locales/file-uploader/it.d.ts +1 -0
  185. package/locales/file-uploader/it.js +1 -0
  186. package/locales/file-uploader/ja.d.ts +1 -0
  187. package/locales/file-uploader/ja.js +1 -0
  188. package/locales/file-uploader/ka.d.ts +1 -0
  189. package/locales/file-uploader/ka.js +1 -0
  190. package/locales/file-uploader/kk.d.ts +1 -0
  191. package/locales/file-uploader/kk.js +1 -0
  192. package/locales/file-uploader/ko.d.ts +1 -0
  193. package/locales/file-uploader/ko.js +1 -0
  194. package/locales/file-uploader/lv.d.ts +1 -0
  195. package/locales/file-uploader/lv.js +1 -0
  196. package/locales/file-uploader/nb.d.ts +1 -0
  197. package/locales/file-uploader/nb.js +1 -0
  198. package/locales/file-uploader/nl.d.ts +1 -0
  199. package/locales/file-uploader/nl.js +1 -0
  200. package/locales/file-uploader/pl.d.ts +1 -0
  201. package/locales/file-uploader/pl.js +1 -0
  202. package/locales/file-uploader/pt.d.ts +1 -0
  203. package/locales/file-uploader/pt.js +1 -0
  204. package/locales/file-uploader/ro.d.ts +1 -0
  205. package/locales/file-uploader/ro.js +1 -0
  206. package/locales/file-uploader/ru.d.ts +1 -0
  207. package/locales/file-uploader/ru.js +1 -0
  208. package/locales/file-uploader/sk.d.ts +1 -0
  209. package/locales/file-uploader/sk.js +1 -0
  210. package/locales/file-uploader/sr.d.ts +1 -0
  211. package/locales/file-uploader/sr.js +1 -0
  212. package/locales/file-uploader/sv.d.ts +1 -0
  213. package/locales/file-uploader/sv.js +1 -0
  214. package/locales/file-uploader/tr.d.ts +1 -0
  215. package/locales/file-uploader/tr.js +1 -0
  216. package/locales/file-uploader/uk.d.ts +1 -0
  217. package/locales/file-uploader/uk.js +1 -0
  218. package/locales/file-uploader/vi.d.ts +1 -0
  219. package/locales/file-uploader/vi.js +1 -0
  220. package/locales/file-uploader/zh-TW.d.ts +1 -0
  221. package/locales/file-uploader/zh-TW.js +1 -0
  222. package/locales/file-uploader/zh.d.ts +1 -0
  223. package/locales/file-uploader/zh.js +1 -0
  224. package/package.json +7 -8
  225. package/solutions/file-uploader/inline/FileUploaderInline.d.ts +2 -2
  226. package/solutions/file-uploader/inline/FileUploaderInline.d.ts.map +1 -1
  227. package/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts +10 -10
  228. package/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts.map +1 -1
  229. package/solutions/file-uploader/minimal/FileUploaderMinimal.js +8 -1
  230. package/solutions/file-uploader/minimal/index.css +5 -23
  231. package/solutions/file-uploader/regular/FileUploaderRegular.d.ts +2 -2
  232. package/solutions/file-uploader/regular/FileUploaderRegular.d.ts.map +1 -1
  233. package/types/jsx.d.ts +1 -1
  234. package/utils/browser-info.d.ts +13 -0
  235. package/utils/browser-info.d.ts.map +1 -0
  236. package/utils/browser-info.js +22 -0
  237. package/utils/browser-info.test.d.ts +2 -0
  238. package/utils/browser-info.test.d.ts.map +1 -0
  239. package/utils/browser-info.test.js +109 -0
  240. package/utils/cdn-utils.d.ts +3 -3
  241. package/utils/cdn-utils.d.ts.map +1 -1
  242. package/utils/fileTypes.d.ts +5 -1
  243. package/utils/fileTypes.d.ts.map +1 -1
  244. package/utils/fileTypes.js +18 -2
  245. package/utils/getPluralForm.d.ts.map +1 -1
  246. package/utils/isSecureTokenExpired.d.ts +1 -1
  247. package/utils/memoize.d.ts.map +1 -1
  248. package/utils/mixinClass.d.ts +3 -1
  249. package/utils/mixinClass.d.ts.map +1 -1
  250. package/utils/prettyBytes.d.ts.map +1 -1
  251. package/utils/template-utils.d.ts +1 -1
  252. package/utils/template-utils.d.ts.map +1 -1
  253. package/utils/toKebabCase.d.ts.map +1 -1
  254. package/utils/transparentPixelSrc.d.ts.map +1 -1
  255. package/utils/uniqueArray.d.ts.map +1 -1
  256. package/utils/validators/collection/validateCollectionUploadError.d.ts +1 -1
  257. package/utils/validators/collection/validateMultiple.d.ts +1 -1
  258. package/utils/validators/file/validateFileType.d.ts +1 -1
  259. package/utils/validators/file/validateIsImage.d.ts +1 -1
  260. package/utils/validators/file/validateMaxSizeLimit.d.ts +1 -1
  261. package/utils/validators/file/validateUploadError.d.ts +1 -1
  262. package/utils/waitForAttribute.d.ts +1 -1
  263. package/utils/waitForAttribute.d.ts.map +1 -1
  264. package/web/file-uploader.iife.min.js +4 -4
  265. package/web/file-uploader.min.js +4 -4
  266. package/web/uc-basic.min.css +1 -1
  267. package/web/uc-cloud-image-editor.min.js +2 -2
  268. package/web/uc-file-uploader-inline.min.css +1 -1
  269. package/web/uc-file-uploader-inline.min.js +4 -4
  270. package/web/uc-file-uploader-minimal.min.css +1 -1
  271. package/web/uc-file-uploader-minimal.min.js +4 -4
  272. package/web/uc-file-uploader-regular.min.css +1 -1
  273. package/web/uc-file-uploader-regular.min.js +4 -4
  274. package/web/uc-img.min.js +2 -2
  275. package/blocks/utils/supportCapture.d.ts +0 -2
  276. package/blocks/utils/supportCapture.d.ts.map +0 -1
  277. package/blocks/utils/supportCapture.js +0 -3
  278. /package/blocks/{CloudImageEditor/src/lib → utils}/preloadImage.d.ts +0 -0
  279. /package/blocks/{CloudImageEditor/src/lib → utils}/preloadImage.d.ts.map +0 -0
@@ -0,0 +1,74 @@
1
+ //@ts-check
2
+
3
+ import { UploaderBlock } from '../../abstract/UploaderBlock.js';
4
+
5
+ export class FileItemConfig extends UploaderBlock {
6
+ /** @protected */
7
+ _entrySubs = new Set();
8
+
9
+ /**
10
+ * @type {import('../../abstract/uploadEntrySchema.js').UploadEntryTypedData | null}
11
+ * @protected
12
+ */
13
+ _entry = null;
14
+
15
+ /**
16
+ * @template {any[]} A
17
+ * @template {(entry: import('../../abstract/uploadEntrySchema.js').UploadEntryTypedData, ...args: A) => any} T
18
+ * @param {T} fn
19
+ * @returns {(...args: A) => ReturnType<T>}
20
+ * @protected
21
+ */
22
+ _withEntry(fn) {
23
+ const wrapperFn = /** @type {(...args: A) => ReturnType<T>} */ (
24
+ (...args) => {
25
+ const entry = this._entry;
26
+ if (!entry) {
27
+ console.warn('No entry found');
28
+ return;
29
+ }
30
+ return fn(entry, ...args);
31
+ }
32
+ );
33
+ return wrapperFn;
34
+ }
35
+
36
+ /**
37
+ * @template {import('../../abstract/uploadEntrySchema.js').UploadEntryKeys} K
38
+ * @param {K} prop_
39
+ * @param {(value: import('../../abstract/uploadEntrySchema.js').UploadEntryData[K]) => void} handler_
40
+ * @protected
41
+ */
42
+ _subEntry = (prop_, handler_) =>
43
+ this._withEntry(
44
+ /**
45
+ * @template {import('../../abstract/uploadEntrySchema.js').UploadEntryKeys} K
46
+ * @param {import('../../abstract/uploadEntrySchema.js').UploadEntryTypedData} entry
47
+ * @param {K} prop
48
+ * @param {(value: import('../../abstract/uploadEntrySchema.js').UploadEntryData[K]) => void} handler
49
+ */
50
+ (entry, prop, handler) => {
51
+ let sub = entry.subscribe(prop, (value) => {
52
+ if (this.isConnected) {
53
+ handler(value);
54
+ }
55
+ });
56
+ this._entrySubs.add(sub);
57
+ },
58
+ )(prop_, handler_);
59
+
60
+ /** @protected */
61
+ _reset() {
62
+ for (let sub of this._entrySubs) {
63
+ sub.remove();
64
+ }
65
+
66
+ this._entrySubs = new Set();
67
+ this._entry = null;
68
+ }
69
+
70
+ disconnectedCallback() {
71
+ super.disconnectedCallback();
72
+ this._entrySubs = new Set();
73
+ }
74
+ }
@@ -74,6 +74,7 @@ uc-file-item .uc-file-error {
74
74
  display: none;
75
75
  color: var(--uc-destructive-foreground);
76
76
  font-size: 0.85em;
77
+ z-index: 2;
77
78
  }
78
79
 
79
80
  uc-file-item button.uc-remove-btn,
@@ -193,6 +194,17 @@ uc-file-item[mode='grid'] .uc-file-error {
193
194
  padding: calc(var(--uc-padding) / 2) var(--uc-padding);
194
195
  }
195
196
 
197
+ uc-file-item[mode='grid'] .uc-file-hint {
198
+ position: absolute;
199
+ background-color: var(--uc-background);
200
+ border-radius: var(--uc-radius);
201
+ color: var(--uc-foreground);
202
+ bottom: calc(var(--uc-padding) * 2);
203
+ left: var(--uc-padding);
204
+ right: var(--uc-padding);
205
+ padding: calc(var(--uc-padding) / 2) var(--uc-padding);
206
+ }
207
+
196
208
  uc-file-item[mode='grid'] .uc-file-actions {
197
209
  position: absolute;
198
210
  top: var(--uc-padding);
@@ -210,19 +222,22 @@ uc-file-item[mode='grid'] button:hover {
210
222
  uc-file-item[mode='grid'] .uc-progress-bar {
211
223
  width: initial;
212
224
  height: 4px !important;
213
- opacity: 1;
214
225
  top: initial !important;
215
226
  bottom: var(--uc-padding);
216
227
  left: var(--uc-padding);
217
228
  right: var(--uc-padding);
229
+ border-radius: var(--uc-radius);
218
230
  z-index: 1;
231
+ transition:
232
+ background-color 0.3s,
233
+ opacity 0.3s;
234
+ background-color: var(--uc-background);
219
235
  }
220
236
 
221
- uc-file-item[mode='grid'] .uc-progress-bar[hasfilename] {
222
- bottom: calc(var(--uc-padding) + var(--uc-font-size));
237
+ uc-file-item[mode='grid'] .uc-progress-bar :is(.uc-fake-progress, .uc-progress) {
238
+ background-color: var(--uc-primary);
223
239
  }
224
240
 
225
- uc-file-item[mode='grid'] .uc-progress-bar .uc-progress {
226
- background-color: rgba(255, 255, 255, 80%) !important;
227
- width: 100% !important;
241
+ uc-file-item[mode='grid'] .uc-progress-bar[hasfilename] {
242
+ bottom: calc(var(--uc-padding) + var(--uc-font-size));
228
243
  }
@@ -12,14 +12,14 @@ export class ImgBase extends ImgConfig {
12
12
  * @param {String} [size]
13
13
  * @returns {String | Number}
14
14
  */
15
- _validateSize(size?: string | undefined): string | number;
15
+ _validateSize(size?: string): string | number;
16
16
  /**
17
17
  * Image operations
18
18
  *
19
19
  * @param {String} [size]
20
20
  * @param {String} [blur]
21
21
  */
22
- _getCdnModifiers(size?: string | undefined, blur?: string | undefined): string;
22
+ _getCdnModifiers(size?: string, blur?: string): string;
23
23
  /**
24
24
  * @private
25
25
  * @param {String} [size]
@@ -38,7 +38,7 @@ export class ImgBase extends ImgConfig {
38
38
  * @param {Number} [k]
39
39
  * @param {Boolean} [wOnly]
40
40
  */
41
- _getElSize(el: HTMLElement, k?: number | undefined, wOnly?: boolean | undefined): string | null;
41
+ _getElSize(el: HTMLElement, k?: number, wOnly?: boolean): string | null;
42
42
  /** @param {HTMLImageElement} img */
43
43
  _setupEventProxy(img: HTMLImageElement): void;
44
44
  /** @type {HTMLImageElement} */
@@ -1 +1 @@
1
- {"version":3,"file":"ImgBase.d.ts","sourceRoot":"","sources":["ImgBase.js"],"names":[],"mappings":"AAgBA;IACE,uBAAmB;IACnB,8BAA0B;IAE1B;;;OAGG;IACH,gBAMC;IAED;;;;;OAKG;IACH,0CAFa,eAAe,CAoB3B;IAED;;;;;OAKG;IACH,+EAWC;IAED;;;;;OAKG;IACH,oBA6DC;IAED;;;;OAIG;IACH,kBAUC;IAED;;;;OAIG;IACH,eAJW,WAAW,sEAcrB;IAED,oCAAoC;IACpC,sBADY,gBAAgB,QAY3B;IAED,+BAA+B;IAC/B,4BAMC;IAED;;;;;;MAUC;IAED,2BAEC;IAED,sBAEC;IAED,mCAOC;IAED,4BAEC;IAED,8BAA8B;IAC9B,aADY,WAAW,QAgBtB;IAED,oBAsBC;IAED,cAEC;IAED,yBAEC;IAED,yBAUC;IAED;;;;aAQC;IAED;;aAGC;IAED;;;;qBAqBC;IAED,6BA8DC;IAED,aAMC;CACF;0BAlZyB,gBAAgB"}
1
+ {"version":3,"file":"ImgBase.d.ts","sourceRoot":"","sources":["ImgBase.js"],"names":[],"mappings":"AAgBA;IACE,uBAAmB;IACnB,8BAA0B;IAE1B;;;OAGG;IACH,gBAMC;IAED;;;;;OAKG;IACH,8BAFa,eAAe,CAoB3B;IAED;;;;;OAKG;IACH,uDAWC;IAED;;;;;OAKG;IACH,oBA6DC;IAED;;;;OAIG;IACH,kBAUC;IAED;;;;OAIG;IACH,eAJW,WAAW,8CAcrB;IAED,oCAAoC;IACpC,sBADY,gBAAgB,QAY3B;IAED,+BAA+B;IAC/B,WADW,gBAAgB,CAO1B;IAED;;;;;;MAUC;IAED,2BAEC;IAED,sBAEC;IAED,mCAOC;IAED,4BAEC;IAED,8BAA8B;IAC9B,aADY,WAAW,QAgBtB;IAED,oBAsBC;IAED,cAEC;IAED,yBAEC;IAED,yBAUC;IAED;;;;aAQC;IAED;;aAGC;IAED;;;;qBAqBC;IAED,6BA8DC;IAED,aAMC;CACF;0BAlZyB,gBAAgB"}
@@ -103,8 +103,8 @@ export class ImgBase extends ImgConfig {
103
103
  createCdnUrl(
104
104
  //
105
105
  createOriginalUrl(this.$$('cdn-cname'), this.$$('uuid')),
106
- cdnModifiers
107
- )
106
+ cdnModifiers,
107
+ ),
108
108
  );
109
109
  }
110
110
 
@@ -114,8 +114,8 @@ export class ImgBase extends ImgConfig {
114
114
  createCdnUrl(
115
115
  //
116
116
  createOriginalUrl(this.$$('cdn-cname'), this.$$('uuid')),
117
- cdnModifiers
118
- )
117
+ cdnModifiers,
118
+ ),
119
119
  );
120
120
  }
121
121
 
@@ -126,8 +126,8 @@ export class ImgBase extends ImgConfig {
126
126
  //
127
127
  this.$$('proxy-cname'),
128
128
  cdnModifiers,
129
- this._fmtAbs(this.$$('src'))
130
- )
129
+ this._fmtAbs(this.$$('src')),
130
+ ),
131
131
  );
132
132
  }
133
133
 
@@ -138,8 +138,8 @@ export class ImgBase extends ImgConfig {
138
138
  //
139
139
  `https://${this.$$('pubkey')}.ucr.io/`,
140
140
  cdnModifiers,
141
- this._fmtAbs(this.$$('src'))
142
- )
141
+ this._fmtAbs(this.$$('src')),
142
+ ),
143
143
  );
144
144
  }
145
145
  }
@@ -157,7 +157,7 @@ export class ImgBase extends ImgConfig {
157
157
  return applyTemplateData(
158
158
  this.$$('secure-delivery-proxy'),
159
159
  { previewUrl: url },
160
- { transform: (value) => window.encodeURIComponent(value) }
160
+ { transform: (value) => window.encodeURIComponent(value) },
161
161
  );
162
162
  }
163
163
 
@@ -1 +1 @@
1
- {"version":3,"file":"ImgConfig.d.ts","sourceRoot":"","sources":["ImgConfig.js"],"names":[],"mappings":"AAUA;IAkFE,0CAEC;IAlDgD,cACjD;IAlCA,cAAqB;IAErB;;;OAGG;IACH,iBAFa,GAAG,CAIf;IAED,qDAAqD;IACrD,wBAIC;IAED;;;OAGG;IACH,+BAFiB,GAAG,KAAK,IAAI,QAW5B;IAED,0BAEC;IAED,8BAMC;IAED;;;OAGG;IACH,qBAHW,WAAW,SACX,MAAM,IAAI,QAsBpB;IAfC,eAAe;IACf,qBAOQ;IAGN,eAAe;IACf,kBAA0B;IAoB9B,oEAIC;CACF;8BArGmC,sBAAsB"}
1
+ {"version":3,"file":"ImgConfig.d.ts","sourceRoot":"","sources":["ImgConfig.js"],"names":[],"mappings":"AAUA;IAkFE,0CAEC;;IAnFD,cAAqB;IAErB;;;OAGG;IACH,iBAFa,GAAG,CAIf;IAED,qDAAqD;IACrD,wBAIC;IAED;;;OAGG;IACH,yBAFW,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,QAW5B;IAED,0BAEC;IAED,8BAMC;IAED;;;OAGG;IACH,qBAHW,WAAW,SACX,MAAM,IAAI,QAsBpB;IAfC,eAAe;IACf,qBAOQ;IAGN,eAAe;IACf,kBAA0B;IAoB9B,oEAIC;CACF;8BArGmC,sBAAsB"}
@@ -1 +1 @@
1
- {"version":3,"file":"configurations.d.ts","sourceRoot":"","sources":["configurations.js"],"names":[],"mappings":"AAAA,mCAAoC;AACpC,2CAA4C;AAC5C,yBAA0B;AAC1B,4BAA6B;AAC7B,+BACuH;AAEvH,6BAA8B;AAC9B,iCAAkC;AAElC;;;GAGG"}
1
+ {"version":3,"file":"configurations.d.ts","sourceRoot":"","sources":["configurations.js"],"names":[],"mappings":"AAAA,uBAAwB,WAAW,CAAC;AACpC,8BAA+B,YAAY,CAAC;AAC5C,uBAAwB,CAAC,CAAC;AAC1B,0BAA2B,CAAC,CAAC;AAC7B,+BACuH;AAEvH,wBAAyB,IAAI,CAAC;AAC9B,4BAA6B,IAAI,CAAC;AAElC;;;GAGG"}
@@ -27,12 +27,12 @@ export class Modal extends Block {
27
27
  /** @private */
28
28
  private _handleModalCloseAll;
29
29
  handleModalOpen: ((data: {
30
- id: string;
31
- modal?: Modal | undefined;
30
+ id: import("../../abstract/ModalManager.js").ModalId;
31
+ modal: import("../../abstract/ModalManager.js").ModalNode;
32
32
  }) => void) | undefined;
33
33
  handleModalClose: ((data: {
34
- id: string;
35
- modal?: Modal | undefined;
34
+ id: import("../../abstract/ModalManager.js").ModalId;
35
+ modal: import("../../abstract/ModalManager.js").ModalNode;
36
36
  }) => void) | undefined;
37
37
  handleModalCloseAll: (() => void) | undefined;
38
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["Modal.js"],"names":[],"mappings":"AAIA;IAEE,kCAAoC;IAIlC;;MAGC;IAGH,iCAEE;IAEF,yBAME;IAEF,+BAEE;IAEF,uBAAuB;IACvB,4BADY,KAAK,UAIf;IAFA,eAAe;IACf,yBAAgC;IAGlC,uBAAuB;IACvB,0BADY,KAAK,UAKf;IAEF,aAWC;IAED,aAOC;IAED;;;OAGG;IACH,yBAMC;IAED;;;OAGG;IACH,0BAIC;IAED,eAAe;IACf,6BAEC;IAmBC;;;4BAAuD;IACvD;;;4BAAyD;IACzD,8CAA+D;CAmBlE;;;;sBAnIqB,yBAAyB"}
1
+ {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["Modal.js"],"names":[],"mappings":"AAIA;IAEE,kCAAoC;IAIlC;;MAGC;IAGH,iCAEE;IAEF,yBAME;IAEF,+BAEE;IAEF,uBAAuB;IACvB,yBAA0B,GADd,KACe,UAGzB;IAFA,eAAe;IACf,yBAAgC;IAGlC,uBAAuB;IACvB,uBAAwB,GADZ,KACa,UAIvB;IAEF,aAWC;IAED,aAOC;IAED;;;OAGG;IACH,yBAMC;IAED;;;OAGG;IACH,0BAIC;IAED,eAAe;IACf,6BAEC;IAmBC;;;4BAAuD;IACvD;;;4BAAyD;IACzD,8CAA+D;CAmBlE;;;;sBAnIqB,yBAAyB"}
@@ -1,9 +1,14 @@
1
1
  export class ProgressBar extends Block {
2
2
  /** @type {Number} */
3
3
  _value: number;
4
+ /** @type {Number} */
5
+ _prevValue: number;
4
6
  /** @type {Boolean} */
5
7
  _visible: boolean;
6
- init$: any;
8
+ init$: {
9
+ width: number;
10
+ opacity: number;
11
+ };
7
12
  }
8
13
  export namespace ProgressBar {
9
14
  let template: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["ProgressBar.js"],"names":[],"mappings":"AAEA;IACE,qBAAqB;IACrB,eAAW;IAEX,sBAAsB;IACtB,kBAAgB;IAEhB,WAIE;CA8CH;;;;sBA3DqB,yBAAyB"}
1
+ {"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["ProgressBar.js"],"names":[],"mappings":"AAGA;IACE,qBAAqB;IACrB,eAAW;IAEX,qBAAqB;IACrB,mBAAe;IAEf,sBAAsB;IACtB,kBAAgB;IAId;;;MAIC;CAqCJ;;;;sBAvDqB,yBAAyB"}
@@ -1,61 +1,58 @@
1
+ // @ts-check
1
2
  import { Block } from '../../abstract/Block.js';
2
3
 
3
4
  export class ProgressBar extends Block {
4
5
  /** @type {Number} */
5
6
  _value = 0;
6
7
 
8
+ /** @type {Number} */
9
+ _prevValue = 0;
10
+
7
11
  /** @type {Boolean} */
8
12
  _visible = true;
9
13
 
10
- init$ = {
11
- ...this.init$,
12
- width: 0,
13
- opacity: 0,
14
- };
14
+ constructor() {
15
+ super();
16
+ this.init$ = {
17
+ ...this.init$,
18
+ width: 0,
19
+ opacity: 0,
20
+ };
21
+ }
15
22
 
16
23
  initCallback() {
17
24
  super.initCallback();
18
- this.defineAccessor('value', (value) => {
19
- if (value === undefined || value === null) return;
20
- const prevValue = this._value;
21
- this._value = value;
22
- if (!this._visible) return;
23
- if (value === 100) {
24
- this.ref.realProgressLine.addEventListener(
25
- 'transitionend',
26
- () => {
27
- this.ref.realProgressLine.classList.toggle('uc-progress--hidden', true);
28
- },
29
- {
30
- once: true,
31
- },
32
- );
33
- }
34
-
35
- this.ref.fakeProgressLine.classList.toggle('uc-fake-progress--hidden', value !== 0);
36
-
37
- if (value === 0 && prevValue > 0) {
38
- this.ref.realProgressLine.addEventListener(
39
- 'transitionend',
40
- () => {
41
- this.style.setProperty('--l-progress-value', this._value.toString());
42
- },
43
- {
44
- once: true,
45
- },
46
- );
25
+ const handleFakeProgressAnimation = () => {
26
+ const fakeProgressLine = this.ref.fakeProgressLine;
27
+ if (!this._visible) {
28
+ fakeProgressLine.classList.add('uc-fake-progress--hidden');
47
29
  return;
48
30
  }
49
-
50
- this.style.setProperty('--l-progress-value', this._value.toString());
51
- });
52
-
53
- this.defineAccessor('visible', (visible) => {
54
- this._visible = visible;
55
-
56
- this.ref.realProgressLine.classList.toggle('uc-progress--hidden', !visible);
57
- this.ref.fakeProgressLine.classList.toggle('uc-fake-progress--hidden', !visible);
58
- });
31
+ if (this._value > 0) {
32
+ fakeProgressLine.classList.add('uc-fake-progress--hidden');
33
+ }
34
+ };
35
+
36
+ this.ref.fakeProgressLine.addEventListener('animationiteration', handleFakeProgressAnimation);
37
+
38
+ this.defineAccessor(
39
+ 'value',
40
+ /** @param {number} value */ (value) => {
41
+ if (value === undefined || value === null) return;
42
+ this._prevValue = this._value;
43
+ this._value = value;
44
+ if (!this._visible) return;
45
+ this.style.setProperty('--l-progress-value', this._value.toString());
46
+ },
47
+ );
48
+
49
+ this.defineAccessor(
50
+ 'visible',
51
+ /** @param {boolean} visible */ (visible) => {
52
+ this._visible = visible;
53
+ this.classList.toggle('uc-progress-bar--hidden', !visible);
54
+ },
55
+ );
59
56
  }
60
57
  }
61
58
 
@@ -9,6 +9,12 @@ uc-progress-bar {
9
9
  height: 100%;
10
10
  overflow: hidden;
11
11
  pointer-events: none;
12
+ transition: opacity 0.3s;
13
+ opacity: 1;
14
+ }
15
+
16
+ uc-progress-bar.uc-progress-bar--hidden {
17
+ opacity: 0;
12
18
  }
13
19
 
14
20
  uc-progress-bar .uc-progress {
@@ -36,17 +42,13 @@ uc-progress-bar .uc-fake-progress {
36
42
  background-color: var(--uc-primary);
37
43
  animation: fake-progress-animation 1s ease-in-out infinite;
38
44
  opacity: 1;
39
- transition:
40
- opacity 0.3s,
41
- display 1s;
42
- /* stylelint-disable-next-line property-no-unknown */
43
- transition-behavior: allow-discrete;
45
+ transition: opacity 0.3s;
44
46
  z-index: 1;
45
47
  }
46
48
 
47
49
  uc-progress-bar .uc-fake-progress--hidden {
48
50
  opacity: 0;
49
- display: none;
51
+ animation: none;
50
52
  }
51
53
 
52
54
  @keyframes fake-progress-animation {
@@ -1 +1 @@
1
- {"version":3,"file":"Range.d.ts","sourceRoot":"","sources":["Range.js"],"names":[],"mappings":"AAEA;IAqC0C,cAAgB;IApCxD;;;;;MAUE;IAIA,+BAA+B;IAC/B,qCAA4B;CAe/B;;;;8BAjC6B,sBAAsB"}
1
+ {"version":3,"file":"Range.d.ts","sourceRoot":"","sources":["Range.js"],"names":[],"mappings":"AAEA;;IACE;;;;;MAUE;IAIA,+BAA+B;IAC/B,qCAA4B;CAe/B;;;;8BAjC6B,sBAAsB"}
@@ -6,8 +6,8 @@ export class SimpleBtn extends UploaderBlock {
6
6
  '*commonProgress': number;
7
7
  '*uploadList': never[];
8
8
  '*uploadQueue': import("@uploadcare/upload-client").Queue;
9
- '*collectionErrors': any[];
10
- '*collectionState': import("../../index.js").OutputCollectionState<import("../../index.js").OutputCollectionStatus, "maybe-has-group"> | null;
9
+ '*collectionErrors': ReturnType<import("../../index.js").OutputErrorCollection>[];
10
+ '*collectionState': import("../../index.js").OutputCollectionState | null;
11
11
  '*groupInfo': import("@uploadcare/upload-client").UploadcareGroup | null;
12
12
  '*uploadTrigger': Set<string>;
13
13
  '*secureUploadsManager': import("../../abstract/SecureUploadsManager.js").SecureUploadsManager | null;
@@ -1 +1 @@
1
- {"version":3,"file":"SimpleBtn.d.ts","sourceRoot":"","sources":["SimpleBtn.js"],"names":[],"mappings":"AAIA;IAMI;;;;;;;;;;;;;;;;;MAOC;CAoBJ;;;;8BApC6B,iCAAiC"}
1
+ {"version":3,"file":"SimpleBtn.d.ts","sourceRoot":"","sources":["SimpleBtn.js"],"names":[],"mappings":"AAIA;IAMI;;;;;;;+CAmBI,gBACH;mCAGgB,gBAAU;6BAE3B,2BAIO;;wCAGD,wCAA2B;;;;;;MAzBhC;CAoBJ;;;;8BApC6B,iCAAiC"}
@@ -22,11 +22,8 @@ export class SourceBtn extends UploaderBlock {
22
22
  '*commonProgress': number;
23
23
  '*uploadList': never[];
24
24
  '*uploadQueue': import("@uploadcare/upload-client").Queue;
25
- '*collectionErrors': any[]; /**
26
- * @private
27
- * @type {Record<string, TConfig>}
28
- */
29
- '*collectionState': import("../../index.js").OutputCollectionState<import("../../index.js").OutputCollectionStatus, "maybe-has-group"> | null;
25
+ '*collectionErrors': ReturnType<import("../../index.js" /** @type {string | undefined} */).OutputErrorCollection>[];
26
+ '*collectionState': import("../../index.js").OutputCollectionState | null;
30
27
  '*groupInfo': import("@uploadcare/upload-client").UploadcareGroup | null;
31
28
  '*uploadTrigger': Set<string>;
32
29
  '*secureUploadsManager': import("../../abstract/SecureUploadsManager.js").SecureUploadsManager | null;
@@ -1 +1 @@
1
- {"version":3,"file":"SourceBtn.d.ts","sourceRoot":"","sources":["SourceBtn.js"],"names":[],"mappings":"AASA;;;;;;;;;GASG;AAEH;IAEE,iCAAiC;IACjC,MADW,MAAM,GAAG,SAAS,CACZ;IACjB;;;OAGG;IACH,yBAAsB;IAKpB;;;;;;oCATF;;;WAGG;;;;;;;;;;MAUA;IAGH,kBA2DC;IAkBD,kCAAkC;IAClC,yBADY,OAAO,QAGlB;IAED,2BAA2B;IAC3B,cADY,MAAM,WAGjB;IAED,iBAgBC;IAED,2BAA2B;IAC3B,gBADY,MAAM,QAcjB;CACF;;;;sBAtJY;IACZ,IAAQ,EAAE,MAAM,CAAC;IACjB,QAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAY,CAAC,EAAE,MAAM,OAAO,CAAC;IAC7B,cAAkB,CAAC,EAAE,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;8BAhB0B,iCAAiC"}
1
+ {"version":3,"file":"SourceBtn.d.ts","sourceRoot":"","sources":["SourceBtn.js"],"names":[],"mappings":"AASA;;;;;;;;;GASG;AAEH;IAEE,iCAAiC;IACjC,MADW,MAAM,GAAG,SAAS,CACZ;IACjB;;;OAGG;IACH,yBAAsB;IAKpB;;;;;;+CAZc,gBACjB,CAAC,iCAAiC;mCAIhC,gBAAU;6BAKJ,2BAGN;;wCAQS,wCACL;;;;;;MANF;IAGH,kBA2DC;IAkBD,kCAAkC;IAClC,yBADY,OAAO,QAGlB;IAED,2BAA2B;IAC3B,cADY,MAAM,WAGjB;IAED,iBAgBC;IAED,2BAA2B;IAC3B,gBADY,MAAM,QAcjB;CACF;;;;sBAtJY;IACR,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;8BAf0B,iCAAiC"}
@@ -1,9 +1,9 @@
1
1
  // @ts-check
2
- import { UploaderBlock } from '../../abstract/UploaderBlock.js';
3
2
  import { ActivityBlock } from '../../abstract/ActivityBlock.js';
4
- import { ExternalUploadSource, UploadSource, UploadSourceMobile } from '../utils/UploadSource.js';
3
+ import { UploaderBlock } from '../../abstract/UploaderBlock.js';
4
+ import { browserFeatures } from '../../utils/browser-info.js';
5
5
  import { CameraSourceTypes } from '../CameraSource/constants.js';
6
- import { isSupportCapture } from '../utils/supportCapture.js';
6
+ import { ExternalUploadSource, UploadSource, UploadSourceMobile } from '../utils/UploadSource.js';
7
7
 
8
8
  const L10N_PREFIX = 'src-type-';
9
9
 
@@ -55,7 +55,7 @@ export class SourceBtn extends UploaderBlock {
55
55
  type: UploadSource.CAMERA,
56
56
  activity: ActivityBlock.activities.CAMERA,
57
57
  activate: () => {
58
- const supportsCapture = isSupportCapture();
58
+ const supportsCapture = browserFeatures.htmlMediaCapture;
59
59
 
60
60
  if (supportsCapture) {
61
61
  this.api.openSystemDialog({ captureCamera: true });
@@ -75,7 +75,7 @@ export class SourceBtn extends UploaderBlock {
75
75
  type: mobileSourceType,
76
76
  activity: ActivityBlock.activities.CAMERA,
77
77
  activate: () => {
78
- const supportsCapture = isSupportCapture();
78
+ const supportsCapture = browserFeatures.htmlMediaCapture;
79
79
  if (supportsCapture) {
80
80
  this.api.openSystemDialog({
81
81
  captureCamera: true,
@@ -1,8 +1,8 @@
1
1
  // @ts-check
2
2
  import { Block } from '../../abstract/Block.js';
3
+ import { browserFeatures } from '../../utils/browser-info.js';
3
4
  import { stringToArray } from '../../utils/stringToArray.js';
4
5
  import { deserializeCsv } from '../utils/comma-separated.js';
5
- import { isSupportCapture } from '../utils/supportCapture.js';
6
6
 
7
7
  export class SourceList extends Block {
8
8
  initCallback() {
@@ -22,7 +22,7 @@ export class SourceList extends Block {
22
22
  return;
23
23
  }
24
24
 
25
- if (srcName === 'camera' && isSupportCapture()) {
25
+ if (srcName === 'camera' && browserFeatures.htmlMediaCapture) {
26
26
  this.subConfigValue('cameraModes', (/** @type {String} */ val) => {
27
27
  const cameraModes = deserializeCsv(val);
28
28
 
@@ -1 +1 @@
1
- {"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["Spinner.js"],"names":[],"mappings":"AAEA;IAGq5B,cAAgB;CAHx3B;;;;8BAFf,sBAAsB"}
1
+ {"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["Spinner.js"],"names":[],"mappings":"AAEA;;CAA6C;;;;8BAFf,sBAAsB"}
@@ -1,4 +1,13 @@
1
- export class Thumb extends UploaderBlock {
1
+ export class Thumb extends FileItemConfig {
2
+ /** @private */
3
+ private _renderedGridOnce;
4
+ /**
5
+ * @private
6
+ * @type {IntersectionObserverEntry['boundingClientRect'] | null}
7
+ */
8
+ private _thumbRect;
9
+ _isIntersecting: boolean;
10
+ _firstViewMode: import("../UploadList/UploadList.js").FilesViewMode;
2
11
  init$: {
3
12
  thumbUrl: string;
4
13
  badgeIcon: string;
@@ -6,8 +15,8 @@ export class Thumb extends UploaderBlock {
6
15
  '*commonProgress': number;
7
16
  '*uploadList': never[];
8
17
  '*uploadQueue': import("@uploadcare/upload-client").Queue;
9
- '*collectionErrors': any[];
10
- '*collectionState': import("../../index.js").OutputCollectionState<import("../../index.js").OutputCollectionStatus, "maybe-has-group"> | null;
18
+ '*collectionErrors': ReturnType<import("../../index.js").OutputErrorCollection>[];
19
+ '*collectionState': import("../../index.js").OutputCollectionState | null;
11
20
  '*groupInfo': import("@uploadcare/upload-client").UploadcareGroup | null;
12
21
  '*uploadTrigger': Set<string>;
13
22
  '*secureUploadsManager': import("../../abstract/SecureUploadsManager.js").SecureUploadsManager | null;
@@ -17,10 +26,26 @@ export class Thumb extends UploaderBlock {
17
26
  '*historyBack': null;
18
27
  '*closeModal': () => void;
19
28
  };
20
- _observer: any;
29
+ _calculateThumbSize(force?: boolean): number;
30
+ /** @private */
31
+ private _generateThumbnail;
32
+ _debouncedGenerateThumb: ((...args: any[]) => Promise<void>) & {
33
+ cancel: () => void;
34
+ };
35
+ /**
36
+ * @private
37
+ * @param {IntersectionObserverEntry[]} entries
38
+ */
39
+ private _observerCallback;
40
+ /**
41
+ * @private
42
+ * @param {String} id
43
+ */
44
+ private _handleEntryId;
45
+ _observer: IntersectionObserver | undefined;
21
46
  }
22
47
  export namespace Thumb {
23
48
  let template: string;
24
49
  }
25
- import { UploaderBlock } from '../../abstract/UploaderBlock.js';
50
+ import { FileItemConfig } from '../FileItem/FileItemConfig.js';
26
51
  //# sourceMappingURL=Thumb.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Thumb.d.ts","sourceRoot":"","sources":["Thumb.js"],"names":[],"mappings":"AAIA;IAII;;;;;;;;;;;;;;;;;MAKC;IAeD,eASC;CAUJ;;;;8BA7C6B,iCAAiC"}
1
+ {"version":3,"file":"Thumb.d.ts","sourceRoot":"","sources":["Thumb.js"],"names":[],"mappings":"AAUA;IACE,eAAe;IACf,0BAA0B;IAE1B;;;OAGG;IACH,mBAAkB;IAElB,yBAAwB;IAExB,oEAAwC;IAKtC;;;;;;;+CAPc,gBAElB;mCAKI,gBAAQ;6BAKR,2BAGU;;wCAMR,wCAAwB;;;;;;MATzB;IAGH,6CAgBC;IAED,eAAe;IACf,2BA4DG;IAEH;;MAA4E;IAE5E;;;OAGG;IACH,0BAaC;IAOD;;;OAGG;IACH,uBA6BC;IA8BC,4CAAuG;CAY1G;;;;+BArN8B,+BAA+B"}