@uploadcare/file-uploader 1.28.0-alpha.0 → 1.28.0-alpha.1

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 (466) hide show
  1. package/dist/ActivityHeader-R6Mlx-dA.js +9 -0
  2. package/dist/ActivityHeader.css +23 -0
  3. package/dist/ActivityHeader.layered.css +24 -0
  4. package/dist/{CameraSource-DbyO6GoK.js → CameraSource-DDwj1jCV.js} +106 -76
  5. package/dist/CameraSource-n1tun2Df.js +10 -0
  6. package/dist/CameraSource.css +180 -0
  7. package/dist/CameraSource.layered.css +209 -0
  8. package/dist/{CloudImageEditor-BIxf1V4M.js → CloudImageEditor-DcVoIRb3.js} +66 -65
  9. package/dist/{CloudImageEditorActivity-d4DpK6fQ.js → CloudImageEditorActivity-Csij4nlC.js} +4 -4
  10. package/dist/{CloudImageEditorActivity-CJxP5N0S.js → CloudImageEditorActivity-DD4NdU0P.js} +4 -4
  11. package/dist/CloudImageEditorActivity.css +14 -0
  12. package/dist/CloudImageEditorActivity.layered.css +15 -0
  13. package/dist/{Config-DuWre5p3.js → Config-DKOromHY.js} +27 -27
  14. package/dist/Config.css +4 -0
  15. package/dist/Config.layered.css +5 -0
  16. package/dist/ExternalSource-6MSUgxqy.js +10 -0
  17. package/dist/{ExternalSource-BKTFp95O.js → ExternalSource-DVEjSkPB.js} +56 -51
  18. package/dist/ExternalSource.css +98 -0
  19. package/dist/ExternalSource.layered.css +116 -0
  20. package/dist/{Icon-CqTVC82Q.js → Icon-tXRTvEF2.js} +7 -8
  21. package/dist/Icon.css +14 -0
  22. package/dist/Icon.layered.css +15 -0
  23. package/dist/{LitUploaderBlock-BA34rzeU.js → LitUploaderBlock-LxeOZ0ya.js} +65 -65
  24. package/dist/{UrlSource-DZK5EBwT.js → UrlSource-BkyX00I2.js} +5 -5
  25. package/dist/UrlSource-RI8TSD48.js +10 -0
  26. package/dist/UrlSource.css +17 -0
  27. package/dist/UrlSource.layered.css +18 -0
  28. package/dist/abstract/loadFileUploaderFrom.js +3 -3
  29. package/dist/cameraPlugin-weRKO7eG.js +8 -0
  30. package/dist/{cloud-image-editor-fNswWrI4.js → cloud-image-editor-hhbyNWLG.js} +6 -6
  31. package/dist/cloud-image-editor.css +1380 -0
  32. package/dist/cloud-image-editor.layered.css +1549 -0
  33. package/dist/cloudImageEditorPlugin-FjUgbMK3.js +8 -0
  34. package/dist/{en-DNCwRJsB.js → en-8OWEmZim.js} +2 -2
  35. package/dist/env-mM-ksNPq.js +8 -0
  36. package/dist/env.js +3 -3
  37. package/dist/externalSourcesPlugin-CMBmLT8S.js +8 -0
  38. package/dist/imageShrinkPlugin-BN6loiP2.js +8 -0
  39. package/dist/index-base.css +2497 -0
  40. package/dist/index-base.layered.css +2837 -0
  41. package/dist/index.css +9 -3964
  42. package/dist/index.d.ts +13 -0
  43. package/dist/index.js +827 -42
  44. package/dist/index.layered.css +9 -4478
  45. package/dist/instagramPlugin-CXRm8MGL.js +8 -0
  46. package/dist/{loadFileUploaderFrom-BWJM43Yq.js → loadFileUploaderFrom-Bfz8L3VB.js} +3 -3
  47. package/dist/locales/file-uploader/ar.js +2 -2
  48. package/dist/locales/file-uploader/az.js +2 -2
  49. package/dist/locales/file-uploader/ca.js +2 -2
  50. package/dist/locales/file-uploader/cs.js +2 -2
  51. package/dist/locales/file-uploader/da.js +2 -2
  52. package/dist/locales/file-uploader/de.js +2 -2
  53. package/dist/locales/file-uploader/el.js +2 -2
  54. package/dist/locales/file-uploader/en.js +3 -3
  55. package/dist/locales/file-uploader/es.js +2 -2
  56. package/dist/locales/file-uploader/et.js +2 -2
  57. package/dist/locales/file-uploader/fi.js +2 -2
  58. package/dist/locales/file-uploader/fr.js +2 -2
  59. package/dist/locales/file-uploader/he.js +2 -2
  60. package/dist/locales/file-uploader/hy.js +2 -2
  61. package/dist/locales/file-uploader/is.js +2 -2
  62. package/dist/locales/file-uploader/it.js +2 -2
  63. package/dist/locales/file-uploader/ja.js +2 -2
  64. package/dist/locales/file-uploader/ka.js +2 -2
  65. package/dist/locales/file-uploader/kk.js +2 -2
  66. package/dist/locales/file-uploader/ko.js +2 -2
  67. package/dist/locales/file-uploader/lv.js +2 -2
  68. package/dist/locales/file-uploader/nb.js +2 -2
  69. package/dist/locales/file-uploader/nl.js +2 -2
  70. package/dist/locales/file-uploader/pl.js +2 -2
  71. package/dist/locales/file-uploader/pt.js +2 -2
  72. package/dist/locales/file-uploader/ro.js +2 -2
  73. package/dist/locales/file-uploader/ru.js +2 -2
  74. package/dist/locales/file-uploader/sk.js +2 -2
  75. package/dist/locales/file-uploader/sr.js +2 -2
  76. package/dist/locales/file-uploader/sv.js +2 -2
  77. package/dist/locales/file-uploader/tr.js +2 -2
  78. package/dist/locales/file-uploader/uk.js +2 -2
  79. package/dist/locales/file-uploader/vi.js +2 -2
  80. package/dist/locales/file-uploader/zh-TW.js +2 -2
  81. package/dist/locales/file-uploader/zh.js +2 -2
  82. package/dist/{plugins-DxjsQUa8.js → plugins-CGUls7EV.js} +6 -6
  83. package/dist/urlSourcePlugin-_WdbEhq2.js +8 -0
  84. package/package.json +1 -1
  85. package/web/ActivityHeader-BFdTdVfD.js +9 -0
  86. package/web/ActivityHeader-DQy6rII1.js +9 -0
  87. package/web/ActivityHeader-DvzMl0uj.js +9 -0
  88. package/web/ActivityHeader-i4x6_Fne.js +9 -0
  89. package/web/CameraSource-BAWIA4Wm.js +508 -0
  90. package/web/CameraSource-BqZCQcij.js +11 -0
  91. package/web/CameraSource-Brxr4tz4.js +508 -0
  92. package/web/CameraSource-BvBJ5Uzy.js +508 -0
  93. package/web/CameraSource-CkHzIE-h.js +11 -0
  94. package/web/CameraSource-D964yPLu.js +508 -0
  95. package/web/CameraSource-DE48Az-f.js +11 -0
  96. package/web/CameraSource-DyPebtRF.js +478 -0
  97. package/web/CameraSource-pj7Xo81m.js +11 -0
  98. package/web/CloudImageEditor-CTgUWB07.js +2192 -0
  99. package/web/CloudImageEditor-CxqV9Lwm.js +2192 -0
  100. package/web/CloudImageEditor-DoLWHpqV.js +2192 -0
  101. package/web/CloudImageEditor-Drywn265.js +2192 -0
  102. package/web/CloudImageEditor-MXcaDtMx.js +2187 -0
  103. package/web/CloudImageEditorActivity-BPzmfaJV.js +85 -0
  104. package/web/CloudImageEditorActivity-Br8pU5gd.js +11 -0
  105. package/web/CloudImageEditorActivity-Cw8b2CEz.js +11 -0
  106. package/web/CloudImageEditorActivity-Df1ySGq0.js +86 -0
  107. package/web/CloudImageEditorActivity-DinG5r0y.js +11 -0
  108. package/web/CloudImageEditorActivity-DmnLLINR.js +85 -0
  109. package/web/CloudImageEditorActivity-U90BGCek.js +85 -0
  110. package/web/CloudImageEditorActivity-dNLQZRZI.js +11 -0
  111. package/web/CloudImageEditorActivity-ur-hQ-6p.js +85 -0
  112. package/web/Config-8hlBNhvs.js +455 -0
  113. package/web/Config-BDZhPIyz.js +455 -0
  114. package/web/Config-CJVNrrjj.js +455 -0
  115. package/web/Config-DvkVtlQ7.js +455 -0
  116. package/web/ExternalSource-B9ycBFiD.js +10 -0
  117. package/web/ExternalSource-BE7HX47E.js +250 -0
  118. package/web/ExternalSource-BL5GSlol.js +250 -0
  119. package/web/ExternalSource-BXQY6Dlc.js +10 -0
  120. package/web/ExternalSource-BXxH3JCD.js +250 -0
  121. package/web/ExternalSource-BYSS-PPV.js +245 -0
  122. package/web/ExternalSource-C57a61QN.js +10 -0
  123. package/web/ExternalSource-CKfMtOgU.js +250 -0
  124. package/web/ExternalSource-DP6q8ylB.js +10 -0
  125. package/web/LitUploaderBlock-AX6jOdAS.js +996 -0
  126. package/web/LitUploaderBlock-BjAaoLl2.js +996 -0
  127. package/web/LitUploaderBlock-D8E5HuwH.js +996 -0
  128. package/web/LitUploaderBlock-Dl3ce0Tc.js +996 -0
  129. package/web/LitUploaderBlock-Oi33U0uf.js +996 -0
  130. package/web/UrlSource-B9SX3K0L.js +10 -0
  131. package/web/UrlSource-C3zB1rCb.js +70 -0
  132. package/web/UrlSource-C7bEU6Xv.js +10 -0
  133. package/web/UrlSource-CE389CBz.js +70 -0
  134. package/web/UrlSource-CnvAJ58Y.js +10 -0
  135. package/web/UrlSource-CqF0h6B-.js +10 -0
  136. package/web/UrlSource-D-971Nut.js +70 -0
  137. package/web/UrlSource-DhI3YCt5.js +70 -0
  138. package/web/UrlSource-hWV7jtB2.js +70 -0
  139. package/web/abstract/CTX.d.ts +40 -0
  140. package/web/abstract/TypedCollection.d.ts +47 -0
  141. package/web/abstract/TypedCollection.test.d.ts +1 -0
  142. package/web/abstract/TypedData.d.ts +12 -0
  143. package/web/abstract/TypedData.test.d.ts +1 -0
  144. package/web/abstract/UploaderPublicApi.d.ts +41 -0
  145. package/web/abstract/buildOutputCollectionState.d.ts +3 -0
  146. package/web/abstract/customConfigOptions.d.ts +65 -0
  147. package/web/abstract/defineComponents.d.ts +1 -0
  148. package/web/abstract/features/ClipboardLayer.d.ts +12 -0
  149. package/web/abstract/loadFileUploaderFrom.d.ts +13 -0
  150. package/web/abstract/localeRegistry.d.ts +5 -0
  151. package/web/abstract/managers/LocaleManager.d.ts +10 -0
  152. package/web/abstract/managers/ModalManager.d.ts +53 -0
  153. package/web/abstract/managers/SecureUploadsManager.d.ts +7 -0
  154. package/web/abstract/managers/TelemetryManager.d.ts +41 -0
  155. package/web/abstract/managers/ValidationManager.d.ts +34 -0
  156. package/web/abstract/managers/__tests__/ModalManager.test.d.ts +13 -0
  157. package/web/abstract/managers/__tests__/SecureUploadsManager.test.d.ts +1 -0
  158. package/web/abstract/managers/a11y.d.ts +9 -0
  159. package/web/abstract/managers/plugin/PluginManager.d.ts +25 -0
  160. package/web/abstract/managers/plugin/PluginTypes.d.ts +146 -0
  161. package/web/abstract/managers/plugin/index.d.ts +2 -0
  162. package/web/abstract/sharedConfigKey.d.ts +2 -0
  163. package/web/abstract/uploadEntrySchema.d.ts +34 -0
  164. package/web/blocks/ActivityHeader/ActivityHeader.d.ts +8 -0
  165. package/web/blocks/CameraSource/CameraSource.d.ts +121 -0
  166. package/web/blocks/CameraSource/__tests__/calcCameraModes.test.d.ts +1 -0
  167. package/web/blocks/CameraSource/calcCameraModes.d.ts +5 -0
  168. package/web/blocks/CameraSource/constants.d.ts +15 -0
  169. package/web/blocks/CloudImageEditor/index.d.ts +1 -0
  170. package/web/blocks/CloudImageEditor/src/CloudImageEditorBlock.d.ts +60 -0
  171. package/web/blocks/CloudImageEditor/src/CropFrame.d.ts +56 -0
  172. package/web/blocks/CloudImageEditor/src/EditorAspectRatioButtonControl.d.ts +24 -0
  173. package/web/blocks/CloudImageEditor/src/EditorButtonControl.d.ts +14 -0
  174. package/web/blocks/CloudImageEditor/src/EditorCropButtonControl.d.ts +13 -0
  175. package/web/blocks/CloudImageEditor/src/EditorFilterControl.d.ts +35 -0
  176. package/web/blocks/CloudImageEditor/src/EditorImageCropper.d.ts +56 -0
  177. package/web/blocks/CloudImageEditor/src/EditorImageFader.d.ts +63 -0
  178. package/web/blocks/CloudImageEditor/src/EditorOperationControl.d.ts +15 -0
  179. package/web/blocks/CloudImageEditor/src/EditorScroller.d.ts +15 -0
  180. package/web/blocks/CloudImageEditor/src/EditorSlider.d.ts +33 -0
  181. package/web/blocks/CloudImageEditor/src/EditorToolbar.d.ts +68 -0
  182. package/web/blocks/CloudImageEditor/src/crop-utils.d.ts +36 -0
  183. package/web/blocks/CloudImageEditor/src/crop-utils.test.d.ts +1 -0
  184. package/web/blocks/CloudImageEditor/src/cropper-constants.d.ts +10 -0
  185. package/web/blocks/CloudImageEditor/src/elements/button/BtnUi.d.ts +31 -0
  186. package/web/blocks/CloudImageEditor/src/elements/line-loader/LineLoaderUi.d.ts +19 -0
  187. package/web/blocks/CloudImageEditor/src/elements/presence-toggle/PresenceToggle.d.ts +27 -0
  188. package/web/blocks/CloudImageEditor/src/elements/slider/SliderUi.d.ts +38 -0
  189. package/web/blocks/CloudImageEditor/src/index.d.ts +15 -0
  190. package/web/blocks/CloudImageEditor/src/lib/classNames.d.ts +5 -0
  191. package/web/blocks/CloudImageEditor/src/lib/classNames.test.d.ts +1 -0
  192. package/web/blocks/CloudImageEditor/src/lib/linspace.d.ts +1 -0
  193. package/web/blocks/CloudImageEditor/src/lib/linspace.test.d.ts +1 -0
  194. package/web/blocks/CloudImageEditor/src/lib/parseCropPreset.d.ts +4 -0
  195. package/web/blocks/CloudImageEditor/src/lib/parseCropPreset.test.d.ts +1 -0
  196. package/web/blocks/CloudImageEditor/src/lib/parseTabs.d.ts +2 -0
  197. package/web/blocks/CloudImageEditor/src/lib/pick.d.ts +1 -0
  198. package/web/blocks/CloudImageEditor/src/lib/pick.test.d.ts +1 -0
  199. package/web/blocks/CloudImageEditor/src/lib/transformationUtils.d.ts +7 -0
  200. package/web/blocks/CloudImageEditor/src/state.d.ts +20 -0
  201. package/web/blocks/CloudImageEditor/src/svg-sprite.d.ts +2 -0
  202. package/web/blocks/CloudImageEditor/src/toolbar-constants.d.ts +61 -0
  203. package/web/blocks/CloudImageEditor/src/types.d.ts +60 -0
  204. package/web/blocks/CloudImageEditor/src/util.d.ts +2 -0
  205. package/web/blocks/CloudImageEditor/src/utils/parseFilterValue.d.ts +7 -0
  206. package/web/blocks/CloudImageEditor/src/utils/parseFilterValue.test.d.ts +1 -0
  207. package/web/blocks/CloudImageEditorActivity/CloudImageEditorActivity.d.ts +25 -0
  208. package/web/blocks/Config/Config.d.ts +60 -0
  209. package/web/blocks/Config/assertions.d.ts +5 -0
  210. package/web/blocks/Config/computed-properties.d.ts +24 -0
  211. package/web/blocks/Config/computed-properties.test.d.ts +1 -0
  212. package/web/blocks/Config/initialConfig.d.ts +6 -0
  213. package/web/blocks/Config/normalizeConfigValue.d.ts +2 -0
  214. package/web/blocks/Config/validatorsType.d.ts +18 -0
  215. package/web/blocks/Copyright/Copyright.d.ts +10 -0
  216. package/web/blocks/DropArea/DropArea.d.ts +47 -0
  217. package/web/blocks/DropArea/addDropzone.d.ts +17 -0
  218. package/web/blocks/DropArea/getDropItems.d.ts +12 -0
  219. package/web/blocks/ExternalSource/ExternalSource.d.ts +45 -0
  220. package/web/blocks/ExternalSource/MessageBridge.d.ts +11 -0
  221. package/web/blocks/ExternalSource/buildThemeDefinition.d.ts +4 -0
  222. package/web/blocks/ExternalSource/query-string.d.ts +1 -0
  223. package/web/blocks/ExternalSource/types.d.ts +105 -0
  224. package/web/blocks/FileItem/FileItem.d.ts +50 -0
  225. package/web/blocks/FileItem/FileItemConfig.d.ts +10 -0
  226. package/web/blocks/FormInput/FormInput.d.ts +18 -0
  227. package/web/blocks/Icon/Icon.d.ts +19 -0
  228. package/web/blocks/Img/Img.d.ts +14 -0
  229. package/web/blocks/Img/ImgBase.d.ts +29 -0
  230. package/web/blocks/Img/ImgConfig.d.ts +28 -0
  231. package/web/blocks/Img/configurations.d.ts +11 -0
  232. package/web/blocks/Img/props-map.d.ts +28 -0
  233. package/web/blocks/Img/utils/parseObjectToString.d.ts +2 -0
  234. package/web/blocks/Modal/Modal.d.ts +34 -0
  235. package/web/blocks/PluginActivityRenderer/PluginActivityRenderer.d.ts +32 -0
  236. package/web/blocks/PluginActivityRenderer/index.d.ts +1 -0
  237. package/web/blocks/ProgressBar/ProgressBar.d.ts +21 -0
  238. package/web/blocks/ProgressBarCommon/ProgressBarCommon.d.ts +17 -0
  239. package/web/blocks/Select/Select.d.ts +18 -0
  240. package/web/blocks/SimpleBtn/SimpleBtn.d.ts +15 -0
  241. package/web/blocks/SourceBtn/SourceBtn.d.ts +23 -0
  242. package/web/blocks/SourceList/SourceList.d.ts +24 -0
  243. package/web/blocks/Spinner/Spinner.d.ts +9 -0
  244. package/web/blocks/StartFrom/StartFrom.d.ts +12 -0
  245. package/web/blocks/Thumb/Thumb.d.ts +35 -0
  246. package/web/blocks/UploadCtxProvider/EventEmitter.d.ts +70 -0
  247. package/web/blocks/UploadCtxProvider/UploadCtxProvider.d.ts +44 -0
  248. package/web/blocks/UploadList/UploadList.d.ts +39 -0
  249. package/web/blocks/UrlSource/UrlSource.d.ts +14 -0
  250. package/web/blocks/svg-backgrounds/svg-backgrounds.d.ts +3 -0
  251. package/web/blocks/themes/uc-basic/svg-sprite.d.ts +2 -0
  252. package/web/cameraPlugin-DeedXMWV.js +8 -0
  253. package/web/cameraPlugin-Duy1QwjB.js +8 -0
  254. package/web/cameraPlugin-QS9SUOtO.js +8 -0
  255. package/web/cameraPlugin-bq8ggY04.js +8 -0
  256. package/web/cameraPlugin-cel9YgP_.js +8 -0
  257. package/web/cloud-image-editor-8DrVRZ7E.js +12 -0
  258. package/web/cloud-image-editor-BX50EK1U.js +12 -0
  259. package/web/cloud-image-editor-DSW3oWq-.js +12 -0
  260. package/web/cloud-image-editor-DuI2Lx4M.js +12 -0
  261. package/web/cloudImageEditorPlugin-5my6aD36.js +8 -0
  262. package/web/cloudImageEditorPlugin-Bk19DmJv.js +8 -0
  263. package/web/cloudImageEditorPlugin-CcdnmtBW.js +8 -0
  264. package/web/cloudImageEditorPlugin-DQJmDl03.js +8 -0
  265. package/web/cloudImageEditorPlugin-kojghfqw.js +8 -0
  266. package/web/constants-BCfCF0cJ.js +4025 -0
  267. package/web/core.d.ts +42 -0
  268. package/web/env.d.ts +2 -0
  269. package/web/externalSourcesPlugin-BTeRm5C0.js +8 -0
  270. package/web/externalSourcesPlugin-BXgVeojg.js +8 -0
  271. package/web/externalSourcesPlugin-BgLpuIK9.js +8 -0
  272. package/web/externalSourcesPlugin-DMc9zs4T.js +8 -0
  273. package/web/externalSourcesPlugin-Dm9vnTBv.js +8 -0
  274. package/web/file-uploader.iife.min.js +697 -0
  275. package/web/file-uploader.min.js +1859 -0
  276. package/web/imageShrinkPlugin-BdHgEGZH.js +8 -0
  277. package/web/imageShrinkPlugin-BjkMGfvT.js +8 -0
  278. package/web/imageShrinkPlugin-CCkGHL2w.js +8 -0
  279. package/web/imageShrinkPlugin-D4WjaRGo.js +8 -0
  280. package/web/imageShrinkPlugin-DqYGutVx.js +8 -0
  281. package/web/index.d.ts +42 -0
  282. package/web/instagramPlugin-BTMz0K2a.js +8 -0
  283. package/web/instagramPlugin-BbIKgTH7.js +8 -0
  284. package/web/instagramPlugin-CQQhsEJa.js +8 -0
  285. package/web/instagramPlugin-Cm7lWKae.js +8 -0
  286. package/web/instagramPlugin-DcclxM_d.js +8 -0
  287. package/web/lit/BaseComponent.d.ts +12 -0
  288. package/web/lit/Constructor.d.ts +1 -0
  289. package/web/lit/CssDataMixin.d.ts +7 -0
  290. package/web/lit/LightDomMixin.d.ts +8 -0
  291. package/web/lit/LitActivityBlock.d.ts +53 -0
  292. package/web/lit/LitBlock.d.ts +83 -0
  293. package/web/lit/LitSolutionBlock.d.ts +21 -0
  294. package/web/lit/LitUploaderBlock.d.ts +53 -0
  295. package/web/lit/PubSubCompat.d.ts +18 -0
  296. package/web/lit/RegisterableElementMixin.d.ts +7 -0
  297. package/web/lit/SharedState.d.ts +119 -0
  298. package/web/lit/SymbioteCompatMixin.d.ts +40 -0
  299. package/web/lit/TestModeController.d.ts +16 -0
  300. package/web/lit/Uid.d.ts +3 -0
  301. package/web/lit/activity-constants.d.ts +11 -0
  302. package/web/lit/createDebugPrinter.d.ts +3 -0
  303. package/web/lit/findBlockInCtx.d.ts +3 -0
  304. package/web/lit/getOutputData.d.ts +2 -0
  305. package/web/lit/hasBlockInCtx.d.ts +3 -0
  306. package/web/lit/l10n.d.ts +5 -0
  307. package/web/lit/parseCssPropertyValue.d.ts +1 -0
  308. package/web/lit/shared-instances.d.ts +65 -0
  309. package/web/locales/file-uploader/ar.d.ts +137 -0
  310. package/web/locales/file-uploader/az.d.ts +129 -0
  311. package/web/locales/file-uploader/ca.d.ts +131 -0
  312. package/web/locales/file-uploader/cs.d.ts +133 -0
  313. package/web/locales/file-uploader/da.d.ts +129 -0
  314. package/web/locales/file-uploader/de.d.ts +129 -0
  315. package/web/locales/file-uploader/el.d.ts +129 -0
  316. package/web/locales/file-uploader/en.d.ts +129 -0
  317. package/web/locales/file-uploader/es.d.ts +131 -0
  318. package/web/locales/file-uploader/et.d.ts +129 -0
  319. package/web/locales/file-uploader/fi.d.ts +129 -0
  320. package/web/locales/file-uploader/fr.d.ts +131 -0
  321. package/web/locales/file-uploader/he.d.ts +131 -0
  322. package/web/locales/file-uploader/hy.d.ts +129 -0
  323. package/web/locales/file-uploader/is.d.ts +129 -0
  324. package/web/locales/file-uploader/it.d.ts +131 -0
  325. package/web/locales/file-uploader/ja.d.ts +129 -0
  326. package/web/locales/file-uploader/ka.d.ts +129 -0
  327. package/web/locales/file-uploader/kk.d.ts +129 -0
  328. package/web/locales/file-uploader/ko.d.ts +129 -0
  329. package/web/locales/file-uploader/lv.d.ts +131 -0
  330. package/web/locales/file-uploader/nb.d.ts +129 -0
  331. package/web/locales/file-uploader/nl.d.ts +129 -0
  332. package/web/locales/file-uploader/pl.d.ts +133 -0
  333. package/web/locales/file-uploader/pt.d.ts +131 -0
  334. package/web/locales/file-uploader/ro.d.ts +131 -0
  335. package/web/locales/file-uploader/ru.d.ts +133 -0
  336. package/web/locales/file-uploader/sk.d.ts +133 -0
  337. package/web/locales/file-uploader/sr.d.ts +131 -0
  338. package/web/locales/file-uploader/sv.d.ts +129 -0
  339. package/web/locales/file-uploader/tr.d.ts +129 -0
  340. package/web/locales/file-uploader/uk.d.ts +133 -0
  341. package/web/locales/file-uploader/vi.d.ts +129 -0
  342. package/web/locales/file-uploader/zh-TW.d.ts +129 -0
  343. package/web/locales/file-uploader/zh.d.ts +129 -0
  344. package/web/plugins/cameraPlugin.d.ts +2 -0
  345. package/web/plugins/cloudImageEditorPlugin.d.ts +2 -0
  346. package/web/plugins/externalSourcesPlugin.d.ts +2 -0
  347. package/web/plugins/imageShrinkPlugin.d.ts +2 -0
  348. package/web/plugins/instagramPlugin.d.ts +2 -0
  349. package/web/plugins/unsplashPlugin.d.ts +16 -0
  350. package/web/plugins/urlSourcePlugin.d.ts +2 -0
  351. package/web/plugins-Bt7FXHKx.js +562 -0
  352. package/web/plugins-CaaolyMk.js +562 -0
  353. package/web/plugins-Cjgw5oWg.js +562 -0
  354. package/web/plugins-CzNtrVQB.js +562 -0
  355. package/web/plugins-DS0hIs2V.js +563 -0
  356. package/web/ref-BOnG19ns.js +4040 -0
  357. package/web/ref-BejJFG7m.js +4040 -0
  358. package/web/ref-DcRg7zo9.js +4040 -0
  359. package/web/ref-ZWPcLQB9.js +4040 -0
  360. package/web/solutions/adaptive-image/index.d.ts +2 -0
  361. package/web/solutions/cloud-image-editor/CloudImageEditor.d.ts +11 -0
  362. package/web/solutions/cloud-image-editor/index.d.ts +5 -0
  363. package/web/solutions/file-uploader/inline/FileUploaderInline.d.ts +20 -0
  364. package/web/solutions/file-uploader/inline/index.d.ts +1 -0
  365. package/web/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts +23 -0
  366. package/web/solutions/file-uploader/minimal/index.d.ts +1 -0
  367. package/web/solutions/file-uploader/regular/FileUploaderRegular.d.ts +17 -0
  368. package/web/solutions/file-uploader/regular/index.d.ts +1 -0
  369. package/web/style-map-BmZdux7T.js +37 -0
  370. package/web/style-map-CZ6fSV6e.js +37 -0
  371. package/web/style-map-Dk7mLCrB.js +37 -0
  372. package/web/style-map-HkHnu9oA.js +37 -0
  373. package/web/style-map-tw1yUEaj.js +37 -0
  374. package/web/types/dom.d.ts +1 -0
  375. package/web/types/events.d.ts +4 -0
  376. package/web/types/exported.d.ts +492 -0
  377. package/web/types/index.d.ts +5 -0
  378. package/web/uc-basic.layered.min.css +6046 -0
  379. package/web/uc-basic.min.css +5487 -0
  380. package/web/uc-cloud-image-editor.layered.min.css +1884 -0
  381. package/web/uc-cloud-image-editor.min.css +1675 -0
  382. package/web/uc-cloud-image-editor.min.js +457 -0
  383. package/web/uc-file-uploader-inline.layered.min.css +4352 -0
  384. package/web/uc-file-uploader-inline.min.css +3836 -0
  385. package/web/uc-file-uploader-inline.min.js +1859 -0
  386. package/web/uc-file-uploader-minimal.layered.min.css +4352 -0
  387. package/web/uc-file-uploader-minimal.min.css +3836 -0
  388. package/web/uc-file-uploader-minimal.min.js +1859 -0
  389. package/web/uc-file-uploader-regular.layered.min.css +4352 -0
  390. package/web/uc-file-uploader-regular.min.css +3836 -0
  391. package/web/uc-file-uploader-regular.min.js +1859 -0
  392. package/web/uc-img.min.js +895 -0
  393. package/web/urlSourcePlugin-9lhcr02f.js +8 -0
  394. package/web/urlSourcePlugin-C-sLGhGb.js +8 -0
  395. package/web/urlSourcePlugin-DNXDpnRD.js +8 -0
  396. package/web/urlSourcePlugin-JnD0cnxb.js +8 -0
  397. package/web/urlSourcePlugin-hcMU2K6T.js +8 -0
  398. package/web/utils/UID.d.ts +5 -0
  399. package/web/utils/UID.test.d.ts +1 -0
  400. package/web/utils/UploadSource.d.ts +37 -0
  401. package/web/utils/WindowHeightTracker.d.ts +9 -0
  402. package/web/utils/abilities.d.ts +1 -0
  403. package/web/utils/applyStyles.d.ts +1 -0
  404. package/web/utils/browser-info.d.ts +12 -0
  405. package/web/utils/browser-info.test.d.ts +1 -0
  406. package/web/utils/cdn-utils.d.ts +53 -0
  407. package/web/utils/cdn-utils.test.d.ts +1 -0
  408. package/web/utils/comma-separated.d.ts +2 -0
  409. package/web/utils/debounce.d.ts +3 -0
  410. package/web/utils/delay.d.ts +1 -0
  411. package/web/utils/fileTypes.d.ts +11 -0
  412. package/web/utils/fileTypes.test.d.ts +1 -0
  413. package/web/utils/get-top-level-origin.d.ts +1 -0
  414. package/web/utils/get-top-level-origin.test.d.ts +1 -0
  415. package/web/utils/getLocaleDirection.d.ts +1 -0
  416. package/web/utils/getPluralForm.d.ts +1 -0
  417. package/web/utils/getPluralForm.test.d.ts +1 -0
  418. package/web/utils/isPromiseLike.d.ts +1 -0
  419. package/web/utils/isPromiseLike.test.d.ts +1 -0
  420. package/web/utils/isSecureTokenExpired.d.ts +8 -0
  421. package/web/utils/isSecureTokenExpired.test.d.ts +1 -0
  422. package/web/utils/memoize.d.ts +1 -0
  423. package/web/utils/memoize.test.d.ts +1 -0
  424. package/web/utils/mixinClass.d.ts +8 -0
  425. package/web/utils/parseCdnUrl.d.ts +11 -0
  426. package/web/utils/parseCdnUrl.test.d.ts +1 -0
  427. package/web/utils/parseShrink.d.ts +7 -0
  428. package/web/utils/parseShrink.test.d.ts +1 -0
  429. package/web/utils/preloadImage.d.ts +10 -0
  430. package/web/utils/prettyBytes.d.ts +11 -0
  431. package/web/utils/prettyBytes.test.d.ts +1 -0
  432. package/web/utils/resizeImage.d.ts +1 -0
  433. package/web/utils/stringToArray.d.ts +1 -0
  434. package/web/utils/stringToArray.test.d.ts +1 -0
  435. package/web/utils/template-utils.d.ts +16 -0
  436. package/web/utils/template-utils.test.d.ts +1 -0
  437. package/web/utils/throttle.d.ts +3 -0
  438. package/web/utils/toKebabCase.d.ts +2 -0
  439. package/web/utils/toKebabCase.test.d.ts +1 -0
  440. package/web/utils/transparentPixelSrc.d.ts +1 -0
  441. package/web/utils/uniqueArray.d.ts +1 -0
  442. package/web/utils/uniqueArray.test.d.ts +1 -0
  443. package/web/utils/userAgent.d.ts +2 -0
  444. package/web/utils/validators/collection/index.d.ts +2 -0
  445. package/web/utils/validators/collection/validateCollectionUploadError.d.ts +2 -0
  446. package/web/utils/validators/collection/validateMultiple.d.ts +2 -0
  447. package/web/utils/validators/file/index.d.ts +4 -0
  448. package/web/utils/validators/file/validateFileType.d.ts +2 -0
  449. package/web/utils/validators/file/validateIsImage.d.ts +2 -0
  450. package/web/utils/validators/file/validateMaxSizeLimit.d.ts +2 -0
  451. package/web/utils/validators/file/validateUploadError.d.ts +2 -0
  452. package/web/utils/warnOnce.d.ts +1 -0
  453. package/web/utils/wildcardRegexp.d.ts +1 -0
  454. package/web/utils/wildcardRegexp.test.d.ts +1 -0
  455. package/web/utils/withResolvers.d.ts +5 -0
  456. package/web/utils/withResolvers.test.d.ts +1 -0
  457. package/dist/CameraSource-px4BzEMI.js +0 -9
  458. package/dist/ExternalSource-CR5DG0Jv.js +0 -9
  459. package/dist/UrlSource-BxVL9Pve.js +0 -9
  460. package/dist/cameraPlugin-dGash48Q.js +0 -8
  461. package/dist/cloudImageEditorPlugin-2EU0Pm_j.js +0 -8
  462. package/dist/env-B1nfXy9i.js +0 -8
  463. package/dist/externalSourcesPlugin-DKQqk3AC.js +0 -8
  464. package/dist/imageShrinkPlugin-DAx8eRen.js +0 -8
  465. package/dist/instagramPlugin-k67tMAo3.js +0 -8
  466. package/dist/urlSourcePlugin-9xdB7Pvw.js +0 -8
@@ -0,0 +1,562 @@
1
+ /**
2
+ * @license
3
+ * Package: @uploadcare/file-uploader@1.28.0-alpha.1 (MIT)
4
+ * License: https://github.com/uploadcare/blob/main/LICENSE
5
+ * Built: 2026-03-02T20:26:09.550Z
6
+ */
7
+ var EXCLUDE_COMPONENTS = [
8
+ "UploaderBlock",
9
+ "ActivityBlock",
10
+ "Block",
11
+ "SolutionBlock"
12
+ ];
13
+ function defineComponents(H) {
14
+ for (let U in H) {
15
+ if (EXCLUDE_COMPONENTS.includes(U)) continue;
16
+ let W = [...U].reduce((p, H) => (H.toUpperCase() === H && (H = `-${H.toLowerCase()}`), p += H, p), "");
17
+ W.startsWith("-") && (W = W.replace("-", "")), W.startsWith("uc-") || (W = `uc-${W}`), H[U].reg && H[U].reg(W);
18
+ }
19
+ }
20
+ const deserializeCsv = (p) => p ? p.split(",").map((p) => p.trim()).filter(Boolean) : [], serializeCsv = (p) => p.join(","), ACTIVITY_TYPES = Object.freeze({
21
+ START_FROM: "start-from",
22
+ CAMERA: "camera",
23
+ UPLOAD_LIST: "upload-list",
24
+ URL: "url",
25
+ CLOUD_IMG_EDIT: "cloud-image-edit",
26
+ EXTERNAL: "external"
27
+ });
28
+ var calcIsDesktopSafari = () => {
29
+ let p = navigator.userAgent;
30
+ return /Macintosh|Windows/.test(p) && /Version\/[\d.]+.*Safari/.test(p) && !/Chrome|Chromium|Edg|OPR/.test(p);
31
+ }, calcHtmlMediaCaptureSupport = () => "capture" in document.createElement("input");
32
+ const calcBrowserInfo = () => ({ safariDesktop: calcIsDesktopSafari() }), calcBrowserFeatures = () => ({ htmlMediaCapture: calcHtmlMediaCaptureSupport() }), browserInfo = calcBrowserInfo(), browserFeatures = calcBrowserFeatures(), ExternalUploadSource = Object.freeze({
33
+ FACEBOOK: "facebook",
34
+ DROPBOX: "dropbox",
35
+ GDRIVE: "gdrive",
36
+ GPHOTOS: "gphotos",
37
+ FLICKR: "flickr",
38
+ VK: "vk",
39
+ EVERNOTE: "evernote",
40
+ BOX: "box",
41
+ ONEDRIVE: "onedrive",
42
+ HUDDLE: "huddle"
43
+ }), UploadSourceMobile = Object.freeze({
44
+ MOBILE_VIDEO_CAMERA: "mobile-video-camera",
45
+ MOBILE_PHOTO_CAMERA: "mobile-photo-camera"
46
+ }), UploadSource = Object.freeze({
47
+ LOCAL: "local",
48
+ DROP_AREA: "drop-area",
49
+ CAMERA: "camera",
50
+ EXTERNAL: "external",
51
+ API: "js-api",
52
+ URL: "url",
53
+ ...UploadSourceMobile,
54
+ ...ExternalUploadSource
55
+ });
56
+ var loadCameraModule = async () => {
57
+ let { CameraSource: p } = await import("./CameraSource-pj7Xo81m.js");
58
+ defineComponents({ CameraSource: p });
59
+ };
60
+ const cameraPlugin = {
61
+ id: "camera",
62
+ setup: async ({ pluginApi: p, uploaderApi: H }) => {
63
+ await loadCameraModule(), p.registry.registerSource({
64
+ id: "camera",
65
+ label: "src-type-camera",
66
+ icon: "camera",
67
+ expand: () => {
68
+ if (!browserFeatures.htmlMediaCapture) return ["camera"];
69
+ let H = deserializeCsv(p.config.get("cameraModes"));
70
+ return H.length ? H.map((p) => `mobile-${p}-camera`) : ["mobile-photo-camera"];
71
+ },
72
+ onSelect: () => {
73
+ H.setCurrentActivity(ACTIVITY_TYPES.CAMERA), H.setModalState(!0);
74
+ }
75
+ }), p.registry.registerSource({
76
+ id: "mobile-photo-camera",
77
+ label: "src-type-camera",
78
+ icon: "camera",
79
+ onSelect: () => {
80
+ H.openSystemDialog({
81
+ captureCamera: !0,
82
+ modeCamera: "photo"
83
+ });
84
+ }
85
+ }), p.registry.registerSource({
86
+ id: "mobile-video-camera",
87
+ label: "src-type-camera",
88
+ icon: "camera",
89
+ onSelect: () => {
90
+ H.openSystemDialog({
91
+ captureCamera: !0,
92
+ modeCamera: "video"
93
+ });
94
+ }
95
+ }), p.registry.registerActivity({
96
+ id: ACTIVITY_TYPES.CAMERA,
97
+ render: (p) => {
98
+ let H = document.createElement("uc-camera-source");
99
+ return p.append(H), () => {
100
+ p.replaceChildren();
101
+ };
102
+ }
103
+ });
104
+ }
105
+ };
106
+ var CLOUD_EDITOR_PLUGIN_ID = "cloud-image-editor", EDIT_FILE_ICON_SVG = "<svg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M18.558 2.804a.78.78 0 0 0-.557.235l-.008.007-2.472 2.46 3.847 3.848 2.46-2.473.004-.003a.78.78 0 0 0 0-1.108l-.004-.003-2.712-2.728a.78.78 0 0 0-.558-.235Zm-.248 7.613-3.852-3.852-8.93 8.887-1.516 5.41 5.41-1.515 8.888-8.93Zm-.636-8.934a2.28 2.28 0 0 1 2.512.505l2.702 2.717.002.002a2.278 2.278 0 0 1 0 3.234l-.002.002-12.541 12.602a.75.75 0 0 1-.33.193l-6.884 1.928a.75.75 0 0 1-.925-.924l1.928-6.885a.75.75 0 0 1 .193-.33l12.603-12.54a2.28 2.28 0 0 1 .742-.504Z' clip-rule='evenodd'/></svg>", editorI18n = { en: {
107
+ "edit-image": "Edit image",
108
+ "edit-detail": "Details",
109
+ "file-item-edit-button": "Edit",
110
+ "a11y-editor-tab-filters": "Filters",
111
+ "a11y-editor-tab-tuning": "Tuning",
112
+ "a11y-editor-tab-crop": "Crop",
113
+ "a11y-cloud-editor-apply-filter": "Apply {{name}} filter",
114
+ "a11y-cloud-editor-apply-crop": "Apply {{name}} operation",
115
+ "a11y-cloud-editor-apply-tuning": "Apply {{name}} tuning",
116
+ "a11y-cloud-editor-apply-aspect-ratio": "Apply operation {{name}} {{value}}",
117
+ "crop-to-shape": "Crop to {{value}}",
118
+ custom: "Freeform",
119
+ "freeform-crop": "Freeform crop",
120
+ "cancel-edit": "Cancel edit",
121
+ back: "Back",
122
+ apply: "Apply",
123
+ rotate: "Rotate",
124
+ "flip-vertical": "Flip vertical",
125
+ "flip-horizontal": "Flip horizontal",
126
+ brightness: "Brightness",
127
+ contrast: "Contrast",
128
+ saturation: "Saturation",
129
+ exposure: "Exposure",
130
+ gamma: "Gamma",
131
+ vibrance: "Vibrance",
132
+ warmth: "Warmth",
133
+ enhance: "Enhance",
134
+ original: "Original",
135
+ resize: "Resize image",
136
+ crop: "Crop",
137
+ "select-color": "Select color",
138
+ text: "Text",
139
+ draw: "Draw",
140
+ "tab-view": "Preview",
141
+ "tab-details": "Details"
142
+ } }, loadEditorModule = async () => {
143
+ let [p, U] = await Promise.all([import("./cloud-image-editor-DSW3oWq-.js"), import("./CloudImageEditorActivity-DinG5r0y.js")]);
144
+ defineComponents({
145
+ ...p,
146
+ ...U
147
+ });
148
+ };
149
+ const cloudImageEditorPlugin = {
150
+ id: CLOUD_EDITOR_PLUGIN_ID,
151
+ setup: async ({ pluginApi: p, uploaderApi: H }) => {
152
+ await loadEditorModule(), p.registry.registerIcon({
153
+ name: "edit-file",
154
+ svg: EDIT_FILE_ICON_SVG
155
+ }), p.registry.registerI18n(editorI18n), p.registry.registerFileAction({
156
+ id: "edit-file",
157
+ icon: "edit-file",
158
+ shouldRender: (p) => !!(p.isSuccess && p.isImage && p.cdnUrl),
159
+ onClick: (p) => {
160
+ H.setCurrentActivity?.(ACTIVITY_TYPES.CLOUD_IMG_EDIT, { internalId: p.internalId }), H.setModalState?.(!0);
161
+ }
162
+ }), p.registry.registerActivity({
163
+ id: ACTIVITY_TYPES.CLOUD_IMG_EDIT,
164
+ render: (p) => {
165
+ let H = document.createElement("uc-cloud-image-editor-activity");
166
+ return p.append(H), () => {
167
+ p.replaceChildren();
168
+ };
169
+ }
170
+ });
171
+ }
172
+ };
173
+ var loadExternalSourceModule = async () => {
174
+ let { ExternalSource: p } = await import("./ExternalSource-C57a61QN.js");
175
+ defineComponents({ ExternalSource: p });
176
+ };
177
+ const externalSourcesPlugin = {
178
+ id: "external-sources",
179
+ setup: async ({ pluginApi: p, uploaderApi: H }) => {
180
+ await loadExternalSourceModule(), p.registry.registerActivity({
181
+ id: ACTIVITY_TYPES.EXTERNAL,
182
+ render: (p) => {
183
+ let H = document.createElement("uc-external-source");
184
+ return p.append(H), () => {
185
+ p.replaceChildren();
186
+ };
187
+ }
188
+ });
189
+ for (let U of Object.values(ExternalUploadSource)) p.registry.registerSource({
190
+ id: U,
191
+ label: `src-type-${U}`,
192
+ icon: U,
193
+ onSelect: () => {
194
+ H.setCurrentActivity(ACTIVITY_TYPES.EXTERNAL, { externalSourceType: U }), H.setModalState(!0);
195
+ }
196
+ });
197
+ }
198
+ };
199
+ var readJpegChunks = () => {
200
+ let p = [];
201
+ return {
202
+ stack: p,
203
+ promiseReadJpegChunks: (H) => new Promise((U, W) => {
204
+ let G = 2, K = (p, H) => {
205
+ let U = new FileReader();
206
+ U.addEventListener("load", () => {
207
+ H(new DataView(U.result));
208
+ }), U.addEventListener("error", (p) => {
209
+ W(`Reader error: ${p}`);
210
+ }), U.readAsArrayBuffer(p);
211
+ }, q = () => K(H.slice(G, G + 128), (p) => {
212
+ let H, U, W;
213
+ for (H = U = 0, W = p.byteLength; W >= 0 ? U < W : U > W; H = W >= 0 ? ++U : --U) if (p.getUint8(H) === 255) {
214
+ G += H;
215
+ break;
216
+ }
217
+ J();
218
+ }), J = () => {
219
+ let J = G;
220
+ return K(H.slice(G, G += 4), (Y) => {
221
+ if (Y.byteLength !== 4 || Y.getUint8(0) !== 255) {
222
+ W("Corrupted");
223
+ return;
224
+ }
225
+ let X = Y.getUint8(1);
226
+ if (X === 218) {
227
+ U(!0);
228
+ return;
229
+ }
230
+ let Z = Y.getUint16(2) - 2;
231
+ return K(H.slice(G, G += Z), (H) => {
232
+ if (H.byteLength !== Z) {
233
+ W("Corrupted");
234
+ return;
235
+ }
236
+ p.push({
237
+ startPos: J,
238
+ length: Z,
239
+ marker: X,
240
+ view: H
241
+ }), q();
242
+ });
243
+ });
244
+ };
245
+ FileReader && DataView || W("Not Support"), K(H.slice(0, 2), (p) => {
246
+ p.getUint16(0) !== 65496 && W("Not jpeg"), q();
247
+ });
248
+ })
249
+ };
250
+ }, getIccProfile = async (p) => {
251
+ let H = [], { promiseReadJpegChunks: U, stack: W } = readJpegChunks();
252
+ return await U(p), W.forEach(({ marker: p, view: U }) => {
253
+ p === 226 && U.getUint32(0) === 1229144927 && U.getUint32(4) === 1347571526 && U.getUint32(8) === 1229735168 && H.push(U);
254
+ }), H;
255
+ }, replaceJpegChunk = async (p, H, U) => {
256
+ {
257
+ let W = [], G = [], { promiseReadJpegChunks: K, stack: q } = readJpegChunks();
258
+ await K(p), q.forEach((p) => {
259
+ if (p.marker === H) return W.push(p.startPos), G.push(p.length);
260
+ });
261
+ let J = [p.slice(0, 2)];
262
+ for (let p of U) {
263
+ let U = /* @__PURE__ */ new DataView(/* @__PURE__ */ new ArrayBuffer(4));
264
+ U.setUint16(0, 65280 + H), U.setUint16(2, p.byteLength + 2), J.push(U.buffer), J.push(p);
265
+ }
266
+ let Y = 2;
267
+ for (let H = 0; H < W.length; H++) W[H] > Y && J.push(p.slice(Y, W[H])), Y = W[H] + G[H] + 4;
268
+ return J.push(p.slice(Y, p.size)), new Blob(J, { type: p.type });
269
+ }
270
+ }, MARKER = 226, replaceIccProfile = (p, H) => replaceJpegChunk(p, MARKER, H.map((p) => p.buffer)), stripIccProfile = async (p) => {
271
+ try {
272
+ return await replaceIccProfile(p, []);
273
+ } catch (p) {
274
+ throw Error(`Failed to strip ICC profile: ${p}`);
275
+ }
276
+ }, canvasToBlob = (p, H, U) => new Promise((W, G) => {
277
+ p.toBlob((p) => {
278
+ if (!p) {
279
+ G("Failed to convert canvas to blob");
280
+ return;
281
+ }
282
+ W(p);
283
+ }, H, U), p.width = p.height = 1;
284
+ }), createCanvas = () => {
285
+ let p = document.createElement("canvas");
286
+ return {
287
+ canvas: p,
288
+ ctx: p.getContext("2d")
289
+ };
290
+ }, hasTransparency = (p) => {
291
+ let { ctx: H, canvas: U } = createCanvas();
292
+ U.width = U.height = 50, H.drawImage(p, 0, 0, 50, 50);
293
+ let W = H.getImageData(0, 0, 50, 50).data;
294
+ U.width = U.height = 1;
295
+ for (let p = 3; p < W.length; p += 4) if (W[p] < 254) return !0;
296
+ return !1;
297
+ }, getExif = async (p) => {
298
+ let H = null, { promiseReadJpegChunks: U, stack: W } = readJpegChunks();
299
+ return await U(p), W.forEach(({ marker: p, view: U }) => {
300
+ if (!H && p === 225 && U.byteLength >= 14 && U.getUint32(0) === 1165519206 && U.getUint16(4) === 0) {
301
+ H = U;
302
+ return;
303
+ }
304
+ }), H;
305
+ }, base64ImageSrc = "data:image/jpg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4QA6RXhpZgAATU0AKgAAAAgAAwESAAMAAAABAAYAAAEoAAMAAAABAAIAAAITAAMAAAABAAEAAAAAAAD/2wBDAP//////////////////////////////////////////////////////////////////////////////////////wAALCAABAAIBASIA/8QAJgABAAAAAAAAAAAAAAAAAAAAAxABAAAAAAAAAAAAAAAAAAAAAP/aAAgBAQAAPwBH/9k=", isApplied = void 0, isBrowserApplyExifOrientation = () => new Promise((p) => {
306
+ if (isApplied !== void 0) p(isApplied);
307
+ else {
308
+ let H = new Image();
309
+ H.addEventListener("load", () => {
310
+ isApplied = H.naturalWidth < H.naturalHeight, H.src = "//:0", p(isApplied);
311
+ }), H.src = base64ImageSrc;
312
+ }
313
+ }), findExifOrientation = (p, H) => {
314
+ let U, W, G, K;
315
+ if (!p || p.byteLength < 14 || p.getUint32(0) !== 1165519206 || p.getUint16(4) !== 0) return;
316
+ if (p.getUint16(6) === 18761) W = !0;
317
+ else if (p.getUint16(6) === 19789) W = !1;
318
+ else return;
319
+ if (p.getUint16(8, W) !== 42) return;
320
+ G = 8 + p.getUint32(10, W);
321
+ let q = p.getUint16(G - 2, W);
322
+ for (U = 0, K = q; K >= 0 ? U < K : U > K; K >= 0 ? ++U : --U) {
323
+ if (p.byteLength < G + 10) return;
324
+ p.getUint16(G, W) === 274 && H(G + 8, W), G += 12;
325
+ }
326
+ }, setExifOrientation = (p, H) => {
327
+ findExifOrientation(p, (U, W) => p.setUint16(U, H, W));
328
+ }, replaceExif = async (p, H, U) => (U && setExifOrientation(H, 1), replaceJpegChunk(p, 225, [H.buffer])), processImage = (p, H) => new Promise((U, W) => {
329
+ H && (p.src = H), p.complete ? U(p) : (p.addEventListener("load", () => {
330
+ U(p);
331
+ }), p.addEventListener("error", () => {
332
+ W(/* @__PURE__ */ Error("Failed to load image. Probably not an image."));
333
+ }));
334
+ }), imageLoader = (p) => processImage(new Image(), p), allowLayers = [1, 3], markers = [
335
+ 192,
336
+ 193,
337
+ 194,
338
+ 195,
339
+ 197,
340
+ 198,
341
+ 199,
342
+ 201,
343
+ 202,
344
+ 203,
345
+ 205,
346
+ 206,
347
+ 207
348
+ ], sizes = {
349
+ squareSide: [
350
+ Math.floor(Math.sqrt(5 * 1e3 * 1e3)),
351
+ 4096,
352
+ 8192,
353
+ 11180,
354
+ 10836,
355
+ 11402,
356
+ 14188,
357
+ 16384
358
+ ],
359
+ dimension: [
360
+ 4096,
361
+ 8192,
362
+ 16384,
363
+ 32767,
364
+ 65535
365
+ ]
366
+ }, shouldSkipShrink = async (p) => {
367
+ let H = !1, { promiseReadJpegChunks: U, stack: W } = readJpegChunks();
368
+ return await U(p).then(() => (W.forEach(({ marker: p, view: U }) => {
369
+ if (!H && markers.indexOf(p) >= 0) {
370
+ let p = U.getUint8(5);
371
+ allowLayers.indexOf(p) < 0 && (H = !0);
372
+ }
373
+ }), H)).catch(() => H);
374
+ }, memoize = (p, H) => {
375
+ let U = {};
376
+ return (...W) => {
377
+ let G = H(W, U);
378
+ return G in U ? U[G] : U[G] = p(...W);
379
+ };
380
+ }, memoKeySerializer = (p, H) => {
381
+ let [U] = p, W = Object.keys(H).map((p) => parseInt(p, 10)).sort((p, H) => p - H);
382
+ for (let p = 0; p < W.length; p++) {
383
+ let G = W[p], K = !!H[G];
384
+ if (G > U && K || G < U && !K) return G;
385
+ }
386
+ return U;
387
+ }, TestPixel = {
388
+ R: 55,
389
+ G: 110,
390
+ B: 165,
391
+ A: 255
392
+ }, FILL_STYLE = `rgba(${TestPixel.R}, ${TestPixel.G}, ${TestPixel.B}, ${TestPixel.A / 255})`, canvasTest = (p, H) => {
393
+ try {
394
+ let U = [
395
+ p - 1,
396
+ H - 1,
397
+ 1,
398
+ 1
399
+ ], { canvas: W, ctx: G } = createCanvas();
400
+ W.width = 1, W.height = 1;
401
+ let { canvas: K, ctx: q } = createCanvas();
402
+ K.width = p, K.height = H, q && (q.fillStyle = FILL_STYLE, q.fillRect(...U), G.drawImage(K, p - 1, H - 1, 1, 1, 0, 0, 1, 1));
403
+ let J = G && G.getImageData(0, 0, 1, 1).data, Y = !1;
404
+ return J && (Y = J[0] === TestPixel.R && J[1] === TestPixel.G && J[2] === TestPixel.B && J[3] === TestPixel.A), K.width = K.height = 1, Y;
405
+ } catch {
406
+ return console.error(`Failed to test for max canvas size of ${p}x${H}.`), !1;
407
+ }
408
+ };
409
+ function wrapAsync(p) {
410
+ return (...H) => new Promise((U) => {
411
+ setTimeout(() => {
412
+ U(p(...H));
413
+ }, 0);
414
+ });
415
+ }
416
+ var squareTest = wrapAsync(memoize(canvasTest, memoKeySerializer)), dimensionTest = wrapAsync(memoize(canvasTest, memoKeySerializer)), testCanvasSize = async (p, H) => {
417
+ let U = sizes.squareSide.find((U) => U * U >= p * H), W = sizes.dimension.find((U) => U >= p && U >= H);
418
+ if (!U || !W) throw Error("Not supported");
419
+ let [G, K] = await Promise.all([squareTest(U, U), dimensionTest(W, 1)]);
420
+ if (G && K) return !0;
421
+ throw Error("Not supported");
422
+ }, canvasResize = async (p, H, U) => {
423
+ try {
424
+ let { ctx: W, canvas: G } = createCanvas();
425
+ return G.width = H, G.height = U, W.imageSmoothingQuality = "high", W.drawImage(p, 0, 0, H, U), p instanceof HTMLImageElement && (p.src = "//:0"), p instanceof HTMLCanvasElement && (p.width = p.height = 1), G;
426
+ } catch (p) {
427
+ throw Error("Canvas resize error", { cause: p });
428
+ }
429
+ }, native = ({ img: p, targetW: H, targetH: U }) => canvasResize(p, H, U), calcShrinkSteps = function({ sourceW: p, targetW: H, targetH: U, step: W }) {
430
+ let G = [], K = H, q = U;
431
+ do
432
+ G.push([K, q]), K = Math.round(K / W), q = Math.round(q / W);
433
+ while (K < p * W);
434
+ return G.reverse();
435
+ }, fallback = ({ img: p, sourceW: H, targetW: U, targetH: W, step: G }) => {
436
+ let K = calcShrinkSteps({
437
+ sourceW: H,
438
+ targetW: U,
439
+ targetH: W,
440
+ step: G
441
+ });
442
+ return K.reduce((p, [H, U], W) => p.then((p) => testCanvasSize(H, U).then(() => canvasResize(p, H, U)).catch(() => {
443
+ if (W === K.length - 1) throw Error("Not supported");
444
+ return p;
445
+ })), Promise.resolve(p));
446
+ }, isIOS = () => /iPad|iPhone|iPod/.test(navigator.platform) ? !0 : navigator.maxTouchPoints && navigator.maxTouchPoints > 2 && /MacIntel/.test(navigator.platform), isIpadOS = navigator.maxTouchPoints && navigator.maxTouchPoints > 2 && /MacIntel/.test(navigator.platform), STEP = .71, shrinkImage = (p, H) => {
447
+ if (p.width * STEP * p.height * STEP < H.size) throw Error("Not required");
448
+ let U = p.width, W = U / p.height, G = Math.floor(Math.sqrt(H.size * W)), K = Math.floor(H.size / Math.sqrt(H.size * W));
449
+ return testCanvasSize(G, K).then(() => {
450
+ let { ctx: H } = createCanvas();
451
+ return "imageSmoothingQuality" in H && !isIOS() && !isIpadOS ? native({
452
+ img: p,
453
+ targetW: G,
454
+ targetH: K
455
+ }) : fallback({
456
+ img: p,
457
+ sourceW: U,
458
+ targetW: G,
459
+ targetH: K,
460
+ step: STEP
461
+ });
462
+ }).catch(() => Promise.reject("Not supported"));
463
+ }, shrinkFile = async (p, H) => {
464
+ try {
465
+ if (await shouldSkipShrink(p)) throw Error("Should skipped");
466
+ let U = await Promise.allSettled([
467
+ getExif(p),
468
+ isBrowserApplyExifOrientation(),
469
+ getIccProfile(p)
470
+ ]), W = !U.some((p) => p.status === "rejected"), [G, K, q] = U, J = await stripIccProfile(p).catch(() => p), Y = await imageLoader(URL.createObjectURL(J));
471
+ URL.revokeObjectURL(Y.src);
472
+ let X = await shrinkImage(Y, H), Z = "image/jpeg", Q = H?.quality || .8;
473
+ !W && hasTransparency(X) && (Z = "image/png", Q = void 0);
474
+ let $ = await canvasToBlob(X, Z, Q);
475
+ if (W && G.status === "fulfilled" && G.value) {
476
+ let p = G.value, H = K.status === "fulfilled" ? K.value : !1;
477
+ $ = await replaceExif($, p, H);
478
+ }
479
+ return W && q.status === "fulfilled" && q.value.length > 0 && ($ = await replaceIccProfile($, q.value)), $;
480
+ } catch (p) {
481
+ let H;
482
+ throw p instanceof Error && (H = p.message), typeof p == "string" && (H = p), Error(`Failed to shrink image. ${H ? `Message: "${H}".` : ""}`, { cause: p });
483
+ }
484
+ }, MAX_SQUARE_SIDE = 16384, regExpShrink = /^([0-9]+)x([0-9]+)(?:\s+(\d{1,2}|100)%)?$/i;
485
+ const parseShrink = (p) => {
486
+ if (typeof p != "string") return !1;
487
+ let H = regExpShrink.exec(p.toLocaleLowerCase()) ?? [];
488
+ if (H.length === 0) return !1;
489
+ let U = Number(H[1]) * Number(H[2]), W = MAX_SQUARE_SIDE * MAX_SQUARE_SIDE;
490
+ return U > W ? (console.warn(`Shrinked size can not be larger than ${Math.floor(W / 1e3 / 1e3)}MP. You have set ${H[1]}x${H[2]} (${Math.ceil(U / 1e3 / 100) / 10}MP).`), !1) : {
491
+ quality: H[3] ? Number(H[3]) / 100 : void 0,
492
+ size: U
493
+ };
494
+ }, imageShrinkPlugin = {
495
+ id: "image-shrink",
496
+ setup({ pluginApi: p }) {
497
+ p.registry.registerFileHook({
498
+ type: "beforeUpload",
499
+ handler: async ({ file: H, mimeType: U }) => {
500
+ let W = p.config.get("imageShrink");
501
+ if (!W) return {
502
+ file: H,
503
+ mimeType: U
504
+ };
505
+ let G = parseShrink(W);
506
+ if (!G) return console.warn("[ImageShrinkPlugin] Image shrink settings are invalid, skipping shrinking"), {
507
+ file: H,
508
+ mimeType: U
509
+ };
510
+ try {
511
+ let p = await shrinkFile(H, G);
512
+ return {
513
+ file: p,
514
+ mimeType: p.type || U
515
+ };
516
+ } catch {
517
+ return {
518
+ file: H,
519
+ mimeType: U
520
+ };
521
+ }
522
+ }
523
+ });
524
+ }
525
+ }, instagramPlugin = {
526
+ id: "instagram",
527
+ setup({ pluginApi: p }) {
528
+ p.registry.registerSource({
529
+ id: "instagram",
530
+ label: "src-type-instagram",
531
+ icon: "instagram",
532
+ expand: () => (console.error("Instagram source was removed because the Instagram Basic Display API hasn't been available since December 4, 2024. Official statement, see here: https://developers.facebook.com/blog/post/2024/09/04/update-on-instagram-basic-display-api/?locale=en_US"), []),
533
+ onSelect: () => {}
534
+ });
535
+ }
536
+ };
537
+ var loadUrlSourceModule = async () => {
538
+ let { UrlSource: p } = await import("./UrlSource-CqF0h6B-.js");
539
+ defineComponents({ UrlSource: p });
540
+ };
541
+ const urlSourcePlugin = {
542
+ id: "url-source",
543
+ setup: async ({ pluginApi: p, uploaderApi: H }) => {
544
+ await loadUrlSourceModule(), p.registry.registerActivity({
545
+ id: ACTIVITY_TYPES.URL,
546
+ render: (p) => {
547
+ let H = document.createElement("uc-url-source");
548
+ return p.append(H), () => {
549
+ p.replaceChildren();
550
+ };
551
+ }
552
+ }), p.registry.registerSource({
553
+ id: "url",
554
+ label: "src-type-from-url",
555
+ icon: "url",
556
+ onSelect: () => {
557
+ H.setCurrentActivity(ACTIVITY_TYPES.URL), H.setModalState(!0);
558
+ }
559
+ });
560
+ }
561
+ };
562
+ export { cloudImageEditorPlugin as a, UploadSource as c, ACTIVITY_TYPES as d, deserializeCsv as f, externalSourcesPlugin as i, browserFeatures as l, defineComponents as m, instagramPlugin as n, cameraPlugin as o, serializeCsv as p, imageShrinkPlugin as r, ExternalUploadSource as s, urlSourcePlugin as t, browserInfo as u };