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

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 (722) hide show
  1. package/dist/abstract/loadFileUploaderFrom.d.ts +4 -3
  2. package/dist/abstract/loadFileUploaderFrom.js +6 -7
  3. package/dist/env.d.ts +4 -2
  4. package/dist/env.js +6 -7
  5. package/dist/index.css +6 -9
  6. package/dist/index.d.ts +3099 -42
  7. package/dist/index.js +8 -1796
  8. package/dist/index.layered.css +7 -9
  9. package/dist/index.ssr.js +1609 -0
  10. package/dist/locales/file-uploader/ar.d.ts +2 -1
  11. package/dist/locales/file-uploader/ar.js +6 -142
  12. package/dist/locales/file-uploader/az.d.ts +2 -1
  13. package/dist/locales/file-uploader/az.js +6 -134
  14. package/dist/locales/file-uploader/ca.d.ts +2 -1
  15. package/dist/locales/file-uploader/ca.js +6 -136
  16. package/dist/locales/file-uploader/cs.d.ts +2 -1
  17. package/dist/locales/file-uploader/cs.js +6 -138
  18. package/dist/locales/file-uploader/da.d.ts +2 -1
  19. package/dist/locales/file-uploader/da.js +6 -134
  20. package/dist/locales/file-uploader/de.d.ts +2 -1
  21. package/dist/locales/file-uploader/de.js +6 -134
  22. package/dist/locales/file-uploader/el.d.ts +2 -1
  23. package/dist/locales/file-uploader/el.js +6 -134
  24. package/dist/locales/file-uploader/en.d.ts +2 -1
  25. package/dist/locales/file-uploader/en.js +6 -7
  26. package/dist/locales/file-uploader/es.d.ts +2 -1
  27. package/dist/locales/file-uploader/es.js +6 -136
  28. package/dist/locales/file-uploader/et.d.ts +2 -1
  29. package/dist/locales/file-uploader/et.js +6 -134
  30. package/dist/locales/file-uploader/fi.d.ts +2 -1
  31. package/dist/locales/file-uploader/fi.js +6 -134
  32. package/dist/locales/file-uploader/fr.d.ts +2 -1
  33. package/dist/locales/file-uploader/fr.js +6 -136
  34. package/dist/locales/file-uploader/he.d.ts +2 -1
  35. package/dist/locales/file-uploader/he.js +6 -136
  36. package/dist/locales/file-uploader/hy.d.ts +2 -1
  37. package/dist/locales/file-uploader/hy.js +6 -134
  38. package/dist/locales/file-uploader/is.d.ts +2 -1
  39. package/dist/locales/file-uploader/is.js +6 -134
  40. package/dist/locales/file-uploader/it.d.ts +2 -1
  41. package/dist/locales/file-uploader/it.js +6 -136
  42. package/dist/locales/file-uploader/ja.d.ts +2 -1
  43. package/dist/locales/file-uploader/ja.js +6 -134
  44. package/dist/locales/file-uploader/ka.d.ts +2 -1
  45. package/dist/locales/file-uploader/ka.js +6 -134
  46. package/dist/locales/file-uploader/kk.d.ts +2 -1
  47. package/dist/locales/file-uploader/kk.js +6 -134
  48. package/dist/locales/file-uploader/ko.d.ts +2 -1
  49. package/dist/locales/file-uploader/ko.js +6 -134
  50. package/dist/locales/file-uploader/lv.d.ts +2 -1
  51. package/dist/locales/file-uploader/lv.js +6 -136
  52. package/dist/locales/file-uploader/nb.d.ts +2 -1
  53. package/dist/locales/file-uploader/nb.js +6 -134
  54. package/dist/locales/file-uploader/nl.d.ts +2 -1
  55. package/dist/locales/file-uploader/nl.js +6 -134
  56. package/dist/locales/file-uploader/pl.d.ts +2 -1
  57. package/dist/locales/file-uploader/pl.js +6 -138
  58. package/dist/locales/file-uploader/pt.d.ts +2 -1
  59. package/dist/locales/file-uploader/pt.js +6 -136
  60. package/dist/locales/file-uploader/ro.d.ts +2 -1
  61. package/dist/locales/file-uploader/ro.js +6 -136
  62. package/dist/locales/file-uploader/ru.d.ts +2 -1
  63. package/dist/locales/file-uploader/ru.js +6 -138
  64. package/dist/locales/file-uploader/sk.d.ts +2 -1
  65. package/dist/locales/file-uploader/sk.js +6 -138
  66. package/dist/locales/file-uploader/sr.d.ts +2 -1
  67. package/dist/locales/file-uploader/sr.js +6 -136
  68. package/dist/locales/file-uploader/sv.d.ts +2 -1
  69. package/dist/locales/file-uploader/sv.js +6 -134
  70. package/dist/locales/file-uploader/tr.d.ts +2 -1
  71. package/dist/locales/file-uploader/tr.js +6 -134
  72. package/dist/locales/file-uploader/uk.d.ts +2 -1
  73. package/dist/locales/file-uploader/uk.js +6 -138
  74. package/dist/locales/file-uploader/vi.d.ts +2 -1
  75. package/dist/locales/file-uploader/vi.js +6 -134
  76. package/dist/locales/file-uploader/zh-TW.d.ts +2 -1
  77. package/dist/locales/file-uploader/zh-TW.js +6 -134
  78. package/dist/locales/file-uploader/zh.d.ts +2 -1
  79. package/dist/locales/file-uploader/zh.js +6 -134
  80. package/package.json +34 -40
  81. package/web/file-uploader.iife.min.d.ts +3241 -0
  82. package/web/file-uploader.iife.min.js +8 -697
  83. package/web/file-uploader.iife.min.js.LEGAL.txt +71 -0
  84. package/web/file-uploader.min.d.ts +3241 -0
  85. package/web/file-uploader.min.js +7 -1858
  86. package/web/file-uploader.min.js.LEGAL.txt +71 -0
  87. package/web/uc-basic.layered.min.css +7 -6046
  88. package/web/uc-basic.min.css +6 -5487
  89. package/web/uc-cloud-image-editor.layered.min.css +7 -1884
  90. package/web/uc-cloud-image-editor.min.css +6 -1675
  91. package/web/uc-cloud-image-editor.min.d.ts +3198 -0
  92. package/web/uc-cloud-image-editor.min.js +7 -456
  93. package/web/uc-cloud-image-editor.min.js.LEGAL.txt +70 -0
  94. package/web/uc-file-uploader-inline.layered.min.css +7 -4352
  95. package/web/uc-file-uploader-inline.min.css +6 -3836
  96. package/web/uc-file-uploader-inline.min.d.ts +3241 -0
  97. package/web/uc-file-uploader-inline.min.js +7 -1858
  98. package/web/uc-file-uploader-inline.min.js.LEGAL.txt +71 -0
  99. package/web/uc-file-uploader-minimal.layered.min.css +7 -4352
  100. package/web/uc-file-uploader-minimal.min.css +6 -3836
  101. package/web/uc-file-uploader-minimal.min.d.ts +3241 -0
  102. package/web/uc-file-uploader-minimal.min.js +7 -1858
  103. package/web/uc-file-uploader-minimal.min.js.LEGAL.txt +71 -0
  104. package/web/uc-file-uploader-regular.layered.min.css +7 -4352
  105. package/web/uc-file-uploader-regular.min.css +6 -3836
  106. package/web/uc-file-uploader-regular.min.d.ts +3241 -0
  107. package/web/uc-file-uploader-regular.min.js +7 -1858
  108. package/web/uc-file-uploader-regular.min.js.LEGAL.txt +71 -0
  109. package/web/uc-img.min.d.ts +75 -0
  110. package/web/uc-img.min.js +7 -894
  111. package/web/uc-img.min.js.LEGAL.txt +24 -0
  112. package/dist/ActivityHeader-R6Mlx-dA.js +0 -9
  113. package/dist/ActivityHeader.css +0 -23
  114. package/dist/ActivityHeader.layered.css +0 -24
  115. package/dist/CameraSource-DDwj1jCV.js +0 -511
  116. package/dist/CameraSource-n1tun2Df.js +0 -10
  117. package/dist/CameraSource.css +0 -180
  118. package/dist/CameraSource.layered.css +0 -209
  119. package/dist/CloudImageEditor-DcVoIRb3.js +0 -2163
  120. package/dist/CloudImageEditorActivity-Csij4nlC.js +0 -87
  121. package/dist/CloudImageEditorActivity-DD4NdU0P.js +0 -9
  122. package/dist/CloudImageEditorActivity.css +0 -14
  123. package/dist/CloudImageEditorActivity.layered.css +0 -15
  124. package/dist/Config-DKOromHY.js +0 -433
  125. package/dist/Config.css +0 -4
  126. package/dist/Config.layered.css +0 -5
  127. package/dist/ExternalSource-6MSUgxqy.js +0 -10
  128. package/dist/ExternalSource-DVEjSkPB.js +0 -253
  129. package/dist/ExternalSource.css +0 -98
  130. package/dist/ExternalSource.layered.css +0 -116
  131. package/dist/Icon-tXRTvEF2.js +0 -1810
  132. package/dist/Icon.css +0 -14
  133. package/dist/Icon.layered.css +0 -15
  134. package/dist/LitUploaderBlock-LxeOZ0ya.js +0 -998
  135. package/dist/UrlSource-BkyX00I2.js +0 -73
  136. package/dist/UrlSource-RI8TSD48.js +0 -10
  137. package/dist/UrlSource.css +0 -17
  138. package/dist/UrlSource.layered.css +0 -18
  139. package/dist/abstract/CTX.d.ts +0 -40
  140. package/dist/abstract/TypedCollection.d.ts +0 -47
  141. package/dist/abstract/TypedCollection.test.d.ts +0 -1
  142. package/dist/abstract/TypedData.d.ts +0 -12
  143. package/dist/abstract/TypedData.test.d.ts +0 -1
  144. package/dist/abstract/UploaderPublicApi.d.ts +0 -41
  145. package/dist/abstract/buildOutputCollectionState.d.ts +0 -3
  146. package/dist/abstract/customConfigOptions.d.ts +0 -65
  147. package/dist/abstract/defineComponents.d.ts +0 -1
  148. package/dist/abstract/features/ClipboardLayer.d.ts +0 -12
  149. package/dist/abstract/localeRegistry.d.ts +0 -5
  150. package/dist/abstract/managers/LocaleManager.d.ts +0 -10
  151. package/dist/abstract/managers/ModalManager.d.ts +0 -53
  152. package/dist/abstract/managers/SecureUploadsManager.d.ts +0 -7
  153. package/dist/abstract/managers/TelemetryManager.d.ts +0 -41
  154. package/dist/abstract/managers/ValidationManager.d.ts +0 -34
  155. package/dist/abstract/managers/__tests__/ModalManager.test.d.ts +0 -13
  156. package/dist/abstract/managers/__tests__/SecureUploadsManager.test.d.ts +0 -1
  157. package/dist/abstract/managers/a11y.d.ts +0 -9
  158. package/dist/abstract/managers/plugin/PluginManager.d.ts +0 -25
  159. package/dist/abstract/managers/plugin/PluginTypes.d.ts +0 -146
  160. package/dist/abstract/managers/plugin/index.d.ts +0 -2
  161. package/dist/abstract/sharedConfigKey.d.ts +0 -2
  162. package/dist/abstract/uploadEntrySchema.d.ts +0 -34
  163. package/dist/blocks/ActivityHeader/ActivityHeader.d.ts +0 -8
  164. package/dist/blocks/CameraSource/CameraSource.d.ts +0 -121
  165. package/dist/blocks/CameraSource/__tests__/calcCameraModes.test.d.ts +0 -1
  166. package/dist/blocks/CameraSource/calcCameraModes.d.ts +0 -5
  167. package/dist/blocks/CameraSource/constants.d.ts +0 -15
  168. package/dist/blocks/CloudImageEditor/index.d.ts +0 -1
  169. package/dist/blocks/CloudImageEditor/src/CloudImageEditorBlock.d.ts +0 -60
  170. package/dist/blocks/CloudImageEditor/src/CropFrame.d.ts +0 -56
  171. package/dist/blocks/CloudImageEditor/src/EditorAspectRatioButtonControl.d.ts +0 -24
  172. package/dist/blocks/CloudImageEditor/src/EditorButtonControl.d.ts +0 -14
  173. package/dist/blocks/CloudImageEditor/src/EditorCropButtonControl.d.ts +0 -13
  174. package/dist/blocks/CloudImageEditor/src/EditorFilterControl.d.ts +0 -35
  175. package/dist/blocks/CloudImageEditor/src/EditorImageCropper.d.ts +0 -56
  176. package/dist/blocks/CloudImageEditor/src/EditorImageFader.d.ts +0 -63
  177. package/dist/blocks/CloudImageEditor/src/EditorOperationControl.d.ts +0 -15
  178. package/dist/blocks/CloudImageEditor/src/EditorScroller.d.ts +0 -15
  179. package/dist/blocks/CloudImageEditor/src/EditorSlider.d.ts +0 -33
  180. package/dist/blocks/CloudImageEditor/src/EditorToolbar.d.ts +0 -68
  181. package/dist/blocks/CloudImageEditor/src/crop-utils.d.ts +0 -36
  182. package/dist/blocks/CloudImageEditor/src/crop-utils.test.d.ts +0 -1
  183. package/dist/blocks/CloudImageEditor/src/cropper-constants.d.ts +0 -10
  184. package/dist/blocks/CloudImageEditor/src/elements/button/BtnUi.d.ts +0 -31
  185. package/dist/blocks/CloudImageEditor/src/elements/line-loader/LineLoaderUi.d.ts +0 -19
  186. package/dist/blocks/CloudImageEditor/src/elements/presence-toggle/PresenceToggle.d.ts +0 -27
  187. package/dist/blocks/CloudImageEditor/src/elements/slider/SliderUi.d.ts +0 -38
  188. package/dist/blocks/CloudImageEditor/src/index.d.ts +0 -15
  189. package/dist/blocks/CloudImageEditor/src/lib/classNames.d.ts +0 -5
  190. package/dist/blocks/CloudImageEditor/src/lib/classNames.test.d.ts +0 -1
  191. package/dist/blocks/CloudImageEditor/src/lib/linspace.d.ts +0 -1
  192. package/dist/blocks/CloudImageEditor/src/lib/linspace.test.d.ts +0 -1
  193. package/dist/blocks/CloudImageEditor/src/lib/parseCropPreset.d.ts +0 -4
  194. package/dist/blocks/CloudImageEditor/src/lib/parseCropPreset.test.d.ts +0 -1
  195. package/dist/blocks/CloudImageEditor/src/lib/parseTabs.d.ts +0 -2
  196. package/dist/blocks/CloudImageEditor/src/lib/pick.d.ts +0 -1
  197. package/dist/blocks/CloudImageEditor/src/lib/pick.test.d.ts +0 -1
  198. package/dist/blocks/CloudImageEditor/src/lib/transformationUtils.d.ts +0 -7
  199. package/dist/blocks/CloudImageEditor/src/state.d.ts +0 -20
  200. package/dist/blocks/CloudImageEditor/src/svg-sprite.d.ts +0 -2
  201. package/dist/blocks/CloudImageEditor/src/toolbar-constants.d.ts +0 -61
  202. package/dist/blocks/CloudImageEditor/src/types.d.ts +0 -60
  203. package/dist/blocks/CloudImageEditor/src/util.d.ts +0 -2
  204. package/dist/blocks/CloudImageEditor/src/utils/parseFilterValue.d.ts +0 -7
  205. package/dist/blocks/CloudImageEditor/src/utils/parseFilterValue.test.d.ts +0 -1
  206. package/dist/blocks/CloudImageEditorActivity/CloudImageEditorActivity.d.ts +0 -25
  207. package/dist/blocks/Config/Config.d.ts +0 -60
  208. package/dist/blocks/Config/assertions.d.ts +0 -5
  209. package/dist/blocks/Config/computed-properties.d.ts +0 -24
  210. package/dist/blocks/Config/computed-properties.test.d.ts +0 -1
  211. package/dist/blocks/Config/initialConfig.d.ts +0 -6
  212. package/dist/blocks/Config/normalizeConfigValue.d.ts +0 -2
  213. package/dist/blocks/Config/validatorsType.d.ts +0 -18
  214. package/dist/blocks/Copyright/Copyright.d.ts +0 -10
  215. package/dist/blocks/DropArea/DropArea.d.ts +0 -47
  216. package/dist/blocks/DropArea/addDropzone.d.ts +0 -17
  217. package/dist/blocks/DropArea/getDropItems.d.ts +0 -12
  218. package/dist/blocks/ExternalSource/ExternalSource.d.ts +0 -45
  219. package/dist/blocks/ExternalSource/MessageBridge.d.ts +0 -11
  220. package/dist/blocks/ExternalSource/buildThemeDefinition.d.ts +0 -4
  221. package/dist/blocks/ExternalSource/query-string.d.ts +0 -1
  222. package/dist/blocks/ExternalSource/types.d.ts +0 -105
  223. package/dist/blocks/FileItem/FileItem.d.ts +0 -50
  224. package/dist/blocks/FileItem/FileItemConfig.d.ts +0 -10
  225. package/dist/blocks/FormInput/FormInput.d.ts +0 -18
  226. package/dist/blocks/Icon/Icon.d.ts +0 -19
  227. package/dist/blocks/Img/Img.d.ts +0 -14
  228. package/dist/blocks/Img/ImgBase.d.ts +0 -29
  229. package/dist/blocks/Img/ImgConfig.d.ts +0 -28
  230. package/dist/blocks/Img/configurations.d.ts +0 -11
  231. package/dist/blocks/Img/props-map.d.ts +0 -28
  232. package/dist/blocks/Img/utils/parseObjectToString.d.ts +0 -2
  233. package/dist/blocks/Modal/Modal.d.ts +0 -34
  234. package/dist/blocks/PluginActivityRenderer/PluginActivityRenderer.d.ts +0 -32
  235. package/dist/blocks/PluginActivityRenderer/index.d.ts +0 -1
  236. package/dist/blocks/ProgressBar/ProgressBar.d.ts +0 -21
  237. package/dist/blocks/ProgressBarCommon/ProgressBarCommon.d.ts +0 -17
  238. package/dist/blocks/Select/Select.d.ts +0 -18
  239. package/dist/blocks/SimpleBtn/SimpleBtn.d.ts +0 -15
  240. package/dist/blocks/SourceBtn/SourceBtn.d.ts +0 -23
  241. package/dist/blocks/SourceList/SourceList.d.ts +0 -24
  242. package/dist/blocks/Spinner/Spinner.d.ts +0 -9
  243. package/dist/blocks/StartFrom/StartFrom.d.ts +0 -12
  244. package/dist/blocks/Thumb/Thumb.d.ts +0 -35
  245. package/dist/blocks/UploadCtxProvider/EventEmitter.d.ts +0 -70
  246. package/dist/blocks/UploadCtxProvider/UploadCtxProvider.d.ts +0 -44
  247. package/dist/blocks/UploadList/UploadList.d.ts +0 -39
  248. package/dist/blocks/UrlSource/UrlSource.d.ts +0 -14
  249. package/dist/blocks/svg-backgrounds/svg-backgrounds.d.ts +0 -3
  250. package/dist/blocks/themes/uc-basic/svg-sprite.d.ts +0 -2
  251. package/dist/cameraPlugin-weRKO7eG.js +0 -8
  252. package/dist/cloud-image-editor-hhbyNWLG.js +0 -11
  253. package/dist/cloud-image-editor.css +0 -1380
  254. package/dist/cloud-image-editor.layered.css +0 -1549
  255. package/dist/cloudImageEditorPlugin-FjUgbMK3.js +0 -8
  256. package/dist/core.d.ts +0 -42
  257. package/dist/en-8OWEmZim.js +0 -135
  258. package/dist/env-mM-ksNPq.js +0 -8
  259. package/dist/externalSourcesPlugin-CMBmLT8S.js +0 -8
  260. package/dist/imageShrinkPlugin-BN6loiP2.js +0 -8
  261. package/dist/index-base.css +0 -2497
  262. package/dist/index-base.layered.css +0 -2837
  263. package/dist/instagramPlugin-CXRm8MGL.js +0 -8
  264. package/dist/lit/BaseComponent.d.ts +0 -12
  265. package/dist/lit/Constructor.d.ts +0 -1
  266. package/dist/lit/CssDataMixin.d.ts +0 -7
  267. package/dist/lit/LightDomMixin.d.ts +0 -8
  268. package/dist/lit/LitActivityBlock.d.ts +0 -53
  269. package/dist/lit/LitBlock.d.ts +0 -83
  270. package/dist/lit/LitSolutionBlock.d.ts +0 -21
  271. package/dist/lit/LitUploaderBlock.d.ts +0 -53
  272. package/dist/lit/PubSubCompat.d.ts +0 -18
  273. package/dist/lit/RegisterableElementMixin.d.ts +0 -7
  274. package/dist/lit/SharedState.d.ts +0 -119
  275. package/dist/lit/SymbioteCompatMixin.d.ts +0 -40
  276. package/dist/lit/TestModeController.d.ts +0 -16
  277. package/dist/lit/Uid.d.ts +0 -3
  278. package/dist/lit/activity-constants.d.ts +0 -11
  279. package/dist/lit/createDebugPrinter.d.ts +0 -3
  280. package/dist/lit/findBlockInCtx.d.ts +0 -3
  281. package/dist/lit/getOutputData.d.ts +0 -2
  282. package/dist/lit/hasBlockInCtx.d.ts +0 -3
  283. package/dist/lit/l10n.d.ts +0 -5
  284. package/dist/lit/parseCssPropertyValue.d.ts +0 -1
  285. package/dist/lit/shared-instances.d.ts +0 -65
  286. package/dist/loadFileUploaderFrom-Bfz8L3VB.js +0 -28
  287. package/dist/plugins/cameraPlugin.d.ts +0 -2
  288. package/dist/plugins/cloudImageEditorPlugin.d.ts +0 -2
  289. package/dist/plugins/externalSourcesPlugin.d.ts +0 -2
  290. package/dist/plugins/imageShrinkPlugin.d.ts +0 -2
  291. package/dist/plugins/instagramPlugin.d.ts +0 -2
  292. package/dist/plugins/unsplashPlugin.d.ts +0 -16
  293. package/dist/plugins/urlSourcePlugin.d.ts +0 -2
  294. package/dist/plugins-CGUls7EV.js +0 -278
  295. package/dist/solutions/adaptive-image/index.d.ts +0 -2
  296. package/dist/solutions/cloud-image-editor/CloudImageEditor.d.ts +0 -11
  297. package/dist/solutions/cloud-image-editor/index.d.ts +0 -5
  298. package/dist/solutions/file-uploader/inline/FileUploaderInline.d.ts +0 -20
  299. package/dist/solutions/file-uploader/inline/index.d.ts +0 -1
  300. package/dist/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts +0 -23
  301. package/dist/solutions/file-uploader/minimal/index.d.ts +0 -1
  302. package/dist/solutions/file-uploader/regular/FileUploaderRegular.d.ts +0 -17
  303. package/dist/solutions/file-uploader/regular/index.d.ts +0 -1
  304. package/dist/types/dom.d.ts +0 -1
  305. package/dist/types/events.d.ts +0 -4
  306. package/dist/types/exported.d.ts +0 -492
  307. package/dist/types/index.d.ts +0 -5
  308. package/dist/urlSourcePlugin-_WdbEhq2.js +0 -8
  309. package/dist/utils/UID.d.ts +0 -5
  310. package/dist/utils/UID.test.d.ts +0 -1
  311. package/dist/utils/UploadSource.d.ts +0 -37
  312. package/dist/utils/WindowHeightTracker.d.ts +0 -9
  313. package/dist/utils/abilities.d.ts +0 -1
  314. package/dist/utils/applyStyles.d.ts +0 -1
  315. package/dist/utils/browser-info.d.ts +0 -12
  316. package/dist/utils/browser-info.test.d.ts +0 -1
  317. package/dist/utils/cdn-utils.d.ts +0 -53
  318. package/dist/utils/cdn-utils.test.d.ts +0 -1
  319. package/dist/utils/comma-separated.d.ts +0 -2
  320. package/dist/utils/debounce.d.ts +0 -3
  321. package/dist/utils/delay.d.ts +0 -1
  322. package/dist/utils/fileTypes.d.ts +0 -11
  323. package/dist/utils/fileTypes.test.d.ts +0 -1
  324. package/dist/utils/get-top-level-origin.d.ts +0 -1
  325. package/dist/utils/get-top-level-origin.test.d.ts +0 -1
  326. package/dist/utils/getLocaleDirection.d.ts +0 -1
  327. package/dist/utils/getPluralForm.d.ts +0 -1
  328. package/dist/utils/getPluralForm.test.d.ts +0 -1
  329. package/dist/utils/isPromiseLike.d.ts +0 -1
  330. package/dist/utils/isPromiseLike.test.d.ts +0 -1
  331. package/dist/utils/isSecureTokenExpired.d.ts +0 -8
  332. package/dist/utils/isSecureTokenExpired.test.d.ts +0 -1
  333. package/dist/utils/memoize.d.ts +0 -1
  334. package/dist/utils/memoize.test.d.ts +0 -1
  335. package/dist/utils/mixinClass.d.ts +0 -8
  336. package/dist/utils/parseCdnUrl.d.ts +0 -11
  337. package/dist/utils/parseCdnUrl.test.d.ts +0 -1
  338. package/dist/utils/parseShrink.d.ts +0 -7
  339. package/dist/utils/parseShrink.test.d.ts +0 -1
  340. package/dist/utils/preloadImage.d.ts +0 -10
  341. package/dist/utils/prettyBytes.d.ts +0 -11
  342. package/dist/utils/prettyBytes.test.d.ts +0 -1
  343. package/dist/utils/resizeImage.d.ts +0 -1
  344. package/dist/utils/stringToArray.d.ts +0 -1
  345. package/dist/utils/stringToArray.test.d.ts +0 -1
  346. package/dist/utils/template-utils.d.ts +0 -16
  347. package/dist/utils/template-utils.test.d.ts +0 -1
  348. package/dist/utils/throttle.d.ts +0 -3
  349. package/dist/utils/toKebabCase.d.ts +0 -2
  350. package/dist/utils/toKebabCase.test.d.ts +0 -1
  351. package/dist/utils/transparentPixelSrc.d.ts +0 -1
  352. package/dist/utils/uniqueArray.d.ts +0 -1
  353. package/dist/utils/uniqueArray.test.d.ts +0 -1
  354. package/dist/utils/userAgent.d.ts +0 -2
  355. package/dist/utils/validators/collection/index.d.ts +0 -2
  356. package/dist/utils/validators/collection/validateCollectionUploadError.d.ts +0 -2
  357. package/dist/utils/validators/collection/validateMultiple.d.ts +0 -2
  358. package/dist/utils/validators/file/index.d.ts +0 -4
  359. package/dist/utils/validators/file/validateFileType.d.ts +0 -2
  360. package/dist/utils/validators/file/validateIsImage.d.ts +0 -2
  361. package/dist/utils/validators/file/validateMaxSizeLimit.d.ts +0 -2
  362. package/dist/utils/validators/file/validateUploadError.d.ts +0 -2
  363. package/dist/utils/warnOnce.d.ts +0 -1
  364. package/dist/utils/wildcardRegexp.d.ts +0 -1
  365. package/dist/utils/wildcardRegexp.test.d.ts +0 -1
  366. package/dist/utils/withResolvers.d.ts +0 -5
  367. package/dist/utils/withResolvers.test.d.ts +0 -1
  368. package/web/ActivityHeader-BFdTdVfD.js +0 -9
  369. package/web/ActivityHeader-DQy6rII1.js +0 -9
  370. package/web/ActivityHeader-DvzMl0uj.js +0 -9
  371. package/web/ActivityHeader-i4x6_Fne.js +0 -9
  372. package/web/CameraSource-BAWIA4Wm.js +0 -508
  373. package/web/CameraSource-BqZCQcij.js +0 -11
  374. package/web/CameraSource-Brxr4tz4.js +0 -508
  375. package/web/CameraSource-BvBJ5Uzy.js +0 -508
  376. package/web/CameraSource-CkHzIE-h.js +0 -11
  377. package/web/CameraSource-D964yPLu.js +0 -508
  378. package/web/CameraSource-DE48Az-f.js +0 -11
  379. package/web/CameraSource-DyPebtRF.js +0 -478
  380. package/web/CameraSource-pj7Xo81m.js +0 -11
  381. package/web/CloudImageEditor-CTgUWB07.js +0 -2192
  382. package/web/CloudImageEditor-CxqV9Lwm.js +0 -2192
  383. package/web/CloudImageEditor-DoLWHpqV.js +0 -2192
  384. package/web/CloudImageEditor-Drywn265.js +0 -2192
  385. package/web/CloudImageEditor-MXcaDtMx.js +0 -2187
  386. package/web/CloudImageEditorActivity-BPzmfaJV.js +0 -85
  387. package/web/CloudImageEditorActivity-Br8pU5gd.js +0 -11
  388. package/web/CloudImageEditorActivity-Cw8b2CEz.js +0 -11
  389. package/web/CloudImageEditorActivity-Df1ySGq0.js +0 -86
  390. package/web/CloudImageEditorActivity-DinG5r0y.js +0 -11
  391. package/web/CloudImageEditorActivity-DmnLLINR.js +0 -85
  392. package/web/CloudImageEditorActivity-U90BGCek.js +0 -85
  393. package/web/CloudImageEditorActivity-dNLQZRZI.js +0 -11
  394. package/web/CloudImageEditorActivity-ur-hQ-6p.js +0 -85
  395. package/web/Config-8hlBNhvs.js +0 -455
  396. package/web/Config-BDZhPIyz.js +0 -455
  397. package/web/Config-CJVNrrjj.js +0 -455
  398. package/web/Config-DvkVtlQ7.js +0 -455
  399. package/web/ExternalSource-B9ycBFiD.js +0 -10
  400. package/web/ExternalSource-BE7HX47E.js +0 -250
  401. package/web/ExternalSource-BL5GSlol.js +0 -250
  402. package/web/ExternalSource-BXQY6Dlc.js +0 -10
  403. package/web/ExternalSource-BXxH3JCD.js +0 -250
  404. package/web/ExternalSource-BYSS-PPV.js +0 -245
  405. package/web/ExternalSource-C57a61QN.js +0 -10
  406. package/web/ExternalSource-CKfMtOgU.js +0 -250
  407. package/web/ExternalSource-DP6q8ylB.js +0 -10
  408. package/web/LitUploaderBlock-AX6jOdAS.js +0 -996
  409. package/web/LitUploaderBlock-BjAaoLl2.js +0 -996
  410. package/web/LitUploaderBlock-D8E5HuwH.js +0 -996
  411. package/web/LitUploaderBlock-Dl3ce0Tc.js +0 -996
  412. package/web/LitUploaderBlock-Oi33U0uf.js +0 -996
  413. package/web/UrlSource-B9SX3K0L.js +0 -10
  414. package/web/UrlSource-C3zB1rCb.js +0 -70
  415. package/web/UrlSource-C7bEU6Xv.js +0 -10
  416. package/web/UrlSource-CE389CBz.js +0 -70
  417. package/web/UrlSource-CnvAJ58Y.js +0 -10
  418. package/web/UrlSource-CqF0h6B-.js +0 -10
  419. package/web/UrlSource-D-971Nut.js +0 -70
  420. package/web/UrlSource-DhI3YCt5.js +0 -70
  421. package/web/UrlSource-hWV7jtB2.js +0 -70
  422. package/web/abstract/CTX.d.ts +0 -40
  423. package/web/abstract/TypedCollection.d.ts +0 -47
  424. package/web/abstract/TypedCollection.test.d.ts +0 -1
  425. package/web/abstract/TypedData.d.ts +0 -12
  426. package/web/abstract/TypedData.test.d.ts +0 -1
  427. package/web/abstract/UploaderPublicApi.d.ts +0 -41
  428. package/web/abstract/buildOutputCollectionState.d.ts +0 -3
  429. package/web/abstract/customConfigOptions.d.ts +0 -65
  430. package/web/abstract/defineComponents.d.ts +0 -1
  431. package/web/abstract/features/ClipboardLayer.d.ts +0 -12
  432. package/web/abstract/loadFileUploaderFrom.d.ts +0 -13
  433. package/web/abstract/localeRegistry.d.ts +0 -5
  434. package/web/abstract/managers/LocaleManager.d.ts +0 -10
  435. package/web/abstract/managers/ModalManager.d.ts +0 -53
  436. package/web/abstract/managers/SecureUploadsManager.d.ts +0 -7
  437. package/web/abstract/managers/TelemetryManager.d.ts +0 -41
  438. package/web/abstract/managers/ValidationManager.d.ts +0 -34
  439. package/web/abstract/managers/__tests__/ModalManager.test.d.ts +0 -13
  440. package/web/abstract/managers/__tests__/SecureUploadsManager.test.d.ts +0 -1
  441. package/web/abstract/managers/a11y.d.ts +0 -9
  442. package/web/abstract/managers/plugin/PluginManager.d.ts +0 -25
  443. package/web/abstract/managers/plugin/PluginTypes.d.ts +0 -146
  444. package/web/abstract/managers/plugin/index.d.ts +0 -2
  445. package/web/abstract/sharedConfigKey.d.ts +0 -2
  446. package/web/abstract/uploadEntrySchema.d.ts +0 -34
  447. package/web/blocks/ActivityHeader/ActivityHeader.d.ts +0 -8
  448. package/web/blocks/CameraSource/CameraSource.d.ts +0 -121
  449. package/web/blocks/CameraSource/__tests__/calcCameraModes.test.d.ts +0 -1
  450. package/web/blocks/CameraSource/calcCameraModes.d.ts +0 -5
  451. package/web/blocks/CameraSource/constants.d.ts +0 -15
  452. package/web/blocks/CloudImageEditor/index.d.ts +0 -1
  453. package/web/blocks/CloudImageEditor/src/CloudImageEditorBlock.d.ts +0 -60
  454. package/web/blocks/CloudImageEditor/src/CropFrame.d.ts +0 -56
  455. package/web/blocks/CloudImageEditor/src/EditorAspectRatioButtonControl.d.ts +0 -24
  456. package/web/blocks/CloudImageEditor/src/EditorButtonControl.d.ts +0 -14
  457. package/web/blocks/CloudImageEditor/src/EditorCropButtonControl.d.ts +0 -13
  458. package/web/blocks/CloudImageEditor/src/EditorFilterControl.d.ts +0 -35
  459. package/web/blocks/CloudImageEditor/src/EditorImageCropper.d.ts +0 -56
  460. package/web/blocks/CloudImageEditor/src/EditorImageFader.d.ts +0 -63
  461. package/web/blocks/CloudImageEditor/src/EditorOperationControl.d.ts +0 -15
  462. package/web/blocks/CloudImageEditor/src/EditorScroller.d.ts +0 -15
  463. package/web/blocks/CloudImageEditor/src/EditorSlider.d.ts +0 -33
  464. package/web/blocks/CloudImageEditor/src/EditorToolbar.d.ts +0 -68
  465. package/web/blocks/CloudImageEditor/src/crop-utils.d.ts +0 -36
  466. package/web/blocks/CloudImageEditor/src/crop-utils.test.d.ts +0 -1
  467. package/web/blocks/CloudImageEditor/src/cropper-constants.d.ts +0 -10
  468. package/web/blocks/CloudImageEditor/src/elements/button/BtnUi.d.ts +0 -31
  469. package/web/blocks/CloudImageEditor/src/elements/line-loader/LineLoaderUi.d.ts +0 -19
  470. package/web/blocks/CloudImageEditor/src/elements/presence-toggle/PresenceToggle.d.ts +0 -27
  471. package/web/blocks/CloudImageEditor/src/elements/slider/SliderUi.d.ts +0 -38
  472. package/web/blocks/CloudImageEditor/src/index.d.ts +0 -15
  473. package/web/blocks/CloudImageEditor/src/lib/classNames.d.ts +0 -5
  474. package/web/blocks/CloudImageEditor/src/lib/classNames.test.d.ts +0 -1
  475. package/web/blocks/CloudImageEditor/src/lib/linspace.d.ts +0 -1
  476. package/web/blocks/CloudImageEditor/src/lib/linspace.test.d.ts +0 -1
  477. package/web/blocks/CloudImageEditor/src/lib/parseCropPreset.d.ts +0 -4
  478. package/web/blocks/CloudImageEditor/src/lib/parseCropPreset.test.d.ts +0 -1
  479. package/web/blocks/CloudImageEditor/src/lib/parseTabs.d.ts +0 -2
  480. package/web/blocks/CloudImageEditor/src/lib/pick.d.ts +0 -1
  481. package/web/blocks/CloudImageEditor/src/lib/pick.test.d.ts +0 -1
  482. package/web/blocks/CloudImageEditor/src/lib/transformationUtils.d.ts +0 -7
  483. package/web/blocks/CloudImageEditor/src/state.d.ts +0 -20
  484. package/web/blocks/CloudImageEditor/src/svg-sprite.d.ts +0 -2
  485. package/web/blocks/CloudImageEditor/src/toolbar-constants.d.ts +0 -61
  486. package/web/blocks/CloudImageEditor/src/types.d.ts +0 -60
  487. package/web/blocks/CloudImageEditor/src/util.d.ts +0 -2
  488. package/web/blocks/CloudImageEditor/src/utils/parseFilterValue.d.ts +0 -7
  489. package/web/blocks/CloudImageEditor/src/utils/parseFilterValue.test.d.ts +0 -1
  490. package/web/blocks/CloudImageEditorActivity/CloudImageEditorActivity.d.ts +0 -25
  491. package/web/blocks/Config/Config.d.ts +0 -60
  492. package/web/blocks/Config/assertions.d.ts +0 -5
  493. package/web/blocks/Config/computed-properties.d.ts +0 -24
  494. package/web/blocks/Config/computed-properties.test.d.ts +0 -1
  495. package/web/blocks/Config/initialConfig.d.ts +0 -6
  496. package/web/blocks/Config/normalizeConfigValue.d.ts +0 -2
  497. package/web/blocks/Config/validatorsType.d.ts +0 -18
  498. package/web/blocks/Copyright/Copyright.d.ts +0 -10
  499. package/web/blocks/DropArea/DropArea.d.ts +0 -47
  500. package/web/blocks/DropArea/addDropzone.d.ts +0 -17
  501. package/web/blocks/DropArea/getDropItems.d.ts +0 -12
  502. package/web/blocks/ExternalSource/ExternalSource.d.ts +0 -45
  503. package/web/blocks/ExternalSource/MessageBridge.d.ts +0 -11
  504. package/web/blocks/ExternalSource/buildThemeDefinition.d.ts +0 -4
  505. package/web/blocks/ExternalSource/query-string.d.ts +0 -1
  506. package/web/blocks/ExternalSource/types.d.ts +0 -105
  507. package/web/blocks/FileItem/FileItem.d.ts +0 -50
  508. package/web/blocks/FileItem/FileItemConfig.d.ts +0 -10
  509. package/web/blocks/FormInput/FormInput.d.ts +0 -18
  510. package/web/blocks/Icon/Icon.d.ts +0 -19
  511. package/web/blocks/Img/Img.d.ts +0 -14
  512. package/web/blocks/Img/ImgBase.d.ts +0 -29
  513. package/web/blocks/Img/ImgConfig.d.ts +0 -28
  514. package/web/blocks/Img/configurations.d.ts +0 -11
  515. package/web/blocks/Img/props-map.d.ts +0 -28
  516. package/web/blocks/Img/utils/parseObjectToString.d.ts +0 -2
  517. package/web/blocks/Modal/Modal.d.ts +0 -34
  518. package/web/blocks/PluginActivityRenderer/PluginActivityRenderer.d.ts +0 -32
  519. package/web/blocks/PluginActivityRenderer/index.d.ts +0 -1
  520. package/web/blocks/ProgressBar/ProgressBar.d.ts +0 -21
  521. package/web/blocks/ProgressBarCommon/ProgressBarCommon.d.ts +0 -17
  522. package/web/blocks/Select/Select.d.ts +0 -18
  523. package/web/blocks/SimpleBtn/SimpleBtn.d.ts +0 -15
  524. package/web/blocks/SourceBtn/SourceBtn.d.ts +0 -23
  525. package/web/blocks/SourceList/SourceList.d.ts +0 -24
  526. package/web/blocks/Spinner/Spinner.d.ts +0 -9
  527. package/web/blocks/StartFrom/StartFrom.d.ts +0 -12
  528. package/web/blocks/Thumb/Thumb.d.ts +0 -35
  529. package/web/blocks/UploadCtxProvider/EventEmitter.d.ts +0 -70
  530. package/web/blocks/UploadCtxProvider/UploadCtxProvider.d.ts +0 -44
  531. package/web/blocks/UploadList/UploadList.d.ts +0 -39
  532. package/web/blocks/UrlSource/UrlSource.d.ts +0 -14
  533. package/web/blocks/svg-backgrounds/svg-backgrounds.d.ts +0 -3
  534. package/web/blocks/themes/uc-basic/svg-sprite.d.ts +0 -2
  535. package/web/cameraPlugin-DeedXMWV.js +0 -8
  536. package/web/cameraPlugin-Duy1QwjB.js +0 -8
  537. package/web/cameraPlugin-QS9SUOtO.js +0 -8
  538. package/web/cameraPlugin-bq8ggY04.js +0 -8
  539. package/web/cameraPlugin-cel9YgP_.js +0 -8
  540. package/web/cloud-image-editor-8DrVRZ7E.js +0 -12
  541. package/web/cloud-image-editor-BX50EK1U.js +0 -12
  542. package/web/cloud-image-editor-DSW3oWq-.js +0 -12
  543. package/web/cloud-image-editor-DuI2Lx4M.js +0 -12
  544. package/web/cloudImageEditorPlugin-5my6aD36.js +0 -8
  545. package/web/cloudImageEditorPlugin-Bk19DmJv.js +0 -8
  546. package/web/cloudImageEditorPlugin-CcdnmtBW.js +0 -8
  547. package/web/cloudImageEditorPlugin-DQJmDl03.js +0 -8
  548. package/web/cloudImageEditorPlugin-kojghfqw.js +0 -8
  549. package/web/constants-BCfCF0cJ.js +0 -4025
  550. package/web/core.d.ts +0 -42
  551. package/web/env.d.ts +0 -2
  552. package/web/externalSourcesPlugin-BTeRm5C0.js +0 -8
  553. package/web/externalSourcesPlugin-BXgVeojg.js +0 -8
  554. package/web/externalSourcesPlugin-BgLpuIK9.js +0 -8
  555. package/web/externalSourcesPlugin-DMc9zs4T.js +0 -8
  556. package/web/externalSourcesPlugin-Dm9vnTBv.js +0 -8
  557. package/web/imageShrinkPlugin-BdHgEGZH.js +0 -8
  558. package/web/imageShrinkPlugin-BjkMGfvT.js +0 -8
  559. package/web/imageShrinkPlugin-CCkGHL2w.js +0 -8
  560. package/web/imageShrinkPlugin-D4WjaRGo.js +0 -8
  561. package/web/imageShrinkPlugin-DqYGutVx.js +0 -8
  562. package/web/index.d.ts +0 -42
  563. package/web/instagramPlugin-BTMz0K2a.js +0 -8
  564. package/web/instagramPlugin-BbIKgTH7.js +0 -8
  565. package/web/instagramPlugin-CQQhsEJa.js +0 -8
  566. package/web/instagramPlugin-Cm7lWKae.js +0 -8
  567. package/web/instagramPlugin-DcclxM_d.js +0 -8
  568. package/web/lit/BaseComponent.d.ts +0 -12
  569. package/web/lit/Constructor.d.ts +0 -1
  570. package/web/lit/CssDataMixin.d.ts +0 -7
  571. package/web/lit/LightDomMixin.d.ts +0 -8
  572. package/web/lit/LitActivityBlock.d.ts +0 -53
  573. package/web/lit/LitBlock.d.ts +0 -83
  574. package/web/lit/LitSolutionBlock.d.ts +0 -21
  575. package/web/lit/LitUploaderBlock.d.ts +0 -53
  576. package/web/lit/PubSubCompat.d.ts +0 -18
  577. package/web/lit/RegisterableElementMixin.d.ts +0 -7
  578. package/web/lit/SharedState.d.ts +0 -119
  579. package/web/lit/SymbioteCompatMixin.d.ts +0 -40
  580. package/web/lit/TestModeController.d.ts +0 -16
  581. package/web/lit/Uid.d.ts +0 -3
  582. package/web/lit/activity-constants.d.ts +0 -11
  583. package/web/lit/createDebugPrinter.d.ts +0 -3
  584. package/web/lit/findBlockInCtx.d.ts +0 -3
  585. package/web/lit/getOutputData.d.ts +0 -2
  586. package/web/lit/hasBlockInCtx.d.ts +0 -3
  587. package/web/lit/l10n.d.ts +0 -5
  588. package/web/lit/parseCssPropertyValue.d.ts +0 -1
  589. package/web/lit/shared-instances.d.ts +0 -65
  590. package/web/locales/file-uploader/ar.d.ts +0 -137
  591. package/web/locales/file-uploader/az.d.ts +0 -129
  592. package/web/locales/file-uploader/ca.d.ts +0 -131
  593. package/web/locales/file-uploader/cs.d.ts +0 -133
  594. package/web/locales/file-uploader/da.d.ts +0 -129
  595. package/web/locales/file-uploader/de.d.ts +0 -129
  596. package/web/locales/file-uploader/el.d.ts +0 -129
  597. package/web/locales/file-uploader/en.d.ts +0 -129
  598. package/web/locales/file-uploader/es.d.ts +0 -131
  599. package/web/locales/file-uploader/et.d.ts +0 -129
  600. package/web/locales/file-uploader/fi.d.ts +0 -129
  601. package/web/locales/file-uploader/fr.d.ts +0 -131
  602. package/web/locales/file-uploader/he.d.ts +0 -131
  603. package/web/locales/file-uploader/hy.d.ts +0 -129
  604. package/web/locales/file-uploader/is.d.ts +0 -129
  605. package/web/locales/file-uploader/it.d.ts +0 -131
  606. package/web/locales/file-uploader/ja.d.ts +0 -129
  607. package/web/locales/file-uploader/ka.d.ts +0 -129
  608. package/web/locales/file-uploader/kk.d.ts +0 -129
  609. package/web/locales/file-uploader/ko.d.ts +0 -129
  610. package/web/locales/file-uploader/lv.d.ts +0 -131
  611. package/web/locales/file-uploader/nb.d.ts +0 -129
  612. package/web/locales/file-uploader/nl.d.ts +0 -129
  613. package/web/locales/file-uploader/pl.d.ts +0 -133
  614. package/web/locales/file-uploader/pt.d.ts +0 -131
  615. package/web/locales/file-uploader/ro.d.ts +0 -131
  616. package/web/locales/file-uploader/ru.d.ts +0 -133
  617. package/web/locales/file-uploader/sk.d.ts +0 -133
  618. package/web/locales/file-uploader/sr.d.ts +0 -131
  619. package/web/locales/file-uploader/sv.d.ts +0 -129
  620. package/web/locales/file-uploader/tr.d.ts +0 -129
  621. package/web/locales/file-uploader/uk.d.ts +0 -133
  622. package/web/locales/file-uploader/vi.d.ts +0 -129
  623. package/web/locales/file-uploader/zh-TW.d.ts +0 -129
  624. package/web/locales/file-uploader/zh.d.ts +0 -129
  625. package/web/plugins/cameraPlugin.d.ts +0 -2
  626. package/web/plugins/cloudImageEditorPlugin.d.ts +0 -2
  627. package/web/plugins/externalSourcesPlugin.d.ts +0 -2
  628. package/web/plugins/imageShrinkPlugin.d.ts +0 -2
  629. package/web/plugins/instagramPlugin.d.ts +0 -2
  630. package/web/plugins/unsplashPlugin.d.ts +0 -16
  631. package/web/plugins/urlSourcePlugin.d.ts +0 -2
  632. package/web/plugins-Bt7FXHKx.js +0 -562
  633. package/web/plugins-CaaolyMk.js +0 -562
  634. package/web/plugins-Cjgw5oWg.js +0 -562
  635. package/web/plugins-CzNtrVQB.js +0 -562
  636. package/web/plugins-DS0hIs2V.js +0 -563
  637. package/web/ref-BOnG19ns.js +0 -4040
  638. package/web/ref-BejJFG7m.js +0 -4040
  639. package/web/ref-DcRg7zo9.js +0 -4040
  640. package/web/ref-ZWPcLQB9.js +0 -4040
  641. package/web/solutions/adaptive-image/index.d.ts +0 -2
  642. package/web/solutions/cloud-image-editor/CloudImageEditor.d.ts +0 -11
  643. package/web/solutions/cloud-image-editor/index.d.ts +0 -5
  644. package/web/solutions/file-uploader/inline/FileUploaderInline.d.ts +0 -20
  645. package/web/solutions/file-uploader/inline/index.d.ts +0 -1
  646. package/web/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts +0 -23
  647. package/web/solutions/file-uploader/minimal/index.d.ts +0 -1
  648. package/web/solutions/file-uploader/regular/FileUploaderRegular.d.ts +0 -17
  649. package/web/solutions/file-uploader/regular/index.d.ts +0 -1
  650. package/web/style-map-BmZdux7T.js +0 -37
  651. package/web/style-map-CZ6fSV6e.js +0 -37
  652. package/web/style-map-Dk7mLCrB.js +0 -37
  653. package/web/style-map-HkHnu9oA.js +0 -37
  654. package/web/style-map-tw1yUEaj.js +0 -37
  655. package/web/types/dom.d.ts +0 -1
  656. package/web/types/events.d.ts +0 -4
  657. package/web/types/exported.d.ts +0 -492
  658. package/web/types/index.d.ts +0 -5
  659. package/web/urlSourcePlugin-9lhcr02f.js +0 -8
  660. package/web/urlSourcePlugin-C-sLGhGb.js +0 -8
  661. package/web/urlSourcePlugin-DNXDpnRD.js +0 -8
  662. package/web/urlSourcePlugin-JnD0cnxb.js +0 -8
  663. package/web/urlSourcePlugin-hcMU2K6T.js +0 -8
  664. package/web/utils/UID.d.ts +0 -5
  665. package/web/utils/UID.test.d.ts +0 -1
  666. package/web/utils/UploadSource.d.ts +0 -37
  667. package/web/utils/WindowHeightTracker.d.ts +0 -9
  668. package/web/utils/abilities.d.ts +0 -1
  669. package/web/utils/applyStyles.d.ts +0 -1
  670. package/web/utils/browser-info.d.ts +0 -12
  671. package/web/utils/browser-info.test.d.ts +0 -1
  672. package/web/utils/cdn-utils.d.ts +0 -53
  673. package/web/utils/cdn-utils.test.d.ts +0 -1
  674. package/web/utils/comma-separated.d.ts +0 -2
  675. package/web/utils/debounce.d.ts +0 -3
  676. package/web/utils/delay.d.ts +0 -1
  677. package/web/utils/fileTypes.d.ts +0 -11
  678. package/web/utils/fileTypes.test.d.ts +0 -1
  679. package/web/utils/get-top-level-origin.d.ts +0 -1
  680. package/web/utils/get-top-level-origin.test.d.ts +0 -1
  681. package/web/utils/getLocaleDirection.d.ts +0 -1
  682. package/web/utils/getPluralForm.d.ts +0 -1
  683. package/web/utils/getPluralForm.test.d.ts +0 -1
  684. package/web/utils/isPromiseLike.d.ts +0 -1
  685. package/web/utils/isPromiseLike.test.d.ts +0 -1
  686. package/web/utils/isSecureTokenExpired.d.ts +0 -8
  687. package/web/utils/isSecureTokenExpired.test.d.ts +0 -1
  688. package/web/utils/memoize.d.ts +0 -1
  689. package/web/utils/memoize.test.d.ts +0 -1
  690. package/web/utils/mixinClass.d.ts +0 -8
  691. package/web/utils/parseCdnUrl.d.ts +0 -11
  692. package/web/utils/parseCdnUrl.test.d.ts +0 -1
  693. package/web/utils/parseShrink.d.ts +0 -7
  694. package/web/utils/parseShrink.test.d.ts +0 -1
  695. package/web/utils/preloadImage.d.ts +0 -10
  696. package/web/utils/prettyBytes.d.ts +0 -11
  697. package/web/utils/prettyBytes.test.d.ts +0 -1
  698. package/web/utils/resizeImage.d.ts +0 -1
  699. package/web/utils/stringToArray.d.ts +0 -1
  700. package/web/utils/stringToArray.test.d.ts +0 -1
  701. package/web/utils/template-utils.d.ts +0 -16
  702. package/web/utils/template-utils.test.d.ts +0 -1
  703. package/web/utils/throttle.d.ts +0 -3
  704. package/web/utils/toKebabCase.d.ts +0 -2
  705. package/web/utils/toKebabCase.test.d.ts +0 -1
  706. package/web/utils/transparentPixelSrc.d.ts +0 -1
  707. package/web/utils/uniqueArray.d.ts +0 -1
  708. package/web/utils/uniqueArray.test.d.ts +0 -1
  709. package/web/utils/userAgent.d.ts +0 -2
  710. package/web/utils/validators/collection/index.d.ts +0 -2
  711. package/web/utils/validators/collection/validateCollectionUploadError.d.ts +0 -2
  712. package/web/utils/validators/collection/validateMultiple.d.ts +0 -2
  713. package/web/utils/validators/file/index.d.ts +0 -4
  714. package/web/utils/validators/file/validateFileType.d.ts +0 -2
  715. package/web/utils/validators/file/validateIsImage.d.ts +0 -2
  716. package/web/utils/validators/file/validateMaxSizeLimit.d.ts +0 -2
  717. package/web/utils/validators/file/validateUploadError.d.ts +0 -2
  718. package/web/utils/warnOnce.d.ts +0 -1
  719. package/web/utils/wildcardRegexp.d.ts +0 -1
  720. package/web/utils/wildcardRegexp.test.d.ts +0 -1
  721. package/web/utils/withResolvers.d.ts +0 -5
  722. package/web/utils/withResolvers.test.d.ts +0 -1
@@ -1,4025 +0,0 @@
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:12.501Z
6
- */
7
- import { m as ACTIVITY_TYPES, p as serializeCsv } from "./plugins-DS0hIs2V.js";
8
- /**
9
- * @license
10
- * Copyright 2019 Google LLC
11
- * SPDX-License-Identifier: BSD-3-Clause
12
- */
13
- var t$4 = globalThis, e$7 = t$4.ShadowRoot && (t$4.ShadyCSS === void 0 || t$4.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype, s$7 = Symbol(), o$8 = /* @__PURE__ */ new WeakMap(), n$7 = class {
14
- constructor(d, m, v) {
15
- if (this._$cssResult$ = !0, v !== s$7) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
16
- this.cssText = d, this.t = m;
17
- }
18
- get styleSheet() {
19
- let d = this.o, m = this.t;
20
- if (e$7 && d === void 0) {
21
- let v = m !== void 0 && m.length === 1;
22
- v && (d = o$8.get(m)), d === void 0 && ((this.o = d = new CSSStyleSheet()).replaceSync(this.cssText), v && o$8.set(m, d));
23
- }
24
- return d;
25
- }
26
- toString() {
27
- return this.cssText;
28
- }
29
- }, r$6 = (d) => new n$7(typeof d == "string" ? d : d + "", void 0, s$7), S$1 = (d, m) => {
30
- if (e$7) d.adoptedStyleSheets = m.map((d) => d instanceof CSSStyleSheet ? d : d.styleSheet);
31
- else for (let x of m) {
32
- let m = document.createElement("style"), w = t$4.litNonce;
33
- w !== void 0 && m.setAttribute("nonce", w), m.textContent = x.cssText, d.appendChild(m);
34
- }
35
- }, c$4 = e$7 ? (d) => d : (d) => d instanceof CSSStyleSheet ? ((d) => {
36
- let m = "";
37
- for (let v of d.cssRules) m += v.cssText;
38
- return r$6(m);
39
- })(d) : d, { is: i$6, defineProperty: e$6, getOwnPropertyDescriptor: h$5, getOwnPropertyNames: r$5, getOwnPropertySymbols: o$7, getPrototypeOf: n$6 } = Object, a$2 = globalThis, c$5 = a$2.trustedTypes, l$3 = c$5 ? c$5.emptyScript : "", p$3 = a$2.reactiveElementPolyfillSupport, d$2 = (d, m) => d, u$2 = {
40
- toAttribute(d, m) {
41
- switch (m) {
42
- case Boolean:
43
- d = d ? l$3 : null;
44
- break;
45
- case Object:
46
- case Array: d = d == null ? d : JSON.stringify(d);
47
- }
48
- return d;
49
- },
50
- fromAttribute(d, m) {
51
- let v = d;
52
- switch (m) {
53
- case Boolean:
54
- v = d !== null;
55
- break;
56
- case Number:
57
- v = d === null ? null : Number(d);
58
- break;
59
- case Object:
60
- case Array: try {
61
- v = JSON.parse(d);
62
- } catch {
63
- v = null;
64
- }
65
- }
66
- return v;
67
- }
68
- }, f$3 = (d, m) => !i$6(d, m), b$1 = {
69
- attribute: !0,
70
- type: String,
71
- converter: u$2,
72
- reflect: !1,
73
- useDefault: !1,
74
- hasChanged: f$3
75
- };
76
- Symbol.metadata ??= Symbol("metadata"), a$2.litPropertyMetadata ??= /* @__PURE__ */ new WeakMap();
77
- var y$1 = class extends HTMLElement {
78
- static addInitializer(d) {
79
- this._$Ei(), (this.l ??= []).push(d);
80
- }
81
- static get observedAttributes() {
82
- return this.finalize(), this._$Eh && [...this._$Eh.keys()];
83
- }
84
- static createProperty(d, m = b$1) {
85
- if (m.state && (m.attribute = !1), this._$Ei(), this.prototype.hasOwnProperty(d) && ((m = Object.create(m)).wrapped = !0), this.elementProperties.set(d, m), !m.noAccessor) {
86
- let v = Symbol(), x = this.getPropertyDescriptor(d, v, m);
87
- x !== void 0 && e$6(this.prototype, d, x);
88
- }
89
- }
90
- static getPropertyDescriptor(d, m, v) {
91
- let { get: x, set: w } = h$5(this.prototype, d) ?? {
92
- get() {
93
- return this[m];
94
- },
95
- set(d) {
96
- this[m] = d;
97
- }
98
- };
99
- return {
100
- get: x,
101
- set(m) {
102
- let T = x?.call(this);
103
- w?.call(this, m), this.requestUpdate(d, T, v);
104
- },
105
- configurable: !0,
106
- enumerable: !0
107
- };
108
- }
109
- static getPropertyOptions(d) {
110
- return this.elementProperties.get(d) ?? b$1;
111
- }
112
- static _$Ei() {
113
- if (this.hasOwnProperty(d$2("elementProperties"))) return;
114
- let d = n$6(this);
115
- d.finalize(), d.l !== void 0 && (this.l = [...d.l]), this.elementProperties = new Map(d.elementProperties);
116
- }
117
- static finalize() {
118
- if (this.hasOwnProperty(d$2("finalized"))) return;
119
- if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(d$2("properties"))) {
120
- let d = this.properties, m = [...r$5(d), ...o$7(d)];
121
- for (let v of m) this.createProperty(v, d[v]);
122
- }
123
- let d = this[Symbol.metadata];
124
- if (d !== null) {
125
- let m = litPropertyMetadata.get(d);
126
- if (m !== void 0) for (let [d, v] of m) this.elementProperties.set(d, v);
127
- }
128
- this._$Eh = /* @__PURE__ */ new Map();
129
- for (let [d, m] of this.elementProperties) {
130
- let v = this._$Eu(d, m);
131
- v !== void 0 && this._$Eh.set(v, d);
132
- }
133
- this.elementStyles = this.finalizeStyles(this.styles);
134
- }
135
- static finalizeStyles(d) {
136
- let m = [];
137
- if (Array.isArray(d)) {
138
- let v = new Set(d.flat(Infinity).reverse());
139
- for (let d of v) m.unshift(c$4(d));
140
- } else d !== void 0 && m.push(c$4(d));
141
- return m;
142
- }
143
- static _$Eu(d, m) {
144
- let v = m.attribute;
145
- return !1 === v ? void 0 : typeof v == "string" ? v : typeof d == "string" ? d.toLowerCase() : void 0;
146
- }
147
- constructor() {
148
- super(), this._$Ep = void 0, this.isUpdatePending = !1, this.hasUpdated = !1, this._$Em = null, this._$Ev();
149
- }
150
- _$Ev() {
151
- this._$ES = new Promise((d) => this.enableUpdating = d), this._$AL = /* @__PURE__ */ new Map(), this._$E_(), this.requestUpdate(), this.constructor.l?.forEach((d) => d(this));
152
- }
153
- addController(d) {
154
- (this._$EO ??= /* @__PURE__ */ new Set()).add(d), this.renderRoot !== void 0 && this.isConnected && d.hostConnected?.();
155
- }
156
- removeController(d) {
157
- this._$EO?.delete(d);
158
- }
159
- _$E_() {
160
- let d = /* @__PURE__ */ new Map(), m = this.constructor.elementProperties;
161
- for (let v of m.keys()) this.hasOwnProperty(v) && (d.set(v, this[v]), delete this[v]);
162
- d.size > 0 && (this._$Ep = d);
163
- }
164
- createRenderRoot() {
165
- let d = this.shadowRoot ?? this.attachShadow(this.constructor.shadowRootOptions);
166
- return S$1(d, this.constructor.elementStyles), d;
167
- }
168
- connectedCallback() {
169
- this.renderRoot ??= this.createRenderRoot(), this.enableUpdating(!0), this._$EO?.forEach((d) => d.hostConnected?.());
170
- }
171
- enableUpdating(d) {}
172
- disconnectedCallback() {
173
- this._$EO?.forEach((d) => d.hostDisconnected?.());
174
- }
175
- attributeChangedCallback(d, m, v) {
176
- this._$AK(d, v);
177
- }
178
- _$ET(d, m) {
179
- let v = this.constructor.elementProperties.get(d), x = this.constructor._$Eu(d, v);
180
- if (x !== void 0 && !0 === v.reflect) {
181
- let w = (v.converter?.toAttribute === void 0 ? u$2 : v.converter).toAttribute(m, v.type);
182
- this._$Em = d, w == null ? this.removeAttribute(x) : this.setAttribute(x, w), this._$Em = null;
183
- }
184
- }
185
- _$AK(d, m) {
186
- let v = this.constructor, x = v._$Eh.get(d);
187
- if (x !== void 0 && this._$Em !== x) {
188
- let d = v.getPropertyOptions(x), w = typeof d.converter == "function" ? { fromAttribute: d.converter } : d.converter?.fromAttribute === void 0 ? u$2 : d.converter;
189
- this._$Em = x;
190
- let T = w.fromAttribute(m, d.type);
191
- this[x] = T ?? this._$Ej?.get(x) ?? T, this._$Em = null;
192
- }
193
- }
194
- requestUpdate(d, m, v, x = !1, w) {
195
- if (d !== void 0) {
196
- let T = this.constructor;
197
- if (!1 === x && (w = this[d]), v ??= T.getPropertyOptions(d), !((v.hasChanged ?? f$3)(w, m) || v.useDefault && v.reflect && w === this._$Ej?.get(d) && !this.hasAttribute(T._$Eu(d, v)))) return;
198
- this.C(d, m, v);
199
- }
200
- !1 === this.isUpdatePending && (this._$ES = this._$EP());
201
- }
202
- C(d, m, { useDefault: v, reflect: x, wrapped: w }, T) {
203
- v && !(this._$Ej ??= /* @__PURE__ */ new Map()).has(d) && (this._$Ej.set(d, T ?? m ?? this[d]), !0 !== w || T !== void 0) || (this._$AL.has(d) || (this.hasUpdated || v || (m = void 0), this._$AL.set(d, m)), !0 === x && this._$Em !== d && (this._$Eq ??= /* @__PURE__ */ new Set()).add(d));
204
- }
205
- async _$EP() {
206
- this.isUpdatePending = !0;
207
- try {
208
- await this._$ES;
209
- } catch (d) {
210
- Promise.reject(d);
211
- }
212
- let d = this.scheduleUpdate();
213
- return d != null && await d, !this.isUpdatePending;
214
- }
215
- scheduleUpdate() {
216
- return this.performUpdate();
217
- }
218
- performUpdate() {
219
- if (!this.isUpdatePending) return;
220
- if (!this.hasUpdated) {
221
- if (this.renderRoot ??= this.createRenderRoot(), this._$Ep) {
222
- for (let [d, m] of this._$Ep) this[d] = m;
223
- this._$Ep = void 0;
224
- }
225
- let d = this.constructor.elementProperties;
226
- if (d.size > 0) for (let [m, v] of d) {
227
- let { wrapped: d } = v, x = this[m];
228
- !0 !== d || this._$AL.has(m) || x === void 0 || this.C(m, void 0, v, x);
229
- }
230
- }
231
- let d = !1, m = this._$AL;
232
- try {
233
- d = this.shouldUpdate(m), d ? (this.willUpdate(m), this._$EO?.forEach((d) => d.hostUpdate?.()), this.update(m)) : this._$EM();
234
- } catch (m) {
235
- throw d = !1, this._$EM(), m;
236
- }
237
- d && this._$AE(m);
238
- }
239
- willUpdate(d) {}
240
- _$AE(d) {
241
- this._$EO?.forEach((d) => d.hostUpdated?.()), this.hasUpdated || (this.hasUpdated = !0, this.firstUpdated(d)), this.updated(d);
242
- }
243
- _$EM() {
244
- this._$AL = /* @__PURE__ */ new Map(), this.isUpdatePending = !1;
245
- }
246
- get updateComplete() {
247
- return this.getUpdateComplete();
248
- }
249
- getUpdateComplete() {
250
- return this._$ES;
251
- }
252
- shouldUpdate(d) {
253
- return !0;
254
- }
255
- update(d) {
256
- this._$Eq &&= this._$Eq.forEach((d) => this._$ET(d, this[d])), this._$EM();
257
- }
258
- updated(d) {}
259
- firstUpdated(d) {}
260
- };
261
- y$1.elementStyles = [], y$1.shadowRootOptions = { mode: "open" }, y$1[d$2("elementProperties")] = /* @__PURE__ */ new Map(), y$1[d$2("finalized")] = /* @__PURE__ */ new Map(), p$3?.({ ReactiveElement: y$1 }), (a$2.reactiveElementVersions ??= []).push("2.1.2");
262
- /**
263
- * @license
264
- * Copyright 2017 Google LLC
265
- * SPDX-License-Identifier: BSD-3-Clause
266
- */
267
- var t$3 = globalThis, i$5 = (d) => d, s$6 = t$3.trustedTypes, e$5 = s$6 ? s$6.createPolicy("lit-html", { createHTML: (d) => d }) : void 0, h$4 = "$lit$", o$6 = `lit$${Math.random().toFixed(9).slice(2)}$`, n$5 = "?" + o$6, r$4 = `<${n$5}>`, l$2 = document, c$3 = () => l$2.createComment(""), a$1 = (d) => d === null || typeof d != "object" && typeof d != "function", u$3 = Array.isArray, d$1 = (d) => u$3(d) || typeof d?.[Symbol.iterator] == "function", f$4 = "[ \n\f\r]", v$1 = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g, _ = /-->/g, m$1 = />/g, p$2 = RegExp(`>|${f$4}(?:([^\\s"'>=/]+)(${f$4}*=${f$4}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`, "g"), g = /'/g, $ = /"/g, y$2 = /^(?:script|style|textarea|title)$/i, b = ((d) => (m, ...v) => ({
268
- _$litType$: d,
269
- strings: m,
270
- values: v
271
- }))(1), E = Symbol.for("lit-noChange"), A = Symbol.for("lit-nothing"), C = /* @__PURE__ */ new WeakMap(), P = l$2.createTreeWalker(l$2, 129);
272
- function V(d, m) {
273
- if (!u$3(d) || !d.hasOwnProperty("raw")) throw Error("invalid template strings array");
274
- return e$5 === void 0 ? m : e$5.createHTML(m);
275
- }
276
- var N = (d, m) => {
277
- let v = d.length - 1, x = [], w, T = m === 2 ? "<svg>" : m === 3 ? "<math>" : "", O = v$1;
278
- for (let m = 0; m < v; m++) {
279
- let v = d[m], M, F, U = -1, W = 0;
280
- for (; W < v.length && (O.lastIndex = W, F = O.exec(v), F !== null);) W = O.lastIndex, O === v$1 ? F[1] === "!--" ? O = _ : F[1] === void 0 ? F[2] === void 0 ? F[3] !== void 0 && (O = p$2) : (y$2.test(F[2]) && (w = RegExp("</" + F[2], "g")), O = p$2) : O = m$1 : O === p$2 ? F[0] === ">" ? (O = w ?? v$1, U = -1) : F[1] === void 0 ? U = -2 : (U = O.lastIndex - F[2].length, M = F[1], O = F[3] === void 0 ? p$2 : F[3] === "\"" ? $ : g) : O === $ || O === g ? O = p$2 : O === _ || O === m$1 ? O = v$1 : (O = p$2, w = void 0);
281
- let G = O === p$2 && d[m + 1].startsWith("/>") ? " " : "";
282
- T += O === v$1 ? v + r$4 : U >= 0 ? (x.push(M), v.slice(0, U) + h$4 + v.slice(U) + o$6 + G) : v + o$6 + (U === -2 ? m : G);
283
- }
284
- return [V(d, T + (d[v] || "<?>") + (m === 2 ? "</svg>" : m === 3 ? "</math>" : "")), x];
285
- }, S = class d {
286
- constructor({ strings: m, _$litType$: v }, x) {
287
- let w;
288
- this.parts = [];
289
- let T = 0, O = 0, M = m.length - 1, F = this.parts, [U, W] = N(m, v);
290
- if (this.el = d.createElement(U, x), P.currentNode = this.el.content, v === 2 || v === 3) {
291
- let d = this.el.content.firstChild;
292
- d.replaceWith(...d.childNodes);
293
- }
294
- for (; (w = P.nextNode()) !== null && F.length < M;) {
295
- if (w.nodeType === 1) {
296
- if (w.hasAttributes()) for (let d of w.getAttributeNames()) if (d.endsWith(h$4)) {
297
- let m = W[O++], v = w.getAttribute(d).split(o$6), x = /([.?@])?(.*)/.exec(m);
298
- F.push({
299
- type: 1,
300
- index: T,
301
- name: x[2],
302
- strings: v,
303
- ctor: x[1] === "." ? I : x[1] === "?" ? L : x[1] === "@" ? z : H
304
- }), w.removeAttribute(d);
305
- } else d.startsWith(o$6) && (F.push({
306
- type: 6,
307
- index: T
308
- }), w.removeAttribute(d));
309
- if (y$2.test(w.tagName)) {
310
- let d = w.textContent.split(o$6), m = d.length - 1;
311
- if (m > 0) {
312
- w.textContent = s$6 ? s$6.emptyScript : "";
313
- for (let v = 0; v < m; v++) w.append(d[v], c$3()), P.nextNode(), F.push({
314
- type: 2,
315
- index: ++T
316
- });
317
- w.append(d[m], c$3());
318
- }
319
- }
320
- } else if (w.nodeType === 8) if (w.data === n$5) F.push({
321
- type: 2,
322
- index: T
323
- });
324
- else {
325
- let d = -1;
326
- for (; (d = w.data.indexOf(o$6, d + 1)) !== -1;) F.push({
327
- type: 7,
328
- index: T
329
- }), d += o$6.length - 1;
330
- }
331
- T++;
332
- }
333
- }
334
- static createElement(d, m) {
335
- let v = l$2.createElement("template");
336
- return v.innerHTML = d, v;
337
- }
338
- };
339
- function M$1(d, m, v = d, x) {
340
- if (m === E) return m;
341
- let w = x === void 0 ? v._$Cl : v._$Co?.[x], T = a$1(m) ? void 0 : m._$litDirective$;
342
- return w?.constructor !== T && (w?._$AO?.(!1), T === void 0 ? w = void 0 : (w = new T(d), w._$AT(d, v, x)), x === void 0 ? v._$Cl = w : (v._$Co ??= [])[x] = w), w !== void 0 && (m = M$1(d, w._$AS(d, m.values), w, x)), m;
343
- }
344
- var R = class {
345
- constructor(d, m) {
346
- this._$AV = [], this._$AN = void 0, this._$AD = d, this._$AM = m;
347
- }
348
- get parentNode() {
349
- return this._$AM.parentNode;
350
- }
351
- get _$AU() {
352
- return this._$AM._$AU;
353
- }
354
- u(d) {
355
- let { el: { content: m }, parts: v } = this._$AD, x = (d?.creationScope ?? l$2).importNode(m, !0);
356
- P.currentNode = x;
357
- let w = P.nextNode(), T = 0, O = 0, M = v[0];
358
- for (; M !== void 0;) {
359
- if (T === M.index) {
360
- let m;
361
- M.type === 2 ? m = new k(w, w.nextSibling, this, d) : M.type === 1 ? m = new M.ctor(w, M.name, M.strings, this, d) : M.type === 6 && (m = new Z(w, this, d)), this._$AV.push(m), M = v[++O];
362
- }
363
- T !== M?.index && (w = P.nextNode(), T++);
364
- }
365
- return P.currentNode = l$2, x;
366
- }
367
- p(d) {
368
- let m = 0;
369
- for (let v of this._$AV) v !== void 0 && (v.strings === void 0 ? v._$AI(d[m]) : (v._$AI(d, v, m), m += v.strings.length - 2)), m++;
370
- }
371
- }, k = class d {
372
- get _$AU() {
373
- return this._$AM?._$AU ?? this._$Cv;
374
- }
375
- constructor(d, m, v, x) {
376
- this.type = 2, this._$AH = A, this._$AN = void 0, this._$AA = d, this._$AB = m, this._$AM = v, this.options = x, this._$Cv = x?.isConnected ?? !0;
377
- }
378
- get parentNode() {
379
- let d = this._$AA.parentNode, m = this._$AM;
380
- return m !== void 0 && d?.nodeType === 11 && (d = m.parentNode), d;
381
- }
382
- get startNode() {
383
- return this._$AA;
384
- }
385
- get endNode() {
386
- return this._$AB;
387
- }
388
- _$AI(d, m = this) {
389
- d = M$1(this, d, m), a$1(d) ? d === A || d == null || d === "" ? (this._$AH !== A && this._$AR(), this._$AH = A) : d !== this._$AH && d !== E && this._(d) : d._$litType$ === void 0 ? d.nodeType === void 0 ? d$1(d) ? this.k(d) : this._(d) : this.T(d) : this.$(d);
390
- }
391
- O(d) {
392
- return this._$AA.parentNode.insertBefore(d, this._$AB);
393
- }
394
- T(d) {
395
- this._$AH !== d && (this._$AR(), this._$AH = this.O(d));
396
- }
397
- _(d) {
398
- this._$AH !== A && a$1(this._$AH) ? this._$AA.nextSibling.data = d : this.T(l$2.createTextNode(d)), this._$AH = d;
399
- }
400
- $(d) {
401
- let { values: m, _$litType$: v } = d, x = typeof v == "number" ? this._$AC(d) : (v.el === void 0 && (v.el = S.createElement(V(v.h, v.h[0]), this.options)), v);
402
- if (this._$AH?._$AD === x) this._$AH.p(m);
403
- else {
404
- let d = new R(x, this), v = d.u(this.options);
405
- d.p(m), this.T(v), this._$AH = d;
406
- }
407
- }
408
- _$AC(d) {
409
- let m = C.get(d.strings);
410
- return m === void 0 && C.set(d.strings, m = new S(d)), m;
411
- }
412
- k(m) {
413
- u$3(this._$AH) || (this._$AH = [], this._$AR());
414
- let v = this._$AH, x, w = 0;
415
- for (let T of m) w === v.length ? v.push(x = new d(this.O(c$3()), this.O(c$3()), this, this.options)) : x = v[w], x._$AI(T), w++;
416
- w < v.length && (this._$AR(x && x._$AB.nextSibling, w), v.length = w);
417
- }
418
- _$AR(d = this._$AA.nextSibling, m) {
419
- for (this._$AP?.(!1, !0, m); d !== this._$AB;) {
420
- let m = i$5(d).nextSibling;
421
- i$5(d).remove(), d = m;
422
- }
423
- }
424
- setConnected(d) {
425
- this._$AM === void 0 && (this._$Cv = d, this._$AP?.(d));
426
- }
427
- }, H = class {
428
- get tagName() {
429
- return this.element.tagName;
430
- }
431
- get _$AU() {
432
- return this._$AM._$AU;
433
- }
434
- constructor(d, m, v, x, w) {
435
- this.type = 1, this._$AH = A, this._$AN = void 0, this.element = d, this.name = m, this._$AM = x, this.options = w, v.length > 2 || v[0] !== "" || v[1] !== "" ? (this._$AH = Array(v.length - 1).fill(/* @__PURE__ */ new String()), this.strings = v) : this._$AH = A;
436
- }
437
- _$AI(d, m = this, v, x) {
438
- let w = this.strings, T = !1;
439
- if (w === void 0) d = M$1(this, d, m, 0), T = !a$1(d) || d !== this._$AH && d !== E, T && (this._$AH = d);
440
- else {
441
- let x = d, O, M;
442
- for (d = w[0], O = 0; O < w.length - 1; O++) M = M$1(this, x[v + O], m, O), M === E && (M = this._$AH[O]), T ||= !a$1(M) || M !== this._$AH[O], M === A ? d = A : d !== A && (d += (M ?? "") + w[O + 1]), this._$AH[O] = M;
443
- }
444
- T && !x && this.j(d);
445
- }
446
- j(d) {
447
- d === A ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, d ?? "");
448
- }
449
- }, I = class extends H {
450
- constructor() {
451
- super(...arguments), this.type = 3;
452
- }
453
- j(d) {
454
- this.element[this.name] = d === A ? void 0 : d;
455
- }
456
- }, L = class extends H {
457
- constructor() {
458
- super(...arguments), this.type = 4;
459
- }
460
- j(d) {
461
- this.element.toggleAttribute(this.name, !!d && d !== A);
462
- }
463
- }, z = class extends H {
464
- constructor(d, m, v, x, w) {
465
- super(d, m, v, x, w), this.type = 5;
466
- }
467
- _$AI(d, m = this) {
468
- if ((d = M$1(this, d, m, 0) ?? A) === E) return;
469
- let v = this._$AH, x = d === A && v !== A || d.capture !== v.capture || d.once !== v.once || d.passive !== v.passive, w = d !== A && (v === A || x);
470
- x && this.element.removeEventListener(this.name, this, v), w && this.element.addEventListener(this.name, this, d), this._$AH = d;
471
- }
472
- handleEvent(d) {
473
- typeof this._$AH == "function" ? this._$AH.call(this.options?.host ?? this.element, d) : this._$AH.handleEvent(d);
474
- }
475
- }, Z = class {
476
- constructor(d, m, v) {
477
- this.element = d, this.type = 6, this._$AN = void 0, this._$AM = m, this.options = v;
478
- }
479
- get _$AU() {
480
- return this._$AM._$AU;
481
- }
482
- _$AI(d) {
483
- M$1(this, d);
484
- }
485
- }, j = {
486
- M: h$4,
487
- P: o$6,
488
- A: n$5,
489
- C: 1,
490
- L: N,
491
- R,
492
- D: d$1,
493
- V: M$1,
494
- I: k,
495
- H,
496
- N: L,
497
- U: z,
498
- B: I,
499
- F: Z
500
- }, B = t$3.litHtmlPolyfillSupport;
501
- B?.(S, k), (t$3.litHtmlVersions ??= []).push("3.3.2");
502
- var D = (d, m, v) => {
503
- let x = v?.renderBefore ?? m, w = x._$litPart$;
504
- if (w === void 0) {
505
- let d = v?.renderBefore ?? null;
506
- x._$litPart$ = w = new k(m.insertBefore(c$3(), d), d, void 0, v ?? {});
507
- }
508
- return w._$AI(d), w;
509
- }, s$5 = globalThis, i = class extends y$1 {
510
- constructor() {
511
- super(...arguments), this.renderOptions = { host: this }, this._$Do = void 0;
512
- }
513
- createRenderRoot() {
514
- let d = super.createRenderRoot();
515
- return this.renderOptions.renderBefore ??= d.firstChild, d;
516
- }
517
- update(d) {
518
- let m = this.render();
519
- this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(d), this._$Do = D(m, this.renderRoot, this.renderOptions);
520
- }
521
- connectedCallback() {
522
- super.connectedCallback(), this._$Do?.setConnected(!0);
523
- }
524
- disconnectedCallback() {
525
- super.disconnectedCallback(), this._$Do?.setConnected(!1);
526
- }
527
- render() {
528
- return E;
529
- }
530
- };
531
- i._$litElement$ = !0, i.finalized = !0, s$5.litElementHydrateSupport?.({ LitElement: i });
532
- var o$5 = s$5.litElementPolyfillSupport;
533
- o$5?.({ LitElement: i }), (s$5.litElementVersions ??= []).push("4.2.2");
534
- /**
535
- * @license
536
- * Copyright 2017 Google LLC
537
- * SPDX-License-Identifier: BSD-3-Clause
538
- */ var o$4 = {
539
- attribute: !0,
540
- type: String,
541
- converter: u$2,
542
- reflect: !1,
543
- hasChanged: f$3
544
- }, r$3 = (d = o$4, m, v) => {
545
- let { kind: x, metadata: w } = v, T = globalThis.litPropertyMetadata.get(w);
546
- if (T === void 0 && globalThis.litPropertyMetadata.set(w, T = /* @__PURE__ */ new Map()), x === "setter" && ((d = Object.create(d)).wrapped = !0), T.set(v.name, d), x === "accessor") {
547
- let { name: x } = v;
548
- return {
549
- set(v) {
550
- let w = m.get.call(this);
551
- m.set.call(this, v), this.requestUpdate(x, w, d, !0, v);
552
- },
553
- init(m) {
554
- return m !== void 0 && this.C(x, void 0, d, m), m;
555
- }
556
- };
557
- }
558
- if (x === "setter") {
559
- let { name: x } = v;
560
- return function(v) {
561
- let w = this[x];
562
- m.call(this, v), this.requestUpdate(x, w, d, !0, v);
563
- };
564
- }
565
- throw Error("Unsupported decorator location: " + x);
566
- };
567
- function n(d) {
568
- return (m, v) => typeof v == "object" ? r$3(d, m, v) : ((d, m, v) => {
569
- let x = m.hasOwnProperty(v);
570
- return m.constructor.createProperty(v, d), x ? Object.getOwnPropertyDescriptor(m, v) : void 0;
571
- })(d, m, v);
572
- }
573
- /**
574
- * @license
575
- * Copyright 2017 Google LLC
576
- * SPDX-License-Identifier: BSD-3-Clause
577
- */ function r(d) {
578
- return n({
579
- ...d,
580
- state: !0,
581
- attribute: !1
582
- });
583
- }
584
- /**
585
- * @license
586
- * Copyright 2020 Google LLC
587
- * SPDX-License-Identifier: BSD-3-Clause
588
- */ var { I: t$2 } = j, r$1 = (d) => d.strings === void 0, t$1 = {
589
- ATTRIBUTE: 1,
590
- CHILD: 2,
591
- PROPERTY: 3,
592
- BOOLEAN_ATTRIBUTE: 4,
593
- EVENT: 5,
594
- ELEMENT: 6
595
- }, e$1 = (d) => (...m) => ({
596
- _$litDirective$: d,
597
- values: m
598
- }), i$3 = class {
599
- constructor(d) {}
600
- get _$AU() {
601
- return this._$AM._$AU;
602
- }
603
- _$AT(d, m, v) {
604
- this._$Ct = d, this._$AM = m, this._$Ci = v;
605
- }
606
- _$AS(d, m) {
607
- return this.update(d, m);
608
- }
609
- update(d, m) {
610
- return this.render(...m);
611
- }
612
- }, s$3 = (d, m) => {
613
- let v = d._$AN;
614
- if (v === void 0) return !1;
615
- for (let d of v) d._$AO?.(m, !1), s$3(d, m);
616
- return !0;
617
- }, o$3 = (d) => {
618
- let m, v;
619
- do {
620
- if ((m = d._$AM) === void 0) break;
621
- v = m._$AN, v.delete(d), d = m;
622
- } while (v?.size === 0);
623
- }, r$2 = (d) => {
624
- for (let m; m = d._$AM; d = m) {
625
- let v = m._$AN;
626
- if (v === void 0) m._$AN = v = /* @__PURE__ */ new Set();
627
- else if (v.has(d)) break;
628
- v.add(d), c$1(m);
629
- }
630
- };
631
- function h$2(d) {
632
- this._$AN === void 0 ? this._$AM = d : (o$3(this), this._$AM = d, r$2(this));
633
- }
634
- function n$3(d, m = !1, v = 0) {
635
- let x = this._$AH, w = this._$AN;
636
- if (w !== void 0 && w.size !== 0) if (m) if (Array.isArray(x)) for (let d = v; d < x.length; d++) s$3(x[d], !1), o$3(x[d]);
637
- else x != null && (s$3(x, !1), o$3(x));
638
- else s$3(this, d);
639
- }
640
- var c$1 = (d) => {
641
- d.type == t$1.CHILD && (d._$AP ??= n$3, d._$AQ ??= h$2);
642
- }, f$1 = class extends i$3 {
643
- constructor() {
644
- super(...arguments), this._$AN = void 0;
645
- }
646
- _$AT(d, m, v) {
647
- super._$AT(d, m, v), r$2(this), this.isConnected = d._$AU;
648
- }
649
- _$AO(d, m = !0) {
650
- d !== this.isConnected && (this.isConnected = d, d ? this.reconnected?.() : this.disconnected?.()), m && (s$3(this, d), o$3(this));
651
- }
652
- setValue(d) {
653
- if (r$1(this._$Ct)) this._$Ct._$AI(d, this);
654
- else {
655
- let m = [...this._$Ct._$AH];
656
- m[this._$Ci] = d, this._$Ct._$AI(m, this, 0);
657
- }
658
- }
659
- disconnected() {}
660
- reconnected() {}
661
- }, e$3 = () => new h$1(), h$1 = class {}, o$2 = /* @__PURE__ */ new WeakMap(), n$2 = e$1(class extends f$1 {
662
- render(d) {
663
- return A;
664
- }
665
- update(d, [m]) {
666
- let v = m !== this.G;
667
- return v && this.G !== void 0 && this.rt(void 0), (v || this.lt !== this.ct) && (this.G = m, this.ht = d.options?.host, this.rt(this.ct = d.element)), A;
668
- }
669
- rt(d) {
670
- if (this.isConnected || (d = void 0), typeof this.G == "function") {
671
- let m = this.ht ?? globalThis, v = o$2.get(m);
672
- v === void 0 && (v = /* @__PURE__ */ new WeakMap(), o$2.set(m, v)), v.get(this.G) !== void 0 && this.G.call(this.ht, void 0), v.set(this.G, d), d !== void 0 && this.G.call(this.ht, d);
673
- } else this.G.value = d;
674
- }
675
- get lt() {
676
- return typeof this.G == "function" ? o$2.get(this.ht ?? globalThis)?.get(this.G) : this.G?.value;
677
- }
678
- disconnected() {
679
- this.lt === this.ct && this.rt(void 0);
680
- }
681
- reconnected() {
682
- this.rt(this.ct);
683
- }
684
- }), e$2 = class extends i$3 {
685
- constructor(d) {
686
- if (super(d), this.it = A, d.type !== t$1.CHILD) throw Error(this.constructor.directiveName + "() can only be used in child bindings");
687
- }
688
- render(d) {
689
- if (d === A || d == null) return this._t = void 0, this.it = d;
690
- if (d === E) return d;
691
- if (typeof d != "string") throw Error(this.constructor.directiveName + "() called with a non-string value");
692
- if (d === this.it) return this._t;
693
- this.it = d;
694
- let m = [d];
695
- return m.raw = m, this._t = {
696
- _$litType$: this.constructor.resultType,
697
- strings: m,
698
- values: []
699
- };
700
- }
701
- };
702
- e$2.directiveName = "unsafeHTML", e$2.resultType = 1;
703
- /**
704
- * @license
705
- * Copyright 2017 Google LLC
706
- * SPDX-License-Identifier: BSD-3-Clause
707
- */ var t = class extends e$2 {};
708
- t.directiveName = "unsafeSVG", t.resultType = 2;
709
- var o = e$1(t);
710
- function isObject(d) {
711
- return Object.prototype.toString.call(d) === "[object Object]";
712
- }
713
- var SEPARATOR = /\W|_/g;
714
- function camelizeString(d) {
715
- return d.split(SEPARATOR).map((d, m) => d.charAt(0)[m > 0 ? "toUpperCase" : "toLowerCase"]() + d.slice(1)).join("");
716
- }
717
- function camelizeArrayItems(d, { ignoreKeys: m } = { ignoreKeys: [] }) {
718
- return Array.isArray(d) ? d.map((d) => camelizeKeys(d, { ignoreKeys: m })) : d;
719
- }
720
- function camelizeKeys(d, { ignoreKeys: m } = { ignoreKeys: [] }) {
721
- if (Array.isArray(d)) return camelizeArrayItems(d, { ignoreKeys: m });
722
- if (!isObject(d)) return d;
723
- let v = {};
724
- for (let x of Object.keys(d)) {
725
- let w = d[x];
726
- if (m.includes(x)) {
727
- v[x] = w;
728
- continue;
729
- }
730
- isObject(w) ? w = camelizeKeys(w, { ignoreKeys: m }) : Array.isArray(w) && (w = camelizeArrayItems(w, { ignoreKeys: m })), v[camelizeString(x)] = w;
731
- }
732
- return v;
733
- }
734
- var delay = (d) => new Promise((m) => setTimeout(m, d));
735
- function getUserAgent$1({ libraryName: d, libraryVersion: m, userAgent: v, publicKey: x = "", integration: w = "" }) {
736
- let T = "JavaScript";
737
- return typeof v == "string" ? v : typeof v == "function" ? v({
738
- publicKey: x,
739
- libraryName: d,
740
- libraryVersion: m,
741
- languageName: T,
742
- integration: w
743
- }) : `${[
744
- d,
745
- m,
746
- x
747
- ].filter(Boolean).join("/")} (${[T, w].filter(Boolean).join("; ")})`;
748
- }
749
- var defaultOptions = {
750
- factor: 2,
751
- time: 100
752
- };
753
- function retrier(d, m = defaultOptions) {
754
- let v = 0;
755
- function x(d) {
756
- let w = Math.round(m.time * m.factor ** v);
757
- return d({
758
- attempt: v,
759
- retry: (m) => delay(m ?? w).then(() => (v += 1, x(d)))
760
- });
761
- }
762
- return x(d);
763
- }
764
- var UploadcareError = class extends Error {}, NetworkError = class d extends UploadcareError {
765
- originalProgressEvent;
766
- constructor(m) {
767
- super(), this.name = "NetworkError", this.message = "Network error", Object.setPrototypeOf(this, d.prototype), this.originalProgressEvent = m;
768
- }
769
- }, onCancel = (d, m) => {
770
- d && (d.aborted ? Promise.resolve().then(m) : d.addEventListener("abort", () => m(), { once: !0 }));
771
- }, CancelError = class d extends UploadcareError {
772
- isCancel = !0;
773
- constructor(m = "Request canceled") {
774
- super(m), this.name = "CancelError", Object.setPrototypeOf(this, d.prototype);
775
- }
776
- }, DEFAULT_INTERVAL = 500, poll = ({ check: d, interval: m = DEFAULT_INTERVAL, timeout: v, signal: x }) => new Promise((w, T) => {
777
- let O, M;
778
- onCancel(x, () => {
779
- O && clearTimeout(O), T(new CancelError("Poll cancelled"));
780
- }), v && (M = setTimeout(() => {
781
- O && clearTimeout(O), T(new CancelError("Timed out"));
782
- }, v));
783
- let F = () => {
784
- try {
785
- Promise.resolve(d(x)).then((d) => {
786
- d ? (M && clearTimeout(M), w(d)) : O = setTimeout(F, m);
787
- }).catch((d) => {
788
- M && clearTimeout(M), T(d);
789
- });
790
- } catch (d) {
791
- M && clearTimeout(M), T(d);
792
- }
793
- };
794
- O = setTimeout(F, 0);
795
- }), defaultSettings = {
796
- baseCDN: "https://ucarecdn.com",
797
- baseURL: "https://upload.uploadcare.com",
798
- maxContentLength: 50 * 1024 * 1024,
799
- retryThrottledRequestMaxTimes: 1,
800
- retryNetworkErrorMaxTimes: 3,
801
- multipartMinFileSize: 25 * 1024 * 1024,
802
- multipartChunkSize: 5 * 1024 * 1024,
803
- multipartMinLastPartSize: 1024 * 1024,
804
- maxConcurrentRequests: 4,
805
- pollingTimeoutMilliseconds: 1e4,
806
- pusherKey: "79ae88bd931ea68464d9"
807
- }, defaultContentType = "application/octet-stream", defaultFilename = "original", request = ({ method: d, url: m, data: v, headers: x = {}, signal: w, onProgress: T }) => new Promise((O, M) => {
808
- let F = new XMLHttpRequest(), U = d?.toUpperCase() || "GET", W = !1;
809
- F.open(U, m, !0), x && Object.entries(x).forEach((d) => {
810
- let [m, v] = d;
811
- v !== void 0 && !Array.isArray(v) && F.setRequestHeader(m, v);
812
- }), F.responseType = "text", onCancel(w, () => {
813
- W = !0, F.abort(), M(new CancelError());
814
- }), F.onload = () => {
815
- if (F.status != 200) M(/* @__PURE__ */ Error(`Error ${F.status}: ${F.statusText}`));
816
- else {
817
- let d = {
818
- method: U,
819
- url: m,
820
- data: v,
821
- headers: x || void 0,
822
- signal: w,
823
- onProgress: T
824
- }, M = F.getAllResponseHeaders().trim().split(/[\r\n]+/), W = {};
825
- M.forEach(function(d) {
826
- let m = d.split(": "), v = m.shift(), x = m.join(": ");
827
- v && v !== void 0 && (W[v] = x);
828
- });
829
- let G = F.response, K = F.status;
830
- O({
831
- request: d,
832
- data: G,
833
- headers: W,
834
- status: K
835
- });
836
- }
837
- }, F.onerror = (d) => {
838
- W || M(new NetworkError(d));
839
- }, T && typeof T == "function" && (F.upload.onprogress = (d) => {
840
- d.lengthComputable ? T({
841
- isComputable: !0,
842
- value: d.loaded / d.total
843
- }) : T({ isComputable: !1 });
844
- }), v ? F.send(v) : F.send();
845
- });
846
- function identity(d, ...m) {
847
- return d;
848
- }
849
- var getFileOptions = ({ name: d }) => d ? [d] : [], transformFile = identity, getFormData = () => new FormData(), isBuffer = (d) => !1, isBlob = (d) => typeof Blob < "u" && d instanceof Blob, isFile = (d) => typeof File < "u" && d instanceof File, isReactNativeAsset = (d) => !!d && typeof d == "object" && !Array.isArray(d) && "uri" in d && typeof d.uri == "string", isFileData = (d) => isBlob(d) || isFile(d) || isBuffer() || isReactNativeAsset(d), isSimpleValue = (d) => typeof d == "string" || typeof d == "number" || d === void 0, isObjectValue = (d) => !!d && typeof d == "object" && !Array.isArray(d), isFileValue = (d) => !!d && typeof d == "object" && "data" in d && isFileData(d.data);
850
- function collectParams(d, m, v) {
851
- if (Array.isArray(v)) for (let x of v) collectParams(d, `${m}[]`, x);
852
- else if (isFileValue(v)) {
853
- let { name: x, contentType: w } = v, T = transformFile(v.data, x, w ?? defaultContentType), O = getFileOptions({
854
- name: x,
855
- contentType: w
856
- });
857
- d.push([
858
- m,
859
- T,
860
- ...O
861
- ]);
862
- } else if (isObjectValue(v)) for (let [x, w] of Object.entries(v)) w !== void 0 && d.push([`${m}[${x}]`, String(w)]);
863
- else isSimpleValue(v) && v && d.push([m, v.toString()]);
864
- }
865
- function getFormDataParams(d) {
866
- let m = [];
867
- for (let [v, x] of Object.entries(d)) collectParams(m, v, x);
868
- return m;
869
- }
870
- function buildFormData(d) {
871
- let m = getFormData(), v = getFormDataParams(d);
872
- for (let d of v) {
873
- let [v, x, ...w] = d;
874
- m.append(v, x, ...w);
875
- }
876
- return m;
877
- }
878
- var UploadError = class d extends UploadcareError {
879
- code;
880
- request;
881
- response;
882
- headers;
883
- constructor(m, v, x, w, T) {
884
- super(), this.name = "UploadError", this.message = m, this.code = v, this.request = x, this.response = w, this.headers = T, Object.setPrototypeOf(this, d.prototype);
885
- }
886
- }, buildSearchParams = (d) => {
887
- let m = new URLSearchParams();
888
- for (let [v, x] of Object.entries(d)) x && typeof x == "object" && !Array.isArray(x) ? Object.entries(x).filter((d) => d[1] ?? !1).forEach((d) => m.set(`${v}[${d[0]}]`, String(d[1]))) : Array.isArray(x) ? x.forEach((d) => {
889
- m.append(`${v}[]`, d);
890
- }) : typeof x == "string" && x ? m.set(v, x) : typeof x == "number" && m.set(v, x.toString());
891
- return m.toString();
892
- }, getUrl = (d, m, v) => {
893
- let x = new URL(d);
894
- return x.pathname = (x.pathname + m).replace("//", "/"), v && (x.search = buildSearchParams(v)), x.toString();
895
- }, version$1 = "6.18.4", LIBRARY_NAME = "UploadcareUploadClient", LIBRARY_VERSION = version$1;
896
- function getUserAgent(d) {
897
- return getUserAgent$1({
898
- libraryName: LIBRARY_NAME,
899
- libraryVersion: LIBRARY_VERSION,
900
- ...d
901
- });
902
- }
903
- var REQUEST_WAS_THROTTLED_CODE = "RequestThrottledError", DEFAULT_RETRY_AFTER_TIMEOUT = 15e3, DEFAULT_NETWORK_ERROR_TIMEOUT = 1e3;
904
- function getTimeoutFromThrottledRequest(d) {
905
- let { headers: m } = d || {};
906
- if (!m || typeof m["retry-after"] != "string") return DEFAULT_RETRY_AFTER_TIMEOUT;
907
- let v = parseInt(m["retry-after"], 10);
908
- return Number.isFinite(v) ? v * 1e3 : DEFAULT_RETRY_AFTER_TIMEOUT;
909
- }
910
- function retryIfFailed(d, m) {
911
- let { retryThrottledRequestMaxTimes: v, retryNetworkErrorMaxTimes: x } = m;
912
- return retrier(({ attempt: m, retry: w }) => d().catch((d) => {
913
- if ("response" in d && d?.code === REQUEST_WAS_THROTTLED_CODE && m < v) return w(getTimeoutFromThrottledRequest(d));
914
- if (d instanceof NetworkError && m < x) return w((m + 1) * DEFAULT_NETWORK_ERROR_TIMEOUT);
915
- throw d;
916
- }));
917
- }
918
- var getContentType = (d) => {
919
- let m = "";
920
- return (isBlob(d) || isFile(d) || isReactNativeAsset(d)) && (m = d.type), m || defaultContentType;
921
- }, getFileName = (d) => {
922
- let m = "";
923
- return isFile(d) && d.name ? m = d.name : isBlob(d) || isBuffer() ? m = "" : isReactNativeAsset(d) && d.name && (m = d.name), m || defaultFilename;
924
- };
925
- function getStoreValue(d) {
926
- return d === void 0 || d === "auto" ? "auto" : d ? "1" : "0";
927
- }
928
- function base(d, { publicKey: m, fileName: v, contentType: x, baseURL: w = defaultSettings.baseURL, secureSignature: T, secureExpire: O, store: M, signal: F, onProgress: U, source: W = "local", integration: G, userAgent: K, retryThrottledRequestMaxTimes: q = defaultSettings.retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes: J = defaultSettings.retryNetworkErrorMaxTimes, metadata: Y }) {
929
- return retryIfFailed(() => request({
930
- method: "POST",
931
- url: getUrl(w, "/base/", { jsonerrors: 1 }),
932
- headers: { "X-UC-User-Agent": getUserAgent({
933
- publicKey: m,
934
- integration: G,
935
- userAgent: K
936
- }) },
937
- data: buildFormData({
938
- file: {
939
- data: d,
940
- name: v || getFileName(d),
941
- contentType: x || getContentType(d)
942
- },
943
- UPLOADCARE_PUB_KEY: m,
944
- UPLOADCARE_STORE: getStoreValue(M),
945
- signature: T,
946
- expire: O,
947
- source: W,
948
- metadata: Y
949
- }),
950
- signal: F,
951
- onProgress: U
952
- }).then(({ data: d, headers: m, request: v }) => {
953
- let x = camelizeKeys(JSON.parse(d));
954
- if ("error" in x) throw new UploadError(x.error.content, x.error.errorCode, v, x, m);
955
- return x;
956
- }), {
957
- retryNetworkErrorMaxTimes: J,
958
- retryThrottledRequestMaxTimes: q
959
- });
960
- }
961
- var TypeEnum;
962
- (function(d) {
963
- d.Token = "token", d.FileInfo = "file_info";
964
- })(TypeEnum ||= {});
965
- function fromUrl(d, { publicKey: m, baseURL: v = defaultSettings.baseURL, store: x, fileName: w, checkForUrlDuplicates: T, saveUrlForRecurrentUploads: O, secureSignature: M, secureExpire: F, source: U = "url", signal: W, integration: G, userAgent: K, retryThrottledRequestMaxTimes: q = defaultSettings.retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes: J = defaultSettings.retryNetworkErrorMaxTimes, metadata: Y }) {
966
- return retryIfFailed(() => request({
967
- method: "POST",
968
- headers: { "X-UC-User-Agent": getUserAgent({
969
- publicKey: m,
970
- integration: G,
971
- userAgent: K
972
- }) },
973
- url: getUrl(v, "/from_url/", {
974
- jsonerrors: 1,
975
- pub_key: m,
976
- source_url: d,
977
- store: getStoreValue(x),
978
- filename: w,
979
- check_URL_duplicates: T ? 1 : void 0,
980
- save_URL_duplicates: O ? 1 : void 0,
981
- signature: M,
982
- expire: F,
983
- source: U,
984
- metadata: Y
985
- }),
986
- signal: W
987
- }).then(({ data: d, headers: m, request: v }) => {
988
- let x = camelizeKeys(JSON.parse(d));
989
- if ("error" in x) throw new UploadError(x.error.content, x.error.errorCode, v, x, m);
990
- return x;
991
- }), {
992
- retryNetworkErrorMaxTimes: J,
993
- retryThrottledRequestMaxTimes: q
994
- });
995
- }
996
- var Status;
997
- (function(d) {
998
- d.Unknown = "unknown", d.Waiting = "waiting", d.Progress = "progress", d.Error = "error", d.Success = "success";
999
- })(Status ||= {});
1000
- var isErrorResponse = (d) => "status" in d && d.status === Status.Error;
1001
- function fromUrlStatus(d, { publicKey: m, baseURL: v = defaultSettings.baseURL, signal: x, integration: w, userAgent: T, retryThrottledRequestMaxTimes: O = defaultSettings.retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes: M = defaultSettings.retryNetworkErrorMaxTimes } = {}) {
1002
- return retryIfFailed(() => request({
1003
- method: "GET",
1004
- headers: m ? { "X-UC-User-Agent": getUserAgent({
1005
- publicKey: m,
1006
- integration: w,
1007
- userAgent: T
1008
- }) } : void 0,
1009
- url: getUrl(v, "/from_url/status/", {
1010
- jsonerrors: 1,
1011
- token: d
1012
- }),
1013
- signal: x
1014
- }).then(({ data: d, headers: m, request: v }) => {
1015
- let x = camelizeKeys(JSON.parse(d));
1016
- if ("error" in x && !isErrorResponse(x)) throw new UploadError(x.error.content, x.error.errorCode, v, x, m);
1017
- return x;
1018
- }), {
1019
- retryNetworkErrorMaxTimes: M,
1020
- retryThrottledRequestMaxTimes: O
1021
- });
1022
- }
1023
- function group(d, { publicKey: m, baseURL: v = defaultSettings.baseURL, jsonpCallback: x, secureSignature: w, secureExpire: T, signal: O, source: M, integration: F, userAgent: U, retryThrottledRequestMaxTimes: W = defaultSettings.retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes: G = defaultSettings.retryNetworkErrorMaxTimes }) {
1024
- return retryIfFailed(() => request({
1025
- method: "POST",
1026
- headers: { "X-UC-User-Agent": getUserAgent({
1027
- publicKey: m,
1028
- integration: F,
1029
- userAgent: U
1030
- }) },
1031
- url: getUrl(v, "/group/", { jsonerrors: 1 }),
1032
- data: buildFormData({
1033
- files: d,
1034
- callback: x,
1035
- pub_key: m,
1036
- signature: w,
1037
- expire: T,
1038
- source: M
1039
- }),
1040
- signal: O
1041
- }).then(({ data: d, headers: m, request: v }) => {
1042
- let x = camelizeKeys(JSON.parse(d));
1043
- if ("error" in x) throw new UploadError(x.error.content, x.error.errorCode, v, x, m);
1044
- return x;
1045
- }), {
1046
- retryNetworkErrorMaxTimes: G,
1047
- retryThrottledRequestMaxTimes: W
1048
- });
1049
- }
1050
- function info(d, { publicKey: m, baseURL: v = defaultSettings.baseURL, signal: x, source: w, integration: T, userAgent: O, retryThrottledRequestMaxTimes: M = defaultSettings.retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes: F = defaultSettings.retryNetworkErrorMaxTimes }) {
1051
- return retryIfFailed(() => request({
1052
- method: "GET",
1053
- headers: { "X-UC-User-Agent": getUserAgent({
1054
- publicKey: m,
1055
- integration: T,
1056
- userAgent: O
1057
- }) },
1058
- url: getUrl(v, "/info/", {
1059
- jsonerrors: 1,
1060
- pub_key: m,
1061
- file_id: d,
1062
- source: w
1063
- }),
1064
- signal: x
1065
- }).then(({ data: d, headers: m, request: v }) => {
1066
- let x = camelizeKeys(JSON.parse(d));
1067
- if ("error" in x) throw new UploadError(x.error.content, x.error.errorCode, v, x, m);
1068
- return x;
1069
- }), {
1070
- retryThrottledRequestMaxTimes: M,
1071
- retryNetworkErrorMaxTimes: F
1072
- });
1073
- }
1074
- function multipartStart(d, { publicKey: m, contentType: v, fileName: x, multipartChunkSize: w = defaultSettings.multipartChunkSize, baseURL: T = "", secureSignature: O, secureExpire: M, store: F, signal: U, source: W = "local", integration: G, userAgent: K, retryThrottledRequestMaxTimes: q = defaultSettings.retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes: J = defaultSettings.retryNetworkErrorMaxTimes, metadata: Y }) {
1075
- return retryIfFailed(() => request({
1076
- method: "POST",
1077
- url: getUrl(T, "/multipart/start/", { jsonerrors: 1 }),
1078
- headers: { "X-UC-User-Agent": getUserAgent({
1079
- publicKey: m,
1080
- integration: G,
1081
- userAgent: K
1082
- }) },
1083
- data: buildFormData({
1084
- filename: x || defaultFilename,
1085
- size: d,
1086
- content_type: v || defaultContentType,
1087
- part_size: w,
1088
- UPLOADCARE_STORE: getStoreValue(F),
1089
- UPLOADCARE_PUB_KEY: m,
1090
- signature: O,
1091
- expire: M,
1092
- source: W,
1093
- metadata: Y
1094
- }),
1095
- signal: U
1096
- }).then(({ data: d, headers: m, request: v }) => {
1097
- let x = camelizeKeys(JSON.parse(d));
1098
- if ("error" in x) throw new UploadError(x.error.content, x.error.errorCode, v, x, m);
1099
- return x.parts = Object.keys(x.parts).map((d) => x.parts[Number(d)]), x;
1100
- }), {
1101
- retryThrottledRequestMaxTimes: q,
1102
- retryNetworkErrorMaxTimes: J
1103
- });
1104
- }
1105
- function multipartUpload(d, m, { contentType: v, signal: x, onProgress: w, retryThrottledRequestMaxTimes: T = defaultSettings.retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes: O = defaultSettings.retryNetworkErrorMaxTimes }) {
1106
- return retryIfFailed(() => request({
1107
- method: "PUT",
1108
- url: m,
1109
- data: d,
1110
- onProgress: w,
1111
- signal: x,
1112
- headers: { "Content-Type": v || defaultContentType }
1113
- }).then((d) => (w && w({
1114
- isComputable: !0,
1115
- value: 1
1116
- }), d)).then(({ status: d }) => ({ code: d })), {
1117
- retryThrottledRequestMaxTimes: T,
1118
- retryNetworkErrorMaxTimes: O
1119
- });
1120
- }
1121
- function multipartComplete(d, { publicKey: m, baseURL: v = defaultSettings.baseURL, source: x = "local", signal: w, integration: T, userAgent: O, retryThrottledRequestMaxTimes: M = defaultSettings.retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes: F = defaultSettings.retryNetworkErrorMaxTimes }) {
1122
- return retryIfFailed(() => request({
1123
- method: "POST",
1124
- url: getUrl(v, "/multipart/complete/", { jsonerrors: 1 }),
1125
- headers: { "X-UC-User-Agent": getUserAgent({
1126
- publicKey: m,
1127
- integration: T,
1128
- userAgent: O
1129
- }) },
1130
- data: buildFormData({
1131
- uuid: d,
1132
- UPLOADCARE_PUB_KEY: m,
1133
- source: x
1134
- }),
1135
- signal: w
1136
- }).then(({ data: d, headers: m, request: v }) => {
1137
- let x = camelizeKeys(JSON.parse(d));
1138
- if ("error" in x) throw new UploadError(x.error.content, x.error.errorCode, v, x, m);
1139
- return x;
1140
- }), {
1141
- retryThrottledRequestMaxTimes: M,
1142
- retryNetworkErrorMaxTimes: F
1143
- });
1144
- }
1145
- function isReadyPoll(d, { publicKey: m, baseURL: v, source: x, integration: w, userAgent: T, retryThrottledRequestMaxTimes: O, retryNetworkErrorMaxTimes: M, signal: F, onProgress: U }) {
1146
- return poll({
1147
- check: (F) => info(d, {
1148
- publicKey: m,
1149
- baseURL: v,
1150
- signal: F,
1151
- source: x,
1152
- integration: w,
1153
- userAgent: T,
1154
- retryThrottledRequestMaxTimes: O,
1155
- retryNetworkErrorMaxTimes: M
1156
- }).then((d) => d.isReady ? d : (U && U({
1157
- isComputable: !0,
1158
- value: 1
1159
- }), !1)),
1160
- signal: F
1161
- });
1162
- }
1163
- function isGroupFileInfo(d) {
1164
- return "defaultEffects" in d;
1165
- }
1166
- var UploadcareFile = class {
1167
- uuid;
1168
- name;
1169
- size;
1170
- isStored;
1171
- isImage;
1172
- mimeType;
1173
- cdnUrl;
1174
- s3Url;
1175
- originalFilename;
1176
- imageInfo;
1177
- videoInfo;
1178
- contentInfo;
1179
- metadata;
1180
- s3Bucket;
1181
- defaultEffects = null;
1182
- constructor(d, { baseCDN: m = defaultSettings.baseCDN, fileName: v } = {}) {
1183
- let { uuid: x, s3Bucket: w } = d, T = getUrl(m, `${x}/`), O = w ? getUrl(`https://${w}.s3.amazonaws.com/`, `${x}/${d.filename}`) : null;
1184
- this.uuid = x, this.name = v || d.filename, this.size = d.size, this.isStored = d.isStored, this.isImage = d.isImage, this.mimeType = d.mimeType, this.cdnUrl = T, this.originalFilename = d.originalFilename, this.imageInfo = d.imageInfo, this.videoInfo = d.videoInfo, this.contentInfo = d.contentInfo, this.metadata = d.metadata || null, this.s3Bucket = w || null, this.s3Url = O, isGroupFileInfo(d) && (this.defaultEffects = d.defaultEffects);
1185
- }
1186
- }, uploadDirect = (d, { publicKey: m, fileName: v, baseURL: x, secureSignature: w, secureExpire: T, store: O, contentType: M, signal: F, onProgress: U, source: W, integration: G, userAgent: K, retryThrottledRequestMaxTimes: q, retryNetworkErrorMaxTimes: J, baseCDN: Y, metadata: X }) => base(d, {
1187
- publicKey: m,
1188
- fileName: v,
1189
- contentType: M,
1190
- baseURL: x,
1191
- secureSignature: w,
1192
- secureExpire: T,
1193
- store: O,
1194
- signal: F,
1195
- onProgress: U,
1196
- source: W,
1197
- integration: G,
1198
- userAgent: K,
1199
- retryThrottledRequestMaxTimes: q,
1200
- retryNetworkErrorMaxTimes: J,
1201
- metadata: X
1202
- }).then(({ file: d }) => isReadyPoll(d, {
1203
- publicKey: m,
1204
- baseURL: x,
1205
- source: W,
1206
- integration: G,
1207
- userAgent: K,
1208
- retryThrottledRequestMaxTimes: q,
1209
- retryNetworkErrorMaxTimes: J,
1210
- onProgress: U,
1211
- signal: F
1212
- })).then((d) => new UploadcareFile(d, { baseCDN: Y })), uploadFromUploaded = (d, { publicKey: m, fileName: v, baseURL: x, signal: w, onProgress: T, source: O, integration: M, userAgent: F, retryThrottledRequestMaxTimes: U, retryNetworkErrorMaxTimes: W, baseCDN: G }) => info(d, {
1213
- publicKey: m,
1214
- baseURL: x,
1215
- signal: w,
1216
- source: O,
1217
- integration: M,
1218
- userAgent: F,
1219
- retryThrottledRequestMaxTimes: U,
1220
- retryNetworkErrorMaxTimes: W
1221
- }).then((d) => new UploadcareFile(d, {
1222
- baseCDN: G,
1223
- fileName: v
1224
- })).then((d) => (T && T({
1225
- isComputable: !0,
1226
- value: 1
1227
- }), d)), race = (d, { signal: m } = {}) => {
1228
- let v = null, x = null, w = d.map(() => new AbortController()), T = (d) => () => {
1229
- x = d, w.forEach((m, v) => v !== d && m.abort());
1230
- };
1231
- return onCancel(m, () => {
1232
- w.forEach((d) => d.abort());
1233
- }), Promise.all(d.map((d, m) => {
1234
- let x = T(m);
1235
- return Promise.resolve().then(() => d({
1236
- stopRace: x,
1237
- signal: w[m].signal
1238
- })).then((d) => (x(), d)).catch((d) => (v = d, null));
1239
- })).then((d) => {
1240
- if (x === null) throw v;
1241
- return d[x];
1242
- });
1243
- }, WebSocket = window.WebSocket, Events = class {
1244
- events = Object.create({});
1245
- emit(d, m) {
1246
- this.events[d]?.forEach((d) => d(m));
1247
- }
1248
- on(d, m) {
1249
- this.events[d] = this.events[d] || [], this.events[d].push(m);
1250
- }
1251
- off(d, m) {
1252
- m ? this.events[d] = this.events[d].filter((d) => d !== m) : this.events[d] = [];
1253
- }
1254
- }, response = (d, m) => d === "success" ? {
1255
- status: Status.Success,
1256
- ...m
1257
- } : d === "progress" ? {
1258
- status: Status.Progress,
1259
- ...m
1260
- } : {
1261
- status: Status.Error,
1262
- ...m
1263
- }, Pusher = class {
1264
- key;
1265
- disconnectTime;
1266
- ws = void 0;
1267
- queue = [];
1268
- isConnected = !1;
1269
- subscribers = 0;
1270
- emmitter = new Events();
1271
- disconnectTimeoutId = null;
1272
- constructor(d, m = 3e4) {
1273
- this.key = d, this.disconnectTime = m;
1274
- }
1275
- connect() {
1276
- this.disconnectTimeoutId && clearTimeout(this.disconnectTimeoutId), !this.isConnected && !this.ws && (this.ws = new WebSocket(`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`), this.ws.addEventListener("error", (d) => {
1277
- this.emmitter.emit("error", Error(d.message));
1278
- }), this.emmitter.on("connected", () => {
1279
- this.isConnected = !0, this.queue.forEach((d) => this.send(d.event, d.data)), this.queue = [];
1280
- }), this.ws.addEventListener("message", (d) => {
1281
- let m = JSON.parse(d.data.toString());
1282
- switch (m.event) {
1283
- case "pusher:connection_established":
1284
- this.emmitter.emit("connected", void 0);
1285
- break;
1286
- case "pusher:ping":
1287
- this.send("pusher:pong", {});
1288
- break;
1289
- case "progress":
1290
- case "success":
1291
- case "fail": this.emmitter.emit(m.channel, response(m.event, JSON.parse(m.data)));
1292
- }
1293
- }));
1294
- }
1295
- disconnect() {
1296
- let d = () => {
1297
- this.ws?.close(), this.ws = void 0, this.isConnected = !1;
1298
- };
1299
- this.disconnectTime ? this.disconnectTimeoutId = setTimeout(() => {
1300
- d();
1301
- }, this.disconnectTime) : d();
1302
- }
1303
- send(d, m) {
1304
- let v = JSON.stringify({
1305
- event: d,
1306
- data: m
1307
- });
1308
- this.ws?.send(v);
1309
- }
1310
- subscribe(d, m) {
1311
- this.subscribers += 1, this.connect();
1312
- let v = `task-status-${d}`, x = {
1313
- event: "pusher:subscribe",
1314
- data: { channel: v }
1315
- };
1316
- this.emmitter.on(v, m), this.isConnected ? this.send(x.event, x.data) : this.queue.push(x);
1317
- }
1318
- unsubscribe(d) {
1319
- --this.subscribers;
1320
- let m = `task-status-${d}`, v = {
1321
- event: "pusher:unsubscribe",
1322
- data: { channel: m }
1323
- };
1324
- this.emmitter.off(m), this.isConnected ? this.send(v.event, v.data) : this.queue = this.queue.filter((d) => d.data.channel !== m), this.subscribers === 0 && this.disconnect();
1325
- }
1326
- onError(d) {
1327
- return this.emmitter.on("error", d), () => this.emmitter.off("error", d);
1328
- }
1329
- }, pusher = null, getPusher = (d) => (pusher ||= new Pusher(d, typeof window > "u" ? 0 : 3e4), pusher), preconnect = (d) => {
1330
- getPusher(d).connect();
1331
- };
1332
- function pollStrategy({ token: d, publicKey: m, baseURL: v, integration: x, userAgent: w, retryThrottledRequestMaxTimes: T, retryNetworkErrorMaxTimes: O, onProgress: M, signal: F }) {
1333
- return poll({
1334
- check: (F) => fromUrlStatus(d, {
1335
- publicKey: m,
1336
- baseURL: v,
1337
- integration: x,
1338
- userAgent: w,
1339
- retryThrottledRequestMaxTimes: T,
1340
- retryNetworkErrorMaxTimes: O,
1341
- signal: F
1342
- }).then((m) => {
1343
- switch (m.status) {
1344
- case Status.Error: return new UploadError(m.error, m.errorCode);
1345
- case Status.Waiting: return !1;
1346
- case Status.Unknown: return new UploadError(`Token "${d}" was not found.`);
1347
- case Status.Progress: return M && (m.total === "unknown" ? M({ isComputable: !1 }) : M({
1348
- isComputable: !0,
1349
- value: m.done / m.total
1350
- })), !1;
1351
- case Status.Success: return M && M({
1352
- isComputable: !0,
1353
- value: m.done / m.total
1354
- }), m;
1355
- default: throw Error("Unknown status");
1356
- }
1357
- }),
1358
- signal: F
1359
- });
1360
- }
1361
- var pushStrategy = ({ token: d, pusherKey: m, signal: v, onProgress: x }) => new Promise((w, T) => {
1362
- let O = getPusher(m), M = O.onError(T), F = () => {
1363
- M(), O.unsubscribe(d);
1364
- };
1365
- onCancel(v, () => {
1366
- F(), T(new CancelError("pusher cancelled"));
1367
- }), O.subscribe(d, (d) => {
1368
- switch (d.status) {
1369
- case Status.Progress:
1370
- x && (d.total === "unknown" ? x({ isComputable: !1 }) : x({
1371
- isComputable: !0,
1372
- value: d.done / d.total
1373
- }));
1374
- break;
1375
- case Status.Success:
1376
- F(), x && x({
1377
- isComputable: !0,
1378
- value: d.done / d.total
1379
- }), w(d);
1380
- break;
1381
- case Status.Error: F(), T(new UploadError(d.msg, d.error_code));
1382
- }
1383
- });
1384
- }), uploadFromUrl = (d, { publicKey: m, fileName: v, baseURL: x, baseCDN: w, checkForUrlDuplicates: T, saveUrlForRecurrentUploads: O, secureSignature: M, secureExpire: F, store: U, signal: W, onProgress: G, source: K, integration: q, userAgent: J, retryThrottledRequestMaxTimes: Y, pusherKey: X = defaultSettings.pusherKey, metadata: mo }) => Promise.resolve(preconnect(X)).then(() => fromUrl(d, {
1385
- publicKey: m,
1386
- fileName: v,
1387
- baseURL: x,
1388
- checkForUrlDuplicates: T,
1389
- saveUrlForRecurrentUploads: O,
1390
- secureSignature: M,
1391
- secureExpire: F,
1392
- store: U,
1393
- signal: W,
1394
- source: K,
1395
- integration: q,
1396
- userAgent: J,
1397
- retryThrottledRequestMaxTimes: Y,
1398
- metadata: mo
1399
- })).catch((d) => (getPusher(X)?.disconnect(), Promise.reject(d))).then((d) => d.type === TypeEnum.FileInfo ? d : race([({ signal: v }) => pollStrategy({
1400
- token: d.token,
1401
- publicKey: m,
1402
- baseURL: x,
1403
- integration: q,
1404
- userAgent: J,
1405
- retryThrottledRequestMaxTimes: Y,
1406
- onProgress: G,
1407
- signal: v
1408
- }), ({ signal: m }) => pushStrategy({
1409
- token: d.token,
1410
- pusherKey: X,
1411
- signal: m,
1412
- onProgress: G
1413
- })], { signal: W })).then((d) => {
1414
- if (d instanceof UploadError) throw d;
1415
- return d;
1416
- }).then((d) => isReadyPoll(d.uuid, {
1417
- publicKey: m,
1418
- baseURL: x,
1419
- integration: q,
1420
- userAgent: J,
1421
- retryThrottledRequestMaxTimes: Y,
1422
- onProgress: G,
1423
- signal: W
1424
- })).then((d) => new UploadcareFile(d, { baseCDN: w })), memo = /* @__PURE__ */ new WeakMap(), getBlobFromReactNativeAsset = async (d) => {
1425
- if (memo.has(d)) return memo.get(d);
1426
- let m = await fetch(d.uri).then((d) => d.blob());
1427
- return memo.set(d, m), m;
1428
- }, getFileSize = async (d) => {
1429
- if (isFile(d) || isBlob(d)) return d.size;
1430
- if (isReactNativeAsset(d)) return (await getBlobFromReactNativeAsset(d)).size;
1431
- throw Error("Unknown file type. Cannot determine file size.");
1432
- }, isMultipart = (d, m = defaultSettings.multipartMinFileSize) => d >= m, isUuid = (d) => {
1433
- let m = /* @__PURE__ */ RegExp("[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}");
1434
- return !isFileData(d) && m.test(d);
1435
- }, isUrl = (d) => {
1436
- let m = /* @__PURE__ */ RegExp("^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$");
1437
- return !isFileData(d) && m.test(d);
1438
- }, runWithConcurrency = (d, m) => new Promise((v, x) => {
1439
- let w = [], T = !1, O = m.length, M = [...m], F = () => {
1440
- let d = m.length - M.length, U = M.shift();
1441
- U && U().then((m) => {
1442
- T || (w[d] = m, --O, O ? F() : v(w));
1443
- }).catch((d) => {
1444
- T = !0, x(d);
1445
- });
1446
- };
1447
- for (let m = 0; m < d; m++) F();
1448
- }), sliceChunk = (d, m, v, x) => {
1449
- let w = x * m, T = Math.min(w + x, v);
1450
- return d.slice(w, T);
1451
- }, prepareChunks = async (d, m, v) => (x) => sliceChunk(d, x, m, v), uploadPart = (d, m, { publicKey: v, contentType: x, onProgress: w, signal: T, integration: O, retryThrottledRequestMaxTimes: M, retryNetworkErrorMaxTimes: F }) => multipartUpload(d, m, {
1452
- publicKey: v,
1453
- contentType: x,
1454
- onProgress: w,
1455
- signal: T,
1456
- integration: O,
1457
- retryThrottledRequestMaxTimes: M,
1458
- retryNetworkErrorMaxTimes: F
1459
- }), uploadMultipart = async (d, { publicKey: m, fileName: v, fileSize: x, baseURL: w, secureSignature: T, secureExpire: O, store: M, signal: F, onProgress: U, source: W, integration: G, userAgent: K, retryThrottledRequestMaxTimes: q, retryNetworkErrorMaxTimes: J, contentType: Y, multipartChunkSize: X = defaultSettings.multipartChunkSize, maxConcurrentRequests: mo = defaultSettings.maxConcurrentRequests, baseCDN: Q, metadata: ho }) => {
1460
- let go = x ?? await getFileSize(d), _o, vo = (d, m) => {
1461
- if (!U) return;
1462
- _o ||= Array(d).fill(0);
1463
- let v = (d) => d.reduce((d, m) => d + m, 0);
1464
- return (x) => {
1465
- x.isComputable && (_o[m] = x.value, U({
1466
- isComputable: !0,
1467
- value: v(_o) / d
1468
- }));
1469
- };
1470
- };
1471
- return Y ||= getContentType(d), multipartStart(go, {
1472
- publicKey: m,
1473
- contentType: Y,
1474
- fileName: v || getFileName(d),
1475
- baseURL: w,
1476
- secureSignature: T,
1477
- secureExpire: O,
1478
- store: M,
1479
- signal: F,
1480
- source: W,
1481
- integration: G,
1482
- userAgent: K,
1483
- retryThrottledRequestMaxTimes: q,
1484
- retryNetworkErrorMaxTimes: J,
1485
- metadata: ho,
1486
- multipartChunkSize: X
1487
- }).then(async ({ uuid: v, parts: x }) => {
1488
- let w = await prepareChunks(d, go, X);
1489
- return Promise.all([v, runWithConcurrency(mo, x.map((d, v) => () => uploadPart(w(v), d, {
1490
- publicKey: m,
1491
- contentType: Y,
1492
- onProgress: vo(x.length, v),
1493
- signal: F,
1494
- integration: G,
1495
- retryThrottledRequestMaxTimes: q,
1496
- retryNetworkErrorMaxTimes: J
1497
- })))]);
1498
- }).then(([d]) => multipartComplete(d, {
1499
- publicKey: m,
1500
- baseURL: w,
1501
- source: W,
1502
- integration: G,
1503
- userAgent: K,
1504
- retryThrottledRequestMaxTimes: q,
1505
- retryNetworkErrorMaxTimes: J
1506
- })).then((d) => d.isReady ? d : isReadyPoll(d.uuid, {
1507
- publicKey: m,
1508
- baseURL: w,
1509
- source: W,
1510
- integration: G,
1511
- userAgent: K,
1512
- retryThrottledRequestMaxTimes: q,
1513
- retryNetworkErrorMaxTimes: J,
1514
- onProgress: U,
1515
- signal: F
1516
- })).then((d) => new UploadcareFile(d, { baseCDN: Q }));
1517
- };
1518
- async function uploadFile(d, { publicKey: m, fileName: v, baseURL: x = defaultSettings.baseURL, secureSignature: w, secureExpire: T, store: O, signal: M, onProgress: F, source: U, integration: W, userAgent: G, retryThrottledRequestMaxTimes: K, retryNetworkErrorMaxTimes: q, contentType: J, multipartMinFileSize: Y, multipartChunkSize: X, maxConcurrentRequests: mo, baseCDN: Q = defaultSettings.baseCDN, checkForUrlDuplicates: ho, saveUrlForRecurrentUploads: go, pusherKey: _o, metadata: vo }) {
1519
- if (isFileData(d)) {
1520
- let ho = await getFileSize(d);
1521
- return isMultipart(ho, Y) ? uploadMultipart(d, {
1522
- publicKey: m,
1523
- contentType: J,
1524
- multipartChunkSize: X,
1525
- fileSize: ho,
1526
- fileName: v,
1527
- baseURL: x,
1528
- secureSignature: w,
1529
- secureExpire: T,
1530
- store: O,
1531
- signal: M,
1532
- onProgress: F,
1533
- source: U,
1534
- integration: W,
1535
- userAgent: G,
1536
- maxConcurrentRequests: mo,
1537
- retryThrottledRequestMaxTimes: K,
1538
- retryNetworkErrorMaxTimes: q,
1539
- baseCDN: Q,
1540
- metadata: vo
1541
- }) : uploadDirect(d, {
1542
- publicKey: m,
1543
- fileName: v,
1544
- contentType: J,
1545
- baseURL: x,
1546
- secureSignature: w,
1547
- secureExpire: T,
1548
- store: O,
1549
- signal: M,
1550
- onProgress: F,
1551
- source: U,
1552
- integration: W,
1553
- userAgent: G,
1554
- retryThrottledRequestMaxTimes: K,
1555
- retryNetworkErrorMaxTimes: q,
1556
- baseCDN: Q,
1557
- metadata: vo
1558
- });
1559
- }
1560
- if (isUrl(d)) return uploadFromUrl(d, {
1561
- publicKey: m,
1562
- fileName: v,
1563
- baseURL: x,
1564
- baseCDN: Q,
1565
- checkForUrlDuplicates: ho,
1566
- saveUrlForRecurrentUploads: go,
1567
- secureSignature: w,
1568
- secureExpire: T,
1569
- store: O,
1570
- signal: M,
1571
- onProgress: F,
1572
- source: U,
1573
- integration: W,
1574
- userAgent: G,
1575
- retryThrottledRequestMaxTimes: K,
1576
- retryNetworkErrorMaxTimes: q,
1577
- pusherKey: _o,
1578
- metadata: vo
1579
- });
1580
- if (isUuid(d)) return uploadFromUploaded(d, {
1581
- publicKey: m,
1582
- fileName: v,
1583
- baseURL: x,
1584
- signal: M,
1585
- onProgress: F,
1586
- source: U,
1587
- integration: W,
1588
- userAgent: G,
1589
- retryThrottledRequestMaxTimes: K,
1590
- retryNetworkErrorMaxTimes: q,
1591
- baseCDN: Q
1592
- });
1593
- throw TypeError(`File uploading from "${d}" is not supported`);
1594
- }
1595
- var replaceUrlBase = (d, m) => {
1596
- try {
1597
- let v = new URL(d), x = new URL(m);
1598
- return v.protocol = x.protocol, v.hostname = x.hostname, v.port = x.port, v.toString();
1599
- } catch {
1600
- return d;
1601
- }
1602
- }, UploadcareGroup = class {
1603
- uuid;
1604
- filesCount;
1605
- totalSize;
1606
- isStored;
1607
- isImage;
1608
- cdnUrl;
1609
- files;
1610
- createdAt;
1611
- storedAt = null;
1612
- constructor(d, { baseCDN: m = defaultSettings.baseCDN } = {}) {
1613
- this.uuid = d.id, this.filesCount = d.filesCount;
1614
- let v = d.files.filter(Boolean);
1615
- this.totalSize = Object.values(v).reduce((d, m) => d + m.size, 0), this.isStored = !!d.datetimeStored, this.isImage = !!Object.values(v).filter((d) => d.isImage).length, this.cdnUrl = replaceUrlBase(d.cdnUrl, m), this.files = v.map((d) => new UploadcareFile(d, { baseCDN: m })), this.createdAt = d.datetimeCreated, this.storedAt = d.datetimeStored;
1616
- }
1617
- }, isFileDataArray = (d) => {
1618
- for (let m of d) if (!isFileData(m)) return !1;
1619
- return !0;
1620
- }, isUuidArray = (d) => {
1621
- for (let m of d) if (!isUuid(m)) return !1;
1622
- return !0;
1623
- }, isUrlArray = (d) => {
1624
- for (let m of d) if (!isUrl(m)) return !1;
1625
- return !0;
1626
- };
1627
- function uploadFileGroup(d, { publicKey: m, fileName: v, baseURL: x = defaultSettings.baseURL, secureSignature: w, secureExpire: T, store: O, signal: M, onProgress: F, source: U, integration: W, userAgent: G, retryThrottledRequestMaxTimes: K, retryNetworkErrorMaxTimes: q, contentType: J, multipartChunkSize: Y = defaultSettings.multipartChunkSize, baseCDN: X = defaultSettings.baseCDN, checkForUrlDuplicates: mo, saveUrlForRecurrentUploads: Q, jsonpCallback: ho }) {
1628
- if (!isFileDataArray(d) && !isUrlArray(d) && !isUuidArray(d)) throw TypeError(`Group uploading from "${d}" is not supported`);
1629
- let go, _o = !0, vo = d.length, yo = (d, m) => {
1630
- if (!F) return;
1631
- go ||= Array(d).fill(0);
1632
- let v = (m) => m.reduce((d, m) => d + m) / d;
1633
- return (d) => {
1634
- if (!d.isComputable || !_o) {
1635
- _o = !1, F({ isComputable: !1 });
1636
- return;
1637
- }
1638
- go[m] = d.value, F({
1639
- isComputable: !0,
1640
- value: v(go)
1641
- });
1642
- };
1643
- };
1644
- return Promise.all(d.map((d, F) => isFileData(d) || isUrl(d) ? uploadFile(d, {
1645
- publicKey: m,
1646
- fileName: v,
1647
- baseURL: x,
1648
- secureSignature: w,
1649
- secureExpire: T,
1650
- store: O,
1651
- signal: M,
1652
- onProgress: yo(vo, F),
1653
- source: U,
1654
- integration: W,
1655
- userAgent: G,
1656
- retryThrottledRequestMaxTimes: K,
1657
- retryNetworkErrorMaxTimes: q,
1658
- contentType: J,
1659
- multipartChunkSize: Y,
1660
- baseCDN: X,
1661
- checkForUrlDuplicates: mo,
1662
- saveUrlForRecurrentUploads: Q
1663
- }).then((d) => d.uuid) : d)).then((d) => group(d, {
1664
- publicKey: m,
1665
- baseURL: x,
1666
- jsonpCallback: ho,
1667
- secureSignature: w,
1668
- secureExpire: T,
1669
- signal: M,
1670
- source: U,
1671
- integration: W,
1672
- userAgent: G,
1673
- retryThrottledRequestMaxTimes: K,
1674
- retryNetworkErrorMaxTimes: q
1675
- }).then((d) => new UploadcareGroup(d, { baseCDN: X })).then((d) => (F && F({
1676
- isComputable: !0,
1677
- value: 1
1678
- }), d)));
1679
- }
1680
- var Queue = class {
1681
- _concurrency = 1;
1682
- _pending = [];
1683
- _running = 0;
1684
- _resolvers = /* @__PURE__ */ new Map();
1685
- _rejectors = /* @__PURE__ */ new Map();
1686
- constructor(d) {
1687
- this._concurrency = d;
1688
- }
1689
- run() {
1690
- let d = this._concurrency - this._running;
1691
- for (let m = 0; m < d; m++) {
1692
- let d = this._pending.shift();
1693
- if (!d) return;
1694
- let m = this._resolvers.get(d), v = this._rejectors.get(d);
1695
- if (!m || !v) throw Error("Unexpected behavior: resolver or rejector is undefined");
1696
- this._running += 1, d().finally(() => {
1697
- this._resolvers.delete(d), this._rejectors.delete(d), --this._running, this.run();
1698
- }).then((d) => m(d)).catch((d) => v(d));
1699
- }
1700
- }
1701
- add(d, { autoRun: m } = { autoRun: !0 }) {
1702
- return new Promise((v, x) => {
1703
- this._resolvers.set(d, v), this._rejectors.set(d, x), this._pending.push(d), m && this.run();
1704
- });
1705
- }
1706
- get pending() {
1707
- return this._pending.length;
1708
- }
1709
- get running() {
1710
- return this._running;
1711
- }
1712
- set concurrency(d) {
1713
- this._concurrency = d, this.run();
1714
- }
1715
- get concurrency() {
1716
- return this._concurrency;
1717
- }
1718
- };
1719
- const blockCtx = () => ({}), activityBlockCtx = (d) => ({
1720
- ...blockCtx(),
1721
- "*currentActivity": null,
1722
- "*currentActivityParams": {},
1723
- "*history": [],
1724
- "*historyBack": null,
1725
- "*closeModal": () => {
1726
- d.modalManager?.close(d.$["*currentActivity"]), d.pub("*currentActivity", null);
1727
- }
1728
- }), uploaderBlockCtx = (d) => ({
1729
- ...activityBlockCtx(d),
1730
- "*commonProgress": 0,
1731
- "*uploadList": [],
1732
- "*uploadQueue": new Queue(1),
1733
- "*collectionErrors": [],
1734
- "*collectionState": null,
1735
- "*groupInfo": null,
1736
- "*uploadTrigger": /* @__PURE__ */ new Set()
1737
- }), sharedConfigKey = (d) => `*cfg/${d}`, normalizeCdnOperation = (d) => {
1738
- if (typeof d != "string" || !d) return "";
1739
- let m = d.trim();
1740
- return m.startsWith("-/") ? m = m.slice(2) : m.startsWith("/") && (m = m.slice(1)), m.endsWith("/") && (m = m.slice(0, m.length - 1)), m;
1741
- }, joinCdnOperations = (...d) => d.filter((d) => typeof d == "string" && !!d).map((d) => normalizeCdnOperation(d)).join("/-/"), createCdnUrlModifiers = (...d) => {
1742
- let m = joinCdnOperations(...d);
1743
- return m ? `-/${m}/` : "";
1744
- };
1745
- function extractFilename(d) {
1746
- let m = new URL(d), v = m.pathname + m.search + m.hash, x = v.lastIndexOf("http"), w = v.lastIndexOf("/"), T = "";
1747
- return x >= 0 ? T = v.slice(x) : w >= 0 && (T = v.slice(w + 1)), T;
1748
- }
1749
- function extractUuid(d) {
1750
- let { pathname: m } = new URL(d), v = m.indexOf("/"), x = m.indexOf("/", v + 1);
1751
- return m.substring(v + 1, x);
1752
- }
1753
- function extractCdnUrlModifiers(d) {
1754
- let m = trimFilename(d), v = new URL(m), x = v.pathname.indexOf("/-/");
1755
- return x === -1 ? "" : v.pathname.substring(x).slice(1);
1756
- }
1757
- function extractOperations(d) {
1758
- return extractCdnUrlModifiers(d).split("/-/").filter(Boolean).map((d) => normalizeCdnOperation(d));
1759
- }
1760
- function trimFilename(d) {
1761
- let m = new URL(d), v = extractFilename(d), x = isFileUrl(v) ? splitFileUrl(v).pathname : v;
1762
- return m.pathname = m.pathname.replace(x, ""), m.search = "", m.hash = "", m.toString();
1763
- }
1764
- function isFileUrl(d) {
1765
- return d.startsWith("http");
1766
- }
1767
- function splitFileUrl(d) {
1768
- let m = new URL(d);
1769
- return {
1770
- pathname: `${m.origin}${m.pathname ?? ""}`,
1771
- search: m.search ?? "",
1772
- hash: m.hash ?? ""
1773
- };
1774
- }
1775
- const createCdnUrl = (d, m, v) => {
1776
- let x = new URL(trimFilename(d)), w = v ?? extractFilename(d), T = m ?? "";
1777
- if (x.pathname.startsWith("//") && (x.pathname = x.pathname.replace("//", "/")), w && isFileUrl(w)) {
1778
- let d = splitFileUrl(w);
1779
- x.pathname = `${x.pathname}${T}${d.pathname || ""}`, x.search = d.search, x.hash = d.hash;
1780
- } else x.pathname = `${x.pathname}${T}${w || ""}`;
1781
- return x.toString();
1782
- }, createOriginalUrl = (d, m) => {
1783
- let v = new URL(d);
1784
- return v.pathname = `${m}/`, v.toString();
1785
- }, stringToArray = (d, m = ",") => d.trim().split(m).map((d) => d.trim()).filter((d) => d.length > 0), OPERATIONS_DEFAULTS = Object.freeze({
1786
- brightness: 0,
1787
- exposure: 0,
1788
- gamma: 100,
1789
- contrast: 0,
1790
- saturation: 0,
1791
- vibrance: 0,
1792
- warmth: 0,
1793
- enhance: 0,
1794
- filter: 0,
1795
- rotate: 0,
1796
- mirror: !1,
1797
- flip: !1,
1798
- crop: void 0
1799
- });
1800
- var SUPPORTED_OPERATIONS_ORDERED = [
1801
- "enhance",
1802
- "brightness",
1803
- "exposure",
1804
- "gamma",
1805
- "contrast",
1806
- "saturation",
1807
- "vibrance",
1808
- "warmth",
1809
- "filter",
1810
- "mirror",
1811
- "flip",
1812
- "rotate",
1813
- "crop"
1814
- ];
1815
- function transformationToStr(d, m) {
1816
- if (typeof m == "number") {
1817
- let v = m;
1818
- return OPERATIONS_DEFAULTS[d] === v ? "" : `${d}/${v}`;
1819
- }
1820
- if (typeof m == "boolean") {
1821
- let v = m;
1822
- return OPERATIONS_DEFAULTS[d] === v ? "" : `${d}`;
1823
- }
1824
- if (d === "filter" && m) {
1825
- let { name: v, amount: x } = m;
1826
- return OPERATIONS_DEFAULTS.filter === x ? "" : `${d}/${v}/${x}`;
1827
- }
1828
- if (d === "crop" && m) {
1829
- let { dimensions: v, coords: x } = m;
1830
- return `${d}/${v.join("x")}/${x.join(",")}`;
1831
- }
1832
- return "";
1833
- }
1834
- function transformationsToOperations(d) {
1835
- return joinCdnOperations(...SUPPORTED_OPERATIONS_ORDERED.filter((m) => d[m] !== void 0 && d[m] !== null).map((m) => {
1836
- let v = d[m];
1837
- return transformationToStr(m, v);
1838
- }).filter((d) => !!d));
1839
- }
1840
- const COMMON_OPERATIONS = joinCdnOperations("format/auto", "progressive/yes");
1841
- var asNumber = ([d]) => d === void 0 ? void 0 : Number(d), asBoolean = () => !0, asFilter = ([d, m]) => ({
1842
- name: d,
1843
- amount: m === void 0 ? 100 : Number(m)
1844
- }), asCrop = ([d, m]) => {
1845
- if (!/\d+x\d+/.test(d) || !/\d+,\d+/.test(m)) throw Error("Crop by aspect ratio, percentage or alignment shortcuts is not supported.");
1846
- return {
1847
- dimensions: stringToArray(d, "x").map(Number),
1848
- coords: stringToArray(m).map(Number)
1849
- };
1850
- }, OPERATION_PROCESSORS = Object.freeze({
1851
- enhance: asNumber,
1852
- brightness: asNumber,
1853
- exposure: asNumber,
1854
- gamma: asNumber,
1855
- contrast: asNumber,
1856
- saturation: asNumber,
1857
- vibrance: asNumber,
1858
- warmth: asNumber,
1859
- filter: asFilter,
1860
- mirror: asBoolean,
1861
- flip: asBoolean,
1862
- rotate: asNumber,
1863
- crop: (d) => {
1864
- let [m, v] = d, { dimensions: x, coords: w } = asCrop([m, v]);
1865
- return {
1866
- dimensions: x,
1867
- coords: w
1868
- };
1869
- }
1870
- });
1871
- function operationsToTransformations(d) {
1872
- let m = {};
1873
- for (let v of d) {
1874
- let [d, ...x] = v.split("/");
1875
- if (!d || !SUPPORTED_OPERATIONS_ORDERED.includes(d)) continue;
1876
- let w = d, T = OPERATION_PROCESSORS[w];
1877
- try {
1878
- m[w] = T(x);
1879
- } catch (d) {
1880
- console.warn([
1881
- `Failed to parse URL operation "${v}". It will be ignored.`,
1882
- d instanceof Error ? `Error message: "${d.message}"` : d,
1883
- "If you need this functionality, please feel free to open an issue at https://github.com/uploadcare/blocks/issues/new"
1884
- ].join("\n"));
1885
- }
1886
- }
1887
- return m;
1888
- }
1889
- const TabId = Object.freeze({
1890
- CROP: "crop",
1891
- TUNING: "tuning",
1892
- FILTERS: "filters"
1893
- }), ALL_TABS = Object.freeze([
1894
- TabId.CROP,
1895
- TabId.TUNING,
1896
- TabId.FILTERS
1897
- ]), ALL_COLOR_OPERATIONS = Object.freeze([
1898
- "brightness",
1899
- "exposure",
1900
- "gamma",
1901
- "contrast",
1902
- "saturation",
1903
- "vibrance",
1904
- "warmth",
1905
- "enhance"
1906
- ]), ALL_FILTERS = Object.freeze(/* @__PURE__ */ "adaris.briaril.calarel.carris.cynarel.cyren.elmet.elonni.enzana.erydark.fenralan.ferand.galen.gavin.gethriel.iorill.iothari.iselva.jadis.lavra.misiara.namala.nerion.nethari.pamaya.sarnar.sedis.sewen.sorahel.sorlen.tarian.thellassan.varriel.varven.vevera.virkas.yedis.yllara.zatvel.zevcen".split(".")), ALL_CROP_OPERATIONS = Object.freeze([
1907
- "rotate",
1908
- "mirror",
1909
- "flip"
1910
- ]);
1911
- var NUMERIC_OPERATION_DEFAULTS = OPERATIONS_DEFAULTS;
1912
- const COLOR_OPERATIONS_CONFIG = Object.freeze({
1913
- brightness: {
1914
- zero: NUMERIC_OPERATION_DEFAULTS.brightness,
1915
- range: [-100, 100],
1916
- keypointsNumber: 2
1917
- },
1918
- exposure: {
1919
- zero: NUMERIC_OPERATION_DEFAULTS.exposure,
1920
- range: [-500, 500],
1921
- keypointsNumber: 2
1922
- },
1923
- gamma: {
1924
- zero: NUMERIC_OPERATION_DEFAULTS.gamma,
1925
- range: [0, 1e3],
1926
- keypointsNumber: 2
1927
- },
1928
- contrast: {
1929
- zero: NUMERIC_OPERATION_DEFAULTS.contrast,
1930
- range: [-100, 500],
1931
- keypointsNumber: 2
1932
- },
1933
- saturation: {
1934
- zero: NUMERIC_OPERATION_DEFAULTS.saturation,
1935
- range: [-100, 500],
1936
- keypointsNumber: 1
1937
- },
1938
- vibrance: {
1939
- zero: NUMERIC_OPERATION_DEFAULTS.vibrance,
1940
- range: [-100, 500],
1941
- keypointsNumber: 1
1942
- },
1943
- warmth: {
1944
- zero: NUMERIC_OPERATION_DEFAULTS.warmth,
1945
- range: [-100, 100],
1946
- keypointsNumber: 1
1947
- },
1948
- enhance: {
1949
- zero: NUMERIC_OPERATION_DEFAULTS.enhance,
1950
- range: [0, 100],
1951
- keypointsNumber: 1
1952
- },
1953
- filter: {
1954
- zero: NUMERIC_OPERATION_DEFAULTS.filter,
1955
- range: [0, 100],
1956
- keypointsNumber: 1
1957
- }
1958
- }), DEFAULT_CDN_CNAME = "https://ucarecdn.com";
1959
- var config = {
1960
- pubkey: "",
1961
- multiple: !0,
1962
- multipleMin: 0,
1963
- multipleMax: 2 ** 53 - 1,
1964
- confirmUpload: !1,
1965
- imgOnly: !1,
1966
- accept: "",
1967
- externalSourcesPreferredTypes: "",
1968
- externalSourcesEmbedCss: "",
1969
- store: "auto",
1970
- cameraMirror: !1,
1971
- cameraCapture: "",
1972
- sourceList: "local, url, camera, dropbox, gdrive",
1973
- topLevelOrigin: "",
1974
- maxLocalFileSizeBytes: 0,
1975
- thumbSize: 76,
1976
- showEmptyList: !1,
1977
- useLocalImageEditor: !1,
1978
- removeCopyright: !1,
1979
- cropPreset: "",
1980
- imageShrink: "",
1981
- modalScrollLock: !0,
1982
- modalBackdropStrokes: !1,
1983
- sourceListWrap: !0,
1984
- remoteTabSessionKey: "",
1985
- cdnCname: DEFAULT_CDN_CNAME,
1986
- cdnCnamePrefixed: "https://ucarecd.net",
1987
- baseUrl: "https://upload.uploadcare.com",
1988
- socialBaseUrl: "https://social.uploadcare.com",
1989
- secureSignature: "",
1990
- secureExpire: "",
1991
- secureDeliveryProxy: "",
1992
- retryThrottledRequestMaxTimes: 3,
1993
- retryNetworkErrorMaxTimes: 3,
1994
- multipartMinFileSize: 26214400,
1995
- multipartChunkSize: 5242880,
1996
- maxConcurrentRequests: 10,
1997
- multipartMaxConcurrentRequests: 4,
1998
- multipartMaxAttempts: 3,
1999
- checkForUrlDuplicates: !1,
2000
- saveUrlForRecurrentUploads: !1,
2001
- groupOutput: !1,
2002
- userAgentIntegration: "",
2003
- debug: !1,
2004
- metadata: null,
2005
- localeName: "en",
2006
- localeDefinitionOverride: null,
2007
- secureUploadsExpireThreshold: 600 * 1e3,
2008
- secureUploadsSignatureResolver: null,
2009
- secureDeliveryProxyUrlResolver: null,
2010
- iconHrefResolver: null,
2011
- fileValidators: [],
2012
- collectionValidators: [],
2013
- validationTimeout: 15 * 1e3,
2014
- validationConcurrency: 100,
2015
- cameraModes: "photo, video",
2016
- defaultCameraMode: null,
2017
- enableAudioRecording: !0,
2018
- enableVideoRecording: null,
2019
- maxVideoRecordingDuration: null,
2020
- mediaRecorderOptions: null,
2021
- filesViewMode: "list",
2022
- gridShowFileNames: !1,
2023
- useCloudImageEditor: !0,
2024
- cloudImageEditorAutoOpen: !1,
2025
- cloudImageEditorTabs: serializeCsv(ALL_TABS),
2026
- cloudImageEditorMaskHref: null,
2027
- testMode: !1,
2028
- qualityInsights: !0,
2029
- pasteScope: "local",
2030
- plugins: []
2031
- };
2032
- const initialConfig = Object.freeze(config), createDebugPrinter = (d, m) => (...v) => {
2033
- let x = d();
2034
- if (!x.read(sharedConfigKey("debug"))) return;
2035
- let w = v;
2036
- if (typeof v?.[0] == "function") {
2037
- let d = v[0];
2038
- w = d();
2039
- }
2040
- let T = [x.id, m].filter(Boolean);
2041
- console.log(`[${T.join("][")}]`, ...w);
2042
- };
2043
- var SharedInstance = class {
2044
- constructor(d) {
2045
- this._subscriptions = /* @__PURE__ */ new Set(), this._cfgProxy = null, this._debugPrint = createDebugPrinter(() => this._sharedInstancesBag.ctx, this.constructor.name), this._sharedInstancesBag = d, this._ctx = d.ctx;
2046
- }
2047
- addSub(d) {
2048
- this._subscriptions.add(d);
2049
- }
2050
- get _cfg() {
2051
- return this._cfgProxy ||= new Proxy({}, {
2052
- set: () => {
2053
- throw Error("SharedInstance cfg proxy is read-only");
2054
- },
2055
- get: (d, m) => {
2056
- if (typeof m != "string") return;
2057
- let v = sharedConfigKey(m);
2058
- return this._sharedInstancesBag.ctx.has(v) ? this._sharedInstancesBag.ctx.read(v) : initialConfig[m];
2059
- }
2060
- }), this._cfgProxy;
2061
- }
2062
- destroy() {
2063
- for (let d of this._subscriptions) try {
2064
- d();
2065
- } catch {}
2066
- this._subscriptions.clear();
2067
- }
2068
- }, instanceKeyMap = {
2069
- modalManager: "*modalManager",
2070
- pluginManager: "*pluginManager",
2071
- telemetryManager: "*telemetryManager",
2072
- localeManager: "*localeManager",
2073
- a11y: "*a11y",
2074
- clipboard: "*clipboard",
2075
- blocksRegistry: "*blocksRegistry",
2076
- eventEmitter: "*eventEmitter",
2077
- uploadCollection: "*uploadCollection",
2078
- secureUploadsManager: "*secureUploadsManager",
2079
- api: "*publicApi",
2080
- validationManager: "*validationManager"
2081
- };
2082
- const getSharedInstance = (d, m, v = !0) => {
2083
- let x = d.has(m), w = x ? d.read(m) : null;
2084
- if (x && w || !v) return w;
2085
- throw Error(`Unexpected error: shared instance for key "${String(m)}" is not available`);
2086
- }, createSharedInstancesBag = (d) => ({
2087
- get ctx() {
2088
- return d();
2089
- },
2090
- get modalManager() {
2091
- return getSharedInstance(d(), "*modalManager", !1);
2092
- },
2093
- get pluginManager() {
2094
- return getSharedInstance(d(), "*pluginManager");
2095
- },
2096
- get telemetryManager() {
2097
- return getSharedInstance(d(), "*telemetryManager");
2098
- },
2099
- get localeManager() {
2100
- return getSharedInstance(d(), "*localeManager");
2101
- },
2102
- get a11y() {
2103
- return getSharedInstance(d(), "*a11y");
2104
- },
2105
- get blocksRegistry() {
2106
- return getSharedInstance(d(), "*blocksRegistry");
2107
- },
2108
- get eventEmitter() {
2109
- return getSharedInstance(d(), "*eventEmitter");
2110
- },
2111
- get uploadCollection() {
2112
- return getSharedInstance(d(), "*uploadCollection");
2113
- },
2114
- get secureUploadsManager() {
2115
- return getSharedInstance(d(), "*secureUploadsManager", !1);
2116
- },
2117
- get api() {
2118
- return getSharedInstance(d(), "*publicApi");
2119
- },
2120
- get validationManager() {
2121
- return getSharedInstance(d(), "*validationManager");
2122
- },
2123
- when(m, v) {
2124
- let x = instanceKeyMap[m], w = d(), T = w.has(x) ? w.read(x) : void 0;
2125
- if (T) return v(T), () => {};
2126
- let O = w.sub(x, (d) => {
2127
- d && (v(d), O());
2128
- });
2129
- return O;
2130
- }
2131
- });
2132
- var ClipboardLayer = class extends SharedInstance {
2133
- constructor(d) {
2134
- super(d), this.scopes = /* @__PURE__ */ new Set(), this.listener = this._listener.bind(this), window.addEventListener("paste", this.listener);
2135
- }
2136
- openUploadList() {
2137
- this._sharedInstancesBag.api.setCurrentActivity(ACTIVITY_TYPES.UPLOAD_LIST), this._sharedInstancesBag.api.setModalState(!0);
2138
- }
2139
- async _listener(d) {
2140
- if (d.clipboardData) {
2141
- for (let m of this.scopes) if (m.isConnected) switch (this._cfg.pasteScope) {
2142
- case "global":
2143
- await this.handlePaste(d);
2144
- break;
2145
- case "local":
2146
- if (!m.contains(d.target)) continue;
2147
- await this.handlePaste(d);
2148
- break;
2149
- default: continue;
2150
- }
2151
- }
2152
- }
2153
- async handlePaste(d) {
2154
- let m = Array.from(d.clipboardData.items), v = m.map((d) => d.getAsFile()).filter((d) => d !== null), x = m.filter((d) => d.kind === "string" && d.type === "text/plain").map((d) => new Promise((m) => {
2155
- d.getAsString((d) => {
2156
- m(d);
2157
- });
2158
- }));
2159
- v.length > 0 && (v.forEach((d) => {
2160
- this._sharedInstancesBag.api.addFileFromObject(d, { source: "clipboard" });
2161
- }), this.openUploadList()), x.length > 0 && ((await Promise.all(x)).forEach((d) => {
2162
- this._sharedInstancesBag.api.addFileFromUrl(d, { source: "clipboard" });
2163
- }), this.openUploadList());
2164
- }
2165
- registerBlock(d) {
2166
- return this.scopes.add(d), () => {
2167
- this.scopes.delete(d);
2168
- };
2169
- }
2170
- destroy() {
2171
- super.destroy(), window.removeEventListener("paste", this.listener), this.scopes.clear();
2172
- }
2173
- }, ROLES = {
2174
- button: ["toolbar"],
2175
- checkbox: ["toolbar"],
2176
- menuitem: ["menu", "menubar"],
2177
- option: ["listbox"],
2178
- tab: ["tablist"]
2179
- };
2180
- function focus(d, m) {
2181
- m.tabIndex = 0, m.focus(), d.tabIndex = -1;
2182
- }
2183
- function findGroupNodeByEventTarget(d) {
2184
- let m = d.role || d.type || d.tagName;
2185
- if (!m) return null;
2186
- let v = ROLES[m.toLowerCase()];
2187
- if (!v) return null;
2188
- for (let m of v) {
2189
- let v = d.closest(`[role=${m}]`);
2190
- if (v) return v;
2191
- }
2192
- }
2193
- function getItems(d, m) {
2194
- return m.role === "toolbar" ? getToolbarItems(m) : m.querySelectorAll(`[role=${d.role}]`);
2195
- }
2196
- function getToolbarItems(d) {
2197
- return [...d.querySelectorAll("*")].filter((d) => d.role === "button" || d.type === "button" || d.role === "checkbox" || d.type === "checkbox");
2198
- }
2199
- function isHorizontalOrientation(d) {
2200
- let m = d.getAttribute("aria-orientation");
2201
- if (m === "vertical") return !1;
2202
- if (m === "horizontal") return !0;
2203
- let v = d.role;
2204
- return v === "menubar" || v === "tablist" || v === "toolbar";
2205
- }
2206
- function focusGroupKeyUX(d) {
2207
- return (m) => {
2208
- let v = !1, x = d?.searchDelayMs || 300, w = 0, T = "";
2209
- function O(d) {
2210
- let v = findGroupNodeByEventTarget(d.target);
2211
- if (!v) {
2212
- M();
2213
- return;
2214
- }
2215
- let O = getItems(d.target, v), F = Array.from(O).indexOf(d.target), U = "ArrowDown", W = "ArrowUp";
2216
- if (isHorizontalOrientation(v) && (m.document.dir === "rtl" ? (U = "ArrowLeft", W = "ArrowRight") : (U = "ArrowRight", W = "ArrowLeft")), d.key === U) d.preventDefault(), focus(d.target, O[F + 1] || O[0]);
2217
- else if (d.key === W) d.preventDefault(), focus(d.target, O[F - 1] || O[O.length - 1]);
2218
- else if (d.key === "Home") d.preventDefault(), focus(d.target, O[0]);
2219
- else if (d.key === "End") d.preventDefault(), focus(d.target, O[O.length - 1]);
2220
- else if (d.key.length === 1 && v.role !== "tablist") {
2221
- let m = Date.now();
2222
- m - w <= x ? T += d.key.toLowerCase() : T = d.key.toLowerCase(), w = m;
2223
- let v = Array.from(O).find((d) => d.textContent?.trim()?.toLowerCase()?.startsWith(T));
2224
- v && (d.preventDefault(), focus(d.target, v));
2225
- }
2226
- }
2227
- function M() {
2228
- v = !1, m.removeEventListener("keydown", O);
2229
- }
2230
- function F(d) {
2231
- let x = findGroupNodeByEventTarget(d.target);
2232
- if (x) {
2233
- v || (v = !0, m.addEventListener("keydown", O));
2234
- let w = getItems(d.target, x);
2235
- for (let m of w) m !== d.target && m.setAttribute("tabindex", -1);
2236
- } else v && M();
2237
- }
2238
- function U(d) {
2239
- (!d.relatedTarget || d.relatedTarget === m.document) && M();
2240
- }
2241
- function W(d) {
2242
- let m = findGroupNodeByEventTarget(d.target);
2243
- if (m) {
2244
- let v = getItems(d.target, m);
2245
- for (let m of v) m !== d.target && m.setAttribute("tabindex", -1);
2246
- d.target.setAttribute("tabindex", 0);
2247
- }
2248
- }
2249
- return m.addEventListener("click", W), m.addEventListener("focusin", F), m.addEventListener("focusout", U), () => {
2250
- M(), m.removeEventListener("click", W), m.removeEventListener("focusin", F), m.removeEventListener("focusout", U);
2251
- };
2252
- };
2253
- }
2254
- function hiddenKeyUX() {
2255
- return (d) => {
2256
- let m, v;
2257
- function x(d) {
2258
- if (d.target.getAttribute("aria-hidden") === "true") {
2259
- m = d.target, m.setAttribute("aria-hidden", "false"), v = m.hidden, v && (m.hidden = !1);
2260
- let x = d.target.querySelector("a, button, select, textarea, input:not([type=radio]), [type=radio]:checked, [tabindex]:not([tabindex=\"-1\"])");
2261
- x && (x.tabIndex = 0);
2262
- }
2263
- }
2264
- function w(d) {
2265
- m && m.contains(d.target) && (!d.relatedTarget || !m.contains(d.relatedTarget)) && (d.target.tabIndex = -1, m.setAttribute("aria-hidden", "true"), v && (m.hidden = !0), m = null);
2266
- }
2267
- return d.addEventListener("keyuxJump", x), d.addEventListener("focusout", w), () => {
2268
- d.removeEventListener("keyuxJump", x), d.removeEventListener("focusout", w);
2269
- };
2270
- };
2271
- }
2272
- function jumpKeyUX() {
2273
- return (d) => {
2274
- let m = [];
2275
- function v(v) {
2276
- let x = d.document.activeElement;
2277
- x && x !== d.document.body && m.push(new WeakRef(x)), v.focus({ focusVisible: !0 });
2278
- }
2279
- function x() {
2280
- let v = m.pop();
2281
- if (!v) {
2282
- d.document.activeElement.blur();
2283
- return;
2284
- }
2285
- let w = v.deref();
2286
- w && w.isConnected ? w.focus() : x();
2287
- }
2288
- let w = 0, T;
2289
- function O(m) {
2290
- clearInterval(T);
2291
- let x = m.getAttribute("aria-controls");
2292
- T = setInterval(() => {
2293
- if (w++ > 50) {
2294
- clearInterval(T);
2295
- return;
2296
- }
2297
- let m = d.document.getElementById(x);
2298
- if (m) {
2299
- let x = m.querySelector("a, button, select, textarea, input:not([type=radio]), [type=radio]:checked, [tabindex]:not([tabindex=\"-1\"])");
2300
- x && (clearInterval(T), m.dispatchEvent(new d.CustomEvent("keyuxJump", { bubbles: !0 })), v(x));
2301
- }
2302
- }, 50);
2303
- }
2304
- function M(d) {
2305
- d.target.getAttribute("aria-controls") && d.key === "Enter" && O(d.target), d.key === "Escape" && x();
2306
- }
2307
- return d.addEventListener("keydown", M), () => {
2308
- d.removeEventListener("keydown", M);
2309
- };
2310
- };
2311
- }
2312
- function pressKeyUX(d) {
2313
- let m, v = d.split(" "), x;
2314
- function w(d) {
2315
- d.key === "Enter" && (d.target.tagName === "BUTTON" || d.target.tagName === "A") && (T(), d.target.classList.add(...v), m = d.target, x = d.target);
2316
- }
2317
- function T() {
2318
- m && m.classList.remove(...v), x = null;
2319
- }
2320
- function O(d) {
2321
- d.clientX === 0 && d.clientY === 0 && x !== d.target && (T(), d.target.classList.add(...v), m = d.target);
2322
- }
2323
- return (d) => (d.addEventListener("click", O), d.addEventListener("keydown", w), d.addEventListener("keyup", T), () => {
2324
- d.removeEventListener("click", O), d.removeEventListener("keydown", w), d.removeEventListener("keyup", T);
2325
- });
2326
- }
2327
- function startKeyUX(d, m) {
2328
- let v = m.map((m) => m(d));
2329
- return () => {
2330
- v.forEach((d) => d());
2331
- };
2332
- }
2333
- var ScopedMinimalWindow = class {
2334
- constructor() {
2335
- this._listeners = /* @__PURE__ */ new Map(), this._scope = [];
2336
- }
2337
- addEventListener(d, m) {
2338
- let v = (d) => {
2339
- let v = d.target;
2340
- v instanceof Node && this._scope.some((d) => d === v || d.contains(v)) && m(d);
2341
- };
2342
- this._listeners.set(m, v), window.addEventListener(d, v);
2343
- }
2344
- removeEventListener(d, m) {
2345
- let v = this._listeners.get(m);
2346
- v && window.removeEventListener(d, v), this._listeners.delete(m);
2347
- }
2348
- get CustomEvent() {
2349
- return window.CustomEvent;
2350
- }
2351
- get document() {
2352
- return window.document;
2353
- }
2354
- get navigator() {
2355
- return window.navigator;
2356
- }
2357
- registerScope(d) {
2358
- this._scope.push(d);
2359
- }
2360
- destroy() {
2361
- this._scope = [];
2362
- for (let d of this._listeners.values()) window.removeEventListener("keydown", d), window.removeEventListener("keyup", d);
2363
- this._listeners.clear();
2364
- }
2365
- }, A11y = class {
2366
- constructor() {
2367
- this._scopedWindow = new ScopedMinimalWindow(), this._destroyKeyUX = startKeyUX(this._scopedWindow, [
2368
- focusGroupKeyUX(),
2369
- pressKeyUX("is-pressed"),
2370
- jumpKeyUX(),
2371
- hiddenKeyUX()
2372
- ]);
2373
- }
2374
- registerBlock(d) {
2375
- this._scopedWindow.registerScope(d);
2376
- }
2377
- destroy() {
2378
- this._destroyKeyUX?.(), this._scopedWindow.destroy();
2379
- }
2380
- }, en_default = {
2381
- "locale-id": "en",
2382
- "social-source-lang": "en",
2383
- "upload-file": "Upload file",
2384
- "upload-files": "Upload files",
2385
- "choose-file": "Choose file",
2386
- "choose-files": "Choose files",
2387
- "drop-files-here": "Drop files here",
2388
- "select-file-source": "Select file source",
2389
- selected: "Selected",
2390
- upload: "Upload",
2391
- "add-more": "Add more",
2392
- cancel: "Cancel",
2393
- "start-from-cancel": "Cancel",
2394
- clear: "Clear",
2395
- "camera-shot": "Shot",
2396
- "upload-url": "Import",
2397
- "upload-url-placeholder": "Paste link here",
2398
- "edit-image": "Edit image",
2399
- "edit-detail": "Details",
2400
- back: "Back",
2401
- done: "Done",
2402
- ok: "Ok",
2403
- "remove-from-list": "Remove",
2404
- no: "No",
2405
- yes: "Yes",
2406
- "confirm-your-action": "Confirm your action",
2407
- "are-you-sure": "Are you sure?",
2408
- "selected-count": "{{count}} of {{total}} selected",
2409
- "select-all": "Select all",
2410
- "deselect-all": "Deselect all",
2411
- "upload-error": "Upload error",
2412
- "validation-error": "Validation error",
2413
- "no-files": "No files selected",
2414
- browse: "Browse",
2415
- "not-uploaded-yet": "Not uploaded yet...",
2416
- file__one: "file",
2417
- file__other: "files",
2418
- error__one: "error",
2419
- error__other: "errors",
2420
- "header-uploading": "Uploading {{count}} {{plural:file(count)}}",
2421
- "header-failed": "{{count}} {{plural:error(count)}}",
2422
- "header-succeed": "{{count}} {{plural:file(count)}} uploaded",
2423
- "header-total": "{{count}} {{plural:file(count)}} selected",
2424
- "src-type-local": "From device",
2425
- "src-type-from-url": "From link",
2426
- "src-type-camera": "Camera",
2427
- "src-type-mobile-video-camera": "Video",
2428
- "src-type-mobile-photo-camera": "Photo",
2429
- "src-type-facebook": "Facebook",
2430
- "src-type-dropbox": "Dropbox",
2431
- "src-type-gdrive": "Google Drive",
2432
- "src-type-ngdrive": "Google Drive",
2433
- "src-type-gphotos": "Google Photos",
2434
- "src-type-flickr": "Flickr",
2435
- "src-type-vk": "VK",
2436
- "src-type-evernote": "Evernote",
2437
- "src-type-box": "Box",
2438
- "src-type-onedrive": "OneDrive",
2439
- "src-type-huddle": "Huddle",
2440
- "src-type-other": "Other",
2441
- "caption-from-url": "Import from link",
2442
- "caption-camera": "Camera",
2443
- "caption-edit-file": "Edit file",
2444
- "file-no-name": "No name...",
2445
- "toggle-fullscreen": "Toggle fullscreen",
2446
- "toggle-guides": "Toggle guides",
2447
- rotate: "Rotate",
2448
- "flip-vertical": "Flip vertical",
2449
- "flip-horizontal": "Flip horizontal",
2450
- apply: "Apply",
2451
- brightness: "Brightness",
2452
- contrast: "Contrast",
2453
- saturation: "Saturation",
2454
- exposure: "Exposure",
2455
- gamma: "Gamma",
2456
- vibrance: "Vibrance",
2457
- warmth: "Warmth",
2458
- enhance: "Enhance",
2459
- original: "Original",
2460
- resize: "Resize image",
2461
- crop: "Crop",
2462
- "select-color": "Select color",
2463
- text: "Text",
2464
- draw: "Draw",
2465
- "cancel-edit": "Cancel edit",
2466
- "tab-view": "Preview",
2467
- "tab-details": "Details",
2468
- "file-name": "Name",
2469
- "file-size": "Size",
2470
- "cdn-url": "CDN URL",
2471
- "file-size-unknown": "Unknown",
2472
- "camera-permissions-denied": "Camera access denied",
2473
- "camera-permissions-prompt": "Please allow access to the camera",
2474
- "camera-permissions-request": "Request access",
2475
- "files-count-limit-error-title": "Files count limit overflow",
2476
- "files-count-limit-error-too-few": "You’ve chosen {{total}} {{plural:file(total)}}. At least {{min}} {{plural:file(min)}} required.",
2477
- "files-count-limit-error-too-many": "You’ve chosen too many files. {{max}} {{plural:file(max)}} is maximum.",
2478
- "files-max-size-limit-error": "File is too big. Max file size is {{maxFileSize}}.",
2479
- "has-validation-errors": "File validation error occurred. Please, check your files before upload.",
2480
- "images-only-accepted": "Only image files are accepted.",
2481
- "file-type-not-allowed": "Uploading of these file types is not allowed.",
2482
- "some-files-were-not-uploaded": "Some files were not uploaded.",
2483
- "file-item-edit-button": "Edit",
2484
- "file-item-remove-button": "Remove",
2485
- "a11y-editor-tab-filters": "Filters",
2486
- "a11y-editor-tab-tuning": "Tuning",
2487
- "a11y-editor-tab-crop": "Crop",
2488
- "a11y-activity-header-button-close": "Close",
2489
- flip: "Flip",
2490
- mirror: "Mirror",
2491
- "a11y-cloud-editor-apply-filter": "Apply {{name}} filter",
2492
- "a11y-cloud-editor-apply-crop": "Apply {{name}} operation",
2493
- "a11y-cloud-editor-apply-tuning": "Apply {{name}} tuning",
2494
- "a11y-cloud-editor-apply-aspect-ratio": "Apply operation {{name}} {{value}}",
2495
- finished: "Finished",
2496
- failed: "Failed",
2497
- uploading: "Uploading",
2498
- idle: "Idle",
2499
- "a11y-file-item-status": "File {{fileName}} in status {{status}}",
2500
- "waiting-for": "Waiting for {{source}}",
2501
- "queued-uploading": "Queued for upload",
2502
- "queued-validation": "Queued for validation",
2503
- validation: "Validating",
2504
- "crop-to-shape": "Crop to {{value}}",
2505
- custom: "Freeform",
2506
- "freeform-crop": "Freeform crop"
2507
- }, localeRegistry = /* @__PURE__ */ new Map(), localeResolvers = /* @__PURE__ */ new Map(), defineLocaleSync = (d, m) => {
2508
- localeRegistry.has(d) && console.log(`Locale ${d} is already defined. Overwriting...`);
2509
- let v = {
2510
- ...en_default,
2511
- ...m
2512
- };
2513
- return localeRegistry.set(d, v), v;
2514
- }, defineLocaleAsync = (d, m) => {
2515
- localeResolvers.set(d, m);
2516
- };
2517
- const defineLocale = (d, m) => {
2518
- typeof m == "function" ? defineLocaleAsync(d, m) : defineLocaleSync(d, m);
2519
- }, resolveLocaleDefinition = async (d) => {
2520
- let m = localeRegistry.get(d);
2521
- if (!m) {
2522
- let v = localeResolvers.get(d);
2523
- if (!v) throw Error(`Locale ${d} is not defined`);
2524
- m = defineLocaleSync(d, await v());
2525
- }
2526
- return m;
2527
- };
2528
- defineLocale("en", en_default);
2529
- const localeStateKey = (d) => `*l10n/${d}`;
2530
- var LocaleManager = class extends SharedInstance {
2531
- constructor(d) {
2532
- super(d), this._localeName = "";
2533
- for (let [d, m] of Object.entries(en_default)) {
2534
- let v = this._ctx.has(localeStateKey(d)) ? !this._ctx.read(localeStateKey(d)) : !0;
2535
- this._ctx.add(localeStateKey(d), m, v);
2536
- }
2537
- let m = d.pluginManager;
2538
- m?.onPluginsChange && this.addSub(m.onPluginsChange(() => {
2539
- this._localeName && this._applyPluginLocales(this._localeName);
2540
- })), this.addSub(this._ctx.sub(sharedConfigKey("localeName"), async (d) => {
2541
- if (!d) return;
2542
- this._localeName = d;
2543
- let m = await resolveLocaleDefinition(d);
2544
- d !== "en" && this._localeName !== d || (this._applyPluginLocales(d), this._applyOverrides(d, m));
2545
- })), this.addSub(this._ctx.sub(sharedConfigKey("localeDefinitionOverride"), (d) => {
2546
- if (!d) return;
2547
- let m = d[this._localeName];
2548
- m && this._applyOverrides(this._localeName, m);
2549
- }));
2550
- }
2551
- _applyOverrides(d, m) {
2552
- let v = this._cfg.localeDefinitionOverride?.[d];
2553
- for (let [d, x] of Object.entries(m)) {
2554
- let m = v?.[d];
2555
- this._ctx.add(localeStateKey(d), m ?? x, !0);
2556
- }
2557
- }
2558
- _applyPluginLocales(d) {
2559
- let m = this._sharedInstancesBag.pluginManager;
2560
- if (!m) return;
2561
- let v = m.snapshot();
2562
- for (let m of v.i18n) {
2563
- let { pluginId: v, ...x } = m, w = x[d];
2564
- if (w) for (let [d, m] of Object.entries(w)) m !== void 0 && this._ctx.add(localeStateKey(d), m, !0);
2565
- }
2566
- }
2567
- };
2568
- const ModalEvents = Object.freeze({
2569
- ADD: "modal:add",
2570
- DELETE: "modal:delete",
2571
- OPEN: "modal:open",
2572
- CLOSE: "modal:close",
2573
- CLOSE_ALL: "modal:closeAll",
2574
- DESTROY: "modal:destroy"
2575
- });
2576
- var ModalManager = class extends SharedInstance {
2577
- constructor(...d) {
2578
- super(...d), this._modals = /* @__PURE__ */ new Map(), this._activeModals = /* @__PURE__ */ new Set(), this._subscribers = /* @__PURE__ */ new Map();
2579
- }
2580
- registerModal(d, m) {
2581
- this._modals.set(d, m), this._notify(ModalEvents.ADD, {
2582
- id: d,
2583
- modal: m
2584
- });
2585
- }
2586
- deleteModal(d) {
2587
- let m = this._modals.get(d);
2588
- return m ? (this._modals.delete(d), this._activeModals.delete(d), this._notify(ModalEvents.DELETE, {
2589
- id: d,
2590
- modal: m
2591
- }), !0) : !1;
2592
- }
2593
- open(d) {
2594
- let m = this._modals.get(d);
2595
- return m ? (this._activeModals.add(d), this._notify(ModalEvents.OPEN, {
2596
- modal: m,
2597
- id: d
2598
- }), !0) : (this._debugPrint(`Modal with ID "${d}" not found`), !1);
2599
- }
2600
- close(d) {
2601
- let m = this._modals.get(d);
2602
- return !m || !this._activeModals.has(d) ? (this._debugPrint(`Modal with ID "${d}" not found or not active`), !1) : (this._activeModals.delete(d), this._notify(ModalEvents.CLOSE, {
2603
- id: d,
2604
- modal: m
2605
- }), !0);
2606
- }
2607
- toggle(d) {
2608
- return this._modals.has(d) ? this._activeModals.has(d) ? this.close(d) : this.open(d) : (this._debugPrint(`Modal with ID "${d}" not found`), !1);
2609
- }
2610
- get hasActiveModals() {
2611
- return this._activeModals.size > 0;
2612
- }
2613
- back() {
2614
- if (this._activeModals.size === 0) return this._debugPrint("No active modals to go back from"), !1;
2615
- let d = Array.from(this._activeModals).pop();
2616
- return d ? this.close(d) : !1;
2617
- }
2618
- closeAll() {
2619
- let d = this._activeModals.size;
2620
- return this._activeModals.clear(), this._notify(ModalEvents.CLOSE_ALL, {}), d;
2621
- }
2622
- subscribe(d, m) {
2623
- return this._subscribers.has(d) || this._subscribers.set(d, /* @__PURE__ */ new Set()), this._subscribers.get(d)?.add(m), () => this.unsubscribe(d, m);
2624
- }
2625
- unsubscribe(d, m) {
2626
- this._subscribers.has(d) && this._subscribers.get(d)?.delete(m);
2627
- }
2628
- _notify(d, m) {
2629
- if (this._subscribers.has(d)) for (let v of this._subscribers.get(d) ?? /* @__PURE__ */ new Set()) try {
2630
- v(m);
2631
- } catch (d) {
2632
- this._sharedInstancesBag.telemetryManager.sendEventError(d, "modal subscriber"), this._debugPrint("Error in modal subscriber:", d);
2633
- }
2634
- }
2635
- destroy() {
2636
- super.destroy(), this.closeAll(), this._modals.clear(), this._subscribers.clear(), this._notify(ModalEvents.DESTROY, {});
2637
- }
2638
- }, CustomConfigRegistry = class {
2639
- constructor() {
2640
- this._definitions = /* @__PURE__ */ new Map();
2641
- }
2642
- register(d, m) {
2643
- if (this._definitions.has(m.name)) {
2644
- console.warn(`[CustomConfig] Config option "${m.name}" is already registered`);
2645
- return;
2646
- }
2647
- let v = {
2648
- attribute: !0,
2649
- ...m,
2650
- pluginId: d
2651
- };
2652
- this._definitions.set(m.name, v);
2653
- }
2654
- unregister(d) {
2655
- this._definitions.delete(d);
2656
- }
2657
- unregisterByPlugin(d) {
2658
- for (let [m, v] of this._definitions) v.pluginId === d && this._definitions.delete(m);
2659
- }
2660
- get(d) {
2661
- return this._definitions.get(d);
2662
- }
2663
- getAll() {
2664
- return new Map(this._definitions);
2665
- }
2666
- }, PluginManager = class extends SharedInstance {
2667
- constructor(d) {
2668
- super(d), this._plugins = /* @__PURE__ */ new Map(), this._sources = [], this._activities = [], this._fileActions = [], this._fileHooks = [], this._icons = [], this._i18n = [], this._subscribers = /* @__PURE__ */ new Set(), this._pluginsUpdate = Promise.resolve(), this.configRegistry = new CustomConfigRegistry(), this.addSub(this._ctx.sub(sharedConfigKey("plugins"), (d) => {
2669
- this._pluginsUpdate = this._pluginsUpdate.then(() => this._syncPlugins(d));
2670
- }));
2671
- }
2672
- onPluginsChange(d) {
2673
- return this._subscribers.add(d), () => {
2674
- this._subscribers.delete(d);
2675
- };
2676
- }
2677
- async _syncPlugins(d) {
2678
- let m = new Set(this._plugins.keys()), v = /* @__PURE__ */ new Set();
2679
- for (let x of d) {
2680
- if (v.has(x.id)) {
2681
- this._debugPrint(`Plugin "${x.id}" is already in the list, skipping duplicate`);
2682
- continue;
2683
- }
2684
- v.add(x.id);
2685
- let d = this._plugins.get(x.id);
2686
- if (!d || d.plugin !== x) try {
2687
- await this._registerPlugin(x);
2688
- } catch (d) {
2689
- this._purgeRegistrations(x.id), this._notifySubscribers(), this._debugPrint(`Plugin "${x.id}" setup failed`, d);
2690
- }
2691
- m.delete(x.id);
2692
- }
2693
- for (let d of m) this._unregisterPlugin(d);
2694
- }
2695
- async _registerPlugin(d) {
2696
- this._plugins.has(d.id) && this._unregisterPlugin(d.id);
2697
- let m = {
2698
- sources: [],
2699
- activities: [],
2700
- fileActions: [],
2701
- fileHooks: [],
2702
- icons: [],
2703
- i18n: []
2704
- }, v = [], x = {
2705
- registry: {
2706
- registerSource: (v) => this._register(this._sources, m.sources, d.id, v),
2707
- registerActivity: (v) => this._register(this._activities, m.activities, d.id, v),
2708
- registerFileAction: (v) => this._register(this._fileActions, m.fileActions, d.id, v),
2709
- registerFileHook: (v) => this._register(this._fileHooks, m.fileHooks, d.id, v),
2710
- registerIcon: (v) => this._register(this._icons, m.icons, d.id, v),
2711
- registerI18n: (v) => this._register(this._i18n, m.i18n, d.id, v),
2712
- registerConfig: (m) => {
2713
- this.configRegistry.register(d.id, m);
2714
- }
2715
- },
2716
- config: {
2717
- get: (d) => {
2718
- let m = sharedConfigKey(d);
2719
- return this._ctx.read(m);
2720
- },
2721
- subscribe: (d, m) => {
2722
- let x = sharedConfigKey(d), w = this._ctx.sub(x, (d) => {
2723
- m(d);
2724
- });
2725
- return v.push(w), w;
2726
- }
2727
- },
2728
- activity: {
2729
- getParams: () => this._ctx.read("*currentActivityParams"),
2730
- subscribeToParams: (d) => {
2731
- let m = this._ctx.sub("*currentActivityParams", (m) => {
2732
- d(m);
2733
- });
2734
- return v.push(m), m;
2735
- }
2736
- },
2737
- files: { update: (d, m) => {
2738
- let v = this._sharedInstancesBag.uploadCollection?.read(d);
2739
- v && (m.file !== void 0 && (v.setValue("file", m.file), v.setValue("fileSize", m.file.size)), m.cdnUrl !== void 0 && v.setValue("cdnUrl", m.cdnUrl), m.cdnUrlModifiers !== void 0 && v.setValue("cdnUrlModifiers", m.cdnUrlModifiers), m.mimeType !== void 0 && v.setValue("mimeType", m.mimeType));
2740
- } }
2741
- }, w = this._sharedInstancesBag.api, T;
2742
- try {
2743
- T = await d.setup({
2744
- pluginApi: x,
2745
- uploaderApi: w
2746
- }) ?? void 0;
2747
- } catch (d) {
2748
- for (let d of v) try {
2749
- d();
2750
- } catch (d) {
2751
- this._debugPrint("Failed to unsubscribe config listener", d);
2752
- }
2753
- throw d;
2754
- }
2755
- this._plugins.set(d.id, {
2756
- plugin: d,
2757
- exports: T,
2758
- registrations: m,
2759
- configSubscriptions: v
2760
- }), this._notifySubscribers();
2761
- }
2762
- _unregisterPlugin(d) {
2763
- let m = this._plugins.get(d);
2764
- if (m) {
2765
- this._purgeRegistrations(d);
2766
- for (let d of m.configSubscriptions) try {
2767
- d();
2768
- } catch (d) {
2769
- this._debugPrint("Failed to unsubscribe config listener", d);
2770
- }
2771
- m.exports?.dispose?.(), this._plugins.delete(d), this._notifySubscribers();
2772
- }
2773
- }
2774
- snapshot() {
2775
- return {
2776
- sources: [...this._sources],
2777
- activities: [...this._activities],
2778
- fileActions: [...this._fileActions],
2779
- fileHooks: [...this._fileHooks],
2780
- icons: [...this._icons],
2781
- i18n: [...this._i18n]
2782
- };
2783
- }
2784
- destroy() {
2785
- for (let d of Array.from(this._plugins.keys())) this._unregisterPlugin(d);
2786
- super.destroy();
2787
- }
2788
- _register(d, m, v, x) {
2789
- let w = {
2790
- ...x,
2791
- pluginId: v
2792
- };
2793
- return d.push(w), m.push(w), x;
2794
- }
2795
- _purgeRegistrations(d) {
2796
- this._sources = this._sources.filter((m) => m.pluginId !== d), this._activities = this._activities.filter((m) => m.pluginId !== d), this._fileActions = this._fileActions.filter((m) => m.pluginId !== d), this._fileHooks = this._fileHooks.filter((m) => m.pluginId !== d), this._icons = this._icons.filter((m) => m.pluginId !== d), this._i18n = this._i18n.filter((m) => m.pluginId !== d), this.configRegistry.unregisterByPlugin(d);
2797
- }
2798
- _notifySubscribers() {
2799
- for (let d of this._subscribers) try {
2800
- d();
2801
- } catch {}
2802
- }
2803
- };
2804
- function i$2(d) {
2805
- return d.replace(/[A-Z]/g, (d) => `_${d.toLowerCase()}`).replace(/__/g, "_");
2806
- }
2807
- function c(d) {
2808
- return Array.isArray(d) ? d.map((d) => typeof d == "object" && d ? c(d) : d) : typeof d != "object" || !d ? d : Object.fromEntries(Object.entries(d).map(([d, m]) => {
2809
- let v = i$2(d);
2810
- return typeof m == "object" && m ? [v, c(m)] : [v, m];
2811
- }));
2812
- }
2813
- function u(d) {
2814
- return {
2815
- ok: !0,
2816
- value: d
2817
- };
2818
- }
2819
- function a(d) {
2820
- return {
2821
- ok: !1,
2822
- error: d
2823
- };
2824
- }
2825
- var l = "https://tlm.uploadcare.com/api/", y = class {
2826
- constructor(d = l) {
2827
- this.baseUrl = d;
2828
- }
2829
- async base(d, m = {}) {
2830
- let v = `${this.baseUrl}${d}`;
2831
- try {
2832
- let d = await fetch(v, m);
2833
- if (!d.ok) return a(/* @__PURE__ */ Error(`Got non-200 response from "${v}". Status: ${d.status.toString()}`));
2834
- try {
2835
- return u(await d.json());
2836
- } catch (d) {
2837
- return a(/* @__PURE__ */ Error(`Error parsing JSON from "${v}". Error: ${d}`));
2838
- }
2839
- } catch (d) {
2840
- return a(/* @__PURE__ */ Error(`Error fetching data from "${v}". Error: ${d}`));
2841
- }
2842
- }
2843
- async post(d, m, v = {}) {
2844
- return await this.base(d, {
2845
- ...v,
2846
- method: "POST",
2847
- body: JSON.stringify(c(m)),
2848
- headers: {
2849
- "Content-Type": "application/json",
2850
- ...v.headers || {}
2851
- }
2852
- });
2853
- }
2854
- async get(d, m = {}) {
2855
- return await this.base(d, {
2856
- method: "GET",
2857
- ...m
2858
- });
2859
- }
2860
- }, p = async (d, m) => ({
2861
- success: !0,
2862
- data: m
2863
- }), f = async (d) => p(void 0, d), h = class extends y {
2864
- constructor() {
2865
- super();
2866
- }
2867
- async sendEvent(d, m) {
2868
- let v = await f(d);
2869
- if (!v.success) throw console.error("TelemetryAPIService: events: body is invalid", v.error), /* @__PURE__ */ Error("TelemetryAPIService: events: body is invalid");
2870
- return this.post("v1/events", d, m);
2871
- }
2872
- }, DEFAULT_DEBOUNCE_TIMEOUT = 20;
2873
- const InternalEventType = Object.freeze({
2874
- INIT_SOLUTION: "init-solution",
2875
- CHANGE_CONFIG: "change-config",
2876
- ACTION_EVENT: "action-event",
2877
- ERROR_EVENT: "error-event"
2878
- }), EventType = Object.freeze({
2879
- FILE_ADDED: "file-added",
2880
- FILE_REMOVED: "file-removed",
2881
- FILE_UPLOAD_START: "file-upload-start",
2882
- FILE_UPLOAD_PROGRESS: "file-upload-progress",
2883
- FILE_UPLOAD_SUCCESS: "file-upload-success",
2884
- FILE_UPLOAD_FAILED: "file-upload-failed",
2885
- FILE_URL_CHANGED: "file-url-changed",
2886
- MODAL_OPEN: "modal-open",
2887
- MODAL_CLOSE: "modal-close",
2888
- DONE_CLICK: "done-click",
2889
- UPLOAD_CLICK: "upload-click",
2890
- ACTIVITY_CHANGE: "activity-change",
2891
- COMMON_UPLOAD_START: "common-upload-start",
2892
- COMMON_UPLOAD_PROGRESS: "common-upload-progress",
2893
- COMMON_UPLOAD_SUCCESS: "common-upload-success",
2894
- COMMON_UPLOAD_FAILED: "common-upload-failed",
2895
- CHANGE: "change",
2896
- GROUP_CREATED: "group-created"
2897
- });
2898
- var EventEmitter = class extends SharedInstance {
2899
- constructor(...d) {
2900
- super(...d), this._timeoutStore = /* @__PURE__ */ new Map(), this._targets = /* @__PURE__ */ new Set();
2901
- }
2902
- bindTarget(d) {
2903
- return this._targets.add(d), () => {
2904
- this._targets.delete(d);
2905
- };
2906
- }
2907
- _dispatch(d, m) {
2908
- for (let v of this._targets) v.dispatchEvent(new CustomEvent(d, { detail: m }));
2909
- this._debugPrint?.(() => {
2910
- let v = m && typeof m == "object" ? { ...m } : m;
2911
- return [`event "${d}"`, v];
2912
- });
2913
- }
2914
- emit(d, m, v = {}) {
2915
- let { debounce: x } = v;
2916
- if (typeof x != "number" && !x) {
2917
- this._dispatch(d, typeof m == "function" ? m() : m);
2918
- return;
2919
- }
2920
- this._timeoutStore.has(d) && window.clearTimeout(this._timeoutStore.get(d));
2921
- let w = typeof x == "number" ? x : DEFAULT_DEBOUNCE_TIMEOUT, T = window.setTimeout(() => {
2922
- try {
2923
- let v = typeof m == "function" ? m() : m;
2924
- this._dispatch(d, v), this._timeoutStore.delete(d);
2925
- } catch (m) {
2926
- this._debugPrint?.(() => `Error while getting payload for event "${d}"`, m);
2927
- }
2928
- }, w);
2929
- this._timeoutStore.set(d, T);
2930
- }
2931
- destroy() {
2932
- for (let d of this._timeoutStore.values()) window.clearTimeout(d);
2933
- this._targets.clear();
2934
- }
2935
- };
2936
- const PACKAGE_NAME = "blocks", PACKAGE_VERSION = "1.28.0-alpha.1";
2937
- var UID = class d {
2938
- static generateFastUid() {
2939
- return `uid-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 11)}`;
2940
- }
2941
- static generateRandomUUID() {
2942
- let m = globalThis.crypto;
2943
- return m && typeof m.randomUUID == "function" ? m.randomUUID() : d.generateFastUid();
2944
- }
2945
- }, TelemetryManager = class extends SharedInstance {
2946
- constructor(d) {
2947
- super(d), this._sessionId = UID.generateRandomUUID(), this._config = structuredClone(initialConfig), this._initialized = !1, this._lastPayload = null, this._isEnabled = !1, this._telemetryInstance = new h(), this._queue = new Queue(10), this.addSub(this._ctx.sub(sharedConfigKey("qualityInsights"), (d) => {
2948
- this._isEnabled = !!d;
2949
- }));
2950
- for (let d of Object.keys(this._config)) this.addSub(this._ctx.sub(sharedConfigKey(d), (m) => {
2951
- this._isEnabled && (this._initialized && this._config[d] !== m && this.sendEvent({ eventType: InternalEventType.CHANGE_CONFIG }), this._setConfig(d, m));
2952
- }));
2953
- }
2954
- _init(d) {
2955
- d === InternalEventType.INIT_SOLUTION && !this._initialized && (this._initialized = !0);
2956
- }
2957
- _setConfig(d, m) {
2958
- this._config[d] !== m && (this._config[d] = m);
2959
- }
2960
- _formattingPayload(d) {
2961
- let m = d.payload ? { ...d.payload } : {};
2962
- m.activity &&= void 0;
2963
- let v = { ...d };
2964
- return (d.eventType === InternalEventType.INIT_SOLUTION || d.eventType === InternalEventType.CHANGE_CONFIG) && (v.config = this._config), {
2965
- ...v,
2966
- appVersion: PACKAGE_VERSION,
2967
- appName: PACKAGE_NAME,
2968
- sessionId: this._sessionId,
2969
- component: this._solution,
2970
- activity: this._activity,
2971
- projectPubkey: this._config.pubkey,
2972
- userAgent: navigator.userAgent,
2973
- eventType: v.eventType ?? "",
2974
- eventTimestamp: this._timestamp,
2975
- payload: {
2976
- location: this._location,
2977
- ...m
2978
- }
2979
- };
2980
- }
2981
- _excludedEvents(d) {
2982
- return !!(d && [
2983
- EventType.CHANGE,
2984
- EventType.COMMON_UPLOAD_PROGRESS,
2985
- EventType.FILE_ADDED,
2986
- EventType.FILE_REMOVED,
2987
- EventType.FILE_UPLOAD_START,
2988
- EventType.FILE_UPLOAD_PROGRESS,
2989
- EventType.FILE_UPLOAD_SUCCESS,
2990
- EventType.FILE_UPLOAD_FAILED
2991
- ].includes(d));
2992
- }
2993
- sendEvent(d) {
2994
- if (!this._isEnabled) return;
2995
- let m = this._formattingPayload({
2996
- eventType: d.eventType,
2997
- payload: d.payload,
2998
- config: d.config
2999
- });
3000
- this._init(d.eventType), !this._excludedEvents(d.eventType) && (this._lastPayload && this._checkObj(this._lastPayload, m) || this._queue.add(async () => {
3001
- this._lastPayload = m, await this._telemetryInstance.sendEvent(m);
3002
- }));
3003
- }
3004
- sendEventError(d, m = "unknown") {
3005
- this.sendEvent({
3006
- eventType: InternalEventType.ERROR_EVENT,
3007
- payload: { metadata: {
3008
- event: "error",
3009
- text: `Error in ${m}`,
3010
- error: d.message
3011
- } }
3012
- });
3013
- }
3014
- sendEventCloudImageEditor(d, m, v = {}) {
3015
- this.sendEvent({
3016
- eventType: InternalEventType.ACTION_EVENT,
3017
- payload: { metadata: {
3018
- tabId: m,
3019
- node: d.currentTarget?.tagName,
3020
- event: d.type,
3021
- ...v
3022
- } }
3023
- });
3024
- }
3025
- _checkObj(d, m) {
3026
- if (JSON.stringify(d) === JSON.stringify(m)) return !0;
3027
- if (typeof d != "object" || typeof m != "object" || d == null || m == null) return !1;
3028
- let v = Object.keys(d), x = Object.keys(m);
3029
- if (v.length !== x.length) return !1;
3030
- for (let x of v) if (!Object.hasOwn(m, x) || !this._checkObj(d[x], m[x])) return !1;
3031
- return !0;
3032
- }
3033
- get _timestamp() {
3034
- return Date.now();
3035
- }
3036
- get _solution() {
3037
- if (!this._ctx.has("*solution")) return null;
3038
- let d = this._ctx.read("*solution");
3039
- return d ? d.toLowerCase() : null;
3040
- }
3041
- get _activity() {
3042
- return this._ctx.has("*currentActivity") ? this._ctx.read("*currentActivity") : null;
3043
- }
3044
- get _location() {
3045
- return location.origin;
3046
- }
3047
- };
3048
- let clean = Symbol("clean");
3049
- var listenerQueue = [], lqIndex = 0, QUEUE_ITEMS_PER_LISTENER = 4;
3050
- let epoch = 0;
3051
- const atom = /* @__NO_SIDE_EFFECTS__ */ (d) => {
3052
- let m = [], v = {
3053
- get() {
3054
- return v.lc || v.listen(() => {})(), v.value;
3055
- },
3056
- lc: 0,
3057
- listen(d) {
3058
- return v.lc = m.push(d), () => {
3059
- for (let m = lqIndex + QUEUE_ITEMS_PER_LISTENER; m < listenerQueue.length;) listenerQueue[m] === d ? listenerQueue.splice(m, QUEUE_ITEMS_PER_LISTENER) : m += QUEUE_ITEMS_PER_LISTENER;
3060
- let x = m.indexOf(d);
3061
- ~x && (m.splice(x, 1), --v.lc || v.off());
3062
- };
3063
- },
3064
- notify(d, x) {
3065
- epoch++;
3066
- let w = !listenerQueue.length;
3067
- for (let w of m) listenerQueue.push(w, v.value, d, x);
3068
- if (w) {
3069
- for (lqIndex = 0; lqIndex < listenerQueue.length; lqIndex += QUEUE_ITEMS_PER_LISTENER) listenerQueue[lqIndex](listenerQueue[lqIndex + 1], listenerQueue[lqIndex + 2], listenerQueue[lqIndex + 3]);
3070
- listenerQueue.length = 0;
3071
- }
3072
- },
3073
- off() {},
3074
- set(d) {
3075
- let m = v.value;
3076
- m !== d && (v.value = d, v.notify(m));
3077
- },
3078
- subscribe(d) {
3079
- let m = v.listen(d);
3080
- return d(v.value), m;
3081
- },
3082
- value: d
3083
- };
3084
- return process.env.NODE_ENV !== "production" && (v[clean] = () => {
3085
- m = [], v.lc = 0, v.off();
3086
- }), v;
3087
- };
3088
- function listenKeys(d, m, v) {
3089
- let x = new Set(m).add(void 0);
3090
- return d.listen((d, m, w) => {
3091
- x.has(w) && v(d, m, w);
3092
- });
3093
- }
3094
- function subscribeKeys(d, m, v) {
3095
- let x = listenKeys(d, m, v);
3096
- return v(d.value), x;
3097
- }
3098
- const map = /* @__NO_SIDE_EFFECTS__ */ (d = {}) => {
3099
- let m = /* @__PURE__ */ atom(d);
3100
- return m.setKey = function(d, v) {
3101
- let x = m.value;
3102
- v === void 0 && d in m.value ? (m.value = { ...m.value }, delete m.value[d], m.notify(x, d)) : m.value[d] !== v && (m.value = {
3103
- ...m.value,
3104
- [d]: v
3105
- }, m.notify(x, d));
3106
- }, m;
3107
- };
3108
- var PubSub = class d {
3109
- static {
3110
- this._contexts = /* @__PURE__ */ new Map();
3111
- }
3112
- constructor(d, m) {
3113
- this._ctxId = d, this._store = m;
3114
- }
3115
- get id() {
3116
- return this._ctxId;
3117
- }
3118
- pub(d, m) {
3119
- d in this._store.get() || console.warn(`PubSub#pub: Key "${String(d)}" not found`), this._store.setKey(d, m);
3120
- }
3121
- sub(d, m, v = !0) {
3122
- return (v ? subscribeKeys : listenKeys)(this._store, [d], (v) => {
3123
- m(v[d]);
3124
- });
3125
- }
3126
- read(d) {
3127
- return d in this._store.get() || console.warn(`PubSub#read: Key "${String(d)}" not found`), this._store.get()[d];
3128
- }
3129
- add(d, m, v = !1) {
3130
- (!(d in this._store.get()) || v) && this._store.setKey(d, m);
3131
- }
3132
- has(d) {
3133
- return d in this._store.get();
3134
- }
3135
- get store() {
3136
- return this._store.get();
3137
- }
3138
- static registerCtx(m, v) {
3139
- if (d._contexts.has(v)) throw Error(`PubSub: Context with id "${v}" already exists`);
3140
- let x = /* @__PURE__ */ map(m);
3141
- return d._contexts.set(v, x), new d(v, x);
3142
- }
3143
- static deleteCtx(m) {
3144
- d._contexts.delete(m);
3145
- }
3146
- static getCtx(m) {
3147
- let v = d._contexts.get(m);
3148
- return v ? new d(m, v) : null;
3149
- }
3150
- static hasCtx(m) {
3151
- return d._contexts.has(m);
3152
- }
3153
- };
3154
- const getLocaleDirection = (d) => {
3155
- let m = new Intl.Locale(d), v = "ltr", x = m.getTextInfo?.().direction;
3156
- return x ? v = x : m.textInfo?.direction && (v = m.textInfo.direction), v;
3157
- };
3158
- var DEFAULT_TRANSFORMER = (d) => d, OPEN_TOKEN = "{{", CLOSE_TOKEN = "}}", PLURAL_PREFIX = "plural:";
3159
- function applyTemplateData(d, m = {}, v = {}) {
3160
- let { openToken: x = OPEN_TOKEN, closeToken: w = CLOSE_TOKEN, transform: T = DEFAULT_TRANSFORMER } = v;
3161
- for (let v in m) {
3162
- let O = m[v]?.toString(), M = typeof O == "string" ? T(O) : String(O);
3163
- d = d.replaceAll(x + v + w, M);
3164
- }
3165
- return d;
3166
- }
3167
- function getPluralObjects(d) {
3168
- let m = [], v = d.indexOf(OPEN_TOKEN);
3169
- for (; v !== -1;) {
3170
- let x = d.indexOf(CLOSE_TOKEN, v);
3171
- if (x === -1) break;
3172
- let w = d.substring(v + 2, x);
3173
- if (w.startsWith(PLURAL_PREFIX)) {
3174
- let T = d.substring(v + 2, x).replace(PLURAL_PREFIX, ""), O = T.substring(0, T.indexOf("(")), M = T.substring(T.indexOf("(") + 1, T.indexOf(")"));
3175
- m.push({
3176
- variable: w,
3177
- pluralKey: O,
3178
- countVariable: M
3179
- });
3180
- }
3181
- v = d.indexOf(OPEN_TOKEN, x);
3182
- }
3183
- return m;
3184
- }
3185
- function debounce(d, m) {
3186
- let v, x = ((...x) => {
3187
- v && clearTimeout(v), v = setTimeout(() => d(...x), m);
3188
- });
3189
- return x.cancel = () => {
3190
- v && clearTimeout(v);
3191
- }, x;
3192
- }
3193
- var WINDOW_HEIGHT_TRACKER_PROPERTY = "--uploadcare-blocks-window-height", WindowHeightTracker = class d {
3194
- static {
3195
- this.clientsRegistry = /* @__PURE__ */ new Set();
3196
- }
3197
- static {
3198
- this.flush = debounce(() => {
3199
- document.documentElement.style.setProperty(WINDOW_HEIGHT_TRACKER_PROPERTY, `${window.innerHeight}px`);
3200
- }, 100);
3201
- }
3202
- static registerClient(m) {
3203
- d.clientsRegistry.size === 0 && d.attachTracker(), d.clientsRegistry.add(m);
3204
- }
3205
- static unregisterClient(m) {
3206
- d.clientsRegistry.delete(m), d.clientsRegistry.size === 0 && d.detachTracker();
3207
- }
3208
- static attachTracker() {
3209
- window.addEventListener("resize", d.flush, {
3210
- passive: !0,
3211
- capture: !0
3212
- }), d.flush();
3213
- }
3214
- static detachTracker() {
3215
- window.removeEventListener("resize", d.flush, { capture: !0 }), document.documentElement.style.removeProperty(WINDOW_HEIGHT_TRACKER_PROPERTY);
3216
- }
3217
- }, SINGLE_QUOTE = "'", DOUBLE_QUOTE = "\"", ESCAPED_PATTERN = /\\([0-9a-fA-F]{1,6} ?)/g;
3218
- function hasLeadingTrailingQuotes(d) {
3219
- return d.length < 2 ? !1 : (d[0] === DOUBLE_QUOTE || d[0] === SINGLE_QUOTE) && (d[d.length - 1] === DOUBLE_QUOTE || d[d.length - 1] === SINGLE_QUOTE);
3220
- }
3221
- function trimQuotes(d) {
3222
- let m = d;
3223
- return (m[0] === DOUBLE_QUOTE || m[0] === SINGLE_QUOTE) && (m = m.slice(1)), (m[m.length - 1] === DOUBLE_QUOTE || m[m.length - 1] === SINGLE_QUOTE) && (m = m.slice(0, -1)), m;
3224
- }
3225
- function escapeQuotes(d) {
3226
- let m = "", v = "";
3227
- for (let x = 0; x < d.length; x++) {
3228
- let w = d[x + 1];
3229
- d[x] === "\\" && w === "\"" ? (m += "\\\"", x++) : d[x] === "\"" && v !== "\\" ? m += "\\\"" : m += d[x], v = d[x] ?? "";
3230
- }
3231
- return m;
3232
- }
3233
- function parseCssPropertyValue(d) {
3234
- let m = d;
3235
- hasLeadingTrailingQuotes(d) && (m = trimQuotes(m), m = m.replace(ESCAPED_PATTERN, (d, m) => String.fromCodePoint(parseInt(m.trim(), 16))), m = m.replaceAll("\\\n", "\\n"), m = escapeQuotes(m), m = DOUBLE_QUOTE + m + DOUBLE_QUOTE);
3236
- try {
3237
- return JSON.parse(m);
3238
- } catch {
3239
- return;
3240
- }
3241
- }
3242
- function CssDataMixin(d) {
3243
- class m extends d {
3244
- constructor(...d) {
3245
- super(...d), this._cssDataCache = null, this._computedStyle = null;
3246
- }
3247
- getCssData(d, m = !1) {
3248
- let v = this._cssDataCache ?? Object.create(null);
3249
- if (!Object.keys(v).includes(d) || !v[d]) {
3250
- this._computedStyle ||= window.getComputedStyle(this);
3251
- let x = this._computedStyle.getPropertyValue(d).trim();
3252
- try {
3253
- v[d] = parseCssPropertyValue(x);
3254
- } catch (x) {
3255
- m || console.warn(`CSS Data error: ${d}`, x), v[d] = null;
3256
- }
3257
- }
3258
- return this._cssDataCache = v, v[d];
3259
- }
3260
- }
3261
- return m;
3262
- }
3263
- function LightDomMixin(d) {
3264
- class m extends d {
3265
- constructor(...d) {
3266
- super(...d), this.willYield = !0, this._slotsMap = {}, this._initialLightDomChildren = null, this._hasAdoptedChildren = !1;
3267
- }
3268
- createRenderRoot() {
3269
- return this;
3270
- }
3271
- connectedCallback() {
3272
- this._initialLightDomChildren ||= Array.from(this.childNodes), super.connectedCallback();
3273
- }
3274
- _adoptChildren() {
3275
- if (this._hasAdoptedChildren) return;
3276
- this._hasAdoptedChildren = !0, this._slotsMap = {};
3277
- let d = Array.from(this.childNodes), m = d.length ? d : this._initialLightDomChildren ?? [];
3278
- for (let d of m) {
3279
- let m = this._getSlotNameForChild(d), v = this._slotsMap[m] ?? [];
3280
- d instanceof Element && (d.removeAttribute("slot"), d.removeAttribute("content-for")), v.push(d), this._slotsMap[m] = v;
3281
- }
3282
- this._initialLightDomChildren = null;
3283
- }
3284
- _getSlotNameForChild(d) {
3285
- return d instanceof Comment && d.nextSibling instanceof Element ? this._getSlotNameForChild(d.nextSibling) : "contentFor" in d ? d.contentFor || "" : d instanceof Element && d.hasAttribute("content-for") && d.getAttribute("content-for") || "";
3286
- }
3287
- _isTextNodeEmpty(d) {
3288
- return !d.textContent || !d.textContent.trim();
3289
- }
3290
- _isSlotEmpty(d) {
3291
- let m = this._slotsMap[d];
3292
- return !m || m.every((d) => d instanceof Comment || d instanceof Text && this._isTextNodeEmpty(d));
3293
- }
3294
- update(d) {
3295
- !this.hasUpdated && this.willYield && this._adoptChildren(), super.update(d);
3296
- }
3297
- yield(d, m) {
3298
- if (d === "" && !this._slotsMap[d] && !this._hasAdoptedChildren && this._initialLightDomChildren?.length) {
3299
- let m = [];
3300
- for (let d of this._initialLightDomChildren) d instanceof Element && (d.removeAttribute("slot"), d.removeAttribute("content-for")), m.push(d);
3301
- this._slotsMap[d] = m, this._hasAdoptedChildren = !0, this._initialLightDomChildren = null;
3302
- }
3303
- return b`
3304
- ${this._slotsMap[d]}
3305
- ${this._isSlotEmpty(d) ? m : void 0}
3306
- `;
3307
- }
3308
- }
3309
- return m;
3310
- }
3311
- const getPluralForm = (d, m) => new Intl.PluralRules(d).select(m), createPluralizer = (d) => (m, v) => {
3312
- let x = d();
3313
- return x(`${m}__${getPluralForm(x("locale-id") || "en", v)}`);
3314
- }, createL10n = (d) => {
3315
- let m = createPluralizer(() => v), v = (v, x = {}) => {
3316
- if (!v) return "";
3317
- let w = d().read(localeStateKey(v)) || v, T = getPluralObjects(w);
3318
- for (let d of T) x[d.variable] = m(d.pluralKey, Number(x[d.countVariable]));
3319
- return applyTemplateData(w, x);
3320
- };
3321
- return v;
3322
- };
3323
- function RegisterableElementMixin(d) {
3324
- class m extends d {
3325
- static reg(d) {
3326
- let m = this, v = window.customElements.get(d);
3327
- if (v) {
3328
- v !== m && console.warn([
3329
- `Element with tag name "${d}" already registered.`,
3330
- `You're trying to override it with another class "${this.name}".`,
3331
- "This is most likely a mistake.",
3332
- "New element will not be registered."
3333
- ].join("\n"));
3334
- return;
3335
- }
3336
- window.customElements.define(d, m);
3337
- }
3338
- }
3339
- return m;
3340
- }
3341
- /**
3342
- * @license
3343
- * Copyright 2021 Google LLC
3344
- * SPDX-License-Identifier: BSD-3-Clause
3345
- */
3346
- var s$1 = class extends Event {
3347
- constructor(d, m, v, x) {
3348
- super("context-request", {
3349
- bubbles: !0,
3350
- composed: !0
3351
- }), this.context = d, this.contextTarget = m, this.callback = v, this.subscribe = x ?? !1;
3352
- }
3353
- };
3354
- /**
3355
- * @license
3356
- * Copyright 2021 Google LLC
3357
- * SPDX-License-Identifier: BSD-3-Clause
3358
- */
3359
- function n$1(d) {
3360
- return d;
3361
- }
3362
- /**
3363
- * @license
3364
- * Copyright 2021 Google LLC
3365
- * SPDX-License-Identifier: BSD-3-Clause
3366
- */ var s = class {
3367
- constructor(d, m, v, x) {
3368
- if (this.subscribe = !1, this.provided = !1, this.value = void 0, this.t = (d, m) => {
3369
- this.unsubscribe && (this.unsubscribe !== m && (this.provided = !1, this.unsubscribe()), this.subscribe || this.unsubscribe()), this.value = d, this.host.requestUpdate(), this.provided && !this.subscribe || (this.provided = !0, this.callback && this.callback(d, m)), this.unsubscribe = m;
3370
- }, this.host = d, m.context !== void 0) {
3371
- let d = m;
3372
- this.context = d.context, this.callback = d.callback, this.subscribe = d.subscribe ?? !1;
3373
- } else this.context = m, this.callback = v, this.subscribe = x ?? !1;
3374
- this.host.addController(this);
3375
- }
3376
- hostConnected() {
3377
- this.dispatchRequest();
3378
- }
3379
- hostDisconnected() {
3380
- this.unsubscribe &&= (this.unsubscribe(), void 0);
3381
- }
3382
- dispatchRequest() {
3383
- this.host.dispatchEvent(new s$1(this.context, this.host, this.t, this.subscribe));
3384
- }
3385
- }, s$2 = class {
3386
- get value() {
3387
- return this.o;
3388
- }
3389
- set value(d) {
3390
- this.setValue(d);
3391
- }
3392
- setValue(d, m = !1) {
3393
- let v = m || !Object.is(d, this.o);
3394
- this.o = d, v && this.updateObservers();
3395
- }
3396
- constructor(d) {
3397
- this.subscriptions = /* @__PURE__ */ new Map(), this.updateObservers = () => {
3398
- for (let [d, { disposer: m }] of this.subscriptions) d(this.o, m);
3399
- }, d !== void 0 && (this.value = d);
3400
- }
3401
- addCallback(d, m, v) {
3402
- if (!v) return void d(this.value);
3403
- this.subscriptions.has(d) || this.subscriptions.set(d, {
3404
- disposer: () => {
3405
- this.subscriptions.delete(d);
3406
- },
3407
- consumerHost: m
3408
- });
3409
- let { disposer: x } = this.subscriptions.get(d);
3410
- d(this.value, x);
3411
- }
3412
- clearCallbacks() {
3413
- this.subscriptions.clear();
3414
- }
3415
- }, e = class extends Event {
3416
- constructor(d, m) {
3417
- super("context-provider", {
3418
- bubbles: !0,
3419
- composed: !0
3420
- }), this.context = d, this.contextTarget = m;
3421
- }
3422
- }, i$1 = class extends s$2 {
3423
- constructor(d, m, v) {
3424
- super(m.context === void 0 ? v : m.initialValue), this.onContextRequest = (d) => {
3425
- if (d.context !== this.context) return;
3426
- let m = d.contextTarget ?? d.composedPath()[0];
3427
- m !== this.host && (d.stopPropagation(), this.addCallback(d.callback, m, d.subscribe));
3428
- }, this.onProviderRequest = (d) => {
3429
- if (d.context !== this.context || (d.contextTarget ?? d.composedPath()[0]) === this.host) return;
3430
- let m = /* @__PURE__ */ new Set();
3431
- for (let [d, { consumerHost: v }] of this.subscriptions) m.has(d) || (m.add(d), v.dispatchEvent(new s$1(this.context, v, d, !0)));
3432
- d.stopPropagation();
3433
- }, this.host = d, m.context === void 0 ? this.context = m : this.context = m.context, this.attachListeners(), this.host.addController?.(this);
3434
- }
3435
- attachListeners() {
3436
- this.host.addEventListener("context-request", this.onContextRequest), this.host.addEventListener("context-provider", this.onProviderRequest);
3437
- }
3438
- hostConnected() {
3439
- this.host.dispatchEvent(new e(this.context, this.host));
3440
- }
3441
- };
3442
- function __decorate(d, m, v, x) {
3443
- var w = arguments.length, T = w < 3 ? m : x === null ? x = Object.getOwnPropertyDescriptor(m, v) : x, O;
3444
- if (typeof Reflect == "object" && typeof Reflect.decorate == "function") T = Reflect.decorate(d, m, v, x);
3445
- else for (var M = d.length - 1; M >= 0; M--) (O = d[M]) && (T = (w < 3 ? O(T) : w > 3 ? O(m, v, T) : O(m, v)) || T);
3446
- return w > 3 && T && Object.defineProperty(m, v, T), T;
3447
- }
3448
- const ctxNameContext = n$1("ctx-name-context");
3449
- function SymbioteMixin() {
3450
- return function(d) {
3451
- class m extends d {
3452
- static set template(d) {
3453
- console.error("Caution: static 'template' property is deprecated and has no effect. See https://github.com/uploadcare/file-uploader/releases/tag/v1.25.0 for details.");
3454
- }
3455
- get _ctxNameAttr() {
3456
- return this._ctxNameAttrValue;
3457
- }
3458
- set _ctxNameAttr(d) {
3459
- let m = d ?? void 0;
3460
- this._ctxNameAttrValue !== m && (this._ctxNameAttrValue = m, this._handleCtxNameSourceChange());
3461
- }
3462
- shouldUpdate(d) {
3463
- return this._isInitialized ? super.shouldUpdate(d) : !1;
3464
- }
3465
- constructor(...d) {
3466
- super(...d), this._symbioteSharedPubSub = null, this._symbioteFirstUpdated = !1, this._needsReconnectInit = !1, this._ctxNameProvider = void 0, this._pendingSharedAdds = /* @__PURE__ */ new Map(), this._symbioteSubscriptions = /* @__PURE__ */ new Set(), this.init$ = {}, this.ctxOwner = !1, this._ctxNameAttrValue = void 0, this._pendingCtxInitOnConnect = !1, this.ctxName = this._effectiveCtxName, this._isInitialized = !1, this._ctxNameAttrValue = this.getAttribute("ctx-name") || void 0, this.ctxName = this._effectiveCtxName, this._ctxNameConsumer = new s(this, {
3467
- context: ctxNameContext,
3468
- callback: (d) => {
3469
- if (!d) {
3470
- console.error("SymbioteMixin: Received invalid ctx-name from context");
3471
- return;
3472
- }
3473
- this._ctxNameFromContext = d, this._handleCtxNameSourceChange();
3474
- },
3475
- subscribe: !0
3476
- });
3477
- }
3478
- get _effectiveCtxName() {
3479
- return this._ctxNameAttr || this._ctxNameFromContext || void 0;
3480
- }
3481
- _handleCtxNameSourceChange() {
3482
- if (this.ctxName = this._effectiveCtxName, !(!this.ctxName || this._symbioteFirstUpdated)) {
3483
- if (this.isConnected) {
3484
- this._performInitialization();
3485
- return;
3486
- }
3487
- this._pendingCtxInitOnConnect = !0;
3488
- }
3489
- }
3490
- willUpdate(d) {
3491
- super.willUpdate(d), this.ctxName = this._effectiveCtxName, this.ctxName && (this._ctxNameProvider ? this._ctxNameProvider.setValue(this.ctxName) : this._ctxNameProvider = new i$1(this, {
3492
- context: ctxNameContext,
3493
- initialValue: this.ctxName
3494
- }));
3495
- }
3496
- _applyPendingSharedAdds() {
3497
- if (!(!this._symbioteSharedPubSub || this._pendingSharedAdds.size === 0)) {
3498
- for (let [d, { value: m, rewrite: v }] of this._pendingSharedAdds) this._symbioteSharedPubSub.add(d, m, v);
3499
- this._pendingSharedAdds.clear();
3500
- }
3501
- }
3502
- _getSharedPubSub() {
3503
- return !this._symbioteSharedPubSub && this._effectiveCtxName && this._initSharedContext(), this._symbioteSharedPubSub && this._applyPendingSharedAdds(), this._symbioteSharedPubSub;
3504
- }
3505
- _requireSharedPubSub() {
3506
- let d = this._getSharedPubSub();
3507
- if (!d) throw Error("SymbioteMixin: Shared context is not initialized.");
3508
- return d;
3509
- }
3510
- _initSharedContext() {
3511
- let d = this.init$, m = this._effectiveCtxName;
3512
- if (!m) {
3513
- console.error("SymbioteMixin: ctx-name is required for components with shared properties (*)");
3514
- return;
3515
- }
3516
- if (!this._symbioteSharedPubSub) {
3517
- this._symbioteSharedPubSub = PubSub.getCtx(m) ?? PubSub.registerCtx(d, m);
3518
- for (let [d, m] of Object.entries(this.init$)) this._symbioteSharedPubSub.add(d, m, this.ctxOwner);
3519
- this._applyPendingSharedAdds();
3520
- }
3521
- }
3522
- get $() {
3523
- return this._effectiveCtxName && this._initSharedContext(), new Proxy({}, {
3524
- get: (d, m) => {
3525
- if (typeof m == "string") return this._symbioteSharedPubSub?.read(m);
3526
- },
3527
- set: (d, m, v) => (typeof m == "string" && this._symbioteSharedPubSub?.pub(m, v), !0)
3528
- });
3529
- }
3530
- sub(d, m, v = !0) {
3531
- let x = this._requireSharedPubSub().sub(d, m, v);
3532
- if (!x || typeof x != "function") return () => {};
3533
- let w = x.bind(x), T = !1, O = () => {
3534
- T || (T = !0, w(), this._symbioteSubscriptions.delete(O));
3535
- };
3536
- return this._symbioteSubscriptions.add(O), O;
3537
- }
3538
- pub(d, m) {
3539
- this._requireSharedPubSub().pub(d, m);
3540
- }
3541
- set$(d) {
3542
- for (let [m, v] of Object.entries(d)) this.pub(m, v);
3543
- }
3544
- get sharedCtx() {
3545
- return this._requireSharedPubSub();
3546
- }
3547
- has(d) {
3548
- return this._symbioteSharedPubSub?.has(d) ?? !1;
3549
- }
3550
- add(d, m, v = !1) {
3551
- let x = this._getSharedPubSub();
3552
- if (!x) {
3553
- if (!v && this._pendingSharedAdds.has(d)) return;
3554
- this._pendingSharedAdds.set(d, {
3555
- value: m,
3556
- rewrite: v
3557
- });
3558
- return;
3559
- }
3560
- this._pendingSharedAdds.delete(d), x.add(d, m, v);
3561
- }
3562
- add$(d, m = !1) {
3563
- for (let [v, x] of Object.entries(d)) this.add(v, x, m);
3564
- }
3565
- connectedCallback() {
3566
- super.connectedCallback(), this._symbioteFirstUpdated ? this._isInitialized && this._needsReconnectInit && (this._needsReconnectInit = !1, this.initCallback()) : (this.ctxName || this._pendingCtxInitOnConnect && this._effectiveCtxName) && (this._pendingCtxInitOnConnect = !1, this._performInitialization());
3567
- }
3568
- _performInitialization() {
3569
- if (this._symbioteFirstUpdated) return;
3570
- this._symbioteFirstUpdated = !0, this._initSharedContext();
3571
- let d = this.init$;
3572
- if (Object.keys(d).length > 0) {
3573
- let m = this._requireSharedPubSub();
3574
- for (let [v, x] of Object.entries(d)) m.read(v) === void 0 && m.pub(v, x), this.sub(v, debounce(async () => {
3575
- this.isConnected && (await this.updateComplete, this.requestUpdate());
3576
- }, 0), !1);
3577
- }
3578
- this.initCallback(), this._isInitialized = !0, this.requestUpdate();
3579
- }
3580
- firstUpdated(d) {
3581
- super.firstUpdated(d);
3582
- }
3583
- disconnectedCallback() {
3584
- this._cleanupSymbioteSubscriptions(), super.disconnectedCallback(), this._symbioteFirstUpdated && (this._needsReconnectInit = !0);
3585
- }
3586
- _cleanupSymbioteSubscriptions() {
3587
- if (this._symbioteSubscriptions.size !== 0) {
3588
- for (let d of [...this._symbioteSubscriptions]) d();
3589
- this._symbioteSubscriptions.clear();
3590
- }
3591
- }
3592
- initCallback() {}
3593
- }
3594
- return __decorate([n({
3595
- type: String,
3596
- attribute: "ctx-name",
3597
- noAccessor: !0
3598
- })], m.prototype, "_ctxNameAttr", null), __decorate([r()], m.prototype, "_ctxNameFromContext", void 0), __decorate([r()], m.prototype, "ctxName", void 0), __decorate([r()], m.prototype, "_isInitialized", void 0), m;
3599
- };
3600
- }
3601
- var isCustomElement = (d) => d.tagName?.includes("-") ?? !1, TestModeController = class {
3602
- constructor(d) {
3603
- this._trackedElements = /* @__PURE__ */ new Set(), this._originalValues = /* @__PURE__ */ new Map(), this._enabled = !1, this._host = d, this._host.addController(this);
3604
- }
3605
- hostDisconnected() {
3606
- this._unsubscribe?.(), this._unsubscribe = void 0, this._trackedElements.clear(), this._originalValues.clear();
3607
- }
3608
- hostUpdated() {
3609
- !this._unsubscribe && this._host.has(sharedConfigKey("testMode")) && (this._unsubscribe = this._host.subConfigValue("testMode", (d) => {
3610
- this._enabled = !!d, this._applyTestMode();
3611
- })), this._collectElements(), this._applyTestMode();
3612
- }
3613
- _collectElements() {
3614
- let d = this._host, m = d.renderRoot ?? d;
3615
- if (!m) return;
3616
- let v = this._host, x = v.tagName?.toLowerCase(), w = Array.from(m.querySelectorAll("[data-testid]")).filter((d) => !isCustomElement(d));
3617
- for (let d of w) if (!(x && d.closest(x) !== v) && !this._trackedElements.has(d)) {
3618
- let m = d.getAttribute("data-testid");
3619
- if (!m) continue;
3620
- this._trackedElements.add(d), this._originalValues.set(d, m);
3621
- }
3622
- for (let d of Array.from(this._trackedElements)) (!d.isConnected || x && d.closest(x) !== v) && (this._trackedElements.delete(d), this._originalValues.delete(d));
3623
- }
3624
- _applyTestMode() {
3625
- if (!this._trackedElements.size) return;
3626
- let d = this._host.testId || "";
3627
- for (let m of this._trackedElements) {
3628
- let v = this._originalValues.get(m);
3629
- v && (this._enabled ? m.setAttribute("data-testid", `${d}--${v}`) : m.removeAttribute("data-testid"));
3630
- }
3631
- }
3632
- }, LitBlockBase = RegisterableElementMixin(SymbioteMixin()(CssDataMixin(LightDomMixin(i)))), LitBlock = class extends LitBlockBase {
3633
- static {
3634
- this.styleAttrs = [];
3635
- }
3636
- constructor() {
3637
- super(), this.activityType = null, this.init$ = blockCtx(), this.l10n = createL10n(() => this.sharedCtx), this.debugPrint = createDebugPrinter(() => this.sharedCtx, this.constructor.name), this._sharedInstancesBag = createSharedInstancesBag(() => this.sharedCtx), new TestModeController(this);
3638
- }
3639
- emit(d, m, v) {
3640
- let x = this.has("*eventEmitter") ? this.$["*eventEmitter"] : void 0;
3641
- if (!x) return;
3642
- x.emit(d, m, v);
3643
- let w = typeof m == "function" ? m() : m;
3644
- this.telemetryManager.sendEvent({
3645
- eventType: d,
3646
- payload: w ?? void 0
3647
- });
3648
- }
3649
- hasBlockInCtx(d) {
3650
- for (let m of this.blocksRegistry) if (d(m)) return !0;
3651
- return !1;
3652
- }
3653
- connectedCallback() {
3654
- this.constructor.styleAttrs.forEach((d) => {
3655
- this.setAttribute(d, "");
3656
- }), super.connectedCallback(), WindowHeightTracker.registerClient(this);
3657
- }
3658
- initCallback() {
3659
- this._addSharedContextInstance("*blocksRegistry", () => /* @__PURE__ */ new Set()), this._addSharedContextInstance("*pluginManager", (d) => new PluginManager(d)), this._addSharedContextInstance("*eventEmitter", (d) => new EventEmitter(d)), this._addSharedContextInstance("*localeManager", (d) => new LocaleManager(d)), this._addSharedContextInstance("*modalManager", (d) => new ModalManager(d)), this._addSharedContextInstance("*a11y", () => new A11y()), this._addSharedContextInstance("*clipboard", (d) => new ClipboardLayer(d)), this._addSharedContextInstance("*telemetryManager", (d) => new TelemetryManager(d)), this.sub(localeStateKey("locale-id"), (d) => {
3660
- let m = getLocaleDirection(d);
3661
- this.style.direction = m === "ltr" ? "" : m, this.requestUpdate();
3662
- }), this.subConfigValue("testMode", (d) => {
3663
- if (!d || !this.testId) {
3664
- this.removeAttribute("data-testid");
3665
- return;
3666
- }
3667
- this.setAttribute("data-testid", this.testId);
3668
- }), this.blocksRegistry.add(this);
3669
- }
3670
- get testId() {
3671
- return window.customElements.getName(this.constructor);
3672
- }
3673
- get modalManager() {
3674
- return this._getSharedContextInstance("*modalManager", !1);
3675
- }
3676
- get telemetryManager() {
3677
- return this._getSharedContextInstance("*telemetryManager");
3678
- }
3679
- get localeManager() {
3680
- return this._getSharedContextInstance("*localeManager");
3681
- }
3682
- get a11y() {
3683
- return this._getSharedContextInstance("*a11y");
3684
- }
3685
- get clipboardLayer() {
3686
- return this._getSharedContextInstance("*clipboard");
3687
- }
3688
- get blocksRegistry() {
3689
- return this._getSharedContextInstance("*blocksRegistry");
3690
- }
3691
- get eventEmitter() {
3692
- return this._getSharedContextInstance("*eventEmitter");
3693
- }
3694
- disconnectedCallback() {
3695
- super.disconnectedCallback(), WindowHeightTracker.unregisterClient(this);
3696
- let d = this.blocksRegistry;
3697
- d?.delete(this), d?.size === 0 && setTimeout(() => {
3698
- this.isConnected || d?.size > 0 || this.destroyCtxCallback();
3699
- }, 0);
3700
- }
3701
- destroyCtxCallback() {
3702
- this._destroySharedContextInstances(), PubSub.deleteCtx(this.ctxName);
3703
- }
3704
- _getSharedContextInstances() {
3705
- let d = "*sharedContextInstances";
3706
- if (!this.has(d) || !this.$[d]) {
3707
- let m = /* @__PURE__ */ new Map();
3708
- this.add(d, m, !0);
3709
- }
3710
- return this.$[d];
3711
- }
3712
- _addSharedContextInstance(d, m) {
3713
- let v = this._getSharedContextInstances();
3714
- if (!v.has(d) && (!this.has(d) || !this.$[d])) {
3715
- let x = m(this._sharedInstancesBag);
3716
- this.add(d, x, !0), v.set(d, x);
3717
- return;
3718
- }
3719
- }
3720
- _destroySharedContextInstances() {
3721
- let d = this._getSharedContextInstances();
3722
- for (let [m, v] of d.entries()) v?.destroy?.(), this.pub(m, null);
3723
- d.clear();
3724
- }
3725
- _getSharedContextInstance(d, m = !0) {
3726
- if (this.has(d) && this.$[d] || !m) return this.$[d];
3727
- throw Error(`Unexpected error: context manager for key "${String(d)}" is not available`);
3728
- }
3729
- async proxyUrl(d) {
3730
- if (this.cfg.secureDeliveryProxy && this.cfg.secureDeliveryProxyUrlResolver && console.warn("Both secureDeliveryProxy and secureDeliveryProxyUrlResolver are set. The secureDeliveryProxyUrlResolver will be used."), this.cfg.secureDeliveryProxyUrlResolver) try {
3731
- return await this.cfg.secureDeliveryProxyUrlResolver(d, {
3732
- uuid: extractUuid(d),
3733
- cdnUrlModifiers: extractCdnUrlModifiers(d),
3734
- fileName: extractFilename(d)
3735
- });
3736
- } catch (m) {
3737
- return console.error("Failed to resolve secure delivery proxy URL. Falling back to the default URL.", m), this.telemetryManager.sendEventError(m, "secureDeliveryProxyUrlResolver. Failed to resolve secure delivery proxy URL. Falling back to the default URL."), d;
3738
- }
3739
- return this.cfg.secureDeliveryProxy ? applyTemplateData(this.cfg.secureDeliveryProxy, { previewUrl: d }, { transform: (d) => window.encodeURIComponent(d) }) : d;
3740
- }
3741
- get cfg() {
3742
- return this._cfgProxy ||= new Proxy({}, {
3743
- set: (d, m, v) => {
3744
- if (typeof m != "string" || !(m in initialConfig)) return !1;
3745
- let x = m, w = sharedConfigKey(x);
3746
- return this.has(w) || this.add(w, initialConfig[x]), this.$[w] = v, !0;
3747
- },
3748
- get: (d, m) => {
3749
- let v = sharedConfigKey(m);
3750
- return this.has(v) || this.add(v, initialConfig[m]), this.$[v];
3751
- }
3752
- }), this._cfgProxy;
3753
- }
3754
- subConfigValue(d, m) {
3755
- let v = sharedConfigKey(d);
3756
- return this.has(v) || this.add(v, initialConfig[d]), this.sub(v, m);
3757
- }
3758
- }, EXCLUDED_TYPES = ["free"];
3759
- const parseCropPreset = (d) => {
3760
- let m = stringToArray(d);
3761
- if (!m || m.length === 0) return [];
3762
- let v = [];
3763
- for (let d of m) {
3764
- let m = d.trim();
3765
- if (!m) continue;
3766
- let x = m.indexOf(":");
3767
- if (x === -1 && !EXCLUDED_TYPES.includes(m)) {
3768
- console.warn(`Invalid crop preset: ${m}`);
3769
- continue;
3770
- }
3771
- let w = Number(m.slice(0, x)), T = Number(m.slice(x + 1));
3772
- if ((!Number.isFinite(w) || !Number.isFinite(T) || w <= 0 || T <= 0) && !EXCLUDED_TYPES.includes(m)) {
3773
- console.warn(`Invalid crop preset: ${m}`);
3774
- continue;
3775
- }
3776
- v.push({
3777
- id: UID.generateFastUid(),
3778
- type: "aspect-ratio",
3779
- width: EXCLUDED_TYPES.includes(m) ? 0 : w,
3780
- height: EXCLUDED_TYPES.includes(m) ? 0 : T,
3781
- hasFreeform: EXCLUDED_TYPES.includes(m)
3782
- });
3783
- }
3784
- return v;
3785
- }, getClosestAspectRatio = (d, m, v, x = .1) => {
3786
- let w = d / m, T = null, O = Infinity;
3787
- for (let d of v) {
3788
- let [m, v] = [d.width, d.height], x = m / v, M = Math.abs(w - x);
3789
- M < O && (O = M, T = d);
3790
- }
3791
- if (T) {
3792
- let [d, m] = [T.width, T.height], v = d / m;
3793
- if (Math.abs(w - v) / v > x) return null;
3794
- }
3795
- return T;
3796
- };
3797
- var Icon = class extends LitBlock {
3798
- constructor(...d) {
3799
- super(...d), this.name = "", this._resolvedHref = "", this._pluginSvg = null, this._iconHrefResolver = null;
3800
- }
3801
- initCallback() {
3802
- super.initCallback(), this.setAttribute("aria-hidden", "true"), this.subConfigValue("iconHrefResolver", (d) => {
3803
- this._iconHrefResolver = d, this._updateResolvedHref();
3804
- });
3805
- let d = this._sharedInstancesBag.pluginManager;
3806
- d?.onPluginsChange && (this._unsubscribePlugins = d.onPluginsChange(() => this._updateResolvedHref()));
3807
- }
3808
- willUpdate(d) {
3809
- super.willUpdate(d), d.has("name") && this._updateResolvedHref();
3810
- }
3811
- _updateResolvedHref() {
3812
- if (!this.name) {
3813
- this._resolvedHref = "", this._pluginSvg = null;
3814
- return;
3815
- }
3816
- let d = this._sharedInstancesBag.pluginManager?.snapshot().icons.find((d) => d.name === this.name);
3817
- if (d) {
3818
- this._pluginSvg = d.svg, this._resolvedHref = "";
3819
- return;
3820
- }
3821
- this._pluginSvg = null;
3822
- let m = `#uc-icon-${this.name}`;
3823
- this._resolvedHref = this._iconHrefResolver?.(this.name) ?? m;
3824
- }
3825
- render() {
3826
- return this._pluginSvg ? b`${this.yield("", b`${o(this._pluginSvg)}`)}` : b`
3827
- ${this.yield("", b`<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
3828
- <use href=${this._resolvedHref}></use>
3829
- </svg>`)}
3830
- `;
3831
- }
3832
- disconnectedCallback() {
3833
- this._unsubscribePlugins?.(), this._unsubscribePlugins = void 0, super.disconnectedCallback();
3834
- }
3835
- };
3836
- __decorate([n({ type: String })], Icon.prototype, "name", void 0), __decorate([r()], Icon.prototype, "_resolvedHref", void 0), __decorate([r()], Icon.prototype, "_pluginSvg", void 0);
3837
- const CROP_PADDING = 20, THUMB_CORNER_SIZE = 24, THUMB_SIDE_SIZE = 34, THUMB_STROKE_WIDTH = 3, THUMB_OFFSET = 3 / 2, GUIDE_STROKE_WIDTH = 1, GUIDE_THIRD = 100 / 3, MIN_CROP_SIZE = 1, MAX_INTERACTION_SIZE = 24, MIN_INTERACTION_SIZE = 6;
3838
- function setSvgNodeAttrs(d, m) {
3839
- for (let [v, x] of Object.entries(m)) d.setAttributeNS(null, v, x.toString());
3840
- }
3841
- function createSvgNode(d, m = {}) {
3842
- let v = document.createElementNS("http://www.w3.org/2000/svg", d);
3843
- return setSvgNodeAttrs(v, m), v;
3844
- }
3845
- function cornerPath(d, m, v) {
3846
- let { x, y: w, width: T, height: O } = d, M = m.includes("w") ? 0 : 1, F = m.includes("n") ? 0 : 1, U = M === 0 ? -1 : 1, W = F === 0 ? -1 : 1, G = [x + M * T + THUMB_OFFSET * U, w + F * O + THUMB_OFFSET * W - 24 * v * W], K = [x + M * T + THUMB_OFFSET * U, w + F * O + THUMB_OFFSET * W], q = [x + M * T - 24 * v * U + THUMB_OFFSET * U, w + F * O + THUMB_OFFSET * W];
3847
- return {
3848
- d: `M ${G[0]} ${G[1]} L ${K[0]} ${K[1]} L ${q[0]} ${q[1]}`,
3849
- center: [K[0], K[1]]
3850
- };
3851
- }
3852
- function sidePath(d, m, v) {
3853
- let { x, y: w, width: T, height: O } = d, M = m === "n" || m === "s", F = m === "w" || m === "e", U = M ? .5 : m === "w" ? 0 : 1, W = F ? .5 : m === "n" ? 0 : 1, G = m === "w" ? -1 : m === "e" ? 1 : 0, K = m === "n" ? -1 : m === "s" ? 1 : 0, q, J;
3854
- return M ? (q = [x + U * T - 34 * v / 2, w + W * O + THUMB_OFFSET * K], J = [x + U * T + 34 * v / 2, w + W * O + THUMB_OFFSET * K]) : (q = [x + U * T + THUMB_OFFSET * G, w + W * O - 34 * v / 2], J = [x + U * T + THUMB_OFFSET * G, w + W * O + 34 * v / 2]), {
3855
- d: `M ${q[0]} ${q[1]} L ${J[0]} ${J[1]}`,
3856
- center: [(q[0] + J[0]) / 2, (q[1] + J[1]) / 2]
3857
- };
3858
- }
3859
- function thumbCursor(d) {
3860
- return d === "" ? "move" : ["e", "w"].includes(d) ? "ew-resize" : ["n", "s"].includes(d) ? "ns-resize" : ["nw", "se"].includes(d) ? "nwse-resize" : "nesw-resize";
3861
- }
3862
- function moveRect({ rect: d, delta: [m, v], imageBox: x }) {
3863
- return constraintRect({
3864
- ...d,
3865
- x: d.x + m,
3866
- y: d.y + v
3867
- }, x);
3868
- }
3869
- function constraintRect(d, m) {
3870
- let { x: v } = d, { y: x } = d;
3871
- return d.x < m.x ? v = m.x : d.x + d.width > m.x + m.width && (v = m.x + m.width - d.width), d.y < m.y ? x = m.y : d.y + d.height > m.y + m.height && (x = m.y + m.height - d.height), {
3872
- ...d,
3873
- x: v,
3874
- y: x
3875
- };
3876
- }
3877
- function resizeNorth({ rect: d, delta: m, aspectRatio: v, imageBox: x }) {
3878
- let [, w] = m, { y: T, width: O, height: M } = d;
3879
- T += w, M -= w, v && (O = M * v);
3880
- let F = d.x + d.width / 2 - O / 2;
3881
- return T <= x.y && (T = x.y, M = d.y + d.height - T, v && (O = M * v, F = d.x + d.width / 2 - O / 2)), F <= x.x && (F = x.x, T = d.y + d.height - M), F + O >= x.x + x.width && (F = Math.max(x.x, x.x + x.width - O), O = x.x + x.width - F, v && (M = O / v), T = d.y + d.height - M), M < 1 && (M = 1, v && (O = M * v, F = d.x + d.width / 2 - O / 2), T = d.y + d.height - M), O < 1 && (O = 1, v && (M = O / v, F = d.x + d.width / 2 - O / 2), T = d.y + d.height - M), {
3882
- x: F,
3883
- y: T,
3884
- width: O,
3885
- height: M
3886
- };
3887
- }
3888
- function resizeWest({ rect: d, delta: m, aspectRatio: v, imageBox: x }) {
3889
- let [w] = m, { x: T, width: O, height: M } = d;
3890
- T += w, O -= w, v && (M = O / v);
3891
- let F = d.y + d.height / 2 - M / 2;
3892
- return T <= x.x && (T = x.x, O = d.x + d.width - T, v && (M = O / v, F = d.y + d.height / 2 - M / 2)), F <= x.y && (F = x.y, T = d.x + d.width - O), F + M >= x.y + x.height && (F = Math.max(x.y, x.y + x.height - M), M = x.y + x.height - F, v && (O = M * v), T = d.x + d.width - O), M < 1 && (M = 1, v && (O = M * v), F = d.y + d.height / 2 - M / 2, T = d.x + d.width - O), O < 1 && (O = 1, v && (M = O / v), F = d.y + d.height / 2 - M / 2, T = d.x + d.width - O), {
3893
- x: T,
3894
- y: F,
3895
- width: O,
3896
- height: M
3897
- };
3898
- }
3899
- function resizeSouth({ rect: d, delta: m, aspectRatio: v, imageBox: x }) {
3900
- let [, w] = m, { y: T, width: O, height: M } = d;
3901
- M += w, v && (O = M * v);
3902
- let F = d.x + d.width / 2 - O / 2;
3903
- return T + M >= x.y + x.height && (M = x.y + x.height - T, v && (O = M * v), F = d.x + d.width / 2 - O / 2), F <= x.x && (F = x.x, T = d.y), F + O >= x.x + x.width && (F = Math.max(x.x, x.x + x.width - O), O = x.x + x.width - F, v && (M = O / v), T = d.y), M < 1 && (M = 1, v && (O = M * v), F = d.x + d.width / 2 - O / 2), O < 1 && (O = 1, v && (M = O / v), F = d.x + d.width / 2 - O / 2), {
3904
- x: F,
3905
- y: T,
3906
- width: O,
3907
- height: M
3908
- };
3909
- }
3910
- function resizeEast({ rect: d, delta: m, aspectRatio: v, imageBox: x }) {
3911
- let [w] = m, { x: T, width: O, height: M } = d;
3912
- O += w, v && (M = O / v);
3913
- let F = d.y + d.height / 2 - M / 2;
3914
- return T + O >= x.x + x.width && (O = x.x + x.width - T, v && (M = O / v), F = d.y + d.height / 2 - M / 2), F <= x.y && (F = x.y, T = d.x), F + M >= x.y + x.height && (F = Math.max(x.y, x.y + x.height - M), M = x.y + x.height - F, v && (O = M * v), T = d.x), M < 1 && (M = 1, v && (O = M * v), F = d.y + d.height / 2 - M / 2), O < 1 && (O = 1, v && (M = O / v), F = d.y + d.height / 2 - M / 2), {
3915
- x: T,
3916
- y: F,
3917
- width: O,
3918
- height: M
3919
- };
3920
- }
3921
- function resizeNorthWest({ rect: d, delta: m, aspectRatio: v, imageBox: x }) {
3922
- let [w, T] = m, { x: O, y: M, width: F, height: U } = d;
3923
- return O + w < x.x && (w = x.x - O), M + T < x.y && (T = x.y - M), O += w, F -= w, M += T, U -= T, v && Math.abs(F / U) > v ? (T = F / v - U, U += T, M -= T, M <= x.y && (U -= x.y - M, F = U * v, O = d.x + d.width - F, M = x.y)) : v && (w = U * v - F, F += w, O -= w, O <= x.x && (F -= x.x - O, U = F / v, O = x.x, M = d.y + d.height - U)), U < 1 && (U = 1, v && (F = U * v), O = d.x + d.width - F, M = d.y + d.height - U), F < 1 && (F = 1, v && (U = F / v), O = d.x + d.width - F, M = d.y + d.height - U), {
3924
- x: O,
3925
- y: M,
3926
- width: F,
3927
- height: U
3928
- };
3929
- }
3930
- function resizeNorthEast({ rect: d, delta: m, aspectRatio: v, imageBox: x }) {
3931
- let [w, T] = m, { x: O, y: M, width: F, height: U } = d;
3932
- return O + F + w > x.x + x.width && (w = x.x + x.width - O - F), M + T < x.y && (T = x.y - M), F += w, M += T, U -= T, v && Math.abs(F / U) > v ? (T = F / v - U, U += T, M -= T, M <= x.y && (U -= x.y - M, F = U * v, O = d.x, M = x.y)) : v && (w = U * v - F, F += w, O + F >= x.x + x.width && (F = x.x + x.width - O, U = F / v, O = x.x + x.width - F, M = d.y + d.height - U)), U < 1 && (U = 1, v && (F = U * v), M = d.y + d.height - U), F < 1 && (F = 1, v && (U = F / v), M = d.y + d.height - U), {
3933
- x: O,
3934
- y: M,
3935
- width: F,
3936
- height: U
3937
- };
3938
- }
3939
- function resizeSouthWest({ rect: d, delta: m, aspectRatio: v, imageBox: x }) {
3940
- let [w, T] = m, { x: O, y: M, width: F, height: U } = d;
3941
- return O + w < x.x && (w = x.x - O), M + U + T > x.y + x.height && (T = x.y + x.height - M - U), O += w, F -= w, U += T, v && Math.abs(F / U) > v ? (T = F / v - U, U += T, M + U >= x.y + x.height && (U = x.y + x.height - M, F = U * v, O = d.x + d.width - F, M = x.y + x.height - U)) : v && (w = U * v - F, F += w, O -= w, O <= x.x && (F -= x.x - O, U = F / v, O = x.x, M = d.y)), U < 1 && (U = 1, v && (F = U * v), O = d.x + d.width - F), F < 1 && (F = 1, v && (U = F / v), O = d.x + d.width - F), {
3942
- x: O,
3943
- y: M,
3944
- width: F,
3945
- height: U
3946
- };
3947
- }
3948
- function resizeSouthEast({ rect: d, delta: m, aspectRatio: v, imageBox: x }) {
3949
- let [w, T] = m, { x: O, y: M, width: F, height: U } = d;
3950
- return O + F + w > x.x + x.width && (w = x.x + x.width - O - F), M + U + T > x.y + x.height && (T = x.y + x.height - M - U), F += w, U += T, v && Math.abs(F / U) > v ? (T = F / v - U, U += T, M + U >= x.y + x.height && (U = x.y + x.height - M, F = U * v, O = d.x, M = x.y + x.height - U)) : v && (w = U * v - F, F += w, O + F >= x.x + x.width && (F = x.x + x.width - O, U = F / v, O = x.x + x.width - F, M = d.y)), U < 1 && (U = 1, v && (F = U * v)), F < 1 && (F = 1, v && (U = F / v)), {
3951
- x: O,
3952
- y: M,
3953
- width: F,
3954
- height: U
3955
- };
3956
- }
3957
- function resizeRect({ direction: d, ...m }) {
3958
- switch (d) {
3959
- case "n": return resizeNorth(m);
3960
- case "w": return resizeWest(m);
3961
- case "s": return resizeSouth(m);
3962
- case "e": return resizeEast(m);
3963
- case "nw": return resizeNorthWest(m);
3964
- case "ne": return resizeNorthEast(m);
3965
- case "sw": return resizeSouthWest(m);
3966
- case "se": return resizeSouthEast(m);
3967
- default: return m.rect;
3968
- }
3969
- }
3970
- function rectContainsPoint(d, [m, v]) {
3971
- return d.x <= m && m <= d.x + d.width && d.y <= v && v <= d.y + d.height;
3972
- }
3973
- function isRectInsideRect(d, m) {
3974
- return d.x >= m.x && d.y >= m.y && d.x + d.width <= m.x + m.width && d.y + d.height <= m.y + m.height;
3975
- }
3976
- function isRectMatchesAspectRatio(d, m) {
3977
- return Math.abs(d.width / d.height - m) < .1;
3978
- }
3979
- function rotateSize({ width: d, height: m }, v) {
3980
- let x = v / 90 % 2 != 0;
3981
- return {
3982
- width: x ? m : d,
3983
- height: x ? d : m
3984
- };
3985
- }
3986
- function calculateMaxCenteredCropFrame(d, m, v) {
3987
- let x = d / m, w, T;
3988
- x > v ? (w = Math.round(m * v), T = m) : (w = d, T = Math.round(d / v));
3989
- let O = Math.round((d - w) / 2), M = Math.round((m - T) / 2);
3990
- return O + w > d && (w = d - O), M + T > m && (T = m - M), {
3991
- x: O,
3992
- y: M,
3993
- width: w,
3994
- height: T
3995
- };
3996
- }
3997
- function roundRect(d) {
3998
- return {
3999
- x: Math.round(d.x),
4000
- y: Math.round(d.y),
4001
- width: Math.round(d.width),
4002
- height: Math.round(d.height)
4003
- };
4004
- }
4005
- function clamp(d, m, v) {
4006
- return Math.min(Math.max(d, m), v);
4007
- }
4008
- var warnings = /* @__PURE__ */ new Set();
4009
- function warnOnce(d) {
4010
- warnings.has(d) || (warnings.add(d), console.warn(d));
4011
- }
4012
- const CameraSourceTypes = Object.freeze({
4013
- PHOTO: "photo",
4014
- VIDEO: "video"
4015
- }), CameraSourceEvents = Object.freeze({
4016
- IDLE: "idle",
4017
- SHOT: "shot",
4018
- PLAY: "play",
4019
- PAUSE: "pause",
4020
- RESUME: "resume",
4021
- STOP: "stop",
4022
- RETAKE: "retake",
4023
- ACCEPT: "accept"
4024
- });
4025
- export { transformationsToOperations as $, parseCropPreset as A, EventType as B, MIN_CROP_SIZE as C, E as Ct, THUMB_STROKE_WIDTH as D, THUMB_SIDE_SIZE as E, debounce as F, ALL_COLOR_OPERATIONS as G, SharedInstance as H, PubSub as I, ALL_TABS as J, ALL_CROP_OPERATIONS as K, UID as L, __decorate as M, createL10n as N, Icon as O, getPluralForm as P, operationsToTransformations as Q, PACKAGE_NAME as R, MAX_INTERACTION_SIZE as S, A as St, THUMB_CORNER_SIZE as T, DEFAULT_CDN_CNAME as U, InternalEventType as V, initialConfig as W, TabId as X, COLOR_OPERATIONS_CONFIG as Y, COMMON_OPERATIONS as Z, sidePath as _, e$1 as _t, clamp as a, extractUuid as at, GUIDE_STROKE_WIDTH as b, r as bt, createSvgNode as c, uploaderBlockCtx as ct, moveRect as d, UploadError as dt, stringToArray as et, rectContainsPoint as f, getUserAgent$1 as ft, setSvgNodeAttrs as g, n$2 as gt, roundRect as h, e$3 as ht, calculateMaxCenteredCropFrame as i, extractOperations as it, LitBlock as j, getClosestAspectRatio as k, isRectInsideRect as l, NetworkError as lt, rotateSize as m, o as mt, CameraSourceTypes as n, createCdnUrlModifiers as nt, constraintRect as o, sharedConfigKey as ot, resizeRect as p, uploadFileGroup as pt, ALL_FILTERS as q, warnOnce as r, createOriginalUrl as rt, cornerPath as s, activityBlockCtx as st, CameraSourceEvents as t, createCdnUrl as tt, isRectMatchesAspectRatio as u, Queue as ut, thumbCursor as v, i$3 as vt, MIN_INTERACTION_SIZE as w, b as wt, GUIDE_THIRD as x, n as xt, CROP_PADDING as y, t$1 as yt, PACKAGE_VERSION as z };