@uploadcare/file-uploader 1.13.2 → 1.14.0-alpha.11
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.
- package/abstract/ActivityBlock.d.ts +5 -5
- package/abstract/ActivityBlock.d.ts.map +1 -1
- package/abstract/ActivityBlock.js +10 -15
- package/abstract/Block.d.ts +9 -9
- package/abstract/Block.d.ts.map +1 -1
- package/abstract/Block.js +15 -0
- package/abstract/CTX.d.ts +6 -6
- package/abstract/CTX.d.ts.map +1 -1
- package/abstract/CTX.js +3 -1
- package/abstract/LocaleManager.d.ts +3 -3
- package/abstract/LocaleManager.d.ts.map +1 -1
- package/abstract/ModalManager.d.ts +124 -0
- package/abstract/ModalManager.d.ts.map +1 -0
- package/abstract/ModalManager.js +227 -0
- package/abstract/SecureUploadsManager.d.ts +2 -2
- package/abstract/SecureUploadsManager.d.ts.map +1 -1
- package/abstract/SolutionBlock.d.ts +2 -2
- package/abstract/SolutionBlock.d.ts.map +1 -1
- package/abstract/TypedCollection.d.ts.map +1 -1
- package/abstract/TypedData.d.ts +1 -1
- package/abstract/TypedData.d.ts.map +1 -1
- package/abstract/UploaderBlock.d.ts +8 -5
- package/abstract/UploaderBlock.d.ts.map +1 -1
- package/abstract/UploaderBlock.js +24 -8
- package/abstract/UploaderPublicApi.d.ts +25 -23
- package/abstract/UploaderPublicApi.d.ts.map +1 -1
- package/abstract/UploaderPublicApi.js +48 -10
- package/abstract/ValidationManager.d.ts +4 -4
- package/abstract/ValidationManager.d.ts.map +1 -1
- package/abstract/a11y.d.ts +2 -2
- package/abstract/a11y.d.ts.map +1 -1
- package/abstract/buildOutputCollectionState.d.ts +1 -1
- package/abstract/buildOutputCollectionState.d.ts.map +1 -1
- package/abstract/defineComponents.d.ts.map +1 -1
- package/abstract/l10nProcessor.d.ts.map +1 -1
- package/abstract/loadFileUploaderFrom.d.ts +1 -1
- package/abstract/loadFileUploaderFrom.d.ts.map +1 -1
- package/abstract/localeRegistry.d.ts.map +1 -1
- package/abstract/sharedConfigKey.d.ts.map +1 -1
- package/abstract/uploadEntrySchema.d.ts +2 -2
- package/abstract/uploadEntrySchema.d.ts.map +1 -1
- package/blocks/CameraSource/CameraSource.d.ts +9 -9
- package/blocks/CameraSource/CameraSource.d.ts.map +1 -1
- package/blocks/CameraSource/CameraSource.js +1 -0
- package/blocks/CameraSource/calcCameraModes.d.ts +5 -0
- package/blocks/CameraSource/calcCameraModes.d.ts.map +1 -0
- package/blocks/CameraSource/calcCameraModes.js +11 -0
- package/blocks/CameraSource/constants.d.ts +1 -0
- package/blocks/CameraSource/constants.d.ts.map +1 -1
- package/blocks/CameraSource/constants.js +2 -0
- package/blocks/CloudImageEditor/src/CloudImageEditorBlock.d.ts.map +1 -1
- package/blocks/CloudImageEditor/src/CropFrame.d.ts +1 -1
- package/blocks/CloudImageEditor/src/EditorImageCropper.d.ts +3 -3
- package/blocks/CloudImageEditor/src/EditorImageFader.d.ts +1 -1
- package/blocks/CloudImageEditor/src/EditorImageFader.d.ts.map +1 -1
- package/blocks/CloudImageEditor/src/EditorSlider.d.ts +1 -1
- package/blocks/CloudImageEditor/src/EditorSlider.d.ts.map +1 -1
- package/blocks/CloudImageEditor/src/EditorToolbar.d.ts +1 -1
- package/blocks/CloudImageEditor/src/crop-utils.d.ts +14 -14
- package/blocks/CloudImageEditor/src/crop-utils.d.ts.map +1 -1
- package/blocks/CloudImageEditor/src/cropper-constants.d.ts.map +1 -1
- package/blocks/CloudImageEditor/src/lib/applyFocusVisiblePolyfill.d.ts +1 -1
- package/blocks/CloudImageEditor/src/lib/applyFocusVisiblePolyfill.d.ts.map +1 -1
- package/blocks/CloudImageEditor/src/lib/parseCropPreset.d.ts +1 -1
- package/blocks/CloudImageEditor/src/lib/transformationUtils.d.ts +3 -3
- package/blocks/CloudImageEditor/src/lib/transformationUtils.d.ts.map +1 -1
- package/blocks/CloudImageEditor/src/state.d.ts +4 -4
- package/blocks/CloudImageEditor/src/svg-sprite.d.ts.map +1 -1
- package/blocks/CloudImageEditor/src/types.d.ts +8 -58
- package/blocks/CloudImageEditor/src/types.d.ts.map +1 -1
- package/blocks/CloudImageEditorActivity/CloudImageEditorActivity.d.ts +1 -1
- package/blocks/CloudImageEditorActivity/CloudImageEditorActivity.d.ts.map +1 -1
- package/blocks/CloudImageEditorActivity/CloudImageEditorActivity.js +2 -0
- package/blocks/Config/Config.d.ts +3 -12
- package/blocks/Config/Config.d.ts.map +1 -1
- package/blocks/Config/assertions.d.ts +1 -1
- package/blocks/Config/initialConfig.d.ts +1 -1
- package/blocks/Config/initialConfig.d.ts.map +1 -1
- package/blocks/Config/initialConfig.js +4 -0
- package/blocks/Config/normalizeConfigValue.d.ts +2 -1
- package/blocks/Config/normalizeConfigValue.d.ts.map +1 -1
- package/blocks/Config/normalizeConfigValue.js +19 -106
- package/blocks/Config/side-effects.d.ts.map +1 -1
- package/blocks/Config/validatorsType.d.ts +37 -0
- package/blocks/Config/validatorsType.d.ts.map +1 -0
- package/blocks/Config/validatorsType.js +134 -0
- package/blocks/DropArea/DropArea.d.ts +3 -2
- package/blocks/DropArea/DropArea.d.ts.map +1 -1
- package/blocks/DropArea/DropArea.js +21 -2
- package/blocks/DropArea/addDropzone.d.ts.map +1 -1
- package/blocks/DropArea/getDropItems.d.ts +2 -2
- package/blocks/DropArea/getDropItems.d.ts.map +1 -1
- package/blocks/ExternalSource/ExternalSource.d.ts +3 -3
- package/blocks/ExternalSource/ExternalSource.d.ts.map +1 -1
- package/blocks/ExternalSource/ExternalSource.js +2 -1
- package/blocks/ExternalSource/MessageBridge.d.ts +3 -3
- package/blocks/ExternalSource/MessageBridge.d.ts.map +1 -1
- package/blocks/ExternalSource/query-string.d.ts.map +1 -1
- package/blocks/ExternalSource/types.d.ts +64 -64
- package/blocks/ExternalSource/types.d.ts.map +1 -1
- package/blocks/FileItem/FileItem.d.ts +5 -6
- package/blocks/FileItem/FileItem.d.ts.map +1 -1
- package/blocks/FileItem/FileItem.js +40 -42
- package/blocks/FileItem/file-item.css +90 -0
- package/blocks/Img/ImgBase.d.ts +3 -3
- package/blocks/Img/ImgBase.d.ts.map +1 -1
- package/blocks/Img/ImgConfig.d.ts.map +1 -1
- package/blocks/Img/configurations.d.ts.map +1 -1
- package/blocks/Modal/Modal.d.ts +21 -2
- package/blocks/Modal/Modal.d.ts.map +1 -1
- package/blocks/Modal/Modal.js +52 -24
- package/blocks/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/blocks/ProgressBar/ProgressBar.js +1 -0
- package/blocks/ProgressBar/progress-bar.css +1 -0
- package/blocks/Range/Range.d.ts.map +1 -1
- package/blocks/SimpleBtn/SimpleBtn.d.ts +2 -2
- package/blocks/SimpleBtn/SimpleBtn.d.ts.map +1 -1
- package/blocks/SimpleBtn/SimpleBtn.js +1 -1
- package/blocks/SourceBtn/SourceBtn.d.ts +2 -2
- package/blocks/SourceBtn/SourceBtn.d.ts.map +1 -1
- package/blocks/SourceBtn/SourceBtn.js +29 -3
- package/blocks/SourceList/SourceList.d.ts.map +1 -1
- package/blocks/SourceList/SourceList.js +20 -0
- package/blocks/Spinner/Spinner.d.ts.map +1 -1
- package/blocks/StartFrom/StartFrom.js +1 -1
- package/blocks/Thumb/Thumb.d.ts +48 -0
- package/blocks/Thumb/Thumb.d.ts.map +1 -0
- package/blocks/Thumb/Thumb.js +169 -0
- package/blocks/Thumb/thumb.css +4 -0
- package/blocks/UploadCtxProvider/EventEmitter.d.ts +20 -20
- package/blocks/UploadCtxProvider/EventEmitter.d.ts.map +1 -1
- package/blocks/UploadCtxProvider/UploadCtxProvider.d.ts +4 -4
- package/blocks/UploadCtxProvider/UploadCtxProvider.d.ts.map +1 -1
- package/blocks/UploadList/UploadList.d.ts +4 -2
- package/blocks/UploadList/UploadList.d.ts.map +1 -1
- package/blocks/UploadList/UploadList.js +16 -1
- package/blocks/UploadList/upload-list.css +23 -0
- package/blocks/UrlSource/UrlSource.d.ts.map +1 -1
- package/blocks/UrlSource/UrlSource.js +1 -0
- package/blocks/svg-backgrounds/svg-backgrounds.d.ts +3 -3
- package/blocks/svg-backgrounds/svg-backgrounds.d.ts.map +1 -1
- package/blocks/themes/uc-basic/common.css +1 -1
- package/blocks/themes/uc-basic/index.css +1 -0
- package/blocks/themes/uc-basic/svg-sprite.d.ts +1 -1
- package/blocks/themes/uc-basic/svg-sprite.d.ts.map +1 -1
- package/blocks/themes/uc-basic/svg-sprite.js +1 -1
- package/blocks/themes/uc-basic/theme.css +12 -0
- package/blocks/utils/UploadSource.d.ts +6 -0
- package/blocks/utils/UploadSource.d.ts.map +1 -1
- package/blocks/utils/UploadSource.js +7 -0
- package/blocks/utils/debounce.d.ts +3 -1
- package/blocks/utils/debounce.d.ts.map +1 -1
- package/blocks/utils/resizeImage.d.ts +1 -1
- package/blocks/utils/resizeImage.d.ts.map +1 -1
- package/blocks/utils/supportCapture.d.ts +2 -0
- package/blocks/utils/supportCapture.d.ts.map +1 -0
- package/blocks/utils/supportCapture.js +3 -0
- package/blocks/utils/throttle.d.ts +3 -1
- package/blocks/utils/throttle.d.ts.map +1 -1
- package/blocks/utils/userAgent.d.ts +1 -1
- package/blocks/utils/userAgent.d.ts.map +1 -1
- package/env.d.ts +1 -1
- package/env.d.ts.map +1 -1
- package/env.js +1 -1
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/index.ssr.d.ts +88 -1
- package/index.ssr.d.ts.map +1 -1
- package/index.ssr.js +119 -10
- package/locales/file-uploader/ar.d.ts +2 -0
- package/locales/file-uploader/ar.js +2 -0
- package/locales/file-uploader/az.d.ts +2 -0
- package/locales/file-uploader/az.js +2 -0
- package/locales/file-uploader/ca.d.ts +2 -0
- package/locales/file-uploader/ca.js +2 -0
- package/locales/file-uploader/cs.d.ts +2 -0
- package/locales/file-uploader/cs.js +2 -0
- package/locales/file-uploader/da.d.ts +2 -0
- package/locales/file-uploader/da.js +2 -0
- package/locales/file-uploader/de.d.ts +2 -0
- package/locales/file-uploader/de.js +2 -0
- package/locales/file-uploader/el.d.ts +2 -0
- package/locales/file-uploader/el.js +2 -0
- package/locales/file-uploader/en.d.ts +2 -0
- package/locales/file-uploader/en.js +2 -0
- package/locales/file-uploader/es.d.ts +2 -0
- package/locales/file-uploader/es.js +2 -0
- package/locales/file-uploader/et.d.ts +2 -0
- package/locales/file-uploader/et.js +2 -0
- package/locales/file-uploader/fi.d.ts +2 -0
- package/locales/file-uploader/fi.js +2 -0
- package/locales/file-uploader/fr.d.ts +2 -0
- package/locales/file-uploader/fr.js +2 -0
- package/locales/file-uploader/he.d.ts +2 -0
- package/locales/file-uploader/he.js +2 -0
- package/locales/file-uploader/hy.d.ts +2 -0
- package/locales/file-uploader/hy.js +2 -0
- package/locales/file-uploader/is.d.ts +2 -0
- package/locales/file-uploader/is.js +2 -0
- package/locales/file-uploader/it.d.ts +2 -0
- package/locales/file-uploader/it.js +2 -0
- package/locales/file-uploader/ja.d.ts +2 -0
- package/locales/file-uploader/ja.js +2 -0
- package/locales/file-uploader/ka.d.ts +2 -0
- package/locales/file-uploader/ka.js +2 -0
- package/locales/file-uploader/kk.d.ts +2 -0
- package/locales/file-uploader/kk.js +2 -0
- package/locales/file-uploader/ko.d.ts +2 -0
- package/locales/file-uploader/ko.js +2 -0
- package/locales/file-uploader/lv.d.ts +2 -0
- package/locales/file-uploader/lv.js +2 -0
- package/locales/file-uploader/nb.d.ts +2 -0
- package/locales/file-uploader/nb.js +2 -0
- package/locales/file-uploader/nl.d.ts +2 -0
- package/locales/file-uploader/nl.js +2 -0
- package/locales/file-uploader/pl.d.ts +2 -0
- package/locales/file-uploader/pl.js +2 -0
- package/locales/file-uploader/pt.d.ts +2 -0
- package/locales/file-uploader/pt.js +2 -0
- package/locales/file-uploader/ro.d.ts +2 -0
- package/locales/file-uploader/ro.js +2 -0
- package/locales/file-uploader/ru.d.ts +2 -0
- package/locales/file-uploader/ru.js +2 -0
- package/locales/file-uploader/sk.d.ts +2 -0
- package/locales/file-uploader/sk.js +2 -0
- package/locales/file-uploader/sr.d.ts +2 -0
- package/locales/file-uploader/sr.js +2 -0
- package/locales/file-uploader/sv.d.ts +2 -0
- package/locales/file-uploader/sv.js +2 -0
- package/locales/file-uploader/tr.d.ts +2 -0
- package/locales/file-uploader/tr.js +2 -0
- package/locales/file-uploader/uk.d.ts +2 -0
- package/locales/file-uploader/uk.js +2 -0
- package/locales/file-uploader/vi.d.ts +2 -0
- package/locales/file-uploader/vi.js +2 -0
- package/locales/file-uploader/zh-TW.d.ts +2 -0
- package/locales/file-uploader/zh-TW.js +2 -0
- package/locales/file-uploader/zh.d.ts +2 -0
- package/locales/file-uploader/zh.js +2 -0
- package/package.json +4 -2
- package/solutions/file-uploader/inline/FileUploaderInline.d.ts +2 -2
- package/solutions/file-uploader/inline/FileUploaderInline.d.ts.map +1 -1
- package/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts +35 -0
- package/solutions/file-uploader/minimal/FileUploaderMinimal.d.ts.map +1 -1
- package/solutions/file-uploader/minimal/FileUploaderMinimal.js +122 -9
- package/solutions/file-uploader/minimal/index.css +25 -24
- package/solutions/file-uploader/minimal/index.d.ts +1 -13
- package/solutions/file-uploader/minimal/index.js +1 -13
- package/solutions/file-uploader/regular/FileUploaderRegular.d.ts +3 -5
- package/solutions/file-uploader/regular/FileUploaderRegular.d.ts.map +1 -1
- package/solutions/file-uploader/regular/FileUploaderRegular.js +17 -16
- package/types/exported.d.ts +7 -0
- package/utils/cdn-utils.d.ts +3 -3
- package/utils/cdn-utils.d.ts.map +1 -1
- package/utils/fileTypes.d.ts +1 -1
- package/utils/fileTypes.d.ts.map +1 -1
- package/utils/getPluralForm.d.ts.map +1 -1
- package/utils/isSecureTokenExpired.d.ts +1 -1
- package/utils/memoize.d.ts.map +1 -1
- package/utils/mixinClass.d.ts +3 -1
- package/utils/mixinClass.d.ts.map +1 -1
- package/utils/prettyBytes.d.ts.map +1 -1
- package/utils/template-utils.d.ts +1 -1
- package/utils/template-utils.d.ts.map +1 -1
- package/utils/toKebabCase.d.ts.map +1 -1
- package/utils/transparentPixelSrc.d.ts.map +1 -1
- package/utils/uniqueArray.d.ts.map +1 -1
- package/utils/validators/collection/validateCollectionUploadError.d.ts +1 -1
- package/utils/validators/collection/validateMultiple.d.ts +1 -1
- package/utils/validators/file/validateFileType.d.ts +1 -1
- package/utils/validators/file/validateIsImage.d.ts +1 -1
- package/utils/validators/file/validateMaxSizeLimit.d.ts +1 -1
- package/utils/validators/file/validateUploadError.d.ts +1 -1
- package/utils/waitForAttribute.d.ts +1 -1
- package/utils/waitForAttribute.d.ts.map +1 -1
- package/web/file-uploader.iife.min.js +4 -4
- package/web/file-uploader.min.js +4 -4
- package/web/uc-basic.min.css +1 -1
- package/web/uc-cloud-image-editor.min.css +1 -1
- package/web/uc-cloud-image-editor.min.js +4 -4
- package/web/uc-file-uploader-inline.min.css +1 -1
- package/web/uc-file-uploader-inline.min.js +4 -4
- package/web/uc-file-uploader-minimal.min.css +1 -1
- package/web/uc-file-uploader-minimal.min.js +4 -3
- package/web/uc-file-uploader-regular.min.css +1 -1
- package/web/uc-file-uploader-regular.min.js +4 -4
- package/web/uc-img.min.js +2 -2
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
* SOFTWARE.
|
|
24
24
|
*
|
|
25
25
|
*/
|
|
26
|
-
var
|
|
27
|
-
`,"\\n"),t=
|
|
28
|
-
`));return}window.customElements.define(r,t?class extends this{}:this)}static get is(){return this.__tag||this.reg(),this.__tag}static bindAttributes(r){this.observedAttributes=Object.keys(r),this.__attrDesc=r}attributeChangedCallback(r,t,e){var i;if(t===e)return;let s=(i=this.constructor.__attrDesc)==null?void 0:i[r];s?this.__dataCtxInitialized?this.$[s]=e:this.init$[s]=e:this[r]=e}getCssData(r,t=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(r)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let e=this.__computedStyle.getPropertyValue(r).trim();try{this.__cssDataCache[r]=cn(e)}catch{!t&&console.warn(`CSS Data error: ${r}`),this.__cssDataCache[r]=null}}return this.__cssDataCache[r]}__extractCssName(r){return r.split("--").map((t,e)=>e===0?"":t).join("--")}__initStyleAttrObserver(){pe||(pe=new Set),pe.add(this.updateCssData),Re||(Re=new MutationObserver(r=>{r[0].type==="attributes"&&pe.forEach(t=>{t()})}),Re.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(r,t=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(r);let e=this.getCssData(this.__extractCssName(r),!0);e===null&&(e=t),this.add(r,e),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(r,t,e){let i="__"+r;this[i]=this[r],Object.defineProperty(this,r,{set:s=>{this[i]=s,e?window.setTimeout(()=>{t==null||t(s)}):t==null||t(s)},get:()=>this[i]}),this[r]=this[i]}static set shadowStyles(r){let t=new Blob([r],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(t)}static set rootStyles(r){if(!this.__rootStylesLink){let t=new Blob([r],{type:"text/css"}),e=URL.createObjectURL(t),i=document.createElement("link");i.href=e,i.rel="stylesheet",this.__rootStylesLink=i}}},xe=Ce;Bi(xe,"template");var Vi=class{static _print(r){console.warn(r)}static setDefaultTitle(r){this.defaultTitle=r}static setRoutingMap(r){Object.assign(this.appMap,r);for(let t in this.appMap)!this.defaultRoute&&this.appMap[t].default===!0?this.defaultRoute=t:!this.errorRoute&&this.appMap[t].error===!0&&(this.errorRoute=t)}static set routingEventName(r){this.__routingEventName=r}static get routingEventName(){return this.__routingEventName||"sym-on-route"}static readAddressBar(){let r={route:null,options:{}};return window.location.search.split(this.separator).forEach(e=>{if(e.includes("?"))r.route=e.replace("?","");else if(e.includes("=")){let i=e.split("=");r.options[i[0]]=decodeURI(i[1])}else r.options[e]=!0}),r}static notify(){let r=this.readAddressBar(),t=this.appMap[r.route];if(t&&t.title&&(document.title=t.title),r.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!t&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!t&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!t){this._print(`Route "${r.route}" not found...`);return}let e=new CustomEvent(Vi.routingEventName,{detail:{route:r.route,options:Object.assign(t||{},r.options)}});window.dispatchEvent(e)}static reflect(r,t={}){let e=this.appMap[r];if(!e){this._print("Wrong route: "+r);return}let i="?"+r;for(let o in t)t[o]===!0?i+=this.separator+o:i+=this.separator+o+`=${t[o]}`;let s=e.title||this.defaultTitle||"";window.history.pushState(null,s,i),document.title=s}static applyRoute(r,t={}){this.reflect(r,t),this.notify()}static setSeparator(r){this._separator=r}static get separator(){return this._separator||"&"}static createRouterData(r,t){this.setRoutingMap(t);let e=E.registerCtx({route:null,options:null,title:null},r);return window.addEventListener(this.routingEventName,i=>{var s;e.multiPub({route:i.detail.route,options:i.detail.options,title:((s=i.detail.options)==null?void 0:s.title)||this.defaultTitle||""})}),Vi.notify(),this.initPopstateListener(),e}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};Vi.appMap=Object.create(null);function it(r,t){for(let e in t)e.includes("-")?r.style.setProperty(e,t[e]):r.style[e]=t[e]}function un(r,t){for(let e in t)t[e].constructor===Boolean?t[e]?r.setAttribute(e,""):r.removeAttribute(e):r.setAttribute(e,t[e])}function zi(r={tag:"div"}){let t=document.createElement(r.tag);if(r.attributes&&un(t,r.attributes),r.styles&&it(t,r.styles),r.properties)for(let e in r.properties)t[e]=r.properties[e];return r.processors&&r.processors.forEach(e=>{e(t)}),r.children&&r.children.forEach(e=>{let i=zi(e);t.appendChild(i)}),t}var zr="idb-store-ready",dn="symbiote-db",hn="symbiote-idb-update_",pn=class{_notifyWhenReady(r=null){window.dispatchEvent(new CustomEvent(zr,{detail:{dbName:this.name,storeName:this.storeName,event:r}}))}get _updEventName(){return hn+this.name}_getUpdateEvent(r){return new CustomEvent(this._updEventName,{detail:{key:this.name,newValue:r}})}_notifySubscribers(r){window.localStorage.removeItem(this.name),window.localStorage.setItem(this.name,r),window.dispatchEvent(this._getUpdateEvent(r))}constructor(r,t){this.name=r,this.storeName=t,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=e=>{this.db=e.target.result,this.objStore=this.db.createObjectStore(t,{keyPath:"_key"}),this.objStore.transaction.oncomplete=i=>{this._notifyWhenReady(i)}},this.request.onsuccess=e=>{this.db=e.target.result,this._notifyWhenReady(e)},this.request.onerror=e=>{console.error(e)},this._subscriptionsMap={},this._updateHandler=e=>{e.key===this.name&&this._subscriptionsMap[e.newValue]&&this._subscriptionsMap[e.newValue].forEach(async s=>{s(await this.read(e.newValue))})},this._localUpdateHandler=e=>{this._updateHandler(e.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(r){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(r);return new Promise((i,s)=>{e.onsuccess=o=>{var n;(n=o.target.result)!=null&&n._value?i(o.target.result._value):(i(null),console.warn(`IDB: cannot read "${r}"`))},e.onerror=o=>{s(o)}})}write(r,t,e=!1){let i={_key:r,_value:t},o=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(i);return new Promise((n,a)=>{o.onsuccess=l=>{e||this._notifySubscribers(r),n(l.target.result)},o.onerror=l=>{a(l)}})}delete(r,t=!1){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(r);return new Promise((s,o)=>{i.onsuccess=n=>{t||this._notifySubscribers(r),s(n)},i.onerror=n=>{o(n)}})}getAll(){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((e,i)=>{t.onsuccess=s=>{let o=s.target.result;e(o.map(n=>n._value))},t.onerror=s=>{i(s)}})}subscribe(r,t){this._subscriptionsMap[r]||(this._subscriptionsMap[r]=new Set);let e=this._subscriptionsMap[r];return e.add(t),{remove:()=>{e.delete(t),e.size||delete this._subscriptionsMap[r]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,Hr.clear(this.name)}},Hr=class{static get readyEventName(){return zr}static open(r=dn,t="store"){let e=r+"/"+t;return this._reg[e]||(this._reg[e]=new pn(r,t)),this._reg[e]}static clear(r){window.indexedDB.deleteDatabase(r);for(let t in this._reg)t.split("/")[0]===r&&delete this._reg[t]}};Bi(Hr,"_reg",Object.create(null));var jr=r=>{if(typeof r!="string"||!r)return"";let t=r.trim();return t.startsWith("-/")?t=t.slice(2):t.startsWith("/")&&(t=t.slice(1)),t.endsWith("/")&&(t=t.slice(0,t.length-1)),t},Mt=(...r)=>r.filter(t=>typeof t=="string"&&t).map(t=>jr(t)).join("/-/"),V=(...r)=>{let t=Mt(...r);return t?`-/${t}/`:""};function Rt(r){let t=new URL(r),e=t.pathname+t.search+t.hash,i=e.lastIndexOf("http"),s=e.lastIndexOf("/"),o="";return i>=0?o=e.slice(i):s>=0&&(o=e.slice(s+1)),o}function Dt(r){let t=new URL(r),{pathname:e}=t,i=e.indexOf("/"),s=e.indexOf("/",i+1);return e.substring(i+1,s)}function Hi(r){let t=Wr(r),e=new URL(t),i=e.pathname.indexOf("/-/");return i===-1?"":e.pathname.substring(i).slice(1)}function Gr(r){return Hi(r).split("/-/").filter(Boolean).map(e=>jr(e))}function Wr(r){let t=new URL(r),e=Rt(r),i=Xr(e)?qr(e).pathname:e;return t.pathname=t.pathname.replace(i,""),t.search="",t.hash="",t.toString()}function Xr(r){return r.startsWith("http")}function qr(r){let t=new URL(r);return{pathname:t.origin+t.pathname||"",search:t.search||"",hash:t.hash||""}}var M=(r,t,e)=>{let i=new URL(Wr(r));if(e=e||Rt(r),i.pathname.startsWith("//")&&(i.pathname=i.pathname.replace("//","/")),Xr(e)){let s=qr(e);i.pathname=i.pathname+(t||"")+(s.pathname||""),i.search=s.search,i.hash=s.hash}else i.pathname=i.pathname+(t||"")+(e||"");return i.toString()},Ae=(r,t)=>{let e=new URL(r);return e.pathname=t+"/",e.toString()};var F=(r,t=",")=>r.trim().split(t).map(e=>e.trim()).filter(e=>e.length>0);var q=Object.freeze({brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0,mirror:!1,flip:!1,crop:void 0}),Zr=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function fn(r,t){if(typeof t=="number"){let e=t;return q[r]!==e?`${r}/${e}`:""}if(typeof t=="boolean"){let e=t;return q[r]!==e?`${r}`:""}if(r==="filter"&&t){let{name:e,amount:i}=t;return q.filter===i?"":`${r}/${e}/${i}`}if(r==="crop"&&t){let{dimensions:e,coords:i}=t;return`${r}/${e.join("x")}/${i.join(",")}`}return""}function Ee(r){return Mt(...Zr.filter(t=>typeof r[t]!="undefined"&&r[t]!==null).map(t=>{let e=r[t];return fn(t,e)}).filter(t=>!!t))}var Ft=Mt("format/auto","progressive/yes"),fe=([r])=>typeof r!="undefined"?Number(r):void 0,Kr=()=>!0,mn=([r,t])=>({name:r,amount:typeof t!="undefined"?Number(t):100}),gn=([r,t])=>{if(!/\d+x\d+/.test(r)||!/\d+,\d+/.test(t))throw new Error("Crop by aspect ratio, percentage or alignment shortcuts is not supported.");return{dimensions:F(r,"x").map(Number),coords:F(t).map(Number)}},_n=Object.freeze({enhance:fe,brightness:fe,exposure:fe,gamma:fe,contrast:fe,saturation:fe,vibrance:fe,warmth:fe,filter:mn,mirror:Kr,flip:Kr,rotate:fe,crop:gn});function Yr(r){let t={};for(let e of r){let[i,...s]=e.split("/");if(!Zr.includes(i))continue;let o=i,n=_n[o];try{let a=n(s);t[o]=a}catch(a){console.warn([`Failed to parse URL operation "${e}". It will be ignored.`,a instanceof Error?`Error message: "${a.message}"`:a,"If you need this functionality, please feel free to open an issue at https://github.com/uploadcare/blocks/issues/new"].join(`
|
|
29
|
-
`))}}return t}var O=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),W=[O.CROP,O.TUNING,O.FILTERS],Jr=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],Qr=["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"],es=["rotate","mirror","flip"],oe=Object.freeze({brightness:{zero:q.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:q.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:q.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:q.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:q.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:q.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:q.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:q.enhance,range:[0,100],keypointsNumber:1},filter:{zero:q.filter,range:[0,100],keypointsNumber:1}});var te=r=>r?r.split(",").map(t=>t.trim()).filter(Boolean):[],me=r=>r?r.join(","):"";var bn="https://ucarecdn.com",vn="https://upload.uploadcare.com",yn="https://social.uploadcare.com",ie={pubkey:"",multiple:!0,multipleMin:0,multipleMax:Number.MAX_SAFE_INTEGER,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",externalSourcesEmbedCss:"",store:"auto",cameraMirror:!1,cameraCapture:"",sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:me(W),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",imageShrink:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:bn,baseUrl:vn,socialBaseUrl:yn,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",debug:!1,metadata:null,localeName:"en",localeDefinitionOverride:null,secureUploadsExpireThreshold:10*60*1e3,secureUploadsSignatureResolver:null,secureDeliveryProxyUrlResolver:null,iconHrefResolver:null,fileValidators:[],collectionValidators:[],cameraModes:"photo, video",defaultCameraMode:null,enableAudioRecording:!0,enableVideoRecording:null,maxVideoRecordingDuration:null,mediaRecorderOptions:null};var I=Object.freeze({FILE_ADDED:"file-added",FILE_REMOVED:"file-removed",FILE_UPLOAD_START:"file-upload-start",FILE_UPLOAD_PROGRESS:"file-upload-progress",FILE_UPLOAD_SUCCESS:"file-upload-success",FILE_UPLOAD_FAILED:"file-upload-failed",FILE_URL_CHANGED:"file-url-changed",MODAL_OPEN:"modal-open",MODAL_CLOSE:"modal-close",DONE_CLICK:"done-click",UPLOAD_CLICK:"upload-click",ACTIVITY_CHANGE:"activity-change",COMMON_UPLOAD_START:"common-upload-start",COMMON_UPLOAD_PROGRESS:"common-upload-progress",COMMON_UPLOAD_SUCCESS:"common-upload-success",COMMON_UPLOAD_FAILED:"common-upload-failed",CHANGE:"change",GROUP_CREATED:"group-created"}),Nt=class{constructor(t){u(this,"_timeoutStore",new Map);u(this,"_targets",new Set);u(this,"_debugPrint",null);this._debugPrint=t}bindTarget(t){this._targets.add(t)}unbindTarget(t){this._targets.delete(t)}_dispatch(t,e){var i;for(let s of this._targets)s.dispatchEvent(new CustomEvent(t,{detail:e}));(i=this._debugPrint)==null||i.call(this,()=>{let s=e&&typeof e=="object"?{...e}:e;return[`event "${t}"`,s]})}emit(t,e,{debounce:i}={}){if(typeof i!="number"&&!i){this._dispatch(t,typeof e=="function"?e():e);return}this._timeoutStore.has(t)&&window.clearTimeout(this._timeoutStore.get(t));let s=typeof i=="number"?i:20,o=window.setTimeout(()=>{this._dispatch(t,typeof e=="function"?e():e),this._timeoutStore.delete(t)},s);this._timeoutStore.set(t,o)}};function L(r,t){let e,i=(...s)=>{clearTimeout(e),e=setTimeout(()=>r(...s),t)};return i.cancel=()=>{clearTimeout(e)},i}var ts="--uploadcare-blocks-window-height",Oe=class{static registerClient(t){this.clientsRegistry.size===0&&this.attachTracker(),this.clientsRegistry.add(t)}static unregisterClient(t){this.clientsRegistry.delete(t),this.clientsRegistry.size===0&&this.detachTracker()}static attachTracker(){window.addEventListener("resize",this.flush,{passive:!0,capture:!0}),this.flush()}static detachTracker(){window.removeEventListener("resize",this.flush,{capture:!0}),document.documentElement.style.removeProperty(ts)}};u(Oe,"clientsRegistry",new Set),u(Oe,"flush",L(()=>{document.documentElement.style.setProperty(ts,`${window.innerHeight}px`)},100));var is=r=>{var i;let t=new Intl.Locale(r),e="ltr";return typeof t.getTextInfo=="function"&&t.getTextInfo().direction?e=t.getTextInfo().direction:"textInfo"in t&&((i=t.textInfo)!=null&&i.direction)&&(e=t.textInfo.direction),e};var Vt=(r,t)=>new Intl.PluralRules(r).select(t);var wn=r=>r,ji="{{",ss="}}",rs="plural:";function rt(r,t,e={}){var n;let{openToken:i=ji,closeToken:s=ss,transform:o=wn}=e;for(let a in t){let l=(n=t[a])==null?void 0:n.toString();r=r.replaceAll(i+a+s,typeof l=="string"?o(l):l)}return r}function os(r){let t=[],e=r.indexOf(ji);for(;e!==-1;){let i=r.indexOf(ss,e),s=r.substring(e+2,i);if(s.startsWith(rs)){let o=r.substring(e+2,i).replace(rs,""),n=o.substring(0,o.indexOf("(")),a=o.substring(o.indexOf("(")+1,o.indexOf(")"));t.push({variable:s,pluralKey:n,countVariable:a})}e=r.indexOf(ji,i)}return t}var ns=({element:r,attribute:t,onSuccess:e,onTimeout:i,timeout:s=300})=>{let o=r.getAttribute(t);if(o!==null){e(o);return}let n=new MutationObserver(c=>{let h=c[c.length-1];l(h)});n.observe(r,{attributes:!0,attributeFilter:[t]});let a=setTimeout(()=>{n.disconnect(),i()},s),l=c=>{let h=r.getAttribute(t);c.type==="attributes"&&c.attributeName===t&&h!==null&&(clearTimeout(a),n.disconnect(),e(h))}};function as(r){return Object.prototype.toString.call(r)==="[object Object]"}var Cn=/\W|_/g;function xn(r){return r.split(Cn).map((t,e)=>t.charAt(0)[e>0?"toUpperCase":"toLowerCase"]()+t.slice(1)).join("")}function ls(r,{ignoreKeys:t}={ignoreKeys:[]}){return Array.isArray(r)?r.map(e=>be(e,{ignoreKeys:t})):r}function be(r,{ignoreKeys:t}={ignoreKeys:[]}){if(Array.isArray(r))return ls(r,{ignoreKeys:t});if(!as(r))return r;let e={};for(let i of Object.keys(r)){let s=r[i];if(t.includes(i)){e[i]=s;continue}as(s)?s=be(s,{ignoreKeys:t}):Array.isArray(s)&&(s=ls(s,{ignoreKeys:t})),e[xn(i)]=s}return e}var An=r=>new Promise(t=>setTimeout(t,r));function Yi({libraryName:r,libraryVersion:t,userAgent:e,publicKey:i="",integration:s=""}){let o="JavaScript";if(typeof e=="string")return e;if(typeof e=="function")return e({publicKey:i,libraryName:r,libraryVersion:t,languageName:o,integration:s});let n=[r,t,i].filter(Boolean).join("/"),a=[o,s].filter(Boolean).join("; ");return`${n} (${a})`}var En={factor:2,time:100};function Tn(r,t=En){let e=0;function i(s){let o=Math.round(t.time*t.factor**e);return s({attempt:e,retry:a=>An(a!=null?a:o).then(()=>(e+=1,i(s)))})}return i(r)}var st=class extends Error{},Ne=class r extends st{constructor(e){super();u(this,"originalProgressEvent");this.name="NetworkError",this.message="Network error",Object.setPrototypeOf(this,r.prototype),this.originalProgressEvent=e}},zt=(r,t)=>{r&&(r.aborted?Promise.resolve().then(t):r.addEventListener("abort",()=>t(),{once:!0}))},Te=class r extends st{constructor(e="Request canceled"){super(e);u(this,"isCancel",!0);this.name="CancelError",Object.setPrototypeOf(this,r.prototype)}},Sn=500,us=({check:r,interval:t=Sn,timeout:e,signal:i})=>new Promise((s,o)=>{let n,a;zt(i,()=>{n&&clearTimeout(n),o(new Te("Poll cancelled"))}),e&&(a=setTimeout(()=>{n&&clearTimeout(n),o(new Te("Timed out"))},e));let l=()=>{try{Promise.resolve(r(i)).then(c=>{c?(a&&clearTimeout(a),s(c)):n=setTimeout(l,t)}).catch(c=>{a&&clearTimeout(a),o(c)})}catch(c){a&&clearTimeout(a),o(c)}};n=setTimeout(l,0)}),T={baseCDN:"https://ucarecdn.com",baseURL:"https://upload.uploadcare.com",maxContentLength:50*1024*1024,retryThrottledRequestMaxTimes:1,retryNetworkErrorMaxTimes:3,multipartMinFileSize:25*1024*1024,multipartChunkSize:5*1024*1024,multipartMinLastPartSize:1024*1024,maxConcurrentRequests:4,pollingTimeoutMilliseconds:1e4,pusherKey:"79ae88bd931ea68464d9"},Ht="application/octet-stream",ds="original",Se=({method:r,url:t,data:e,headers:i={},signal:s,onProgress:o})=>new Promise((n,a)=>{let l=new XMLHttpRequest,c=(r==null?void 0:r.toUpperCase())||"GET",h=!1;l.open(c,t,!0),i&&Object.entries(i).forEach(d=>{let[p,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&l.setRequestHeader(p,m)}),l.responseType="text",zt(s,()=>{h=!0,l.abort(),a(new Te)}),l.onload=()=>{if(l.status!=200)a(new Error(`Error ${l.status}: ${l.statusText}`));else{let d={method:c,url:t,data:e,headers:i||void 0,signal:s,onProgress:o},p=l.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};p.forEach(function(y){let w=y.split(": "),v=w.shift(),C=w.join(": ");v&&typeof v!="undefined"&&(m[v]=C)});let f=l.response,g=l.status;n({request:d,data:f,headers:m,status:g})}},l.onerror=d=>{h||a(new Ne(d))},o&&typeof o=="function"&&(l.upload.onprogress=d=>{d.lengthComputable?o({isComputable:!0,value:d.loaded/d.total}):o({isComputable:!1})}),e?l.send(e):l.send()});function In(r,...t){return r}var $n=({name:r})=>r?[r]:[],kn=In,On=()=>new FormData,hs=r=>!1,jt=r=>typeof Blob!="undefined"&&r instanceof Blob,Gt=r=>typeof File!="undefined"&&r instanceof File,Wt=r=>!!r&&typeof r=="object"&&!Array.isArray(r)&&"uri"in r&&typeof r.uri=="string",Ve=r=>jt(r)||Gt(r)||hs()||Wt(r),Ln=r=>typeof r=="string"||typeof r=="number"||typeof r=="undefined",Un=r=>!!r&&typeof r=="object"&&!Array.isArray(r),Pn=r=>!!r&&typeof r=="object"&&"data"in r&&Ve(r.data);function ps(r,t,e){if(Array.isArray(e))for(let i of e)ps(r,`${t}[]`,i);else if(Pn(e)){let{name:i,contentType:s}=e,o=kn(e.data,i,s!=null?s:Ht),n=$n({name:i,contentType:s});r.push([t,o,...n])}else if(Un(e))for(let[i,s]of Object.entries(e))typeof s!="undefined"&&r.push([`${t}[${i}]`,String(s)]);else Ln(e)&&e&&r.push([t,e.toString()])}function Mn(r){let t=[];for(let[e,i]of Object.entries(r))ps(t,e,i);return t}function Xt(r){let t=On(),e=Mn(r);for(let i of e){let[s,o,...n]=i;t.append(s,o,...n)}return t}var B=class r extends st{constructor(e,i,s,o,n){super();u(this,"code");u(this,"request");u(this,"response");u(this,"headers");this.name="UploadError",this.message=e,this.code=i,this.request=s,this.response=o,this.headers=n,Object.setPrototypeOf(this,r.prototype)}},Rn=r=>{let t=new URLSearchParams;for(let[e,i]of Object.entries(r))i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).filter(s=>{var o;return(o=s[1])!=null?o:!1}).forEach(s=>t.set(`${e}[${s[0]}]`,String(s[1]))):Array.isArray(i)?i.forEach(s=>{t.append(`${e}[]`,s)}):typeof i=="string"&&i?t.set(e,i):typeof i=="number"&&t.set(e,i.toString());return t.toString()},ge=(r,t,e)=>{let i=new URL(r);return i.pathname=(i.pathname+t).replace("//","/"),e&&(i.search=Rn(e)),i.toString()},Dn="6.14.1",Fn="UploadcareUploadClient",Nn=Dn;function Le(r){return Yi({libraryName:Fn,libraryVersion:Nn,...r})}var Vn="RequestThrottledError",cs=15e3,Bn=1e3;function zn(r){let{headers:t}=r||{};if(!t||typeof t["retry-after"]!="string")return cs;let e=parseInt(t["retry-after"],10);return Number.isFinite(e)?e*1e3:cs}function Ie(r,t){let{retryThrottledRequestMaxTimes:e,retryNetworkErrorMaxTimes:i}=t;return Tn(({attempt:s,retry:o})=>r().catch(n=>{if("response"in n&&(n==null?void 0:n.code)===Vn&&s<e)return o(zn(n));if(n instanceof Ne&&s<i)return o((s+1)*Bn);throw n}))}var fs=r=>{let t="";return(jt(r)||Gt(r)||Wt(r))&&(t=r.type),t||Ht},ms=r=>{let t="";return Gt(r)&&r.name?t=r.name:jt(r)||hs()?t="":Wt(r)&&r.name&&(t=r.name),t||ds};function Ji(r){return typeof r=="undefined"||r==="auto"?"auto":r?"1":"0"}function Hn(r,{publicKey:t,fileName:e,contentType:i,baseURL:s=T.baseURL,secureSignature:o,secureExpire:n,store:a,signal:l,onProgress:c,source:h="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=T.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=T.retryNetworkErrorMaxTimes,metadata:g}){return Ie(()=>Se({method:"POST",url:ge(s,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Le({publicKey:t,integration:d,userAgent:p})},data:Xt({file:{data:r,name:e||ms(r),contentType:i||fs(r)},UPLOADCARE_PUB_KEY:t,UPLOADCARE_STORE:Ji(a),signature:o,expire:n,source:h,metadata:g}),signal:l,onProgress:c}).then(({data:y,headers:w,request:v})=>{let C=be(JSON.parse(y));if("error"in C)throw new B(C.error.content,C.error.errorCode,v,C,w);return C}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var Xi;(function(r){r.Token="token",r.FileInfo="file_info"})(Xi||(Xi={}));function jn(r,{publicKey:t,baseURL:e=T.baseURL,store:i,fileName:s,checkForUrlDuplicates:o,saveUrlForRecurrentUploads:n,secureSignature:a,secureExpire:l,source:c="url",signal:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=T.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=T.retryNetworkErrorMaxTimes,metadata:g}){return Ie(()=>Se({method:"POST",headers:{"X-UC-User-Agent":Le({publicKey:t,integration:d,userAgent:p})},url:ge(e,"/from_url/",{jsonerrors:1,pub_key:t,source_url:r,store:Ji(i),filename:s,check_URL_duplicates:o?1:void 0,save_URL_duplicates:n?1:void 0,signature:a,expire:l,source:c,metadata:g}),signal:h}).then(({data:y,headers:w,request:v})=>{let C=be(JSON.parse(y));if("error"in C)throw new B(C.error.content,C.error.errorCode,v,C,w);return C}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var X;(function(r){r.Unknown="unknown",r.Waiting="waiting",r.Progress="progress",r.Error="error",r.Success="success"})(X||(X={}));var Gn=r=>"status"in r&&r.status===X.Error;function Wn(r,{publicKey:t,baseURL:e=T.baseURL,signal:i,integration:s,userAgent:o,retryThrottledRequestMaxTimes:n=T.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=T.retryNetworkErrorMaxTimes}={}){return Ie(()=>Se({method:"GET",headers:t?{"X-UC-User-Agent":Le({publicKey:t,integration:s,userAgent:o})}:void 0,url:ge(e,"/from_url/status/",{jsonerrors:1,token:r}),signal:i}).then(({data:l,headers:c,request:h})=>{let d=be(JSON.parse(l));if("error"in d&&!Gn(d))throw new B(d.error.content,d.error.errorCode,h,d,c);return d}),{retryNetworkErrorMaxTimes:a,retryThrottledRequestMaxTimes:n})}function Xn(r,{publicKey:t,baseURL:e=T.baseURL,jsonpCallback:i,secureSignature:s,secureExpire:o,signal:n,source:a,integration:l,userAgent:c,retryThrottledRequestMaxTimes:h=T.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=T.retryNetworkErrorMaxTimes}){return Ie(()=>Se({method:"POST",headers:{"X-UC-User-Agent":Le({publicKey:t,integration:l,userAgent:c})},url:ge(e,"/group/",{jsonerrors:1}),data:Xt({files:r,callback:i,pub_key:t,signature:s,expire:o,source:a}),signal:n}).then(({data:p,headers:m,request:f})=>{let g=be(JSON.parse(p));if("error"in g)throw new B(g.error.content,g.error.errorCode,f,g,m);return g}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:h})}function gs(r,{publicKey:t,baseURL:e=T.baseURL,signal:i,source:s,integration:o,userAgent:n,retryThrottledRequestMaxTimes:a=T.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=T.retryNetworkErrorMaxTimes}){return Ie(()=>Se({method:"GET",headers:{"X-UC-User-Agent":Le({publicKey:t,integration:o,userAgent:n})},url:ge(e,"/info/",{jsonerrors:1,pub_key:t,file_id:r,source:s}),signal:i}).then(({data:c,headers:h,request:d})=>{let p=be(JSON.parse(c));if("error"in p)throw new B(p.error.content,p.error.errorCode,d,p,h);return p}),{retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:l})}function qn(r,{publicKey:t,contentType:e,fileName:i,multipartChunkSize:s=T.multipartChunkSize,baseURL:o="",secureSignature:n,secureExpire:a,store:l,signal:c,source:h="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=T.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=T.retryNetworkErrorMaxTimes,metadata:g}){return Ie(()=>Se({method:"POST",url:ge(o,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Le({publicKey:t,integration:d,userAgent:p})},data:Xt({filename:i||ds,size:r,content_type:e||Ht,part_size:s,UPLOADCARE_STORE:Ji(l),UPLOADCARE_PUB_KEY:t,signature:n,expire:a,source:h,metadata:g}),signal:c}).then(({data:y,headers:w,request:v})=>{let C=be(JSON.parse(y));if("error"in C)throw new B(C.error.content,C.error.errorCode,v,C,w);return C.parts=Object.keys(C.parts).map(R=>C.parts[Number(R)]),C}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})}function Kn(r,t,{contentType:e,signal:i,onProgress:s,retryThrottledRequestMaxTimes:o=T.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:n=T.retryNetworkErrorMaxTimes}){return Ie(()=>Se({method:"PUT",url:t,data:r,onProgress:s,signal:i,headers:{"Content-Type":e||Ht}}).then(a=>(s&&s({isComputable:!0,value:1}),a)).then(({status:a})=>({code:a})),{retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:n})}function Zn(r,{publicKey:t,baseURL:e=T.baseURL,source:i="local",signal:s,integration:o,userAgent:n,retryThrottledRequestMaxTimes:a=T.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=T.retryNetworkErrorMaxTimes}){return Ie(()=>Se({method:"POST",url:ge(e,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Le({publicKey:t,integration:o,userAgent:n})},data:Xt({uuid:r,UPLOADCARE_PUB_KEY:t,source:i}),signal:s}).then(({data:c,headers:h,request:d})=>{let p=be(JSON.parse(c));if("error"in p)throw new B(p.error.content,p.error.errorCode,d,p,h);return p}),{retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:l})}function Qi(r,{publicKey:t,baseURL:e,source:i,integration:s,userAgent:o,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:a,signal:l,onProgress:c}){return us({check:h=>gs(r,{publicKey:t,baseURL:e,signal:h,source:i,integration:s,userAgent:o,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:a}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:l})}function Yn(r){return"defaultEffects"in r}var _e=class{constructor(t,{baseCDN:e=T.baseCDN,fileName:i}={}){u(this,"uuid");u(this,"name",null);u(this,"size",null);u(this,"isStored",null);u(this,"isImage",null);u(this,"mimeType",null);u(this,"cdnUrl",null);u(this,"s3Url",null);u(this,"originalFilename",null);u(this,"imageInfo",null);u(this,"videoInfo",null);u(this,"contentInfo",null);u(this,"metadata",null);u(this,"s3Bucket",null);u(this,"defaultEffects",null);let{uuid:s,s3Bucket:o}=t,n=ge(e,`${s}/`),a=o?ge(`https://${o}.s3.amazonaws.com/`,`${s}/${t.filename}`):null;this.uuid=s,this.name=i||t.filename,this.size=t.size,this.isStored=t.isStored,this.isImage=t.isImage,this.mimeType=t.mimeType,this.cdnUrl=n,this.originalFilename=t.originalFilename,this.imageInfo=t.imageInfo,this.videoInfo=t.videoInfo,this.contentInfo=t.contentInfo,this.metadata=t.metadata||null,this.s3Bucket=o||null,this.s3Url=a,Yn(t)&&(this.defaultEffects=t.defaultEffects)}},Jn=(r,{publicKey:t,fileName:e,baseURL:i,secureSignature:s,secureExpire:o,store:n,contentType:a,signal:l,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,baseCDN:g,metadata:y})=>Hn(r,{publicKey:t,fileName:e,contentType:a,baseURL:i,secureSignature:s,secureExpire:o,store:n,signal:l,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:y}).then(({file:w})=>Qi(w,{publicKey:t,baseURL:i,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:l})).then(w=>new _e(w,{baseCDN:g})),Qn=(r,{publicKey:t,fileName:e,baseURL:i,signal:s,onProgress:o,source:n,integration:a,userAgent:l,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:h,baseCDN:d})=>gs(r,{publicKey:t,baseURL:i,signal:s,source:n,integration:a,userAgent:l,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:h}).then(p=>new _e(p,{baseCDN:d,fileName:e})).then(p=>(o&&o({isComputable:!0,value:1}),p)),ea=(r,{signal:t}={})=>{let e=null,i=null,s=r.map(()=>new AbortController),o=n=>()=>{i=n,s.forEach((a,l)=>l!==n&&a.abort())};return zt(t,()=>{s.forEach(n=>n.abort())}),Promise.all(r.map((n,a)=>{let l=o(a);return Promise.resolve().then(()=>n({stopRace:l,signal:s[a].signal})).then(c=>(l(),c)).catch(c=>(e=c,null))})).then(n=>{if(i===null)throw e;return n[i]})},ta=window.WebSocket,qi=class{constructor(){u(this,"events",Object.create({}))}emit(t,e){var i;(i=this.events[t])==null||i.forEach(s=>s(e))}on(t,e){this.events[t]=this.events[t]||[],this.events[t].push(e)}off(t,e){e?this.events[t]=this.events[t].filter(i=>i!==e):this.events[t]=[]}},ia=(r,t)=>r==="success"?{status:X.Success,...t}:r==="progress"?{status:X.Progress,...t}:{status:X.Error,...t},Ki=class{constructor(t,e=3e4){u(this,"key");u(this,"disconnectTime");u(this,"ws");u(this,"queue",[]);u(this,"isConnected",!1);u(this,"subscribers",0);u(this,"emmitter",new qi);u(this,"disconnectTimeoutId",null);this.key=t,this.disconnectTime=e}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let t=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new ta(t),this.ws.addEventListener("error",e=>{this.emmitter.emit("error",new Error(e.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(e=>this.send(e.event,e.data)),this.queue=[]}),this.ws.addEventListener("message",e=>{let i=JSON.parse(e.data.toString());switch(i.event){case"pusher:connection_established":{this.emmitter.emit("connected",void 0);break}case"pusher:ping":{this.send("pusher:pong",{});break}case"progress":case"success":case"fail":this.emmitter.emit(i.channel,ia(i.event,JSON.parse(i.data)))}})}}disconnect(){let t=()=>{var e;(e=this.ws)==null||e.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{t()},this.disconnectTime):t()}send(t,e){var s;let i=JSON.stringify({event:t,data:e});(s=this.ws)==null||s.send(i)}subscribe(t,e){this.subscribers+=1,this.connect();let i=`task-status-${t}`,s={event:"pusher:subscribe",data:{channel:i}};this.emmitter.on(i,e),this.isConnected?this.send(s.event,s.data):this.queue.push(s)}unsubscribe(t){this.subscribers-=1;let e=`task-status-${t}`,i={event:"pusher:unsubscribe",data:{channel:e}};this.emmitter.off(e),this.isConnected?this.send(i.event,i.data):this.queue=this.queue.filter(s=>s.data.channel!==e),this.subscribers===0&&this.disconnect()}onError(t){return this.emmitter.on("error",t),()=>this.emmitter.off("error",t)}},Gi=null,er=r=>{if(!Gi){let t=typeof window=="undefined"?0:3e4;Gi=new Ki(r,t)}return Gi},ra=r=>{er(r).connect()};function sa({token:r,publicKey:t,baseURL:e,integration:i,userAgent:s,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:n,onProgress:a,signal:l}){return us({check:c=>Wn(r,{publicKey:t,baseURL:e,integration:i,userAgent:s,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:n,signal:c}).then(h=>{switch(h.status){case X.Error:return new B(h.error,h.errorCode);case X.Waiting:return!1;case X.Unknown:return new B(`Token "${r}" was not found.`);case X.Progress:return a&&(h.total==="unknown"?a({isComputable:!1}):a({isComputable:!0,value:h.done/h.total})),!1;case X.Success:return a&&a({isComputable:!0,value:h.done/h.total}),h;default:throw new Error("Unknown status")}}),signal:l})}var oa=({token:r,pusherKey:t,signal:e,onProgress:i})=>new Promise((s,o)=>{let n=er(t),a=n.onError(o),l=()=>{a(),n.unsubscribe(r)};zt(e,()=>{l(),o(new Te("pusher cancelled"))}),n.subscribe(r,c=>{switch(c.status){case X.Progress:{i&&(c.total==="unknown"?i({isComputable:!1}):i({isComputable:!0,value:c.done/c.total}));break}case X.Success:{l(),i&&i({isComputable:!0,value:c.done/c.total}),s(c);break}case X.Error:l(),o(new B(c.msg,c.error_code))}})}),na=(r,{publicKey:t,fileName:e,baseURL:i,baseCDN:s,checkForUrlDuplicates:o,saveUrlForRecurrentUploads:n,secureSignature:a,secureExpire:l,store:c,signal:h,onProgress:d,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:g,pusherKey:y=T.pusherKey,metadata:w})=>Promise.resolve(ra(y)).then(()=>jn(r,{publicKey:t,fileName:e,baseURL:i,checkForUrlDuplicates:o,saveUrlForRecurrentUploads:n,secureSignature:a,secureExpire:l,store:c,signal:h,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:g,metadata:w})).catch(v=>{let C=er(y);return C==null||C.disconnect(),Promise.reject(v)}).then(v=>v.type===Xi.FileInfo?v:ea([({signal:C})=>sa({token:v.token,publicKey:t,baseURL:i,integration:m,userAgent:f,retryThrottledRequestMaxTimes:g,onProgress:d,signal:C}),({signal:C})=>oa({token:v.token,pusherKey:y,signal:C,onProgress:d})],{signal:h})).then(v=>{if(v instanceof B)throw v;return v}).then(v=>Qi(v.uuid,{publicKey:t,baseURL:i,integration:m,userAgent:f,retryThrottledRequestMaxTimes:g,onProgress:d,signal:h})).then(v=>new _e(v,{baseCDN:s})),Wi=new WeakMap,aa=async r=>{if(Wi.has(r))return Wi.get(r);let t=await fetch(r.uri).then(e=>e.blob());return Wi.set(r,t),t},_s=async r=>{if(Gt(r)||jt(r))return r.size;if(Wt(r))return(await aa(r)).size;throw new Error("Unknown file type. Cannot determine file size.")},la=(r,t=T.multipartMinFileSize)=>r>=t,bs=r=>{let t="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",e=new RegExp(t);return!Ve(r)&&e.test(r)},tr=r=>{let t="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",e=new RegExp(t);return!Ve(r)&&e.test(r)},ca=(r,t)=>new Promise((e,i)=>{let s=[],o=!1,n=t.length,a=[...t],l=()=>{let c=t.length-a.length,h=a.shift();h&&h().then(d=>{o||(s[c]=d,n-=1,n?l():e(s))}).catch(d=>{o=!0,i(d)})};for(let c=0;c<r;c++)l()}),ua=(r,t,e,i)=>{let s=i*t,o=Math.min(s+i,e);return r.slice(s,o)},da=async(r,t,e)=>i=>ua(r,i,t,e),ha=(r,t,{publicKey:e,contentType:i,onProgress:s,signal:o,integration:n,retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:l})=>Kn(r,t,{publicKey:e,contentType:i,onProgress:s,signal:o,integration:n,retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:l}),pa=async(r,{publicKey:t,fileName:e,fileSize:i,baseURL:s,secureSignature:o,secureExpire:n,store:a,signal:l,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,contentType:g,multipartChunkSize:y=T.multipartChunkSize,maxConcurrentRequests:w=T.maxConcurrentRequests,baseCDN:v,metadata:C})=>{let R=i!=null?i:await _s(r),Z,re=(D,j)=>{if(!c)return;Z||(Z=Array(D).fill(0));let ee=se=>se.reduce((he,Ni)=>he+Ni,0);return se=>{se.isComputable&&(Z[j]=se.value,c({isComputable:!0,value:ee(Z)/D}))}};return g||(g=fs(r)),qn(R,{publicKey:t,contentType:g,fileName:e||ms(r),baseURL:s,secureSignature:o,secureExpire:n,store:a,signal:l,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:C}).then(async({uuid:D,parts:j})=>{let ee=await da(r,R,y);return Promise.all([D,ca(w,j.map((se,he)=>()=>ha(ee(he),se,{publicKey:t,contentType:g,onProgress:re(j.length,he),signal:l,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})))])}).then(([D])=>Zn(D,{publicKey:t,baseURL:s,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})).then(D=>D.isReady?D:Qi(D.uuid,{publicKey:t,baseURL:s,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:l})).then(D=>new _e(D,{baseCDN:v}))};async function ir(r,{publicKey:t,fileName:e,baseURL:i=T.baseURL,secureSignature:s,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartMinFileSize:g,multipartChunkSize:y,maxConcurrentRequests:w,baseCDN:v=T.baseCDN,checkForUrlDuplicates:C,saveUrlForRecurrentUploads:R,pusherKey:Z,metadata:re}){if(Ve(r)){let D=await _s(r);return la(D,g)?pa(r,{publicKey:t,contentType:f,multipartChunkSize:y,fileSize:D,fileName:e,baseURL:i,secureSignature:s,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,maxConcurrentRequests:w,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:v,metadata:re}):Jn(r,{publicKey:t,fileName:e,contentType:f,baseURL:i,secureSignature:s,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:v,metadata:re})}if(tr(r))return na(r,{publicKey:t,fileName:e,baseURL:i,baseCDN:v,checkForUrlDuplicates:C,saveUrlForRecurrentUploads:R,secureSignature:s,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,pusherKey:Z,metadata:re});if(bs(r))return Qn(r,{publicKey:t,fileName:e,baseURL:i,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:v});throw new TypeError(`File uploading from "${r}" is not supported`)}var Zi=class{constructor(t,{baseCDN:e=T.baseCDN}={}){u(this,"uuid");u(this,"filesCount");u(this,"totalSize");u(this,"isStored");u(this,"isImage");u(this,"cdnUrl");u(this,"files");u(this,"createdAt");u(this,"storedAt",null);this.uuid=t.id,this.filesCount=t.filesCount;let i=t.files.filter(Boolean);this.totalSize=Object.values(i).reduce((s,o)=>s+o.size,0),this.isStored=!!t.datetimeStored,this.isImage=!!Object.values(i).filter(s=>s.isImage).length,this.cdnUrl=t.cdnUrl,this.files=i.map(s=>new _e(s,{baseCDN:e})),this.createdAt=t.datetimeCreated,this.storedAt=t.datetimeStored}},fa=r=>{for(let t of r)if(!Ve(t))return!1;return!0},ma=r=>{for(let t of r)if(!bs(t))return!1;return!0},ga=r=>{for(let t of r)if(!tr(t))return!1;return!0};function vs(r,{publicKey:t,fileName:e,baseURL:i=T.baseURL,secureSignature:s,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:g=T.multipartChunkSize,baseCDN:y=T.baseCDN,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:v,jsonpCallback:C}){if(!fa(r)&&!ga(r)&&!ma(r))throw new TypeError(`Group uploading from "${r}" is not supported`);let R,Z=!0,re=r.length,D=(j,ee)=>{if(!l)return;R||(R=Array(j).fill(0));let se=he=>he.reduce((Ni,Vo)=>Ni+Vo)/j;return he=>{if(!he.isComputable||!Z){Z=!1,l({isComputable:!1});return}R[ee]=he.value,l({isComputable:!0,value:se(R)})}};return Promise.all(r.map((j,ee)=>Ve(j)||tr(j)?ir(j,{publicKey:t,fileName:e,baseURL:i,secureSignature:s,secureExpire:o,store:n,signal:a,onProgress:D(re,ee),source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:g,baseCDN:y,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:v}).then(se=>se.uuid):j)).then(j=>Xn(j,{publicKey:t,baseURL:i,jsonpCallback:C,secureSignature:s,secureExpire:o,signal:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m}).then(ee=>new Zi(ee,{baseCDN:y})).then(ee=>(l&&l({isComputable:!0,value:1}),ee)))}var Bt=class{constructor(t){u(this,"_concurrency",1);u(this,"_pending",[]);u(this,"_running",0);u(this,"_resolvers",new Map);u(this,"_rejectors",new Map);this._concurrency=t}_run(){let t=this._concurrency-this._running;for(let e=0;e<t;e++){let i=this._pending.shift();if(!i)return;let s=this._resolvers.get(i),o=this._rejectors.get(i);if(!s||!o)throw new Error("Unexpected behavior: resolver or rejector is undefined");this._running+=1,i().finally(()=>{this._resolvers.delete(i),this._rejectors.delete(i),this._running-=1,this._run()}).then(n=>s(n)).catch(n=>o(n))}}add(t){return new Promise((e,i)=>{this._resolvers.set(t,e),this._rejectors.set(t,i),this._pending.push(t),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(t){this._concurrency=t,this._run()}get concurrency(){return this._concurrency}};var rr=()=>({}),sr=r=>({...rr(),"*currentActivity":null,"*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{r.set$({"*currentActivity":null,"*modalActive":!1})}}),qt=r=>({...sr(r),"*commonProgress":0,"*uploadList":[],"*uploadQueue":new Bt(1),"*collectionErrors":[],"*collectionState":null,"*groupInfo":null,"*uploadTrigger":new Set,"*secureUploadsManager":null});var ot={"locale-id":"en","social-source-lang":"en","upload-file":"Upload file","upload-files":"Upload files","choose-file":"Choose file","choose-files":"Choose files","drop-files-here":"Drop files here","select-file-source":"Select file source",selected:"Selected",upload:"Upload","add-more":"Add more",cancel:"Cancel","start-from-cancel":"Cancel",clear:"Clear","camera-shot":"Shot","upload-url":"Import","upload-url-placeholder":"Paste link here","edit-image":"Edit image","edit-detail":"Details",back:"Back",done:"Done",ok:"Ok","remove-from-list":"Remove",no:"No",yes:"Yes","confirm-your-action":"Confirm your action","are-you-sure":"Are you sure?","selected-count":"{{count}} of {{total}} selected","select-all":"Select all","deselect-all":"Deselect all","upload-error":"Upload error","validation-error":"Validation error","no-files":"No files selected",browse:"Browse","not-uploaded-yet":"Not uploaded yet...",file__one:"file",file__other:"files",error__one:"error",error__other:"errors","header-uploading":"Uploading {{count}} {{plural:file(count)}}","header-failed":"{{count}} {{plural:error(count)}}","header-succeed":"{{count}} {{plural:file(count)}} uploaded","header-total":"{{count}} {{plural:file(count)}} selected","src-type-local":"From device","src-type-from-url":"From link","src-type-camera":"Camera","src-type-draw":"Draw","src-type-facebook":"Facebook","src-type-dropbox":"Dropbox","src-type-gdrive":"Google Drive","src-type-gphotos":"Google Photos","src-type-flickr":"Flickr","src-type-vk":"VK","src-type-evernote":"Evernote","src-type-box":"Box","src-type-onedrive":"Onedrive","src-type-huddle":"Huddle","src-type-other":"Other","caption-from-url":"Import from link","caption-camera":"Camera","caption-draw":"Draw","caption-edit-file":"Edit file","file-no-name":"No name...","toggle-fullscreen":"Toggle fullscreen","toggle-guides":"Toggle guides",rotate:"Rotate","flip-vertical":"Flip vertical","flip-horizontal":"Flip horizontal",apply:"Apply",brightness:"Brightness",contrast:"Contrast",saturation:"Saturation",exposure:"Exposure",gamma:"Gamma",vibrance:"Vibrance",warmth:"Warmth",enhance:"Enhance",original:"Original",resize:"Resize image",crop:"Crop","select-color":"Select color",text:"Text",draw:"Draw","cancel-edit":"Cancel edit","tab-view":"Preview","tab-details":"Details","file-name":"Name","file-size":"Size","cdn-url":"CDN URL","file-size-unknown":"Unknown","camera-permissions-denied":"Camera access denied","camera-permissions-prompt":"Please allow access to the camera","camera-permissions-request":"Request access","files-count-limit-error-title":"Files count limit overflow","files-count-limit-error-too-few":"You\u2019ve chosen {{total}} {{plural:file(total)}}. At least {{min}} {{plural:file(min)}} required.","files-count-limit-error-too-many":"You\u2019ve chosen too many files. {{max}} {{plural:file(max)}} is maximum.","files-max-size-limit-error":"File is too big. Max file size is {{maxFileSize}}.","has-validation-errors":"File validation error occurred. Please, check your files before upload.","images-only-accepted":"Only image files are accepted.","file-type-not-allowed":"Uploading of these file types is not allowed.","some-files-were-not-uploaded":"Some files were not uploaded.","file-item-edit-button":"Edit","file-item-remove-button":"Remove","a11y-editor-tab-filters":"Filters","a11y-editor-tab-tuning":"Tuning","a11y-editor-tab-crop":"Crop","a11y-activity-header-button-close":"Close",flip:"Flip",mirror:"Mirror","a11y-cloud-editor-apply-filter":"Apply {{name}} filter","a11y-cloud-editor-apply-crop":"Apply {{name}} operation","a11y-cloud-editor-apply-tuning":"Apply {{name}} tuning",finished:"Finished",failed:"Failed",uploading:"Uploading",idle:"Idle","a11y-file-item-status":"File {{fileName}} in status {{status}}","waiting-for":"Waiting for {{source}}"};var Kt=new Map,or=new Map,ys=(r,t)=>{Kt.has(r)&&console.log(`Locale ${r} is already defined. Overwriting...`),Kt.set(r,{...ot,...t})},_a=(r,t)=>{or.set(r,t)},ws=(r,t)=>{typeof t=="function"?_a(r,t):ys(r,t)},Cs=async r=>{if(!Kt.has(r)){if(!or.has(r))throw new Error(`Locale ${r} is not defined`);let e=await or.get(r)();ys(r,e)}return Kt.get(r)};ws("en",ot);var ve=r=>`*l10n/${r}`,ba="en",Zt=class{constructor(t){u(this,"_blockInstance",null);u(this,"_localeName","");u(this,"_callbacks",new Set);u(this,"_boundBlocks",new Map);this._blockInstance=t;for(let[e,i]of Object.entries(ot))this._blockInstance.add(ve(e),i,!1);setTimeout(()=>{t.subConfigValue("localeName",async e=>{var o;if(!this._blockInstance||!e)return;this._localeName=e;let i=await Cs(e);if(e!==ba&&this._localeName!==e)return;let s=(o=this._blockInstance.cfg.localeDefinitionOverride)==null?void 0:o[e];for(let[n,a]of Object.entries(i)){let l=s==null?void 0:s[n];this._blockInstance.add(ve(n),l!=null?l:a,!0);for(let c of this._callbacks)c()}}),t.subConfigValue("localeDefinitionOverride",e=>{var s;if(!e)return;let i=e[this._localeName];if(i)for(let[o,n]of Object.entries(i)){(s=this._blockInstance)==null||s.add(ve(o),n,!0);for(let a of this._callbacks)a()}})})}onLocaleChange(t){let e=L(t,0);return this._callbacks.add(e),()=>{this._callbacks.delete(e)}}bindL10n(t,e,i){var o,n,a;t.$[e]=i(),this._boundBlocks.has(t)||this._boundBlocks.set(t,new Map),(n=(o=this._boundBlocks.get(t))==null?void 0:o.get(e))==null||n();let s=this.onLocaleChange(()=>{t.$[e]=i()});(a=this._boundBlocks.get(t))==null||a.set(e,s)}destroyL10nBindings(t){let e=this._boundBlocks.get(t);if(e){for(let i of e.values())i();this._boundBlocks.delete(t)}}destroy(){this._callbacks.clear()}};function xs(r,t){[...r.querySelectorAll("[l10n]")].forEach(e=>{let i=e.getAttribute("l10n");if(!i)return;let s=i.split(";");for(let o of s)o&&va(e,o,t)})}var va=(r,t,e)=>{let i="textContent",s=!1;if(t.includes(":")){let a=t.split(":");i=a[0],t=a[1],i.startsWith("@")&&(i=i.slice(1),s=!0)}let o=t;e.has(o)&&e.sub(o,a=>{if(!a)return;e.l10nProcessorSubs.has(o)||e.l10nProcessorSubs.set(o,new Set);let l=e.l10nProcessorSubs.get(o);l==null||l.forEach(d=>{d.remove(),l.delete(d),e.allSubs.delete(d)});let c=ve(a).replace("*","");e.nodeCtx.has(c)||e.nodeCtx.add(c,a);let h=e.nodeCtx.sub(c,()=>{r[i]=e.l10n(a)});l==null||l.add(h),e.allSubs.add(h),r.removeAttribute("l10n")});let n=ve(t);e.has(n)||e.add(n,""),e.sub(n,()=>{t=t,s?r.setAttribute(i,e.l10n(t)):r[i]=e.l10n(t)}),r.removeAttribute("l10n")};var z=r=>`*cfg/${r}`;var ya={button:["toolbar"],checkbox:["toolbar"],menuitem:["menu","menubar"],option:["listbox"],tab:["tablist"]};function nt(r,t){t.tabIndex=0,t.focus(),r.tabIndex=-1}function nr(r){let t=r.role||r.type||r.tagName;if(!t)return null;let e=ya[t.toLowerCase()];if(!e)return null;for(let i of e){let s=r.closest(`[role=${i}]`);if(s)return s}}function ar(r,t){return t.role==="toolbar"?wa(t):t.querySelectorAll(`[role=${r.role}]`)}function wa(r){return[...r.querySelectorAll("*")].filter(e=>e.role==="button"||e.type==="button"||e.role==="checkbox"||e.type==="checkbox")}function Ca(r){let t=r.getAttribute("aria-orientation");if(t==="vertical")return!1;if(t==="horizontal")return!0;let e=r.role;return e==="menubar"||e==="tablist"||e==="toolbar"}function As(r){return t=>{let e=!1,i=(r==null?void 0:r.searchDelayMs)||300,s=0,o="";function n(d){let p=nr(d.target);if(!p){a();return}let m=ar(d.target,p),f=Array.from(m).indexOf(d.target),g="ArrowDown",y="ArrowUp";if(Ca(p)&&(t.document.dir==="rtl"?(g="ArrowLeft",y="ArrowRight"):(g="ArrowRight",y="ArrowLeft")),d.key===g)d.preventDefault(),nt(d.target,m[f+1]||m[0]);else if(d.key===y)d.preventDefault(),nt(d.target,m[f-1]||m[m.length-1]);else if(d.key==="Home")d.preventDefault(),nt(d.target,m[0]);else if(d.key==="End")d.preventDefault(),nt(d.target,m[m.length-1]);else if(d.key.length===1&&p.role!=="tablist"){let w=Date.now();w-s<=i?o+=d.key.toLowerCase():o=d.key.toLowerCase(),s=w;let v=Array.from(m).find(C=>{var R,Z,re;return(re=(Z=(R=C.textContent)==null?void 0:R.trim())==null?void 0:Z.toLowerCase())==null?void 0:re.startsWith(o)});v&&(d.preventDefault(),nt(d.target,v))}}function a(){e=!1,t.removeEventListener("keydown",n)}function l(d){let p=nr(d.target);if(p){e||(e=!0,t.addEventListener("keydown",n));let m=ar(d.target,p);for(let f of m)f!==d.target&&f.setAttribute("tabindex",-1)}else e&&a()}function c(d){(!d.relatedTarget||d.relatedTarget===t.document)&&a()}function h(d){let p=nr(d.target);if(p){let m=ar(d.target,p);for(let f of m)f!==d.target&&f.setAttribute("tabindex",-1);d.target.setAttribute("tabindex",0)}}return t.addEventListener("click",h),t.addEventListener("focusin",l),t.addEventListener("focusout",c),()=>{a(),t.removeEventListener("click",h),t.removeEventListener("focusin",l),t.removeEventListener("focusout",c)}}}function Es(){return r=>{let t,e;function i(o){if(o.target.getAttribute("aria-hidden")==="true"){t=o.target,t.setAttribute("aria-hidden","false"),e=t.hidden,e&&(t.hidden=!1);let n=o.target.querySelector('a, button, select, textarea, input:not([type=radio]), [type=radio]:checked, [tabindex]:not([tabindex="-1"])');n&&(n.tabIndex=0)}}function s(o){t&&t.contains(o.target)&&(!o.relatedTarget||!t.contains(o.relatedTarget))&&(o.target.tabIndex=-1,t.setAttribute("aria-hidden","true"),e&&(t.hidden=!0),t=null)}return r.addEventListener("keyuxJump",i),r.addEventListener("focusout",s),()=>{r.removeEventListener("keyuxJump",i),r.removeEventListener("focusout",s)}}}function Ts(){return r=>{let t=[];function e(c){let h=r.document.activeElement;h&&h!==r.document.body&&t.push(new WeakRef(h)),c.focus({focusVisible:!0})}function i(){let c=t.pop();if(!c){r.document.activeElement.blur();return}let h=c.deref();h&&h.isConnected?h.focus():i()}let s=0,o;function n(c){clearInterval(o);let h=c.getAttribute("aria-controls");h&&(o=setInterval(()=>{if(s++>50){clearInterval(o);return}let d=r.document.getElementById(h);if(d){let p=d.querySelector('a, button, select, textarea, input:not([type=radio]), [type=radio]:checked, [tabindex]:not([tabindex="-1"])');p&&(clearInterval(o),d.dispatchEvent(new r.CustomEvent("keyuxJump",{bubbles:!0})),e(p))}},50))}function a(c){c.clientX===0&&c.clientY===0&&n(c.target)}function l(c){c.target.tagName==="INPUT"&&c.key==="Enter"&&n(c.target),c.key==="Escape"&&i()}return r.addEventListener("click",a),r.addEventListener("keydown",l),()=>{r.removeEventListener("click",a),r.removeEventListener("keydown",l)}}}function Ss(r){let t,e=r.split(" ");function i(){t&&t.classList.remove(...e)}function s(o){o.clientX===0&&o.clientY===0&&(i(),o.target.classList.add(...e),t=o.target)}return o=>(o.addEventListener("keyup",i),o.addEventListener("click",s),()=>{o.removeEventListener("keyup",i),o.removeEventListener("click",s)})}function Is(r,t){let e=t.map(i=>i(r));return()=>{e.forEach(i=>i())}}var lr=class{constructor(){u(this,"_listeners",new Map);u(this,"_scope",[])}addEventListener(t,e){let i=s=>{let o=s.target;o&&this._scope.some(n=>n===s.target||n.contains(o))&&e(s)};this._listeners.set(e,i),window.addEventListener(t,i)}removeEventListener(t,e){let i=this._listeners.get(e);i&&window.removeEventListener(t,i),this._listeners.delete(e)}get CustomEvent(){return window.CustomEvent}get document(){return window.document}get navigator(){return window.navigator}registerScope(t){this._scope.push(t)}destroy(){this._scope=[],this._listeners.forEach((t,e)=>{window.removeEventListener("keydown",t),window.removeEventListener("keyup",t),this._listeners.delete(e)})}},Yt=class{constructor(){u(this,"_destroyKeyUX");u(this,"_scopedWindow");this._scopedWindow=new lr,this._destroyKeyUX=Is(this._scopedWindow,[As(),Ss("is-pressed"),Ts(),Es()])}registerBlock(t){this._scopedWindow.registerScope(t)}destroy(){var t;(t=this._destroyKeyUX)==null||t.call(this),this._scopedWindow.destroy()}};var xa="uc-",b=class extends xe{constructor(){super();u(this,"requireCtxName",!1);u(this,"activityType",null);u(this,"init$",rr());this.l10nProcessorSubs=new Map,this.addTemplateProcessor(xs)}l10n(e,i={}){if(!e)return"";let s=this.$[ve(e)]||e,o=os(s);for(let a of o)i[a.variable]=this.pluralize(a.pluralKey,Number(i[a.countVariable]));return rt(s,i)}pluralize(e,i){let s=this.l10n("locale-id")||"en",o=Vt(s,i);return this.l10n(`${e}__${o}`)}bindL10n(e,i){var s;(s=this.localeManager)==null||s.bindL10n(this,e,i)}emit(e,i,s){let o=this.has("*eventEmitter")&&this.$["*eventEmitter"];o&&o.emit(e,i,s)}hasBlockInCtx(e){for(let i of this.blocksRegistry)if(e(i))return!0;return!1}setOrAddState(e,i){this.add$({[e]:i},!0)}connectedCallback(){this.constructor.styleAttrs.forEach(i=>{this.setAttribute(i,"")}),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?ns({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback(),Oe.registerClient(this)}disconnectedCallback(){super.disconnectedCallback(),Oe.unregisterClient(this)}initCallback(){this.has("*blocksRegistry")||this.add("*blocksRegistry",new Set),this.$["*blocksRegistry"].add(this),this.has("*eventEmitter")||this.add("*eventEmitter",new Nt(this.debugPrint.bind(this))),this.has("*localeManager")||this.add("*localeManager",new Zt(this)),this.has("*a11y")||this.add("*a11y",new Yt),this.sub(ve("locale-id"),i=>{let s=is(i);this.style.direction=s==="ltr"?"":s})}get localeManager(){return this.has("*localeManager")?this.$["*localeManager"]:null}get a11y(){return this.has("*a11y")?this.$["*a11y"]:null}get blocksRegistry(){return this.$["*blocksRegistry"]}destroyCallback(){var i;super.destroyCallback();let e=this.blocksRegistry;e==null||e.delete(this),(i=this.localeManager)==null||i.destroyL10nBindings(this),this.l10nProcessorSubs=new Map,E.deleteCtx(this),(e==null?void 0:e.size)===0&&setTimeout(()=>{this.destroyCtxCallback()},0)}destroyCtxCallback(){var e;E.deleteCtx(this.ctxName),(e=this.localeManager)==null||e.destroy()}async proxyUrl(e){if(this.cfg.secureDeliveryProxy&&this.cfg.secureDeliveryProxyUrlResolver&&console.warn("Both secureDeliveryProxy and secureDeliveryProxyUrlResolver are set. The secureDeliveryProxyUrlResolver will be used."),this.cfg.secureDeliveryProxyUrlResolver)try{return await this.cfg.secureDeliveryProxyUrlResolver(e,{uuid:Dt(e),cdnUrlModifiers:Hi(e),fileName:Rt(e)})}catch(i){return console.error("Failed to resolve secure delivery proxy URL. Falling back to the default URL.",i),e}return this.cfg.secureDeliveryProxy?rt(this.cfg.secureDeliveryProxy,{previewUrl:e},{transform:i=>window.encodeURIComponent(i)}):e}get cfg(){if(!this.__cfgProxy){let e=Object.create(null);this.__cfgProxy=new Proxy(e,{set:(i,s,o)=>{if(typeof s!="string")return!1;let n=z(s);return this.has(n)||this.add(n,ie[s]),this.$[n]=o,!0},get:(i,s)=>{let o=z(s);return this.has(o)||this.add(o,ie[s]),this.$[z(s)]}})}return this.__cfgProxy}subConfigValue(e,i){let s=z(e);this.has(s)||this.add(s,ie[e]),this.sub(s,i)}debugPrint(...e){if(!this.cfg.debug)return;let i=e;if(typeof(e==null?void 0:e[0])=="function"){let s=e[0];i=s()}console.log(`[${this.ctxName}]`,...i)}static reg(e){if(!e){super.reg();return}e.startsWith(xa)&&super.reg(e)}};u(b,"StateConsumerScope",null),u(b,"styleAttrs",[]);var $s="<svg width='0' height='0' style='position:absolute'><symbol viewBox='0 0 24 24' id='uc-icon-about' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.152 14.12v.1h1.523v-.1c.007-.409.053-.752.138-1.028.086-.277.22-.517.405-.72.188-.202.434-.397.735-.586.32-.191.593-.412.82-.66.232-.249.41-.531.533-.847.125-.32.187-.678.187-1.076 0-.579-.137-1.085-.41-1.518a2.717 2.717 0 0 0-1.14-1.018c-.49-.245-1.062-.367-1.715-.367-.597 0-1.142.114-1.636.34-.49.228-.884.564-1.182 1.008-.299.44-.46.98-.485 1.619h1.62c.024-.377.118-.684.282-.922a1.48 1.48 0 0 1 .617-.532c.25-.114.51-.17.784-.17.301 0 .575.063.82.191.248.124.447.302.597.533.149.23.223.504.223.82 0 .263-.05.502-.149.72a1.91 1.91 0 0 1-.405.574 3.48 3.48 0 0 1-.575.453 4.22 4.22 0 0 0-.847.66c-.234.242-.415.558-.543.949-.125.39-.19.916-.197 1.577Zm.053 3.03c.21.206.46.31.75.31.196 0 .374-.049.534-.144a1.1 1.1 0 0 0 .383-.384c.1-.163.15-.343.15-.538a1 1 0 0 0-.32-.746 1.019 1.019 0 0 0-.746-.314c-.291 0-.542.105-.751.314-.21.206-.314.455-.314.746 0 .295.104.547.314.756ZM24 12c0 6.627-5.373 12-12 12S0 18.627 0 12 5.373 0 12 0s12 5.373 12 12Zm-1.5 0c0 5.799-4.701 10.5-10.5 10.5S1.5 17.799 1.5 12 6.201 1.5 12 1.5 22.5 6.201 22.5 12Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-add' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M12.75 21a.75.75 0 0 1-1.5 0v-8.25H3a.75.75 0 0 1 0-1.5h8.25V3a.75.75 0 0 1 1.5 0v8.25H21a.75.75 0 0 1 0 1.5h-8.25V21Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-arrow-down' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.5 23.03a.75.75 0 0 0 .999 0l9.29-8.276a.75.75 0 0 0-.998-1.12l-8.042 7.164V1.53a.75.75 0 0 0-1.5 0v19.267l-8.04-7.163a.75.75 0 0 0-.998 1.12z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-back' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M20.251 12a.75.75 0 0 1-.75.75H6.067l5.72 5.85a.75.75 0 1 1-1.072 1.05L4.136 12.92a1.292 1.292 0 0 1 0-1.842l6.579-6.728a.75.75 0 1 1 1.072 1.048l-5.72 5.851H19.5a.75.75 0 0 1 .75.75Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-badge-error' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M13.6 18.4a1.6 1.6 0 1 1-3.2 0 1.6 1.6 0 0 1 3.2 0zM12 4.5A1.5 1.5 0 0 1 13.5 6v7a1.5 1.5 0 0 1-3 0V6A1.5 1.5 0 0 1 12 4.5z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-badge-success' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='m10.5 18.204 7.6-8.183a1.5 1.5 0 0 0-2.2-2.042l-5.4 5.817-2.4-2.586a1.5 1.5 0 1 0-2.2 2.041l4.6 4.953Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-box' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M1.01 4.148a.75.75 0 0 1 .75.75v4.348a4.437 4.437 0 0 1 2.988-1.153c1.734 0 3.23.992 3.978 2.438a4.478 4.478 0 0 1 3.978-2.438c2.49 0 4.488 2.044 4.488 4.543 0 2.5-1.999 4.544-4.488 4.544a4.478 4.478 0 0 1-3.978-2.438 4.478 4.478 0 0 1-3.978 2.438C2.26 17.18.26 15.135.26 12.636V4.898a.75.75 0 0 1 .75-.75Zm.75 8.488c0 1.692 1.348 3.044 2.988 3.044s2.989-1.352 2.989-3.044c0-1.691-1.349-3.043-2.989-3.043S1.76 10.945 1.76 12.636Zm10.944-3.043c-1.64 0-2.988 1.352-2.988 3.043 0 1.692 1.348 3.044 2.988 3.044s2.988-1.352 2.988-3.044c0-1.69-1.348-3.043-2.988-3.043Zm4.328-1.23a.75.75 0 0 1 1.052.128l2.333 2.983 2.333-2.983a.75.75 0 0 1 1.181.924l-2.562 3.277 2.562 3.276a.75.75 0 1 1-1.181.924l-2.333-2.983-2.333 2.983a.75.75 0 1 1-1.181-.924l2.562-3.276-2.562-3.277a.75.75 0 0 1 .129-1.052Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-camera' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M7.65 2.55a.75.75 0 0 1 .6-.3h7.5a.75.75 0 0 1 .6.3l2.025 2.7H21a3 3 0 0 1 3 3v10.5a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V8.25a3 3 0 0 1 3-3h2.625zm.975 1.2L6.6 6.45a.75.75 0 0 1-.6.3H3a1.5 1.5 0 0 0-1.5 1.5v10.5a1.5 1.5 0 0 0 1.5 1.5h18a1.5 1.5 0 0 0 1.5-1.5V8.25a1.5 1.5 0 0 0-1.5-1.5h-3a.75.75 0 0 1-.6-.3l-2.025-2.7zm3.375 6a3.375 3.375 0 1 0 0 6.75 3.375 3.375 0 0 0 0-6.75zm-4.875 3.375a4.875 4.875 0 1 1 9.75 0 4.875 4.875 0 0 1-9.75 0z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-camera-full' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M2 4.667a2 2 0 0 0-2 2V16a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6.667a2 2 0 0 0-2-2h-2.667l-2-2.667H6.667l-2 2.667H2Zm8 10a3.667 3.667 0 1 0 0-7.334 3.667 3.667 0 0 0 0 7.334Z' fill='currentColor'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-close' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M4.604 4.604a.75.75 0 0 1 1.06 0L12 10.939l6.335-6.335a.75.75 0 1 1 1.061 1.06L13.061 12l6.335 6.335a.75.75 0 1 1-1.06 1.061L12 13.061l-6.335 6.335a.75.75 0 0 1-1.061-1.06L10.939 12 4.604 5.665a.75.75 0 0 1 0-1.061z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-collapse' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M3.116 12a.75.75 0 0 1 .75-.75h16.268a.75.75 0 0 1 0 1.5H3.866a.75.75 0 0 1-.75-.75Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-default' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.501.392a.75.75 0 0 1 .998 0l6.704 5.972a.75.75 0 0 1-.998 1.12l-5.455-4.86v13.439a.75.75 0 0 1-1.5 0V2.625l-5.454 4.86a.75.75 0 1 1-.998-1.12zM.857 16.73a.75.75 0 0 1 .75.75v4.914h20.786v-4.914a.75.75 0 0 1 1.5 0v5.664a.75.75 0 0 1-.75.75H.857a.75.75 0 0 1-.75-.75v-5.664a.75.75 0 0 1 .75-.75z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-dropbox' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M6.019 1.92a.75.75 0 0 1 .806 0L12 5.219l5.176-3.297a.75.75 0 0 1 .806 0l5.577 3.553a.75.75 0 0 1 0 1.265l-4.574 2.914 4.574 2.914a.75.75 0 0 1 0 1.265l-5.577 3.554a.75.75 0 0 1-.806 0L12 14.089l-5.175 3.297a.75.75 0 0 1-.806 0L.44 13.833a.75.75 0 0 1 0-1.266l4.575-2.914L.44 6.74a.75.75 0 0 1 0-1.265zm.403 8.616L2.24 13.2l4.182 2.664 4.181-2.664zm6.975 2.664 4.182 2.664L21.76 13.2l-4.181-2.664zm2.776-3.547L12 12.311 7.828 9.653 12 6.995zm1.406-.882 4.181-2.664-4.181-2.664-4.182 2.664zm-6.976-2.664L6.422 3.443 2.24 6.107 6.422 8.77zM5.791 18.544a.75.75 0 0 1 1.035-.23l5.175 3.297 5.175-3.297a.75.75 0 1 1 .806 1.265l-5.578 3.554a.75.75 0 0 1-.806 0L6.02 19.579a.75.75 0 0 1-.23-1.035z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-edit-file' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M18.558 2.804a.78.78 0 0 0-.557.235l-.008.007-2.472 2.46 3.847 3.848 2.46-2.473.004-.003a.78.78 0 0 0 0-1.108l-.004-.003-2.712-2.728a.78.78 0 0 0-.558-.235Zm-.248 7.613-3.852-3.852-8.93 8.887-1.516 5.41 5.41-1.515 8.888-8.93Zm-.636-8.934a2.28 2.28 0 0 1 2.512.505l2.702 2.717.002.002a2.278 2.278 0 0 1 0 3.234l-.002.002-12.541 12.602a.75.75 0 0 1-.33.193l-6.884 1.928a.75.75 0 0 1-.925-.924l1.928-6.885a.75.75 0 0 1 .193-.33l12.603-12.54a2.28 2.28 0 0 1 .742-.504Z' clip-rule='evenodd'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-error' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M13 13h-2V7h2m0 10h-2v-2h2M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-evernote' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M9.804 2.27v-.048c.055-.263.313-.562.85-.562h.44c.142 0 .325.014.526.033.066.009.124.023.267.06l.13.032h.002c.319.079.515.275.644.482a1.461 1.461 0 0 1 .16.356l.004.012a.75.75 0 0 0 .603.577l1.191.207a1988.512 1988.512 0 0 0 2.332.402c.512.083 1.1.178 1.665.442.64.3 1.19.795 1.376 1.77.548 2.931.657 5.829.621 8a39.233 39.233 0 0 1-.125 2.602 17.518 17.518 0 0 1-.092.849.735.735 0 0 0-.024.112c-.378 2.705-1.269 3.796-2.04 4.27-.746.457-1.53.451-2.217.447h-.192c-.46 0-1.073-.23-1.581-.635-.518-.412-.763-.87-.763-1.217 0-.45.188-.688.355-.786.161-.095.436-.137.796.087a.75.75 0 1 0 .792-1.274c-.766-.476-1.64-.52-2.345-.108-.7.409-1.098 1.188-1.098 2.08 0 .996.634 1.84 1.329 2.392.704.56 1.638.96 2.515.96l.185.002c.667.009 1.874.025 3.007-.67 1.283-.786 2.314-2.358 2.733-5.276a4.213 4.213 0 0 0 .056-.335c.023-.184.051-.445.079-.772.055-.655.111-1.585.13-2.704.037-2.234-.074-5.239-.647-8.301v-.002c-.294-1.544-1.233-2.391-2.215-2.85-.777-.363-1.623-.496-2.129-.576a8.872 8.872 0 0 1-.25-.041l-.006-.001-1.99-.345-.761-.132a2.93 2.93 0 0 0-.182-.338A2.532 2.532 0 0 0 12.379.329l-.091-.023a3.967 3.967 0 0 0-.493-.103L11.769.2a7.846 7.846 0 0 0-.675-.04h-.44c-.733 0-1.368.284-1.795.742L2.416 7.431c-.468.428-.751 1.071-.751 1.81 0 .02 0 .041.003.062l.003.034c.017.21.038.468.096.796.107.715.275 1.47.391 1.994.029.13.055.245.075.342l.002.008c.258 1.141.641 1.94.978 2.466.168.263.323.456.444.589a2.808 2.808 0 0 0 .192.194c1.536 1.562 3.713 2.196 5.731 2.08.13-.005.35-.032.537-.073a2.627 2.627 0 0 0 .652-.24c.425-.26.75-.661.992-1.046.184-.294.342-.61.473-.915a3.8 3.8 0 0 0 .627.493 5.022 5.022 0 0 0 1.97.709l.023.002.018.003.11.016c.088.014.205.035.325.058l.056.014c.088.022.164.04.235.061a1.736 1.736 0 0 1 .145.048l.03.014c.765.34 1.302 1.09 1.302 1.871a.75.75 0 0 0 1.5 0c0-1.456-.964-2.69-2.18-3.235a3.595 3.595 0 0 0-.679-.217l-.063-.015a10.616 10.616 0 0 0-.606-.105l-.02-.003-.03-.003h-.002a3.542 3.542 0 0 1-1.331-.485c-.471-.298-.788-.692-.828-1.234a.75.75 0 0 0-1.48-.106l-.001.003-.004.017a8.23 8.23 0 0 1-.092.352 9.963 9.963 0 0 1-.298.892c-.132.34-.29.68-.47.966-.174.276-.339.454-.478.549a1.178 1.178 0 0 1-.221.072 1.949 1.949 0 0 1-.241.036h-.013l-.032.002c-1.684.1-3.423-.437-4.604-1.65a.746.746 0 0 0-.053-.05L4.84 14.6a1.348 1.348 0 0 1-.07-.073 2.99 2.99 0 0 1-.293-.392c-.242-.379-.558-1.014-.778-1.985a54.1 54.1 0 0 0-.083-.376 27.494 27.494 0 0 1-.367-1.872l-.003-.02a6.791 6.791 0 0 1-.08-.67c.004-.277.086-.475.2-.609l.067-.067a.63.63 0 0 1 .292-.145h.05c.18 0 1.095.055 2.013.115l1.207.08.534.037a.747.747 0 0 0 .052.002c.782 0 1.349-.206 1.759-.585l.005-.005c.553-.52.622-1.225.622-1.76V6.24l-.026-.565A774.97 774.97 0 0 1 9.885 4.4c-.042-.961-.081-1.939-.081-2.13ZM4.995 6.953a251.126 251.126 0 0 1 2.102.137l.508.035c.48-.004.646-.122.715-.185.07-.068.146-.209.147-.649l-.024-.548a791.69 791.69 0 0 1-.095-2.187L4.995 6.953Zm16.122 9.996Zm-5.479-5.323a.75.75 0 0 0 1.014.31 2.04 2.04 0 0 1 .304-.089 1.84 1.84 0 0 1 .544-.039c.215.023.321.06.37.085.033.016.039.026.047.04a.75.75 0 0 0 1.289-.767c-.337-.567-.906-.783-1.552-.85a3.334 3.334 0 0 0-1.002.062c-.27.056-.531.14-.705.234a.75.75 0 0 0-.31 1.014Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-expand' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='m12 8.337-8.47 8.47a.75.75 0 0 1-1.06-1.06l8.605-8.606a1.29 1.29 0 0 1 1.85 0l8.605 8.605a.75.75 0 1 1-1.06 1.06L12 8.338Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-external-source-placeholder' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M6.341 3.27a10.5 10.5 0 0 1 5.834-1.77.75.75 0 0 0 0-1.5 12 12 0 1 0 12 12 .75.75 0 0 0-1.5 0A10.5 10.5 0 1 1 6.34 3.27Zm14.145 1.48a.75.75 0 1 0-1.06-1.062L9.925 13.19V7.95a.75.75 0 1 0-1.5 0V15c0 .414.336.75.75.75h7.05a.75.75 0 0 0 0-1.5h-5.24l9.501-9.5Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-facebook' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M12 1.5C6.201 1.5 1.5 6.201 1.5 12c0 4.943 3.416 9.089 8.016 10.204v-6.108H7.383a.75.75 0 0 1-.75-.75v-3.281a.75.75 0 0 1 .75-.75h2.133V9.393c0-.958.225-2.511 1.38-3.65 1.194-1.177 3.174-1.718 6.254-1.056a.75.75 0 0 1 .592.733v2.754a.75.75 0 0 1-.75.75c-.692 0-1.203.026-1.584.082-.387.057-.578.137-.675.202-.109.073-.237.205-.237 1.029v1.078h2.39a.75.75 0 0 1 .742.866l-.516 3.281a.75.75 0 0 1-.74.634h-1.876v6.106C19.09 21.082 22.5 16.939 22.5 12c0-5.799-4.701-10.5-10.5-10.5zM0 12C0 5.373 5.373 0 12 0s12 5.373 12 12c0 5.995-4.395 10.961-10.138 11.856a.75.75 0 0 1-.866-.74v-7.77a.75.75 0 0 1 .75-.75h1.984l.28-1.781h-2.264a.75.75 0 0 1-.75-.75v-1.828c0-.829.089-1.729.9-2.274.363-.244.807-.37 1.293-.441a9.623 9.623 0 0 1 1.053-.086V6.04c-2.41-.405-3.645.132-4.293.771-.737.728-.933 1.793-.933 2.582v2.672a.75.75 0 0 1-.75.75H8.133v1.78h2.133a.75.75 0 0 1 .75.75v7.772a.75.75 0 0 1-.865.741C4.4 22.968 0 18 0 12z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-file' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M2.895 1.201c0-.473.383-.857.857-.857h8.4c.227 0 .445.09.606.251l8.4 8.4c.16.16.25.379.25.606v13.2a.857.857 0 0 1-.856.857h-16.8a.857.857 0 0 1-.857-.857zm1.714.857v19.886h15.085V10.458h-7.542a.857.857 0 0 1-.858-.857V2.058zm8.4 1.213 5.473 5.473H13.01z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-flickr' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M5.959 7.926c-2.298 0-4.14 1.834-4.14 4.073 0 2.241 1.842 4.075 4.14 4.075 2.302 0 4.145-1.834 4.145-4.075 0-2.238-1.843-4.073-4.145-4.073Zm-5.64 4.073c0-3.086 2.533-5.573 5.64-5.573 3.11 0 5.645 2.486 5.645 5.573 0 3.089-2.535 5.575-5.645 5.575-3.107 0-5.64-2.487-5.64-5.575Zm18.07-4.073c-2.301 0-4.144 1.835-4.144 4.073 0 2.24 1.843 4.075 4.145 4.075 2.299 0 4.141-1.834 4.141-4.075 0-2.239-1.842-4.073-4.141-4.073Zm-5.644 4.073c0-3.087 2.535-5.573 5.645-5.573 3.108 0 5.641 2.487 5.641 5.573 0 3.088-2.533 5.575-5.641 5.575-3.11 0-5.645-2.486-5.645-5.575Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-gdrive' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M7.736 1.818a.75.75 0 0 1 .647-.37h7.587a.75.75 0 0 1 .655.383l7.233 12.946a.75.75 0 0 1-.003.737l-3.794 6.66a.75.75 0 0 1-.651.378H4.59a.75.75 0 0 1-.651-.378l-3.794-6.66a.75.75 0 0 1 .005-.75zm.64 1.876L1.663 15.148l2.93 5.145 6.655-11.581zm3.736 6.526-2.398 4.173H14.5zm4.116 4.173h5.697L15.53 2.947H9.677zm5.685 1.5H8.852l-2.966 5.16h13.088z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-gphotos' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M12.51 0c-.702 0-1.272.57-1.272 1.273V7.35A6.381 6.381 0 0 0 0 11.489c0 .703.57 1.273 1.273 1.273H7.35A6.381 6.381 0 0 0 11.488 24c.704 0 1.274-.57 1.274-1.273V16.65A6.381 6.381 0 0 0 24 12.51c0-.703-.57-1.273-1.273-1.273H16.65A6.381 6.381 0 0 0 12.511 0Zm.252 11.232V1.53a4.857 4.857 0 0 1 0 9.702Zm-1.53.006H1.53a4.857 4.857 0 0 1 9.702 0Zm1.536 1.524a4.857 4.857 0 0 0 9.702 0h-9.702Zm-6.136 4.857c0-2.598 2.04-4.72 4.606-4.85v9.7a4.857 4.857 0 0 1-4.606-4.85Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-huddle' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M6.204 2.002c-.252.23-.357.486-.357.67V21.07c0 .15.084.505.313.812.208.28.499.477.929.477.519 0 .796-.174.956-.365.178-.212.286-.535.286-.924v-.013l.117-6.58c.004-1.725 1.419-3.883 3.867-3.883 1.33 0 2.332.581 2.987 1.364.637.762.95 1.717.95 2.526v6.47c0 .392.11.751.305.995.175.22.468.41 1.008.41.52 0 .816-.198 1.002-.437.207-.266.31-.633.31-.969V14.04c0-2.81-1.943-5.108-4.136-5.422a5.971 5.971 0 0 0-3.183.41c-.912.393-1.538.96-1.81 1.489a.75.75 0 0 1-1.417-.344v-7.5c0-.587-.47-1.031-1.242-1.031-.315 0-.638.136-.885.36ZM5.194.892A2.844 2.844 0 0 1 7.09.142c1.328 0 2.742.867 2.742 2.53v5.607a6.358 6.358 0 0 1 1.133-.629 7.47 7.47 0 0 1 3.989-.516c3.056.436 5.425 3.482 5.425 6.906v6.914c0 .602-.177 1.313-.627 1.89-.47.605-1.204 1.016-2.186 1.016-.96 0-1.698-.37-2.179-.973-.46-.575-.633-1.294-.633-1.933v-6.469c0-.456-.19-1.071-.602-1.563-.394-.471-.986-.827-1.836-.827-1.447 0-2.367 1.304-2.367 2.39v.014l-.117 6.58c-.001.64-.177 1.333-.637 1.881-.48.57-1.2.9-2.105.9-.995 0-1.7-.5-2.132-1.081-.41-.552-.61-1.217-.61-1.708V2.672c0-.707.366-1.341.847-1.78Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-info' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11 9h2V7h-2m1 13c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m0-18A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2m-1 15h2v-6h-2v6Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-local' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M3 3.75a1.5 1.5 0 0 0-1.5 1.5v13.5a1.5 1.5 0 0 0 1.5 1.5h18a1.5 1.5 0 0 0 1.5-1.5V9A1.5 1.5 0 0 0 21 7.5h-9a.75.75 0 0 1-.643-.364L9.325 3.75zm-3 1.5a3 3 0 0 1 3-3h6.75a.75.75 0 0 1 .643.364L12.425 6H21a3 3 0 0 1 3 3v9.75a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-microphone' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' clip-rule='evenodd' d='M7.5 4.781a4.5 4.5 0 0 1 9 0v6.469a4.5 4.5 0 1 1-9 0V4.781Zm4.5-3a3 3 0 0 0-3 3v6.469a3 3 0 1 0 6 0V4.781a3 3 0 0 0-3-3Zm-8.156 8.11a.75.75 0 0 1 .75.75 7.406 7.406 0 1 0 14.812 0 .75.75 0 0 1 1.5 0 8.907 8.907 0 0 1-8.156 8.875v2.703h3.258a.75.75 0 1 1 0 1.5H7.992a.75.75 0 0 1 0-1.5h3.258v-2.703a8.907 8.907 0 0 1-8.156-8.875.75.75 0 0 1 .75-.75Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-microphone-mute' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' clip-rule='evenodd' d='M7.5 4.781a4.5 4.5 0 0 1 9 0V6l3.524-3.524a.75.75 0 1 1 1.061 1.06L5.036 19.585a.75.75 0 0 1-1.06-1.06l1.656-1.657a8.88 8.88 0 0 1-2.538-6.227.75.75 0 0 1 1.5 0c0 2.009.8 3.83 2.1 5.166l1.771-1.772A4.483 4.483 0 0 1 7.5 11.25V4.781Zm2.037 8.182L15 7.5V4.781a3 3 0 1 0-6 0v6.469c0 .637.198 1.227.537 1.713Zm10.62-3.072a.75.75 0 0 1 .75.75 8.907 8.907 0 0 1-8.157 8.875v2.703h3.258a.75.75 0 1 1 0 1.5H7.992a.75.75 0 0 1 0-1.5h3.258v-2.703a8.855 8.855 0 0 1-3.035-.811.75.75 0 1 1 .638-1.358 7.406 7.406 0 0 0 10.553-6.707.75.75 0 0 1 .75-.75ZM15 10.81a.75.75 0 0 1 1.5 0v.439a4.5 4.5 0 0 1-5 4.473.75.75 0 1 1 .166-1.491A3 3 0 0 0 15 11.25v-.44Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-onedrive' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M13.616 4.147a7.689 7.689 0 0 0-7.642 3.285A6.299 6.299 0 0 0 1.455 17.3c.684.894 2.473 2.658 5.17 2.658h12.141c.95 0 1.882-.256 2.697-.743.815-.486 1.514-1.247 1.964-2.083a5.26 5.26 0 0 0-3.713-7.612 7.69 7.69 0 0 0-6.098-5.373ZM3.34 17.15c.674.63 1.761 1.308 3.284 1.308h12.142a3.76 3.76 0 0 0 2.915-1.383l-7.494-4.489L3.34 17.15Zm10.875-6.25 2.47-1.038a5.239 5.239 0 0 1 1.427-.389 6.19 6.19 0 0 0-10.3-1.952 6.338 6.338 0 0 1 2.118.813l4.285 2.567Zm4.55.033c-.512 0-1.019.104-1.489.307l-.006.003-1.414.594 6.521 3.906a3.76 3.76 0 0 0-3.357-4.8l-.254-.01ZM4.097 9.617A4.799 4.799 0 0 1 6.558 8.9c.9 0 1.84.25 2.587.713l3.4 2.037-10.17 4.28a4.799 4.799 0 0 1 1.721-6.312Z'/></symbol><symbol fill='none' viewBox='0 0 10 10' id='uc-icon-pause' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' d='M1 0h2.5v10H1zM6.5 0H9v10H6.5z'/></symbol><symbol fill='none' viewBox='0 0 10 10' id='uc-icon-play' xmlns='http://www.w3.org/2000/svg'><path d='m1 0 9 5-9 5V0Z' fill='currentColor'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-remove-file' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.955 3.3A2.969 2.969 0 0 0 8.998 6h5.914a2.97 2.97 0 0 0-2.957-2.7zM16.416 6a4.47 4.47 0 0 0-8.922 0h-2.32a.755.755 0 0 0-.111.008H3.075a.75.75 0 1 0 0 1.5h1.35V19.35a2.85 2.85 0 0 0 2.85 2.85h9.45a2.85 2.85 0 0 0 2.85-2.85V7.508h1.35a.75.75 0 0 0 0-1.5h-1.989A.754.754 0 0 0 18.825 6zM5.925 7.508V19.35a1.35 1.35 0 0 0 1.35 1.35h9.45a1.35 1.35 0 0 0 1.35-1.35V7.508z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-select' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='m7 10 5 5 5-5H7Z'/></symbol><symbol fill='none' viewBox='0 0 20 20' id='uc-icon-square' xmlns='http://www.w3.org/2000/svg'><rect width='20' height='20' rx='4' fill='#fff'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-upload' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.501.392a.75.75 0 0 1 .998 0l6.704 5.972a.75.75 0 0 1-.998 1.12l-5.455-4.86v13.439a.75.75 0 0 1-1.5 0V2.625l-5.454 4.86a.75.75 0 1 1-.998-1.12zM.857 16.73a.75.75 0 0 1 .75.75v4.914h20.786v-4.914a.75.75 0 0 1 1.5 0v5.664a.75.75 0 0 1-.75.75H.857a.75.75 0 0 1-.75-.75v-5.664a.75.75 0 0 1 .75-.75z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-upload-error' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M13 13h-2V7h2m0 10h-2v-2h2M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-url' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M19.11 3.67c-1.71-1.709-4.578-1.682-6.408.148l-2.22 2.22a.75.75 0 0 1-1.062-1.06l2.222-2.221C14.018.381 17.836.276 20.17 2.61l1.22 1.22c2.335 2.334 2.23 6.153-.147 8.529l-2.22 2.22a.75.75 0 0 1-1.062-1.06l2.222-2.221c1.83-1.83 1.856-4.698.147-6.408zm-3.36 4.58a.75.75 0 0 1 0 1.06l-6.439 6.44a.75.75 0 0 1-1.06-1.06l6.439-6.44a.75.75 0 0 1 1.06 0zM6.04 9.42a.75.75 0 0 1 0 1.061l-2.222 2.222c-1.83 1.83-1.856 4.698-.147 6.407l1.22 1.22c1.71 1.71 4.578 1.683 6.408-.147l2.221-2.221a.75.75 0 1 1 1.06 1.06l-2.22 2.222c-2.377 2.376-6.195 2.481-8.53.147l-1.22-1.22c-2.334-2.334-2.228-6.153.148-8.53l2.221-2.22a.75.75 0 0 1 1.06 0z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-video-camera' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' clip-rule='evenodd' d='M0 6.75a3 3 0 0 1 3-3h12a3 3 0 0 1 3 3v1.078L22.873 5A.75.75 0 0 1 24 5.648v12.704a.75.75 0 0 1-1.123.65L18 16.207v1.043a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V6.75Zm18 7.728 4.5 2.58V6.95L18 9.562v4.916ZM16.5 6.75a1.5 1.5 0 0 0-1.5-1.5H3a1.5 1.5 0 0 0-1.5 1.5v10.5a1.5 1.5 0 0 0 1.5 1.5h12a1.5 1.5 0 0 0 1.5-1.5V6.75Z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-video-camera-full' xmlns='http://www.w3.org/2000/svg'><path d='M2 3.333a2 2 0 0 0-2 2v9.334a2 2 0 0 0 2 2h10.938a2 2 0 0 0 2-2v-2.013L20 15.646V4.354l-5.063 3.03v-2.05a2 2 0 0 0-2-2H2Z' fill='currentColor'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-vk' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M6.341 3.27a10.5 10.5 0 0 1 5.834-1.77.75.75 0 0 0 0-1.5 12 12 0 1 0 12 12 .75.75 0 0 0-1.5 0A10.5 10.5 0 1 1 6.34 3.27Zm14.145 1.48a.75.75 0 1 0-1.06-1.062L9.925 13.19V7.95a.75.75 0 1 0-1.5 0V15c0 .414.336.75.75.75h7.05a.75.75 0 0 0 0-1.5h-5.24l9.501-9.5Z'/></symbol></svg>";var ne=class extends b{constructor(){super(...arguments);u(this,"requireCtxName",!0);u(this,"init$",qt(this));u(this,"_template",null)}initCallback(){var e;super.initCallback(),(e=this.a11y)==null||e.registerBlock(this)}static set template(e){this._template=$s+e+"<slot></slot>"}static get template(){return this._template}};u(ne,"styleAttrs",["uc-wgt-common"]);var ks="active",at="___ACTIVITY_IS_ACTIVE___",ye=class ye extends b{constructor(){super(...arguments);u(this,"historyTracked",!1);u(this,"init$",sr(this));u(this,"_debouncedHistoryFlush",L(this._historyFlush.bind(this),10))}_deactivate(){var i;let e=ye._activityCallbacks.get(this);this[at]=!1,this.removeAttribute(ks),(i=e==null?void 0:e.deactivateCallback)==null||i.call(e)}_activate(){var i;let e=ye._activityCallbacks.get(this);this.$["*historyBack"]=this.historyBack.bind(this),this[at]=!0,this.setAttribute(ks,""),(i=e==null?void 0:e.activateCallback)==null||i.call(e),this._debouncedHistoryFlush(),this.emit(I.ACTIVITY_CHANGE,{activity:this.activityType})}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",e=>{this.setAttribute("current-activity",e)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",e=>{var i;try{this.activityType!==e&&this[at]?this._deactivate():this.activityType===e&&!this[at]&&this._activate()}catch(s){console.error(`Error in activity "${this.activityType}". `,s),this.$["*currentActivity"]=(i=this.$["*history"][this.$["*history"].length-1])!=null?i:null}e||(this.$["*history"]=[])}),this.has("*modalActive")&&this.sub("*modalActive",e=>{!e&&this.activityType===this.$["*currentActivity"]&&(this.$["*currentActivity"]=null)}))}_historyFlush(){let e=this.$["*history"];e&&(e.length>10&&(e=e.slice(e.length-11,e.length-1)),this.historyTracked&&e[e.length-1]!==this.activityType&&e.push(this.activityType),this.$["*history"]=e)}_isActivityRegistered(){return this.activityType&&ye._activityCallbacks.has(this)}get isActivityActive(){return this[at]}get couldOpenActivity(){return!0}registerActivity(e,i={}){let{onActivate:s,onDeactivate:o}=i;ye._activityCallbacks.set(this,{activateCallback:s,deactivateCallback:o})}unregisterActivity(){this.isActivityActive&&this._deactivate(),ye._activityCallbacks.delete(this)}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity();let e=this.$["*currentActivity"];!![...this.blocksRegistry].find(s=>s instanceof ye&&s.activityType===e)||(this.$["*currentActivity"]=null,this.setOrAddState("*modalActive",!1))}get activityKey(){return this.ctxName+this.activityType}get activityParams(){return this.$["*currentActivityParams"]}get initActivity(){return this.getCssData("--cfg-init-activity")}get doneActivity(){return this.getCssData("--cfg-done-activity")}historyBack(){var i;let e=this.$["*history"];if(e){let s=e.pop();for(;s===this.activityType;)s=e.pop();let o=!!s;if(s){let n=[...this.blocksRegistry].find(a=>a.activityType===s);o=(i=n==null?void 0:n.couldOpenActivity)!=null?i:!1}s=o?s:void 0,this.$["*currentActivity"]=s,this.$["*history"]=e,s||this.setOrAddState("*modalActive",!1)}}};u(ye,"_activityCallbacks",new Map);var _=ye;_.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external"});var lt=33.333333333333336,x=1,cr=24,Os=6;function Ue(r,t){for(let e in t)r.setAttributeNS(null,e,t[e].toString())}function Y(r,t={}){let e=document.createElementNS("http://www.w3.org/2000/svg",r);return Ue(e,t),e}function Ls(r,t,e){let{x:i,y:s,width:o,height:n}=r,a=t.includes("w")?0:1,l=t.includes("n")?0:1,c=[-1,1][a],h=[-1,1][l],d=[i+a*o+1.5*c,s+l*n+1.5*h-24*e*h],p=[i+a*o+1.5*c,s+l*n+1.5*h],m=[i+a*o-24*e*c+1.5*c,s+l*n+1.5*h];return{d:`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]} L ${m[0]} ${m[1]}`,center:p}}function Us(r,t,e){let{x:i,y:s,width:o,height:n}=r,a=["n","s"].includes(t)?.5:{w:0,e:1}[t],l=["w","e"].includes(t)?.5:{n:0,s:1}[t],c=[-1,1][a],h=[-1,1][l],d,p;["n","s"].includes(t)?(d=[i+a*o-34*e/2,s+l*n+1.5*h],p=[i+a*o+34*e/2,s+l*n+1.5*h]):(d=[i+a*o+1.5*c,s+l*n-34*e/2],p=[i+a*o+1.5*c,s+l*n+34*e/2]);let m=`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]}`,f=[p[0]-(p[0]-d[0])/2,p[1]-(p[1]-d[1])/2];return{d:m,center:f}}function Ps(r){return r===""?"move":["e","w"].includes(r)?"ew-resize":["n","s"].includes(r)?"ns-resize":["nw","se"].includes(r)?"nwse-resize":"nesw-resize"}function Ms({rect:r,delta:[t,e],imageBox:i}){return ze({...r,x:r.x+t,y:r.y+e},i)}function ze(r,t){let{x:e}=r,{y:i}=r;return r.x<t.x?e=t.x:r.x+r.width>t.x+t.width&&(e=t.x+t.width-r.width),r.y<t.y?i=t.y:r.y+r.height>t.y+t.height&&(i=t.y+t.height-r.height),{...r,x:e,y:i}}function Aa({rect:r,delta:t,aspectRatio:e,imageBox:i}){let[,s]=t,{y:o,width:n,height:a}=r;o+=s,a-=s,e&&(n=a*e);let l=r.x+r.width/2-n/2;return o<=i.y&&(o=i.y,a=r.y+r.height-o,e&&(n=a*e,l=r.x+r.width/2-n/2)),l<=i.x&&(l=i.x,o=r.y+r.height-a),l+n>=i.x+i.width&&(l=Math.max(i.x,i.x+i.width-n),n=i.x+i.width-l,e&&(a=n/e),o=r.y+r.height-a),a<x&&(a=x,e&&(n=a*e,l=r.x+r.width/2-n/2),o=r.y+r.height-a),n<x&&(n=x,e&&(a=n/e,l=r.x+r.width/2-n/2),o=r.y+r.height-a),{x:l,y:o,width:n,height:a}}function Ea({rect:r,delta:t,aspectRatio:e,imageBox:i}){let[s]=t,{x:o,width:n,height:a}=r;o+=s,n-=s,e&&(a=n/e);let l=r.y+r.height/2-a/2;return o<=i.x&&(o=i.x,n=r.x+r.width-o,e&&(a=n/e,l=r.y+r.height/2-a/2)),l<=i.y&&(l=i.y,o=r.x+r.width-n),l+a>=i.y+i.height&&(l=Math.max(i.y,i.y+i.height-a),a=i.y+i.height-l,e&&(n=a*e),o=r.x+r.width-n),a<x&&(a=x,e&&(n=a*e),l=r.y+r.height/2-a/2,o=r.x+r.width-n),n<x&&(n=x,e&&(a=n/e),l=r.y+r.height/2-a/2,o=r.x+r.width-n),{x:o,y:l,width:n,height:a}}function Ta({rect:r,delta:t,aspectRatio:e,imageBox:i}){let[,s]=t,{y:o,width:n,height:a}=r;a+=s,e&&(n=a*e);let l=r.x+r.width/2-n/2;return o+a>=i.y+i.height&&(a=i.y+i.height-o,e&&(n=a*e),l=r.x+r.width/2-n/2),l<=i.x&&(l=i.x,o=r.y),l+n>=i.x+i.width&&(l=Math.max(i.x,i.x+i.width-n),n=i.x+i.width-l,e&&(a=n/e),o=r.y),a<x&&(a=x,e&&(n=a*e),l=r.x+r.width/2-n/2),n<x&&(n=x,e&&(a=n/e),l=r.x+r.width/2-n/2),{x:l,y:o,width:n,height:a}}function Sa({rect:r,delta:t,aspectRatio:e,imageBox:i}){let[s]=t,{x:o,width:n,height:a}=r;n+=s,e&&(a=n/e);let l=r.y+r.height/2-a/2;return o+n>=i.x+i.width&&(n=i.x+i.width-o,e&&(a=n/e),l=r.y+r.height/2-a/2),l<=i.y&&(l=i.y,o=r.x),l+a>=i.y+i.height&&(l=Math.max(i.y,i.y+i.height-a),a=i.y+i.height-l,e&&(n=a*e),o=r.x),a<x&&(a=x,e&&(n=a*e),l=r.y+r.height/2-a/2),n<x&&(n=x,e&&(a=n/e),l=r.y+r.height/2-a/2),{x:o,y:l,width:n,height:a}}function Ia({rect:r,delta:t,aspectRatio:e,imageBox:i}){let[s,o]=t,{x:n,y:a,width:l,height:c}=r;return n+s<i.x&&(s=i.x-n),a+o<i.y&&(o=i.y-a),n+=s,l-=s,a+=o,c-=o,e&&Math.abs(l/c)>e?(o=l/e-c,c+=o,a-=o,a<=i.y&&(c=c-(i.y-a),l=c*e,n=r.x+r.width-l,a=i.y)):e&&(s=c*e-l,l=l+s,n-=s,n<=i.x&&(l=l-(i.x-n),c=l/e,n=i.x,a=r.y+r.height-c)),c<x&&(c=x,e&&(l=c*e),n=r.x+r.width-l,a=r.y+r.height-c),l<x&&(l=x,e&&(c=l/e),n=r.x+r.width-l,a=r.y+r.height-c),{x:n,y:a,width:l,height:c}}function $a({rect:r,delta:t,aspectRatio:e,imageBox:i}){let[s,o]=t,{x:n,y:a,width:l,height:c}=r;return n+l+s>i.x+i.width&&(s=i.x+i.width-n-l),a+o<i.y&&(o=i.y-a),l+=s,a+=o,c-=o,e&&Math.abs(l/c)>e?(o=l/e-c,c+=o,a-=o,a<=i.y&&(c=c-(i.y-a),l=c*e,n=r.x,a=i.y)):e&&(s=c*e-l,l+=s,n+l>=i.x+i.width&&(l=i.x+i.width-n,c=l/e,n=i.x+i.width-l,a=r.y+r.height-c)),c<x&&(c=x,e&&(l=c*e),a=r.y+r.height-c),l<x&&(l=x,e&&(c=l/e),a=r.y+r.height-c),{x:n,y:a,width:l,height:c}}function ka({rect:r,delta:t,aspectRatio:e,imageBox:i}){let[s,o]=t,{x:n,y:a,width:l,height:c}=r;return n+s<i.x&&(s=i.x-n),a+c+o>i.y+i.height&&(o=i.y+i.height-a-c),n+=s,l-=s,c+=o,e&&Math.abs(l/c)>e?(o=l/e-c,c+=o,a+c>=i.y+i.height&&(c=i.y+i.height-a,l=c*e,n=r.x+r.width-l,a=i.y+i.height-c)):e&&(s=c*e-l,l+=s,n-=s,n<=i.x&&(l=l-(i.x-n),c=l/e,n=i.x,a=r.y)),c<x&&(c=x,e&&(l=c*e),n=r.x+r.width-l),l<x&&(l=x,e&&(c=l/e),n=r.x+r.width-l),{x:n,y:a,width:l,height:c}}function Oa({rect:r,delta:t,aspectRatio:e,imageBox:i}){let[s,o]=t,{x:n,y:a,width:l,height:c}=r;return n+l+s>i.x+i.width&&(s=i.x+i.width-n-l),a+c+o>i.y+i.height&&(o=i.y+i.height-a-c),l+=s,c+=o,e&&Math.abs(l/c)>e?(o=l/e-c,c+=o,a+c>=i.y+i.height&&(c=i.y+i.height-a,l=c*e,n=r.x,a=i.y+i.height-c)):e&&(s=c*e-l,l+=s,n+l>=i.x+i.width&&(l=i.x+i.width-n,c=l/e,n=i.x+i.width-l,a=r.y)),c<x&&(c=x,e&&(l=c*e)),l<x&&(l=x,e&&(c=l/e)),{x:n,y:a,width:l,height:c}}function Rs({direction:r,...t}){switch(r){case"n":return Aa(t);case"w":return Ea(t);case"s":return Ta(t);case"e":return Sa(t);case"nw":return Ia(t);case"ne":return $a(t);case"sw":return ka(t);case"se":return Oa(t);default:return t.rect}}function Ds(r,[t,e]){return r.x<=t&&t<=r.x+r.width&&r.y<=e&&e<=r.y+r.height}function Fs(r,t){return r.x>=t.x&&r.y>=t.y&&r.x+r.width<=t.x+t.width&&r.y+r.height<=t.y+t.height}function Ns(r,t){return Math.abs(r.width/r.height-t)<.1}function He({width:r,height:t},e){let i=e/90%2!==0;return{width:i?t:r,height:i?r:t}}function Vs(r,t,e){let i=r/t,s,o;i>e?(s=Math.round(t*e),o=t):(s=r,o=Math.round(r/e));let n=Math.round((r-s)/2),a=Math.round((t-o)/2);return n+s>r&&(s=r-n),a+o>t&&(o=t-a),{x:n,y:a,width:s,height:o}}function je(r){return{x:Math.round(r.x),y:Math.round(r.y),width:Math.round(r.width),height:Math.round(r.height)}}function $e(r,t,e){return Math.min(Math.max(r,t),e)}var Qt=r=>{if(!r)return[];let[t,e]=r.split(":").map(Number);if(!Number.isFinite(t)||!Number.isFinite(e)){console.error(`Invalid crop preset: ${r}`);return}return[{type:"aspect-ratio",width:t,height:e}]};var Ge="blocks",We="1.13.2";function Bs(r){return Yi({...r,libraryName:Ge,libraryVersion:We})}var zs=r=>Math.floor(r/1e3),Hs=(r,{threshold:t})=>{let{secureExpire:e}=r,i=zs(Date.now()),s=Number(e),o=zs(t);return i+o>=s};var ei=class{constructor(t){u(this,"_block");u(this,"_secureToken",null);this._block=t}_debugPrint(...t){this._block.debugPrint("[secure-uploads]",...t)}async getSecureToken(){let{secureSignature:t,secureExpire:e,secureUploadsSignatureResolver:i}=this._block.cfg;if((t||e)&&i&&console.warn("Both secureSignature/secureExpire and secureUploadsSignatureResolver are set. secureUploadsSignatureResolver will be used."),i){if(!this._secureToken||Hs(this._secureToken,{threshold:this._block.cfg.secureUploadsExpireThreshold})){this._secureToken?this._debugPrint("Secure signature is expired. Resolving a new one..."):this._debugPrint("Secure signature is not set yet.");try{let s=await i();s?!s.secureSignature||!s.secureExpire?console.error("Secure signature resolver returned an invalid result:",s):(this._debugPrint("Secure signature resolved:",s),this._debugPrint("Secure signature will expire in",new Date(Number(s.secureExpire)*1e3).toISOString()),this._secureToken=s):(this._debugPrint("Secure signature resolver returned nothing."),this._secureToken=null)}catch(s){console.error("Secure signature resolving failed. Falling back to the previous one.",s)}}return this._secureToken}return t&&e?(this._debugPrint("Secure signature and expire are set. Using them...",{secureSignature:t,secureExpire:e}),{secureSignature:t,secureExpire:e}):null}};var js="[Typed State] Wrong property name: ",La="[Typed State] Wrong property type: ",ti=class{constructor(t,e){this.__typedSchema=t,this.__ctxId=e||Fe.generate(),this.__schema=Object.keys(t).reduce((i,s)=>(i[s]=t[s].value,i),{}),this.__data=E.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(t,e){if(!this.__typedSchema.hasOwnProperty(t)){console.warn(js+t);return}let i=this.__typedSchema[t];if((e==null?void 0:e.constructor)===i.type||e instanceof i.type||i.nullable&&e===null){this.__data.pub(t,e);return}console.warn(La+t)}setMultipleValues(t){for(let e in t)this.setValue(e,t[e])}getValue(t){if(!this.__typedSchema.hasOwnProperty(t)){console.warn(js+t);return}return this.__data.read(t)}subscribe(t,e){return this.__data.sub(t,e)}remove(){E.deleteCtx(this.__ctxId)}};var ii=class{constructor(t){this.__typedSchema=t.typedSchema,this.__ctxId=t.ctxName||Fe.generate(),this.__data=E.registerCtx({},this.__ctxId),this.__watchList=t.watchList||[],this.__subsMap=Object.create(null),this.__propertyObservers=new Set,this.__collectionObservers=new Set,this.__items=new Set,this.__removed=new Set,this.__added=new Set;let e=Object.create(null);this.__notifyObservers=(i,s)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),e[i]||(e[i]=new Set),e[i].add(s),this.__observeTimeout=window.setTimeout(()=>{Object.keys(e).length!==0&&(this.__propertyObservers.forEach(o=>{o({...e})}),e=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let t=new Set(this.__added),e=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let i of this.__collectionObservers)i==null||i([...this.__items],t,e)})}observeCollection(t){return this.__collectionObservers.add(t),this.__items.size>0&&this.notify(),()=>{this.unobserveCollection(t)}}unobserveCollection(t){var e;(e=this.__collectionObservers)==null||e.delete(t)}add(t){let e=new ti(this.__typedSchema);for(let i in t)e.setValue(i,t[i]);return this.__items.add(e.uid),this.notify(),this.__data.add(e.uid,e),this.__added.add(e),this.__watchList.forEach(i=>{this.__subsMap[e.uid]||(this.__subsMap[e.uid]=[]),this.__subsMap[e.uid].push(e.subscribe(i,()=>{this.__notifyObservers(i,e.uid)}))}),e.uid}read(t){return this.__data.read(t)}readProp(t,e){return this.read(t).getValue(e)}publishProp(t,e,i){this.read(t).setValue(e,i)}remove(t){this.__removed.add(this.__data.read(t)),this.__items.delete(t),this.notify(),this.__data.pub(t,null),delete this.__subsMap[t]}clearAll(){this.__items.forEach(t=>{this.remove(t)})}observeProperties(t){return this.__propertyObservers.add(t),()=>{this.unobserveProperties(t)}}unobserveProperties(t){var e;(e=this.__propertyObservers)==null||e.delete(t)}findItems(t){let e=[];return this.__items.forEach(i=>{let s=this.read(i);t(s)&&e.push(i)}),e}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){E.deleteCtx(this.__ctxId),this.__propertyObservers=null,this.__collectionObservers=null;for(let t in this.__subsMap)this.__subsMap[t].forEach(e=>{e.remove()}),delete this.__subsMap[t]}};var Xe=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"}),U=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",CAMERA:"camera",EXTERNAL:"external",API:"js-api",URL:"url",DRAW:"draw",...Xe});var ct=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],ri=r=>r?r.filter(t=>typeof t=="string").map(t=>F(t)).flat():[],ur=(r,t)=>t.some(e=>e.endsWith("*")?(e=e.replace("*",""),r.startsWith(e)):r===e),Gs=(r,t)=>t.some(e=>e.startsWith(".")?r.toLowerCase().endsWith(e.toLowerCase()):!1),Ws=r=>{let t=r==null?void 0:r.type;return t?ur(t,ct):!1};var Ua=/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}/i,Pa=new RegExp(`^/?(${Ua.source})(?:/(-/(?:[^/]+/)+)?([^/]*))?$`,"i"),Xs=({url:r,cdnBase:t})=>{let e=new URL(t),i=new URL(r);if(e.host!==i.host)return null;let[,s,o,n]=Pa.exec(i.pathname);return{uuid:s,cdnUrlModifiers:o||"",filename:n||null}};var qs=r=>{let t=new Map;return(...e)=>{let i=JSON.stringify(e);if(t.has(i))return t.get(i);let s=r(...e);return t.set(i,s),s}};var Ks=new Set;function si(r){Ks.has(r)||(Ks.add(r),console.warn(r))}function Ma(r){let t=!1;return setTimeout(()=>{t=!0},0),i=>(...s)=>(t&&si(r),i(...s))}function Zs(r){let t={progress:()=>r.$["*commonProgress"],errors:()=>r.$["*collectionErrors"],group:()=>r.$["*groupInfo"],totalCount:()=>r.uploadCollection.size,failedCount:()=>e.failedEntries.length,successCount:()=>e.successEntries.length,uploadingCount:()=>e.uploadingEntries.length,status:()=>e.isFailed?"failed":e.isUploading?"uploading":e.isSuccess?"success":"idle",isSuccess:()=>e.allEntries.length>0&&e.errors.length===0&&e.successEntries.length===e.allEntries.length,isUploading:()=>e.allEntries.some(s=>s.status==="uploading"),isFailed:()=>e.errors.length>0||e.failedEntries.length>0,allEntries:()=>r.getOutputData(),successEntries:()=>e.allEntries.filter(s=>s.status==="success"),failedEntries:()=>e.allEntries.filter(s=>s.status==="failed"),uploadingEntries:()=>e.allEntries.filter(s=>s.status==="uploading"),idleEntries:()=>e.allEntries.filter(s=>s.status==="idle")},e={},i=Ma("You're trying to access the OutputCollectionState asynchronously. In this case, the data you retrieve will be newer than it was when the OutputCollectionState was created or when the event was dispatched. If you want to retain the state at a specific moment in time, you should use the spread operator like this: `{...outputCollectionState}` or `{...e.detail}`");for(let[s,o]of Object.entries(t)){let n=s,l=qs(i(o));Object.defineProperty(e,n,{get:l,enumerable:!0})}return e}var k=Object.freeze({PHOTO:"photo",VIDEO:"video"}),J=Object.freeze({IDLE:"idle",SHOT:"shot",PLAY:"play",PAUSE:"pause",RESUME:"resume",STOP:"stop",RETAKE:"retake",ACCEPT:"accept"});var oi=class{constructor(t){u(this,"_ctx");u(this,"addFileFromUrl",(t,{silent:e,fileName:i,source:s}={})=>{let o=this._uploadCollection.add({externalUrl:t,fileName:i!=null?i:null,silent:e!=null?e:!1,source:s!=null?s:U.API});return this.getOutputItem(o)});u(this,"addFileFromUuid",(t,{silent:e,fileName:i,source:s}={})=>{let o=this._uploadCollection.add({uuid:t,fileName:i!=null?i:null,silent:e!=null?e:!1,source:s!=null?s:U.API});return this.getOutputItem(o)});u(this,"addFileFromCdnUrl",(t,{silent:e,fileName:i,source:s}={})=>{var a;let o=Xs({url:t,cdnBase:this.cfg.cdnCname});if(!o)throw new Error("Invalid CDN URL");let n=this._uploadCollection.add({uuid:o.uuid,cdnUrl:t,cdnUrlModifiers:o.cdnUrlModifiers,fileName:(a=i!=null?i:o.filename)!=null?a:null,silent:e!=null?e:!1,source:s!=null?s:U.API});return this.getOutputItem(n)});u(this,"addFileFromObject",(t,{silent:e,fileName:i,source:s,fullPath:o}={})=>{let n=this._uploadCollection.add({file:t,isImage:Ws(t),mimeType:t.type,fileName:i!=null?i:t.name,fileSize:t.size,silent:e!=null?e:!1,source:s!=null?s:U.API,fullPath:o!=null?o:null});return this.getOutputItem(n)});u(this,"removeFileByInternalId",t=>{if(!this._uploadCollection.read(t))throw new Error(`File with internalId ${t} not found`);this._uploadCollection.remove(t)});u(this,"uploadAll",()=>{let t=this._uploadCollection.items().filter(e=>{let i=this._uploadCollection.read(e);return!i.getValue("isRemoved")&&!i.getValue("isUploading")&&!i.getValue("fileInfo")});t.length!==0&&(this._ctx.$["*uploadTrigger"]=new Set(t),this._ctx.emit(I.COMMON_UPLOAD_START,this.getOutputCollectionState()))});u(this,"openSystemDialog",(t={})=>{var o;let e=me(ri([(o=this.cfg.accept)!=null?o:"",...this.cfg.imgOnly?ct:[]])),i="uploadcare-file-input",s=document.createElement("input");if(s.setAttribute(i,""),it(s,{opacity:0,height:0,width:0,visibility:"hidden"}),s.type="file",s.multiple=this.cfg.multiple,t.captureCamera){s.capture=this.cfg.cameraCapture;let n=te(this.cfg.cameraModes).includes(k.VIDEO);s.accept=["image/*",n&&"video/*"].filter(Boolean).join(",")}else s.accept=e;s.addEventListener("change",()=>{s.files&&([...s.files].forEach(n=>this.addFileFromObject(n,{source:t.captureCamera?U.CAMERA:U.LOCAL})),this._ctx.$["*currentActivity"]=_.activities.UPLOAD_LIST,this._ctx.setOrAddState("*modalActive",!0),s.remove())},{once:!0}),document.querySelectorAll(`[${i}]`).forEach(n=>n.remove()),document.body.appendChild(s),s.dispatchEvent(new MouseEvent("click"))});u(this,"getOutputItem",t=>{var n,a,l,c,h,d,p,m,f,g;let e=E.getCtx(t).store,i=e.fileInfo,s=e.isRemoved?"removed":e.errors.length>0?"failed":e.fileInfo?"success":e.isUploading?"uploading":"idle";return{uuid:(a=(n=i==null?void 0:i.uuid)!=null?n:e.uuid)!=null?a:null,internalId:t,name:(l=i==null?void 0:i.originalFilename)!=null?l:e.fileName,size:(c=i==null?void 0:i.size)!=null?c:e.fileSize,isImage:(h=i==null?void 0:i.isImage)!=null?h:e.isImage,mimeType:(d=i==null?void 0:i.mimeType)!=null?d:e.mimeType,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(m=(p=e.cdnUrl)!=null?p:i==null?void 0:i.cdnUrl)!=null?m:null,fullPath:e.fullPath,uploadProgress:e.uploadProgress,fileInfo:i!=null?i:null,metadata:(g=(f=e.metadata)!=null?f:i==null?void 0:i.metadata)!=null?g:null,isSuccess:s==="success",isUploading:s==="uploading",isFailed:s==="failed",isRemoved:s==="removed",errors:e.errors,status:s,source:e==null?void 0:e.source}});u(this,"getOutputCollectionState",()=>Zs(this._ctx));u(this,"initFlow",(t=!1)=>{var e;if(this._uploadCollection.size>0&&!t)this._ctx.set$({"*currentActivity":_.activities.UPLOAD_LIST}),this._ctx.setOrAddState("*modalActive",!0);else if(((e=this._sourceList)==null?void 0:e.length)===1){let i=this._sourceList[0];if(i==="local"){this._ctx.$["*currentActivity"]=_.activities.UPLOAD_LIST,this.openSystemDialog();return}let s=this._ctx.$["*blocksRegistry"],o=a=>"type"in a&&a.type===i,n=[...s].find(o);n==null||n.activate(),this._ctx.$["*currentActivity"]&&this._ctx.setOrAddState("*modalActive",!0)}else this._ctx.set$({"*currentActivity":_.activities.START_FROM}),this._ctx.setOrAddState("*modalActive",!0)});u(this,"doneFlow",()=>{this._ctx.set$({"*currentActivity":this._ctx.doneActivity,"*history":this._ctx.doneActivity?[this._ctx.doneActivity]:[]}),this._ctx.$["*currentActivity"]||this._ctx.setOrAddState("*modalActive",!1)});u(this,"setCurrentActivity",(t,e=void 0)=>{if(this._ctx.hasBlockInCtx(i=>i.activityType===t)){this._ctx.set$({"*currentActivityParams":e!=null?e:{},"*currentActivity":t});return}console.warn(`Activity type "${t}" not found in the context`)});u(this,"getCurrentActivity",()=>this._ctx.$["*currentActivity"]);u(this,"setModalState",t=>{if(t&&!this._ctx.$["*currentActivity"]){console.warn(`Can't open modal without current activity. Please use "setCurrentActivity" method first.`);return}this._ctx.setOrAddState("*modalActive",t)});this._ctx=t}get _uploadCollection(){return this._ctx.uploadCollection}get cfg(){return this._ctx.cfg}get l10n(){return this._ctx.l10n.bind(this._ctx)}removeAllFiles(){this._uploadCollection.clearAll()}get _sourceList(){let t=[];return this.cfg.sourceList&&(t=F(this.cfg.sourceList)),t}};var dr=(r,t)=>{let e=t.cfg.imgOnly,i=r.isImage;if(!(!e||i)&&!(!r.fileInfo&&r.externalUrl)&&!(!r.fileInfo&&!r.mimeType))return{type:"NOT_AN_IMAGE",message:t.l10n("images-only-accepted"),payload:{entry:r}}};var hr=(r,t)=>{let e=t.cfg.imgOnly,i=t.cfg.accept,s=ri([...e?ct:[],i]);if(!s.length)return;let o=r.mimeType,n=r.name;if(!o||!n)return;let a=ur(o,s),l=Gs(n,s);if(!a&&!l)return{type:"FORBIDDEN_FILE_TYPE",message:t.l10n("file-type-not-allowed"),payload:{entry:r}}};var le=1e3,Pe=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),ut=r=>Math.ceil(r*100)/100,Ys=(r,t=Pe.AUTO)=>{let e=t===Pe.AUTO;if(t===Pe.BYTE||e&&r<le**1){let i=Vt("en-US",r),s={one:"byte",other:"bytes"}[i];return`${r} ${s}`}return t===Pe.KB||e&&r<le**2?`${ut(r/le**1)} KB`:t===Pe.MB||e&&r<le**3?`${ut(r/le**2)} MB`:t===Pe.GB||e&&r<le**4?`${ut(r/le**3)} GB`:t===Pe.TB||e&&r<le**5?`${ut(r/le**4)} TB`:`${ut(r/le**5)} PB`};var pr=(r,t)=>{let e=t.cfg.maxLocalFileSizeBytes,i=r.size;if(e&&i&&i>e)return{type:"FILE_SIZE_EXCEEDED",message:t.l10n("files-max-size-limit-error",{maxFileSize:Ys(e)}),payload:{entry:r}}};var fr=(r,t)=>{let{internalId:e}=r,i=t._uploadCollection.read(e),s=i==null?void 0:i.getValue("uploadError");if(!s)return;if(s instanceof B)return{type:"UPLOAD_ERROR",message:s.message,payload:{entry:r,error:s}};if(s instanceof Ne)return{type:"NETWORK_ERROR",message:s.message,payload:{entry:r,error:s}};let o=s instanceof Error?s:new Error("Unknown error",{cause:s});return{type:"UNKNOWN_ERROR",message:o.message,payload:{entry:r,error:o}}};var mr=(r,t)=>{if(r.failedCount>0)return{type:"SOME_FILES_HAS_ERRORS",message:t.l10n("some-files-were-not-uploaded")}};var gr=(r,t)=>{let e=r.totalCount,i=t.cfg.multiple?t.cfg.multipleMin:0,s=t.cfg.multiple?t.cfg.multipleMax:1;if(i&&e<i)return{type:"TOO_FEW_FILES",message:t.l10n("files-count-limit-error-too-few",{min:i,max:s,total:e}),payload:{total:e,min:i,max:s}};if(s&&e>s)return{type:"TOO_MANY_FILES",message:t.l10n("files-count-limit-error-too-many",{min:i,max:s,total:e}),payload:{total:e,min:i,max:s}}};var ni={file:"File validator execution has failed",collection:"Collection validator execution has failed",message:"Missing message. We recommend adding message: value."},ai=class{constructor(t){u(this,"_blockInstance");u(this,"_fileValidators",[dr,hr,pr,fr]);u(this,"_collectionValidators",[gr,mr]);this._blockInstance=t,this._uploadCollection=this._blockInstance.uploadCollection;let e=()=>{this.runFileValidators(),this.runCollectionValidators()};this._blockInstance.subConfigValue("maxLocalFileSizeBytes",e),this._blockInstance.subConfigValue("multipleMin",e),this._blockInstance.subConfigValue("multipleMax",e),this._blockInstance.subConfigValue("multiple",e),this._blockInstance.subConfigValue("imgOnly",e),this._blockInstance.subConfigValue("accept",e)}runFileValidators(t){let e=t!=null?t:this._uploadCollection.items();for(let i of e){let s=this._uploadCollection.read(i);s&&this._runFileValidatorsForEntry(s)}}runCollectionValidators(){let t=this._blockInstance.api.getOutputCollectionState(),e=[];for(let i of[...this._collectionValidators,...this._addCustomTypeToValidators(this._blockInstance.cfg.collectionValidators)])try{let s=i(t,this._blockInstance.api);if(!s)continue;s&&(e.push(s),s.message||console.warn(ni.message))}catch(s){console.warn(ni.collection,s)}this._blockInstance.$["*collectionErrors"]=e,e.length>0&&this._blockInstance.emit(I.COMMON_UPLOAD_FAILED,()=>this._blockInstance.api.getOutputCollectionState(),{debounce:!0})}_runFileValidatorsForEntry(t){let e=this._blockInstance.api.getOutputItem(t.uid),i=[];for(let s of[...this._fileValidators,...this._addCustomTypeToValidators(this._blockInstance.cfg.fileValidators)])try{let o=s(e,this._blockInstance.api);if(!o)continue;o&&(i.push(o),o.message||console.warn(ni.message))}catch(o){console.warn(ni.file,o)}t.setValue("errors",i)}_addCustomTypeToValidators(t){return t.map(e=>(...i)=>{let s=e(...i);return s?{...s,type:"CUSTOM_ERROR"}:void 0})}};var Js=Object.freeze({file:{type:File,value:null},externalUrl:{type:String,value:null},fileName:{type:String,value:null,nullable:!0},fileSize:{type:Number,value:null,nullable:!0},lastModified:{type:Number,value:Date.now()},uploadProgress:{type:Number,value:0},uuid:{type:String,value:null},isImage:{type:Boolean,value:!1},mimeType:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:_e,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silent:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0},metadata:{type:Object,value:null,nullable:!0},errors:{type:Array,value:[]},uploadError:{type:Error,value:null,nullable:!0},isRemoved:{type:Boolean,value:!1}});var S=class r extends _{constructor(){super(...arguments);u(this,"couldBeCtxOwner",!1);u(this,"isCtxOwner",!1);u(this,"init$",qt(this));u(this,"_flushOutputItems",L(async()=>{if(this.getOutputData().length!==this.uploadCollection.size)return;let i=this.api.getOutputCollectionState();this.$["*collectionState"]=i,this.emit(I.CHANGE,()=>this.api.getOutputCollectionState(),{debounce:!0}),this.cfg.groupOutput&&i.totalCount>0&&i.status==="success"&&this._createGroup(i)},300));u(this,"_handleCollectionUpdate",(e,i,s)=>{var o;(i.size||s.size)&&(this.$["*groupInfo"]=null),this.validationManager.runFileValidators(),this.validationManager.runCollectionValidators();for(let n of i)n.getValue("silent")||this.emit(I.FILE_ADDED,this.api.getOutputItem(n.uid));for(let n of s)this.$["*uploadTrigger"].delete(n.uid),(o=n.getValue("abortController"))==null||o.abort(),n.setMultipleValues({isRemoved:!0,abortController:null,isUploading:!1,uploadProgress:0}),URL.revokeObjectURL(n==null?void 0:n.getValue("thumbUrl")),this.emit(I.FILE_REMOVED,this.api.getOutputItem(n.uid));this.$["*uploadList"]=e.map(n=>({uid:n})),this._flushCommonUploadProgress(),this._flushOutputItems()});u(this,"_handleCollectionPropertiesUpdate",e=>{this._flushOutputItems();let i=this.uploadCollection,s=[...new Set(Object.entries(e).filter(([o])=>["uploadError","fileInfo"].includes(o)).map(([,o])=>[...o]).flat())];if(s.length>0&&setTimeout(()=>{this.validationManager.runFileValidators(s)}),e.uploadProgress){for(let o of e.uploadProgress){let{isUploading:n,silent:a}=E.getCtx(o).store;n&&!a&&this.emit(I.FILE_UPLOAD_PROGRESS,this.api.getOutputItem(o))}this._flushCommonUploadProgress()}if(e.isUploading)for(let o of e.isUploading){let{isUploading:n,silent:a}=E.getCtx(o).store;n&&!a&&this.emit(I.FILE_UPLOAD_START,this.api.getOutputItem(o))}if(e.fileInfo){for(let o of e.fileInfo){let{fileInfo:n,silent:a}=E.getCtx(o).store;n&&!a&&this.emit(I.FILE_UPLOAD_SUCCESS,this.api.getOutputItem(o))}this.cfg.cropPreset&&this.setInitialCrop()}if(e.errors){for(let a of e.errors){let{errors:l}=E.getCtx(a).store;l.length>0&&(this.emit(I.FILE_UPLOAD_FAILED,this.api.getOutputItem(a)),this.emit(I.COMMON_UPLOAD_FAILED,()=>this.api.getOutputCollectionState(),{debounce:!0}))}let o=i.findItems(a=>!!a.getValue("fileInfo")),n=i.findItems(a=>a.getValue("errors").length>0);i.size>0&&n.length===0&&i.size===o.length&&this.$["*collectionErrors"].length===0&&this.emit(I.COMMON_UPLOAD_SUCCESS,this.api.getOutputCollectionState())}e.cdnUrl&&([...e.cdnUrl].filter(n=>{var a;return!!((a=this.uploadCollection.read(n))!=null&&a.getValue("cdnUrl"))}).forEach(n=>{this.emit(I.FILE_URL_CHANGED,this.api.getOutputItem(n))}),this.$["*groupInfo"]=null)});u(this,"_flushCommonUploadProgress",()=>{let e=0,s=[...this.$["*uploadTrigger"]].filter(n=>!!this.uploadCollection.read(n));s.forEach(n=>{let a=this.uploadCollection.readProp(n,"uploadProgress");e+=a});let o=s.length?Math.round(e/s.length):0;this.$["*commonProgress"]!==o&&(this.$["*commonProgress"]=o,this.emit(I.COMMON_UPLOAD_PROGRESS,this.api.getOutputCollectionState()))})}get hasCtxOwner(){return this.hasBlockInCtx(e=>e instanceof r?e.isCtxOwner&&e.isConnected&&e!==this:!1)}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let e=new ii({typedSchema:Js,watchList:["uploadProgress","uploadError","fileInfo","errors","cdnUrl","isUploading"]});this.add("*uploadCollection",e)}this.has("*publicApi")||this.add("*publicApi",new oi(this)),this.has("*validationManager")||this.add("*validationManager",new ai(this)),!this.hasCtxOwner&&this.couldBeCtxOwner&&this.initCtxOwner()}get validationManager(){if(!this.has("*validationManager"))throw new Error("Unexpected error: ValidationManager is not initialized");return this.$["*validationManager"]}get api(){if(!this.has("*publicApi"))throw new Error("Unexpected error: UploaderPublicApi is not initialized");return this.$["*publicApi"]}getAPI(){return this.api}get uploadCollection(){if(!this.has("*uploadCollection"))throw new Error("Unexpected error: TypedCollection is not initialized");return this.$["*uploadCollection"]}destroyCtxCallback(){var e,i;(e=this._unobserveCollectionProperties)==null||e.call(this),(i=this._unobserveCollection)==null||i.call(this),this.uploadCollection.destroy(),this.$["*uploadCollection"]=null,super.destroyCtxCallback()}initCtxOwner(){this.isCtxOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectionUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxConcurrentRequests",e=>{this.$["*uploadQueue"].concurrency=Number(e)||1}),this.$["*secureUploadsManager"]||(this.$["*secureUploadsManager"]=new ei(this)),this.has("*modalActive")&&this.sub("*modalActive",e=>{e&&!this.$["*currentActivity"]&&(this.$["*modalActive"]=!1)})}async _createGroup(e){let i=await this.getUploadClientOptions(),s=e.allEntries.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=new AbortController,n=await vs(s,{...i,signal:o.signal});if(this.$["*collectionState"]!==e){o.abort();return}this.$["*groupInfo"]=n;let a=this.api.getOutputCollectionState();this.emit(I.GROUP_CREATED,a),this.emit(I.CHANGE,()=>this.api.getOutputCollectionState(),{debounce:!0}),this.$["*collectionState"]=a}setInitialCrop(){let e=Qt(this.cfg.cropPreset);if(e){let[i]=e,s=this.uploadCollection.findItems(o=>{var n;return o.getValue("fileInfo")&&o.getValue("isImage")&&!((n=o.getValue("cdnUrlModifiers"))!=null&&n.includes("/crop/"))}).map(o=>this.uploadCollection.read(o));for(let o of s){let n=o.getValue("fileInfo"),{width:a,height:l}=n.imageInfo,c=i.width/i.height,h=Vs(a,l,c),d=V(`crop/${h.width}x${h.height}/${h.x},${h.y}`,"preview");o.setMultipleValues({cdnUrlModifiers:d,cdnUrl:M(o.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(p=>p.activityType===_.activities.CLOUD_IMG_EDIT)&&(this.$["*currentActivityParams"]={internalId:o.uid},this.$["*currentActivity"]=_.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(e){let i=this.cfg.metadata||void 0;if(typeof i=="function"){let s=this.api.getOutputItem(e);return await i(s)}return i}async getUploadClientOptions(){let i=await this.$["*secureUploadsManager"].getSecureToken().catch(()=>null);return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Bs,integration:this.cfg.userAgentIntegration,secureSignature:i==null?void 0:i.secureSignature,secureExpire:i==null?void 0:i.secureExpire,retryThrottledRequestMaxTimes:this.cfg.retryThrottledRequestMaxTimes,multipartMinFileSize:this.cfg.multipartMinFileSize,multipartChunkSize:this.cfg.multipartChunkSize,maxConcurrentRequests:this.cfg.multipartMaxConcurrentRequests,multipartMaxAttempts:this.cfg.multipartMaxAttempts,checkForUrlDuplicates:!!this.cfg.checkForUrlDuplicates,saveUrlForRecurrentUploads:!!this.cfg.saveUrlForRecurrentUploads}}getOutputData(){return this.uploadCollection.items().map(s=>this.api.getOutputItem(s))}};S.extSrcList=Object.freeze({...Xe});S.sourceTypes=Object.freeze({...U});var dt=r=>{var t;return(t=r.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:t.map(e=>e.toLowerCase()).join("-")};var P=r=>String(r),Q=r=>{let t=Number(r);if(Number.isNaN(t))throw new Error(`Invalid number: "${r}"`);return t},$=r=>{if(typeof r=="undefined"||r===null)return!1;if(typeof r=="boolean")return r;if(r==="true"||r==="")return!0;if(r==="false")return!1;throw new Error(`Invalid boolean: "${r}"`)},Ra=r=>r==="auto"?r:$(r),Da=r=>{let t=P(r);if(t!=="user"&&t!=="environment"&&t!=="")throw new Error(`Invalid value: "${t}"`);return t},Fa=r=>{let t=P(r);if(!Object.values(k).includes(t))throw new Error(`Invalid value: "${t}"`);return t},Na=r=>{let t=P(r),e=te(t);if(e.some(i=>!Object.values(k).includes(i)))throw new Error(`Invalid value: "${JSON.stringify(e)}"`);return t},Va=r=>{if(typeof r=="object"&&!Array.isArray(r)||typeof r=="function")return r;throw new Error("Invalid metadata value. Must be an object or function.")},Qs=r=>{if(typeof r=="object")return r;throw new Error("Invalid value. Must be an object.")},_r=r=>{if(typeof r=="function")return r;throw new Error("Invalid value. Must be a function.")},eo=r=>{if(Array.isArray(r))return r;throw new Error("Must be an array.")},Ba={pubkey:P,multiple:$,multipleMin:Q,multipleMax:Q,confirmUpload:$,imgOnly:$,accept:P,externalSourcesPreferredTypes:P,externalSourcesEmbedCss:P,store:Ra,cameraMirror:$,cameraCapture:Da,sourceList:P,maxLocalFileSizeBytes:Q,thumbSize:Q,showEmptyList:$,useLocalImageEditor:$,useCloudImageEditor:$,cloudImageEditorTabs:P,removeCopyright:$,cropPreset:P,imageShrink:P,modalScrollLock:$,modalBackdropStrokes:$,sourceListWrap:$,remoteTabSessionKey:P,cdnCname:P,baseUrl:P,socialBaseUrl:P,secureSignature:P,secureExpire:P,secureDeliveryProxy:P,retryThrottledRequestMaxTimes:Q,multipartMinFileSize:Q,multipartChunkSize:Q,maxConcurrentRequests:Q,multipartMaxConcurrentRequests:Q,multipartMaxAttempts:Q,checkForUrlDuplicates:$,saveUrlForRecurrentUploads:$,groupOutput:$,userAgentIntegration:P,debug:$,localeName:P,metadata:Va,secureUploadsExpireThreshold:Q,localeDefinitionOverride:Qs,secureUploadsSignatureResolver:_r,secureDeliveryProxyUrlResolver:_r,iconHrefResolver:_r,fileValidators:eo,collectionValidators:eo,cameraModes:Na,defaultCameraMode:Fa,enableAudioRecording:$,enableVideoRecording:$,mediaRecorderOptions:Qs,maxVideoRecordingDuration:Q},to=(r,t)=>{if(!(typeof t=="undefined"||t===null))try{return Ba[r](t)}catch(e){return console.error(`Invalid value for config key "${r}".`,e),ie[r]}};var za=[{test:r=>r.accept&&!!r.imgOnly,message:"There could be a mistake.\nBoth `accept` and `imgOnly` parameters are set.\nThe value of `accept` will be concatenated with the internal image mime types list."},{test:r=>r.enableVideoRecording!==null,message:"The `enableVideoRecording` parameter is deprecated and will be removed in the next major release.\nPlease use the `cameraModes` parameter instead."},{test:r=>r.defaultCameraMode!==null,message:"The `defaultCameraMode` parameter is deprecated and will be removed in the next major release.\nPlease use the `cameraModes` parameter instead."}],io=L(r=>{for(let{test:t,message:e}of za)t(r)&&si(e)},0);var ro=({key:r,value:t,setValue:e,getValue:i})=>{if(r==="enableVideoRecording"&&t!==null){let s=te(i("cameraModes"));t&&!s.includes("video")?s=s.concat("video"):t||(s=s.filter(o=>o!=="video")),e("cameraModes",me(s))}if(r==="defaultCameraMode"&&t!==null){let s=te(i("cameraModes"));s=s.sort((o,n)=>o===t?-1:n===t?1:0),e("cameraModes",me(s))}};var br=[...new Set(["debug",...Object.keys(ie)])],Ha=["metadata","localeDefinitionOverride","secureUploadsSignatureResolver","secureDeliveryProxyUrlResolver","iconHrefResolver","fileValidators","collectionValidators","mediaRecorderOptions"],ja=r=>Ha.includes(r),qe=br.filter(r=>!ja(r)),Ga={...Object.fromEntries(qe.map(r=>[dt(r),r])),...Object.fromEntries(qe.map(r=>[r.toLowerCase(),r]))},Wa={...Object.fromEntries(qe.map(r=>[dt(r),z(r)])),...Object.fromEntries(qe.map(r=>[r.toLowerCase(),z(r)]))},so=r=>"__"+r,ht=class extends b{constructor(){super();u(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(ie).map(([e,i])=>[z(e),i]))}}_flushValueToAttribute(e,i){if(qe.includes(e)){let s=[...new Set([dt(e),e.toLowerCase()])];for(let o of s)typeof i=="undefined"||i===null?this.removeAttribute(o):this.getAttribute(o)!==i.toString()&&this.setAttribute(o,i.toString())}}_flushValueToState(e,i){this.$[z(e)]!==i&&(typeof i=="undefined"||i===null?this.$[z(e)]=ie[e]:this.$[z(e)]=i)}_setValue(e,i){let s=this,o=to(e,i),n=so(e);s[n]!==o&&(this._assertSameValueDifferentReference(e,s[n],o),s[n]=o,this._flushValueToAttribute(e,o),this._flushValueToState(e,o),this.debugPrint(`[uc-config] "${e}"`,o),io(this.cfg),ro({key:e,value:o!=null?o:null,setValue:this._setValue.bind(this),getValue:this._getValue.bind(this)}))}_getValue(e){var o;let i=this,s=so(e);return(o=i[s])!=null?o:this.$[z(e)]}_assertSameValueDifferentReference(e,i,s){this.cfg.debug&&s!==i&&typeof s=="object"&&typeof i=="object"&&JSON.stringify(s)===JSON.stringify(i)&&(console.warn(`[uc-config] Option "${e}" value is the same as the previous one but the reference is different`),console.warn("[uc-config] You should avoid changing the reference of the object to prevent unnecessary calculations"),console.warn(`[uc-config] "${e}" previous value:`,i),console.warn(`[uc-config] "${e}" new value:`,s))}initCallback(){var i;super.initCallback();let e=this;for(let s of qe)this.sub(z(s),o=>{this._setValue(s,o)},!1);for(let s of br){let o=(i=e[s])!=null?i:this.$[z(s)];o!==ie[s]&&this._setValue(s,o),Object.defineProperty(this,s,{set:n=>{this._setValue(s,n)},get:()=>this._getValue(s)})}}attributeChangedCallback(e,i,s){if(i===s)return;let o=this,n=Ga[e];o[n]=s}};ht.bindAttributes(Wa);for(let r of br)ht.prototype[r]=void 0;var Xa=ht;var pt=class extends b{constructor(){super(),this.init$={...this.init$,name:"",href:""}}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=`#uc-icon-${t}`;this.subConfigValue("iconHrefResolver",i=>{if(i){let s=i(t);e=s!=null?s:e}this.$.href=e})}),this.setAttribute("aria-hidden","true")}};pt.template=`<svg ref="svg" xmlns="http://www.w3.org/2000/svg"><use set="@href: href;"></use></svg>`;pt.bindAttributes({name:"name"});var oo=r=>[...new Set(r)];var no=r=>Object.entries(r).filter(([t,e])=>e!==void 0&&e!=="").map(([t,e])=>t==="cdn-operations"||t==="analytics"?e:`${t}/${e}`);var qa="https://ucarecdn.com",ft=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:qa},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{},"cdn-operations":{},progressive:{},quality:{},"is-background-for":{},"is-preview-blur":{default:1}});var Ke="--uc-img-",vr="unresolved";var yr=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),wr=3e3,Cr=5e3,xr=Object.freeze({PREVIEW:"PREVIEW",MAIN:"MAIN"});var lo=Object.create(null),ao;for(let r in ft)lo[Ke+r]=((ao=ft[r])==null?void 0:ao.default)||"";var li=class extends xe{constructor(){super(...arguments);u(this,"cssInit$",lo)}$$(e){return this.$[Ke+e]}set$$(e){for(let i in e)this.$[Ke+i]=e[i]}sub$$(e,i){this.sub(Ke+e,s=>{s===null||s===""||i(s)})}analyticsParams(){return`-/@clib/${Ge}/${We}/uc-img/`}initAttributes(e){[...this.attributes].forEach(i=>{ft[i.name]||e.setAttribute(i.name,i.value)})}initIntersection(e,i){let s={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(o=>{o.forEach(n=>{n.isIntersecting&&(i(),this._isnObserver.unobserve(e))})},s),this._isnObserver.observe(e),this._observed||(this._observed=new Set),this._observed.add(e)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(e=>{this._isnObserver.unobserve(e)}),this._isnObserver=null),E.deleteCtx(this)}static get observedAttributes(){return Object.keys(ft)}attributeChangedCallback(e,i,s){window.setTimeout(()=>{this.$[Ke+e]=s})}};var di=class extends li{constructor(){super(...arguments);u(this,"_img",new Image);u(this,"_imgPreview",new Image)}_fmtAbs(e){return!e.includes("//")&&!yr&&(e=new URL(e,document.baseURI).href),e}_validateSize(e){if((e==null?void 0:e.trim())!==""){let i=e.match(/\d+/)[0],s=e.match(/[a-zA-Z]+/)[0],o=parseInt(i,10);if(Number(o)>Cr&&this.hasFormatJPG)return Cr+s;if(Number(o)>wr&&!this.hasFormatJPG)return wr+s}return e}_getCdnModifiers(e,i){let s={format:this.$$("format"),quality:this.$$("quality"),resize:this._validateSize(e),blur:i,"cdn-operations":this.$$("cdn-operations"),analytics:this.analyticsParams()};return V(...no(s))}_getUrlBase(e="",i=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(yr&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let s=this._getCdnModifiers(e,i);if(this.$$("src").startsWith(this.$$("cdn-cname")))return M(this.$$("src"),s);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(M(Ae(this.$$("cdn-cname"),this.$$("uuid")),s));if(this.$$("uuid"))return this._proxyUrl(M(Ae(this.$$("cdn-cname"),this.$$("uuid")),s));if(this.$$("proxy-cname"))return this._proxyUrl(M(this.$$("proxy-cname"),s,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(M(`https://${this.$$("pubkey")}.ucr.io/`,s,this._fmtAbs(this.$$("src"))))}_proxyUrl(e){return this.$$("secure-delivery-proxy")?rt(this.$$("secure-delivery-proxy"),{previewUrl:e},{transform:s=>window.encodeURIComponent(s)}):e}_getElSize(e,i=1,s=!0){let o=e.getBoundingClientRect(),n=i*Math.round(o.width),a=s?"":i*Math.round(o.height);return n||a?`${n||""}x${a||""}`:null}_setupEventProxy(e){let i=o=>{o.stopPropagation();let n=new Event(o.type,o);this.dispatchEvent(n)},s=["load","error"];for(let o of s)e.addEventListener(o,i)}get img(){return this.hasPreviewImage||(this._setupConfigForImage({elNode:this._img}),this.appendChild(this._img)),this._img}get currentImg(){return this.hasPreviewImage?{type:xr.PREVIEW,img:this._imgPreview}:{type:xr.MAIN,img:this.img}}get hasPreviewImage(){return this.$$("is-preview-blur")}get bgSelector(){return this.$$("is-background-for")}get breakpoints(){if(this.$$("breakpoints")){let e=F(this.$$("breakpoints"));return oo(e.map(i=>parseInt(i,10)))}else return null}get hasFormatJPG(){return this.$$("format").toLowerCase()==="jpeg"}renderBg(e){let i=new Set;i.add(`url("${this._getUrlBase(this._getElSize(e))}") 1x`),this.$$("hi-res-support")&&i.add(`url("${this._getUrlBase(this._getElSize(e,2))}") ${2}x`),this.$$("ultra-res-support")&&i.add(`url("${this._getUrlBase(this._getElSize(e,3))}") ${3}x`);let s=`image-set(${[...i].join(", ")})`;e.style.setProperty("background-image",s),e.style.setProperty("background-image","-webkit-"+s)}getSrcset(){let e=new Set;return this.breakpoints?this.breakpoints.forEach(i=>{e.add(this._getUrlBase(i+"x")+` ${this._validateSize(i+"w")}`),this.$$("hi-res-support")&&e.add(this._getUrlBase(i*2+"x")+` ${this._validateSize(i*2+"w")}`),this.$$("ultra-res-support")&&e.add(this._getUrlBase(i*3+"x")+` ${this._validateSize(i*3+"w")}`)}):(e.add(this._getUrlBase(this._getElSize(this.currentImg.img))+" 1x"),this.$$("hi-res-support")&&e.add(this._getUrlBase(this._getElSize(this.currentImg.img,2))+" 2x"),this.$$("ultra-res-support")&&e.add(this._getUrlBase(this._getElSize(this.currentImg.img,3))+" 3x")),[...e].join()}getSrc(){return this._getUrlBase()}get srcUrlPreview(){return this._getUrlBase("100x","100")}renderBackground(){[...document.querySelectorAll(this.bgSelector)].forEach(e=>{this.$$("intersection")?this.initIntersection(e,()=>{this.renderBg(e)}):this.renderBg(e)})}_appendURL({elNode:e,src:i,srcset:s}){i&&(e.src=i),s&&(e.srcset=s)}_setupConfigForImage({elNode:e}){this._setupEventProxy(e),this.initAttributes(e)}loaderImage({src:e,srcset:i,elNode:s}){return new Promise((o,n)=>{this._setupConfigForImage({elNode:s}),s.setAttribute(vr,""),s.addEventListener("load",()=>{s.removeAttribute(vr),o(s)}),s.addEventListener("error",()=>{n(!1)}),this._appendURL({elNode:s,src:e,srcset:i})})}async renderImage(){var e,i;if(this.$$("intersection")){this.hasPreviewImage&&(this._setupConfigForImage({elNode:this._imgPreview}),this.appendChild(this._imgPreview)),this.initIntersection(this.currentImg.img,async()=>{var s;this.hasPreviewImage&&(this._imgPreview.src=this.srcUrlPreview);try{await this.loaderImage({src:this.getSrc(),srcset:this.getSrcset(),elNode:this._img}),this.hasPreviewImage&&await this._imgPreview.remove(),this.appendChild(this._img)}catch{this.hasPreviewImage&&await((s=this._imgPreview)==null?void 0:s.remove()),this.appendChild(this._img)}});return}try{this.hasPreviewImage&&(await this.loaderImage({src:this.srcUrlPreview,elNode:this._imgPreview}),this.appendChild(this._imgPreview)),await this.loaderImage({src:this.getSrc(),srcset:this.getSrcset(),elNode:this._img}),this.hasPreviewImage&&await((e=this._imgPreview)==null?void 0:e.remove()),this.appendChild(this._img)}catch{this.hasPreviewImage&&await((i=this._imgPreview)==null?void 0:i.remove()),this.appendChild(this._img)}}init(){this.bgSelector?this.renderBackground():this.renderImage()}};var Ar=class extends di{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",t=>{!this.$$("is-background-for")&&!this.$$("is-preview-blur")&&(this.img.loading=t?"lazy":"eager")})}};var mt=class mt extends S{constructor(){super();u(this,"couldBeCtxOwner",!0);this.init$={...this.init$,withDropZone:!0,onClick:()=>{this.api.initFlow()},"button-text":""}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",e=>{typeof e!="undefined"&&(this.$.withDropZone=$(e))}),this.subConfigValue("multiple",e=>{this.$["button-text"]=e?"upload-files":"upload-file"})}};u(mt,"styleAttrs",[...G(mt,mt,"styleAttrs"),"uc-simple-btn"]);var gt=mt;gt.template=`<uc-drop-area set="@disabled: !withDropZone"><button type="button" set="onclick: onClick"><uc-icon name="upload"></uc-icon><span l10n="button-text"></span><slot></slot><div class="uc-visual-drop-area" l10n="drop-files-here"></div></button></uc-drop-area>`;gt.bindAttributes({dropzone:null});var hi=class extends _{constructor(){super(...arguments);u(this,"historyTracked",!0);u(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};hi.template='<div class="uc-content"><slot></slot></div>';function Ka(r){return new Promise(t=>{typeof window.FileReader!="function"&&t(!1);try{let e=new FileReader;e.onerror=()=>{t(!0)};let i=s=>{s.type!=="loadend"&&e.abort(),t(!1)};e.onloadend=i,e.onprogress=i,e.readAsDataURL(r)}catch{t(!1)}})}function Za(r,t){return new Promise(e=>{let i=0,s=[],o=a=>{a||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),e(null)),a.isFile?(i++,a.file(l=>{i--;let c=new File([l],l.name,{type:l.type||t});s.push({type:"file",file:c,fullPath:a.fullPath}),i===0&&e(s)})):a.isDirectory&&n(a.createReader())},n=a=>{i++,a.readEntries(l=>{i--;for(let c of l)o(c);i===0&&e(s)})};o(r)})}function co(r){let t=[],e=[];for(let i=0;i<r.items.length;i++){let s=r.items[i];if(s)if(s.kind==="file"){let o=s.type;if(typeof s.webkitGetAsEntry=="function"||typeof s.getAsEntry=="function"){let a=typeof s.webkitGetAsEntry=="function"?s.webkitGetAsEntry():s.getAsEntry();e.push(Za(a,o).then(l=>{l&&t.push(...l)}));continue}let n=s.getAsFile();n&&e.push(Ka(n).then(a=>{a||t.push({type:"file",file:n})}))}else s.kind==="string"&&s.type.match("^text/uri-list")&&e.push(new Promise(o=>{s.getAsString(n=>{t.push({type:"url",url:n}),o(void 0)})}))}return Promise.all(e).then(()=>t)}var H={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},uo=["focus"],Ya=100,Er=new Map;function Ja(r,t){let e=Math.max(Math.min(r[0],t.x+t.width),t.x),i=Math.max(Math.min(r[1],t.y+t.height),t.y);return Math.sqrt((r[0]-e)*(r[0]-e)+(r[1]-i)*(r[1]-i))}function Tr(r){let t=0,e=document.body,i=new Set,s=f=>i.add(f),o=H.INACTIVE,n=f=>{r.shouldIgnore()&&f!==H.INACTIVE||(o!==f&&i.forEach(g=>g(f)),o=f)},a=()=>t>0;s(f=>r.onChange(f));let l=()=>{t=0,n(H.INACTIVE)},c=()=>{t+=1,o===H.INACTIVE&&n(H.ACTIVE)},h=()=>{t-=1,a()||n(H.INACTIVE)},d=f=>{f.preventDefault(),t=0,n(H.INACTIVE)},p=f=>{if(r.shouldIgnore())return;a()||(t+=1);let g=[f.x,f.y],y=r.element.getBoundingClientRect(),w=Math.floor(Ja(g,y)),v=w<Ya,C=f.composedPath().includes(r.element);Er.set(r.element,w);let R=Math.min(...Er.values())===w;C&&R?(f.preventDefault(),n(H.OVER)):n(v&&R?H.NEAR:H.ACTIVE)},m=async f=>{if(r.shouldIgnore())return;f.preventDefault();let g=await co(f.dataTransfer);r.onItems(g),n(H.INACTIVE)};return e.addEventListener("drop",d),e.addEventListener("dragleave",h),e.addEventListener("dragenter",c),e.addEventListener("dragover",p),r.element.addEventListener("drop",m),uo.forEach(f=>{window.addEventListener(f,l)}),()=>{Er.delete(r.element),e.removeEventListener("drop",d),e.removeEventListener("dragleave",h),e.removeEventListener("dragenter",c),e.removeEventListener("dragover",p),r.element.removeEventListener("drop",m),uo.forEach(f=>{window.removeEventListener(f,l)})}}var ho="uc-drop-area",Ze=`${ho}/registry`,_t=class _t extends S{constructor(){super(),this.init$={...this.init$,state:H.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:"",[Ze]:null}}isActive(){if(!this.$.isEnabled)return!1;let t=this.getBoundingClientRect(),e=t.width>0&&t.height>0,i=t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth),s=window.getComputedStyle(this),o=s.visibility!=="hidden"&&s.display!=="none";return e&&o&&i}initCallback(){super.initCallback(),this.bindL10n("text",()=>this.l10n("drop-files-here")),this.$[Ze]||(this.$[Ze]=new Set),this.$[Ze].add(this),this.defineAccessor("disabled",e=>{this.set$({isEnabled:!$(e)})}),this.defineAccessor("clickable",e=>{this.set$({isClickable:$(e)})}),this.defineAccessor("with-icon",e=>{this.set$({withIcon:$(e)})}),this.defineAccessor("fullscreen",e=>{this.set$({isFullscreen:$(e)})}),this.defineAccessor("text",e=>{typeof e=="string"?this.bindL10n("text",()=>this.l10n(e)||e):this.bindL10n("text",()=>this.l10n("drop-files-here"))}),this._destroyDropzone=Tr({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:e=>{this.$.state=e},onItems:e=>{e.length&&(e.forEach(i=>{i.type==="url"?this.api.addFileFromUrl(i.url,{source:U.DROP_AREA}):i.type==="file"&&this.api.addFileFromObject(i.file,{source:U.DROP_AREA,fullPath:i.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":_.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let t=this.ref["content-wrapper"];t&&(this._destroyContentWrapperDropzone=Tr({element:t,onChange:e=>{var s;let i=(s=Object.entries(H).find(([,o])=>o===e))==null?void 0:s[0].toLowerCase();i&&t.setAttribute("drag-state",i)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",e=>{var s;let i=(s=Object.entries(H).find(([,o])=>o===e))==null?void 0:s[0].toLowerCase();i&&this.setAttribute("drag-state",i)}),this.subConfigValue("sourceList",e=>{let i=F(e);this.$.isEnabled=i.includes(U.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",e=>{this.toggleAttribute("hidden",!e)}),this.sub("isClickable",e=>{this.toggleAttribute("clickable",e)}),this.$.isClickable&&(this._onAreaClicked=e=>{e.type==="keydown"?(e.code==="Space"||e.code==="Enter")&&this.api.openSystemDialog():e.type==="click"&&this.api.openSystemDialog()},this.addEventListener("keydown",this._onAreaClicked),this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$[Ze]].filter(i=>i!==this).filter(i=>i.isActive()).length>0:!1}_couldHandleFiles(){let t=this.cfg.multiple,e=this.cfg.multipleMax,i=this.uploadCollection.size;return!(t&&e&&i>=e||!t&&i>0)}destroyCallback(){var e,i;super.destroyCallback();let t=this.$[Ze];t&&(t.delete(this),t.size===0&&E.deleteCtx(ho)),(e=this._destroyDropzone)==null||e.call(this),(i=this._destroyContentWrapperDropzone)==null||i.call(this),this._onAreaClicked&&(this.removeEventListener("keydown",this._onAreaClicked),this.removeEventListener("click",this._onAreaClicked))}};u(_t,"styleAttrs",[...G(_t,_t,"styleAttrs"),"uc-drop-area"]);var bt=_t;bt.template=`<slot><div data-default-slot hidden></div><div ref="content-wrapper" class="uc-content-wrapper" set="@hidden: !isVisible"><div class="uc-icon-container" set="@hidden: !withIcon"><uc-icon name="default"></uc-icon><uc-icon name="arrow-down"></uc-icon></div><span class="uc-text">{{text}}</span></div></slot>`;bt.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Qa="src-type-",vt=class extends S{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"type");u(this,"_registeredTypes",{});this.init$={...this.init$,iconName:"default","src-type":""}}initTypes(){this.registerType({type:U.LOCAL,activate:()=>(this.api.openSystemDialog(),!1)}),this.registerType({type:U.URL,activity:_.activities.URL,textKey:"from-url"}),this.registerType({type:U.CAMERA,activity:_.activities.CAMERA,activate:()=>{let e="capture"in document.createElement("input");return e&&this.api.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:_.activities.DRAW,icon:"edit-draw"});for(let e of Object.values(Xe))this.registerType({type:e,activity:_.activities.EXTERNAL,activityParams:{externalSourceType:e}})}initCallback(){super.initCallback(),this.initTypes(),this.defineAccessor("type",e=>{e&&this.applyType(e)})}registerType(e){this._registeredTypes[e.type]=e}getType(e){return this._registeredTypes[e]}activate(){if(!this.type)return;let e=this._registeredTypes[this.type],{activity:i,activate:s,activityParams:o={}}=e;(s?s():!!i)&&this.set$({"*currentActivityParams":o,"*currentActivity":i})}applyType(e){let i=this._registeredTypes[e];if(!i){console.warn("Unsupported source type: "+e);return}let{textKey:s=e,icon:o=e}=i;this.$["src-type"]=`${Qa}${s}`,this.$.iconName=o,this.onclick=()=>{this.activate()}}};vt.template=`<button type="button"><uc-icon set="@name: iconName"></uc-icon><div class="uc-txt" l10n="src-type"></div></button>`;vt.bindAttributes({type:null});var Sr=class extends b{initCallback(){super.initCallback(),this.subConfigValue("sourceList",t=>{let e=F(t),i="";e.forEach(s=>{if(s==="instagram"){console.error("Instagram source was removed because the Instagram Basic Display API hasn't been available since December 4, 2024. Official statement, see here:https://developers.facebook.com/blog/post/2024/09/04/update-on-instagram-basic-display-api/?locale=en_US");return}i+=`<uc-source-btn role="listitem" type="${s}"></uc-source-btn>`}),this.cfg.sourceListWrap?this.innerHTML=i:this.outerHTML=i})}};var fi=()=>{let r=[];return{stack:r,promiseReadJpegChunks:e=>new Promise((i,s)=>{let o=2,n=(c,h)=>{let d=new FileReader;d.addEventListener("load",()=>{h(new DataView(d.result))}),d.addEventListener("error",p=>{s(`Reader error: ${p}`)}),d.readAsArrayBuffer(c)},a=()=>n(e.slice(o,o+128),c=>{let h,d,p;for(h=d=0,p=c.byteLength;p>=0?d<p:d>p;h=p>=0?++d:--d)if(c.getUint8(h)===255){o+=h;break}l()}),l=()=>{let c=o;return n(e.slice(o,o+=4),h=>{if(h.byteLength!==4||h.getUint8(0)!==255){s("Corrupted");return}let d=h.getUint8(1);if(d===218){i(!0);return}let p=h.getUint16(2)-2;return n(e.slice(o,o+=p),m=>{if(m.byteLength!==p){s("Corrupted");return}r.push({startPos:c,length:p,marker:d,view:m}),a()})})};FileReader&&DataView||s("Not Support"),n(e.slice(0,2),c=>{c.getUint16(0)!==65496&&s("Not jpeg"),a()})})}},el=async r=>{let t=[],{promiseReadJpegChunks:e,stack:i}=fi();return await e(r),i.forEach(({marker:s,view:o})=>{s===226&&o.getUint32(0)===1229144927&&o.getUint32(4)===1347571526&&o.getUint32(8)===1229735168&&t.push(o)}),t},fo=async(r,t,e)=>{{let i=[],s=[],{promiseReadJpegChunks:o,stack:n}=fi();await o(r),n.forEach(c=>{if(c.marker===t)return i.push(c.startPos),s.push(c.length)});let a=[r.slice(0,2)];for(let c of e){let h=new DataView(new ArrayBuffer(4));h.setUint16(0,65280+t),h.setUint16(2,c.byteLength+2),a.push(h.buffer),a.push(c)}let l=2;for(let c=0;c<i.length;c++)i[c]>l&&a.push(r.slice(l,i[c])),l=i[c]+s[c]+4;return a.push(r.slice(l,r.size)),new Blob(a,{type:r.type})}};var mo=(r,t)=>fo(r,226,t.map(e=>e.buffer)),tl=async r=>{try{return await mo(r,[])}catch(t){throw new Error(`Failed to strip ICC profile: ${t}`)}},il=(r,t,e)=>new Promise((i,s)=>{let o=n=>{if(!n){s("Failed to convert canvas to blob");return}i(n)};r.toBlob(o,t,e),r.width=r.height=1}),yt=()=>{let r=document.createElement("canvas"),t=r.getContext("2d");return{canvas:r,ctx:t}},rl=r=>{let{ctx:e,canvas:i}=yt();i.width=i.height=50,e.drawImage(r,0,0,50,50);let s=e.getImageData(0,0,50,50).data;i.width=i.height=1;for(let o=3;o<s.length;o+=4)if(s[o]<254)return!0;return!1},sl=async r=>{let t=null,{promiseReadJpegChunks:e,stack:i}=fi();return await e(r),i.forEach(({marker:s,view:o})=>{if(!t&&s===225&&o.byteLength>=14&&o.getUint32(0)===1165519206&&o.getUint16(4)===0){t=o;return}}),t},ol="data:image/jpg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4QA6RXhpZgAATU0AKgAAAAgAAwESAAMAAAABAAYAAAEoAAMAAAABAAIAAAITAAMAAAABAAEAAAAAAAD/2wBDAP//////////////////////////////////////////////////////////////////////////////////////wAALCAABAAIBASIA/8QAJgABAAAAAAAAAAAAAAAAAAAAAxABAAAAAAAAAAAAAAAAAAAAAP/aAAgBAQAAPwBH/9k=",pi,nl=()=>new Promise(r=>{if(pi!==void 0)r(pi);else{let t=new Image;t.addEventListener("load",()=>{pi=t.naturalWidth<t.naturalHeight,t.src="//:0",r(pi)}),t.src=ol}}),al=(r,t)=>{let e,i,s,o;if(!r||r.byteLength<14||r.getUint32(0)!==1165519206||r.getUint16(4)!==0)return;if(r.getUint16(6)===18761)i=!0;else if(r.getUint16(6)===19789)i=!1;else return;if(r.getUint16(8,i)!==42)return;s=8+r.getUint32(10,i);let n=r.getUint16(s-2,i);for(e=0,o=n;o>=0?e<o:e>o;o>=0?++e:--e){if(r.byteLength<s+10)return;r.getUint16(s,i)===274&&t(s+8,i),s+=12}},ll=(r,t)=>{al(r,(e,i)=>r.setUint16(e,t,i))},cl=async(r,t,e)=>(e&&ll(t,1),fo(r,225,[t.buffer])),ul=(r,t)=>new Promise((e,i)=>{t&&(r.src=t),r.complete?e(r):(r.addEventListener("load",()=>{e(r)}),r.addEventListener("error",()=>{i(new Error("Failed to load image. Probably not an image."))}))}),dl=r=>ul(new Image,r),hl=[1,3],pl=[192,193,194,195,197,198,199,201,202,203,205,206,207],po={squareSide:[Math.floor(Math.sqrt(5*1e3*1e3)),4096,8192,11180,10836,11402,14188,16384],dimension:[4096,8192,16384,32767,65535]},fl=async r=>{let t=!1,{promiseReadJpegChunks:e,stack:i}=fi();return await e(r).then(()=>(i.forEach(({marker:s,view:o})=>{if(!t&&pl.indexOf(s)>=0){let n=o.getUint8(5);hl.indexOf(n)<0&&(t=!0)}}),t)).catch(()=>t)},go=(r,t)=>{let e={};return(...i)=>{let s=t(i,e);return s in e?e[s]:e[s]=r(...i)}},_o=(r,t)=>{let[e]=r,i=Object.keys(t).map(s=>parseInt(s,10)).sort((s,o)=>s-o);for(let s=0;s<i.length;s++){let o=i[s],n=!!t[o];if(o>e&&n||o<e&&!n)return o}return e},ke={R:55,G:110,B:165,A:255},ml=`rgba(${ke.R}, ${ke.G}, ${ke.B}, ${ke.A/255})`,bo=(r,t)=>{try{let e=[r-1,t-1,1,1],{canvas:i,ctx:s}=yt();i.width=1,i.height=1;let{canvas:o,ctx:n}=yt();o.width=r,o.height=t,n&&(n.fillStyle=ml,n.fillRect(...e),s.drawImage(o,r-1,t-1,1,1,0,0,1,1));let a=s&&s.getImageData(0,0,1,1).data,l=!1;return a&&(l=a[0]===ke.R&&a[1]===ke.G&&a[2]===ke.B&&a[3]===ke.A),o.width=o.height=1,l}catch{return console.error(`Failed to test for max canvas size of ${r}x${t}.`),!1}};function vo(r){return(...t)=>new Promise(e=>{setTimeout(()=>{let i=r(...t);e(i)},0)})}var gl=vo(go(bo,_o)),_l=vo(go(bo,_o)),yo=async(r,t)=>{let e=po.squareSide.find(n=>n*n>=r*t),i=po.dimension.find(n=>n>=r&&n>=t);if(!e||!i)throw new Error("Not supported");let[s,o]=await Promise.all([gl(e,e),_l(i,1)]);if(s&&o)return!0;throw new Error("Not supported")},wo=async(r,t,e)=>{try{let{ctx:i,canvas:s}=yt();return s.width=t,s.height=e,i.imageSmoothingQuality="high",i.drawImage(r,0,0,t,e),r instanceof HTMLImageElement&&(r.src="//:0"),r instanceof HTMLCanvasElement&&(r.width=r.height=1),s}catch(i){throw new Error("Canvas resize error",{cause:i})}},bl=({img:r,targetW:t,targetH:e})=>wo(r,t,e),vl=function({sourceW:r,targetW:t,targetH:e,step:i}){let s=[],o=t,n=e;do s.push([o,n]),o=Math.round(o/i),n=Math.round(n/i);while(o<r*i);return s.reverse()},yl=({img:r,sourceW:t,targetW:e,targetH:i,step:s})=>vl({sourceW:t,targetW:e,targetH:i,step:s}).reduce((n,[a,l])=>n.then(c=>yo(a,l).then(()=>wo(c,a,l)).catch(()=>c)),Promise.resolve(r)),wl=()=>/iPad|iPhone|iPod/.test(navigator.platform)?!0:navigator.maxTouchPoints&&navigator.maxTouchPoints>2&&/MacIntel/.test(navigator.platform),Cl=navigator.maxTouchPoints&&navigator.maxTouchPoints>2&&/MacIntel/.test(navigator.platform),Ir=.71,xl=(r,t)=>{if(r.width*Ir*r.height*Ir<t.size)throw new Error("Not required");let e=r.width,i=r.height,s=e/i,o=Math.floor(Math.sqrt(t.size*s)),n=Math.floor(t.size/Math.sqrt(t.size*s));return yo(o,n).then(()=>{let{ctx:a}=yt();return"imageSmoothingQuality"in a&&!wl()&&!Cl?bl({img:r,targetW:o,targetH:n}):yl({img:r,sourceW:e,targetW:o,targetH:n,step:Ir})}).catch(()=>Promise.reject("Not supported"))},Co=async(r,t)=>{try{if(await fl(r))throw new Error("Should skipped");let i=await Promise.allSettled([sl(r),nl(),el(r)]),o=!i.some(g=>g.status==="rejected"),[n,a,l]=i,c=await tl(r).catch(()=>r),h=await dl(URL.createObjectURL(c));URL.revokeObjectURL(h.src);let d=await xl(h,t),p="image/jpeg",m=(t==null?void 0:t.quality)||.8;!o&&rl(d)&&(p="image/png",m=void 0);let f=await il(d,p,m);if(o&&n.status==="fulfilled"&&n.value){let g=n.value,y=a.status==="fulfilled"?a.value:!1;f=await cl(f,g,y)}return o&&l.status==="fulfilled"&&l.value.length>0&&(f=await mo(f,l.value)),f}catch(e){let i;throw e instanceof Error&&(i=e.message),typeof e=="string"&&(i=e),new Error(`Failed to shrink image. ${i?`Message: "${i}".`:""}`,{cause:e})}};function Al(r){let t=new Blob([r],{type:"image/svg+xml"});return URL.createObjectURL(t)}function $r(r="hsl(209, 21%, 65%)",t=32,e=32){return Al(`<svg width="${t}" height="${e}" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" fill="${r}" d="M9.68848 8.70068C9.68848 8.42454 9.91233 8.20068 10.1885 8.20068H15.0885C15.2211 8.20068 15.3483 8.25336 15.442 8.34713L20.342 13.2471C20.4358 13.3409 20.4885 13.4681 20.4885 13.6007V21.3007C20.4885 21.5768 20.2646 21.8007 19.9885 21.8007H10.1885C9.91233 21.8007 9.68848 21.5768 9.68848 21.3007V8.70068ZM10.6885 9.20068V20.8007H19.4885V14.1007L15.0885 14.1007C14.8123 14.1007 14.5885 13.8768 14.5885 13.6007L14.5885 9.20068H10.6885ZM15.5885 9.90779L18.7814 13.1007L15.5885 13.1007L15.5885 9.90779Z"/></svg>`)}function xo(r,t=40){if(r.type==="image/svg+xml")return URL.createObjectURL(r);let e=document.createElement("canvas"),i=e.getContext("2d"),s=new Image,o=new Promise((n,a)=>{s.onload=()=>{let l=s.height/s.width;l>1?(e.width=t,e.height=t*l):(e.height=t,e.width=t/l),i.fillStyle="rgb(240, 240, 240)",i.fillRect(0,0,e.width,e.height),i.drawImage(s,0,0,e.width,e.height),e.toBlob(c=>{if(!c){a();return}let h=URL.createObjectURL(c);n(h)})},s.onerror=l=>{a(l)}});return s.src=URL.createObjectURL(r),o}var El=/^([0-9]+)x([0-9]+)(?:\s+(\d{1,2}|100)%)?$/i,Ao=r=>{let t=El.exec(r==null?void 0:r.toLocaleLowerCase())||[];if(!t.length)return!1;let e=t[1]*t[2],i=16384*16384;return e>i?(console.warn(`Shrinked size can not be larger than ${Math.floor(i/1e3/1e3)}MP. You have set ${t[1]}x${t[2]} (${Math.ceil(e/1e3/100)/10}MP).`),!1):{quality:t[3]?t[3]/100:void 0,size:e}};var Ye=(r,t)=>{let e,i,s,o=(...n)=>{e?(clearTimeout(i),i=setTimeout(()=>{Date.now()-s>=t&&(r(...n),s=Date.now())},Math.max(t-(Date.now()-s),0))):(r(...n),s=Date.now(),e=!0)};return Object.defineProperty(o,"cancel",{configurable:!1,writable:!1,enumerable:!1,value:()=>{clearTimeout(i)}}),o};var K=Object.freeze({FINISHED:Symbol("FINISHED"),FAILED:Symbol("FAILED"),UPLOADING:Symbol("UPLOADING"),IDLE:Symbol("IDLE")}),wt=class r extends S{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"pauseRender",!0);u(this,"_entrySubs",new Set);u(this,"_entry",null);u(this,"_isIntersecting",!1);u(this,"_debouncedGenerateThumb",L(this._generateThumbnail.bind(this),100));u(this,"_debouncedCalculateState",L(this._calculateState.bind(this),100));u(this,"_renderedOnce",!1);u(this,"_updateHint",Ye(()=>{let i=this.$.state===K.UPLOADING&&this._entry.getValue("externalUrl")&&this._entry.getValue("source")!==U.URL&&this._entry.getValue("errors").length===0&&this.$.progressValue===0?this.l10n("waiting-for",{source:this.l10n(`src-type-${this._entry.getValue("source")}`)}):"";this.$.hint=i},100));this.init$={...this.init$,uid:"",itemName:"",errorText:"",hint:"",thumbUrl:"",progressValue:0,progressVisible:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,state:K.IDLE,ariaLabelStatusFile:"",onEdit:()=>{this.$["*currentActivityParams"]={internalId:this._entry.uid},this.$["*currentActivity"]=_.activities.CLOUD_IMG_EDIT},onRemove:()=>{this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let e of this._entrySubs)e.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(e){let[i]=e;this._isIntersecting=i.isIntersecting,i.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),i.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let e=this._entry,i=K.IDLE;e.getValue("errors").length>0?i=K.FAILED:e.getValue("isUploading")?i=K.UPLOADING:e.getValue("fileInfo")&&(i=K.FINISHED),this.$.state=i}async _generateThumbnail(){var i;if(!this._entry)return;let e=this._entry;if(e.getValue("fileInfo")&&e.getValue("isImage")){let s=this.cfg.thumbSize,o=await this.proxyUrl(M(Ae(this.cfg.cdnCname,this._entry.getValue("uuid")),V(e.getValue("cdnUrlModifiers"),`scale_crop/${s}x${s}/center`))),n=e.getValue("thumbUrl");n!==o&&(e.setValue("thumbUrl",o),n!=null&&n.startsWith("blob:")&&URL.revokeObjectURL(n));return}if(!e.getValue("thumbUrl"))if((i=e.getValue("file"))!=null&&i.type.includes("image"))try{let s=await xo(e.getValue("file"),this.cfg.thumbSize);e.setValue("thumbUrl",s)}catch{let o=window.getComputedStyle(this).getPropertyValue("--uc-muted-foreground");e.setValue("thumbUrl",$r(o))}else{let s=window.getComputedStyle(this).getPropertyValue("--uc-muted-foreground");e.setValue("thumbUrl",$r(s))}}_subEntry(e,i){let s=this._entry.subscribe(e,o=>{this.isConnected&&i(o)});this._entrySubs.add(s)}_handleEntryId(e){var s;this._reset();let i=(s=this.uploadCollection)==null?void 0:s.read(e);this._entry=i,i&&(this._subEntry("uploadProgress",o=>{this.$.progressValue=o,this._updateHint()}),this._subEntry("fileName",o=>{this.$.itemName=o||i.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",o=>{this.$.itemName=i.getValue("fileName")||o||this.l10n("file-no-name")}),this._subEntry("fileInfo",o=>{this._debouncedCalculateState(),o&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",o=>{this.$.thumbUrl=o?`url(${o})`:""}),this._subEntry("errors",()=>this._debouncedCalculateState()),this._subEntry("isUploading",()=>this._debouncedCalculateState()),this._subEntry("fileSize",()=>this._debouncedCalculateState()),this._subEntry("mimeType",()=>this._debouncedCalculateState()),this._subEntry("isImage",()=>this._debouncedCalculateState()),this._isIntersecting&&this._debouncedGenerateThumb())}initCallback(){super.initCallback(),this.sub("uid",e=>{this._handleEntryId(e)}),this.sub("state",e=>{this._handleState(e)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{r.activeInstances.forEach(e=>{e===this?e.setAttribute("focused",""):e.removeAttribute("focused")})},this.sub("*uploadTrigger",e=>{e.has(this._entry.uid)&&setTimeout(()=>this.isConnected&&this.upload())}),r.activeInstances.add(this)}_handleState(e){var i,s,o,n,a,l,c;e===K.FAILED?this.$.badgeIcon="badge-error":e===K.FINISHED&&(this.$.badgeIcon="badge-success"),e===K.UPLOADING&&(this.$.isFocused=!1),this.set$({isFailed:e===K.FAILED,isUploading:e===K.UPLOADING,isFinished:e===K.FINISHED,progressVisible:e===K.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((i=this._entry)==null?void 0:i.getValue("isImage"))&&((s=this._entry)==null?void 0:s.getValue("cdnUrl")),errorText:(n=(o=this._entry.getValue("errors"))==null?void 0:o[0])==null?void 0:n.message,ariaLabelStatusFile:this.l10n("a11y-file-item-status",{fileName:(a=this._entry)==null?void 0:a.getValue("fileName"),status:this.l10n((c=(l=e==null?void 0:e.description)==null?void 0:l.toLocaleLowerCase())!=null?c:"").toLocaleLowerCase()})}),this._updateHint()}destroyCallback(){super.destroyCallback(),r.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var e;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(e=this._observer)==null||e.disconnect()}_settingsOfShrink(){return Ao(this.cfg.imageShrink)}_processShrink(e){return Co(e,this._settingsOfShrink())}async upload(){var s,o,n,a,l,c;let e=this._entry;if(!this.uploadCollection.read(e.uid)||e.getValue("fileInfo")||e.getValue("isUploading")||e.getValue("errors").length>0)return;let i=this.cfg.multiple?this.cfg.multipleMax:1;if(!(i&&this.uploadCollection.size>i)){this._debouncedCalculateState(),e.setValue("isUploading",!0),e.setValue("errors",[]);try{let h=new AbortController;e.setValue("abortController",h);let d=async()=>{let m=e.getValue("file");m&&this.cfg.imageShrink&&(m=await this._processShrink(m).catch(()=>m));let f=m||e.getValue("externalUrl")||e.getValue("uuid"),y={...await this.getUploadClientOptions(),fileName:e.getValue("fileName"),source:e.getValue("source"),onProgress:w=>{if(w.isComputable){let v=w.value*100;e.setValue("uploadProgress",v)}},signal:h.signal,metadata:await this.getMetadataFor(e.uid)};return this.debugPrint("upload options",f,y),ir(f,y)},p=await this.$["*uploadQueue"].add(d);e.setMultipleValues({fileInfo:p,isUploading:!1,fileName:p.originalFilename,fileSize:p.size,isImage:p.isImage,mimeType:(n=(o=(s=p.contentInfo)==null?void 0:s.mime)==null?void 0:o.mime)!=null?n:p.mimeType,uuid:p.uuid,cdnUrl:(a=e.getValue("cdnUrl"))!=null?a:p.cdnUrl,cdnUrlModifiers:(l=e.getValue("cdnUrlModifiers"))!=null?l:"",uploadProgress:100,source:(c=e.getValue("source"))!=null?c:null}),e===this._entry&&this._debouncedCalculateState()}catch(h){h instanceof Te&&h.isCancel?e.setMultipleValues({isUploading:!1,uploadProgress:0}):e.setMultipleValues({isUploading:!1,uploadProgress:0,uploadError:h}),e===this._entry&&this._debouncedCalculateState()}}}};wt.template=`<div class="uc-inner" set="@finished: isFinished; @uploading: isUploading; @failed: isFailed; @focused: isFocused"><div class="uc-thumb" set="style.backgroundImage: thumbUrl"><div class="uc-badge"><uc-icon set="@name: badgeIcon"></uc-icon></div></div><div aria-atomic="true" aria-live="polite" class="uc-file-name-wrapper" set="@aria-label:ariaLabelStatusFile;"><span class="uc-file-name">{{itemName}}</span><span class="uc-file-error" set="@hidden: !errorText">{{errorText}}</span><span class="uc-file-hint" set="@hidden: !hint">{{hint}}</span></div><div class="uc-file-actions"><button type="button" l10n="@title:file-item-edit-button;@aria-label:file-item-edit-button" class="uc-edit-btn uc-mini-btn" set="onclick: onEdit; @hidden: !isEditable" ><uc-icon name="edit-file"></uc-icon></button><button type="button" l10n="@title:file-item-remove-button;@aria-label:file-item-remove-button" class="uc-remove-btn uc-mini-btn" set="onclick: onRemove;" ><uc-icon name="remove-file"></uc-icon></button><button type="button" class="uc-upload-btn uc-mini-btn" set="onclick: onUpload;"><uc-icon name="upload"></uc-icon></button></div><uc-progress-bar class="uc-progress-bar" set="value: progressValue; visible: progressVisible;"></uc-progress-bar></div>`;wt.activeInstances=new Set;var Je=class Je extends b{constructor(){super();u(this,"_handleBackdropClick",()=>{this._closeDialog()});u(this,"_closeDialog",()=>{this.setOrAddState("*modalActive",!1)});u(this,"_handleDialogClose",()=>{this._closeDialog()});u(this,"_handleDialogMouseDown",e=>{this._mouseDownTarget=e.target});u(this,"_handleDialogMouseUp",e=>{e.target===this.ref.dialog&&e.target===this._mouseDownTarget&&this._closeDialog()});this.init$={...this.init$,"*modalActive":!1,isOpen:!1,closeClicked:this._handleDialogClose}}show(){this.ref.dialog.showModal?this.ref.dialog.showModal():this.ref.dialog.setAttribute("open","")}hide(){this.ref.dialog.close?this.ref.dialog.close():this.ref.dialog.removeAttribute("open")}initCallback(){super.initCallback(),this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp),this.sub("*modalActive",e=>{this.$.isOpen!==e&&(this.$.isOpen=e),e&&this.cfg.modalScrollLock?document.body.style.overflow="hidden":document.body.style.overflow=""}),this.subConfigValue("modalBackdropStrokes",e=>{e?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.sub("isOpen",e=>{e?(this.show(),this.setAttribute("aria-modal","true")):(this.hide(),this.setAttribute("aria-modal","false"))})}destroyCallback(){super.destroyCallback(),document.body.style.overflow="",this._mouseDownTarget=void 0,this.ref.dialog.removeEventListener("close",this._handleDialogClose),this.ref.dialog.removeEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.removeEventListener("mouseup",this._handleDialogMouseUp)}};u(Je,"styleAttrs",[...G(Je,Je,"styleAttrs"),"uc-modal"]),u(Je,"StateConsumerScope","modal");var mi=Je;mi.template=`<dialog ref="dialog"><slot></slot></dialog>`;var gi=class extends S{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"historyTracked",!0);u(this,"activityType",_.activities.UPLOAD_LIST);u(this,"_throttledHandleCollectionUpdate",Ye(()=>{this.isConnected&&(this._updateUploadsState(),!this.couldOpenActivity&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},300));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",commonErrorMessage:"",hasFiles:!1,onAdd:()=>{this.api.initFlow(!0)},onUpload:()=>{this.emit(I.UPLOAD_CLICK),this.api.uploadAll(),this._throttledHandleCollectionUpdate()},onDone:()=>{this.emit(I.DONE_CLICK,this.api.getOutputCollectionState()),this.api.doneFlow()},onCancel:()=>{this.uploadCollection.clearAll()}}}_updateUploadsState(){let e=this.api.getOutputCollectionState(),i={total:e.totalCount,succeed:e.successCount,uploading:e.uploadingCount,failed:e.failedCount},s=!e.errors.some(p=>p.type==="TOO_MANY_FILES"||p.type==="TOO_FEW_FILES"),o=e.errors.some(p=>p.type==="TOO_MANY_FILES"),n=e.totalCount===(this.cfg.multiple?this.cfg.multipleMax:1),a=i.failed===0&&e.errors.length===0,l=!1,c=!1,h=!1;if(i.total-i.succeed-i.uploading-i.failed>0&&s)l=!0;else{c=!0;let p=this.cfg.groupOutput?!!e.group:!0;h=i.total===i.succeed&&s&&a&&p}this.set$({doneBtnVisible:c,doneBtnEnabled:h,uploadBtnVisible:l,addMoreBtnEnabled:i.total===0||!o&&!n,addMoreBtnVisible:!n||this.cfg.multiple}),this.bindL10n("headerText",()=>this._getHeaderText(i))}_getHeaderText(e){let i=s=>{let o=e[s];return this.l10n(`header-${s}`,{count:o})};return e.uploading>0?i("uploading"):e.failed>0?i("failed"):e.succeed>0?i("succeed"):i("total")}get couldOpenActivity(){return this.cfg.showEmptyList||this.uploadCollection.size>0}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._throttledHandleCollectionUpdate),this.subConfigValue("multipleMin",this._throttledHandleCollectionUpdate),this.subConfigValue("multipleMax",this._throttledHandleCollectionUpdate),this.sub("*groupInfo",e=>{e&&this._throttledHandleCollectionUpdate()}),this.sub("*currentActivity",e=>{!this.couldOpenActivity&&e===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._throttledHandleCollectionUpdate),this.sub("*uploadList",e=>{this._throttledHandleCollectionUpdate(),this.set$({hasFiles:e.length>0}),this.cfg.confirmUpload||this.api.uploadAll()},!1),this.sub("*collectionErrors",e=>{let i=e.filter(s=>s.type!=="SOME_FILES_HAS_ERRORS")[0];if(!i){this.set$({commonErrorMessage:null});return}this.set$({commonErrorMessage:i.message})})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._throttledHandleCollectionUpdate)}};gi.template=`<uc-activity-header><span aria-live="polite" class="uc-header-text">{{headerText}}</span><button type="button" class="uc-mini-btn uc-close-btn" set="onclick: *closeModal" l10n="@title:a11y-activity-header-button-close;@aria-label:a11y-activity-header-button-close" ><uc-icon name="close"></uc-icon></button></uc-activity-header><div class="uc-no-files" set="@hidden: hasFiles"><slot name="empty"><span l10n="no-files"></span></slot></div><div class="uc-files" repeat="*uploadList" repeat-item-tag="uc-file-item"></div><div class="uc-common-error" set="@hidden: !commonErrorMessage; textContent: commonErrorMessage;"></div><div class="uc-toolbar"><button type="button" class="uc-cancel-btn uc-secondary-btn" set="onclick: onCancel;" l10n="clear"></button><div class="uc-toolbar-spacer"></div><button type="button" class="uc-add-more-btn uc-secondary-btn" set="onclick: onAdd; @disabled: !addMoreBtnEnabled; @hidden: !addMoreBtnVisible" ><uc-icon name="add"></uc-icon><span l10n="add-more"></span></button><button type="button" class="uc-upload-btn uc-primary-btn" set="@hidden: !uploadBtnVisible; onclick: onUpload;" l10n="upload" ></button><button type="button" class="uc-done-btn uc-primary-btn" set="@hidden: !doneBtnVisible; onclick: onDone; @disabled: !doneBtnEnabled" l10n="done" ></button></div><uc-drop-area ghost></uc-drop-area>`;var _i=class extends S{constructor(){super(...arguments);u(this,"couldBeCtxOwner",!0);u(this,"activityType",_.activities.URL);u(this,"init$",{...this.init$,importDisabled:!0,onUpload:e=>{e.preventDefault();let i=this.ref.input.value;this.api.addFileFromUrl(i,{source:U.URL}),this.$["*currentActivity"]=_.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:e=>{let i=e.target.value;this.set$({importDisabled:!i})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};_i.template=`<uc-activity-header><button type="button" class="uc-mini-btn" set="onclick: *historyBack" l10n="@title:back;@aria-label:back"><uc-icon name="back"></uc-icon></button><div><uc-icon name="url"></uc-icon><span l10n="caption-from-url"></span></div><button type="button" class="uc-mini-btn uc-close-btn" set="onclick: *closeModal" l10n="@title:a11y-activity-header-button-close;@aria-label:a11y-activity-header-button-close" ><uc-icon name="close"></uc-icon></button></uc-activity-header><form class="uc-content"><input placeholder="https://" class="uc-url-input" type="text" ref="input" set="oninput: onInput" /><button type="submit" class="uc-url-upload-btn uc-primary-btn" set="onclick: onUpload; @disabled: importDisabled" l10n="upload-url" ></button></form>`;var Eo=()=>typeof navigator.permissions!="undefined";var Tl={width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},To=["camera","microphone"];function bi(r){let t=Math.floor(r/60).toString().padStart(2,"0"),e=Math.floor(r%60).toString().padStart(2,"0");return`${t}:${e}`}var So="image/jpeg",Io="video/webm",vi=class extends S{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"activityType",_.activities.CAMERA);u(this,"_unsubPermissions",null);u(this,"_chunks",[]);u(this,"_mediaRecorder",null);u(this,"_stream",null);u(this,"_selectedAudioId",null);u(this,"_selectedCameraId",null);u(this,"_chooseActionWithCamera",()=>{var e;if(this._activeTab===k.PHOTO&&this._shot(),this._activeTab===k.VIDEO){if(((e=this._mediaRecorder)==null?void 0:e.state)==="recording"){this._stopRecording();return}this._startRecording()}});u(this,"_updateTimer",()=>{let e=Math.floor((performance.now()-this.$._startTime+this.$._elapsedTime)/1e3);if(typeof this.cfg.maxVideoRecordingDuration=="number"&&this.cfg.maxVideoRecordingDuration>0){let i=this.cfg.maxVideoRecordingDuration-e;if(i<=0){this.ref.timer.textContent=bi(i),this._stopRecording();return}this.ref.timer.textContent=bi(i)}else this.ref.timer.textContent=bi(e);this._animationFrameId=requestAnimationFrame(this._updateTimer)});u(this,"_startTimer",()=>{this.$._startTime=performance.now(),this.$._elapsedTime=0,this._updateTimer()});u(this,"_stopTimer",()=>{this._animationFrameId&&cancelAnimationFrame(this._animationFrameId)});u(this,"_startTimeline",()=>{let e=this.ref.video.currentTime,i=this.ref.video.duration;this.ref.line.style.transform=`scaleX(${e/i})`,this.ref.timer.textContent=bi(e),this._animationFrameId=requestAnimationFrame(this._startTimeline)});u(this,"_stopTimeline",()=>{this._animationFrameId&&cancelAnimationFrame(this._animationFrameId)});u(this,"_startRecording",()=>{try{this._chunks=[],this._options={...this.cfg.mediaRecorderOptions};let{mimeType:e}=this.cfg.mediaRecorderOptions||{};e&&MediaRecorder.isTypeSupported(e)?this._options.mimeType=e:MediaRecorder.isTypeSupported(Io)?this._options.mimeType=Io:this._options.mimeType="video/mp4",this._stream&&(this._mediaRecorder=new MediaRecorder(this._stream,this._options),this._mediaRecorder.start(),this._mediaRecorder.addEventListener("dataavailable",i=>{this._chunks.push(i.data)}),this._startTimer(),this.classList.add("uc-recording"),this._setCameraState(J.PLAY))}catch(e){console.error("Failed to start recording",e)}});u(this,"_stopRecording",()=>{var e,i;(e=this._mediaRecorder)==null||e.addEventListener("stop",()=>{this._previewVideo(),this._stopTimer(),this._setCameraState(J.STOP)}),(i=this._mediaRecorder)==null||i.stop(),this.classList.remove("uc-recording")});u(this,"_toggleRecording",()=>{var e;((e=this._mediaRecorder)==null?void 0:e.state)!=="recording"&&(!this.ref.video.paused&&!this.ref.video.ended&&this.ref.video.readyState>2?this.ref.video.pause():this.ref.video.paused&&this.ref.video.play())});u(this,"_toggleEnableAudio",()=>{var e;(e=this._stream)==null||e.getAudioTracks().forEach(i=>{i.enabled=!i.enabled,this.$.toggleMicrophoneIcon=i.enabled?"microphone":"microphone-mute",this.$.audioSelectDisabled=!i.enabled})});u(this,"_previewVideo",()=>{var e;try{let i=new Blob(this._chunks,{type:(e=this._mediaRecorder)==null?void 0:e.mimeType}),s=URL.createObjectURL(i);this.ref.video.muted=!1,this.ref.video.volume=1,this.$.video=null,this.ref.video.src=s,this.ref.video.addEventListener("play",()=>{this._startTimeline(),this.set$({currentTimelineIcon:"pause"})}),this.ref.video.addEventListener("pause",()=>{this.set$({currentTimelineIcon:"play"}),this._stopTimeline()})}catch(i){console.error("Failed to preview video",i)}});u(this,"_retake",()=>{this._setCameraState(J.RETAKE),this._activeTab===k.VIDEO&&(this.$.video=this._stream,this.ref.video.muted=!0),this.ref.video.play()});u(this,"_accept",()=>{var o,n,a;if(this._setCameraState(J.ACCEPT),this._activeTab===k.PHOTO){(o=this._canvas)==null||o.toBlob(l=>{let c=this._createFile("camera","jpeg",So,l);this._toSend(c)},So);return}let e=new Blob(this._chunks,{type:(n=this._mediaRecorder)==null?void 0:n.mimeType}),i=this._guessExtensionByMime((a=this._mediaRecorder)==null?void 0:a.mimeType),s=this._createFile("video",i,`video/${i}`,e);this._toSend(s),this._chunks=[]});u(this,"_handlePhoto",e=>{e===J.SHOT&&this.set$({tabVideoHidden:!0,cameraHidden:!0,tabCameraHidden:!0,cameraActionsHidden:!1,cameraSelectHidden:!0}),(e===J.RETAKE||e===J.ACCEPT)&&this.set$({tabVideoHidden:!this._cameraModes.includes(k.VIDEO),tabCameraHidden:!this._cameraModes.includes(k.PHOTO),cameraHidden:!1,cameraActionsHidden:!0,cameraSelectHidden:this._cameraDevices.length<=1})});u(this,"_handleVideo",e=>{e===J.PLAY&&this.set$({timerHidden:!1,tabCameraHidden:!0,cameraSelectHidden:!0,audioSelectHidden:!0,currentTimelineIcon:"pause",currentIcon:"square",mutableClassButton:"uc-shot-btn uc-camera-action uc-stop-record"}),e===J.STOP&&this.set$({timerHidden:!1,cameraHidden:!0,audioToggleMicrophoneHidden:!0,cameraActionsHidden:!1}),(e===J.RETAKE||e===J.ACCEPT)&&this.set$({timerHidden:!0,tabVideoHidden:!this._cameraModes.includes(k.VIDEO),tabCameraHidden:!this._cameraModes.includes(k.PHOTO),cameraHidden:!1,cameraActionsHidden:!0,audioToggleMicrophoneHidden:!this.cfg.enableAudioRecording,currentIcon:"video-camera-full",mutableClassButton:"uc-shot-btn uc-camera-action",audioSelectHidden:!this.cfg.enableAudioRecording||this._audioDevices.length<=1,cameraSelectHidden:this._cameraDevices.length<=1})});u(this,"_setCameraState",e=>{this._activeTab===k.PHOTO&&(e==="shot"||e==="retake"||e==="accept")&&this._handlePhoto(e),this._activeTab===k.VIDEO&&(e==="play"||e==="stop"||e==="retake"||e==="accept"||e==="pause"||e==="resume")&&this._handleVideo(e)});u(this,"_handleActiveTab",e=>{this.ref.switcher.querySelectorAll("button").forEach(i=>{i.classList.toggle("uc-active",i.getAttribute("data-id")===e)}),e===k.PHOTO&&this.set$({currentIcon:"camera-full",audioSelectHidden:!0,audioToggleMicrophoneHidden:!0}),e===k.VIDEO&&this.set$({currentTimelineIcon:"play",currentIcon:"video-camera-full",audioSelectHidden:!this.cfg.enableAudioRecording||this._audioDevices.length<=1,audioToggleMicrophoneHidden:!this.cfg.enableAudioRecording}),this._activeTab=e});u(this,"_createFile",(e,i,s,o)=>{let n=Date.now(),a=`${e}-${n}.${i}`;return new File([o],a,{lastModified:n,type:s})});u(this,"_toSend",e=>{this.api.addFileFromObject(e,{source:U.CAMERA}),this.set$({"*currentActivity":_.activities.UPLOAD_LIST})});u(this,"_setPermissionsState",L(e=>{this.classList.toggle("uc-initialized",e==="granted");let i=this._activeTab===k.VIDEO&&this.cfg.enableAudioRecording,s=this._activeTab===k.PHOTO?"camera-full":"video-camera-full";e==="granted"?this.set$({videoHidden:!1,cameraHidden:!1,tabCameraHidden:!this._cameraModes.includes(k.PHOTO),tabVideoHidden:!this._cameraModes.includes(k.VIDEO),messageHidden:!0,timerHidden:!0,currentIcon:s,audioToggleMicrophoneHidden:!i,audioSelectHidden:!i}):e==="prompt"?(this.$.l10nMessage="camera-permissions-prompt",this.set$({videoHidden:!0,cameraHidden:!0,tabCameraHidden:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage="camera-permissions-denied",this.set$({videoHidden:!0,messageHidden:!1,tabCameraHidden:!this._cameraModes.includes(k.PHOTO),tabVideoHidden:!this._cameraModes.includes(k.VIDEO),cameraActionsHidden:!0,mutableClassButton:"uc-shot-btn uc-camera-action"}),this._stopCapture())},300));u(this,"_makeStreamInactive",()=>{var s,o;if(!this._stream)return!1;let e=(s=this._stream)==null?void 0:s.getAudioTracks(),i=(o=this._stream)==null?void 0:o.getVideoTracks();e.forEach(n=>n.stop()),i.forEach(n=>n.stop())});u(this,"_stopCapture",()=>{var e;this._capturing&&(this.ref.video.volume=0,(e=this.$.video)==null||e.getTracks()[0].stop(),this.$.video=null,this._makeStreamInactive(),this._stopTimer(),this._capturing=!1)});u(this,"_capture",async()=>{let e={video:Tl,audio:this.cfg.enableAudioRecording?{}:!1};this._selectedCameraId&&(e.video={deviceId:{exact:this._selectedCameraId}}),this._selectedAudioId&&this.cfg.enableAudioRecording&&(e.audio={deviceId:{exact:this._selectedAudioId}}),this.ref.video.volume=0;try{this._setPermissionsState("prompt"),this._stream=await navigator.mediaDevices.getUserMedia(e),this._stream.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=this._stream,this._capturing=!0,this._setPermissionsState("granted")}catch(i){this._setPermissionsState("denied"),console.log("Failed to capture camera",i)}});u(this,"_handlePermissionsChange",()=>{this._capture()});u(this,"_permissionAccess",async()=>{try{for(let e of To)this[`${e}Response`]=await navigator.permissions.query({name:e}),this[`${e}Response`].addEventListener("change",this._handlePermissionsChange)}catch(e){console.log("Failed to use permissions API. Fallback to manual request mode.",e),this._capture()}});u(this,"_getPermission",()=>{});u(this,"_requestDeviceAccess",async()=>{try{await navigator.mediaDevices.getUserMedia({video:!0,audio:this.cfg.enableAudioRecording}),await this._getDevices(),navigator.mediaDevices.addEventListener("devicechange",this._getDevices)}catch(e){console.log("Failed to get user media",e)}});u(this,"_getDevices",async()=>{var e,i;try{let s=await navigator.mediaDevices.enumerateDevices();this._cameraDevices=s.filter(o=>o.kind==="videoinput").map((o,n)=>({text:o.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:o.deviceId})),this._audioDevices=this.cfg.enableAudioRecording&&s.filter(o=>o.kind==="audioinput").map(o=>({text:o.label.trim(),value:o.deviceId})),this._cameraDevices.length>1&&this.set$({cameraSelectOptions:this._cameraDevices,cameraSelectHidden:!1}),this._selectedCameraId=(e=this._cameraDevices[0])==null?void 0:e.value,this._audioDevices.length>1&&this.set$({audioSelectOptions:this._audioDevices,audioSelectHidden:!1}),this._selectedAudioId=(i=this._audioDevices[0])==null?void 0:i.value}catch(s){console.log("Failed to get devices",s)}});u(this,"_onActivate",async()=>{await this._permissionAccess(),await this._requestDeviceAccess(),await this._capture(),this._handleCameraModes(this._cameraModes)});u(this,"_onDeactivate",async()=>{this._unsubPermissions&&this._unsubPermissions(),!!window.chrome||this._setPermissionsState("denied"),this._stopCapture()});u(this,"_handleCameraModes",e=>{this.$.tabVideoHidden=!e.includes(k.VIDEO),this.$.tabCameraHidden=!e.includes(k.PHOTO);let i=e[0];(!this._activeTab||!e.includes(this._activeTab))&&this._handleActiveTab(i)});this.init$={...this.init$,video:null,videoTransformCss:null,videoHidden:!0,messageHidden:!0,requestBtnHidden:Eo(),cameraSelectOptions:null,cameraSelectHidden:!0,l10nMessage:"",switcher:null,panels:null,timer:null,timerHidden:!0,cameraHidden:!0,cameraActionsHidden:!0,audioSelectOptions:null,audioSelectHidden:!0,audioSelectDisabled:!0,audioToggleMicrophoneHidden:!0,tabCameraHidden:!0,tabVideoHidden:!0,currentIcon:"camera-full",currentTimelineIcon:"play",toggleMicrophoneIcon:"microphone",_startTime:0,_elapsedTime:0,_animationFrameId:null,mutableClassButton:"uc-shot-btn uc-camera-action",onCameraSelectChange:e=>{this._selectedCameraId=e.target.value,this._capture()},onAudioSelectChange:e=>{this._selectedAudioId=e.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>this._shot(),onRequestPermissions:()=>this._capture(),onStartCamera:()=>this._chooseActionWithCamera(),onStartRecording:()=>this._startRecording(),onStopRecording:()=>this._stopRecording(),onToggleRecording:()=>this._toggleRecording(),onToggleAudio:()=>this._toggleEnableAudio(),onRetake:()=>this._retake(),onAccept:()=>this._accept(),onClickTab:e=>{let i=e.currentTarget.getAttribute("data-id");i&&this._handleActiveTab(i)}}}_shot(){if(this._setCameraState("shot"),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d"),!this._ctx)throw new Error("Failed to get canvas context");this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this.cfg.cameraMirror&&(this._ctx.translate(this._canvas.width,0),this._ctx.scale(-1,1)),this._ctx.drawImage(this.ref.video,0,0),this.ref.video.pause()}_guessExtensionByMime(e){let i={mp4:"mp4",ogg:"ogg",webm:"webm",quicktime:"mov","x-matroska":"mkv"};if(e==="")return"webm";if(e&&(e=e.split("/"),(e==null?void 0:e[0])==="video")){e=e.slice(1).join("/");let s=e==null?void 0:e.split(";")[0];if(i[s])return i[s]}return"avi"}get _cameraModes(){return F(this.cfg.cameraModes)}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",e=>{this.$.videoTransformCss=e?"scaleX(-1)":null}),this.subConfigValue("enableAudioRecording",e=>{this.$.audioToggleMicrophoneHidden=!e,this.$.audioSelectDisabled=!e}),this.subConfigValue("cameraModes",e=>{if(!this.isActivityActive)return;let i=te(e);this._handleCameraModes(i)})}_destroy(){var e,i;for(let s of To)(e=this[`${s}Response`])==null||e.removeEventListener("change",this._handlePermissionsChange);(i=navigator.mediaDevices)==null||i.removeEventListener("devicechange",this._getDevices)}async destroyCallback(){super.destroyCallback(),this._destroy()}};vi.template=`<uc-activity-header><button type="button" class="uc-mini-btn" set="onclick: *historyBack" l10n="@title:back"><uc-icon name="back"></uc-icon></button><div set="@hidden: !cameraSelectHidden"><uc-icon name="camera"></uc-icon><span l10n="caption-camera"></span></div><uc-select class="uc-camera-select" set="$.options: cameraSelectOptions; @hidden: cameraSelectHidden; onchange: onCameraSelectChange" ></uc-select><button type="button" class="uc-mini-btn uc-close-btn" set="onclick: *closeModal" l10n="@title:a11y-activity-header-button-close;@aria-label:a11y-activity-header-button-close" ><uc-icon name="close"></uc-icon></button></uc-activity-header><div class="uc-content"><video muted autoplay playsinline set="srcObject: video; style.transform: videoTransformCss; @hidden: videoHidden" ref="video" ></video><div class="uc-message-box" set="@hidden: messageHidden"><span l10n="l10nMessage"></span><button type="button" set="onclick: onRequestPermissions; @hidden: requestBtnHidden" l10n="camera-permissions-request" ></button></div></div><div class="uc-controls"><div ref="switcher" class="uc-switcher" set="@hidden:!timerHidden"><button data-id="photo" type="button" class="uc-switch uc-mini-btn" set="onclick: onClickTab; @hidden: tabCameraHidden" ><uc-icon name="camera"></uc-icon></button><button data-id="video" type="button" class="uc-switch uc-mini-btn" set="onclick: onClickTab; @hidden: tabVideoHidden" ><uc-icon name="video-camera"></uc-icon></button></div><button class="uc-secondary-btn uc-recording-timer" set="@hidden:timerHidden; onclick: onToggleRecording"><uc-icon set="@name: currentTimelineIcon"></uc-icon><span ref="timer"> 00:00 </span><span ref="line" class="uc-line"></span></button><div class="uc-camera-actions uc-camera-action" set="@hidden: cameraActionsHidden"><button type="button" class="uc-secondary-btn" set="onclick: onRetake">Retake</button><button type="button" class="uc-primary-btn" set="onclick: onAccept">Accept</button></div><button type="button" class="uc-shot-btn uc-camera-action" set="onclick: onStartCamera; @class: mutableClassButton; @hidden: cameraHidden;" ><uc-icon set="@name: currentIcon"></uc-icon></button><div class="uc-select"><button class="uc-mini-btn uc-btn-microphone" set="onclick: onToggleAudio; @hidden: audioToggleMicrophoneHidden;"><uc-icon set="@name:toggleMicrophoneIcon"></uc-icon></button><uc-select class="uc-audio-select" set="$.options: audioSelectOptions; onchange: onAudioSelectChange; @hidden: audioSelectHidden; @disabled: audioSelectDisabled" ></uc-select></div></div>`;var yi=class extends S{constructor(){super(...arguments);u(this,"requireCtxName",!0)}initCallback(){super.initCallback(),this.$["*eventEmitter"].bindTarget(this)}destroyCallback(){super.destroyCallback(),this.$["*eventEmitter"].unbindTarget(this)}};yi.EventType=I;var Sl=yi;var wi=class extends S{constructor(){super(...arguments);u(this,"init$",{...this.init$,visible:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let e=this.uploadCollection.items().some(i=>this.uploadCollection.read(i).getValue("isUploading"));this.$.visible=e}),this.sub("visible",e=>{e?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",e=>{this.$.value=e})}destroyCallback(){var e;super.destroyCallback(),(e=this._unobserveCollection)==null||e.call(this)}};wi.template='<uc-progress-bar set="visible: visible; value: value"></uc-progress-bar>';var Ci=class extends b{constructor(){super(...arguments);u(this,"_value",0);u(this,"_visible",!0);u(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",e=>{if(e==null)return;let i=this._value;if(this._value=e,!!this._visible){if(e===100&&this.ref.realProgressLine.addEventListener("transitionend",()=>{this.ref.realProgressLine.classList.toggle("uc-progress--hidden",!0)},{once:!0}),this.ref.fakeProgressLine.classList.toggle("uc-fake-progress--hidden",e!==0),e===0&&i>0){this.ref.realProgressLine.addEventListener("transitionend",()=>{this.style.setProperty("--l-progress-value",this._value.toString())},{once:!0});return}this.style.setProperty("--l-progress-value",this._value.toString())}}),this.defineAccessor("visible",e=>{this._visible=e,this.ref.realProgressLine.classList.toggle("uc-progress--hidden",!e),this.ref.fakeProgressLine.classList.toggle("uc-fake-progress--hidden",!e)})}};Ci.template=`<div ref="fakeProgressLine" class="uc-fake-progress"></div><div ref="realProgressLine" class="uc-progress"></div>`;var ce="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";function $o(...r){return r.reduce((t,e)=>{if(typeof e=="string")return t[e]=!0,t;for(let i of Object.keys(e))t[i]=e[i];return t},{})}function N(...r){let t=$o(...r);return Object.keys(t).reduce((e,i)=>(t[i]&&e.push(i),e),[]).join(" ")}function ko(r,...t){let e=$o(...t);for(let i of Object.keys(e))r.classList.toggle(i,e[i])}var Oo=r=>{if(!r)return W;let t=te(r).filter(e=>W.includes(e));return t.length===0?W:t};function Lo(r){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":W,"*tabId":O.CROP,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:ce,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:me(W),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let t=r.querySelectorAll("img");for(let e of t){let i=e.src;e.src=ce,e.src=i}r.$["*networkProblems"]=!1},"*on.apply":t=>{if(!t)return;let e=r.$["*originalUrl"],i=V(Ee(t),"preview"),s=M(e,i),o={originalUrl:e,cdnUrlModifiers:i,cdnUrl:s,transformations:t};r.dispatchEvent(new CustomEvent("apply",{detail:o,bubbles:!0,composed:!0})),r.remove()},"*on.cancel":()=>{r.remove(),r.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}var Uo="<svg width='0' height='0' style='position:absolute'><symbol viewBox='0 0 20 20' id='uc-icon-brightness' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M15 10a5 5 0 0 1-5 5m5-5a5 5 0 0 0-5-5m5 5h-5m0 5a5 5 0 0 1 0-10m0 10V5m0 15v-3M2.93 2.929 5.05 5.05M0 10h3m-.07 7.071 2.12-2.121M10 0v3m7.07 14.071-2.12-2.121M20 10h-3m.07-7.071L14.95 5.05m-.626 2.45H10m4.324 5H10'/></symbol><symbol fill='currentColor' viewBox='0 0 20 20' id='uc-icon-closeMax' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='M8.232 10 3.585 5.353l1.768-1.768L10 8.232l4.648-4.647 1.767 1.768L11.768 10l4.647 4.648-1.767 1.767L10 11.768l-4.647 4.647-1.768-1.767L8.232 10Z' clip-rule='evenodd'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-contrast' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M2 10a8 8 0 1 0 16 0 8 8 0 1 0-16 0m8-8v16m8-8h-8m7.598 2.5H10m6.24 2.5H10m7.6-7.5H10M16.242 5H10'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-crop' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M20 14H7.005C6.45 14 6 13.55 6 12.995V0M0 6h13.067c.515 0 .933.418.933.933V20M14.5.4 13 2l1.5 1.6M13 2h2a3 3 0 0 1 3 3v2M5.5 19.6 7 18l-1.5-1.6M7 18H5a3 3 0 0 1-3-3v-2'/></symbol><symbol fill='currentColor' viewBox='0 0 20 20' id='uc-icon-done' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='m18.057 6.333-9.365 9.125a1.25 1.25 0 0 1-1.768-.023L1.92 10.296l1.791-1.744 4.132 4.243 8.47-8.253 1.744 1.79Z' clip-rule='evenodd'/></symbol><symbol fill='currentColor' viewBox='0 0 25 24' id='uc-icon-edit-file' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='M18.558 2.804a.78.78 0 0 0-.557.235l-.008.007-2.472 2.46 3.847 3.848 2.46-2.473.004-.003a.78.78 0 0 0 0-1.108l-.004-.003-2.712-2.728a.78.78 0 0 0-.558-.235Zm-.248 7.613-3.852-3.852-8.93 8.887-1.516 5.41 5.41-1.515 8.888-8.93Zm-.636-8.934a2.28 2.28 0 0 1 2.512.505l2.702 2.717.002.002a2.278 2.278 0 0 1 0 3.234l-.002.002-12.541 12.602a.75.75 0 0 1-.33.193l-6.884 1.928a.75.75 0 0 1-.925-.924l1.928-6.885a.75.75 0 0 1 .193-.33l12.603-12.54a2.28 2.28 0 0 1 .742-.504Z' clip-rule='evenodd'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-enhance' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M19 13h-2m0 0a4 4 0 0 1-4-4m4 4a4 4 0 0 0-4 4m0-8V7m0 2a4 4 0 0 1-4 4m-2 0h2m0 0a4 4 0 0 1 4 4m0 0v2M8 8.5H6.5m0 0a2 2 0 0 1-2-2m2 2a2 2 0 0 0-2 2m0-4V5m0 1.5a2 2 0 0 1-2 2M1 8.5h1.5m0 0a2 2 0 0 1 2 2m0 0V12M12 3h-1m0 0a1 1 0 0 1-1-1m1 1a1 1 0 0 0-1 1m0-2V1m0 1a1 1 0 0 1-1 1M8 3h1m0 0a1 1 0 0 1 1 1m0 0v1'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-exposure' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M10 20v-3M2.93 2.929 5.05 5.05M0 10h3m-.07 7.071 2.12-2.121M10 0v3m7.07 14.071-2.12-2.121M20 10h-3m.07-7.071L14.95 5.05M5 10a5 5 0 1 0 10 0 5 5 0 1 0-10 0'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-filters' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M4.5 6.5a5.5 5.5 0 1 0 11 0 5.5 5.5 0 1 0-11 0m-3.5 6a5.5 5.5 0 1 0 11 0 5.5 5.5 0 1 0-11 0m7 0a5.5 5.5 0 1 0 11 0 5.5 5.5 0 1 0-11 0'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-flip' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M19.6 5 18 3.5 16.4 5m3.2 10L18 16.5 16.4 15M18 3.523v12.954M3.3 8.5h10.654c.301 0 .415-.395.159-.554L3.459 1.286A.3.3 0 0 0 3 1.542V8.2a.3.3 0 0 0 .3.3zm0 3h10.654c.301 0 .415.395.159.554l-10.654 6.66A.3.3 0 0 1 3 18.458v-6.66a.3.3 0 0 1 .3-.3z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-gamma' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M17 3C9 6 2.5 11.5 2.5 17.5m0 0h1m-1 0v-1m14 1h1m-3 0h1m-3 0h1m-3 0h1m-3 0h1m-3 0h1m-3 0h1m-3-14v-1m0 3v-1m0 3v-1m0 3v-1m0 3v-1m0 3v-1m0 3v-1'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-mirror' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M5 .4 3.5 2 5 3.6M15 .4 16.5 2 15 3.6M3.52 2h12.957M8.5 16.7V6.046c0-.301-.394-.415-.554-.159L1.287 16.541a.3.3 0 0 0 .255.459H8.2a.3.3 0 0 0 .3-.3zm3 0V6.046c0-.301.395-.415.555-.159l6.659 10.654a.3.3 0 0 1-.255.459H11.8a.3.3 0 0 1-.3-.3z'/></symbol><symbol viewBox='0 0 40 40' id='uc-icon-original' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.5' d='M0 40 40 0'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-rotate' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M13.5.4 12 2l1.5 1.6M12.023 2H14.4A3.6 3.6 0 0 1 18 5.6V8M4 17h9a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-sad' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M2 17c4.418-4 11.582-4 16 0M16.5 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-11 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-saturation' xmlns='http://www.w3.org/2000/svg'><defs><linearGradient id='puc-icon-id__a' x1='10.001' y1='1' x2='10.001' y2='19' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient></defs><circle cx='10.001' cy='10' r='9' transform='rotate(90 10 10)' fill='url(#puc-icon-id__a)'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-slider' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M0 10h11m0 0a2 2 0 1 0 4 0m-4 0a2 2 0 1 1 4 0m0 0h5'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-tuning' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M8 10h11M1 10h4M1 4.5h11m3 0h4m-18 11h11m3 0h4m-7-11a1.5 1.5 0 1 0 3 0 1.5 1.5 0 1 0-3 0M5 10a1.5 1.5 0 1 0 3 0 1.5 1.5 0 1 0-3 0m7 5.5a1.5 1.5 0 1 0 3 0 1.5 1.5 0 1 0-3 0'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-vibrance' xmlns='http://www.w3.org/2000/svg'><path d='M2.125 5.64A8.96 8.96 0 0 0 1.001 10a8.96 8.96 0 0 0 1.124 4.36V5.64z' fill='url(#suc-icon-id__a)'/><path d='M2.875 15.499V4.502a9.053 9.053 0 0 1 1.75-1.72v14.437a9.05 9.05 0 0 1-1.75-1.72z' fill='url(#suc-icon-id__b)'/><path d='M5.375 17.722c.548.33 1.134.601 1.75.809V1.469a8.956 8.956 0 0 0-1.75.81v15.443z' fill='url(#suc-icon-id__c)'/><path d='M7.875 1.253v17.495c.564.136 1.15.22 1.75.244V1.008a9 9 0 0 0-1.75.245z' fill='url(#suc-icon-id__d)'/><path d='M10.375 1.008v17.984a9 9 0 0 0 1.75-.244V1.252a9 9 0 0 0-1.75-.244z' fill='url(#suc-icon-id__e)'/><path d='M12.875 1.469V18.53a8.957 8.957 0 0 0 1.75-.808V2.277a8.957 8.957 0 0 0-1.75-.808z' fill='url(#suc-icon-id__f)'/><path d='M15.375 2.78v14.44a9.053 9.053 0 0 0 1.75-1.72v-11a9.054 9.054 0 0 0-1.75-1.72z' fill='url(#suc-icon-id__g)'/><path d='M17.875 5.638v8.724A8.959 8.959 0 0 0 19.001 10a8.96 8.96 0 0 0-1.126-4.362z' fill='url(#suc-icon-id__h)'/><defs><linearGradient id='suc-icon-id__a' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__b' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__c' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__d' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__e' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__f' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__g' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__h' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient></defs></symbol><symbol viewBox='0 0 20 20' id='uc-icon-warmth' xmlns='http://www.w3.org/2000/svg'><path d='m7.5 13.05.429.42.171-.175v-.244h-.6zm5 0h-.6v.245l.172.175.428-.42zM8.1 3.5c0-1.05.85-1.9 1.9-1.9V.4a3.1 3.1 0 0 0-3.1 3.1h1.2zm0 9.55V3.5H6.9v9.55h1.2zm-1 2.45c0-.79.315-1.506.829-2.03l-.858-.84A4.088 4.088 0 0 0 5.9 15.5h1.2zm2.9 2.9a2.9 2.9 0 0 1-2.9-2.9H5.9a4.1 4.1 0 0 0 4.1 4.1v-1.2zm2.9-2.9a2.9 2.9 0 0 1-2.9 2.9v1.2a4.1 4.1 0 0 0 4.1-4.1h-1.2zm-.829-2.03c.514.524.829 1.24.829 2.03h1.2c0-1.117-.447-2.13-1.171-2.87l-.858.84zM11.9 3.5v9.55h1.2V3.5h-1.2zM10 1.6c1.05 0 1.9.85 1.9 1.9h1.2A3.1 3.1 0 0 0 10 .4v1.2z' fill='currentColor'/><path d='M10 14V8' stroke='currentColor' stroke-width='1.2' stroke-linecap='round'/><path d='M14 3h3m-3 3h3m-3 3h3m-8 6.5a1 1 0 1 0 2 0 1 1 0 1 0-2 0' stroke='currentColor' stroke-width='1.2'/></symbol></svg>";var Po=`${Uo} <div class="uc-wrapper uc-wrapper_desktop"><uc-presence-toggle class="uc-network_problems_splash" set="visible: presence.networkProblems;"><div class="uc-network_problems_content"><div class="uc-network_problems_icon"><uc-icon name="sad"></uc-icon></div><div class="uc-network_problems_text">Network error</div></div><div class="uc-network_problems_footer"><uc-btn-ui theme="primary" text="Retry" set="onclick: *on.retryNetwork"></uc-btn-ui></div></uc-presence-toggle><div class="uc-viewport"><div class="uc-file_type_outer"><div class="uc-file_type">{{fileType}}</div></div><div class="uc-image_container" ref="img-container-el"><img src="${ce}" class="uc-image uc-image_visible_from_editor" ref="img-el" /><uc-editor-image-cropper ref="cropper-el"></uc-editor-image-cropper><uc-editor-image-fader ref="fader-el"></uc-editor-image-fader></div><div class="uc-info_pan">{{msg}}</div></div><div class="uc-toolbar"><uc-line-loader-ui set="active: showLoader"></uc-line-loader-ui><div class="uc-toolbar_content uc-toolbar_content__editor"><uc-editor-toolbar></uc-editor-toolbar></div></div></div>`;var ue=class extends b{constructor(){super();u(this,"ctxOwner",!0);u(this,"_debouncedShowLoader",L(this._showLoader.bind(this),300));this.init$={...this.init$,...Lo(this)}}_showLoader(e){this.$.showLoader=e}_waitForSize(){return new Promise((i,s)=>{let o=setTimeout(()=>{s(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),n=new ResizeObserver(([a])=>{a.contentRect.width>0&&a.contentRect.height>0&&(i(),clearTimeout(o),n.disconnect())});n.observe(this)})}initCallback(){super.initCallback(),this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async updateImage(){if(this.isConnected){if(await this._waitForSize(),this.$.cdnUrl){let e=Dt(this.$.cdnUrl),i=Ae(this.$.cdnUrl,e);if(i===this.$["*originalUrl"])return;this.$["*originalUrl"]=i;let s=Gr(this.$.cdnUrl),o=Yr(s);this.$["*editorTransformations"]=o}else if(this.$.uuid){let e=Ae(this.cfg.cdnCname,this.$.uuid);if(e===this.$["*originalUrl"])return;this.$["*originalUrl"]=e,this.$["*editorTransformations"]={}}else throw new Error("No UUID nor CDN URL provided");this.$["*tabId"]===O.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate();try{let e=await this.proxyUrl(M(this.$["*originalUrl"],V("json"))),i=await fetch(e).then(n=>n.json()),{width:s,height:o}=i;this.$["*imageSize"]={width:s,height:o},this.$["*tabId"]===O.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(e){e&&console.error("Failed to load image info",e)}}}async initEditor(){try{await this._waitForSize()}catch(e){this.isConnected&&console.error(e.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==ce&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",e=>{let i=this.ref["img-el"];i.src!==e&&(this._imgLoading=!0,i.src=e||ce)}),this.sub("cropPreset",e=>{this.$["*cropPresetList"]=Qt(e)}),this.sub("tabs",e=>{this.$["*tabList"]=Oo(e)}),this.sub("*tabId",e=>{this.ref["img-el"].className=N("uc-image",{"uc-image_hidden_to_cropper":e===O.CROP,"uc-image_hidden_effects":e!==O.CROP})}),this.classList.add("uc-editor_ON"),this.sub("*networkProblems",e=>{this.$["presence.networkProblems"]=e,this.$["presence.modalCaption"]=!e}),this.sub("*editorTransformations",e=>{if(Object.keys(e).length===0)return;let i=this.$["*originalUrl"],s=V(Ee(e),"preview"),o=M(i,s),n={originalUrl:i,cdnUrlModifiers:s,cdnUrl:o,transformations:e};this.dispatchEvent(new CustomEvent("change",{detail:n,bubbles:!0,composed:!0}))},!1),this.sub("uuid",e=>e&&this.updateImage()),this.sub("cdnUrl",e=>e&&this.updateImage())}};u(ue,"styleAttrs",["uc-cloud-image-editor"]);ue.template=Po;ue.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var xi=class extends b{constructor(){super(),this.init$={...this.init$,dragging:!1},this._handlePointerUp=this._handlePointerUp_.bind(this),this._handlePointerMove=this._handlePointerMove_.bind(this),this._handleSvgPointerMove=this._handleSvgPointerMove_.bind(this)}_shouldThumbBeDisabled(t){let e=this.$["*imageBox"];if(!e)return;if(t===""&&e.height<=x&&e.width<=x)return!0;let i=e.height<=x&&(t.includes("n")||t.includes("s")),s=e.width<=x&&(t.includes("e")||t.includes("w"));return i||s}_createBackdrop(){let t=this.$["*cropBox"];if(!t)return;let{x:e,y:i,width:s,height:o}=t,n=this.ref["svg-el"],a=Y("mask",{id:"backdrop-mask"}),l=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),c=Y("rect",{x:e,y:i,width:s,height:o,fill:"black"});a.appendChild(l),a.appendChild(c);let h=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});n.appendChild(h),n.appendChild(a),this._backdropMask=a,this._backdropMaskInner=c}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let t=this.$["*cropBox"];if(!t)return;let{x:e,y:i,width:s,height:o}=t;this._backdropMaskInner&&Ue(this._backdropMaskInner,{x:e,y:i,width:s,height:o})}_updateFrame(){let t=this.$["*cropBox"];if(!(!t||!this._frameGuides||!this._frameThumbs)){for(let e of Object.values(this._frameThumbs)){let{direction:i,pathNode:s,interactionNode:o,groupNode:n}=e,a=i==="",l=i.length===2,{x:c,y:h,width:d,height:p}=t;if(a)Ue(o,{x:c,y:h,width:d,height:p});else{let f=$e(Math.min(d,p)/(24*2+34)/2,0,1),{d:g,center:y}=l?Ls(t,i,f):Us(t,i,f),w=Math.max(cr*$e(Math.min(d,p)/cr/3,0,1),Os);Ue(o,{x:y[0]-w,y:y[1]-w,width:w*2,height:w*2}),Ue(s,{d:g})}let m=this._shouldThumbBeDisabled(i);n.setAttribute("class",N("uc-thumb",{"uc-thumb--hidden":m,"uc-thumb--visible":!m}))}Ue(this._frameGuides,{x:t.x-1*.5,y:t.y-1*.5,width:t.width+1,height:t.height+1})}}_createThumb(t,e){let i=Y("g");i.classList.add("uc-thumb"),i.setAttribute("with-effects","");let s=Y("rect",{fill:"transparent"}),o=Y("path",{stroke:"currentColor",fill:"none","stroke-width":3});i.appendChild(o),i.appendChild(s),t[e]={direction:e,pathNode:o,interactionNode:s,groupNode:i},e===""&&(i.style.cursor="move"),s.addEventListener("pointerdown",this._handlePointerDown.bind(this,e))}_createThumbs(){let t={};for(let e=0;e<3;e++)for(let i=0;i<3;i++){let s=`${["n","","s"][e]}${["w","","e"][i]}`;s!==""&&this._createThumb(t,s)}return this._createThumb(t,""),t}_createGuides(){let t=Y("svg"),e=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"currentColor","stroke-width":1,"stroke-opacity":.5});t.appendChild(e);for(let i=1;i<=2;i++){let s=Y("line",{x1:`${lt*i}%`,y1:"0%",x2:`${lt*i}%`,y2:"100%",stroke:"currentColor","stroke-width":1,"stroke-opacity":.3});t.appendChild(s)}for(let i=1;i<=2;i++){let s=Y("line",{x1:"0%",y1:`${lt*i}%`,x2:"100%",y2:`${lt*i}%`,stroke:"currentColor","stroke-width":1,"stroke-opacity":.3});t.appendChild(s)}return t.classList.add("uc-guides","uc-guides--semi-hidden"),t}_createFrame(){let t=this.ref["svg-el"],e=document.createDocumentFragment(),i=this._createGuides();e.appendChild(i);let s=this._createThumbs();for(let{groupNode:o}of Object.values(s))e.appendChild(o);t.appendChild(e),this._frameThumbs=s,this._frameGuides=i}_handlePointerDown(t,e){if(!this._frameThumbs)return;let i=this._frameThumbs[t];if(this._shouldThumbBeDisabled(t))return;let s=this.$["*cropBox"],{x:o,y:n}=this.ref["svg-el"].getBoundingClientRect(),a=e.x-o,l=e.y-n;this.$.dragging=!0,this._draggingThumb=i,this._dragStartPoint=[a,l],this._dragStartCrop={...s}}_handlePointerUp_(t){this._updateCursor(),this.$.dragging&&(t.stopPropagation(),t.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(t){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;t.stopPropagation(),t.preventDefault();let e=this.ref["svg-el"],{x:i,y:s}=e.getBoundingClientRect(),o=t.x-i,n=t.y-s,a=o-this._dragStartPoint[0],l=n-this._dragStartPoint[1],{direction:c}=this._draggingThumb,h=this._calcCropBox(c,[a,l]);h&&(this.$["*cropBox"]=h)}_calcCropBox(t,e){var c,h;let[i,s]=e,o=this.$["*imageBox"],n=(c=this._dragStartCrop)!=null?c:this.$["*cropBox"],a=(h=this.$["*cropPresetList"])==null?void 0:h[0],l=a?a.width/a.height:void 0;if(t===""?n=Ms({rect:n,delta:[i,s],imageBox:o}):n=Rs({rect:n,delta:[i,s],direction:t,aspectRatio:l,imageBox:o}),!Object.values(n).every(d=>Number.isFinite(d)&&d>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:n});return}return ze(je(n),this.$["*imageBox"])}_handleSvgPointerMove_(t){if(!this._frameThumbs)return;let e=Object.values(this._frameThumbs).find(i=>{if(this._shouldThumbBeDisabled(i.direction))return!1;let o=i.interactionNode.getBoundingClientRect(),n={x:o.x,y:o.y,width:o.width,height:o.height};return Ds(n,[t.x,t.y])});this._hoverThumb=e,this._updateCursor()}_updateCursor(){let t=this._hoverThumb;this.ref["svg-el"].style.cursor=t?Ps(t.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(t){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:e})=>e).forEach(e=>{e.setAttribute("class",N("uc-thumb",{"uc-thumb--hidden":!t,"uc-thumb--visible":t}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",t=>{t&&(this._guidesHidden=t.height<=x||t.width<=x,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",t=>{this._frameGuides&&this._frameGuides.setAttribute("class",N({"uc-guides--hidden":this._guidesHidden,"uc-guides--visible":!this._guidesHidden&&t,"uc-guides--semi-hidden":!this._guidesHidden&&!t}))}),this.ref["svg-el"].addEventListener("pointermove",this._handleSvgPointerMove,!0),document.addEventListener("pointermove",this._handlePointerMove,!0),document.addEventListener("pointerup",this._handlePointerUp,!0)}destroyCallback(){super.destroyCallback(),document.removeEventListener("pointermove",this._handlePointerMove),document.removeEventListener("pointerup",this._handlePointerUp)}};xi.template='<svg class="uc-svg" ref="svg-el" xmlns="http://www.w3.org/2000/svg"></svg>';var we=class extends b{constructor(){super(...arguments);u(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null,"title-prop":""})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.sub("title",e=>{this._titleEl&&(this._titleEl.style.display=e?"block":"none")}),this.sub("active",e=>{this.className=N({"uc-active":e,"uc-not_active":!e})}),this.sub("on.click",e=>{this.onclick=e})}};we.template=`<button role="option" type="button" set="@aria-label:title-prop;" l10n="@title:title-prop;"><uc-icon set="@name: icon;"></uc-icon><div class="uc-title" ref="title-el">{{title}}</div></button>`;function $l(r){let t=r+90;return t=t>=360?0:t,t}function kl(r,t){return r==="rotate"?$l(t):["mirror","flip"].includes(r)?!t:null}var Ct=class extends we{initCallback(){super.initCallback(),this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.bindL10n("title-prop",()=>this.l10n("a11y-cloud-editor-apply-crop",{name:this.l10n(t).toLowerCase()})))}),this.$["on.click"]=()=>{let t=this.$["*cropperEl"].getValue(this._operation),e=kl(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};var xt={FILTER:"filter",COLOR_OPERATION:"color_operation"},de="original",Ai=class extends b{constructor(){super(...arguments);u(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":e=>{this.$["*faderEl"].set(e),this.$.value=e}})}setOperation(e,i){this._controlType=e==="filter"?xt.FILTER:xt.COLOR_OPERATION,this._operation=e,this._iconName=e,this._title=e.toUpperCase(),this._filter=i,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===de?void 0:this.$.value,filter:this._filter===de?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:e,zero:i}=oe[this._operation],[s,o]=e;this.$.min=s,this.$.max=o,this.$.zero=i;let n=this.$["*editorTransformations"][this._operation];if(this._controlType===xt.FILTER){let a=o;if(n){let{name:l,amount:c}=n;a=l===this._filter?c:o}this.$.value=a,this.$.defaultValue=a}if(this._controlType===xt.COLOR_OPERATION){let a=typeof n!="undefined"?n:i;this.$.value=a,this.$.defaultValue=a}}apply(){let e;this._controlType===xt.FILTER?this._filter===de?e=null:e={name:this._filter,amount:this.$.value}:e=this.$.value;let i={...this.$["*editorTransformations"],[this._operation]:e};this.$["*editorTransformations"]=i}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",e=>{this._originalUrl=e}),this.sub("value",e=>{let i=`${this._filter||this._operation} ${e}`;this.$["*operationTooltip"]=i})}};Ai.template=`<uc-slider-ui ref="slider-el" set="disabled: disabled; min: min; max: max; defaultValue: defaultValue; zero: zero; onInput: on.input;" ></uc-slider-ui>`;function At(r){let t=new Image;return{promise:new Promise((s,o)=>{t.src=r,t.onload=s,t.onerror=o}),image:t,cancel:()=>{t.naturalWidth===0&&(t.src=ce)}}}function Et(r){let t=[];for(let o of r){let n=At(o);t.push(n)}let e=t.map(o=>o.image);return{promise:Promise.allSettled(t.map(o=>o.promise)),images:e,cancel:()=>{t.forEach(o=>{o.cancel()})}}}var Qe=class extends we{constructor(){super(),this.init$={...this.init$,active:!1,title:"",icon:"",isOriginal:!1,iconSize:"20","on.click":null}}_previewSrc(){let t=parseInt(window.getComputedStyle(this).getPropertyValue("--l-base-min-width"),10),e=window.devicePixelRatio,i=Math.ceil(e*t),s=e>=2?"lightest":"normal",o=100,n={...this.$["*editorTransformations"]};return n[this._operation]=this._filter!==de?{name:this._filter,amount:o}:void 0,M(this._originalUrl,V(Ft,Ee(n),`quality/${s}`,`scale_crop/${i}x${i}/center`))}async _observerCallback(t,e){var s;if(t[0].isIntersecting){let o=await this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"],{promise:a,cancel:l}=At(o);this._cancelPreload=l,a.catch(c=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:c})}).finally(()=>{n.style.backgroundImage=`url(${o})`,n.setAttribute("loaded",""),e.unobserve(this)})}else(s=this._cancelPreload)==null||s.call(this)}initCallback(){super.initCallback(),this.$["on.click"]=()=>{this.$.active?this.$.isOriginal||(this.$["*sliderEl"].setOperation(this._operation,this._filter),this.$["*showSlider"]=!0):(this.$["*sliderEl"].setOperation(this._operation,this._filter),this.$["*sliderEl"].apply()),this.$["*currentFilter"]=this._filter},this.defineAccessor("filter",e=>{this._operation="filter",this._filter=e,this.$.isOriginal=e===de,this.$.icon=this.$.isOriginal?"original":"slider",this.bindL10n("title-prop",()=>this.l10n("a11y-cloud-editor-apply-filter",{name:e.toLowerCase()}))}),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{threshold:[0,1]});let t=this.$["*originalUrl"];this._originalUrl=t,this.$.isOriginal?this.ref["icon-el"].classList.add("uc-original-icon"):this._observer.observe(this),this.sub("*currentFilter",e=>{this.$.active=e&&e===this._filter}),this.sub("isOriginal",e=>{this.$.iconSize=e?40:20}),this.sub("active",e=>{if(this.$.isOriginal)return;let i=this.ref["icon-el"];i.style.opacity=e?"1":"0";let s=this.ref["preview-el"];e?s.style.opacity="0":s.style.backgroundImage&&(s.style.opacity="1")}),this.sub("*networkProblems",async e=>{if(!e){let i=await this.proxyUrl(this._previewSrc()),s=this.ref["preview-el"];s.style.backgroundImage&&(s.style.backgroundImage="none",s.style.backgroundImage=`url(${i})`)}})}destroyCallback(){var t,e;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),(e=this._cancelPreload)==null||e.call(this)}};Qe.template=`<button type="button" role="option" l10n="@title:title-prop;@aria-label:title-prop"><div class="uc-preview" ref="preview-el"></div><uc-icon ref="icon-el" set="@name: icon; @size: iconSize;"></uc-icon></button>`;var Tt=class extends we{constructor(){super(...arguments);u(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=e=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",e=>{e&&(this._operation=e,this.$.icon=e,this.bindL10n("title-prop",()=>this.l10n("a11y-cloud-editor-apply-tuning",{name:this.l10n(e).toLowerCase()})),this.bindL10n("title",()=>this.l10n(e)))}),this.sub("*editorTransformations",e=>{if(!this._operation)return;let{zero:i}=oe[this._operation],s=e[this._operation],o=typeof s!="undefined"?s!==i:!1;this.$.active=o})}};function Mo(r,t){let e={};for(let i of t){let s=r[i];(r.hasOwnProperty(i)||s!==void 0)&&(e[i]=s)}return e}function et(r,t,e){let s=window.devicePixelRatio,o=Math.min(Math.ceil(t*s),3e3),n=s>=2?"lightest":"normal";return M(r,V(Ft,Ee(e),`quality/${n}`,`stretch/off/-/resize/${o}x`,`@clib/${Ge}/${We}/uc-cloud-image-editor/`))}function Ol(r){return r?[({dimensions:e,coords:i})=>[...e,...i].every(s=>Number.isInteger(s)&&Number.isFinite(s)),({dimensions:e,coords:i})=>e.every(s=>s>0)&&i.every(s=>s>=0)].every(e=>e(r)):!0}var Ei=class extends b{constructor(){super();u(this,"ctxOwner",!0);this.init$={...this.init$,image:null,"*padding":20,"*operations":{rotate:0,mirror:!1,flip:!1},"*imageBox":{x:0,y:0,width:0,height:0},"*cropBox":{x:0,y:0,width:0,height:0}},this._commitDebounced=L(this._commit.bind(this),300),this._handleResizeThrottled=Ye(this._handleResize.bind(this),100),this._imageSize={width:0,height:0}}_handleResize(){!this.isConnected||!this._isActive||(this._initCanvas(),this._syncTransformations(),this._alignImage(),this._alignCrop(),this._draw())}_syncTransformations(){let e=this.$["*editorTransformations"],i=Mo(e,Object.keys(this.$["*operations"])),s={...this.$["*operations"],...i};this.$["*operations"]=s}_initCanvas(){let e=this.ref["canvas-el"],i=e.getContext("2d"),s=this.offsetWidth,o=this.offsetHeight,n=window.devicePixelRatio;e.style.width=`${s}px`,e.style.height=`${o}px`,e.width=s*n,e.height=o*n,i==null||i.scale(n,n),this._canvas=e,this._ctx=i}_alignImage(){if(!this._isActive||!this.$.image)return;let e=this.$.image,i=this.$["*padding"],s=this.$["*operations"],{rotate:o}=s,n={width:this.offsetWidth,height:this.offsetHeight},a=He({width:e.naturalWidth,height:e.naturalHeight},o),l;if(a.width>n.width-i*2||a.height>n.height-i*2){let c=a.width/a.height,h=n.width/n.height;if(c>h){let d=n.width-i*2,p=d/c,m=0+i,f=i+(n.height-i*2)/2-p/2;l={x:m,y:f,width:d,height:p}}else{let d=n.height-i*2,p=d*c,m=i+(n.width-i*2)/2-p/2,f=0+i;l={x:m,y:f,width:p,height:d}}}else{let{width:c,height:h}=a,d=i+(n.width-i*2)/2-c/2,p=i+(n.height-i*2)/2-h/2;l={x:d,y:p,width:c,height:h}}this.$["*imageBox"]=je(l)}_alignCrop(){var p;let e=this.$["*cropBox"],i=this.$["*imageBox"],s=this.$["*operations"],{rotate:o}=s,n=this.$["*editorTransformations"].crop,{width:a,x:l,y:c}=this.$["*imageBox"];if(n){let{dimensions:[m,f],coords:[g,y]}=n,{width:w}=He(this._imageSize,o),v=a/w;e=ze(je({x:l+g*v,y:c+y*v,width:m*v,height:f*v}),this.$["*imageBox"])}let h=(p=this.$["*cropPresetList"])==null?void 0:p[0],d=h?h.width/h.height:void 0;if(!Fs(e,i)||d&&!Ns(e,d)){let m=i.width/i.height,f=i.width,g=i.height;d&&(m>d?f=Math.min(i.height*d,i.width):g=Math.min(i.width/d,i.height)),e={x:i.x+i.width/2-f/2,y:i.y+i.height/2-g/2,width:f,height:g}}this.$["*cropBox"]=ze(je(e),this.$["*imageBox"])}_drawImage(){let e=this._ctx;if(!e)return;let i=this.$.image,s=this.$["*imageBox"],o=this.$["*operations"],{mirror:n,flip:a,rotate:l}=o,c=He({width:s.width,height:s.height},l);e.save(),e.translate(s.x+s.width/2,s.y+s.height/2),e.rotate(l*Math.PI*-1/180),e.scale(n?-1:1,a?-1:1),e.drawImage(i,-c.width/2,-c.height/2,c.width,c.height),e.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let e=this._canvas;this._ctx.clearRect(0,0,e.width,e.height),this._drawImage()}_animateIn({fromViewer:e}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=N({"uc-active_from_viewer":e,"uc-active_from_editor":!e,"uc-inactive_to_editor":!1})}))}_getCropDimensions(){let e=this.$["*cropBox"],i=this.$["*imageBox"],s=this.$["*operations"],{rotate:o}=s,{width:n,height:a}=i,{width:l,height:c}=He(this._imageSize,o),{width:h,height:d}=e,p=n/l,m=a/c;return[$e(Math.round(h/p),1,l),$e(Math.round(d/m),1,c)]}_getCropTransformation(){let e=this.$["*cropBox"],i=this.$["*imageBox"],s=this.$["*operations"],{rotate:o}=s,{width:n,height:a,x:l,y:c}=i,{width:h,height:d}=He(this._imageSize,o),{x:p,y:m}=e,f=n/h,g=a/d,y=this._getCropDimensions(),w={dimensions:y,coords:[$e(Math.round((p-l)/f),0,h-y[0]),$e(Math.round((m-c)/g),0,d-y[1])]};if(!Ol(w)){console.error("Cropper is trying to create invalid crop object",{payload:w});return}if(!(y[0]===h&&y[1]===d))return w}_commit(){if(!this.isConnected||!this._imageSize)return;let e=this.$["*operations"],{rotate:i,mirror:s,flip:o}=e,n=this._getCropTransformation(),l={...this.$["*editorTransformations"],crop:n,rotate:i,mirror:s,flip:o};this.$["*editorTransformations"]=l}setValue(e,i){this.$["*operations"]={...this.$["*operations"],[e]:i},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(e){return this.$["*operations"][e]}async activate(e,{fromViewer:i}={}){if(!this._isActive){this._isActive=!0,this._imageSize=e,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:i})}catch(s){console.error("Failed to activate cropper",{error:s})}this._observer=new ResizeObserver(([s])=>{s.contentRect.width>0&&s.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:e=!1}={}){var i;this._isActive&&(!e&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=N({"uc-active_from_viewer":!1,"uc-active_from_editor":!1,"uc-inactive_to_editor":!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(i=this._observer)==null||i.disconnect())}_transitionToCrop(){let e=this._getCropDimensions(),i=Math.min(this.offsetWidth,e[0])/this.$["*cropBox"].width,s=Math.min(this.offsetHeight,e[1])/this.$["*cropBox"].height,o=Math.min(i,s),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,a=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${o}) translate(${(this.offsetWidth/2-n)/o}px, ${(this.offsetHeight/2-a)/o}px)`,this.style.transformOrigin=`${n}px ${a}px`}_transitionToImage(){let e=this.$["*cropBox"].x+this.$["*cropBox"].width/2,i=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${e}px ${i}px`}_reset(){this._isActive||(this.$.image=null)}async _waitForImage(e,i){var h;let s=this.offsetWidth;i={...i,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let o=await this.proxyUrl(et(e,s,i)),{promise:n,cancel:a,image:l}=At(o),c=this._handleImageLoading(o);return l.addEventListener("load",c,{once:!0}),l.addEventListener("error",c,{once:!0}),(h=this._cancelPreload)==null||h.call(this),this._cancelPreload=a,n.then(()=>l).catch(d=>(console.error("Failed to load image",{error:d}),this.$["*networkProblems"]=!0,Promise.resolve(l)))}_handleImageLoading(e){let i="crop",s=this.$["*loadingOperations"];return s.get(i)||s.set(i,new Map),s.get(i).get(e)||(s.set(i,s.get(i).set(e,!0)),this.$["*loadingOperations"]=s),()=>{var o;(o=s==null?void 0:s.get(i))!=null&&o.has(e)&&(s.get(i).delete(e),this.$["*loadingOperations"]=s)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",e=>{e||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var e;super.destroyCallback(),(e=this._observer)==null||e.disconnect()}};Ei.template=`<canvas class="uc-canvas" ref="canvas-el"></canvas><uc-crop-frame ref="frame-el"></uc-crop-frame>`;function kr(r,t,e){let i=Array(e);e--;for(let s=e;s>=0;s--)i[s]=Math.ceil((s*t+(e-s)*r)/e);return i}function Ll(r){return r.reduce((t,e,i)=>i<r.length-1?[...t,[e,r[i+1]]]:t,[])}function Ul(r,t,e){let i=Ll(r).find(([s,o])=>s<=t&&t<=o);return r.map(s=>{let o=Math.abs(i[0]-i[1]),n=Math.abs(t-i[0])/o;return i[0]===s?t>e?1:1-n:i[1]===s?t>=e?n:1:0})}function Pl(r,t){return r.map((e,i)=>e<t?r.length-i:i)}function Ro(r,t){let e=oe[r].keypointsNumber,{range:i,zero:s}=oe[r];return[...new Set([...kr(i[0],s,e+1),...kr(s,i[1],e+1),s,t])].sort((o,n)=>o-n)}var Or=class extends b{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=L(this._addKeypoint.bind(this),600),this.classList.add("uc-inactive_to_cropper")}_handleImageLoading(t){let e=this._operation,i=this.$["*loadingOperations"];return i.get(e)||i.set(e,new Map),i.get(e).get(t)||(i.set(e,i.get(e).set(t,!0)),this.$["*loadingOperations"]=i),()=>{var s;(s=i==null?void 0:i.get(e))!=null&&s.has(t)&&(i.get(e).delete(t),this.$["*loadingOperations"]=i)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let t of this._keypoints){let{image:e}=t;e&&(e.style.opacity=t.opacity.toString(),e.style.zIndex=t.zIndex.toString())}})}async _imageSrc({url:t=this._url,filter:e=this._filter,operation:i,value:s}={}){let o={...this._transformations};i&&(o[i]=e?{name:e,amount:s}:s);let n=this.offsetWidth;return await this.proxyUrl(et(t,n,o))}async _constructKeypoint(t,e){return{src:await this._imageSrc({operation:t,value:e}),image:null,opacity:0,zIndex:0,value:e}}_isSame(t,e){return this._operation===t&&this._filter===e}async _addKeypoint(t,e,i){let s=()=>!this._isSame(t,e)||this._value!==i||!!this._keypoints.find(l=>l.value===i);if(s())return;let o=await this._constructKeypoint(t,i),n=new Image;n.src=o.src;let a=this._handleImageLoading(o.src);n.addEventListener("load",a,{once:!0}),n.addEventListener("error",a,{once:!0}),o.image=n,n.classList.add("uc-fader-image"),n.addEventListener("load",()=>{if(s())return;let l=this._keypoints,c=l.findIndex(d=>d.value>i),h=c<l.length?l[c].image:null;!this._container||h&&!this._container.contains(h)||(l.splice(c,0,o),this._container.insertBefore(n,h),this._update(t,i))},{once:!0}),n.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}set(t){t=typeof t=="string"?parseInt(t,10):t,this._update(this._operation,t),this._addKeypointDebounced(this._operation,this._filter,t)}_update(t,e){this._operation=t,this._value=e;let{zero:i}=oe[t],s=this._keypoints.map(a=>a.value),o=Ul(s,e,i),n=Pl(s,i);for(let[a,l]of Object.entries(this._keypoints))l.opacity=o[a],l.zIndex=n[a];this._flush()}_createPreviewImage(){let t=new Image;return t.classList.add("uc-fader-image","uc-fader-image--preview"),t.style.opacity="0",t}async _initNodes(){let t=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&t.appendChild(this._previewImage);let e=document.createElement("div");t.appendChild(e);let i=this._keypoints.map(c=>c.src),{images:s,promise:o,cancel:n}=Et(i);s.forEach(c=>{let h=this._handleImageLoading(c.src);c.addEventListener("load",h),c.addEventListener("error",h)}),this._cancelLastImages=()=>{n(),this._cancelLastImages=void 0};let a=this._operation,l=this._filter;await o,this._isActive&&this._isSame(a,l)&&(this._container&&this._container.remove(),this._container=e,this._keypoints.forEach((c,h)=>{let d=s[h];d.classList.add("uc-fader-image"),c.image=d,this._container.appendChild(d)}),this.appendChild(t),this._flush())}async setTransformations(t){if(this._transformations=t,this._previewImage){let e=await this._imageSrc(),i=this._handleImageLoading(e);this._previewImage.src=e,this._previewImage.addEventListener("load",i,{once:!0}),this._previewImage.addEventListener("error",i,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}async preload({url:t,filter:e,operation:i,value:s}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=Ro(i,s),n=await Promise.all(o.map(l=>this._imageSrc({url:t,filter:e,operation:i,value:l}))),{cancel:a}=Et(n);this._cancelBatchPreload=a}_setOriginalSrc(t){let e=this._previewImage||this._createPreviewImage();if(!this.contains(e)&&this.appendChild(e),this._previewImage=e,e.src===t){e.style.opacity="1",e.style.transform="scale(1)",this.className=N({"uc-active_from_viewer":this._fromViewer,"uc-active_from_cropper":!this._fromViewer,"uc-inactive_to_cropper":!1});return}e.style.opacity="0";let i=this._handleImageLoading(t);e.addEventListener("error",i,{once:!0}),e.src=t,e.addEventListener("load",()=>{i(),e&&(e.style.opacity="1",e.style.transform="scale(1)",this.className=N({"uc-active_from_viewer":this._fromViewer,"uc-active_from_cropper":!this._fromViewer,"uc-inactive_to_cropper":!1}))},{once:!0}),e.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}async activate({url:t,operation:e,value:i,filter:s,fromViewer:o}){if(this._isActive=!0,this._hidden=!1,this._url=t,this._operation=e||"initial",this._value=i,this._filter=s,this._fromViewer=o,typeof i!="number"&&!s){let a=await this._imageSrc({operation:e,value:i});this._setOriginalSrc(a),this._container&&this._container.remove();return}this._keypoints=await Promise.all(Ro(e,i).map(a=>this._constructKeypoint(e,a))),this._update(e,i),this._initNodes()}deactivate({hide:t=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),t&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=N({"uc-active_from_viewer":!1,"uc-active_from_cropper":!1,"uc-inactive_to_cropper":!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};var Ml=1,Ti=class extends b{initCallback(){super.initCallback(),this.addEventListener("wheel",t=>{t.preventDefault();let{deltaY:e,deltaX:i}=t;Math.abs(i)>Ml?this.scrollLeft+=i:this.scrollLeft+=e},{passive:!1}),this.addEventListener("scroll",()=>{},{passive:!0})}};Ti.template=" <slot></slot> ";function Rl(r){return`<uc-presence-toggle class="uc-tab-toggle" set="visible: presence.tabToggle.${r}; styles: presence.tabToggleStyles;" ><uc-btn-ui theme="tab" ref="tab-toggle-${r}" data-id="${r}" icon="${r}" set="onclick: on.clickTab; aria-role:tab_role; aria-controls:tab_${r}; title-prop: a11y-editor-tab-${r}" ></uc-btn-ui></uc-presence-toggle>`}function Dl(r){return`<uc-presence-toggle id="tab_${r}" class="uc-tab-content" set="visible: presence.tabContent.${r}; styles: presence.tabContentStyles" ><uc-editor-scroller hidden-scrollbar><div class="uc-controls-list_align"><div role="listbox" aria-orientation="horizontal" class="uc-controls-list_inner" ref="controls-list-${r}" ></div></div></uc-editor-scroller></uc-presence-toggle>`}var Si=class extends b{constructor(){super();u(this,"_updateInfoTooltip",L(()=>{var n,a;let e=this.$["*editorTransformations"],i=this.$["*currentOperation"],s="",o=!1;if(this.$["*tabId"]===O.FILTERS)if(o=!0,this.$["*currentFilter"]&&((n=e==null?void 0:e.filter)==null?void 0:n.name)===this.$["*currentFilter"]){let l=((a=e==null?void 0:e.filter)==null?void 0:a.amount)||100;s=this.$["*currentFilter"]+" "+l}else s=this.l10n(de);else if(this.$["*tabId"]===O.TUNING&&i){o=!0;let l=(e==null?void 0:e[i])||oe[i].zero;s=this.l10n(i)+" "+l}o&&(this.$["*operationTooltip"]=s),this.ref["tooltip-el"].classList.toggle("uc-info-tooltip_visible",o)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":de,"*currentOperation":null,showLoader:!1,filters:Qr,colorOperations:Jr,cropOperations:es,"*operationTooltip":null,"presence.mainToolbar":!0,"presence.subToolbar":!1,"presence.tabToggles":!0,"presence.tabContent.crop":!1,"presence.tabContent.tuning":!1,"presence.tabContent.filters":!1,"presence.tabToggle.crop":!0,"presence.tabToggle.tuning":!0,"presence.tabToggle.filters":!0,"presence.subTopToolbarStyles":{hidden:"uc-sub-toolbar--top-hidden",visible:"uc-sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"uc-sub-toolbar--bottom-hidden",visible:"uc-sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"uc-tab-content--hidden",visible:"uc-tab-content--visible"},"presence.tabToggleStyles":{hidden:"uc-tab-toggle--hidden",visible:"uc-tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"uc-tab-toggles--hidden",visible:"uc-tab-toggles--visible"},"on.cancel":()=>{var e;(e=this._cancelPreload)==null||e.call(this),this.$["*on.cancel"]()},"on.apply":()=>{this.$["*on.apply"](this.$["*editorTransformations"])},"on.applySlider":()=>{this.ref["slider-el"].apply(),this._onSliderClose()},"on.cancelSlider":()=>{this.ref["slider-el"].cancel(),this._onSliderClose()},"on.clickTab":e=>{let i=e.currentTarget.getAttribute("data-id");i&&this._activateTab(i,{fromViewer:!1})},tab_role:"tab",[`tab_${O.TUNING}`]:`tab_${O.TUNING}`,[`tab_${O.CROP}`]:`tab_${O.CROP}`,[`tab_${O.FILTERS}`]:`tab_${O.FILTERS}`,cancel:"cancel",apply:"apply","a11y-editor-tab-filters":"a11y-editor-tab-filters","a11y-editor-tab-tuning":"a11y-editor-tab-tuning","a11y-editor-tab-crop":"a11y-editor-tab-crop"},this._debouncedShowLoader=L(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===O.TUNING&&this.ref["tooltip-el"].classList.toggle("uc-info-tooltip_visible",!1)}_createOperationControl(e){let i=new Tt;return i.operation=e,i}_createFilterControl(e){let i=new Qe;return i.filter=e,i}_createToggleControl(e){let i=new Ct;return i.operation=e,i}_renderControlsList(e){let i=this.ref[`controls-list-${e}`],s=document.createDocumentFragment();e===O.CROP?this.$.cropOperations.forEach(o=>{let n=this._createToggleControl(o);s.appendChild(n)}):e===O.FILTERS?[de,...this.$.filters].forEach(o=>{let n=this._createFilterControl(o);s.appendChild(n)}):e===O.TUNING&&this.$.colorOperations.forEach(o=>{let n=this._createOperationControl(o);s.appendChild(n)}),[...s.children].forEach((o,n)=>{n===s.childNodes.length-1&&o.classList.add("uc-controls-list_last-item")}),i.innerHTML="",i.appendChild(s)}_activateTab(e,{fromViewer:i}){this.$["*tabId"]=e,e===O.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:i})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:i}),this.$["*cropperEl"].deactivate());for(let s of W){let o=s===e,n=this.ref[`tab-toggle-${s}`];n.active=o,o?(this._renderControlsList(e),this._syncTabIndicator()):this._unmountTabControls(s),this.$[`presence.tabContent.${s}`]=o}}_unmountTabControls(e){let i=this.ref[`controls-list-${e}`];i&&(i.innerHTML="")}_syncTabIndicator(){let e=this.ref[`tab-toggle-${this.$["*tabId"]}`],i=this.ref["tabs-indicator"];i.style.transform=`translateX(${e.offsetLeft}px)`}async _preloadEditedImage(){var e;if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let i=this.$["*imgContainerEl"].offsetWidth,s=await this.proxyUrl(et(this.$["*originalUrl"],i,this.$["*editorTransformations"]));(e=this._cancelPreload)==null||e.call(this);let{cancel:o}=Et([s]);this._cancelPreload=()=>{o(),this._cancelPreload=void 0}}}_showLoader(e){this.$.showLoader=e}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",e=>{e&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",e=>{var s;let i=(s=e==null?void 0:e.filter)==null?void 0:s.name;this.$["*currentFilter"]!==i&&(this.$["*currentFilter"]=i)}),this.sub("*currentFilter",()=>{this._updateInfoTooltip()}),this.sub("*currentOperation",()=>{this._updateInfoTooltip()}),this.sub("*tabId",()=>{this._updateInfoTooltip()}),this.sub("*originalUrl",()=>{this.$["*faderEl"]&&this.$["*faderEl"].deactivate()}),this.sub("*editorTransformations",e=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(e)}),this.sub("*loadingOperations",e=>{let i=!1;for(let[,s]of e.entries()){if(i)break;for(let[,o]of s.entries())if(o){i=!0;break}}this._debouncedShowLoader(i)}),this.sub("*showSlider",e=>{this.$["presence.subToolbar"]=e,this.$["presence.mainToolbar"]=!e}),this.sub("*tabList",e=>{this.$["presence.tabToggles"]=e.length>1;for(let i of W){this.$[`presence.tabToggle.${i}`]=e.includes(i);let s=this.ref[`tab-toggle-${i}`];s.style.gridColumn=e.indexOf(i)+1}e.includes(this.$["*tabId"])||this._activateTab(e[0],{fromViewer:!1})}),this._updateInfoTooltip()}destroyCallback(){this.$["*showSlider"]=!1}};Si.template=`<uc-line-loader-ui set="active: showLoader"></uc-line-loader-ui><div class="uc-info-tooltip_container"><div class="uc-info-tooltip_wrapper"><div ref="tooltip-el" class="uc-info-tooltip uc-info-tooltip_hidden">{{*operationTooltip}}</div></div></div><div class="uc-toolbar-container"><uc-presence-toggle role="tablist" class="uc-sub-toolbar" set="visible: presence.mainToolbar; styles: presence.subTopToolbarStyles" ><div class="uc-tab-content-row">${W.map(Dl).join("")}</div><div class="uc-controls-row"><uc-presence-toggle class="uc-tab-toggles" set="visible: presence.tabToggles; styles: presence.tabTogglesStyles" ><div ref="tabs-indicator" class="uc-tab-toggles_indicator"></div> ${W.map(Rl).join("")} </uc-presence-toggle><uc-btn-ui style="order: -1" theme="secondary-icon" icon="closeMax" set="onclick: on.cancel; title-prop:cancel"></uc-btn-ui><uc-btn-ui theme="primary-icon" icon="done" set="onclick: on.apply; title-prop:apply"></uc-btn-ui></div></uc-presence-toggle><uc-presence-toggle class="uc-sub-toolbar" set="visible: presence.subToolbar; styles: presence.subBottomToolbarStyles" ><div class="uc-slider"><uc-editor-slider ref="slider-el"></uc-editor-slider></div><div class="uc-controls-row"><uc-btn-ui theme="secondary" set="onclick: on.cancelSlider" l10n="@text:cancel"></uc-btn-ui><uc-btn-ui theme="primary" set="onclick: on.applySlider" l10n="@text:apply"></uc-btn-ui></div></uc-presence-toggle></div>`;var St=class extends b{constructor(){super(),this._iconReversed=!1,this._iconSingle=!1,this._iconHidden=!1,this.init$={...this.init$,text:"",icon:"",iconCss:this._iconCss(),theme:null,"aria-role":"","aria-controls":"","title-prop":""},this.defineAccessor("active",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return N("uc-icon",{"uc-icon_left":!this._iconReversed,"uc-icon_right":this._iconReversed,"uc-icon_hidden":this._iconHidden,"uc-icon_single":this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",t=>{this._iconSingle=!this.$.text,this._iconHidden=!t,this.$.iconCss=this._iconCss()}),this.sub("theme",t=>{t!=="custom"&&(this.className=`uc-${t}`)}),this.sub("text",t=>{this._iconSingle=!1}),this.hasAttribute("theme")||this.setAttribute("theme","default"),this.defineAccessor("aria-role",t=>{this.$["aria-role"]=t||""}),this.defineAccessor("aria-controls",t=>{this.$["aria-controls"]=t||""}),this.defineAccessor("title-prop",t=>{this.$["title-prop"]=t||""})}set reverse(t){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};St.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});St.template=`<button type="button" set="@role:aria-role; @aria-controls: aria-controls; @aria-label:title-prop" l10n="@title:title-prop;" ><uc-icon set="className: iconCss; @name: icon; @hidden: !icon"></uc-icon><div class="uc-text">{{text}}</div></button>`;var Ii=class extends b{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let t=this.ref["line-el"];t.style.transition="initial",t.style.opacity="0",t.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",t=>{typeof t=="boolean"&&(t?this._start():this._stop())})}_start(){this._active=!0;let{width:t}=this.getBoundingClientRect(),e=this.ref["line-el"];e.style.transition="transform 1s",e.style.opacity="1",e.style.transform=`translateX(${t}px)`,e.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};Ii.template=`<div class="uc-inner"><div class="uc-line" ref="line-el"></div></div>`;var $i={transition:"uc-transition",visible:"uc-visible",hidden:"uc-hidden"},ki=class extends b{constructor(){super(),this._visible=!1,this._visibleStyle=$i.visible,this._hiddenStyle=$i.hidden,this._externalTransitions=!1,this.defineAccessor("styles",t=>{t&&(this._externalTransitions=!0,this._visibleStyle=t.visible,this._hiddenStyle=t.hidden)}),this.defineAccessor("visible",t=>{typeof t=="boolean"&&(this._visible=t,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",ko(this,{[$i.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.classList.toggle("uc-initial",!0),this._externalTransitions||this.classList.add($i.transition),this._handleVisible(),setTimeout(()=>{this.classList.toggle("uc-initial",!1)},0)}};ki.template="<slot></slot> ";var Oi=class extends b{constructor(){super();u(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e),this.$.onInput&&this.$.onInput(e)},"on.sliderChange":()=>{let e=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(e)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",i=>{this.$.disabled=i}),this.defineAccessor("min",i=>{this.$.min=i}),this.defineAccessor("max",i=>{this.$.max=i}),this.defineAccessor("defaultValue",i=>{this.$.defaultValue=i,this.ref["input-el"].value=i,this._updateValue(i)}),this.defineAccessor("zero",i=>{this._zero=i}),this.defineAccessor("onInput",i=>{i&&(this.$.onInput=i)}),this.defineAccessor("onChange",i=>{i&&(this.$.onChange=i)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let i=parseInt(this.ref["input-el"].value,10);this._updateValue(i)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let i=parseInt(this.ref["input-el"].value,10);this._updateValue(i)},0),this.sub("disabled",i=>{let s=this.ref["input-el"];i?s.setAttribute("disabled","disabled"):s.removeAttribute("disabled")});let e=this.ref["input-el"];e.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),e.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(e){this._updateZeroDot(e);let{width:i}=this.getBoundingClientRect(),n=100/(this.$.max-this.$.min)*(e-this.$.min)*(i-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${n}px)`})}_updateZeroDot(e){if(!this._zeroDotEl)return;e===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="1";let{width:i}=this.getBoundingClientRect(),n=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(i-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${n}px)`})}_updateSteps(){let i=this.ref["steps-el"],{width:s}=i.getBoundingClientRect(),o=Math.ceil(s/2),n=Math.ceil(o/15)-2;if(this._stepsCount===n)return;let a=document.createDocumentFragment(),l=document.createElement("div"),c=document.createElement("div");l.className="uc-minor-step",c.className="uc-border-step",a.appendChild(c);for(let d=0;d<n;d++)a.appendChild(l.cloneNode());a.appendChild(c.cloneNode());for(let d=0;d<n;d++)a.appendChild(l.cloneNode());a.appendChild(c.cloneNode());let h=document.createElement("div");h.className="uc-zero-dot",a.appendChild(h),this._zeroDotEl=h,i.innerHTML="",i.appendChild(a),this._stepsCount=n}destroyCallback(){var e;super.destroyCallback(),(e=this._observer)==null||e.disconnect()}};Oi.template=`<div class="uc-steps" ref="steps-el"></div><div ref="thumb-el" class="uc-thumb"></div><input class="uc-input" type="range" ref="input-el" set="oninput: on.sliderInput; onchange: on.sliderChange; @min: min; @max: max; @value: defaultValue;" />`;var Lr=class extends S{constructor(){super(...arguments);u(this,"couldBeCtxOwner",!0);u(this,"activityType",_.activities.CLOUD_IMG_EDIT);u(this,"_entry");u(this,"_instance")}get activityParams(){let e=super.activityParams;if("internalId"in e)return e;throw new Error("Cloud Image Editor activity params not found")}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.subConfigValue("cropPreset",e=>{this._instance&&this._instance.getAttribute("crop-preset")!==e&&this._instance.setAttribute("crop-preset",e)}),this.subConfigValue("cloudImageEditorTabs",e=>{this._instance&&this._instance.getAttribute("tabs")!==e&&this._instance.setAttribute("tabs",e)})}handleApply(e){if(!this._entry)return;let i=e.detail;this._entry.setMultipleValues({cdnUrl:i.cdnUrl,cdnUrlModifiers:i.cdnUrlModifiers}),this.historyBack()}handleCancel(){this.historyBack()}mountEditor(){let{internalId:e}=this.activityParams;if(this._entry=this.uploadCollection.read(e),!this._entry)throw new Error(`Entry with internalId "${e}" not found`);let i=this._entry.getValue("cdnUrl");if(!i)throw new Error(`Entry with internalId "${e}" hasn't uploaded yet`);let s=new ue,o=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;s.setAttribute("ctx-name",this.ctxName),s.setAttribute("cdn-url",i),o&&s.setAttribute("crop-preset",o),n&&s.setAttribute("tabs",n),s.addEventListener("apply",a=>{let l=a;this.handleApply(l),this.debugPrint('editor event "apply"',l.detail)}),s.addEventListener("cancel",a=>{let l=a;this.handleCancel(),this.debugPrint('editor event "cancel"',l.detail)}),s.addEventListener("change",a=>{let l=a;this.debugPrint('editor event "change"',l.detail)}),this.innerHTML="",this.appendChild(s),this._instance=s}unmountEditor(){this._instance=void 0,this._entry=void 0,this.innerHTML=""}};var Fl=function(r){return r.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},Do=function(r,t="i"){let e=r.split("*").map(Fl);return new RegExp("^"+e.join(".+")+"$",t)};function Nl(r,t){return window.getComputedStyle(r).getPropertyValue(t).trim()}var Vl=["--uc-font-family","--uc-font-size","--uc-line-height","--uc-button-size","--uc-preview-size","--uc-input-size","--uc-padding","--uc-radius","--uc-transition","--uc-background","--uc-foreground","--uc-primary","--uc-primary-hover","--uc-primary-transparent","--uc-primary-foreground","--uc-secondary","--uc-secondary-hover","--uc-secondary-foreground","--uc-muted","--uc-muted-foreground","--uc-destructive","--uc-destructive-foreground","--uc-border"];function Fo(r){return Vl.reduce((t,e)=>{let i=Nl(r,e);return i&&(t[e]=i),t},{})}var Bl=["selected-files-change"],zl=r=>!r||typeof r!="object"?!1:"type"in r&&Bl.includes(r.type),Li=class{constructor(t){u(this,"_handlerMap",new Map);u(this,"_context");u(this,"_handleMessage",t=>{if(t.source!==this._context)return;let e=t.data;if(!zl(e))return;let i=this._handlerMap.get(e.type);if(i)for(let s of i)s(e)});this._context=t,window.addEventListener("message",this._handleMessage)}on(t,e){var s;let i=(s=this._handlerMap.get(t))!=null?s:new Set;this._handlerMap.has(t)||this._handlerMap.set(t,i),i.add(e)}send(t){this._context.postMessage(t,"*")}destroy(){window.removeEventListener("message",this._handleMessage)}};function No(r){let t=[];for(let[e,i]of Object.entries(r))i==null||typeof i=="string"&&i.length===0||t.push(`${e}=${encodeURIComponent(i)}`);return t.join("&")}var Ui=class extends S{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"activityType",_.activities.EXTERNAL);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],total:0,isSelectionReady:!1,isDoneBtnEnabled:!1,couldSelectAll:!1,couldDeselectAll:!1,showSelectionStatus:!1,counterText:"",doneBtnTextClass:"uc-hidden",onDone:()=>{for(let e of this.$.selectedList){let i=this.extractUrlFromSelectedFile(e),{filename:s}=e,{externalSourceType:o}=this.activityParams;this.api.addFileFromUrl(i,{fileName:s,source:o})}this.$["*currentActivity"]=_.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onSelectAll:()=>{var e;(e=this._messageBridge)==null||e.send({type:"select-all"})},onDeselectAll:()=>{var e;(e=this._messageBridge)==null||e.send({type:"deselect-all"})}}}get activityParams(){let e=super.activityParams;if("externalSourceType"in e)return e;throw new Error("External Source activity params not found")}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:e}=this.activityParams;if(!e){this.$["*currentActivity"]=null,this.setOrAddState("*modalActive",!1),console.error(`Param "externalSourceType" is required for activity "${this.activityType}"`);return}this.set$({activityCaption:`${e==null?void 0:e[0].toUpperCase()}${e==null?void 0:e.slice(1)}`,activityIcon:e}),this.mountIframe()}}),this.sub("*currentActivityParams",e=>{this.isActivityActive&&(this.unmountIframe(),this.mountIframe())}),this.sub("*currentActivity",e=>{e!==this.activityType&&this.unmountIframe()}),this.subConfigValue("multiple",e=>{this.$.showSelectionStatus=e}),this.subConfigValue("localeName",e=>{this.setupL10n()}),this.subConfigValue("externalSourcesEmbedCss",e=>{this.applyEmbedCss(e)})}extractUrlFromSelectedFile(e){if(e.alternatives){let i=F(this.cfg.externalSourcesPreferredTypes);for(let s of i){let o=Do(s);for(let[n,a]of Object.entries(e.alternatives))if(o.test(n))return a}}return e.url}async handleSelectedFilesChange(e){if(this.cfg.multiple!==e.isMultipleMode){console.error("Multiple mode mismatch");return}this.bindL10n("counterText",()=>this.l10n("selected-count",{count:e.selectedCount,total:e.total})),this.set$({doneBtnTextClass:e.isReady?"":"uc-hidden",isSelectionReady:e.isReady,isDoneBtnEnabled:e.isReady&&e.selectedFiles.length>0,showSelectionStatus:e.isMultipleMode&&e.total>0,couldSelectAll:e.selectedCount<e.total,couldDeselectAll:e.selectedCount===e.total,selectedList:e.selectedFiles})}handleIframeLoad(){this.applyEmbedCss(this.cfg.externalSourcesEmbedCss),this.applyTheme(),this.setupL10n()}applyTheme(){var e;(e=this._messageBridge)==null||e.send({type:"set-theme-definition",theme:Fo(this)})}applyEmbedCss(e){var i;(i=this._messageBridge)==null||i.send({type:"set-embed-css",css:e})}setupL10n(){var e;(e=this._messageBridge)==null||e.send({type:"set-locale-definition",localeDefinition:this.cfg.localeName})}remoteUrl(){var h,d;let{pubkey:e,remoteTabSessionKey:i,socialBaseUrl:s,multiple:o}=this.cfg,{externalSourceType:n}=this.activityParams,l={lang:((d=(h=this.l10n("social-source-lang"))==null?void 0:h.split("-"))==null?void 0:d[0])||"en",public_key:e,images_only:"false",session_key:i,wait_for_theme:!0,multiple:o.toString()},c=new URL(`/window4/${n}`,s);return c.search=No(l),c.toString()}mountIframe(){var i;let e=zi({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});e.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(e),e.contentWindow&&((i=this._messageBridge)==null||i.destroy(),this._messageBridge=new Li(e.contentWindow),this._messageBridge.on("selected-files-change",this.handleSelectedFilesChange.bind(this)),this.resetSelectionStatus())}unmountIframe(){var e;(e=this._messageBridge)==null||e.destroy(),this._messageBridge=void 0,this.ref.iframeWrapper.innerHTML="",this.resetSelectionStatus()}resetSelectionStatus(){this.set$({selectedList:[],total:0,isDoneBtnEnabled:!1,couldSelectAll:!1,couldDeselectAll:!1,showSelectionStatus:!1})}};Ui.template=`<uc-activity-header><button type="button" class="uc-mini-btn uc-close-btn" set="onclick: *historyBack" l10n="@title:a11y-activity-header-button-close;@aria-label:a11y-activity-header-button-close" ><uc-icon name="close"></uc-icon></button></uc-activity-header><div class="uc-content"><div ref="iframeWrapper" class="uc-iframe-wrapper"></div><div class="uc-toolbar"><button type="button" class="uc-cancel-btn uc-secondary-btn" set="onclick: onCancel" l10n="cancel"></button><div set="@hidden: !showSelectionStatus" class="uc-selection-status-box"><span>{{counterText}}</span><button type="button" set="onclick: onSelectAll; @hidden: !couldSelectAll" l10n="select-all"></button><button type="button" set="onclick: onDeselectAll; @hidden: !couldDeselectAll" l10n="deselect-all"></button></div><button type="button" class="uc-done-btn uc-primary-btn" set="onclick: onDone; @disabled: !isDoneBtnEnabled;"><uc-spinner set="@hidden: isSelectionReady"></uc-spinner><span l10n="done" set="@class: doneBtnTextClass"></span></button></div></div>`;var Ur=class extends S{constructor(){super(...arguments);u(this,"requireCtxName",!0)}_createValidationInput(){let e=document.createElement("input");return e.type="text",e.name=this.ctxName,e.required=this.cfg.multipleMin>0,e.tabIndex=-1,it(e,{opacity:0,height:0,width:0}),e}initCallback(){super.initCallback(),this._validationInputElement=this._createValidationInput(),this.appendChild(this._validationInputElement),this.sub("*collectionState",e=>{var i;{if(this._dynamicInputsContainer||(this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer)),!this._validationInputElement){let a=this._createValidationInput();this.appendChild(a),this._validationInputElement=a}if(this._dynamicInputsContainer.innerHTML="",e.status==="uploading"||e.status==="idle"){this._validationInputElement.value="",this._validationInputElement.setCustomValidity("");return}if(e.status==="failed"){let a=(i=e.errors[0])==null?void 0:i.message;this._validationInputElement.value="",this._validationInputElement.setCustomValidity(a);return}let s=e.group?e.group:null;if(s){this._validationInputElement.value=s.cdnUrl,this._validationInputElement.setCustomValidity("");return}let o=e.allEntries.map(a=>a.cdnUrl);if(!this.cfg.multiple&&o.length===1){this._validationInputElement.value=o[0],this._validationInputElement.setCustomValidity("");return}this._validationInputElement.remove(),this._validationInputElement=null;let n=new DocumentFragment;for(let a of o){let l=document.createElement("input");l.type="hidden",l.name=`${this.ctxName}[]`,l.value=a,n.appendChild(l)}this._dynamicInputsContainer.replaceChildren(n)}},!1)}};var Pr=class extends _{};var Pi=class extends b{constructor(){super(...arguments);u(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:e=>{var i;e.preventDefault(),e.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((i=this.$.options.find(s=>s.value==this.value))==null?void 0:i.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",e=>{var s;this.$.currentText=((s=e==null?void 0:e[0])==null?void 0:s.text)||"";let i="";e==null||e.forEach(o=>{i+=`<option value="${o.value}">${o.text}</option>`}),this.$.selectHtml=i})}};Pi.template='<select ref="select" set="innerHTML: selectHtml; onchange: onSelect"></select>';var Mi=class extends b{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",t=>{this.toggleAttribute("hidden",!!t)})}};u(Mi,"template",`<a href="https://uploadcare.com/?utm_source=copyright&utm_medium=referral&utm_campaign=v4" target="_blank noopener" class="uc-credits" >Powered by Uploadcare</a >`);var Ri=class extends xe{};Ri.template='<div class="uc-spinner"></div>';var It=class It extends ne{constructor(){super(),this.init$={...this.init$,isHidden:!1}}initCallback(){super.initCallback(),this.defineAccessor("headless",t=>{this.set$({isHidden:$(t)})}),this.sub("*modalActive",t=>{this._lastModalActive!==t&&this.emit(t?I.MODAL_OPEN:I.MODAL_CLOSE,void 0,{debounce:!0}),this._lastModalActive=t},!1)}};u(It,"styleAttrs",[...G(It,It,"styleAttrs"),"uc-file-uploader-regular"]);var $t=It;$t.template=`<uc-simple-btn set="@hidden: isHidden"></uc-simple-btn><uc-modal strokes block-body-scrolling><uc-start-from><uc-drop-area with-icon clickable></uc-drop-area><uc-source-list role="list" wrap></uc-source-list><button type="button" l10n="start-from-cancel" class="uc-secondary-btn" set="onclick: *historyBack"></button><uc-copyright></uc-copyright></uc-start-from><uc-upload-list></uc-upload-list><uc-camera-source></uc-camera-source><uc-url-source></uc-url-source><uc-external-source></uc-external-source><uc-cloud-image-editor-activity></uc-cloud-image-editor-activity></uc-modal>`;$t.bindAttributes({headless:null});var kt=class kt extends ne{initCallback(){super.initCallback();let t=this.ref.uBlock;this.sub("*currentActivity",e=>{e||(this.$["*currentActivity"]=t.initActivity||_.activities.START_FROM)}),this.sub("*uploadList",e=>{(e==null?void 0:e.length)>0?this.$["*currentActivity"]=_.activities.UPLOAD_LIST:this.$["*currentActivity"]=t.initActivity||_.activities.START_FROM}),this.subConfigValue("sourceList",e=>{e!=="local"&&(this.cfg.sourceList="local")}),this.subConfigValue("confirmUpload",e=>{e!==!1&&(this.cfg.confirmUpload=!1)})}};u(kt,"styleAttrs",[...G(kt,kt,"styleAttrs"),"uc-file-uploader-minimal"]);var Di=kt;Di.template=`<uc-start-from><uc-drop-area tabindex="0" clickable l10n="choose-file"></uc-drop-area><uc-copyright></uc-copyright></uc-start-from><uc-upload-list ref="uBlock"></uc-upload-list>`;var Ot=class Ot extends ne{constructor(){super(),this.init$={...this.init$,couldCancel:!1,cancel:()=>{this.couldHistoryBack?this.$["*historyBack"]():this.couldShowList&&(this.$["*currentActivity"]=_.activities.UPLOAD_LIST)}}}get couldHistoryBack(){let t=this.$["*history"];return t.length>1&&t[t.length-1]!==_.activities.START_FROM}get couldShowList(){return this.cfg.showEmptyList||this.$["*uploadList"].length>0}initCallback(){super.initCallback();let t=this.ref.uBlock;this.sub("*currentActivity",e=>{e||(this.$["*currentActivity"]=t.initActivity||_.activities.START_FROM)}),this.sub("*uploadList",e=>{(e==null?void 0:e.length)>0&&this.$["*currentActivity"]===(t.initActivity||_.activities.START_FROM)&&(this.$["*currentActivity"]=_.activities.UPLOAD_LIST)}),this.sub("*history",()=>{this.$.couldCancel=this.couldHistoryBack||this.couldShowList})}};u(Ot,"styleAttrs",[...G(Ot,Ot,"styleAttrs"),"uc-file-uploader-inline"]);var Fi=Ot;Fi.template=`<uc-start-from><uc-drop-area with-icon clickable></uc-drop-area><uc-source-list role="list" wrap></uc-source-list><button type="button" l10n="start-from-cancel" class="uc-cancel-btn uc-secondary-btn" set="onclick: cancel; @hidden: !couldCancel" ></button><uc-copyright></uc-copyright></uc-start-from><uc-upload-list ref="uBlock"></uc-upload-list><uc-camera-source></uc-camera-source><uc-url-source></uc-url-source><uc-external-source></uc-external-source><uc-cloud-image-editor-activity></uc-cloud-image-editor-activity>`;var Lt=class Lt extends ue{initCallback(){var t;super.initCallback(),(t=this.a11y)==null||t.registerBlock(this)}};u(Lt,"styleAttrs",[...G(Lt,Lt,"styleAttrs"),"uc-wgt-common"]);var Mr=Lt;function Rr(r){for(let t in r){let e=[...t].reduce((i,s)=>(s.toUpperCase()===s&&(s="-"+s.toLowerCase()),i+=s),"");e.startsWith("-")&&(e=e.replace("-","")),e.startsWith("uc-")||(e="uc-"+e),r[t].reg&&r[t].reg(e)}}var Dr="UC";async function Hl(r,t=!1){return new Promise((e,i)=>{if(typeof document!="object"){e(null);return}if(typeof window=="object"&&window[Dr]){e(window[Dr]);return}let s=document.createElement("script");s.async=!0,s.src=r,s.onerror=()=>{i()},s.onload=()=>{let o=window[Dr];t&&Rr(o),e(o)},document.head.appendChild(s)})}export{_ as ActivityBlock,Pr as ActivityHeader,xe as BaseComponent,b as Block,St as BtnUi,vi as CameraSource,Mr as CloudImageEditor,Lr as CloudImageEditorActivity,ue as CloudImageEditorBlock,Xa as Config,Mi as Copyright,xi as CropFrame,E as Data,bt as DropArea,Ct as EditorCropButtonControl,Qe as EditorFilterControl,Ei as EditorImageCropper,Or as EditorImageFader,Tt as EditorOperationControl,Ti as EditorScroller,Ai as EditorSlider,Si as EditorToolbar,Ui as ExternalSource,Xe as ExternalUploadSource,wt as FileItem,Fi as FileUploaderInline,Di as FileUploaderMinimal,$t as FileUploaderRegular,Ur as FormInput,pt as Icon,Ar as Img,Ii as LineLoaderUi,mi as Modal,Ge as PACKAGE_NAME,We as PACKAGE_VERSION,ki as PresenceToggle,Ci as ProgressBar,wi as ProgressBarCommon,Pi as Select,gt as SimpleBtn,Oi as SliderUi,ne as SolutionBlock,vt as SourceBtn,Sr as SourceList,Ri as Spinner,hi as StartFrom,Fe as UID,Sl as UploadCtxProvider,gi as UploadList,U as UploadSource,S as UploaderBlock,_i as UrlSource,Rr as defineComponents,ws as defineLocale,Hl as loadFileUploaderFrom,dt as toKebabCase};
|
|
26
|
+
var tn=Object.defineProperty;var sn=Object.getPrototypeOf;var rn=Reflect.get;var on=(s,t,e)=>t in s?tn(s,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):s[t]=e;var u=(s,t,e)=>on(s,typeof t!="symbol"?t+"":t,e);var W=(s,t,e)=>rn(sn(s),e,t);var nn=Object.defineProperty,an=(s,t,e)=>t in s?nn(s,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):s[t]=e,Ki=(s,t,e)=>(an(s,typeof t!="symbol"?t+"":t,e),e);function ln(s){let t=e=>{var i;for(let r in e)((i=e[r])==null?void 0:i.constructor)===Object&&(e[r]=t(e[r]));return{...e}};return t(s)}var A=class{constructor(s){s.constructor===Object?this.store=ln(s):(this._storeIsProxy=!0,this.store=s),this.callbackMap=Object.create(null)}static warn(s,t){console.warn(`Symbiote Data: cannot ${s}. Prop name: `+t)}read(s){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?(A.warn("read",s),null):this.store[s]}has(s){return this._storeIsProxy?this.store[s]!==void 0:this.store.hasOwnProperty(s)}add(s,t,e=!1){!e&&Object.keys(this.store).includes(s)||(this.store[s]=t,this.notify(s))}pub(s,t){if(!this._storeIsProxy&&!this.store.hasOwnProperty(s)){A.warn("publish",s);return}this.store[s]=t,this.notify(s)}multiPub(s){for(let t in s)this.pub(t,s[t])}notify(s){this.callbackMap[s]&&this.callbackMap[s].forEach(t=>{t(this.store[s])})}sub(s,t,e=!0){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?(A.warn("subscribe",s),null):(this.callbackMap[s]||(this.callbackMap[s]=new Set),this.callbackMap[s].add(t),e&&t(this.store[s]),{remove:()=>{this.callbackMap[s].delete(t),this.callbackMap[s].size||delete this.callbackMap[s]},callback:t})}static registerCtx(s,t=Symbol()){let e=A.globalStore.get(t);return e?console.warn('State: context UID "'+t+'" already in use'):(e=new A(s),A.globalStore.set(t,e)),e}static deleteCtx(s){A.globalStore.delete(s)}static getCtx(s,t=!0){return A.globalStore.get(s)||(t&&console.warn('State: wrong context UID - "'+s+'"'),null)}};A.globalStore=new Map;var E=Object.freeze({BIND_ATTR:"set",ATTR_BIND_PRFX:"@",EXT_DATA_CTX_PRFX:"*",NAMED_DATA_CTX_SPLTR:"/",CTX_NAME_ATTR:"ctx-name",CTX_OWNER_ATTR:"ctx-owner",CSS_CTX_PROP:"--ctx-name",EL_REF_ATTR:"ref",AUTO_TAG_PRFX:"sym",REPEAT_ATTR:"repeat",REPEAT_ITEM_TAG_ATTR:"repeat-item-tag",SET_LATER_KEY:"__toSetLater__",USE_TPL:"use-template",ROOT_STYLE_ATTR_NAME:"sym-component"}),Ys="1234567890QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm",cn=Ys.length-1,Ve=class{static generate(s="XXXXXXXXX-XXX"){let t="";for(let e=0;e<s.length;e++)t+=s[e]==="-"?s[e]:Ys.charAt(Math.random()*cn);return t}};function Js(s,t,e){let i=!0,r,o=t.split(".");return o.forEach((n,a)=>{a<o.length-1?s=s[n]:r=n}),s?s[r]=e:i=!1,i}function un(s){return s.split("-").map((t,e)=>t&&e?t[0].toUpperCase()+t.slice(1):t).join("").split("_").map((t,e)=>t&&e?t.toUpperCase():t).join("")}function dn(s,t){[...s.querySelectorAll(`[${E.REPEAT_ATTR}]`)].forEach(e=>{let i=e.getAttribute(E.REPEAT_ITEM_TAG_ATTR),r;if(i&&(r=window.customElements.get(i)),!r){r=class extends t.BaseComponent{constructor(){super(),i||(this.style.display="contents")}};let n=e.innerHTML;r.template=n,r.reg(i)}for(;e.firstChild;)e.firstChild.remove();let o=e.getAttribute(E.REPEAT_ATTR);t.sub(o,n=>{if(!n){for(;e.firstChild;)e.firstChild.remove();return}let a=[...e.children],l,c=h=>{h.forEach((p,m)=>{if(a[m])if(a[m].set$)setTimeout(()=>{a[m].set$(p)});else for(let f in p)a[m][f]=p[f];else{l||(l=new DocumentFragment);let f=new r;Object.assign(f.init$,p),l.appendChild(f)}}),l&&e.appendChild(l);let d=a.slice(h.length,a.length);for(let p of d)p.remove()};if(n.constructor===Array)c(n);else if(n.constructor===Object){let h=[];for(let d in n){let p=n[d];Object.defineProperty(p,"_KEY_",{value:d,enumerable:!0}),h.push(p)}c(h)}else console.warn("Symbiote repeat data type error:"),console.log(n)}),e.removeAttribute(E.REPEAT_ATTR),e.removeAttribute(E.REPEAT_ITEM_TAG_ATTR)})}var Ks="__default__";function hn(s,t){if(t.shadowRoot)return;let e=[...s.querySelectorAll("slot")];if(!e.length)return;let i={};e.forEach(r=>{let o=r.getAttribute("name")||Ks;i[o]={slot:r,fr:document.createDocumentFragment()}}),t.initChildren.forEach(r=>{var o;let n=Ks;r instanceof Element&&r.hasAttribute("slot")&&(n=r.getAttribute("slot"),r.removeAttribute("slot")),(o=i[n])==null||o.fr.appendChild(r)}),Object.values(i).forEach(r=>{if(r.fr.childNodes.length)r.slot.parentNode.replaceChild(r.fr,r.slot);else if(r.slot.childNodes.length){let o=document.createDocumentFragment();o.append(...r.slot.childNodes),r.slot.parentNode.replaceChild(o,r.slot)}else r.slot.remove()})}function pn(s,t){[...s.querySelectorAll(`[${E.EL_REF_ATTR}]`)].forEach(e=>{let i=e.getAttribute(E.EL_REF_ATTR);t.ref[i]=e,e.removeAttribute(E.EL_REF_ATTR)})}function fn(s,t){[...s.querySelectorAll(`[${E.BIND_ATTR}]`)].forEach(e=>{let r=e.getAttribute(E.BIND_ATTR).split(";");[...e.attributes].forEach(o=>{if(o.name.startsWith("-")&&o.value){let n=un(o.name.replace("-",""));r.push(n+":"+o.value),e.removeAttribute(o.name)}}),r.forEach(o=>{if(!o)return;let n=o.split(":").map(h=>h.trim()),a=n[0],l;a.indexOf(E.ATTR_BIND_PRFX)===0&&(l=!0,a=a.replace(E.ATTR_BIND_PRFX,""));let c=n[1].split(",").map(h=>h.trim());for(let h of c){let d;h.startsWith("!!")?(d="double",h=h.replace("!!","")):h.startsWith("!")&&(d="single",h=h.replace("!","")),t.sub(h,p=>{d==="double"?p=!!p:d==="single"&&(p=!p),l?(p==null?void 0:p.constructor)===Boolean?p?e.setAttribute(a,""):e.removeAttribute(a):e.setAttribute(a,p):Js(e,a,p)||(e[E.SET_LATER_KEY]||(e[E.SET_LATER_KEY]=Object.create(null)),e[E.SET_LATER_KEY][a]=p)})}}),e.removeAttribute(E.BIND_ATTR)})}var Dt="{{",rt="}}",mn="skip-text";function gn(s){let t,e=[],i=document.createTreeWalker(s,NodeFilter.SHOW_TEXT,{acceptNode:r=>{var o;return!((o=r.parentElement)!=null&&o.hasAttribute(mn))&&r.textContent.includes(Dt)&&r.textContent.includes(rt)&&1}});for(;t=i.nextNode();)e.push(t);return e}var bn=function(s,t){gn(s).forEach(i=>{let r=[],o;for(;i.textContent.includes(rt);)i.textContent.startsWith(Dt)?(o=i.textContent.indexOf(rt)+rt.length,i.splitText(o),r.push(i)):(o=i.textContent.indexOf(Dt),i.splitText(o)),i=i.nextSibling;r.forEach(n=>{let a=n.textContent.replace(Dt,"").replace(rt,"");n.textContent="",t.sub(a,l=>{n.textContent=l})})})},_n=[dn,hn,pn,fn,bn],Ft="'",Ne='"',yn=/\\([0-9a-fA-F]{1,6} ?)/g;function vn(s){return(s[0]===Ne||s[0]===Ft)&&(s[s.length-1]===Ne||s[s.length-1]===Ft)}function wn(s){return(s[0]===Ne||s[0]===Ft)&&(s=s.slice(1)),(s[s.length-1]===Ne||s[s.length-1]===Ft)&&(s=s.slice(0,-1)),s}function Cn(s){let t="",e="";for(var i=0;i<s.length;i++){let r=s[i+1];s[i]==="\\"&&r==='"'?(t+='\\"',i++):s[i]==='"'&&e!=="\\"?t+='\\"':t+=s[i],e=s[i]}return t}function xn(s){let t=s;vn(s)&&(t=wn(t),t=t.replace(yn,(e,i)=>String.fromCodePoint(parseInt(i.trim(),16))),t=t.replaceAll(`\\
|
|
27
|
+
`,"\\n"),t=Cn(t),t=Ne+t+Ne);try{return JSON.parse(t)}catch{throw new Error(`Failed to parse CSS property value: ${t}. Original input: ${s}`)}}var Zs=0,Fe=null,me=null,Ee=class extends HTMLElement{constructor(){super(),Ki(this,"updateCssData",()=>{var s;this.dropCssDataCache(),(s=this.__boundCssProps)==null||s.forEach(t=>{let e=this.getCssData(this.__extractCssName(t),!0);e!==null&&this.$[t]!==e&&(this.$[t]=e)})}),this.init$=Object.create(null),this.cssInit$=Object.create(null),this.tplProcessors=new Set,this.ref=Object.create(null),this.allSubs=new Set,this.pauseRender=!1,this.renderShadow=!1,this.readyToDestroy=!0,this.processInnerHtml=!1,this.allowCustomTemplate=!1,this.ctxOwner=!1}get BaseComponent(){return Ee}initCallback(){}__initCallback(){var s;this.__initialized||(this.__initialized=!0,(s=this.initCallback)==null||s.call(this))}render(s,t=this.renderShadow){let e;if((t||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let r=this.getAttribute(E.USE_TPL);if(r){let o=this.getRootNode(),n=(o==null?void 0:o.querySelector(r))||document.querySelector(r);n?s=n.content.cloneNode(!0):console.warn(`Symbiote template "${r}" is not found...`)}}if(this.processInnerHtml)for(let r of this.tplProcessors)r(this,this);if(s||this.constructor.template){if(this.constructor.template&&!this.constructor.__tpl&&(this.constructor.__tpl=document.createElement("template"),this.constructor.__tpl.innerHTML=this.constructor.template),(s==null?void 0:s.constructor)===DocumentFragment)e=s;else if((s==null?void 0:s.constructor)===String){let r=document.createElement("template");r.innerHTML=s,e=r.content.cloneNode(!0)}else this.constructor.__tpl&&(e=this.constructor.__tpl.content.cloneNode(!0));for(let r of this.tplProcessors)r(e,this)}let i=()=>{e&&(t&&this.shadowRoot.appendChild(e)||this.appendChild(e)),this.__initCallback()};if(this.constructor.__shadowStylesUrl){t=!0;let r=document.createElement("link");r.rel="stylesheet",r.href=this.constructor.__shadowStylesUrl,r.onload=i,this.shadowRoot.prepend(r)}else i()}addTemplateProcessor(s){this.tplProcessors.add(s)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=Ve.generate(),this.style.setProperty(E.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(E.CSS_CTX_PROP,!0)}get ctxName(){var s;let t=((s=this.getAttribute(E.CTX_NAME_ATTR))==null?void 0:s.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=t,t}get localCtx(){return this.__localCtx||(this.__localCtx=A.registerCtx({},this)),this.__localCtx}get nodeCtx(){return A.getCtx(this.ctxName,!1)||A.registerCtx({},this.ctxName)}static __parseProp(s,t){let e,i;if(s.startsWith(E.EXT_DATA_CTX_PRFX))e=t.nodeCtx,i=s.replace(E.EXT_DATA_CTX_PRFX,"");else if(s.includes(E.NAMED_DATA_CTX_SPLTR)){let r=s.split(E.NAMED_DATA_CTX_SPLTR);e=A.getCtx(r[0]),i=r[1]}else e=t.localCtx,i=s;return{ctx:e,name:i}}sub(s,t,e=!0){let i=o=>{this.isConnected&&t(o)},r=Ee.__parseProp(s,this);r.ctx.has(r.name)?this.allSubs.add(r.ctx.sub(r.name,i,e)):window.setTimeout(()=>{this.allSubs.add(r.ctx.sub(r.name,i,e))})}notify(s){let t=Ee.__parseProp(s,this);t.ctx.notify(t.name)}has(s){let t=Ee.__parseProp(s,this);return t.ctx.has(t.name)}add(s,t,e=!1){let i=Ee.__parseProp(s,this);i.ctx.add(i.name,t,e)}add$(s,t=!1){for(let e in s)this.add(e,s[e],t)}get $(){if(!this.__stateProxy){let s=Object.create(null);this.__stateProxy=new Proxy(s,{set:(t,e,i)=>{let r=Ee.__parseProp(e,this);return r.ctx.pub(r.name,i),!0},get:(t,e)=>{let i=Ee.__parseProp(e,this);return i.ctx.read(i.name)}})}return this.__stateProxy}set$(s,t=!1){for(let e in s){let i=s[e];t||![String,Number,Boolean].includes(i==null?void 0:i.constructor)?this.$[e]=i:this.$[e]!==i&&(this.$[e]=i)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(E.CTX_OWNER_ATTR)&&this.getAttribute(E.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let s=this.constructor.__attrDesc;if(s)for(let t of Object.values(s))Object.keys(this.init$).includes(t)||(this.init$[t]="");for(let t in this.init$)if(t.startsWith(E.EXT_DATA_CTX_PRFX))this.nodeCtx.add(t.replace(E.EXT_DATA_CTX_PRFX,""),this.init$[t],this.__ctxOwner);else if(t.includes(E.NAMED_DATA_CTX_SPLTR)){let e=t.split(E.NAMED_DATA_CTX_SPLTR),i=e[0].trim(),r=e[1].trim();if(i&&r){let o=A.getCtx(i,!1);o||(o=A.registerCtx({},i)),o.add(r,this.init$[t])}}else this.localCtx.add(t,this.init$[t]);for(let t in this.cssInit$)this.bindCssData(t,this.cssInit$[t]);this.__dataCtxInitialized=!0}connectedCallback(){var s;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let t=(s=this.getAttribute(E.CTX_NAME_ATTR))==null?void 0:s.trim();if(t&&this.style.setProperty(E.CSS_CTX_PROP,`'${t}'`),this.__initDataCtx(),this[E.SET_LATER_KEY]){for(let e in this[E.SET_LATER_KEY])Js(this,e,this[E.SET_LATER_KEY][e]);delete this[E.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let e of _n)this.addTemplateProcessor(e);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let e=this.getRootNode();if(!e)return;if(e==null?void 0:e.querySelector(`link[${E.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let r=this.constructor.__rootStylesLink.cloneNode(!0);r.setAttribute(E.ROOT_STYLE_ATTR_NAME,this.constructor.is),r.onload=()=>{this.render()},e.nodeType===Node.DOCUMENT_NODE?e.head.appendChild(r):e.prepend(r)}else this.render()}this.connectedOnce=!0}}destroyCallback(){}disconnectedCallback(){this.connectedOnce&&(this.dropCssDataCache(),this.readyToDestroy&&(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),this.__disconnectTimeout=window.setTimeout(()=>{this.destroyCallback();for(let s of this.allSubs)s.remove(),this.allSubs.delete(s);for(let s of this.tplProcessors)this.tplProcessors.delete(s);me==null||me.delete(this.updateCssData),me!=null&&me.size||(Fe==null||Fe.disconnect(),Fe=null,me=null)},100)))}static reg(s,t=!1){s||(Zs++,s=`${E.AUTO_TAG_PRFX}-${Zs}`),this.__tag=s;let e=window.customElements.get(s);if(e){!t&&e!==this&&console.warn([`Element with tag name "${s}" already registered.`,`You're trying to override it with another class "${this.name}".`,"This is most likely a mistake.","New element will not be registered."].join(`
|
|
28
|
+
`));return}window.customElements.define(s,t?class extends this{}:this)}static get is(){return this.__tag||this.reg(),this.__tag}static bindAttributes(s){this.observedAttributes=Object.keys(s),this.__attrDesc=s}attributeChangedCallback(s,t,e){var i;if(t===e)return;let r=(i=this.constructor.__attrDesc)==null?void 0:i[s];r?this.__dataCtxInitialized?this.$[r]=e:this.init$[r]=e:this[s]=e}getCssData(s,t=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(s)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let e=this.__computedStyle.getPropertyValue(s).trim();try{this.__cssDataCache[s]=xn(e)}catch{!t&&console.warn(`CSS Data error: ${s}`),this.__cssDataCache[s]=null}}return this.__cssDataCache[s]}__extractCssName(s){return s.split("--").map((t,e)=>e===0?"":t).join("--")}__initStyleAttrObserver(){me||(me=new Set),me.add(this.updateCssData),Fe||(Fe=new MutationObserver(s=>{s[0].type==="attributes"&&me.forEach(t=>{t()})}),Fe.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(s,t=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(s);let e=this.getCssData(this.__extractCssName(s),!0);e===null&&(e=t),this.add(s,e),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(s,t,e){let i="__"+s;this[i]=this[s],Object.defineProperty(this,s,{set:r=>{this[i]=r,e?window.setTimeout(()=>{t==null||t(r)}):t==null||t(r)},get:()=>this[i]}),this[s]=this[i]}static set shadowStyles(s){let t=new Blob([s],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(t)}static set rootStyles(s){if(!this.__rootStylesLink){let t=new Blob([s],{type:"text/css"}),e=URL.createObjectURL(t),i=document.createElement("link");i.href=e,i.rel="stylesheet",this.__rootStylesLink=i}}},Ae=Ee;Ki(Ae,"template");var qi=class{static _print(s){console.warn(s)}static setDefaultTitle(s){this.defaultTitle=s}static setRoutingMap(s){Object.assign(this.appMap,s);for(let t in this.appMap)!this.defaultRoute&&this.appMap[t].default===!0?this.defaultRoute=t:!this.errorRoute&&this.appMap[t].error===!0&&(this.errorRoute=t)}static set routingEventName(s){this.__routingEventName=s}static get routingEventName(){return this.__routingEventName||"sym-on-route"}static readAddressBar(){let s={route:null,options:{}};return window.location.search.split(this.separator).forEach(e=>{if(e.includes("?"))s.route=e.replace("?","");else if(e.includes("=")){let i=e.split("=");s.options[i[0]]=decodeURI(i[1])}else s.options[e]=!0}),s}static notify(){let s=this.readAddressBar(),t=this.appMap[s.route];if(t&&t.title&&(document.title=t.title),s.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!t&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!t&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!t){this._print(`Route "${s.route}" not found...`);return}let e=new CustomEvent(qi.routingEventName,{detail:{route:s.route,options:Object.assign(t||{},s.options)}});window.dispatchEvent(e)}static reflect(s,t={}){let e=this.appMap[s];if(!e){this._print("Wrong route: "+s);return}let i="?"+s;for(let o in t)t[o]===!0?i+=this.separator+o:i+=this.separator+o+`=${t[o]}`;let r=e.title||this.defaultTitle||"";window.history.pushState(null,r,i),document.title=r}static applyRoute(s,t={}){this.reflect(s,t),this.notify()}static setSeparator(s){this._separator=s}static get separator(){return this._separator||"&"}static createRouterData(s,t){this.setRoutingMap(t);let e=A.registerCtx({route:null,options:null,title:null},s);return window.addEventListener(this.routingEventName,i=>{var r;e.multiPub({route:i.detail.route,options:i.detail.options,title:((r=i.detail.options)==null?void 0:r.title)||this.defaultTitle||""})}),qi.notify(),this.initPopstateListener(),e}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};qi.appMap=Object.create(null);function ot(s,t){for(let e in t)e.includes("-")?s.style.setProperty(e,t[e]):s.style[e]=t[e]}function En(s,t){for(let e in t)t[e].constructor===Boolean?t[e]?s.setAttribute(e,""):s.removeAttribute(e):s.setAttribute(e,t[e])}function Zi(s={tag:"div"}){let t=document.createElement(s.tag);if(s.attributes&&En(t,s.attributes),s.styles&&ot(t,s.styles),s.properties)for(let e in s.properties)t[e]=s.properties[e];return s.processors&&s.processors.forEach(e=>{e(t)}),s.children&&s.children.forEach(e=>{let i=Zi(e);t.appendChild(i)}),t}var Qs="idb-store-ready",An="symbiote-db",Tn="symbiote-idb-update_",Sn=class{_notifyWhenReady(s=null){window.dispatchEvent(new CustomEvent(Qs,{detail:{dbName:this.name,storeName:this.storeName,event:s}}))}get _updEventName(){return Tn+this.name}_getUpdateEvent(s){return new CustomEvent(this._updEventName,{detail:{key:this.name,newValue:s}})}_notifySubscribers(s){window.localStorage.removeItem(this.name),window.localStorage.setItem(this.name,s),window.dispatchEvent(this._getUpdateEvent(s))}constructor(s,t){this.name=s,this.storeName=t,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=e=>{this.db=e.target.result,this.objStore=this.db.createObjectStore(t,{keyPath:"_key"}),this.objStore.transaction.oncomplete=i=>{this._notifyWhenReady(i)}},this.request.onsuccess=e=>{this.db=e.target.result,this._notifyWhenReady(e)},this.request.onerror=e=>{console.error(e)},this._subscriptionsMap={},this._updateHandler=e=>{e.key===this.name&&this._subscriptionsMap[e.newValue]&&this._subscriptionsMap[e.newValue].forEach(async r=>{r(await this.read(e.newValue))})},this._localUpdateHandler=e=>{this._updateHandler(e.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(s){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(s);return new Promise((i,r)=>{e.onsuccess=o=>{var n;(n=o.target.result)!=null&&n._value?i(o.target.result._value):(i(null),console.warn(`IDB: cannot read "${s}"`))},e.onerror=o=>{r(o)}})}write(s,t,e=!1){let i={_key:s,_value:t},o=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(i);return new Promise((n,a)=>{o.onsuccess=l=>{e||this._notifySubscribers(s),n(l.target.result)},o.onerror=l=>{a(l)}})}delete(s,t=!1){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(s);return new Promise((r,o)=>{i.onsuccess=n=>{t||this._notifySubscribers(s),r(n)},i.onerror=n=>{o(n)}})}getAll(){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((e,i)=>{t.onsuccess=r=>{let o=r.target.result;e(o.map(n=>n._value))},t.onerror=r=>{i(r)}})}subscribe(s,t){this._subscriptionsMap[s]||(this._subscriptionsMap[s]=new Set);let e=this._subscriptionsMap[s];return e.add(t),{remove:()=>{e.delete(t),e.size||delete this._subscriptionsMap[s]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,er.clear(this.name)}},er=class{static get readyEventName(){return Qs}static open(s=An,t="store"){let e=s+"/"+t;return this._reg[e]||(this._reg[e]=new Sn(s,t)),this._reg[e]}static clear(s){window.indexedDB.deleteDatabase(s);for(let t in this._reg)t.split("/")[0]===s&&delete this._reg[t]}};Ki(er,"_reg",Object.create(null));var tr=s=>{if(typeof s!="string"||!s)return"";let t=s.trim();return t.startsWith("-/")?t=t.slice(2):t.startsWith("/")&&(t=t.slice(1)),t.endsWith("/")&&(t=t.slice(0,t.length-1)),t},Nt=(...s)=>s.filter(t=>typeof t=="string"&&t).map(t=>tr(t)).join("/-/"),N=(...s)=>{let t=Nt(...s);return t?`-/${t}/`:""};function Vt(s){let t=new URL(s),e=t.pathname+t.search+t.hash,i=e.lastIndexOf("http"),r=e.lastIndexOf("/"),o="";return i>=0?o=e.slice(i):r>=0&&(o=e.slice(r+1)),o}function Bt(s){let t=new URL(s),{pathname:e}=t,i=e.indexOf("/"),r=e.indexOf("/",i+1);return e.substring(i+1,r)}function Yi(s){let t=sr(s),e=new URL(t),i=e.pathname.indexOf("/-/");return i===-1?"":e.pathname.substring(i).slice(1)}function ir(s){return Yi(s).split("/-/").filter(Boolean).map(e=>tr(e))}function sr(s){let t=new URL(s),e=Vt(s),i=rr(e)?or(e).pathname:e;return t.pathname=t.pathname.replace(i,""),t.search="",t.hash="",t.toString()}function rr(s){return s.startsWith("http")}function or(s){let t=new URL(s);return{pathname:t.origin+t.pathname||"",search:t.search||"",hash:t.hash||""}}var P=(s,t,e)=>{let i=new URL(sr(s));if(e=e||Vt(s),i.pathname.startsWith("//")&&(i.pathname=i.pathname.replace("//","/")),rr(e)){let r=or(e);i.pathname=i.pathname+(t||"")+(r.pathname||""),i.search=r.search,i.hash=r.hash}else i.pathname=i.pathname+(t||"")+(e||"");return i.toString()},ne=(s,t)=>{let e=new URL(s);return e.pathname=t+"/",e.toString()};var V=(s,t=",")=>s.trim().split(t).map(e=>e.trim()).filter(e=>e.length>0);var Z=Object.freeze({brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0,mirror:!1,flip:!1,crop:void 0}),ar=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function In(s,t){if(typeof t=="number"){let e=t;return Z[s]!==e?`${s}/${e}`:""}if(typeof t=="boolean"){let e=t;return Z[s]!==e?`${s}`:""}if(s==="filter"&&t){let{name:e,amount:i}=t;return Z.filter===i?"":`${s}/${e}/${i}`}if(s==="crop"&&t){let{dimensions:e,coords:i}=t;return`${s}/${e.join("x")}/${i.join(",")}`}return""}function Te(s){return Nt(...ar.filter(t=>typeof s[t]!="undefined"&&s[t]!==null).map(t=>{let e=s[t];return In(t,e)}).filter(t=>!!t))}var zt=Nt("format/auto","progressive/yes"),ge=([s])=>typeof s!="undefined"?Number(s):void 0,nr=()=>!0,$n=([s,t])=>({name:s,amount:typeof t!="undefined"?Number(t):100}),kn=([s,t])=>{if(!/\d+x\d+/.test(s)||!/\d+,\d+/.test(t))throw new Error("Crop by aspect ratio, percentage or alignment shortcuts is not supported.");return{dimensions:V(s,"x").map(Number),coords:V(t).map(Number)}},On=Object.freeze({enhance:ge,brightness:ge,exposure:ge,gamma:ge,contrast:ge,saturation:ge,vibrance:ge,warmth:ge,filter:$n,mirror:nr,flip:nr,rotate:ge,crop:kn});function lr(s){let t={};for(let e of s){let[i,...r]=e.split("/");if(!ar.includes(i))continue;let o=i,n=On[o];try{let a=n(r);t[o]=a}catch(a){console.warn([`Failed to parse URL operation "${e}". It will be ignored.`,a instanceof Error?`Error message: "${a.message}"`:a,"If you need this functionality, please feel free to open an issue at https://github.com/uploadcare/blocks/issues/new"].join(`
|
|
29
|
+
`))}}return t}var M=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),X=[M.CROP,M.TUNING,M.FILTERS],cr=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],ur=["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"],dr=["rotate","mirror","flip"],ae=Object.freeze({brightness:{zero:Z.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:Z.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:Z.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:Z.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:Z.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:Z.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:Z.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:Z.enhance,range:[0,100],keypointsNumber:1},filter:{zero:Z.filter,range:[0,100],keypointsNumber:1}});var q=s=>s?s.split(",").map(t=>t.trim()).filter(Boolean):[],be=s=>s?s.join(","):"";var Mn="https://ucarecdn.com",Ln="https://upload.uploadcare.com",Un="https://social.uploadcare.com",se={pubkey:"",multiple:!0,multipleMin:0,multipleMax:Number.MAX_SAFE_INTEGER,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",externalSourcesEmbedCss:"",store:"auto",cameraMirror:!1,cameraCapture:"",sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:be(X),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",imageShrink:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:Mn,baseUrl:Ln,socialBaseUrl:Un,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",debug:!1,metadata:null,localeName:"en",localeDefinitionOverride:null,secureUploadsExpireThreshold:10*60*1e3,secureUploadsSignatureResolver:null,secureDeliveryProxyUrlResolver:null,iconHrefResolver:null,fileValidators:[],collectionValidators:[],cameraModes:"photo, video",defaultCameraMode:null,enableAudioRecording:!0,enableVideoRecording:null,maxVideoRecordingDuration:null,mediaRecorderOptions:null,filesViewMode:"list",gridShowFileNames:!1,cloudImageEditorAutoOpen:!1};var k=Object.freeze({FILE_ADDED:"file-added",FILE_REMOVED:"file-removed",FILE_UPLOAD_START:"file-upload-start",FILE_UPLOAD_PROGRESS:"file-upload-progress",FILE_UPLOAD_SUCCESS:"file-upload-success",FILE_UPLOAD_FAILED:"file-upload-failed",FILE_URL_CHANGED:"file-url-changed",MODAL_OPEN:"modal-open",MODAL_CLOSE:"modal-close",DONE_CLICK:"done-click",UPLOAD_CLICK:"upload-click",ACTIVITY_CHANGE:"activity-change",COMMON_UPLOAD_START:"common-upload-start",COMMON_UPLOAD_PROGRESS:"common-upload-progress",COMMON_UPLOAD_SUCCESS:"common-upload-success",COMMON_UPLOAD_FAILED:"common-upload-failed",CHANGE:"change",GROUP_CREATED:"group-created"}),Ht=class{constructor(t){u(this,"_timeoutStore",new Map);u(this,"_targets",new Set);u(this,"_debugPrint",null);this._debugPrint=t}bindTarget(t){this._targets.add(t)}unbindTarget(t){this._targets.delete(t)}_dispatch(t,e){var i;for(let r of this._targets)r.dispatchEvent(new CustomEvent(t,{detail:e}));(i=this._debugPrint)==null||i.call(this,()=>{let r=e&&typeof e=="object"?{...e}:e;return[`event "${t}"`,r]})}emit(t,e,{debounce:i}={}){if(typeof i!="number"&&!i){this._dispatch(t,typeof e=="function"?e():e);return}this._timeoutStore.has(t)&&window.clearTimeout(this._timeoutStore.get(t));let r=typeof i=="number"?i:20,o=window.setTimeout(()=>{this._dispatch(t,typeof e=="function"?e():e),this._timeoutStore.delete(t)},r);this._timeoutStore.set(t,o)}};function O(s,t){let e,i=(...r)=>{clearTimeout(e),e=setTimeout(()=>s(...r),t)};return i.cancel=()=>{clearTimeout(e)},i}var hr="--uploadcare-blocks-window-height",Me=class{static registerClient(t){this.clientsRegistry.size===0&&this.attachTracker(),this.clientsRegistry.add(t)}static unregisterClient(t){this.clientsRegistry.delete(t),this.clientsRegistry.size===0&&this.detachTracker()}static attachTracker(){window.addEventListener("resize",this.flush,{passive:!0,capture:!0}),this.flush()}static detachTracker(){window.removeEventListener("resize",this.flush,{capture:!0}),document.documentElement.style.removeProperty(hr)}};u(Me,"clientsRegistry",new Set),u(Me,"flush",O(()=>{document.documentElement.style.setProperty(hr,`${window.innerHeight}px`)},100));var pr=s=>{var i;let t=new Intl.Locale(s),e="ltr";return typeof t.getTextInfo=="function"&&t.getTextInfo().direction?e=t.getTextInfo().direction:"textInfo"in t&&((i=t.textInfo)!=null&&i.direction)&&(e=t.textInfo.direction),e};var jt=(s,t)=>new Intl.PluralRules(s).select(t);var Pn=s=>s,Ji="{{",mr="}}",fr="plural:";function nt(s,t,e={}){var n;let{openToken:i=Ji,closeToken:r=mr,transform:o=Pn}=e;for(let a in t){let l=(n=t[a])==null?void 0:n.toString();s=s.replaceAll(i+a+r,typeof l=="string"?o(l):l)}return s}function gr(s){let t=[],e=s.indexOf(Ji);for(;e!==-1;){let i=s.indexOf(mr,e),r=s.substring(e+2,i);if(r.startsWith(fr)){let o=s.substring(e+2,i).replace(fr,""),n=o.substring(0,o.indexOf("(")),a=o.substring(o.indexOf("(")+1,o.indexOf(")"));t.push({variable:r,pluralKey:n,countVariable:a})}e=s.indexOf(Ji,i)}return t}var br=({element:s,attribute:t,onSuccess:e,onTimeout:i,timeout:r=300})=>{let o=s.getAttribute(t);if(o!==null){e(o);return}let n=new MutationObserver(c=>{let h=c[c.length-1];l(h)});n.observe(s,{attributes:!0,attributeFilter:[t]});let a=setTimeout(()=>{n.disconnect(),i()},r),l=c=>{let h=s.getAttribute(t);c.type==="attributes"&&c.attributeName===t&&h!==null&&(clearTimeout(a),n.disconnect(),e(h))}};function _r(s){return Object.prototype.toString.call(s)==="[object Object]"}var Rn=/\W|_/g;function Dn(s){return s.split(Rn).map((t,e)=>t.charAt(0)[e>0?"toUpperCase":"toLowerCase"]()+t.slice(1)).join("")}function yr(s,{ignoreKeys:t}={ignoreKeys:[]}){return Array.isArray(s)?s.map(e=>ve(e,{ignoreKeys:t})):s}function ve(s,{ignoreKeys:t}={ignoreKeys:[]}){if(Array.isArray(s))return yr(s,{ignoreKeys:t});if(!_r(s))return s;let e={};for(let i of Object.keys(s)){let r=s[i];if(t.includes(i)){e[i]=r;continue}_r(r)?r=ve(r,{ignoreKeys:t}):Array.isArray(r)&&(r=yr(r,{ignoreKeys:t})),e[Dn(i)]=r}return e}var Fn=s=>new Promise(t=>setTimeout(t,s));function os({libraryName:s,libraryVersion:t,userAgent:e,publicKey:i="",integration:r=""}){let o="JavaScript";if(typeof e=="string")return e;if(typeof e=="function")return e({publicKey:i,libraryName:s,libraryVersion:t,languageName:o,integration:r});let n=[s,t,i].filter(Boolean).join("/"),a=[o,r].filter(Boolean).join("; ");return`${n} (${a})`}var Nn={factor:2,time:100};function Vn(s,t=Nn){let e=0;function i(r){let o=Math.round(t.time*t.factor**e);return r({attempt:e,retry:a=>Fn(a!=null?a:o).then(()=>(e+=1,i(r)))})}return i(s)}var at=class extends Error{},Be=class s extends at{constructor(e){super();u(this,"originalProgressEvent");this.name="NetworkError",this.message="Network error",Object.setPrototypeOf(this,s.prototype),this.originalProgressEvent=e}},Wt=(s,t)=>{s&&(s.aborted?Promise.resolve().then(t):s.addEventListener("abort",()=>t(),{once:!0}))},Se=class s extends at{constructor(e="Request canceled"){super(e);u(this,"isCancel",!0);this.name="CancelError",Object.setPrototypeOf(this,s.prototype)}},Bn=500,wr=({check:s,interval:t=Bn,timeout:e,signal:i})=>new Promise((r,o)=>{let n,a;Wt(i,()=>{n&&clearTimeout(n),o(new Se("Poll cancelled"))}),e&&(a=setTimeout(()=>{n&&clearTimeout(n),o(new Se("Timed out"))},e));let l=()=>{try{Promise.resolve(s(i)).then(c=>{c?(a&&clearTimeout(a),r(c)):n=setTimeout(l,t)}).catch(c=>{a&&clearTimeout(a),o(c)})}catch(c){a&&clearTimeout(a),o(c)}};n=setTimeout(l,0)}),S={baseCDN:"https://ucarecdn.com",baseURL:"https://upload.uploadcare.com",maxContentLength:50*1024*1024,retryThrottledRequestMaxTimes:1,retryNetworkErrorMaxTimes:3,multipartMinFileSize:25*1024*1024,multipartChunkSize:5*1024*1024,multipartMinLastPartSize:1024*1024,maxConcurrentRequests:4,pollingTimeoutMilliseconds:1e4,pusherKey:"79ae88bd931ea68464d9"},Xt="application/octet-stream",Cr="original",Ie=({method:s,url:t,data:e,headers:i={},signal:r,onProgress:o})=>new Promise((n,a)=>{let l=new XMLHttpRequest,c=(s==null?void 0:s.toUpperCase())||"GET",h=!1;l.open(c,t,!0),i&&Object.entries(i).forEach(d=>{let[p,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&l.setRequestHeader(p,m)}),l.responseType="text",Wt(r,()=>{h=!0,l.abort(),a(new Se)}),l.onload=()=>{if(l.status!=200)a(new Error(`Error ${l.status}: ${l.statusText}`));else{let d={method:c,url:t,data:e,headers:i||void 0,signal:r,onProgress:o},p=l.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};p.forEach(function(v){let w=v.split(": "),y=w.shift(),C=w.join(": ");y&&typeof y!="undefined"&&(m[y]=C)});let f=l.response,b=l.status;n({request:d,data:f,headers:m,status:b})}},l.onerror=d=>{h||a(new Be(d))},o&&typeof o=="function"&&(l.upload.onprogress=d=>{d.lengthComputable?o({isComputable:!0,value:d.loaded/d.total}):o({isComputable:!1})}),e?l.send(e):l.send()});function zn(s,...t){return s}var Hn=({name:s})=>s?[s]:[],jn=zn,Gn=()=>new FormData,xr=s=>!1,qt=s=>typeof Blob!="undefined"&&s instanceof Blob,Kt=s=>typeof File!="undefined"&&s instanceof File,Zt=s=>!!s&&typeof s=="object"&&!Array.isArray(s)&&"uri"in s&&typeof s.uri=="string",ze=s=>qt(s)||Kt(s)||xr()||Zt(s),Wn=s=>typeof s=="string"||typeof s=="number"||typeof s=="undefined",Xn=s=>!!s&&typeof s=="object"&&!Array.isArray(s),qn=s=>!!s&&typeof s=="object"&&"data"in s&&ze(s.data);function Er(s,t,e){if(Array.isArray(e))for(let i of e)Er(s,`${t}[]`,i);else if(qn(e)){let{name:i,contentType:r}=e,o=jn(e.data,i,r!=null?r:Xt),n=Hn({name:i,contentType:r});s.push([t,o,...n])}else if(Xn(e))for(let[i,r]of Object.entries(e))typeof r!="undefined"&&s.push([`${t}[${i}]`,String(r)]);else Wn(e)&&e&&s.push([t,e.toString()])}function Kn(s){let t=[];for(let[e,i]of Object.entries(s))Er(t,e,i);return t}function Yt(s){let t=Gn(),e=Kn(s);for(let i of e){let[r,o,...n]=i;t.append(r,o,...n)}return t}var z=class s extends at{constructor(e,i,r,o,n){super();u(this,"code");u(this,"request");u(this,"response");u(this,"headers");this.name="UploadError",this.message=e,this.code=i,this.request=r,this.response=o,this.headers=n,Object.setPrototypeOf(this,s.prototype)}},Zn=s=>{let t=new URLSearchParams;for(let[e,i]of Object.entries(s))i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).filter(r=>{var o;return(o=r[1])!=null?o:!1}).forEach(r=>t.set(`${e}[${r[0]}]`,String(r[1]))):Array.isArray(i)?i.forEach(r=>{t.append(`${e}[]`,r)}):typeof i=="string"&&i?t.set(e,i):typeof i=="number"&&t.set(e,i.toString());return t.toString()},_e=(s,t,e)=>{let i=new URL(s);return i.pathname=(i.pathname+t).replace("//","/"),e&&(i.search=Zn(e)),i.toString()},Yn="6.14.1",Jn="UploadcareUploadClient",Qn=Yn;function Le(s){return os({libraryName:Jn,libraryVersion:Qn,...s})}var ea="RequestThrottledError",vr=15e3,ta=1e3;function ia(s){let{headers:t}=s||{};if(!t||typeof t["retry-after"]!="string")return vr;let e=parseInt(t["retry-after"],10);return Number.isFinite(e)?e*1e3:vr}function $e(s,t){let{retryThrottledRequestMaxTimes:e,retryNetworkErrorMaxTimes:i}=t;return Vn(({attempt:r,retry:o})=>s().catch(n=>{if("response"in n&&(n==null?void 0:n.code)===ea&&r<e)return o(ia(n));if(n instanceof Be&&r<i)return o((r+1)*ta);throw n}))}var Ar=s=>{let t="";return(qt(s)||Kt(s)||Zt(s))&&(t=s.type),t||Xt},Tr=s=>{let t="";return Kt(s)&&s.name?t=s.name:qt(s)||xr()?t="":Zt(s)&&s.name&&(t=s.name),t||Cr};function ns(s){return typeof s=="undefined"||s==="auto"?"auto":s?"1":"0"}function sa(s,{publicKey:t,fileName:e,contentType:i,baseURL:r=S.baseURL,secureSignature:o,secureExpire:n,store:a,signal:l,onProgress:c,source:h="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=S.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=S.retryNetworkErrorMaxTimes,metadata:b}){return $e(()=>Ie({method:"POST",url:_e(r,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Le({publicKey:t,integration:d,userAgent:p})},data:Yt({file:{data:s,name:e||Tr(s),contentType:i||Ar(s)},UPLOADCARE_PUB_KEY:t,UPLOADCARE_STORE:ns(a),signature:o,expire:n,source:h,metadata:b}),signal:l,onProgress:c}).then(({data:v,headers:w,request:y})=>{let C=ve(JSON.parse(v));if("error"in C)throw new z(C.error.content,C.error.errorCode,y,C,w);return C}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var ts;(function(s){s.Token="token",s.FileInfo="file_info"})(ts||(ts={}));function ra(s,{publicKey:t,baseURL:e=S.baseURL,store:i,fileName:r,checkForUrlDuplicates:o,saveUrlForRecurrentUploads:n,secureSignature:a,secureExpire:l,source:c="url",signal:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=S.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=S.retryNetworkErrorMaxTimes,metadata:b}){return $e(()=>Ie({method:"POST",headers:{"X-UC-User-Agent":Le({publicKey:t,integration:d,userAgent:p})},url:_e(e,"/from_url/",{jsonerrors:1,pub_key:t,source_url:s,store:ns(i),filename:r,check_URL_duplicates:o?1:void 0,save_URL_duplicates:n?1:void 0,signature:a,expire:l,source:c,metadata:b}),signal:h}).then(({data:v,headers:w,request:y})=>{let C=ve(JSON.parse(v));if("error"in C)throw new z(C.error.content,C.error.errorCode,y,C,w);return C}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var K;(function(s){s.Unknown="unknown",s.Waiting="waiting",s.Progress="progress",s.Error="error",s.Success="success"})(K||(K={}));var oa=s=>"status"in s&&s.status===K.Error;function na(s,{publicKey:t,baseURL:e=S.baseURL,signal:i,integration:r,userAgent:o,retryThrottledRequestMaxTimes:n=S.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=S.retryNetworkErrorMaxTimes}={}){return $e(()=>Ie({method:"GET",headers:t?{"X-UC-User-Agent":Le({publicKey:t,integration:r,userAgent:o})}:void 0,url:_e(e,"/from_url/status/",{jsonerrors:1,token:s}),signal:i}).then(({data:l,headers:c,request:h})=>{let d=ve(JSON.parse(l));if("error"in d&&!oa(d))throw new z(d.error.content,d.error.errorCode,h,d,c);return d}),{retryNetworkErrorMaxTimes:a,retryThrottledRequestMaxTimes:n})}function aa(s,{publicKey:t,baseURL:e=S.baseURL,jsonpCallback:i,secureSignature:r,secureExpire:o,signal:n,source:a,integration:l,userAgent:c,retryThrottledRequestMaxTimes:h=S.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=S.retryNetworkErrorMaxTimes}){return $e(()=>Ie({method:"POST",headers:{"X-UC-User-Agent":Le({publicKey:t,integration:l,userAgent:c})},url:_e(e,"/group/",{jsonerrors:1}),data:Yt({files:s,callback:i,pub_key:t,signature:r,expire:o,source:a}),signal:n}).then(({data:p,headers:m,request:f})=>{let b=ve(JSON.parse(p));if("error"in b)throw new z(b.error.content,b.error.errorCode,f,b,m);return b}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:h})}function Sr(s,{publicKey:t,baseURL:e=S.baseURL,signal:i,source:r,integration:o,userAgent:n,retryThrottledRequestMaxTimes:a=S.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=S.retryNetworkErrorMaxTimes}){return $e(()=>Ie({method:"GET",headers:{"X-UC-User-Agent":Le({publicKey:t,integration:o,userAgent:n})},url:_e(e,"/info/",{jsonerrors:1,pub_key:t,file_id:s,source:r}),signal:i}).then(({data:c,headers:h,request:d})=>{let p=ve(JSON.parse(c));if("error"in p)throw new z(p.error.content,p.error.errorCode,d,p,h);return p}),{retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:l})}function la(s,{publicKey:t,contentType:e,fileName:i,multipartChunkSize:r=S.multipartChunkSize,baseURL:o="",secureSignature:n,secureExpire:a,store:l,signal:c,source:h="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=S.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=S.retryNetworkErrorMaxTimes,metadata:b}){return $e(()=>Ie({method:"POST",url:_e(o,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Le({publicKey:t,integration:d,userAgent:p})},data:Yt({filename:i||Cr,size:s,content_type:e||Xt,part_size:r,UPLOADCARE_STORE:ns(l),UPLOADCARE_PUB_KEY:t,signature:n,expire:a,source:h,metadata:b}),signal:c}).then(({data:v,headers:w,request:y})=>{let C=ve(JSON.parse(v));if("error"in C)throw new z(C.error.content,C.error.errorCode,y,C,w);return C.parts=Object.keys(C.parts).map(D=>C.parts[Number(D)]),C}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})}function ca(s,t,{contentType:e,signal:i,onProgress:r,retryThrottledRequestMaxTimes:o=S.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:n=S.retryNetworkErrorMaxTimes}){return $e(()=>Ie({method:"PUT",url:t,data:s,onProgress:r,signal:i,headers:{"Content-Type":e||Xt}}).then(a=>(r&&r({isComputable:!0,value:1}),a)).then(({status:a})=>({code:a})),{retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:n})}function ua(s,{publicKey:t,baseURL:e=S.baseURL,source:i="local",signal:r,integration:o,userAgent:n,retryThrottledRequestMaxTimes:a=S.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=S.retryNetworkErrorMaxTimes}){return $e(()=>Ie({method:"POST",url:_e(e,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Le({publicKey:t,integration:o,userAgent:n})},data:Yt({uuid:s,UPLOADCARE_PUB_KEY:t,source:i}),signal:r}).then(({data:c,headers:h,request:d})=>{let p=ve(JSON.parse(c));if("error"in p)throw new z(p.error.content,p.error.errorCode,d,p,h);return p}),{retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:l})}function as(s,{publicKey:t,baseURL:e,source:i,integration:r,userAgent:o,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:a,signal:l,onProgress:c}){return wr({check:h=>Sr(s,{publicKey:t,baseURL:e,signal:h,source:i,integration:r,userAgent:o,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:a}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:l})}function da(s){return"defaultEffects"in s}var ye=class{constructor(t,{baseCDN:e=S.baseCDN,fileName:i}={}){u(this,"uuid");u(this,"name",null);u(this,"size",null);u(this,"isStored",null);u(this,"isImage",null);u(this,"mimeType",null);u(this,"cdnUrl",null);u(this,"s3Url",null);u(this,"originalFilename",null);u(this,"imageInfo",null);u(this,"videoInfo",null);u(this,"contentInfo",null);u(this,"metadata",null);u(this,"s3Bucket",null);u(this,"defaultEffects",null);let{uuid:r,s3Bucket:o}=t,n=_e(e,`${r}/`),a=o?_e(`https://${o}.s3.amazonaws.com/`,`${r}/${t.filename}`):null;this.uuid=r,this.name=i||t.filename,this.size=t.size,this.isStored=t.isStored,this.isImage=t.isImage,this.mimeType=t.mimeType,this.cdnUrl=n,this.originalFilename=t.originalFilename,this.imageInfo=t.imageInfo,this.videoInfo=t.videoInfo,this.contentInfo=t.contentInfo,this.metadata=t.metadata||null,this.s3Bucket=o||null,this.s3Url=a,da(t)&&(this.defaultEffects=t.defaultEffects)}},ha=(s,{publicKey:t,fileName:e,baseURL:i,secureSignature:r,secureExpire:o,store:n,contentType:a,signal:l,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,baseCDN:b,metadata:v})=>sa(s,{publicKey:t,fileName:e,contentType:a,baseURL:i,secureSignature:r,secureExpire:o,store:n,signal:l,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:v}).then(({file:w})=>as(w,{publicKey:t,baseURL:i,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:l})).then(w=>new ye(w,{baseCDN:b})),pa=(s,{publicKey:t,fileName:e,baseURL:i,signal:r,onProgress:o,source:n,integration:a,userAgent:l,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:h,baseCDN:d})=>Sr(s,{publicKey:t,baseURL:i,signal:r,source:n,integration:a,userAgent:l,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:h}).then(p=>new ye(p,{baseCDN:d,fileName:e})).then(p=>(o&&o({isComputable:!0,value:1}),p)),fa=(s,{signal:t}={})=>{let e=null,i=null,r=s.map(()=>new AbortController),o=n=>()=>{i=n,r.forEach((a,l)=>l!==n&&a.abort())};return Wt(t,()=>{r.forEach(n=>n.abort())}),Promise.all(s.map((n,a)=>{let l=o(a);return Promise.resolve().then(()=>n({stopRace:l,signal:r[a].signal})).then(c=>(l(),c)).catch(c=>(e=c,null))})).then(n=>{if(i===null)throw e;return n[i]})},ma=window.WebSocket,is=class{constructor(){u(this,"events",Object.create({}))}emit(t,e){var i;(i=this.events[t])==null||i.forEach(r=>r(e))}on(t,e){this.events[t]=this.events[t]||[],this.events[t].push(e)}off(t,e){e?this.events[t]=this.events[t].filter(i=>i!==e):this.events[t]=[]}},ga=(s,t)=>s==="success"?{status:K.Success,...t}:s==="progress"?{status:K.Progress,...t}:{status:K.Error,...t},ss=class{constructor(t,e=3e4){u(this,"key");u(this,"disconnectTime");u(this,"ws");u(this,"queue",[]);u(this,"isConnected",!1);u(this,"subscribers",0);u(this,"emmitter",new is);u(this,"disconnectTimeoutId",null);this.key=t,this.disconnectTime=e}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let t=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new ma(t),this.ws.addEventListener("error",e=>{this.emmitter.emit("error",new Error(e.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(e=>this.send(e.event,e.data)),this.queue=[]}),this.ws.addEventListener("message",e=>{let i=JSON.parse(e.data.toString());switch(i.event){case"pusher:connection_established":{this.emmitter.emit("connected",void 0);break}case"pusher:ping":{this.send("pusher:pong",{});break}case"progress":case"success":case"fail":this.emmitter.emit(i.channel,ga(i.event,JSON.parse(i.data)))}})}}disconnect(){let t=()=>{var e;(e=this.ws)==null||e.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{t()},this.disconnectTime):t()}send(t,e){var r;let i=JSON.stringify({event:t,data:e});(r=this.ws)==null||r.send(i)}subscribe(t,e){this.subscribers+=1,this.connect();let i=`task-status-${t}`,r={event:"pusher:subscribe",data:{channel:i}};this.emmitter.on(i,e),this.isConnected?this.send(r.event,r.data):this.queue.push(r)}unsubscribe(t){this.subscribers-=1;let e=`task-status-${t}`,i={event:"pusher:unsubscribe",data:{channel:e}};this.emmitter.off(e),this.isConnected?this.send(i.event,i.data):this.queue=this.queue.filter(r=>r.data.channel!==e),this.subscribers===0&&this.disconnect()}onError(t){return this.emmitter.on("error",t),()=>this.emmitter.off("error",t)}},Qi=null,ls=s=>{if(!Qi){let t=typeof window=="undefined"?0:3e4;Qi=new ss(s,t)}return Qi},ba=s=>{ls(s).connect()};function _a({token:s,publicKey:t,baseURL:e,integration:i,userAgent:r,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:n,onProgress:a,signal:l}){return wr({check:c=>na(s,{publicKey:t,baseURL:e,integration:i,userAgent:r,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:n,signal:c}).then(h=>{switch(h.status){case K.Error:return new z(h.error,h.errorCode);case K.Waiting:return!1;case K.Unknown:return new z(`Token "${s}" was not found.`);case K.Progress:return a&&(h.total==="unknown"?a({isComputable:!1}):a({isComputable:!0,value:h.done/h.total})),!1;case K.Success:return a&&a({isComputable:!0,value:h.done/h.total}),h;default:throw new Error("Unknown status")}}),signal:l})}var ya=({token:s,pusherKey:t,signal:e,onProgress:i})=>new Promise((r,o)=>{let n=ls(t),a=n.onError(o),l=()=>{a(),n.unsubscribe(s)};Wt(e,()=>{l(),o(new Se("pusher cancelled"))}),n.subscribe(s,c=>{switch(c.status){case K.Progress:{i&&(c.total==="unknown"?i({isComputable:!1}):i({isComputable:!0,value:c.done/c.total}));break}case K.Success:{l(),i&&i({isComputable:!0,value:c.done/c.total}),r(c);break}case K.Error:l(),o(new z(c.msg,c.error_code))}})}),va=(s,{publicKey:t,fileName:e,baseURL:i,baseCDN:r,checkForUrlDuplicates:o,saveUrlForRecurrentUploads:n,secureSignature:a,secureExpire:l,store:c,signal:h,onProgress:d,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:b,pusherKey:v=S.pusherKey,metadata:w})=>Promise.resolve(ba(v)).then(()=>ra(s,{publicKey:t,fileName:e,baseURL:i,checkForUrlDuplicates:o,saveUrlForRecurrentUploads:n,secureSignature:a,secureExpire:l,store:c,signal:h,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:b,metadata:w})).catch(y=>{let C=ls(v);return C==null||C.disconnect(),Promise.reject(y)}).then(y=>y.type===ts.FileInfo?y:fa([({signal:C})=>_a({token:y.token,publicKey:t,baseURL:i,integration:m,userAgent:f,retryThrottledRequestMaxTimes:b,onProgress:d,signal:C}),({signal:C})=>ya({token:y.token,pusherKey:v,signal:C,onProgress:d})],{signal:h})).then(y=>{if(y instanceof z)throw y;return y}).then(y=>as(y.uuid,{publicKey:t,baseURL:i,integration:m,userAgent:f,retryThrottledRequestMaxTimes:b,onProgress:d,signal:h})).then(y=>new ye(y,{baseCDN:r})),es=new WeakMap,wa=async s=>{if(es.has(s))return es.get(s);let t=await fetch(s.uri).then(e=>e.blob());return es.set(s,t),t},Ir=async s=>{if(Kt(s)||qt(s))return s.size;if(Zt(s))return(await wa(s)).size;throw new Error("Unknown file type. Cannot determine file size.")},Ca=(s,t=S.multipartMinFileSize)=>s>=t,$r=s=>{let t="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",e=new RegExp(t);return!ze(s)&&e.test(s)},cs=s=>{let t="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",e=new RegExp(t);return!ze(s)&&e.test(s)},xa=(s,t)=>new Promise((e,i)=>{let r=[],o=!1,n=t.length,a=[...t],l=()=>{let c=t.length-a.length,h=a.shift();h&&h().then(d=>{o||(r[c]=d,n-=1,n?l():e(r))}).catch(d=>{o=!0,i(d)})};for(let c=0;c<s;c++)l()}),Ea=(s,t,e,i)=>{let r=i*t,o=Math.min(r+i,e);return s.slice(r,o)},Aa=async(s,t,e)=>i=>Ea(s,i,t,e),Ta=(s,t,{publicKey:e,contentType:i,onProgress:r,signal:o,integration:n,retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:l})=>ca(s,t,{publicKey:e,contentType:i,onProgress:r,signal:o,integration:n,retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:l}),Sa=async(s,{publicKey:t,fileName:e,fileSize:i,baseURL:r,secureSignature:o,secureExpire:n,store:a,signal:l,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,contentType:b,multipartChunkSize:v=S.multipartChunkSize,maxConcurrentRequests:w=S.maxConcurrentRequests,baseCDN:y,metadata:C})=>{let D=i!=null?i:await Ir(s),Q,re=(F,G)=>{if(!c)return;Q||(Q=Array(F).fill(0));let ie=oe=>oe.reduce((fe,Xi)=>fe+Xi,0);return oe=>{oe.isComputable&&(Q[G]=oe.value,c({isComputable:!0,value:ie(Q)/F}))}};return b||(b=Ar(s)),la(D,{publicKey:t,contentType:b,fileName:e||Tr(s),baseURL:r,secureSignature:o,secureExpire:n,store:a,signal:l,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:C}).then(async({uuid:F,parts:G})=>{let ie=await Aa(s,D,v);return Promise.all([F,xa(w,G.map((oe,fe)=>()=>Ta(ie(fe),oe,{publicKey:t,contentType:b,onProgress:re(G.length,fe),signal:l,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})))])}).then(([F])=>ua(F,{publicKey:t,baseURL:r,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})).then(F=>F.isReady?F:as(F.uuid,{publicKey:t,baseURL:r,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:l})).then(F=>new ye(F,{baseCDN:y}))};async function us(s,{publicKey:t,fileName:e,baseURL:i=S.baseURL,secureSignature:r,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartMinFileSize:b,multipartChunkSize:v,maxConcurrentRequests:w,baseCDN:y=S.baseCDN,checkForUrlDuplicates:C,saveUrlForRecurrentUploads:D,pusherKey:Q,metadata:re}){if(ze(s)){let F=await Ir(s);return Ca(F,b)?Sa(s,{publicKey:t,contentType:f,multipartChunkSize:v,fileSize:F,fileName:e,baseURL:i,secureSignature:r,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,maxConcurrentRequests:w,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:y,metadata:re}):ha(s,{publicKey:t,fileName:e,contentType:f,baseURL:i,secureSignature:r,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:y,metadata:re})}if(cs(s))return va(s,{publicKey:t,fileName:e,baseURL:i,baseCDN:y,checkForUrlDuplicates:C,saveUrlForRecurrentUploads:D,secureSignature:r,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,pusherKey:Q,metadata:re});if($r(s))return pa(s,{publicKey:t,fileName:e,baseURL:i,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:y});throw new TypeError(`File uploading from "${s}" is not supported`)}var rs=class{constructor(t,{baseCDN:e=S.baseCDN}={}){u(this,"uuid");u(this,"filesCount");u(this,"totalSize");u(this,"isStored");u(this,"isImage");u(this,"cdnUrl");u(this,"files");u(this,"createdAt");u(this,"storedAt",null);this.uuid=t.id,this.filesCount=t.filesCount;let i=t.files.filter(Boolean);this.totalSize=Object.values(i).reduce((r,o)=>r+o.size,0),this.isStored=!!t.datetimeStored,this.isImage=!!Object.values(i).filter(r=>r.isImage).length,this.cdnUrl=t.cdnUrl,this.files=i.map(r=>new ye(r,{baseCDN:e})),this.createdAt=t.datetimeCreated,this.storedAt=t.datetimeStored}},Ia=s=>{for(let t of s)if(!ze(t))return!1;return!0},$a=s=>{for(let t of s)if(!$r(t))return!1;return!0},ka=s=>{for(let t of s)if(!cs(t))return!1;return!0};function kr(s,{publicKey:t,fileName:e,baseURL:i=S.baseURL,secureSignature:r,secureExpire:o,store:n,signal:a,onProgress:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:b=S.multipartChunkSize,baseCDN:v=S.baseCDN,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:y,jsonpCallback:C}){if(!Ia(s)&&!ka(s)&&!$a(s))throw new TypeError(`Group uploading from "${s}" is not supported`);let D,Q=!0,re=s.length,F=(G,ie)=>{if(!l)return;D||(D=Array(G).fill(0));let oe=fe=>fe.reduce((Xi,en)=>Xi+en)/G;return fe=>{if(!fe.isComputable||!Q){Q=!1,l({isComputable:!1});return}D[ie]=fe.value,l({isComputable:!0,value:oe(D)})}};return Promise.all(s.map((G,ie)=>ze(G)||cs(G)?us(G,{publicKey:t,fileName:e,baseURL:i,secureSignature:r,secureExpire:o,store:n,signal:a,onProgress:F(re,ie),source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:b,baseCDN:v,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:y}).then(oe=>oe.uuid):G)).then(G=>aa(G,{publicKey:t,baseURL:i,jsonpCallback:C,secureSignature:r,secureExpire:o,signal:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m}).then(ie=>new rs(ie,{baseCDN:v})).then(ie=>(l&&l({isComputable:!0,value:1}),ie)))}var Gt=class{constructor(t){u(this,"_concurrency",1);u(this,"_pending",[]);u(this,"_running",0);u(this,"_resolvers",new Map);u(this,"_rejectors",new Map);this._concurrency=t}_run(){let t=this._concurrency-this._running;for(let e=0;e<t;e++){let i=this._pending.shift();if(!i)return;let r=this._resolvers.get(i),o=this._rejectors.get(i);if(!r||!o)throw new Error("Unexpected behavior: resolver or rejector is undefined");this._running+=1,i().finally(()=>{this._resolvers.delete(i),this._rejectors.delete(i),this._running-=1,this._run()}).then(n=>r(n)).catch(n=>o(n))}}add(t){return new Promise((e,i)=>{this._resolvers.set(t,e),this._rejectors.set(t,i),this._pending.push(t),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(t){this._concurrency=t,this._run()}get concurrency(){return this._concurrency}};var ds=()=>({}),hs=s=>({...ds(),"*currentActivity":null,"*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{s.modalManager.closeAll(),s.set$({"*currentActivity":null})}}),Jt=s=>({...hs(s),"*commonProgress":0,"*uploadList":[],"*uploadQueue":new Gt(1),"*collectionErrors":[],"*collectionState":null,"*groupInfo":null,"*uploadTrigger":new Set,"*secureUploadsManager":null});var lt={"locale-id":"en","social-source-lang":"en","upload-file":"Upload file","upload-files":"Upload files","choose-file":"Choose file","choose-files":"Choose files","drop-files-here":"Drop files here","select-file-source":"Select file source",selected:"Selected",upload:"Upload","add-more":"Add more",cancel:"Cancel","start-from-cancel":"Cancel",clear:"Clear","camera-shot":"Shot","upload-url":"Import","upload-url-placeholder":"Paste link here","edit-image":"Edit image","edit-detail":"Details",back:"Back",done:"Done",ok:"Ok","remove-from-list":"Remove",no:"No",yes:"Yes","confirm-your-action":"Confirm your action","are-you-sure":"Are you sure?","selected-count":"{{count}} of {{total}} selected","select-all":"Select all","deselect-all":"Deselect all","upload-error":"Upload error","validation-error":"Validation error","no-files":"No files selected",browse:"Browse","not-uploaded-yet":"Not uploaded yet...",file__one:"file",file__other:"files",error__one:"error",error__other:"errors","header-uploading":"Uploading {{count}} {{plural:file(count)}}","header-failed":"{{count}} {{plural:error(count)}}","header-succeed":"{{count}} {{plural:file(count)}} uploaded","header-total":"{{count}} {{plural:file(count)}} selected","src-type-local":"From device","src-type-from-url":"From link","src-type-camera":"Camera","src-type-mobile-video-camera":"Video","src-type-mobile-photo-camera":"Photo","src-type-draw":"Draw","src-type-facebook":"Facebook","src-type-dropbox":"Dropbox","src-type-gdrive":"Google Drive","src-type-gphotos":"Google Photos","src-type-flickr":"Flickr","src-type-vk":"VK","src-type-evernote":"Evernote","src-type-box":"Box","src-type-onedrive":"Onedrive","src-type-huddle":"Huddle","src-type-other":"Other","caption-from-url":"Import from link","caption-camera":"Camera","caption-draw":"Draw","caption-edit-file":"Edit file","file-no-name":"No name...","toggle-fullscreen":"Toggle fullscreen","toggle-guides":"Toggle guides",rotate:"Rotate","flip-vertical":"Flip vertical","flip-horizontal":"Flip horizontal",apply:"Apply",brightness:"Brightness",contrast:"Contrast",saturation:"Saturation",exposure:"Exposure",gamma:"Gamma",vibrance:"Vibrance",warmth:"Warmth",enhance:"Enhance",original:"Original",resize:"Resize image",crop:"Crop","select-color":"Select color",text:"Text",draw:"Draw","cancel-edit":"Cancel edit","tab-view":"Preview","tab-details":"Details","file-name":"Name","file-size":"Size","cdn-url":"CDN URL","file-size-unknown":"Unknown","camera-permissions-denied":"Camera access denied","camera-permissions-prompt":"Please allow access to the camera","camera-permissions-request":"Request access","files-count-limit-error-title":"Files count limit overflow","files-count-limit-error-too-few":"You\u2019ve chosen {{total}} {{plural:file(total)}}. At least {{min}} {{plural:file(min)}} required.","files-count-limit-error-too-many":"You\u2019ve chosen too many files. {{max}} {{plural:file(max)}} is maximum.","files-max-size-limit-error":"File is too big. Max file size is {{maxFileSize}}.","has-validation-errors":"File validation error occurred. Please, check your files before upload.","images-only-accepted":"Only image files are accepted.","file-type-not-allowed":"Uploading of these file types is not allowed.","some-files-were-not-uploaded":"Some files were not uploaded.","file-item-edit-button":"Edit","file-item-remove-button":"Remove","a11y-editor-tab-filters":"Filters","a11y-editor-tab-tuning":"Tuning","a11y-editor-tab-crop":"Crop","a11y-activity-header-button-close":"Close",flip:"Flip",mirror:"Mirror","a11y-cloud-editor-apply-filter":"Apply {{name}} filter","a11y-cloud-editor-apply-crop":"Apply {{name}} operation","a11y-cloud-editor-apply-tuning":"Apply {{name}} tuning",finished:"Finished",failed:"Failed",uploading:"Uploading",idle:"Idle","a11y-file-item-status":"File {{fileName}} in status {{status}}","waiting-for":"Waiting for {{source}}"};var Qt=new Map,ps=new Map,Or=(s,t)=>{Qt.has(s)&&console.log(`Locale ${s} is already defined. Overwriting...`),Qt.set(s,{...lt,...t})},Oa=(s,t)=>{ps.set(s,t)},Mr=(s,t)=>{typeof t=="function"?Oa(s,t):Or(s,t)},Lr=async s=>{if(!Qt.has(s)){if(!ps.has(s))throw new Error(`Locale ${s} is not defined`);let e=await ps.get(s)();Or(s,e)}return Qt.get(s)};Mr("en",lt);var we=s=>`*l10n/${s}`,Ma="en",ei=class{constructor(t){u(this,"_blockInstance",null);u(this,"_localeName","");u(this,"_callbacks",new Set);u(this,"_boundBlocks",new Map);this._blockInstance=t;for(let[e,i]of Object.entries(lt))this._blockInstance.add(we(e),i,!1);setTimeout(()=>{t.subConfigValue("localeName",async e=>{var o;if(!this._blockInstance||!e)return;this._localeName=e;let i=await Lr(e);if(e!==Ma&&this._localeName!==e)return;let r=(o=this._blockInstance.cfg.localeDefinitionOverride)==null?void 0:o[e];for(let[n,a]of Object.entries(i)){let l=r==null?void 0:r[n];this._blockInstance.add(we(n),l!=null?l:a,!0);for(let c of this._callbacks)c()}}),t.subConfigValue("localeDefinitionOverride",e=>{var r;if(!e)return;let i=e[this._localeName];if(i)for(let[o,n]of Object.entries(i)){(r=this._blockInstance)==null||r.add(we(o),n,!0);for(let a of this._callbacks)a()}})})}onLocaleChange(t){let e=O(t,0);return this._callbacks.add(e),()=>{this._callbacks.delete(e)}}bindL10n(t,e,i){var o,n,a;t.$[e]=i(),this._boundBlocks.has(t)||this._boundBlocks.set(t,new Map),(n=(o=this._boundBlocks.get(t))==null?void 0:o.get(e))==null||n();let r=this.onLocaleChange(()=>{t.$[e]=i()});(a=this._boundBlocks.get(t))==null||a.set(e,r)}destroyL10nBindings(t){let e=this._boundBlocks.get(t);if(e){for(let i of e.values())i();this._boundBlocks.delete(t)}}destroy(){this._callbacks.clear()}};function Ur(s,t){[...s.querySelectorAll("[l10n]")].forEach(e=>{let i=e.getAttribute("l10n");if(!i)return;let r=i.split(";");for(let o of r)o&&La(e,o,t)})}var La=(s,t,e)=>{let i="textContent",r=!1;if(t.includes(":")){let a=t.split(":");i=a[0],t=a[1],i.startsWith("@")&&(i=i.slice(1),r=!0)}let o=t;e.has(o)&&e.sub(o,a=>{if(!a)return;e.l10nProcessorSubs.has(o)||e.l10nProcessorSubs.set(o,new Set);let l=e.l10nProcessorSubs.get(o);l==null||l.forEach(d=>{d.remove(),l.delete(d),e.allSubs.delete(d)});let c=we(a).replace("*","");e.nodeCtx.has(c)||e.nodeCtx.add(c,a);let h=e.nodeCtx.sub(c,()=>{s[i]=e.l10n(a)});l==null||l.add(h),e.allSubs.add(h),s.removeAttribute("l10n")});let n=we(t);e.has(n)||e.add(n,""),e.sub(n,()=>{t=t,r?s.setAttribute(i,e.l10n(t)):s[i]=e.l10n(t)}),s.removeAttribute("l10n")};var H=s=>`*cfg/${s}`;var Ua={button:["toolbar"],checkbox:["toolbar"],menuitem:["menu","menubar"],option:["listbox"],tab:["tablist"]};function ct(s,t){t.tabIndex=0,t.focus(),s.tabIndex=-1}function fs(s){let t=s.role||s.type||s.tagName;if(!t)return null;let e=Ua[t.toLowerCase()];if(!e)return null;for(let i of e){let r=s.closest(`[role=${i}]`);if(r)return r}}function ms(s,t){return t.role==="toolbar"?Pa(t):t.querySelectorAll(`[role=${s.role}]`)}function Pa(s){return[...s.querySelectorAll("*")].filter(e=>e.role==="button"||e.type==="button"||e.role==="checkbox"||e.type==="checkbox")}function Ra(s){let t=s.getAttribute("aria-orientation");if(t==="vertical")return!1;if(t==="horizontal")return!0;let e=s.role;return e==="menubar"||e==="tablist"||e==="toolbar"}function Pr(s){return t=>{let e=!1,i=(s==null?void 0:s.searchDelayMs)||300,r=0,o="";function n(d){let p=fs(d.target);if(!p){a();return}let m=ms(d.target,p),f=Array.from(m).indexOf(d.target),b="ArrowDown",v="ArrowUp";if(Ra(p)&&(t.document.dir==="rtl"?(b="ArrowLeft",v="ArrowRight"):(b="ArrowRight",v="ArrowLeft")),d.key===b)d.preventDefault(),ct(d.target,m[f+1]||m[0]);else if(d.key===v)d.preventDefault(),ct(d.target,m[f-1]||m[m.length-1]);else if(d.key==="Home")d.preventDefault(),ct(d.target,m[0]);else if(d.key==="End")d.preventDefault(),ct(d.target,m[m.length-1]);else if(d.key.length===1&&p.role!=="tablist"){let w=Date.now();w-r<=i?o+=d.key.toLowerCase():o=d.key.toLowerCase(),r=w;let y=Array.from(m).find(C=>{var D,Q,re;return(re=(Q=(D=C.textContent)==null?void 0:D.trim())==null?void 0:Q.toLowerCase())==null?void 0:re.startsWith(o)});y&&(d.preventDefault(),ct(d.target,y))}}function a(){e=!1,t.removeEventListener("keydown",n)}function l(d){let p=fs(d.target);if(p){e||(e=!0,t.addEventListener("keydown",n));let m=ms(d.target,p);for(let f of m)f!==d.target&&f.setAttribute("tabindex",-1)}else e&&a()}function c(d){(!d.relatedTarget||d.relatedTarget===t.document)&&a()}function h(d){let p=fs(d.target);if(p){let m=ms(d.target,p);for(let f of m)f!==d.target&&f.setAttribute("tabindex",-1);d.target.setAttribute("tabindex",0)}}return t.addEventListener("click",h),t.addEventListener("focusin",l),t.addEventListener("focusout",c),()=>{a(),t.removeEventListener("click",h),t.removeEventListener("focusin",l),t.removeEventListener("focusout",c)}}}function Rr(){return s=>{let t,e;function i(o){if(o.target.getAttribute("aria-hidden")==="true"){t=o.target,t.setAttribute("aria-hidden","false"),e=t.hidden,e&&(t.hidden=!1);let n=o.target.querySelector('a, button, select, textarea, input:not([type=radio]), [type=radio]:checked, [tabindex]:not([tabindex="-1"])');n&&(n.tabIndex=0)}}function r(o){t&&t.contains(o.target)&&(!o.relatedTarget||!t.contains(o.relatedTarget))&&(o.target.tabIndex=-1,t.setAttribute("aria-hidden","true"),e&&(t.hidden=!0),t=null)}return s.addEventListener("keyuxJump",i),s.addEventListener("focusout",r),()=>{s.removeEventListener("keyuxJump",i),s.removeEventListener("focusout",r)}}}function Dr(){return s=>{let t=[];function e(c){let h=s.document.activeElement;h&&h!==s.document.body&&t.push(new WeakRef(h)),c.focus({focusVisible:!0})}function i(){let c=t.pop();if(!c){s.document.activeElement.blur();return}let h=c.deref();h&&h.isConnected?h.focus():i()}let r=0,o;function n(c){clearInterval(o);let h=c.getAttribute("aria-controls");h&&(o=setInterval(()=>{if(r++>50){clearInterval(o);return}let d=s.document.getElementById(h);if(d){let p=d.querySelector('a, button, select, textarea, input:not([type=radio]), [type=radio]:checked, [tabindex]:not([tabindex="-1"])');p&&(clearInterval(o),d.dispatchEvent(new s.CustomEvent("keyuxJump",{bubbles:!0})),e(p))}},50))}function a(c){c.clientX===0&&c.clientY===0&&n(c.target)}function l(c){c.target.tagName==="INPUT"&&c.key==="Enter"&&n(c.target),c.key==="Escape"&&i()}return s.addEventListener("click",a),s.addEventListener("keydown",l),()=>{s.removeEventListener("click",a),s.removeEventListener("keydown",l)}}}function Fr(s){let t,e=s.split(" ");function i(){t&&t.classList.remove(...e)}function r(o){o.clientX===0&&o.clientY===0&&(i(),o.target.classList.add(...e),t=o.target)}return o=>(o.addEventListener("keyup",i),o.addEventListener("click",r),()=>{o.removeEventListener("keyup",i),o.removeEventListener("click",r)})}function Nr(s,t){let e=t.map(i=>i(s));return()=>{e.forEach(i=>i())}}var gs=class{constructor(){u(this,"_listeners",new Map);u(this,"_scope",[])}addEventListener(t,e){let i=r=>{let o=r.target;o&&this._scope.some(n=>n===r.target||n.contains(o))&&e(r)};this._listeners.set(e,i),window.addEventListener(t,i)}removeEventListener(t,e){let i=this._listeners.get(e);i&&window.removeEventListener(t,i),this._listeners.delete(e)}get CustomEvent(){return window.CustomEvent}get document(){return window.document}get navigator(){return window.navigator}registerScope(t){this._scope.push(t)}destroy(){this._scope=[],this._listeners.forEach((t,e)=>{window.removeEventListener("keydown",t),window.removeEventListener("keyup",t),this._listeners.delete(e)})}},ti=class{constructor(){u(this,"_destroyKeyUX");u(this,"_scopedWindow");this._scopedWindow=new gs,this._destroyKeyUX=Nr(this._scopedWindow,[Pr(),Fr("is-pressed"),Dr(),Rr()])}registerBlock(t){this._scopedWindow.registerScope(t)}destroy(){var t;(t=this._destroyKeyUX)==null||t.call(this),this._scopedWindow.destroy()}};var R=Object.freeze({ADD:"modal:add",DELETE:"modal:delete",OPEN:"modal:open",CLOSE:"modal:close",CLOSE_ALL:"modal:closeAll",DESTROY:"modal:destroy"}),ii=class{constructor(t){u(this,"_modals",new Map);u(this,"_activeModals",new Set);u(this,"_subscribers",new Map);this._block=t}_debugPrint(...t){this._block.debugPrint("[modal-manager]",...t)}registerModal(t,e){this._modals.set(t,e),this._notify(R.ADD,{id:t,modal:e})}deleteModal(t){if(!this._modals.has(t))return!1;let e=this._modals.get(t);return this._modals.delete(t),this._activeModals.delete(t),this._notify(R.DELETE,{id:t,modal:e}),!0}open(t){if(!this._modals.has(t))return this._debugPrint(`Modal with ID "${t}" not found`),!1;let e=this._modals.get(t);return this._activeModals.add(t),this._notify(R.OPEN,{modal:e,id:t}),!0}close(t){if(!this._modals.has(t)||!this._activeModals.has(t))return this._debugPrint(`Modal with ID "${t}" not found or not active`),!1;let e=this._modals.get(t);return this._activeModals.delete(t),this._notify(R.CLOSE,{id:t,modal:e}),!0}toggle(t){return this._modals.has(t)?this._activeModals.has(t)?this.close(t):this.open(t):(this._debugPrint(`Modal with ID "${t}" not found`),!1)}get hasActiveModals(){return this._activeModals.size>0}back(){if(this._activeModals.size===0)return this._debugPrint("No active modals to go back from"),!1;let t=Array.from(this._activeModals).pop();return this.close(t)}closeAll(){let t=this._activeModals.size;return this._activeModals.clear(),this._notify(R.CLOSE_ALL,{}),t}subscribe(t,e){return this._subscribers.has(t)||this._subscribers.set(t,new Set),this._subscribers.get(t).add(e),()=>this.unsubscribe(t,e)}unsubscribe(t,e){this._subscribers.has(t)&&this._subscribers.get(t).delete(e)}_notify(t,e){if(this._subscribers.has(t))for(let i of this._subscribers.get(t))try{i(e)}catch(r){this._debugPrint("Error in modal subscriber:",r)}}destroy(){this.closeAll(),this._modals.clear(),this._subscribers.clear(),this._notify(R.DESTROY,{})}};var Da="uc-",_=class extends Ae{constructor(){super();u(this,"requireCtxName",!1);u(this,"activityType",null);u(this,"init$",ds());this.l10nProcessorSubs=new Map,this.addTemplateProcessor(Ur)}l10n(e,i={}){if(!e)return"";let r=this.$[we(e)]||e,o=gr(r);for(let a of o)i[a.variable]=this.pluralize(a.pluralKey,Number(i[a.countVariable]));return nt(r,i)}pluralize(e,i){let r=this.l10n("locale-id")||"en",o=jt(r,i);return this.l10n(`${e}__${o}`)}bindL10n(e,i){var r;(r=this.localeManager)==null||r.bindL10n(this,e,i)}emit(e,i,r){let o=this.has("*eventEmitter")&&this.$["*eventEmitter"];o&&o.emit(e,i,r)}hasBlockInCtx(e){for(let i of this.blocksRegistry)if(e(i))return!0;return!1}setOrAddState(e,i){this.add$({[e]:i},!0)}connectedCallback(){this.constructor.styleAttrs.forEach(i=>{this.setAttribute(i,"")}),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?br({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback(),Me.registerClient(this)}disconnectedCallback(){super.disconnectedCallback(),Me.unregisterClient(this)}initCallback(){this.has("*blocksRegistry")||this.add("*blocksRegistry",new Set),this.$["*blocksRegistry"].add(this),this.has("*eventEmitter")||this.add("*eventEmitter",new Ht(this.debugPrint.bind(this))),this.has("*localeManager")||this.add("*localeManager",new ei(this)),this.has("*a11y")||this.add("*a11y",new ti),this.has("*modalManager")||this.add("*modalManager",new ii(this)),this.sub(we("locale-id"),i=>{let r=pr(i);this.style.direction=r==="ltr"?"":r})}get modalManager(){return this.has("*modalManager")&&this.$["*modalManager"]}get localeManager(){return this.has("*localeManager")?this.$["*localeManager"]:null}get a11y(){return this.has("*a11y")?this.$["*a11y"]:null}get blocksRegistry(){return this.$["*blocksRegistry"]}destroyCallback(){var i;super.destroyCallback();let e=this.blocksRegistry;e==null||e.delete(this),(i=this.localeManager)==null||i.destroyL10nBindings(this),this.l10nProcessorSubs=new Map,A.deleteCtx(this),(e==null?void 0:e.size)===0&&setTimeout(()=>{this.destroyCtxCallback()},0)}destroyCtxCallback(){var e,i;A.deleteCtx(this.ctxName),(e=this.localeManager)==null||e.destroy(),this.modalManager&&((i=this.modalManager)==null||i.destroy())}async proxyUrl(e){if(this.cfg.secureDeliveryProxy&&this.cfg.secureDeliveryProxyUrlResolver&&console.warn("Both secureDeliveryProxy and secureDeliveryProxyUrlResolver are set. The secureDeliveryProxyUrlResolver will be used."),this.cfg.secureDeliveryProxyUrlResolver)try{return await this.cfg.secureDeliveryProxyUrlResolver(e,{uuid:Bt(e),cdnUrlModifiers:Yi(e),fileName:Vt(e)})}catch(i){return console.error("Failed to resolve secure delivery proxy URL. Falling back to the default URL.",i),e}return this.cfg.secureDeliveryProxy?nt(this.cfg.secureDeliveryProxy,{previewUrl:e},{transform:i=>window.encodeURIComponent(i)}):e}get cfg(){if(!this.__cfgProxy){let e=Object.create(null);this.__cfgProxy=new Proxy(e,{set:(i,r,o)=>{if(typeof r!="string")return!1;let n=H(r);return this.has(n)||this.add(n,se[r]),this.$[n]=o,!0},get:(i,r)=>{let o=H(r);return this.has(o)||this.add(o,se[r]),this.$[H(r)]}})}return this.__cfgProxy}subConfigValue(e,i){let r=H(e);this.has(r)||this.add(r,se[e]),this.sub(r,i)}debugPrint(...e){if(!this.cfg.debug)return;let i=e;if(typeof(e==null?void 0:e[0])=="function"){let r=e[0];i=r()}console.log(`[${this.ctxName}]`,...i)}static reg(e){if(!e){super.reg();return}e.startsWith(Da)&&super.reg(e)}};u(_,"StateConsumerScope",null),u(_,"styleAttrs",[]);var Vr="<svg width='0' height='0' style='position:absolute'><symbol viewBox='0 0 24 24' id='uc-icon-about' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.152 14.12v.1h1.523v-.1c.007-.409.053-.752.138-1.028.086-.277.22-.517.405-.72.188-.202.434-.397.735-.586.32-.191.593-.412.82-.66.232-.249.41-.531.533-.847.125-.32.187-.678.187-1.076 0-.579-.137-1.085-.41-1.518a2.717 2.717 0 0 0-1.14-1.018c-.49-.245-1.062-.367-1.715-.367-.597 0-1.142.114-1.636.34-.49.228-.884.564-1.182 1.008-.299.44-.46.98-.485 1.619h1.62c.024-.377.118-.684.282-.922a1.48 1.48 0 0 1 .617-.532c.25-.114.51-.17.784-.17.301 0 .575.063.82.191.248.124.447.302.597.533.149.23.223.504.223.82 0 .263-.05.502-.149.72a1.91 1.91 0 0 1-.405.574 3.48 3.48 0 0 1-.575.453 4.22 4.22 0 0 0-.847.66c-.234.242-.415.558-.543.949-.125.39-.19.916-.197 1.577Zm.053 3.03c.21.206.46.31.75.31.196 0 .374-.049.534-.144a1.1 1.1 0 0 0 .383-.384c.1-.163.15-.343.15-.538a1 1 0 0 0-.32-.746 1.019 1.019 0 0 0-.746-.314c-.291 0-.542.105-.751.314-.21.206-.314.455-.314.746 0 .295.104.547.314.756ZM24 12c0 6.627-5.373 12-12 12S0 18.627 0 12 5.373 0 12 0s12 5.373 12 12Zm-1.5 0c0 5.799-4.701 10.5-10.5 10.5S1.5 17.799 1.5 12 6.201 1.5 12 1.5 22.5 6.201 22.5 12Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-add' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M12.75 21a.75.75 0 0 1-1.5 0v-8.25H3a.75.75 0 0 1 0-1.5h8.25V3a.75.75 0 0 1 1.5 0v8.25H21a.75.75 0 0 1 0 1.5h-8.25V21Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-arrow-down' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.5 23.03a.75.75 0 0 0 .999 0l9.29-8.276a.75.75 0 0 0-.998-1.12l-8.042 7.164V1.53a.75.75 0 0 0-1.5 0v19.267l-8.04-7.163a.75.75 0 0 0-.998 1.12z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-back' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M20.251 12a.75.75 0 0 1-.75.75H6.067l5.72 5.85a.75.75 0 1 1-1.072 1.05L4.136 12.92a1.292 1.292 0 0 1 0-1.842l6.579-6.728a.75.75 0 1 1 1.072 1.048l-5.72 5.851H19.5a.75.75 0 0 1 .75.75Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-badge-error' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M13.6 18.4a1.6 1.6 0 1 1-3.2 0 1.6 1.6 0 0 1 3.2 0zM12 4.5A1.5 1.5 0 0 1 13.5 6v7a1.5 1.5 0 0 1-3 0V6A1.5 1.5 0 0 1 12 4.5z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-badge-success' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='m10.5 18.204 7.6-8.183a1.5 1.5 0 0 0-2.2-2.042l-5.4 5.817-2.4-2.586a1.5 1.5 0 1 0-2.2 2.041l4.6 4.953Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-box' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M1.01 4.148a.75.75 0 0 1 .75.75v4.348a4.437 4.437 0 0 1 2.988-1.153c1.734 0 3.23.992 3.978 2.438a4.478 4.478 0 0 1 3.978-2.438c2.49 0 4.488 2.044 4.488 4.543 0 2.5-1.999 4.544-4.488 4.544a4.478 4.478 0 0 1-3.978-2.438 4.478 4.478 0 0 1-3.978 2.438C2.26 17.18.26 15.135.26 12.636V4.898a.75.75 0 0 1 .75-.75Zm.75 8.488c0 1.692 1.348 3.044 2.988 3.044s2.989-1.352 2.989-3.044c0-1.691-1.349-3.043-2.989-3.043S1.76 10.945 1.76 12.636Zm10.944-3.043c-1.64 0-2.988 1.352-2.988 3.043 0 1.692 1.348 3.044 2.988 3.044s2.988-1.352 2.988-3.044c0-1.69-1.348-3.043-2.988-3.043Zm4.328-1.23a.75.75 0 0 1 1.052.128l2.333 2.983 2.333-2.983a.75.75 0 0 1 1.181.924l-2.562 3.277 2.562 3.276a.75.75 0 1 1-1.181.924l-2.333-2.983-2.333 2.983a.75.75 0 1 1-1.181-.924l2.562-3.276-2.562-3.277a.75.75 0 0 1 .129-1.052Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-camera' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M7.65 2.55a.75.75 0 0 1 .6-.3h7.5a.75.75 0 0 1 .6.3l2.025 2.7H21a3 3 0 0 1 3 3v10.5a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V8.25a3 3 0 0 1 3-3h2.625zm.975 1.2L6.6 6.45a.75.75 0 0 1-.6.3H3a1.5 1.5 0 0 0-1.5 1.5v10.5a1.5 1.5 0 0 0 1.5 1.5h18a1.5 1.5 0 0 0 1.5-1.5V8.25a1.5 1.5 0 0 0-1.5-1.5h-3a.75.75 0 0 1-.6-.3l-2.025-2.7zm3.375 6a3.375 3.375 0 1 0 0 6.75 3.375 3.375 0 0 0 0-6.75zm-4.875 3.375a4.875 4.875 0 1 1 9.75 0 4.875 4.875 0 0 1-9.75 0z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-camera-full' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M2 4.667a2 2 0 0 0-2 2V16a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6.667a2 2 0 0 0-2-2h-2.667l-2-2.667H6.667l-2 2.667H2Zm8 10a3.667 3.667 0 1 0 0-7.334 3.667 3.667 0 0 0 0 7.334Z' fill='currentColor'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-close' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M4.604 4.604a.75.75 0 0 1 1.06 0L12 10.939l6.335-6.335a.75.75 0 1 1 1.061 1.06L13.061 12l6.335 6.335a.75.75 0 1 1-1.06 1.061L12 13.061l-6.335 6.335a.75.75 0 0 1-1.061-1.06L10.939 12 4.604 5.665a.75.75 0 0 1 0-1.061z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-collapse' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M3.116 12a.75.75 0 0 1 .75-.75h16.268a.75.75 0 0 1 0 1.5H3.866a.75.75 0 0 1-.75-.75Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-default' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.501.392a.75.75 0 0 1 .998 0l6.704 5.972a.75.75 0 0 1-.998 1.12l-5.455-4.86v13.439a.75.75 0 0 1-1.5 0V2.625l-5.454 4.86a.75.75 0 1 1-.998-1.12zM.857 16.73a.75.75 0 0 1 .75.75v4.914h20.786v-4.914a.75.75 0 0 1 1.5 0v5.664a.75.75 0 0 1-.75.75H.857a.75.75 0 0 1-.75-.75v-5.664a.75.75 0 0 1 .75-.75z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-dropbox' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M6.019 1.92a.75.75 0 0 1 .806 0L12 5.219l5.176-3.297a.75.75 0 0 1 .806 0l5.577 3.553a.75.75 0 0 1 0 1.265l-4.574 2.914 4.574 2.914a.75.75 0 0 1 0 1.265l-5.577 3.554a.75.75 0 0 1-.806 0L12 14.089l-5.175 3.297a.75.75 0 0 1-.806 0L.44 13.833a.75.75 0 0 1 0-1.266l4.575-2.914L.44 6.74a.75.75 0 0 1 0-1.265zm.403 8.616L2.24 13.2l4.182 2.664 4.181-2.664zm6.975 2.664 4.182 2.664L21.76 13.2l-4.181-2.664zm2.776-3.547L12 12.311 7.828 9.653 12 6.995zm1.406-.882 4.181-2.664-4.181-2.664-4.182 2.664zm-6.976-2.664L6.422 3.443 2.24 6.107 6.422 8.77zM5.791 18.544a.75.75 0 0 1 1.035-.23l5.175 3.297 5.175-3.297a.75.75 0 1 1 .806 1.265l-5.578 3.554a.75.75 0 0 1-.806 0L6.02 19.579a.75.75 0 0 1-.23-1.035z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-edit-file' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M18.558 2.804a.78.78 0 0 0-.557.235l-.008.007-2.472 2.46 3.847 3.848 2.46-2.473.004-.003a.78.78 0 0 0 0-1.108l-.004-.003-2.712-2.728a.78.78 0 0 0-.558-.235Zm-.248 7.613-3.852-3.852-8.93 8.887-1.516 5.41 5.41-1.515 8.888-8.93Zm-.636-8.934a2.28 2.28 0 0 1 2.512.505l2.702 2.717.002.002a2.278 2.278 0 0 1 0 3.234l-.002.002-12.541 12.602a.75.75 0 0 1-.33.193l-6.884 1.928a.75.75 0 0 1-.925-.924l1.928-6.885a.75.75 0 0 1 .193-.33l12.603-12.54a2.28 2.28 0 0 1 .742-.504Z' clip-rule='evenodd'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-error' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M13 13h-2V7h2m0 10h-2v-2h2M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-evernote' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M9.804 2.27v-.048c.055-.263.313-.562.85-.562h.44c.142 0 .325.014.526.033.066.009.124.023.267.06l.13.032h.002c.319.079.515.275.644.482a1.461 1.461 0 0 1 .16.356l.004.012a.75.75 0 0 0 .603.577l1.191.207a1988.512 1988.512 0 0 0 2.332.402c.512.083 1.1.178 1.665.442.64.3 1.19.795 1.376 1.77.548 2.931.657 5.829.621 8a39.233 39.233 0 0 1-.125 2.602 17.518 17.518 0 0 1-.092.849.735.735 0 0 0-.024.112c-.378 2.705-1.269 3.796-2.04 4.27-.746.457-1.53.451-2.217.447h-.192c-.46 0-1.073-.23-1.581-.635-.518-.412-.763-.87-.763-1.217 0-.45.188-.688.355-.786.161-.095.436-.137.796.087a.75.75 0 1 0 .792-1.274c-.766-.476-1.64-.52-2.345-.108-.7.409-1.098 1.188-1.098 2.08 0 .996.634 1.84 1.329 2.392.704.56 1.638.96 2.515.96l.185.002c.667.009 1.874.025 3.007-.67 1.283-.786 2.314-2.358 2.733-5.276a4.213 4.213 0 0 0 .056-.335c.023-.184.051-.445.079-.772.055-.655.111-1.585.13-2.704.037-2.234-.074-5.239-.647-8.301v-.002c-.294-1.544-1.233-2.391-2.215-2.85-.777-.363-1.623-.496-2.129-.576a8.872 8.872 0 0 1-.25-.041l-.006-.001-1.99-.345-.761-.132a2.93 2.93 0 0 0-.182-.338A2.532 2.532 0 0 0 12.379.329l-.091-.023a3.967 3.967 0 0 0-.493-.103L11.769.2a7.846 7.846 0 0 0-.675-.04h-.44c-.733 0-1.368.284-1.795.742L2.416 7.431c-.468.428-.751 1.071-.751 1.81 0 .02 0 .041.003.062l.003.034c.017.21.038.468.096.796.107.715.275 1.47.391 1.994.029.13.055.245.075.342l.002.008c.258 1.141.641 1.94.978 2.466.168.263.323.456.444.589a2.808 2.808 0 0 0 .192.194c1.536 1.562 3.713 2.196 5.731 2.08.13-.005.35-.032.537-.073a2.627 2.627 0 0 0 .652-.24c.425-.26.75-.661.992-1.046.184-.294.342-.61.473-.915a3.8 3.8 0 0 0 .627.493 5.022 5.022 0 0 0 1.97.709l.023.002.018.003.11.016c.088.014.205.035.325.058l.056.014c.088.022.164.04.235.061a1.736 1.736 0 0 1 .145.048l.03.014c.765.34 1.302 1.09 1.302 1.871a.75.75 0 0 0 1.5 0c0-1.456-.964-2.69-2.18-3.235a3.595 3.595 0 0 0-.679-.217l-.063-.015a10.616 10.616 0 0 0-.606-.105l-.02-.003-.03-.003h-.002a3.542 3.542 0 0 1-1.331-.485c-.471-.298-.788-.692-.828-1.234a.75.75 0 0 0-1.48-.106l-.001.003-.004.017a8.23 8.23 0 0 1-.092.352 9.963 9.963 0 0 1-.298.892c-.132.34-.29.68-.47.966-.174.276-.339.454-.478.549a1.178 1.178 0 0 1-.221.072 1.949 1.949 0 0 1-.241.036h-.013l-.032.002c-1.684.1-3.423-.437-4.604-1.65a.746.746 0 0 0-.053-.05L4.84 14.6a1.348 1.348 0 0 1-.07-.073 2.99 2.99 0 0 1-.293-.392c-.242-.379-.558-1.014-.778-1.985a54.1 54.1 0 0 0-.083-.376 27.494 27.494 0 0 1-.367-1.872l-.003-.02a6.791 6.791 0 0 1-.08-.67c.004-.277.086-.475.2-.609l.067-.067a.63.63 0 0 1 .292-.145h.05c.18 0 1.095.055 2.013.115l1.207.08.534.037a.747.747 0 0 0 .052.002c.782 0 1.349-.206 1.759-.585l.005-.005c.553-.52.622-1.225.622-1.76V6.24l-.026-.565A774.97 774.97 0 0 1 9.885 4.4c-.042-.961-.081-1.939-.081-2.13ZM4.995 6.953a251.126 251.126 0 0 1 2.102.137l.508.035c.48-.004.646-.122.715-.185.07-.068.146-.209.147-.649l-.024-.548a791.69 791.69 0 0 1-.095-2.187L4.995 6.953Zm16.122 9.996Zm-5.479-5.323a.75.75 0 0 0 1.014.31 2.04 2.04 0 0 1 .304-.089 1.84 1.84 0 0 1 .544-.039c.215.023.321.06.37.085.033.016.039.026.047.04a.75.75 0 0 0 1.289-.767c-.337-.567-.906-.783-1.552-.85a3.334 3.334 0 0 0-1.002.062c-.27.056-.531.14-.705.234a.75.75 0 0 0-.31 1.014Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-expand' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='m12 8.337-8.47 8.47a.75.75 0 0 1-1.06-1.06l8.605-8.606a1.29 1.29 0 0 1 1.85 0l8.605 8.605a.75.75 0 1 1-1.06 1.06L12 8.338Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-external-source-placeholder' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M6.341 3.27a10.5 10.5 0 0 1 5.834-1.77.75.75 0 0 0 0-1.5 12 12 0 1 0 12 12 .75.75 0 0 0-1.5 0A10.5 10.5 0 1 1 6.34 3.27Zm14.145 1.48a.75.75 0 1 0-1.06-1.062L9.925 13.19V7.95a.75.75 0 1 0-1.5 0V15c0 .414.336.75.75.75h7.05a.75.75 0 0 0 0-1.5h-5.24l9.501-9.5Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-facebook' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M12 1.5C6.201 1.5 1.5 6.201 1.5 12c0 4.943 3.416 9.089 8.016 10.204v-6.108H7.383a.75.75 0 0 1-.75-.75v-3.281a.75.75 0 0 1 .75-.75h2.133V9.393c0-.958.225-2.511 1.38-3.65 1.194-1.177 3.174-1.718 6.254-1.056a.75.75 0 0 1 .592.733v2.754a.75.75 0 0 1-.75.75c-.692 0-1.203.026-1.584.082-.387.057-.578.137-.675.202-.109.073-.237.205-.237 1.029v1.078h2.39a.75.75 0 0 1 .742.866l-.516 3.281a.75.75 0 0 1-.74.634h-1.876v6.106C19.09 21.082 22.5 16.939 22.5 12c0-5.799-4.701-10.5-10.5-10.5zM0 12C0 5.373 5.373 0 12 0s12 5.373 12 12c0 5.995-4.395 10.961-10.138 11.856a.75.75 0 0 1-.866-.74v-7.77a.75.75 0 0 1 .75-.75h1.984l.28-1.781h-2.264a.75.75 0 0 1-.75-.75v-1.828c0-.829.089-1.729.9-2.274.363-.244.807-.37 1.293-.441a9.623 9.623 0 0 1 1.053-.086V6.04c-2.41-.405-3.645.132-4.293.771-.737.728-.933 1.793-.933 2.582v2.672a.75.75 0 0 1-.75.75H8.133v1.78h2.133a.75.75 0 0 1 .75.75v7.772a.75.75 0 0 1-.865.741C4.4 22.968 0 18 0 12z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-file' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M2.895 1.201c0-.473.383-.857.857-.857h8.4c.227 0 .445.09.606.251l8.4 8.4c.16.16.25.379.25.606v13.2a.857.857 0 0 1-.856.857h-16.8a.857.857 0 0 1-.857-.857zm1.714.857v19.886h15.085V10.458h-7.542a.857.857 0 0 1-.858-.857V2.058zm8.4 1.213 5.473 5.473H13.01z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-flickr' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M5.959 7.926c-2.298 0-4.14 1.834-4.14 4.073 0 2.241 1.842 4.075 4.14 4.075 2.302 0 4.145-1.834 4.145-4.075 0-2.238-1.843-4.073-4.145-4.073Zm-5.64 4.073c0-3.086 2.533-5.573 5.64-5.573 3.11 0 5.645 2.486 5.645 5.573 0 3.089-2.535 5.575-5.645 5.575-3.107 0-5.64-2.487-5.64-5.575Zm18.07-4.073c-2.301 0-4.144 1.835-4.144 4.073 0 2.24 1.843 4.075 4.145 4.075 2.299 0 4.141-1.834 4.141-4.075 0-2.239-1.842-4.073-4.141-4.073Zm-5.644 4.073c0-3.087 2.535-5.573 5.645-5.573 3.108 0 5.641 2.487 5.641 5.573 0 3.088-2.533 5.575-5.641 5.575-3.11 0-5.645-2.486-5.645-5.575Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-gdrive' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M7.736 1.818a.75.75 0 0 1 .647-.37h7.587a.75.75 0 0 1 .655.383l7.233 12.946a.75.75 0 0 1-.003.737l-3.794 6.66a.75.75 0 0 1-.651.378H4.59a.75.75 0 0 1-.651-.378l-3.794-6.66a.75.75 0 0 1 .005-.75zm.64 1.876L1.663 15.148l2.93 5.145 6.655-11.581zm3.736 6.526-2.398 4.173H14.5zm4.116 4.173h5.697L15.53 2.947H9.677zm5.685 1.5H8.852l-2.966 5.16h13.088z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-gphotos' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M12.51 0c-.702 0-1.272.57-1.272 1.273V7.35A6.381 6.381 0 0 0 0 11.489c0 .703.57 1.273 1.273 1.273H7.35A6.381 6.381 0 0 0 11.488 24c.704 0 1.274-.57 1.274-1.273V16.65A6.381 6.381 0 0 0 24 12.51c0-.703-.57-1.273-1.273-1.273H16.65A6.381 6.381 0 0 0 12.511 0Zm.252 11.232V1.53a4.857 4.857 0 0 1 0 9.702Zm-1.53.006H1.53a4.857 4.857 0 0 1 9.702 0Zm1.536 1.524a4.857 4.857 0 0 0 9.702 0h-9.702Zm-6.136 4.857c0-2.598 2.04-4.72 4.606-4.85v9.7a4.857 4.857 0 0 1-4.606-4.85Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-huddle' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M6.204 2.002c-.252.23-.357.486-.357.67V21.07c0 .15.084.505.313.812.208.28.499.477.929.477.519 0 .796-.174.956-.365.178-.212.286-.535.286-.924v-.013l.117-6.58c.004-1.725 1.419-3.883 3.867-3.883 1.33 0 2.332.581 2.987 1.364.637.762.95 1.717.95 2.526v6.47c0 .392.11.751.305.995.175.22.468.41 1.008.41.52 0 .816-.198 1.002-.437.207-.266.31-.633.31-.969V14.04c0-2.81-1.943-5.108-4.136-5.422a5.971 5.971 0 0 0-3.183.41c-.912.393-1.538.96-1.81 1.489a.75.75 0 0 1-1.417-.344v-7.5c0-.587-.47-1.031-1.242-1.031-.315 0-.638.136-.885.36ZM5.194.892A2.844 2.844 0 0 1 7.09.142c1.328 0 2.742.867 2.742 2.53v5.607a6.358 6.358 0 0 1 1.133-.629 7.47 7.47 0 0 1 3.989-.516c3.056.436 5.425 3.482 5.425 6.906v6.914c0 .602-.177 1.313-.627 1.89-.47.605-1.204 1.016-2.186 1.016-.96 0-1.698-.37-2.179-.973-.46-.575-.633-1.294-.633-1.933v-6.469c0-.456-.19-1.071-.602-1.563-.394-.471-.986-.827-1.836-.827-1.447 0-2.367 1.304-2.367 2.39v.014l-.117 6.58c-.001.64-.177 1.333-.637 1.881-.48.57-1.2.9-2.105.9-.995 0-1.7-.5-2.132-1.081-.41-.552-.61-1.217-.61-1.708V2.672c0-.707.366-1.341.847-1.78Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-info' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11 9h2V7h-2m1 13c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m0-18A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2m-1 15h2v-6h-2v6Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-local' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M3 3.75a1.5 1.5 0 0 0-1.5 1.5v13.5a1.5 1.5 0 0 0 1.5 1.5h18a1.5 1.5 0 0 0 1.5-1.5V9A1.5 1.5 0 0 0 21 7.5h-9a.75.75 0 0 1-.643-.364L9.325 3.75zm-3 1.5a3 3 0 0 1 3-3h6.75a.75.75 0 0 1 .643.364L12.425 6H21a3 3 0 0 1 3 3v9.75a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-microphone' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' clip-rule='evenodd' d='M7.5 4.781a4.5 4.5 0 0 1 9 0v6.469a4.5 4.5 0 1 1-9 0V4.781Zm4.5-3a3 3 0 0 0-3 3v6.469a3 3 0 1 0 6 0V4.781a3 3 0 0 0-3-3Zm-8.156 8.11a.75.75 0 0 1 .75.75 7.406 7.406 0 1 0 14.812 0 .75.75 0 0 1 1.5 0 8.907 8.907 0 0 1-8.156 8.875v2.703h3.258a.75.75 0 1 1 0 1.5H7.992a.75.75 0 0 1 0-1.5h3.258v-2.703a8.907 8.907 0 0 1-8.156-8.875.75.75 0 0 1 .75-.75Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-microphone-mute' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' clip-rule='evenodd' d='M7.5 4.781a4.5 4.5 0 0 1 9 0V6l3.524-3.524a.75.75 0 1 1 1.061 1.06L5.036 19.585a.75.75 0 0 1-1.06-1.06l1.656-1.657a8.88 8.88 0 0 1-2.538-6.227.75.75 0 0 1 1.5 0c0 2.009.8 3.83 2.1 5.166l1.771-1.772A4.483 4.483 0 0 1 7.5 11.25V4.781Zm2.037 8.182L15 7.5V4.781a3 3 0 1 0-6 0v6.469c0 .637.198 1.227.537 1.713Zm10.62-3.072a.75.75 0 0 1 .75.75 8.907 8.907 0 0 1-8.157 8.875v2.703h3.258a.75.75 0 1 1 0 1.5H7.992a.75.75 0 0 1 0-1.5h3.258v-2.703a8.855 8.855 0 0 1-3.035-.811.75.75 0 1 1 .638-1.358 7.406 7.406 0 0 0 10.553-6.707.75.75 0 0 1 .75-.75ZM15 10.81a.75.75 0 0 1 1.5 0v.439a4.5 4.5 0 0 1-5 4.473.75.75 0 1 1 .166-1.491A3 3 0 0 0 15 11.25v-.44Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-mobile-photo-camera' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M7.65 2.55a.75.75 0 0 1 .6-.3h7.5a.75.75 0 0 1 .6.3l2.025 2.7H21a3 3 0 0 1 3 3v10.5a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V8.25a3 3 0 0 1 3-3h2.625zm.975 1.2L6.6 6.45a.75.75 0 0 1-.6.3H3a1.5 1.5 0 0 0-1.5 1.5v10.5a1.5 1.5 0 0 0 1.5 1.5h18a1.5 1.5 0 0 0 1.5-1.5V8.25a1.5 1.5 0 0 0-1.5-1.5h-3a.75.75 0 0 1-.6-.3l-2.025-2.7zm3.375 6a3.375 3.375 0 1 0 0 6.75 3.375 3.375 0 0 0 0-6.75zm-4.875 3.375a4.875 4.875 0 1 1 9.75 0 4.875 4.875 0 0 1-9.75 0z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-mobile-video-camera' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' clip-rule='evenodd' d='M0 6.75a3 3 0 0 1 3-3h12a3 3 0 0 1 3 3v1.078L22.873 5A.75.75 0 0 1 24 5.648v12.704a.75.75 0 0 1-1.123.65L18 16.207v1.043a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V6.75Zm18 7.728 4.5 2.58V6.95L18 9.562v4.916ZM16.5 6.75a1.5 1.5 0 0 0-1.5-1.5H3a1.5 1.5 0 0 0-1.5 1.5v10.5a1.5 1.5 0 0 0 1.5 1.5h12a1.5 1.5 0 0 0 1.5-1.5V6.75Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-onedrive' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M13.616 4.147a7.689 7.689 0 0 0-7.642 3.285A6.299 6.299 0 0 0 1.455 17.3c.684.894 2.473 2.658 5.17 2.658h12.141c.95 0 1.882-.256 2.697-.743.815-.486 1.514-1.247 1.964-2.083a5.26 5.26 0 0 0-3.713-7.612 7.69 7.69 0 0 0-6.098-5.373ZM3.34 17.15c.674.63 1.761 1.308 3.284 1.308h12.142a3.76 3.76 0 0 0 2.915-1.383l-7.494-4.489L3.34 17.15Zm10.875-6.25 2.47-1.038a5.239 5.239 0 0 1 1.427-.389 6.19 6.19 0 0 0-10.3-1.952 6.338 6.338 0 0 1 2.118.813l4.285 2.567Zm4.55.033c-.512 0-1.019.104-1.489.307l-.006.003-1.414.594 6.521 3.906a3.76 3.76 0 0 0-3.357-4.8l-.254-.01ZM4.097 9.617A4.799 4.799 0 0 1 6.558 8.9c.9 0 1.84.25 2.587.713l3.4 2.037-10.17 4.28a4.799 4.799 0 0 1 1.721-6.312Z'/></symbol><symbol fill='none' viewBox='0 0 10 10' id='uc-icon-pause' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' d='M1 0h2.5v10H1zM6.5 0H9v10H6.5z'/></symbol><symbol fill='none' viewBox='0 0 10 10' id='uc-icon-play' xmlns='http://www.w3.org/2000/svg'><path d='m1 0 9 5-9 5V0Z' fill='currentColor'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-remove-file' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.955 3.3A2.969 2.969 0 0 0 8.998 6h5.914a2.97 2.97 0 0 0-2.957-2.7zM16.416 6a4.47 4.47 0 0 0-8.922 0h-2.32a.755.755 0 0 0-.111.008H3.075a.75.75 0 1 0 0 1.5h1.35V19.35a2.85 2.85 0 0 0 2.85 2.85h9.45a2.85 2.85 0 0 0 2.85-2.85V7.508h1.35a.75.75 0 0 0 0-1.5h-1.989A.754.754 0 0 0 18.825 6zM5.925 7.508V19.35a1.35 1.35 0 0 0 1.35 1.35h9.45a1.35 1.35 0 0 0 1.35-1.35V7.508z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-select' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='m7 10 5 5 5-5H7Z'/></symbol><symbol fill='none' viewBox='0 0 20 20' id='uc-icon-square' xmlns='http://www.w3.org/2000/svg'><rect width='20' height='20' rx='4' fill='#fff'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-upload' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M11.501.392a.75.75 0 0 1 .998 0l6.704 5.972a.75.75 0 0 1-.998 1.12l-5.455-4.86v13.439a.75.75 0 0 1-1.5 0V2.625l-5.454 4.86a.75.75 0 1 1-.998-1.12zM.857 16.73a.75.75 0 0 1 .75.75v4.914h20.786v-4.914a.75.75 0 0 1 1.5 0v5.664a.75.75 0 0 1-.75.75H.857a.75.75 0 0 1-.75-.75v-5.664a.75.75 0 0 1 .75-.75z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-upload-error' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M13 13h-2V7h2m0 10h-2v-2h2M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2Z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-url' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M19.11 3.67c-1.71-1.709-4.578-1.682-6.408.148l-2.22 2.22a.75.75 0 0 1-1.062-1.06l2.222-2.221C14.018.381 17.836.276 20.17 2.61l1.22 1.22c2.335 2.334 2.23 6.153-.147 8.529l-2.22 2.22a.75.75 0 0 1-1.062-1.06l2.222-2.221c1.83-1.83 1.856-4.698.147-6.408zm-3.36 4.58a.75.75 0 0 1 0 1.06l-6.439 6.44a.75.75 0 0 1-1.06-1.06l6.439-6.44a.75.75 0 0 1 1.06 0zM6.04 9.42a.75.75 0 0 1 0 1.061l-2.222 2.222c-1.83 1.83-1.856 4.698-.147 6.407l1.22 1.22c1.71 1.71 4.578 1.683 6.408-.147l2.221-2.221a.75.75 0 1 1 1.06 1.06l-2.22 2.222c-2.377 2.376-6.195 2.481-8.53.147l-1.22-1.22c-2.334-2.334-2.228-6.153.148-8.53l2.221-2.22a.75.75 0 0 1 1.06 0z'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-video-camera' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' clip-rule='evenodd' d='M0 6.75a3 3 0 0 1 3-3h12a3 3 0 0 1 3 3v1.078L22.873 5A.75.75 0 0 1 24 5.648v12.704a.75.75 0 0 1-1.123.65L18 16.207v1.043a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3V6.75Zm18 7.728 4.5 2.58V6.95L18 9.562v4.916ZM16.5 6.75a1.5 1.5 0 0 0-1.5-1.5H3a1.5 1.5 0 0 0-1.5 1.5v10.5a1.5 1.5 0 0 0 1.5 1.5h12a1.5 1.5 0 0 0 1.5-1.5V6.75Z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-video-camera-full' xmlns='http://www.w3.org/2000/svg'><path d='M2 3.333a2 2 0 0 0-2 2v9.334a2 2 0 0 0 2 2h10.938a2 2 0 0 0 2-2v-2.013L20 15.646V4.354l-5.063 3.03v-2.05a2 2 0 0 0-2-2H2Z' fill='currentColor'/></symbol><symbol viewBox='0 0 24 24' id='uc-icon-vk' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' fill-rule='evenodd' d='M6.341 3.27a10.5 10.5 0 0 1 5.834-1.77.75.75 0 0 0 0-1.5 12 12 0 1 0 12 12 .75.75 0 0 0-1.5 0A10.5 10.5 0 1 1 6.34 3.27Zm14.145 1.48a.75.75 0 1 0-1.06-1.062L9.925 13.19V7.95a.75.75 0 1 0-1.5 0V15c0 .414.336.75.75.75h7.05a.75.75 0 0 0 0-1.5h-5.24l9.501-9.5Z'/></symbol></svg>";var le=class extends _{constructor(){super(...arguments);u(this,"requireCtxName",!0);u(this,"init$",Jt(this));u(this,"_template",null)}initCallback(){var e;super.initCallback(),(e=this.a11y)==null||e.registerBlock(this)}static set template(e){this._template=Vr+e+"<slot></slot>"}static get template(){return this._template}};u(le,"styleAttrs",["uc-wgt-common"]);var Br="active",ut="___ACTIVITY_IS_ACTIVE___",Ce=class Ce extends _{constructor(){super(...arguments);u(this,"historyTracked",!1);u(this,"init$",hs(this));u(this,"_debouncedHistoryFlush",O(this._historyFlush.bind(this),10))}_deactivate(){var i;let e=Ce._activityCallbacks.get(this);this[ut]=!1,this.removeAttribute(Br),(i=e==null?void 0:e.deactivateCallback)==null||i.call(e)}_activate(){var i;let e=Ce._activityCallbacks.get(this);this.$["*historyBack"]=this.historyBack.bind(this),this[ut]=!0,this.setAttribute(Br,""),(i=e==null?void 0:e.activateCallback)==null||i.call(e),this._debouncedHistoryFlush(),this.emit(k.ACTIVITY_CHANGE,{activity:this.activityType})}initCallback(){super.initCallback(),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",e=>{var i;try{this.activityType!==e&&this[ut]?this._deactivate():this.activityType===e&&!this[ut]&&this._activate()}catch(r){console.error(`Error in activity "${this.activityType}". `,r),this.$["*currentActivity"]=(i=this.$["*history"][this.$["*history"].length-1])!=null?i:null}e||(this.$["*history"]=[])}))}_historyFlush(){let e=this.$["*history"];e&&(e.length>10&&(e=e.slice(e.length-11,e.length-1)),this.historyTracked&&e[e.length-1]!==this.activityType&&e.push(this.activityType),this.$["*history"]=e)}_isActivityRegistered(){return this.activityType&&Ce._activityCallbacks.has(this)}get isActivityActive(){return this[ut]}get couldOpenActivity(){return!0}registerActivity(e,i={}){let{onActivate:r,onDeactivate:o}=i;Ce._activityCallbacks.set(this,{activateCallback:r,deactivateCallback:o})}unregisterActivity(){this.isActivityActive&&this._deactivate(),Ce._activityCallbacks.delete(this)}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity();let e=this.$["*currentActivity"];!![...this.blocksRegistry].find(r=>r instanceof Ce&&r.activityType===e)||(this.$["*currentActivity"]=null,this.modalManager.closeAll())}get activityKey(){return this.ctxName+this.activityType}get activityParams(){return this.$["*currentActivityParams"]}get initActivity(){return this.getCssData("--cfg-init-activity")}get doneActivity(){return this.getCssData("--cfg-done-activity")}historyBack(){var i;let e=this.$["*history"];if(e){let r=e.pop();for(;r===this.activityType;)r=e.pop();let o=!!r;if(r){let n=[...this.blocksRegistry].find(a=>a.activityType===r);o=(i=n==null?void 0:n.couldOpenActivity)!=null?i:!1}r=o?r:void 0,r&&this.modalManager.open(r),this.$["*currentActivity"]=r,this.$["*history"]=e,r||this.modalManager.closeAll()}}};u(Ce,"_activityCallbacks",new Map);var g=Ce;g.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external"});var dt=33.333333333333336,x=1,bs=24,zr=6;function Ue(s,t){for(let e in t)s.setAttributeNS(null,e,t[e].toString())}function ee(s,t={}){let e=document.createElementNS("http://www.w3.org/2000/svg",s);return Ue(e,t),e}function Hr(s,t,e){let{x:i,y:r,width:o,height:n}=s,a=t.includes("w")?0:1,l=t.includes("n")?0:1,c=[-1,1][a],h=[-1,1][l],d=[i+a*o+1.5*c,r+l*n+1.5*h-24*e*h],p=[i+a*o+1.5*c,r+l*n+1.5*h],m=[i+a*o-24*e*c+1.5*c,r+l*n+1.5*h];return{d:`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]} L ${m[0]} ${m[1]}`,center:p}}function jr(s,t,e){let{x:i,y:r,width:o,height:n}=s,a=["n","s"].includes(t)?.5:{w:0,e:1}[t],l=["w","e"].includes(t)?.5:{n:0,s:1}[t],c=[-1,1][a],h=[-1,1][l],d,p;["n","s"].includes(t)?(d=[i+a*o-34*e/2,r+l*n+1.5*h],p=[i+a*o+34*e/2,r+l*n+1.5*h]):(d=[i+a*o+1.5*c,r+l*n-34*e/2],p=[i+a*o+1.5*c,r+l*n+34*e/2]);let m=`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]}`,f=[p[0]-(p[0]-d[0])/2,p[1]-(p[1]-d[1])/2];return{d:m,center:f}}function Gr(s){return s===""?"move":["e","w"].includes(s)?"ew-resize":["n","s"].includes(s)?"ns-resize":["nw","se"].includes(s)?"nwse-resize":"nesw-resize"}function Wr({rect:s,delta:[t,e],imageBox:i}){return je({...s,x:s.x+t,y:s.y+e},i)}function je(s,t){let{x:e}=s,{y:i}=s;return s.x<t.x?e=t.x:s.x+s.width>t.x+t.width&&(e=t.x+t.width-s.width),s.y<t.y?i=t.y:s.y+s.height>t.y+t.height&&(i=t.y+t.height-s.height),{...s,x:e,y:i}}function Fa({rect:s,delta:t,aspectRatio:e,imageBox:i}){let[,r]=t,{y:o,width:n,height:a}=s;o+=r,a-=r,e&&(n=a*e);let l=s.x+s.width/2-n/2;return o<=i.y&&(o=i.y,a=s.y+s.height-o,e&&(n=a*e,l=s.x+s.width/2-n/2)),l<=i.x&&(l=i.x,o=s.y+s.height-a),l+n>=i.x+i.width&&(l=Math.max(i.x,i.x+i.width-n),n=i.x+i.width-l,e&&(a=n/e),o=s.y+s.height-a),a<x&&(a=x,e&&(n=a*e,l=s.x+s.width/2-n/2),o=s.y+s.height-a),n<x&&(n=x,e&&(a=n/e,l=s.x+s.width/2-n/2),o=s.y+s.height-a),{x:l,y:o,width:n,height:a}}function Na({rect:s,delta:t,aspectRatio:e,imageBox:i}){let[r]=t,{x:o,width:n,height:a}=s;o+=r,n-=r,e&&(a=n/e);let l=s.y+s.height/2-a/2;return o<=i.x&&(o=i.x,n=s.x+s.width-o,e&&(a=n/e,l=s.y+s.height/2-a/2)),l<=i.y&&(l=i.y,o=s.x+s.width-n),l+a>=i.y+i.height&&(l=Math.max(i.y,i.y+i.height-a),a=i.y+i.height-l,e&&(n=a*e),o=s.x+s.width-n),a<x&&(a=x,e&&(n=a*e),l=s.y+s.height/2-a/2,o=s.x+s.width-n),n<x&&(n=x,e&&(a=n/e),l=s.y+s.height/2-a/2,o=s.x+s.width-n),{x:o,y:l,width:n,height:a}}function Va({rect:s,delta:t,aspectRatio:e,imageBox:i}){let[,r]=t,{y:o,width:n,height:a}=s;a+=r,e&&(n=a*e);let l=s.x+s.width/2-n/2;return o+a>=i.y+i.height&&(a=i.y+i.height-o,e&&(n=a*e),l=s.x+s.width/2-n/2),l<=i.x&&(l=i.x,o=s.y),l+n>=i.x+i.width&&(l=Math.max(i.x,i.x+i.width-n),n=i.x+i.width-l,e&&(a=n/e),o=s.y),a<x&&(a=x,e&&(n=a*e),l=s.x+s.width/2-n/2),n<x&&(n=x,e&&(a=n/e),l=s.x+s.width/2-n/2),{x:l,y:o,width:n,height:a}}function Ba({rect:s,delta:t,aspectRatio:e,imageBox:i}){let[r]=t,{x:o,width:n,height:a}=s;n+=r,e&&(a=n/e);let l=s.y+s.height/2-a/2;return o+n>=i.x+i.width&&(n=i.x+i.width-o,e&&(a=n/e),l=s.y+s.height/2-a/2),l<=i.y&&(l=i.y,o=s.x),l+a>=i.y+i.height&&(l=Math.max(i.y,i.y+i.height-a),a=i.y+i.height-l,e&&(n=a*e),o=s.x),a<x&&(a=x,e&&(n=a*e),l=s.y+s.height/2-a/2),n<x&&(n=x,e&&(a=n/e),l=s.y+s.height/2-a/2),{x:o,y:l,width:n,height:a}}function za({rect:s,delta:t,aspectRatio:e,imageBox:i}){let[r,o]=t,{x:n,y:a,width:l,height:c}=s;return n+r<i.x&&(r=i.x-n),a+o<i.y&&(o=i.y-a),n+=r,l-=r,a+=o,c-=o,e&&Math.abs(l/c)>e?(o=l/e-c,c+=o,a-=o,a<=i.y&&(c=c-(i.y-a),l=c*e,n=s.x+s.width-l,a=i.y)):e&&(r=c*e-l,l=l+r,n-=r,n<=i.x&&(l=l-(i.x-n),c=l/e,n=i.x,a=s.y+s.height-c)),c<x&&(c=x,e&&(l=c*e),n=s.x+s.width-l,a=s.y+s.height-c),l<x&&(l=x,e&&(c=l/e),n=s.x+s.width-l,a=s.y+s.height-c),{x:n,y:a,width:l,height:c}}function Ha({rect:s,delta:t,aspectRatio:e,imageBox:i}){let[r,o]=t,{x:n,y:a,width:l,height:c}=s;return n+l+r>i.x+i.width&&(r=i.x+i.width-n-l),a+o<i.y&&(o=i.y-a),l+=r,a+=o,c-=o,e&&Math.abs(l/c)>e?(o=l/e-c,c+=o,a-=o,a<=i.y&&(c=c-(i.y-a),l=c*e,n=s.x,a=i.y)):e&&(r=c*e-l,l+=r,n+l>=i.x+i.width&&(l=i.x+i.width-n,c=l/e,n=i.x+i.width-l,a=s.y+s.height-c)),c<x&&(c=x,e&&(l=c*e),a=s.y+s.height-c),l<x&&(l=x,e&&(c=l/e),a=s.y+s.height-c),{x:n,y:a,width:l,height:c}}function ja({rect:s,delta:t,aspectRatio:e,imageBox:i}){let[r,o]=t,{x:n,y:a,width:l,height:c}=s;return n+r<i.x&&(r=i.x-n),a+c+o>i.y+i.height&&(o=i.y+i.height-a-c),n+=r,l-=r,c+=o,e&&Math.abs(l/c)>e?(o=l/e-c,c+=o,a+c>=i.y+i.height&&(c=i.y+i.height-a,l=c*e,n=s.x+s.width-l,a=i.y+i.height-c)):e&&(r=c*e-l,l+=r,n-=r,n<=i.x&&(l=l-(i.x-n),c=l/e,n=i.x,a=s.y)),c<x&&(c=x,e&&(l=c*e),n=s.x+s.width-l),l<x&&(l=x,e&&(c=l/e),n=s.x+s.width-l),{x:n,y:a,width:l,height:c}}function Ga({rect:s,delta:t,aspectRatio:e,imageBox:i}){let[r,o]=t,{x:n,y:a,width:l,height:c}=s;return n+l+r>i.x+i.width&&(r=i.x+i.width-n-l),a+c+o>i.y+i.height&&(o=i.y+i.height-a-c),l+=r,c+=o,e&&Math.abs(l/c)>e?(o=l/e-c,c+=o,a+c>=i.y+i.height&&(c=i.y+i.height-a,l=c*e,n=s.x,a=i.y+i.height-c)):e&&(r=c*e-l,l+=r,n+l>=i.x+i.width&&(l=i.x+i.width-n,c=l/e,n=i.x+i.width-l,a=s.y)),c<x&&(c=x,e&&(l=c*e)),l<x&&(l=x,e&&(c=l/e)),{x:n,y:a,width:l,height:c}}function Xr({direction:s,...t}){switch(s){case"n":return Fa(t);case"w":return Na(t);case"s":return Va(t);case"e":return Ba(t);case"nw":return za(t);case"ne":return Ha(t);case"sw":return ja(t);case"se":return Ga(t);default:return t.rect}}function qr(s,[t,e]){return s.x<=t&&t<=s.x+s.width&&s.y<=e&&e<=s.y+s.height}function Kr(s,t){return s.x>=t.x&&s.y>=t.y&&s.x+s.width<=t.x+t.width&&s.y+s.height<=t.y+t.height}function Zr(s,t){return Math.abs(s.width/s.height-t)<.1}function Ge({width:s,height:t},e){let i=e/90%2!==0;return{width:i?t:s,height:i?s:t}}function Yr(s,t,e){let i=s/t,r,o;i>e?(r=Math.round(t*e),o=t):(r=s,o=Math.round(s/e));let n=Math.round((s-r)/2),a=Math.round((t-o)/2);return n+r>s&&(r=s-n),a+o>t&&(o=t-a),{x:n,y:a,width:r,height:o}}function We(s){return{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}}function ke(s,t,e){return Math.min(Math.max(s,t),e)}var ri=s=>{if(!s)return[];let[t,e]=s.split(":").map(Number);if(!Number.isFinite(t)||!Number.isFinite(e)){console.error(`Invalid crop preset: ${s}`);return}return[{type:"aspect-ratio",width:t,height:e}]};var Xe="blocks",qe="1.14.0";function Jr(s){return os({...s,libraryName:Xe,libraryVersion:qe})}var Qr=s=>Math.floor(s/1e3),eo=(s,{threshold:t})=>{let{secureExpire:e}=s,i=Qr(Date.now()),r=Number(e),o=Qr(t);return i+o>=r};var oi=class{constructor(t){u(this,"_block");u(this,"_secureToken",null);this._block=t}_debugPrint(...t){this._block.debugPrint("[secure-uploads]",...t)}async getSecureToken(){let{secureSignature:t,secureExpire:e,secureUploadsSignatureResolver:i}=this._block.cfg;if((t||e)&&i&&console.warn("Both secureSignature/secureExpire and secureUploadsSignatureResolver are set. secureUploadsSignatureResolver will be used."),i){if(!this._secureToken||eo(this._secureToken,{threshold:this._block.cfg.secureUploadsExpireThreshold})){this._secureToken?this._debugPrint("Secure signature is expired. Resolving a new one..."):this._debugPrint("Secure signature is not set yet.");try{let r=await i();r?!r.secureSignature||!r.secureExpire?console.error("Secure signature resolver returned an invalid result:",r):(this._debugPrint("Secure signature resolved:",r),this._debugPrint("Secure signature will expire in",new Date(Number(r.secureExpire)*1e3).toISOString()),this._secureToken=r):(this._debugPrint("Secure signature resolver returned nothing."),this._secureToken=null)}catch(r){console.error("Secure signature resolving failed. Falling back to the previous one.",r)}}return this._secureToken}return t&&e?(this._debugPrint("Secure signature and expire are set. Using them...",{secureSignature:t,secureExpire:e}),{secureSignature:t,secureExpire:e}):null}};var to="[Typed State] Wrong property name: ",Wa="[Typed State] Wrong property type: ",ni=class{constructor(t,e){this.__typedSchema=t,this.__ctxId=e||Ve.generate(),this.__schema=Object.keys(t).reduce((i,r)=>(i[r]=t[r].value,i),{}),this.__data=A.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(t,e){if(!this.__typedSchema.hasOwnProperty(t)){console.warn(to+t);return}let i=this.__typedSchema[t];if((e==null?void 0:e.constructor)===i.type||e instanceof i.type||i.nullable&&e===null){this.__data.pub(t,e);return}console.warn(Wa+t)}setMultipleValues(t){for(let e in t)this.setValue(e,t[e])}getValue(t){if(!this.__typedSchema.hasOwnProperty(t)){console.warn(to+t);return}return this.__data.read(t)}subscribe(t,e){return this.__data.sub(t,e)}remove(){A.deleteCtx(this.__ctxId)}};var ai=class{constructor(t){this.__typedSchema=t.typedSchema,this.__ctxId=t.ctxName||Ve.generate(),this.__data=A.registerCtx({},this.__ctxId),this.__watchList=t.watchList||[],this.__subsMap=Object.create(null),this.__propertyObservers=new Set,this.__collectionObservers=new Set,this.__items=new Set,this.__removed=new Set,this.__added=new Set;let e=Object.create(null);this.__notifyObservers=(i,r)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),e[i]||(e[i]=new Set),e[i].add(r),this.__observeTimeout=window.setTimeout(()=>{Object.keys(e).length!==0&&(this.__propertyObservers.forEach(o=>{o({...e})}),e=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let t=new Set(this.__added),e=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let i of this.__collectionObservers)i==null||i([...this.__items],t,e)})}observeCollection(t){return this.__collectionObservers.add(t),this.__items.size>0&&this.notify(),()=>{this.unobserveCollection(t)}}unobserveCollection(t){var e;(e=this.__collectionObservers)==null||e.delete(t)}add(t){let e=new ni(this.__typedSchema);for(let i in t)e.setValue(i,t[i]);return this.__items.add(e.uid),this.notify(),this.__data.add(e.uid,e),this.__added.add(e),this.__watchList.forEach(i=>{this.__subsMap[e.uid]||(this.__subsMap[e.uid]=[]),this.__subsMap[e.uid].push(e.subscribe(i,()=>{this.__notifyObservers(i,e.uid)}))}),e.uid}read(t){return this.__data.read(t)}readProp(t,e){return this.read(t).getValue(e)}publishProp(t,e,i){this.read(t).setValue(e,i)}remove(t){this.__removed.add(this.__data.read(t)),this.__items.delete(t),this.notify(),this.__data.pub(t,null),delete this.__subsMap[t]}clearAll(){this.__items.forEach(t=>{this.remove(t)})}observeProperties(t){return this.__propertyObservers.add(t),()=>{this.unobserveProperties(t)}}unobserveProperties(t){var e;(e=this.__propertyObservers)==null||e.delete(t)}findItems(t){let e=[];return this.__items.forEach(i=>{let r=this.read(i);t(r)&&e.push(i)}),e}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){A.deleteCtx(this.__ctxId),this.__propertyObservers=null,this.__collectionObservers=null;for(let t in this.__subsMap)this.__subsMap[t].forEach(e=>{e.remove()}),delete this.__subsMap[t]}};var Ke=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"}),_s=Object.freeze({MOBILE_VIDEO_CAMERA:"mobile-video-camera",MOBILE_PHOTO_CAMERA:"mobile-photo-camera"}),L=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",CAMERA:"camera",EXTERNAL:"external",API:"js-api",URL:"url",DRAW:"draw",..._s,...Ke});var ht=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],li=s=>s?s.filter(t=>typeof t=="string").map(t=>V(t)).flat():[],ys=(s,t)=>t.some(e=>e.endsWith("*")?(e=e.replace("*",""),s.startsWith(e)):s===e),io=(s,t)=>t.some(e=>e.startsWith(".")?s.toLowerCase().endsWith(e.toLowerCase()):!1),so=s=>{let t=s==null?void 0:s.type;return t?ys(t,ht):!1};var Xa=/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}/i,qa=new RegExp(`^/?(${Xa.source})(?:/(-/(?:[^/]+/)+)?([^/]*))?$`,"i"),ro=({url:s,cdnBase:t})=>{let e=new URL(t),i=new URL(s);if(e.host!==i.host)return null;let[,r,o,n]=qa.exec(i.pathname);return{uuid:r,cdnUrlModifiers:o||"",filename:n||null}};var oo=s=>{let t=new Map;return(...e)=>{let i=JSON.stringify(e);if(t.has(i))return t.get(i);let r=s(...e);return t.set(i,r),r}};var no=new Set;function ci(s){no.has(s)||(no.add(s),console.warn(s))}function Ka(s){let t=!1;return setTimeout(()=>{t=!0},0),i=>(...r)=>(t&&ci(s),i(...r))}function ao(s){let t={progress:()=>s.$["*commonProgress"],errors:()=>s.$["*collectionErrors"],group:()=>s.$["*groupInfo"],totalCount:()=>s.uploadCollection.size,failedCount:()=>e.failedEntries.length,successCount:()=>e.successEntries.length,uploadingCount:()=>e.uploadingEntries.length,status:()=>e.isFailed?"failed":e.isUploading?"uploading":e.isSuccess?"success":"idle",isSuccess:()=>e.allEntries.length>0&&e.errors.length===0&&e.successEntries.length===e.allEntries.length,isUploading:()=>e.allEntries.some(r=>r.status==="uploading"),isFailed:()=>e.errors.length>0||e.failedEntries.length>0,allEntries:()=>s.getOutputData(),successEntries:()=>e.allEntries.filter(r=>r.status==="success"),failedEntries:()=>e.allEntries.filter(r=>r.status==="failed"),uploadingEntries:()=>e.allEntries.filter(r=>r.status==="uploading"),idleEntries:()=>e.allEntries.filter(r=>r.status==="idle")},e={},i=Ka("You're trying to access the OutputCollectionState asynchronously. In this case, the data you retrieve will be newer than it was when the OutputCollectionState was created or when the event was dispatched. If you want to retain the state at a specific moment in time, you should use the spread operator like this: `{...outputCollectionState}` or `{...e.detail}`");for(let[r,o]of Object.entries(t)){let n=r,l=oo(i(o));Object.defineProperty(e,n,{get:l,enumerable:!0})}return e}var T=Object.freeze({PHOTO:"photo",VIDEO:"video"}),te=Object.freeze({IDLE:"idle",SHOT:"shot",PLAY:"play",PAUSE:"pause",RESUME:"resume",STOP:"stop",RETAKE:"retake",ACCEPT:"accept"});var vs=s=>({isVideoRecordingEnabled:q(s.cameraModes).includes(T.VIDEO),isPhotoEnabled:q(s.cameraModes).includes(T.PHOTO)});var Pe=()=>"capture"in document.createElement("input");var ui=class{constructor(t){u(this,"_ctx");u(this,"addFileFromUrl",(t,{silent:e,fileName:i,source:r}={})=>{let o=this._uploadCollection.add({externalUrl:t,fileName:i!=null?i:null,silent:e!=null?e:!1,source:r!=null?r:L.API});return this.getOutputItem(o)});u(this,"addFileFromUuid",(t,{silent:e,fileName:i,source:r}={})=>{let o=this._uploadCollection.add({uuid:t,fileName:i!=null?i:null,silent:e!=null?e:!1,source:r!=null?r:L.API});return this.getOutputItem(o)});u(this,"addFileFromCdnUrl",(t,{silent:e,fileName:i,source:r}={})=>{var a;let o=ro({url:t,cdnBase:this.cfg.cdnCname});if(!o)throw new Error("Invalid CDN URL");let n=this._uploadCollection.add({uuid:o.uuid,cdnUrl:t,cdnUrlModifiers:o.cdnUrlModifiers,fileName:(a=i!=null?i:o.filename)!=null?a:null,silent:e!=null?e:!1,source:r!=null?r:L.API});return this.getOutputItem(n)});u(this,"addFileFromObject",(t,{silent:e,fileName:i,source:r,fullPath:o}={})=>{let n=this._uploadCollection.add({file:t,isImage:so(t),mimeType:t.type,fileName:i!=null?i:t.name,fileSize:t.size,silent:e!=null?e:!1,source:r!=null?r:L.API,fullPath:o!=null?o:null});return this.getOutputItem(n)});u(this,"removeFileByInternalId",t=>{if(!this._uploadCollection.read(t))throw new Error(`File with internalId ${t} not found`);this._uploadCollection.remove(t)});u(this,"uploadAll",()=>{let t=this._uploadCollection.items().filter(e=>{let i=this._uploadCollection.read(e);return!i.getValue("isRemoved")&&!i.getValue("isUploading")&&!i.getValue("fileInfo")});t.length!==0&&(this._ctx.$["*uploadTrigger"]=new Set(t),this._ctx.emit(k.COMMON_UPLOAD_START,this.getOutputCollectionState()))});u(this,"openSystemDialog",(t={})=>{var o;let e=be(li([(o=this.cfg.accept)!=null?o:"",...this.cfg.imgOnly?ht:[]])),i="uploadcare-file-input",r=document.createElement("input");if(r.setAttribute(i,""),ot(r,{opacity:0,height:0,width:0,visibility:"hidden"}),r.type="file",r.multiple=this.cfg.multiple,t.captureCamera){r.capture=this.cfg.cameraCapture;let{isPhotoEnabled:n,isVideoRecordingEnabled:a}=vs(this.cfg);t.modeCamera===T.PHOTO&&n?r.accept="image/*":t.modeCamera===T.VIDEO&&a?r.accept="video/*":r.accept=["image/*",a&&"video/*"].filter(Boolean).join(",")}else r.accept=e;r.addEventListener("change",()=>{r.files&&([...r.files].forEach(n=>this.addFileFromObject(n,{source:t.captureCamera?L.CAMERA:L.LOCAL})),this._ctx.modalManager.open(g.activities.UPLOAD_LIST),this._ctx.$["*currentActivity"]=g.activities.UPLOAD_LIST,r.remove())},{once:!0}),document.querySelectorAll(`[${i}]`).forEach(n=>n.remove()),document.body.appendChild(r),r.dispatchEvent(new MouseEvent("click"))});u(this,"getOutputItem",t=>{var n,a,l,c,h,d,p,m,f,b;let e=A.getCtx(t).store,i=e.fileInfo,r=e.isRemoved?"removed":e.errors.length>0?"failed":e.fileInfo?"success":e.isUploading?"uploading":"idle";return{uuid:(a=(n=i==null?void 0:i.uuid)!=null?n:e.uuid)!=null?a:null,internalId:t,name:(l=i==null?void 0:i.originalFilename)!=null?l:e.fileName,size:(c=i==null?void 0:i.size)!=null?c:e.fileSize,isImage:(h=i==null?void 0:i.isImage)!=null?h:e.isImage,mimeType:(d=i==null?void 0:i.mimeType)!=null?d:e.mimeType,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(m=(p=e.cdnUrl)!=null?p:i==null?void 0:i.cdnUrl)!=null?m:null,fullPath:e.fullPath,uploadProgress:e.uploadProgress,fileInfo:i!=null?i:null,metadata:(b=(f=e.metadata)!=null?f:i==null?void 0:i.metadata)!=null?b:null,isSuccess:r==="success",isUploading:r==="uploading",isFailed:r==="failed",isRemoved:r==="removed",errors:e.errors,status:r,source:e==null?void 0:e.source}});u(this,"getOutputCollectionState",()=>ao(this._ctx));u(this,"initFlow",(t=!1)=>{var e,i,r,o;if(this._uploadCollection.size>0&&!t)(e=this._ctx.modalManager)==null||e.open(g.activities.UPLOAD_LIST),this._ctx.set$({"*currentActivity":g.activities.UPLOAD_LIST});else if(((i=this._sourceList)==null?void 0:i.length)===1){let n=this._sourceList[0];if(n==="local"){this._ctx.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.openSystemDialog();return}if(n==="camera"&&Pe()){let{isPhotoEnabled:h,isVideoRecordingEnabled:d}=vs(this.cfg);if(h&&d){this._ctx.set$({"*currentActivity":g.activities.START_FROM});return}else if(h||d){this.openSystemDialog({captureCamera:!0,modeCamera:h?T.PHOTO:T.VIDEO});return}else this.openSystemDialog({captureCamera:!0,modeCamera:T.PHOTO})}let a=this._ctx.$["*blocksRegistry"],l=h=>"type"in h&&h.type===n,c=[...a].find(l);c==null||c.activate(),this._ctx.$["*currentActivity"]&&((r=this._ctx.modalManager)==null||r.open(this._ctx.$["*currentActivity"]))}else(o=this._ctx.modalManager)==null||o.open(g.activities.START_FROM),this._ctx.set$({"*currentActivity":g.activities.START_FROM})});u(this,"doneFlow",()=>{this._ctx.set$({"*currentActivity":this._ctx.doneActivity,"*history":this._ctx.doneActivity?[this._ctx.doneActivity]:[]}),this._ctx.$["*currentActivity"]||this._ctx.modalManager.closeAll()});u(this,"setCurrentActivity",(t,e=void 0)=>{if(this._ctx.hasBlockInCtx(i=>i.activityType===t)){this._ctx.set$({"*currentActivityParams":e!=null?e:{},"*currentActivity":t});return}console.warn(`Activity type "${t}" not found in the context`)});u(this,"getCurrentActivity",()=>this._ctx.$["*currentActivity"]);u(this,"setModalState",t=>{var e,i;if(t&&!this._ctx.$["*currentActivity"]){console.warn(`Can't open modal without current activity. Please use "setCurrentActivity" method first.`);return}t?(e=this._ctx.modalManager)==null||e.open(this._ctx.$["*currentActivity"]):((i=this._ctx.modalManager)==null||i.close(this._ctx.$["*currentActivity"]),this._ctx.$["*currentActivity"]=null)});this._ctx=t}get _uploadCollection(){return this._ctx.uploadCollection}get cfg(){return this._ctx.cfg}get l10n(){return this._ctx.l10n.bind(this._ctx)}removeAllFiles(){this._uploadCollection.clearAll()}get _sourceList(){let t=[];return this.cfg.sourceList&&(t=V(this.cfg.sourceList)),t}};var ws=(s,t)=>{let e=t.cfg.imgOnly,i=s.isImage;if(!(!e||i)&&!(!s.fileInfo&&s.externalUrl)&&!(!s.fileInfo&&!s.mimeType))return{type:"NOT_AN_IMAGE",message:t.l10n("images-only-accepted"),payload:{entry:s}}};var Cs=(s,t)=>{let e=t.cfg.imgOnly,i=t.cfg.accept,r=li([...e?ht:[],i]);if(!r.length)return;let o=s.mimeType,n=s.name;if(!o||!n)return;let a=ys(o,r),l=io(n,r);if(!a&&!l)return{type:"FORBIDDEN_FILE_TYPE",message:t.l10n("file-type-not-allowed"),payload:{entry:s}}};var ue=1e3,Re=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),pt=s=>Math.ceil(s*100)/100,lo=(s,t=Re.AUTO)=>{let e=t===Re.AUTO;if(t===Re.BYTE||e&&s<ue**1){let i=jt("en-US",s),r={one:"byte",other:"bytes"}[i];return`${s} ${r}`}return t===Re.KB||e&&s<ue**2?`${pt(s/ue**1)} KB`:t===Re.MB||e&&s<ue**3?`${pt(s/ue**2)} MB`:t===Re.GB||e&&s<ue**4?`${pt(s/ue**3)} GB`:t===Re.TB||e&&s<ue**5?`${pt(s/ue**4)} TB`:`${pt(s/ue**5)} PB`};var xs=(s,t)=>{let e=t.cfg.maxLocalFileSizeBytes,i=s.size;if(e&&i&&i>e)return{type:"FILE_SIZE_EXCEEDED",message:t.l10n("files-max-size-limit-error",{maxFileSize:lo(e)}),payload:{entry:s}}};var Es=(s,t)=>{let{internalId:e}=s,i=t._uploadCollection.read(e),r=i==null?void 0:i.getValue("uploadError");if(!r)return;if(r instanceof z)return{type:"UPLOAD_ERROR",message:r.message,payload:{entry:s,error:r}};if(r instanceof Be)return{type:"NETWORK_ERROR",message:r.message,payload:{entry:s,error:r}};let o=r instanceof Error?r:new Error("Unknown error",{cause:r});return{type:"UNKNOWN_ERROR",message:o.message,payload:{entry:s,error:o}}};var As=(s,t)=>{if(s.failedCount>0)return{type:"SOME_FILES_HAS_ERRORS",message:t.l10n("some-files-were-not-uploaded")}};var Ts=(s,t)=>{let e=s.totalCount,i=t.cfg.multiple?t.cfg.multipleMin:0,r=t.cfg.multiple?t.cfg.multipleMax:1;if(i&&e<i)return{type:"TOO_FEW_FILES",message:t.l10n("files-count-limit-error-too-few",{min:i,max:r,total:e}),payload:{total:e,min:i,max:r}};if(r&&e>r)return{type:"TOO_MANY_FILES",message:t.l10n("files-count-limit-error-too-many",{min:i,max:r,total:e}),payload:{total:e,min:i,max:r}}};var di={file:"File validator execution has failed",collection:"Collection validator execution has failed",message:"Missing message. We recommend adding message: value."},hi=class{constructor(t){u(this,"_blockInstance");u(this,"_fileValidators",[ws,Cs,xs,Es]);u(this,"_collectionValidators",[Ts,As]);this._blockInstance=t,this._uploadCollection=this._blockInstance.uploadCollection;let e=()=>{this.runFileValidators(),this.runCollectionValidators()};this._blockInstance.subConfigValue("maxLocalFileSizeBytes",e),this._blockInstance.subConfigValue("multipleMin",e),this._blockInstance.subConfigValue("multipleMax",e),this._blockInstance.subConfigValue("multiple",e),this._blockInstance.subConfigValue("imgOnly",e),this._blockInstance.subConfigValue("accept",e)}runFileValidators(t){let e=t!=null?t:this._uploadCollection.items();for(let i of e){let r=this._uploadCollection.read(i);r&&this._runFileValidatorsForEntry(r)}}runCollectionValidators(){let t=this._blockInstance.api.getOutputCollectionState(),e=[];for(let i of[...this._collectionValidators,...this._addCustomTypeToValidators(this._blockInstance.cfg.collectionValidators)])try{let r=i(t,this._blockInstance.api);if(!r)continue;r&&(e.push(r),r.message||console.warn(di.message))}catch(r){console.warn(di.collection,r)}this._blockInstance.$["*collectionErrors"]=e,e.length>0&&this._blockInstance.emit(k.COMMON_UPLOAD_FAILED,()=>this._blockInstance.api.getOutputCollectionState(),{debounce:!0})}_runFileValidatorsForEntry(t){let e=this._blockInstance.api.getOutputItem(t.uid),i=[];for(let r of[...this._fileValidators,...this._addCustomTypeToValidators(this._blockInstance.cfg.fileValidators)])try{let o=r(e,this._blockInstance.api);if(!o)continue;o&&(i.push(o),o.message||console.warn(di.message))}catch(o){console.warn(di.file,o)}t.setValue("errors",i)}_addCustomTypeToValidators(t){return t.map(e=>(...i)=>{let r=e(...i);return r?{...r,type:"CUSTOM_ERROR"}:void 0})}};var co=Object.freeze({file:{type:File,value:null},externalUrl:{type:String,value:null},fileName:{type:String,value:null,nullable:!0},fileSize:{type:Number,value:null,nullable:!0},lastModified:{type:Number,value:Date.now()},uploadProgress:{type:Number,value:0},uuid:{type:String,value:null},isImage:{type:Boolean,value:!1},mimeType:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:ye,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silent:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0},metadata:{type:Object,value:null,nullable:!0},errors:{type:Array,value:[]},uploadError:{type:Error,value:null,nullable:!0},isRemoved:{type:Boolean,value:!1}});var I=class s extends g{constructor(){super(...arguments);u(this,"couldBeCtxOwner",!1);u(this,"isCtxOwner",!1);u(this,"init$",Jt(this));u(this,"_flushOutputItems",O(async()=>{if(this.getOutputData().length!==this.uploadCollection.size)return;let i=this.api.getOutputCollectionState();this.$["*collectionState"]=i,this.emit(k.CHANGE,()=>this.api.getOutputCollectionState(),{debounce:!0}),this.cfg.groupOutput&&i.totalCount>0&&i.status==="success"&&this._createGroup(i)},300));u(this,"_handleCollectionUpdate",(e,i,r)=>{var o;(i.size||r.size)&&(this.$["*groupInfo"]=null),this.validationManager.runFileValidators(),this.validationManager.runCollectionValidators();for(let n of i)n.getValue("silent")||this.emit(k.FILE_ADDED,this.api.getOutputItem(n.uid));for(let n of r)this.$["*uploadTrigger"].delete(n.uid),(o=n.getValue("abortController"))==null||o.abort(),n.setMultipleValues({isRemoved:!0,abortController:null,isUploading:!1,uploadProgress:0}),URL.revokeObjectURL(n==null?void 0:n.getValue("thumbUrl")),this.emit(k.FILE_REMOVED,this.api.getOutputItem(n.uid));this.$["*uploadList"]=e.map(n=>({uid:n})),this._flushCommonUploadProgress(),this._flushOutputItems()});u(this,"_handleCollectionPropertiesUpdate",e=>{this._flushOutputItems();let i=this.uploadCollection,r=[...new Set(Object.entries(e).filter(([o])=>["uploadError","fileInfo"].includes(o)).map(([,o])=>[...o]).flat())];if(r.length>0&&setTimeout(()=>{this.validationManager.runFileValidators(r)}),e.uploadProgress){for(let o of e.uploadProgress){let{isUploading:n,silent:a}=A.getCtx(o).store;n&&!a&&this.emit(k.FILE_UPLOAD_PROGRESS,this.api.getOutputItem(o))}this._flushCommonUploadProgress()}if(e.isUploading)for(let o of e.isUploading){let{isUploading:n,silent:a}=A.getCtx(o).store;n&&!a&&this.emit(k.FILE_UPLOAD_START,this.api.getOutputItem(o))}if(e.fileInfo){for(let o of e.fileInfo){let{fileInfo:n,silent:a}=A.getCtx(o).store;n&&!a&&this.emit(k.FILE_UPLOAD_SUCCESS,this.api.getOutputItem(o))}this.cfg.cropPreset&&this.setInitialCrop(),this.cfg.cloudImageEditorAutoOpen&&this.openCloudImageEditor()}if(e.errors){for(let a of e.errors){let{errors:l}=A.getCtx(a).store;l.length>0&&(this.emit(k.FILE_UPLOAD_FAILED,this.api.getOutputItem(a)),this.emit(k.COMMON_UPLOAD_FAILED,()=>this.api.getOutputCollectionState(),{debounce:!0}))}let o=i.findItems(a=>!!a.getValue("fileInfo")),n=i.findItems(a=>a.getValue("errors").length>0);i.size>0&&n.length===0&&i.size===o.length&&this.$["*collectionErrors"].length===0&&this.emit(k.COMMON_UPLOAD_SUCCESS,this.api.getOutputCollectionState())}e.cdnUrl&&([...e.cdnUrl].filter(n=>{var a;return!!((a=this.uploadCollection.read(n))!=null&&a.getValue("cdnUrl"))}).forEach(n=>{this.emit(k.FILE_URL_CHANGED,this.api.getOutputItem(n))}),this.$["*groupInfo"]=null)});u(this,"_flushCommonUploadProgress",()=>{let e=0,r=[...this.$["*uploadTrigger"]].filter(n=>!!this.uploadCollection.read(n));r.forEach(n=>{let a=this.uploadCollection.readProp(n,"uploadProgress");e+=a});let o=r.length?Math.round(e/r.length):0;this.$["*commonProgress"]!==o&&(this.$["*commonProgress"]=o,this.emit(k.COMMON_UPLOAD_PROGRESS,this.api.getOutputCollectionState()))})}get hasCtxOwner(){return this.hasBlockInCtx(e=>e instanceof s?e.isCtxOwner&&e.isConnected&&e!==this:!1)}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let e=new ai({typedSchema:co,watchList:["uploadProgress","uploadError","fileInfo","errors","cdnUrl","isUploading"]});this.add("*uploadCollection",e)}this.has("*publicApi")||this.add("*publicApi",new ui(this)),this.has("*validationManager")||this.add("*validationManager",new hi(this)),!this.hasCtxOwner&&this.couldBeCtxOwner&&this.initCtxOwner()}get validationManager(){if(!this.has("*validationManager"))throw new Error("Unexpected error: ValidationManager is not initialized");return this.$["*validationManager"]}get api(){if(!this.has("*publicApi"))throw new Error("Unexpected error: UploaderPublicApi is not initialized");return this.$["*publicApi"]}getAPI(){return this.api}get uploadCollection(){if(!this.has("*uploadCollection"))throw new Error("Unexpected error: TypedCollection is not initialized");return this.$["*uploadCollection"]}destroyCtxCallback(){var e,i;(e=this._unobserveCollectionProperties)==null||e.call(this),(i=this._unobserveCollection)==null||i.call(this),this.uploadCollection.destroy(),this.$["*uploadCollection"]=null,super.destroyCtxCallback()}initCtxOwner(){this.isCtxOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectionUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxConcurrentRequests",e=>{this.$["*uploadQueue"].concurrency=Number(e)||1}),this.$["*secureUploadsManager"]||(this.$["*secureUploadsManager"]=new oi(this))}async _createGroup(e){let i=await this.getUploadClientOptions(),r=e.allEntries.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=new AbortController,n=await kr(r,{...i,signal:o.signal});if(this.$["*collectionState"]!==e){o.abort();return}this.$["*groupInfo"]=n;let a=this.api.getOutputCollectionState();this.emit(k.GROUP_CREATED,a),this.emit(k.CHANGE,()=>this.api.getOutputCollectionState(),{debounce:!0}),this.$["*collectionState"]=a}openCloudImageEditor(){let[e]=this.uploadCollection.findItems(i=>i.getValue("fileInfo")&&i.getValue("isImage")).map(i=>this.uploadCollection.read(i));e&&this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(i=>i.activityType===g.activities.CLOUD_IMG_EDIT)&&(this.$["*currentActivityParams"]={internalId:e.uid},this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT,this.modalManager.open(g.activities.CLOUD_IMG_EDIT))}setInitialCrop(){let e=ri(this.cfg.cropPreset);if(e){let[i]=e,r=this.uploadCollection.findItems(o=>{var n;return o.getValue("fileInfo")&&o.getValue("isImage")&&!((n=o.getValue("cdnUrlModifiers"))!=null&&n.includes("/crop/"))}).map(o=>this.uploadCollection.read(o));for(let o of r){let n=o.getValue("fileInfo"),{width:a,height:l}=n.imageInfo,c=i.width/i.height,h=Yr(a,l,c),d=N(`crop/${h.width}x${h.height}/${h.x},${h.y}`,"preview");o.setMultipleValues({cdnUrlModifiers:d,cdnUrl:P(o.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(p=>p.activityType===g.activities.CLOUD_IMG_EDIT)&&(this.$["*currentActivityParams"]={internalId:o.uid},this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT,this.modalManager.open(g.activities.CLOUD_IMG_EDIT))}}}async getMetadataFor(e){let i=this.cfg.metadata||void 0;if(typeof i=="function"){let r=this.api.getOutputItem(e);return await i(r)}return i}async getUploadClientOptions(){let i=await this.$["*secureUploadsManager"].getSecureToken().catch(()=>null);return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Jr,integration:this.cfg.userAgentIntegration,secureSignature:i==null?void 0:i.secureSignature,secureExpire:i==null?void 0:i.secureExpire,retryThrottledRequestMaxTimes:this.cfg.retryThrottledRequestMaxTimes,multipartMinFileSize:this.cfg.multipartMinFileSize,multipartChunkSize:this.cfg.multipartChunkSize,maxConcurrentRequests:this.cfg.multipartMaxConcurrentRequests,multipartMaxAttempts:this.cfg.multipartMaxAttempts,checkForUrlDuplicates:!!this.cfg.checkForUrlDuplicates,saveUrlForRecurrentUploads:!!this.cfg.saveUrlForRecurrentUploads}}getOutputData(){return this.uploadCollection.items().map(r=>this.api.getOutputItem(r))}};I.extSrcList=Object.freeze({...Ke});I.sourceTypes=Object.freeze({...L});var ft=s=>{var t;return(t=s.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:t.map(e=>e.toLowerCase()).join("-")};var U=s=>String(s),Y=s=>{let t=Number(s);if(Number.isNaN(t))throw new Error(`Invalid number: "${s}"`);return t},$=s=>{if(typeof s=="undefined"||s===null)return!1;if(typeof s=="boolean")return s;if(s==="true"||s==="")return!0;if(s==="false")return!1;throw new Error(`Invalid boolean: "${s}"`)},uo=s=>s==="auto"?s:$(s),ho=s=>{let t=U(s);if(t!=="user"&&t!=="environment"&&t!=="")throw new Error(`Invalid value: "${t}"`);return t},po=s=>{let t=U(s);if(!Object.values(T).includes(t))throw new Error(`Invalid value: "${t}"`);return t},fo=s=>{let t=U(s),e=q(t);if(e.some(i=>!Object.values(T).includes(i)))throw new Error(`Invalid value: "${JSON.stringify(e)}"`);return t},mo=s=>{if(typeof s=="object"&&!Array.isArray(s)||typeof s=="function")return s;throw new Error("Invalid metadata value. Must be an object or function.")},Ss=s=>{if(typeof s=="object")return s;throw new Error("Invalid value. Must be an object.")},pi=s=>{if(typeof s=="function")return s;throw new Error("Invalid value. Must be a function.")},Is=s=>{if(Array.isArray(s))return s;throw new Error("Must be an array.")},go=s=>{let t=U(s);if(["grid","list"].includes(t))return t;throw new Error(`Invalid value: "${t}"`)};var Za={pubkey:U,multiple:$,multipleMin:Y,multipleMax:Y,confirmUpload:$,imgOnly:$,accept:U,externalSourcesPreferredTypes:U,externalSourcesEmbedCss:U,store:uo,cameraMirror:$,cameraCapture:ho,sourceList:U,maxLocalFileSizeBytes:Y,thumbSize:Y,showEmptyList:$,useLocalImageEditor:$,useCloudImageEditor:$,cloudImageEditorTabs:U,removeCopyright:$,cropPreset:U,imageShrink:U,modalScrollLock:$,modalBackdropStrokes:$,sourceListWrap:$,remoteTabSessionKey:U,cdnCname:U,baseUrl:U,socialBaseUrl:U,secureSignature:U,secureExpire:U,secureDeliveryProxy:U,retryThrottledRequestMaxTimes:Y,multipartMinFileSize:Y,multipartChunkSize:Y,maxConcurrentRequests:Y,multipartMaxConcurrentRequests:Y,multipartMaxAttempts:Y,checkForUrlDuplicates:$,saveUrlForRecurrentUploads:$,groupOutput:$,userAgentIntegration:U,debug:$,localeName:U,metadata:mo,secureUploadsExpireThreshold:Y,localeDefinitionOverride:Ss,secureUploadsSignatureResolver:pi,secureDeliveryProxyUrlResolver:pi,iconHrefResolver:pi,fileValidators:Is,collectionValidators:Is,cameraModes:fo,defaultCameraMode:po,enableAudioRecording:$,enableVideoRecording:$,mediaRecorderOptions:Ss,maxVideoRecordingDuration:Y,filesViewMode:go,gridShowFileNames:$,cloudImageEditorAutoOpen:$},bo=(s,t)=>{if(!(typeof t=="undefined"||t===null))try{return Za[s](t)}catch(e){return console.error(`Invalid value for config key "${s}".`,e),se[s]}};var Ya=[{test:s=>s.accept&&!!s.imgOnly,message:"There could be a mistake.\nBoth `accept` and `imgOnly` parameters are set.\nThe value of `accept` will be concatenated with the internal image mime types list."},{test:s=>s.enableVideoRecording!==null,message:"The `enableVideoRecording` parameter is deprecated and will be removed in the next major release.\nPlease use the `cameraModes` parameter instead."},{test:s=>s.defaultCameraMode!==null,message:"The `defaultCameraMode` parameter is deprecated and will be removed in the next major release.\nPlease use the `cameraModes` parameter instead."}],_o=O(s=>{for(let{test:t,message:e}of Ya)t(s)&&ci(e)},0);var yo=({key:s,value:t,setValue:e,getValue:i})=>{if(s==="enableVideoRecording"&&t!==null){let r=q(i("cameraModes"));t&&!r.includes("video")?r=r.concat("video"):t||(r=r.filter(o=>o!=="video")),e("cameraModes",be(r))}if(s==="defaultCameraMode"&&t!==null){let r=q(i("cameraModes"));r=r.sort((o,n)=>o===t?-1:n===t?1:0),e("cameraModes",be(r))}};var $s=[...new Set(["debug",...Object.keys(se)])],Ja=["metadata","localeDefinitionOverride","secureUploadsSignatureResolver","secureDeliveryProxyUrlResolver","iconHrefResolver","fileValidators","collectionValidators","mediaRecorderOptions"],Qa=s=>Ja.includes(s),Ze=$s.filter(s=>!Qa(s)),el={...Object.fromEntries(Ze.map(s=>[ft(s),s])),...Object.fromEntries(Ze.map(s=>[s.toLowerCase(),s]))},tl={...Object.fromEntries(Ze.map(s=>[ft(s),H(s)])),...Object.fromEntries(Ze.map(s=>[s.toLowerCase(),H(s)]))},vo=s=>"__"+s,mt=class extends _{constructor(){super();u(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(se).map(([e,i])=>[H(e),i]))}}_flushValueToAttribute(e,i){if(Ze.includes(e)){let r=[...new Set([ft(e),e.toLowerCase()])];for(let o of r)typeof i=="undefined"||i===null?this.removeAttribute(o):this.getAttribute(o)!==i.toString()&&this.setAttribute(o,i.toString())}}_flushValueToState(e,i){this.$[H(e)]!==i&&(typeof i=="undefined"||i===null?this.$[H(e)]=se[e]:this.$[H(e)]=i)}_setValue(e,i){let r=this,o=bo(e,i),n=vo(e);r[n]!==o&&(this._assertSameValueDifferentReference(e,r[n],o),r[n]=o,this._flushValueToAttribute(e,o),this._flushValueToState(e,o),this.debugPrint(`[uc-config] "${e}"`,o),_o(this.cfg),yo({key:e,value:o!=null?o:null,setValue:this._setValue.bind(this),getValue:this._getValue.bind(this)}))}_getValue(e){var o;let i=this,r=vo(e);return(o=i[r])!=null?o:this.$[H(e)]}_assertSameValueDifferentReference(e,i,r){this.cfg.debug&&r!==i&&typeof r=="object"&&typeof i=="object"&&JSON.stringify(r)===JSON.stringify(i)&&(console.warn(`[uc-config] Option "${e}" value is the same as the previous one but the reference is different`),console.warn("[uc-config] You should avoid changing the reference of the object to prevent unnecessary calculations"),console.warn(`[uc-config] "${e}" previous value:`,i),console.warn(`[uc-config] "${e}" new value:`,r))}initCallback(){var i;super.initCallback();let e=this;for(let r of Ze)this.sub(H(r),o=>{this._setValue(r,o)},!1);for(let r of $s){let o=(i=e[r])!=null?i:this.$[H(r)];o!==se[r]&&this._setValue(r,o),Object.defineProperty(this,r,{set:n=>{this._setValue(r,n)},get:()=>this._getValue(r)})}}attributeChangedCallback(e,i,r){if(i===r)return;let o=this,n=el[e];o[n]=r}};mt.bindAttributes(tl);for(let s of $s)mt.prototype[s]=void 0;var il=mt;var gt=class extends _{constructor(){super(),this.init$={...this.init$,name:"",href:""}}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=`#uc-icon-${t}`;this.subConfigValue("iconHrefResolver",i=>{if(i){let r=i(t);e=r!=null?r:e}this.$.href=e})}),this.setAttribute("aria-hidden","true")}};gt.template=`<svg ref="svg" xmlns="http://www.w3.org/2000/svg"><use set="@href: href;"></use></svg>`;gt.bindAttributes({name:"name"});var wo=s=>[...new Set(s)];var Co=s=>Object.entries(s).filter(([t,e])=>e!==void 0&&e!=="").map(([t,e])=>t==="cdn-operations"||t==="analytics"?e:`${t}/${e}`);var sl="https://ucarecdn.com",bt=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:sl},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{},"cdn-operations":{},progressive:{},quality:{},"is-background-for":{},"is-preview-blur":{default:1}});var Ye="--uc-img-",ks="unresolved";var Os=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),Ms=3e3,Ls=5e3,Us=Object.freeze({PREVIEW:"PREVIEW",MAIN:"MAIN"});var Eo=Object.create(null),xo;for(let s in bt)Eo[Ye+s]=((xo=bt[s])==null?void 0:xo.default)||"";var fi=class extends Ae{constructor(){super(...arguments);u(this,"cssInit$",Eo)}$$(e){return this.$[Ye+e]}set$$(e){for(let i in e)this.$[Ye+i]=e[i]}sub$$(e,i){this.sub(Ye+e,r=>{r===null||r===""||i(r)})}analyticsParams(){return`-/@clib/${Xe}/${qe}/uc-img/`}initAttributes(e){[...this.attributes].forEach(i=>{bt[i.name]||e.setAttribute(i.name,i.value)})}initIntersection(e,i){let r={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(o=>{o.forEach(n=>{n.isIntersecting&&(i(),this._isnObserver.unobserve(e))})},r),this._isnObserver.observe(e),this._observed||(this._observed=new Set),this._observed.add(e)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(e=>{this._isnObserver.unobserve(e)}),this._isnObserver=null),A.deleteCtx(this)}static get observedAttributes(){return Object.keys(bt)}attributeChangedCallback(e,i,r){window.setTimeout(()=>{this.$[Ye+e]=r})}};var bi=class extends fi{constructor(){super(...arguments);u(this,"_img",new Image);u(this,"_imgPreview",new Image)}_fmtAbs(e){return!e.includes("//")&&!Os&&(e=new URL(e,document.baseURI).href),e}_validateSize(e){if((e==null?void 0:e.trim())!==""){let i=e.match(/\d+/)[0],r=e.match(/[a-zA-Z]+/)[0],o=parseInt(i,10);if(Number(o)>Ls&&this.hasFormatJPG)return Ls+r;if(Number(o)>Ms&&!this.hasFormatJPG)return Ms+r}return e}_getCdnModifiers(e,i){let r={format:this.$$("format"),quality:this.$$("quality"),resize:this._validateSize(e),blur:i,"cdn-operations":this.$$("cdn-operations"),analytics:this.analyticsParams()};return N(...Co(r))}_getUrlBase(e="",i=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(Os&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let r=this._getCdnModifiers(e,i);if(this.$$("src").startsWith(this.$$("cdn-cname")))return P(this.$$("src"),r);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(P(ne(this.$$("cdn-cname"),this.$$("uuid")),r));if(this.$$("uuid"))return this._proxyUrl(P(ne(this.$$("cdn-cname"),this.$$("uuid")),r));if(this.$$("proxy-cname"))return this._proxyUrl(P(this.$$("proxy-cname"),r,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(P(`https://${this.$$("pubkey")}.ucr.io/`,r,this._fmtAbs(this.$$("src"))))}_proxyUrl(e){return this.$$("secure-delivery-proxy")?nt(this.$$("secure-delivery-proxy"),{previewUrl:e},{transform:r=>window.encodeURIComponent(r)}):e}_getElSize(e,i=1,r=!0){let o=e.getBoundingClientRect(),n=i*Math.round(o.width),a=r?"":i*Math.round(o.height);return n||a?`${n||""}x${a||""}`:null}_setupEventProxy(e){let i=o=>{o.stopPropagation();let n=new Event(o.type,o);this.dispatchEvent(n)},r=["load","error"];for(let o of r)e.addEventListener(o,i)}get img(){return this.hasPreviewImage||(this._setupConfigForImage({elNode:this._img}),this.appendChild(this._img)),this._img}get currentImg(){return this.hasPreviewImage?{type:Us.PREVIEW,img:this._imgPreview}:{type:Us.MAIN,img:this.img}}get hasPreviewImage(){return this.$$("is-preview-blur")}get bgSelector(){return this.$$("is-background-for")}get breakpoints(){if(this.$$("breakpoints")){let e=V(this.$$("breakpoints"));return wo(e.map(i=>parseInt(i,10)))}else return null}get hasFormatJPG(){return this.$$("format").toLowerCase()==="jpeg"}renderBg(e){let i=new Set;i.add(`url("${this._getUrlBase(this._getElSize(e))}") 1x`),this.$$("hi-res-support")&&i.add(`url("${this._getUrlBase(this._getElSize(e,2))}") ${2}x`),this.$$("ultra-res-support")&&i.add(`url("${this._getUrlBase(this._getElSize(e,3))}") ${3}x`);let r=`image-set(${[...i].join(", ")})`;e.style.setProperty("background-image",r),e.style.setProperty("background-image","-webkit-"+r)}getSrcset(){let e=new Set;return this.breakpoints?this.breakpoints.forEach(i=>{e.add(this._getUrlBase(i+"x")+` ${this._validateSize(i+"w")}`),this.$$("hi-res-support")&&e.add(this._getUrlBase(i*2+"x")+` ${this._validateSize(i*2+"w")}`),this.$$("ultra-res-support")&&e.add(this._getUrlBase(i*3+"x")+` ${this._validateSize(i*3+"w")}`)}):(e.add(this._getUrlBase(this._getElSize(this.currentImg.img))+" 1x"),this.$$("hi-res-support")&&e.add(this._getUrlBase(this._getElSize(this.currentImg.img,2))+" 2x"),this.$$("ultra-res-support")&&e.add(this._getUrlBase(this._getElSize(this.currentImg.img,3))+" 3x")),[...e].join()}getSrc(){return this._getUrlBase()}get srcUrlPreview(){return this._getUrlBase("100x","100")}renderBackground(){[...document.querySelectorAll(this.bgSelector)].forEach(e=>{this.$$("intersection")?this.initIntersection(e,()=>{this.renderBg(e)}):this.renderBg(e)})}_appendURL({elNode:e,src:i,srcset:r}){i&&(e.src=i),r&&(e.srcset=r)}_setupConfigForImage({elNode:e}){this._setupEventProxy(e),this.initAttributes(e)}loaderImage({src:e,srcset:i,elNode:r}){return new Promise((o,n)=>{this._setupConfigForImage({elNode:r}),r.setAttribute(ks,""),r.addEventListener("load",()=>{r.removeAttribute(ks),o(r)}),r.addEventListener("error",()=>{n(!1)}),this._appendURL({elNode:r,src:e,srcset:i})})}async renderImage(){var e,i;if(this.$$("intersection")){this.hasPreviewImage&&(this._setupConfigForImage({elNode:this._imgPreview}),this.appendChild(this._imgPreview)),this.initIntersection(this.currentImg.img,async()=>{var r;this.hasPreviewImage&&(this._imgPreview.src=this.srcUrlPreview);try{await this.loaderImage({src:this.getSrc(),srcset:this.getSrcset(),elNode:this._img}),this.hasPreviewImage&&await this._imgPreview.remove(),this.appendChild(this._img)}catch{this.hasPreviewImage&&await((r=this._imgPreview)==null?void 0:r.remove()),this.appendChild(this._img)}});return}try{this.hasPreviewImage&&(await this.loaderImage({src:this.srcUrlPreview,elNode:this._imgPreview}),this.appendChild(this._imgPreview)),await this.loaderImage({src:this.getSrc(),srcset:this.getSrcset(),elNode:this._img}),this.hasPreviewImage&&await((e=this._imgPreview)==null?void 0:e.remove()),this.appendChild(this._img)}catch{this.hasPreviewImage&&await((i=this._imgPreview)==null?void 0:i.remove()),this.appendChild(this._img)}}init(){this.bgSelector?this.renderBackground():this.renderImage()}};var Ps=class extends bi{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",t=>{!this.$$("is-background-for")&&!this.$$("is-preview-blur")&&(this.img.loading=t?"lazy":"eager")})}};var _t=class _t extends I{constructor(){super();u(this,"couldBeCtxOwner",!0);this.init$={...this.init$,withDropZone:!0,onClick:()=>{this.api.initFlow()},"button-text":""}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",e=>{typeof e!="undefined"&&(this.$.withDropZone=$(e))}),this.subConfigValue("multiple",e=>{this.$["button-text"]=e?"upload-files":"upload-file"})}};u(_t,"styleAttrs",[...W(_t,_t,"styleAttrs"),"uc-simple-btn"]);var yt=_t;yt.template=`<uc-drop-area set="@disabled: !withDropZone"><button type="button" set="onclick: onClick"><uc-icon name="upload"></uc-icon><span l10n="button-text"></span><slot></slot><div class="uc-visual-drop-area" l10n="drop-files-here"></div></button></uc-drop-area>`;yt.bindAttributes({dropzone:null});var _i=class extends g{constructor(){super(...arguments);u(this,"historyTracked",!0);u(this,"activityType",g.activities.START_FROM)}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};_i.template='<div class="uc-content"><slot></slot></div>';function rl(s){return new Promise(t=>{typeof window.FileReader!="function"&&t(!1);try{let e=new FileReader;e.onerror=()=>{t(!0)};let i=r=>{r.type!=="loadend"&&e.abort(),t(!1)};e.onloadend=i,e.onprogress=i,e.readAsDataURL(s)}catch{t(!1)}})}function ol(s,t){return new Promise(e=>{let i=0,r=[],o=a=>{a||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),e(null)),a.isFile?(i++,a.file(l=>{i--;let c=new File([l],l.name,{type:l.type||t});r.push({type:"file",file:c,fullPath:a.fullPath}),i===0&&e(r)})):a.isDirectory&&n(a.createReader())},n=a=>{i++,a.readEntries(l=>{i--;for(let c of l)o(c);i===0&&e(r)})};o(s)})}function Ao(s){let t=[],e=[];for(let i=0;i<s.items.length;i++){let r=s.items[i];if(r)if(r.kind==="file"){let o=r.type;if(typeof r.webkitGetAsEntry=="function"||typeof r.getAsEntry=="function"){let a=typeof r.webkitGetAsEntry=="function"?r.webkitGetAsEntry():r.getAsEntry();e.push(ol(a,o).then(l=>{l&&t.push(...l)}));continue}let n=r.getAsFile();n&&e.push(rl(n).then(a=>{a||t.push({type:"file",file:n})}))}else r.kind==="string"&&r.type.match("^text/uri-list")&&e.push(new Promise(o=>{r.getAsString(n=>{t.push({type:"url",url:n}),o(void 0)})}))}return Promise.all(e).then(()=>t)}var j={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},To=["focus"],nl=100,Rs=new Map;function al(s,t){let e=Math.max(Math.min(s[0],t.x+t.width),t.x),i=Math.max(Math.min(s[1],t.y+t.height),t.y);return Math.sqrt((s[0]-e)*(s[0]-e)+(s[1]-i)*(s[1]-i))}function Ds(s){let t=0,e=document.body,i=new Set,r=f=>i.add(f),o=j.INACTIVE,n=f=>{s.shouldIgnore()&&f!==j.INACTIVE||(o!==f&&i.forEach(b=>b(f)),o=f)},a=()=>t>0;r(f=>s.onChange(f));let l=()=>{t=0,n(j.INACTIVE)},c=()=>{t+=1,o===j.INACTIVE&&n(j.ACTIVE)},h=()=>{t-=1,a()||n(j.INACTIVE)},d=f=>{f.preventDefault(),t=0,n(j.INACTIVE)},p=f=>{if(s.shouldIgnore())return;a()||(t+=1);let b=[f.x,f.y],v=s.element.getBoundingClientRect(),w=Math.floor(al(b,v)),y=w<nl,C=f.composedPath().includes(s.element);Rs.set(s.element,w);let D=Math.min(...Rs.values())===w;C&&D?(f.preventDefault(),n(j.OVER)):n(y&&D?j.NEAR:j.ACTIVE)},m=async f=>{if(s.shouldIgnore())return;f.preventDefault();let b=await Ao(f.dataTransfer);s.onItems(b),n(j.INACTIVE)};return e.addEventListener("drop",d),e.addEventListener("dragleave",h),e.addEventListener("dragenter",c),e.addEventListener("dragover",p),s.element.addEventListener("drop",m),To.forEach(f=>{window.addEventListener(f,l)}),()=>{Rs.delete(s.element),e.removeEventListener("drop",d),e.removeEventListener("dragleave",h),e.removeEventListener("dragenter",c),e.removeEventListener("dragover",p),s.element.removeEventListener("drop",m),To.forEach(f=>{window.removeEventListener(f,l)})}}var So="uc-drop-area",Je=`${So}/registry`,vt=class vt extends I{constructor(){super(),this.init$={...this.init$,state:j.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,isInitFlow:!1,text:"",[Je]:null}}isActive(){if(!this.$.isEnabled)return!1;let t=this.getBoundingClientRect(),e=t.width>0&&t.height>0,i=t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth),r=window.getComputedStyle(this),o=r.visibility!=="hidden"&&r.display!=="none";return e&&o&&i}initCallback(){super.initCallback(),this.bindL10n("text",()=>this.l10n("drop-files-here")),this.$[Je]||(this.$[Je]=new Set),this.$[Je].add(this),this.defineAccessor("disabled",e=>{this.set$({isEnabled:!$(e)})}),this.defineAccessor("clickable",e=>{this.set$({isClickable:$(e)})}),this.defineAccessor("initflow",e=>{this.set$({isInitFlow:$(e)})}),this.defineAccessor("with-icon",e=>{this.set$({withIcon:$(e)})}),this.defineAccessor("fullscreen",e=>{this.set$({isFullscreen:$(e)})}),this.defineAccessor("text",e=>{typeof e=="string"?this.bindL10n("text",()=>this.l10n(e)||e):this.bindL10n("text",()=>this.l10n("drop-files-here"))}),this._destroyDropzone=Ds({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:e=>{this.$.state=e},onItems:e=>{e.length&&(e.forEach(i=>{i.type==="url"?this.api.addFileFromUrl(i.url,{source:L.DROP_AREA}):i.type==="file"&&this.api.addFileFromObject(i.file,{source:L.DROP_AREA,fullPath:i.fullPath})}),this.uploadCollection.size&&(this.modalManager.open(g.activities.UPLOAD_LIST),this.set$({"*currentActivity":g.activities.UPLOAD_LIST})))}});let t=this.ref["content-wrapper"];t&&(this._destroyContentWrapperDropzone=Ds({element:t,onChange:e=>{var r;let i=(r=Object.entries(j).find(([,o])=>o===e))==null?void 0:r[0].toLowerCase();i&&t.setAttribute("drag-state",i)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",e=>{var r;let i=(r=Object.entries(j).find(([,o])=>o===e))==null?void 0:r[0].toLowerCase();i&&this.setAttribute("drag-state",i)}),this.subConfigValue("sourceList",e=>{let i=V(e);this.$.isEnabled=i.includes(L.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",e=>{this.toggleAttribute("hidden",!e)}),this.sub("isClickable",e=>{this.toggleAttribute("clickable",e)}),this.$.isClickable&&(this._onAreaClicked=e=>{if(e.type==="keydown"){if(e.code==="Space"||e.code==="Enter"){if(this.$.isInitFlow){this.api.initFlow();return}this.api.openSystemDialog()}}else if(e.type==="click"){if(this.$.isInitFlow){this.api.initFlow();return}this.api.openSystemDialog()}},this.addEventListener("keydown",this._onAreaClicked),this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$[Je]].filter(i=>i!==this).filter(i=>i.isActive()).length>0:!1}_couldHandleFiles(){let t=this.cfg.multiple,e=this.cfg.multipleMax,i=this.uploadCollection.size;return!(t&&e&&i>=e||!t&&i>0)}destroyCallback(){var e,i;super.destroyCallback();let t=this.$[Je];t&&(t.delete(this),t.size===0&&A.deleteCtx(So)),(e=this._destroyDropzone)==null||e.call(this),(i=this._destroyContentWrapperDropzone)==null||i.call(this),this._onAreaClicked&&(this.removeEventListener("keydown",this._onAreaClicked),this.removeEventListener("click",this._onAreaClicked))}};u(vt,"styleAttrs",[...W(vt,vt,"styleAttrs"),"uc-drop-area"]);var wt=vt;wt.template=`<slot><div data-default-slot hidden></div><div ref="content-wrapper" class="uc-content-wrapper" set="@hidden: !isVisible"><div class="uc-icon-container" set="@hidden: !withIcon"><uc-icon name="default"></uc-icon><uc-icon name="arrow-down"></uc-icon></div><span class="uc-text">{{text}}</span></div></slot>`;wt.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null,initflow:null});var ll="src-type-",Ct=class extends I{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"type");u(this,"_registeredTypes",{});this.init$={...this.init$,iconName:"default","src-type":""}}initTypes(){this.registerType({type:L.LOCAL,activate:()=>(this.api.openSystemDialog(),!1)}),this.registerType({type:L.URL,activity:g.activities.URL,textKey:"from-url"}),this.registerType({type:L.CAMERA,activity:g.activities.CAMERA,activate:()=>{let e=Pe();return e&&this.api.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:g.activities.DRAW,icon:"edit-draw"});for(let e of Object.values(_s))this.registerType({type:e,activity:g.activities.CAMERA,activate:()=>{let i=Pe();return i&&this.api.openSystemDialog({captureCamera:!0,modeCamera:e==="mobile-photo-camera"?T.PHOTO:T.VIDEO}),!i}});for(let e of Object.values(Ke))this.registerType({type:e,activity:g.activities.EXTERNAL,activityParams:{externalSourceType:e}})}initCallback(){super.initCallback(),this.initTypes(),this.defineAccessor("type",e=>{e&&this.applyType(e)})}registerType(e){this._registeredTypes[e.type]=e}getType(e){return this._registeredTypes[e]}activate(){if(!this.type)return;let e=this._registeredTypes[this.type],{activity:i,activate:r,activityParams:o={}}=e;(r?r():!!i)&&(this.modalManager.open(i),this.set$({"*currentActivityParams":o,"*currentActivity":i}))}applyType(e){let i=this._registeredTypes[e];if(!i){console.warn("Unsupported source type: "+e);return}let{textKey:r=e,icon:o=e}=i;this.$["src-type"]=`${ll}${r}`,this.$.iconName=o,this.onclick=()=>{this.activate()}}};Ct.template=`<button type="button"><uc-icon set="@name: iconName"></uc-icon><div class="uc-txt" l10n="src-type"></div></button>`;Ct.bindAttributes({type:null});var Fs=class extends _{initCallback(){super.initCallback(),this.subConfigValue("sourceList",t=>{let e=V(t),i="";e.forEach(r=>{if(r==="instagram"){console.error("Instagram source was removed because the Instagram Basic Display API hasn't been available since December 4, 2024. Official statement, see here:https://developers.facebook.com/blog/post/2024/09/04/update-on-instagram-basic-display-api/?locale=en_US");return}if(r==="camera"&&Pe()){this.subConfigValue("cameraModes",o=>{let n=q(o);n.forEach(a=>{i+=`<uc-source-btn role="listitem" type="mobile-${a}-camera"></uc-source-btn>`}),n.length===0&&(i+='<uc-source-btn role="listitem" type="mobile-photo-camera"></uc-source-btn>')});return}i+=`<uc-source-btn role="listitem" type="${r}"></uc-source-btn>`}),this.cfg.sourceListWrap?this.innerHTML=i:this.outerHTML=i})}};var vi=()=>{let s=[];return{stack:s,promiseReadJpegChunks:e=>new Promise((i,r)=>{let o=2,n=(c,h)=>{let d=new FileReader;d.addEventListener("load",()=>{h(new DataView(d.result))}),d.addEventListener("error",p=>{r(`Reader error: ${p}`)}),d.readAsArrayBuffer(c)},a=()=>n(e.slice(o,o+128),c=>{let h,d,p;for(h=d=0,p=c.byteLength;p>=0?d<p:d>p;h=p>=0?++d:--d)if(c.getUint8(h)===255){o+=h;break}l()}),l=()=>{let c=o;return n(e.slice(o,o+=4),h=>{if(h.byteLength!==4||h.getUint8(0)!==255){r("Corrupted");return}let d=h.getUint8(1);if(d===218){i(!0);return}let p=h.getUint16(2)-2;return n(e.slice(o,o+=p),m=>{if(m.byteLength!==p){r("Corrupted");return}s.push({startPos:c,length:p,marker:d,view:m}),a()})})};FileReader&&DataView||r("Not Support"),n(e.slice(0,2),c=>{c.getUint16(0)!==65496&&r("Not jpeg"),a()})})}},cl=async s=>{let t=[],{promiseReadJpegChunks:e,stack:i}=vi();return await e(s),i.forEach(({marker:r,view:o})=>{r===226&&o.getUint32(0)===1229144927&&o.getUint32(4)===1347571526&&o.getUint32(8)===1229735168&&t.push(o)}),t},$o=async(s,t,e)=>{{let i=[],r=[],{promiseReadJpegChunks:o,stack:n}=vi();await o(s),n.forEach(c=>{if(c.marker===t)return i.push(c.startPos),r.push(c.length)});let a=[s.slice(0,2)];for(let c of e){let h=new DataView(new ArrayBuffer(4));h.setUint16(0,65280+t),h.setUint16(2,c.byteLength+2),a.push(h.buffer),a.push(c)}let l=2;for(let c=0;c<i.length;c++)i[c]>l&&a.push(s.slice(l,i[c])),l=i[c]+r[c]+4;return a.push(s.slice(l,s.size)),new Blob(a,{type:s.type})}};var ko=(s,t)=>$o(s,226,t.map(e=>e.buffer)),ul=async s=>{try{return await ko(s,[])}catch(t){throw new Error(`Failed to strip ICC profile: ${t}`)}},dl=(s,t,e)=>new Promise((i,r)=>{let o=n=>{if(!n){r("Failed to convert canvas to blob");return}i(n)};s.toBlob(o,t,e),s.width=s.height=1}),xt=()=>{let s=document.createElement("canvas"),t=s.getContext("2d");return{canvas:s,ctx:t}},hl=s=>{let{ctx:e,canvas:i}=xt();i.width=i.height=50,e.drawImage(s,0,0,50,50);let r=e.getImageData(0,0,50,50).data;i.width=i.height=1;for(let o=3;o<r.length;o+=4)if(r[o]<254)return!0;return!1},pl=async s=>{let t=null,{promiseReadJpegChunks:e,stack:i}=vi();return await e(s),i.forEach(({marker:r,view:o})=>{if(!t&&r===225&&o.byteLength>=14&&o.getUint32(0)===1165519206&&o.getUint16(4)===0){t=o;return}}),t},fl="data:image/jpg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4QA6RXhpZgAATU0AKgAAAAgAAwESAAMAAAABAAYAAAEoAAMAAAABAAIAAAITAAMAAAABAAEAAAAAAAD/2wBDAP//////////////////////////////////////////////////////////////////////////////////////wAALCAABAAIBASIA/8QAJgABAAAAAAAAAAAAAAAAAAAAAxABAAAAAAAAAAAAAAAAAAAAAP/aAAgBAQAAPwBH/9k=",yi,ml=()=>new Promise(s=>{if(yi!==void 0)s(yi);else{let t=new Image;t.addEventListener("load",()=>{yi=t.naturalWidth<t.naturalHeight,t.src="//:0",s(yi)}),t.src=fl}}),gl=(s,t)=>{let e,i,r,o;if(!s||s.byteLength<14||s.getUint32(0)!==1165519206||s.getUint16(4)!==0)return;if(s.getUint16(6)===18761)i=!0;else if(s.getUint16(6)===19789)i=!1;else return;if(s.getUint16(8,i)!==42)return;r=8+s.getUint32(10,i);let n=s.getUint16(r-2,i);for(e=0,o=n;o>=0?e<o:e>o;o>=0?++e:--e){if(s.byteLength<r+10)return;s.getUint16(r,i)===274&&t(r+8,i),r+=12}},bl=(s,t)=>{gl(s,(e,i)=>s.setUint16(e,t,i))},_l=async(s,t,e)=>(e&&bl(t,1),$o(s,225,[t.buffer])),yl=(s,t)=>new Promise((e,i)=>{t&&(s.src=t),s.complete?e(s):(s.addEventListener("load",()=>{e(s)}),s.addEventListener("error",()=>{i(new Error("Failed to load image. Probably not an image."))}))}),vl=s=>yl(new Image,s),wl=[1,3],Cl=[192,193,194,195,197,198,199,201,202,203,205,206,207],Io={squareSide:[Math.floor(Math.sqrt(5*1e3*1e3)),4096,8192,11180,10836,11402,14188,16384],dimension:[4096,8192,16384,32767,65535]},xl=async s=>{let t=!1,{promiseReadJpegChunks:e,stack:i}=vi();return await e(s).then(()=>(i.forEach(({marker:r,view:o})=>{if(!t&&Cl.indexOf(r)>=0){let n=o.getUint8(5);wl.indexOf(n)<0&&(t=!0)}}),t)).catch(()=>t)},Oo=(s,t)=>{let e={};return(...i)=>{let r=t(i,e);return r in e?e[r]:e[r]=s(...i)}},Mo=(s,t)=>{let[e]=s,i=Object.keys(t).map(r=>parseInt(r,10)).sort((r,o)=>r-o);for(let r=0;r<i.length;r++){let o=i[r],n=!!t[o];if(o>e&&n||o<e&&!n)return o}return e},Oe={R:55,G:110,B:165,A:255},El=`rgba(${Oe.R}, ${Oe.G}, ${Oe.B}, ${Oe.A/255})`,Lo=(s,t)=>{try{let e=[s-1,t-1,1,1],{canvas:i,ctx:r}=xt();i.width=1,i.height=1;let{canvas:o,ctx:n}=xt();o.width=s,o.height=t,n&&(n.fillStyle=El,n.fillRect(...e),r.drawImage(o,s-1,t-1,1,1,0,0,1,1));let a=r&&r.getImageData(0,0,1,1).data,l=!1;return a&&(l=a[0]===Oe.R&&a[1]===Oe.G&&a[2]===Oe.B&&a[3]===Oe.A),o.width=o.height=1,l}catch{return console.error(`Failed to test for max canvas size of ${s}x${t}.`),!1}};function Uo(s){return(...t)=>new Promise(e=>{setTimeout(()=>{let i=s(...t);e(i)},0)})}var Al=Uo(Oo(Lo,Mo)),Tl=Uo(Oo(Lo,Mo)),Po=async(s,t)=>{let e=Io.squareSide.find(n=>n*n>=s*t),i=Io.dimension.find(n=>n>=s&&n>=t);if(!e||!i)throw new Error("Not supported");let[r,o]=await Promise.all([Al(e,e),Tl(i,1)]);if(r&&o)return!0;throw new Error("Not supported")},Ro=async(s,t,e)=>{try{let{ctx:i,canvas:r}=xt();return r.width=t,r.height=e,i.imageSmoothingQuality="high",i.drawImage(s,0,0,t,e),s instanceof HTMLImageElement&&(s.src="//:0"),s instanceof HTMLCanvasElement&&(s.width=s.height=1),r}catch(i){throw new Error("Canvas resize error",{cause:i})}},Sl=({img:s,targetW:t,targetH:e})=>Ro(s,t,e),Il=function({sourceW:s,targetW:t,targetH:e,step:i}){let r=[],o=t,n=e;do r.push([o,n]),o=Math.round(o/i),n=Math.round(n/i);while(o<s*i);return r.reverse()},$l=({img:s,sourceW:t,targetW:e,targetH:i,step:r})=>Il({sourceW:t,targetW:e,targetH:i,step:r}).reduce((n,[a,l])=>n.then(c=>Po(a,l).then(()=>Ro(c,a,l)).catch(()=>c)),Promise.resolve(s)),kl=()=>/iPad|iPhone|iPod/.test(navigator.platform)?!0:navigator.maxTouchPoints&&navigator.maxTouchPoints>2&&/MacIntel/.test(navigator.platform),Ol=navigator.maxTouchPoints&&navigator.maxTouchPoints>2&&/MacIntel/.test(navigator.platform),Ns=.71,Ml=(s,t)=>{if(s.width*Ns*s.height*Ns<t.size)throw new Error("Not required");let e=s.width,i=s.height,r=e/i,o=Math.floor(Math.sqrt(t.size*r)),n=Math.floor(t.size/Math.sqrt(t.size*r));return Po(o,n).then(()=>{let{ctx:a}=xt();return"imageSmoothingQuality"in a&&!kl()&&!Ol?Sl({img:s,targetW:o,targetH:n}):$l({img:s,sourceW:e,targetW:o,targetH:n,step:Ns})}).catch(()=>Promise.reject("Not supported"))},Do=async(s,t)=>{try{if(await xl(s))throw new Error("Should skipped");let i=await Promise.allSettled([pl(s),ml(),cl(s)]),o=!i.some(b=>b.status==="rejected"),[n,a,l]=i,c=await ul(s).catch(()=>s),h=await vl(URL.createObjectURL(c));URL.revokeObjectURL(h.src);let d=await Ml(h,t),p="image/jpeg",m=(t==null?void 0:t.quality)||.8;!o&&hl(d)&&(p="image/png",m=void 0);let f=await dl(d,p,m);if(o&&n.status==="fulfilled"&&n.value){let b=n.value,v=a.status==="fulfilled"?a.value:!1;f=await _l(f,b,v)}return o&&l.status==="fulfilled"&&l.value.length>0&&(f=await ko(f,l.value)),f}catch(e){let i;throw e instanceof Error&&(i=e.message),typeof e=="string"&&(i=e),new Error(`Failed to shrink image. ${i?`Message: "${i}".`:""}`,{cause:e})}};function Ll(s){let t=new Blob([s],{type:"image/svg+xml"});return URL.createObjectURL(t)}function Qe(s="hsl(209, 21%, 65%)",t=32,e=32){return Ll(`<svg width="${t}" height="${e}" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" fill="${s}" d="M9.68848 8.70068C9.68848 8.42454 9.91233 8.20068 10.1885 8.20068H15.0885C15.2211 8.20068 15.3483 8.25336 15.442 8.34713L20.342 13.2471C20.4358 13.3409 20.4885 13.4681 20.4885 13.6007V21.3007C20.4885 21.5768 20.2646 21.8007 19.9885 21.8007H10.1885C9.91233 21.8007 9.68848 21.5768 9.68848 21.3007V8.70068ZM10.6885 9.20068V20.8007H19.4885V14.1007L15.0885 14.1007C14.8123 14.1007 14.5885 13.8768 14.5885 13.6007L14.5885 9.20068H10.6885ZM15.5885 9.90779L18.7814 13.1007L15.5885 13.1007L15.5885 9.90779Z"/></svg>`)}function wi(s,t=40){if(s.type==="image/svg+xml")return URL.createObjectURL(s);let e=document.createElement("canvas"),i=e.getContext("2d"),r=new Image,o=new Promise((n,a)=>{r.onload=()=>{let l=r.height/r.width;l>1?(e.width=t,e.height=t*l):(e.height=t,e.width=t/l),i.fillStyle="rgb(240, 240, 240)",i.fillRect(0,0,e.width,e.height),i.drawImage(r,0,0,e.width,e.height),e.toBlob(c=>{if(!c){a();return}let h=URL.createObjectURL(c);n(h)})},r.onerror=l=>{a(l)}});return r.src=URL.createObjectURL(s),o}var Ul=/^([0-9]+)x([0-9]+)(?:\s+(\d{1,2}|100)%)?$/i,Fo=s=>{let t=Ul.exec(s==null?void 0:s.toLocaleLowerCase())||[];if(!t.length)return!1;let e=t[1]*t[2],i=16384*16384;return e>i?(console.warn(`Shrinked size can not be larger than ${Math.floor(i/1e3/1e3)}MP. You have set ${t[1]}x${t[2]} (${Math.ceil(e/1e3/100)/10}MP).`),!1):{quality:t[3]?t[3]/100:void 0,size:e}};var et=(s,t)=>{let e,i,r,o=(...n)=>{e?(clearTimeout(i),i=setTimeout(()=>{Date.now()-r>=t&&(s(...n),r=Date.now())},Math.max(t-(Date.now()-r),0))):(s(...n),r=Date.now(),e=!0)};return Object.defineProperty(o,"cancel",{configurable:!1,writable:!1,enumerable:!1,value:()=>{clearTimeout(i)}}),o};var J=Object.freeze({FINISHED:Symbol("FINISHED"),FAILED:Symbol("FAILED"),UPLOADING:Symbol("UPLOADING"),IDLE:Symbol("IDLE")}),Et=class s extends I{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"pauseRender",!0);u(this,"_entrySubs",new Set);u(this,"_entry",null);u(this,"_debouncedCalculateState",O(this._calculateState.bind(this),100));u(this,"_renderedOnce",!1);u(this,"_updateHint",et(()=>{let i=this.$.state===J.UPLOADING&&this._entry.getValue("externalUrl")&&this._entry.getValue("source")!==L.URL&&this._entry.getValue("errors").length===0&&this.$.progressValue===0?this.l10n("waiting-for",{source:this.l10n(`src-type-${this._entry.getValue("source")}`)}):"";this.$.hint=i},100));this.init$={...this.init$,uid:"",itemName:"",errorText:"",hint:"",thumbUrl:"",progressValue:0,progressVisible:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,showFileNames:!1,state:J.IDLE,ariaLabelStatusFile:"",onEdit:()=>{this.$["*currentActivityParams"]={internalId:this._entry.uid},this.modalManager.open(g.activities.CLOUD_IMG_EDIT),this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT},onRemove:()=>{this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let e of this._entrySubs)e.remove();this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(e){let[i]=e;this._isIntersecting=i.isIntersecting,this._thumbRect=i.boundingClientRect,i.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0)}_calculateState(){if(!this._entry)return;let e=this._entry,i=J.IDLE;e.getValue("errors").length>0?i=J.FAILED:e.getValue("isUploading")?i=J.UPLOADING:e.getValue("fileInfo")&&(i=J.FINISHED),this.$.state=i}async _generateThumbnail(){var i,r,o;if(!this._entry)return;let e=this._entry;if(e.getValue("fileInfo")&&e.getValue("isImage")){let n=Math.max(parseInt(String(((i=this==null?void 0:this._thumbRect)==null?void 0:i.height)||0)),parseInt(String(((r=this==null?void 0:this._thumbRect)==null?void 0:r.width)||0)),this.cfg.thumbSize),a=await this.proxyUrl(P(ne(this.cfg.cdnCname,this._entry.getValue("uuid")),N(e.getValue("cdnUrlModifiers"),`scale_crop/${n}x${n}/center`))),l=e.getValue("thumbUrl");l!==a&&(e.setValue("thumbUrl",a),l!=null&&l.startsWith("blob:")&&URL.revokeObjectURL(l));return}if((o=e.getValue("file"))!=null&&o.type.includes("image"))try{let n=await wi(e.getValue("file"),this.cfg.thumbSize);e.setValue("thumbUrl",n)}catch{let a=window.getComputedStyle(this).getPropertyValue("--uc-muted-foreground");e.setValue("thumbUrl",Qe(a))}else{let n=window.getComputedStyle(this).getPropertyValue("--uc-muted-foreground");e.setValue("thumbUrl",Qe(n))}}_subEntry(e,i){let r=this._entry.subscribe(e,o=>{this.isConnected&&i(o)});this._entrySubs.add(r)}_handleEntryId(e){var r;this._reset();let i=(r=this.uploadCollection)==null?void 0:r.read(e);this._entry=i,i&&(this._subEntry("uploadProgress",o=>{this.$.progressValue=o,this._updateHint()}),this._subEntry("fileName",o=>{this.$.itemName=o||i.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",o=>{this.$.itemName=i.getValue("fileName")||o||this.l10n("file-no-name")}),this._subEntry("fileInfo",()=>{this._debouncedCalculateState()}),this._subEntry("errors",()=>this._debouncedCalculateState()),this._subEntry("isUploading",()=>this._debouncedCalculateState()),this._subEntry("fileSize",()=>this._debouncedCalculateState()),this._subEntry("mimeType",()=>this._debouncedCalculateState()),this._subEntry("isImage",()=>this._debouncedCalculateState()))}initCallback(){super.initCallback(),this.sub("uid",e=>{this._handleEntryId(e)}),this.sub("state",e=>{this._handleState(e)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.subConfigValue("filesViewMode",e=>{this.cfg.filesViewMode==="list"&&(this.$.showFileNames=!0),this.cfg.filesViewMode==="grid"&&(this.$.showFileNames=this.cfg.gridShowFileNames),this.setAttribute("mode",e)}),this.subConfigValue("gridShowFileNames",e=>{this.cfg.filesViewMode==="grid"&&(this.$.showFileNames=e),this.cfg.filesViewMode==="list"&&(this.$.showFileNames=!0)}),this.onclick=()=>{s.activeInstances.forEach(e=>{e===this?e.setAttribute("focused",""):e.removeAttribute("focused")})},this.sub("*uploadTrigger",e=>{e.has(this._entry.uid)&&setTimeout(()=>this.isConnected&&this.upload())}),s.activeInstances.add(this)}_handleState(e){var i,r,o,n,a,l,c;e===J.FAILED?this.$.badgeIcon="badge-error":e===J.FINISHED&&(this.$.badgeIcon="badge-success"),e===J.UPLOADING&&(this.$.isFocused=!1),this.set$({isFailed:e===J.FAILED,isUploading:e===J.UPLOADING,isFinished:e===J.FINISHED,progressVisible:e===J.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((i=this._entry)==null?void 0:i.getValue("isImage"))&&((r=this._entry)==null?void 0:r.getValue("cdnUrl")),errorText:(n=(o=this._entry.getValue("errors"))==null?void 0:o[0])==null?void 0:n.message,ariaLabelStatusFile:this.l10n("a11y-file-item-status",{fileName:(a=this._entry)==null?void 0:a.getValue("fileName"),status:this.l10n((c=(l=e==null?void 0:e.description)==null?void 0:l.toLocaleLowerCase())!=null?c:"").toLocaleLowerCase()})}),this._updateHint()}destroyCallback(){super.destroyCallback(),s.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this._observer)==null||e.disconnect()}_settingsOfShrink(){return Fo(this.cfg.imageShrink)}_processShrink(e){return Do(e,this._settingsOfShrink())}async upload(){var r,o,n,a,l,c;let e=this._entry;if(!this.uploadCollection.read(e.uid)||e.getValue("fileInfo")||e.getValue("isUploading")||e.getValue("errors").length>0)return;let i=this.cfg.multiple?this.cfg.multipleMax:1;if(!(i&&this.uploadCollection.size>i)){this._debouncedCalculateState(),e.setValue("isUploading",!0),e.setValue("errors",[]);try{let h=new AbortController;e.setValue("abortController",h);let d=async()=>{let m=e.getValue("file");m&&this.cfg.imageShrink&&(m=await this._processShrink(m).catch(()=>m));let f=m||e.getValue("externalUrl")||e.getValue("uuid"),v={...await this.getUploadClientOptions(),fileName:e.getValue("fileName"),source:e.getValue("source"),onProgress:w=>{if(w.isComputable){let y=w.value*100;e.setValue("uploadProgress",y)}},signal:h.signal,metadata:await this.getMetadataFor(e.uid)};return this.debugPrint("upload options",f,v),us(f,v)},p=await this.$["*uploadQueue"].add(d);e.setMultipleValues({fileInfo:p,isUploading:!1,fileName:p.originalFilename,fileSize:p.size,isImage:p.isImage,mimeType:(n=(o=(r=p.contentInfo)==null?void 0:r.mime)==null?void 0:o.mime)!=null?n:p.mimeType,uuid:p.uuid,cdnUrl:(a=e.getValue("cdnUrl"))!=null?a:p.cdnUrl,cdnUrlModifiers:(l=e.getValue("cdnUrlModifiers"))!=null?l:"",uploadProgress:100,source:(c=e.getValue("source"))!=null?c:null}),e===this._entry&&this._debouncedCalculateState()}catch(h){h instanceof Se&&h.isCancel?e.setMultipleValues({isUploading:!1,uploadProgress:0}):e.setMultipleValues({isUploading:!1,uploadProgress:0,uploadError:h}),e===this._entry&&this._debouncedCalculateState()}}}};Et.template=`<div class="uc-inner" set="@finished: isFinished; @uploading: isUploading; @failed: isFailed; @focused: isFocused"><uc-thumb set="uid:uid;badgeIcon:badgeIcon"></uc-thumb><div aria-atomic="true" aria-live="polite" class="uc-file-name-wrapper" set="@aria-label:ariaLabelStatusFile;"><span class="uc-file-name" set="@hidden: !showFileNames">{{itemName}}</span><span class="uc-file-error" set="@hidden: !errorText;">{{errorText}}</span><span class="uc-file-hint" set="@hidden: !hint">{{hint}}</span></div><div class="uc-file-actions"><button type="button" l10n="@title:file-item-edit-button;@aria-label:file-item-edit-button" class="uc-edit-btn uc-mini-btn" set="onclick: onEdit; @hidden: !isEditable" ><uc-icon name="edit-file"></uc-icon></button><button type="button" l10n="@title:file-item-remove-button;@aria-label:file-item-remove-button" class="uc-remove-btn uc-mini-btn" set="onclick: onRemove;" ><uc-icon name="remove-file"></uc-icon></button><button type="button" class="uc-upload-btn uc-mini-btn" set="onclick: onUpload;"><uc-icon name="upload"></uc-icon></button></div><uc-progress-bar class="uc-progress-bar" set="value: progressValue; visible: progressVisible; @hasFileName: showFileNames" ></uc-progress-bar></div>`;Et.activeInstances=new Set;var tt=class tt extends _{constructor(){super();u(this,"_handleBackdropClick",()=>{this._closeDialog()});u(this,"_closeDialog",()=>{var e;(e=this.modalManager)==null||e.close(this.id),this.modalManager.hasActiveModals||(document.body.style.overflow="")});u(this,"_handleDialogClose",()=>{this._closeDialog()});u(this,"_handleDialogMouseDown",e=>{this._mouseDownTarget=e.target});u(this,"_handleDialogMouseUp",e=>{e.target===this.ref.dialog&&e.target===this._mouseDownTarget&&this._closeDialog()});this.init$={...this.init$,closeClicked:this._handleDialogClose}}show(){this.ref.dialog.showModal?(this.setAttribute("aria-modal","true"),this.ref.dialog.showModal()):this.ref.dialog.setAttribute("open",""),this.cfg.modalScrollLock&&(document.body.style.overflow="hidden")}hide(){this.ref.dialog.close?(this.setAttribute("aria-modal","false"),this.ref.dialog.close()):this.ref.dialog.removeAttribute("open")}_handleModalOpen({id:e}){e===this.id?this.show():this.hide()}_handleModalClose({id:e}){e===this.id&&this.hide()}_handleModalCloseAll(){this.hide()}initCallback(){var e;super.initCallback(),(e=this.modalManager)==null||e.registerModal(this.id,this),this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp),this.subConfigValue("modalBackdropStrokes",i=>{i?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.handleModalOpen=this._handleModalOpen.bind(this),this.handleModalClose=this._handleModalClose.bind(this),this.handleModalCloseAll=this._handleModalCloseAll.bind(this),this.modalManager.subscribe(R.OPEN,this.handleModalOpen),this.modalManager.subscribe(R.CLOSE,this.handleModalClose),this.modalManager.subscribe(R.CLOSE_ALL,this.handleModalCloseAll)}destroyCallback(){super.destroyCallback(),document.body.style.overflow="",this._mouseDownTarget=void 0,this.ref.dialog.removeEventListener("close",this._handleDialogClose),this.ref.dialog.removeEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.removeEventListener("mouseup",this._handleDialogMouseUp),this.modalManager.unsubscribe(R.OPEN,this.handleModalOpen),this.modalManager.unsubscribe(R.CLOSE,this.handleModalClose),this.modalManager.unsubscribe(R.CLOSE_ALL,this.handleModalCloseAll)}};u(tt,"styleAttrs",[...W(tt,tt,"styleAttrs"),"uc-modal"]),u(tt,"StateConsumerScope","modal");var Ci=tt;Ci.template=`<dialog ref="dialog"><slot></slot></dialog>`;var xi=class extends I{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"historyTracked",!0);u(this,"activityType",g.activities.UPLOAD_LIST);u(this,"_throttledHandleCollectionUpdate",et(()=>{this.isConnected&&(this._updateUploadsState(),!this.couldOpenActivity&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},300));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",commonErrorMessage:"",hasFiles:!1,onAdd:()=>{this.api.initFlow(!0)},onUpload:()=>{this.emit(k.UPLOAD_CLICK),this.api.uploadAll(),this._throttledHandleCollectionUpdate()},onDone:()=>{this.emit(k.DONE_CLICK,this.api.getOutputCollectionState()),this.api.doneFlow()},onCancel:()=>{this.uploadCollection.clearAll()}}}_updateUploadsState(){let e=this.api.getOutputCollectionState(),i={total:e.totalCount,succeed:e.successCount,uploading:e.uploadingCount,failed:e.failedCount},r=!e.errors.some(p=>p.type==="TOO_MANY_FILES"||p.type==="TOO_FEW_FILES"),o=e.errors.some(p=>p.type==="TOO_MANY_FILES"),n=e.totalCount===(this.cfg.multiple?this.cfg.multipleMax:1),a=i.failed===0&&e.errors.length===0,l=!1,c=!1,h=!1;if(i.total-i.succeed-i.uploading-i.failed>0&&r)l=!0;else{c=!0;let p=this.cfg.groupOutput?!!e.group:!0;h=i.total===i.succeed&&r&&a&&p}this.set$({doneBtnVisible:c,doneBtnEnabled:h,uploadBtnVisible:l,addMoreBtnEnabled:i.total===0||!o&&!n,addMoreBtnVisible:!n||this.cfg.multiple}),this.bindL10n("headerText",()=>this._getHeaderText(i))}_getHeaderText(e){let i=r=>{let o=e[r];return this.l10n(`header-${r}`,{count:o})};return e.uploading>0?i("uploading"):e.failed>0?i("failed"):e.succeed>0?i("succeed"):i("total")}get couldOpenActivity(){return this.cfg.showEmptyList||this.uploadCollection.size>0}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._throttledHandleCollectionUpdate),this.subConfigValue("multipleMin",this._throttledHandleCollectionUpdate),this.subConfigValue("multipleMax",this._throttledHandleCollectionUpdate),this.sub("*groupInfo",e=>{e&&this._throttledHandleCollectionUpdate()}),this.subConfigValue("filesViewMode",e=>{this.setAttribute("mode",e)}),this.sub("*currentActivity",e=>{!this.couldOpenActivity&&e===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._throttledHandleCollectionUpdate),this.sub("*uploadList",e=>{this._throttledHandleCollectionUpdate(),this.set$({hasFiles:e.length>0}),this.cfg.confirmUpload||this.api.uploadAll()},!1),this.sub("*collectionErrors",e=>{let i=e.filter(r=>r.type!=="SOME_FILES_HAS_ERRORS")[0];if(!i){this.set$({commonErrorMessage:null});return}this.set$({commonErrorMessage:i.message})})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._throttledHandleCollectionUpdate)}};xi.template=`<uc-activity-header><span aria-live="polite" class="uc-header-text">{{headerText}}</span><button type="button" class="uc-mini-btn uc-close-btn" set="onclick: *closeModal" l10n="@title:a11y-activity-header-button-close;@aria-label:a11y-activity-header-button-close" ><uc-icon name="close"></uc-icon></button></uc-activity-header><div class="uc-no-files" set="@hidden: hasFiles"><slot name="empty"><span l10n="no-files"></span></slot></div><div class="uc-files"><div class="uc-files-wrapper" repeat="*uploadList" repeat-item-tag="uc-file-item"></div><button type="button" class="uc-add-more-btn uc-secondary-btn" set="onclick: onAdd; @disabled: !addMoreBtnEnabled; @hidden: !addMoreBtnVisible" ><uc-icon name="add"></uc-icon><span l10n="add-more"></span></button></div><div class="uc-common-error" set="@hidden: !commonErrorMessage; textContent: commonErrorMessage;"></div><div class="uc-toolbar"><button type="button" class="uc-cancel-btn uc-secondary-btn" set="onclick: onCancel;" l10n="clear"></button><div class="uc-toolbar-spacer"></div><button type="button" class="uc-add-more-btn uc-secondary-btn" set="onclick: onAdd; @disabled: !addMoreBtnEnabled; @hidden: !addMoreBtnVisible" ><uc-icon name="add"></uc-icon><span l10n="add-more"></span></button><button type="button" class="uc-upload-btn uc-primary-btn" set="@hidden: !uploadBtnVisible; onclick: onUpload;" l10n="upload" ></button><button type="button" class="uc-done-btn uc-primary-btn" set="@hidden: !doneBtnVisible; onclick: onDone; @disabled: !doneBtnEnabled" l10n="done" ></button></div><uc-drop-area ghost></uc-drop-area>`;var Ei=class extends I{constructor(){super(...arguments);u(this,"couldBeCtxOwner",!0);u(this,"activityType",g.activities.URL);u(this,"init$",{...this.init$,importDisabled:!0,onUpload:e=>{e.preventDefault();let i=this.ref.input.value;this.api.addFileFromUrl(i,{source:L.URL}),this.modalManager.open(g.activities.UPLOAD_LIST),this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:e=>{let i=e.target.value;this.set$({importDisabled:!i})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};Ei.template=`<uc-activity-header><button type="button" class="uc-mini-btn" set="onclick: *historyBack" l10n="@title:back;@aria-label:back"><uc-icon name="back"></uc-icon></button><div><uc-icon name="url"></uc-icon><span l10n="caption-from-url"></span></div><button type="button" class="uc-mini-btn uc-close-btn" set="onclick: *closeModal" l10n="@title:a11y-activity-header-button-close;@aria-label:a11y-activity-header-button-close" ><uc-icon name="close"></uc-icon></button></uc-activity-header><form class="uc-content"><input placeholder="https://" class="uc-url-input" type="text" ref="input" set="oninput: onInput" /><button type="submit" class="uc-url-upload-btn uc-primary-btn" set="onclick: onUpload; @disabled: importDisabled" l10n="upload-url" ></button></form>`;var No=()=>typeof navigator.permissions!="undefined";var Pl={width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},Vo=["camera","microphone"];function Ai(s){let t=Math.floor(s/60).toString().padStart(2,"0"),e=Math.floor(s%60).toString().padStart(2,"0");return`${t}:${e}`}var Bo="image/jpeg",zo="video/webm",Ti=class extends I{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"activityType",g.activities.CAMERA);u(this,"_unsubPermissions",null);u(this,"_chunks",[]);u(this,"_mediaRecorder",null);u(this,"_stream",null);u(this,"_selectedAudioId",null);u(this,"_selectedCameraId",null);u(this,"_chooseActionWithCamera",()=>{var e;if(this._activeTab===T.PHOTO&&this._shot(),this._activeTab===T.VIDEO){if(((e=this._mediaRecorder)==null?void 0:e.state)==="recording"){this._stopRecording();return}this._startRecording()}});u(this,"_updateTimer",()=>{let e=Math.floor((performance.now()-this.$._startTime+this.$._elapsedTime)/1e3);if(typeof this.cfg.maxVideoRecordingDuration=="number"&&this.cfg.maxVideoRecordingDuration>0){let i=this.cfg.maxVideoRecordingDuration-e;if(i<=0){this.ref.timer.textContent=Ai(i),this._stopRecording();return}this.ref.timer.textContent=Ai(i)}else this.ref.timer.textContent=Ai(e);this._animationFrameId=requestAnimationFrame(this._updateTimer)});u(this,"_startTimer",()=>{this.$._startTime=performance.now(),this.$._elapsedTime=0,this._updateTimer()});u(this,"_stopTimer",()=>{this._animationFrameId&&cancelAnimationFrame(this._animationFrameId)});u(this,"_startTimeline",()=>{let e=this.ref.video.currentTime,i=this.ref.video.duration;this.ref.line.style.transform=`scaleX(${e/i})`,this.ref.timer.textContent=Ai(e),this._animationFrameId=requestAnimationFrame(this._startTimeline)});u(this,"_stopTimeline",()=>{this._animationFrameId&&cancelAnimationFrame(this._animationFrameId)});u(this,"_startRecording",()=>{try{this._chunks=[],this._options={...this.cfg.mediaRecorderOptions};let{mimeType:e}=this.cfg.mediaRecorderOptions||{};e&&MediaRecorder.isTypeSupported(e)?this._options.mimeType=e:MediaRecorder.isTypeSupported(zo)?this._options.mimeType=zo:this._options.mimeType="video/mp4",this._stream&&(this._mediaRecorder=new MediaRecorder(this._stream,this._options),this._mediaRecorder.start(),this._mediaRecorder.addEventListener("dataavailable",i=>{this._chunks.push(i.data)}),this._startTimer(),this.classList.add("uc-recording"),this._setCameraState(te.PLAY))}catch(e){console.error("Failed to start recording",e)}});u(this,"_stopRecording",()=>{var e,i;(e=this._mediaRecorder)==null||e.addEventListener("stop",()=>{this._previewVideo(),this._stopTimer(),this._setCameraState(te.STOP)}),(i=this._mediaRecorder)==null||i.stop(),this.classList.remove("uc-recording")});u(this,"_toggleRecording",()=>{var e;((e=this._mediaRecorder)==null?void 0:e.state)!=="recording"&&(!this.ref.video.paused&&!this.ref.video.ended&&this.ref.video.readyState>2?this.ref.video.pause():this.ref.video.paused&&this.ref.video.play())});u(this,"_toggleEnableAudio",()=>{var e;(e=this._stream)==null||e.getAudioTracks().forEach(i=>{i.enabled=!i.enabled,this.$.toggleMicrophoneIcon=i.enabled?"microphone":"microphone-mute",this.$.audioSelectDisabled=!i.enabled})});u(this,"_previewVideo",()=>{var e;try{let i=new Blob(this._chunks,{type:(e=this._mediaRecorder)==null?void 0:e.mimeType}),r=URL.createObjectURL(i);this.ref.video.muted=!1,this.ref.video.volume=1,this.$.video=null,this.ref.video.src=r,this.ref.video.addEventListener("play",()=>{this._startTimeline(),this.set$({currentTimelineIcon:"pause"})}),this.ref.video.addEventListener("pause",()=>{this.set$({currentTimelineIcon:"play"}),this._stopTimeline()})}catch(i){console.error("Failed to preview video",i)}});u(this,"_retake",()=>{this._setCameraState(te.RETAKE),this._activeTab===T.VIDEO&&(this.$.video=this._stream,this.ref.video.muted=!0),this.ref.video.play()});u(this,"_accept",()=>{var o,n,a;if(this._setCameraState(te.ACCEPT),this._activeTab===T.PHOTO){(o=this._canvas)==null||o.toBlob(l=>{let c=this._createFile("camera","jpeg",Bo,l);this._toSend(c)},Bo);return}let e=new Blob(this._chunks,{type:(n=this._mediaRecorder)==null?void 0:n.mimeType}),i=this._guessExtensionByMime((a=this._mediaRecorder)==null?void 0:a.mimeType),r=this._createFile("video",i,`video/${i}`,e);this._toSend(r),this._chunks=[]});u(this,"_handlePhoto",e=>{e===te.SHOT&&this.set$({tabVideoHidden:!0,cameraHidden:!0,tabCameraHidden:!0,cameraActionsHidden:!1,cameraSelectHidden:!0}),(e===te.RETAKE||e===te.ACCEPT)&&this.set$({tabVideoHidden:!this._cameraModes.includes(T.VIDEO),tabCameraHidden:!this._cameraModes.includes(T.PHOTO),cameraHidden:!1,cameraActionsHidden:!0,cameraSelectHidden:this._cameraDevices.length<=1})});u(this,"_handleVideo",e=>{e===te.PLAY&&this.set$({timerHidden:!1,tabCameraHidden:!0,cameraSelectHidden:!0,audioSelectHidden:!0,currentTimelineIcon:"pause",currentIcon:"square",mutableClassButton:"uc-shot-btn uc-camera-action uc-stop-record"}),e===te.STOP&&this.set$({timerHidden:!1,cameraHidden:!0,audioToggleMicrophoneHidden:!0,cameraActionsHidden:!1}),(e===te.RETAKE||e===te.ACCEPT)&&this.set$({timerHidden:!0,tabVideoHidden:!this._cameraModes.includes(T.VIDEO),tabCameraHidden:!this._cameraModes.includes(T.PHOTO),cameraHidden:!1,cameraActionsHidden:!0,audioToggleMicrophoneHidden:!this.cfg.enableAudioRecording,currentIcon:"video-camera-full",mutableClassButton:"uc-shot-btn uc-camera-action",audioSelectHidden:!this.cfg.enableAudioRecording||this._audioDevices.length<=1,cameraSelectHidden:this._cameraDevices.length<=1})});u(this,"_setCameraState",e=>{this._activeTab===T.PHOTO&&(e==="shot"||e==="retake"||e==="accept")&&this._handlePhoto(e),this._activeTab===T.VIDEO&&(e==="play"||e==="stop"||e==="retake"||e==="accept"||e==="pause"||e==="resume")&&this._handleVideo(e)});u(this,"_handleActiveTab",e=>{this.ref.switcher.querySelectorAll("button").forEach(i=>{i.classList.toggle("uc-active",i.getAttribute("data-id")===e)}),e===T.PHOTO&&this.set$({currentIcon:"camera-full",audioSelectHidden:!0,audioToggleMicrophoneHidden:!0}),e===T.VIDEO&&this.set$({currentTimelineIcon:"play",currentIcon:"video-camera-full",audioSelectHidden:!this.cfg.enableAudioRecording||this._audioDevices.length<=1,audioToggleMicrophoneHidden:!this.cfg.enableAudioRecording}),this._activeTab=e});u(this,"_createFile",(e,i,r,o)=>{let n=Date.now(),a=`${e}-${n}.${i}`;return new File([o],a,{lastModified:n,type:r})});u(this,"_toSend",e=>{this.api.addFileFromObject(e,{source:L.CAMERA}),this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.modalManager.open(g.activities.UPLOAD_LIST)});u(this,"_setPermissionsState",O(e=>{this.classList.toggle("uc-initialized",e==="granted");let i=this._activeTab===T.VIDEO&&this.cfg.enableAudioRecording,r=this._activeTab===T.PHOTO?"camera-full":"video-camera-full";e==="granted"?this.set$({videoHidden:!1,cameraHidden:!1,tabCameraHidden:!this._cameraModes.includes(T.PHOTO),tabVideoHidden:!this._cameraModes.includes(T.VIDEO),messageHidden:!0,timerHidden:!0,currentIcon:r,audioToggleMicrophoneHidden:!i,audioSelectHidden:!i}):e==="prompt"?(this.$.l10nMessage="camera-permissions-prompt",this.set$({videoHidden:!0,cameraHidden:!0,tabCameraHidden:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage="camera-permissions-denied",this.set$({videoHidden:!0,messageHidden:!1,tabCameraHidden:!this._cameraModes.includes(T.PHOTO),tabVideoHidden:!this._cameraModes.includes(T.VIDEO),cameraActionsHidden:!0,mutableClassButton:"uc-shot-btn uc-camera-action"}),this._stopCapture())},300));u(this,"_makeStreamInactive",()=>{var r,o;if(!this._stream)return!1;let e=(r=this._stream)==null?void 0:r.getAudioTracks(),i=(o=this._stream)==null?void 0:o.getVideoTracks();e.forEach(n=>n.stop()),i.forEach(n=>n.stop())});u(this,"_stopCapture",()=>{var e;this._capturing&&(this.ref.video.volume=0,(e=this.$.video)==null||e.getTracks()[0].stop(),this.$.video=null,this._makeStreamInactive(),this._stopTimer(),this._capturing=!1)});u(this,"_capture",async()=>{let e={video:Pl,audio:this.cfg.enableAudioRecording?{}:!1};this._selectedCameraId&&(e.video={deviceId:{exact:this._selectedCameraId}}),this._selectedAudioId&&this.cfg.enableAudioRecording&&(e.audio={deviceId:{exact:this._selectedAudioId}}),this.ref.video.volume=0;try{this._setPermissionsState("prompt"),this._stream=await navigator.mediaDevices.getUserMedia(e),this._stream.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=this._stream,this._capturing=!0,this._setPermissionsState("granted")}catch(i){this._setPermissionsState("denied"),console.log("Failed to capture camera",i)}});u(this,"_handlePermissionsChange",()=>{this._capture()});u(this,"_permissionAccess",async()=>{try{for(let e of Vo)this[`${e}Response`]=await navigator.permissions.query({name:e}),this[`${e}Response`].addEventListener("change",this._handlePermissionsChange)}catch(e){console.log("Failed to use permissions API. Fallback to manual request mode.",e),this._capture()}});u(this,"_getPermission",()=>{});u(this,"_requestDeviceAccess",async()=>{try{await navigator.mediaDevices.getUserMedia({video:!0,audio:this.cfg.enableAudioRecording}),await this._getDevices(),navigator.mediaDevices.addEventListener("devicechange",this._getDevices)}catch(e){console.log("Failed to get user media",e)}});u(this,"_getDevices",async()=>{var e,i;try{let r=await navigator.mediaDevices.enumerateDevices();this._cameraDevices=r.filter(o=>o.kind==="videoinput").map((o,n)=>({text:o.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:o.deviceId})),this._audioDevices=this.cfg.enableAudioRecording&&r.filter(o=>o.kind==="audioinput").map(o=>({text:o.label.trim(),value:o.deviceId})),this._cameraDevices.length>1&&this.set$({cameraSelectOptions:this._cameraDevices,cameraSelectHidden:!1}),this._selectedCameraId=(e=this._cameraDevices[0])==null?void 0:e.value,this._audioDevices.length>1&&this.set$({audioSelectOptions:this._audioDevices,audioSelectHidden:!1}),this._selectedAudioId=(i=this._audioDevices[0])==null?void 0:i.value}catch(r){console.log("Failed to get devices",r)}});u(this,"_onActivate",async()=>{await this._permissionAccess(),await this._requestDeviceAccess(),await this._capture(),this._handleCameraModes(this._cameraModes)});u(this,"_onDeactivate",async()=>{this._unsubPermissions&&this._unsubPermissions(),!!window.chrome||this._setPermissionsState("denied"),this._stopCapture()});u(this,"_handleCameraModes",e=>{this.$.tabVideoHidden=!e.includes(T.VIDEO),this.$.tabCameraHidden=!e.includes(T.PHOTO);let i=e[0];(!this._activeTab||!e.includes(this._activeTab))&&this._handleActiveTab(i)});this.init$={...this.init$,video:null,videoTransformCss:null,videoHidden:!0,messageHidden:!0,requestBtnHidden:No(),cameraSelectOptions:null,cameraSelectHidden:!0,l10nMessage:"",switcher:null,panels:null,timer:null,timerHidden:!0,cameraHidden:!0,cameraActionsHidden:!0,audioSelectOptions:null,audioSelectHidden:!0,audioSelectDisabled:!0,audioToggleMicrophoneHidden:!0,tabCameraHidden:!0,tabVideoHidden:!0,currentIcon:"camera-full",currentTimelineIcon:"play",toggleMicrophoneIcon:"microphone",_startTime:0,_elapsedTime:0,_animationFrameId:null,mutableClassButton:"uc-shot-btn uc-camera-action",onCameraSelectChange:e=>{this._selectedCameraId=e.target.value,this._capture()},onAudioSelectChange:e=>{this._selectedAudioId=e.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>this._shot(),onRequestPermissions:()=>this._capture(),onStartCamera:()=>this._chooseActionWithCamera(),onStartRecording:()=>this._startRecording(),onStopRecording:()=>this._stopRecording(),onToggleRecording:()=>this._toggleRecording(),onToggleAudio:()=>this._toggleEnableAudio(),onRetake:()=>this._retake(),onAccept:()=>this._accept(),onClickTab:e=>{let i=e.currentTarget.getAttribute("data-id");i&&this._handleActiveTab(i)}}}_shot(){if(this._setCameraState("shot"),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d"),!this._ctx)throw new Error("Failed to get canvas context");this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this.cfg.cameraMirror&&(this._ctx.translate(this._canvas.width,0),this._ctx.scale(-1,1)),this._ctx.drawImage(this.ref.video,0,0),this.ref.video.pause()}_guessExtensionByMime(e){let i={mp4:"mp4",ogg:"ogg",webm:"webm",quicktime:"mov","x-matroska":"mkv"};if(e==="")return"webm";if(e&&(e=e.split("/"),(e==null?void 0:e[0])==="video")){e=e.slice(1).join("/");let r=e==null?void 0:e.split(";")[0];if(i[r])return i[r]}return"avi"}get _cameraModes(){return V(this.cfg.cameraModes)}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",e=>{this.$.videoTransformCss=e?"scaleX(-1)":null}),this.subConfigValue("enableAudioRecording",e=>{this.$.audioToggleMicrophoneHidden=!e,this.$.audioSelectDisabled=!e}),this.subConfigValue("cameraModes",e=>{if(!this.isActivityActive)return;let i=q(e);this._handleCameraModes(i)})}_destroy(){var e,i;for(let r of Vo)(e=this[`${r}Response`])==null||e.removeEventListener("change",this._handlePermissionsChange);(i=navigator.mediaDevices)==null||i.removeEventListener("devicechange",this._getDevices)}async destroyCallback(){super.destroyCallback(),this._destroy()}};Ti.template=`<uc-activity-header><button type="button" class="uc-mini-btn" set="onclick: *historyBack" l10n="@title:back"><uc-icon name="back"></uc-icon></button><div set="@hidden: !cameraSelectHidden"><uc-icon name="camera"></uc-icon><span l10n="caption-camera"></span></div><uc-select class="uc-camera-select" set="$.options: cameraSelectOptions; @hidden: cameraSelectHidden; onchange: onCameraSelectChange" ></uc-select><button type="button" class="uc-mini-btn uc-close-btn" set="onclick: *closeModal" l10n="@title:a11y-activity-header-button-close;@aria-label:a11y-activity-header-button-close" ><uc-icon name="close"></uc-icon></button></uc-activity-header><div class="uc-content"><video muted autoplay playsinline set="srcObject: video; style.transform: videoTransformCss; @hidden: videoHidden" ref="video" ></video><div class="uc-message-box" set="@hidden: messageHidden"><span l10n="l10nMessage"></span><button type="button" set="onclick: onRequestPermissions; @hidden: requestBtnHidden" l10n="camera-permissions-request" ></button></div></div><div class="uc-controls"><div ref="switcher" class="uc-switcher" set="@hidden:!timerHidden"><button data-id="photo" type="button" class="uc-switch uc-mini-btn" set="onclick: onClickTab; @hidden: tabCameraHidden" ><uc-icon name="camera"></uc-icon></button><button data-id="video" type="button" class="uc-switch uc-mini-btn" set="onclick: onClickTab; @hidden: tabVideoHidden" ><uc-icon name="video-camera"></uc-icon></button></div><button class="uc-secondary-btn uc-recording-timer" set="@hidden:timerHidden; onclick: onToggleRecording"><uc-icon set="@name: currentTimelineIcon"></uc-icon><span ref="timer"> 00:00 </span><span ref="line" class="uc-line"></span></button><div class="uc-camera-actions uc-camera-action" set="@hidden: cameraActionsHidden"><button type="button" class="uc-secondary-btn" set="onclick: onRetake">Retake</button><button type="button" class="uc-primary-btn" set="onclick: onAccept">Accept</button></div><button type="button" class="uc-shot-btn uc-camera-action" set="onclick: onStartCamera; @class: mutableClassButton; @hidden: cameraHidden;" ><uc-icon set="@name: currentIcon"></uc-icon></button><div class="uc-select"><button class="uc-mini-btn uc-btn-microphone" set="onclick: onToggleAudio; @hidden: audioToggleMicrophoneHidden;"><uc-icon set="@name:toggleMicrophoneIcon"></uc-icon></button><uc-select class="uc-audio-select" set="$.options: audioSelectOptions; onchange: onAudioSelectChange; @hidden: audioSelectHidden; @disabled: audioSelectDisabled" ></uc-select></div></div>`;var Si=class extends I{constructor(){super(...arguments);u(this,"requireCtxName",!0)}initCallback(){super.initCallback(),this.$["*eventEmitter"].bindTarget(this)}destroyCallback(){super.destroyCallback(),this.$["*eventEmitter"].unbindTarget(this)}};Si.EventType=k;var Rl=Si;var Ii=class extends I{constructor(){super(...arguments);u(this,"init$",{...this.init$,visible:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let e=this.uploadCollection.items().some(i=>this.uploadCollection.read(i).getValue("isUploading"));this.$.visible=e}),this.sub("visible",e=>{e?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",e=>{this.$.value=e})}destroyCallback(){var e;super.destroyCallback(),(e=this._unobserveCollection)==null||e.call(this)}};Ii.template='<uc-progress-bar set="visible: visible; value: value"></uc-progress-bar>';var $i=class extends _{constructor(){super(...arguments);u(this,"_value",0);u(this,"_visible",!0);u(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",e=>{if(e==null)return;let i=this._value;if(this._value=e,!!this._visible){if(e===100&&this.ref.realProgressLine.addEventListener("transitionend",()=>{this.classList.add("uc-progress-bar--hidden"),this.ref.realProgressLine.classList.toggle("uc-progress--hidden",!0)},{once:!0}),this.ref.fakeProgressLine.classList.toggle("uc-fake-progress--hidden",e!==0),e===0&&i>0){this.ref.realProgressLine.addEventListener("transitionend",()=>{this.style.setProperty("--l-progress-value",this._value.toString())},{once:!0});return}this.style.setProperty("--l-progress-value",this._value.toString())}}),this.defineAccessor("visible",e=>{this._visible=e,this.ref.realProgressLine.classList.toggle("uc-progress--hidden",!e),this.ref.fakeProgressLine.classList.toggle("uc-fake-progress--hidden",!e)})}};$i.template=`<div ref="fakeProgressLine" class="uc-fake-progress"></div><div ref="realProgressLine" class="uc-progress"></div>`;var de="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";function Ho(...s){return s.reduce((t,e)=>{if(typeof e=="string")return t[e]=!0,t;for(let i of Object.keys(e))t[i]=e[i];return t},{})}function B(...s){let t=Ho(...s);return Object.keys(t).reduce((e,i)=>(t[i]&&e.push(i),e),[]).join(" ")}function jo(s,...t){let e=Ho(...t);for(let i of Object.keys(e))s.classList.toggle(i,e[i])}var Go=s=>{if(!s)return X;let t=q(s).filter(e=>X.includes(e));return t.length===0?X:t};function Wo(s){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":X,"*tabId":M.CROP,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:de,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:be(X),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let t=s.querySelectorAll("img");for(let e of t){let i=e.src;e.src=de,e.src=i}s.$["*networkProblems"]=!1},"*on.apply":t=>{if(!t)return;let e=s.$["*originalUrl"],i=N(Te(t),"preview"),r=P(e,i),o={originalUrl:e,cdnUrlModifiers:i,cdnUrl:r,transformations:t};s.dispatchEvent(new CustomEvent("apply",{detail:o,bubbles:!0,composed:!0})),s.remove()},"*on.cancel":()=>{s.remove(),s.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}var Xo="<svg width='0' height='0' style='position:absolute'><symbol viewBox='0 0 20 20' id='uc-icon-brightness' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M15 10a5 5 0 0 1-5 5m5-5a5 5 0 0 0-5-5m5 5h-5m0 5a5 5 0 0 1 0-10m0 10V5m0 15v-3M2.93 2.929 5.05 5.05M0 10h3m-.07 7.071 2.12-2.121M10 0v3m7.07 14.071-2.12-2.121M20 10h-3m.07-7.071L14.95 5.05m-.626 2.45H10m4.324 5H10'/></symbol><symbol fill='currentColor' viewBox='0 0 20 20' id='uc-icon-closeMax' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='M8.232 10 3.585 5.353l1.768-1.768L10 8.232l4.648-4.647 1.767 1.768L11.768 10l4.647 4.648-1.767 1.767L10 11.768l-4.647 4.647-1.768-1.767L8.232 10Z' clip-rule='evenodd'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-contrast' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M2 10a8 8 0 1 0 16 0 8 8 0 1 0-16 0m8-8v16m8-8h-8m7.598 2.5H10m6.24 2.5H10m7.6-7.5H10M16.242 5H10'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-crop' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M20 14H7.005C6.45 14 6 13.55 6 12.995V0M0 6h13.067c.515 0 .933.418.933.933V20M14.5.4 13 2l1.5 1.6M13 2h2a3 3 0 0 1 3 3v2M5.5 19.6 7 18l-1.5-1.6M7 18H5a3 3 0 0 1-3-3v-2'/></symbol><symbol fill='currentColor' viewBox='0 0 20 20' id='uc-icon-done' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='m18.057 6.333-9.365 9.125a1.25 1.25 0 0 1-1.768-.023L1.92 10.296l1.791-1.744 4.132 4.243 8.47-8.253 1.744 1.79Z' clip-rule='evenodd'/></symbol><symbol fill='currentColor' viewBox='0 0 25 24' id='uc-icon-edit-file' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='M18.558 2.804a.78.78 0 0 0-.557.235l-.008.007-2.472 2.46 3.847 3.848 2.46-2.473.004-.003a.78.78 0 0 0 0-1.108l-.004-.003-2.712-2.728a.78.78 0 0 0-.558-.235Zm-.248 7.613-3.852-3.852-8.93 8.887-1.516 5.41 5.41-1.515 8.888-8.93Zm-.636-8.934a2.28 2.28 0 0 1 2.512.505l2.702 2.717.002.002a2.278 2.278 0 0 1 0 3.234l-.002.002-12.541 12.602a.75.75 0 0 1-.33.193l-6.884 1.928a.75.75 0 0 1-.925-.924l1.928-6.885a.75.75 0 0 1 .193-.33l12.603-12.54a2.28 2.28 0 0 1 .742-.504Z' clip-rule='evenodd'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-enhance' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M19 13h-2m0 0a4 4 0 0 1-4-4m4 4a4 4 0 0 0-4 4m0-8V7m0 2a4 4 0 0 1-4 4m-2 0h2m0 0a4 4 0 0 1 4 4m0 0v2M8 8.5H6.5m0 0a2 2 0 0 1-2-2m2 2a2 2 0 0 0-2 2m0-4V5m0 1.5a2 2 0 0 1-2 2M1 8.5h1.5m0 0a2 2 0 0 1 2 2m0 0V12M12 3h-1m0 0a1 1 0 0 1-1-1m1 1a1 1 0 0 0-1 1m0-2V1m0 1a1 1 0 0 1-1 1M8 3h1m0 0a1 1 0 0 1 1 1m0 0v1'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-exposure' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M10 20v-3M2.93 2.929 5.05 5.05M0 10h3m-.07 7.071 2.12-2.121M10 0v3m7.07 14.071-2.12-2.121M20 10h-3m.07-7.071L14.95 5.05M5 10a5 5 0 1 0 10 0 5 5 0 1 0-10 0'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-filters' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M4.5 6.5a5.5 5.5 0 1 0 11 0 5.5 5.5 0 1 0-11 0m-3.5 6a5.5 5.5 0 1 0 11 0 5.5 5.5 0 1 0-11 0m7 0a5.5 5.5 0 1 0 11 0 5.5 5.5 0 1 0-11 0'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-flip' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M19.6 5 18 3.5 16.4 5m3.2 10L18 16.5 16.4 15M18 3.523v12.954M3.3 8.5h10.654c.301 0 .415-.395.159-.554L3.459 1.286A.3.3 0 0 0 3 1.542V8.2a.3.3 0 0 0 .3.3zm0 3h10.654c.301 0 .415.395.159.554l-10.654 6.66A.3.3 0 0 1 3 18.458v-6.66a.3.3 0 0 1 .3-.3z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-gamma' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M17 3C9 6 2.5 11.5 2.5 17.5m0 0h1m-1 0v-1m14 1h1m-3 0h1m-3 0h1m-3 0h1m-3 0h1m-3 0h1m-3 0h1m-3-14v-1m0 3v-1m0 3v-1m0 3v-1m0 3v-1m0 3v-1m0 3v-1'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-mirror' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M5 .4 3.5 2 5 3.6M15 .4 16.5 2 15 3.6M3.52 2h12.957M8.5 16.7V6.046c0-.301-.394-.415-.554-.159L1.287 16.541a.3.3 0 0 0 .255.459H8.2a.3.3 0 0 0 .3-.3zm3 0V6.046c0-.301.395-.415.555-.159l6.659 10.654a.3.3 0 0 1-.255.459H11.8a.3.3 0 0 1-.3-.3z'/></symbol><symbol viewBox='0 0 40 40' id='uc-icon-original' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.5' d='M0 40 40 0'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-rotate' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M13.5.4 12 2l1.5 1.6M12.023 2H14.4A3.6 3.6 0 0 1 18 5.6V8M4 17h9a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-sad' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M2 17c4.418-4 11.582-4 16 0M16.5 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-11 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0z'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-saturation' xmlns='http://www.w3.org/2000/svg'><defs><linearGradient id='puc-icon-id__a' x1='10.001' y1='1' x2='10.001' y2='19' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient></defs><circle cx='10.001' cy='10' r='9' transform='rotate(90 10 10)' fill='url(#puc-icon-id__a)'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-slider' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M0 10h11m0 0a2 2 0 1 0 4 0m-4 0a2 2 0 1 1 4 0m0 0h5'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-tuning' xmlns='http://www.w3.org/2000/svg'><path stroke-linejoin='round' fill='none' stroke='currentColor' stroke-width='1.2' d='M8 10h11M1 10h4M1 4.5h11m3 0h4m-18 11h11m3 0h4m-7-11a1.5 1.5 0 1 0 3 0 1.5 1.5 0 1 0-3 0M5 10a1.5 1.5 0 1 0 3 0 1.5 1.5 0 1 0-3 0m7 5.5a1.5 1.5 0 1 0 3 0 1.5 1.5 0 1 0-3 0'/></symbol><symbol viewBox='0 0 20 20' id='uc-icon-vibrance' xmlns='http://www.w3.org/2000/svg'><path d='M2.125 5.64A8.96 8.96 0 0 0 1.001 10a8.96 8.96 0 0 0 1.124 4.36V5.64z' fill='url(#suc-icon-id__a)'/><path d='M2.875 15.499V4.502a9.053 9.053 0 0 1 1.75-1.72v14.437a9.05 9.05 0 0 1-1.75-1.72z' fill='url(#suc-icon-id__b)'/><path d='M5.375 17.722c.548.33 1.134.601 1.75.809V1.469a8.956 8.956 0 0 0-1.75.81v15.443z' fill='url(#suc-icon-id__c)'/><path d='M7.875 1.253v17.495c.564.136 1.15.22 1.75.244V1.008a9 9 0 0 0-1.75.245z' fill='url(#suc-icon-id__d)'/><path d='M10.375 1.008v17.984a9 9 0 0 0 1.75-.244V1.252a9 9 0 0 0-1.75-.244z' fill='url(#suc-icon-id__e)'/><path d='M12.875 1.469V18.53a8.957 8.957 0 0 0 1.75-.808V2.277a8.957 8.957 0 0 0-1.75-.808z' fill='url(#suc-icon-id__f)'/><path d='M15.375 2.78v14.44a9.053 9.053 0 0 0 1.75-1.72v-11a9.054 9.054 0 0 0-1.75-1.72z' fill='url(#suc-icon-id__g)'/><path d='M17.875 5.638v8.724A8.959 8.959 0 0 0 19.001 10a8.96 8.96 0 0 0-1.126-4.362z' fill='url(#suc-icon-id__h)'/><defs><linearGradient id='suc-icon-id__a' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__b' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__c' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__d' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__e' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__f' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__g' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient><linearGradient id='suc-icon-id__h' x1='19.001' y1='10' x2='1.001' y2='10' gradientUnits='userSpaceOnUse'><stop stop-color='#DE15FF'/><stop offset='.203' stop-color='#0029FF'/><stop offset='.479' stop-color='#2AE4F0'/><stop offset='.604' stop-color='#15EF11'/><stop offset='.75' stop-color='#FAE528'/><stop offset='1' stop-color='#EB2A2A'/></linearGradient></defs></symbol><symbol viewBox='0 0 20 20' id='uc-icon-warmth' xmlns='http://www.w3.org/2000/svg'><path d='m7.5 13.05.429.42.171-.175v-.244h-.6zm5 0h-.6v.245l.172.175.428-.42zM8.1 3.5c0-1.05.85-1.9 1.9-1.9V.4a3.1 3.1 0 0 0-3.1 3.1h1.2zm0 9.55V3.5H6.9v9.55h1.2zm-1 2.45c0-.79.315-1.506.829-2.03l-.858-.84A4.088 4.088 0 0 0 5.9 15.5h1.2zm2.9 2.9a2.9 2.9 0 0 1-2.9-2.9H5.9a4.1 4.1 0 0 0 4.1 4.1v-1.2zm2.9-2.9a2.9 2.9 0 0 1-2.9 2.9v1.2a4.1 4.1 0 0 0 4.1-4.1h-1.2zm-.829-2.03c.514.524.829 1.24.829 2.03h1.2c0-1.117-.447-2.13-1.171-2.87l-.858.84zM11.9 3.5v9.55h1.2V3.5h-1.2zM10 1.6c1.05 0 1.9.85 1.9 1.9h1.2A3.1 3.1 0 0 0 10 .4v1.2z' fill='currentColor'/><path d='M10 14V8' stroke='currentColor' stroke-width='1.2' stroke-linecap='round'/><path d='M14 3h3m-3 3h3m-3 3h3m-8 6.5a1 1 0 1 0 2 0 1 1 0 1 0-2 0' stroke='currentColor' stroke-width='1.2'/></symbol></svg>";var qo=`${Xo} <div class="uc-wrapper uc-wrapper_desktop"><uc-presence-toggle class="uc-network_problems_splash" set="visible: presence.networkProblems;"><div class="uc-network_problems_content"><div class="uc-network_problems_icon"><uc-icon name="sad"></uc-icon></div><div class="uc-network_problems_text">Network error</div></div><div class="uc-network_problems_footer"><uc-btn-ui theme="primary" text="Retry" set="onclick: *on.retryNetwork"></uc-btn-ui></div></uc-presence-toggle><div class="uc-viewport"><div class="uc-file_type_outer"><div class="uc-file_type">{{fileType}}</div></div><div class="uc-image_container" ref="img-container-el"><img src="${de}" class="uc-image uc-image_visible_from_editor" ref="img-el" /><uc-editor-image-cropper ref="cropper-el"></uc-editor-image-cropper><uc-editor-image-fader ref="fader-el"></uc-editor-image-fader></div><div class="uc-info_pan">{{msg}}</div></div><div class="uc-toolbar"><uc-line-loader-ui set="active: showLoader"></uc-line-loader-ui><div class="uc-toolbar_content uc-toolbar_content__editor"><uc-editor-toolbar></uc-editor-toolbar></div></div></div>`;var he=class extends _{constructor(){super();u(this,"ctxOwner",!0);u(this,"_debouncedShowLoader",O(this._showLoader.bind(this),300));this.init$={...this.init$,...Wo(this)}}_showLoader(e){this.$.showLoader=e}_waitForSize(){return new Promise((i,r)=>{let o=setTimeout(()=>{r(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),n=new ResizeObserver(([a])=>{a.contentRect.width>0&&a.contentRect.height>0&&(i(),clearTimeout(o),n.disconnect())});n.observe(this)})}initCallback(){super.initCallback(),this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async updateImage(){if(this.isConnected){if(await this._waitForSize(),this.$.cdnUrl){let e=Bt(this.$.cdnUrl),i=ne(this.$.cdnUrl,e);if(i===this.$["*originalUrl"])return;this.$["*originalUrl"]=i;let r=ir(this.$.cdnUrl),o=lr(r);this.$["*editorTransformations"]=o}else if(this.$.uuid){let e=ne(this.cfg.cdnCname,this.$.uuid);if(e===this.$["*originalUrl"])return;this.$["*originalUrl"]=e,this.$["*editorTransformations"]={}}else throw new Error("No UUID nor CDN URL provided");this.$["*tabId"]===M.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate();try{let e=await this.proxyUrl(P(this.$["*originalUrl"],N("json"))),i=await fetch(e).then(n=>n.json()),{width:r,height:o}=i;this.$["*imageSize"]={width:r,height:o},this.$["*tabId"]===M.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(e){e&&console.error("Failed to load image info",e)}}}async initEditor(){try{await this._waitForSize()}catch(e){this.isConnected&&console.error(e.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==de&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",e=>{let i=this.ref["img-el"];i.src!==e&&(this._imgLoading=!0,i.src=e||de)}),this.sub("cropPreset",e=>{this.$["*cropPresetList"]=ri(e)}),this.sub("tabs",e=>{this.$["*tabList"]=Go(e)}),this.sub("*tabId",e=>{this.ref["img-el"].className=B("uc-image",{"uc-image_hidden_to_cropper":e===M.CROP,"uc-image_hidden_effects":e!==M.CROP})}),this.classList.add("uc-editor_ON"),this.sub("*networkProblems",e=>{this.$["presence.networkProblems"]=e,this.$["presence.modalCaption"]=!e}),this.sub("*editorTransformations",e=>{if(Object.keys(e).length===0)return;let i=this.$["*originalUrl"],r=N(Te(e),"preview"),o=P(i,r),n={originalUrl:i,cdnUrlModifiers:r,cdnUrl:o,transformations:e};this.dispatchEvent(new CustomEvent("change",{detail:n,bubbles:!0,composed:!0}))},!1),this.sub("uuid",e=>e&&this.updateImage()),this.sub("cdnUrl",e=>e&&this.updateImage())}};u(he,"styleAttrs",["uc-cloud-image-editor"]);he.template=qo;he.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var ki=class extends _{constructor(){super(),this.init$={...this.init$,dragging:!1},this._handlePointerUp=this._handlePointerUp_.bind(this),this._handlePointerMove=this._handlePointerMove_.bind(this),this._handleSvgPointerMove=this._handleSvgPointerMove_.bind(this)}_shouldThumbBeDisabled(t){let e=this.$["*imageBox"];if(!e)return;if(t===""&&e.height<=x&&e.width<=x)return!0;let i=e.height<=x&&(t.includes("n")||t.includes("s")),r=e.width<=x&&(t.includes("e")||t.includes("w"));return i||r}_createBackdrop(){let t=this.$["*cropBox"];if(!t)return;let{x:e,y:i,width:r,height:o}=t,n=this.ref["svg-el"],a=ee("mask",{id:"backdrop-mask"}),l=ee("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),c=ee("rect",{x:e,y:i,width:r,height:o,fill:"black"});a.appendChild(l),a.appendChild(c);let h=ee("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});n.appendChild(h),n.appendChild(a),this._backdropMask=a,this._backdropMaskInner=c}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let t=this.$["*cropBox"];if(!t)return;let{x:e,y:i,width:r,height:o}=t;this._backdropMaskInner&&Ue(this._backdropMaskInner,{x:e,y:i,width:r,height:o})}_updateFrame(){let t=this.$["*cropBox"];if(!(!t||!this._frameGuides||!this._frameThumbs)){for(let e of Object.values(this._frameThumbs)){let{direction:i,pathNode:r,interactionNode:o,groupNode:n}=e,a=i==="",l=i.length===2,{x:c,y:h,width:d,height:p}=t;if(a)Ue(o,{x:c,y:h,width:d,height:p});else{let f=ke(Math.min(d,p)/(24*2+34)/2,0,1),{d:b,center:v}=l?Hr(t,i,f):jr(t,i,f),w=Math.max(bs*ke(Math.min(d,p)/bs/3,0,1),zr);Ue(o,{x:v[0]-w,y:v[1]-w,width:w*2,height:w*2}),Ue(r,{d:b})}let m=this._shouldThumbBeDisabled(i);n.setAttribute("class",B("uc-thumb",{"uc-thumb--hidden":m,"uc-thumb--visible":!m}))}Ue(this._frameGuides,{x:t.x-1*.5,y:t.y-1*.5,width:t.width+1,height:t.height+1})}}_createThumb(t,e){let i=ee("g");i.classList.add("uc-thumb"),i.setAttribute("with-effects","");let r=ee("rect",{fill:"transparent"}),o=ee("path",{stroke:"currentColor",fill:"none","stroke-width":3});i.appendChild(o),i.appendChild(r),t[e]={direction:e,pathNode:o,interactionNode:r,groupNode:i},e===""&&(i.style.cursor="move"),r.addEventListener("pointerdown",this._handlePointerDown.bind(this,e))}_createThumbs(){let t={};for(let e=0;e<3;e++)for(let i=0;i<3;i++){let r=`${["n","","s"][e]}${["w","","e"][i]}`;r!==""&&this._createThumb(t,r)}return this._createThumb(t,""),t}_createGuides(){let t=ee("svg"),e=ee("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"currentColor","stroke-width":1,"stroke-opacity":.5});t.appendChild(e);for(let i=1;i<=2;i++){let r=ee("line",{x1:`${dt*i}%`,y1:"0%",x2:`${dt*i}%`,y2:"100%",stroke:"currentColor","stroke-width":1,"stroke-opacity":.3});t.appendChild(r)}for(let i=1;i<=2;i++){let r=ee("line",{x1:"0%",y1:`${dt*i}%`,x2:"100%",y2:`${dt*i}%`,stroke:"currentColor","stroke-width":1,"stroke-opacity":.3});t.appendChild(r)}return t.classList.add("uc-guides","uc-guides--semi-hidden"),t}_createFrame(){let t=this.ref["svg-el"],e=document.createDocumentFragment(),i=this._createGuides();e.appendChild(i);let r=this._createThumbs();for(let{groupNode:o}of Object.values(r))e.appendChild(o);t.appendChild(e),this._frameThumbs=r,this._frameGuides=i}_handlePointerDown(t,e){if(!this._frameThumbs)return;let i=this._frameThumbs[t];if(this._shouldThumbBeDisabled(t))return;let r=this.$["*cropBox"],{x:o,y:n}=this.ref["svg-el"].getBoundingClientRect(),a=e.x-o,l=e.y-n;this.$.dragging=!0,this._draggingThumb=i,this._dragStartPoint=[a,l],this._dragStartCrop={...r}}_handlePointerUp_(t){this._updateCursor(),this.$.dragging&&(t.stopPropagation(),t.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(t){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;t.stopPropagation(),t.preventDefault();let e=this.ref["svg-el"],{x:i,y:r}=e.getBoundingClientRect(),o=t.x-i,n=t.y-r,a=o-this._dragStartPoint[0],l=n-this._dragStartPoint[1],{direction:c}=this._draggingThumb,h=this._calcCropBox(c,[a,l]);h&&(this.$["*cropBox"]=h)}_calcCropBox(t,e){var c,h;let[i,r]=e,o=this.$["*imageBox"],n=(c=this._dragStartCrop)!=null?c:this.$["*cropBox"],a=(h=this.$["*cropPresetList"])==null?void 0:h[0],l=a?a.width/a.height:void 0;if(t===""?n=Wr({rect:n,delta:[i,r],imageBox:o}):n=Xr({rect:n,delta:[i,r],direction:t,aspectRatio:l,imageBox:o}),!Object.values(n).every(d=>Number.isFinite(d)&&d>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:n});return}return je(We(n),this.$["*imageBox"])}_handleSvgPointerMove_(t){if(!this._frameThumbs)return;let e=Object.values(this._frameThumbs).find(i=>{if(this._shouldThumbBeDisabled(i.direction))return!1;let o=i.interactionNode.getBoundingClientRect(),n={x:o.x,y:o.y,width:o.width,height:o.height};return qr(n,[t.x,t.y])});this._hoverThumb=e,this._updateCursor()}_updateCursor(){let t=this._hoverThumb;this.ref["svg-el"].style.cursor=t?Gr(t.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(t){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:e})=>e).forEach(e=>{e.setAttribute("class",B("uc-thumb",{"uc-thumb--hidden":!t,"uc-thumb--visible":t}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",t=>{t&&(this._guidesHidden=t.height<=x||t.width<=x,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",t=>{this._frameGuides&&this._frameGuides.setAttribute("class",B({"uc-guides--hidden":this._guidesHidden,"uc-guides--visible":!this._guidesHidden&&t,"uc-guides--semi-hidden":!this._guidesHidden&&!t}))}),this.ref["svg-el"].addEventListener("pointermove",this._handleSvgPointerMove,!0),document.addEventListener("pointermove",this._handlePointerMove,!0),document.addEventListener("pointerup",this._handlePointerUp,!0)}destroyCallback(){super.destroyCallback(),document.removeEventListener("pointermove",this._handlePointerMove),document.removeEventListener("pointerup",this._handlePointerUp)}};ki.template='<svg class="uc-svg" ref="svg-el" xmlns="http://www.w3.org/2000/svg"></svg>';var xe=class extends _{constructor(){super(...arguments);u(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null,"title-prop":""})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.sub("title",e=>{this._titleEl&&(this._titleEl.style.display=e?"block":"none")}),this.sub("active",e=>{this.className=B({"uc-active":e,"uc-not_active":!e})}),this.sub("on.click",e=>{this.onclick=e})}};xe.template=`<button role="option" type="button" set="@aria-label:title-prop;" l10n="@title:title-prop;"><uc-icon set="@name: icon;"></uc-icon><div class="uc-title" ref="title-el">{{title}}</div></button>`;function Fl(s){let t=s+90;return t=t>=360?0:t,t}function Nl(s,t){return s==="rotate"?Fl(t):["mirror","flip"].includes(s)?!t:null}var At=class extends xe{initCallback(){super.initCallback(),this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.bindL10n("title-prop",()=>this.l10n("a11y-cloud-editor-apply-crop",{name:this.l10n(t).toLowerCase()})))}),this.$["on.click"]=()=>{let t=this.$["*cropperEl"].getValue(this._operation),e=Nl(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};var Tt={FILTER:"filter",COLOR_OPERATION:"color_operation"},pe="original",Oi=class extends _{constructor(){super(...arguments);u(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":e=>{this.$["*faderEl"].set(e),this.$.value=e}})}setOperation(e,i){this._controlType=e==="filter"?Tt.FILTER:Tt.COLOR_OPERATION,this._operation=e,this._iconName=e,this._title=e.toUpperCase(),this._filter=i,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===pe?void 0:this.$.value,filter:this._filter===pe?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:e,zero:i}=ae[this._operation],[r,o]=e;this.$.min=r,this.$.max=o,this.$.zero=i;let n=this.$["*editorTransformations"][this._operation];if(this._controlType===Tt.FILTER){let a=o;if(n){let{name:l,amount:c}=n;a=l===this._filter?c:o}this.$.value=a,this.$.defaultValue=a}if(this._controlType===Tt.COLOR_OPERATION){let a=typeof n!="undefined"?n:i;this.$.value=a,this.$.defaultValue=a}}apply(){let e;this._controlType===Tt.FILTER?this._filter===pe?e=null:e={name:this._filter,amount:this.$.value}:e=this.$.value;let i={...this.$["*editorTransformations"],[this._operation]:e};this.$["*editorTransformations"]=i}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",e=>{this._originalUrl=e}),this.sub("value",e=>{let i=`${this._filter||this._operation} ${e}`;this.$["*operationTooltip"]=i})}};Oi.template=`<uc-slider-ui ref="slider-el" set="disabled: disabled; min: min; max: max; defaultValue: defaultValue; zero: zero; onInput: on.input;" ></uc-slider-ui>`;function St(s){let t=new Image;return{promise:new Promise((r,o)=>{t.src=s,t.onload=r,t.onerror=o}),image:t,cancel:()=>{t.naturalWidth===0&&(t.src=de)}}}function It(s){let t=[];for(let o of s){let n=St(o);t.push(n)}let e=t.map(o=>o.image);return{promise:Promise.allSettled(t.map(o=>o.promise)),images:e,cancel:()=>{t.forEach(o=>{o.cancel()})}}}var it=class extends xe{constructor(){super(),this.init$={...this.init$,active:!1,title:"",icon:"",isOriginal:!1,iconSize:"20","on.click":null}}_previewSrc(){let t=parseInt(window.getComputedStyle(this).getPropertyValue("--l-base-min-width"),10),e=window.devicePixelRatio,i=Math.ceil(e*t),r=e>=2?"lightest":"normal",o=100,n={...this.$["*editorTransformations"]};return n[this._operation]=this._filter!==pe?{name:this._filter,amount:o}:void 0,P(this._originalUrl,N(zt,Te(n),`quality/${r}`,`scale_crop/${i}x${i}/center`))}async _observerCallback(t,e){var r;if(t[0].isIntersecting){let o=await this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"],{promise:a,cancel:l}=St(o);this._cancelPreload=l,a.catch(c=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:c})}).finally(()=>{n.style.backgroundImage=`url(${o})`,n.setAttribute("loaded",""),e.unobserve(this)})}else(r=this._cancelPreload)==null||r.call(this)}initCallback(){super.initCallback(),this.$["on.click"]=()=>{this.$.active?this.$.isOriginal||(this.$["*sliderEl"].setOperation(this._operation,this._filter),this.$["*showSlider"]=!0):(this.$["*sliderEl"].setOperation(this._operation,this._filter),this.$["*sliderEl"].apply()),this.$["*currentFilter"]=this._filter},this.defineAccessor("filter",e=>{this._operation="filter",this._filter=e,this.$.isOriginal=e===pe,this.$.icon=this.$.isOriginal?"original":"slider",this.bindL10n("title-prop",()=>this.l10n("a11y-cloud-editor-apply-filter",{name:e.toLowerCase()}))}),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{threshold:[0,1]});let t=this.$["*originalUrl"];this._originalUrl=t,this.$.isOriginal?this.ref["icon-el"].classList.add("uc-original-icon"):this._observer.observe(this),this.sub("*currentFilter",e=>{this.$.active=e&&e===this._filter}),this.sub("isOriginal",e=>{this.$.iconSize=e?40:20}),this.sub("active",e=>{if(this.$.isOriginal)return;let i=this.ref["icon-el"];i.style.opacity=e?"1":"0";let r=this.ref["preview-el"];e?r.style.opacity="0":r.style.backgroundImage&&(r.style.opacity="1")}),this.sub("*networkProblems",async e=>{if(!e){let i=await this.proxyUrl(this._previewSrc()),r=this.ref["preview-el"];r.style.backgroundImage&&(r.style.backgroundImage="none",r.style.backgroundImage=`url(${i})`)}})}destroyCallback(){var t,e;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),(e=this._cancelPreload)==null||e.call(this)}};it.template=`<button type="button" role="option" l10n="@title:title-prop;@aria-label:title-prop"><div class="uc-preview" ref="preview-el"></div><uc-icon ref="icon-el" set="@name: icon; @size: iconSize;"></uc-icon></button>`;var $t=class extends xe{constructor(){super(...arguments);u(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=e=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",e=>{e&&(this._operation=e,this.$.icon=e,this.bindL10n("title-prop",()=>this.l10n("a11y-cloud-editor-apply-tuning",{name:this.l10n(e).toLowerCase()})),this.bindL10n("title",()=>this.l10n(e)))}),this.sub("*editorTransformations",e=>{if(!this._operation)return;let{zero:i}=ae[this._operation],r=e[this._operation],o=typeof r!="undefined"?r!==i:!1;this.$.active=o})}};function Ko(s,t){let e={};for(let i of t){let r=s[i];(s.hasOwnProperty(i)||r!==void 0)&&(e[i]=r)}return e}function st(s,t,e){let r=window.devicePixelRatio,o=Math.min(Math.ceil(t*r),3e3),n=r>=2?"lightest":"normal";return P(s,N(zt,Te(e),`quality/${n}`,`stretch/off/-/resize/${o}x`,`@clib/${Xe}/${qe}/uc-cloud-image-editor/`))}function Vl(s){return s?[({dimensions:e,coords:i})=>[...e,...i].every(r=>Number.isInteger(r)&&Number.isFinite(r)),({dimensions:e,coords:i})=>e.every(r=>r>0)&&i.every(r=>r>=0)].every(e=>e(s)):!0}var Mi=class extends _{constructor(){super();u(this,"ctxOwner",!0);this.init$={...this.init$,image:null,"*padding":20,"*operations":{rotate:0,mirror:!1,flip:!1},"*imageBox":{x:0,y:0,width:0,height:0},"*cropBox":{x:0,y:0,width:0,height:0}},this._commitDebounced=O(this._commit.bind(this),300),this._handleResizeThrottled=et(this._handleResize.bind(this),100),this._imageSize={width:0,height:0}}_handleResize(){!this.isConnected||!this._isActive||(this._initCanvas(),this._syncTransformations(),this._alignImage(),this._alignCrop(),this._draw())}_syncTransformations(){let e=this.$["*editorTransformations"],i=Ko(e,Object.keys(this.$["*operations"])),r={...this.$["*operations"],...i};this.$["*operations"]=r}_initCanvas(){let e=this.ref["canvas-el"],i=e.getContext("2d"),r=this.offsetWidth,o=this.offsetHeight,n=window.devicePixelRatio;e.style.width=`${r}px`,e.style.height=`${o}px`,e.width=r*n,e.height=o*n,i==null||i.scale(n,n),this._canvas=e,this._ctx=i}_alignImage(){if(!this._isActive||!this.$.image)return;let e=this.$.image,i=this.$["*padding"],r=this.$["*operations"],{rotate:o}=r,n={width:this.offsetWidth,height:this.offsetHeight},a=Ge({width:e.naturalWidth,height:e.naturalHeight},o),l;if(a.width>n.width-i*2||a.height>n.height-i*2){let c=a.width/a.height,h=n.width/n.height;if(c>h){let d=n.width-i*2,p=d/c,m=0+i,f=i+(n.height-i*2)/2-p/2;l={x:m,y:f,width:d,height:p}}else{let d=n.height-i*2,p=d*c,m=i+(n.width-i*2)/2-p/2,f=0+i;l={x:m,y:f,width:p,height:d}}}else{let{width:c,height:h}=a,d=i+(n.width-i*2)/2-c/2,p=i+(n.height-i*2)/2-h/2;l={x:d,y:p,width:c,height:h}}this.$["*imageBox"]=We(l)}_alignCrop(){var p;let e=this.$["*cropBox"],i=this.$["*imageBox"],r=this.$["*operations"],{rotate:o}=r,n=this.$["*editorTransformations"].crop,{width:a,x:l,y:c}=this.$["*imageBox"];if(n){let{dimensions:[m,f],coords:[b,v]}=n,{width:w}=Ge(this._imageSize,o),y=a/w;e=je(We({x:l+b*y,y:c+v*y,width:m*y,height:f*y}),this.$["*imageBox"])}let h=(p=this.$["*cropPresetList"])==null?void 0:p[0],d=h?h.width/h.height:void 0;if(!Kr(e,i)||d&&!Zr(e,d)){let m=i.width/i.height,f=i.width,b=i.height;d&&(m>d?f=Math.min(i.height*d,i.width):b=Math.min(i.width/d,i.height)),e={x:i.x+i.width/2-f/2,y:i.y+i.height/2-b/2,width:f,height:b}}this.$["*cropBox"]=je(We(e),this.$["*imageBox"])}_drawImage(){let e=this._ctx;if(!e)return;let i=this.$.image,r=this.$["*imageBox"],o=this.$["*operations"],{mirror:n,flip:a,rotate:l}=o,c=Ge({width:r.width,height:r.height},l);e.save(),e.translate(r.x+r.width/2,r.y+r.height/2),e.rotate(l*Math.PI*-1/180),e.scale(n?-1:1,a?-1:1),e.drawImage(i,-c.width/2,-c.height/2,c.width,c.height),e.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let e=this._canvas;this._ctx.clearRect(0,0,e.width,e.height),this._drawImage()}_animateIn({fromViewer:e}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=B({"uc-active_from_viewer":e,"uc-active_from_editor":!e,"uc-inactive_to_editor":!1})}))}_getCropDimensions(){let e=this.$["*cropBox"],i=this.$["*imageBox"],r=this.$["*operations"],{rotate:o}=r,{width:n,height:a}=i,{width:l,height:c}=Ge(this._imageSize,o),{width:h,height:d}=e,p=n/l,m=a/c;return[ke(Math.round(h/p),1,l),ke(Math.round(d/m),1,c)]}_getCropTransformation(){let e=this.$["*cropBox"],i=this.$["*imageBox"],r=this.$["*operations"],{rotate:o}=r,{width:n,height:a,x:l,y:c}=i,{width:h,height:d}=Ge(this._imageSize,o),{x:p,y:m}=e,f=n/h,b=a/d,v=this._getCropDimensions(),w={dimensions:v,coords:[ke(Math.round((p-l)/f),0,h-v[0]),ke(Math.round((m-c)/b),0,d-v[1])]};if(!Vl(w)){console.error("Cropper is trying to create invalid crop object",{payload:w});return}if(!(v[0]===h&&v[1]===d))return w}_commit(){if(!this.isConnected||!this._imageSize)return;let e=this.$["*operations"],{rotate:i,mirror:r,flip:o}=e,n=this._getCropTransformation(),l={...this.$["*editorTransformations"],crop:n,rotate:i,mirror:r,flip:o};this.$["*editorTransformations"]=l}setValue(e,i){this.$["*operations"]={...this.$["*operations"],[e]:i},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(e){return this.$["*operations"][e]}async activate(e,{fromViewer:i}={}){if(!this._isActive){this._isActive=!0,this._imageSize=e,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:i})}catch(r){console.error("Failed to activate cropper",{error:r})}this._observer=new ResizeObserver(([r])=>{r.contentRect.width>0&&r.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:e=!1}={}){var i;this._isActive&&(!e&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=B({"uc-active_from_viewer":!1,"uc-active_from_editor":!1,"uc-inactive_to_editor":!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(i=this._observer)==null||i.disconnect())}_transitionToCrop(){let e=this._getCropDimensions(),i=Math.min(this.offsetWidth,e[0])/this.$["*cropBox"].width,r=Math.min(this.offsetHeight,e[1])/this.$["*cropBox"].height,o=Math.min(i,r),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,a=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${o}) translate(${(this.offsetWidth/2-n)/o}px, ${(this.offsetHeight/2-a)/o}px)`,this.style.transformOrigin=`${n}px ${a}px`}_transitionToImage(){let e=this.$["*cropBox"].x+this.$["*cropBox"].width/2,i=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${e}px ${i}px`}_reset(){this._isActive||(this.$.image=null)}async _waitForImage(e,i){var h;let r=this.offsetWidth;i={...i,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let o=await this.proxyUrl(st(e,r,i)),{promise:n,cancel:a,image:l}=St(o),c=this._handleImageLoading(o);return l.addEventListener("load",c,{once:!0}),l.addEventListener("error",c,{once:!0}),(h=this._cancelPreload)==null||h.call(this),this._cancelPreload=a,n.then(()=>l).catch(d=>(console.error("Failed to load image",{error:d}),this.$["*networkProblems"]=!0,Promise.resolve(l)))}_handleImageLoading(e){let i="crop",r=this.$["*loadingOperations"];return r.get(i)||r.set(i,new Map),r.get(i).get(e)||(r.set(i,r.get(i).set(e,!0)),this.$["*loadingOperations"]=r),()=>{var o;(o=r==null?void 0:r.get(i))!=null&&o.has(e)&&(r.get(i).delete(e),this.$["*loadingOperations"]=r)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",e=>{e||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var e;super.destroyCallback(),(e=this._observer)==null||e.disconnect()}};Mi.template=`<canvas class="uc-canvas" ref="canvas-el"></canvas><uc-crop-frame ref="frame-el"></uc-crop-frame>`;function Vs(s,t,e){let i=Array(e);e--;for(let r=e;r>=0;r--)i[r]=Math.ceil((r*t+(e-r)*s)/e);return i}function Bl(s){return s.reduce((t,e,i)=>i<s.length-1?[...t,[e,s[i+1]]]:t,[])}function zl(s,t,e){let i=Bl(s).find(([r,o])=>r<=t&&t<=o);return s.map(r=>{let o=Math.abs(i[0]-i[1]),n=Math.abs(t-i[0])/o;return i[0]===r?t>e?1:1-n:i[1]===r?t>=e?n:1:0})}function Hl(s,t){return s.map((e,i)=>e<t?s.length-i:i)}function Zo(s,t){let e=ae[s].keypointsNumber,{range:i,zero:r}=ae[s];return[...new Set([...Vs(i[0],r,e+1),...Vs(r,i[1],e+1),r,t])].sort((o,n)=>o-n)}var Bs=class extends _{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=O(this._addKeypoint.bind(this),600),this.classList.add("uc-inactive_to_cropper")}_handleImageLoading(t){let e=this._operation,i=this.$["*loadingOperations"];return i.get(e)||i.set(e,new Map),i.get(e).get(t)||(i.set(e,i.get(e).set(t,!0)),this.$["*loadingOperations"]=i),()=>{var r;(r=i==null?void 0:i.get(e))!=null&&r.has(t)&&(i.get(e).delete(t),this.$["*loadingOperations"]=i)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let t of this._keypoints){let{image:e}=t;e&&(e.style.opacity=t.opacity.toString(),e.style.zIndex=t.zIndex.toString())}})}async _imageSrc({url:t=this._url,filter:e=this._filter,operation:i,value:r}={}){let o={...this._transformations};i&&(o[i]=e?{name:e,amount:r}:r);let n=this.offsetWidth;return await this.proxyUrl(st(t,n,o))}async _constructKeypoint(t,e){return{src:await this._imageSrc({operation:t,value:e}),image:null,opacity:0,zIndex:0,value:e}}_isSame(t,e){return this._operation===t&&this._filter===e}async _addKeypoint(t,e,i){let r=()=>!this._isSame(t,e)||this._value!==i||!!this._keypoints.find(l=>l.value===i);if(r())return;let o=await this._constructKeypoint(t,i),n=new Image;n.src=o.src;let a=this._handleImageLoading(o.src);n.addEventListener("load",a,{once:!0}),n.addEventListener("error",a,{once:!0}),o.image=n,n.classList.add("uc-fader-image"),n.addEventListener("load",()=>{if(r())return;let l=this._keypoints,c=l.findIndex(d=>d.value>i),h=c<l.length?l[c].image:null;!this._container||h&&!this._container.contains(h)||(l.splice(c,0,o),this._container.insertBefore(n,h),this._update(t,i))},{once:!0}),n.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}set(t){t=typeof t=="string"?parseInt(t,10):t,this._update(this._operation,t),this._addKeypointDebounced(this._operation,this._filter,t)}_update(t,e){this._operation=t,this._value=e;let{zero:i}=ae[t],r=this._keypoints.map(a=>a.value),o=zl(r,e,i),n=Hl(r,i);for(let[a,l]of Object.entries(this._keypoints))l.opacity=o[a],l.zIndex=n[a];this._flush()}_createPreviewImage(){let t=new Image;return t.classList.add("uc-fader-image","uc-fader-image--preview"),t.style.opacity="0",t}async _initNodes(){let t=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&t.appendChild(this._previewImage);let e=document.createElement("div");t.appendChild(e);let i=this._keypoints.map(c=>c.src),{images:r,promise:o,cancel:n}=It(i);r.forEach(c=>{let h=this._handleImageLoading(c.src);c.addEventListener("load",h),c.addEventListener("error",h)}),this._cancelLastImages=()=>{n(),this._cancelLastImages=void 0};let a=this._operation,l=this._filter;await o,this._isActive&&this._isSame(a,l)&&(this._container&&this._container.remove(),this._container=e,this._keypoints.forEach((c,h)=>{let d=r[h];d.classList.add("uc-fader-image"),c.image=d,this._container.appendChild(d)}),this.appendChild(t),this._flush())}async setTransformations(t){if(this._transformations=t,this._previewImage){let e=await this._imageSrc(),i=this._handleImageLoading(e);this._previewImage.src=e,this._previewImage.addEventListener("load",i,{once:!0}),this._previewImage.addEventListener("error",i,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}async preload({url:t,filter:e,operation:i,value:r}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=Zo(i,r),n=await Promise.all(o.map(l=>this._imageSrc({url:t,filter:e,operation:i,value:l}))),{cancel:a}=It(n);this._cancelBatchPreload=a}_setOriginalSrc(t){let e=this._previewImage||this._createPreviewImage();if(!this.contains(e)&&this.appendChild(e),this._previewImage=e,e.src===t){e.style.opacity="1",e.style.transform="scale(1)",this.className=B({"uc-active_from_viewer":this._fromViewer,"uc-active_from_cropper":!this._fromViewer,"uc-inactive_to_cropper":!1});return}e.style.opacity="0";let i=this._handleImageLoading(t);e.addEventListener("error",i,{once:!0}),e.src=t,e.addEventListener("load",()=>{i(),e&&(e.style.opacity="1",e.style.transform="scale(1)",this.className=B({"uc-active_from_viewer":this._fromViewer,"uc-active_from_cropper":!this._fromViewer,"uc-inactive_to_cropper":!1}))},{once:!0}),e.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}async activate({url:t,operation:e,value:i,filter:r,fromViewer:o}){if(this._isActive=!0,this._hidden=!1,this._url=t,this._operation=e||"initial",this._value=i,this._filter=r,this._fromViewer=o,typeof i!="number"&&!r){let a=await this._imageSrc({operation:e,value:i});this._setOriginalSrc(a),this._container&&this._container.remove();return}this._keypoints=await Promise.all(Zo(e,i).map(a=>this._constructKeypoint(e,a))),this._update(e,i),this._initNodes()}deactivate({hide:t=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),t&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=B({"uc-active_from_viewer":!1,"uc-active_from_cropper":!1,"uc-inactive_to_cropper":!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};var jl=1,Li=class extends _{initCallback(){super.initCallback(),this.addEventListener("wheel",t=>{t.preventDefault();let{deltaY:e,deltaX:i}=t;Math.abs(i)>jl?this.scrollLeft+=i:this.scrollLeft+=e},{passive:!1}),this.addEventListener("scroll",()=>{},{passive:!0})}};Li.template=" <slot></slot> ";function Gl(s){return`<uc-presence-toggle class="uc-tab-toggle" set="visible: presence.tabToggle.${s}; styles: presence.tabToggleStyles;" ><uc-btn-ui theme="tab" ref="tab-toggle-${s}" data-id="${s}" icon="${s}" set="onclick: on.clickTab; aria-role:tab_role; aria-controls:tab_${s}; title-prop: a11y-editor-tab-${s}" ></uc-btn-ui></uc-presence-toggle>`}function Wl(s){return`<uc-presence-toggle id="tab_${s}" class="uc-tab-content" set="visible: presence.tabContent.${s}; styles: presence.tabContentStyles" ><uc-editor-scroller hidden-scrollbar><div class="uc-controls-list_align"><div role="listbox" aria-orientation="horizontal" class="uc-controls-list_inner" ref="controls-list-${s}" ></div></div></uc-editor-scroller></uc-presence-toggle>`}var Ui=class extends _{constructor(){super();u(this,"_updateInfoTooltip",O(()=>{var n,a;let e=this.$["*editorTransformations"],i=this.$["*currentOperation"],r="",o=!1;if(this.$["*tabId"]===M.FILTERS)if(o=!0,this.$["*currentFilter"]&&((n=e==null?void 0:e.filter)==null?void 0:n.name)===this.$["*currentFilter"]){let l=((a=e==null?void 0:e.filter)==null?void 0:a.amount)||100;r=this.$["*currentFilter"]+" "+l}else r=this.l10n(pe);else if(this.$["*tabId"]===M.TUNING&&i){o=!0;let l=(e==null?void 0:e[i])||ae[i].zero;r=this.l10n(i)+" "+l}o&&(this.$["*operationTooltip"]=r),this.ref["tooltip-el"].classList.toggle("uc-info-tooltip_visible",o)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":pe,"*currentOperation":null,showLoader:!1,filters:ur,colorOperations:cr,cropOperations:dr,"*operationTooltip":null,"presence.mainToolbar":!0,"presence.subToolbar":!1,"presence.tabToggles":!0,"presence.tabContent.crop":!1,"presence.tabContent.tuning":!1,"presence.tabContent.filters":!1,"presence.tabToggle.crop":!0,"presence.tabToggle.tuning":!0,"presence.tabToggle.filters":!0,"presence.subTopToolbarStyles":{hidden:"uc-sub-toolbar--top-hidden",visible:"uc-sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"uc-sub-toolbar--bottom-hidden",visible:"uc-sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"uc-tab-content--hidden",visible:"uc-tab-content--visible"},"presence.tabToggleStyles":{hidden:"uc-tab-toggle--hidden",visible:"uc-tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"uc-tab-toggles--hidden",visible:"uc-tab-toggles--visible"},"on.cancel":()=>{var e;(e=this._cancelPreload)==null||e.call(this),this.$["*on.cancel"]()},"on.apply":()=>{this.$["*on.apply"](this.$["*editorTransformations"])},"on.applySlider":()=>{this.ref["slider-el"].apply(),this._onSliderClose()},"on.cancelSlider":()=>{this.ref["slider-el"].cancel(),this._onSliderClose()},"on.clickTab":e=>{let i=e.currentTarget.getAttribute("data-id");i&&this._activateTab(i,{fromViewer:!1})},tab_role:"tab",[`tab_${M.TUNING}`]:`tab_${M.TUNING}`,[`tab_${M.CROP}`]:`tab_${M.CROP}`,[`tab_${M.FILTERS}`]:`tab_${M.FILTERS}`,cancel:"cancel",apply:"apply","a11y-editor-tab-filters":"a11y-editor-tab-filters","a11y-editor-tab-tuning":"a11y-editor-tab-tuning","a11y-editor-tab-crop":"a11y-editor-tab-crop"},this._debouncedShowLoader=O(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===M.TUNING&&this.ref["tooltip-el"].classList.toggle("uc-info-tooltip_visible",!1)}_createOperationControl(e){let i=new $t;return i.operation=e,i}_createFilterControl(e){let i=new it;return i.filter=e,i}_createToggleControl(e){let i=new At;return i.operation=e,i}_renderControlsList(e){let i=this.ref[`controls-list-${e}`],r=document.createDocumentFragment();e===M.CROP?this.$.cropOperations.forEach(o=>{let n=this._createToggleControl(o);r.appendChild(n)}):e===M.FILTERS?[pe,...this.$.filters].forEach(o=>{let n=this._createFilterControl(o);r.appendChild(n)}):e===M.TUNING&&this.$.colorOperations.forEach(o=>{let n=this._createOperationControl(o);r.appendChild(n)}),[...r.children].forEach((o,n)=>{n===r.childNodes.length-1&&o.classList.add("uc-controls-list_last-item")}),i.innerHTML="",i.appendChild(r)}_activateTab(e,{fromViewer:i}){this.$["*tabId"]=e,e===M.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:i})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:i}),this.$["*cropperEl"].deactivate());for(let r of X){let o=r===e,n=this.ref[`tab-toggle-${r}`];n.active=o,o?(this._renderControlsList(e),this._syncTabIndicator()):this._unmountTabControls(r),this.$[`presence.tabContent.${r}`]=o}}_unmountTabControls(e){let i=this.ref[`controls-list-${e}`];i&&(i.innerHTML="")}_syncTabIndicator(){let e=this.ref[`tab-toggle-${this.$["*tabId"]}`],i=this.ref["tabs-indicator"];i.style.transform=`translateX(${e.offsetLeft}px)`}async _preloadEditedImage(){var e;if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let i=this.$["*imgContainerEl"].offsetWidth,r=await this.proxyUrl(st(this.$["*originalUrl"],i,this.$["*editorTransformations"]));(e=this._cancelPreload)==null||e.call(this);let{cancel:o}=It([r]);this._cancelPreload=()=>{o(),this._cancelPreload=void 0}}}_showLoader(e){this.$.showLoader=e}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",e=>{e&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",e=>{var r;let i=(r=e==null?void 0:e.filter)==null?void 0:r.name;this.$["*currentFilter"]!==i&&(this.$["*currentFilter"]=i)}),this.sub("*currentFilter",()=>{this._updateInfoTooltip()}),this.sub("*currentOperation",()=>{this._updateInfoTooltip()}),this.sub("*tabId",()=>{this._updateInfoTooltip()}),this.sub("*originalUrl",()=>{this.$["*faderEl"]&&this.$["*faderEl"].deactivate()}),this.sub("*editorTransformations",e=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(e)}),this.sub("*loadingOperations",e=>{let i=!1;for(let[,r]of e.entries()){if(i)break;for(let[,o]of r.entries())if(o){i=!0;break}}this._debouncedShowLoader(i)}),this.sub("*showSlider",e=>{this.$["presence.subToolbar"]=e,this.$["presence.mainToolbar"]=!e}),this.sub("*tabList",e=>{this.$["presence.tabToggles"]=e.length>1;for(let i of X){this.$[`presence.tabToggle.${i}`]=e.includes(i);let r=this.ref[`tab-toggle-${i}`];r.style.gridColumn=e.indexOf(i)+1}e.includes(this.$["*tabId"])||this._activateTab(e[0],{fromViewer:!1})}),this._updateInfoTooltip()}destroyCallback(){this.$["*showSlider"]=!1}};Ui.template=`<uc-line-loader-ui set="active: showLoader"></uc-line-loader-ui><div class="uc-info-tooltip_container"><div class="uc-info-tooltip_wrapper"><div ref="tooltip-el" class="uc-info-tooltip uc-info-tooltip_hidden">{{*operationTooltip}}</div></div></div><div class="uc-toolbar-container"><uc-presence-toggle role="tablist" class="uc-sub-toolbar" set="visible: presence.mainToolbar; styles: presence.subTopToolbarStyles" ><div class="uc-tab-content-row">${X.map(Wl).join("")}</div><div class="uc-controls-row"><uc-presence-toggle class="uc-tab-toggles" set="visible: presence.tabToggles; styles: presence.tabTogglesStyles" ><div ref="tabs-indicator" class="uc-tab-toggles_indicator"></div> ${X.map(Gl).join("")} </uc-presence-toggle><uc-btn-ui style="order: -1" theme="secondary-icon" icon="closeMax" set="onclick: on.cancel; title-prop:cancel"></uc-btn-ui><uc-btn-ui theme="primary-icon" icon="done" set="onclick: on.apply; title-prop:apply"></uc-btn-ui></div></uc-presence-toggle><uc-presence-toggle class="uc-sub-toolbar" set="visible: presence.subToolbar; styles: presence.subBottomToolbarStyles" ><div class="uc-slider"><uc-editor-slider ref="slider-el"></uc-editor-slider></div><div class="uc-controls-row"><uc-btn-ui theme="secondary" set="onclick: on.cancelSlider" l10n="@text:cancel"></uc-btn-ui><uc-btn-ui theme="primary" set="onclick: on.applySlider" l10n="@text:apply"></uc-btn-ui></div></uc-presence-toggle></div>`;var kt=class extends _{constructor(){super(),this._iconReversed=!1,this._iconSingle=!1,this._iconHidden=!1,this.init$={...this.init$,text:"",icon:"",iconCss:this._iconCss(),theme:null,"aria-role":"","aria-controls":"","title-prop":""},this.defineAccessor("active",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return B("uc-icon",{"uc-icon_left":!this._iconReversed,"uc-icon_right":this._iconReversed,"uc-icon_hidden":this._iconHidden,"uc-icon_single":this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",t=>{this._iconSingle=!this.$.text,this._iconHidden=!t,this.$.iconCss=this._iconCss()}),this.sub("theme",t=>{t!=="custom"&&(this.className=`uc-${t}`)}),this.sub("text",t=>{this._iconSingle=!1}),this.hasAttribute("theme")||this.setAttribute("theme","default"),this.defineAccessor("aria-role",t=>{this.$["aria-role"]=t||""}),this.defineAccessor("aria-controls",t=>{this.$["aria-controls"]=t||""}),this.defineAccessor("title-prop",t=>{this.$["title-prop"]=t||""})}set reverse(t){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};kt.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});kt.template=`<button type="button" set="@role:aria-role; @aria-controls: aria-controls; @aria-label:title-prop" l10n="@title:title-prop;" ><uc-icon set="className: iconCss; @name: icon; @hidden: !icon"></uc-icon><div class="uc-text">{{text}}</div></button>`;var Pi=class extends _{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let t=this.ref["line-el"];t.style.transition="initial",t.style.opacity="0",t.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",t=>{typeof t=="boolean"&&(t?this._start():this._stop())})}_start(){this._active=!0;let{width:t}=this.getBoundingClientRect(),e=this.ref["line-el"];e.style.transition="transform 1s",e.style.opacity="1",e.style.transform=`translateX(${t}px)`,e.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};Pi.template=`<div class="uc-inner"><div class="uc-line" ref="line-el"></div></div>`;var Ri={transition:"uc-transition",visible:"uc-visible",hidden:"uc-hidden"},Di=class extends _{constructor(){super(),this._visible=!1,this._visibleStyle=Ri.visible,this._hiddenStyle=Ri.hidden,this._externalTransitions=!1,this.defineAccessor("styles",t=>{t&&(this._externalTransitions=!0,this._visibleStyle=t.visible,this._hiddenStyle=t.hidden)}),this.defineAccessor("visible",t=>{typeof t=="boolean"&&(this._visible=t,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",jo(this,{[Ri.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.classList.toggle("uc-initial",!0),this._externalTransitions||this.classList.add(Ri.transition),this._handleVisible(),setTimeout(()=>{this.classList.toggle("uc-initial",!1)},0)}};Di.template="<slot></slot> ";var Fi=class extends _{constructor(){super();u(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e),this.$.onInput&&this.$.onInput(e)},"on.sliderChange":()=>{let e=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(e)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",i=>{this.$.disabled=i}),this.defineAccessor("min",i=>{this.$.min=i}),this.defineAccessor("max",i=>{this.$.max=i}),this.defineAccessor("defaultValue",i=>{this.$.defaultValue=i,this.ref["input-el"].value=i,this._updateValue(i)}),this.defineAccessor("zero",i=>{this._zero=i}),this.defineAccessor("onInput",i=>{i&&(this.$.onInput=i)}),this.defineAccessor("onChange",i=>{i&&(this.$.onChange=i)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let i=parseInt(this.ref["input-el"].value,10);this._updateValue(i)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let i=parseInt(this.ref["input-el"].value,10);this._updateValue(i)},0),this.sub("disabled",i=>{let r=this.ref["input-el"];i?r.setAttribute("disabled","disabled"):r.removeAttribute("disabled")});let e=this.ref["input-el"];e.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),e.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(e){this._updateZeroDot(e);let{width:i}=this.getBoundingClientRect(),n=100/(this.$.max-this.$.min)*(e-this.$.min)*(i-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${n}px)`})}_updateZeroDot(e){if(!this._zeroDotEl)return;e===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="1";let{width:i}=this.getBoundingClientRect(),n=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(i-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${n}px)`})}_updateSteps(){let i=this.ref["steps-el"],{width:r}=i.getBoundingClientRect(),o=Math.ceil(r/2),n=Math.ceil(o/15)-2;if(this._stepsCount===n)return;let a=document.createDocumentFragment(),l=document.createElement("div"),c=document.createElement("div");l.className="uc-minor-step",c.className="uc-border-step",a.appendChild(c);for(let d=0;d<n;d++)a.appendChild(l.cloneNode());a.appendChild(c.cloneNode());for(let d=0;d<n;d++)a.appendChild(l.cloneNode());a.appendChild(c.cloneNode());let h=document.createElement("div");h.className="uc-zero-dot",a.appendChild(h),this._zeroDotEl=h,i.innerHTML="",i.appendChild(a),this._stepsCount=n}destroyCallback(){var e;super.destroyCallback(),(e=this._observer)==null||e.disconnect()}};Fi.template=`<div class="uc-steps" ref="steps-el"></div><div ref="thumb-el" class="uc-thumb"></div><input class="uc-input" type="range" ref="input-el" set="oninput: on.sliderInput; onchange: on.sliderChange; @min: min; @max: max; @value: defaultValue;" />`;var zs=class extends I{constructor(){super(...arguments);u(this,"couldBeCtxOwner",!0);u(this,"activityType",g.activities.CLOUD_IMG_EDIT);u(this,"_entry");u(this,"_instance")}get activityParams(){let e=super.activityParams;if("internalId"in e)return e;throw new Error("Cloud Image Editor activity params not found")}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.subConfigValue("cropPreset",e=>{this._instance&&this._instance.getAttribute("crop-preset")!==e&&this._instance.setAttribute("crop-preset",e)}),this.subConfigValue("cloudImageEditorTabs",e=>{this._instance&&this._instance.getAttribute("tabs")!==e&&this._instance.setAttribute("tabs",e)})}handleApply(e){if(!this._entry)return;let i=e.detail;this._entry.setMultipleValues({cdnUrl:i.cdnUrl,cdnUrlModifiers:i.cdnUrlModifiers}),this.modalManager.close(g.activities.CLOUD_IMG_EDIT),this.historyBack()}handleCancel(){this.modalManager.close(g.activities.CLOUD_IMG_EDIT),this.historyBack()}mountEditor(){let{internalId:e}=this.activityParams;if(this._entry=this.uploadCollection.read(e),!this._entry)throw new Error(`Entry with internalId "${e}" not found`);let i=this._entry.getValue("cdnUrl");if(!i)throw new Error(`Entry with internalId "${e}" hasn't uploaded yet`);let r=new he,o=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;r.setAttribute("ctx-name",this.ctxName),r.setAttribute("cdn-url",i),o&&r.setAttribute("crop-preset",o),n&&r.setAttribute("tabs",n),r.addEventListener("apply",a=>{let l=a;this.handleApply(l),this.debugPrint('editor event "apply"',l.detail)}),r.addEventListener("cancel",a=>{let l=a;this.handleCancel(),this.debugPrint('editor event "cancel"',l.detail)}),r.addEventListener("change",a=>{let l=a;this.debugPrint('editor event "change"',l.detail)}),this.innerHTML="",this.appendChild(r),this._instance=r}unmountEditor(){this._instance=void 0,this._entry=void 0,this.innerHTML=""}};var Xl=function(s){return s.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},Yo=function(s,t="i"){let e=s.split("*").map(Xl);return new RegExp("^"+e.join(".+")+"$",t)};function ql(s,t){return window.getComputedStyle(s).getPropertyValue(t).trim()}var Kl=["--uc-font-family","--uc-font-size","--uc-line-height","--uc-button-size","--uc-preview-size","--uc-input-size","--uc-padding","--uc-radius","--uc-transition","--uc-background","--uc-foreground","--uc-primary","--uc-primary-hover","--uc-primary-transparent","--uc-primary-foreground","--uc-secondary","--uc-secondary-hover","--uc-secondary-foreground","--uc-muted","--uc-muted-foreground","--uc-destructive","--uc-destructive-foreground","--uc-border"];function Jo(s){return Kl.reduce((t,e)=>{let i=ql(s,e);return i&&(t[e]=i),t},{})}var Zl=["selected-files-change"],Yl=s=>!s||typeof s!="object"?!1:"type"in s&&Zl.includes(s.type),Ni=class{constructor(t){u(this,"_handlerMap",new Map);u(this,"_context");u(this,"_handleMessage",t=>{if(t.source!==this._context)return;let e=t.data;if(!Yl(e))return;let i=this._handlerMap.get(e.type);if(i)for(let r of i)r(e)});this._context=t,window.addEventListener("message",this._handleMessage)}on(t,e){var r;let i=(r=this._handlerMap.get(t))!=null?r:new Set;this._handlerMap.has(t)||this._handlerMap.set(t,i),i.add(e)}send(t){this._context.postMessage(t,"*")}destroy(){window.removeEventListener("message",this._handleMessage)}};function Qo(s){let t=[];for(let[e,i]of Object.entries(s))i==null||typeof i=="string"&&i.length===0||t.push(`${e}=${encodeURIComponent(i)}`);return t.join("&")}var Vi=class extends I{constructor(){super();u(this,"couldBeCtxOwner",!0);u(this,"activityType",g.activities.EXTERNAL);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],total:0,isSelectionReady:!1,isDoneBtnEnabled:!1,couldSelectAll:!1,couldDeselectAll:!1,showSelectionStatus:!1,counterText:"",doneBtnTextClass:"uc-hidden",onDone:()=>{for(let e of this.$.selectedList){let i=this.extractUrlFromSelectedFile(e),{filename:r}=e,{externalSourceType:o}=this.activityParams;this.api.addFileFromUrl(i,{fileName:r,source:o})}this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.modalManager.open(g.activities.UPLOAD_LIST)},onCancel:()=>{this.historyBack()},onSelectAll:()=>{var e;(e=this._messageBridge)==null||e.send({type:"select-all"})},onDeselectAll:()=>{var e;(e=this._messageBridge)==null||e.send({type:"deselect-all"})}}}get activityParams(){let e=super.activityParams;if("externalSourceType"in e)return e;throw new Error("External Source activity params not found")}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:e}=this.activityParams;if(!e){this.modalManager.close(this.$["*currentActivity"]),this.$["*currentActivity"]=null,console.error(`Param "externalSourceType" is required for activity "${this.activityType}"`);return}this.set$({activityCaption:`${e==null?void 0:e[0].toUpperCase()}${e==null?void 0:e.slice(1)}`,activityIcon:e}),this.mountIframe()}}),this.sub("*currentActivityParams",e=>{this.isActivityActive&&(this.unmountIframe(),this.mountIframe())}),this.sub("*currentActivity",e=>{e!==this.activityType&&this.unmountIframe()}),this.subConfigValue("multiple",e=>{this.$.showSelectionStatus=e}),this.subConfigValue("localeName",e=>{this.setupL10n()}),this.subConfigValue("externalSourcesEmbedCss",e=>{this.applyEmbedCss(e)})}extractUrlFromSelectedFile(e){if(e.alternatives){let i=V(this.cfg.externalSourcesPreferredTypes);for(let r of i){let o=Yo(r);for(let[n,a]of Object.entries(e.alternatives))if(o.test(n))return a}}return e.url}async handleSelectedFilesChange(e){if(this.cfg.multiple!==e.isMultipleMode){console.error("Multiple mode mismatch");return}this.bindL10n("counterText",()=>this.l10n("selected-count",{count:e.selectedCount,total:e.total})),this.set$({doneBtnTextClass:e.isReady?"":"uc-hidden",isSelectionReady:e.isReady,isDoneBtnEnabled:e.isReady&&e.selectedFiles.length>0,showSelectionStatus:e.isMultipleMode&&e.total>0,couldSelectAll:e.selectedCount<e.total,couldDeselectAll:e.selectedCount===e.total,selectedList:e.selectedFiles})}handleIframeLoad(){this.applyEmbedCss(this.cfg.externalSourcesEmbedCss),this.applyTheme(),this.setupL10n()}applyTheme(){var e;(e=this._messageBridge)==null||e.send({type:"set-theme-definition",theme:Jo(this)})}applyEmbedCss(e){var i;(i=this._messageBridge)==null||i.send({type:"set-embed-css",css:e})}setupL10n(){var e;(e=this._messageBridge)==null||e.send({type:"set-locale-definition",localeDefinition:this.cfg.localeName})}remoteUrl(){var h,d;let{pubkey:e,remoteTabSessionKey:i,socialBaseUrl:r,multiple:o}=this.cfg,{externalSourceType:n}=this.activityParams,l={lang:((d=(h=this.l10n("social-source-lang"))==null?void 0:h.split("-"))==null?void 0:d[0])||"en",public_key:e,images_only:"false",session_key:i,wait_for_theme:!0,multiple:o.toString()},c=new URL(`/window4/${n}`,r);return c.search=Qo(l),c.toString()}mountIframe(){var i;let e=Zi({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});e.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(e),e.contentWindow&&((i=this._messageBridge)==null||i.destroy(),this._messageBridge=new Ni(e.contentWindow),this._messageBridge.on("selected-files-change",this.handleSelectedFilesChange.bind(this)),this.resetSelectionStatus())}unmountIframe(){var e;(e=this._messageBridge)==null||e.destroy(),this._messageBridge=void 0,this.ref.iframeWrapper.innerHTML="",this.resetSelectionStatus()}resetSelectionStatus(){this.set$({selectedList:[],total:0,isDoneBtnEnabled:!1,couldSelectAll:!1,couldDeselectAll:!1,showSelectionStatus:!1})}};Vi.template=`<uc-activity-header><button type="button" class="uc-mini-btn uc-close-btn" set="onclick: *historyBack" l10n="@title:a11y-activity-header-button-close;@aria-label:a11y-activity-header-button-close" ><uc-icon name="close"></uc-icon></button></uc-activity-header><div class="uc-content"><div ref="iframeWrapper" class="uc-iframe-wrapper"></div><div class="uc-toolbar"><button type="button" class="uc-cancel-btn uc-secondary-btn" set="onclick: onCancel" l10n="cancel"></button><div set="@hidden: !showSelectionStatus" class="uc-selection-status-box"><span>{{counterText}}</span><button type="button" set="onclick: onSelectAll; @hidden: !couldSelectAll" l10n="select-all"></button><button type="button" set="onclick: onDeselectAll; @hidden: !couldDeselectAll" l10n="deselect-all"></button></div><button type="button" class="uc-done-btn uc-primary-btn" set="onclick: onDone; @disabled: !isDoneBtnEnabled;"><uc-spinner set="@hidden: isSelectionReady"></uc-spinner><span l10n="done" set="@class: doneBtnTextClass"></span></button></div></div>`;var Hs=class extends I{constructor(){super(...arguments);u(this,"requireCtxName",!0)}_createValidationInput(){let e=document.createElement("input");return e.type="text",e.name=this.ctxName,e.required=this.cfg.multipleMin>0,e.tabIndex=-1,ot(e,{opacity:0,height:0,width:0}),e}initCallback(){super.initCallback(),this._validationInputElement=this._createValidationInput(),this.appendChild(this._validationInputElement),this.sub("*collectionState",e=>{var i;{if(this._dynamicInputsContainer||(this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer)),!this._validationInputElement){let a=this._createValidationInput();this.appendChild(a),this._validationInputElement=a}if(this._dynamicInputsContainer.innerHTML="",e.status==="uploading"||e.status==="idle"){this._validationInputElement.value="",this._validationInputElement.setCustomValidity("");return}if(e.status==="failed"){let a=(i=e.errors[0])==null?void 0:i.message;this._validationInputElement.value="",this._validationInputElement.setCustomValidity(a);return}let r=e.group?e.group:null;if(r){this._validationInputElement.value=r.cdnUrl,this._validationInputElement.setCustomValidity("");return}let o=e.allEntries.map(a=>a.cdnUrl);if(!this.cfg.multiple&&o.length===1){this._validationInputElement.value=o[0],this._validationInputElement.setCustomValidity("");return}this._validationInputElement.remove(),this._validationInputElement=null;let n=new DocumentFragment;for(let a of o){let l=document.createElement("input");l.type="hidden",l.name=`${this.ctxName}[]`,l.value=a,n.appendChild(l)}this._dynamicInputsContainer.replaceChildren(n)}},!1)}};var js=class extends g{};var Bi=class extends _{constructor(){super(...arguments);u(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:e=>{var i;e.preventDefault(),e.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((i=this.$.options.find(r=>r.value==this.value))==null?void 0:i.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",e=>{var r;this.$.currentText=((r=e==null?void 0:e[0])==null?void 0:r.text)||"";let i="";e==null||e.forEach(o=>{i+=`<option value="${o.value}">${o.text}</option>`}),this.$.selectHtml=i})}};Bi.template='<select ref="select" set="innerHTML: selectHtml; onchange: onSelect"></select>';var zi=class extends _{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",t=>{this.toggleAttribute("hidden",!!t)})}};u(zi,"template",`<a href="https://uploadcare.com/?utm_source=copyright&utm_medium=referral&utm_campaign=v4" target="_blank noopener" class="uc-credits" >Powered by Uploadcare</a >`);var Hi=class extends Ae{};Hi.template='<div class="uc-spinner"></div>';var Ot=class extends I{constructor(){super();u(this,"_entry",null);u(this,"_thumbRect",null);u(this,"_debouncedGenerateThumb",O(this._generateThumbnail.bind(this),100));u(this,"_isIntersecting",!1);this.init$={...this.init$,thumbUrl:"",badgeIcon:"",uid:""}}_calculateThumbSize(){var i,r;let e=Math.max(parseInt(String(((i=this==null?void 0:this._thumbRect)==null?void 0:i.height)||0)),parseInt(String(((r=this==null?void 0:this._thumbRect)==null?void 0:r.width)||0)),this.cfg.thumbSize);return window.devicePixelRatio>1&&(e*=window.devicePixelRatio),e}async _generateThumbnail(){var i;if(!this._entry)return;let e=this._entry;if(e.getValue("fileInfo")&&e.getValue("isImage")){let r=this._calculateThumbSize(),o=await this.proxyUrl(P(ne(this.cfg.cdnCname,this._entry.getValue("uuid")),N(e.getValue("cdnUrlModifiers"),`scale_crop/${r}x${r}/center/-/preview/`))),n=e.getValue("thumbUrl");n!==o&&(e.setValue("thumbUrl",o),n!=null&&n.startsWith("blob:")&&URL.revokeObjectURL(n));return}if((i=e.getValue("file"))!=null&&i.type.includes("image"))try{let r=this._calculateThumbSize(),o=await wi(e.getValue("file"),r);e.setValue("thumbUrl",o)}catch{let o=window.getComputedStyle(this).getPropertyValue("--uc-muted-foreground");e.setValue("thumbUrl",Qe(o))}else{let r=window.getComputedStyle(this).getPropertyValue("--uc-muted-foreground");e.setValue("thumbUrl",Qe(r))}}_observerCallback(e){var r;let[i]=e;this._isIntersecting=i.isIntersecting,i.isIntersecting&&(this._thumbRect=i.boundingClientRect,this._debouncedGenerateThumb(),(r=this._observer)==null||r.disconnect()),i.intersectionRatio===0&&this._debouncedGenerateThumb.cancel()}initCallback(){var e,i,r;super.initCallback(),this.defineAccessor("badgeIcon",o=>this.$.badgeIcon=o),this.defineAccessor("uid",o=>{this.set$({uid:o})}),this.sub("uid",o=>{this._entry=this.uploadCollection.read(o)}),(e=this._entry)==null||e.subscribe("fileInfo",o=>{o!=null&&o.isImage&&this._isIntersecting&&this._debouncedGenerateThumb()}),(i=this._entry)==null||i.subscribe("thumbUrl",o=>{this.$.thumbUrl=o?`url(${o})`:""}),(r=this._entry)==null||r.subscribe("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this.setAttribute("role","img")}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{threshold:.1}),this._observer.observe(this)}disconnectedCallback(){var e;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(e=this._observer)==null||e.disconnect()}};Ot.template=`<div class="uc-thumb" set="style.backgroundImage: thumbUrl"><div class="uc-badge"><uc-icon set="@name: badgeIcon"></uc-icon></div></div>`;Ot.bindAttributes({badgeIcon:null,uid:null});var Mt=class Mt extends le{constructor(){super(),this.init$={...this.init$,isHidden:!1}}initCallback(){super.initCallback(),this.defineAccessor("headless",t=>{this.set$({isHidden:$(t)})})}};u(Mt,"styleAttrs",[...W(Mt,Mt,"styleAttrs"),"uc-file-uploader-regular"]);var Lt=Mt;Lt.template=`<uc-simple-btn set="@hidden: isHidden"></uc-simple-btn><uc-modal id="start-from" strokes block-body-scrolling><uc-start-from><uc-drop-area with-icon clickable></uc-drop-area><uc-source-list role="list" wrap></uc-source-list><button type="button" l10n="start-from-cancel" class="uc-secondary-btn" set="onclick: *historyBack"></button><uc-copyright></uc-copyright></uc-start-from></uc-modal><uc-modal id="upload-list" strokes block-body-scrolling><uc-upload-list></uc-upload-list></uc-modal><uc-modal id="camera" strokes block-body-scrolling><uc-camera-source></uc-camera-source></uc-modal><uc-modal id="url" strokes block-body-scrolling><uc-url-source></uc-url-source></uc-modal><uc-modal id="external" strokes block-body-scrolling><uc-external-source></uc-external-source></uc-modal><uc-modal id="cloud-image-edit" strokes block-body-scrolling><uc-cloud-image-editor-activity></uc-cloud-image-editor-activity></uc-modal>`;Lt.bindAttributes({headless:null});var Gs="active",ji="",Ut=class Ut extends le{constructor(){super(),this.init$={...this.init$,singleUpload:!1,isHiddenStartFrom:!1,classUploadList:ji,classStartFrom:ji}}_handleModalOpen(t){var e;t.id===g.activities.CLOUD_IMG_EDIT&&this.set$({classUploadList:Gs}),this.$["*currentActivity"]===g.activities.UPLOAD_LIST&&this.set$({classUploadList:Gs,isHiddenStartFrom:!0}),((e=this.$["*uploadList"])==null?void 0:e.length)<=0&&this.set$({classStartFrom:Gs})}_handleModalClose(t){t.id===this.$["*currentActivity"]&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.set$({isHiddenStartFrom:!1})),t.id===g.activities.CLOUD_IMG_EDIT&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}initCallback(){super.initCallback();let t=this.ref.uBlock;this.sub("*currentActivity",e=>{e===g.activities.UPLOAD_LIST&&this.modalManager.closeAll(),e||(this.$["*currentActivity"]=t.initActivity||g.activities.START_FROM)}),this.sub("*uploadList",e=>{(e==null?void 0:e.length)>0?(this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.set$({classStartFrom:ji})):(this.set$({classUploadList:ji,isHiddenStartFrom:!1}),this.$["*currentActivity"]=t.initActivity||g.activities.START_FROM)}),this.subConfigValue("confirmUpload",e=>{e!==!1&&(this.cfg.confirmUpload=!1)}),this.subConfigValue("filesViewMode",e=>{this.setAttribute("mode",e),this.subConfigValue("multiple",i=>{e==="grid"?(i?this.style.removeProperty("--uc-grid-col"):this.style.setProperty("--uc-grid-col","1"),this.$.singleUpload=!i):(this.style.removeProperty("--uc-grid-col"),this.$.singleUpload=!1)})}),this.handleModalOpen=this._handleModalOpen.bind(this),this.handleModalClose=this._handleModalClose.bind(this),this.modalManager.subscribe(R.OPEN,this.handleModalOpen),this.modalManager.subscribe(R.CLOSE,this.handleModalClose)}destroyCallback(){super.destroyCallback(),this.modalManager.unsubscribe(R.OPEN,this.handleModalOpen),this.modalManager.unsubscribe(R.CLOSE,this.handleModalClose)}};u(Ut,"styleAttrs",[...W(Ut,Ut,"styleAttrs"),"uc-file-uploader-minimal"]);var Gi=Ut;Gi.template=`<uc-start-from set="@hidden: isHiddenStartFrom; @class:classStartFrom"><uc-drop-area set="@single:singleUpload;" initflow clickable tabindex="0" l10n="choose-file"></uc-drop-area><uc-copyright></uc-copyright></uc-start-from><uc-upload-list set="@class:classUploadList" ref="uBlock"></uc-upload-list><uc-modal id="start-from" strokes block-body-scrolling><uc-start-from><uc-drop-area with-icon clickable></uc-drop-area><uc-source-list role="list" wrap></uc-source-list><button type="button" l10n="start-from-cancel" class="uc-secondary-btn" set="onclick: *historyBack"></button></uc-start-from></uc-modal><uc-modal id="camera" strokes block-body-scrolling><uc-camera-source></uc-camera-source></uc-modal><uc-modal id="url" strokes block-body-scrolling><uc-url-source></uc-url-source></uc-modal><uc-modal id="external" strokes block-body-scrolling><uc-external-source></uc-external-source></uc-modal><uc-modal id="cloud-image-edit" strokes block-body-scrolling><uc-cloud-image-editor-activity></uc-cloud-image-editor-activity></uc-modal>`;var Pt=class Pt extends le{constructor(){super(),this.init$={...this.init$,couldCancel:!1,cancel:()=>{this.couldHistoryBack?this.$["*historyBack"]():this.couldShowList&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}}}get couldHistoryBack(){let t=this.$["*history"];return t.length>1&&t[t.length-1]!==g.activities.START_FROM}get couldShowList(){return this.cfg.showEmptyList||this.$["*uploadList"].length>0}initCallback(){super.initCallback();let t=this.ref.uBlock;this.sub("*currentActivity",e=>{e||(this.$["*currentActivity"]=t.initActivity||g.activities.START_FROM)}),this.sub("*uploadList",e=>{(e==null?void 0:e.length)>0&&this.$["*currentActivity"]===(t.initActivity||g.activities.START_FROM)&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}),this.sub("*history",()=>{this.$.couldCancel=this.couldHistoryBack||this.couldShowList})}};u(Pt,"styleAttrs",[...W(Pt,Pt,"styleAttrs"),"uc-file-uploader-inline"]);var Wi=Pt;Wi.template=`<uc-start-from><uc-drop-area with-icon clickable></uc-drop-area><uc-source-list role="list" wrap></uc-source-list><button type="button" l10n="start-from-cancel" class="uc-cancel-btn uc-secondary-btn" set="onclick: cancel; @hidden: !couldCancel" ></button><uc-copyright></uc-copyright></uc-start-from><uc-upload-list ref="uBlock"></uc-upload-list><uc-camera-source></uc-camera-source><uc-url-source></uc-url-source><uc-external-source></uc-external-source><uc-cloud-image-editor-activity></uc-cloud-image-editor-activity>`;var Rt=class Rt extends he{initCallback(){var t;super.initCallback(),(t=this.a11y)==null||t.registerBlock(this)}};u(Rt,"styleAttrs",[...W(Rt,Rt,"styleAttrs"),"uc-wgt-common"]);var Ws=Rt;function Xs(s){for(let t in s){let e=[...t].reduce((i,r)=>(r.toUpperCase()===r&&(r="-"+r.toLowerCase()),i+=r),"");e.startsWith("-")&&(e=e.replace("-","")),e.startsWith("uc-")||(e="uc-"+e),s[t].reg&&s[t].reg(e)}}var qs="UC";async function Jl(s,t=!1){return new Promise((e,i)=>{if(typeof document!="object"){e(null);return}if(typeof window=="object"&&window[qs]){e(window[qs]);return}let r=document.createElement("script");r.async=!0,r.src=s,r.onerror=()=>{i()},r.onload=()=>{let o=window[qs];t&&Xs(o),e(o)},document.head.appendChild(r)})}export{g as ActivityBlock,js as ActivityHeader,Ae as BaseComponent,_ as Block,kt as BtnUi,Ti as CameraSource,Ws as CloudImageEditor,zs as CloudImageEditorActivity,he as CloudImageEditorBlock,il as Config,zi as Copyright,ki as CropFrame,A as Data,wt as DropArea,At as EditorCropButtonControl,it as EditorFilterControl,Mi as EditorImageCropper,Bs as EditorImageFader,$t as EditorOperationControl,Li as EditorScroller,Oi as EditorSlider,Ui as EditorToolbar,Vi as ExternalSource,Ke as ExternalUploadSource,Et as FileItem,Wi as FileUploaderInline,Gi as FileUploaderMinimal,Lt as FileUploaderRegular,Hs as FormInput,gt as Icon,Ps as Img,Pi as LineLoaderUi,Ci as Modal,R as ModalEvents,Xe as PACKAGE_NAME,qe as PACKAGE_VERSION,Di as PresenceToggle,$i as ProgressBar,Ii as ProgressBarCommon,Bi as Select,yt as SimpleBtn,Fi as SliderUi,le as SolutionBlock,Ct as SourceBtn,Fs as SourceList,Hi as Spinner,_i as StartFrom,Ot as Thumb,Ve as UID,Rl as UploadCtxProvider,xi as UploadList,L as UploadSource,I as UploaderBlock,Ei as UrlSource,Xs as defineComponents,Mr as defineLocale,Jl as loadFileUploaderFrom,ft as toKebabCase};
|