diff --git a/abstract/ActivityBlock.js b/abstract/ActivityBlock.js index e09e1d2be..abb1c7f1a 100644 --- a/abstract/ActivityBlock.js +++ b/abstract/ActivityBlock.js @@ -70,7 +70,7 @@ export class ActivityBlock extends Block { if (history.length > 10) { history = history.slice(history.length - 11, history.length - 1); } - if (this.historyTracked) { + if (this.historyTracked && history[history.length - 1] !== this.activityType) { history.push(this.activityType); } this.$['*history'] = history; @@ -93,6 +93,10 @@ export class ActivityBlock extends Block { return this[ACTIVE_PROP]; } + get couldOpenActivity() { + return true; + } + /** * TODO: remove name argument * @@ -157,6 +161,14 @@ export class ActivityBlock extends Block { while (nextActivity === this.activityType) { nextActivity = history.pop(); } + let couldOpenActivity = !!nextActivity; + if (nextActivity) { + /** @type {Set} */ + let blocksRegistry = this.$['*blocksRegistry']; + const nextActivityBlock = [...blocksRegistry].find((block) => block.activityType === nextActivity); + couldOpenActivity = nextActivityBlock?.couldOpenActivity ?? false; + } + nextActivity = couldOpenActivity ? nextActivity : undefined; this.$['*currentActivity'] = nextActivity; this.$['*history'] = history; if (!nextActivity) { diff --git a/abstract/UploaderBlock.js b/abstract/UploaderBlock.js index 91e23aadb..91e11eacb 100644 --- a/abstract/UploaderBlock.js +++ b/abstract/UploaderBlock.js @@ -19,8 +19,7 @@ import { TypedCollection } from './TypedCollection.js'; import { uploadEntrySchema } from './uploadEntrySchema.js'; export class UploaderBlock extends ActivityBlock { - couldBeUploadCollectionOwner = false; - isUploadCollectionOwner = false; + isCtxOwner = false; init$ = uploaderBlockCtx(this); @@ -58,6 +57,15 @@ export class UploaderBlock extends ActivityBlock { } } + get hasCtxOwner() { + return this.hasBlockInCtx((block) => { + if (block instanceof UploaderBlock) { + return block.isCtxOwner && block.isConnected && block !== this; + } + return false; + }); + } + initCallback() { super.initCallback(); @@ -76,47 +84,42 @@ export class UploaderBlock extends ActivityBlock { this.add('*uploadCollection', uploadCollection); } - const hasUploadCollectionOwner = () => - this.hasBlockInCtx((block) => { - if (block instanceof UploaderBlock) { - return block.isUploadCollectionOwner && block.isConnected && block !== this; - } - return false; - }); - - if (this.couldBeUploadCollectionOwner && !hasUploadCollectionOwner()) { - this.isUploadCollectionOwner = true; + if (!this.hasCtxOwner) { + this.initCtxOwner(); + } + } - /** @private */ - this._unobserveCollection = this.uploadCollection.observeCollection(this._handleCollectonUpdate); + destroyCallback() { + super.destroyCallback(); + if (this.isCtxOwner) { + this._unobserveCollectionProperties?.(); + this._unobserveCollection?.(); + } + } - /** @private */ - this._unobserveCollectionProperties = this.uploadCollection.observeProperties( - this._handleCollectionPropertiesUpdate - ); + initCtxOwner() { + this.isCtxOwner = true; - this.subConfigValue('maxLocalFileSizeBytes', () => this._debouncedRunValidators()); - this.subConfigValue('multipleMin', () => this._debouncedRunValidators()); - this.subConfigValue('multipleMax', () => this._debouncedRunValidators()); - this.subConfigValue('multiple', () => this._debouncedRunValidators()); - this.subConfigValue('imgOnly', () => this._debouncedRunValidators()); - this.subConfigValue('accept', () => this._debouncedRunValidators()); - } + /** @private */ + this._unobserveCollection = this.uploadCollection.observeCollection(this._handleCollectonUpdate); - if (this.__initialUploadMetadata) { - this.$['*uploadMetadata'] = this.__initialUploadMetadata; - } + /** @private */ + this._unobserveCollectionProperties = this.uploadCollection.observeProperties( + this._handleCollectionPropertiesUpdate + ); + this.subConfigValue('maxLocalFileSizeBytes', () => this._debouncedRunValidators()); + this.subConfigValue('multipleMin', () => this._debouncedRunValidators()); + this.subConfigValue('multipleMax', () => this._debouncedRunValidators()); + this.subConfigValue('multiple', () => this._debouncedRunValidators()); + this.subConfigValue('imgOnly', () => this._debouncedRunValidators()); + this.subConfigValue('accept', () => this._debouncedRunValidators()); this.subConfigValue('maxConcurrentRequests', (value) => { this.$['*uploadQueue'].concurrency = Number(value) || 1; }); - } - destroyCallback() { - super.destroyCallback(); - if (this.isUploadCollectionOwner) { - this._unobserveCollectionProperties?.(); - this._unobserveCollection?.(); + if (this.__initialUploadMetadata) { + this.$['*uploadMetadata'] = this.__initialUploadMetadata; } } diff --git a/blocks/DropArea/DropArea.js b/blocks/DropArea/DropArea.js index eb977ce91..3ca283f05 100644 --- a/blocks/DropArea/DropArea.js +++ b/blocks/DropArea/DropArea.js @@ -153,6 +153,10 @@ export class DropArea extends UploaderBlock { this.toggleAttribute('hidden', !value); }); + this.sub('isClickable', (value) => { + this.toggleAttribute('clickable', value); + }); + if (this.$.isClickable) { // @private this._onAreaClicked = () => { diff --git a/blocks/DropArea/drop-area.css b/blocks/DropArea/drop-area.css index 4cecb3cfd..636fa1239 100644 --- a/blocks/DropArea/drop-area.css +++ b/blocks/DropArea/drop-area.css @@ -170,3 +170,7 @@ lr-drop-area[with-icon][fullscreen][drag-state='over'] > .content-wrapper { :is(lr-drop-area[with-icon][fullscreen]) > .content-wrapper lr-icon:first-child { transform: translateY(calc(var(--ui-size) * -1.5)); } + +lr-drop-area[clickable] { + cursor: pointer; +} diff --git a/blocks/UploadList/UploadList.js b/blocks/UploadList/UploadList.js index 9e34f4988..9195771ab 100644 --- a/blocks/UploadList/UploadList.js +++ b/blocks/UploadList/UploadList.js @@ -16,7 +16,6 @@ import { debounce } from '../utils/debounce.js'; */ export class UploadList extends UploaderBlock { - couldBeUploadCollectionOwner = true; historyTracked = true; activityType = ActivityBlock.activities.UPLOAD_LIST; @@ -60,11 +59,7 @@ export class UploadList extends UploaderBlock { this._updateUploadsState(); this._updateCountLimitMessage(); - if ( - this.$['*uploadList']?.length === 0 && - !this.cfg.showEmptyList && - this.$['*currentActivity'] === this.activityType - ) { + if (!this.couldOpenActivity && this.$['*currentActivity'] === this.activityType) { this.historyBack(); } }, 0); @@ -199,6 +194,10 @@ export class UploadList extends UploaderBlock { return localizedText('total'); } + get couldOpenActivity() { + return this.cfg.showEmptyList || this.uploadCollection.size > 0; + } + initCallback() { super.initCallback(); @@ -209,7 +208,7 @@ export class UploadList extends UploaderBlock { this.subConfigValue('multipleMax', this._debouncedHandleCollectionUpdate); this.sub('*currentActivity', (currentActivity) => { - if (this.uploadCollection?.size === 0 && !this.cfg.showEmptyList && currentActivity === this.activityType) { + if (!this.couldOpenActivity && currentActivity === this.activityType) { this.$['*currentActivity'] = this.initActivity; } }); diff --git a/blocks/themes/lr-basic/l10n.css b/blocks/themes/lr-basic/l10n.css index 8fa2f26ea..c9397ef52 100644 --- a/blocks/themes/lr-basic/l10n.css +++ b/blocks/themes/lr-basic/l10n.css @@ -12,6 +12,7 @@ --l10n-upload: 'Upload'; --l10n-add-more: 'Add more'; --l10n-cancel: 'Cancel'; + --l10n-start-from-cancel: var(--l10n-cancel); --l10n-clear: 'Clear'; --l10n-camera-shot: 'Shot'; --l10n-upload-url: 'Import'; diff --git a/solutions/file-uploader/inline/FileUploaderInline.js b/solutions/file-uploader/inline/FileUploaderInline.js index 8b99406db..ecdd764ee 100644 --- a/solutions/file-uploader/inline/FileUploaderInline.js +++ b/solutions/file-uploader/inline/FileUploaderInline.js @@ -8,9 +8,26 @@ export class FileUploaderInline extends SolutionBlock { this.init$ = { ...this.init$, - couldBackHistory: false, + couldCancel: false, + cancel: () => { + if (this.couldHistoryBack) { + this.$['*historyBack'](); + } else if (this.couldShowList) { + this.$['*currentActivity'] = ActivityBlock.activities.UPLOAD_LIST; + } + }, }; } + + get couldHistoryBack() { + const history = this.$['*history']; + return history.length > 1 && history[history.length - 1] !== ActivityBlock.activities.START_FROM; + } + + get couldShowList() { + return this.cfg.showEmptyList || this.$['*uploadList'].length > 0; + } + shadowReadyCallback() { /** @type {import('../../../abstract/UploaderBlock.js').UploaderBlock} */ const uBlock = this.ref.uBlock; @@ -29,7 +46,9 @@ export class FileUploaderInline extends SolutionBlock { } }); - this.sub('*history', (history) => (this.$['couldBackHistory'] = history.length > 1)); + this.sub('*history', () => { + this.$['couldCancel'] = this.couldHistoryBack || this.couldShowList; + }); } } @@ -38,9 +57,9 @@ FileUploaderInline.template = /* HTML */ ` diff --git a/solutions/file-uploader/minimal/index.css b/solutions/file-uploader/minimal/index.css index 8a293fe9f..3eb687bc7 100644 --- a/solutions/file-uploader/minimal/index.css +++ b/solutions/file-uploader/minimal/index.css @@ -69,7 +69,6 @@ lr-drop-area { text-align: center; background-color: var(--clr-background); border-radius: var(--border-radius-frame); - cursor: pointer; } lr-upload-list lr-activity-header { diff --git a/solutions/file-uploader/regular/FileUploaderRegular.js b/solutions/file-uploader/regular/FileUploaderRegular.js index a563eaed9..d3c7e3af6 100644 --- a/solutions/file-uploader/regular/FileUploaderRegular.js +++ b/solutions/file-uploader/regular/FileUploaderRegular.js @@ -9,7 +9,7 @@ FileUploaderRegular.template = /* HTML */ ` - + diff --git a/web/blocks.iife.min.js b/web/blocks.iife.min.js index eef07543e..c37bcb72b 100644 --- a/web/blocks.iife.min.js +++ b/web/blocks.iife.min.js @@ -23,5 +23,5 @@ * SOFTWARE. * */ -"use strict";var LR=(()=>{var ke=Object.defineProperty;var Pr=Object.getOwnPropertyDescriptor;var Mr=Object.getOwnPropertyNames;var Nr=Object.prototype.hasOwnProperty;var Dr=(s,i,t)=>i in s?ke(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t;var l=(s,i)=>ke(s,"name",{value:i,configurable:!0});var Fr=(s,i)=>{for(var t in i)ke(s,t,{get:i[t],enumerable:!0})},Vr=(s,i,t,e)=>{if(i&&typeof i=="object"||typeof i=="function")for(let r of Mr(i))!Nr.call(s,r)&&r!==t&&ke(s,r,{get:()=>i[r],enumerable:!(e=Pr(i,r))||e.enumerable});return s};var Br=s=>Vr(ke({},"__esModule",{value:!0}),s);var u=(s,i,t)=>(Dr(s,typeof i!="symbol"?i+"":i,t),t);var Jo={};Fr(Jo,{ActivityBlock:()=>_,ActivityHeader:()=>si,BaseComponent:()=>Lt,Block:()=>y,CameraSource:()=>he,CloudImageEditor:()=>ni,CloudImageEditorActivity:()=>ii,CloudImageEditorBlock:()=>tt,Config:()=>or,ConfirmationDialog:()=>de,Copyright:()=>Ae,CropFrame:()=>me,Data:()=>S,DataOutput:()=>kt,DropArea:()=>Bt,EditorCropButtonControl:()=>Xt,EditorFilterControl:()=>St,EditorImageCropper:()=>be,EditorImageFader:()=>ei,EditorOperationControl:()=>qt,EditorScroller:()=>ye,EditorSlider:()=>ge,EditorToolbar:()=>ve,ExternalSource:()=>Ee,FileItem:()=>it,FilePreview:()=>Ht,FileUploaderInline:()=>Ie,FileUploaderMinimal:()=>Se,FileUploaderRegular:()=>$e,Icon:()=>Dt,Img:()=>Ge,LineLoaderUi:()=>Ce,LrBtnUi:()=>Gt,MessageBox:()=>le,Modal:()=>jt,PACKAGE_NAME:()=>Yi,PACKAGE_VERSION:()=>Zi,PresenceToggle:()=>we,ProgressBar:()=>fe,ProgressBarCommon:()=>pe,Select:()=>xe,ShadowWrapper:()=>Yt,SimpleBtn:()=>Vt,SliderUi:()=>Te,SourceBtn:()=>zt,SourceList:()=>Ke,StartFrom:()=>oe,Tabs:()=>Kt,UploadCtxProvider:()=>_r,UploadDetails:()=>ue,UploadList:()=>ae,UploaderBlock:()=>v,UrlSource:()=>ce,Video:()=>Z,connectBlocksFrom:()=>Ur,registerBlocks:()=>Ii,shadowed:()=>ri,toKebabCase:()=>rt});var zr=Object.defineProperty,jr=l((s,i,t)=>i in s?zr(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t,"__defNormalProp"),Li=l((s,i,t)=>(jr(s,typeof i!="symbol"?i+"":i,t),t),"__publicField");function Hr(s){let i=l(t=>{var e;for(let r in t)((e=t[r])==null?void 0:e.constructor)===Object&&(t[r]=i(t[r]));return{...t}},"clone");return i(s)}l(Hr,"cloneObj");var S=l(class{constructor(s){s.constructor===Object?this.store=Hr(s):(this._storeIsProxy=!0,this.store=s),this.callbackMap=Object.create(null)}static warn(s,i){console.warn(`Symbiote Data: cannot ${s}. Prop name: `+i)}read(s){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?(S.warn("read",s),null):this.store[s]}has(s){return this._storeIsProxy?this.store[s]!==void 0:this.store.hasOwnProperty(s)}add(s,i,t=!1){!t&&Object.keys(this.store).includes(s)||(this.store[s]=i,this.notify(s))}pub(s,i){if(!this._storeIsProxy&&!this.store.hasOwnProperty(s)){S.warn("publish",s);return}this.store[s]=i,this.notify(s)}multiPub(s){for(let i in s)this.pub(i,s[i])}notify(s){this.callbackMap[s]&&this.callbackMap[s].forEach(i=>{i(this.store[s])})}sub(s,i,t=!0){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?(S.warn("subscribe",s),null):(this.callbackMap[s]||(this.callbackMap[s]=new Set),this.callbackMap[s].add(i),t&&i(this.store[s]),{remove:()=>{this.callbackMap[s].delete(i),this.callbackMap[s].size||delete this.callbackMap[s]},callback:i})}static registerCtx(s,i=Symbol()){let t=S.globalStore.get(i);return t?console.warn('State: context UID "'+i+'" already in use'):(t=new S(s),S.globalStore.set(i,t)),t}static deleteCtx(s){S.globalStore.delete(s)}static getCtx(s,i=!0){return S.globalStore.get(s)||(i&&console.warn('State: wrong context UID - "'+s+'"'),null)}},"Data");S.globalStore=new Map;var w=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"}),ls="1234567890QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm",Wr=ls.length-1,Le=l(class{static generate(s="XXXXXXXXX-XXX"){let i="";for(let t=0;t{ai&&t?i[0].toUpperCase()+i.slice(1):i).join("").split("_").map((i,t)=>i&&t?i.toUpperCase():i).join("")}l(Xr,"kebabToCamel");function qr(s,i){[...s.querySelectorAll(`[${w.REPEAT_ATTR}]`)].forEach(t=>{let e=t.getAttribute(w.REPEAT_ITEM_TAG_ATTR),r;if(e&&(r=window.customElements.get(e)),!r){r=l(class extends i.BaseComponent{constructor(){super(),e||(this.style.display="contents")}},"itemClass");let o=t.innerHTML;r.template=o,r.reg(e)}for(;t.firstChild;)t.firstChild.remove();let n=t.getAttribute(w.REPEAT_ATTR);i.sub(n,o=>{if(!o){for(;t.firstChild;)t.firstChild.remove();return}let a=[...t.children],c,h=l(d=>{d.forEach((f,g)=>{if(a[g])if(a[g].set$)setTimeout(()=>{a[g].set$(f)});else for(let m in f)a[g][m]=f[m];else{c||(c=new DocumentFragment);let m=new r;Object.assign(m.init$,f),c.appendChild(m)}}),c&&t.appendChild(c);let p=a.slice(d.length,a.length);for(let f of p)f.remove()},"fillItems");if(o.constructor===Array)h(o);else if(o.constructor===Object){let d=[];for(let p in o){let f=o[p];Object.defineProperty(f,"_KEY_",{value:p,enumerable:!0}),d.push(f)}h(d)}else console.warn("Symbiote repeat data type error:"),console.log(o)}),t.removeAttribute(w.REPEAT_ATTR),t.removeAttribute(w.REPEAT_ITEM_TAG_ATTR)})}l(qr,"repeatProcessor");var ns="__default__";function Gr(s,i){if(i.shadowRoot)return;let t=[...s.querySelectorAll("slot")];if(!t.length)return;let e={};t.forEach(r=>{let n=r.getAttribute("name")||ns;e[n]={slot:r,fr:document.createDocumentFragment()}}),i.initChildren.forEach(r=>{var n;let o=ns;r instanceof Element&&r.hasAttribute("slot")&&(o=r.getAttribute("slot"),r.removeAttribute("slot")),(n=e[o])==null||n.fr.appendChild(r)}),Object.values(e).forEach(r=>{if(r.fr.childNodes.length)r.slot.parentNode.replaceChild(r.fr,r.slot);else if(r.slot.childNodes.length){let n=document.createDocumentFragment();n.append(...r.slot.childNodes),r.slot.parentNode.replaceChild(n,r.slot)}else r.slot.remove()})}l(Gr,"slotProcessor");function Kr(s,i){[...s.querySelectorAll(`[${w.EL_REF_ATTR}]`)].forEach(t=>{let e=t.getAttribute(w.EL_REF_ATTR);i.ref[e]=t,t.removeAttribute(w.EL_REF_ATTR)})}l(Kr,"refProcessor");function Yr(s,i){[...s.querySelectorAll(`[${w.BIND_ATTR}]`)].forEach(t=>{let r=t.getAttribute(w.BIND_ATTR).split(";");[...t.attributes].forEach(n=>{if(n.name.startsWith("-")&&n.value){let o=Xr(n.name.replace("-",""));r.push(o+":"+n.value),t.removeAttribute(n.name)}}),r.forEach(n=>{if(!n)return;let o=n.split(":").map(d=>d.trim()),a=o[0],c;a.indexOf(w.ATTR_BIND_PRFX)===0&&(c=!0,a=a.replace(w.ATTR_BIND_PRFX,""));let h=o[1].split(",").map(d=>d.trim());for(let d of h){let p;d.startsWith("!!")?(p="double",d=d.replace("!!","")):d.startsWith("!")&&(p="single",d=d.replace("!","")),i.sub(d,f=>{p==="double"?f=!!f:p==="single"&&(f=!f),c?(f==null?void 0:f.constructor)===Boolean?f?t.setAttribute(a,""):t.removeAttribute(a):t.setAttribute(a,f):as(t,a,f)||(t[w.SET_LATER_KEY]||(t[w.SET_LATER_KEY]=Object.create(null)),t[w.SET_LATER_KEY][a]=f)})}}),t.removeAttribute(w.BIND_ATTR)})}l(Yr,"domSetProcessor");var oi="{{",Oe="}}",Zr="skip-text";function Jr(s){let i,t=[],e=document.createTreeWalker(s,NodeFilter.SHOW_TEXT,{acceptNode:r=>{var n;return!((n=r.parentElement)!=null&&n.hasAttribute(Zr))&&r.textContent.includes(oi)&&r.textContent.includes(Oe)&&1}});for(;i=e.nextNode();)t.push(i);return t}l(Jr,"getTextNodesWithTokens");var Qr=l(function(s,i){Jr(s).forEach(e=>{let r=[],n;for(;e.textContent.includes(Oe);)e.textContent.startsWith(oi)?(n=e.textContent.indexOf(Oe)+Oe.length,e.splitText(n),r.push(e)):(n=e.textContent.indexOf(oi),e.splitText(n)),e=e.nextSibling;r.forEach(o=>{let a=o.textContent.replace(oi,"").replace(Oe,"");o.textContent="",i.sub(a,c=>{o.textContent=c})})})},"txtNodesProcessor"),tn=[qr,Gr,Kr,Yr,Qr],li="'",Jt='"',en=/\\([0-9a-fA-F]{1,6} ?)/g;function sn(s){return(s[0]===Jt||s[0]===li)&&(s[s.length-1]===Jt||s[s.length-1]===li)}l(sn,"hasLeadingTrailingQuotes");function rn(s){return(s[0]===Jt||s[0]===li)&&(s=s.slice(1)),(s[s.length-1]===Jt||s[s.length-1]===li)&&(s=s.slice(0,-1)),s}l(rn,"trimQuotes");function nn(s){let i="",t="";for(var e=0;eString.fromCodePoint(parseInt(e.trim(),16))),i=i.replaceAll(`\\ -`,"\\n"),i=nn(i),i=Jt+i+Jt);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${s}`)}}l(on,"parseCssPropertyValue");var os=0,Zt=null,mt=null,Ct=l(class extends HTMLElement{constructor(){super(),Li(this,"updateCssData",()=>{var s;this.dropCssDataCache(),(s=this.__boundCssProps)==null||s.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 Ct}initCallback(){}__initCallback(){var s;this.__initialized||(this.__initialized=!0,(s=this.initCallback)==null||s.call(this))}render(s,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let r=this.getAttribute(w.USE_TPL);if(r){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(r))||document.querySelector(r);o?s=o.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)t=s;else if((s==null?void 0:s.constructor)===String){let r=document.createElement("template");r.innerHTML=s,t=r.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let r of this.tplProcessors)r(t,this)}let e=l(()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()},"addFr");if(this.constructor.__shadowStylesUrl){i=!0;let r=document.createElement("link");r.rel="stylesheet",r.href=this.constructor.__shadowStylesUrl,r.onload=e,this.shadowRoot.prepend(r)}else e()}addTemplateProcessor(s){this.tplProcessors.add(s)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=Le.generate(),this.style.setProperty(w.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(w.CSS_CTX_PROP,!0)}get ctxName(){var s;let i=((s=this.getAttribute(w.CTX_NAME_ATTR))==null?void 0:s.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=S.registerCtx({},this)),this.__localCtx}get nodeCtx(){return S.getCtx(this.ctxName,!1)||S.registerCtx({},this.ctxName)}static __parseProp(s,i){let t,e;if(s.startsWith(w.EXT_DATA_CTX_PRFX))t=i.nodeCtx,e=s.replace(w.EXT_DATA_CTX_PRFX,"");else if(s.includes(w.NAMED_DATA_CTX_SPLTR)){let r=s.split(w.NAMED_DATA_CTX_SPLTR);t=S.getCtx(r[0]),e=r[1]}else t=i.localCtx,e=s;return{ctx:t,name:e}}sub(s,i,t=!0){let e=l(n=>{this.isConnected&&i(n)},"subCb"),r=Ct.__parseProp(s,this);r.ctx.has(r.name)?this.allSubs.add(r.ctx.sub(r.name,e,t)):window.setTimeout(()=>{this.allSubs.add(r.ctx.sub(r.name,e,t))})}notify(s){let i=Ct.__parseProp(s,this);i.ctx.notify(i.name)}has(s){let i=Ct.__parseProp(s,this);return i.ctx.has(i.name)}add(s,i,t=!1){let e=Ct.__parseProp(s,this);e.ctx.add(e.name,i,t)}add$(s,i=!1){for(let t in s)this.add(t,s[t],i)}get $(){if(!this.__stateProxy){let s=Object.create(null);this.__stateProxy=new Proxy(s,{set:(i,t,e)=>{let r=Ct.__parseProp(t,this);return r.ctx.pub(r.name,e),!0},get:(i,t)=>{let e=Ct.__parseProp(t,this);return e.ctx.read(e.name)}})}return this.__stateProxy}set$(s,i=!1){for(let t in s){let e=s[t];i||![String,Number,Boolean].includes(e==null?void 0:e.constructor)?this.$[t]=e:this.$[t]!==e&&(this.$[t]=e)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(w.CTX_OWNER_ATTR)&&this.getAttribute(w.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let s=this.constructor.__attrDesc;if(s)for(let i of Object.values(s))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(w.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(w.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(w.NAMED_DATA_CTX_SPLTR)){let t=i.split(w.NAMED_DATA_CTX_SPLTR),e=t[0].trim(),r=t[1].trim();if(e&&r){let n=S.getCtx(e,!1);n||(n=S.registerCtx({},e)),n.add(r,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var s;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(s=this.getAttribute(w.CTX_NAME_ATTR))==null?void 0:s.trim();if(i&&this.style.setProperty(w.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[w.SET_LATER_KEY]){for(let t in this[w.SET_LATER_KEY])as(this,t,this[w.SET_LATER_KEY][t]);delete this[w.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of tn)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${w.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let r=this.constructor.__rootStylesLink.cloneNode(!0);r.setAttribute(w.ROOT_STYLE_ATTR_NAME,this.constructor.is),r.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(r):t.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);mt==null||mt.delete(this.updateCssData),mt!=null&&mt.size||(Zt==null||Zt.disconnect(),Zt=null,mt=null)},100)))}static reg(s,i=!1){s||(os++,s=`${w.AUTO_TAG_PRFX}-${os}`),this.__tag=s;let t=window.customElements.get(s);if(t){!i&&t!==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(` `));return}window.customElements.define(s,i?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,i,t){var e;if(i===t)return;let r=(e=this.constructor.__attrDesc)==null?void 0:e[s];r?this.__dataCtxInitialized?this.$[r]=t:this.init$[r]=t:this[s]=t}getCssData(s,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(s)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(s).trim();try{this.__cssDataCache[s]=on(t)}catch{!i&&console.warn(`CSS Data error: ${s}`),this.__cssDataCache[s]=null}}return this.__cssDataCache[s]}__extractCssName(s){return s.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){mt||(mt=new Set),mt.add(this.updateCssData),Zt||(Zt=new MutationObserver(s=>{s[0].type==="attributes"&&mt.forEach(i=>{i()})}),Zt.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(s,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(s);let t=this.getCssData(this.__extractCssName(s),!0);t===null&&(t=i),this.add(s,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(s,i,t){let e="__"+s;this[e]=this[s],Object.defineProperty(this,s,{set:r=>{this[e]=r,t?window.setTimeout(()=>{i==null||i(r)}):i==null||i(r)},get:()=>this[e]}),this[s]=this[e]}static set shadowStyles(s){let i=new Blob([s],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(s){if(!this.__rootStylesLink){let i=new Blob([s],{type:"text/css"}),t=URL.createObjectURL(i),e=document.createElement("link");e.href=t,e.rel="stylesheet",this.__rootStylesLink=e}}},"_BaseComponent"),Lt=Ct;Li(Lt,"template");var Oi=l(class{static _print(s){console.warn(s)}static setDefaultTitle(s){this.defaultTitle=s}static setRoutingMap(s){Object.assign(this.appMap,s);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}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(t=>{if(t.includes("?"))s.route=t.replace("?","");else if(t.includes("=")){let e=t.split("=");s.options[e[0]]=decodeURI(e[1])}else s.options[t]=!0}),s}static notify(){let s=this.readAddressBar(),i=this.appMap[s.route];if(i&&i.title&&(document.title=i.title),s.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${s.route}" not found...`);return}let t=new CustomEvent(Oi.routingEventName,{detail:{route:s.route,options:Object.assign(i||{},s.options)}});window.dispatchEvent(t)}static reflect(s,i={}){let t=this.appMap[s];if(!t){this._print("Wrong route: "+s);return}let e="?"+s;for(let n in i)i[n]===!0?e+=this.separator+n:e+=this.separator+n+`=${i[n]}`;let r=t.title||this.defaultTitle||"";window.history.pushState(null,r,e),document.title=r}static applyRoute(s,i={}){this.reflect(s,i),this.notify()}static setSeparator(s){this._separator=s}static get separator(){return this._separator||"&"}static createRouterData(s,i){this.setRoutingMap(i);let t=S.registerCtx({route:null,options:null,title:null},s);return window.addEventListener(this.routingEventName,e=>{var r;t.multiPub({route:e.detail.route,options:e.detail.options,title:((r=e.detail.options)==null?void 0:r.title)||this.defaultTitle||""})}),Oi.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}},"AppRouter");Oi.appMap=Object.create(null);function Ui(s,i){for(let t in i)t.includes("-")?s.style.setProperty(t,i[t]):s.style[t]=i[t]}l(Ui,"applyStyles");function ln(s,i){for(let t in i)i[t].constructor===Boolean?i[t]?s.setAttribute(t,""):s.removeAttribute(t):s.setAttribute(t,i[t])}l(ln,"applyAttributes");function Ue(s={tag:"div"}){let i=document.createElement(s.tag);if(s.attributes&&ln(i,s.attributes),s.styles&&Ui(i,s.styles),s.properties)for(let t in s.properties)i[t]=s.properties[t];return s.processors&&s.processors.forEach(t=>{t(i)}),s.children&&s.children.forEach(t=>{let e=Ue(t);i.appendChild(e)}),i}l(Ue,"create");var cs="idb-store-ready",an="symbiote-db",cn="symbiote-idb-update_",hn=l(class{_notifyWhenReady(s=null){window.dispatchEvent(new CustomEvent(cs,{detail:{dbName:this.name,storeName:this.storeName,event:s}}))}get _updEventName(){return cn+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,i){this.name=s,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=e=>{this._notifyWhenReady(e)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async r=>{r(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(s){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(s);return new Promise((e,r)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?e(n.target.result._value):(e(null),console.warn(`IDB: cannot read "${s}"`))},t.onerror=n=>{r(n)}})}write(s,i,t=!1){let e={_key:s,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(e);return new Promise((o,a)=>{n.onsuccess=c=>{t||this._notifySubscribers(s),o(c.target.result)},n.onerror=c=>{a(c)}})}delete(s,i=!1){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(s);return new Promise((r,n)=>{e.onsuccess=o=>{i||this._notifySubscribers(s),r(o)},e.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,e)=>{i.onsuccess=r=>{let n=r.target.result;t(n.map(o=>o._value))},i.onerror=r=>{e(r)}})}subscribe(s,i){this._subscriptionsMap[s]||(this._subscriptionsMap[s]=new Set);let t=this._subscriptionsMap[s];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[s]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,hs.clear(this.name)}},"DbInstance"),hs=l(class{static get readyEventName(){return cs}static open(s=an,i="store"){let t=s+"/"+i;return this._reg[t]||(this._reg[t]=new hn(s,i)),this._reg[t]}static clear(s){window.indexedDB.deleteDatabase(s);for(let i in this._reg)i.split("/")[0]===s&&delete this._reg[i]}},"IDB");Li(hs,"_reg",Object.create(null));var I=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),un=Object.freeze({[I.UPLOAD_START]:"LR_UPLOAD_START",[I.REMOVE]:"LR_REMOVE",[I.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[I.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[I.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[I.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[I.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[I.DATA_OUTPUT]:"LR_DATA_OUTPUT",[I.DONE_FLOW]:"LR_DONE_FLOW",[I.INIT_FLOW]:"LR_INIT_FLOW"}),Re=class{constructor(i){u(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var r;(r=this._target)==null||r.dispatchEvent(new CustomEvent(i,{detail:t}));let e=un[i];window.dispatchEvent(new CustomEvent(e,{detail:{ctx:this._getCtxName(),type:e,data:t}}))}emit(i,t,{debounce:e}={}){if(typeof e!="number"&&!e){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let r=typeof e=="number"?e:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},r);this._timeoutStore.set(i,n)}};l(Re,"EventEmitter");function k(s,i){let t,e=l((...r)=>{clearTimeout(t),t=setTimeout(()=>s(...r),i)},"debounced");return e.cancel=()=>{clearTimeout(t)},e}l(k,"debounce");var dn="--uploadcare-blocks-window-height",ai="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function Ri(){return typeof window[ai]=="undefined"?!1:!!window[ai]}l(Ri,"getIsWindowHeightTracked");function us(){if(Ri())return;let s=l(()=>{document.documentElement.style.setProperty(dn,`${window.innerHeight}px`),window[ai]=!0},"callback"),i=k(s,100);return window.addEventListener("resize",i,{passive:!0}),s(),()=>{window[ai]=!1,window.removeEventListener("resize",i)}}l(us,"createWindowHeightTracker");var ci=l((s,i)=>new Intl.PluralRules(s).select(i),"getPluralForm");var pn=l(s=>s,"DEFAULT_TRANSFORMER"),Pi="{{",ps="}}",ds="plural:";function Pe(s,i,t={}){var o;let{openToken:e=Pi,closeToken:r=ps,transform:n=pn}=t;for(let a in i){let c=(o=i[a])==null?void 0:o.toString();s=s.replaceAll(e+a+r,typeof c=="string"?n(c):c)}return s}l(Pe,"applyTemplateData");function fs(s){let i=[],t=s.indexOf(Pi);for(;t!==-1;){let e=s.indexOf(ps,t),r=s.substring(t+2,e);if(r.startsWith(ds)){let n=s.substring(t+2,e).replace(ds,""),o=n.substring(0,n.indexOf("(")),a=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:r,pluralKey:o,countVariable:a})}t=s.indexOf(Pi,e)}return i}l(fs,"getPluralObjects");var rt=l(s=>{var i;return(i=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:i.map(t=>t.toLowerCase()).join("-")},"toKebabCase");var hi=l(({element:s,attribute:i,onSuccess:t,onTimeout:e,timeout:r=300})=>{let n=setTimeout(()=>{c.disconnect(),e()},r),o=l(h=>{let d=s.getAttribute(i);h.type==="attributes"&&h.attributeName===i&&d!==null&&(clearTimeout(n),c.disconnect(),t(d))},"handleMutation"),a=s.getAttribute(i);a!==null&&(clearTimeout(n),t(a));let c=new MutationObserver(h=>{let d=h[h.length-1];o(d)});c.observe(s,{attributes:!0,attributeFilter:[i]})},"waitForAttribute");var ms=new Set;function Me(s){ms.has(s)||(ms.add(s),console.warn(s))}l(Me,"warnOnce");function gs(s){return Object.prototype.toString.call(s)==="[object Object]"}l(gs,"isObject");var fn=/\W|_/g;function mn(s){return s.split(fn).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}l(mn,"camelizeString");function _s(s,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(s)?s.map(t=>bt(t,{ignoreKeys:i})):s}l(_s,"camelizeArrayItems");function bt(s,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(s))return _s(s,{ignoreKeys:i});if(!gs(s))return s;let t={};for(let e of Object.keys(s)){let r=s[e];if(i.includes(e)){t[e]=r;continue}gs(r)?r=bt(r,{ignoreKeys:i}):Array.isArray(r)&&(r=_s(r,{ignoreKeys:i})),t[mn(e)]=r}return t}l(bt,"camelizeKeys");var gn=l(s=>new Promise(i=>setTimeout(i,s)),"delay");function Fi({libraryName:s,libraryVersion:i,userAgent:t,publicKey:e="",integration:r=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:e,libraryName:s,libraryVersion:i,languageName:n,integration:r});let o=[s,i,e].filter(Boolean).join("/"),a=[n,r].filter(Boolean).join("; ");return`${o} (${a})`}l(Fi,"getUserAgent$1");var _n={factor:2,time:100};function bn(s,i=_n){let t=0;function e(r){let n=Math.round(i.time*i.factor**t);return r({attempt:t,retry:l(a=>gn(a!=null?a:n).then(()=>(t+=1,e(r))),"retry")})}return l(e,"runAttempt"),e(s)}l(bn,"retrier");var Ut=class extends Error{constructor(t){super();u(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,Ut.prototype),this.originalProgressEvent=t}};l(Ut,"UploadcareNetworkError");var fi=l((s,i)=>{s&&(s.aborted?Promise.resolve().then(i):s.addEventListener("abort",()=>i(),{once:!0}))},"onCancel"),gt=class extends Error{constructor(t="Request canceled"){super(t);u(this,"isCancel",!0);Object.setPrototypeOf(this,gt.prototype)}};l(gt,"CancelError");var yn=500,ys=l(({check:s,interval:i=yn,timeout:t,signal:e})=>new Promise((r,n)=>{let o,a;fi(e,()=>{o&&clearTimeout(o),n(new gt("Poll cancelled"))}),t&&(a=setTimeout(()=>{o&&clearTimeout(o),n(new gt("Timed out"))},t));let c=l(()=>{try{Promise.resolve(s(e)).then(h=>{h?(a&&clearTimeout(a),r(h)):o=setTimeout(c,i)}).catch(h=>{a&&clearTimeout(a),n(h)})}catch(h){a&&clearTimeout(a),n(h)}},"tick");o=setTimeout(c,0)}),"poll"),A={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"},mi="application/octet-stream",vs="original",wt=l(({method:s,url:i,data:t,headers:e={},signal:r,onProgress:n})=>new Promise((o,a)=>{let c=new XMLHttpRequest,h=(s==null?void 0:s.toUpperCase())||"GET",d=!1;c.open(h,i,!0),e&&Object.entries(e).forEach(p=>{let[f,g]=p;typeof g!="undefined"&&!Array.isArray(g)&&c.setRequestHeader(f,g)}),c.responseType="text",fi(r,()=>{d=!0,c.abort(),a(new gt)}),c.onload=()=>{if(c.status!=200)a(new Error(`Error ${c.status}: ${c.statusText}`));else{let p={method:h,url:i,data:t,headers:e||void 0,signal:r,onProgress:n},f=c.getAllResponseHeaders().trim().split(/[\r\n]+/),g={};f.forEach(function($){let x=$.split(": "),E=x.shift(),T=x.join(": ");E&&typeof E!="undefined"&&(g[E]=T)});let m=c.response,b=c.status;o({request:p,data:m,headers:g,status:b})}},c.onerror=p=>{d||a(new Ut(p))},n&&typeof n=="function"&&(c.upload.onprogress=p=>{p.lengthComputable?n({isComputable:!0,value:p.loaded/p.total}):n({isComputable:!1})}),t?c.send(t):c.send()}),"request");function vn(s,...i){return s}l(vn,"identity");var Cn=l(({name:s})=>s?[s]:[],"getFileOptions"),wn=vn,Tn=l(()=>new FormData,"getFormData"),Cs=l(s=>!1,"isBuffer"),gi=l(s=>typeof Blob!="undefined"&&s instanceof Blob,"isBlob"),_i=l(s=>typeof File!="undefined"&&s instanceof File,"isFile"),bi=l(s=>!!s&&typeof s=="object"&&!Array.isArray(s)&&"uri"in s&&typeof s.uri=="string","isReactNativeAsset"),Qt=l(s=>gi(s)||_i(s)||Cs()||bi(s),"isFileData"),En=l(s=>typeof s=="string"||typeof s=="number"||typeof s=="undefined","isSimpleValue"),xn=l(s=>!!s&&typeof s=="object"&&!Array.isArray(s),"isObjectValue"),An=l(s=>!!s&&typeof s=="object"&&"data"in s&&Qt(s.data),"isFileValue");function $n(s,i,t){if(An(t)){let{name:e,contentType:r}=t,n=wn(t.data,e,r!=null?r:mi),o=Cn({name:e,contentType:r});s.push([i,n,...o])}else if(xn(t))for(let[e,r]of Object.entries(t))typeof r!="undefined"&&s.push([`${i}[${e}]`,String(r)]);else En(t)&&t&&s.push([i,t.toString()])}l($n,"collectParams");function Sn(s){let i=[];for(let[t,e]of Object.entries(s))$n(i,t,e);return i}l(Sn,"getFormDataParams");function Vi(s){let i=Tn(),t=Sn(s);for(let e of t){let[r,n,...o]=e;i.append(r,n,...o)}return i}l(Vi,"buildFormData");var R=class extends Error{constructor(t,e,r,n,o){super();u(this,"isCancel");u(this,"code");u(this,"request");u(this,"response");u(this,"headers");this.name="UploadClientError",this.message=t,this.code=e,this.request=r,this.response=n,this.headers=o,Object.setPrototypeOf(this,R.prototype)}};l(R,"UploadClientError");var In=l(s=>{let i=new URLSearchParams;for(let[t,e]of Object.entries(s))e&&typeof e=="object"&&!Array.isArray(e)?Object.entries(e).filter(r=>{var n;return(n=r[1])!=null?n:!1}).forEach(r=>i.set(`${t}[${r[0]}]`,String(r[1]))):Array.isArray(e)?e.forEach(r=>{i.append(`${t}[]`,r)}):typeof e=="string"&&e?i.set(t,e):typeof e=="number"&&i.set(t,e.toString());return i.toString()},"buildSearchParams"),_t=l((s,i,t)=>{let e=new URL(s);return e.pathname=(e.pathname+i).replace("//","/"),t&&(e.search=In(t)),e.toString()},"getUrl"),kn="6.8.0",On="UploadcareUploadClient",Ln=kn;function Rt(s){return Fi({libraryName:On,libraryVersion:Ln,...s})}l(Rt,"getUserAgent");var Un="RequestThrottledError",bs=15e3,Rn=1e3;function Pn(s){let{headers:i}=s||{};if(!i||typeof i["retry-after"]!="string")return bs;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:bs}l(Pn,"getTimeoutFromThrottledRequest");function Tt(s,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:e}=i;return bn(({attempt:r,retry:n})=>s().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===Un&&r{let i="";return(gi(s)||_i(s)||bi(s))&&(i=s.type),i||mi},"getContentType"),Ts=l(s=>{let i="";return _i(s)&&s.name?i=s.name:gi(s)||Cs()?i="":bi(s)&&s.name&&(i=s.name),i||vs},"getFileName");function Bi(s){return typeof s=="undefined"||s==="auto"?"auto":s?"1":"0"}l(Bi,"getStoreValue");function Mn(s,{publicKey:i,fileName:t,contentType:e,baseURL:r=A.baseURL,secureSignature:n,secureExpire:o,store:a,signal:c,onProgress:h,source:d="local",integration:p,userAgent:f,retryThrottledRequestMaxTimes:g=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:m=A.retryNetworkErrorMaxTimes,metadata:b}){return Tt(()=>wt({method:"POST",url:_t(r,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Rt({publicKey:i,integration:p,userAgent:f})},data:Vi({file:{data:s,name:t||Ts(s),contentType:e||ws(s)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:Bi(a),signature:n,expire:o,source:d,metadata:b}),signal:c,onProgress:h}).then(({data:$,headers:x,request:E})=>{let T=bt(JSON.parse($));if("error"in T)throw new R(T.error.content,T.error.errorCode,E,T,x);return T}),{retryNetworkErrorMaxTimes:m,retryThrottledRequestMaxTimes:g})}l(Mn,"base");var Di;(function(s){s.Token="token",s.FileInfo="file_info"})(Di||(Di={}));function Nn(s,{publicKey:i,baseURL:t=A.baseURL,store:e,fileName:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:a,secureExpire:c,source:h="url",signal:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:m=A.retryNetworkErrorMaxTimes,metadata:b}){return Tt(()=>wt({method:"POST",headers:{"X-UC-User-Agent":Rt({publicKey:i,integration:p,userAgent:f})},url:_t(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:s,store:Bi(e),filename:r,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:a,expire:c,source:h,metadata:b}),signal:d}).then(({data:$,headers:x,request:E})=>{let T=bt(JSON.parse($));if("error"in T)throw new R(T.error.content,T.error.errorCode,E,T,x);return T}),{retryNetworkErrorMaxTimes:m,retryThrottledRequestMaxTimes:g})}l(Nn,"fromUrl");var H;(function(s){s.Unknown="unknown",s.Waiting="waiting",s.Progress="progress",s.Error="error",s.Success="success"})(H||(H={}));var Dn=l(s=>"status"in s&&s.status===H.Error,"isErrorResponse");function Fn(s,{publicKey:i,baseURL:t=A.baseURL,signal:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=A.retryNetworkErrorMaxTimes}={}){return Tt(()=>wt({method:"GET",headers:i?{"X-UC-User-Agent":Rt({publicKey:i,integration:r,userAgent:n})}:void 0,url:_t(t,"/from_url/status/",{jsonerrors:1,token:s}),signal:e}).then(({data:c,headers:h,request:d})=>{let p=bt(JSON.parse(c));if("error"in p&&!Dn(p))throw new R(p.error.content,void 0,d,p,h);return p}),{retryNetworkErrorMaxTimes:a,retryThrottledRequestMaxTimes:o})}l(Fn,"fromUrlStatus");function Vn(s,{publicKey:i,baseURL:t=A.baseURL,jsonpCallback:e,secureSignature:r,secureExpire:n,signal:o,source:a,integration:c,userAgent:h,retryThrottledRequestMaxTimes:d=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:p=A.retryNetworkErrorMaxTimes}){return Tt(()=>wt({method:"POST",headers:{"X-UC-User-Agent":Rt({publicKey:i,integration:c,userAgent:h})},url:_t(t,"/group/",{jsonerrors:1,pub_key:i,files:s,callback:e,signature:r,expire:n,source:a}),signal:o}).then(({data:f,headers:g,request:m})=>{let b=bt(JSON.parse(f));if("error"in b)throw new R(b.error.content,b.error.errorCode,m,b,g);return b}),{retryNetworkErrorMaxTimes:p,retryThrottledRequestMaxTimes:d})}l(Vn,"group");function Es(s,{publicKey:i,baseURL:t=A.baseURL,signal:e,source:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:a=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:c=A.retryNetworkErrorMaxTimes}){return Tt(()=>wt({method:"GET",headers:{"X-UC-User-Agent":Rt({publicKey:i,integration:n,userAgent:o})},url:_t(t,"/info/",{jsonerrors:1,pub_key:i,file_id:s,source:r}),signal:e}).then(({data:h,headers:d,request:p})=>{let f=bt(JSON.parse(h));if("error"in f)throw new R(f.error.content,f.error.errorCode,p,f,d);return f}),{retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:c})}l(Es,"info");function Bn(s,{publicKey:i,contentType:t,fileName:e,multipartChunkSize:r=A.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:a,store:c,signal:h,source:d="local",integration:p,userAgent:f,retryThrottledRequestMaxTimes:g=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:m=A.retryNetworkErrorMaxTimes,metadata:b}){return Tt(()=>wt({method:"POST",url:_t(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Rt({publicKey:i,integration:p,userAgent:f})},data:Vi({filename:e||vs,size:s,content_type:t||mi,part_size:r,UPLOADCARE_STORE:Bi(c),UPLOADCARE_PUB_KEY:i,signature:o,expire:a,source:d,metadata:b}),signal:h}).then(({data:$,headers:x,request:E})=>{let T=bt(JSON.parse($));if("error"in T)throw new R(T.error.content,T.error.errorCode,E,T,x);return T.parts=Object.keys(T.parts).map(z=>T.parts[z]),T}),{retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m})}l(Bn,"multipartStart");function zn(s,i,{contentType:t,signal:e,onProgress:r,retryThrottledRequestMaxTimes:n=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=A.retryNetworkErrorMaxTimes}){return Tt(()=>wt({method:"PUT",url:i,data:s,onProgress:r,signal:e,headers:{"Content-Type":t||mi}}).then(a=>(r&&r({isComputable:!0,value:1}),a)).then(({status:a})=>({code:a})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}l(zn,"multipartUpload");function jn(s,{publicKey:i,baseURL:t=A.baseURL,source:e="local",signal:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:a=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:c=A.retryNetworkErrorMaxTimes}){return Tt(()=>wt({method:"POST",url:_t(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Rt({publicKey:i,integration:n,userAgent:o})},data:Vi({uuid:s,UPLOADCARE_PUB_KEY:i,source:e}),signal:r}).then(({data:h,headers:d,request:p})=>{let f=bt(JSON.parse(h));if("error"in f)throw new R(f.error.content,f.error.errorCode,p,f,d);return f}),{retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:c})}l(jn,"multipartComplete");function zi(s,{publicKey:i,baseURL:t,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:a,signal:c,onProgress:h}){return ys({check:d=>Es(s,{publicKey:i,baseURL:t,signal:d,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:a}).then(p=>p.isReady?p:(h&&h({isComputable:!0,value:1}),!1)),signal:c})}l(zi,"isReadyPoll");function Hn(s){return"defaultEffects"in s}l(Hn,"isGroupFileInfo");var nt=class{constructor(i,{baseCDN:t=A.baseCDN,fileName:e}={}){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:n}=i,o=_t(t,`${r}/`),a=n?_t(`https://${n}.s3.amazonaws.com/`,`${r}/${i.filename}`):null;this.uuid=r,this.name=e||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=a,Hn(i)&&(this.defaultEffects=i.defaultEffects)}};l(nt,"UploadcareFile");var Wn=l((s,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,contentType:a,signal:c,onProgress:h,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,baseCDN:b,metadata:$})=>Mn(s,{publicKey:i,fileName:t,contentType:a,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:c,onProgress:h,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,metadata:$}).then(({file:x})=>zi(x,{publicKey:i,baseURL:e,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,onProgress:h,signal:c})).then(x=>new nt(x,{baseCDN:b})),"uploadDirect"),Xn=l((s,{publicKey:i,fileName:t,baseURL:e,signal:r,onProgress:n,source:o,integration:a,userAgent:c,retryThrottledRequestMaxTimes:h,retryNetworkErrorMaxTimes:d,baseCDN:p})=>Es(s,{publicKey:i,baseURL:e,signal:r,source:o,integration:a,userAgent:c,retryThrottledRequestMaxTimes:h,retryNetworkErrorMaxTimes:d}).then(f=>new nt(f,{baseCDN:p,fileName:t})).then(f=>(n&&n({isComputable:!0,value:1}),f)),"uploadFromUploaded"),qn=l((s,{signal:i}={})=>{let t=null,e=null,r=s.map(()=>new AbortController),n=l(o=>()=>{e=o,r.forEach((a,c)=>c!==o&&a.abort())},"createStopRaceCallback");return fi(i,()=>{r.forEach(o=>o.abort())}),Promise.all(s.map((o,a)=>{let c=n(a);return Promise.resolve().then(()=>o({stopRace:c,signal:r[a].signal})).then(h=>(c(),h)).catch(h=>(t=h,null))})).then(o=>{if(e===null)throw t;return o[e]})},"race"),Gn=window.WebSocket,ui=class{constructor(){u(this,"events",Object.create({}))}emit(i,t){var e;(e=this.events[i])==null||e.forEach(r=>r(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(e=>e!==t):this.events[i]=[]}};l(ui,"Events");var Kn=l((s,i)=>s==="success"?{status:H.Success,...i}:s==="progress"?{status:H.Progress,...i}:{status:H.Error,...i},"response"),di=class{constructor(i,t=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 ui);u(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Gn(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let e=JSON.parse(t.data.toString());switch(e.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(e.channel,Kn(e.event,JSON.parse(e.data)))}})}}disconnect(){let i=l(()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1},"actualDisconect");this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var r;let e=JSON.stringify({event:i,data:t});(r=this.ws)==null||r.send(e)}subscribe(i,t){this.subscribers+=1,this.connect();let e=`task-status-${i}`,r={event:"pusher:subscribe",data:{channel:e}};this.emmitter.on(e,t),this.isConnected?this.send(r.event,r.data):this.queue.push(r)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,e={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(e.event,e.data):this.queue=this.queue.filter(r=>r.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}};l(di,"Pusher");var Mi=null,ji=l(s=>{if(!Mi){let i=typeof window=="undefined"?0:3e4;Mi=new di(s,i)}return Mi},"getPusher"),Yn=l(s=>{ji(s).connect()},"preconnect");function Zn({token:s,publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:a,signal:c}){return ys({check:h=>Fn(s,{publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:h}).then(d=>{switch(d.status){case H.Error:return new R(d.error,d.errorCode);case H.Waiting:return!1;case H.Unknown:return new R(`Token "${s}" was not found.`);case H.Progress:return a&&(d.total==="unknown"?a({isComputable:!1}):a({isComputable:!0,value:d.done/d.total})),!1;case H.Success:return a&&a({isComputable:!0,value:d.done/d.total}),d;default:throw new Error("Unknown status")}}),signal:c})}l(Zn,"pollStrategy");var Jn=l(({token:s,pusherKey:i,signal:t,onProgress:e})=>new Promise((r,n)=>{let o=ji(i),a=o.onError(n),c=l(()=>{a(),o.unsubscribe(s)},"destroy");fi(t,()=>{c(),n(new gt("pusher cancelled"))}),o.subscribe(s,h=>{switch(h.status){case H.Progress:{e&&(h.total==="unknown"?e({isComputable:!1}):e({isComputable:!0,value:h.done/h.total}));break}case H.Success:{c(),e&&e({isComputable:!0,value:h.done/h.total}),r(h);break}case H.Error:c(),n(new R(h.msg,h.error_code))}})}),"pushStrategy"),Qn=l((s,{publicKey:i,fileName:t,baseURL:e,baseCDN:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:a,secureExpire:c,store:h,signal:d,onProgress:p,source:f,integration:g,userAgent:m,retryThrottledRequestMaxTimes:b,pusherKey:$=A.pusherKey,metadata:x})=>Promise.resolve(Yn($)).then(()=>Nn(s,{publicKey:i,fileName:t,baseURL:e,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:a,secureExpire:c,store:h,signal:d,source:f,integration:g,userAgent:m,retryThrottledRequestMaxTimes:b,metadata:x})).catch(E=>{let T=ji($);return T==null||T.disconnect(),Promise.reject(E)}).then(E=>E.type===Di.FileInfo?E:qn([({signal:T})=>Zn({token:E.token,publicKey:i,baseURL:e,integration:g,userAgent:m,retryThrottledRequestMaxTimes:b,onProgress:p,signal:T}),({signal:T})=>Jn({token:E.token,pusherKey:$,signal:T,onProgress:p})],{signal:d})).then(E=>{if(E instanceof R)throw E;return E}).then(E=>zi(E.uuid,{publicKey:i,baseURL:e,integration:g,userAgent:m,retryThrottledRequestMaxTimes:b,onProgress:p,signal:d})).then(E=>new nt(E,{baseCDN:r})),"uploadFromUrl"),Ni=new WeakMap,to=l(async s=>{if(Ni.has(s))return Ni.get(s);let i=await fetch(s.uri).then(t=>t.blob());return Ni.set(s,i),i},"getBlobFromReactNativeAsset"),xs=l(async s=>{if(_i(s)||gi(s))return s.size;if(bi(s))return(await to(s)).size;throw new Error("Unknown file type. Cannot determine file size.")},"getFileSize"),eo=l((s,i=A.multipartMinFileSize)=>s>=i,"isMultipart"),As=l(s=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!Qt(s)&&t.test(s)},"isUuid"),Hi=l(s=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!Qt(s)&&t.test(s)},"isUrl"),io=l((s,i)=>new Promise((t,e)=>{let r=[],n=!1,o=i.length,a=[...i],c=l(()=>{let h=i.length-a.length,d=a.shift();d&&d().then(p=>{n||(r[h]=p,o-=1,o?c():t(r))}).catch(p=>{n=!0,e(p)})},"run");for(let h=0;h{let r=e*i,n=Math.min(r+e,t);return s.slice(r,n)},"sliceChunk"),ro=l(async(s,i,t)=>e=>so(s,e,i,t),"prepareChunks"),no=l((s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:c})=>zn(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:c}),"uploadPart"),oo=l(async(s,{publicKey:i,fileName:t,fileSize:e,baseURL:r,secureSignature:n,secureExpire:o,store:a,signal:c,onProgress:h,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,contentType:b,multipartChunkSize:$=A.multipartChunkSize,maxConcurrentRequests:x=A.maxConcurrentRequests,baseCDN:E,metadata:T})=>{let z=e!=null?e:await xs(s),pt,Ot=l((P,j)=>{if(!h)return;pt||(pt=Array(P).fill(0));let et=l(st=>st.reduce((ft,ki)=>ft+ki,0),"sum");return st=>{st.isComputable&&(pt[j]=st.value,h({isComputable:!0,value:et(pt)/P}))}},"createProgressHandler");return b||(b=ws(s)),Bn(z,{publicKey:i,contentType:b,fileName:t||Ts(s),baseURL:r,secureSignature:n,secureExpire:o,store:a,signal:c,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,metadata:T}).then(async({uuid:P,parts:j})=>{let et=await ro(s,z,$);return Promise.all([P,io(x,j.map((st,ft)=>()=>no(et(ft),st,{publicKey:i,contentType:b,onProgress:Ot(j.length,ft),signal:c,integration:p,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m})))])}).then(([P])=>jn(P,{publicKey:i,baseURL:r,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m})).then(P=>P.isReady?P:zi(P.uuid,{publicKey:i,baseURL:r,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,onProgress:h,signal:c})).then(P=>new nt(P,{baseCDN:E}))},"uploadMultipart");async function Wi(s,{publicKey:i,fileName:t,baseURL:e=A.baseURL,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,contentType:m,multipartMinFileSize:b,multipartChunkSize:$,maxConcurrentRequests:x,baseCDN:E=A.baseCDN,checkForUrlDuplicates:T,saveUrlForRecurrentUploads:z,pusherKey:pt,metadata:Ot}){if(Qt(s)){let P=await xs(s);return eo(P,b)?oo(s,{publicKey:i,contentType:m,multipartChunkSize:$,fileSize:P,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,maxConcurrentRequests:x,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,baseCDN:E,metadata:Ot}):Wn(s,{publicKey:i,fileName:t,contentType:m,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,baseCDN:E,metadata:Ot})}if(Hi(s))return Qn(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:E,checkForUrlDuplicates:T,saveUrlForRecurrentUploads:z,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,pusherKey:pt,metadata:Ot});if(As(s))return Xn(s,{publicKey:i,fileName:t,baseURL:e,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,baseCDN:E});throw new TypeError(`File uploading from "${s}" is not supported`)}l(Wi,"uploadFile");var pi=class{constructor(i,{baseCDN:t=A.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=i.id,this.filesCount=i.filesCount;let e=i.files.filter(Boolean);this.totalSize=Object.values(e).reduce((r,n)=>r+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(e).filter(r=>r.isImage).length,this.cdnUrl=i.cdnUrl,this.files=e.map(r=>new nt(r,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}};l(pi,"UploadcareGroup");var lo=l(s=>{for(let i of s)if(!Qt(i))return!1;return!0},"isFileDataArray"),ao=l(s=>{for(let i of s)if(!As(i))return!1;return!0},"isUuidArray"),co=l(s=>{for(let i of s)if(!Hi(i))return!1;return!0},"isUrlArray");function $s(s,{publicKey:i,fileName:t,baseURL:e=A.baseURL,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,contentType:m,multipartChunkSize:b=A.multipartChunkSize,baseCDN:$=A.baseCDN,checkForUrlDuplicates:x,saveUrlForRecurrentUploads:E,jsonpCallback:T}){if(!lo(s)&&!co(s)&&!ao(s))throw new TypeError(`Group uploading from "${s}" is not supported`);let z,pt=!0,Ot=s.length,P=l((j,et)=>{if(!c)return;z||(z=Array(j).fill(0));let st=l(ft=>ft.reduce((ki,Rr)=>ki+Rr)/j,"normalize");return ft=>{if(!ft.isComputable||!pt){pt=!1,c({isComputable:!1});return}z[et]=ft.value,c({isComputable:!0,value:st(z)})}},"createProgressHandler");return Promise.all(s.map((j,et)=>Qt(j)||Hi(j)?Wi(j,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:P(Ot,et),source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,contentType:m,multipartChunkSize:b,baseCDN:$,checkForUrlDuplicates:x,saveUrlForRecurrentUploads:E}).then(st=>st.uuid):j)).then(j=>Vn(j,{publicKey:i,baseURL:e,jsonpCallback:T,secureSignature:r,secureExpire:n,signal:a,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g}).then(et=>new pi(et,{baseCDN:$})).then(et=>(c&&c({isComputable:!0,value:1}),et)))}l($s,"uploadFileGroup");var Ne=class{constructor(i){u(this,"_concurrency",1);u(this,"_pending",[]);u(this,"_running",0);u(this,"_resolvers",new Map);u(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(e),this._rejectors.delete(e),this._running-=1,this._run()}).then(o=>r(o)).catch(o=>n(o))}}add(i){return new Promise((t,e)=>{this._resolvers.set(i,t),this._rejectors.set(i,e),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};l(Ne,"Queue");var Xi=l(()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),"blockCtx"),qi=l(s=>({...Xi(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{s.set$({"*modalActive":!1,"*currentActivity":""})}}),"activityBlockCtx"),yi=l(s=>({...qi(s),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new Ne(1)}),"uploaderBlockCtx");function Ss(s,i){[...s.querySelectorAll("[l10n]")].forEach(t=>{let e=t.getAttribute("l10n"),r="textContent";if(e.includes(":")){let o=e.split(":");r=o[0],e=o[1]}let n="l10n:"+e;i.__l10nKeys.push(n),i.add(n,e),i.sub(n,o=>{t[r]=i.l10n(o)}),t.removeAttribute("l10n")})}l(Ss,"l10nProcessor");var W=l(s=>`*cfg/${s}`,"sharedConfigKey");var Gi="lr-",y=class extends Lt{constructor(){super();u(this,"requireCtxName",!1);u(this,"allowCustomTemplate",!0);u(this,"init$",Xi());u(this,"updateCtxCssData",l(()=>{Me("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let e of t)e.isConnected&&e.updateCssData()},"updateCtxCssData"));this.activityType=null,this.addTemplateProcessor(Ss),this.__l10nKeys=[]}l10n(t,e={}){if(!t)return"";let r=this.getCssData("--l10n-"+t,!0)||t,n=fs(r);for(let a of n)e[a.variable]=this.pluralize(a.pluralKey,Number(e[a.countVariable]));return Pe(r,e)}pluralize(t,e){let r=this.l10n("locale-name")||"en-US",n=ci(r,e);return this.l10n(`${t}__${n}`)}emit(t,e,r){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,e,r)}applyL10nKey(t,e){let r="l10n:"+t;this.$[r]=e,this.__l10nKeys.push(t)}hasBlockInCtx(t){let e=this.$["*blocksRegistry"];for(let r of e)if(t(r))return!0;return!1}setOrAddState(t,e){this.add$({[t]:e},!0)}setActivity(t){if(this.hasBlockInCtx(e=>e.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Gi}${t}`,!0),Ri()||(this._destroyInnerHeightTracker=us()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?hi({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new Re(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,e=2){let r=["B","KB","MB","GB","TB"],n=l(h=>this.getCssData("--l10n-unit-"+h.toLowerCase(),!0)||h,"getUnit");if(t===0)return`0 ${n(r[0])}`;let o=1024,a=e<0?0:e,c=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**c).toFixed(a))+" "+n(r[c])}proxyUrl(t){let e=this.cfg.secureDeliveryProxy;return e?Pe(e,{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(e,r,n)=>{if(typeof r!="string")return!1;let o=W(r);return this.$[o]=n,!0},get:(e,r)=>{let n=W(r),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(Me("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${rt(r)}`))}})}return this.__cfgProxy}subConfigValue(t,e){let r=this.parseCfgProp(W(t));r.ctx.has(r.name)?this.sub(W(t),e):(this.bindCssData(`--cfg-${rt(t)}`),this.sub(`--cfg-${rt(t)}`,e))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Gi)?t:Gi+t)}};l(y,"Block"),u(y,"StateConsumerScope",null),u(y,"className","");var Is="active",De="___ACTIVITY_IS_ACTIVE___",ot=class extends y{constructor(){super(...arguments);u(this,"historyTracked",!1);u(this,"init$",qi(this));u(this,"_debouncedHistoryFlush",k(this._historyFlush.bind(this),10))}_deactivate(){var e;let t=ot._activityRegistry[this.activityKey];this[De]=!1,this.removeAttribute(Is),(e=t==null?void 0:t.deactivateCallback)==null||e.call(t)}_activate(){var e;let t=ot._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[De]=!0,this.setAttribute(Is,""),(e=t==null?void 0:t.activateCallback)==null||e.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[De]?this._deactivate():this.activityType===t&&!this[De]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!ot._activityRegistry[this.activityKey]}get isActivityActive(){return this[De]}registerActivity(t,e={}){let{onActivate:r,onDeactivate:n}=e;ot._activityRegistry||(ot._activityRegistry=Object.create(null)),ot._activityRegistry[this.activityKey]={activateCallback:r,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),ot._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(ot._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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(){let t=this.$["*history"];if(t){let e=t.pop();for(;e===this.activityType;)e=t.pop();this.$["*currentActivity"]=e,this.$["*history"]=t,e||this.setOrAddState("*modalActive",!1)}}},_=ot;l(_,"ActivityBlock"),u(_,"_activityRegistry",Object.create(null));_.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var Fe=33.333333333333336,C=1,Ki=24,ks=6;function Pt(s,i){for(let t in i)s.setAttributeNS(null,t,i[t].toString())}l(Pt,"setSvgNodeAttrs");function J(s,i={}){let t=document.createElementNS("http://www.w3.org/2000/svg",s);return Pt(t,i),t}l(J,"createSvgNode");function Os(s,i,t){let{x:e,y:r,width:n,height:o}=s,a=i.includes("w")?0:1,c=i.includes("n")?0:1,h=[-1,1][a],d=[-1,1][c],p=[e+a*n+1.5*h,r+c*o+1.5*d-24*t*d],f=[e+a*n+1.5*h,r+c*o+1.5*d],g=[e+a*n-24*t*h+1.5*h,r+c*o+1.5*d];return{d:`M ${p[0]} ${p[1]} L ${f[0]} ${f[1]} L ${g[0]} ${g[1]}`,center:f}}l(Os,"cornerPath");function Ls(s,i,t){let{x:e,y:r,width:n,height:o}=s,a=["n","s"].includes(i)?.5:{w:0,e:1}[i],c=["w","e"].includes(i)?.5:{n:0,s:1}[i],h=[-1,1][a],d=[-1,1][c],p,f;["n","s"].includes(i)?(p=[e+a*n-34*t/2,r+c*o+1.5*d],f=[e+a*n+34*t/2,r+c*o+1.5*d]):(p=[e+a*n+1.5*h,r+c*o-34*t/2],f=[e+a*n+1.5*h,r+c*o+34*t/2]);let g=`M ${p[0]} ${p[1]} L ${f[0]} ${f[1]}`,m=[f[0]-(f[0]-p[0])/2,f[1]-(f[1]-p[1])/2];return{d:g,center:m}}l(Ls,"sidePath");function Us(s){return s===""?"move":["e","w"].includes(s)?"ew-resize":["n","s"].includes(s)?"ns-resize":["nw","se"].includes(s)?"nwse-resize":"nesw-resize"}l(Us,"thumbCursor");function Rs({rect:s,delta:[i,t],imageBox:e}){return ee({...s,x:s.x+i,y:s.y+t},e)}l(Rs,"moveRect");function ee(s,i){let{x:t}=s,{y:e}=s;return s.xi.x+i.width&&(t=i.x+i.width-s.width),s.yi.y+i.height&&(e=i.y+i.height-s.height),{...s,x:t,y:e}}l(ee,"constraintRect");function ho({rect:s,delta:i,aspectRatio:t,imageBox:e}){let[,r]=i,{y:n,width:o,height:a}=s;n+=r,a-=r,t&&(o=a*t);let c=s.x+s.width/2-o/2;return n<=e.y&&(n=e.y,a=s.y+s.height-n,t&&(o=a*t,c=s.x+s.width/2-o/2)),c<=e.x&&(c=e.x,n=s.y+s.height-a),c+o>=e.x+e.width&&(c=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-c,t&&(a=o/t),n=s.y+s.height-a),a=e.y+e.height&&(c=Math.max(e.y,e.y+e.height-a),a=e.y+e.height-c,t&&(o=a*t),n=s.x+s.width-o),a=e.y+e.height&&(a=e.y+e.height-n,t&&(o=a*t),c=s.x+s.width/2-o/2),c<=e.x&&(c=e.x,n=s.y),c+o>=e.x+e.width&&(c=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-c,t&&(a=o/t),n=s.y),a=e.x+e.width&&(o=e.x+e.width-n,t&&(a=o/t),c=s.y+s.height/2-a/2),c<=e.y&&(c=e.y,n=s.x),c+a>=e.y+e.height&&(c=Math.max(e.y,e.y+e.height-a),a=e.y+e.height-c,t&&(o=a*t),n=s.x),at?(n=c/t-h,h+=n,a-=n,a<=e.y&&(h=h-(e.y-a),c=h*t,o=s.x+s.width-c,a=e.y)):t&&(r=h*t-c,c=c+r,o-=r,o<=e.x&&(c=c-(e.x-o),h=c/t,o=e.x,a=s.y+s.height-h)),he.x+e.width&&(r=e.x+e.width-o-c),a+nt?(n=c/t-h,h+=n,a-=n,a<=e.y&&(h=h-(e.y-a),c=h*t,o=s.x,a=e.y)):t&&(r=h*t-c,c+=r,o+c>=e.x+e.width&&(c=e.x+e.width-o,h=c/t,o=e.x+e.width-c,a=s.y+s.height-h)),he.y+e.height&&(n=e.y+e.height-a-h),o+=r,c-=r,h+=n,t&&Math.abs(c/h)>t?(n=c/t-h,h+=n,a+h>=e.y+e.height&&(h=e.y+e.height-a,c=h*t,o=s.x+s.width-c,a=e.y+e.height-h)):t&&(r=h*t-c,c+=r,o-=r,o<=e.x&&(c=c-(e.x-o),h=c/t,o=e.x,a=s.y)),he.x+e.width&&(r=e.x+e.width-o-c),a+h+n>e.y+e.height&&(n=e.y+e.height-a-h),c+=r,h+=n,t&&Math.abs(c/h)>t?(n=c/t-h,h+=n,a+h>=e.y+e.height&&(h=e.y+e.height-a,c=h*t,o=s.x,a=e.y+e.height-h)):t&&(r=h*t-c,c+=r,o+c>=e.x+e.width&&(c=e.x+e.width-o,h=c/t,o=e.x+e.width-c,a=s.y)),h=i.x&&s.y>=i.y&&s.x+s.width<=i.x+i.width&&s.y+s.height<=i.y+i.height}l(Ns,"isRectInsideRect");function Ds(s,i){return Math.abs(s.width/s.height-i)<.1}l(Ds,"isRectMatchesAspectRatio");function ie({width:s,height:i},t){let e=t/90%2!==0;return{width:e?i:s,height:e?s:i}}l(ie,"rotateSize");function Fs(s,i,t){let e=s/i,r,n;e>t?(r=Math.round(i*t),n=i):(r=s,n=Math.round(s/t));let o=Math.round((s-r)/2),a=Math.round((i-n)/2);return o+r>s&&(r=s-o),a+n>i&&(n=i-a),{x:o,y:a,width:r,height:n}}l(Fs,"calculateMaxCenteredCropFrame");function se(s){return{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}}l(se,"roundRect");function Et(s,i,t){return Math.min(Math.max(s,i),t)}l(Et,"clamp");var Ci=l(s=>{if(!s)return[];let[i,t]=s.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${s}`);return}return[{type:"aspect-ratio",width:i,height:t}]},"parseCropPreset");var Q=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var Vs=l(s=>s?s.split(",").map(i=>i.trim()):[],"deserealizeCsv"),Mt=l(s=>s?s.join(","):"","serializeCsv");var Yi="blocks",Zi="0.29.1";function Bs(s){return Fi({...s,libraryName:Yi,libraryVersion:Zi})}l(Bs,"customUserAgent");var zs=l(s=>{if(typeof s!="string"||!s)return"";let i=s.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},"normalizeCdnOperation"),wi=l((...s)=>s.filter(i=>typeof i=="string"&&i).map(i=>zs(i)).join("/-/"),"joinCdnOperations"),M=l((...s)=>{let i=wi(...s);return i?`-/${i}/`:""},"createCdnUrlModifiers");function js(s){let i=new URL(s),t=i.pathname+i.search+i.hash,e=t.lastIndexOf("http"),r=t.lastIndexOf("/"),n="";return e>=0?n=t.slice(e):r>=0&&(n=t.slice(r+1)),n}l(js,"extractFilename");function Hs(s){let i=new URL(s),{pathname:t}=i,e=t.indexOf("/"),r=t.indexOf("/",e+1);return t.substring(e+1,r)}l(Hs,"extractUuid");function Ws(s){let i=Xs(s),t=new URL(i),e=t.pathname.indexOf("/-/");return e===-1?[]:t.pathname.substring(e).split("/-/").filter(Boolean).map(n=>zs(n))}l(Ws,"extractOperations");function Xs(s){let i=new URL(s),t=js(s),e=qs(t)?Gs(t).pathname:t;return i.pathname=i.pathname.replace(e,""),i.search="",i.hash="",i.toString()}l(Xs,"trimFilename");function qs(s){return s.startsWith("http")}l(qs,"isFileUrl");function Gs(s){let i=new URL(s);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}l(Gs,"splitFileUrl");var L=l((s,i,t)=>{let e=new URL(Xs(s));if(t=t||js(s),e.pathname.startsWith("//")&&(e.pathname=e.pathname.replace("//","/")),qs(t)){let r=Gs(t);e.pathname=e.pathname+(i||"")+(r.pathname||""),e.search=r.search,e.hash=r.hash}else e.pathname=e.pathname+(i||"")+(t||"");return e.toString()},"createCdnUrl"),xt=l((s,i)=>{let t=new URL(s);return t.pathname=i+"/",t.toString()},"createOriginalUrl");var N=l((s,i=",")=>s.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0),"stringToArray");var Ve=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],Ji=l(s=>s?s.filter(i=>typeof i=="string").map(i=>N(i)).flat():[],"mergeFileTypes"),Qi=l((s,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),s.startsWith(t)):s===t),"matchMimeType"),Ks=l((s,i)=>i.some(t=>t.startsWith(".")?s.toLowerCase().endsWith(t.toLowerCase()):!1),"matchExtension"),Be=l(s=>{let i=s==null?void 0:s.type;return i?Qi(i,Ve):!1},"fileIsImage");var at=1e3,Nt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),ze=l(s=>Math.ceil(s*100)/100,"round"),Ys=l((s,i=Nt.AUTO)=>{let t=i===Nt.AUTO;if(i===Nt.BYTE||t&&s(e[r]=i[r].value,e),{}),this.__data=S.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Zs+i);return}let e=this.__typedSchema[i];if((t==null?void 0:t.constructor)===e.type||t instanceof e.type||e.nullable&&t===null){this.__data.pub(i,t);return}console.warn(yo+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Zs+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){S.deleteCtx(this.__ctxId)}};l(je,"TypedData");var He=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||Le.generate(),this.__data=S.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(e,r)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[e]||(t[e]=new Set),t[e].add(r),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let e of this.__collectionObservers)e==null||e([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new je(this.__typedSchema);for(let e in i)t.setValue(e,i[e]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(e=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(e,()=>{this.__notifyObservers(e,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,e){this.read(i).setValue(t,e)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(e=>{let r=this.read(e);i(r)&&t.push(e)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){S.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};l(He,"TypedCollection");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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:nt,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var v=class extends _{constructor(){super(...arguments);u(this,"couldBeUploadCollectionOwner",!1);u(this,"isUploadCollectionOwner",!1);u(this,"init$",yi(this));u(this,"__initialUploadMetadata",null);u(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);u(this,"_debouncedRunValidators",k(this._runValidators.bind(this),100));u(this,"_flushOutputItems",k(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(I.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));u(this,"_handleCollectonUpdate",l((t,e,r)=>{var n;this._runValidators();for(let o of r)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()},"_handleCollectonUpdate"));u(this,"_handleCollectionPropertiesUpdate",l(t=>{this._flushOutputItems();let e=this.uploadCollection,r=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>e.read(n)).filter(Boolean);for(let n of r)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=e.findItems(c=>!c.getValue("uploadError"));o.forEach(c=>{n+=e.readProp(c,"uploadProgress")});let a=Math.round(n/o.length);this.$["*commonProgress"]=a,this.emit(I.UPLOAD_PROGRESS,a,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=e.findItems(a=>!!a.getValue("fileInfo")),o=e.findItems(a=>!!a.getValue("uploadError")||!!a.getValue("validationErrorMsg"));if(e.size-o.length===n.length){let a=this.getOutputData(c=>!!c.getValue("fileInfo")&&!c.getValue("silentUpload"));a.length>0&&this.emit(I.UPLOAD_FINISH,a,{debounce:!0})}}t.uploadError&&e.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(I.UPLOAD_ERROR,e.readProp(o,"uploadError"))}),t.validationErrorMsg&&e.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(I.VALIDATION_ERROR,e.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&e.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(I.CLOUD_MODIFICATION,e.readProp(o,"cdnUrlModifiers"))})},"_handleCollectionPropertiesUpdate"))}setUploadMetadata(t){Me("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let e=new He({typedSchema:Js,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",e)}let t=l(()=>this.hasBlockInCtx(e=>e instanceof v?e.isUploadCollectionOwner&&e.isConnected&&e!==this:!1),"hasUploadCollectionOwner");this.couldBeUploadCollectionOwner&&!t()&&(this.isUploadCollectionOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators())),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata),this.subConfigValue("maxConcurrentRequests",e=>{this.$["*uploadQueue"].concurrency=Number(e)||1})}destroyCallback(){var t,e;super.destroyCallback(),this.isUploadCollectionOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(e=this._unobserveCollection)==null||e.call(this))}addFileFromUrl(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Q.API})}addFileFromUuid(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({uuid:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Q.API})}addFileFromObject(t,{silent:e,fileName:r,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:Be(t),mimeType:t.type,fileName:r!=null?r:t.name,fileSize:t.size,silentUpload:e!=null?e:!1,source:n!=null?n:Q.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(e=>{this.uploadCollection.add({file:e,isImage:Be(e),mimeType:e.type,fileName:e.name,fileSize:e.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var r;let e=Mt(Ji([(r=this.cfg.accept)!=null?r:"",...this.cfg.imgOnly?Ve:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=Mt(Ve)):this.fileInput.accept=e,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:Q.LOCAL})),this.$["*currentActivity"]=_.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=N(this.cfg.sourceList)),t}initFlow(t=!1){var e;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":_.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((e=this.sourceList)==null?void 0:e.length)===1){let r=this.sourceList[0];r==="local"?(this.$["*currentActivity"]=_.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(v.extSrcList).includes(r)?this.set$({"*currentActivityParams":{externalSourceType:r},"*currentActivity":_.activities.EXTERNAL}):this.$["*currentActivity"]=r,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":_.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(I.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(I.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let e=this.cfg.imgOnly,r=this.cfg.accept,n=Ji([...e?Ve:[],r]);if(!n.length)return;let o=t.getValue("mimeType"),a=t.getValue("fileName");if(!o||!a)return;let c=Qi(o,n),h=Ks(a,n);if(!c&&!h)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let e=this.cfg.maxLocalFileSizeBytes,r=t.getValue("fileSize");if(e&&r&&r>e)return this.l10n("files-max-size-limit-error",{maxFileSize:Ys(e)})}_validateMultipleLimit(t){let e=this.uploadCollection.items(),r=e.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&e.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let e=this.cfg.imgOnly,r=t.getValue("isImage");if(!(!e||r)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let e of this._validators){let r=e(t);if(r){t.setValue("validationErrorMsg",r);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let e=this.uploadCollection.read(t);e&&this._runValidatorsForEntry(e)})}setInitialCrop(){let t=Ci(this.cfg.cropPreset);if(t){let[e]=t,r=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of r){let o=n.getValue("fileInfo"),{width:a,height:c}=o.imageInfo,h=e.width/e.height,d=Fs(a,c,h),p=M(`crop/${d.width}x${d.height}/${d.x},${d.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:p,cdnUrl:L(n.getValue("cdnUrl"),p)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(f=>f.activityType===_.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=_.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var r;let e=(r=this.cfg.metadata)!=null?r:this.$["*uploadMetadata"];if(typeof e=="function"){let n=this.getOutputItem(t);return await e(n)}return e}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Bs,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,a;let e=S.getCtx(t).store,r=e.fileInfo||{name:e.fileName,originalFilename:e.fileName,size:e.fileSize,isImage:e.isImage,mimeType:e.mimeType};return{...r,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(a=(o=e.cdnUrl)!=null?o:r.cdnUrl)!=null?a:null,validationErrorMessage:e.validationErrorMsg,uploadError:e.uploadError,isUploaded:!!e.uuid&&!!e.fileInfo,isValid:!e.validationErrorMsg&&!e.uploadError,fullPath:e.fullPath,uploadProgress:e.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};l(v,"UploaderBlock");v.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});v.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...v.extSrcList});var K={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};function vo(s,i){if(typeof i=="number")return K[s]!==i?`${s}/${i}`:"";if(typeof i=="boolean")return i&&K[s]!==i?`${s}`:"";if(s==="filter"){if(!i||K[s]===i.amount)return"";let{name:t,amount:e}=i;return`${s}/${t}/${e}`}if(s==="crop"){if(!i)return"";let{dimensions:t,coords:e}=i;return`${s}/${t.join("x")}/${e.join(",")}`}return""}l(vo,"transformationToStr");var tr=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function At(s){return wi(...tr.filter(i=>typeof s[i]!="undefined"&&s[i]!==null).map(i=>{let t=s[i];return vo(i,t)}).filter(i=>!!i))}l(At,"transformationsToOperations");var Ti=wi("format/auto","progressive/yes"),yt=l(([s])=>typeof s!="undefined"?Number(s):void 0,"asNumber"),Qs=l(()=>!0,"asBoolean"),Co=l(([s,i])=>({name:s,amount:typeof i!="undefined"?Number(i):100}),"asFilter"),wo=l(([s,i])=>({dimensions:N(s,"x").map(Number),coords:N(i).map(Number)}),"asCrop"),To={enhance:yt,brightness:yt,exposure:yt,gamma:yt,contrast:yt,saturation:yt,vibrance:yt,warmth:yt,filter:Co,mirror:Qs,flip:Qs,rotate:yt,crop:wo};function er(s){let i={};for(let t of s){let[e,...r]=t.split("/");if(!tr.includes(e))continue;let n=To[e],o=n(r);i[e]=o}return i}l(er,"operationsToTransformations");var D=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),X=[D.CROP,D.TUNING,D.FILTERS],ir=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],sr=["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"],rr=["rotate","mirror","flip"],ct=Object.freeze({brightness:{zero:K.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:K.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:K.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:K.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:K.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:K.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:K.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:K.enhance,range:[0,100],keypointsNumber:1},filter:{zero:K.filter,range:[0,100],keypointsNumber:1}});var Eo="https://ucarecdn.com",xo="https://upload.uploadcare.com",Ao="https://social.uploadcare.com",$t={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:Mt(X),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:Eo,baseUrl:xo,socialBaseUrl:Ao,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var q=l(s=>String(s),"asString"),ht=l(s=>{let i=Number(s);if(Number.isNaN(i))throw new Error(`Invalid number: "${s}"`);return i},"asNumber"),O=l(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}"`)},"asBoolean"),$o=l(s=>s==="auto"?s:O(s),"asStore"),So={pubkey:q,multiple:O,multipleMin:ht,multipleMax:ht,confirmUpload:O,imgOnly:O,accept:q,externalSourcesPreferredTypes:q,store:$o,cameraMirror:O,sourceList:q,maxLocalFileSizeBytes:ht,thumbSize:ht,showEmptyList:O,useLocalImageEditor:O,useCloudImageEditor:O,cloudImageEditorTabs:q,removeCopyright:O,cropPreset:q,modalScrollLock:O,modalBackdropStrokes:O,sourceListWrap:O,remoteTabSessionKey:q,cdnCname:q,baseUrl:q,socialBaseUrl:q,secureSignature:q,secureExpire:q,secureDeliveryProxy:q,retryThrottledRequestMaxTimes:ht,multipartMinFileSize:ht,multipartChunkSize:ht,maxConcurrentRequests:ht,multipartMaxConcurrentRequests:ht,multipartMaxAttempts:ht,checkForUrlDuplicates:O,saveUrlForRecurrentUploads:O,groupOutput:O,userAgentIntegration:q},nr=l((s,i)=>{if(!(typeof i=="undefined"||i===null))try{return So[s](i)}catch(t){return console.error(`Invalid value for config key "${s}".`,t),$t[s]}},"normalizeConfigValue");var Ei=Object.keys($t),Io=["metadata"],ko=l(s=>Io.includes(s),"isComplexKey"),xi=Ei.filter(s=>!ko(s)),Oo={...Object.fromEntries(xi.map(s=>[rt(s),s])),...Object.fromEntries(xi.map(s=>[s.toLowerCase(),s]))},Lo={...Object.fromEntries(Ei.map(s=>[rt(s),W(s)])),...Object.fromEntries(Ei.map(s=>[s.toLowerCase(),W(s)]))},We=class extends y{constructor(){super();u(this,"ctxOwner",!0);u(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries($t).map(([t,e])=>[W(t),e]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let e of xi)this.sub(W(e),r=>{r!==$t[e]&&(t[e]=r)},!1);for(let e of Ei){let r="__"+e;t[r]=t[e],Object.defineProperty(this,e,{set:n=>{if(t[r]=n,xi.includes(e)){let o=[...new Set([rt(e),e.toLowerCase()])];for(let a of o)typeof n=="undefined"||n===null?this.removeAttribute(a):this.setAttribute(a,n.toString())}this.$[W(e)]!==n&&(typeof n=="undefined"||n===null?this.$[W(e)]=$t[e]:this.$[W(e)]=n)},get:()=>this.$[W(e)]}),typeof t[e]!="undefined"&&t[e]!==null&&(t[e]=t[r])}}attributeChangedCallback(t,e,r){if(e===r)return;let n=Oo[t],o=nr(n,r),a=o!=null?o:$t[n],c=this;c[n]=a}};l(We,"ConfigClass");We.bindAttributes(Lo);var or=We;var Dt=class extends y{constructor(){super(...arguments);u(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=this.getCssData(`--icon-${t}`);e&&(this.$.path=e)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};l(Dt,"Icon");Dt.template=``;Dt.bindAttributes({name:"name",size:"size"});var Uo="https://ucarecdn.com",Ft=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:Uo},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{default:"auto"},"cdn-operations":{},progressive:{},quality:{default:"smart"},"is-background-for":{}});var lr=l(s=>[...new Set(s)],"uniqueArray");var Xe="--lr-img-",ar="unresolved",re=2,ne=3,cr=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),ur=Object.create(null),hr;for(let s in Ft)ur[Xe+s]=((hr=Ft[s])==null?void 0:hr.default)||"";var qe=class extends Lt{constructor(){super(...arguments);u(this,"cssInit$",ur)}$$(t){return this.$[Xe+t]}set$$(t){for(let e in t)this.$[Xe+e]=t[e]}sub$$(t,e){this.sub(Xe+t,r=>{r===null||r===""||e(r)})}_fmtAbs(t){return!t.includes("//")&&!cr&&(t=new URL(t,document.baseURI).href),t}_getCdnModifiers(t=""){return M(t&&`resize/${t}`,this.$$("cdn-operations")||"",`format/${this.$$("format")||Ft.format.default}`,`quality/${this.$$("quality")||Ft.quality.default}`)}_getUrlBase(t=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(cr&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let e=this._getCdnModifiers(t);if(this.$$("src").startsWith(this.$$("cdn-cname")))return L(this.$$("src"),e);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(L(xt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("uuid"))return this._proxyUrl(L(xt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("proxy-cname"))return this._proxyUrl(L(this.$$("proxy-cname"),e,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(L(`https://${this.$$("pubkey")}.ucr.io/`,e,this._fmtAbs(this.$$("src"))))}_proxyUrl(t){return this.$$("secure-delivery-proxy")?Pe(this.$$("secure-delivery-proxy"),{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}_getElSize(t,e=1,r=!0){let n=t.getBoundingClientRect(),o=e*Math.round(n.width),a=r?"":e*Math.round(n.height);return o||a?`${o||""}x${a||""}`:null}_setupEventProxy(t){let e=l(n=>{n.stopPropagation();let o=new Event(n.type,n);this.dispatchEvent(o)},"proxifyEvent"),r=["load","error"];for(let n of r)t.addEventListener(n,e)}get img(){return this._img||(this._img=new Image,this._setupEventProxy(this.img),this._img.setAttribute(ar,""),this.img.onload=()=>{this.img.removeAttribute(ar)},this.initAttributes(),this.appendChild(this._img)),this._img}get bgSelector(){return this.$$("is-background-for")}initAttributes(){[...this.attributes].forEach(t=>{Ft[t.name]||this.img.setAttribute(t.name,t.value)})}get breakpoints(){return this.$$("breakpoints")?lr(N(this.$$("breakpoints")).map(t=>Number(t))):null}renderBg(t){let e=new Set;this.breakpoints?this.breakpoints.forEach(n=>{e.add(`url("${this._getUrlBase(n+"x")}") ${n}w`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(n*re+"x")}") ${n*re}w`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(n*ne+"x")}") ${n*ne}w`)}):(e.add(`url("${this._getUrlBase(this._getElSize(t))}") 1x`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,re))}") ${re}x`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,ne))}") ${ne}x`));let r=`image-set(${[...e].join(", ")})`;t.style.setProperty("background-image",r),t.style.setProperty("background-image","-webkit-"+r)}getSrcset(){let t=new Set;return this.breakpoints?this.breakpoints.forEach(e=>{t.add(this._getUrlBase(e+"x")+` ${e}w`),this.$$("hi-res-support")&&t.add(this._getUrlBase(e*re+"x")+` ${e*re}w`),this.$$("ultra-res-support")&&t.add(this._getUrlBase(e*ne+"x")+` ${e*ne}w`)}):(t.add(this._getUrlBase(this._getElSize(this.img))+" 1x"),this.$$("hi-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,2))+" 2x"),this.$$("ultra-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,3))+" 3x")),[...t].join()}getSrc(){return this._getUrlBase()}init(){this.bgSelector?[...document.querySelectorAll(this.bgSelector)].forEach(t=>{this.$$("intersection")?this.initIntersection(t,()=>{this.renderBg(t)}):this.renderBg(t)}):this.$$("intersection")?this.initIntersection(this.img,()=>{this.img.srcset=this.getSrcset(),this.img.src=this.getSrc()}):(this.img.srcset=this.getSrcset(),this.img.src=this.getSrc())}initIntersection(t,e){let r={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(n=>{n.forEach(o=>{o.isIntersecting&&(e(),this._isnObserver.unobserve(t))})},r),this._isnObserver.observe(t),this._observed||(this._observed=new Set),this._observed.add(t)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(t=>{this._isnObserver.unobserve(t)}),this._isnObserver=null)}static get observedAttributes(){return Object.keys(Ft)}attributeChangedCallback(t,e,r){window.setTimeout(()=>{this.$[Xe+t]=r})}};l(qe,"ImgBase");var Ge=class extends qe{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",i=>{this.$$("is-background-for")||(this.img.loading=i?"lazy":"eager")})}};l(Ge,"Img");var Vt=class extends v{constructor(){super(),this.init$={...this.init$,"*simpleButtonText":"",withDropZone:!0,onClick:()=>{this.initFlow()}}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",i=>{typeof i!="undefined"&&(this.$.withDropZone=O(i))}),this.subConfigValue("multiple",i=>{this.$["*simpleButtonText"]=i?this.l10n("upload-files"):this.l10n("upload-file")})}};l(Vt,"SimpleBtn");Vt.template=``;Vt.bindAttributes({dropzone:null});var oe=class extends _{constructor(){super(...arguments);u(this,"historyTracked",!0);u(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};l(oe,"StartFrom");oe.template='
';function Ro(s){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let e=l(r=>{r.type!=="loadend"&&t.abort(),i(!1)},"onLoad");t.onloadend=e,t.onprogress=e,t.readAsDataURL(s)}catch{i(!1)}})}l(Ro,"checkIsDirectory");function Po(s,i){return new Promise(t=>{let e=0,r=[],n=l(a=>{a||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),a.isFile?(e++,a.file(c=>{e--;let h=new File([c],c.name,{type:c.type||i});r.push({type:"file",file:h,fullPath:a.fullPath}),e===0&&t(r)})):a.isDirectory&&o(a.createReader())},"readEntry"),o=l(a=>{e++,a.readEntries(c=>{e--;for(let h of c)n(h);e===0&&t(r)})},"readReaderContent");n(s)})}l(Po,"readEntryContentAsync");function dr(s){let i=[],t=[];for(let e=0;e{c&&i.push(...c)}));continue}let o=r.getAsFile();o&&t.push(Ro(o).then(a=>{a||i.push({type:"file",file:o})}))}else r.kind==="string"&&r.type.match("^text/uri-list")&&t.push(new Promise(n=>{r.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}l(dr,"getDropItems");var V={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},pr=["focus"],Mo=100,ts=new Map;function No(s,i){let t=Math.max(Math.min(s[0],i.x+i.width),i.x),e=Math.max(Math.min(s[1],i.y+i.height),i.y);return Math.sqrt((s[0]-t)*(s[0]-t)+(s[1]-e)*(s[1]-e))}l(No,"distance");function es(s){let i=0,t=document.body,e=new Set,r=l(m=>e.add(m),"handleSwitch"),n=V.INACTIVE,o=l(m=>{s.shouldIgnore()&&m!==V.INACTIVE||(n!==m&&e.forEach(b=>b(m)),n=m)},"setState"),a=l(()=>i>0,"isDragging");r(m=>s.onChange(m));let c=l(()=>{i=0,o(V.INACTIVE)},"onResetEvent"),h=l(()=>{i+=1,n===V.INACTIVE&&o(V.ACTIVE)},"onDragEnter"),d=l(()=>{i-=1,a()||o(V.INACTIVE)},"onDragLeave"),p=l(m=>{m.preventDefault(),i=0,o(V.INACTIVE)},"onDrop"),f=l(m=>{if(s.shouldIgnore())return;a()||(i+=1);let b=[m.x,m.y],$=s.element.getBoundingClientRect(),x=Math.floor(No(b,$)),E=x{if(s.shouldIgnore())return;m.preventDefault();let b=await dr(m.dataTransfer);s.onItems(b),o(V.INACTIVE)},"onElementDrop");return t.addEventListener("drop",p),t.addEventListener("dragleave",d),t.addEventListener("dragenter",h),t.addEventListener("dragover",f),s.element.addEventListener("drop",g),pr.forEach(m=>{window.addEventListener(m,c)}),()=>{ts.delete(s.element),t.removeEventListener("drop",p),t.removeEventListener("dragleave",d),t.removeEventListener("dragenter",h),t.removeEventListener("dragover",f),s.element.removeEventListener("drop",g),pr.forEach(m=>{window.removeEventListener(m,c)})}}l(es,"addDropzone");var Bt=class extends v{constructor(){super(),this.init$={...this.init$,state:V.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,e=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),r=window.getComputedStyle(this),n=r.visibility!=="hidden"&&r.display!=="none";return t&&n&&e}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!O(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:O(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:O(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:O(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=es({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(e=>{e.type==="url"?this.addFileFromUrl(e.url,{source:Q.DROP_AREA}):e.type==="file"&&this.addFileFromObject(e.file,{source:Q.DROP_AREA,fullPath:e.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":_.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=es({element:i,onChange:t=>{var r;let e=(r=Object.entries(V).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&i.setAttribute("drag-state",e)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var r;let e=(r=Object.entries(V).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&this.setAttribute("drag-state",e)}),this.subConfigValue("sourceList",t=>{let e=N(t);this.$.isEnabled=e.includes(v.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(e=>e!==this).filter(e=>e.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,e=this.uploadCollection.size;return!(i&&t&&e>=t||!i&&e>0)}destroyCallback(){var i,t,e,r;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(e=this._destroyDropzone)==null||e.call(this),(r=this._destroyContentWrapperDropzone)==null||r.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};l(Bt,"DropArea");Bt.template=`
{{text}}
`;Bt.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Do="src-type-",zt=class extends v{constructor(){super(...arguments);u(this,"_registeredTypes",{});u(this,"init$",{...this.init$,iconName:"default"})}initTypes(){this.registerType({type:v.sourceTypes.LOCAL,onClick:()=>{this.openSystemDialog()}}),this.registerType({type:v.sourceTypes.URL,activity:_.activities.URL,textKey:"from-url"}),this.registerType({type:v.sourceTypes.CAMERA,activity:_.activities.CAMERA,onClick:()=>{var e=document.createElement("input").capture!==void 0;return e&&this.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:_.activities.DRAW,icon:"edit-draw"});for(let t of Object.values(v.extSrcList))this.registerType({type:t,activity:_.activities.EXTERNAL,activityParams:{externalSourceType:t}})}initCallback(){super.initCallback(),this.initTypes(),this.setAttribute("role","button"),this.defineAccessor("type",t=>{t&&this.applyType(t)})}registerType(t){this._registeredTypes[t.type]=t}getType(t){return this._registeredTypes[t]}applyType(t){let e=this._registeredTypes[t];if(!e){console.warn("Unsupported source type: "+t);return}let{textKey:r=t,icon:n=t,activity:o,onClick:a,activityParams:c={}}=e;this.applyL10nKey("src-type",`${Do}${r}`),this.$.iconName=n,this.onclick=h=>{(a?a(h):!!o)&&this.set$({"*currentActivityParams":c,"*currentActivity":o})}}};l(zt,"SourceBtn");zt.template=`
`;zt.bindAttributes({type:null});var Ke=class extends y{initCallback(){super.initCallback(),this.subConfigValue("sourceList",i=>{let t=N(i),e="";t.forEach(r=>{e+=``}),this.cfg.sourceListWrap?this.innerHTML=e:this.outerHTML=e})}};l(Ke,"SourceList");function fr(s){let i=new Blob([s],{type:"image/svg+xml"});return URL.createObjectURL(i)}l(fr,"createSvgBlobUrl");function mr(s="#fff",i="rgba(0, 0, 0, .1)"){return fr(``)}l(mr,"checkerboardCssBg");function Ye(s="hsl(209, 21%, 65%)",i=32,t=32){return fr(``)}l(Ye,"fileCssBg");function gr(s,i=40){if(s.type==="image/svg+xml")return URL.createObjectURL(s);let t=document.createElement("canvas"),e=t.getContext("2d"),r=new Image,n=new Promise((o,a)=>{r.onload=()=>{let c=r.height/r.width;c>1?(t.width=i,t.height=i*c):(t.height=i,t.width=i/c),e.fillStyle="rgb(240, 240, 240)",e.fillRect(0,0,t.width,t.height),e.drawImage(r,0,0,t.width,t.height),t.toBlob(h=>{if(!h){a();return}let d=URL.createObjectURL(h);o(d)})},r.onerror=c=>{a(c)}});return r.src=URL.createObjectURL(s),n}l(gr,"generateThumb");var B=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),it=class extends v{constructor(){super();u(this,"pauseRender",!0);u(this,"_entrySubs",new Set);u(this,"_entry",null);u(this,"_isIntersecting",!1);u(this,"_debouncedGenerateThumb",k(this._generateThumbnail.bind(this),100));u(this,"_debouncedCalculateState",k(this._calculateState.bind(this),100));u(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:B.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===_.activities.DETAILS)?this.$["*currentActivity"]=_.activities.DETAILS:this.$["*currentActivity"]=_.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let e=this.getOutputData(r=>r.getValue("uuid")===t);this.emit(I.REMOVE,e,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[e]=t;this._isIntersecting=e.isIntersecting,e.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),e.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,e=B.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?e=B.FAILED:t.getValue("validationMultipleLimitMsg")?e=B.LIMIT_OVERFLOW:t.getValue("isUploading")?e=B.UPLOADING:t.getValue("fileInfo")&&(e=B.FINISHED),this.$.state=e}async _generateThumbnail(){var e;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let r=this.cfg.thumbSize,n=this.proxyUrl(L(xt(this.cfg.cdnCname,this._entry.getValue("uuid")),M(t.getValue("cdnUrlModifiers"),`scale_crop/${r}x${r}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((e=t.getValue("file"))!=null&&e.type.includes("image"))try{let r=await gr(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",r)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",Ye(n))}else{let r=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",Ye(r))}}_subEntry(t,e){let r=this._entry.subscribe(t,n=>{this.isConnected&&e(n)});this._entrySubs.add(r)}_handleEntryId(t){var r;this._reset();let e=(r=this.uploadCollection)==null?void 0:r.read(t);this._entry=e,e&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||e.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=e.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{it.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),it.activeInstances.add(this)}_handleState(t){var e,r,n;this.set$({isFailed:t===B.FAILED,isLimitOverflow:t===B.LIMIT_OVERFLOW,isUploading:t===B.UPLOADING,isFinished:t===B.FINISHED,progressVisible:t===B.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((e=this._entry)==null?void 0:e.getValue("isImage"))&&((r=this._entry)==null?void 0:r.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===B.FAILED||t===B.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===B.FINISHED&&(this.$.badgeIcon="badge-success"),t===B.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),it.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,a;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let e=this.cfg.multiple?this.cfg.multipleMax:1;if(e&&this.uploadCollection.size>e)return;let r=this.getOutputData(c=>!c.getValue("fileInfo"));this.emit(I.UPLOAD_START,r,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let c=new AbortController;t.setValue("abortController",c);let h=l(async()=>{let p=this.getUploadClientOptions();return Wi(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...p,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:f=>{if(f.isComputable){let g=f.value*100;t.setValue("uploadProgress",g)}this.$.progressUnknown=!f.isComputable},signal:c.signal,metadata:await this.getMetadataFor(t.uid)})},"uploadTask"),d=await this.$["*uploadQueue"].add(h);t.setMultipleValues({fileInfo:d,isUploading:!1,fileName:d.originalFilename,fileSize:d.size,isImage:d.isImage,mimeType:(a=(o=(n=d.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?a:d.mimeType,uuid:d.uuid,cdnUrl:d.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(c){console.warn("Upload error",c),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),c instanceof R?c.isCancel||t.setValue("uploadError",c):t.setValue("uploadError",new Error("Unexpected error"))}}};l(it,"FileItem");it.template=`
{{itemName}}{{errorText}}
`;it.activeInstances=new Set;var jt=class extends y{constructor(){super();u(this,"_handleBackdropClick",l(()=>{this._closeDialog()},"_handleBackdropClick"));u(this,"_closeDialog",l(()=>{this.setOrAddState("*modalActive",!1)},"_closeDialog"));u(this,"_handleDialogClose",l(()=>{this._closeDialog()},"_handleDialogClose"));u(this,"_handleDialogMouseDown",l(t=>{this._mouseDownTarget=t.target},"_handleDialogMouseDown"));u(this,"_handleDialogMouseUp",l(t=>{t.target===this.ref.dialog&&t.target===this._mouseDownTarget&&this._closeDialog()},"_handleDialogMouseUp"));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(){if(super.initCallback(),typeof HTMLDialogElement=="function")this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp);else{this.setAttribute("dialog-fallback","");let t=document.createElement("div");t.className="backdrop",this.appendChild(t),t.addEventListener("click",this._handleBackdropClick)}this.sub("*modalActive",t=>{this.$.isOpen!==t&&(this.$.isOpen=t),t&&this.cfg.modalScrollLock?document.body.style.overflow="hidden":document.body.style.overflow=""}),this.subConfigValue("modalBackdropStrokes",t=>{t?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.sub("isOpen",t=>{t?this.show():this.hide()})}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)}};l(jt,"Modal"),u(jt,"StateConsumerScope","modal");jt.template=``;var Ze=class{constructor(){u(this,"caption","");u(this,"text","");u(this,"iconName","");u(this,"isError",!1)}};l(Ze,"UiMessage");var le=class extends y{constructor(){super(...arguments);u(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};l(le,"MessageBox");le.template=`
{{captionTxt}}
{{msgTxt}}
`;var ae=class extends v{constructor(){super();u(this,"couldBeUploadCollectionOwner",!0);u(this,"historyTracked",!0);u(this,"activityType",_.activities.UPLOAD_LIST);u(this,"_debouncedHandleCollectionUpdate",k(()=>{var t;this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),((t=this.$["*uploadList"])==null?void 0:t.length)===0&&!this.cfg.showEmptyList&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(e=>!!e.getValue("fileInfo"));this.emit(I.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var d,p;let t=!!this.cfg.multiple,e=t?(d=this.cfg.multipleMin)!=null?d:0:1,r=t?(p=this.cfg.multipleMax)!=null?p:0:1,n=this.uploadCollection.size,o=e?nr:!1;return{passed:!o&&!a,tooFew:o,tooMany:a,min:e,max:r,exact:r===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,e=this._validateFilesCount();if(t&&!e.passed){let r=new Ze,n=e.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";r.caption=this.l10n("files-count-limit-error-title"),r.text=this.l10n(n,{min:e.min,max:e.max,total:t}),r.isError=!0,this.set$({"*message":r})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),r={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let g of t){let m=this.uploadCollection.read(g);m.getValue("fileInfo")&&!m.getValue("validationErrorMsg")&&(r.succeed+=1),m.getValue("isUploading")&&(r.uploading+=1),(m.getValue("validationErrorMsg")||m.getValue("uploadError"))&&(r.failed+=1),m.getValue("validationMultipleLimitMsg")&&(r.limitOverflow+=1)}let{passed:n,tooMany:o,exact:a}=this._validateFilesCount(),c=r.failed===0&&r.limitOverflow===0,h=!1,d=!1,p=!1;r.total-r.succeed-r.uploading-r.failed>0&&n?h=!0:(d=!0,p=r.total===r.succeed&&n&&c),this.set$({doneBtnVisible:d,doneBtnEnabled:p,uploadBtnVisible:h,addMoreBtnEnabled:r.total===0||!o&&!a,addMoreBtnVisible:!a||this.cfg.multiple,headerText:this._getHeaderText(r)})}_getHeaderText(t){let e=l(r=>{let n=t[r];return this.l10n(`header-${r}`,{count:n})},"localizedText");return t.uploading>0?e("uploading"):t.failed>0?e("failed"):t.succeed>0?e("succeed"):e("total")}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{var e;((e=this.uploadCollection)==null?void 0:e.size)===0&&!this.cfg.showEmptyList&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};l(ae,"UploadList");ae.template=`{{headerText}}
`;var ce=class extends v{constructor(){super(...arguments);u(this,"activityType",_.activities.URL);u(this,"init$",{...this.init$,importDisabled:!0,onUpload:t=>{t.preventDefault();let e=this.ref.input.value;this.addFileFromUrl(e,{source:Q.URL_TAB}),this.$["*currentActivity"]=_.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:t=>{let e=t.target.value;this.set$({importDisabled:!e})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};l(ce,"UrlSource");ce.template=`
`;var is=l(()=>typeof navigator.permissions!="undefined","canUsePermissionsApi");var he=class extends v{constructor(){super(...arguments);u(this,"activityType",_.activities.CAMERA);u(this,"_unsubPermissions",null);u(this,"init$",{...this.init$,video:null,videoTransformCss:null,shotBtnDisabled:!0,videoHidden:!0,messageHidden:!0,requestBtnHidden:is(),l10nMessage:null,originalErrorMessage:null,cameraSelectOptions:null,cameraSelectHidden:!0,onCameraSelectChange:t=>{this._selectedCameraId=t.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>{this._shot()},onRequestPermissions:()=>{this._capture()}});u(this,"_onActivate",l(()=>{is()&&this._subscribePermissions(),this._capture()},"_onActivate"));u(this,"_onDeactivate",l(()=>{this._unsubPermissions&&this._unsubPermissions(),this._stopCapture()},"_onDeactivate"));u(this,"_handlePermissionsChange",l(()=>{this._capture()},"_handlePermissionsChange"));u(this,"_setPermissionsState",k(t=>{this.$.originalErrorMessage=null,this.classList.toggle("initialized",t==="granted"),t==="granted"?this.set$({videoHidden:!1,shotBtnDisabled:!1,messageHidden:!0}):t==="prompt"?(this.$.l10nMessage=this.l10n("camera-permissions-prompt"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage=this.l10n("camera-permissions-denied"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture())},300))}async _subscribePermissions(){try{(await navigator.permissions.query({name:"camera"})).addEventListener("change",this._handlePermissionsChange)}catch(t){console.log("Failed to use permissions API. Fallback to manual request mode.",t),this._capture()}}async _capture(){let t={video:{width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},audio:!1};this._selectedCameraId&&(t.video.deviceId={exact:this._selectedCameraId}),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d");try{this._setPermissionsState("prompt");let e=await navigator.mediaDevices.getUserMedia(t);e.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=e,this._capturing=!0,this._setPermissionsState("granted")}catch(e){this._setPermissionsState("denied"),this.$.originalErrorMessage=e.message}}_stopCapture(){var t;this._capturing&&((t=this.$.video)==null||t.getTracks()[0].stop(),this.$.video=null,this._capturing=!1)}_shot(){this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this._ctx.drawImage(this.ref.video,0,0);let t=Date.now(),e=`camera-${t}.png`;this._canvas.toBlob(r=>{let n=new File([r],e,{lastModified:t,type:"image/png"});this.addFileFromObject(n,{source:Q.CAMERA}),this.set$({"*currentActivity":_.activities.UPLOAD_LIST})})}async initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",t=>{this.$.videoTransformCss=t?"scaleX(-1)":null});try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(r=>r.kind==="videoinput").map((r,n)=>({text:r.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:r.deviceId}));e.length>1&&(this.$.cameraSelectOptions=e,this.$.cameraSelectHidden=!1)}catch{}}};l(he,"CameraSource");he.template=`
{{l10nMessage}}{{originalErrorMessage}}
`;var Ai=class extends v{constructor(){super(...arguments);u(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}};l(Ai,"UploadCtxProviderClass");var _r=Ai;var ue=class extends v{constructor(){super(...arguments);u(this,"activityType",_.activities.DETAILS);u(this,"pauseRender",!0);u(this,"init$",{...this.init$,checkerboard:!1,fileSize:null,fileName:"",cdnUrl:"",errorTxt:"",cloudEditBtnHidden:!0,onNameInput:null,onBack:()=>{this.historyBack()},onRemove:()=>{this.uploadCollection.remove(this.entry.uid),this.historyBack()},onCloudEdit:()=>{this.entry.getValue("uuid")&&(this.$["*currentActivity"]=_.activities.CLOUD_IMG_EDIT)}})}showNonImageThumb(){let t=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon"),e=Ye(t,108,108);this.ref.filePreview.setImageUrl(e),this.set$({checkerboard:!1})}initCallback(){super.initCallback(),this.render(),this.$.fileSize=this.l10n("file-size-unknown"),this.registerActivity(this.activityType,{onDeactivate:()=>{this.ref.filePreview.clear()}}),this.sub("*focusedEntry",t=>{if(!t)return;this._entrySubs?this._entrySubs.forEach(n=>{this._entrySubs.delete(n),n.remove()}):this._entrySubs=new Set,this.entry=t;let e=t.getValue("file");if(e){this._file=e;let n=Be(this._file);n&&!t.getValue("cdnUrl")&&(this.ref.filePreview.setImageFile(this._file),this.set$({checkerboard:!0})),n||this.showNonImageThumb()}let r=l((n,o)=>{this._entrySubs.add(this.entry.subscribe(n,o))},"tmpSub");r("fileName",n=>{this.$.fileName=n,this.$.onNameInput=()=>{let o=this.ref.file_name_input.value;Object.defineProperty(this._file,"name",{writable:!0,value:o}),this.entry.setValue("fileName",o)}}),r("fileSize",n=>{this.$.fileSize=Number.isFinite(n)?this.fileSizeFmt(n):this.l10n("file-size-unknown")}),r("uploadError",n=>{this.$.errorTxt=n==null?void 0:n.message}),r("externalUrl",n=>{n&&(this.entry.getValue("uuid")||this.showNonImageThumb())}),r("cdnUrl",n=>{let o=this.cfg.useCloudImageEditor&&n&&this.entry.getValue("isImage");if(n&&this.ref.filePreview.clear(),this.set$({cdnUrl:n,cloudEditBtnHidden:!o}),n&&this.entry.getValue("isImage")){let a=L(n,M("format/auto","preview"));this.ref.filePreview.setImageUrl(this.proxyUrl(a))}})})}};l(ue,"UploadDetails");ue.template=`
{{fileSize}}
{{errorTxt}}
`;var $i=class{constructor(){u(this,"captionL10nStr","confirm-your-action");u(this,"messageL10Str","are-you-sure");u(this,"confirmL10nStr","yes");u(this,"denyL10nStr","no")}confirmAction(){console.log("Confirmed")}denyAction(){this.historyBack()}};l($i,"UiConfirmation");var de=class extends _{constructor(){super(...arguments);u(this,"activityType",_.activities.CONFIRMATION);u(this,"_defaults",new $i);u(this,"init$",{...this.init$,activityCaption:"",messageTxt:"",confirmBtnTxt:"",denyBtnTxt:"","*confirmation":null,onConfirm:this._defaults.confirmAction,onDeny:this._defaults.denyAction.bind(this)})}initCallback(){super.initCallback(),this.set$({messageTxt:this.l10n(this._defaults.messageL10Str),confirmBtnTxt:this.l10n(this._defaults.confirmL10nStr),denyBtnTxt:this.l10n(this._defaults.denyL10nStr)}),this.sub("*confirmation",t=>{t&&this.set$({"*currentActivity":_.activities.CONFIRMATION,activityCaption:this.l10n(t.captionL10nStr),messageTxt:this.l10n(t.messageL10Str),confirmBtnTxt:this.l10n(t.confirmL10nStr),denyBtnTxt:this.l10n(t.denyL10nStr),onDeny:()=>{t.denyAction()},onConfirm:()=>{t.confirmAction()}})})}};l(de,"ConfirmationDialog");de.template=`{{activityCaption}}
{{messageTxt}}
`;var pe=class extends v{constructor(){super(...arguments);u(this,"init$",{...this.init$,visible:!1,unknown:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let t=this.uploadCollection.items().some(e=>this.uploadCollection.read(e).getValue("isUploading"));this.$.visible=t}),this.sub("visible",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",t=>{this.$.value=t})}destroyCallback(){var t;super.destroyCallback(),(t=this._unobserveCollection)==null||t.call(this)}};l(pe,"ProgressBarCommon");pe.template=``;var fe=class extends y{constructor(){super(...arguments);u(this,"_value",0);u(this,"_unknownMode",!1);u(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};l(fe,"ProgressBar");fe.template='
';var Y="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";var Ht=class extends y{constructor(){super();u(this,"init$",{...this.init$,checkerboard:!1,src:Y})}initCallback(){super.initCallback(),this.sub("checkerboard",()=>{this.style.backgroundImage=this.hasAttribute("checkerboard")?`url(${mr()})`:"unset"})}destroyCallback(){super.destroyCallback(),URL.revokeObjectURL(this._lastObjectUrl)}setImage(t){this.$.src=t.src}setImageFile(t){let e=URL.createObjectURL(t);this.$.src=e,this._lastObjectUrl=e}setImageUrl(t){this.$.src=t}clear(){URL.revokeObjectURL(this._lastObjectUrl),this.$.src=Y}};l(Ht,"FilePreview");Ht.template='';Ht.bindAttributes({checkerboard:"checkerboard"});var br="--cfg-ctx-name",U=class extends y{get cfgCssCtxName(){return this.getCssData(br,!0)}get cfgCtxName(){var t;let i=((t=this.getAttribute("ctx-name"))==null?void 0:t.trim())||this.cfgCssCtxName||this.__cachedCfgCtxName;return this.__cachedCfgCtxName=i,i}connectedCallback(){var i;if(!this.connectedOnce){let t=(i=this.getAttribute("ctx-name"))==null?void 0:i.trim();t&&this.style.setProperty(br,`'${t}'`)}super.connectedCallback()}parseCfgProp(i){return{...super.parseCfgProp(i),ctx:S.getCtx(this.cfgCtxName)}}};l(U,"CloudImageEditorBase");function yr(...s){return s.reduce((i,t)=>{if(typeof t=="string")return i[t]=!0,i;for(let e of Object.keys(t))i[e]=t[e];return i},{})}l(yr,"normalize");function F(...s){let i=yr(...s);return Object.keys(i).reduce((t,e)=>(i[e]&&t.push(e),t),[]).join(" ")}l(F,"classNames");function vr(s,...i){let t=yr(...i);for(let e of Object.keys(t))s.classList.toggle(e,t[e])}l(vr,"applyClassNames");var Cr=l(s=>{if(!s)return X;let i=Vs(s).filter(t=>X.includes(t));return i.length===0?X:i},"parseTabs");function wr(s){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":X,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:Y,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:Mt(X),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let i=s.querySelectorAll("img");for(let t of i){let e=t.src;t.src=Y,t.src=e}s.$["*networkProblems"]=!1},"*on.apply":i=>{if(!i)return;let t=s.$["*originalUrl"],e=M(At(i),"preview"),r=L(t,e),n={originalUrl:t,cdnUrlModifiers:e,cdnUrl:r,transformations:i};s.dispatchEvent(new CustomEvent("apply",{detail:n,bubbles:!0,composed:!0})),s.remove()},"*on.cancel":()=>{s.remove(),s.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}l(wr,"initState");var Tr=`
Network error
{{fileType}}
{{msg}}
`;var tt=class extends U{constructor(){super();u(this,"_debouncedShowLoader",k(this._showLoader.bind(this),300));this.init$={...this.init$,...wr(this)}}get ctxName(){return this.autoCtxName}_showLoader(t){this.$.showLoader=t}_waitForSize(){return new Promise((e,r)=>{let n=setTimeout(()=>{r(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),o=new ResizeObserver(([a])=>{a.contentRect.width>0&&a.contentRect.height>0&&(e(),clearTimeout(n),o.disconnect())});o.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(await this._waitForSize(),this.$["*tabId"]===D.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate(),this.$["*editorTransformations"]={},this.$.cdnUrl){let t=Hs(this.$.cdnUrl);this.$["*originalUrl"]=xt(this.$.cdnUrl,t);let e=Ws(this.$.cdnUrl),r=er(e);this.$["*editorTransformations"]=r}else if(this.$.uuid)this.$["*originalUrl"]=xt(this.cfg.cdnCname,this.$.uuid);else throw new Error("No UUID nor CDN URL provided");try{let t=L(this.$["*originalUrl"],M("json")),e=await fetch(t).then(o=>o.json()),{width:r,height:n}=e;this.$["*imageSize"]={width:r,height:n},this.$["*tabId"]===D.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(t){t&&console.error("Failed to load image info",t)}}async initEditor(){try{await this._waitForSize()}catch(t){this.isConnected&&console.error(t.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==Y&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",t=>{let e=this.ref["img-el"];e.src!==t&&(this._imgLoading=!0,e.src=t||Y)}),this.sub("cropPreset",t=>{this.$["*cropPresetList"]=Ci(t)}),this.sub("tabs",t=>{this.$["*tabList"]=Cr(t)}),this.sub("*tabId",t=>{this.ref["img-el"].className=F("image",{image_hidden_to_cropper:t===D.CROP,image_hidden_effects:t!==D.CROP})}),this.classList.add("editor_ON"),this.sub("*networkProblems",t=>{this.$["presence.networkProblems"]=t,this.$["presence.modalCaption"]=!t}),this.sub("*editorTransformations",t=>{if(Object.keys(t).length===0)return;let e=this.$["*originalUrl"],r=M(At(t),"preview"),n=L(e,r),o={originalUrl:e,cdnUrlModifiers:r,cdnUrl:n,transformations:t};this.dispatchEvent(new CustomEvent("change",{detail:o,bubbles:!0,composed:!0}))},!1),this.sub("uuid",t=>t&&this.updateImage()),this.sub("cdnUrl",t=>t&&this.updateImage())}};l(tt,"CloudImageEditorBlock"),u(tt,"className","cloud-image-editor");tt.template=Tr;tt.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var me=class extends U{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(i){let t=this.$["*imageBox"];if(!t)return;if(i===""&&t.height<=C&&t.width<=C)return!0;let e=t.height<=C&&(i.includes("n")||i.includes("s")),r=t.width<=C&&(i.includes("e")||i.includes("w"));return e||r}_createBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i,o=this.ref["svg-el"],a=J("mask",{id:"backdrop-mask"}),c=J("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),h=J("rect",{x:t,y:e,width:r,height:n,fill:"black"});a.appendChild(c),a.appendChild(h);let d=J("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});o.appendChild(d),o.appendChild(a),this._backdropMask=a,this._backdropMaskInner=h}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i;this._backdropMaskInner&&Pt(this._backdropMaskInner,{x:t,y:e,width:r,height:n})}_updateFrame(){let i=this.$["*cropBox"];if(!(!i||!this._frameGuides||!this._frameThumbs)){for(let t of Object.values(this._frameThumbs)){let{direction:e,pathNode:r,interactionNode:n,groupNode:o}=t,a=e==="",c=e.length===2,{x:h,y:d,width:p,height:f}=i;if(a){let m={x:h+p/3,y:d+f/3,width:p/3,height:f/3};Pt(n,m)}else{let m=Et(Math.min(p,f)/(24*2+34)/2,0,1),{d:b,center:$}=c?Os(i,e,m):Ls(i,e,m),x=Math.max(Ki*Et(Math.min(p,f)/Ki/3,0,1),ks);Pt(n,{x:$[0]-x,y:$[1]-x,width:x*2,height:x*2}),Pt(r,{d:b})}let g=this._shouldThumbBeDisabled(e);o.setAttribute("class",F("thumb",{"thumb--hidden":g,"thumb--visible":!g}))}Pt(this._frameGuides,{x:i.x-1*.5,y:i.y-1*.5,width:i.width+1,height:i.height+1})}}_createThumbs(){let i={};for(let t=0;t<3;t++)for(let e=0;e<3;e++){let r=`${["n","","s"][t]}${["w","","e"][e]}`,n=J("g");n.classList.add("thumb"),n.setAttribute("with-effects","");let o=J("rect",{fill:"transparent"}),a=J("path",{stroke:"currentColor",fill:"none","stroke-width":3});n.appendChild(a),n.appendChild(o),i[r]={direction:r,pathNode:a,interactionNode:o,groupNode:n},o.addEventListener("pointerdown",this._handlePointerDown.bind(this,r))}return i}_createGuides(){let i=J("svg"),t=J("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"#000000","stroke-width":1,"stroke-opacity":.5});i.appendChild(t);for(let e=1;e<=2;e++){let r=J("line",{x1:`${Fe*e}%`,y1:"0%",x2:`${Fe*e}%`,y2:"100%",stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}for(let e=1;e<=2;e++){let r=J("line",{x1:"0%",y1:`${Fe*e}%`,x2:"100%",y2:`${Fe*e}%`,stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}return i.classList.add("guides","guides--semi-hidden"),i}_createFrame(){let i=this.ref["svg-el"],t=document.createDocumentFragment(),e=this._createGuides();t.appendChild(e);let r=this._createThumbs();for(let{groupNode:n}of Object.values(r))t.appendChild(n);i.appendChild(t),this._frameThumbs=r,this._frameGuides=e}_handlePointerDown(i,t){if(!this._frameThumbs)return;let e=this._frameThumbs[i];if(this._shouldThumbBeDisabled(i))return;let r=this.$["*cropBox"],{x:n,y:o}=this.ref["svg-el"].getBoundingClientRect(),a=t.x-n,c=t.y-o;this.$.dragging=!0,this._draggingThumb=e,this._dragStartPoint=[a,c],this._dragStartCrop={...r}}_handlePointerUp_(i){this._updateCursor(),this.$.dragging&&(i.stopPropagation(),i.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(i){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;i.stopPropagation(),i.preventDefault();let t=this.ref["svg-el"],{x:e,y:r}=t.getBoundingClientRect(),n=i.x-e,o=i.y-r,a=n-this._dragStartPoint[0],c=o-this._dragStartPoint[1],{direction:h}=this._draggingThumb,d=this._calcCropBox(h,[a,c]);d&&(this.$["*cropBox"]=d)}_calcCropBox(i,t){var h,d;let[e,r]=t,n=this.$["*imageBox"],o=(h=this._dragStartCrop)!=null?h:this.$["*cropBox"],a=(d=this.$["*cropPresetList"])==null?void 0:d[0],c=a?a.width/a.height:void 0;if(i===""?o=Rs({rect:o,delta:[e,r],imageBox:n}):o=Ps({rect:o,delta:[e,r],direction:i,aspectRatio:c,imageBox:n}),!Object.values(o).every(p=>Number.isFinite(p)&&p>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:o});return}return ee(se(o),this.$["*imageBox"])}_handleSvgPointerMove_(i){if(!this._frameThumbs)return;let t=Object.values(this._frameThumbs).find(e=>{if(this._shouldThumbBeDisabled(e.direction))return!1;let n=e.interactionNode.getBoundingClientRect(),o={x:n.x,y:n.y,width:n.width,height:n.height};return Ms(o,[i.x,i.y])});this._hoverThumb=t,this._updateCursor()}_updateCursor(){let i=this._hoverThumb;this.ref["svg-el"].style.cursor=i?Us(i.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(i){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:t})=>t).forEach(t=>{t.setAttribute("class",F("thumb",{"thumb--hidden":!i,"thumb--visible":i}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",i=>{i&&(this._guidesHidden=i.height<=C||i.width<=C,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",i=>{this._frameGuides&&this._frameGuides.setAttribute("class",F({"guides--hidden":this._guidesHidden,"guides--visible":!this._guidesHidden&&i,"guides--semi-hidden":!this._guidesHidden&&!i}))}),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)}};l(me,"CropFrame");me.template='';var ut=class extends U{constructor(){super(...arguments);u(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.sub("title",t=>{this._titleEl&&(this._titleEl.style.display=t?"block":"none")}),this.sub("active",t=>{this.className=F({active:t,not_active:!t})}),this.sub("on.click",t=>{this.onclick=t})}};l(ut,"EditorButtonControl");ut.template=`
{{title}}
`;function Vo(s){let i=s+90;return i=i>=360?0:i,i}l(Vo,"nextAngle");function Bo(s,i){return s==="rotate"?Vo(i):["mirror","flip"].includes(s)?!i:null}l(Bo,"nextValue");var Xt=class extends ut{initCallback(){super.initCallback(),this.defineAccessor("operation",i=>{i&&(this._operation=i,this.$.icon=i)}),this.$["on.click"]=i=>{let t=this.$["*cropperEl"].getValue(this._operation),e=Bo(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};l(Xt,"EditorCropButtonControl");var Je={FILTER:"filter",COLOR_OPERATION:"color_operation"},dt="original",ge=class extends U{constructor(){super(...arguments);u(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":t=>{this.$["*faderEl"].set(t),this.$.value=t}})}setOperation(t,e){this._controlType=t==="filter"?Je.FILTER:Je.COLOR_OPERATION,this._operation=t,this._iconName=t,this._title=t.toUpperCase(),this._filter=e,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===dt?void 0:this.$.value,filter:this._filter===dt?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:t,zero:e}=ct[this._operation],[r,n]=t;this.$.min=r,this.$.max=n,this.$.zero=e;let o=this.$["*editorTransformations"][this._operation];if(this._controlType===Je.FILTER){let a=n;if(o){let{name:c,amount:h}=o;a=c===this._filter?h:n}this.$.value=a,this.$.defaultValue=a}if(this._controlType===Je.COLOR_OPERATION){let a=typeof o!="undefined"?o:e;this.$.value=a,this.$.defaultValue=a}}apply(){let t;this._controlType===Je.FILTER?this._filter===dt?t=null:t={name:this._filter,amount:this.$.value}:t=this.$.value;let e={...this.$["*editorTransformations"],[this._operation]:t};this.$["*editorTransformations"]=e}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",t=>{this._originalUrl=t}),this.sub("value",t=>{let e=`${this._filter||this._operation} ${t}`;this.$["*operationTooltip"]=e})}};l(ge,"EditorSlider");ge.template=``;function Qe(s){let i=new Image;return{promise:new Promise((r,n)=>{i.src=s,i.onload=r,i.onerror=n}),image:i,cancel:l(()=>{i.naturalWidth===0&&(i.src=Y)},"cancel")}}l(Qe,"preloadImage");function ti(s){let i=[];for(let n of s){let o=Qe(n);i.push(o)}let t=i.map(n=>n.image);return{promise:Promise.allSettled(i.map(n=>n.promise)),images:t,cancel:l(()=>{i.forEach(n=>{n.cancel()})},"cancel")}}l(ti,"batchPreloadImages");var St=class extends ut{constructor(){super(...arguments);u(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,r=Math.ceil(e*t),n=e>=2?"lightest":"normal",o=100,a={...this.$["*editorTransformations"]};return a[this._operation]=this._filter!==dt?{name:this._filter,amount:o}:void 0,L(this._originalUrl,M(Ti,At(a),`quality/${n}`,`scale_crop/${r}x${r}/center`))}_observerCallback(t,e){if(t[0].isIntersecting){let n=this.proxyUrl(this._previewSrc()),o=this.ref["preview-el"],{promise:a,cancel:c}=Qe(n);this._cancelPreload=c,a.catch(h=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:h})}).finally(()=>{o.style.backgroundImage=`url(${n})`,o.setAttribute("loaded",""),e.unobserve(this)})}else this._cancelPreload&&this._cancelPreload()}initCallback(){super.initCallback(),this.$["on.click"]=e=>{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===dt,this.$.icon=this.$.isOriginal?"original":"slider"}),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("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 r=this.ref["icon-el"];r.style.opacity=e?"1":"0";let n=this.ref["preview-el"];e?n.style.opacity="0":n.style.backgroundImage&&(n.style.opacity="1")}),this.sub("*networkProblems",e=>{if(!e){let r=this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"];n.style.backgroundImage&&(n.style.backgroundImage="none",n.style.backgroundImage=`url(${r})`)}})}destroyCallback(){var t;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),this._cancelPreload&&this._cancelPreload()}};l(St,"EditorFilterControl");St.template=`
`;var qt=class extends ut{constructor(){super(...arguments);u(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=t=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.$.title=this.l10n(t))}),this.sub("*editorTransformations",t=>{if(!this._operation)return;let{zero:e}=ct[this._operation],r=t[this._operation],n=typeof r!="undefined"?r!==e:!1;this.$.active=n})}};l(qt,"EditorOperationControl");var Er=l((s,i)=>{let t,e,r;return(...n)=>{t?(clearTimeout(e),e=setTimeout(()=>{Date.now()-r>=i&&(s(...n),r=Date.now())},Math.max(i-(Date.now()-r),0))):(s(...n),r=Date.now(),t=!0)}},"throttle");function xr(s,i){let t={};for(let e of i){let r=s[e];(s.hasOwnProperty(e)||r!==void 0)&&(t[e]=r)}return t}l(xr,"pick");function _e(s,i,t){let r=window.devicePixelRatio,n=Math.min(Math.ceil(i*r),3e3),o=r>=2?"lightest":"normal";return L(s,M(Ti,At(t),`quality/${o}`,`stretch/off/-/resize/${n}x`))}l(_e,"viewerImageSrc");function zo(s){return s?[({dimensions:t,coords:e})=>[...t,...e].every(r=>Number.isInteger(r)&&Number.isFinite(r)),({dimensions:t,coords:e})=>t.every(r=>r>0)&&e.every(r=>r>=0)].every(t=>t(s)):!0}l(zo,"validateCrop");var be=class extends U{constructor(){super(),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=k(this._commit.bind(this),300),this._handleResizeThrottled=Er(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 i=this.$["*editorTransformations"],t=xr(i,Object.keys(this.$["*operations"])),e={...this.$["*operations"],...t};this.$["*operations"]=e}_initCanvas(){let i=this.ref["canvas-el"],t=i.getContext("2d"),e=this.offsetWidth,r=this.offsetHeight,n=window.devicePixelRatio;i.style.width=`${e}px`,i.style.height=`${r}px`,i.width=e*n,i.height=r*n,t==null||t.scale(n,n),this._canvas=i,this._ctx=t}_alignImage(){if(!this._isActive||!this.$.image)return;let i=this.$.image,t=this.$["*padding"],e=this.$["*operations"],{rotate:r}=e,n={width:this.offsetWidth,height:this.offsetHeight},o=ie({width:i.naturalWidth,height:i.naturalHeight},r),a;if(o.width>n.width-t*2||o.height>n.height-t*2){let c=o.width/o.height,h=n.width/n.height;if(c>h){let d=n.width-t*2,p=d/c,f=0+t,g=t+(n.height-t*2)/2-p/2;a={x:f,y:g,width:d,height:p}}else{let d=n.height-t*2,p=d*c,f=t+(n.width-t*2)/2-p/2,g=0+t;a={x:f,y:g,width:p,height:d}}}else{let{width:c,height:h}=o,d=t+(n.width-t*2)/2-c/2,p=t+(n.height-t*2)/2-h/2;a={x:d,y:p,width:c,height:h}}this.$["*imageBox"]=se(a)}_alignCrop(){var p;let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,n=this.$["*editorTransformations"].crop,{width:o,x:a,y:c}=this.$["*imageBox"];if(n){let{dimensions:[f,g],coords:[m,b]}=n,{width:$}=ie(this._imageSize,r),x=o/$;i=ee(se({x:a+m*x,y:c+b*x,width:f*x,height:g*x}),this.$["*imageBox"])}let h=(p=this.$["*cropPresetList"])==null?void 0:p[0],d=h?h.width/h.height:void 0;if(!Ns(i,t)||d&&!Ds(i,d)){let f=t.width/t.height,g=t.width,m=t.height;d&&(f>d?g=Math.min(t.height*d,t.width):m=Math.min(t.width/d,t.height)),i={x:t.x+t.width/2-g/2,y:t.y+t.height/2-m/2,width:g,height:m}}this.$["*cropBox"]=ee(se(i),this.$["*imageBox"])}_drawImage(){let i=this._ctx;if(!i)return;let t=this.$.image,e=this.$["*imageBox"],r=this.$["*operations"],{mirror:n,flip:o,rotate:a}=r,c=ie({width:e.width,height:e.height},a);i.save(),i.translate(e.x+e.width/2,e.y+e.height/2),i.rotate(a*Math.PI*-1/180),i.scale(n?-1:1,o?-1:1),i.drawImage(t,-c.width/2,-c.height/2,c.width,c.height),i.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let i=this._canvas;this._ctx.clearRect(0,0,i.width,i.height),this._drawImage()}_animateIn({fromViewer:i}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=F({active_from_viewer:i,active_from_editor:!i,inactive_to_editor:!1})}))}_getCropDimensions(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o}=t,{width:a,height:c}=ie(this._imageSize,r),{width:h,height:d}=i,p=n/a,f=o/c;return[Et(Math.round(h/p),1,a),Et(Math.round(d/f),1,c)]}_getCropTransformation(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o,x:a,y:c}=t,{width:h,height:d}=ie(this._imageSize,r),{x:p,y:f}=i,g=n/h,m=o/d,b=this._getCropDimensions(),$={dimensions:b,coords:[Et(Math.round((p-a)/g),0,h-b[0]),Et(Math.round((f-c)/m),0,d-b[1])]};if(!zo($)){console.error("Cropper is trying to create invalid crop object",{payload:$});return}if(!(b[0]===h&&b[1]===d))return $}_commit(){if(!this.isConnected)return;let i=this.$["*operations"],{rotate:t,mirror:e,flip:r}=i,n=this._getCropTransformation(),a={...this.$["*editorTransformations"],crop:n,rotate:t,mirror:e,flip:r};this.$["*editorTransformations"]=a}setValue(i,t){console.log(`Apply cropper operation [${i}=${t}]`),this.$["*operations"]={...this.$["*operations"],[i]:t},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(i){return this.$["*operations"][i]}async activate(i,{fromViewer:t}={}){if(!this._isActive){this._isActive=!0,this._imageSize=i,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:t})}catch(e){console.error("Failed to activate cropper",{error:e})}this._observer=new ResizeObserver(([e])=>{e.contentRect.width>0&&e.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:i=!1}={}){var t;this._isActive&&(!i&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=F({active_from_viewer:!1,active_from_editor:!1,inactive_to_editor:!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(t=this._observer)==null||t.disconnect())}_transitionToCrop(){let i=this._getCropDimensions(),t=Math.min(this.offsetWidth,i[0])/this.$["*cropBox"].width,e=Math.min(this.offsetHeight,i[1])/this.$["*cropBox"].height,r=Math.min(t,e),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,o=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${r}) translate(${(this.offsetWidth/2-n)/r}px, ${(this.offsetHeight/2-o)/r}px)`,this.style.transformOrigin=`${n}px ${o}px`}_transitionToImage(){let i=this.$["*cropBox"].x+this.$["*cropBox"].width/2,t=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${i}px ${t}px`}_reset(){this._isActive||(this.$.image=null)}_waitForImage(i,t){let e=this.offsetWidth;t={...t,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let r=this.proxyUrl(_e(i,e,t)),{promise:n,cancel:o,image:a}=Qe(r),c=this._handleImageLoading(r);return a.addEventListener("load",c,{once:!0}),a.addEventListener("error",c,{once:!0}),this._cancelPreload&&this._cancelPreload(),this._cancelPreload=o,n.then(()=>a).catch(h=>(console.error("Failed to load image",{error:h}),this.$["*networkProblems"]=!0,Promise.resolve(a)))}_handleImageLoading(i){let t="crop",e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",i=>{i||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var i;super.destroyCallback(),(i=this._observer)==null||i.disconnect()}};l(be,"EditorImageCropper");be.template=``;function ss(s,i,t){let e=Array(t);t--;for(let r=t;r>=0;r--)e[r]=Math.ceil((r*i+(t-r)*s)/t);return e}l(ss,"linspace");function jo(s){return s.reduce((i,t,e)=>er<=i&&i<=n);return s.map(r=>{let n=Math.abs(e[0]-e[1]),o=Math.abs(i-e[0])/n;return e[0]===r?i>t?1:1-o:e[1]===r?i>=t?o:1:0})}l(Ho,"calculateOpacities");function Wo(s,i){return s.map((t,e)=>tn-o)}l(Ar,"keypointsRange");var ei=class extends U{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=k(this._addKeypoint.bind(this),600),this.classList.add("inactive_to_cropper")}_handleImageLoading(i){let t=this._operation,e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let i of this._keypoints){let{image:t}=i;t&&(t.style.opacity=i.opacity.toString(),t.style.zIndex=i.zIndex.toString())}})}_imageSrc({url:i=this._url,filter:t=this._filter,operation:e,value:r}={}){let n={...this._transformations};e&&(n[e]=t?{name:t,amount:r}:r);let o=this.offsetWidth;return this.proxyUrl(_e(i,o,n))}_constructKeypoint(i,t){return{src:this._imageSrc({operation:i,value:t}),image:null,opacity:0,zIndex:0,value:t}}_isSame(i,t){return this._operation===i&&this._filter===t}_addKeypoint(i,t,e){let r=l(()=>!this._isSame(i,t)||this._value!==e||!!this._keypoints.find(c=>c.value===e),"shouldSkip");if(r())return;let n=this._constructKeypoint(i,e),o=new Image;o.src=n.src;let a=this._handleImageLoading(n.src);o.addEventListener("load",a,{once:!0}),o.addEventListener("error",a,{once:!0}),n.image=o,o.classList.add("fader-image"),o.addEventListener("load",()=>{if(r())return;let c=this._keypoints,h=c.findIndex(p=>p.value>e),d=h{this.$["*networkProblems"]=!0},{once:!0})}set(i){i=typeof i=="string"?parseInt(i,10):i,this._update(this._operation,i),this._addKeypointDebounced(this._operation,this._filter,i)}_update(i,t){this._operation=i,this._value=t;let{zero:e}=ct[i],r=this._keypoints.map(a=>a.value),n=Ho(r,t,e),o=Wo(r,e);for(let[a,c]of Object.entries(this._keypoints))c.opacity=n[a],c.zIndex=o[a];this._flush()}_createPreviewImage(){let i=new Image;return i.classList.add("fader-image","fader-image--preview"),i.style.opacity="0",i}async _initNodes(){let i=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&i.appendChild(this._previewImage);let t=document.createElement("div");i.appendChild(t);let e=this._keypoints.map(h=>h.src),{images:r,promise:n,cancel:o}=ti(e);r.forEach(h=>{let d=this._handleImageLoading(h.src);h.addEventListener("load",d),h.addEventListener("error",d)}),this._cancelLastImages=()=>{o(),this._cancelLastImages=void 0};let a=this._operation,c=this._filter;await n,this._isActive&&this._isSame(a,c)&&(this._container&&this._container.remove(),this._container=t,this._keypoints.forEach((h,d)=>{let p=r[d];p.classList.add("fader-image"),h.image=p,this._container.appendChild(p)}),this.appendChild(i),this._flush())}setTransformations(i){if(this._transformations=i,this._previewImage){let t=this._imageSrc(),e=this._handleImageLoading(t);this._previewImage.src=t,this._previewImage.addEventListener("load",e,{once:!0}),this._previewImage.addEventListener("error",e,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}preload({url:i,filter:t,operation:e,value:r}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=Ar(e,r).map(c=>this._imageSrc({url:i,filter:t,operation:e,value:c})),{cancel:a}=ti(o);this._cancelBatchPreload=a}_setOriginalSrc(i){let t=this._previewImage||this._createPreviewImage();if(!this.contains(t)&&this.appendChild(t),this._previewImage=t,t.src===i){t.style.opacity="1",t.style.transform="scale(1)",this.className=F({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1});return}t.style.opacity="0";let e=this._handleImageLoading(i);t.addEventListener("error",e,{once:!0}),t.src=i,t.addEventListener("load",()=>{e(),t&&(t.style.opacity="1",t.style.transform="scale(1)",this.className=F({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1}))},{once:!0}),t.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}activate({url:i,operation:t,value:e,filter:r,fromViewer:n}){if(this._isActive=!0,this._hidden=!1,this._url=i,this._operation=t||"initial",this._value=e,this._filter=r,this._fromViewer=n,typeof e!="number"&&!r){let a=this._imageSrc({operation:t,value:e});this._setOriginalSrc(a),this._container&&this._container.remove();return}this._keypoints=Ar(t,e).map(a=>this._constructKeypoint(t,a)),this._update(t,e),this._initNodes()}deactivate({hide:i=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),i&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=F({active_from_viewer:!1,active_from_cropper:!1,inactive_to_cropper:!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};l(ei,"EditorImageFader");var Xo=1,ye=class extends U{initCallback(){super.initCallback(),this.addEventListener("wheel",i=>{i.preventDefault();let{deltaY:t,deltaX:e}=i;Math.abs(e)>Xo?this.scrollLeft+=e:this.scrollLeft+=t})}};l(ye,"EditorScroller");ye.template=" ";function qo(s){return``}l(qo,"renderTabToggle");function Go(s){return`
`}l(Go,"renderTabContent");var ve=class extends U{constructor(){super();u(this,"_updateInfoTooltip",k(()=>{var o,a;let t=this.$["*editorTransformations"],e=this.$["*currentOperation"],r="",n=!1;if(this.$["*tabId"]===D.FILTERS)if(n=!0,this.$["*currentFilter"]&&((o=t==null?void 0:t.filter)==null?void 0:o.name)===this.$["*currentFilter"]){let c=((a=t==null?void 0:t.filter)==null?void 0:a.amount)||100;r=this.l10n(this.$["*currentFilter"])+" "+c}else r=this.l10n(dt);else if(this.$["*tabId"]===D.TUNING&&e){n=!0;let c=(t==null?void 0:t[e])||ct[e].zero;r=e+" "+c}n&&(this.$["*operationTooltip"]=r),this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",n)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":dt,"*currentOperation":null,"*tabId":D.CROP,showLoader:!1,filters:sr,colorOperations:ir,cropOperations:rr,"*operationTooltip":null,"l10n.cancel":this.l10n("cancel"),"l10n.apply":this.l10n("apply"),"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:"sub-toolbar--top-hidden",visible:"sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"sub-toolbar--bottom-hidden",visible:"sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"tab-content--hidden",visible:"tab-content--visible"},"presence.tabToggleStyles":{hidden:"tab-toggle--hidden",visible:"tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"tab-toggles--hidden",visible:"tab-toggles--visible"},"on.cancel":()=>{this._cancelPreload&&this._cancelPreload(),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":t=>{let e=t.currentTarget.getAttribute("data-id");e&&this._activateTab(e,{fromViewer:!1})}},this._debouncedShowLoader=k(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===D.TUNING&&this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",!1)}_createOperationControl(t){let e=new qt;return e.operation=t,e}_createFilterControl(t){let e=new St;return e.filter=t,e}_createToggleControl(t){let e=new Xt;return e.operation=t,e}_renderControlsList(t){let e=this.ref[`controls-list-${t}`],r=document.createDocumentFragment();t===D.CROP?this.$.cropOperations.forEach(n=>{let o=this._createToggleControl(n);r.appendChild(o)}):t===D.FILTERS?[dt,...this.$.filters].forEach(n=>{let o=this._createFilterControl(n);r.appendChild(o)}):t===D.TUNING&&this.$.colorOperations.forEach(n=>{let o=this._createOperationControl(n);r.appendChild(o)}),[...r.children].forEach((n,o)=>{o===r.childNodes.length-1&&n.classList.add("controls-list_last-item")}),e.innerHTML="",e.appendChild(r)}_activateTab(t,{fromViewer:e}){this.$["*tabId"]=t,t===D.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:e})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:e}),this.$["*cropperEl"].deactivate());for(let r of X){let n=r===t,o=this.ref[`tab-toggle-${r}`];o.active=n,n?(this._renderControlsList(t),this._syncTabIndicator()):this._unmountTabControls(r),this.$[`presence.tabContent.${r}`]=n}}_unmountTabControls(t){let e=this.ref[`controls-list-${t}`];e&&(e.innerHTML="")}_syncTabIndicator(){let t=this.ref[`tab-toggle-${this.$["*tabId"]}`],e=this.ref["tabs-indicator"];e.style.transform=`translateX(${t.offsetLeft}px)`}_preloadEditedImage(){if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let t=this.$["*imgContainerEl"].offsetWidth,e=this.proxyUrl(_e(this.$["*originalUrl"],t,this.$["*editorTransformations"]));this._cancelPreload&&this._cancelPreload();let{cancel:r}=ti([e]);this._cancelPreload=()=>{r(),this._cancelPreload=void 0}}}_showLoader(t){this.$.showLoader=t}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",t=>{t&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",t=>{var r;let e=(r=t==null?void 0:t.filter)==null?void 0:r.name;this.$["*currentFilter"]!==e&&(this.$["*currentFilter"]=e)}),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",t=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(t)}),this.sub("*loadingOperations",t=>{let e=!1;for(let[,r]of t.entries()){if(e)break;for(let[,n]of r.entries())if(n){e=!0;break}}this._debouncedShowLoader(e)}),this.sub("*showSlider",t=>{this.$["presence.subToolbar"]=t,this.$["presence.mainToolbar"]=!t}),this.sub("*tabList",t=>{this.$["presence.tabToggles"]=t.length>1;for(let e of X){this.$[`presence.tabToggle.${e}`]=t.includes(e);let r=this.ref[`tab-toggle-${e}`];r.style.gridColumn=t.indexOf(e)+1}t.includes(this.$["*tabId"])||this._activateTab(t[0],{fromViewer:!1})}),this._updateInfoTooltip()}};l(ve,"EditorToolbar");ve.template=`
{{*operationTooltip}}
${X.map(Go).join("")}
${X.map(qo).join("")}
`;var Gt=class extends y{constructor(){super(),this._iconReversed=!1,this._iconSingle=!1,this._iconHidden=!1,this.init$={...this.init$,text:"",icon:"",iconCss:this._iconCss(),theme:null},this.defineAccessor("active",i=>{i?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return F("icon",{icon_left:!this._iconReversed,icon_right:this._iconReversed,icon_hidden:this._iconHidden,icon_single:this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",i=>{this._iconSingle=!this.$.text,this._iconHidden=!i,this.$.iconCss=this._iconCss()}),this.sub("theme",i=>{i!=="custom"&&(this.className=i)}),this.sub("text",i=>{this._iconSingle=!1}),this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.hasAttribute("theme")||this.setAttribute("theme","default")}set reverse(i){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};l(Gt,"LrBtnUi");Gt.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});Gt.template=`
{{text}}
`;var Ce=class extends y{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let i=this.ref["line-el"];i.style.transition="initial",i.style.opacity="0",i.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",i=>{typeof i=="boolean"&&(i?this._start():this._stop())})}_start(){this._active=!0;let{width:i}=this.getBoundingClientRect(),t=this.ref["line-el"];t.style.transition="transform 1s",t.style.opacity="1",t.style.transform=`translateX(${i}px)`,t.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};l(Ce,"LineLoaderUi");Ce.template=`
`;var Si={transition:"transition",visible:"visible",hidden:"hidden"},we=class extends y{constructor(){super(),this._visible=!1,this._visibleStyle=Si.visible,this._hiddenStyle=Si.hidden,this._externalTransitions=!1,this.defineAccessor("styles",i=>{i&&(this._externalTransitions=!0,this._visibleStyle=i.visible,this._hiddenStyle=i.hidden)}),this.defineAccessor("visible",i=>{typeof i=="boolean"&&(this._visible=i,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",vr(this,{[Si.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.setAttribute("hidden",""),this._externalTransitions||this.classList.add(Si.transition),this._handleVisible(),setTimeout(()=>this.removeAttribute("hidden"),0)}};l(we,"PresenceToggle");we.template=" ";var Te=class extends y{constructor(){super();u(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let t=parseInt(this.ref["input-el"].value,10);this._updateValue(t),this.$.onInput&&this.$.onInput(t)},"on.sliderChange":()=>{let t=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(t)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",e=>{this.$.disabled=e}),this.defineAccessor("min",e=>{this.$.min=e}),this.defineAccessor("max",e=>{this.$.max=e}),this.defineAccessor("defaultValue",e=>{this.$.defaultValue=e,this.ref["input-el"].value=e,this._updateValue(e)}),this.defineAccessor("zero",e=>{this._zero=e}),this.defineAccessor("onInput",e=>{e&&(this.$.onInput=e)}),this.defineAccessor("onChange",e=>{e&&(this.$.onChange=e)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)},0),this.sub("disabled",e=>{let r=this.ref["input-el"];e?r.setAttribute("disabled","disabled"):r.removeAttribute("disabled")});let t=this.ref["input-el"];t.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),t.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(t){this._updateZeroDot(t);let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(t-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${o}px)`})}_updateZeroDot(t){if(!this._zeroDotEl)return;t===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="0.2";let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${o}px)`})}_updateSteps(){let e=this.ref["steps-el"],{width:r}=e.getBoundingClientRect(),n=Math.ceil(r/2),o=Math.ceil(n/15)-2;if(this._stepsCount===o)return;let a=document.createDocumentFragment(),c=document.createElement("div"),h=document.createElement("div");c.className="minor-step",h.className="border-step",a.appendChild(h);for(let p=0;p
`;var ii=class extends v{constructor(){super();u(this,"activityType",_.activities.CLOUD_IMG_EDIT);this.init$={...this.init$,cdnUrl:null}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.sub("*focusedEntry",t=>{t&&(this.entry=t,this.entry.subscribe("cdnUrl",e=>{e&&(this.$.cdnUrl=e)}))}),this.subConfigValue("cropPreset",t=>{this._instance&&this._instance.getAttribute("crop-preset")!==t&&this._instance.setAttribute("crop-preset",t)}),this.subConfigValue("cloudImageEditorTabs",t=>{this._instance&&this._instance.getAttribute("tabs")!==t&&this._instance.setAttribute("tabs",t)})}handleApply(t){if(!this.entry)return;let e=t.detail;this.entry.setMultipleValues({cdnUrl:e.cdnUrl,cdnUrlModifiers:e.cdnUrlModifiers}),this.historyBack()}handleCancel(){this.historyBack()}mountEditor(){let t=new tt,e=this.$.cdnUrl,r=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;t.setAttribute("ctx-name",this.ctxName),t.setAttribute("cdn-url",e),r&&t.setAttribute("crop-preset",r),n&&t.setAttribute("tabs",n),t.addEventListener("apply",o=>this.handleApply(o)),t.addEventListener("cancel",()=>this.handleCancel()),this.innerHTML="",this.appendChild(t),this._mounted=!0,this._instance=t}unmountEditor(){this._instance=void 0,this.innerHTML=""}};l(ii,"CloudImageEditorActivity");var Ko=l(function(s){return s.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},"escapeRegExp"),$r=l(function(s,i="i"){let t=s.split("*").map(Ko);return new RegExp("^"+t.join(".+")+"$",i)},"wildcardRegexp");var Yo=l(s=>Object.keys(s).reduce((t,e)=>{let r=s[e],n=Object.keys(r).reduce((o,a)=>{let c=r[a];return o+`${a}: ${c};`},"");return t+`${e}{${n}}`},""),"styleToCss");function Sr({textColor:s,backgroundColor:i,linkColor:t,linkColorHover:e,shadeColor:r}){let n=`solid 1px ${r}`;return Yo({body:{color:s,"background-color":i},".side-bar":{background:"inherit","border-right":n},".main-content":{background:"inherit"},".main-content-header":{background:"inherit"},".main-content-footer":{background:"inherit"},".list-table-row":{color:"inherit"},".list-table-row:hover":{background:r},".list-table-row .list-table-cell-a, .list-table-row .list-table-cell-b":{"border-top":n},".list-table-body .list-items":{"border-bottom":n},".bread-crumbs a":{color:t},".bread-crumbs a:hover":{color:e},".main-content.loading":{background:`${i} url(/static/images/loading_spinner.gif) center no-repeat`,"background-size":"25px 25px"},".list-icons-item":{"background-color":r},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a":{color:t},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a:hover":{color:e},".side-bar-menu a":{color:t},".side-bar-menu a:hover":{color:e},".source-gdrive .side-bar-menu .current, .source-gdrive .side-bar-menu a:hover, .source-gphotos .side-bar-menu .current, .source-gphotos .side-bar-menu a:hover":{color:e},".source-vk .side-bar-menu a":{color:t},".source-vk .side-bar-menu a:hover":{color:e,background:"none"}})}l(Sr,"buildStyles");var It={};window.addEventListener("message",s=>{let i;try{i=JSON.parse(s.data)}catch{return}if((i==null?void 0:i.type)in It){let t=It[i.type];for(let[e,r]of t)s.source===e&&r(i)}});var Ir=l(function(s,i,t){s in It||(It[s]=[]),It[s].push([i,t])},"registerMessage"),kr=l(function(s,i){s in It&&(It[s]=It[s].filter(t=>t[0]!==i))},"unregisterMessage");function Or(s){let i=[];for(let[t,e]of Object.entries(s))e==null||typeof e=="string"&&e.length===0||i.push(`${t}=${encodeURIComponent(e)}`);return i.join("&")}l(Or,"queryString");var Ee=class extends v{constructor(){super();u(this,"activityType",_.activities.EXTERNAL);u(this,"_iframe",null);u(this,"updateCssData",l(()=>{this.isActivityActive&&(this._inheritedUpdateCssData(),this.applyStyles())},"updateCssData"));u(this,"_inheritedUpdateCssData",this.updateCssData);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],counter:0,onDone:()=>{for(let t of this.$.selectedList){let e=this.extractUrlFromMessage(t),{filename:r}=t,{externalSourceType:n}=this.activityParams;this.addFileFromUrl(e,{fileName:r,source:n})}this.$["*currentActivity"]=_.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()}}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:t}=this.activityParams;this.set$({activityCaption:`${t==null?void 0:t[0].toUpperCase()}${t==null?void 0:t.slice(1)}`,activityIcon:t}),this.mountIframe()}}),this.sub("*currentActivity",t=>{t!==this.activityType&&this.unmountIframe()}),this.sub("selectedList",t=>{this.$.counter=t.length})}extractUrlFromMessage(t){if(t.alternatives){let e=N(this.cfg.externalSourcesPreferredTypes);for(let r of e){let n=$r(r);for(let[o,a]of Object.entries(t.alternatives))if(n.test(o))return a}}return t.url}sendMessage(t){var e,r;(r=(e=this._iframe)==null?void 0:e.contentWindow)==null||r.postMessage(JSON.stringify(t),"*")}async handleFileSelected(t){this.$.selectedList=[...this.$.selectedList,t]}handleIframeLoad(){this.applyStyles()}getCssValue(t){return window.getComputedStyle(this).getPropertyValue(t).trim()}applyStyles(){let t={backgroundColor:this.getCssValue("--clr-background-light"),textColor:this.getCssValue("--clr-txt"),shadeColor:this.getCssValue("--clr-shade-lv1"),linkColor:"#157cfc",linkColorHover:"#3891ff"};this.sendMessage({type:"embed-css",style:Sr(t)})}remoteUrl(){var a,c;let t=this.cfg.pubkey,e=(!1).toString(),{externalSourceType:r}=this.activityParams,n={lang:((c=(a=this.getCssData("--l10n-locale-name"))==null?void 0:a.split("-"))==null?void 0:c[0])||"en",public_key:t,images_only:e,pass_window_open:!1,session_key:this.cfg.remoteTabSessionKey},o=new URL(this.cfg.socialBaseUrl);return o.pathname=`/window3/${r}`,o.search=Or(n),o.toString()}mountIframe(){let t=Ue({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});t.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(t),Ir("file-selected",t.contentWindow,this.handleFileSelected.bind(this)),this._iframe=t,this.$.selectedList=[]}unmountIframe(){this._iframe&&kr("file-selected",this._iframe.contentWindow),this.ref.iframeWrapper.innerHTML="",this._iframe=null,this.$.selectedList=[],this.$.counter=0}};l(Ee,"ExternalSource");Ee.template=`
{{activityCaption}}
{{counter}}
`;var Kt=class extends y{setCurrentTab(i){if(!i)return;[...this.ref.context.querySelectorAll("[tab-ctx]")].forEach(e=>{e.getAttribute("tab-ctx")===i?e.removeAttribute("hidden"):e.setAttribute("hidden","")});for(let e in this._tabMap)e===i?this._tabMap[e].setAttribute("current",""):this._tabMap[e].removeAttribute("current")}initCallback(){super.initCallback(),this._tabMap={},this.defineAccessor("tab-list",i=>{if(!i)return;N(i).forEach(e=>{let r=Ue({tag:"div",attributes:{class:"tab"},properties:{onclick:()=>{this.setCurrentTab(e)}}});r.textContent=this.l10n(e),this.ref.row.appendChild(r),this._tabMap[e]=r})}),this.defineAccessor("default",i=>{this.setCurrentTab(i)}),this.hasAttribute("default")||this.setCurrentTab(Object.keys(this._tabMap)[0])}};l(Kt,"Tabs");Kt.bindAttributes({"tab-list":null,default:null});Kt.template=`
`;var kt=class extends v{constructor(){super();u(this,"processInnerHtml",!0);u(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return kt.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,Ui(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var e,r;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(a=>a.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let a of n){let c=document.createElement("input");c.type="hidden",c.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,c.value=a!=null?a:"",this._dynamicInputsContainer.appendChild(c)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let a=o.find(p=>!p.isValid),c=(r=a==null?void 0:a.validationErrorMessage)!=null?r:(e=a==null?void 0:a.uploadError)==null?void 0:e.message,h=this.$["*message"];h=h!=null&&h.isError?`${h.caption}. ${h.text}`:void 0;let d=c!=null?c:h;d?this._validationInputElement.setCustomValidity(d):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(a=>a.isUploaded&&a.isValid)){this.$.output={groupData:void 0,files:t};return}let r=this.getUploadClientOptions(),n=t.map(a=>a.uuid+(a.cdnUrlModifiers?`/${a.cdnUrlModifiers}`:"")),o=await $s(n,r);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};l(kt,"DataOutput");kt.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var si=class extends _{};l(si,"ActivityHeader");var xe=class extends y{constructor(){super(...arguments);u(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:t=>{var e;t.preventDefault(),t.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((e=this.$.options.find(r=>r.value==this.value))==null?void 0:e.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",t=>{var r;this.$.currentText=((r=t==null?void 0:t[0])==null?void 0:r.text)||"";let e="";t==null||t.forEach(n=>{e+=``}),this.$.selectHtml=e})}};l(xe,"Select");xe.template=``;var G={PLAY:"play",PAUSE:"pause",FS_ON:"fullscreen-on",FS_OFF:"fullscreen-off",VOL_ON:"unmute",VOL_OFF:"mute",CAP_ON:"captions",CAP_OFF:"captions-off"},Lr={requestFullscreen:s=>{s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen&&s.webkitRequestFullscreen()},exitFullscreen:()=>{document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}},Z=class extends y{constructor(){super(...arguments);u(this,"init$",{...this.init$,src:"",ppIcon:G.PLAY,fsIcon:G.FS_ON,volIcon:G.VOL_ON,capIcon:G.CAP_OFF,totalTime:"00:00",currentTime:"00:00",progressCssWidth:"0",hasSubtitles:!1,volumeDisabled:!1,volumeValue:0,onPP:()=>{this.togglePlay()},onFs:()=>{this.toggleFullscreen()},onCap:()=>{this.toggleCaptions()},onMute:()=>{this.toggleSound()},onVolChange:t=>{let e=parseFloat(t.currentTarget.$.value);this.setVolume(e)},progressClicked:t=>{let e=this.progress.getBoundingClientRect();this._video.currentTime=this._video.duration*(t.offsetX/e.width)}})}togglePlay(){this._video.paused||this._video.ended?this._video.play():this._video.pause()}toggleFullscreen(){(document.fullscreenElement||document.webkitFullscreenElement)===this?Lr.exitFullscreen():Lr.requestFullscreen(this)}toggleCaptions(){this.$.capIcon===G.CAP_OFF?(this.$.capIcon=G.CAP_ON,this._video.textTracks[0].mode="showing",window.localStorage.setItem(Z.is+":captions","1")):(this.$.capIcon=G.CAP_OFF,this._video.textTracks[0].mode="hidden",window.localStorage.removeItem(Z.is+":captions"))}toggleSound(){this.$.volIcon===G.VOL_ON?(this.$.volIcon=G.VOL_OFF,this.$.volumeDisabled=!0,this._video.muted=!0):(this.$.volIcon=G.VOL_ON,this.$.volumeDisabled=!1,this._video.muted=!1)}setVolume(t){window.localStorage.setItem(Z.is+":volume",t);let e=t?t/100:0;this._video.volume=e}get progress(){return this.ref.progress}_getUrl(t){return t.includes("/")?t:`https://ucarecdn.com/${t}/`}_desc2attrs(t){let e=[];for(let r in t){let n=r==="src"?this._getUrl(t[r]):t[r];e.push(`${r}="${n}"`)}return e.join(" ")}_timeFmt(t){let e=new Date(Math.round(t)*1e3);return[e.getMinutes(),e.getSeconds()].map(r=>r<10?"0"+r:r).join(":")}_initTracks(){[...this._video.textTracks].forEach(t=>{t.mode="hidden"}),window.localStorage.getItem(Z.is+":captions")&&this.toggleCaptions()}_castAttributes(){let t=["autoplay","loop","muted"];[...this.attributes].forEach(e=>{t.includes(e.name)&&this._video.setAttribute(e.name,e.value)})}initCallback(){super.initCallback(),this._video=this.ref.video,this._castAttributes(),this._video.addEventListener("play",()=>{this.$.ppIcon=G.PAUSE,this.setAttribute("playback","")}),this._video.addEventListener("pause",()=>{this.$.ppIcon=G.PLAY,this.removeAttribute("playback")}),this.addEventListener("fullscreenchange",e=>{console.log(e),document.fullscreenElement===this?this.$.fsIcon=G.FS_OFF:this.$.fsIcon=G.FS_ON}),this.sub("src",e=>{if(!e)return;let r=this._getUrl(e);this._video.src=r}),this.sub("video",async e=>{if(!e)return;let r=await(await window.fetch(this._getUrl(e))).json();r.poster&&(this._video.poster=this._getUrl(r.poster));let n="";r==null||r.sources.forEach(o=>{n+=``}),r.tracks&&(r.tracks.forEach(o=>{n+=``}),this.$.hasSubtitles=!0),this._video.innerHTML+=n,this._initTracks(),console.log(r)}),this._video.addEventListener("loadedmetadata",e=>{this.$.currentTime=this._timeFmt(this._video.currentTime),this.$.totalTime=this._timeFmt(this._video.duration)}),this._video.addEventListener("timeupdate",e=>{let r=Math.round(100*(this._video.currentTime/this._video.duration));this.$.progressCssWidth=r+"%",this.$.currentTime=this._timeFmt(this._video.currentTime)});let t=window.localStorage.getItem(Z.is+":volume");if(t){let e=parseFloat(t);this.setVolume(e),this.$.volumeValue=e}}};l(Z,"Video");Z.template=`
{{currentTime}} / {{totalTime}}
`;Z.bindAttributes({video:"video",src:"src"});var Zo="css-src";function ri(s){return class extends s{constructor(){super(...arguments);u(this,"renderShadow",!0);u(this,"pauseRender",!0);u(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),hi({element:this,attribute:Zo,onSuccess:t=>{this.attachShadow({mode:"open"});let e=document.createElement("link");e.rel="stylesheet",e.type="text/css",e.href=t,e.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(e)},onTimeout:()=>{console.error("Attribute `css-src` is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}l(ri,"shadowed");var Yt=class extends ri(y){};l(Yt,"ShadowWrapper");var Ae=class extends y{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};l(Ae,"Copyright"),u(Ae,"template",`Powered by Uploadcare`);var vt=class extends Yt{constructor(){super(...arguments);u(this,"requireCtxName",!0);u(this,"init$",yi(this));u(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};l(vt,"SolutionBlock");var $e=class extends vt{};l($e,"FileUploaderRegular");$e.template=``;var Se=class extends vt{constructor(){super(...arguments);u(this,"pauseRender",!0)}shadowReadyCallback(){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)})}};l(Se,"FileUploaderMinimal");Se.template=``;var Ie=class extends vt{constructor(){super(),this.init$={...this.init$,couldBackHistory:!1}}shadowReadyCallback(){let i=this.ref.uBlock;this.sub("*currentActivity",t=>{t||(this.$["*currentActivity"]=i.initActivity||_.activities.START_FROM)}),this.sub("*uploadList",t=>{(t==null?void 0:t.length)>0&&this.$["*currentActivity"]===(i.initActivity||_.activities.START_FROM)&&(this.$["*currentActivity"]=_.activities.UPLOAD_LIST)}),this.sub("*history",t=>this.$.couldBackHistory=t.length>1)}};l(Ie,"FileUploaderInline");Ie.template=``;var ni=class extends ri(tt){shadowReadyCallback(){this.__shadowReady=!0,this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async initEditor(){this.__shadowReady&&await super.initEditor()}};l(ni,"CloudImageEditor");function Ii(s){for(let i in s){let t=[...i].reduce((e,r)=>(r.toUpperCase()===r&&(r="-"+r.toLowerCase()),e+=r),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),s[i].reg&&s[i].reg(t)}}l(Ii,"registerBlocks");var rs="LR";async function Ur(s,i=!1){return new Promise((t,e)=>{if(typeof document!="object"){t(null);return}if(typeof window=="object"&&window[rs]){t(window[rs]);return}let r=document.createElement("script");r.async=!0,r.src=s,r.onerror=()=>{e()},r.onload=()=>{let n=window[rs];i&&Ii(n),t(n)},document.head.appendChild(r)})}l(Ur,"connectBlocksFrom");return Br(Jo);})(); \ No newline at end of file +"use strict";var LR=(()=>{var Ie=Object.defineProperty;var Pr=Object.getOwnPropertyDescriptor;var Mr=Object.getOwnPropertyNames;var Nr=Object.prototype.hasOwnProperty;var Dr=(s,i,t)=>i in s?Ie(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t;var l=(s,i)=>Ie(s,"name",{value:i,configurable:!0});var Fr=(s,i)=>{for(var t in i)Ie(s,t,{get:i[t],enumerable:!0})},Vr=(s,i,t,e)=>{if(i&&typeof i=="object"||typeof i=="function")for(let r of Mr(i))!Nr.call(s,r)&&r!==t&&Ie(s,r,{get:()=>i[r],enumerable:!(e=Pr(i,r))||e.enumerable});return s};var Br=s=>Vr(Ie({},"__esModule",{value:!0}),s);var u=(s,i,t)=>(Dr(s,typeof i!="symbol"?i+"":i,t),t);var Jo={};Fr(Jo,{ActivityBlock:()=>_,ActivityHeader:()=>si,BaseComponent:()=>Lt,Block:()=>y,CameraSource:()=>he,CloudImageEditor:()=>ni,CloudImageEditorActivity:()=>ii,CloudImageEditorBlock:()=>tt,Config:()=>or,ConfirmationDialog:()=>de,Copyright:()=>Ae,CropFrame:()=>me,Data:()=>S,DataOutput:()=>It,DropArea:()=>Bt,EditorCropButtonControl:()=>Xt,EditorFilterControl:()=>St,EditorImageCropper:()=>be,EditorImageFader:()=>ei,EditorOperationControl:()=>qt,EditorScroller:()=>ye,EditorSlider:()=>ge,EditorToolbar:()=>ve,ExternalSource:()=>xe,FileItem:()=>it,FilePreview:()=>Ht,FileUploaderInline:()=>ke,FileUploaderMinimal:()=>Se,FileUploaderRegular:()=>$e,Icon:()=>Dt,Img:()=>Ge,LineLoaderUi:()=>Ce,LrBtnUi:()=>Gt,MessageBox:()=>le,Modal:()=>jt,PACKAGE_NAME:()=>Yi,PACKAGE_VERSION:()=>Zi,PresenceToggle:()=>we,ProgressBar:()=>fe,ProgressBarCommon:()=>pe,Select:()=>Ee,ShadowWrapper:()=>Yt,SimpleBtn:()=>Vt,SliderUi:()=>Te,SourceBtn:()=>zt,SourceList:()=>Ke,StartFrom:()=>oe,Tabs:()=>Kt,UploadCtxProvider:()=>_r,UploadDetails:()=>ue,UploadList:()=>ae,UploaderBlock:()=>v,UrlSource:()=>ce,Video:()=>Z,connectBlocksFrom:()=>Rr,registerBlocks:()=>ki,shadowed:()=>ri,toKebabCase:()=>rt});var zr=Object.defineProperty,jr=l((s,i,t)=>i in s?zr(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t,"__defNormalProp"),Li=l((s,i,t)=>(jr(s,typeof i!="symbol"?i+"":i,t),t),"__publicField");function Hr(s){let i=l(t=>{var e;for(let r in t)((e=t[r])==null?void 0:e.constructor)===Object&&(t[r]=i(t[r]));return{...t}},"clone");return i(s)}l(Hr,"cloneObj");var S=l(class{constructor(s){s.constructor===Object?this.store=Hr(s):(this._storeIsProxy=!0,this.store=s),this.callbackMap=Object.create(null)}static warn(s,i){console.warn(`Symbiote Data: cannot ${s}. Prop name: `+i)}read(s){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?(S.warn("read",s),null):this.store[s]}has(s){return this._storeIsProxy?this.store[s]!==void 0:this.store.hasOwnProperty(s)}add(s,i,t=!1){!t&&Object.keys(this.store).includes(s)||(this.store[s]=i,this.notify(s))}pub(s,i){if(!this._storeIsProxy&&!this.store.hasOwnProperty(s)){S.warn("publish",s);return}this.store[s]=i,this.notify(s)}multiPub(s){for(let i in s)this.pub(i,s[i])}notify(s){this.callbackMap[s]&&this.callbackMap[s].forEach(i=>{i(this.store[s])})}sub(s,i,t=!0){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?(S.warn("subscribe",s),null):(this.callbackMap[s]||(this.callbackMap[s]=new Set),this.callbackMap[s].add(i),t&&i(this.store[s]),{remove:()=>{this.callbackMap[s].delete(i),this.callbackMap[s].size||delete this.callbackMap[s]},callback:i})}static registerCtx(s,i=Symbol()){let t=S.globalStore.get(i);return t?console.warn('State: context UID "'+i+'" already in use'):(t=new S(s),S.globalStore.set(i,t)),t}static deleteCtx(s){S.globalStore.delete(s)}static getCtx(s,i=!0){return S.globalStore.get(s)||(i&&console.warn('State: wrong context UID - "'+s+'"'),null)}},"Data");S.globalStore=new Map;var w=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"}),ls="1234567890QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm",Wr=ls.length-1,Le=l(class{static generate(s="XXXXXXXXX-XXX"){let i="";for(let t=0;t{ai&&t?i[0].toUpperCase()+i.slice(1):i).join("").split("_").map((i,t)=>i&&t?i.toUpperCase():i).join("")}l(Xr,"kebabToCamel");function qr(s,i){[...s.querySelectorAll(`[${w.REPEAT_ATTR}]`)].forEach(t=>{let e=t.getAttribute(w.REPEAT_ITEM_TAG_ATTR),r;if(e&&(r=window.customElements.get(e)),!r){r=l(class extends i.BaseComponent{constructor(){super(),e||(this.style.display="contents")}},"itemClass");let o=t.innerHTML;r.template=o,r.reg(e)}for(;t.firstChild;)t.firstChild.remove();let n=t.getAttribute(w.REPEAT_ATTR);i.sub(n,o=>{if(!o){for(;t.firstChild;)t.firstChild.remove();return}let a=[...t.children],c,h=l(d=>{d.forEach((f,g)=>{if(a[g])if(a[g].set$)setTimeout(()=>{a[g].set$(f)});else for(let m in f)a[g][m]=f[m];else{c||(c=new DocumentFragment);let m=new r;Object.assign(m.init$,f),c.appendChild(m)}}),c&&t.appendChild(c);let p=a.slice(d.length,a.length);for(let f of p)f.remove()},"fillItems");if(o.constructor===Array)h(o);else if(o.constructor===Object){let d=[];for(let p in o){let f=o[p];Object.defineProperty(f,"_KEY_",{value:p,enumerable:!0}),d.push(f)}h(d)}else console.warn("Symbiote repeat data type error:"),console.log(o)}),t.removeAttribute(w.REPEAT_ATTR),t.removeAttribute(w.REPEAT_ITEM_TAG_ATTR)})}l(qr,"repeatProcessor");var ns="__default__";function Gr(s,i){if(i.shadowRoot)return;let t=[...s.querySelectorAll("slot")];if(!t.length)return;let e={};t.forEach(r=>{let n=r.getAttribute("name")||ns;e[n]={slot:r,fr:document.createDocumentFragment()}}),i.initChildren.forEach(r=>{var n;let o=ns;r instanceof Element&&r.hasAttribute("slot")&&(o=r.getAttribute("slot"),r.removeAttribute("slot")),(n=e[o])==null||n.fr.appendChild(r)}),Object.values(e).forEach(r=>{if(r.fr.childNodes.length)r.slot.parentNode.replaceChild(r.fr,r.slot);else if(r.slot.childNodes.length){let n=document.createDocumentFragment();n.append(...r.slot.childNodes),r.slot.parentNode.replaceChild(n,r.slot)}else r.slot.remove()})}l(Gr,"slotProcessor");function Kr(s,i){[...s.querySelectorAll(`[${w.EL_REF_ATTR}]`)].forEach(t=>{let e=t.getAttribute(w.EL_REF_ATTR);i.ref[e]=t,t.removeAttribute(w.EL_REF_ATTR)})}l(Kr,"refProcessor");function Yr(s,i){[...s.querySelectorAll(`[${w.BIND_ATTR}]`)].forEach(t=>{let r=t.getAttribute(w.BIND_ATTR).split(";");[...t.attributes].forEach(n=>{if(n.name.startsWith("-")&&n.value){let o=Xr(n.name.replace("-",""));r.push(o+":"+n.value),t.removeAttribute(n.name)}}),r.forEach(n=>{if(!n)return;let o=n.split(":").map(d=>d.trim()),a=o[0],c;a.indexOf(w.ATTR_BIND_PRFX)===0&&(c=!0,a=a.replace(w.ATTR_BIND_PRFX,""));let h=o[1].split(",").map(d=>d.trim());for(let d of h){let p;d.startsWith("!!")?(p="double",d=d.replace("!!","")):d.startsWith("!")&&(p="single",d=d.replace("!","")),i.sub(d,f=>{p==="double"?f=!!f:p==="single"&&(f=!f),c?(f==null?void 0:f.constructor)===Boolean?f?t.setAttribute(a,""):t.removeAttribute(a):t.setAttribute(a,f):as(t,a,f)||(t[w.SET_LATER_KEY]||(t[w.SET_LATER_KEY]=Object.create(null)),t[w.SET_LATER_KEY][a]=f)})}}),t.removeAttribute(w.BIND_ATTR)})}l(Yr,"domSetProcessor");var oi="{{",Oe="}}",Zr="skip-text";function Jr(s){let i,t=[],e=document.createTreeWalker(s,NodeFilter.SHOW_TEXT,{acceptNode:r=>{var n;return!((n=r.parentElement)!=null&&n.hasAttribute(Zr))&&r.textContent.includes(oi)&&r.textContent.includes(Oe)&&1}});for(;i=e.nextNode();)t.push(i);return t}l(Jr,"getTextNodesWithTokens");var Qr=l(function(s,i){Jr(s).forEach(e=>{let r=[],n;for(;e.textContent.includes(Oe);)e.textContent.startsWith(oi)?(n=e.textContent.indexOf(Oe)+Oe.length,e.splitText(n),r.push(e)):(n=e.textContent.indexOf(oi),e.splitText(n)),e=e.nextSibling;r.forEach(o=>{let a=o.textContent.replace(oi,"").replace(Oe,"");o.textContent="",i.sub(a,c=>{o.textContent=c})})})},"txtNodesProcessor"),tn=[qr,Gr,Kr,Yr,Qr],li="'",Jt='"',en=/\\([0-9a-fA-F]{1,6} ?)/g;function sn(s){return(s[0]===Jt||s[0]===li)&&(s[s.length-1]===Jt||s[s.length-1]===li)}l(sn,"hasLeadingTrailingQuotes");function rn(s){return(s[0]===Jt||s[0]===li)&&(s=s.slice(1)),(s[s.length-1]===Jt||s[s.length-1]===li)&&(s=s.slice(0,-1)),s}l(rn,"trimQuotes");function nn(s){let i="",t="";for(var e=0;eString.fromCodePoint(parseInt(e.trim(),16))),i=i.replaceAll(`\\ +`,"\\n"),i=nn(i),i=Jt+i+Jt);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${s}`)}}l(on,"parseCssPropertyValue");var os=0,Zt=null,mt=null,Ct=l(class extends HTMLElement{constructor(){super(),Li(this,"updateCssData",()=>{var s;this.dropCssDataCache(),(s=this.__boundCssProps)==null||s.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 Ct}initCallback(){}__initCallback(){var s;this.__initialized||(this.__initialized=!0,(s=this.initCallback)==null||s.call(this))}render(s,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let r=this.getAttribute(w.USE_TPL);if(r){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(r))||document.querySelector(r);o?s=o.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)t=s;else if((s==null?void 0:s.constructor)===String){let r=document.createElement("template");r.innerHTML=s,t=r.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let r of this.tplProcessors)r(t,this)}let e=l(()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()},"addFr");if(this.constructor.__shadowStylesUrl){i=!0;let r=document.createElement("link");r.rel="stylesheet",r.href=this.constructor.__shadowStylesUrl,r.onload=e,this.shadowRoot.prepend(r)}else e()}addTemplateProcessor(s){this.tplProcessors.add(s)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=Le.generate(),this.style.setProperty(w.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(w.CSS_CTX_PROP,!0)}get ctxName(){var s;let i=((s=this.getAttribute(w.CTX_NAME_ATTR))==null?void 0:s.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=S.registerCtx({},this)),this.__localCtx}get nodeCtx(){return S.getCtx(this.ctxName,!1)||S.registerCtx({},this.ctxName)}static __parseProp(s,i){let t,e;if(s.startsWith(w.EXT_DATA_CTX_PRFX))t=i.nodeCtx,e=s.replace(w.EXT_DATA_CTX_PRFX,"");else if(s.includes(w.NAMED_DATA_CTX_SPLTR)){let r=s.split(w.NAMED_DATA_CTX_SPLTR);t=S.getCtx(r[0]),e=r[1]}else t=i.localCtx,e=s;return{ctx:t,name:e}}sub(s,i,t=!0){let e=l(n=>{this.isConnected&&i(n)},"subCb"),r=Ct.__parseProp(s,this);r.ctx.has(r.name)?this.allSubs.add(r.ctx.sub(r.name,e,t)):window.setTimeout(()=>{this.allSubs.add(r.ctx.sub(r.name,e,t))})}notify(s){let i=Ct.__parseProp(s,this);i.ctx.notify(i.name)}has(s){let i=Ct.__parseProp(s,this);return i.ctx.has(i.name)}add(s,i,t=!1){let e=Ct.__parseProp(s,this);e.ctx.add(e.name,i,t)}add$(s,i=!1){for(let t in s)this.add(t,s[t],i)}get $(){if(!this.__stateProxy){let s=Object.create(null);this.__stateProxy=new Proxy(s,{set:(i,t,e)=>{let r=Ct.__parseProp(t,this);return r.ctx.pub(r.name,e),!0},get:(i,t)=>{let e=Ct.__parseProp(t,this);return e.ctx.read(e.name)}})}return this.__stateProxy}set$(s,i=!1){for(let t in s){let e=s[t];i||![String,Number,Boolean].includes(e==null?void 0:e.constructor)?this.$[t]=e:this.$[t]!==e&&(this.$[t]=e)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(w.CTX_OWNER_ATTR)&&this.getAttribute(w.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let s=this.constructor.__attrDesc;if(s)for(let i of Object.values(s))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(w.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(w.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(w.NAMED_DATA_CTX_SPLTR)){let t=i.split(w.NAMED_DATA_CTX_SPLTR),e=t[0].trim(),r=t[1].trim();if(e&&r){let n=S.getCtx(e,!1);n||(n=S.registerCtx({},e)),n.add(r,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var s;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(s=this.getAttribute(w.CTX_NAME_ATTR))==null?void 0:s.trim();if(i&&this.style.setProperty(w.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[w.SET_LATER_KEY]){for(let t in this[w.SET_LATER_KEY])as(this,t,this[w.SET_LATER_KEY][t]);delete this[w.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of tn)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${w.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let r=this.constructor.__rootStylesLink.cloneNode(!0);r.setAttribute(w.ROOT_STYLE_ATTR_NAME,this.constructor.is),r.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(r):t.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);mt==null||mt.delete(this.updateCssData),mt!=null&&mt.size||(Zt==null||Zt.disconnect(),Zt=null,mt=null)},100)))}static reg(s,i=!1){s||(os++,s=`${w.AUTO_TAG_PRFX}-${os}`),this.__tag=s;let t=window.customElements.get(s);if(t){!i&&t!==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(` `));return}window.customElements.define(s,i?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,i,t){var e;if(i===t)return;let r=(e=this.constructor.__attrDesc)==null?void 0:e[s];r?this.__dataCtxInitialized?this.$[r]=t:this.init$[r]=t:this[s]=t}getCssData(s,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(s)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(s).trim();try{this.__cssDataCache[s]=on(t)}catch{!i&&console.warn(`CSS Data error: ${s}`),this.__cssDataCache[s]=null}}return this.__cssDataCache[s]}__extractCssName(s){return s.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){mt||(mt=new Set),mt.add(this.updateCssData),Zt||(Zt=new MutationObserver(s=>{s[0].type==="attributes"&&mt.forEach(i=>{i()})}),Zt.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(s,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(s);let t=this.getCssData(this.__extractCssName(s),!0);t===null&&(t=i),this.add(s,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(s,i,t){let e="__"+s;this[e]=this[s],Object.defineProperty(this,s,{set:r=>{this[e]=r,t?window.setTimeout(()=>{i==null||i(r)}):i==null||i(r)},get:()=>this[e]}),this[s]=this[e]}static set shadowStyles(s){let i=new Blob([s],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(s){if(!this.__rootStylesLink){let i=new Blob([s],{type:"text/css"}),t=URL.createObjectURL(i),e=document.createElement("link");e.href=t,e.rel="stylesheet",this.__rootStylesLink=e}}},"_BaseComponent"),Lt=Ct;Li(Lt,"template");var Oi=l(class{static _print(s){console.warn(s)}static setDefaultTitle(s){this.defaultTitle=s}static setRoutingMap(s){Object.assign(this.appMap,s);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}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(t=>{if(t.includes("?"))s.route=t.replace("?","");else if(t.includes("=")){let e=t.split("=");s.options[e[0]]=decodeURI(e[1])}else s.options[t]=!0}),s}static notify(){let s=this.readAddressBar(),i=this.appMap[s.route];if(i&&i.title&&(document.title=i.title),s.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${s.route}" not found...`);return}let t=new CustomEvent(Oi.routingEventName,{detail:{route:s.route,options:Object.assign(i||{},s.options)}});window.dispatchEvent(t)}static reflect(s,i={}){let t=this.appMap[s];if(!t){this._print("Wrong route: "+s);return}let e="?"+s;for(let n in i)i[n]===!0?e+=this.separator+n:e+=this.separator+n+`=${i[n]}`;let r=t.title||this.defaultTitle||"";window.history.pushState(null,r,e),document.title=r}static applyRoute(s,i={}){this.reflect(s,i),this.notify()}static setSeparator(s){this._separator=s}static get separator(){return this._separator||"&"}static createRouterData(s,i){this.setRoutingMap(i);let t=S.registerCtx({route:null,options:null,title:null},s);return window.addEventListener(this.routingEventName,e=>{var r;t.multiPub({route:e.detail.route,options:e.detail.options,title:((r=e.detail.options)==null?void 0:r.title)||this.defaultTitle||""})}),Oi.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}},"AppRouter");Oi.appMap=Object.create(null);function Ri(s,i){for(let t in i)t.includes("-")?s.style.setProperty(t,i[t]):s.style[t]=i[t]}l(Ri,"applyStyles");function ln(s,i){for(let t in i)i[t].constructor===Boolean?i[t]?s.setAttribute(t,""):s.removeAttribute(t):s.setAttribute(t,i[t])}l(ln,"applyAttributes");function Re(s={tag:"div"}){let i=document.createElement(s.tag);if(s.attributes&&ln(i,s.attributes),s.styles&&Ri(i,s.styles),s.properties)for(let t in s.properties)i[t]=s.properties[t];return s.processors&&s.processors.forEach(t=>{t(i)}),s.children&&s.children.forEach(t=>{let e=Re(t);i.appendChild(e)}),i}l(Re,"create");var cs="idb-store-ready",an="symbiote-db",cn="symbiote-idb-update_",hn=l(class{_notifyWhenReady(s=null){window.dispatchEvent(new CustomEvent(cs,{detail:{dbName:this.name,storeName:this.storeName,event:s}}))}get _updEventName(){return cn+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,i){this.name=s,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=e=>{this._notifyWhenReady(e)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async r=>{r(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(s){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(s);return new Promise((e,r)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?e(n.target.result._value):(e(null),console.warn(`IDB: cannot read "${s}"`))},t.onerror=n=>{r(n)}})}write(s,i,t=!1){let e={_key:s,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(e);return new Promise((o,a)=>{n.onsuccess=c=>{t||this._notifySubscribers(s),o(c.target.result)},n.onerror=c=>{a(c)}})}delete(s,i=!1){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(s);return new Promise((r,n)=>{e.onsuccess=o=>{i||this._notifySubscribers(s),r(o)},e.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,e)=>{i.onsuccess=r=>{let n=r.target.result;t(n.map(o=>o._value))},i.onerror=r=>{e(r)}})}subscribe(s,i){this._subscriptionsMap[s]||(this._subscriptionsMap[s]=new Set);let t=this._subscriptionsMap[s];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[s]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,hs.clear(this.name)}},"DbInstance"),hs=l(class{static get readyEventName(){return cs}static open(s=an,i="store"){let t=s+"/"+i;return this._reg[t]||(this._reg[t]=new hn(s,i)),this._reg[t]}static clear(s){window.indexedDB.deleteDatabase(s);for(let i in this._reg)i.split("/")[0]===s&&delete this._reg[i]}},"IDB");Li(hs,"_reg",Object.create(null));var k=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),un=Object.freeze({[k.UPLOAD_START]:"LR_UPLOAD_START",[k.REMOVE]:"LR_REMOVE",[k.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[k.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[k.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[k.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[k.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[k.DATA_OUTPUT]:"LR_DATA_OUTPUT",[k.DONE_FLOW]:"LR_DONE_FLOW",[k.INIT_FLOW]:"LR_INIT_FLOW"}),Ue=class{constructor(i){u(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var r;(r=this._target)==null||r.dispatchEvent(new CustomEvent(i,{detail:t}));let e=un[i];window.dispatchEvent(new CustomEvent(e,{detail:{ctx:this._getCtxName(),type:e,data:t}}))}emit(i,t,{debounce:e}={}){if(typeof e!="number"&&!e){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let r=typeof e=="number"?e:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},r);this._timeoutStore.set(i,n)}};l(Ue,"EventEmitter");function I(s,i){let t,e=l((...r)=>{clearTimeout(t),t=setTimeout(()=>s(...r),i)},"debounced");return e.cancel=()=>{clearTimeout(t)},e}l(I,"debounce");var dn="--uploadcare-blocks-window-height",ai="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function Ui(){return typeof window[ai]=="undefined"?!1:!!window[ai]}l(Ui,"getIsWindowHeightTracked");function us(){if(Ui())return;let s=l(()=>{document.documentElement.style.setProperty(dn,`${window.innerHeight}px`),window[ai]=!0},"callback"),i=I(s,100);return window.addEventListener("resize",i,{passive:!0}),s(),()=>{window[ai]=!1,window.removeEventListener("resize",i)}}l(us,"createWindowHeightTracker");var ci=l((s,i)=>new Intl.PluralRules(s).select(i),"getPluralForm");var pn=l(s=>s,"DEFAULT_TRANSFORMER"),Pi="{{",ps="}}",ds="plural:";function Pe(s,i,t={}){var o;let{openToken:e=Pi,closeToken:r=ps,transform:n=pn}=t;for(let a in i){let c=(o=i[a])==null?void 0:o.toString();s=s.replaceAll(e+a+r,typeof c=="string"?n(c):c)}return s}l(Pe,"applyTemplateData");function fs(s){let i=[],t=s.indexOf(Pi);for(;t!==-1;){let e=s.indexOf(ps,t),r=s.substring(t+2,e);if(r.startsWith(ds)){let n=s.substring(t+2,e).replace(ds,""),o=n.substring(0,n.indexOf("(")),a=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:r,pluralKey:o,countVariable:a})}t=s.indexOf(Pi,e)}return i}l(fs,"getPluralObjects");var rt=l(s=>{var i;return(i=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:i.map(t=>t.toLowerCase()).join("-")},"toKebabCase");var hi=l(({element:s,attribute:i,onSuccess:t,onTimeout:e,timeout:r=300})=>{let n=setTimeout(()=>{c.disconnect(),e()},r),o=l(h=>{let d=s.getAttribute(i);h.type==="attributes"&&h.attributeName===i&&d!==null&&(clearTimeout(n),c.disconnect(),t(d))},"handleMutation"),a=s.getAttribute(i);a!==null&&(clearTimeout(n),t(a));let c=new MutationObserver(h=>{let d=h[h.length-1];o(d)});c.observe(s,{attributes:!0,attributeFilter:[i]})},"waitForAttribute");var ms=new Set;function Me(s){ms.has(s)||(ms.add(s),console.warn(s))}l(Me,"warnOnce");function gs(s){return Object.prototype.toString.call(s)==="[object Object]"}l(gs,"isObject");var fn=/\W|_/g;function mn(s){return s.split(fn).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}l(mn,"camelizeString");function _s(s,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(s)?s.map(t=>bt(t,{ignoreKeys:i})):s}l(_s,"camelizeArrayItems");function bt(s,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(s))return _s(s,{ignoreKeys:i});if(!gs(s))return s;let t={};for(let e of Object.keys(s)){let r=s[e];if(i.includes(e)){t[e]=r;continue}gs(r)?r=bt(r,{ignoreKeys:i}):Array.isArray(r)&&(r=_s(r,{ignoreKeys:i})),t[mn(e)]=r}return t}l(bt,"camelizeKeys");var gn=l(s=>new Promise(i=>setTimeout(i,s)),"delay");function Fi({libraryName:s,libraryVersion:i,userAgent:t,publicKey:e="",integration:r=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:e,libraryName:s,libraryVersion:i,languageName:n,integration:r});let o=[s,i,e].filter(Boolean).join("/"),a=[n,r].filter(Boolean).join("; ");return`${o} (${a})`}l(Fi,"getUserAgent$1");var _n={factor:2,time:100};function bn(s,i=_n){let t=0;function e(r){let n=Math.round(i.time*i.factor**t);return r({attempt:t,retry:l(a=>gn(a!=null?a:n).then(()=>(t+=1,e(r))),"retry")})}return l(e,"runAttempt"),e(s)}l(bn,"retrier");var Rt=class extends Error{constructor(t){super();u(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,Rt.prototype),this.originalProgressEvent=t}};l(Rt,"UploadcareNetworkError");var fi=l((s,i)=>{s&&(s.aborted?Promise.resolve().then(i):s.addEventListener("abort",()=>i(),{once:!0}))},"onCancel"),gt=class extends Error{constructor(t="Request canceled"){super(t);u(this,"isCancel",!0);Object.setPrototypeOf(this,gt.prototype)}};l(gt,"CancelError");var yn=500,ys=l(({check:s,interval:i=yn,timeout:t,signal:e})=>new Promise((r,n)=>{let o,a;fi(e,()=>{o&&clearTimeout(o),n(new gt("Poll cancelled"))}),t&&(a=setTimeout(()=>{o&&clearTimeout(o),n(new gt("Timed out"))},t));let c=l(()=>{try{Promise.resolve(s(e)).then(h=>{h?(a&&clearTimeout(a),r(h)):o=setTimeout(c,i)}).catch(h=>{a&&clearTimeout(a),n(h)})}catch(h){a&&clearTimeout(a),n(h)}},"tick");o=setTimeout(c,0)}),"poll"),A={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"},mi="application/octet-stream",vs="original",wt=l(({method:s,url:i,data:t,headers:e={},signal:r,onProgress:n})=>new Promise((o,a)=>{let c=new XMLHttpRequest,h=(s==null?void 0:s.toUpperCase())||"GET",d=!1;c.open(h,i,!0),e&&Object.entries(e).forEach(p=>{let[f,g]=p;typeof g!="undefined"&&!Array.isArray(g)&&c.setRequestHeader(f,g)}),c.responseType="text",fi(r,()=>{d=!0,c.abort(),a(new gt)}),c.onload=()=>{if(c.status!=200)a(new Error(`Error ${c.status}: ${c.statusText}`));else{let p={method:h,url:i,data:t,headers:e||void 0,signal:r,onProgress:n},f=c.getAllResponseHeaders().trim().split(/[\r\n]+/),g={};f.forEach(function($){let E=$.split(": "),x=E.shift(),T=E.join(": ");x&&typeof x!="undefined"&&(g[x]=T)});let m=c.response,b=c.status;o({request:p,data:m,headers:g,status:b})}},c.onerror=p=>{d||a(new Rt(p))},n&&typeof n=="function"&&(c.upload.onprogress=p=>{p.lengthComputable?n({isComputable:!0,value:p.loaded/p.total}):n({isComputable:!1})}),t?c.send(t):c.send()}),"request");function vn(s,...i){return s}l(vn,"identity");var Cn=l(({name:s})=>s?[s]:[],"getFileOptions"),wn=vn,Tn=l(()=>new FormData,"getFormData"),Cs=l(s=>!1,"isBuffer"),gi=l(s=>typeof Blob!="undefined"&&s instanceof Blob,"isBlob"),_i=l(s=>typeof File!="undefined"&&s instanceof File,"isFile"),bi=l(s=>!!s&&typeof s=="object"&&!Array.isArray(s)&&"uri"in s&&typeof s.uri=="string","isReactNativeAsset"),Qt=l(s=>gi(s)||_i(s)||Cs()||bi(s),"isFileData"),xn=l(s=>typeof s=="string"||typeof s=="number"||typeof s=="undefined","isSimpleValue"),En=l(s=>!!s&&typeof s=="object"&&!Array.isArray(s),"isObjectValue"),An=l(s=>!!s&&typeof s=="object"&&"data"in s&&Qt(s.data),"isFileValue");function $n(s,i,t){if(An(t)){let{name:e,contentType:r}=t,n=wn(t.data,e,r!=null?r:mi),o=Cn({name:e,contentType:r});s.push([i,n,...o])}else if(En(t))for(let[e,r]of Object.entries(t))typeof r!="undefined"&&s.push([`${i}[${e}]`,String(r)]);else xn(t)&&t&&s.push([i,t.toString()])}l($n,"collectParams");function Sn(s){let i=[];for(let[t,e]of Object.entries(s))$n(i,t,e);return i}l(Sn,"getFormDataParams");function Vi(s){let i=Tn(),t=Sn(s);for(let e of t){let[r,n,...o]=e;i.append(r,n,...o)}return i}l(Vi,"buildFormData");var U=class extends Error{constructor(t,e,r,n,o){super();u(this,"isCancel");u(this,"code");u(this,"request");u(this,"response");u(this,"headers");this.name="UploadClientError",this.message=t,this.code=e,this.request=r,this.response=n,this.headers=o,Object.setPrototypeOf(this,U.prototype)}};l(U,"UploadClientError");var kn=l(s=>{let i=new URLSearchParams;for(let[t,e]of Object.entries(s))e&&typeof e=="object"&&!Array.isArray(e)?Object.entries(e).filter(r=>{var n;return(n=r[1])!=null?n:!1}).forEach(r=>i.set(`${t}[${r[0]}]`,String(r[1]))):Array.isArray(e)?e.forEach(r=>{i.append(`${t}[]`,r)}):typeof e=="string"&&e?i.set(t,e):typeof e=="number"&&i.set(t,e.toString());return i.toString()},"buildSearchParams"),_t=l((s,i,t)=>{let e=new URL(s);return e.pathname=(e.pathname+i).replace("//","/"),t&&(e.search=kn(t)),e.toString()},"getUrl"),In="6.8.0",On="UploadcareUploadClient",Ln=In;function Ut(s){return Fi({libraryName:On,libraryVersion:Ln,...s})}l(Ut,"getUserAgent");var Rn="RequestThrottledError",bs=15e3,Un=1e3;function Pn(s){let{headers:i}=s||{};if(!i||typeof i["retry-after"]!="string")return bs;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:bs}l(Pn,"getTimeoutFromThrottledRequest");function Tt(s,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:e}=i;return bn(({attempt:r,retry:n})=>s().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===Rn&&r{let i="";return(gi(s)||_i(s)||bi(s))&&(i=s.type),i||mi},"getContentType"),Ts=l(s=>{let i="";return _i(s)&&s.name?i=s.name:gi(s)||Cs()?i="":bi(s)&&s.name&&(i=s.name),i||vs},"getFileName");function Bi(s){return typeof s=="undefined"||s==="auto"?"auto":s?"1":"0"}l(Bi,"getStoreValue");function Mn(s,{publicKey:i,fileName:t,contentType:e,baseURL:r=A.baseURL,secureSignature:n,secureExpire:o,store:a,signal:c,onProgress:h,source:d="local",integration:p,userAgent:f,retryThrottledRequestMaxTimes:g=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:m=A.retryNetworkErrorMaxTimes,metadata:b}){return Tt(()=>wt({method:"POST",url:_t(r,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Ut({publicKey:i,integration:p,userAgent:f})},data:Vi({file:{data:s,name:t||Ts(s),contentType:e||ws(s)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:Bi(a),signature:n,expire:o,source:d,metadata:b}),signal:c,onProgress:h}).then(({data:$,headers:E,request:x})=>{let T=bt(JSON.parse($));if("error"in T)throw new U(T.error.content,T.error.errorCode,x,T,E);return T}),{retryNetworkErrorMaxTimes:m,retryThrottledRequestMaxTimes:g})}l(Mn,"base");var Di;(function(s){s.Token="token",s.FileInfo="file_info"})(Di||(Di={}));function Nn(s,{publicKey:i,baseURL:t=A.baseURL,store:e,fileName:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:a,secureExpire:c,source:h="url",signal:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:m=A.retryNetworkErrorMaxTimes,metadata:b}){return Tt(()=>wt({method:"POST",headers:{"X-UC-User-Agent":Ut({publicKey:i,integration:p,userAgent:f})},url:_t(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:s,store:Bi(e),filename:r,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:a,expire:c,source:h,metadata:b}),signal:d}).then(({data:$,headers:E,request:x})=>{let T=bt(JSON.parse($));if("error"in T)throw new U(T.error.content,T.error.errorCode,x,T,E);return T}),{retryNetworkErrorMaxTimes:m,retryThrottledRequestMaxTimes:g})}l(Nn,"fromUrl");var H;(function(s){s.Unknown="unknown",s.Waiting="waiting",s.Progress="progress",s.Error="error",s.Success="success"})(H||(H={}));var Dn=l(s=>"status"in s&&s.status===H.Error,"isErrorResponse");function Fn(s,{publicKey:i,baseURL:t=A.baseURL,signal:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=A.retryNetworkErrorMaxTimes}={}){return Tt(()=>wt({method:"GET",headers:i?{"X-UC-User-Agent":Ut({publicKey:i,integration:r,userAgent:n})}:void 0,url:_t(t,"/from_url/status/",{jsonerrors:1,token:s}),signal:e}).then(({data:c,headers:h,request:d})=>{let p=bt(JSON.parse(c));if("error"in p&&!Dn(p))throw new U(p.error.content,void 0,d,p,h);return p}),{retryNetworkErrorMaxTimes:a,retryThrottledRequestMaxTimes:o})}l(Fn,"fromUrlStatus");function Vn(s,{publicKey:i,baseURL:t=A.baseURL,jsonpCallback:e,secureSignature:r,secureExpire:n,signal:o,source:a,integration:c,userAgent:h,retryThrottledRequestMaxTimes:d=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:p=A.retryNetworkErrorMaxTimes}){return Tt(()=>wt({method:"POST",headers:{"X-UC-User-Agent":Ut({publicKey:i,integration:c,userAgent:h})},url:_t(t,"/group/",{jsonerrors:1,pub_key:i,files:s,callback:e,signature:r,expire:n,source:a}),signal:o}).then(({data:f,headers:g,request:m})=>{let b=bt(JSON.parse(f));if("error"in b)throw new U(b.error.content,b.error.errorCode,m,b,g);return b}),{retryNetworkErrorMaxTimes:p,retryThrottledRequestMaxTimes:d})}l(Vn,"group");function xs(s,{publicKey:i,baseURL:t=A.baseURL,signal:e,source:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:a=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:c=A.retryNetworkErrorMaxTimes}){return Tt(()=>wt({method:"GET",headers:{"X-UC-User-Agent":Ut({publicKey:i,integration:n,userAgent:o})},url:_t(t,"/info/",{jsonerrors:1,pub_key:i,file_id:s,source:r}),signal:e}).then(({data:h,headers:d,request:p})=>{let f=bt(JSON.parse(h));if("error"in f)throw new U(f.error.content,f.error.errorCode,p,f,d);return f}),{retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:c})}l(xs,"info");function Bn(s,{publicKey:i,contentType:t,fileName:e,multipartChunkSize:r=A.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:a,store:c,signal:h,source:d="local",integration:p,userAgent:f,retryThrottledRequestMaxTimes:g=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:m=A.retryNetworkErrorMaxTimes,metadata:b}){return Tt(()=>wt({method:"POST",url:_t(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Ut({publicKey:i,integration:p,userAgent:f})},data:Vi({filename:e||vs,size:s,content_type:t||mi,part_size:r,UPLOADCARE_STORE:Bi(c),UPLOADCARE_PUB_KEY:i,signature:o,expire:a,source:d,metadata:b}),signal:h}).then(({data:$,headers:E,request:x})=>{let T=bt(JSON.parse($));if("error"in T)throw new U(T.error.content,T.error.errorCode,x,T,E);return T.parts=Object.keys(T.parts).map(z=>T.parts[z]),T}),{retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m})}l(Bn,"multipartStart");function zn(s,i,{contentType:t,signal:e,onProgress:r,retryThrottledRequestMaxTimes:n=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=A.retryNetworkErrorMaxTimes}){return Tt(()=>wt({method:"PUT",url:i,data:s,onProgress:r,signal:e,headers:{"Content-Type":t||mi}}).then(a=>(r&&r({isComputable:!0,value:1}),a)).then(({status:a})=>({code:a})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}l(zn,"multipartUpload");function jn(s,{publicKey:i,baseURL:t=A.baseURL,source:e="local",signal:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:a=A.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:c=A.retryNetworkErrorMaxTimes}){return Tt(()=>wt({method:"POST",url:_t(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":Ut({publicKey:i,integration:n,userAgent:o})},data:Vi({uuid:s,UPLOADCARE_PUB_KEY:i,source:e}),signal:r}).then(({data:h,headers:d,request:p})=>{let f=bt(JSON.parse(h));if("error"in f)throw new U(f.error.content,f.error.errorCode,p,f,d);return f}),{retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:c})}l(jn,"multipartComplete");function zi(s,{publicKey:i,baseURL:t,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:a,signal:c,onProgress:h}){return ys({check:d=>xs(s,{publicKey:i,baseURL:t,signal:d,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:a}).then(p=>p.isReady?p:(h&&h({isComputable:!0,value:1}),!1)),signal:c})}l(zi,"isReadyPoll");function Hn(s){return"defaultEffects"in s}l(Hn,"isGroupFileInfo");var nt=class{constructor(i,{baseCDN:t=A.baseCDN,fileName:e}={}){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:n}=i,o=_t(t,`${r}/`),a=n?_t(`https://${n}.s3.amazonaws.com/`,`${r}/${i.filename}`):null;this.uuid=r,this.name=e||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=a,Hn(i)&&(this.defaultEffects=i.defaultEffects)}};l(nt,"UploadcareFile");var Wn=l((s,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,contentType:a,signal:c,onProgress:h,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,baseCDN:b,metadata:$})=>Mn(s,{publicKey:i,fileName:t,contentType:a,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:c,onProgress:h,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,metadata:$}).then(({file:E})=>zi(E,{publicKey:i,baseURL:e,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,onProgress:h,signal:c})).then(E=>new nt(E,{baseCDN:b})),"uploadDirect"),Xn=l((s,{publicKey:i,fileName:t,baseURL:e,signal:r,onProgress:n,source:o,integration:a,userAgent:c,retryThrottledRequestMaxTimes:h,retryNetworkErrorMaxTimes:d,baseCDN:p})=>xs(s,{publicKey:i,baseURL:e,signal:r,source:o,integration:a,userAgent:c,retryThrottledRequestMaxTimes:h,retryNetworkErrorMaxTimes:d}).then(f=>new nt(f,{baseCDN:p,fileName:t})).then(f=>(n&&n({isComputable:!0,value:1}),f)),"uploadFromUploaded"),qn=l((s,{signal:i}={})=>{let t=null,e=null,r=s.map(()=>new AbortController),n=l(o=>()=>{e=o,r.forEach((a,c)=>c!==o&&a.abort())},"createStopRaceCallback");return fi(i,()=>{r.forEach(o=>o.abort())}),Promise.all(s.map((o,a)=>{let c=n(a);return Promise.resolve().then(()=>o({stopRace:c,signal:r[a].signal})).then(h=>(c(),h)).catch(h=>(t=h,null))})).then(o=>{if(e===null)throw t;return o[e]})},"race"),Gn=window.WebSocket,ui=class{constructor(){u(this,"events",Object.create({}))}emit(i,t){var e;(e=this.events[i])==null||e.forEach(r=>r(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(e=>e!==t):this.events[i]=[]}};l(ui,"Events");var Kn=l((s,i)=>s==="success"?{status:H.Success,...i}:s==="progress"?{status:H.Progress,...i}:{status:H.Error,...i},"response"),di=class{constructor(i,t=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 ui);u(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Gn(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let e=JSON.parse(t.data.toString());switch(e.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(e.channel,Kn(e.event,JSON.parse(e.data)))}})}}disconnect(){let i=l(()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1},"actualDisconect");this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var r;let e=JSON.stringify({event:i,data:t});(r=this.ws)==null||r.send(e)}subscribe(i,t){this.subscribers+=1,this.connect();let e=`task-status-${i}`,r={event:"pusher:subscribe",data:{channel:e}};this.emmitter.on(e,t),this.isConnected?this.send(r.event,r.data):this.queue.push(r)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,e={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(e.event,e.data):this.queue=this.queue.filter(r=>r.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}};l(di,"Pusher");var Mi=null,ji=l(s=>{if(!Mi){let i=typeof window=="undefined"?0:3e4;Mi=new di(s,i)}return Mi},"getPusher"),Yn=l(s=>{ji(s).connect()},"preconnect");function Zn({token:s,publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:a,signal:c}){return ys({check:h=>Fn(s,{publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:h}).then(d=>{switch(d.status){case H.Error:return new U(d.error,d.errorCode);case H.Waiting:return!1;case H.Unknown:return new U(`Token "${s}" was not found.`);case H.Progress:return a&&(d.total==="unknown"?a({isComputable:!1}):a({isComputable:!0,value:d.done/d.total})),!1;case H.Success:return a&&a({isComputable:!0,value:d.done/d.total}),d;default:throw new Error("Unknown status")}}),signal:c})}l(Zn,"pollStrategy");var Jn=l(({token:s,pusherKey:i,signal:t,onProgress:e})=>new Promise((r,n)=>{let o=ji(i),a=o.onError(n),c=l(()=>{a(),o.unsubscribe(s)},"destroy");fi(t,()=>{c(),n(new gt("pusher cancelled"))}),o.subscribe(s,h=>{switch(h.status){case H.Progress:{e&&(h.total==="unknown"?e({isComputable:!1}):e({isComputable:!0,value:h.done/h.total}));break}case H.Success:{c(),e&&e({isComputable:!0,value:h.done/h.total}),r(h);break}case H.Error:c(),n(new U(h.msg,h.error_code))}})}),"pushStrategy"),Qn=l((s,{publicKey:i,fileName:t,baseURL:e,baseCDN:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:a,secureExpire:c,store:h,signal:d,onProgress:p,source:f,integration:g,userAgent:m,retryThrottledRequestMaxTimes:b,pusherKey:$=A.pusherKey,metadata:E})=>Promise.resolve(Yn($)).then(()=>Nn(s,{publicKey:i,fileName:t,baseURL:e,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:a,secureExpire:c,store:h,signal:d,source:f,integration:g,userAgent:m,retryThrottledRequestMaxTimes:b,metadata:E})).catch(x=>{let T=ji($);return T==null||T.disconnect(),Promise.reject(x)}).then(x=>x.type===Di.FileInfo?x:qn([({signal:T})=>Zn({token:x.token,publicKey:i,baseURL:e,integration:g,userAgent:m,retryThrottledRequestMaxTimes:b,onProgress:p,signal:T}),({signal:T})=>Jn({token:x.token,pusherKey:$,signal:T,onProgress:p})],{signal:d})).then(x=>{if(x instanceof U)throw x;return x}).then(x=>zi(x.uuid,{publicKey:i,baseURL:e,integration:g,userAgent:m,retryThrottledRequestMaxTimes:b,onProgress:p,signal:d})).then(x=>new nt(x,{baseCDN:r})),"uploadFromUrl"),Ni=new WeakMap,to=l(async s=>{if(Ni.has(s))return Ni.get(s);let i=await fetch(s.uri).then(t=>t.blob());return Ni.set(s,i),i},"getBlobFromReactNativeAsset"),Es=l(async s=>{if(_i(s)||gi(s))return s.size;if(bi(s))return(await to(s)).size;throw new Error("Unknown file type. Cannot determine file size.")},"getFileSize"),eo=l((s,i=A.multipartMinFileSize)=>s>=i,"isMultipart"),As=l(s=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!Qt(s)&&t.test(s)},"isUuid"),Hi=l(s=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!Qt(s)&&t.test(s)},"isUrl"),io=l((s,i)=>new Promise((t,e)=>{let r=[],n=!1,o=i.length,a=[...i],c=l(()=>{let h=i.length-a.length,d=a.shift();d&&d().then(p=>{n||(r[h]=p,o-=1,o?c():t(r))}).catch(p=>{n=!0,e(p)})},"run");for(let h=0;h{let r=e*i,n=Math.min(r+e,t);return s.slice(r,n)},"sliceChunk"),ro=l(async(s,i,t)=>e=>so(s,e,i,t),"prepareChunks"),no=l((s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:c})=>zn(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:a,retryNetworkErrorMaxTimes:c}),"uploadPart"),oo=l(async(s,{publicKey:i,fileName:t,fileSize:e,baseURL:r,secureSignature:n,secureExpire:o,store:a,signal:c,onProgress:h,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,contentType:b,multipartChunkSize:$=A.multipartChunkSize,maxConcurrentRequests:E=A.maxConcurrentRequests,baseCDN:x,metadata:T})=>{let z=e!=null?e:await Es(s),pt,Ot=l((P,j)=>{if(!h)return;pt||(pt=Array(P).fill(0));let et=l(st=>st.reduce((ft,Ii)=>ft+Ii,0),"sum");return st=>{st.isComputable&&(pt[j]=st.value,h({isComputable:!0,value:et(pt)/P}))}},"createProgressHandler");return b||(b=ws(s)),Bn(z,{publicKey:i,contentType:b,fileName:t||Ts(s),baseURL:r,secureSignature:n,secureExpire:o,store:a,signal:c,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,metadata:T}).then(async({uuid:P,parts:j})=>{let et=await ro(s,z,$);return Promise.all([P,io(E,j.map((st,ft)=>()=>no(et(ft),st,{publicKey:i,contentType:b,onProgress:Ot(j.length,ft),signal:c,integration:p,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m})))])}).then(([P])=>jn(P,{publicKey:i,baseURL:r,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m})).then(P=>P.isReady?P:zi(P.uuid,{publicKey:i,baseURL:r,source:d,integration:p,userAgent:f,retryThrottledRequestMaxTimes:g,retryNetworkErrorMaxTimes:m,onProgress:h,signal:c})).then(P=>new nt(P,{baseCDN:x}))},"uploadMultipart");async function Wi(s,{publicKey:i,fileName:t,baseURL:e=A.baseURL,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,contentType:m,multipartMinFileSize:b,multipartChunkSize:$,maxConcurrentRequests:E,baseCDN:x=A.baseCDN,checkForUrlDuplicates:T,saveUrlForRecurrentUploads:z,pusherKey:pt,metadata:Ot}){if(Qt(s)){let P=await Es(s);return eo(P,b)?oo(s,{publicKey:i,contentType:m,multipartChunkSize:$,fileSize:P,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,maxConcurrentRequests:E,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,baseCDN:x,metadata:Ot}):Wn(s,{publicKey:i,fileName:t,contentType:m,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,baseCDN:x,metadata:Ot})}if(Hi(s))return Qn(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:x,checkForUrlDuplicates:T,saveUrlForRecurrentUploads:z,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,pusherKey:pt,metadata:Ot});if(As(s))return Xn(s,{publicKey:i,fileName:t,baseURL:e,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,baseCDN:x});throw new TypeError(`File uploading from "${s}" is not supported`)}l(Wi,"uploadFile");var pi=class{constructor(i,{baseCDN:t=A.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=i.id,this.filesCount=i.filesCount;let e=i.files.filter(Boolean);this.totalSize=Object.values(e).reduce((r,n)=>r+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(e).filter(r=>r.isImage).length,this.cdnUrl=i.cdnUrl,this.files=e.map(r=>new nt(r,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}};l(pi,"UploadcareGroup");var lo=l(s=>{for(let i of s)if(!Qt(i))return!1;return!0},"isFileDataArray"),ao=l(s=>{for(let i of s)if(!As(i))return!1;return!0},"isUuidArray"),co=l(s=>{for(let i of s)if(!Hi(i))return!1;return!0},"isUrlArray");function $s(s,{publicKey:i,fileName:t,baseURL:e=A.baseURL,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,contentType:m,multipartChunkSize:b=A.multipartChunkSize,baseCDN:$=A.baseCDN,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:x,jsonpCallback:T}){if(!lo(s)&&!co(s)&&!ao(s))throw new TypeError(`Group uploading from "${s}" is not supported`);let z,pt=!0,Ot=s.length,P=l((j,et)=>{if(!c)return;z||(z=Array(j).fill(0));let st=l(ft=>ft.reduce((Ii,Ur)=>Ii+Ur)/j,"normalize");return ft=>{if(!ft.isComputable||!pt){pt=!1,c({isComputable:!1});return}z[et]=ft.value,c({isComputable:!0,value:st(z)})}},"createProgressHandler");return Promise.all(s.map((j,et)=>Qt(j)||Hi(j)?Wi(j,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:P(Ot,et),source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g,contentType:m,multipartChunkSize:b,baseCDN:$,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:x}).then(st=>st.uuid):j)).then(j=>Vn(j,{publicKey:i,baseURL:e,jsonpCallback:T,secureSignature:r,secureExpire:n,signal:a,source:h,integration:d,userAgent:p,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:g}).then(et=>new pi(et,{baseCDN:$})).then(et=>(c&&c({isComputable:!0,value:1}),et)))}l($s,"uploadFileGroup");var Ne=class{constructor(i){u(this,"_concurrency",1);u(this,"_pending",[]);u(this,"_running",0);u(this,"_resolvers",new Map);u(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(e),this._rejectors.delete(e),this._running-=1,this._run()}).then(o=>r(o)).catch(o=>n(o))}}add(i){return new Promise((t,e)=>{this._resolvers.set(i,t),this._rejectors.set(i,e),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};l(Ne,"Queue");var Xi=l(()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),"blockCtx"),qi=l(s=>({...Xi(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{s.set$({"*modalActive":!1,"*currentActivity":""})}}),"activityBlockCtx"),yi=l(s=>({...qi(s),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new Ne(1)}),"uploaderBlockCtx");function Ss(s,i){[...s.querySelectorAll("[l10n]")].forEach(t=>{let e=t.getAttribute("l10n"),r="textContent";if(e.includes(":")){let o=e.split(":");r=o[0],e=o[1]}let n="l10n:"+e;i.__l10nKeys.push(n),i.add(n,e),i.sub(n,o=>{t[r]=i.l10n(o)}),t.removeAttribute("l10n")})}l(Ss,"l10nProcessor");var W=l(s=>`*cfg/${s}`,"sharedConfigKey");var Gi="lr-",y=class extends Lt{constructor(){super();u(this,"requireCtxName",!1);u(this,"allowCustomTemplate",!0);u(this,"init$",Xi());u(this,"updateCtxCssData",l(()=>{Me("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let e of t)e.isConnected&&e.updateCssData()},"updateCtxCssData"));this.activityType=null,this.addTemplateProcessor(Ss),this.__l10nKeys=[]}l10n(t,e={}){if(!t)return"";let r=this.getCssData("--l10n-"+t,!0)||t,n=fs(r);for(let a of n)e[a.variable]=this.pluralize(a.pluralKey,Number(e[a.countVariable]));return Pe(r,e)}pluralize(t,e){let r=this.l10n("locale-name")||"en-US",n=ci(r,e);return this.l10n(`${t}__${n}`)}emit(t,e,r){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,e,r)}applyL10nKey(t,e){let r="l10n:"+t;this.$[r]=e,this.__l10nKeys.push(t)}hasBlockInCtx(t){let e=this.$["*blocksRegistry"];for(let r of e)if(t(r))return!0;return!1}setOrAddState(t,e){this.add$({[t]:e},!0)}setActivity(t){if(this.hasBlockInCtx(e=>e.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Gi}${t}`,!0),Ui()||(this._destroyInnerHeightTracker=us()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?hi({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new Ue(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,e=2){let r=["B","KB","MB","GB","TB"],n=l(h=>this.getCssData("--l10n-unit-"+h.toLowerCase(),!0)||h,"getUnit");if(t===0)return`0 ${n(r[0])}`;let o=1024,a=e<0?0:e,c=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**c).toFixed(a))+" "+n(r[c])}proxyUrl(t){let e=this.cfg.secureDeliveryProxy;return e?Pe(e,{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(e,r,n)=>{if(typeof r!="string")return!1;let o=W(r);return this.$[o]=n,!0},get:(e,r)=>{let n=W(r),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(Me("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${rt(r)}`))}})}return this.__cfgProxy}subConfigValue(t,e){let r=this.parseCfgProp(W(t));r.ctx.has(r.name)?this.sub(W(t),e):(this.bindCssData(`--cfg-${rt(t)}`),this.sub(`--cfg-${rt(t)}`,e))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Gi)?t:Gi+t)}};l(y,"Block"),u(y,"StateConsumerScope",null),u(y,"className","");var ks="active",De="___ACTIVITY_IS_ACTIVE___",ot=class extends y{constructor(){super(...arguments);u(this,"historyTracked",!1);u(this,"init$",qi(this));u(this,"_debouncedHistoryFlush",I(this._historyFlush.bind(this),10))}_deactivate(){var e;let t=ot._activityRegistry[this.activityKey];this[De]=!1,this.removeAttribute(ks),(e=t==null?void 0:t.deactivateCallback)==null||e.call(t)}_activate(){var e;let t=ot._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[De]=!0,this.setAttribute(ks,""),(e=t==null?void 0:t.activateCallback)==null||e.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[De]?this._deactivate():this.activityType===t&&!this[De]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t[t.length-1]!==this.activityType&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!ot._activityRegistry[this.activityKey]}get isActivityActive(){return this[De]}get couldOpenActivity(){return!0}registerActivity(t,e={}){let{onActivate:r,onDeactivate:n}=e;ot._activityRegistry||(ot._activityRegistry=Object.create(null)),ot._activityRegistry[this.activityKey]={activateCallback:r,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),ot._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(ot._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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 e;let t=this.$["*history"];if(t){let r=t.pop();for(;r===this.activityType;)r=t.pop();let n=!!r;if(r){let a=[...this.$["*blocksRegistry"]].find(c=>c.activityType===r);n=(e=a==null?void 0:a.couldOpenActivity)!=null?e:!1}r=n?r:void 0,this.$["*currentActivity"]=r,this.$["*history"]=t,r||this.setOrAddState("*modalActive",!1)}}},_=ot;l(_,"ActivityBlock"),u(_,"_activityRegistry",Object.create(null));_.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var Fe=33.333333333333336,C=1,Ki=24,Is=6;function Pt(s,i){for(let t in i)s.setAttributeNS(null,t,i[t].toString())}l(Pt,"setSvgNodeAttrs");function J(s,i={}){let t=document.createElementNS("http://www.w3.org/2000/svg",s);return Pt(t,i),t}l(J,"createSvgNode");function Os(s,i,t){let{x:e,y:r,width:n,height:o}=s,a=i.includes("w")?0:1,c=i.includes("n")?0:1,h=[-1,1][a],d=[-1,1][c],p=[e+a*n+1.5*h,r+c*o+1.5*d-24*t*d],f=[e+a*n+1.5*h,r+c*o+1.5*d],g=[e+a*n-24*t*h+1.5*h,r+c*o+1.5*d];return{d:`M ${p[0]} ${p[1]} L ${f[0]} ${f[1]} L ${g[0]} ${g[1]}`,center:f}}l(Os,"cornerPath");function Ls(s,i,t){let{x:e,y:r,width:n,height:o}=s,a=["n","s"].includes(i)?.5:{w:0,e:1}[i],c=["w","e"].includes(i)?.5:{n:0,s:1}[i],h=[-1,1][a],d=[-1,1][c],p,f;["n","s"].includes(i)?(p=[e+a*n-34*t/2,r+c*o+1.5*d],f=[e+a*n+34*t/2,r+c*o+1.5*d]):(p=[e+a*n+1.5*h,r+c*o-34*t/2],f=[e+a*n+1.5*h,r+c*o+34*t/2]);let g=`M ${p[0]} ${p[1]} L ${f[0]} ${f[1]}`,m=[f[0]-(f[0]-p[0])/2,f[1]-(f[1]-p[1])/2];return{d:g,center:m}}l(Ls,"sidePath");function Rs(s){return s===""?"move":["e","w"].includes(s)?"ew-resize":["n","s"].includes(s)?"ns-resize":["nw","se"].includes(s)?"nwse-resize":"nesw-resize"}l(Rs,"thumbCursor");function Us({rect:s,delta:[i,t],imageBox:e}){return ee({...s,x:s.x+i,y:s.y+t},e)}l(Us,"moveRect");function ee(s,i){let{x:t}=s,{y:e}=s;return s.xi.x+i.width&&(t=i.x+i.width-s.width),s.yi.y+i.height&&(e=i.y+i.height-s.height),{...s,x:t,y:e}}l(ee,"constraintRect");function ho({rect:s,delta:i,aspectRatio:t,imageBox:e}){let[,r]=i,{y:n,width:o,height:a}=s;n+=r,a-=r,t&&(o=a*t);let c=s.x+s.width/2-o/2;return n<=e.y&&(n=e.y,a=s.y+s.height-n,t&&(o=a*t,c=s.x+s.width/2-o/2)),c<=e.x&&(c=e.x,n=s.y+s.height-a),c+o>=e.x+e.width&&(c=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-c,t&&(a=o/t),n=s.y+s.height-a),a=e.y+e.height&&(c=Math.max(e.y,e.y+e.height-a),a=e.y+e.height-c,t&&(o=a*t),n=s.x+s.width-o),a=e.y+e.height&&(a=e.y+e.height-n,t&&(o=a*t),c=s.x+s.width/2-o/2),c<=e.x&&(c=e.x,n=s.y),c+o>=e.x+e.width&&(c=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-c,t&&(a=o/t),n=s.y),a=e.x+e.width&&(o=e.x+e.width-n,t&&(a=o/t),c=s.y+s.height/2-a/2),c<=e.y&&(c=e.y,n=s.x),c+a>=e.y+e.height&&(c=Math.max(e.y,e.y+e.height-a),a=e.y+e.height-c,t&&(o=a*t),n=s.x),at?(n=c/t-h,h+=n,a-=n,a<=e.y&&(h=h-(e.y-a),c=h*t,o=s.x+s.width-c,a=e.y)):t&&(r=h*t-c,c=c+r,o-=r,o<=e.x&&(c=c-(e.x-o),h=c/t,o=e.x,a=s.y+s.height-h)),he.x+e.width&&(r=e.x+e.width-o-c),a+nt?(n=c/t-h,h+=n,a-=n,a<=e.y&&(h=h-(e.y-a),c=h*t,o=s.x,a=e.y)):t&&(r=h*t-c,c+=r,o+c>=e.x+e.width&&(c=e.x+e.width-o,h=c/t,o=e.x+e.width-c,a=s.y+s.height-h)),he.y+e.height&&(n=e.y+e.height-a-h),o+=r,c-=r,h+=n,t&&Math.abs(c/h)>t?(n=c/t-h,h+=n,a+h>=e.y+e.height&&(h=e.y+e.height-a,c=h*t,o=s.x+s.width-c,a=e.y+e.height-h)):t&&(r=h*t-c,c+=r,o-=r,o<=e.x&&(c=c-(e.x-o),h=c/t,o=e.x,a=s.y)),he.x+e.width&&(r=e.x+e.width-o-c),a+h+n>e.y+e.height&&(n=e.y+e.height-a-h),c+=r,h+=n,t&&Math.abs(c/h)>t?(n=c/t-h,h+=n,a+h>=e.y+e.height&&(h=e.y+e.height-a,c=h*t,o=s.x,a=e.y+e.height-h)):t&&(r=h*t-c,c+=r,o+c>=e.x+e.width&&(c=e.x+e.width-o,h=c/t,o=e.x+e.width-c,a=s.y)),h=i.x&&s.y>=i.y&&s.x+s.width<=i.x+i.width&&s.y+s.height<=i.y+i.height}l(Ns,"isRectInsideRect");function Ds(s,i){return Math.abs(s.width/s.height-i)<.1}l(Ds,"isRectMatchesAspectRatio");function ie({width:s,height:i},t){let e=t/90%2!==0;return{width:e?i:s,height:e?s:i}}l(ie,"rotateSize");function Fs(s,i,t){let e=s/i,r,n;e>t?(r=Math.round(i*t),n=i):(r=s,n=Math.round(s/t));let o=Math.round((s-r)/2),a=Math.round((i-n)/2);return o+r>s&&(r=s-o),a+n>i&&(n=i-a),{x:o,y:a,width:r,height:n}}l(Fs,"calculateMaxCenteredCropFrame");function se(s){return{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}}l(se,"roundRect");function xt(s,i,t){return Math.min(Math.max(s,i),t)}l(xt,"clamp");var Ci=l(s=>{if(!s)return[];let[i,t]=s.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${s}`);return}return[{type:"aspect-ratio",width:i,height:t}]},"parseCropPreset");var Q=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var Vs=l(s=>s?s.split(",").map(i=>i.trim()):[],"deserealizeCsv"),Mt=l(s=>s?s.join(","):"","serializeCsv");var Yi="blocks",Zi="0.29.1";function Bs(s){return Fi({...s,libraryName:Yi,libraryVersion:Zi})}l(Bs,"customUserAgent");var zs=l(s=>{if(typeof s!="string"||!s)return"";let i=s.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},"normalizeCdnOperation"),wi=l((...s)=>s.filter(i=>typeof i=="string"&&i).map(i=>zs(i)).join("/-/"),"joinCdnOperations"),M=l((...s)=>{let i=wi(...s);return i?`-/${i}/`:""},"createCdnUrlModifiers");function js(s){let i=new URL(s),t=i.pathname+i.search+i.hash,e=t.lastIndexOf("http"),r=t.lastIndexOf("/"),n="";return e>=0?n=t.slice(e):r>=0&&(n=t.slice(r+1)),n}l(js,"extractFilename");function Hs(s){let i=new URL(s),{pathname:t}=i,e=t.indexOf("/"),r=t.indexOf("/",e+1);return t.substring(e+1,r)}l(Hs,"extractUuid");function Ws(s){let i=Xs(s),t=new URL(i),e=t.pathname.indexOf("/-/");return e===-1?[]:t.pathname.substring(e).split("/-/").filter(Boolean).map(n=>zs(n))}l(Ws,"extractOperations");function Xs(s){let i=new URL(s),t=js(s),e=qs(t)?Gs(t).pathname:t;return i.pathname=i.pathname.replace(e,""),i.search="",i.hash="",i.toString()}l(Xs,"trimFilename");function qs(s){return s.startsWith("http")}l(qs,"isFileUrl");function Gs(s){let i=new URL(s);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}l(Gs,"splitFileUrl");var L=l((s,i,t)=>{let e=new URL(Xs(s));if(t=t||js(s),e.pathname.startsWith("//")&&(e.pathname=e.pathname.replace("//","/")),qs(t)){let r=Gs(t);e.pathname=e.pathname+(i||"")+(r.pathname||""),e.search=r.search,e.hash=r.hash}else e.pathname=e.pathname+(i||"")+(t||"");return e.toString()},"createCdnUrl"),Et=l((s,i)=>{let t=new URL(s);return t.pathname=i+"/",t.toString()},"createOriginalUrl");var N=l((s,i=",")=>s.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0),"stringToArray");var Ve=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],Ji=l(s=>s?s.filter(i=>typeof i=="string").map(i=>N(i)).flat():[],"mergeFileTypes"),Qi=l((s,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),s.startsWith(t)):s===t),"matchMimeType"),Ks=l((s,i)=>i.some(t=>t.startsWith(".")?s.toLowerCase().endsWith(t.toLowerCase()):!1),"matchExtension"),Be=l(s=>{let i=s==null?void 0:s.type;return i?Qi(i,Ve):!1},"fileIsImage");var at=1e3,Nt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),ze=l(s=>Math.ceil(s*100)/100,"round"),Ys=l((s,i=Nt.AUTO)=>{let t=i===Nt.AUTO;if(i===Nt.BYTE||t&&s(e[r]=i[r].value,e),{}),this.__data=S.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Zs+i);return}let e=this.__typedSchema[i];if((t==null?void 0:t.constructor)===e.type||t instanceof e.type||e.nullable&&t===null){this.__data.pub(i,t);return}console.warn(yo+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Zs+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){S.deleteCtx(this.__ctxId)}};l(je,"TypedData");var He=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||Le.generate(),this.__data=S.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(e,r)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[e]||(t[e]=new Set),t[e].add(r),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let e of this.__collectionObservers)e==null||e([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new je(this.__typedSchema);for(let e in i)t.setValue(e,i[e]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(e=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(e,()=>{this.__notifyObservers(e,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,e){this.read(i).setValue(t,e)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(e=>{let r=this.read(e);i(r)&&t.push(e)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){S.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};l(He,"TypedCollection");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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:nt,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var v=class extends _{constructor(){super(...arguments);u(this,"isCtxOwner",!1);u(this,"init$",yi(this));u(this,"__initialUploadMetadata",null);u(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);u(this,"_debouncedRunValidators",I(this._runValidators.bind(this),100));u(this,"_flushOutputItems",I(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(k.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));u(this,"_handleCollectonUpdate",l((t,e,r)=>{var n;this._runValidators();for(let o of r)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()},"_handleCollectonUpdate"));u(this,"_handleCollectionPropertiesUpdate",l(t=>{this._flushOutputItems();let e=this.uploadCollection,r=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>e.read(n)).filter(Boolean);for(let n of r)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=e.findItems(c=>!c.getValue("uploadError"));o.forEach(c=>{n+=e.readProp(c,"uploadProgress")});let a=Math.round(n/o.length);this.$["*commonProgress"]=a,this.emit(k.UPLOAD_PROGRESS,a,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=e.findItems(a=>!!a.getValue("fileInfo")),o=e.findItems(a=>!!a.getValue("uploadError")||!!a.getValue("validationErrorMsg"));if(e.size-o.length===n.length){let a=this.getOutputData(c=>!!c.getValue("fileInfo")&&!c.getValue("silentUpload"));a.length>0&&this.emit(k.UPLOAD_FINISH,a,{debounce:!0})}}t.uploadError&&e.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(k.UPLOAD_ERROR,e.readProp(o,"uploadError"))}),t.validationErrorMsg&&e.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(k.VALIDATION_ERROR,e.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&e.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(k.CLOUD_MODIFICATION,e.readProp(o,"cdnUrlModifiers"))})},"_handleCollectionPropertiesUpdate"))}setUploadMetadata(t){Me("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}get hasCtxOwner(){return this.hasBlockInCtx(t=>t instanceof v?t.isCtxOwner&&t.isConnected&&t!==this:!1)}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let t=new He({typedSchema:Js,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",t)}this.hasCtxOwner||this.initCtxOwner()}destroyCallback(){var t,e;super.destroyCallback(),this.isCtxOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(e=this._unobserveCollection)==null||e.call(this))}initCtxOwner(){this.isCtxOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators()),this.subConfigValue("maxConcurrentRequests",t=>{this.$["*uploadQueue"].concurrency=Number(t)||1}),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata)}addFileFromUrl(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Q.API})}addFileFromUuid(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({uuid:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Q.API})}addFileFromObject(t,{silent:e,fileName:r,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:Be(t),mimeType:t.type,fileName:r!=null?r:t.name,fileSize:t.size,silentUpload:e!=null?e:!1,source:n!=null?n:Q.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(e=>{this.uploadCollection.add({file:e,isImage:Be(e),mimeType:e.type,fileName:e.name,fileSize:e.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var r;let e=Mt(Ji([(r=this.cfg.accept)!=null?r:"",...this.cfg.imgOnly?Ve:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=Mt(Ve)):this.fileInput.accept=e,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:Q.LOCAL})),this.$["*currentActivity"]=_.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=N(this.cfg.sourceList)),t}initFlow(t=!1){var e;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":_.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((e=this.sourceList)==null?void 0:e.length)===1){let r=this.sourceList[0];r==="local"?(this.$["*currentActivity"]=_.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(v.extSrcList).includes(r)?this.set$({"*currentActivityParams":{externalSourceType:r},"*currentActivity":_.activities.EXTERNAL}):this.$["*currentActivity"]=r,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":_.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(k.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(k.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let e=this.cfg.imgOnly,r=this.cfg.accept,n=Ji([...e?Ve:[],r]);if(!n.length)return;let o=t.getValue("mimeType"),a=t.getValue("fileName");if(!o||!a)return;let c=Qi(o,n),h=Ks(a,n);if(!c&&!h)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let e=this.cfg.maxLocalFileSizeBytes,r=t.getValue("fileSize");if(e&&r&&r>e)return this.l10n("files-max-size-limit-error",{maxFileSize:Ys(e)})}_validateMultipleLimit(t){let e=this.uploadCollection.items(),r=e.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&e.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let e=this.cfg.imgOnly,r=t.getValue("isImage");if(!(!e||r)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let e of this._validators){let r=e(t);if(r){t.setValue("validationErrorMsg",r);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let e=this.uploadCollection.read(t);e&&this._runValidatorsForEntry(e)})}setInitialCrop(){let t=Ci(this.cfg.cropPreset);if(t){let[e]=t,r=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of r){let o=n.getValue("fileInfo"),{width:a,height:c}=o.imageInfo,h=e.width/e.height,d=Fs(a,c,h),p=M(`crop/${d.width}x${d.height}/${d.x},${d.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:p,cdnUrl:L(n.getValue("cdnUrl"),p)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(f=>f.activityType===_.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=_.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var r;let e=(r=this.cfg.metadata)!=null?r:this.$["*uploadMetadata"];if(typeof e=="function"){let n=this.getOutputItem(t);return await e(n)}return e}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Bs,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,a;let e=S.getCtx(t).store,r=e.fileInfo||{name:e.fileName,originalFilename:e.fileName,size:e.fileSize,isImage:e.isImage,mimeType:e.mimeType};return{...r,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(a=(o=e.cdnUrl)!=null?o:r.cdnUrl)!=null?a:null,validationErrorMessage:e.validationErrorMsg,uploadError:e.uploadError,isUploaded:!!e.uuid&&!!e.fileInfo,isValid:!e.validationErrorMsg&&!e.uploadError,fullPath:e.fullPath,uploadProgress:e.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};l(v,"UploaderBlock");v.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});v.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...v.extSrcList});var K={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};function vo(s,i){if(typeof i=="number")return K[s]!==i?`${s}/${i}`:"";if(typeof i=="boolean")return i&&K[s]!==i?`${s}`:"";if(s==="filter"){if(!i||K[s]===i.amount)return"";let{name:t,amount:e}=i;return`${s}/${t}/${e}`}if(s==="crop"){if(!i)return"";let{dimensions:t,coords:e}=i;return`${s}/${t.join("x")}/${e.join(",")}`}return""}l(vo,"transformationToStr");var tr=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function At(s){return wi(...tr.filter(i=>typeof s[i]!="undefined"&&s[i]!==null).map(i=>{let t=s[i];return vo(i,t)}).filter(i=>!!i))}l(At,"transformationsToOperations");var Ti=wi("format/auto","progressive/yes"),yt=l(([s])=>typeof s!="undefined"?Number(s):void 0,"asNumber"),Qs=l(()=>!0,"asBoolean"),Co=l(([s,i])=>({name:s,amount:typeof i!="undefined"?Number(i):100}),"asFilter"),wo=l(([s,i])=>({dimensions:N(s,"x").map(Number),coords:N(i).map(Number)}),"asCrop"),To={enhance:yt,brightness:yt,exposure:yt,gamma:yt,contrast:yt,saturation:yt,vibrance:yt,warmth:yt,filter:Co,mirror:Qs,flip:Qs,rotate:yt,crop:wo};function er(s){let i={};for(let t of s){let[e,...r]=t.split("/");if(!tr.includes(e))continue;let n=To[e],o=n(r);i[e]=o}return i}l(er,"operationsToTransformations");var D=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),X=[D.CROP,D.TUNING,D.FILTERS],ir=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],sr=["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"],rr=["rotate","mirror","flip"],ct=Object.freeze({brightness:{zero:K.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:K.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:K.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:K.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:K.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:K.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:K.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:K.enhance,range:[0,100],keypointsNumber:1},filter:{zero:K.filter,range:[0,100],keypointsNumber:1}});var xo="https://ucarecdn.com",Eo="https://upload.uploadcare.com",Ao="https://social.uploadcare.com",$t={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:Mt(X),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:xo,baseUrl:Eo,socialBaseUrl:Ao,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var q=l(s=>String(s),"asString"),ht=l(s=>{let i=Number(s);if(Number.isNaN(i))throw new Error(`Invalid number: "${s}"`);return i},"asNumber"),O=l(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}"`)},"asBoolean"),$o=l(s=>s==="auto"?s:O(s),"asStore"),So={pubkey:q,multiple:O,multipleMin:ht,multipleMax:ht,confirmUpload:O,imgOnly:O,accept:q,externalSourcesPreferredTypes:q,store:$o,cameraMirror:O,sourceList:q,maxLocalFileSizeBytes:ht,thumbSize:ht,showEmptyList:O,useLocalImageEditor:O,useCloudImageEditor:O,cloudImageEditorTabs:q,removeCopyright:O,cropPreset:q,modalScrollLock:O,modalBackdropStrokes:O,sourceListWrap:O,remoteTabSessionKey:q,cdnCname:q,baseUrl:q,socialBaseUrl:q,secureSignature:q,secureExpire:q,secureDeliveryProxy:q,retryThrottledRequestMaxTimes:ht,multipartMinFileSize:ht,multipartChunkSize:ht,maxConcurrentRequests:ht,multipartMaxConcurrentRequests:ht,multipartMaxAttempts:ht,checkForUrlDuplicates:O,saveUrlForRecurrentUploads:O,groupOutput:O,userAgentIntegration:q},nr=l((s,i)=>{if(!(typeof i=="undefined"||i===null))try{return So[s](i)}catch(t){return console.error(`Invalid value for config key "${s}".`,t),$t[s]}},"normalizeConfigValue");var xi=Object.keys($t),ko=["metadata"],Io=l(s=>ko.includes(s),"isComplexKey"),Ei=xi.filter(s=>!Io(s)),Oo={...Object.fromEntries(Ei.map(s=>[rt(s),s])),...Object.fromEntries(Ei.map(s=>[s.toLowerCase(),s]))},Lo={...Object.fromEntries(xi.map(s=>[rt(s),W(s)])),...Object.fromEntries(xi.map(s=>[s.toLowerCase(),W(s)]))},We=class extends y{constructor(){super();u(this,"ctxOwner",!0);u(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries($t).map(([t,e])=>[W(t),e]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let e of Ei)this.sub(W(e),r=>{r!==$t[e]&&(t[e]=r)},!1);for(let e of xi){let r="__"+e;t[r]=t[e],Object.defineProperty(this,e,{set:n=>{if(t[r]=n,Ei.includes(e)){let o=[...new Set([rt(e),e.toLowerCase()])];for(let a of o)typeof n=="undefined"||n===null?this.removeAttribute(a):this.setAttribute(a,n.toString())}this.$[W(e)]!==n&&(typeof n=="undefined"||n===null?this.$[W(e)]=$t[e]:this.$[W(e)]=n)},get:()=>this.$[W(e)]}),typeof t[e]!="undefined"&&t[e]!==null&&(t[e]=t[r])}}attributeChangedCallback(t,e,r){if(e===r)return;let n=Oo[t],o=nr(n,r),a=o!=null?o:$t[n],c=this;c[n]=a}};l(We,"ConfigClass");We.bindAttributes(Lo);var or=We;var Dt=class extends y{constructor(){super(...arguments);u(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=this.getCssData(`--icon-${t}`);e&&(this.$.path=e)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};l(Dt,"Icon");Dt.template=``;Dt.bindAttributes({name:"name",size:"size"});var Ro="https://ucarecdn.com",Ft=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:Ro},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{default:"auto"},"cdn-operations":{},progressive:{},quality:{default:"smart"},"is-background-for":{}});var lr=l(s=>[...new Set(s)],"uniqueArray");var Xe="--lr-img-",ar="unresolved",re=2,ne=3,cr=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),ur=Object.create(null),hr;for(let s in Ft)ur[Xe+s]=((hr=Ft[s])==null?void 0:hr.default)||"";var qe=class extends Lt{constructor(){super(...arguments);u(this,"cssInit$",ur)}$$(t){return this.$[Xe+t]}set$$(t){for(let e in t)this.$[Xe+e]=t[e]}sub$$(t,e){this.sub(Xe+t,r=>{r===null||r===""||e(r)})}_fmtAbs(t){return!t.includes("//")&&!cr&&(t=new URL(t,document.baseURI).href),t}_getCdnModifiers(t=""){return M(t&&`resize/${t}`,this.$$("cdn-operations")||"",`format/${this.$$("format")||Ft.format.default}`,`quality/${this.$$("quality")||Ft.quality.default}`)}_getUrlBase(t=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(cr&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let e=this._getCdnModifiers(t);if(this.$$("src").startsWith(this.$$("cdn-cname")))return L(this.$$("src"),e);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(L(Et(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("uuid"))return this._proxyUrl(L(Et(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("proxy-cname"))return this._proxyUrl(L(this.$$("proxy-cname"),e,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(L(`https://${this.$$("pubkey")}.ucr.io/`,e,this._fmtAbs(this.$$("src"))))}_proxyUrl(t){return this.$$("secure-delivery-proxy")?Pe(this.$$("secure-delivery-proxy"),{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}_getElSize(t,e=1,r=!0){let n=t.getBoundingClientRect(),o=e*Math.round(n.width),a=r?"":e*Math.round(n.height);return o||a?`${o||""}x${a||""}`:null}_setupEventProxy(t){let e=l(n=>{n.stopPropagation();let o=new Event(n.type,n);this.dispatchEvent(o)},"proxifyEvent"),r=["load","error"];for(let n of r)t.addEventListener(n,e)}get img(){return this._img||(this._img=new Image,this._setupEventProxy(this.img),this._img.setAttribute(ar,""),this.img.onload=()=>{this.img.removeAttribute(ar)},this.initAttributes(),this.appendChild(this._img)),this._img}get bgSelector(){return this.$$("is-background-for")}initAttributes(){[...this.attributes].forEach(t=>{Ft[t.name]||this.img.setAttribute(t.name,t.value)})}get breakpoints(){return this.$$("breakpoints")?lr(N(this.$$("breakpoints")).map(t=>Number(t))):null}renderBg(t){let e=new Set;this.breakpoints?this.breakpoints.forEach(n=>{e.add(`url("${this._getUrlBase(n+"x")}") ${n}w`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(n*re+"x")}") ${n*re}w`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(n*ne+"x")}") ${n*ne}w`)}):(e.add(`url("${this._getUrlBase(this._getElSize(t))}") 1x`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,re))}") ${re}x`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,ne))}") ${ne}x`));let r=`image-set(${[...e].join(", ")})`;t.style.setProperty("background-image",r),t.style.setProperty("background-image","-webkit-"+r)}getSrcset(){let t=new Set;return this.breakpoints?this.breakpoints.forEach(e=>{t.add(this._getUrlBase(e+"x")+` ${e}w`),this.$$("hi-res-support")&&t.add(this._getUrlBase(e*re+"x")+` ${e*re}w`),this.$$("ultra-res-support")&&t.add(this._getUrlBase(e*ne+"x")+` ${e*ne}w`)}):(t.add(this._getUrlBase(this._getElSize(this.img))+" 1x"),this.$$("hi-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,2))+" 2x"),this.$$("ultra-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,3))+" 3x")),[...t].join()}getSrc(){return this._getUrlBase()}init(){this.bgSelector?[...document.querySelectorAll(this.bgSelector)].forEach(t=>{this.$$("intersection")?this.initIntersection(t,()=>{this.renderBg(t)}):this.renderBg(t)}):this.$$("intersection")?this.initIntersection(this.img,()=>{this.img.srcset=this.getSrcset(),this.img.src=this.getSrc()}):(this.img.srcset=this.getSrcset(),this.img.src=this.getSrc())}initIntersection(t,e){let r={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(n=>{n.forEach(o=>{o.isIntersecting&&(e(),this._isnObserver.unobserve(t))})},r),this._isnObserver.observe(t),this._observed||(this._observed=new Set),this._observed.add(t)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(t=>{this._isnObserver.unobserve(t)}),this._isnObserver=null)}static get observedAttributes(){return Object.keys(Ft)}attributeChangedCallback(t,e,r){window.setTimeout(()=>{this.$[Xe+t]=r})}};l(qe,"ImgBase");var Ge=class extends qe{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",i=>{this.$$("is-background-for")||(this.img.loading=i?"lazy":"eager")})}};l(Ge,"Img");var Vt=class extends v{constructor(){super(),this.init$={...this.init$,"*simpleButtonText":"",withDropZone:!0,onClick:()=>{this.initFlow()}}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",i=>{typeof i!="undefined"&&(this.$.withDropZone=O(i))}),this.subConfigValue("multiple",i=>{this.$["*simpleButtonText"]=i?this.l10n("upload-files"):this.l10n("upload-file")})}};l(Vt,"SimpleBtn");Vt.template=``;Vt.bindAttributes({dropzone:null});var oe=class extends _{constructor(){super(...arguments);u(this,"historyTracked",!0);u(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};l(oe,"StartFrom");oe.template='
';function Uo(s){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let e=l(r=>{r.type!=="loadend"&&t.abort(),i(!1)},"onLoad");t.onloadend=e,t.onprogress=e,t.readAsDataURL(s)}catch{i(!1)}})}l(Uo,"checkIsDirectory");function Po(s,i){return new Promise(t=>{let e=0,r=[],n=l(a=>{a||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),a.isFile?(e++,a.file(c=>{e--;let h=new File([c],c.name,{type:c.type||i});r.push({type:"file",file:h,fullPath:a.fullPath}),e===0&&t(r)})):a.isDirectory&&o(a.createReader())},"readEntry"),o=l(a=>{e++,a.readEntries(c=>{e--;for(let h of c)n(h);e===0&&t(r)})},"readReaderContent");n(s)})}l(Po,"readEntryContentAsync");function dr(s){let i=[],t=[];for(let e=0;e{c&&i.push(...c)}));continue}let o=r.getAsFile();o&&t.push(Uo(o).then(a=>{a||i.push({type:"file",file:o})}))}else r.kind==="string"&&r.type.match("^text/uri-list")&&t.push(new Promise(n=>{r.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}l(dr,"getDropItems");var V={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},pr=["focus"],Mo=100,ts=new Map;function No(s,i){let t=Math.max(Math.min(s[0],i.x+i.width),i.x),e=Math.max(Math.min(s[1],i.y+i.height),i.y);return Math.sqrt((s[0]-t)*(s[0]-t)+(s[1]-e)*(s[1]-e))}l(No,"distance");function es(s){let i=0,t=document.body,e=new Set,r=l(m=>e.add(m),"handleSwitch"),n=V.INACTIVE,o=l(m=>{s.shouldIgnore()&&m!==V.INACTIVE||(n!==m&&e.forEach(b=>b(m)),n=m)},"setState"),a=l(()=>i>0,"isDragging");r(m=>s.onChange(m));let c=l(()=>{i=0,o(V.INACTIVE)},"onResetEvent"),h=l(()=>{i+=1,n===V.INACTIVE&&o(V.ACTIVE)},"onDragEnter"),d=l(()=>{i-=1,a()||o(V.INACTIVE)},"onDragLeave"),p=l(m=>{m.preventDefault(),i=0,o(V.INACTIVE)},"onDrop"),f=l(m=>{if(s.shouldIgnore())return;a()||(i+=1);let b=[m.x,m.y],$=s.element.getBoundingClientRect(),E=Math.floor(No(b,$)),x=E{if(s.shouldIgnore())return;m.preventDefault();let b=await dr(m.dataTransfer);s.onItems(b),o(V.INACTIVE)},"onElementDrop");return t.addEventListener("drop",p),t.addEventListener("dragleave",d),t.addEventListener("dragenter",h),t.addEventListener("dragover",f),s.element.addEventListener("drop",g),pr.forEach(m=>{window.addEventListener(m,c)}),()=>{ts.delete(s.element),t.removeEventListener("drop",p),t.removeEventListener("dragleave",d),t.removeEventListener("dragenter",h),t.removeEventListener("dragover",f),s.element.removeEventListener("drop",g),pr.forEach(m=>{window.removeEventListener(m,c)})}}l(es,"addDropzone");var Bt=class extends v{constructor(){super(),this.init$={...this.init$,state:V.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,e=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),r=window.getComputedStyle(this),n=r.visibility!=="hidden"&&r.display!=="none";return t&&n&&e}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!O(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:O(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:O(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:O(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=es({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(e=>{e.type==="url"?this.addFileFromUrl(e.url,{source:Q.DROP_AREA}):e.type==="file"&&this.addFileFromObject(e.file,{source:Q.DROP_AREA,fullPath:e.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":_.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=es({element:i,onChange:t=>{var r;let e=(r=Object.entries(V).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&i.setAttribute("drag-state",e)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var r;let e=(r=Object.entries(V).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&this.setAttribute("drag-state",e)}),this.subConfigValue("sourceList",t=>{let e=N(t);this.$.isEnabled=e.includes(v.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.sub("isClickable",t=>{this.toggleAttribute("clickable",t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(e=>e!==this).filter(e=>e.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,e=this.uploadCollection.size;return!(i&&t&&e>=t||!i&&e>0)}destroyCallback(){var i,t,e,r;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(e=this._destroyDropzone)==null||e.call(this),(r=this._destroyContentWrapperDropzone)==null||r.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};l(Bt,"DropArea");Bt.template=`
{{text}}
`;Bt.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Do="src-type-",zt=class extends v{constructor(){super(...arguments);u(this,"_registeredTypes",{});u(this,"init$",{...this.init$,iconName:"default"})}initTypes(){this.registerType({type:v.sourceTypes.LOCAL,onClick:()=>{this.openSystemDialog()}}),this.registerType({type:v.sourceTypes.URL,activity:_.activities.URL,textKey:"from-url"}),this.registerType({type:v.sourceTypes.CAMERA,activity:_.activities.CAMERA,onClick:()=>{var e=document.createElement("input").capture!==void 0;return e&&this.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:_.activities.DRAW,icon:"edit-draw"});for(let t of Object.values(v.extSrcList))this.registerType({type:t,activity:_.activities.EXTERNAL,activityParams:{externalSourceType:t}})}initCallback(){super.initCallback(),this.initTypes(),this.setAttribute("role","button"),this.defineAccessor("type",t=>{t&&this.applyType(t)})}registerType(t){this._registeredTypes[t.type]=t}getType(t){return this._registeredTypes[t]}applyType(t){let e=this._registeredTypes[t];if(!e){console.warn("Unsupported source type: "+t);return}let{textKey:r=t,icon:n=t,activity:o,onClick:a,activityParams:c={}}=e;this.applyL10nKey("src-type",`${Do}${r}`),this.$.iconName=n,this.onclick=h=>{(a?a(h):!!o)&&this.set$({"*currentActivityParams":c,"*currentActivity":o})}}};l(zt,"SourceBtn");zt.template=`
`;zt.bindAttributes({type:null});var Ke=class extends y{initCallback(){super.initCallback(),this.subConfigValue("sourceList",i=>{let t=N(i),e="";t.forEach(r=>{e+=``}),this.cfg.sourceListWrap?this.innerHTML=e:this.outerHTML=e})}};l(Ke,"SourceList");function fr(s){let i=new Blob([s],{type:"image/svg+xml"});return URL.createObjectURL(i)}l(fr,"createSvgBlobUrl");function mr(s="#fff",i="rgba(0, 0, 0, .1)"){return fr(``)}l(mr,"checkerboardCssBg");function Ye(s="hsl(209, 21%, 65%)",i=32,t=32){return fr(``)}l(Ye,"fileCssBg");function gr(s,i=40){if(s.type==="image/svg+xml")return URL.createObjectURL(s);let t=document.createElement("canvas"),e=t.getContext("2d"),r=new Image,n=new Promise((o,a)=>{r.onload=()=>{let c=r.height/r.width;c>1?(t.width=i,t.height=i*c):(t.height=i,t.width=i/c),e.fillStyle="rgb(240, 240, 240)",e.fillRect(0,0,t.width,t.height),e.drawImage(r,0,0,t.width,t.height),t.toBlob(h=>{if(!h){a();return}let d=URL.createObjectURL(h);o(d)})},r.onerror=c=>{a(c)}});return r.src=URL.createObjectURL(s),n}l(gr,"generateThumb");var B=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),it=class extends v{constructor(){super();u(this,"pauseRender",!0);u(this,"_entrySubs",new Set);u(this,"_entry",null);u(this,"_isIntersecting",!1);u(this,"_debouncedGenerateThumb",I(this._generateThumbnail.bind(this),100));u(this,"_debouncedCalculateState",I(this._calculateState.bind(this),100));u(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:B.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===_.activities.DETAILS)?this.$["*currentActivity"]=_.activities.DETAILS:this.$["*currentActivity"]=_.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let e=this.getOutputData(r=>r.getValue("uuid")===t);this.emit(k.REMOVE,e,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[e]=t;this._isIntersecting=e.isIntersecting,e.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),e.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,e=B.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?e=B.FAILED:t.getValue("validationMultipleLimitMsg")?e=B.LIMIT_OVERFLOW:t.getValue("isUploading")?e=B.UPLOADING:t.getValue("fileInfo")&&(e=B.FINISHED),this.$.state=e}async _generateThumbnail(){var e;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let r=this.cfg.thumbSize,n=this.proxyUrl(L(Et(this.cfg.cdnCname,this._entry.getValue("uuid")),M(t.getValue("cdnUrlModifiers"),`scale_crop/${r}x${r}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((e=t.getValue("file"))!=null&&e.type.includes("image"))try{let r=await gr(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",r)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",Ye(n))}else{let r=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",Ye(r))}}_subEntry(t,e){let r=this._entry.subscribe(t,n=>{this.isConnected&&e(n)});this._entrySubs.add(r)}_handleEntryId(t){var r;this._reset();let e=(r=this.uploadCollection)==null?void 0:r.read(t);this._entry=e,e&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||e.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=e.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{it.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),it.activeInstances.add(this)}_handleState(t){var e,r,n;this.set$({isFailed:t===B.FAILED,isLimitOverflow:t===B.LIMIT_OVERFLOW,isUploading:t===B.UPLOADING,isFinished:t===B.FINISHED,progressVisible:t===B.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((e=this._entry)==null?void 0:e.getValue("isImage"))&&((r=this._entry)==null?void 0:r.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===B.FAILED||t===B.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===B.FINISHED&&(this.$.badgeIcon="badge-success"),t===B.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),it.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,a;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let e=this.cfg.multiple?this.cfg.multipleMax:1;if(e&&this.uploadCollection.size>e)return;let r=this.getOutputData(c=>!c.getValue("fileInfo"));this.emit(k.UPLOAD_START,r,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let c=new AbortController;t.setValue("abortController",c);let h=l(async()=>{let p=this.getUploadClientOptions();return Wi(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...p,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:f=>{if(f.isComputable){let g=f.value*100;t.setValue("uploadProgress",g)}this.$.progressUnknown=!f.isComputable},signal:c.signal,metadata:await this.getMetadataFor(t.uid)})},"uploadTask"),d=await this.$["*uploadQueue"].add(h);t.setMultipleValues({fileInfo:d,isUploading:!1,fileName:d.originalFilename,fileSize:d.size,isImage:d.isImage,mimeType:(a=(o=(n=d.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?a:d.mimeType,uuid:d.uuid,cdnUrl:d.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(c){console.warn("Upload error",c),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),c instanceof U?c.isCancel||t.setValue("uploadError",c):t.setValue("uploadError",new Error("Unexpected error"))}}};l(it,"FileItem");it.template=`
{{itemName}}{{errorText}}
`;it.activeInstances=new Set;var jt=class extends y{constructor(){super();u(this,"_handleBackdropClick",l(()=>{this._closeDialog()},"_handleBackdropClick"));u(this,"_closeDialog",l(()=>{this.setOrAddState("*modalActive",!1)},"_closeDialog"));u(this,"_handleDialogClose",l(()=>{this._closeDialog()},"_handleDialogClose"));u(this,"_handleDialogMouseDown",l(t=>{this._mouseDownTarget=t.target},"_handleDialogMouseDown"));u(this,"_handleDialogMouseUp",l(t=>{t.target===this.ref.dialog&&t.target===this._mouseDownTarget&&this._closeDialog()},"_handleDialogMouseUp"));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(){if(super.initCallback(),typeof HTMLDialogElement=="function")this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp);else{this.setAttribute("dialog-fallback","");let t=document.createElement("div");t.className="backdrop",this.appendChild(t),t.addEventListener("click",this._handleBackdropClick)}this.sub("*modalActive",t=>{this.$.isOpen!==t&&(this.$.isOpen=t),t&&this.cfg.modalScrollLock?document.body.style.overflow="hidden":document.body.style.overflow=""}),this.subConfigValue("modalBackdropStrokes",t=>{t?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.sub("isOpen",t=>{t?this.show():this.hide()})}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)}};l(jt,"Modal"),u(jt,"StateConsumerScope","modal");jt.template=``;var Ze=class{constructor(){u(this,"caption","");u(this,"text","");u(this,"iconName","");u(this,"isError",!1)}};l(Ze,"UiMessage");var le=class extends y{constructor(){super(...arguments);u(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};l(le,"MessageBox");le.template=`
{{captionTxt}}
{{msgTxt}}
`;var ae=class extends v{constructor(){super();u(this,"historyTracked",!0);u(this,"activityType",_.activities.UPLOAD_LIST);u(this,"_debouncedHandleCollectionUpdate",I(()=>{this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),!this.couldOpenActivity&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(e=>!!e.getValue("fileInfo"));this.emit(k.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var d,p;let t=!!this.cfg.multiple,e=t?(d=this.cfg.multipleMin)!=null?d:0:1,r=t?(p=this.cfg.multipleMax)!=null?p:0:1,n=this.uploadCollection.size,o=e?nr:!1;return{passed:!o&&!a,tooFew:o,tooMany:a,min:e,max:r,exact:r===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,e=this._validateFilesCount();if(t&&!e.passed){let r=new Ze,n=e.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";r.caption=this.l10n("files-count-limit-error-title"),r.text=this.l10n(n,{min:e.min,max:e.max,total:t}),r.isError=!0,this.set$({"*message":r})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),r={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let g of t){let m=this.uploadCollection.read(g);m.getValue("fileInfo")&&!m.getValue("validationErrorMsg")&&(r.succeed+=1),m.getValue("isUploading")&&(r.uploading+=1),(m.getValue("validationErrorMsg")||m.getValue("uploadError"))&&(r.failed+=1),m.getValue("validationMultipleLimitMsg")&&(r.limitOverflow+=1)}let{passed:n,tooMany:o,exact:a}=this._validateFilesCount(),c=r.failed===0&&r.limitOverflow===0,h=!1,d=!1,p=!1;r.total-r.succeed-r.uploading-r.failed>0&&n?h=!0:(d=!0,p=r.total===r.succeed&&n&&c),this.set$({doneBtnVisible:d,doneBtnEnabled:p,uploadBtnVisible:h,addMoreBtnEnabled:r.total===0||!o&&!a,addMoreBtnVisible:!a||this.cfg.multiple,headerText:this._getHeaderText(r)})}_getHeaderText(t){let e=l(r=>{let n=t[r];return this.l10n(`header-${r}`,{count:n})},"localizedText");return t.uploading>0?e("uploading"):t.failed>0?e("failed"):t.succeed>0?e("succeed"):e("total")}get couldOpenActivity(){return this.cfg.showEmptyList||this.uploadCollection.size>0}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{!this.couldOpenActivity&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};l(ae,"UploadList");ae.template=`{{headerText}}
`;var ce=class extends v{constructor(){super(...arguments);u(this,"activityType",_.activities.URL);u(this,"init$",{...this.init$,importDisabled:!0,onUpload:t=>{t.preventDefault();let e=this.ref.input.value;this.addFileFromUrl(e,{source:Q.URL_TAB}),this.$["*currentActivity"]=_.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:t=>{let e=t.target.value;this.set$({importDisabled:!e})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};l(ce,"UrlSource");ce.template=`
`;var is=l(()=>typeof navigator.permissions!="undefined","canUsePermissionsApi");var he=class extends v{constructor(){super(...arguments);u(this,"activityType",_.activities.CAMERA);u(this,"_unsubPermissions",null);u(this,"init$",{...this.init$,video:null,videoTransformCss:null,shotBtnDisabled:!0,videoHidden:!0,messageHidden:!0,requestBtnHidden:is(),l10nMessage:null,originalErrorMessage:null,cameraSelectOptions:null,cameraSelectHidden:!0,onCameraSelectChange:t=>{this._selectedCameraId=t.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>{this._shot()},onRequestPermissions:()=>{this._capture()}});u(this,"_onActivate",l(()=>{is()&&this._subscribePermissions(),this._capture()},"_onActivate"));u(this,"_onDeactivate",l(()=>{this._unsubPermissions&&this._unsubPermissions(),this._stopCapture()},"_onDeactivate"));u(this,"_handlePermissionsChange",l(()=>{this._capture()},"_handlePermissionsChange"));u(this,"_setPermissionsState",I(t=>{this.$.originalErrorMessage=null,this.classList.toggle("initialized",t==="granted"),t==="granted"?this.set$({videoHidden:!1,shotBtnDisabled:!1,messageHidden:!0}):t==="prompt"?(this.$.l10nMessage=this.l10n("camera-permissions-prompt"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage=this.l10n("camera-permissions-denied"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture())},300))}async _subscribePermissions(){try{(await navigator.permissions.query({name:"camera"})).addEventListener("change",this._handlePermissionsChange)}catch(t){console.log("Failed to use permissions API. Fallback to manual request mode.",t),this._capture()}}async _capture(){let t={video:{width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},audio:!1};this._selectedCameraId&&(t.video.deviceId={exact:this._selectedCameraId}),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d");try{this._setPermissionsState("prompt");let e=await navigator.mediaDevices.getUserMedia(t);e.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=e,this._capturing=!0,this._setPermissionsState("granted")}catch(e){this._setPermissionsState("denied"),this.$.originalErrorMessage=e.message}}_stopCapture(){var t;this._capturing&&((t=this.$.video)==null||t.getTracks()[0].stop(),this.$.video=null,this._capturing=!1)}_shot(){this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this._ctx.drawImage(this.ref.video,0,0);let t=Date.now(),e=`camera-${t}.png`;this._canvas.toBlob(r=>{let n=new File([r],e,{lastModified:t,type:"image/png"});this.addFileFromObject(n,{source:Q.CAMERA}),this.set$({"*currentActivity":_.activities.UPLOAD_LIST})})}async initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",t=>{this.$.videoTransformCss=t?"scaleX(-1)":null});try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(r=>r.kind==="videoinput").map((r,n)=>({text:r.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:r.deviceId}));e.length>1&&(this.$.cameraSelectOptions=e,this.$.cameraSelectHidden=!1)}catch{}}};l(he,"CameraSource");he.template=`
{{l10nMessage}}{{originalErrorMessage}}
`;var Ai=class extends v{constructor(){super(...arguments);u(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}};l(Ai,"UploadCtxProviderClass");var _r=Ai;var ue=class extends v{constructor(){super(...arguments);u(this,"activityType",_.activities.DETAILS);u(this,"pauseRender",!0);u(this,"init$",{...this.init$,checkerboard:!1,fileSize:null,fileName:"",cdnUrl:"",errorTxt:"",cloudEditBtnHidden:!0,onNameInput:null,onBack:()=>{this.historyBack()},onRemove:()=>{this.uploadCollection.remove(this.entry.uid),this.historyBack()},onCloudEdit:()=>{this.entry.getValue("uuid")&&(this.$["*currentActivity"]=_.activities.CLOUD_IMG_EDIT)}})}showNonImageThumb(){let t=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon"),e=Ye(t,108,108);this.ref.filePreview.setImageUrl(e),this.set$({checkerboard:!1})}initCallback(){super.initCallback(),this.render(),this.$.fileSize=this.l10n("file-size-unknown"),this.registerActivity(this.activityType,{onDeactivate:()=>{this.ref.filePreview.clear()}}),this.sub("*focusedEntry",t=>{if(!t)return;this._entrySubs?this._entrySubs.forEach(n=>{this._entrySubs.delete(n),n.remove()}):this._entrySubs=new Set,this.entry=t;let e=t.getValue("file");if(e){this._file=e;let n=Be(this._file);n&&!t.getValue("cdnUrl")&&(this.ref.filePreview.setImageFile(this._file),this.set$({checkerboard:!0})),n||this.showNonImageThumb()}let r=l((n,o)=>{this._entrySubs.add(this.entry.subscribe(n,o))},"tmpSub");r("fileName",n=>{this.$.fileName=n,this.$.onNameInput=()=>{let o=this.ref.file_name_input.value;Object.defineProperty(this._file,"name",{writable:!0,value:o}),this.entry.setValue("fileName",o)}}),r("fileSize",n=>{this.$.fileSize=Number.isFinite(n)?this.fileSizeFmt(n):this.l10n("file-size-unknown")}),r("uploadError",n=>{this.$.errorTxt=n==null?void 0:n.message}),r("externalUrl",n=>{n&&(this.entry.getValue("uuid")||this.showNonImageThumb())}),r("cdnUrl",n=>{let o=this.cfg.useCloudImageEditor&&n&&this.entry.getValue("isImage");if(n&&this.ref.filePreview.clear(),this.set$({cdnUrl:n,cloudEditBtnHidden:!o}),n&&this.entry.getValue("isImage")){let a=L(n,M("format/auto","preview"));this.ref.filePreview.setImageUrl(this.proxyUrl(a))}})})}};l(ue,"UploadDetails");ue.template=`
{{fileSize}}
{{errorTxt}}
`;var $i=class{constructor(){u(this,"captionL10nStr","confirm-your-action");u(this,"messageL10Str","are-you-sure");u(this,"confirmL10nStr","yes");u(this,"denyL10nStr","no")}confirmAction(){console.log("Confirmed")}denyAction(){this.historyBack()}};l($i,"UiConfirmation");var de=class extends _{constructor(){super(...arguments);u(this,"activityType",_.activities.CONFIRMATION);u(this,"_defaults",new $i);u(this,"init$",{...this.init$,activityCaption:"",messageTxt:"",confirmBtnTxt:"",denyBtnTxt:"","*confirmation":null,onConfirm:this._defaults.confirmAction,onDeny:this._defaults.denyAction.bind(this)})}initCallback(){super.initCallback(),this.set$({messageTxt:this.l10n(this._defaults.messageL10Str),confirmBtnTxt:this.l10n(this._defaults.confirmL10nStr),denyBtnTxt:this.l10n(this._defaults.denyL10nStr)}),this.sub("*confirmation",t=>{t&&this.set$({"*currentActivity":_.activities.CONFIRMATION,activityCaption:this.l10n(t.captionL10nStr),messageTxt:this.l10n(t.messageL10Str),confirmBtnTxt:this.l10n(t.confirmL10nStr),denyBtnTxt:this.l10n(t.denyL10nStr),onDeny:()=>{t.denyAction()},onConfirm:()=>{t.confirmAction()}})})}};l(de,"ConfirmationDialog");de.template=`{{activityCaption}}
{{messageTxt}}
`;var pe=class extends v{constructor(){super(...arguments);u(this,"init$",{...this.init$,visible:!1,unknown:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let t=this.uploadCollection.items().some(e=>this.uploadCollection.read(e).getValue("isUploading"));this.$.visible=t}),this.sub("visible",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",t=>{this.$.value=t})}destroyCallback(){var t;super.destroyCallback(),(t=this._unobserveCollection)==null||t.call(this)}};l(pe,"ProgressBarCommon");pe.template=``;var fe=class extends y{constructor(){super(...arguments);u(this,"_value",0);u(this,"_unknownMode",!1);u(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};l(fe,"ProgressBar");fe.template='
';var Y="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";var Ht=class extends y{constructor(){super();u(this,"init$",{...this.init$,checkerboard:!1,src:Y})}initCallback(){super.initCallback(),this.sub("checkerboard",()=>{this.style.backgroundImage=this.hasAttribute("checkerboard")?`url(${mr()})`:"unset"})}destroyCallback(){super.destroyCallback(),URL.revokeObjectURL(this._lastObjectUrl)}setImage(t){this.$.src=t.src}setImageFile(t){let e=URL.createObjectURL(t);this.$.src=e,this._lastObjectUrl=e}setImageUrl(t){this.$.src=t}clear(){URL.revokeObjectURL(this._lastObjectUrl),this.$.src=Y}};l(Ht,"FilePreview");Ht.template='';Ht.bindAttributes({checkerboard:"checkerboard"});var br="--cfg-ctx-name",R=class extends y{get cfgCssCtxName(){return this.getCssData(br,!0)}get cfgCtxName(){var t;let i=((t=this.getAttribute("ctx-name"))==null?void 0:t.trim())||this.cfgCssCtxName||this.__cachedCfgCtxName;return this.__cachedCfgCtxName=i,i}connectedCallback(){var i;if(!this.connectedOnce){let t=(i=this.getAttribute("ctx-name"))==null?void 0:i.trim();t&&this.style.setProperty(br,`'${t}'`)}super.connectedCallback()}parseCfgProp(i){return{...super.parseCfgProp(i),ctx:S.getCtx(this.cfgCtxName)}}};l(R,"CloudImageEditorBase");function yr(...s){return s.reduce((i,t)=>{if(typeof t=="string")return i[t]=!0,i;for(let e of Object.keys(t))i[e]=t[e];return i},{})}l(yr,"normalize");function F(...s){let i=yr(...s);return Object.keys(i).reduce((t,e)=>(i[e]&&t.push(e),t),[]).join(" ")}l(F,"classNames");function vr(s,...i){let t=yr(...i);for(let e of Object.keys(t))s.classList.toggle(e,t[e])}l(vr,"applyClassNames");var Cr=l(s=>{if(!s)return X;let i=Vs(s).filter(t=>X.includes(t));return i.length===0?X:i},"parseTabs");function wr(s){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":X,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:Y,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:Mt(X),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let i=s.querySelectorAll("img");for(let t of i){let e=t.src;t.src=Y,t.src=e}s.$["*networkProblems"]=!1},"*on.apply":i=>{if(!i)return;let t=s.$["*originalUrl"],e=M(At(i),"preview"),r=L(t,e),n={originalUrl:t,cdnUrlModifiers:e,cdnUrl:r,transformations:i};s.dispatchEvent(new CustomEvent("apply",{detail:n,bubbles:!0,composed:!0})),s.remove()},"*on.cancel":()=>{s.remove(),s.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}l(wr,"initState");var Tr=`
Network error
{{fileType}}
{{msg}}
`;var tt=class extends R{constructor(){super();u(this,"_debouncedShowLoader",I(this._showLoader.bind(this),300));this.init$={...this.init$,...wr(this)}}get ctxName(){return this.autoCtxName}_showLoader(t){this.$.showLoader=t}_waitForSize(){return new Promise((e,r)=>{let n=setTimeout(()=>{r(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),o=new ResizeObserver(([a])=>{a.contentRect.width>0&&a.contentRect.height>0&&(e(),clearTimeout(n),o.disconnect())});o.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(await this._waitForSize(),this.$["*tabId"]===D.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate(),this.$["*editorTransformations"]={},this.$.cdnUrl){let t=Hs(this.$.cdnUrl);this.$["*originalUrl"]=Et(this.$.cdnUrl,t);let e=Ws(this.$.cdnUrl),r=er(e);this.$["*editorTransformations"]=r}else if(this.$.uuid)this.$["*originalUrl"]=Et(this.cfg.cdnCname,this.$.uuid);else throw new Error("No UUID nor CDN URL provided");try{let t=L(this.$["*originalUrl"],M("json")),e=await fetch(t).then(o=>o.json()),{width:r,height:n}=e;this.$["*imageSize"]={width:r,height:n},this.$["*tabId"]===D.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(t){t&&console.error("Failed to load image info",t)}}async initEditor(){try{await this._waitForSize()}catch(t){this.isConnected&&console.error(t.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==Y&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",t=>{let e=this.ref["img-el"];e.src!==t&&(this._imgLoading=!0,e.src=t||Y)}),this.sub("cropPreset",t=>{this.$["*cropPresetList"]=Ci(t)}),this.sub("tabs",t=>{this.$["*tabList"]=Cr(t)}),this.sub("*tabId",t=>{this.ref["img-el"].className=F("image",{image_hidden_to_cropper:t===D.CROP,image_hidden_effects:t!==D.CROP})}),this.classList.add("editor_ON"),this.sub("*networkProblems",t=>{this.$["presence.networkProblems"]=t,this.$["presence.modalCaption"]=!t}),this.sub("*editorTransformations",t=>{if(Object.keys(t).length===0)return;let e=this.$["*originalUrl"],r=M(At(t),"preview"),n=L(e,r),o={originalUrl:e,cdnUrlModifiers:r,cdnUrl:n,transformations:t};this.dispatchEvent(new CustomEvent("change",{detail:o,bubbles:!0,composed:!0}))},!1),this.sub("uuid",t=>t&&this.updateImage()),this.sub("cdnUrl",t=>t&&this.updateImage())}};l(tt,"CloudImageEditorBlock"),u(tt,"className","cloud-image-editor");tt.template=Tr;tt.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var me=class extends R{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(i){let t=this.$["*imageBox"];if(!t)return;if(i===""&&t.height<=C&&t.width<=C)return!0;let e=t.height<=C&&(i.includes("n")||i.includes("s")),r=t.width<=C&&(i.includes("e")||i.includes("w"));return e||r}_createBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i,o=this.ref["svg-el"],a=J("mask",{id:"backdrop-mask"}),c=J("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),h=J("rect",{x:t,y:e,width:r,height:n,fill:"black"});a.appendChild(c),a.appendChild(h);let d=J("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});o.appendChild(d),o.appendChild(a),this._backdropMask=a,this._backdropMaskInner=h}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i;this._backdropMaskInner&&Pt(this._backdropMaskInner,{x:t,y:e,width:r,height:n})}_updateFrame(){let i=this.$["*cropBox"];if(!(!i||!this._frameGuides||!this._frameThumbs)){for(let t of Object.values(this._frameThumbs)){let{direction:e,pathNode:r,interactionNode:n,groupNode:o}=t,a=e==="",c=e.length===2,{x:h,y:d,width:p,height:f}=i;if(a){let m={x:h+p/3,y:d+f/3,width:p/3,height:f/3};Pt(n,m)}else{let m=xt(Math.min(p,f)/(24*2+34)/2,0,1),{d:b,center:$}=c?Os(i,e,m):Ls(i,e,m),E=Math.max(Ki*xt(Math.min(p,f)/Ki/3,0,1),Is);Pt(n,{x:$[0]-E,y:$[1]-E,width:E*2,height:E*2}),Pt(r,{d:b})}let g=this._shouldThumbBeDisabled(e);o.setAttribute("class",F("thumb",{"thumb--hidden":g,"thumb--visible":!g}))}Pt(this._frameGuides,{x:i.x-1*.5,y:i.y-1*.5,width:i.width+1,height:i.height+1})}}_createThumbs(){let i={};for(let t=0;t<3;t++)for(let e=0;e<3;e++){let r=`${["n","","s"][t]}${["w","","e"][e]}`,n=J("g");n.classList.add("thumb"),n.setAttribute("with-effects","");let o=J("rect",{fill:"transparent"}),a=J("path",{stroke:"currentColor",fill:"none","stroke-width":3});n.appendChild(a),n.appendChild(o),i[r]={direction:r,pathNode:a,interactionNode:o,groupNode:n},o.addEventListener("pointerdown",this._handlePointerDown.bind(this,r))}return i}_createGuides(){let i=J("svg"),t=J("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"#000000","stroke-width":1,"stroke-opacity":.5});i.appendChild(t);for(let e=1;e<=2;e++){let r=J("line",{x1:`${Fe*e}%`,y1:"0%",x2:`${Fe*e}%`,y2:"100%",stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}for(let e=1;e<=2;e++){let r=J("line",{x1:"0%",y1:`${Fe*e}%`,x2:"100%",y2:`${Fe*e}%`,stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}return i.classList.add("guides","guides--semi-hidden"),i}_createFrame(){let i=this.ref["svg-el"],t=document.createDocumentFragment(),e=this._createGuides();t.appendChild(e);let r=this._createThumbs();for(let{groupNode:n}of Object.values(r))t.appendChild(n);i.appendChild(t),this._frameThumbs=r,this._frameGuides=e}_handlePointerDown(i,t){if(!this._frameThumbs)return;let e=this._frameThumbs[i];if(this._shouldThumbBeDisabled(i))return;let r=this.$["*cropBox"],{x:n,y:o}=this.ref["svg-el"].getBoundingClientRect(),a=t.x-n,c=t.y-o;this.$.dragging=!0,this._draggingThumb=e,this._dragStartPoint=[a,c],this._dragStartCrop={...r}}_handlePointerUp_(i){this._updateCursor(),this.$.dragging&&(i.stopPropagation(),i.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(i){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;i.stopPropagation(),i.preventDefault();let t=this.ref["svg-el"],{x:e,y:r}=t.getBoundingClientRect(),n=i.x-e,o=i.y-r,a=n-this._dragStartPoint[0],c=o-this._dragStartPoint[1],{direction:h}=this._draggingThumb,d=this._calcCropBox(h,[a,c]);d&&(this.$["*cropBox"]=d)}_calcCropBox(i,t){var h,d;let[e,r]=t,n=this.$["*imageBox"],o=(h=this._dragStartCrop)!=null?h:this.$["*cropBox"],a=(d=this.$["*cropPresetList"])==null?void 0:d[0],c=a?a.width/a.height:void 0;if(i===""?o=Us({rect:o,delta:[e,r],imageBox:n}):o=Ps({rect:o,delta:[e,r],direction:i,aspectRatio:c,imageBox:n}),!Object.values(o).every(p=>Number.isFinite(p)&&p>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:o});return}return ee(se(o),this.$["*imageBox"])}_handleSvgPointerMove_(i){if(!this._frameThumbs)return;let t=Object.values(this._frameThumbs).find(e=>{if(this._shouldThumbBeDisabled(e.direction))return!1;let n=e.interactionNode.getBoundingClientRect(),o={x:n.x,y:n.y,width:n.width,height:n.height};return Ms(o,[i.x,i.y])});this._hoverThumb=t,this._updateCursor()}_updateCursor(){let i=this._hoverThumb;this.ref["svg-el"].style.cursor=i?Rs(i.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(i){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:t})=>t).forEach(t=>{t.setAttribute("class",F("thumb",{"thumb--hidden":!i,"thumb--visible":i}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",i=>{i&&(this._guidesHidden=i.height<=C||i.width<=C,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",i=>{this._frameGuides&&this._frameGuides.setAttribute("class",F({"guides--hidden":this._guidesHidden,"guides--visible":!this._guidesHidden&&i,"guides--semi-hidden":!this._guidesHidden&&!i}))}),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)}};l(me,"CropFrame");me.template='';var ut=class extends R{constructor(){super(...arguments);u(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.sub("title",t=>{this._titleEl&&(this._titleEl.style.display=t?"block":"none")}),this.sub("active",t=>{this.className=F({active:t,not_active:!t})}),this.sub("on.click",t=>{this.onclick=t})}};l(ut,"EditorButtonControl");ut.template=`
{{title}}
`;function Vo(s){let i=s+90;return i=i>=360?0:i,i}l(Vo,"nextAngle");function Bo(s,i){return s==="rotate"?Vo(i):["mirror","flip"].includes(s)?!i:null}l(Bo,"nextValue");var Xt=class extends ut{initCallback(){super.initCallback(),this.defineAccessor("operation",i=>{i&&(this._operation=i,this.$.icon=i)}),this.$["on.click"]=i=>{let t=this.$["*cropperEl"].getValue(this._operation),e=Bo(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};l(Xt,"EditorCropButtonControl");var Je={FILTER:"filter",COLOR_OPERATION:"color_operation"},dt="original",ge=class extends R{constructor(){super(...arguments);u(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":t=>{this.$["*faderEl"].set(t),this.$.value=t}})}setOperation(t,e){this._controlType=t==="filter"?Je.FILTER:Je.COLOR_OPERATION,this._operation=t,this._iconName=t,this._title=t.toUpperCase(),this._filter=e,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===dt?void 0:this.$.value,filter:this._filter===dt?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:t,zero:e}=ct[this._operation],[r,n]=t;this.$.min=r,this.$.max=n,this.$.zero=e;let o=this.$["*editorTransformations"][this._operation];if(this._controlType===Je.FILTER){let a=n;if(o){let{name:c,amount:h}=o;a=c===this._filter?h:n}this.$.value=a,this.$.defaultValue=a}if(this._controlType===Je.COLOR_OPERATION){let a=typeof o!="undefined"?o:e;this.$.value=a,this.$.defaultValue=a}}apply(){let t;this._controlType===Je.FILTER?this._filter===dt?t=null:t={name:this._filter,amount:this.$.value}:t=this.$.value;let e={...this.$["*editorTransformations"],[this._operation]:t};this.$["*editorTransformations"]=e}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",t=>{this._originalUrl=t}),this.sub("value",t=>{let e=`${this._filter||this._operation} ${t}`;this.$["*operationTooltip"]=e})}};l(ge,"EditorSlider");ge.template=``;function Qe(s){let i=new Image;return{promise:new Promise((r,n)=>{i.src=s,i.onload=r,i.onerror=n}),image:i,cancel:l(()=>{i.naturalWidth===0&&(i.src=Y)},"cancel")}}l(Qe,"preloadImage");function ti(s){let i=[];for(let n of s){let o=Qe(n);i.push(o)}let t=i.map(n=>n.image);return{promise:Promise.allSettled(i.map(n=>n.promise)),images:t,cancel:l(()=>{i.forEach(n=>{n.cancel()})},"cancel")}}l(ti,"batchPreloadImages");var St=class extends ut{constructor(){super(...arguments);u(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,r=Math.ceil(e*t),n=e>=2?"lightest":"normal",o=100,a={...this.$["*editorTransformations"]};return a[this._operation]=this._filter!==dt?{name:this._filter,amount:o}:void 0,L(this._originalUrl,M(Ti,At(a),`quality/${n}`,`scale_crop/${r}x${r}/center`))}_observerCallback(t,e){if(t[0].isIntersecting){let n=this.proxyUrl(this._previewSrc()),o=this.ref["preview-el"],{promise:a,cancel:c}=Qe(n);this._cancelPreload=c,a.catch(h=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:h})}).finally(()=>{o.style.backgroundImage=`url(${n})`,o.setAttribute("loaded",""),e.unobserve(this)})}else this._cancelPreload&&this._cancelPreload()}initCallback(){super.initCallback(),this.$["on.click"]=e=>{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===dt,this.$.icon=this.$.isOriginal?"original":"slider"}),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("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 r=this.ref["icon-el"];r.style.opacity=e?"1":"0";let n=this.ref["preview-el"];e?n.style.opacity="0":n.style.backgroundImage&&(n.style.opacity="1")}),this.sub("*networkProblems",e=>{if(!e){let r=this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"];n.style.backgroundImage&&(n.style.backgroundImage="none",n.style.backgroundImage=`url(${r})`)}})}destroyCallback(){var t;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),this._cancelPreload&&this._cancelPreload()}};l(St,"EditorFilterControl");St.template=`
`;var qt=class extends ut{constructor(){super(...arguments);u(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=t=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.$.title=this.l10n(t))}),this.sub("*editorTransformations",t=>{if(!this._operation)return;let{zero:e}=ct[this._operation],r=t[this._operation],n=typeof r!="undefined"?r!==e:!1;this.$.active=n})}};l(qt,"EditorOperationControl");var xr=l((s,i)=>{let t,e,r;return(...n)=>{t?(clearTimeout(e),e=setTimeout(()=>{Date.now()-r>=i&&(s(...n),r=Date.now())},Math.max(i-(Date.now()-r),0))):(s(...n),r=Date.now(),t=!0)}},"throttle");function Er(s,i){let t={};for(let e of i){let r=s[e];(s.hasOwnProperty(e)||r!==void 0)&&(t[e]=r)}return t}l(Er,"pick");function _e(s,i,t){let r=window.devicePixelRatio,n=Math.min(Math.ceil(i*r),3e3),o=r>=2?"lightest":"normal";return L(s,M(Ti,At(t),`quality/${o}`,`stretch/off/-/resize/${n}x`))}l(_e,"viewerImageSrc");function zo(s){return s?[({dimensions:t,coords:e})=>[...t,...e].every(r=>Number.isInteger(r)&&Number.isFinite(r)),({dimensions:t,coords:e})=>t.every(r=>r>0)&&e.every(r=>r>=0)].every(t=>t(s)):!0}l(zo,"validateCrop");var be=class extends R{constructor(){super(),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=I(this._commit.bind(this),300),this._handleResizeThrottled=xr(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 i=this.$["*editorTransformations"],t=Er(i,Object.keys(this.$["*operations"])),e={...this.$["*operations"],...t};this.$["*operations"]=e}_initCanvas(){let i=this.ref["canvas-el"],t=i.getContext("2d"),e=this.offsetWidth,r=this.offsetHeight,n=window.devicePixelRatio;i.style.width=`${e}px`,i.style.height=`${r}px`,i.width=e*n,i.height=r*n,t==null||t.scale(n,n),this._canvas=i,this._ctx=t}_alignImage(){if(!this._isActive||!this.$.image)return;let i=this.$.image,t=this.$["*padding"],e=this.$["*operations"],{rotate:r}=e,n={width:this.offsetWidth,height:this.offsetHeight},o=ie({width:i.naturalWidth,height:i.naturalHeight},r),a;if(o.width>n.width-t*2||o.height>n.height-t*2){let c=o.width/o.height,h=n.width/n.height;if(c>h){let d=n.width-t*2,p=d/c,f=0+t,g=t+(n.height-t*2)/2-p/2;a={x:f,y:g,width:d,height:p}}else{let d=n.height-t*2,p=d*c,f=t+(n.width-t*2)/2-p/2,g=0+t;a={x:f,y:g,width:p,height:d}}}else{let{width:c,height:h}=o,d=t+(n.width-t*2)/2-c/2,p=t+(n.height-t*2)/2-h/2;a={x:d,y:p,width:c,height:h}}this.$["*imageBox"]=se(a)}_alignCrop(){var p;let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,n=this.$["*editorTransformations"].crop,{width:o,x:a,y:c}=this.$["*imageBox"];if(n){let{dimensions:[f,g],coords:[m,b]}=n,{width:$}=ie(this._imageSize,r),E=o/$;i=ee(se({x:a+m*E,y:c+b*E,width:f*E,height:g*E}),this.$["*imageBox"])}let h=(p=this.$["*cropPresetList"])==null?void 0:p[0],d=h?h.width/h.height:void 0;if(!Ns(i,t)||d&&!Ds(i,d)){let f=t.width/t.height,g=t.width,m=t.height;d&&(f>d?g=Math.min(t.height*d,t.width):m=Math.min(t.width/d,t.height)),i={x:t.x+t.width/2-g/2,y:t.y+t.height/2-m/2,width:g,height:m}}this.$["*cropBox"]=ee(se(i),this.$["*imageBox"])}_drawImage(){let i=this._ctx;if(!i)return;let t=this.$.image,e=this.$["*imageBox"],r=this.$["*operations"],{mirror:n,flip:o,rotate:a}=r,c=ie({width:e.width,height:e.height},a);i.save(),i.translate(e.x+e.width/2,e.y+e.height/2),i.rotate(a*Math.PI*-1/180),i.scale(n?-1:1,o?-1:1),i.drawImage(t,-c.width/2,-c.height/2,c.width,c.height),i.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let i=this._canvas;this._ctx.clearRect(0,0,i.width,i.height),this._drawImage()}_animateIn({fromViewer:i}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=F({active_from_viewer:i,active_from_editor:!i,inactive_to_editor:!1})}))}_getCropDimensions(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o}=t,{width:a,height:c}=ie(this._imageSize,r),{width:h,height:d}=i,p=n/a,f=o/c;return[xt(Math.round(h/p),1,a),xt(Math.round(d/f),1,c)]}_getCropTransformation(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o,x:a,y:c}=t,{width:h,height:d}=ie(this._imageSize,r),{x:p,y:f}=i,g=n/h,m=o/d,b=this._getCropDimensions(),$={dimensions:b,coords:[xt(Math.round((p-a)/g),0,h-b[0]),xt(Math.round((f-c)/m),0,d-b[1])]};if(!zo($)){console.error("Cropper is trying to create invalid crop object",{payload:$});return}if(!(b[0]===h&&b[1]===d))return $}_commit(){if(!this.isConnected)return;let i=this.$["*operations"],{rotate:t,mirror:e,flip:r}=i,n=this._getCropTransformation(),a={...this.$["*editorTransformations"],crop:n,rotate:t,mirror:e,flip:r};this.$["*editorTransformations"]=a}setValue(i,t){console.log(`Apply cropper operation [${i}=${t}]`),this.$["*operations"]={...this.$["*operations"],[i]:t},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(i){return this.$["*operations"][i]}async activate(i,{fromViewer:t}={}){if(!this._isActive){this._isActive=!0,this._imageSize=i,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:t})}catch(e){console.error("Failed to activate cropper",{error:e})}this._observer=new ResizeObserver(([e])=>{e.contentRect.width>0&&e.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:i=!1}={}){var t;this._isActive&&(!i&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=F({active_from_viewer:!1,active_from_editor:!1,inactive_to_editor:!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(t=this._observer)==null||t.disconnect())}_transitionToCrop(){let i=this._getCropDimensions(),t=Math.min(this.offsetWidth,i[0])/this.$["*cropBox"].width,e=Math.min(this.offsetHeight,i[1])/this.$["*cropBox"].height,r=Math.min(t,e),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,o=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${r}) translate(${(this.offsetWidth/2-n)/r}px, ${(this.offsetHeight/2-o)/r}px)`,this.style.transformOrigin=`${n}px ${o}px`}_transitionToImage(){let i=this.$["*cropBox"].x+this.$["*cropBox"].width/2,t=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${i}px ${t}px`}_reset(){this._isActive||(this.$.image=null)}_waitForImage(i,t){let e=this.offsetWidth;t={...t,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let r=this.proxyUrl(_e(i,e,t)),{promise:n,cancel:o,image:a}=Qe(r),c=this._handleImageLoading(r);return a.addEventListener("load",c,{once:!0}),a.addEventListener("error",c,{once:!0}),this._cancelPreload&&this._cancelPreload(),this._cancelPreload=o,n.then(()=>a).catch(h=>(console.error("Failed to load image",{error:h}),this.$["*networkProblems"]=!0,Promise.resolve(a)))}_handleImageLoading(i){let t="crop",e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",i=>{i||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var i;super.destroyCallback(),(i=this._observer)==null||i.disconnect()}};l(be,"EditorImageCropper");be.template=``;function ss(s,i,t){let e=Array(t);t--;for(let r=t;r>=0;r--)e[r]=Math.ceil((r*i+(t-r)*s)/t);return e}l(ss,"linspace");function jo(s){return s.reduce((i,t,e)=>er<=i&&i<=n);return s.map(r=>{let n=Math.abs(e[0]-e[1]),o=Math.abs(i-e[0])/n;return e[0]===r?i>t?1:1-o:e[1]===r?i>=t?o:1:0})}l(Ho,"calculateOpacities");function Wo(s,i){return s.map((t,e)=>tn-o)}l(Ar,"keypointsRange");var ei=class extends R{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=I(this._addKeypoint.bind(this),600),this.classList.add("inactive_to_cropper")}_handleImageLoading(i){let t=this._operation,e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let i of this._keypoints){let{image:t}=i;t&&(t.style.opacity=i.opacity.toString(),t.style.zIndex=i.zIndex.toString())}})}_imageSrc({url:i=this._url,filter:t=this._filter,operation:e,value:r}={}){let n={...this._transformations};e&&(n[e]=t?{name:t,amount:r}:r);let o=this.offsetWidth;return this.proxyUrl(_e(i,o,n))}_constructKeypoint(i,t){return{src:this._imageSrc({operation:i,value:t}),image:null,opacity:0,zIndex:0,value:t}}_isSame(i,t){return this._operation===i&&this._filter===t}_addKeypoint(i,t,e){let r=l(()=>!this._isSame(i,t)||this._value!==e||!!this._keypoints.find(c=>c.value===e),"shouldSkip");if(r())return;let n=this._constructKeypoint(i,e),o=new Image;o.src=n.src;let a=this._handleImageLoading(n.src);o.addEventListener("load",a,{once:!0}),o.addEventListener("error",a,{once:!0}),n.image=o,o.classList.add("fader-image"),o.addEventListener("load",()=>{if(r())return;let c=this._keypoints,h=c.findIndex(p=>p.value>e),d=h{this.$["*networkProblems"]=!0},{once:!0})}set(i){i=typeof i=="string"?parseInt(i,10):i,this._update(this._operation,i),this._addKeypointDebounced(this._operation,this._filter,i)}_update(i,t){this._operation=i,this._value=t;let{zero:e}=ct[i],r=this._keypoints.map(a=>a.value),n=Ho(r,t,e),o=Wo(r,e);for(let[a,c]of Object.entries(this._keypoints))c.opacity=n[a],c.zIndex=o[a];this._flush()}_createPreviewImage(){let i=new Image;return i.classList.add("fader-image","fader-image--preview"),i.style.opacity="0",i}async _initNodes(){let i=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&i.appendChild(this._previewImage);let t=document.createElement("div");i.appendChild(t);let e=this._keypoints.map(h=>h.src),{images:r,promise:n,cancel:o}=ti(e);r.forEach(h=>{let d=this._handleImageLoading(h.src);h.addEventListener("load",d),h.addEventListener("error",d)}),this._cancelLastImages=()=>{o(),this._cancelLastImages=void 0};let a=this._operation,c=this._filter;await n,this._isActive&&this._isSame(a,c)&&(this._container&&this._container.remove(),this._container=t,this._keypoints.forEach((h,d)=>{let p=r[d];p.classList.add("fader-image"),h.image=p,this._container.appendChild(p)}),this.appendChild(i),this._flush())}setTransformations(i){if(this._transformations=i,this._previewImage){let t=this._imageSrc(),e=this._handleImageLoading(t);this._previewImage.src=t,this._previewImage.addEventListener("load",e,{once:!0}),this._previewImage.addEventListener("error",e,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}preload({url:i,filter:t,operation:e,value:r}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=Ar(e,r).map(c=>this._imageSrc({url:i,filter:t,operation:e,value:c})),{cancel:a}=ti(o);this._cancelBatchPreload=a}_setOriginalSrc(i){let t=this._previewImage||this._createPreviewImage();if(!this.contains(t)&&this.appendChild(t),this._previewImage=t,t.src===i){t.style.opacity="1",t.style.transform="scale(1)",this.className=F({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1});return}t.style.opacity="0";let e=this._handleImageLoading(i);t.addEventListener("error",e,{once:!0}),t.src=i,t.addEventListener("load",()=>{e(),t&&(t.style.opacity="1",t.style.transform="scale(1)",this.className=F({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1}))},{once:!0}),t.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}activate({url:i,operation:t,value:e,filter:r,fromViewer:n}){if(this._isActive=!0,this._hidden=!1,this._url=i,this._operation=t||"initial",this._value=e,this._filter=r,this._fromViewer=n,typeof e!="number"&&!r){let a=this._imageSrc({operation:t,value:e});this._setOriginalSrc(a),this._container&&this._container.remove();return}this._keypoints=Ar(t,e).map(a=>this._constructKeypoint(t,a)),this._update(t,e),this._initNodes()}deactivate({hide:i=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),i&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=F({active_from_viewer:!1,active_from_cropper:!1,inactive_to_cropper:!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};l(ei,"EditorImageFader");var Xo=1,ye=class extends R{initCallback(){super.initCallback(),this.addEventListener("wheel",i=>{i.preventDefault();let{deltaY:t,deltaX:e}=i;Math.abs(e)>Xo?this.scrollLeft+=e:this.scrollLeft+=t})}};l(ye,"EditorScroller");ye.template=" ";function qo(s){return``}l(qo,"renderTabToggle");function Go(s){return`
`}l(Go,"renderTabContent");var ve=class extends R{constructor(){super();u(this,"_updateInfoTooltip",I(()=>{var o,a;let t=this.$["*editorTransformations"],e=this.$["*currentOperation"],r="",n=!1;if(this.$["*tabId"]===D.FILTERS)if(n=!0,this.$["*currentFilter"]&&((o=t==null?void 0:t.filter)==null?void 0:o.name)===this.$["*currentFilter"]){let c=((a=t==null?void 0:t.filter)==null?void 0:a.amount)||100;r=this.l10n(this.$["*currentFilter"])+" "+c}else r=this.l10n(dt);else if(this.$["*tabId"]===D.TUNING&&e){n=!0;let c=(t==null?void 0:t[e])||ct[e].zero;r=e+" "+c}n&&(this.$["*operationTooltip"]=r),this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",n)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":dt,"*currentOperation":null,"*tabId":D.CROP,showLoader:!1,filters:sr,colorOperations:ir,cropOperations:rr,"*operationTooltip":null,"l10n.cancel":this.l10n("cancel"),"l10n.apply":this.l10n("apply"),"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:"sub-toolbar--top-hidden",visible:"sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"sub-toolbar--bottom-hidden",visible:"sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"tab-content--hidden",visible:"tab-content--visible"},"presence.tabToggleStyles":{hidden:"tab-toggle--hidden",visible:"tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"tab-toggles--hidden",visible:"tab-toggles--visible"},"on.cancel":()=>{this._cancelPreload&&this._cancelPreload(),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":t=>{let e=t.currentTarget.getAttribute("data-id");e&&this._activateTab(e,{fromViewer:!1})}},this._debouncedShowLoader=I(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===D.TUNING&&this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",!1)}_createOperationControl(t){let e=new qt;return e.operation=t,e}_createFilterControl(t){let e=new St;return e.filter=t,e}_createToggleControl(t){let e=new Xt;return e.operation=t,e}_renderControlsList(t){let e=this.ref[`controls-list-${t}`],r=document.createDocumentFragment();t===D.CROP?this.$.cropOperations.forEach(n=>{let o=this._createToggleControl(n);r.appendChild(o)}):t===D.FILTERS?[dt,...this.$.filters].forEach(n=>{let o=this._createFilterControl(n);r.appendChild(o)}):t===D.TUNING&&this.$.colorOperations.forEach(n=>{let o=this._createOperationControl(n);r.appendChild(o)}),[...r.children].forEach((n,o)=>{o===r.childNodes.length-1&&n.classList.add("controls-list_last-item")}),e.innerHTML="",e.appendChild(r)}_activateTab(t,{fromViewer:e}){this.$["*tabId"]=t,t===D.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:e})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:e}),this.$["*cropperEl"].deactivate());for(let r of X){let n=r===t,o=this.ref[`tab-toggle-${r}`];o.active=n,n?(this._renderControlsList(t),this._syncTabIndicator()):this._unmountTabControls(r),this.$[`presence.tabContent.${r}`]=n}}_unmountTabControls(t){let e=this.ref[`controls-list-${t}`];e&&(e.innerHTML="")}_syncTabIndicator(){let t=this.ref[`tab-toggle-${this.$["*tabId"]}`],e=this.ref["tabs-indicator"];e.style.transform=`translateX(${t.offsetLeft}px)`}_preloadEditedImage(){if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let t=this.$["*imgContainerEl"].offsetWidth,e=this.proxyUrl(_e(this.$["*originalUrl"],t,this.$["*editorTransformations"]));this._cancelPreload&&this._cancelPreload();let{cancel:r}=ti([e]);this._cancelPreload=()=>{r(),this._cancelPreload=void 0}}}_showLoader(t){this.$.showLoader=t}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",t=>{t&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",t=>{var r;let e=(r=t==null?void 0:t.filter)==null?void 0:r.name;this.$["*currentFilter"]!==e&&(this.$["*currentFilter"]=e)}),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",t=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(t)}),this.sub("*loadingOperations",t=>{let e=!1;for(let[,r]of t.entries()){if(e)break;for(let[,n]of r.entries())if(n){e=!0;break}}this._debouncedShowLoader(e)}),this.sub("*showSlider",t=>{this.$["presence.subToolbar"]=t,this.$["presence.mainToolbar"]=!t}),this.sub("*tabList",t=>{this.$["presence.tabToggles"]=t.length>1;for(let e of X){this.$[`presence.tabToggle.${e}`]=t.includes(e);let r=this.ref[`tab-toggle-${e}`];r.style.gridColumn=t.indexOf(e)+1}t.includes(this.$["*tabId"])||this._activateTab(t[0],{fromViewer:!1})}),this._updateInfoTooltip()}};l(ve,"EditorToolbar");ve.template=`
{{*operationTooltip}}
${X.map(Go).join("")}
${X.map(qo).join("")}
`;var Gt=class extends y{constructor(){super(),this._iconReversed=!1,this._iconSingle=!1,this._iconHidden=!1,this.init$={...this.init$,text:"",icon:"",iconCss:this._iconCss(),theme:null},this.defineAccessor("active",i=>{i?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return F("icon",{icon_left:!this._iconReversed,icon_right:this._iconReversed,icon_hidden:this._iconHidden,icon_single:this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",i=>{this._iconSingle=!this.$.text,this._iconHidden=!i,this.$.iconCss=this._iconCss()}),this.sub("theme",i=>{i!=="custom"&&(this.className=i)}),this.sub("text",i=>{this._iconSingle=!1}),this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.hasAttribute("theme")||this.setAttribute("theme","default")}set reverse(i){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};l(Gt,"LrBtnUi");Gt.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});Gt.template=`
{{text}}
`;var Ce=class extends y{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let i=this.ref["line-el"];i.style.transition="initial",i.style.opacity="0",i.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",i=>{typeof i=="boolean"&&(i?this._start():this._stop())})}_start(){this._active=!0;let{width:i}=this.getBoundingClientRect(),t=this.ref["line-el"];t.style.transition="transform 1s",t.style.opacity="1",t.style.transform=`translateX(${i}px)`,t.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};l(Ce,"LineLoaderUi");Ce.template=`
`;var Si={transition:"transition",visible:"visible",hidden:"hidden"},we=class extends y{constructor(){super(),this._visible=!1,this._visibleStyle=Si.visible,this._hiddenStyle=Si.hidden,this._externalTransitions=!1,this.defineAccessor("styles",i=>{i&&(this._externalTransitions=!0,this._visibleStyle=i.visible,this._hiddenStyle=i.hidden)}),this.defineAccessor("visible",i=>{typeof i=="boolean"&&(this._visible=i,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",vr(this,{[Si.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.setAttribute("hidden",""),this._externalTransitions||this.classList.add(Si.transition),this._handleVisible(),setTimeout(()=>this.removeAttribute("hidden"),0)}};l(we,"PresenceToggle");we.template=" ";var Te=class extends y{constructor(){super();u(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let t=parseInt(this.ref["input-el"].value,10);this._updateValue(t),this.$.onInput&&this.$.onInput(t)},"on.sliderChange":()=>{let t=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(t)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",e=>{this.$.disabled=e}),this.defineAccessor("min",e=>{this.$.min=e}),this.defineAccessor("max",e=>{this.$.max=e}),this.defineAccessor("defaultValue",e=>{this.$.defaultValue=e,this.ref["input-el"].value=e,this._updateValue(e)}),this.defineAccessor("zero",e=>{this._zero=e}),this.defineAccessor("onInput",e=>{e&&(this.$.onInput=e)}),this.defineAccessor("onChange",e=>{e&&(this.$.onChange=e)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)},0),this.sub("disabled",e=>{let r=this.ref["input-el"];e?r.setAttribute("disabled","disabled"):r.removeAttribute("disabled")});let t=this.ref["input-el"];t.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),t.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(t){this._updateZeroDot(t);let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(t-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${o}px)`})}_updateZeroDot(t){if(!this._zeroDotEl)return;t===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="0.2";let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${o}px)`})}_updateSteps(){let e=this.ref["steps-el"],{width:r}=e.getBoundingClientRect(),n=Math.ceil(r/2),o=Math.ceil(n/15)-2;if(this._stepsCount===o)return;let a=document.createDocumentFragment(),c=document.createElement("div"),h=document.createElement("div");c.className="minor-step",h.className="border-step",a.appendChild(h);for(let p=0;p
`;var ii=class extends v{constructor(){super();u(this,"activityType",_.activities.CLOUD_IMG_EDIT);this.init$={...this.init$,cdnUrl:null}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.sub("*focusedEntry",t=>{t&&(this.entry=t,this.entry.subscribe("cdnUrl",e=>{e&&(this.$.cdnUrl=e)}))}),this.subConfigValue("cropPreset",t=>{this._instance&&this._instance.getAttribute("crop-preset")!==t&&this._instance.setAttribute("crop-preset",t)}),this.subConfigValue("cloudImageEditorTabs",t=>{this._instance&&this._instance.getAttribute("tabs")!==t&&this._instance.setAttribute("tabs",t)})}handleApply(t){if(!this.entry)return;let e=t.detail;this.entry.setMultipleValues({cdnUrl:e.cdnUrl,cdnUrlModifiers:e.cdnUrlModifiers}),this.historyBack()}handleCancel(){this.historyBack()}mountEditor(){let t=new tt,e=this.$.cdnUrl,r=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;t.setAttribute("ctx-name",this.ctxName),t.setAttribute("cdn-url",e),r&&t.setAttribute("crop-preset",r),n&&t.setAttribute("tabs",n),t.addEventListener("apply",o=>this.handleApply(o)),t.addEventListener("cancel",()=>this.handleCancel()),this.innerHTML="",this.appendChild(t),this._mounted=!0,this._instance=t}unmountEditor(){this._instance=void 0,this.innerHTML=""}};l(ii,"CloudImageEditorActivity");var Ko=l(function(s){return s.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},"escapeRegExp"),$r=l(function(s,i="i"){let t=s.split("*").map(Ko);return new RegExp("^"+t.join(".+")+"$",i)},"wildcardRegexp");var Yo=l(s=>Object.keys(s).reduce((t,e)=>{let r=s[e],n=Object.keys(r).reduce((o,a)=>{let c=r[a];return o+`${a}: ${c};`},"");return t+`${e}{${n}}`},""),"styleToCss");function Sr({textColor:s,backgroundColor:i,linkColor:t,linkColorHover:e,shadeColor:r}){let n=`solid 1px ${r}`;return Yo({body:{color:s,"background-color":i},".side-bar":{background:"inherit","border-right":n},".main-content":{background:"inherit"},".main-content-header":{background:"inherit"},".main-content-footer":{background:"inherit"},".list-table-row":{color:"inherit"},".list-table-row:hover":{background:r},".list-table-row .list-table-cell-a, .list-table-row .list-table-cell-b":{"border-top":n},".list-table-body .list-items":{"border-bottom":n},".bread-crumbs a":{color:t},".bread-crumbs a:hover":{color:e},".main-content.loading":{background:`${i} url(/static/images/loading_spinner.gif) center no-repeat`,"background-size":"25px 25px"},".list-icons-item":{"background-color":r},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a":{color:t},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a:hover":{color:e},".side-bar-menu a":{color:t},".side-bar-menu a:hover":{color:e},".source-gdrive .side-bar-menu .current, .source-gdrive .side-bar-menu a:hover, .source-gphotos .side-bar-menu .current, .source-gphotos .side-bar-menu a:hover":{color:e},".source-vk .side-bar-menu a":{color:t},".source-vk .side-bar-menu a:hover":{color:e,background:"none"}})}l(Sr,"buildStyles");var kt={};window.addEventListener("message",s=>{let i;try{i=JSON.parse(s.data)}catch{return}if((i==null?void 0:i.type)in kt){let t=kt[i.type];for(let[e,r]of t)s.source===e&&r(i)}});var kr=l(function(s,i,t){s in kt||(kt[s]=[]),kt[s].push([i,t])},"registerMessage"),Ir=l(function(s,i){s in kt&&(kt[s]=kt[s].filter(t=>t[0]!==i))},"unregisterMessage");function Or(s){let i=[];for(let[t,e]of Object.entries(s))e==null||typeof e=="string"&&e.length===0||i.push(`${t}=${encodeURIComponent(e)}`);return i.join("&")}l(Or,"queryString");var xe=class extends v{constructor(){super();u(this,"activityType",_.activities.EXTERNAL);u(this,"_iframe",null);u(this,"updateCssData",l(()=>{this.isActivityActive&&(this._inheritedUpdateCssData(),this.applyStyles())},"updateCssData"));u(this,"_inheritedUpdateCssData",this.updateCssData);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],counter:0,onDone:()=>{for(let t of this.$.selectedList){let e=this.extractUrlFromMessage(t),{filename:r}=t,{externalSourceType:n}=this.activityParams;this.addFileFromUrl(e,{fileName:r,source:n})}this.$["*currentActivity"]=_.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()}}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:t}=this.activityParams;this.set$({activityCaption:`${t==null?void 0:t[0].toUpperCase()}${t==null?void 0:t.slice(1)}`,activityIcon:t}),this.mountIframe()}}),this.sub("*currentActivity",t=>{t!==this.activityType&&this.unmountIframe()}),this.sub("selectedList",t=>{this.$.counter=t.length})}extractUrlFromMessage(t){if(t.alternatives){let e=N(this.cfg.externalSourcesPreferredTypes);for(let r of e){let n=$r(r);for(let[o,a]of Object.entries(t.alternatives))if(n.test(o))return a}}return t.url}sendMessage(t){var e,r;(r=(e=this._iframe)==null?void 0:e.contentWindow)==null||r.postMessage(JSON.stringify(t),"*")}async handleFileSelected(t){this.$.selectedList=[...this.$.selectedList,t]}handleIframeLoad(){this.applyStyles()}getCssValue(t){return window.getComputedStyle(this).getPropertyValue(t).trim()}applyStyles(){let t={backgroundColor:this.getCssValue("--clr-background-light"),textColor:this.getCssValue("--clr-txt"),shadeColor:this.getCssValue("--clr-shade-lv1"),linkColor:"#157cfc",linkColorHover:"#3891ff"};this.sendMessage({type:"embed-css",style:Sr(t)})}remoteUrl(){var a,c;let t=this.cfg.pubkey,e=(!1).toString(),{externalSourceType:r}=this.activityParams,n={lang:((c=(a=this.getCssData("--l10n-locale-name"))==null?void 0:a.split("-"))==null?void 0:c[0])||"en",public_key:t,images_only:e,pass_window_open:!1,session_key:this.cfg.remoteTabSessionKey},o=new URL(this.cfg.socialBaseUrl);return o.pathname=`/window3/${r}`,o.search=Or(n),o.toString()}mountIframe(){let t=Re({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});t.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(t),kr("file-selected",t.contentWindow,this.handleFileSelected.bind(this)),this._iframe=t,this.$.selectedList=[]}unmountIframe(){this._iframe&&Ir("file-selected",this._iframe.contentWindow),this.ref.iframeWrapper.innerHTML="",this._iframe=null,this.$.selectedList=[],this.$.counter=0}};l(xe,"ExternalSource");xe.template=`
{{activityCaption}}
{{counter}}
`;var Kt=class extends y{setCurrentTab(i){if(!i)return;[...this.ref.context.querySelectorAll("[tab-ctx]")].forEach(e=>{e.getAttribute("tab-ctx")===i?e.removeAttribute("hidden"):e.setAttribute("hidden","")});for(let e in this._tabMap)e===i?this._tabMap[e].setAttribute("current",""):this._tabMap[e].removeAttribute("current")}initCallback(){super.initCallback(),this._tabMap={},this.defineAccessor("tab-list",i=>{if(!i)return;N(i).forEach(e=>{let r=Re({tag:"div",attributes:{class:"tab"},properties:{onclick:()=>{this.setCurrentTab(e)}}});r.textContent=this.l10n(e),this.ref.row.appendChild(r),this._tabMap[e]=r})}),this.defineAccessor("default",i=>{this.setCurrentTab(i)}),this.hasAttribute("default")||this.setCurrentTab(Object.keys(this._tabMap)[0])}};l(Kt,"Tabs");Kt.bindAttributes({"tab-list":null,default:null});Kt.template=`
`;var It=class extends v{constructor(){super();u(this,"processInnerHtml",!0);u(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return It.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,Ri(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var e,r;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(a=>a.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let a of n){let c=document.createElement("input");c.type="hidden",c.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,c.value=a!=null?a:"",this._dynamicInputsContainer.appendChild(c)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let a=o.find(p=>!p.isValid),c=(r=a==null?void 0:a.validationErrorMessage)!=null?r:(e=a==null?void 0:a.uploadError)==null?void 0:e.message,h=this.$["*message"];h=h!=null&&h.isError?`${h.caption}. ${h.text}`:void 0;let d=c!=null?c:h;d?this._validationInputElement.setCustomValidity(d):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(a=>a.isUploaded&&a.isValid)){this.$.output={groupData:void 0,files:t};return}let r=this.getUploadClientOptions(),n=t.map(a=>a.uuid+(a.cdnUrlModifiers?`/${a.cdnUrlModifiers}`:"")),o=await $s(n,r);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};l(It,"DataOutput");It.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var si=class extends _{};l(si,"ActivityHeader");var Ee=class extends y{constructor(){super(...arguments);u(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:t=>{var e;t.preventDefault(),t.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((e=this.$.options.find(r=>r.value==this.value))==null?void 0:e.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",t=>{var r;this.$.currentText=((r=t==null?void 0:t[0])==null?void 0:r.text)||"";let e="";t==null||t.forEach(n=>{e+=``}),this.$.selectHtml=e})}};l(Ee,"Select");Ee.template=``;var G={PLAY:"play",PAUSE:"pause",FS_ON:"fullscreen-on",FS_OFF:"fullscreen-off",VOL_ON:"unmute",VOL_OFF:"mute",CAP_ON:"captions",CAP_OFF:"captions-off"},Lr={requestFullscreen:s=>{s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen&&s.webkitRequestFullscreen()},exitFullscreen:()=>{document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}},Z=class extends y{constructor(){super(...arguments);u(this,"init$",{...this.init$,src:"",ppIcon:G.PLAY,fsIcon:G.FS_ON,volIcon:G.VOL_ON,capIcon:G.CAP_OFF,totalTime:"00:00",currentTime:"00:00",progressCssWidth:"0",hasSubtitles:!1,volumeDisabled:!1,volumeValue:0,onPP:()=>{this.togglePlay()},onFs:()=>{this.toggleFullscreen()},onCap:()=>{this.toggleCaptions()},onMute:()=>{this.toggleSound()},onVolChange:t=>{let e=parseFloat(t.currentTarget.$.value);this.setVolume(e)},progressClicked:t=>{let e=this.progress.getBoundingClientRect();this._video.currentTime=this._video.duration*(t.offsetX/e.width)}})}togglePlay(){this._video.paused||this._video.ended?this._video.play():this._video.pause()}toggleFullscreen(){(document.fullscreenElement||document.webkitFullscreenElement)===this?Lr.exitFullscreen():Lr.requestFullscreen(this)}toggleCaptions(){this.$.capIcon===G.CAP_OFF?(this.$.capIcon=G.CAP_ON,this._video.textTracks[0].mode="showing",window.localStorage.setItem(Z.is+":captions","1")):(this.$.capIcon=G.CAP_OFF,this._video.textTracks[0].mode="hidden",window.localStorage.removeItem(Z.is+":captions"))}toggleSound(){this.$.volIcon===G.VOL_ON?(this.$.volIcon=G.VOL_OFF,this.$.volumeDisabled=!0,this._video.muted=!0):(this.$.volIcon=G.VOL_ON,this.$.volumeDisabled=!1,this._video.muted=!1)}setVolume(t){window.localStorage.setItem(Z.is+":volume",t);let e=t?t/100:0;this._video.volume=e}get progress(){return this.ref.progress}_getUrl(t){return t.includes("/")?t:`https://ucarecdn.com/${t}/`}_desc2attrs(t){let e=[];for(let r in t){let n=r==="src"?this._getUrl(t[r]):t[r];e.push(`${r}="${n}"`)}return e.join(" ")}_timeFmt(t){let e=new Date(Math.round(t)*1e3);return[e.getMinutes(),e.getSeconds()].map(r=>r<10?"0"+r:r).join(":")}_initTracks(){[...this._video.textTracks].forEach(t=>{t.mode="hidden"}),window.localStorage.getItem(Z.is+":captions")&&this.toggleCaptions()}_castAttributes(){let t=["autoplay","loop","muted"];[...this.attributes].forEach(e=>{t.includes(e.name)&&this._video.setAttribute(e.name,e.value)})}initCallback(){super.initCallback(),this._video=this.ref.video,this._castAttributes(),this._video.addEventListener("play",()=>{this.$.ppIcon=G.PAUSE,this.setAttribute("playback","")}),this._video.addEventListener("pause",()=>{this.$.ppIcon=G.PLAY,this.removeAttribute("playback")}),this.addEventListener("fullscreenchange",e=>{console.log(e),document.fullscreenElement===this?this.$.fsIcon=G.FS_OFF:this.$.fsIcon=G.FS_ON}),this.sub("src",e=>{if(!e)return;let r=this._getUrl(e);this._video.src=r}),this.sub("video",async e=>{if(!e)return;let r=await(await window.fetch(this._getUrl(e))).json();r.poster&&(this._video.poster=this._getUrl(r.poster));let n="";r==null||r.sources.forEach(o=>{n+=``}),r.tracks&&(r.tracks.forEach(o=>{n+=``}),this.$.hasSubtitles=!0),this._video.innerHTML+=n,this._initTracks(),console.log(r)}),this._video.addEventListener("loadedmetadata",e=>{this.$.currentTime=this._timeFmt(this._video.currentTime),this.$.totalTime=this._timeFmt(this._video.duration)}),this._video.addEventListener("timeupdate",e=>{let r=Math.round(100*(this._video.currentTime/this._video.duration));this.$.progressCssWidth=r+"%",this.$.currentTime=this._timeFmt(this._video.currentTime)});let t=window.localStorage.getItem(Z.is+":volume");if(t){let e=parseFloat(t);this.setVolume(e),this.$.volumeValue=e}}};l(Z,"Video");Z.template=`
{{currentTime}} / {{totalTime}}
`;Z.bindAttributes({video:"video",src:"src"});var Zo="css-src";function ri(s){return class extends s{constructor(){super(...arguments);u(this,"renderShadow",!0);u(this,"pauseRender",!0);u(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),hi({element:this,attribute:Zo,onSuccess:t=>{this.attachShadow({mode:"open"});let e=document.createElement("link");e.rel="stylesheet",e.type="text/css",e.href=t,e.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(e)},onTimeout:()=>{console.error("Attribute `css-src` is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}l(ri,"shadowed");var Yt=class extends ri(y){};l(Yt,"ShadowWrapper");var Ae=class extends y{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};l(Ae,"Copyright"),u(Ae,"template",`Powered by Uploadcare`);var vt=class extends Yt{constructor(){super(...arguments);u(this,"requireCtxName",!0);u(this,"init$",yi(this));u(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};l(vt,"SolutionBlock");var $e=class extends vt{};l($e,"FileUploaderRegular");$e.template=``;var Se=class extends vt{constructor(){super(...arguments);u(this,"pauseRender",!0)}shadowReadyCallback(){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)})}};l(Se,"FileUploaderMinimal");Se.template=``;var ke=class extends vt{constructor(){super(),this.init$={...this.init$,couldCancel:!1,cancel:()=>{this.couldHistoryBack?this.$["*historyBack"]():this.couldShowList&&(this.$["*currentActivity"]=_.activities.UPLOAD_LIST)}}}get couldHistoryBack(){let i=this.$["*history"];return i.length>1&&i[i.length-1]!==_.activities.START_FROM}get couldShowList(){return this.cfg.showEmptyList||this.$["*uploadList"].length>0}shadowReadyCallback(){let i=this.ref.uBlock;this.sub("*currentActivity",t=>{t||(this.$["*currentActivity"]=i.initActivity||_.activities.START_FROM)}),this.sub("*uploadList",t=>{(t==null?void 0:t.length)>0&&this.$["*currentActivity"]===(i.initActivity||_.activities.START_FROM)&&(this.$["*currentActivity"]=_.activities.UPLOAD_LIST)}),this.sub("*history",()=>{this.$.couldCancel=this.couldHistoryBack||this.couldShowList})}};l(ke,"FileUploaderInline");ke.template=``;var ni=class extends ri(tt){shadowReadyCallback(){this.__shadowReady=!0,this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async initEditor(){this.__shadowReady&&await super.initEditor()}};l(ni,"CloudImageEditor");function ki(s){for(let i in s){let t=[...i].reduce((e,r)=>(r.toUpperCase()===r&&(r="-"+r.toLowerCase()),e+=r),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),s[i].reg&&s[i].reg(t)}}l(ki,"registerBlocks");var rs="LR";async function Rr(s,i=!1){return new Promise((t,e)=>{if(typeof document!="object"){t(null);return}if(typeof window=="object"&&window[rs]){t(window[rs]);return}let r=document.createElement("script");r.async=!0,r.src=s,r.onerror=()=>{e()},r.onload=()=>{let n=window[rs];i&&ki(n),t(n)},document.head.appendChild(r)})}l(Rr,"connectBlocksFrom");return Br(Jo);})(); \ No newline at end of file diff --git a/web/blocks.min.js b/web/blocks.min.js index b19df09fd..9be3e9ac2 100644 --- a/web/blocks.min.js +++ b/web/blocks.min.js @@ -24,4 +24,4 @@ * */ var kr=Object.defineProperty;var Or=(s,i,t)=>i in s?kr(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t;var h=(s,i,t)=>(Or(s,typeof i!="symbol"?i+"":i,t),t);var Lr=Object.defineProperty,Ur=(s,i,t)=>i in s?Lr(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t,bi=(s,i,t)=>(Ur(s,typeof i!="symbol"?i+"":i,t),t);function Rr(s){let i=t=>{var e;for(let r in t)((e=t[r])==null?void 0:e.constructor)===Object&&(t[r]=i(t[r]));return{...t}};return i(s)}var $=class{constructor(s){s.constructor===Object?this.store=Rr(s):(this._storeIsProxy=!0,this.store=s),this.callbackMap=Object.create(null)}static warn(s,i){console.warn(`Symbiote Data: cannot ${s}. Prop name: `+i)}read(s){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?($.warn("read",s),null):this.store[s]}has(s){return this._storeIsProxy?this.store[s]!==void 0:this.store.hasOwnProperty(s)}add(s,i,t=!1){!t&&Object.keys(this.store).includes(s)||(this.store[s]=i,this.notify(s))}pub(s,i){if(!this._storeIsProxy&&!this.store.hasOwnProperty(s)){$.warn("publish",s);return}this.store[s]=i,this.notify(s)}multiPub(s){for(let i in s)this.pub(i,s[i])}notify(s){this.callbackMap[s]&&this.callbackMap[s].forEach(i=>{i(this.store[s])})}sub(s,i,t=!0){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?($.warn("subscribe",s),null):(this.callbackMap[s]||(this.callbackMap[s]=new Set),this.callbackMap[s].add(i),t&&i(this.store[s]),{remove:()=>{this.callbackMap[s].delete(i),this.callbackMap[s].size||delete this.callbackMap[s]},callback:i})}static registerCtx(s,i=Symbol()){let t=$.globalStore.get(i);return t?console.warn('State: context UID "'+i+'" already in use'):(t=new $(s),$.globalStore.set(i,t)),t}static deleteCtx(s){$.globalStore.delete(s)}static getCtx(s,i=!0){return $.globalStore.get(s)||(i&&console.warn('State: wrong context UID - "'+s+'"'),null)}};$.globalStore=new Map;var C=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"}),ss="1234567890QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm",Pr=ss.length-1,Yt=class{static generate(s="XXXXXXXXX-XXX"){let i="";for(let t=0;t{li&&t?i[0].toUpperCase()+i.slice(1):i).join("").split("_").map((i,t)=>i&&t?i.toUpperCase():i).join("")}function Nr(s,i){[...s.querySelectorAll(`[${C.REPEAT_ATTR}]`)].forEach(t=>{let e=t.getAttribute(C.REPEAT_ITEM_TAG_ATTR),r;if(e&&(r=window.customElements.get(e)),!r){r=class extends i.BaseComponent{constructor(){super(),e||(this.style.display="contents")}};let o=t.innerHTML;r.template=o,r.reg(e)}for(;t.firstChild;)t.firstChild.remove();let n=t.getAttribute(C.REPEAT_ATTR);i.sub(n,o=>{if(!o){for(;t.firstChild;)t.firstChild.remove();return}let l=[...t.children],a,c=u=>{u.forEach((p,m)=>{if(l[m])if(l[m].set$)setTimeout(()=>{l[m].set$(p)});else for(let f in p)l[m][f]=p[f];else{a||(a=new DocumentFragment);let f=new r;Object.assign(f.init$,p),a.appendChild(f)}}),a&&t.appendChild(a);let d=l.slice(u.length,l.length);for(let p of d)p.remove()};if(o.constructor===Array)c(o);else if(o.constructor===Object){let u=[];for(let d in o){let p=o[d];Object.defineProperty(p,"_KEY_",{value:d,enumerable:!0}),u.push(p)}c(u)}else console.warn("Symbiote repeat data type error:"),console.log(o)}),t.removeAttribute(C.REPEAT_ATTR),t.removeAttribute(C.REPEAT_ITEM_TAG_ATTR)})}var es="__default__";function Dr(s,i){if(i.shadowRoot)return;let t=[...s.querySelectorAll("slot")];if(!t.length)return;let e={};t.forEach(r=>{let n=r.getAttribute("name")||es;e[n]={slot:r,fr:document.createDocumentFragment()}}),i.initChildren.forEach(r=>{var n;let o=es;r instanceof Element&&r.hasAttribute("slot")&&(o=r.getAttribute("slot"),r.removeAttribute("slot")),(n=e[o])==null||n.fr.appendChild(r)}),Object.values(e).forEach(r=>{if(r.fr.childNodes.length)r.slot.parentNode.replaceChild(r.fr,r.slot);else if(r.slot.childNodes.length){let n=document.createDocumentFragment();n.append(...r.slot.childNodes),r.slot.parentNode.replaceChild(n,r.slot)}else r.slot.remove()})}function Fr(s,i){[...s.querySelectorAll(`[${C.EL_REF_ATTR}]`)].forEach(t=>{let e=t.getAttribute(C.EL_REF_ATTR);i.ref[e]=t,t.removeAttribute(C.EL_REF_ATTR)})}function Vr(s,i){[...s.querySelectorAll(`[${C.BIND_ATTR}]`)].forEach(t=>{let r=t.getAttribute(C.BIND_ATTR).split(";");[...t.attributes].forEach(n=>{if(n.name.startsWith("-")&&n.value){let o=Mr(n.name.replace("-",""));r.push(o+":"+n.value),t.removeAttribute(n.name)}}),r.forEach(n=>{if(!n)return;let o=n.split(":").map(u=>u.trim()),l=o[0],a;l.indexOf(C.ATTR_BIND_PRFX)===0&&(a=!0,l=l.replace(C.ATTR_BIND_PRFX,""));let c=o[1].split(",").map(u=>u.trim());for(let u of c){let d;u.startsWith("!!")?(d="double",u=u.replace("!!","")):u.startsWith("!")&&(d="single",u=u.replace("!","")),i.sub(u,p=>{d==="double"?p=!!p:d==="single"&&(p=!p),a?(p==null?void 0:p.constructor)===Boolean?p?t.setAttribute(l,""):t.removeAttribute(l):t.setAttribute(l,p):rs(t,l,p)||(t[C.SET_LATER_KEY]||(t[C.SET_LATER_KEY]=Object.create(null)),t[C.SET_LATER_KEY][l]=p)})}}),t.removeAttribute(C.BIND_ATTR)})}var Ce="{{",Kt="}}",Br="skip-text";function zr(s){let i,t=[],e=document.createTreeWalker(s,NodeFilter.SHOW_TEXT,{acceptNode:r=>{var n;return!((n=r.parentElement)!=null&&n.hasAttribute(Br))&&r.textContent.includes(Ce)&&r.textContent.includes(Kt)&&1}});for(;i=e.nextNode();)t.push(i);return t}var jr=function(s,i){zr(s).forEach(e=>{let r=[],n;for(;e.textContent.includes(Kt);)e.textContent.startsWith(Ce)?(n=e.textContent.indexOf(Kt)+Kt.length,e.splitText(n),r.push(e)):(n=e.textContent.indexOf(Ce),e.splitText(n)),e=e.nextSibling;r.forEach(o=>{let l=o.textContent.replace(Ce,"").replace(Kt,"");o.textContent="",i.sub(l,a=>{o.textContent=a})})})},Hr=[Nr,Dr,Fr,Vr,jr],we="'",Mt='"',Wr=/\\([0-9a-fA-F]{1,6} ?)/g;function Xr(s){return(s[0]===Mt||s[0]===we)&&(s[s.length-1]===Mt||s[s.length-1]===we)}function qr(s){return(s[0]===Mt||s[0]===we)&&(s=s.slice(1)),(s[s.length-1]===Mt||s[s.length-1]===we)&&(s=s.slice(0,-1)),s}function Gr(s){let i="",t="";for(var e=0;eString.fromCodePoint(parseInt(e.trim(),16))),i=i.replaceAll(`\\ -`,"\\n"),i=Gr(i),i=Mt+i+Mt);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${s}`)}}var is=0,Pt=null,ht=null,bt=class extends HTMLElement{constructor(){super(),bi(this,"updateCssData",()=>{var s;this.dropCssDataCache(),(s=this.__boundCssProps)==null||s.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 bt}initCallback(){}__initCallback(){var s;this.__initialized||(this.__initialized=!0,(s=this.initCallback)==null||s.call(this))}render(s,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let r=this.getAttribute(C.USE_TPL);if(r){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(r))||document.querySelector(r);o?s=o.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)t=s;else if((s==null?void 0:s.constructor)===String){let r=document.createElement("template");r.innerHTML=s,t=r.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let r of this.tplProcessors)r(t,this)}let e=()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()};if(this.constructor.__shadowStylesUrl){i=!0;let r=document.createElement("link");r.rel="stylesheet",r.href=this.constructor.__shadowStylesUrl,r.onload=e,this.shadowRoot.prepend(r)}else e()}addTemplateProcessor(s){this.tplProcessors.add(s)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=Yt.generate(),this.style.setProperty(C.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(C.CSS_CTX_PROP,!0)}get ctxName(){var s;let i=((s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=$.registerCtx({},this)),this.__localCtx}get nodeCtx(){return $.getCtx(this.ctxName,!1)||$.registerCtx({},this.ctxName)}static __parseProp(s,i){let t,e;if(s.startsWith(C.EXT_DATA_CTX_PRFX))t=i.nodeCtx,e=s.replace(C.EXT_DATA_CTX_PRFX,"");else if(s.includes(C.NAMED_DATA_CTX_SPLTR)){let r=s.split(C.NAMED_DATA_CTX_SPLTR);t=$.getCtx(r[0]),e=r[1]}else t=i.localCtx,e=s;return{ctx:t,name:e}}sub(s,i,t=!0){let e=n=>{this.isConnected&&i(n)},r=bt.__parseProp(s,this);r.ctx.has(r.name)?this.allSubs.add(r.ctx.sub(r.name,e,t)):window.setTimeout(()=>{this.allSubs.add(r.ctx.sub(r.name,e,t))})}notify(s){let i=bt.__parseProp(s,this);i.ctx.notify(i.name)}has(s){let i=bt.__parseProp(s,this);return i.ctx.has(i.name)}add(s,i,t=!1){let e=bt.__parseProp(s,this);e.ctx.add(e.name,i,t)}add$(s,i=!1){for(let t in s)this.add(t,s[t],i)}get $(){if(!this.__stateProxy){let s=Object.create(null);this.__stateProxy=new Proxy(s,{set:(i,t,e)=>{let r=bt.__parseProp(t,this);return r.ctx.pub(r.name,e),!0},get:(i,t)=>{let e=bt.__parseProp(t,this);return e.ctx.read(e.name)}})}return this.__stateProxy}set$(s,i=!1){for(let t in s){let e=s[t];i||![String,Number,Boolean].includes(e==null?void 0:e.constructor)?this.$[t]=e:this.$[t]!==e&&(this.$[t]=e)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(C.CTX_OWNER_ATTR)&&this.getAttribute(C.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let s=this.constructor.__attrDesc;if(s)for(let i of Object.values(s))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(C.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(C.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(C.NAMED_DATA_CTX_SPLTR)){let t=i.split(C.NAMED_DATA_CTX_SPLTR),e=t[0].trim(),r=t[1].trim();if(e&&r){let n=$.getCtx(e,!1);n||(n=$.registerCtx({},e)),n.add(r,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var s;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim();if(i&&this.style.setProperty(C.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[C.SET_LATER_KEY]){for(let t in this[C.SET_LATER_KEY])rs(this,t,this[C.SET_LATER_KEY][t]);delete this[C.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of Hr)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${C.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let r=this.constructor.__rootStylesLink.cloneNode(!0);r.setAttribute(C.ROOT_STYLE_ATTR_NAME,this.constructor.is),r.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(r):t.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);ht==null||ht.delete(this.updateCssData),ht!=null&&ht.size||(Pt==null||Pt.disconnect(),Pt=null,ht=null)},100)))}static reg(s,i=!1){s||(is++,s=`${C.AUTO_TAG_PRFX}-${is}`),this.__tag=s;let t=window.customElements.get(s);if(t){!i&&t!==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(` `));return}window.customElements.define(s,i?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,i,t){var e;if(i===t)return;let r=(e=this.constructor.__attrDesc)==null?void 0:e[s];r?this.__dataCtxInitialized?this.$[r]=t:this.init$[r]=t:this[s]=t}getCssData(s,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(s)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(s).trim();try{this.__cssDataCache[s]=Kr(t)}catch{!i&&console.warn(`CSS Data error: ${s}`),this.__cssDataCache[s]=null}}return this.__cssDataCache[s]}__extractCssName(s){return s.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){ht||(ht=new Set),ht.add(this.updateCssData),Pt||(Pt=new MutationObserver(s=>{s[0].type==="attributes"&&ht.forEach(i=>{i()})}),Pt.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(s,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(s);let t=this.getCssData(this.__extractCssName(s),!0);t===null&&(t=i),this.add(s,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(s,i,t){let e="__"+s;this[e]=this[s],Object.defineProperty(this,s,{set:r=>{this[e]=r,t?window.setTimeout(()=>{i==null||i(r)}):i==null||i(r)},get:()=>this[e]}),this[s]=this[e]}static set shadowStyles(s){let i=new Blob([s],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(s){if(!this.__rootStylesLink){let i=new Blob([s],{type:"text/css"}),t=URL.createObjectURL(i),e=document.createElement("link");e.href=t,e.rel="stylesheet",this.__rootStylesLink=e}}},Nt=bt;bi(Nt,"template");var _i=class{static _print(s){console.warn(s)}static setDefaultTitle(s){this.defaultTitle=s}static setRoutingMap(s){Object.assign(this.appMap,s);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}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(t=>{if(t.includes("?"))s.route=t.replace("?","");else if(t.includes("=")){let e=t.split("=");s.options[e[0]]=decodeURI(e[1])}else s.options[t]=!0}),s}static notify(){let s=this.readAddressBar(),i=this.appMap[s.route];if(i&&i.title&&(document.title=i.title),s.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${s.route}" not found...`);return}let t=new CustomEvent(_i.routingEventName,{detail:{route:s.route,options:Object.assign(i||{},s.options)}});window.dispatchEvent(t)}static reflect(s,i={}){let t=this.appMap[s];if(!t){this._print("Wrong route: "+s);return}let e="?"+s;for(let n in i)i[n]===!0?e+=this.separator+n:e+=this.separator+n+`=${i[n]}`;let r=t.title||this.defaultTitle||"";window.history.pushState(null,r,e),document.title=r}static applyRoute(s,i={}){this.reflect(s,i),this.notify()}static setSeparator(s){this._separator=s}static get separator(){return this._separator||"&"}static createRouterData(s,i){this.setRoutingMap(i);let t=$.registerCtx({route:null,options:null,title:null},s);return window.addEventListener(this.routingEventName,e=>{var r;t.multiPub({route:e.detail.route,options:e.detail.options,title:((r=e.detail.options)==null?void 0:r.title)||this.defaultTitle||""})}),_i.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};_i.appMap=Object.create(null);function yi(s,i){for(let t in i)t.includes("-")?s.style.setProperty(t,i[t]):s.style[t]=i[t]}function Yr(s,i){for(let t in i)i[t].constructor===Boolean?i[t]?s.setAttribute(t,""):s.removeAttribute(t):s.setAttribute(t,i[t])}function Zt(s={tag:"div"}){let i=document.createElement(s.tag);if(s.attributes&&Yr(i,s.attributes),s.styles&&yi(i,s.styles),s.properties)for(let t in s.properties)i[t]=s.properties[t];return s.processors&&s.processors.forEach(t=>{t(i)}),s.children&&s.children.forEach(t=>{let e=Zt(t);i.appendChild(e)}),i}var ns="idb-store-ready",Zr="symbiote-db",Jr="symbiote-idb-update_",Qr=class{_notifyWhenReady(s=null){window.dispatchEvent(new CustomEvent(ns,{detail:{dbName:this.name,storeName:this.storeName,event:s}}))}get _updEventName(){return Jr+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,i){this.name=s,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=e=>{this._notifyWhenReady(e)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async r=>{r(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(s){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(s);return new Promise((e,r)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?e(n.target.result._value):(e(null),console.warn(`IDB: cannot read "${s}"`))},t.onerror=n=>{r(n)}})}write(s,i,t=!1){let e={_key:s,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(e);return new Promise((o,l)=>{n.onsuccess=a=>{t||this._notifySubscribers(s),o(a.target.result)},n.onerror=a=>{l(a)}})}delete(s,i=!1){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(s);return new Promise((r,n)=>{e.onsuccess=o=>{i||this._notifySubscribers(s),r(o)},e.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,e)=>{i.onsuccess=r=>{let n=r.target.result;t(n.map(o=>o._value))},i.onerror=r=>{e(r)}})}subscribe(s,i){this._subscriptionsMap[s]||(this._subscriptionsMap[s]=new Set);let t=this._subscriptionsMap[s];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[s]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,os.clear(this.name)}},os=class{static get readyEventName(){return ns}static open(s=Zr,i="store"){let t=s+"/"+i;return this._reg[t]||(this._reg[t]=new Qr(s,i)),this._reg[t]}static clear(s){window.indexedDB.deleteDatabase(s);for(let i in this._reg)i.split("/")[0]===s&&delete this._reg[i]}};bi(os,"_reg",Object.create(null));var S=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),tn=Object.freeze({[S.UPLOAD_START]:"LR_UPLOAD_START",[S.REMOVE]:"LR_REMOVE",[S.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[S.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[S.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[S.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[S.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[S.DATA_OUTPUT]:"LR_DATA_OUTPUT",[S.DONE_FLOW]:"LR_DONE_FLOW",[S.INIT_FLOW]:"LR_INIT_FLOW"}),Te=class{constructor(i){h(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var r;(r=this._target)==null||r.dispatchEvent(new CustomEvent(i,{detail:t}));let e=tn[i];window.dispatchEvent(new CustomEvent(e,{detail:{ctx:this._getCtxName(),type:e,data:t}}))}emit(i,t,{debounce:e}={}){if(typeof e!="number"&&!e){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let r=typeof e=="number"?e:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},r);this._timeoutStore.set(i,n)}};function I(s,i){let t,e=(...r)=>{clearTimeout(t),t=setTimeout(()=>s(...r),i)};return e.cancel=()=>{clearTimeout(t)},e}var en="--uploadcare-blocks-window-height",Ee="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function vi(){return typeof window[Ee]=="undefined"?!1:!!window[Ee]}function ls(){if(vi())return;let s=()=>{document.documentElement.style.setProperty(en,`${window.innerHeight}px`),window[Ee]=!0},i=I(s,100);return window.addEventListener("resize",i,{passive:!0}),s(),()=>{window[Ee]=!1,window.removeEventListener("resize",i)}}var xe=(s,i)=>new Intl.PluralRules(s).select(i);var sn=s=>s,Ci="{{",cs="}}",as="plural:";function Jt(s,i,t={}){var o;let{openToken:e=Ci,closeToken:r=cs,transform:n=sn}=t;for(let l in i){let a=(o=i[l])==null?void 0:o.toString();s=s.replaceAll(e+l+r,typeof a=="string"?n(a):a)}return s}function hs(s){let i=[],t=s.indexOf(Ci);for(;t!==-1;){let e=s.indexOf(cs,t),r=s.substring(t+2,e);if(r.startsWith(as)){let n=s.substring(t+2,e).replace(as,""),o=n.substring(0,n.indexOf("(")),l=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:r,pluralKey:o,countVariable:l})}t=s.indexOf(Ci,e)}return i}var ut=s=>{var i;return(i=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:i.map(t=>t.toLowerCase()).join("-")};var Ae=({element:s,attribute:i,onSuccess:t,onTimeout:e,timeout:r=300})=>{let n=setTimeout(()=>{a.disconnect(),e()},r),o=c=>{let u=s.getAttribute(i);c.type==="attributes"&&c.attributeName===i&&u!==null&&(clearTimeout(n),a.disconnect(),t(u))},l=s.getAttribute(i);l!==null&&(clearTimeout(n),t(l));let a=new MutationObserver(c=>{let u=c[c.length-1];o(u)});a.observe(s,{attributes:!0,attributeFilter:[i]})};var us=new Set;function Qt(s){us.has(s)||(us.add(s),console.warn(s))}function ds(s){return Object.prototype.toString.call(s)==="[object Object]"}var rn=/\W|_/g;function nn(s){return s.split(rn).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}function ps(s,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(s)?s.map(t=>ft(t,{ignoreKeys:i})):s}function ft(s,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(s))return ps(s,{ignoreKeys:i});if(!ds(s))return s;let t={};for(let e of Object.keys(s)){let r=s[e];if(i.includes(e)){t[e]=r;continue}ds(r)?r=ft(r,{ignoreKeys:i}):Array.isArray(r)&&(r=ps(r,{ignoreKeys:i})),t[nn(e)]=r}return t}var on=s=>new Promise(i=>setTimeout(i,s));function Si({libraryName:s,libraryVersion:i,userAgent:t,publicKey:e="",integration:r=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:e,libraryName:s,libraryVersion:i,languageName:n,integration:r});let o=[s,i,e].filter(Boolean).join("/"),l=[n,r].filter(Boolean).join("; ");return`${o} (${l})`}var ln={factor:2,time:100};function an(s,i=ln){let t=0;function e(r){let n=Math.round(i.time*i.factor**t);return r({attempt:t,retry:l=>on(l!=null?l:n).then(()=>(t+=1,e(r)))})}return e(s)}var Dt=class extends Error{constructor(t){super();h(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,Dt.prototype),this.originalProgressEvent=t}},Se=(s,i)=>{s&&(s.aborted?Promise.resolve().then(i):s.addEventListener("abort",()=>i(),{once:!0}))},yt=class extends Error{constructor(t="Request canceled"){super(t);h(this,"isCancel",!0);Object.setPrototypeOf(this,yt.prototype)}},cn=500,ms=({check:s,interval:i=cn,timeout:t,signal:e})=>new Promise((r,n)=>{let o,l;Se(e,()=>{o&&clearTimeout(o),n(new yt("Poll cancelled"))}),t&&(l=setTimeout(()=>{o&&clearTimeout(o),n(new yt("Timed out"))},t));let a=()=>{try{Promise.resolve(s(e)).then(c=>{c?(l&&clearTimeout(l),r(c)):o=setTimeout(a,i)}).catch(c=>{l&&clearTimeout(l),n(c)})}catch(c){l&&clearTimeout(l),n(c)}};o=setTimeout(a,0)}),x={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"},Ie="application/octet-stream",gs="original",vt=({method:s,url:i,data:t,headers:e={},signal:r,onProgress:n})=>new Promise((o,l)=>{let a=new XMLHttpRequest,c=(s==null?void 0:s.toUpperCase())||"GET",u=!1;a.open(c,i,!0),e&&Object.entries(e).forEach(d=>{let[p,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&a.setRequestHeader(p,m)}),a.responseType="text",Se(r,()=>{u=!0,a.abort(),l(new yt)}),a.onload=()=>{if(a.status!=200)l(new Error(`Error ${a.status}: ${a.statusText}`));else{let d={method:c,url:i,data:t,headers:e||void 0,signal:r,onProgress:n},p=a.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};p.forEach(function(A){let E=A.split(": "),T=E.shift(),w=E.join(": ");T&&typeof T!="undefined"&&(m[T]=w)});let f=a.response,_=a.status;o({request:d,data:f,headers:m,status:_})}},a.onerror=d=>{u||l(new Dt(d))},n&&typeof n=="function"&&(a.upload.onprogress=d=>{d.lengthComputable?n({isComputable:!0,value:d.loaded/d.total}):n({isComputable:!1})}),t?a.send(t):a.send()});function hn(s,...i){return s}var un=({name:s})=>s?[s]:[],dn=hn,pn=()=>new FormData,_s=s=>!1,ke=s=>typeof Blob!="undefined"&&s instanceof Blob,Oe=s=>typeof File!="undefined"&&s instanceof File,Le=s=>!!s&&typeof s=="object"&&!Array.isArray(s)&&"uri"in s&&typeof s.uri=="string",Ft=s=>ke(s)||Oe(s)||_s()||Le(s),fn=s=>typeof s=="string"||typeof s=="number"||typeof s=="undefined",mn=s=>!!s&&typeof s=="object"&&!Array.isArray(s),gn=s=>!!s&&typeof s=="object"&&"data"in s&&Ft(s.data);function _n(s,i,t){if(gn(t)){let{name:e,contentType:r}=t,n=dn(t.data,e,r!=null?r:Ie),o=un({name:e,contentType:r});s.push([i,n,...o])}else if(mn(t))for(let[e,r]of Object.entries(t))typeof r!="undefined"&&s.push([`${i}[${e}]`,String(r)]);else fn(t)&&t&&s.push([i,t.toString()])}function bn(s){let i=[];for(let[t,e]of Object.entries(s))_n(i,t,e);return i}function Ii(s){let i=pn(),t=bn(s);for(let e of t){let[r,n,...o]=e;i.append(r,n,...o)}return i}var R=class extends Error{constructor(t,e,r,n,o){super();h(this,"isCancel");h(this,"code");h(this,"request");h(this,"response");h(this,"headers");this.name="UploadClientError",this.message=t,this.code=e,this.request=r,this.response=n,this.headers=o,Object.setPrototypeOf(this,R.prototype)}},yn=s=>{let i=new URLSearchParams;for(let[t,e]of Object.entries(s))e&&typeof e=="object"&&!Array.isArray(e)?Object.entries(e).filter(r=>{var n;return(n=r[1])!=null?n:!1}).forEach(r=>i.set(`${t}[${r[0]}]`,String(r[1]))):Array.isArray(e)?e.forEach(r=>{i.append(`${t}[]`,r)}):typeof e=="string"&&e?i.set(t,e):typeof e=="number"&&i.set(t,e.toString());return i.toString()},dt=(s,i,t)=>{let e=new URL(s);return e.pathname=(e.pathname+i).replace("//","/"),t&&(e.search=yn(t)),e.toString()},vn="6.8.0",Cn="UploadcareUploadClient",wn=vn;function It(s){return Si({libraryName:Cn,libraryVersion:wn,...s})}var Tn="RequestThrottledError",fs=15e3,En=1e3;function xn(s){let{headers:i}=s||{};if(!i||typeof i["retry-after"]!="string")return fs;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:fs}function Ct(s,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:e}=i;return an(({attempt:r,retry:n})=>s().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===Tn&&r{let i="";return(ke(s)||Oe(s)||Le(s))&&(i=s.type),i||Ie},ys=s=>{let i="";return Oe(s)&&s.name?i=s.name:ke(s)||_s()?i="":Le(s)&&s.name&&(i=s.name),i||gs};function ki(s){return typeof s=="undefined"||s==="auto"?"auto":s?"1":"0"}function An(s,{publicKey:i,fileName:t,contentType:e,baseURL:r=x.baseURL,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(r,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({file:{data:s,name:t||ys(s),contentType:e||bs(s)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:ki(l),signature:n,expire:o,source:u,metadata:_}),signal:a,onProgress:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var Ei;(function(s){s.Token="token",s.FileInfo="file_info"})(Ei||(Ei={}));function $n(s,{publicKey:i,baseURL:t=x.baseURL,store:e,fileName:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,source:c="url",signal:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},url:dt(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:s,store:ki(e),filename:r,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:l,expire:a,source:c,metadata:_}),signal:u}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var j;(function(s){s.Unknown="unknown",s.Waiting="waiting",s.Progress="progress",s.Error="error",s.Success="success"})(j||(j={}));var Sn=s=>"status"in s&&s.status===j.Error;function In(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=x.retryNetworkErrorMaxTimes}={}){return Ct(()=>vt({method:"GET",headers:i?{"X-UC-User-Agent":It({publicKey:i,integration:r,userAgent:n})}:void 0,url:dt(t,"/from_url/status/",{jsonerrors:1,token:s}),signal:e}).then(({data:a,headers:c,request:u})=>{let d=ft(JSON.parse(a));if("error"in d&&!Sn(d))throw new R(d.error.content,void 0,u,d,c);return d}),{retryNetworkErrorMaxTimes:l,retryThrottledRequestMaxTimes:o})}function kn(s,{publicKey:i,baseURL:t=x.baseURL,jsonpCallback:e,secureSignature:r,secureExpire:n,signal:o,source:l,integration:a,userAgent:c,retryThrottledRequestMaxTimes:u=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:a,userAgent:c})},url:dt(t,"/group/",{jsonerrors:1,pub_key:i,files:s,callback:e,signature:r,expire:n,source:l}),signal:o}).then(({data:p,headers:m,request:f})=>{let _=ft(JSON.parse(p));if("error"in _)throw new R(_.error.content,_.error.errorCode,f,_,m);return _}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:u})}function vs(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,source:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"GET",headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},url:dt(t,"/info/",{jsonerrors:1,pub_key:i,file_id:s,source:r}),signal:e}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function On(s,{publicKey:i,contentType:t,fileName:e,multipartChunkSize:r=x.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:l,store:a,signal:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({filename:e||gs,size:s,content_type:t||Ie,part_size:r,UPLOADCARE_STORE:ki(a),UPLOADCARE_PUB_KEY:i,signature:o,expire:l,source:u,metadata:_}),signal:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w.parts=Object.keys(w.parts).map(B=>w.parts[B]),w}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})}function Ln(s,i,{contentType:t,signal:e,onProgress:r,retryThrottledRequestMaxTimes:n=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"PUT",url:i,data:s,onProgress:r,signal:e,headers:{"Content-Type":t||Ie}}).then(l=>(r&&r({isComputable:!0,value:1}),l)).then(({status:l})=>({code:l})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}function Un(s,{publicKey:i,baseURL:t=x.baseURL,source:e="local",signal:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",url:dt(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},data:Ii({uuid:s,UPLOADCARE_PUB_KEY:i,source:e}),signal:r}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function Oi(s,{publicKey:i,baseURL:t,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l,signal:a,onProgress:c}){return ms({check:u=>vs(s,{publicKey:i,baseURL:t,signal:u,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:a})}function Rn(s){return"defaultEffects"in s}var pt=class{constructor(i,{baseCDN:t=x.baseCDN,fileName:e}={}){h(this,"uuid");h(this,"name",null);h(this,"size",null);h(this,"isStored",null);h(this,"isImage",null);h(this,"mimeType",null);h(this,"cdnUrl",null);h(this,"s3Url",null);h(this,"originalFilename",null);h(this,"imageInfo",null);h(this,"videoInfo",null);h(this,"contentInfo",null);h(this,"metadata",null);h(this,"s3Bucket",null);h(this,"defaultEffects",null);let{uuid:r,s3Bucket:n}=i,o=dt(t,`${r}/`),l=n?dt(`https://${n}.s3.amazonaws.com/`,`${r}/${i.filename}`):null;this.uuid=r,this.name=e||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=l,Rn(i)&&(this.defaultEffects=i.defaultEffects)}},Pn=(s,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,contentType:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,baseCDN:_,metadata:A})=>An(s,{publicKey:i,fileName:t,contentType:l,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:A}).then(({file:E})=>Oi(E,{publicKey:i,baseURL:e,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(E=>new pt(E,{baseCDN:_})),Mn=(s,{publicKey:i,fileName:t,baseURL:e,signal:r,onProgress:n,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u,baseCDN:d})=>vs(s,{publicKey:i,baseURL:e,signal:r,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u}).then(p=>new pt(p,{baseCDN:d,fileName:t})).then(p=>(n&&n({isComputable:!0,value:1}),p)),Nn=(s,{signal:i}={})=>{let t=null,e=null,r=s.map(()=>new AbortController),n=o=>()=>{e=o,r.forEach((l,a)=>a!==o&&l.abort())};return Se(i,()=>{r.forEach(o=>o.abort())}),Promise.all(s.map((o,l)=>{let a=n(l);return Promise.resolve().then(()=>o({stopRace:a,signal:r[l].signal})).then(c=>(a(),c)).catch(c=>(t=c,null))})).then(o=>{if(e===null)throw t;return o[e]})},Dn=window.WebSocket,xi=class{constructor(){h(this,"events",Object.create({}))}emit(i,t){var e;(e=this.events[i])==null||e.forEach(r=>r(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(e=>e!==t):this.events[i]=[]}},Fn=(s,i)=>s==="success"?{status:j.Success,...i}:s==="progress"?{status:j.Progress,...i}:{status:j.Error,...i},Ai=class{constructor(i,t=3e4){h(this,"key");h(this,"disconnectTime");h(this,"ws");h(this,"queue",[]);h(this,"isConnected",!1);h(this,"subscribers",0);h(this,"emmitter",new xi);h(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Dn(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let e=JSON.parse(t.data.toString());switch(e.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(e.channel,Fn(e.event,JSON.parse(e.data)))}})}}disconnect(){let i=()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var r;let e=JSON.stringify({event:i,data:t});(r=this.ws)==null||r.send(e)}subscribe(i,t){this.subscribers+=1,this.connect();let e=`task-status-${i}`,r={event:"pusher:subscribe",data:{channel:e}};this.emmitter.on(e,t),this.isConnected?this.send(r.event,r.data):this.queue.push(r)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,e={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(e.event,e.data):this.queue=this.queue.filter(r=>r.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}},wi=null,Li=s=>{if(!wi){let i=typeof window=="undefined"?0:3e4;wi=new Ai(s,i)}return wi},Vn=s=>{Li(s).connect()};function Bn({token:s,publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:l,signal:a}){return ms({check:c=>In(s,{publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:c}).then(u=>{switch(u.status){case j.Error:return new R(u.error,u.errorCode);case j.Waiting:return!1;case j.Unknown:return new R(`Token "${s}" was not found.`);case j.Progress:return l&&(u.total==="unknown"?l({isComputable:!1}):l({isComputable:!0,value:u.done/u.total})),!1;case j.Success:return l&&l({isComputable:!0,value:u.done/u.total}),u;default:throw new Error("Unknown status")}}),signal:a})}var zn=({token:s,pusherKey:i,signal:t,onProgress:e})=>new Promise((r,n)=>{let o=Li(i),l=o.onError(n),a=()=>{l(),o.unsubscribe(s)};Se(t,()=>{a(),n(new yt("pusher cancelled"))}),o.subscribe(s,c=>{switch(c.status){case j.Progress:{e&&(c.total==="unknown"?e({isComputable:!1}):e({isComputable:!0,value:c.done/c.total}));break}case j.Success:{a(),e&&e({isComputable:!0,value:c.done/c.total}),r(c);break}case j.Error:a(),n(new R(c.msg,c.error_code))}})}),jn=(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,onProgress:d,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,pusherKey:A=x.pusherKey,metadata:E})=>Promise.resolve(Vn(A)).then(()=>$n(s,{publicKey:i,fileName:t,baseURL:e,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,metadata:E})).catch(T=>{let w=Li(A);return w==null||w.disconnect(),Promise.reject(T)}).then(T=>T.type===Ei.FileInfo?T:Nn([({signal:w})=>Bn({token:T.token,publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:w}),({signal:w})=>zn({token:T.token,pusherKey:A,signal:w,onProgress:d})],{signal:u})).then(T=>{if(T instanceof R)throw T;return T}).then(T=>Oi(T.uuid,{publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:u})).then(T=>new pt(T,{baseCDN:r})),Ti=new WeakMap,Hn=async s=>{if(Ti.has(s))return Ti.get(s);let i=await fetch(s.uri).then(t=>t.blob());return Ti.set(s,i),i},Cs=async s=>{if(Oe(s)||ke(s))return s.size;if(Le(s))return(await Hn(s)).size;throw new Error("Unknown file type. Cannot determine file size.")},Wn=(s,i=x.multipartMinFileSize)=>s>=i,ws=s=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!Ft(s)&&t.test(s)},Ui=s=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!Ft(s)&&t.test(s)},Xn=(s,i)=>new Promise((t,e)=>{let r=[],n=!1,o=i.length,l=[...i],a=()=>{let c=i.length-l.length,u=l.shift();u&&u().then(d=>{n||(r[c]=d,o-=1,o?a():t(r))}).catch(d=>{n=!0,e(d)})};for(let c=0;c{let r=e*i,n=Math.min(r+e,t);return s.slice(r,n)},Gn=async(s,i,t)=>e=>qn(s,e,i,t),Kn=(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})=>Ln(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a}),Yn=async(s,{publicKey:i,fileName:t,fileSize:e,baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,contentType:_,multipartChunkSize:A=x.multipartChunkSize,maxConcurrentRequests:E=x.maxConcurrentRequests,baseCDN:T,metadata:w})=>{let B=e!=null?e:await Cs(s),at,St=(U,z)=>{if(!c)return;at||(at=Array(U).fill(0));let J=tt=>tt.reduce((ct,gi)=>ct+gi,0);return tt=>{tt.isComputable&&(at[z]=tt.value,c({isComputable:!0,value:J(at)/U}))}};return _||(_=bs(s)),On(B,{publicKey:i,contentType:_,fileName:t||ys(s),baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:w}).then(async({uuid:U,parts:z})=>{let J=await Gn(s,B,A);return Promise.all([U,Xn(E,z.map((tt,ct)=>()=>Kn(J(ct),tt,{publicKey:i,contentType:_,onProgress:St(z.length,ct),signal:a,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})))])}).then(([U])=>Un(U,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})).then(U=>U.isReady?U:Oi(U.uuid,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(U=>new pt(U,{baseCDN:T}))};async function Ri(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartMinFileSize:_,multipartChunkSize:A,maxConcurrentRequests:E,baseCDN:T=x.baseCDN,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,pusherKey:at,metadata:St}){if(Ft(s)){let U=await Cs(s);return Wn(U,_)?Yn(s,{publicKey:i,contentType:f,multipartChunkSize:A,fileSize:U,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,maxConcurrentRequests:E,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St}):Pn(s,{publicKey:i,fileName:t,contentType:f,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St})}if(Ui(s))return jn(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:T,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,pusherKey:at,metadata:St});if(ws(s))return Mn(s,{publicKey:i,fileName:t,baseURL:e,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T});throw new TypeError(`File uploading from "${s}" is not supported`)}var $i=class{constructor(i,{baseCDN:t=x.baseCDN}={}){h(this,"uuid");h(this,"filesCount");h(this,"totalSize");h(this,"isStored");h(this,"isImage");h(this,"cdnUrl");h(this,"files");h(this,"createdAt");h(this,"storedAt",null);this.uuid=i.id,this.filesCount=i.filesCount;let e=i.files.filter(Boolean);this.totalSize=Object.values(e).reduce((r,n)=>r+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(e).filter(r=>r.isImage).length,this.cdnUrl=i.cdnUrl,this.files=e.map(r=>new pt(r,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}},Zn=s=>{for(let i of s)if(!Ft(i))return!1;return!0},Jn=s=>{for(let i of s)if(!ws(i))return!1;return!0},Qn=s=>{for(let i of s)if(!Ui(i))return!1;return!0};function Ts(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_=x.multipartChunkSize,baseCDN:A=x.baseCDN,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T,jsonpCallback:w}){if(!Zn(s)&&!Qn(s)&&!Jn(s))throw new TypeError(`Group uploading from "${s}" is not supported`);let B,at=!0,St=s.length,U=(z,J)=>{if(!a)return;B||(B=Array(z).fill(0));let tt=ct=>ct.reduce((gi,Ir)=>gi+Ir)/z;return ct=>{if(!ct.isComputable||!at){at=!1,a({isComputable:!1});return}B[J]=ct.value,a({isComputable:!0,value:tt(B)})}};return Promise.all(s.map((z,J)=>Ft(z)||Ui(z)?Ri(z,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:U(St,J),source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_,baseCDN:A,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T}).then(tt=>tt.uuid):z)).then(z=>kn(z,{publicKey:i,baseURL:e,jsonpCallback:w,secureSignature:r,secureExpire:n,signal:l,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m}).then(J=>new $i(J,{baseCDN:A})).then(J=>(a&&a({isComputable:!0,value:1}),J)))}var $e=class{constructor(i){h(this,"_concurrency",1);h(this,"_pending",[]);h(this,"_running",0);h(this,"_resolvers",new Map);h(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(e),this._rejectors.delete(e),this._running-=1,this._run()}).then(o=>r(o)).catch(o=>n(o))}}add(i){return new Promise((t,e)=>{this._resolvers.set(i,t),this._rejectors.set(i,e),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};var Pi=()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),Mi=s=>({...Pi(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{s.set$({"*modalActive":!1,"*currentActivity":""})}}),Ue=s=>({...Mi(s),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new $e(1)});function Es(s,i){[...s.querySelectorAll("[l10n]")].forEach(t=>{let e=t.getAttribute("l10n"),r="textContent";if(e.includes(":")){let o=e.split(":");r=o[0],e=o[1]}let n="l10n:"+e;i.__l10nKeys.push(n),i.add(n,e),i.sub(n,o=>{t[r]=i.l10n(o)}),t.removeAttribute("l10n")})}var H=s=>`*cfg/${s}`;var Ni="lr-",b=class extends Nt{constructor(){super();h(this,"requireCtxName",!1);h(this,"allowCustomTemplate",!0);h(this,"init$",Pi());h(this,"updateCtxCssData",()=>{Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let e of t)e.isConnected&&e.updateCssData()});this.activityType=null,this.addTemplateProcessor(Es),this.__l10nKeys=[]}l10n(t,e={}){if(!t)return"";let r=this.getCssData("--l10n-"+t,!0)||t,n=hs(r);for(let l of n)e[l.variable]=this.pluralize(l.pluralKey,Number(e[l.countVariable]));return Jt(r,e)}pluralize(t,e){let r=this.l10n("locale-name")||"en-US",n=xe(r,e);return this.l10n(`${t}__${n}`)}emit(t,e,r){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,e,r)}applyL10nKey(t,e){let r="l10n:"+t;this.$[r]=e,this.__l10nKeys.push(t)}hasBlockInCtx(t){let e=this.$["*blocksRegistry"];for(let r of e)if(t(r))return!0;return!1}setOrAddState(t,e){this.add$({[t]:e},!0)}setActivity(t){if(this.hasBlockInCtx(e=>e.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Ni}${t}`,!0),vi()||(this._destroyInnerHeightTracker=ls()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?Ae({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new Te(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,e=2){let r=["B","KB","MB","GB","TB"],n=c=>this.getCssData("--l10n-unit-"+c.toLowerCase(),!0)||c;if(t===0)return`0 ${n(r[0])}`;let o=1024,l=e<0?0:e,a=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**a).toFixed(l))+" "+n(r[a])}proxyUrl(t){let e=this.cfg.secureDeliveryProxy;return e?Jt(e,{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(e,r,n)=>{if(typeof r!="string")return!1;let o=H(r);return this.$[o]=n,!0},get:(e,r)=>{let n=H(r),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${ut(r)}`))}})}return this.__cfgProxy}subConfigValue(t,e){let r=this.parseCfgProp(H(t));r.ctx.has(r.name)?this.sub(H(t),e):(this.bindCssData(`--cfg-${ut(t)}`),this.sub(`--cfg-${ut(t)}`,e))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Ni)?t:Ni+t)}};h(b,"StateConsumerScope",null),h(b,"className","");var xs="active",te="___ACTIVITY_IS_ACTIVE___",et=class extends b{constructor(){super(...arguments);h(this,"historyTracked",!1);h(this,"init$",Mi(this));h(this,"_debouncedHistoryFlush",I(this._historyFlush.bind(this),10))}_deactivate(){var e;let t=et._activityRegistry[this.activityKey];this[te]=!1,this.removeAttribute(xs),(e=t==null?void 0:t.deactivateCallback)==null||e.call(t)}_activate(){var e;let t=et._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[te]=!0,this.setAttribute(xs,""),(e=t==null?void 0:t.activateCallback)==null||e.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[te]?this._deactivate():this.activityType===t&&!this[te]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!et._activityRegistry[this.activityKey]}get isActivityActive(){return this[te]}registerActivity(t,e={}){let{onActivate:r,onDeactivate:n}=e;et._activityRegistry||(et._activityRegistry=Object.create(null)),et._activityRegistry[this.activityKey]={activateCallback:r,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),et._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(et._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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(){let t=this.$["*history"];if(t){let e=t.pop();for(;e===this.activityType;)e=t.pop();this.$["*currentActivity"]=e,this.$["*history"]=t,e||this.setOrAddState("*modalActive",!1)}}},g=et;h(g,"_activityRegistry",Object.create(null));g.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var ee=33.333333333333336,y=1,Di=24,As=6;function kt(s,i){for(let t in i)s.setAttributeNS(null,t,i[t].toString())}function Y(s,i={}){let t=document.createElementNS("http://www.w3.org/2000/svg",s);return kt(t,i),t}function $s(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=i.includes("w")?0:1,a=i.includes("n")?0:1,c=[-1,1][l],u=[-1,1][a],d=[e+l*n+1.5*c,r+a*o+1.5*u-24*t*u],p=[e+l*n+1.5*c,r+a*o+1.5*u],m=[e+l*n-24*t*c+1.5*c,r+a*o+1.5*u];return{d:`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]} L ${m[0]} ${m[1]}`,center:p}}function Ss(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=["n","s"].includes(i)?.5:{w:0,e:1}[i],a=["w","e"].includes(i)?.5:{n:0,s:1}[i],c=[-1,1][l],u=[-1,1][a],d,p;["n","s"].includes(i)?(d=[e+l*n-34*t/2,r+a*o+1.5*u],p=[e+l*n+34*t/2,r+a*o+1.5*u]):(d=[e+l*n+1.5*c,r+a*o-34*t/2],p=[e+l*n+1.5*c,r+a*o+34*t/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 Is(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 ks({rect:s,delta:[i,t],imageBox:e}){return Bt({...s,x:s.x+i,y:s.y+t},e)}function Bt(s,i){let{x:t}=s,{y:e}=s;return s.xi.x+i.width&&(t=i.x+i.width-s.width),s.yi.y+i.height&&(e=i.y+i.height-s.height),{...s,x:t,y:e}}function to({rect:s,delta:i,aspectRatio:t,imageBox:e}){let[,r]=i,{y:n,width:o,height:l}=s;n+=r,l-=r,t&&(o=l*t);let a=s.x+s.width/2-o/2;return n<=e.y&&(n=e.y,l=s.y+s.height-n,t&&(o=l*t,a=s.x+s.width/2-o/2)),a<=e.x&&(a=e.x,n=s.y+s.height-l),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y+s.height-l),l=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x+s.width-o),l=e.y+e.height&&(l=e.y+e.height-n,t&&(o=l*t),a=s.x+s.width/2-o/2),a<=e.x&&(a=e.x,n=s.y),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y),l=e.x+e.width&&(o=e.x+e.width-n,t&&(l=o/t),a=s.y+s.height/2-l/2),a<=e.y&&(a=e.y,n=s.x),a+l>=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x),lt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x+s.width-a,l=e.y)):t&&(r=c*t-a,a=a+r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y+s.height-c)),ce.x+e.width&&(r=e.x+e.width-o-a),l+nt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x,l=e.y)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y+s.height-c)),ce.y+e.height&&(n=e.y+e.height-l-c),o+=r,a-=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x+s.width-a,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y)),ce.x+e.width&&(r=e.x+e.width-o-a),l+c+n>e.y+e.height&&(n=e.y+e.height-l-c),a+=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y)),c=i.x&&s.y>=i.y&&s.x+s.width<=i.x+i.width&&s.y+s.height<=i.y+i.height}function Rs(s,i){return Math.abs(s.width/s.height-i)<.1}function zt({width:s,height:i},t){let e=t/90%2!==0;return{width:e?i:s,height:e?s:i}}function Ps(s,i,t){let e=s/i,r,n;e>t?(r=Math.round(i*t),n=i):(r=s,n=Math.round(s/t));let o=Math.round((s-r)/2),l=Math.round((i-n)/2);return o+r>s&&(r=s-o),l+n>i&&(n=i-l),{x:o,y:l,width:r,height:n}}function jt(s){return{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}}function wt(s,i,t){return Math.min(Math.max(s,i),t)}var Pe=s=>{if(!s)return[];let[i,t]=s.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${s}`);return}return[{type:"aspect-ratio",width:i,height:t}]};var Z=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var Ms=s=>s?s.split(",").map(i=>i.trim()):[],Ot=s=>s?s.join(","):"";var Ns="blocks",Ds="0.29.1";function Fs(s){return Si({...s,libraryName:Ns,libraryVersion:Ds})}var Vs=s=>{if(typeof s!="string"||!s)return"";let i=s.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},Me=(...s)=>s.filter(i=>typeof i=="string"&&i).map(i=>Vs(i)).join("/-/"),P=(...s)=>{let i=Me(...s);return i?`-/${i}/`:""};function Bs(s){let i=new URL(s),t=i.pathname+i.search+i.hash,e=t.lastIndexOf("http"),r=t.lastIndexOf("/"),n="";return e>=0?n=t.slice(e):r>=0&&(n=t.slice(r+1)),n}function zs(s){let i=new URL(s),{pathname:t}=i,e=t.indexOf("/"),r=t.indexOf("/",e+1);return t.substring(e+1,r)}function js(s){let i=Hs(s),t=new URL(i),e=t.pathname.indexOf("/-/");return e===-1?[]:t.pathname.substring(e).split("/-/").filter(Boolean).map(n=>Vs(n))}function Hs(s){let i=new URL(s),t=Bs(s),e=Ws(t)?Xs(t).pathname:t;return i.pathname=i.pathname.replace(e,""),i.search="",i.hash="",i.toString()}function Ws(s){return s.startsWith("http")}function Xs(s){let i=new URL(s);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}var O=(s,i,t)=>{let e=new URL(Hs(s));if(t=t||Bs(s),e.pathname.startsWith("//")&&(e.pathname=e.pathname.replace("//","/")),Ws(t)){let r=Xs(t);e.pathname=e.pathname+(i||"")+(r.pathname||""),e.search=r.search,e.hash=r.hash}else e.pathname=e.pathname+(i||"")+(t||"");return e.toString()},Tt=(s,i)=>{let t=new URL(s);return t.pathname=i+"/",t.toString()};var M=(s,i=",")=>s.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0);var ie=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],Fi=s=>s?s.filter(i=>typeof i=="string").map(i=>M(i)).flat():[],Vi=(s,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),s.startsWith(t)):s===t),qs=(s,i)=>i.some(t=>t.startsWith(".")?s.toLowerCase().endsWith(t.toLowerCase()):!1),se=s=>{let i=s==null?void 0:s.type;return i?Vi(i,ie):!1};var st=1e3,Lt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),re=s=>Math.ceil(s*100)/100,Gs=(s,i=Lt.AUTO)=>{let t=i===Lt.AUTO;if(i===Lt.BYTE||t&&s(e[r]=i[r].value,e),{}),this.__data=$.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}let e=this.__typedSchema[i];if((t==null?void 0:t.constructor)===e.type||t instanceof e.type||e.nullable&&t===null){this.__data.pub(i,t);return}console.warn(ao+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){$.deleteCtx(this.__ctxId)}};var De=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||Yt.generate(),this.__data=$.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(e,r)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[e]||(t[e]=new Set),t[e].add(r),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let e of this.__collectionObservers)e==null||e([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new Ne(this.__typedSchema);for(let e in i)t.setValue(e,i[e]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(e=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(e,()=>{this.__notifyObservers(e,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,e){this.read(i).setValue(t,e)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(e=>{let r=this.read(e);i(r)&&t.push(e)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){$.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};var Ys=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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:pt,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var v=class extends g{constructor(){super(...arguments);h(this,"couldBeUploadCollectionOwner",!1);h(this,"isUploadCollectionOwner",!1);h(this,"init$",Ue(this));h(this,"__initialUploadMetadata",null);h(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);h(this,"_debouncedRunValidators",I(this._runValidators.bind(this),100));h(this,"_flushOutputItems",I(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(S.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));h(this,"_handleCollectonUpdate",(t,e,r)=>{var n;this._runValidators();for(let o of r)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()});h(this,"_handleCollectionPropertiesUpdate",t=>{this._flushOutputItems();let e=this.uploadCollection,r=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>e.read(n)).filter(Boolean);for(let n of r)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=e.findItems(a=>!a.getValue("uploadError"));o.forEach(a=>{n+=e.readProp(a,"uploadProgress")});let l=Math.round(n/o.length);this.$["*commonProgress"]=l,this.emit(S.UPLOAD_PROGRESS,l,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=e.findItems(l=>!!l.getValue("fileInfo")),o=e.findItems(l=>!!l.getValue("uploadError")||!!l.getValue("validationErrorMsg"));if(e.size-o.length===n.length){let l=this.getOutputData(a=>!!a.getValue("fileInfo")&&!a.getValue("silentUpload"));l.length>0&&this.emit(S.UPLOAD_FINISH,l,{debounce:!0})}}t.uploadError&&e.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(S.UPLOAD_ERROR,e.readProp(o,"uploadError"))}),t.validationErrorMsg&&e.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(S.VALIDATION_ERROR,e.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&e.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(S.CLOUD_MODIFICATION,e.readProp(o,"cdnUrlModifiers"))})})}setUploadMetadata(t){Qt("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let e=new De({typedSchema:Ys,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",e)}let t=()=>this.hasBlockInCtx(e=>e instanceof v?e.isUploadCollectionOwner&&e.isConnected&&e!==this:!1);this.couldBeUploadCollectionOwner&&!t()&&(this.isUploadCollectionOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators())),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata),this.subConfigValue("maxConcurrentRequests",e=>{this.$["*uploadQueue"].concurrency=Number(e)||1})}destroyCallback(){var t,e;super.destroyCallback(),this.isUploadCollectionOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(e=this._unobserveCollection)==null||e.call(this))}addFileFromUrl(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromUuid(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({uuid:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromObject(t,{silent:e,fileName:r,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:se(t),mimeType:t.type,fileName:r!=null?r:t.name,fileSize:t.size,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(e=>{this.uploadCollection.add({file:e,isImage:se(e),mimeType:e.type,fileName:e.name,fileSize:e.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var r;let e=Ot(Fi([(r=this.cfg.accept)!=null?r:"",...this.cfg.imgOnly?ie:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=Ot(ie)):this.fileInput.accept=e,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:Z.LOCAL})),this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=M(this.cfg.sourceList)),t}initFlow(t=!1){var e;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((e=this.sourceList)==null?void 0:e.length)===1){let r=this.sourceList[0];r==="local"?(this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(v.extSrcList).includes(r)?this.set$({"*currentActivityParams":{externalSourceType:r},"*currentActivity":g.activities.EXTERNAL}):this.$["*currentActivity"]=r,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":g.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(S.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(S.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let e=this.cfg.imgOnly,r=this.cfg.accept,n=Fi([...e?ie:[],r]);if(!n.length)return;let o=t.getValue("mimeType"),l=t.getValue("fileName");if(!o||!l)return;let a=Vi(o,n),c=qs(l,n);if(!a&&!c)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let e=this.cfg.maxLocalFileSizeBytes,r=t.getValue("fileSize");if(e&&r&&r>e)return this.l10n("files-max-size-limit-error",{maxFileSize:Gs(e)})}_validateMultipleLimit(t){let e=this.uploadCollection.items(),r=e.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&e.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let e=this.cfg.imgOnly,r=t.getValue("isImage");if(!(!e||r)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let e of this._validators){let r=e(t);if(r){t.setValue("validationErrorMsg",r);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let e=this.uploadCollection.read(t);e&&this._runValidatorsForEntry(e)})}setInitialCrop(){let t=Pe(this.cfg.cropPreset);if(t){let[e]=t,r=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of r){let o=n.getValue("fileInfo"),{width:l,height:a}=o.imageInfo,c=e.width/e.height,u=Ps(l,a,c),d=P(`crop/${u.width}x${u.height}/${u.x},${u.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:d,cdnUrl:O(n.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(p=>p.activityType===g.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var r;let e=(r=this.cfg.metadata)!=null?r:this.$["*uploadMetadata"];if(typeof e=="function"){let n=this.getOutputItem(t);return await e(n)}return e}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Fs,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,l;let e=$.getCtx(t).store,r=e.fileInfo||{name:e.fileName,originalFilename:e.fileName,size:e.fileSize,isImage:e.isImage,mimeType:e.mimeType};return{...r,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(l=(o=e.cdnUrl)!=null?o:r.cdnUrl)!=null?l:null,validationErrorMessage:e.validationErrorMsg,uploadError:e.uploadError,isUploaded:!!e.uuid&&!!e.fileInfo,isValid:!e.validationErrorMsg&&!e.uploadError,fullPath:e.fullPath,uploadProgress:e.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};v.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});v.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...v.extSrcList});var G={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};function co(s,i){if(typeof i=="number")return G[s]!==i?`${s}/${i}`:"";if(typeof i=="boolean")return i&&G[s]!==i?`${s}`:"";if(s==="filter"){if(!i||G[s]===i.amount)return"";let{name:t,amount:e}=i;return`${s}/${t}/${e}`}if(s==="crop"){if(!i)return"";let{dimensions:t,coords:e}=i;return`${s}/${t.join("x")}/${e.join(",")}`}return""}var Js=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function Et(s){return Me(...Js.filter(i=>typeof s[i]!="undefined"&&s[i]!==null).map(i=>{let t=s[i];return co(i,t)}).filter(i=>!!i))}var Fe=Me("format/auto","progressive/yes"),mt=([s])=>typeof s!="undefined"?Number(s):void 0,Zs=()=>!0,ho=([s,i])=>({name:s,amount:typeof i!="undefined"?Number(i):100}),uo=([s,i])=>({dimensions:M(s,"x").map(Number),coords:M(i).map(Number)}),po={enhance:mt,brightness:mt,exposure:mt,gamma:mt,contrast:mt,saturation:mt,vibrance:mt,warmth:mt,filter:ho,mirror:Zs,flip:Zs,rotate:mt,crop:uo};function Qs(s){let i={};for(let t of s){let[e,...r]=t.split("/");if(!Js.includes(e))continue;let n=po[e],o=n(r);i[e]=o}return i}var N=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),W=[N.CROP,N.TUNING,N.FILTERS],tr=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],er=["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"],ir=["rotate","mirror","flip"],rt=Object.freeze({brightness:{zero:G.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:G.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:G.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:G.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:G.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:G.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:G.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:G.enhance,range:[0,100],keypointsNumber:1},filter:{zero:G.filter,range:[0,100],keypointsNumber:1}});var fo="https://ucarecdn.com",mo="https://upload.uploadcare.com",go="https://social.uploadcare.com",xt={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:Ot(W),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:fo,baseUrl:mo,socialBaseUrl:go,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var X=s=>String(s),nt=s=>{let i=Number(s);if(Number.isNaN(i))throw new Error(`Invalid number: "${s}"`);return i},k=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}"`)},_o=s=>s==="auto"?s:k(s),bo={pubkey:X,multiple:k,multipleMin:nt,multipleMax:nt,confirmUpload:k,imgOnly:k,accept:X,externalSourcesPreferredTypes:X,store:_o,cameraMirror:k,sourceList:X,maxLocalFileSizeBytes:nt,thumbSize:nt,showEmptyList:k,useLocalImageEditor:k,useCloudImageEditor:k,cloudImageEditorTabs:X,removeCopyright:k,cropPreset:X,modalScrollLock:k,modalBackdropStrokes:k,sourceListWrap:k,remoteTabSessionKey:X,cdnCname:X,baseUrl:X,socialBaseUrl:X,secureSignature:X,secureExpire:X,secureDeliveryProxy:X,retryThrottledRequestMaxTimes:nt,multipartMinFileSize:nt,multipartChunkSize:nt,maxConcurrentRequests:nt,multipartMaxConcurrentRequests:nt,multipartMaxAttempts:nt,checkForUrlDuplicates:k,saveUrlForRecurrentUploads:k,groupOutput:k,userAgentIntegration:X},sr=(s,i)=>{if(!(typeof i=="undefined"||i===null))try{return bo[s](i)}catch(t){return console.error(`Invalid value for config key "${s}".`,t),xt[s]}};var Ve=Object.keys(xt),yo=["metadata"],vo=s=>yo.includes(s),Be=Ve.filter(s=>!vo(s)),Co={...Object.fromEntries(Be.map(s=>[ut(s),s])),...Object.fromEntries(Be.map(s=>[s.toLowerCase(),s]))},wo={...Object.fromEntries(Ve.map(s=>[ut(s),H(s)])),...Object.fromEntries(Ve.map(s=>[s.toLowerCase(),H(s)]))},ze=class extends b{constructor(){super();h(this,"ctxOwner",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(xt).map(([t,e])=>[H(t),e]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let e of Be)this.sub(H(e),r=>{r!==xt[e]&&(t[e]=r)},!1);for(let e of Ve){let r="__"+e;t[r]=t[e],Object.defineProperty(this,e,{set:n=>{if(t[r]=n,Be.includes(e)){let o=[...new Set([ut(e),e.toLowerCase()])];for(let l of o)typeof n=="undefined"||n===null?this.removeAttribute(l):this.setAttribute(l,n.toString())}this.$[H(e)]!==n&&(typeof n=="undefined"||n===null?this.$[H(e)]=xt[e]:this.$[H(e)]=n)},get:()=>this.$[H(e)]}),typeof t[e]!="undefined"&&t[e]!==null&&(t[e]=t[r])}}attributeChangedCallback(t,e,r){if(e===r)return;let n=Co[t],o=sr(n,r),l=o!=null?o:xt[n],a=this;a[n]=l}};ze.bindAttributes(wo);var To=ze;var ne=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=this.getCssData(`--icon-${t}`);e&&(this.$.path=e)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};ne.template=``;ne.bindAttributes({name:"name",size:"size"});var Eo="https://ucarecdn.com",Ut=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:Eo},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{default:"auto"},"cdn-operations":{},progressive:{},quality:{default:"smart"},"is-background-for":{}});var rr=s=>[...new Set(s)];var oe="--lr-img-",nr="unresolved",Ht=2,Wt=3,or=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),ar=Object.create(null),lr;for(let s in Ut)ar[oe+s]=((lr=Ut[s])==null?void 0:lr.default)||"";var je=class extends Nt{constructor(){super(...arguments);h(this,"cssInit$",ar)}$$(t){return this.$[oe+t]}set$$(t){for(let e in t)this.$[oe+e]=t[e]}sub$$(t,e){this.sub(oe+t,r=>{r===null||r===""||e(r)})}_fmtAbs(t){return!t.includes("//")&&!or&&(t=new URL(t,document.baseURI).href),t}_getCdnModifiers(t=""){return P(t&&`resize/${t}`,this.$$("cdn-operations")||"",`format/${this.$$("format")||Ut.format.default}`,`quality/${this.$$("quality")||Ut.quality.default}`)}_getUrlBase(t=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(or&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let e=this._getCdnModifiers(t);if(this.$$("src").startsWith(this.$$("cdn-cname")))return O(this.$$("src"),e);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("proxy-cname"))return this._proxyUrl(O(this.$$("proxy-cname"),e,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(O(`https://${this.$$("pubkey")}.ucr.io/`,e,this._fmtAbs(this.$$("src"))))}_proxyUrl(t){return this.$$("secure-delivery-proxy")?Jt(this.$$("secure-delivery-proxy"),{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}_getElSize(t,e=1,r=!0){let n=t.getBoundingClientRect(),o=e*Math.round(n.width),l=r?"":e*Math.round(n.height);return o||l?`${o||""}x${l||""}`:null}_setupEventProxy(t){let e=n=>{n.stopPropagation();let o=new Event(n.type,n);this.dispatchEvent(o)},r=["load","error"];for(let n of r)t.addEventListener(n,e)}get img(){return this._img||(this._img=new Image,this._setupEventProxy(this.img),this._img.setAttribute(nr,""),this.img.onload=()=>{this.img.removeAttribute(nr)},this.initAttributes(),this.appendChild(this._img)),this._img}get bgSelector(){return this.$$("is-background-for")}initAttributes(){[...this.attributes].forEach(t=>{Ut[t.name]||this.img.setAttribute(t.name,t.value)})}get breakpoints(){return this.$$("breakpoints")?rr(M(this.$$("breakpoints")).map(t=>Number(t))):null}renderBg(t){let e=new Set;this.breakpoints?this.breakpoints.forEach(n=>{e.add(`url("${this._getUrlBase(n+"x")}") ${n}w`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(n*Ht+"x")}") ${n*Ht}w`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(n*Wt+"x")}") ${n*Wt}w`)}):(e.add(`url("${this._getUrlBase(this._getElSize(t))}") 1x`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Ht))}") ${Ht}x`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Wt))}") ${Wt}x`));let r=`image-set(${[...e].join(", ")})`;t.style.setProperty("background-image",r),t.style.setProperty("background-image","-webkit-"+r)}getSrcset(){let t=new Set;return this.breakpoints?this.breakpoints.forEach(e=>{t.add(this._getUrlBase(e+"x")+` ${e}w`),this.$$("hi-res-support")&&t.add(this._getUrlBase(e*Ht+"x")+` ${e*Ht}w`),this.$$("ultra-res-support")&&t.add(this._getUrlBase(e*Wt+"x")+` ${e*Wt}w`)}):(t.add(this._getUrlBase(this._getElSize(this.img))+" 1x"),this.$$("hi-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,2))+" 2x"),this.$$("ultra-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,3))+" 3x")),[...t].join()}getSrc(){return this._getUrlBase()}init(){this.bgSelector?[...document.querySelectorAll(this.bgSelector)].forEach(t=>{this.$$("intersection")?this.initIntersection(t,()=>{this.renderBg(t)}):this.renderBg(t)}):this.$$("intersection")?this.initIntersection(this.img,()=>{this.img.srcset=this.getSrcset(),this.img.src=this.getSrc()}):(this.img.srcset=this.getSrcset(),this.img.src=this.getSrc())}initIntersection(t,e){let r={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(n=>{n.forEach(o=>{o.isIntersecting&&(e(),this._isnObserver.unobserve(t))})},r),this._isnObserver.observe(t),this._observed||(this._observed=new Set),this._observed.add(t)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(t=>{this._isnObserver.unobserve(t)}),this._isnObserver=null)}static get observedAttributes(){return Object.keys(Ut)}attributeChangedCallback(t,e,r){window.setTimeout(()=>{this.$[oe+t]=r})}};var Bi=class extends je{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",i=>{this.$$("is-background-for")||(this.img.loading=i?"lazy":"eager")})}};var le=class extends v{constructor(){super(),this.init$={...this.init$,"*simpleButtonText":"",withDropZone:!0,onClick:()=>{this.initFlow()}}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",i=>{typeof i!="undefined"&&(this.$.withDropZone=k(i))}),this.subConfigValue("multiple",i=>{this.$["*simpleButtonText"]=i?this.l10n("upload-files"):this.l10n("upload-file")})}};le.template=``;le.bindAttributes({dropzone:null});var He=class extends g{constructor(){super(...arguments);h(this,"historyTracked",!0);h(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};He.template='
';function xo(s){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let e=r=>{r.type!=="loadend"&&t.abort(),i(!1)};t.onloadend=e,t.onprogress=e,t.readAsDataURL(s)}catch{i(!1)}})}function Ao(s,i){return new Promise(t=>{let e=0,r=[],n=l=>{l||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),l.isFile?(e++,l.file(a=>{e--;let c=new File([a],a.name,{type:a.type||i});r.push({type:"file",file:c,fullPath:l.fullPath}),e===0&&t(r)})):l.isDirectory&&o(l.createReader())},o=l=>{e++,l.readEntries(a=>{e--;for(let c of a)n(c);e===0&&t(r)})};n(s)})}function cr(s){let i=[],t=[];for(let e=0;e{a&&i.push(...a)}));continue}let o=r.getAsFile();o&&t.push(xo(o).then(l=>{l||i.push({type:"file",file:o})}))}else r.kind==="string"&&r.type.match("^text/uri-list")&&t.push(new Promise(n=>{r.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}var F={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},hr=["focus"],$o=100,zi=new Map;function So(s,i){let t=Math.max(Math.min(s[0],i.x+i.width),i.x),e=Math.max(Math.min(s[1],i.y+i.height),i.y);return Math.sqrt((s[0]-t)*(s[0]-t)+(s[1]-e)*(s[1]-e))}function ji(s){let i=0,t=document.body,e=new Set,r=f=>e.add(f),n=F.INACTIVE,o=f=>{s.shouldIgnore()&&f!==F.INACTIVE||(n!==f&&e.forEach(_=>_(f)),n=f)},l=()=>i>0;r(f=>s.onChange(f));let a=()=>{i=0,o(F.INACTIVE)},c=()=>{i+=1,n===F.INACTIVE&&o(F.ACTIVE)},u=()=>{i-=1,l()||o(F.INACTIVE)},d=f=>{f.preventDefault(),i=0,o(F.INACTIVE)},p=f=>{if(s.shouldIgnore())return;l()||(i+=1);let _=[f.x,f.y],A=s.element.getBoundingClientRect(),E=Math.floor(So(_,A)),T=E<$o,w=f.composedPath().includes(s.element);zi.set(s.element,E);let B=Math.min(...zi.values())===E;w&&B?(f.preventDefault(),o(F.OVER)):o(T&&B?F.NEAR:F.ACTIVE)},m=async f=>{if(s.shouldIgnore())return;f.preventDefault();let _=await cr(f.dataTransfer);s.onItems(_),o(F.INACTIVE)};return t.addEventListener("drop",d),t.addEventListener("dragleave",u),t.addEventListener("dragenter",c),t.addEventListener("dragover",p),s.element.addEventListener("drop",m),hr.forEach(f=>{window.addEventListener(f,a)}),()=>{zi.delete(s.element),t.removeEventListener("drop",d),t.removeEventListener("dragleave",u),t.removeEventListener("dragenter",c),t.removeEventListener("dragover",p),s.element.removeEventListener("drop",m),hr.forEach(f=>{window.removeEventListener(f,a)})}}var ae=class extends v{constructor(){super(),this.init$={...this.init$,state:F.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,e=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),r=window.getComputedStyle(this),n=r.visibility!=="hidden"&&r.display!=="none";return t&&n&&e}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!k(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:k(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:k(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:k(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=ji({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(e=>{e.type==="url"?this.addFileFromUrl(e.url,{source:Z.DROP_AREA}):e.type==="file"&&this.addFileFromObject(e.file,{source:Z.DROP_AREA,fullPath:e.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=ji({element:i,onChange:t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&i.setAttribute("drag-state",e)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&this.setAttribute("drag-state",e)}),this.subConfigValue("sourceList",t=>{let e=M(t);this.$.isEnabled=e.includes(v.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(e=>e!==this).filter(e=>e.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,e=this.uploadCollection.size;return!(i&&t&&e>=t||!i&&e>0)}destroyCallback(){var i,t,e,r;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(e=this._destroyDropzone)==null||e.call(this),(r=this._destroyContentWrapperDropzone)==null||r.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};ae.template=`
{{text}}
`;ae.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Io="src-type-",ce=class extends v{constructor(){super(...arguments);h(this,"_registeredTypes",{});h(this,"init$",{...this.init$,iconName:"default"})}initTypes(){this.registerType({type:v.sourceTypes.LOCAL,onClick:()=>{this.openSystemDialog()}}),this.registerType({type:v.sourceTypes.URL,activity:g.activities.URL,textKey:"from-url"}),this.registerType({type:v.sourceTypes.CAMERA,activity:g.activities.CAMERA,onClick:()=>{var e=document.createElement("input").capture!==void 0;return e&&this.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:g.activities.DRAW,icon:"edit-draw"});for(let t of Object.values(v.extSrcList))this.registerType({type:t,activity:g.activities.EXTERNAL,activityParams:{externalSourceType:t}})}initCallback(){super.initCallback(),this.initTypes(),this.setAttribute("role","button"),this.defineAccessor("type",t=>{t&&this.applyType(t)})}registerType(t){this._registeredTypes[t.type]=t}getType(t){return this._registeredTypes[t]}applyType(t){let e=this._registeredTypes[t];if(!e){console.warn("Unsupported source type: "+t);return}let{textKey:r=t,icon:n=t,activity:o,onClick:l,activityParams:a={}}=e;this.applyL10nKey("src-type",`${Io}${r}`),this.$.iconName=n,this.onclick=c=>{(l?l(c):!!o)&&this.set$({"*currentActivityParams":a,"*currentActivity":o})}}};ce.template=`
`;ce.bindAttributes({type:null});var Hi=class extends b{initCallback(){super.initCallback(),this.subConfigValue("sourceList",i=>{let t=M(i),e="";t.forEach(r=>{e+=``}),this.cfg.sourceListWrap?this.innerHTML=e:this.outerHTML=e})}};function ur(s){let i=new Blob([s],{type:"image/svg+xml"});return URL.createObjectURL(i)}function dr(s="#fff",i="rgba(0, 0, 0, .1)"){return ur(``)}function he(s="hsl(209, 21%, 65%)",i=32,t=32){return ur(``)}function pr(s,i=40){if(s.type==="image/svg+xml")return URL.createObjectURL(s);let t=document.createElement("canvas"),e=t.getContext("2d"),r=new Image,n=new Promise((o,l)=>{r.onload=()=>{let a=r.height/r.width;a>1?(t.width=i,t.height=i*a):(t.height=i,t.width=i/a),e.fillStyle="rgb(240, 240, 240)",e.fillRect(0,0,t.width,t.height),e.drawImage(r,0,0,t.width,t.height),t.toBlob(c=>{if(!c){l();return}let u=URL.createObjectURL(c);o(u)})},r.onerror=a=>{l(a)}});return r.src=URL.createObjectURL(s),n}var V=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),gt=class extends v{constructor(){super();h(this,"pauseRender",!0);h(this,"_entrySubs",new Set);h(this,"_entry",null);h(this,"_isIntersecting",!1);h(this,"_debouncedGenerateThumb",I(this._generateThumbnail.bind(this),100));h(this,"_debouncedCalculateState",I(this._calculateState.bind(this),100));h(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:V.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===g.activities.DETAILS)?this.$["*currentActivity"]=g.activities.DETAILS:this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let e=this.getOutputData(r=>r.getValue("uuid")===t);this.emit(S.REMOVE,e,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[e]=t;this._isIntersecting=e.isIntersecting,e.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),e.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,e=V.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?e=V.FAILED:t.getValue("validationMultipleLimitMsg")?e=V.LIMIT_OVERFLOW:t.getValue("isUploading")?e=V.UPLOADING:t.getValue("fileInfo")&&(e=V.FINISHED),this.$.state=e}async _generateThumbnail(){var e;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let r=this.cfg.thumbSize,n=this.proxyUrl(O(Tt(this.cfg.cdnCname,this._entry.getValue("uuid")),P(t.getValue("cdnUrlModifiers"),`scale_crop/${r}x${r}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((e=t.getValue("file"))!=null&&e.type.includes("image"))try{let r=await pr(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",r)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(n))}else{let r=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(r))}}_subEntry(t,e){let r=this._entry.subscribe(t,n=>{this.isConnected&&e(n)});this._entrySubs.add(r)}_handleEntryId(t){var r;this._reset();let e=(r=this.uploadCollection)==null?void 0:r.read(t);this._entry=e,e&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||e.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=e.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{gt.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),gt.activeInstances.add(this)}_handleState(t){var e,r,n;this.set$({isFailed:t===V.FAILED,isLimitOverflow:t===V.LIMIT_OVERFLOW,isUploading:t===V.UPLOADING,isFinished:t===V.FINISHED,progressVisible:t===V.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((e=this._entry)==null?void 0:e.getValue("isImage"))&&((r=this._entry)==null?void 0:r.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===V.FAILED||t===V.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===V.FINISHED&&(this.$.badgeIcon="badge-success"),t===V.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),gt.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,l;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let e=this.cfg.multiple?this.cfg.multipleMax:1;if(e&&this.uploadCollection.size>e)return;let r=this.getOutputData(a=>!a.getValue("fileInfo"));this.emit(S.UPLOAD_START,r,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let a=new AbortController;t.setValue("abortController",a);let c=async()=>{let d=this.getUploadClientOptions();return Ri(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...d,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:p=>{if(p.isComputable){let m=p.value*100;t.setValue("uploadProgress",m)}this.$.progressUnknown=!p.isComputable},signal:a.signal,metadata:await this.getMetadataFor(t.uid)})},u=await this.$["*uploadQueue"].add(c);t.setMultipleValues({fileInfo:u,isUploading:!1,fileName:u.originalFilename,fileSize:u.size,isImage:u.isImage,mimeType:(l=(o=(n=u.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?l:u.mimeType,uuid:u.uuid,cdnUrl:u.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(a){console.warn("Upload error",a),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),a instanceof R?a.isCancel||t.setValue("uploadError",a):t.setValue("uploadError",new Error("Unexpected error"))}}};gt.template=`
{{itemName}}{{errorText}}
`;gt.activeInstances=new Set;var ue=class extends b{constructor(){super();h(this,"_handleBackdropClick",()=>{this._closeDialog()});h(this,"_closeDialog",()=>{this.setOrAddState("*modalActive",!1)});h(this,"_handleDialogClose",()=>{this._closeDialog()});h(this,"_handleDialogMouseDown",t=>{this._mouseDownTarget=t.target});h(this,"_handleDialogMouseUp",t=>{t.target===this.ref.dialog&&t.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(){if(super.initCallback(),typeof HTMLDialogElement=="function")this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp);else{this.setAttribute("dialog-fallback","");let t=document.createElement("div");t.className="backdrop",this.appendChild(t),t.addEventListener("click",this._handleBackdropClick)}this.sub("*modalActive",t=>{this.$.isOpen!==t&&(this.$.isOpen=t),t&&this.cfg.modalScrollLock?document.body.style.overflow="hidden":document.body.style.overflow=""}),this.subConfigValue("modalBackdropStrokes",t=>{t?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.sub("isOpen",t=>{t?this.show():this.hide()})}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)}};h(ue,"StateConsumerScope","modal");ue.template=``;var We=class{constructor(){h(this,"caption","");h(this,"text","");h(this,"iconName","");h(this,"isError",!1)}},Xe=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};Xe.template=`
{{captionTxt}}
{{msgTxt}}
`;var qe=class extends v{constructor(){super();h(this,"couldBeUploadCollectionOwner",!0);h(this,"historyTracked",!0);h(this,"activityType",g.activities.UPLOAD_LIST);h(this,"_debouncedHandleCollectionUpdate",I(()=>{var t;this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),((t=this.$["*uploadList"])==null?void 0:t.length)===0&&!this.cfg.showEmptyList&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(e=>!!e.getValue("fileInfo"));this.emit(S.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var u,d;let t=!!this.cfg.multiple,e=t?(u=this.cfg.multipleMin)!=null?u:0:1,r=t?(d=this.cfg.multipleMax)!=null?d:0:1,n=this.uploadCollection.size,o=e?nr:!1;return{passed:!o&&!l,tooFew:o,tooMany:l,min:e,max:r,exact:r===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,e=this._validateFilesCount();if(t&&!e.passed){let r=new We,n=e.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";r.caption=this.l10n("files-count-limit-error-title"),r.text=this.l10n(n,{min:e.min,max:e.max,total:t}),r.isError=!0,this.set$({"*message":r})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),r={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let m of t){let f=this.uploadCollection.read(m);f.getValue("fileInfo")&&!f.getValue("validationErrorMsg")&&(r.succeed+=1),f.getValue("isUploading")&&(r.uploading+=1),(f.getValue("validationErrorMsg")||f.getValue("uploadError"))&&(r.failed+=1),f.getValue("validationMultipleLimitMsg")&&(r.limitOverflow+=1)}let{passed:n,tooMany:o,exact:l}=this._validateFilesCount(),a=r.failed===0&&r.limitOverflow===0,c=!1,u=!1,d=!1;r.total-r.succeed-r.uploading-r.failed>0&&n?c=!0:(u=!0,d=r.total===r.succeed&&n&&a),this.set$({doneBtnVisible:u,doneBtnEnabled:d,uploadBtnVisible:c,addMoreBtnEnabled:r.total===0||!o&&!l,addMoreBtnVisible:!l||this.cfg.multiple,headerText:this._getHeaderText(r)})}_getHeaderText(t){let e=r=>{let n=t[r];return this.l10n(`header-${r}`,{count:n})};return t.uploading>0?e("uploading"):t.failed>0?e("failed"):t.succeed>0?e("succeed"):e("total")}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{var e;((e=this.uploadCollection)==null?void 0:e.size)===0&&!this.cfg.showEmptyList&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};qe.template=`{{headerText}}
`;var Ge=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.URL);h(this,"init$",{...this.init$,importDisabled:!0,onUpload:t=>{t.preventDefault();let e=this.ref.input.value;this.addFileFromUrl(e,{source:Z.URL_TAB}),this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:t=>{let e=t.target.value;this.set$({importDisabled:!e})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};Ge.template=`
`;var Wi=()=>typeof navigator.permissions!="undefined";var Ke=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.CAMERA);h(this,"_unsubPermissions",null);h(this,"init$",{...this.init$,video:null,videoTransformCss:null,shotBtnDisabled:!0,videoHidden:!0,messageHidden:!0,requestBtnHidden:Wi(),l10nMessage:null,originalErrorMessage:null,cameraSelectOptions:null,cameraSelectHidden:!0,onCameraSelectChange:t=>{this._selectedCameraId=t.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>{this._shot()},onRequestPermissions:()=>{this._capture()}});h(this,"_onActivate",()=>{Wi()&&this._subscribePermissions(),this._capture()});h(this,"_onDeactivate",()=>{this._unsubPermissions&&this._unsubPermissions(),this._stopCapture()});h(this,"_handlePermissionsChange",()=>{this._capture()});h(this,"_setPermissionsState",I(t=>{this.$.originalErrorMessage=null,this.classList.toggle("initialized",t==="granted"),t==="granted"?this.set$({videoHidden:!1,shotBtnDisabled:!1,messageHidden:!0}):t==="prompt"?(this.$.l10nMessage=this.l10n("camera-permissions-prompt"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage=this.l10n("camera-permissions-denied"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture())},300))}async _subscribePermissions(){try{(await navigator.permissions.query({name:"camera"})).addEventListener("change",this._handlePermissionsChange)}catch(t){console.log("Failed to use permissions API. Fallback to manual request mode.",t),this._capture()}}async _capture(){let t={video:{width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},audio:!1};this._selectedCameraId&&(t.video.deviceId={exact:this._selectedCameraId}),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d");try{this._setPermissionsState("prompt");let e=await navigator.mediaDevices.getUserMedia(t);e.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=e,this._capturing=!0,this._setPermissionsState("granted")}catch(e){this._setPermissionsState("denied"),this.$.originalErrorMessage=e.message}}_stopCapture(){var t;this._capturing&&((t=this.$.video)==null||t.getTracks()[0].stop(),this.$.video=null,this._capturing=!1)}_shot(){this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this._ctx.drawImage(this.ref.video,0,0);let t=Date.now(),e=`camera-${t}.png`;this._canvas.toBlob(r=>{let n=new File([r],e,{lastModified:t,type:"image/png"});this.addFileFromObject(n,{source:Z.CAMERA}),this.set$({"*currentActivity":g.activities.UPLOAD_LIST})})}async initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",t=>{this.$.videoTransformCss=t?"scaleX(-1)":null});try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(r=>r.kind==="videoinput").map((r,n)=>({text:r.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:r.deviceId}));e.length>1&&(this.$.cameraSelectOptions=e,this.$.cameraSelectHidden=!1)}catch{}}};Ke.template=`
{{l10nMessage}}{{originalErrorMessage}}
`;var Xi=class extends v{constructor(){super(...arguments);h(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}},ko=Xi;var Ye=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.DETAILS);h(this,"pauseRender",!0);h(this,"init$",{...this.init$,checkerboard:!1,fileSize:null,fileName:"",cdnUrl:"",errorTxt:"",cloudEditBtnHidden:!0,onNameInput:null,onBack:()=>{this.historyBack()},onRemove:()=>{this.uploadCollection.remove(this.entry.uid),this.historyBack()},onCloudEdit:()=>{this.entry.getValue("uuid")&&(this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}})}showNonImageThumb(){let t=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon"),e=he(t,108,108);this.ref.filePreview.setImageUrl(e),this.set$({checkerboard:!1})}initCallback(){super.initCallback(),this.render(),this.$.fileSize=this.l10n("file-size-unknown"),this.registerActivity(this.activityType,{onDeactivate:()=>{this.ref.filePreview.clear()}}),this.sub("*focusedEntry",t=>{if(!t)return;this._entrySubs?this._entrySubs.forEach(n=>{this._entrySubs.delete(n),n.remove()}):this._entrySubs=new Set,this.entry=t;let e=t.getValue("file");if(e){this._file=e;let n=se(this._file);n&&!t.getValue("cdnUrl")&&(this.ref.filePreview.setImageFile(this._file),this.set$({checkerboard:!0})),n||this.showNonImageThumb()}let r=(n,o)=>{this._entrySubs.add(this.entry.subscribe(n,o))};r("fileName",n=>{this.$.fileName=n,this.$.onNameInput=()=>{let o=this.ref.file_name_input.value;Object.defineProperty(this._file,"name",{writable:!0,value:o}),this.entry.setValue("fileName",o)}}),r("fileSize",n=>{this.$.fileSize=Number.isFinite(n)?this.fileSizeFmt(n):this.l10n("file-size-unknown")}),r("uploadError",n=>{this.$.errorTxt=n==null?void 0:n.message}),r("externalUrl",n=>{n&&(this.entry.getValue("uuid")||this.showNonImageThumb())}),r("cdnUrl",n=>{let o=this.cfg.useCloudImageEditor&&n&&this.entry.getValue("isImage");if(n&&this.ref.filePreview.clear(),this.set$({cdnUrl:n,cloudEditBtnHidden:!o}),n&&this.entry.getValue("isImage")){let l=O(n,P("format/auto","preview"));this.ref.filePreview.setImageUrl(this.proxyUrl(l))}})})}};Ye.template=`
{{fileSize}}
{{errorTxt}}
`;var qi=class{constructor(){h(this,"captionL10nStr","confirm-your-action");h(this,"messageL10Str","are-you-sure");h(this,"confirmL10nStr","yes");h(this,"denyL10nStr","no")}confirmAction(){console.log("Confirmed")}denyAction(){this.historyBack()}},Ze=class extends g{constructor(){super(...arguments);h(this,"activityType",g.activities.CONFIRMATION);h(this,"_defaults",new qi);h(this,"init$",{...this.init$,activityCaption:"",messageTxt:"",confirmBtnTxt:"",denyBtnTxt:"","*confirmation":null,onConfirm:this._defaults.confirmAction,onDeny:this._defaults.denyAction.bind(this)})}initCallback(){super.initCallback(),this.set$({messageTxt:this.l10n(this._defaults.messageL10Str),confirmBtnTxt:this.l10n(this._defaults.confirmL10nStr),denyBtnTxt:this.l10n(this._defaults.denyL10nStr)}),this.sub("*confirmation",t=>{t&&this.set$({"*currentActivity":g.activities.CONFIRMATION,activityCaption:this.l10n(t.captionL10nStr),messageTxt:this.l10n(t.messageL10Str),confirmBtnTxt:this.l10n(t.confirmL10nStr),denyBtnTxt:this.l10n(t.denyL10nStr),onDeny:()=>{t.denyAction()},onConfirm:()=>{t.confirmAction()}})})}};Ze.template=`{{activityCaption}}
{{messageTxt}}
`;var Je=class extends v{constructor(){super(...arguments);h(this,"init$",{...this.init$,visible:!1,unknown:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let t=this.uploadCollection.items().some(e=>this.uploadCollection.read(e).getValue("isUploading"));this.$.visible=t}),this.sub("visible",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",t=>{this.$.value=t})}destroyCallback(){var t;super.destroyCallback(),(t=this._unobserveCollection)==null||t.call(this)}};Je.template=``;var Qe=class extends b{constructor(){super(...arguments);h(this,"_value",0);h(this,"_unknownMode",!1);h(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};Qe.template='
';var K="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";var de=class extends b{constructor(){super();h(this,"init$",{...this.init$,checkerboard:!1,src:K})}initCallback(){super.initCallback(),this.sub("checkerboard",()=>{this.style.backgroundImage=this.hasAttribute("checkerboard")?`url(${dr()})`:"unset"})}destroyCallback(){super.destroyCallback(),URL.revokeObjectURL(this._lastObjectUrl)}setImage(t){this.$.src=t.src}setImageFile(t){let e=URL.createObjectURL(t);this.$.src=e,this._lastObjectUrl=e}setImageUrl(t){this.$.src=t}clear(){URL.revokeObjectURL(this._lastObjectUrl),this.$.src=K}};de.template='';de.bindAttributes({checkerboard:"checkerboard"});var fr="--cfg-ctx-name",L=class extends b{get cfgCssCtxName(){return this.getCssData(fr,!0)}get cfgCtxName(){var t;let i=((t=this.getAttribute("ctx-name"))==null?void 0:t.trim())||this.cfgCssCtxName||this.__cachedCfgCtxName;return this.__cachedCfgCtxName=i,i}connectedCallback(){var i;if(!this.connectedOnce){let t=(i=this.getAttribute("ctx-name"))==null?void 0:i.trim();t&&this.style.setProperty(fr,`'${t}'`)}super.connectedCallback()}parseCfgProp(i){return{...super.parseCfgProp(i),ctx:$.getCtx(this.cfgCtxName)}}};function mr(...s){return s.reduce((i,t)=>{if(typeof t=="string")return i[t]=!0,i;for(let e of Object.keys(t))i[e]=t[e];return i},{})}function D(...s){let i=mr(...s);return Object.keys(i).reduce((t,e)=>(i[e]&&t.push(e),t),[]).join(" ")}function gr(s,...i){let t=mr(...i);for(let e of Object.keys(t))s.classList.toggle(e,t[e])}var _r=s=>{if(!s)return W;let i=Ms(s).filter(t=>W.includes(t));return i.length===0?W:i};function br(s){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":W,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:K,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:Ot(W),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let i=s.querySelectorAll("img");for(let t of i){let e=t.src;t.src=K,t.src=e}s.$["*networkProblems"]=!1},"*on.apply":i=>{if(!i)return;let t=s.$["*originalUrl"],e=P(Et(i),"preview"),r=O(t,e),n={originalUrl:t,cdnUrlModifiers:e,cdnUrl:r,transformations:i};s.dispatchEvent(new CustomEvent("apply",{detail:n,bubbles:!0,composed:!0})),s.remove()},"*on.cancel":()=>{s.remove(),s.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}var yr=`
Network error
{{fileType}}
{{msg}}
`;var ot=class extends L{constructor(){super();h(this,"_debouncedShowLoader",I(this._showLoader.bind(this),300));this.init$={...this.init$,...br(this)}}get ctxName(){return this.autoCtxName}_showLoader(t){this.$.showLoader=t}_waitForSize(){return new Promise((e,r)=>{let n=setTimeout(()=>{r(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),o=new ResizeObserver(([l])=>{l.contentRect.width>0&&l.contentRect.height>0&&(e(),clearTimeout(n),o.disconnect())});o.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(await this._waitForSize(),this.$["*tabId"]===N.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate(),this.$["*editorTransformations"]={},this.$.cdnUrl){let t=zs(this.$.cdnUrl);this.$["*originalUrl"]=Tt(this.$.cdnUrl,t);let e=js(this.$.cdnUrl),r=Qs(e);this.$["*editorTransformations"]=r}else if(this.$.uuid)this.$["*originalUrl"]=Tt(this.cfg.cdnCname,this.$.uuid);else throw new Error("No UUID nor CDN URL provided");try{let t=O(this.$["*originalUrl"],P("json")),e=await fetch(t).then(o=>o.json()),{width:r,height:n}=e;this.$["*imageSize"]={width:r,height:n},this.$["*tabId"]===N.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(t){t&&console.error("Failed to load image info",t)}}async initEditor(){try{await this._waitForSize()}catch(t){this.isConnected&&console.error(t.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==K&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",t=>{let e=this.ref["img-el"];e.src!==t&&(this._imgLoading=!0,e.src=t||K)}),this.sub("cropPreset",t=>{this.$["*cropPresetList"]=Pe(t)}),this.sub("tabs",t=>{this.$["*tabList"]=_r(t)}),this.sub("*tabId",t=>{this.ref["img-el"].className=D("image",{image_hidden_to_cropper:t===N.CROP,image_hidden_effects:t!==N.CROP})}),this.classList.add("editor_ON"),this.sub("*networkProblems",t=>{this.$["presence.networkProblems"]=t,this.$["presence.modalCaption"]=!t}),this.sub("*editorTransformations",t=>{if(Object.keys(t).length===0)return;let e=this.$["*originalUrl"],r=P(Et(t),"preview"),n=O(e,r),o={originalUrl:e,cdnUrlModifiers:r,cdnUrl:n,transformations:t};this.dispatchEvent(new CustomEvent("change",{detail:o,bubbles:!0,composed:!0}))},!1),this.sub("uuid",t=>t&&this.updateImage()),this.sub("cdnUrl",t=>t&&this.updateImage())}};h(ot,"className","cloud-image-editor");ot.template=yr;ot.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var ti=class extends L{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(i){let t=this.$["*imageBox"];if(!t)return;if(i===""&&t.height<=y&&t.width<=y)return!0;let e=t.height<=y&&(i.includes("n")||i.includes("s")),r=t.width<=y&&(i.includes("e")||i.includes("w"));return e||r}_createBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i,o=this.ref["svg-el"],l=Y("mask",{id:"backdrop-mask"}),a=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),c=Y("rect",{x:t,y:e,width:r,height:n,fill:"black"});l.appendChild(a),l.appendChild(c);let u=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});o.appendChild(u),o.appendChild(l),this._backdropMask=l,this._backdropMaskInner=c}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i;this._backdropMaskInner&&kt(this._backdropMaskInner,{x:t,y:e,width:r,height:n})}_updateFrame(){let i=this.$["*cropBox"];if(!(!i||!this._frameGuides||!this._frameThumbs)){for(let t of Object.values(this._frameThumbs)){let{direction:e,pathNode:r,interactionNode:n,groupNode:o}=t,l=e==="",a=e.length===2,{x:c,y:u,width:d,height:p}=i;if(l){let f={x:c+d/3,y:u+p/3,width:d/3,height:p/3};kt(n,f)}else{let f=wt(Math.min(d,p)/(24*2+34)/2,0,1),{d:_,center:A}=a?$s(i,e,f):Ss(i,e,f),E=Math.max(Di*wt(Math.min(d,p)/Di/3,0,1),As);kt(n,{x:A[0]-E,y:A[1]-E,width:E*2,height:E*2}),kt(r,{d:_})}let m=this._shouldThumbBeDisabled(e);o.setAttribute("class",D("thumb",{"thumb--hidden":m,"thumb--visible":!m}))}kt(this._frameGuides,{x:i.x-1*.5,y:i.y-1*.5,width:i.width+1,height:i.height+1})}}_createThumbs(){let i={};for(let t=0;t<3;t++)for(let e=0;e<3;e++){let r=`${["n","","s"][t]}${["w","","e"][e]}`,n=Y("g");n.classList.add("thumb"),n.setAttribute("with-effects","");let o=Y("rect",{fill:"transparent"}),l=Y("path",{stroke:"currentColor",fill:"none","stroke-width":3});n.appendChild(l),n.appendChild(o),i[r]={direction:r,pathNode:l,interactionNode:o,groupNode:n},o.addEventListener("pointerdown",this._handlePointerDown.bind(this,r))}return i}_createGuides(){let i=Y("svg"),t=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"#000000","stroke-width":1,"stroke-opacity":.5});i.appendChild(t);for(let e=1;e<=2;e++){let r=Y("line",{x1:`${ee*e}%`,y1:"0%",x2:`${ee*e}%`,y2:"100%",stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}for(let e=1;e<=2;e++){let r=Y("line",{x1:"0%",y1:`${ee*e}%`,x2:"100%",y2:`${ee*e}%`,stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}return i.classList.add("guides","guides--semi-hidden"),i}_createFrame(){let i=this.ref["svg-el"],t=document.createDocumentFragment(),e=this._createGuides();t.appendChild(e);let r=this._createThumbs();for(let{groupNode:n}of Object.values(r))t.appendChild(n);i.appendChild(t),this._frameThumbs=r,this._frameGuides=e}_handlePointerDown(i,t){if(!this._frameThumbs)return;let e=this._frameThumbs[i];if(this._shouldThumbBeDisabled(i))return;let r=this.$["*cropBox"],{x:n,y:o}=this.ref["svg-el"].getBoundingClientRect(),l=t.x-n,a=t.y-o;this.$.dragging=!0,this._draggingThumb=e,this._dragStartPoint=[l,a],this._dragStartCrop={...r}}_handlePointerUp_(i){this._updateCursor(),this.$.dragging&&(i.stopPropagation(),i.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(i){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;i.stopPropagation(),i.preventDefault();let t=this.ref["svg-el"],{x:e,y:r}=t.getBoundingClientRect(),n=i.x-e,o=i.y-r,l=n-this._dragStartPoint[0],a=o-this._dragStartPoint[1],{direction:c}=this._draggingThumb,u=this._calcCropBox(c,[l,a]);u&&(this.$["*cropBox"]=u)}_calcCropBox(i,t){var c,u;let[e,r]=t,n=this.$["*imageBox"],o=(c=this._dragStartCrop)!=null?c:this.$["*cropBox"],l=(u=this.$["*cropPresetList"])==null?void 0:u[0],a=l?l.width/l.height:void 0;if(i===""?o=ks({rect:o,delta:[e,r],imageBox:n}):o=Os({rect:o,delta:[e,r],direction:i,aspectRatio:a,imageBox:n}),!Object.values(o).every(d=>Number.isFinite(d)&&d>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:o});return}return Bt(jt(o),this.$["*imageBox"])}_handleSvgPointerMove_(i){if(!this._frameThumbs)return;let t=Object.values(this._frameThumbs).find(e=>{if(this._shouldThumbBeDisabled(e.direction))return!1;let n=e.interactionNode.getBoundingClientRect(),o={x:n.x,y:n.y,width:n.width,height:n.height};return Ls(o,[i.x,i.y])});this._hoverThumb=t,this._updateCursor()}_updateCursor(){let i=this._hoverThumb;this.ref["svg-el"].style.cursor=i?Is(i.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(i){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:t})=>t).forEach(t=>{t.setAttribute("class",D("thumb",{"thumb--hidden":!i,"thumb--visible":i}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",i=>{i&&(this._guidesHidden=i.height<=y||i.width<=y,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",i=>{this._frameGuides&&this._frameGuides.setAttribute("class",D({"guides--hidden":this._guidesHidden,"guides--visible":!this._guidesHidden&&i,"guides--semi-hidden":!this._guidesHidden&&!i}))}),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)}};ti.template='';var _t=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.sub("title",t=>{this._titleEl&&(this._titleEl.style.display=t?"block":"none")}),this.sub("active",t=>{this.className=D({active:t,not_active:!t})}),this.sub("on.click",t=>{this.onclick=t})}};_t.template=`
{{title}}
`;function Lo(s){let i=s+90;return i=i>=360?0:i,i}function Uo(s,i){return s==="rotate"?Lo(i):["mirror","flip"].includes(s)?!i:null}var pe=class extends _t{initCallback(){super.initCallback(),this.defineAccessor("operation",i=>{i&&(this._operation=i,this.$.icon=i)}),this.$["on.click"]=i=>{let t=this.$["*cropperEl"].getValue(this._operation),e=Uo(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};var fe={FILTER:"filter",COLOR_OPERATION:"color_operation"},lt="original",ei=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":t=>{this.$["*faderEl"].set(t),this.$.value=t}})}setOperation(t,e){this._controlType=t==="filter"?fe.FILTER:fe.COLOR_OPERATION,this._operation=t,this._iconName=t,this._title=t.toUpperCase(),this._filter=e,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===lt?void 0:this.$.value,filter:this._filter===lt?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:t,zero:e}=rt[this._operation],[r,n]=t;this.$.min=r,this.$.max=n,this.$.zero=e;let o=this.$["*editorTransformations"][this._operation];if(this._controlType===fe.FILTER){let l=n;if(o){let{name:a,amount:c}=o;l=a===this._filter?c:n}this.$.value=l,this.$.defaultValue=l}if(this._controlType===fe.COLOR_OPERATION){let l=typeof o!="undefined"?o:e;this.$.value=l,this.$.defaultValue=l}}apply(){let t;this._controlType===fe.FILTER?this._filter===lt?t=null:t={name:this._filter,amount:this.$.value}:t=this.$.value;let e={...this.$["*editorTransformations"],[this._operation]:t};this.$["*editorTransformations"]=e}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",t=>{this._originalUrl=t}),this.sub("value",t=>{let e=`${this._filter||this._operation} ${t}`;this.$["*operationTooltip"]=e})}};ei.template=``;function me(s){let i=new Image;return{promise:new Promise((r,n)=>{i.src=s,i.onload=r,i.onerror=n}),image:i,cancel:()=>{i.naturalWidth===0&&(i.src=K)}}}function ge(s){let i=[];for(let n of s){let o=me(n);i.push(o)}let t=i.map(n=>n.image);return{promise:Promise.allSettled(i.map(n=>n.promise)),images:t,cancel:()=>{i.forEach(n=>{n.cancel()})}}}var Xt=class extends _t{constructor(){super(...arguments);h(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,r=Math.ceil(e*t),n=e>=2?"lightest":"normal",o=100,l={...this.$["*editorTransformations"]};return l[this._operation]=this._filter!==lt?{name:this._filter,amount:o}:void 0,O(this._originalUrl,P(Fe,Et(l),`quality/${n}`,`scale_crop/${r}x${r}/center`))}_observerCallback(t,e){if(t[0].isIntersecting){let n=this.proxyUrl(this._previewSrc()),o=this.ref["preview-el"],{promise:l,cancel:a}=me(n);this._cancelPreload=a,l.catch(c=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:c})}).finally(()=>{o.style.backgroundImage=`url(${n})`,o.setAttribute("loaded",""),e.unobserve(this)})}else this._cancelPreload&&this._cancelPreload()}initCallback(){super.initCallback(),this.$["on.click"]=e=>{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===lt,this.$.icon=this.$.isOriginal?"original":"slider"}),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("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 r=this.ref["icon-el"];r.style.opacity=e?"1":"0";let n=this.ref["preview-el"];e?n.style.opacity="0":n.style.backgroundImage&&(n.style.opacity="1")}),this.sub("*networkProblems",e=>{if(!e){let r=this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"];n.style.backgroundImage&&(n.style.backgroundImage="none",n.style.backgroundImage=`url(${r})`)}})}destroyCallback(){var t;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),this._cancelPreload&&this._cancelPreload()}};Xt.template=`
`;var _e=class extends _t{constructor(){super(...arguments);h(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=t=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.$.title=this.l10n(t))}),this.sub("*editorTransformations",t=>{if(!this._operation)return;let{zero:e}=rt[this._operation],r=t[this._operation],n=typeof r!="undefined"?r!==e:!1;this.$.active=n})}};var vr=(s,i)=>{let t,e,r;return(...n)=>{t?(clearTimeout(e),e=setTimeout(()=>{Date.now()-r>=i&&(s(...n),r=Date.now())},Math.max(i-(Date.now()-r),0))):(s(...n),r=Date.now(),t=!0)}};function Cr(s,i){let t={};for(let e of i){let r=s[e];(s.hasOwnProperty(e)||r!==void 0)&&(t[e]=r)}return t}function qt(s,i,t){let r=window.devicePixelRatio,n=Math.min(Math.ceil(i*r),3e3),o=r>=2?"lightest":"normal";return O(s,P(Fe,Et(t),`quality/${o}`,`stretch/off/-/resize/${n}x`))}function Ro(s){return s?[({dimensions:t,coords:e})=>[...t,...e].every(r=>Number.isInteger(r)&&Number.isFinite(r)),({dimensions:t,coords:e})=>t.every(r=>r>0)&&e.every(r=>r>=0)].every(t=>t(s)):!0}var ii=class extends L{constructor(){super(),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=I(this._commit.bind(this),300),this._handleResizeThrottled=vr(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 i=this.$["*editorTransformations"],t=Cr(i,Object.keys(this.$["*operations"])),e={...this.$["*operations"],...t};this.$["*operations"]=e}_initCanvas(){let i=this.ref["canvas-el"],t=i.getContext("2d"),e=this.offsetWidth,r=this.offsetHeight,n=window.devicePixelRatio;i.style.width=`${e}px`,i.style.height=`${r}px`,i.width=e*n,i.height=r*n,t==null||t.scale(n,n),this._canvas=i,this._ctx=t}_alignImage(){if(!this._isActive||!this.$.image)return;let i=this.$.image,t=this.$["*padding"],e=this.$["*operations"],{rotate:r}=e,n={width:this.offsetWidth,height:this.offsetHeight},o=zt({width:i.naturalWidth,height:i.naturalHeight},r),l;if(o.width>n.width-t*2||o.height>n.height-t*2){let a=o.width/o.height,c=n.width/n.height;if(a>c){let u=n.width-t*2,d=u/a,p=0+t,m=t+(n.height-t*2)/2-d/2;l={x:p,y:m,width:u,height:d}}else{let u=n.height-t*2,d=u*a,p=t+(n.width-t*2)/2-d/2,m=0+t;l={x:p,y:m,width:d,height:u}}}else{let{width:a,height:c}=o,u=t+(n.width-t*2)/2-a/2,d=t+(n.height-t*2)/2-c/2;l={x:u,y:d,width:a,height:c}}this.$["*imageBox"]=jt(l)}_alignCrop(){var d;let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,n=this.$["*editorTransformations"].crop,{width:o,x:l,y:a}=this.$["*imageBox"];if(n){let{dimensions:[p,m],coords:[f,_]}=n,{width:A}=zt(this._imageSize,r),E=o/A;i=Bt(jt({x:l+f*E,y:a+_*E,width:p*E,height:m*E}),this.$["*imageBox"])}let c=(d=this.$["*cropPresetList"])==null?void 0:d[0],u=c?c.width/c.height:void 0;if(!Us(i,t)||u&&!Rs(i,u)){let p=t.width/t.height,m=t.width,f=t.height;u&&(p>u?m=Math.min(t.height*u,t.width):f=Math.min(t.width/u,t.height)),i={x:t.x+t.width/2-m/2,y:t.y+t.height/2-f/2,width:m,height:f}}this.$["*cropBox"]=Bt(jt(i),this.$["*imageBox"])}_drawImage(){let i=this._ctx;if(!i)return;let t=this.$.image,e=this.$["*imageBox"],r=this.$["*operations"],{mirror:n,flip:o,rotate:l}=r,a=zt({width:e.width,height:e.height},l);i.save(),i.translate(e.x+e.width/2,e.y+e.height/2),i.rotate(l*Math.PI*-1/180),i.scale(n?-1:1,o?-1:1),i.drawImage(t,-a.width/2,-a.height/2,a.width,a.height),i.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let i=this._canvas;this._ctx.clearRect(0,0,i.width,i.height),this._drawImage()}_animateIn({fromViewer:i}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=D({active_from_viewer:i,active_from_editor:!i,inactive_to_editor:!1})}))}_getCropDimensions(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o}=t,{width:l,height:a}=zt(this._imageSize,r),{width:c,height:u}=i,d=n/l,p=o/a;return[wt(Math.round(c/d),1,l),wt(Math.round(u/p),1,a)]}_getCropTransformation(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o,x:l,y:a}=t,{width:c,height:u}=zt(this._imageSize,r),{x:d,y:p}=i,m=n/c,f=o/u,_=this._getCropDimensions(),A={dimensions:_,coords:[wt(Math.round((d-l)/m),0,c-_[0]),wt(Math.round((p-a)/f),0,u-_[1])]};if(!Ro(A)){console.error("Cropper is trying to create invalid crop object",{payload:A});return}if(!(_[0]===c&&_[1]===u))return A}_commit(){if(!this.isConnected)return;let i=this.$["*operations"],{rotate:t,mirror:e,flip:r}=i,n=this._getCropTransformation(),l={...this.$["*editorTransformations"],crop:n,rotate:t,mirror:e,flip:r};this.$["*editorTransformations"]=l}setValue(i,t){console.log(`Apply cropper operation [${i}=${t}]`),this.$["*operations"]={...this.$["*operations"],[i]:t},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(i){return this.$["*operations"][i]}async activate(i,{fromViewer:t}={}){if(!this._isActive){this._isActive=!0,this._imageSize=i,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:t})}catch(e){console.error("Failed to activate cropper",{error:e})}this._observer=new ResizeObserver(([e])=>{e.contentRect.width>0&&e.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:i=!1}={}){var t;this._isActive&&(!i&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=D({active_from_viewer:!1,active_from_editor:!1,inactive_to_editor:!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(t=this._observer)==null||t.disconnect())}_transitionToCrop(){let i=this._getCropDimensions(),t=Math.min(this.offsetWidth,i[0])/this.$["*cropBox"].width,e=Math.min(this.offsetHeight,i[1])/this.$["*cropBox"].height,r=Math.min(t,e),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,o=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${r}) translate(${(this.offsetWidth/2-n)/r}px, ${(this.offsetHeight/2-o)/r}px)`,this.style.transformOrigin=`${n}px ${o}px`}_transitionToImage(){let i=this.$["*cropBox"].x+this.$["*cropBox"].width/2,t=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${i}px ${t}px`}_reset(){this._isActive||(this.$.image=null)}_waitForImage(i,t){let e=this.offsetWidth;t={...t,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let r=this.proxyUrl(qt(i,e,t)),{promise:n,cancel:o,image:l}=me(r),a=this._handleImageLoading(r);return l.addEventListener("load",a,{once:!0}),l.addEventListener("error",a,{once:!0}),this._cancelPreload&&this._cancelPreload(),this._cancelPreload=o,n.then(()=>l).catch(c=>(console.error("Failed to load image",{error:c}),this.$["*networkProblems"]=!0,Promise.resolve(l)))}_handleImageLoading(i){let t="crop",e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",i=>{i||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var i;super.destroyCallback(),(i=this._observer)==null||i.disconnect()}};ii.template=``;function Gi(s,i,t){let e=Array(t);t--;for(let r=t;r>=0;r--)e[r]=Math.ceil((r*i+(t-r)*s)/t);return e}function Po(s){return s.reduce((i,t,e)=>er<=i&&i<=n);return s.map(r=>{let n=Math.abs(e[0]-e[1]),o=Math.abs(i-e[0])/n;return e[0]===r?i>t?1:1-o:e[1]===r?i>=t?o:1:0})}function No(s,i){return s.map((t,e)=>tn-o)}var Ki=class extends L{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=I(this._addKeypoint.bind(this),600),this.classList.add("inactive_to_cropper")}_handleImageLoading(i){let t=this._operation,e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let i of this._keypoints){let{image:t}=i;t&&(t.style.opacity=i.opacity.toString(),t.style.zIndex=i.zIndex.toString())}})}_imageSrc({url:i=this._url,filter:t=this._filter,operation:e,value:r}={}){let n={...this._transformations};e&&(n[e]=t?{name:t,amount:r}:r);let o=this.offsetWidth;return this.proxyUrl(qt(i,o,n))}_constructKeypoint(i,t){return{src:this._imageSrc({operation:i,value:t}),image:null,opacity:0,zIndex:0,value:t}}_isSame(i,t){return this._operation===i&&this._filter===t}_addKeypoint(i,t,e){let r=()=>!this._isSame(i,t)||this._value!==e||!!this._keypoints.find(a=>a.value===e);if(r())return;let n=this._constructKeypoint(i,e),o=new Image;o.src=n.src;let l=this._handleImageLoading(n.src);o.addEventListener("load",l,{once:!0}),o.addEventListener("error",l,{once:!0}),n.image=o,o.classList.add("fader-image"),o.addEventListener("load",()=>{if(r())return;let a=this._keypoints,c=a.findIndex(d=>d.value>e),u=c{this.$["*networkProblems"]=!0},{once:!0})}set(i){i=typeof i=="string"?parseInt(i,10):i,this._update(this._operation,i),this._addKeypointDebounced(this._operation,this._filter,i)}_update(i,t){this._operation=i,this._value=t;let{zero:e}=rt[i],r=this._keypoints.map(l=>l.value),n=Mo(r,t,e),o=No(r,e);for(let[l,a]of Object.entries(this._keypoints))a.opacity=n[l],a.zIndex=o[l];this._flush()}_createPreviewImage(){let i=new Image;return i.classList.add("fader-image","fader-image--preview"),i.style.opacity="0",i}async _initNodes(){let i=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&i.appendChild(this._previewImage);let t=document.createElement("div");i.appendChild(t);let e=this._keypoints.map(c=>c.src),{images:r,promise:n,cancel:o}=ge(e);r.forEach(c=>{let u=this._handleImageLoading(c.src);c.addEventListener("load",u),c.addEventListener("error",u)}),this._cancelLastImages=()=>{o(),this._cancelLastImages=void 0};let l=this._operation,a=this._filter;await n,this._isActive&&this._isSame(l,a)&&(this._container&&this._container.remove(),this._container=t,this._keypoints.forEach((c,u)=>{let d=r[u];d.classList.add("fader-image"),c.image=d,this._container.appendChild(d)}),this.appendChild(i),this._flush())}setTransformations(i){if(this._transformations=i,this._previewImage){let t=this._imageSrc(),e=this._handleImageLoading(t);this._previewImage.src=t,this._previewImage.addEventListener("load",e,{once:!0}),this._previewImage.addEventListener("error",e,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}preload({url:i,filter:t,operation:e,value:r}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=wr(e,r).map(a=>this._imageSrc({url:i,filter:t,operation:e,value:a})),{cancel:l}=ge(o);this._cancelBatchPreload=l}_setOriginalSrc(i){let t=this._previewImage||this._createPreviewImage();if(!this.contains(t)&&this.appendChild(t),this._previewImage=t,t.src===i){t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1});return}t.style.opacity="0";let e=this._handleImageLoading(i);t.addEventListener("error",e,{once:!0}),t.src=i,t.addEventListener("load",()=>{e(),t&&(t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1}))},{once:!0}),t.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}activate({url:i,operation:t,value:e,filter:r,fromViewer:n}){if(this._isActive=!0,this._hidden=!1,this._url=i,this._operation=t||"initial",this._value=e,this._filter=r,this._fromViewer=n,typeof e!="number"&&!r){let l=this._imageSrc({operation:t,value:e});this._setOriginalSrc(l),this._container&&this._container.remove();return}this._keypoints=wr(t,e).map(l=>this._constructKeypoint(t,l)),this._update(t,e),this._initNodes()}deactivate({hide:i=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),i&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=D({active_from_viewer:!1,active_from_cropper:!1,inactive_to_cropper:!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};var Do=1,si=class extends L{initCallback(){super.initCallback(),this.addEventListener("wheel",i=>{i.preventDefault();let{deltaY:t,deltaX:e}=i;Math.abs(e)>Do?this.scrollLeft+=e:this.scrollLeft+=t})}};si.template=" ";function Fo(s){return``}function Vo(s){return`
`}var ri=class extends L{constructor(){super();h(this,"_updateInfoTooltip",I(()=>{var o,l;let t=this.$["*editorTransformations"],e=this.$["*currentOperation"],r="",n=!1;if(this.$["*tabId"]===N.FILTERS)if(n=!0,this.$["*currentFilter"]&&((o=t==null?void 0:t.filter)==null?void 0:o.name)===this.$["*currentFilter"]){let a=((l=t==null?void 0:t.filter)==null?void 0:l.amount)||100;r=this.l10n(this.$["*currentFilter"])+" "+a}else r=this.l10n(lt);else if(this.$["*tabId"]===N.TUNING&&e){n=!0;let a=(t==null?void 0:t[e])||rt[e].zero;r=e+" "+a}n&&(this.$["*operationTooltip"]=r),this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",n)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":lt,"*currentOperation":null,"*tabId":N.CROP,showLoader:!1,filters:er,colorOperations:tr,cropOperations:ir,"*operationTooltip":null,"l10n.cancel":this.l10n("cancel"),"l10n.apply":this.l10n("apply"),"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:"sub-toolbar--top-hidden",visible:"sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"sub-toolbar--bottom-hidden",visible:"sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"tab-content--hidden",visible:"tab-content--visible"},"presence.tabToggleStyles":{hidden:"tab-toggle--hidden",visible:"tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"tab-toggles--hidden",visible:"tab-toggles--visible"},"on.cancel":()=>{this._cancelPreload&&this._cancelPreload(),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":t=>{let e=t.currentTarget.getAttribute("data-id");e&&this._activateTab(e,{fromViewer:!1})}},this._debouncedShowLoader=I(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===N.TUNING&&this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",!1)}_createOperationControl(t){let e=new _e;return e.operation=t,e}_createFilterControl(t){let e=new Xt;return e.filter=t,e}_createToggleControl(t){let e=new pe;return e.operation=t,e}_renderControlsList(t){let e=this.ref[`controls-list-${t}`],r=document.createDocumentFragment();t===N.CROP?this.$.cropOperations.forEach(n=>{let o=this._createToggleControl(n);r.appendChild(o)}):t===N.FILTERS?[lt,...this.$.filters].forEach(n=>{let o=this._createFilterControl(n);r.appendChild(o)}):t===N.TUNING&&this.$.colorOperations.forEach(n=>{let o=this._createOperationControl(n);r.appendChild(o)}),[...r.children].forEach((n,o)=>{o===r.childNodes.length-1&&n.classList.add("controls-list_last-item")}),e.innerHTML="",e.appendChild(r)}_activateTab(t,{fromViewer:e}){this.$["*tabId"]=t,t===N.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:e})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:e}),this.$["*cropperEl"].deactivate());for(let r of W){let n=r===t,o=this.ref[`tab-toggle-${r}`];o.active=n,n?(this._renderControlsList(t),this._syncTabIndicator()):this._unmountTabControls(r),this.$[`presence.tabContent.${r}`]=n}}_unmountTabControls(t){let e=this.ref[`controls-list-${t}`];e&&(e.innerHTML="")}_syncTabIndicator(){let t=this.ref[`tab-toggle-${this.$["*tabId"]}`],e=this.ref["tabs-indicator"];e.style.transform=`translateX(${t.offsetLeft}px)`}_preloadEditedImage(){if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let t=this.$["*imgContainerEl"].offsetWidth,e=this.proxyUrl(qt(this.$["*originalUrl"],t,this.$["*editorTransformations"]));this._cancelPreload&&this._cancelPreload();let{cancel:r}=ge([e]);this._cancelPreload=()=>{r(),this._cancelPreload=void 0}}}_showLoader(t){this.$.showLoader=t}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",t=>{t&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",t=>{var r;let e=(r=t==null?void 0:t.filter)==null?void 0:r.name;this.$["*currentFilter"]!==e&&(this.$["*currentFilter"]=e)}),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",t=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(t)}),this.sub("*loadingOperations",t=>{let e=!1;for(let[,r]of t.entries()){if(e)break;for(let[,n]of r.entries())if(n){e=!0;break}}this._debouncedShowLoader(e)}),this.sub("*showSlider",t=>{this.$["presence.subToolbar"]=t,this.$["presence.mainToolbar"]=!t}),this.sub("*tabList",t=>{this.$["presence.tabToggles"]=t.length>1;for(let e of W){this.$[`presence.tabToggle.${e}`]=t.includes(e);let r=this.ref[`tab-toggle-${e}`];r.style.gridColumn=t.indexOf(e)+1}t.includes(this.$["*tabId"])||this._activateTab(t[0],{fromViewer:!1})}),this._updateInfoTooltip()}};ri.template=`
{{*operationTooltip}}
${W.map(Vo).join("")}
${W.map(Fo).join("")}
`;var be=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},this.defineAccessor("active",i=>{i?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return D("icon",{icon_left:!this._iconReversed,icon_right:this._iconReversed,icon_hidden:this._iconHidden,icon_single:this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",i=>{this._iconSingle=!this.$.text,this._iconHidden=!i,this.$.iconCss=this._iconCss()}),this.sub("theme",i=>{i!=="custom"&&(this.className=i)}),this.sub("text",i=>{this._iconSingle=!1}),this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.hasAttribute("theme")||this.setAttribute("theme","default")}set reverse(i){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};be.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});be.template=`
{{text}}
`;var ni=class extends b{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let i=this.ref["line-el"];i.style.transition="initial",i.style.opacity="0",i.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",i=>{typeof i=="boolean"&&(i?this._start():this._stop())})}_start(){this._active=!0;let{width:i}=this.getBoundingClientRect(),t=this.ref["line-el"];t.style.transition="transform 1s",t.style.opacity="1",t.style.transform=`translateX(${i}px)`,t.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};ni.template=`
`;var oi={transition:"transition",visible:"visible",hidden:"hidden"},li=class extends b{constructor(){super(),this._visible=!1,this._visibleStyle=oi.visible,this._hiddenStyle=oi.hidden,this._externalTransitions=!1,this.defineAccessor("styles",i=>{i&&(this._externalTransitions=!0,this._visibleStyle=i.visible,this._hiddenStyle=i.hidden)}),this.defineAccessor("visible",i=>{typeof i=="boolean"&&(this._visible=i,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",gr(this,{[oi.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.setAttribute("hidden",""),this._externalTransitions||this.classList.add(oi.transition),this._handleVisible(),setTimeout(()=>this.removeAttribute("hidden"),0)}};li.template=" ";var ai=class extends b{constructor(){super();h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let t=parseInt(this.ref["input-el"].value,10);this._updateValue(t),this.$.onInput&&this.$.onInput(t)},"on.sliderChange":()=>{let t=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(t)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",e=>{this.$.disabled=e}),this.defineAccessor("min",e=>{this.$.min=e}),this.defineAccessor("max",e=>{this.$.max=e}),this.defineAccessor("defaultValue",e=>{this.$.defaultValue=e,this.ref["input-el"].value=e,this._updateValue(e)}),this.defineAccessor("zero",e=>{this._zero=e}),this.defineAccessor("onInput",e=>{e&&(this.$.onInput=e)}),this.defineAccessor("onChange",e=>{e&&(this.$.onChange=e)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)},0),this.sub("disabled",e=>{let r=this.ref["input-el"];e?r.setAttribute("disabled","disabled"):r.removeAttribute("disabled")});let t=this.ref["input-el"];t.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),t.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(t){this._updateZeroDot(t);let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(t-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${o}px)`})}_updateZeroDot(t){if(!this._zeroDotEl)return;t===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="0.2";let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${o}px)`})}_updateSteps(){let e=this.ref["steps-el"],{width:r}=e.getBoundingClientRect(),n=Math.ceil(r/2),o=Math.ceil(n/15)-2;if(this._stepsCount===o)return;let l=document.createDocumentFragment(),a=document.createElement("div"),c=document.createElement("div");a.className="minor-step",c.className="border-step",l.appendChild(c);for(let d=0;d
`;var Yi=class extends v{constructor(){super();h(this,"activityType",g.activities.CLOUD_IMG_EDIT);this.init$={...this.init$,cdnUrl:null}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.sub("*focusedEntry",t=>{t&&(this.entry=t,this.entry.subscribe("cdnUrl",e=>{e&&(this.$.cdnUrl=e)}))}),this.subConfigValue("cropPreset",t=>{this._instance&&this._instance.getAttribute("crop-preset")!==t&&this._instance.setAttribute("crop-preset",t)}),this.subConfigValue("cloudImageEditorTabs",t=>{this._instance&&this._instance.getAttribute("tabs")!==t&&this._instance.setAttribute("tabs",t)})}handleApply(t){if(!this.entry)return;let e=t.detail;this.entry.setMultipleValues({cdnUrl:e.cdnUrl,cdnUrlModifiers:e.cdnUrlModifiers}),this.historyBack()}handleCancel(){this.historyBack()}mountEditor(){let t=new ot,e=this.$.cdnUrl,r=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;t.setAttribute("ctx-name",this.ctxName),t.setAttribute("cdn-url",e),r&&t.setAttribute("crop-preset",r),n&&t.setAttribute("tabs",n),t.addEventListener("apply",o=>this.handleApply(o)),t.addEventListener("cancel",()=>this.handleCancel()),this.innerHTML="",this.appendChild(t),this._mounted=!0,this._instance=t}unmountEditor(){this._instance=void 0,this.innerHTML=""}};var Bo=function(s){return s.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},Tr=function(s,i="i"){let t=s.split("*").map(Bo);return new RegExp("^"+t.join(".+")+"$",i)};var zo=s=>Object.keys(s).reduce((t,e)=>{let r=s[e],n=Object.keys(r).reduce((o,l)=>{let a=r[l];return o+`${l}: ${a};`},"");return t+`${e}{${n}}`},"");function Er({textColor:s,backgroundColor:i,linkColor:t,linkColorHover:e,shadeColor:r}){let n=`solid 1px ${r}`;return zo({body:{color:s,"background-color":i},".side-bar":{background:"inherit","border-right":n},".main-content":{background:"inherit"},".main-content-header":{background:"inherit"},".main-content-footer":{background:"inherit"},".list-table-row":{color:"inherit"},".list-table-row:hover":{background:r},".list-table-row .list-table-cell-a, .list-table-row .list-table-cell-b":{"border-top":n},".list-table-body .list-items":{"border-bottom":n},".bread-crumbs a":{color:t},".bread-crumbs a:hover":{color:e},".main-content.loading":{background:`${i} url(/static/images/loading_spinner.gif) center no-repeat`,"background-size":"25px 25px"},".list-icons-item":{"background-color":r},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a":{color:t},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a:hover":{color:e},".side-bar-menu a":{color:t},".side-bar-menu a:hover":{color:e},".source-gdrive .side-bar-menu .current, .source-gdrive .side-bar-menu a:hover, .source-gphotos .side-bar-menu .current, .source-gphotos .side-bar-menu a:hover":{color:e},".source-vk .side-bar-menu a":{color:t},".source-vk .side-bar-menu a:hover":{color:e,background:"none"}})}var At={};window.addEventListener("message",s=>{let i;try{i=JSON.parse(s.data)}catch{return}if((i==null?void 0:i.type)in At){let t=At[i.type];for(let[e,r]of t)s.source===e&&r(i)}});var xr=function(s,i,t){s in At||(At[s]=[]),At[s].push([i,t])},Ar=function(s,i){s in At&&(At[s]=At[s].filter(t=>t[0]!==i))};function $r(s){let i=[];for(let[t,e]of Object.entries(s))e==null||typeof e=="string"&&e.length===0||i.push(`${t}=${encodeURIComponent(e)}`);return i.join("&")}var ci=class extends v{constructor(){super();h(this,"activityType",g.activities.EXTERNAL);h(this,"_iframe",null);h(this,"updateCssData",()=>{this.isActivityActive&&(this._inheritedUpdateCssData(),this.applyStyles())});h(this,"_inheritedUpdateCssData",this.updateCssData);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],counter:0,onDone:()=>{for(let t of this.$.selectedList){let e=this.extractUrlFromMessage(t),{filename:r}=t,{externalSourceType:n}=this.activityParams;this.addFileFromUrl(e,{fileName:r,source:n})}this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()}}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:t}=this.activityParams;this.set$({activityCaption:`${t==null?void 0:t[0].toUpperCase()}${t==null?void 0:t.slice(1)}`,activityIcon:t}),this.mountIframe()}}),this.sub("*currentActivity",t=>{t!==this.activityType&&this.unmountIframe()}),this.sub("selectedList",t=>{this.$.counter=t.length})}extractUrlFromMessage(t){if(t.alternatives){let e=M(this.cfg.externalSourcesPreferredTypes);for(let r of e){let n=Tr(r);for(let[o,l]of Object.entries(t.alternatives))if(n.test(o))return l}}return t.url}sendMessage(t){var e,r;(r=(e=this._iframe)==null?void 0:e.contentWindow)==null||r.postMessage(JSON.stringify(t),"*")}async handleFileSelected(t){this.$.selectedList=[...this.$.selectedList,t]}handleIframeLoad(){this.applyStyles()}getCssValue(t){return window.getComputedStyle(this).getPropertyValue(t).trim()}applyStyles(){let t={backgroundColor:this.getCssValue("--clr-background-light"),textColor:this.getCssValue("--clr-txt"),shadeColor:this.getCssValue("--clr-shade-lv1"),linkColor:"#157cfc",linkColorHover:"#3891ff"};this.sendMessage({type:"embed-css",style:Er(t)})}remoteUrl(){var l,a;let t=this.cfg.pubkey,e=(!1).toString(),{externalSourceType:r}=this.activityParams,n={lang:((a=(l=this.getCssData("--l10n-locale-name"))==null?void 0:l.split("-"))==null?void 0:a[0])||"en",public_key:t,images_only:e,pass_window_open:!1,session_key:this.cfg.remoteTabSessionKey},o=new URL(this.cfg.socialBaseUrl);return o.pathname=`/window3/${r}`,o.search=$r(n),o.toString()}mountIframe(){let t=Zt({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});t.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(t),xr("file-selected",t.contentWindow,this.handleFileSelected.bind(this)),this._iframe=t,this.$.selectedList=[]}unmountIframe(){this._iframe&&Ar("file-selected",this._iframe.contentWindow),this.ref.iframeWrapper.innerHTML="",this._iframe=null,this.$.selectedList=[],this.$.counter=0}};ci.template=`
{{activityCaption}}
{{counter}}
`;var ye=class extends b{setCurrentTab(i){if(!i)return;[...this.ref.context.querySelectorAll("[tab-ctx]")].forEach(e=>{e.getAttribute("tab-ctx")===i?e.removeAttribute("hidden"):e.setAttribute("hidden","")});for(let e in this._tabMap)e===i?this._tabMap[e].setAttribute("current",""):this._tabMap[e].removeAttribute("current")}initCallback(){super.initCallback(),this._tabMap={},this.defineAccessor("tab-list",i=>{if(!i)return;M(i).forEach(e=>{let r=Zt({tag:"div",attributes:{class:"tab"},properties:{onclick:()=>{this.setCurrentTab(e)}}});r.textContent=this.l10n(e),this.ref.row.appendChild(r),this._tabMap[e]=r})}),this.defineAccessor("default",i=>{this.setCurrentTab(i)}),this.hasAttribute("default")||this.setCurrentTab(Object.keys(this._tabMap)[0])}};ye.bindAttributes({"tab-list":null,default:null});ye.template=`
`;var Gt=class extends v{constructor(){super();h(this,"processInnerHtml",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return Gt.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,yi(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var e,r;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(l=>l.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let l of n){let a=document.createElement("input");a.type="hidden",a.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,a.value=l!=null?l:"",this._dynamicInputsContainer.appendChild(a)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let l=o.find(d=>!d.isValid),a=(r=l==null?void 0:l.validationErrorMessage)!=null?r:(e=l==null?void 0:l.uploadError)==null?void 0:e.message,c=this.$["*message"];c=c!=null&&c.isError?`${c.caption}. ${c.text}`:void 0;let u=a!=null?a:c;u?this._validationInputElement.setCustomValidity(u):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(l=>l.isUploaded&&l.isValid)){this.$.output={groupData:void 0,files:t};return}let r=this.getUploadClientOptions(),n=t.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=await Ts(n,r);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};Gt.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var Zi=class extends g{};var hi=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:t=>{var e;t.preventDefault(),t.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((e=this.$.options.find(r=>r.value==this.value))==null?void 0:e.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",t=>{var r;this.$.currentText=((r=t==null?void 0:t[0])==null?void 0:r.text)||"";let e="";t==null||t.forEach(n=>{e+=``}),this.$.selectHtml=e})}};hi.template=``;var q={PLAY:"play",PAUSE:"pause",FS_ON:"fullscreen-on",FS_OFF:"fullscreen-off",VOL_ON:"unmute",VOL_OFF:"mute",CAP_ON:"captions",CAP_OFF:"captions-off"},Sr={requestFullscreen:s=>{s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen&&s.webkitRequestFullscreen()},exitFullscreen:()=>{document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}},Q=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,src:"",ppIcon:q.PLAY,fsIcon:q.FS_ON,volIcon:q.VOL_ON,capIcon:q.CAP_OFF,totalTime:"00:00",currentTime:"00:00",progressCssWidth:"0",hasSubtitles:!1,volumeDisabled:!1,volumeValue:0,onPP:()=>{this.togglePlay()},onFs:()=>{this.toggleFullscreen()},onCap:()=>{this.toggleCaptions()},onMute:()=>{this.toggleSound()},onVolChange:t=>{let e=parseFloat(t.currentTarget.$.value);this.setVolume(e)},progressClicked:t=>{let e=this.progress.getBoundingClientRect();this._video.currentTime=this._video.duration*(t.offsetX/e.width)}})}togglePlay(){this._video.paused||this._video.ended?this._video.play():this._video.pause()}toggleFullscreen(){(document.fullscreenElement||document.webkitFullscreenElement)===this?Sr.exitFullscreen():Sr.requestFullscreen(this)}toggleCaptions(){this.$.capIcon===q.CAP_OFF?(this.$.capIcon=q.CAP_ON,this._video.textTracks[0].mode="showing",window.localStorage.setItem(Q.is+":captions","1")):(this.$.capIcon=q.CAP_OFF,this._video.textTracks[0].mode="hidden",window.localStorage.removeItem(Q.is+":captions"))}toggleSound(){this.$.volIcon===q.VOL_ON?(this.$.volIcon=q.VOL_OFF,this.$.volumeDisabled=!0,this._video.muted=!0):(this.$.volIcon=q.VOL_ON,this.$.volumeDisabled=!1,this._video.muted=!1)}setVolume(t){window.localStorage.setItem(Q.is+":volume",t);let e=t?t/100:0;this._video.volume=e}get progress(){return this.ref.progress}_getUrl(t){return t.includes("/")?t:`https://ucarecdn.com/${t}/`}_desc2attrs(t){let e=[];for(let r in t){let n=r==="src"?this._getUrl(t[r]):t[r];e.push(`${r}="${n}"`)}return e.join(" ")}_timeFmt(t){let e=new Date(Math.round(t)*1e3);return[e.getMinutes(),e.getSeconds()].map(r=>r<10?"0"+r:r).join(":")}_initTracks(){[...this._video.textTracks].forEach(t=>{t.mode="hidden"}),window.localStorage.getItem(Q.is+":captions")&&this.toggleCaptions()}_castAttributes(){let t=["autoplay","loop","muted"];[...this.attributes].forEach(e=>{t.includes(e.name)&&this._video.setAttribute(e.name,e.value)})}initCallback(){super.initCallback(),this._video=this.ref.video,this._castAttributes(),this._video.addEventListener("play",()=>{this.$.ppIcon=q.PAUSE,this.setAttribute("playback","")}),this._video.addEventListener("pause",()=>{this.$.ppIcon=q.PLAY,this.removeAttribute("playback")}),this.addEventListener("fullscreenchange",e=>{console.log(e),document.fullscreenElement===this?this.$.fsIcon=q.FS_OFF:this.$.fsIcon=q.FS_ON}),this.sub("src",e=>{if(!e)return;let r=this._getUrl(e);this._video.src=r}),this.sub("video",async e=>{if(!e)return;let r=await(await window.fetch(this._getUrl(e))).json();r.poster&&(this._video.poster=this._getUrl(r.poster));let n="";r==null||r.sources.forEach(o=>{n+=``}),r.tracks&&(r.tracks.forEach(o=>{n+=``}),this.$.hasSubtitles=!0),this._video.innerHTML+=n,this._initTracks(),console.log(r)}),this._video.addEventListener("loadedmetadata",e=>{this.$.currentTime=this._timeFmt(this._video.currentTime),this.$.totalTime=this._timeFmt(this._video.duration)}),this._video.addEventListener("timeupdate",e=>{let r=Math.round(100*(this._video.currentTime/this._video.duration));this.$.progressCssWidth=r+"%",this.$.currentTime=this._timeFmt(this._video.currentTime)});let t=window.localStorage.getItem(Q.is+":volume");if(t){let e=parseFloat(t);this.setVolume(e),this.$.volumeValue=e}}};Q.template=`
{{currentTime}} / {{totalTime}}
`;Q.bindAttributes({video:"video",src:"src"});var jo="css-src";function ui(s){return class extends s{constructor(){super(...arguments);h(this,"renderShadow",!0);h(this,"pauseRender",!0);h(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),Ae({element:this,attribute:jo,onSuccess:t=>{this.attachShadow({mode:"open"});let e=document.createElement("link");e.rel="stylesheet",e.type="text/css",e.href=t,e.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(e)},onTimeout:()=>{console.error("Attribute `css-src` is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}var ve=class extends ui(b){};var di=class extends b{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};h(di,"template",`Powered by Uploadcare`);var $t=class extends ve{constructor(){super(...arguments);h(this,"requireCtxName",!0);h(this,"init$",Ue(this));h(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};var pi=class extends $t{};pi.template=``;var fi=class extends $t{constructor(){super(...arguments);h(this,"pauseRender",!0)}shadowReadyCallback(){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"]=g.activities.UPLOAD_LIST:this.$["*currentActivity"]=t.initActivity||g.activities.START_FROM}),this.subConfigValue("sourceList",e=>{e!=="local"&&(this.cfg.sourceList="local")}),this.subConfigValue("confirmUpload",e=>{e!==!1&&(this.cfg.confirmUpload=!1)})}};fi.template=``;var mi=class extends $t{constructor(){super(),this.init$={...this.init$,couldBackHistory:!1}}shadowReadyCallback(){let i=this.ref.uBlock;this.sub("*currentActivity",t=>{t||(this.$["*currentActivity"]=i.initActivity||g.activities.START_FROM)}),this.sub("*uploadList",t=>{(t==null?void 0:t.length)>0&&this.$["*currentActivity"]===(i.initActivity||g.activities.START_FROM)&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}),this.sub("*history",t=>this.$.couldBackHistory=t.length>1)}};mi.template=``;var Ji=class extends ui(ot){shadowReadyCallback(){this.__shadowReady=!0,this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async initEditor(){this.__shadowReady&&await super.initEditor()}};function Qi(s){for(let i in s){let t=[...i].reduce((e,r)=>(r.toUpperCase()===r&&(r="-"+r.toLowerCase()),e+=r),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),s[i].reg&&s[i].reg(t)}}var ts="LR";async function Ho(s,i=!1){return new Promise((t,e)=>{if(typeof document!="object"){t(null);return}if(typeof window=="object"&&window[ts]){t(window[ts]);return}let r=document.createElement("script");r.async=!0,r.src=s,r.onerror=()=>{e()},r.onload=()=>{let n=window[ts];i&&Qi(n),t(n)},document.head.appendChild(r)})}export{g as ActivityBlock,Zi as ActivityHeader,Nt as BaseComponent,b as Block,Ke as CameraSource,Ji as CloudImageEditor,Yi as CloudImageEditorActivity,ot as CloudImageEditorBlock,To as Config,Ze as ConfirmationDialog,di as Copyright,ti as CropFrame,$ as Data,Gt as DataOutput,ae as DropArea,pe as EditorCropButtonControl,Xt as EditorFilterControl,ii as EditorImageCropper,Ki as EditorImageFader,_e as EditorOperationControl,si as EditorScroller,ei as EditorSlider,ri as EditorToolbar,ci as ExternalSource,gt as FileItem,de as FilePreview,mi as FileUploaderInline,fi as FileUploaderMinimal,pi as FileUploaderRegular,ne as Icon,Bi as Img,ni as LineLoaderUi,be as LrBtnUi,Xe as MessageBox,ue as Modal,Ns as PACKAGE_NAME,Ds as PACKAGE_VERSION,li as PresenceToggle,Qe as ProgressBar,Je as ProgressBarCommon,hi as Select,ve as ShadowWrapper,le as SimpleBtn,ai as SliderUi,ce as SourceBtn,Hi as SourceList,He as StartFrom,ye as Tabs,ko as UploadCtxProvider,Ye as UploadDetails,qe as UploadList,v as UploaderBlock,Ge as UrlSource,Q as Video,Ho as connectBlocksFrom,Qi as registerBlocks,ui as shadowed,ut as toKebabCase}; \ No newline at end of file +`,"\\n"),i=Gr(i),i=Mt+i+Mt);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${s}`)}}var is=0,Pt=null,ht=null,bt=class extends HTMLElement{constructor(){super(),bi(this,"updateCssData",()=>{var s;this.dropCssDataCache(),(s=this.__boundCssProps)==null||s.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 bt}initCallback(){}__initCallback(){var s;this.__initialized||(this.__initialized=!0,(s=this.initCallback)==null||s.call(this))}render(s,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let r=this.getAttribute(C.USE_TPL);if(r){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(r))||document.querySelector(r);o?s=o.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)t=s;else if((s==null?void 0:s.constructor)===String){let r=document.createElement("template");r.innerHTML=s,t=r.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let r of this.tplProcessors)r(t,this)}let e=()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()};if(this.constructor.__shadowStylesUrl){i=!0;let r=document.createElement("link");r.rel="stylesheet",r.href=this.constructor.__shadowStylesUrl,r.onload=e,this.shadowRoot.prepend(r)}else e()}addTemplateProcessor(s){this.tplProcessors.add(s)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=Yt.generate(),this.style.setProperty(C.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(C.CSS_CTX_PROP,!0)}get ctxName(){var s;let i=((s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=$.registerCtx({},this)),this.__localCtx}get nodeCtx(){return $.getCtx(this.ctxName,!1)||$.registerCtx({},this.ctxName)}static __parseProp(s,i){let t,e;if(s.startsWith(C.EXT_DATA_CTX_PRFX))t=i.nodeCtx,e=s.replace(C.EXT_DATA_CTX_PRFX,"");else if(s.includes(C.NAMED_DATA_CTX_SPLTR)){let r=s.split(C.NAMED_DATA_CTX_SPLTR);t=$.getCtx(r[0]),e=r[1]}else t=i.localCtx,e=s;return{ctx:t,name:e}}sub(s,i,t=!0){let e=n=>{this.isConnected&&i(n)},r=bt.__parseProp(s,this);r.ctx.has(r.name)?this.allSubs.add(r.ctx.sub(r.name,e,t)):window.setTimeout(()=>{this.allSubs.add(r.ctx.sub(r.name,e,t))})}notify(s){let i=bt.__parseProp(s,this);i.ctx.notify(i.name)}has(s){let i=bt.__parseProp(s,this);return i.ctx.has(i.name)}add(s,i,t=!1){let e=bt.__parseProp(s,this);e.ctx.add(e.name,i,t)}add$(s,i=!1){for(let t in s)this.add(t,s[t],i)}get $(){if(!this.__stateProxy){let s=Object.create(null);this.__stateProxy=new Proxy(s,{set:(i,t,e)=>{let r=bt.__parseProp(t,this);return r.ctx.pub(r.name,e),!0},get:(i,t)=>{let e=bt.__parseProp(t,this);return e.ctx.read(e.name)}})}return this.__stateProxy}set$(s,i=!1){for(let t in s){let e=s[t];i||![String,Number,Boolean].includes(e==null?void 0:e.constructor)?this.$[t]=e:this.$[t]!==e&&(this.$[t]=e)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(C.CTX_OWNER_ATTR)&&this.getAttribute(C.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let s=this.constructor.__attrDesc;if(s)for(let i of Object.values(s))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(C.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(C.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(C.NAMED_DATA_CTX_SPLTR)){let t=i.split(C.NAMED_DATA_CTX_SPLTR),e=t[0].trim(),r=t[1].trim();if(e&&r){let n=$.getCtx(e,!1);n||(n=$.registerCtx({},e)),n.add(r,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var s;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim();if(i&&this.style.setProperty(C.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[C.SET_LATER_KEY]){for(let t in this[C.SET_LATER_KEY])rs(this,t,this[C.SET_LATER_KEY][t]);delete this[C.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of Hr)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${C.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let r=this.constructor.__rootStylesLink.cloneNode(!0);r.setAttribute(C.ROOT_STYLE_ATTR_NAME,this.constructor.is),r.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(r):t.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);ht==null||ht.delete(this.updateCssData),ht!=null&&ht.size||(Pt==null||Pt.disconnect(),Pt=null,ht=null)},100)))}static reg(s,i=!1){s||(is++,s=`${C.AUTO_TAG_PRFX}-${is}`),this.__tag=s;let t=window.customElements.get(s);if(t){!i&&t!==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(` `));return}window.customElements.define(s,i?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,i,t){var e;if(i===t)return;let r=(e=this.constructor.__attrDesc)==null?void 0:e[s];r?this.__dataCtxInitialized?this.$[r]=t:this.init$[r]=t:this[s]=t}getCssData(s,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(s)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(s).trim();try{this.__cssDataCache[s]=Kr(t)}catch{!i&&console.warn(`CSS Data error: ${s}`),this.__cssDataCache[s]=null}}return this.__cssDataCache[s]}__extractCssName(s){return s.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){ht||(ht=new Set),ht.add(this.updateCssData),Pt||(Pt=new MutationObserver(s=>{s[0].type==="attributes"&&ht.forEach(i=>{i()})}),Pt.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(s,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(s);let t=this.getCssData(this.__extractCssName(s),!0);t===null&&(t=i),this.add(s,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(s,i,t){let e="__"+s;this[e]=this[s],Object.defineProperty(this,s,{set:r=>{this[e]=r,t?window.setTimeout(()=>{i==null||i(r)}):i==null||i(r)},get:()=>this[e]}),this[s]=this[e]}static set shadowStyles(s){let i=new Blob([s],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(s){if(!this.__rootStylesLink){let i=new Blob([s],{type:"text/css"}),t=URL.createObjectURL(i),e=document.createElement("link");e.href=t,e.rel="stylesheet",this.__rootStylesLink=e}}},Nt=bt;bi(Nt,"template");var _i=class{static _print(s){console.warn(s)}static setDefaultTitle(s){this.defaultTitle=s}static setRoutingMap(s){Object.assign(this.appMap,s);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}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(t=>{if(t.includes("?"))s.route=t.replace("?","");else if(t.includes("=")){let e=t.split("=");s.options[e[0]]=decodeURI(e[1])}else s.options[t]=!0}),s}static notify(){let s=this.readAddressBar(),i=this.appMap[s.route];if(i&&i.title&&(document.title=i.title),s.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${s.route}" not found...`);return}let t=new CustomEvent(_i.routingEventName,{detail:{route:s.route,options:Object.assign(i||{},s.options)}});window.dispatchEvent(t)}static reflect(s,i={}){let t=this.appMap[s];if(!t){this._print("Wrong route: "+s);return}let e="?"+s;for(let n in i)i[n]===!0?e+=this.separator+n:e+=this.separator+n+`=${i[n]}`;let r=t.title||this.defaultTitle||"";window.history.pushState(null,r,e),document.title=r}static applyRoute(s,i={}){this.reflect(s,i),this.notify()}static setSeparator(s){this._separator=s}static get separator(){return this._separator||"&"}static createRouterData(s,i){this.setRoutingMap(i);let t=$.registerCtx({route:null,options:null,title:null},s);return window.addEventListener(this.routingEventName,e=>{var r;t.multiPub({route:e.detail.route,options:e.detail.options,title:((r=e.detail.options)==null?void 0:r.title)||this.defaultTitle||""})}),_i.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};_i.appMap=Object.create(null);function yi(s,i){for(let t in i)t.includes("-")?s.style.setProperty(t,i[t]):s.style[t]=i[t]}function Yr(s,i){for(let t in i)i[t].constructor===Boolean?i[t]?s.setAttribute(t,""):s.removeAttribute(t):s.setAttribute(t,i[t])}function Zt(s={tag:"div"}){let i=document.createElement(s.tag);if(s.attributes&&Yr(i,s.attributes),s.styles&&yi(i,s.styles),s.properties)for(let t in s.properties)i[t]=s.properties[t];return s.processors&&s.processors.forEach(t=>{t(i)}),s.children&&s.children.forEach(t=>{let e=Zt(t);i.appendChild(e)}),i}var ns="idb-store-ready",Zr="symbiote-db",Jr="symbiote-idb-update_",Qr=class{_notifyWhenReady(s=null){window.dispatchEvent(new CustomEvent(ns,{detail:{dbName:this.name,storeName:this.storeName,event:s}}))}get _updEventName(){return Jr+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,i){this.name=s,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=e=>{this._notifyWhenReady(e)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async r=>{r(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(s){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(s);return new Promise((e,r)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?e(n.target.result._value):(e(null),console.warn(`IDB: cannot read "${s}"`))},t.onerror=n=>{r(n)}})}write(s,i,t=!1){let e={_key:s,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(e);return new Promise((o,l)=>{n.onsuccess=a=>{t||this._notifySubscribers(s),o(a.target.result)},n.onerror=a=>{l(a)}})}delete(s,i=!1){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(s);return new Promise((r,n)=>{e.onsuccess=o=>{i||this._notifySubscribers(s),r(o)},e.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,e)=>{i.onsuccess=r=>{let n=r.target.result;t(n.map(o=>o._value))},i.onerror=r=>{e(r)}})}subscribe(s,i){this._subscriptionsMap[s]||(this._subscriptionsMap[s]=new Set);let t=this._subscriptionsMap[s];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[s]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,os.clear(this.name)}},os=class{static get readyEventName(){return ns}static open(s=Zr,i="store"){let t=s+"/"+i;return this._reg[t]||(this._reg[t]=new Qr(s,i)),this._reg[t]}static clear(s){window.indexedDB.deleteDatabase(s);for(let i in this._reg)i.split("/")[0]===s&&delete this._reg[i]}};bi(os,"_reg",Object.create(null));var S=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),tn=Object.freeze({[S.UPLOAD_START]:"LR_UPLOAD_START",[S.REMOVE]:"LR_REMOVE",[S.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[S.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[S.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[S.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[S.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[S.DATA_OUTPUT]:"LR_DATA_OUTPUT",[S.DONE_FLOW]:"LR_DONE_FLOW",[S.INIT_FLOW]:"LR_INIT_FLOW"}),Te=class{constructor(i){h(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var r;(r=this._target)==null||r.dispatchEvent(new CustomEvent(i,{detail:t}));let e=tn[i];window.dispatchEvent(new CustomEvent(e,{detail:{ctx:this._getCtxName(),type:e,data:t}}))}emit(i,t,{debounce:e}={}){if(typeof e!="number"&&!e){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let r=typeof e=="number"?e:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},r);this._timeoutStore.set(i,n)}};function I(s,i){let t,e=(...r)=>{clearTimeout(t),t=setTimeout(()=>s(...r),i)};return e.cancel=()=>{clearTimeout(t)},e}var en="--uploadcare-blocks-window-height",Ee="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function vi(){return typeof window[Ee]=="undefined"?!1:!!window[Ee]}function ls(){if(vi())return;let s=()=>{document.documentElement.style.setProperty(en,`${window.innerHeight}px`),window[Ee]=!0},i=I(s,100);return window.addEventListener("resize",i,{passive:!0}),s(),()=>{window[Ee]=!1,window.removeEventListener("resize",i)}}var xe=(s,i)=>new Intl.PluralRules(s).select(i);var sn=s=>s,Ci="{{",cs="}}",as="plural:";function Jt(s,i,t={}){var o;let{openToken:e=Ci,closeToken:r=cs,transform:n=sn}=t;for(let l in i){let a=(o=i[l])==null?void 0:o.toString();s=s.replaceAll(e+l+r,typeof a=="string"?n(a):a)}return s}function hs(s){let i=[],t=s.indexOf(Ci);for(;t!==-1;){let e=s.indexOf(cs,t),r=s.substring(t+2,e);if(r.startsWith(as)){let n=s.substring(t+2,e).replace(as,""),o=n.substring(0,n.indexOf("(")),l=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:r,pluralKey:o,countVariable:l})}t=s.indexOf(Ci,e)}return i}var ut=s=>{var i;return(i=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:i.map(t=>t.toLowerCase()).join("-")};var Ae=({element:s,attribute:i,onSuccess:t,onTimeout:e,timeout:r=300})=>{let n=setTimeout(()=>{a.disconnect(),e()},r),o=c=>{let u=s.getAttribute(i);c.type==="attributes"&&c.attributeName===i&&u!==null&&(clearTimeout(n),a.disconnect(),t(u))},l=s.getAttribute(i);l!==null&&(clearTimeout(n),t(l));let a=new MutationObserver(c=>{let u=c[c.length-1];o(u)});a.observe(s,{attributes:!0,attributeFilter:[i]})};var us=new Set;function Qt(s){us.has(s)||(us.add(s),console.warn(s))}function ds(s){return Object.prototype.toString.call(s)==="[object Object]"}var rn=/\W|_/g;function nn(s){return s.split(rn).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}function ps(s,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(s)?s.map(t=>ft(t,{ignoreKeys:i})):s}function ft(s,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(s))return ps(s,{ignoreKeys:i});if(!ds(s))return s;let t={};for(let e of Object.keys(s)){let r=s[e];if(i.includes(e)){t[e]=r;continue}ds(r)?r=ft(r,{ignoreKeys:i}):Array.isArray(r)&&(r=ps(r,{ignoreKeys:i})),t[nn(e)]=r}return t}var on=s=>new Promise(i=>setTimeout(i,s));function Si({libraryName:s,libraryVersion:i,userAgent:t,publicKey:e="",integration:r=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:e,libraryName:s,libraryVersion:i,languageName:n,integration:r});let o=[s,i,e].filter(Boolean).join("/"),l=[n,r].filter(Boolean).join("; ");return`${o} (${l})`}var ln={factor:2,time:100};function an(s,i=ln){let t=0;function e(r){let n=Math.round(i.time*i.factor**t);return r({attempt:t,retry:l=>on(l!=null?l:n).then(()=>(t+=1,e(r)))})}return e(s)}var Dt=class extends Error{constructor(t){super();h(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,Dt.prototype),this.originalProgressEvent=t}},Se=(s,i)=>{s&&(s.aborted?Promise.resolve().then(i):s.addEventListener("abort",()=>i(),{once:!0}))},yt=class extends Error{constructor(t="Request canceled"){super(t);h(this,"isCancel",!0);Object.setPrototypeOf(this,yt.prototype)}},cn=500,ms=({check:s,interval:i=cn,timeout:t,signal:e})=>new Promise((r,n)=>{let o,l;Se(e,()=>{o&&clearTimeout(o),n(new yt("Poll cancelled"))}),t&&(l=setTimeout(()=>{o&&clearTimeout(o),n(new yt("Timed out"))},t));let a=()=>{try{Promise.resolve(s(e)).then(c=>{c?(l&&clearTimeout(l),r(c)):o=setTimeout(a,i)}).catch(c=>{l&&clearTimeout(l),n(c)})}catch(c){l&&clearTimeout(l),n(c)}};o=setTimeout(a,0)}),x={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"},Ie="application/octet-stream",gs="original",vt=({method:s,url:i,data:t,headers:e={},signal:r,onProgress:n})=>new Promise((o,l)=>{let a=new XMLHttpRequest,c=(s==null?void 0:s.toUpperCase())||"GET",u=!1;a.open(c,i,!0),e&&Object.entries(e).forEach(d=>{let[p,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&a.setRequestHeader(p,m)}),a.responseType="text",Se(r,()=>{u=!0,a.abort(),l(new yt)}),a.onload=()=>{if(a.status!=200)l(new Error(`Error ${a.status}: ${a.statusText}`));else{let d={method:c,url:i,data:t,headers:e||void 0,signal:r,onProgress:n},p=a.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};p.forEach(function(A){let E=A.split(": "),T=E.shift(),w=E.join(": ");T&&typeof T!="undefined"&&(m[T]=w)});let f=a.response,_=a.status;o({request:d,data:f,headers:m,status:_})}},a.onerror=d=>{u||l(new Dt(d))},n&&typeof n=="function"&&(a.upload.onprogress=d=>{d.lengthComputable?n({isComputable:!0,value:d.loaded/d.total}):n({isComputable:!1})}),t?a.send(t):a.send()});function hn(s,...i){return s}var un=({name:s})=>s?[s]:[],dn=hn,pn=()=>new FormData,_s=s=>!1,ke=s=>typeof Blob!="undefined"&&s instanceof Blob,Oe=s=>typeof File!="undefined"&&s instanceof File,Le=s=>!!s&&typeof s=="object"&&!Array.isArray(s)&&"uri"in s&&typeof s.uri=="string",Ft=s=>ke(s)||Oe(s)||_s()||Le(s),fn=s=>typeof s=="string"||typeof s=="number"||typeof s=="undefined",mn=s=>!!s&&typeof s=="object"&&!Array.isArray(s),gn=s=>!!s&&typeof s=="object"&&"data"in s&&Ft(s.data);function _n(s,i,t){if(gn(t)){let{name:e,contentType:r}=t,n=dn(t.data,e,r!=null?r:Ie),o=un({name:e,contentType:r});s.push([i,n,...o])}else if(mn(t))for(let[e,r]of Object.entries(t))typeof r!="undefined"&&s.push([`${i}[${e}]`,String(r)]);else fn(t)&&t&&s.push([i,t.toString()])}function bn(s){let i=[];for(let[t,e]of Object.entries(s))_n(i,t,e);return i}function Ii(s){let i=pn(),t=bn(s);for(let e of t){let[r,n,...o]=e;i.append(r,n,...o)}return i}var R=class extends Error{constructor(t,e,r,n,o){super();h(this,"isCancel");h(this,"code");h(this,"request");h(this,"response");h(this,"headers");this.name="UploadClientError",this.message=t,this.code=e,this.request=r,this.response=n,this.headers=o,Object.setPrototypeOf(this,R.prototype)}},yn=s=>{let i=new URLSearchParams;for(let[t,e]of Object.entries(s))e&&typeof e=="object"&&!Array.isArray(e)?Object.entries(e).filter(r=>{var n;return(n=r[1])!=null?n:!1}).forEach(r=>i.set(`${t}[${r[0]}]`,String(r[1]))):Array.isArray(e)?e.forEach(r=>{i.append(`${t}[]`,r)}):typeof e=="string"&&e?i.set(t,e):typeof e=="number"&&i.set(t,e.toString());return i.toString()},dt=(s,i,t)=>{let e=new URL(s);return e.pathname=(e.pathname+i).replace("//","/"),t&&(e.search=yn(t)),e.toString()},vn="6.8.0",Cn="UploadcareUploadClient",wn=vn;function It(s){return Si({libraryName:Cn,libraryVersion:wn,...s})}var Tn="RequestThrottledError",fs=15e3,En=1e3;function xn(s){let{headers:i}=s||{};if(!i||typeof i["retry-after"]!="string")return fs;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:fs}function Ct(s,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:e}=i;return an(({attempt:r,retry:n})=>s().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===Tn&&r{let i="";return(ke(s)||Oe(s)||Le(s))&&(i=s.type),i||Ie},ys=s=>{let i="";return Oe(s)&&s.name?i=s.name:ke(s)||_s()?i="":Le(s)&&s.name&&(i=s.name),i||gs};function ki(s){return typeof s=="undefined"||s==="auto"?"auto":s?"1":"0"}function An(s,{publicKey:i,fileName:t,contentType:e,baseURL:r=x.baseURL,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(r,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({file:{data:s,name:t||ys(s),contentType:e||bs(s)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:ki(l),signature:n,expire:o,source:u,metadata:_}),signal:a,onProgress:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var Ei;(function(s){s.Token="token",s.FileInfo="file_info"})(Ei||(Ei={}));function $n(s,{publicKey:i,baseURL:t=x.baseURL,store:e,fileName:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,source:c="url",signal:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},url:dt(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:s,store:ki(e),filename:r,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:l,expire:a,source:c,metadata:_}),signal:u}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var j;(function(s){s.Unknown="unknown",s.Waiting="waiting",s.Progress="progress",s.Error="error",s.Success="success"})(j||(j={}));var Sn=s=>"status"in s&&s.status===j.Error;function In(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=x.retryNetworkErrorMaxTimes}={}){return Ct(()=>vt({method:"GET",headers:i?{"X-UC-User-Agent":It({publicKey:i,integration:r,userAgent:n})}:void 0,url:dt(t,"/from_url/status/",{jsonerrors:1,token:s}),signal:e}).then(({data:a,headers:c,request:u})=>{let d=ft(JSON.parse(a));if("error"in d&&!Sn(d))throw new R(d.error.content,void 0,u,d,c);return d}),{retryNetworkErrorMaxTimes:l,retryThrottledRequestMaxTimes:o})}function kn(s,{publicKey:i,baseURL:t=x.baseURL,jsonpCallback:e,secureSignature:r,secureExpire:n,signal:o,source:l,integration:a,userAgent:c,retryThrottledRequestMaxTimes:u=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:a,userAgent:c})},url:dt(t,"/group/",{jsonerrors:1,pub_key:i,files:s,callback:e,signature:r,expire:n,source:l}),signal:o}).then(({data:p,headers:m,request:f})=>{let _=ft(JSON.parse(p));if("error"in _)throw new R(_.error.content,_.error.errorCode,f,_,m);return _}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:u})}function vs(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,source:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"GET",headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},url:dt(t,"/info/",{jsonerrors:1,pub_key:i,file_id:s,source:r}),signal:e}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function On(s,{publicKey:i,contentType:t,fileName:e,multipartChunkSize:r=x.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:l,store:a,signal:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({filename:e||gs,size:s,content_type:t||Ie,part_size:r,UPLOADCARE_STORE:ki(a),UPLOADCARE_PUB_KEY:i,signature:o,expire:l,source:u,metadata:_}),signal:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w.parts=Object.keys(w.parts).map(B=>w.parts[B]),w}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})}function Ln(s,i,{contentType:t,signal:e,onProgress:r,retryThrottledRequestMaxTimes:n=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"PUT",url:i,data:s,onProgress:r,signal:e,headers:{"Content-Type":t||Ie}}).then(l=>(r&&r({isComputable:!0,value:1}),l)).then(({status:l})=>({code:l})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}function Un(s,{publicKey:i,baseURL:t=x.baseURL,source:e="local",signal:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",url:dt(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},data:Ii({uuid:s,UPLOADCARE_PUB_KEY:i,source:e}),signal:r}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function Oi(s,{publicKey:i,baseURL:t,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l,signal:a,onProgress:c}){return ms({check:u=>vs(s,{publicKey:i,baseURL:t,signal:u,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:a})}function Rn(s){return"defaultEffects"in s}var pt=class{constructor(i,{baseCDN:t=x.baseCDN,fileName:e}={}){h(this,"uuid");h(this,"name",null);h(this,"size",null);h(this,"isStored",null);h(this,"isImage",null);h(this,"mimeType",null);h(this,"cdnUrl",null);h(this,"s3Url",null);h(this,"originalFilename",null);h(this,"imageInfo",null);h(this,"videoInfo",null);h(this,"contentInfo",null);h(this,"metadata",null);h(this,"s3Bucket",null);h(this,"defaultEffects",null);let{uuid:r,s3Bucket:n}=i,o=dt(t,`${r}/`),l=n?dt(`https://${n}.s3.amazonaws.com/`,`${r}/${i.filename}`):null;this.uuid=r,this.name=e||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=l,Rn(i)&&(this.defaultEffects=i.defaultEffects)}},Pn=(s,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,contentType:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,baseCDN:_,metadata:A})=>An(s,{publicKey:i,fileName:t,contentType:l,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:A}).then(({file:E})=>Oi(E,{publicKey:i,baseURL:e,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(E=>new pt(E,{baseCDN:_})),Mn=(s,{publicKey:i,fileName:t,baseURL:e,signal:r,onProgress:n,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u,baseCDN:d})=>vs(s,{publicKey:i,baseURL:e,signal:r,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u}).then(p=>new pt(p,{baseCDN:d,fileName:t})).then(p=>(n&&n({isComputable:!0,value:1}),p)),Nn=(s,{signal:i}={})=>{let t=null,e=null,r=s.map(()=>new AbortController),n=o=>()=>{e=o,r.forEach((l,a)=>a!==o&&l.abort())};return Se(i,()=>{r.forEach(o=>o.abort())}),Promise.all(s.map((o,l)=>{let a=n(l);return Promise.resolve().then(()=>o({stopRace:a,signal:r[l].signal})).then(c=>(a(),c)).catch(c=>(t=c,null))})).then(o=>{if(e===null)throw t;return o[e]})},Dn=window.WebSocket,xi=class{constructor(){h(this,"events",Object.create({}))}emit(i,t){var e;(e=this.events[i])==null||e.forEach(r=>r(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(e=>e!==t):this.events[i]=[]}},Fn=(s,i)=>s==="success"?{status:j.Success,...i}:s==="progress"?{status:j.Progress,...i}:{status:j.Error,...i},Ai=class{constructor(i,t=3e4){h(this,"key");h(this,"disconnectTime");h(this,"ws");h(this,"queue",[]);h(this,"isConnected",!1);h(this,"subscribers",0);h(this,"emmitter",new xi);h(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Dn(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let e=JSON.parse(t.data.toString());switch(e.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(e.channel,Fn(e.event,JSON.parse(e.data)))}})}}disconnect(){let i=()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var r;let e=JSON.stringify({event:i,data:t});(r=this.ws)==null||r.send(e)}subscribe(i,t){this.subscribers+=1,this.connect();let e=`task-status-${i}`,r={event:"pusher:subscribe",data:{channel:e}};this.emmitter.on(e,t),this.isConnected?this.send(r.event,r.data):this.queue.push(r)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,e={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(e.event,e.data):this.queue=this.queue.filter(r=>r.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}},wi=null,Li=s=>{if(!wi){let i=typeof window=="undefined"?0:3e4;wi=new Ai(s,i)}return wi},Vn=s=>{Li(s).connect()};function Bn({token:s,publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:l,signal:a}){return ms({check:c=>In(s,{publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:c}).then(u=>{switch(u.status){case j.Error:return new R(u.error,u.errorCode);case j.Waiting:return!1;case j.Unknown:return new R(`Token "${s}" was not found.`);case j.Progress:return l&&(u.total==="unknown"?l({isComputable:!1}):l({isComputable:!0,value:u.done/u.total})),!1;case j.Success:return l&&l({isComputable:!0,value:u.done/u.total}),u;default:throw new Error("Unknown status")}}),signal:a})}var zn=({token:s,pusherKey:i,signal:t,onProgress:e})=>new Promise((r,n)=>{let o=Li(i),l=o.onError(n),a=()=>{l(),o.unsubscribe(s)};Se(t,()=>{a(),n(new yt("pusher cancelled"))}),o.subscribe(s,c=>{switch(c.status){case j.Progress:{e&&(c.total==="unknown"?e({isComputable:!1}):e({isComputable:!0,value:c.done/c.total}));break}case j.Success:{a(),e&&e({isComputable:!0,value:c.done/c.total}),r(c);break}case j.Error:a(),n(new R(c.msg,c.error_code))}})}),jn=(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,onProgress:d,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,pusherKey:A=x.pusherKey,metadata:E})=>Promise.resolve(Vn(A)).then(()=>$n(s,{publicKey:i,fileName:t,baseURL:e,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,metadata:E})).catch(T=>{let w=Li(A);return w==null||w.disconnect(),Promise.reject(T)}).then(T=>T.type===Ei.FileInfo?T:Nn([({signal:w})=>Bn({token:T.token,publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:w}),({signal:w})=>zn({token:T.token,pusherKey:A,signal:w,onProgress:d})],{signal:u})).then(T=>{if(T instanceof R)throw T;return T}).then(T=>Oi(T.uuid,{publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:u})).then(T=>new pt(T,{baseCDN:r})),Ti=new WeakMap,Hn=async s=>{if(Ti.has(s))return Ti.get(s);let i=await fetch(s.uri).then(t=>t.blob());return Ti.set(s,i),i},Cs=async s=>{if(Oe(s)||ke(s))return s.size;if(Le(s))return(await Hn(s)).size;throw new Error("Unknown file type. Cannot determine file size.")},Wn=(s,i=x.multipartMinFileSize)=>s>=i,ws=s=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!Ft(s)&&t.test(s)},Ui=s=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!Ft(s)&&t.test(s)},Xn=(s,i)=>new Promise((t,e)=>{let r=[],n=!1,o=i.length,l=[...i],a=()=>{let c=i.length-l.length,u=l.shift();u&&u().then(d=>{n||(r[c]=d,o-=1,o?a():t(r))}).catch(d=>{n=!0,e(d)})};for(let c=0;c{let r=e*i,n=Math.min(r+e,t);return s.slice(r,n)},Gn=async(s,i,t)=>e=>qn(s,e,i,t),Kn=(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})=>Ln(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a}),Yn=async(s,{publicKey:i,fileName:t,fileSize:e,baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,contentType:_,multipartChunkSize:A=x.multipartChunkSize,maxConcurrentRequests:E=x.maxConcurrentRequests,baseCDN:T,metadata:w})=>{let B=e!=null?e:await Cs(s),at,St=(U,z)=>{if(!c)return;at||(at=Array(U).fill(0));let J=tt=>tt.reduce((ct,gi)=>ct+gi,0);return tt=>{tt.isComputable&&(at[z]=tt.value,c({isComputable:!0,value:J(at)/U}))}};return _||(_=bs(s)),On(B,{publicKey:i,contentType:_,fileName:t||ys(s),baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:w}).then(async({uuid:U,parts:z})=>{let J=await Gn(s,B,A);return Promise.all([U,Xn(E,z.map((tt,ct)=>()=>Kn(J(ct),tt,{publicKey:i,contentType:_,onProgress:St(z.length,ct),signal:a,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})))])}).then(([U])=>Un(U,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})).then(U=>U.isReady?U:Oi(U.uuid,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(U=>new pt(U,{baseCDN:T}))};async function Ri(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartMinFileSize:_,multipartChunkSize:A,maxConcurrentRequests:E,baseCDN:T=x.baseCDN,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,pusherKey:at,metadata:St}){if(Ft(s)){let U=await Cs(s);return Wn(U,_)?Yn(s,{publicKey:i,contentType:f,multipartChunkSize:A,fileSize:U,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,maxConcurrentRequests:E,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St}):Pn(s,{publicKey:i,fileName:t,contentType:f,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St})}if(Ui(s))return jn(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:T,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,pusherKey:at,metadata:St});if(ws(s))return Mn(s,{publicKey:i,fileName:t,baseURL:e,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T});throw new TypeError(`File uploading from "${s}" is not supported`)}var $i=class{constructor(i,{baseCDN:t=x.baseCDN}={}){h(this,"uuid");h(this,"filesCount");h(this,"totalSize");h(this,"isStored");h(this,"isImage");h(this,"cdnUrl");h(this,"files");h(this,"createdAt");h(this,"storedAt",null);this.uuid=i.id,this.filesCount=i.filesCount;let e=i.files.filter(Boolean);this.totalSize=Object.values(e).reduce((r,n)=>r+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(e).filter(r=>r.isImage).length,this.cdnUrl=i.cdnUrl,this.files=e.map(r=>new pt(r,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}},Zn=s=>{for(let i of s)if(!Ft(i))return!1;return!0},Jn=s=>{for(let i of s)if(!ws(i))return!1;return!0},Qn=s=>{for(let i of s)if(!Ui(i))return!1;return!0};function Ts(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_=x.multipartChunkSize,baseCDN:A=x.baseCDN,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T,jsonpCallback:w}){if(!Zn(s)&&!Qn(s)&&!Jn(s))throw new TypeError(`Group uploading from "${s}" is not supported`);let B,at=!0,St=s.length,U=(z,J)=>{if(!a)return;B||(B=Array(z).fill(0));let tt=ct=>ct.reduce((gi,Ir)=>gi+Ir)/z;return ct=>{if(!ct.isComputable||!at){at=!1,a({isComputable:!1});return}B[J]=ct.value,a({isComputable:!0,value:tt(B)})}};return Promise.all(s.map((z,J)=>Ft(z)||Ui(z)?Ri(z,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:U(St,J),source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_,baseCDN:A,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T}).then(tt=>tt.uuid):z)).then(z=>kn(z,{publicKey:i,baseURL:e,jsonpCallback:w,secureSignature:r,secureExpire:n,signal:l,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m}).then(J=>new $i(J,{baseCDN:A})).then(J=>(a&&a({isComputable:!0,value:1}),J)))}var $e=class{constructor(i){h(this,"_concurrency",1);h(this,"_pending",[]);h(this,"_running",0);h(this,"_resolvers",new Map);h(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(e),this._rejectors.delete(e),this._running-=1,this._run()}).then(o=>r(o)).catch(o=>n(o))}}add(i){return new Promise((t,e)=>{this._resolvers.set(i,t),this._rejectors.set(i,e),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};var Pi=()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),Mi=s=>({...Pi(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{s.set$({"*modalActive":!1,"*currentActivity":""})}}),Ue=s=>({...Mi(s),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new $e(1)});function Es(s,i){[...s.querySelectorAll("[l10n]")].forEach(t=>{let e=t.getAttribute("l10n"),r="textContent";if(e.includes(":")){let o=e.split(":");r=o[0],e=o[1]}let n="l10n:"+e;i.__l10nKeys.push(n),i.add(n,e),i.sub(n,o=>{t[r]=i.l10n(o)}),t.removeAttribute("l10n")})}var H=s=>`*cfg/${s}`;var Ni="lr-",b=class extends Nt{constructor(){super();h(this,"requireCtxName",!1);h(this,"allowCustomTemplate",!0);h(this,"init$",Pi());h(this,"updateCtxCssData",()=>{Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let e of t)e.isConnected&&e.updateCssData()});this.activityType=null,this.addTemplateProcessor(Es),this.__l10nKeys=[]}l10n(t,e={}){if(!t)return"";let r=this.getCssData("--l10n-"+t,!0)||t,n=hs(r);for(let l of n)e[l.variable]=this.pluralize(l.pluralKey,Number(e[l.countVariable]));return Jt(r,e)}pluralize(t,e){let r=this.l10n("locale-name")||"en-US",n=xe(r,e);return this.l10n(`${t}__${n}`)}emit(t,e,r){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,e,r)}applyL10nKey(t,e){let r="l10n:"+t;this.$[r]=e,this.__l10nKeys.push(t)}hasBlockInCtx(t){let e=this.$["*blocksRegistry"];for(let r of e)if(t(r))return!0;return!1}setOrAddState(t,e){this.add$({[t]:e},!0)}setActivity(t){if(this.hasBlockInCtx(e=>e.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Ni}${t}`,!0),vi()||(this._destroyInnerHeightTracker=ls()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?Ae({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new Te(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,e=2){let r=["B","KB","MB","GB","TB"],n=c=>this.getCssData("--l10n-unit-"+c.toLowerCase(),!0)||c;if(t===0)return`0 ${n(r[0])}`;let o=1024,l=e<0?0:e,a=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**a).toFixed(l))+" "+n(r[a])}proxyUrl(t){let e=this.cfg.secureDeliveryProxy;return e?Jt(e,{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(e,r,n)=>{if(typeof r!="string")return!1;let o=H(r);return this.$[o]=n,!0},get:(e,r)=>{let n=H(r),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${ut(r)}`))}})}return this.__cfgProxy}subConfigValue(t,e){let r=this.parseCfgProp(H(t));r.ctx.has(r.name)?this.sub(H(t),e):(this.bindCssData(`--cfg-${ut(t)}`),this.sub(`--cfg-${ut(t)}`,e))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Ni)?t:Ni+t)}};h(b,"StateConsumerScope",null),h(b,"className","");var xs="active",te="___ACTIVITY_IS_ACTIVE___",et=class extends b{constructor(){super(...arguments);h(this,"historyTracked",!1);h(this,"init$",Mi(this));h(this,"_debouncedHistoryFlush",I(this._historyFlush.bind(this),10))}_deactivate(){var e;let t=et._activityRegistry[this.activityKey];this[te]=!1,this.removeAttribute(xs),(e=t==null?void 0:t.deactivateCallback)==null||e.call(t)}_activate(){var e;let t=et._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[te]=!0,this.setAttribute(xs,""),(e=t==null?void 0:t.activateCallback)==null||e.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[te]?this._deactivate():this.activityType===t&&!this[te]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t[t.length-1]!==this.activityType&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!et._activityRegistry[this.activityKey]}get isActivityActive(){return this[te]}get couldOpenActivity(){return!0}registerActivity(t,e={}){let{onActivate:r,onDeactivate:n}=e;et._activityRegistry||(et._activityRegistry=Object.create(null)),et._activityRegistry[this.activityKey]={activateCallback:r,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),et._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(et._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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 e;let t=this.$["*history"];if(t){let r=t.pop();for(;r===this.activityType;)r=t.pop();let n=!!r;if(r){let l=[...this.$["*blocksRegistry"]].find(a=>a.activityType===r);n=(e=l==null?void 0:l.couldOpenActivity)!=null?e:!1}r=n?r:void 0,this.$["*currentActivity"]=r,this.$["*history"]=t,r||this.setOrAddState("*modalActive",!1)}}},g=et;h(g,"_activityRegistry",Object.create(null));g.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var ee=33.333333333333336,y=1,Di=24,As=6;function kt(s,i){for(let t in i)s.setAttributeNS(null,t,i[t].toString())}function Y(s,i={}){let t=document.createElementNS("http://www.w3.org/2000/svg",s);return kt(t,i),t}function $s(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=i.includes("w")?0:1,a=i.includes("n")?0:1,c=[-1,1][l],u=[-1,1][a],d=[e+l*n+1.5*c,r+a*o+1.5*u-24*t*u],p=[e+l*n+1.5*c,r+a*o+1.5*u],m=[e+l*n-24*t*c+1.5*c,r+a*o+1.5*u];return{d:`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]} L ${m[0]} ${m[1]}`,center:p}}function Ss(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=["n","s"].includes(i)?.5:{w:0,e:1}[i],a=["w","e"].includes(i)?.5:{n:0,s:1}[i],c=[-1,1][l],u=[-1,1][a],d,p;["n","s"].includes(i)?(d=[e+l*n-34*t/2,r+a*o+1.5*u],p=[e+l*n+34*t/2,r+a*o+1.5*u]):(d=[e+l*n+1.5*c,r+a*o-34*t/2],p=[e+l*n+1.5*c,r+a*o+34*t/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 Is(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 ks({rect:s,delta:[i,t],imageBox:e}){return Bt({...s,x:s.x+i,y:s.y+t},e)}function Bt(s,i){let{x:t}=s,{y:e}=s;return s.xi.x+i.width&&(t=i.x+i.width-s.width),s.yi.y+i.height&&(e=i.y+i.height-s.height),{...s,x:t,y:e}}function to({rect:s,delta:i,aspectRatio:t,imageBox:e}){let[,r]=i,{y:n,width:o,height:l}=s;n+=r,l-=r,t&&(o=l*t);let a=s.x+s.width/2-o/2;return n<=e.y&&(n=e.y,l=s.y+s.height-n,t&&(o=l*t,a=s.x+s.width/2-o/2)),a<=e.x&&(a=e.x,n=s.y+s.height-l),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y+s.height-l),l=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x+s.width-o),l=e.y+e.height&&(l=e.y+e.height-n,t&&(o=l*t),a=s.x+s.width/2-o/2),a<=e.x&&(a=e.x,n=s.y),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y),l=e.x+e.width&&(o=e.x+e.width-n,t&&(l=o/t),a=s.y+s.height/2-l/2),a<=e.y&&(a=e.y,n=s.x),a+l>=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x),lt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x+s.width-a,l=e.y)):t&&(r=c*t-a,a=a+r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y+s.height-c)),ce.x+e.width&&(r=e.x+e.width-o-a),l+nt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x,l=e.y)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y+s.height-c)),ce.y+e.height&&(n=e.y+e.height-l-c),o+=r,a-=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x+s.width-a,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y)),ce.x+e.width&&(r=e.x+e.width-o-a),l+c+n>e.y+e.height&&(n=e.y+e.height-l-c),a+=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y)),c=i.x&&s.y>=i.y&&s.x+s.width<=i.x+i.width&&s.y+s.height<=i.y+i.height}function Rs(s,i){return Math.abs(s.width/s.height-i)<.1}function zt({width:s,height:i},t){let e=t/90%2!==0;return{width:e?i:s,height:e?s:i}}function Ps(s,i,t){let e=s/i,r,n;e>t?(r=Math.round(i*t),n=i):(r=s,n=Math.round(s/t));let o=Math.round((s-r)/2),l=Math.round((i-n)/2);return o+r>s&&(r=s-o),l+n>i&&(n=i-l),{x:o,y:l,width:r,height:n}}function jt(s){return{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}}function wt(s,i,t){return Math.min(Math.max(s,i),t)}var Pe=s=>{if(!s)return[];let[i,t]=s.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${s}`);return}return[{type:"aspect-ratio",width:i,height:t}]};var Z=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var Ms=s=>s?s.split(",").map(i=>i.trim()):[],Ot=s=>s?s.join(","):"";var Ns="blocks",Ds="0.29.1";function Fs(s){return Si({...s,libraryName:Ns,libraryVersion:Ds})}var Vs=s=>{if(typeof s!="string"||!s)return"";let i=s.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},Me=(...s)=>s.filter(i=>typeof i=="string"&&i).map(i=>Vs(i)).join("/-/"),P=(...s)=>{let i=Me(...s);return i?`-/${i}/`:""};function Bs(s){let i=new URL(s),t=i.pathname+i.search+i.hash,e=t.lastIndexOf("http"),r=t.lastIndexOf("/"),n="";return e>=0?n=t.slice(e):r>=0&&(n=t.slice(r+1)),n}function zs(s){let i=new URL(s),{pathname:t}=i,e=t.indexOf("/"),r=t.indexOf("/",e+1);return t.substring(e+1,r)}function js(s){let i=Hs(s),t=new URL(i),e=t.pathname.indexOf("/-/");return e===-1?[]:t.pathname.substring(e).split("/-/").filter(Boolean).map(n=>Vs(n))}function Hs(s){let i=new URL(s),t=Bs(s),e=Ws(t)?Xs(t).pathname:t;return i.pathname=i.pathname.replace(e,""),i.search="",i.hash="",i.toString()}function Ws(s){return s.startsWith("http")}function Xs(s){let i=new URL(s);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}var O=(s,i,t)=>{let e=new URL(Hs(s));if(t=t||Bs(s),e.pathname.startsWith("//")&&(e.pathname=e.pathname.replace("//","/")),Ws(t)){let r=Xs(t);e.pathname=e.pathname+(i||"")+(r.pathname||""),e.search=r.search,e.hash=r.hash}else e.pathname=e.pathname+(i||"")+(t||"");return e.toString()},Tt=(s,i)=>{let t=new URL(s);return t.pathname=i+"/",t.toString()};var M=(s,i=",")=>s.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0);var ie=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],Fi=s=>s?s.filter(i=>typeof i=="string").map(i=>M(i)).flat():[],Vi=(s,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),s.startsWith(t)):s===t),qs=(s,i)=>i.some(t=>t.startsWith(".")?s.toLowerCase().endsWith(t.toLowerCase()):!1),se=s=>{let i=s==null?void 0:s.type;return i?Vi(i,ie):!1};var st=1e3,Lt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),re=s=>Math.ceil(s*100)/100,Gs=(s,i=Lt.AUTO)=>{let t=i===Lt.AUTO;if(i===Lt.BYTE||t&&s(e[r]=i[r].value,e),{}),this.__data=$.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}let e=this.__typedSchema[i];if((t==null?void 0:t.constructor)===e.type||t instanceof e.type||e.nullable&&t===null){this.__data.pub(i,t);return}console.warn(ao+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){$.deleteCtx(this.__ctxId)}};var De=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||Yt.generate(),this.__data=$.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(e,r)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[e]||(t[e]=new Set),t[e].add(r),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let e of this.__collectionObservers)e==null||e([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new Ne(this.__typedSchema);for(let e in i)t.setValue(e,i[e]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(e=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(e,()=>{this.__notifyObservers(e,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,e){this.read(i).setValue(t,e)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(e=>{let r=this.read(e);i(r)&&t.push(e)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){$.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};var Ys=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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:pt,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var v=class extends g{constructor(){super(...arguments);h(this,"isCtxOwner",!1);h(this,"init$",Ue(this));h(this,"__initialUploadMetadata",null);h(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);h(this,"_debouncedRunValidators",I(this._runValidators.bind(this),100));h(this,"_flushOutputItems",I(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(S.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));h(this,"_handleCollectonUpdate",(t,e,r)=>{var n;this._runValidators();for(let o of r)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()});h(this,"_handleCollectionPropertiesUpdate",t=>{this._flushOutputItems();let e=this.uploadCollection,r=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>e.read(n)).filter(Boolean);for(let n of r)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=e.findItems(a=>!a.getValue("uploadError"));o.forEach(a=>{n+=e.readProp(a,"uploadProgress")});let l=Math.round(n/o.length);this.$["*commonProgress"]=l,this.emit(S.UPLOAD_PROGRESS,l,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=e.findItems(l=>!!l.getValue("fileInfo")),o=e.findItems(l=>!!l.getValue("uploadError")||!!l.getValue("validationErrorMsg"));if(e.size-o.length===n.length){let l=this.getOutputData(a=>!!a.getValue("fileInfo")&&!a.getValue("silentUpload"));l.length>0&&this.emit(S.UPLOAD_FINISH,l,{debounce:!0})}}t.uploadError&&e.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(S.UPLOAD_ERROR,e.readProp(o,"uploadError"))}),t.validationErrorMsg&&e.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(S.VALIDATION_ERROR,e.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&e.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(S.CLOUD_MODIFICATION,e.readProp(o,"cdnUrlModifiers"))})})}setUploadMetadata(t){Qt("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}get hasCtxOwner(){return this.hasBlockInCtx(t=>t instanceof v?t.isCtxOwner&&t.isConnected&&t!==this:!1)}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let t=new De({typedSchema:Ys,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",t)}this.hasCtxOwner||this.initCtxOwner()}destroyCallback(){var t,e;super.destroyCallback(),this.isCtxOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(e=this._unobserveCollection)==null||e.call(this))}initCtxOwner(){this.isCtxOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators()),this.subConfigValue("maxConcurrentRequests",t=>{this.$["*uploadQueue"].concurrency=Number(t)||1}),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata)}addFileFromUrl(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromUuid(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({uuid:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromObject(t,{silent:e,fileName:r,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:se(t),mimeType:t.type,fileName:r!=null?r:t.name,fileSize:t.size,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(e=>{this.uploadCollection.add({file:e,isImage:se(e),mimeType:e.type,fileName:e.name,fileSize:e.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var r;let e=Ot(Fi([(r=this.cfg.accept)!=null?r:"",...this.cfg.imgOnly?ie:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=Ot(ie)):this.fileInput.accept=e,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:Z.LOCAL})),this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=M(this.cfg.sourceList)),t}initFlow(t=!1){var e;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((e=this.sourceList)==null?void 0:e.length)===1){let r=this.sourceList[0];r==="local"?(this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(v.extSrcList).includes(r)?this.set$({"*currentActivityParams":{externalSourceType:r},"*currentActivity":g.activities.EXTERNAL}):this.$["*currentActivity"]=r,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":g.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(S.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(S.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let e=this.cfg.imgOnly,r=this.cfg.accept,n=Fi([...e?ie:[],r]);if(!n.length)return;let o=t.getValue("mimeType"),l=t.getValue("fileName");if(!o||!l)return;let a=Vi(o,n),c=qs(l,n);if(!a&&!c)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let e=this.cfg.maxLocalFileSizeBytes,r=t.getValue("fileSize");if(e&&r&&r>e)return this.l10n("files-max-size-limit-error",{maxFileSize:Gs(e)})}_validateMultipleLimit(t){let e=this.uploadCollection.items(),r=e.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&e.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let e=this.cfg.imgOnly,r=t.getValue("isImage");if(!(!e||r)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let e of this._validators){let r=e(t);if(r){t.setValue("validationErrorMsg",r);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let e=this.uploadCollection.read(t);e&&this._runValidatorsForEntry(e)})}setInitialCrop(){let t=Pe(this.cfg.cropPreset);if(t){let[e]=t,r=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of r){let o=n.getValue("fileInfo"),{width:l,height:a}=o.imageInfo,c=e.width/e.height,u=Ps(l,a,c),d=P(`crop/${u.width}x${u.height}/${u.x},${u.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:d,cdnUrl:O(n.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(p=>p.activityType===g.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var r;let e=(r=this.cfg.metadata)!=null?r:this.$["*uploadMetadata"];if(typeof e=="function"){let n=this.getOutputItem(t);return await e(n)}return e}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Fs,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,l;let e=$.getCtx(t).store,r=e.fileInfo||{name:e.fileName,originalFilename:e.fileName,size:e.fileSize,isImage:e.isImage,mimeType:e.mimeType};return{...r,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(l=(o=e.cdnUrl)!=null?o:r.cdnUrl)!=null?l:null,validationErrorMessage:e.validationErrorMsg,uploadError:e.uploadError,isUploaded:!!e.uuid&&!!e.fileInfo,isValid:!e.validationErrorMsg&&!e.uploadError,fullPath:e.fullPath,uploadProgress:e.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};v.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});v.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...v.extSrcList});var G={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};function co(s,i){if(typeof i=="number")return G[s]!==i?`${s}/${i}`:"";if(typeof i=="boolean")return i&&G[s]!==i?`${s}`:"";if(s==="filter"){if(!i||G[s]===i.amount)return"";let{name:t,amount:e}=i;return`${s}/${t}/${e}`}if(s==="crop"){if(!i)return"";let{dimensions:t,coords:e}=i;return`${s}/${t.join("x")}/${e.join(",")}`}return""}var Js=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function Et(s){return Me(...Js.filter(i=>typeof s[i]!="undefined"&&s[i]!==null).map(i=>{let t=s[i];return co(i,t)}).filter(i=>!!i))}var Fe=Me("format/auto","progressive/yes"),mt=([s])=>typeof s!="undefined"?Number(s):void 0,Zs=()=>!0,ho=([s,i])=>({name:s,amount:typeof i!="undefined"?Number(i):100}),uo=([s,i])=>({dimensions:M(s,"x").map(Number),coords:M(i).map(Number)}),po={enhance:mt,brightness:mt,exposure:mt,gamma:mt,contrast:mt,saturation:mt,vibrance:mt,warmth:mt,filter:ho,mirror:Zs,flip:Zs,rotate:mt,crop:uo};function Qs(s){let i={};for(let t of s){let[e,...r]=t.split("/");if(!Js.includes(e))continue;let n=po[e],o=n(r);i[e]=o}return i}var N=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),W=[N.CROP,N.TUNING,N.FILTERS],tr=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],er=["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"],ir=["rotate","mirror","flip"],rt=Object.freeze({brightness:{zero:G.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:G.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:G.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:G.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:G.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:G.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:G.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:G.enhance,range:[0,100],keypointsNumber:1},filter:{zero:G.filter,range:[0,100],keypointsNumber:1}});var fo="https://ucarecdn.com",mo="https://upload.uploadcare.com",go="https://social.uploadcare.com",xt={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:Ot(W),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:fo,baseUrl:mo,socialBaseUrl:go,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var X=s=>String(s),nt=s=>{let i=Number(s);if(Number.isNaN(i))throw new Error(`Invalid number: "${s}"`);return i},k=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}"`)},_o=s=>s==="auto"?s:k(s),bo={pubkey:X,multiple:k,multipleMin:nt,multipleMax:nt,confirmUpload:k,imgOnly:k,accept:X,externalSourcesPreferredTypes:X,store:_o,cameraMirror:k,sourceList:X,maxLocalFileSizeBytes:nt,thumbSize:nt,showEmptyList:k,useLocalImageEditor:k,useCloudImageEditor:k,cloudImageEditorTabs:X,removeCopyright:k,cropPreset:X,modalScrollLock:k,modalBackdropStrokes:k,sourceListWrap:k,remoteTabSessionKey:X,cdnCname:X,baseUrl:X,socialBaseUrl:X,secureSignature:X,secureExpire:X,secureDeliveryProxy:X,retryThrottledRequestMaxTimes:nt,multipartMinFileSize:nt,multipartChunkSize:nt,maxConcurrentRequests:nt,multipartMaxConcurrentRequests:nt,multipartMaxAttempts:nt,checkForUrlDuplicates:k,saveUrlForRecurrentUploads:k,groupOutput:k,userAgentIntegration:X},sr=(s,i)=>{if(!(typeof i=="undefined"||i===null))try{return bo[s](i)}catch(t){return console.error(`Invalid value for config key "${s}".`,t),xt[s]}};var Ve=Object.keys(xt),yo=["metadata"],vo=s=>yo.includes(s),Be=Ve.filter(s=>!vo(s)),Co={...Object.fromEntries(Be.map(s=>[ut(s),s])),...Object.fromEntries(Be.map(s=>[s.toLowerCase(),s]))},wo={...Object.fromEntries(Ve.map(s=>[ut(s),H(s)])),...Object.fromEntries(Ve.map(s=>[s.toLowerCase(),H(s)]))},ze=class extends b{constructor(){super();h(this,"ctxOwner",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(xt).map(([t,e])=>[H(t),e]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let e of Be)this.sub(H(e),r=>{r!==xt[e]&&(t[e]=r)},!1);for(let e of Ve){let r="__"+e;t[r]=t[e],Object.defineProperty(this,e,{set:n=>{if(t[r]=n,Be.includes(e)){let o=[...new Set([ut(e),e.toLowerCase()])];for(let l of o)typeof n=="undefined"||n===null?this.removeAttribute(l):this.setAttribute(l,n.toString())}this.$[H(e)]!==n&&(typeof n=="undefined"||n===null?this.$[H(e)]=xt[e]:this.$[H(e)]=n)},get:()=>this.$[H(e)]}),typeof t[e]!="undefined"&&t[e]!==null&&(t[e]=t[r])}}attributeChangedCallback(t,e,r){if(e===r)return;let n=Co[t],o=sr(n,r),l=o!=null?o:xt[n],a=this;a[n]=l}};ze.bindAttributes(wo);var To=ze;var ne=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=this.getCssData(`--icon-${t}`);e&&(this.$.path=e)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};ne.template=``;ne.bindAttributes({name:"name",size:"size"});var Eo="https://ucarecdn.com",Ut=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:Eo},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{default:"auto"},"cdn-operations":{},progressive:{},quality:{default:"smart"},"is-background-for":{}});var rr=s=>[...new Set(s)];var oe="--lr-img-",nr="unresolved",Ht=2,Wt=3,or=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),ar=Object.create(null),lr;for(let s in Ut)ar[oe+s]=((lr=Ut[s])==null?void 0:lr.default)||"";var je=class extends Nt{constructor(){super(...arguments);h(this,"cssInit$",ar)}$$(t){return this.$[oe+t]}set$$(t){for(let e in t)this.$[oe+e]=t[e]}sub$$(t,e){this.sub(oe+t,r=>{r===null||r===""||e(r)})}_fmtAbs(t){return!t.includes("//")&&!or&&(t=new URL(t,document.baseURI).href),t}_getCdnModifiers(t=""){return P(t&&`resize/${t}`,this.$$("cdn-operations")||"",`format/${this.$$("format")||Ut.format.default}`,`quality/${this.$$("quality")||Ut.quality.default}`)}_getUrlBase(t=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(or&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let e=this._getCdnModifiers(t);if(this.$$("src").startsWith(this.$$("cdn-cname")))return O(this.$$("src"),e);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("proxy-cname"))return this._proxyUrl(O(this.$$("proxy-cname"),e,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(O(`https://${this.$$("pubkey")}.ucr.io/`,e,this._fmtAbs(this.$$("src"))))}_proxyUrl(t){return this.$$("secure-delivery-proxy")?Jt(this.$$("secure-delivery-proxy"),{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}_getElSize(t,e=1,r=!0){let n=t.getBoundingClientRect(),o=e*Math.round(n.width),l=r?"":e*Math.round(n.height);return o||l?`${o||""}x${l||""}`:null}_setupEventProxy(t){let e=n=>{n.stopPropagation();let o=new Event(n.type,n);this.dispatchEvent(o)},r=["load","error"];for(let n of r)t.addEventListener(n,e)}get img(){return this._img||(this._img=new Image,this._setupEventProxy(this.img),this._img.setAttribute(nr,""),this.img.onload=()=>{this.img.removeAttribute(nr)},this.initAttributes(),this.appendChild(this._img)),this._img}get bgSelector(){return this.$$("is-background-for")}initAttributes(){[...this.attributes].forEach(t=>{Ut[t.name]||this.img.setAttribute(t.name,t.value)})}get breakpoints(){return this.$$("breakpoints")?rr(M(this.$$("breakpoints")).map(t=>Number(t))):null}renderBg(t){let e=new Set;this.breakpoints?this.breakpoints.forEach(n=>{e.add(`url("${this._getUrlBase(n+"x")}") ${n}w`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(n*Ht+"x")}") ${n*Ht}w`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(n*Wt+"x")}") ${n*Wt}w`)}):(e.add(`url("${this._getUrlBase(this._getElSize(t))}") 1x`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Ht))}") ${Ht}x`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Wt))}") ${Wt}x`));let r=`image-set(${[...e].join(", ")})`;t.style.setProperty("background-image",r),t.style.setProperty("background-image","-webkit-"+r)}getSrcset(){let t=new Set;return this.breakpoints?this.breakpoints.forEach(e=>{t.add(this._getUrlBase(e+"x")+` ${e}w`),this.$$("hi-res-support")&&t.add(this._getUrlBase(e*Ht+"x")+` ${e*Ht}w`),this.$$("ultra-res-support")&&t.add(this._getUrlBase(e*Wt+"x")+` ${e*Wt}w`)}):(t.add(this._getUrlBase(this._getElSize(this.img))+" 1x"),this.$$("hi-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,2))+" 2x"),this.$$("ultra-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,3))+" 3x")),[...t].join()}getSrc(){return this._getUrlBase()}init(){this.bgSelector?[...document.querySelectorAll(this.bgSelector)].forEach(t=>{this.$$("intersection")?this.initIntersection(t,()=>{this.renderBg(t)}):this.renderBg(t)}):this.$$("intersection")?this.initIntersection(this.img,()=>{this.img.srcset=this.getSrcset(),this.img.src=this.getSrc()}):(this.img.srcset=this.getSrcset(),this.img.src=this.getSrc())}initIntersection(t,e){let r={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(n=>{n.forEach(o=>{o.isIntersecting&&(e(),this._isnObserver.unobserve(t))})},r),this._isnObserver.observe(t),this._observed||(this._observed=new Set),this._observed.add(t)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(t=>{this._isnObserver.unobserve(t)}),this._isnObserver=null)}static get observedAttributes(){return Object.keys(Ut)}attributeChangedCallback(t,e,r){window.setTimeout(()=>{this.$[oe+t]=r})}};var Bi=class extends je{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",i=>{this.$$("is-background-for")||(this.img.loading=i?"lazy":"eager")})}};var le=class extends v{constructor(){super(),this.init$={...this.init$,"*simpleButtonText":"",withDropZone:!0,onClick:()=>{this.initFlow()}}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",i=>{typeof i!="undefined"&&(this.$.withDropZone=k(i))}),this.subConfigValue("multiple",i=>{this.$["*simpleButtonText"]=i?this.l10n("upload-files"):this.l10n("upload-file")})}};le.template=``;le.bindAttributes({dropzone:null});var He=class extends g{constructor(){super(...arguments);h(this,"historyTracked",!0);h(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};He.template='
';function xo(s){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let e=r=>{r.type!=="loadend"&&t.abort(),i(!1)};t.onloadend=e,t.onprogress=e,t.readAsDataURL(s)}catch{i(!1)}})}function Ao(s,i){return new Promise(t=>{let e=0,r=[],n=l=>{l||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),l.isFile?(e++,l.file(a=>{e--;let c=new File([a],a.name,{type:a.type||i});r.push({type:"file",file:c,fullPath:l.fullPath}),e===0&&t(r)})):l.isDirectory&&o(l.createReader())},o=l=>{e++,l.readEntries(a=>{e--;for(let c of a)n(c);e===0&&t(r)})};n(s)})}function cr(s){let i=[],t=[];for(let e=0;e{a&&i.push(...a)}));continue}let o=r.getAsFile();o&&t.push(xo(o).then(l=>{l||i.push({type:"file",file:o})}))}else r.kind==="string"&&r.type.match("^text/uri-list")&&t.push(new Promise(n=>{r.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}var F={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},hr=["focus"],$o=100,zi=new Map;function So(s,i){let t=Math.max(Math.min(s[0],i.x+i.width),i.x),e=Math.max(Math.min(s[1],i.y+i.height),i.y);return Math.sqrt((s[0]-t)*(s[0]-t)+(s[1]-e)*(s[1]-e))}function ji(s){let i=0,t=document.body,e=new Set,r=f=>e.add(f),n=F.INACTIVE,o=f=>{s.shouldIgnore()&&f!==F.INACTIVE||(n!==f&&e.forEach(_=>_(f)),n=f)},l=()=>i>0;r(f=>s.onChange(f));let a=()=>{i=0,o(F.INACTIVE)},c=()=>{i+=1,n===F.INACTIVE&&o(F.ACTIVE)},u=()=>{i-=1,l()||o(F.INACTIVE)},d=f=>{f.preventDefault(),i=0,o(F.INACTIVE)},p=f=>{if(s.shouldIgnore())return;l()||(i+=1);let _=[f.x,f.y],A=s.element.getBoundingClientRect(),E=Math.floor(So(_,A)),T=E<$o,w=f.composedPath().includes(s.element);zi.set(s.element,E);let B=Math.min(...zi.values())===E;w&&B?(f.preventDefault(),o(F.OVER)):o(T&&B?F.NEAR:F.ACTIVE)},m=async f=>{if(s.shouldIgnore())return;f.preventDefault();let _=await cr(f.dataTransfer);s.onItems(_),o(F.INACTIVE)};return t.addEventListener("drop",d),t.addEventListener("dragleave",u),t.addEventListener("dragenter",c),t.addEventListener("dragover",p),s.element.addEventListener("drop",m),hr.forEach(f=>{window.addEventListener(f,a)}),()=>{zi.delete(s.element),t.removeEventListener("drop",d),t.removeEventListener("dragleave",u),t.removeEventListener("dragenter",c),t.removeEventListener("dragover",p),s.element.removeEventListener("drop",m),hr.forEach(f=>{window.removeEventListener(f,a)})}}var ae=class extends v{constructor(){super(),this.init$={...this.init$,state:F.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,e=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),r=window.getComputedStyle(this),n=r.visibility!=="hidden"&&r.display!=="none";return t&&n&&e}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!k(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:k(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:k(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:k(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=ji({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(e=>{e.type==="url"?this.addFileFromUrl(e.url,{source:Z.DROP_AREA}):e.type==="file"&&this.addFileFromObject(e.file,{source:Z.DROP_AREA,fullPath:e.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=ji({element:i,onChange:t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&i.setAttribute("drag-state",e)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&this.setAttribute("drag-state",e)}),this.subConfigValue("sourceList",t=>{let e=M(t);this.$.isEnabled=e.includes(v.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.sub("isClickable",t=>{this.toggleAttribute("clickable",t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(e=>e!==this).filter(e=>e.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,e=this.uploadCollection.size;return!(i&&t&&e>=t||!i&&e>0)}destroyCallback(){var i,t,e,r;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(e=this._destroyDropzone)==null||e.call(this),(r=this._destroyContentWrapperDropzone)==null||r.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};ae.template=`
{{text}}
`;ae.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Io="src-type-",ce=class extends v{constructor(){super(...arguments);h(this,"_registeredTypes",{});h(this,"init$",{...this.init$,iconName:"default"})}initTypes(){this.registerType({type:v.sourceTypes.LOCAL,onClick:()=>{this.openSystemDialog()}}),this.registerType({type:v.sourceTypes.URL,activity:g.activities.URL,textKey:"from-url"}),this.registerType({type:v.sourceTypes.CAMERA,activity:g.activities.CAMERA,onClick:()=>{var e=document.createElement("input").capture!==void 0;return e&&this.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:g.activities.DRAW,icon:"edit-draw"});for(let t of Object.values(v.extSrcList))this.registerType({type:t,activity:g.activities.EXTERNAL,activityParams:{externalSourceType:t}})}initCallback(){super.initCallback(),this.initTypes(),this.setAttribute("role","button"),this.defineAccessor("type",t=>{t&&this.applyType(t)})}registerType(t){this._registeredTypes[t.type]=t}getType(t){return this._registeredTypes[t]}applyType(t){let e=this._registeredTypes[t];if(!e){console.warn("Unsupported source type: "+t);return}let{textKey:r=t,icon:n=t,activity:o,onClick:l,activityParams:a={}}=e;this.applyL10nKey("src-type",`${Io}${r}`),this.$.iconName=n,this.onclick=c=>{(l?l(c):!!o)&&this.set$({"*currentActivityParams":a,"*currentActivity":o})}}};ce.template=`
`;ce.bindAttributes({type:null});var Hi=class extends b{initCallback(){super.initCallback(),this.subConfigValue("sourceList",i=>{let t=M(i),e="";t.forEach(r=>{e+=``}),this.cfg.sourceListWrap?this.innerHTML=e:this.outerHTML=e})}};function ur(s){let i=new Blob([s],{type:"image/svg+xml"});return URL.createObjectURL(i)}function dr(s="#fff",i="rgba(0, 0, 0, .1)"){return ur(``)}function he(s="hsl(209, 21%, 65%)",i=32,t=32){return ur(``)}function pr(s,i=40){if(s.type==="image/svg+xml")return URL.createObjectURL(s);let t=document.createElement("canvas"),e=t.getContext("2d"),r=new Image,n=new Promise((o,l)=>{r.onload=()=>{let a=r.height/r.width;a>1?(t.width=i,t.height=i*a):(t.height=i,t.width=i/a),e.fillStyle="rgb(240, 240, 240)",e.fillRect(0,0,t.width,t.height),e.drawImage(r,0,0,t.width,t.height),t.toBlob(c=>{if(!c){l();return}let u=URL.createObjectURL(c);o(u)})},r.onerror=a=>{l(a)}});return r.src=URL.createObjectURL(s),n}var V=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),gt=class extends v{constructor(){super();h(this,"pauseRender",!0);h(this,"_entrySubs",new Set);h(this,"_entry",null);h(this,"_isIntersecting",!1);h(this,"_debouncedGenerateThumb",I(this._generateThumbnail.bind(this),100));h(this,"_debouncedCalculateState",I(this._calculateState.bind(this),100));h(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:V.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===g.activities.DETAILS)?this.$["*currentActivity"]=g.activities.DETAILS:this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let e=this.getOutputData(r=>r.getValue("uuid")===t);this.emit(S.REMOVE,e,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[e]=t;this._isIntersecting=e.isIntersecting,e.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),e.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,e=V.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?e=V.FAILED:t.getValue("validationMultipleLimitMsg")?e=V.LIMIT_OVERFLOW:t.getValue("isUploading")?e=V.UPLOADING:t.getValue("fileInfo")&&(e=V.FINISHED),this.$.state=e}async _generateThumbnail(){var e;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let r=this.cfg.thumbSize,n=this.proxyUrl(O(Tt(this.cfg.cdnCname,this._entry.getValue("uuid")),P(t.getValue("cdnUrlModifiers"),`scale_crop/${r}x${r}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((e=t.getValue("file"))!=null&&e.type.includes("image"))try{let r=await pr(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",r)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(n))}else{let r=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(r))}}_subEntry(t,e){let r=this._entry.subscribe(t,n=>{this.isConnected&&e(n)});this._entrySubs.add(r)}_handleEntryId(t){var r;this._reset();let e=(r=this.uploadCollection)==null?void 0:r.read(t);this._entry=e,e&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||e.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=e.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{gt.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),gt.activeInstances.add(this)}_handleState(t){var e,r,n;this.set$({isFailed:t===V.FAILED,isLimitOverflow:t===V.LIMIT_OVERFLOW,isUploading:t===V.UPLOADING,isFinished:t===V.FINISHED,progressVisible:t===V.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((e=this._entry)==null?void 0:e.getValue("isImage"))&&((r=this._entry)==null?void 0:r.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===V.FAILED||t===V.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===V.FINISHED&&(this.$.badgeIcon="badge-success"),t===V.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),gt.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,l;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let e=this.cfg.multiple?this.cfg.multipleMax:1;if(e&&this.uploadCollection.size>e)return;let r=this.getOutputData(a=>!a.getValue("fileInfo"));this.emit(S.UPLOAD_START,r,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let a=new AbortController;t.setValue("abortController",a);let c=async()=>{let d=this.getUploadClientOptions();return Ri(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...d,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:p=>{if(p.isComputable){let m=p.value*100;t.setValue("uploadProgress",m)}this.$.progressUnknown=!p.isComputable},signal:a.signal,metadata:await this.getMetadataFor(t.uid)})},u=await this.$["*uploadQueue"].add(c);t.setMultipleValues({fileInfo:u,isUploading:!1,fileName:u.originalFilename,fileSize:u.size,isImage:u.isImage,mimeType:(l=(o=(n=u.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?l:u.mimeType,uuid:u.uuid,cdnUrl:u.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(a){console.warn("Upload error",a),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),a instanceof R?a.isCancel||t.setValue("uploadError",a):t.setValue("uploadError",new Error("Unexpected error"))}}};gt.template=`
{{itemName}}{{errorText}}
`;gt.activeInstances=new Set;var ue=class extends b{constructor(){super();h(this,"_handleBackdropClick",()=>{this._closeDialog()});h(this,"_closeDialog",()=>{this.setOrAddState("*modalActive",!1)});h(this,"_handleDialogClose",()=>{this._closeDialog()});h(this,"_handleDialogMouseDown",t=>{this._mouseDownTarget=t.target});h(this,"_handleDialogMouseUp",t=>{t.target===this.ref.dialog&&t.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(){if(super.initCallback(),typeof HTMLDialogElement=="function")this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp);else{this.setAttribute("dialog-fallback","");let t=document.createElement("div");t.className="backdrop",this.appendChild(t),t.addEventListener("click",this._handleBackdropClick)}this.sub("*modalActive",t=>{this.$.isOpen!==t&&(this.$.isOpen=t),t&&this.cfg.modalScrollLock?document.body.style.overflow="hidden":document.body.style.overflow=""}),this.subConfigValue("modalBackdropStrokes",t=>{t?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.sub("isOpen",t=>{t?this.show():this.hide()})}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)}};h(ue,"StateConsumerScope","modal");ue.template=``;var We=class{constructor(){h(this,"caption","");h(this,"text","");h(this,"iconName","");h(this,"isError",!1)}},Xe=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};Xe.template=`
{{captionTxt}}
{{msgTxt}}
`;var qe=class extends v{constructor(){super();h(this,"historyTracked",!0);h(this,"activityType",g.activities.UPLOAD_LIST);h(this,"_debouncedHandleCollectionUpdate",I(()=>{this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),!this.couldOpenActivity&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(e=>!!e.getValue("fileInfo"));this.emit(S.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var u,d;let t=!!this.cfg.multiple,e=t?(u=this.cfg.multipleMin)!=null?u:0:1,r=t?(d=this.cfg.multipleMax)!=null?d:0:1,n=this.uploadCollection.size,o=e?nr:!1;return{passed:!o&&!l,tooFew:o,tooMany:l,min:e,max:r,exact:r===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,e=this._validateFilesCount();if(t&&!e.passed){let r=new We,n=e.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";r.caption=this.l10n("files-count-limit-error-title"),r.text=this.l10n(n,{min:e.min,max:e.max,total:t}),r.isError=!0,this.set$({"*message":r})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),r={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let m of t){let f=this.uploadCollection.read(m);f.getValue("fileInfo")&&!f.getValue("validationErrorMsg")&&(r.succeed+=1),f.getValue("isUploading")&&(r.uploading+=1),(f.getValue("validationErrorMsg")||f.getValue("uploadError"))&&(r.failed+=1),f.getValue("validationMultipleLimitMsg")&&(r.limitOverflow+=1)}let{passed:n,tooMany:o,exact:l}=this._validateFilesCount(),a=r.failed===0&&r.limitOverflow===0,c=!1,u=!1,d=!1;r.total-r.succeed-r.uploading-r.failed>0&&n?c=!0:(u=!0,d=r.total===r.succeed&&n&&a),this.set$({doneBtnVisible:u,doneBtnEnabled:d,uploadBtnVisible:c,addMoreBtnEnabled:r.total===0||!o&&!l,addMoreBtnVisible:!l||this.cfg.multiple,headerText:this._getHeaderText(r)})}_getHeaderText(t){let e=r=>{let n=t[r];return this.l10n(`header-${r}`,{count:n})};return t.uploading>0?e("uploading"):t.failed>0?e("failed"):t.succeed>0?e("succeed"):e("total")}get couldOpenActivity(){return this.cfg.showEmptyList||this.uploadCollection.size>0}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{!this.couldOpenActivity&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};qe.template=`{{headerText}}
`;var Ge=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.URL);h(this,"init$",{...this.init$,importDisabled:!0,onUpload:t=>{t.preventDefault();let e=this.ref.input.value;this.addFileFromUrl(e,{source:Z.URL_TAB}),this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:t=>{let e=t.target.value;this.set$({importDisabled:!e})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};Ge.template=`
`;var Wi=()=>typeof navigator.permissions!="undefined";var Ke=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.CAMERA);h(this,"_unsubPermissions",null);h(this,"init$",{...this.init$,video:null,videoTransformCss:null,shotBtnDisabled:!0,videoHidden:!0,messageHidden:!0,requestBtnHidden:Wi(),l10nMessage:null,originalErrorMessage:null,cameraSelectOptions:null,cameraSelectHidden:!0,onCameraSelectChange:t=>{this._selectedCameraId=t.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>{this._shot()},onRequestPermissions:()=>{this._capture()}});h(this,"_onActivate",()=>{Wi()&&this._subscribePermissions(),this._capture()});h(this,"_onDeactivate",()=>{this._unsubPermissions&&this._unsubPermissions(),this._stopCapture()});h(this,"_handlePermissionsChange",()=>{this._capture()});h(this,"_setPermissionsState",I(t=>{this.$.originalErrorMessage=null,this.classList.toggle("initialized",t==="granted"),t==="granted"?this.set$({videoHidden:!1,shotBtnDisabled:!1,messageHidden:!0}):t==="prompt"?(this.$.l10nMessage=this.l10n("camera-permissions-prompt"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage=this.l10n("camera-permissions-denied"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture())},300))}async _subscribePermissions(){try{(await navigator.permissions.query({name:"camera"})).addEventListener("change",this._handlePermissionsChange)}catch(t){console.log("Failed to use permissions API. Fallback to manual request mode.",t),this._capture()}}async _capture(){let t={video:{width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},audio:!1};this._selectedCameraId&&(t.video.deviceId={exact:this._selectedCameraId}),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d");try{this._setPermissionsState("prompt");let e=await navigator.mediaDevices.getUserMedia(t);e.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=e,this._capturing=!0,this._setPermissionsState("granted")}catch(e){this._setPermissionsState("denied"),this.$.originalErrorMessage=e.message}}_stopCapture(){var t;this._capturing&&((t=this.$.video)==null||t.getTracks()[0].stop(),this.$.video=null,this._capturing=!1)}_shot(){this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this._ctx.drawImage(this.ref.video,0,0);let t=Date.now(),e=`camera-${t}.png`;this._canvas.toBlob(r=>{let n=new File([r],e,{lastModified:t,type:"image/png"});this.addFileFromObject(n,{source:Z.CAMERA}),this.set$({"*currentActivity":g.activities.UPLOAD_LIST})})}async initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",t=>{this.$.videoTransformCss=t?"scaleX(-1)":null});try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(r=>r.kind==="videoinput").map((r,n)=>({text:r.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:r.deviceId}));e.length>1&&(this.$.cameraSelectOptions=e,this.$.cameraSelectHidden=!1)}catch{}}};Ke.template=`
{{l10nMessage}}{{originalErrorMessage}}
`;var Xi=class extends v{constructor(){super(...arguments);h(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}},ko=Xi;var Ye=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.DETAILS);h(this,"pauseRender",!0);h(this,"init$",{...this.init$,checkerboard:!1,fileSize:null,fileName:"",cdnUrl:"",errorTxt:"",cloudEditBtnHidden:!0,onNameInput:null,onBack:()=>{this.historyBack()},onRemove:()=>{this.uploadCollection.remove(this.entry.uid),this.historyBack()},onCloudEdit:()=>{this.entry.getValue("uuid")&&(this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}})}showNonImageThumb(){let t=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon"),e=he(t,108,108);this.ref.filePreview.setImageUrl(e),this.set$({checkerboard:!1})}initCallback(){super.initCallback(),this.render(),this.$.fileSize=this.l10n("file-size-unknown"),this.registerActivity(this.activityType,{onDeactivate:()=>{this.ref.filePreview.clear()}}),this.sub("*focusedEntry",t=>{if(!t)return;this._entrySubs?this._entrySubs.forEach(n=>{this._entrySubs.delete(n),n.remove()}):this._entrySubs=new Set,this.entry=t;let e=t.getValue("file");if(e){this._file=e;let n=se(this._file);n&&!t.getValue("cdnUrl")&&(this.ref.filePreview.setImageFile(this._file),this.set$({checkerboard:!0})),n||this.showNonImageThumb()}let r=(n,o)=>{this._entrySubs.add(this.entry.subscribe(n,o))};r("fileName",n=>{this.$.fileName=n,this.$.onNameInput=()=>{let o=this.ref.file_name_input.value;Object.defineProperty(this._file,"name",{writable:!0,value:o}),this.entry.setValue("fileName",o)}}),r("fileSize",n=>{this.$.fileSize=Number.isFinite(n)?this.fileSizeFmt(n):this.l10n("file-size-unknown")}),r("uploadError",n=>{this.$.errorTxt=n==null?void 0:n.message}),r("externalUrl",n=>{n&&(this.entry.getValue("uuid")||this.showNonImageThumb())}),r("cdnUrl",n=>{let o=this.cfg.useCloudImageEditor&&n&&this.entry.getValue("isImage");if(n&&this.ref.filePreview.clear(),this.set$({cdnUrl:n,cloudEditBtnHidden:!o}),n&&this.entry.getValue("isImage")){let l=O(n,P("format/auto","preview"));this.ref.filePreview.setImageUrl(this.proxyUrl(l))}})})}};Ye.template=`
{{fileSize}}
{{errorTxt}}
`;var qi=class{constructor(){h(this,"captionL10nStr","confirm-your-action");h(this,"messageL10Str","are-you-sure");h(this,"confirmL10nStr","yes");h(this,"denyL10nStr","no")}confirmAction(){console.log("Confirmed")}denyAction(){this.historyBack()}},Ze=class extends g{constructor(){super(...arguments);h(this,"activityType",g.activities.CONFIRMATION);h(this,"_defaults",new qi);h(this,"init$",{...this.init$,activityCaption:"",messageTxt:"",confirmBtnTxt:"",denyBtnTxt:"","*confirmation":null,onConfirm:this._defaults.confirmAction,onDeny:this._defaults.denyAction.bind(this)})}initCallback(){super.initCallback(),this.set$({messageTxt:this.l10n(this._defaults.messageL10Str),confirmBtnTxt:this.l10n(this._defaults.confirmL10nStr),denyBtnTxt:this.l10n(this._defaults.denyL10nStr)}),this.sub("*confirmation",t=>{t&&this.set$({"*currentActivity":g.activities.CONFIRMATION,activityCaption:this.l10n(t.captionL10nStr),messageTxt:this.l10n(t.messageL10Str),confirmBtnTxt:this.l10n(t.confirmL10nStr),denyBtnTxt:this.l10n(t.denyL10nStr),onDeny:()=>{t.denyAction()},onConfirm:()=>{t.confirmAction()}})})}};Ze.template=`{{activityCaption}}
{{messageTxt}}
`;var Je=class extends v{constructor(){super(...arguments);h(this,"init$",{...this.init$,visible:!1,unknown:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let t=this.uploadCollection.items().some(e=>this.uploadCollection.read(e).getValue("isUploading"));this.$.visible=t}),this.sub("visible",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",t=>{this.$.value=t})}destroyCallback(){var t;super.destroyCallback(),(t=this._unobserveCollection)==null||t.call(this)}};Je.template=``;var Qe=class extends b{constructor(){super(...arguments);h(this,"_value",0);h(this,"_unknownMode",!1);h(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};Qe.template='
';var K="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";var de=class extends b{constructor(){super();h(this,"init$",{...this.init$,checkerboard:!1,src:K})}initCallback(){super.initCallback(),this.sub("checkerboard",()=>{this.style.backgroundImage=this.hasAttribute("checkerboard")?`url(${dr()})`:"unset"})}destroyCallback(){super.destroyCallback(),URL.revokeObjectURL(this._lastObjectUrl)}setImage(t){this.$.src=t.src}setImageFile(t){let e=URL.createObjectURL(t);this.$.src=e,this._lastObjectUrl=e}setImageUrl(t){this.$.src=t}clear(){URL.revokeObjectURL(this._lastObjectUrl),this.$.src=K}};de.template='';de.bindAttributes({checkerboard:"checkerboard"});var fr="--cfg-ctx-name",L=class extends b{get cfgCssCtxName(){return this.getCssData(fr,!0)}get cfgCtxName(){var t;let i=((t=this.getAttribute("ctx-name"))==null?void 0:t.trim())||this.cfgCssCtxName||this.__cachedCfgCtxName;return this.__cachedCfgCtxName=i,i}connectedCallback(){var i;if(!this.connectedOnce){let t=(i=this.getAttribute("ctx-name"))==null?void 0:i.trim();t&&this.style.setProperty(fr,`'${t}'`)}super.connectedCallback()}parseCfgProp(i){return{...super.parseCfgProp(i),ctx:$.getCtx(this.cfgCtxName)}}};function mr(...s){return s.reduce((i,t)=>{if(typeof t=="string")return i[t]=!0,i;for(let e of Object.keys(t))i[e]=t[e];return i},{})}function D(...s){let i=mr(...s);return Object.keys(i).reduce((t,e)=>(i[e]&&t.push(e),t),[]).join(" ")}function gr(s,...i){let t=mr(...i);for(let e of Object.keys(t))s.classList.toggle(e,t[e])}var _r=s=>{if(!s)return W;let i=Ms(s).filter(t=>W.includes(t));return i.length===0?W:i};function br(s){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":W,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:K,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:Ot(W),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let i=s.querySelectorAll("img");for(let t of i){let e=t.src;t.src=K,t.src=e}s.$["*networkProblems"]=!1},"*on.apply":i=>{if(!i)return;let t=s.$["*originalUrl"],e=P(Et(i),"preview"),r=O(t,e),n={originalUrl:t,cdnUrlModifiers:e,cdnUrl:r,transformations:i};s.dispatchEvent(new CustomEvent("apply",{detail:n,bubbles:!0,composed:!0})),s.remove()},"*on.cancel":()=>{s.remove(),s.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}var yr=`
Network error
{{fileType}}
{{msg}}
`;var ot=class extends L{constructor(){super();h(this,"_debouncedShowLoader",I(this._showLoader.bind(this),300));this.init$={...this.init$,...br(this)}}get ctxName(){return this.autoCtxName}_showLoader(t){this.$.showLoader=t}_waitForSize(){return new Promise((e,r)=>{let n=setTimeout(()=>{r(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),o=new ResizeObserver(([l])=>{l.contentRect.width>0&&l.contentRect.height>0&&(e(),clearTimeout(n),o.disconnect())});o.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(await this._waitForSize(),this.$["*tabId"]===N.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate(),this.$["*editorTransformations"]={},this.$.cdnUrl){let t=zs(this.$.cdnUrl);this.$["*originalUrl"]=Tt(this.$.cdnUrl,t);let e=js(this.$.cdnUrl),r=Qs(e);this.$["*editorTransformations"]=r}else if(this.$.uuid)this.$["*originalUrl"]=Tt(this.cfg.cdnCname,this.$.uuid);else throw new Error("No UUID nor CDN URL provided");try{let t=O(this.$["*originalUrl"],P("json")),e=await fetch(t).then(o=>o.json()),{width:r,height:n}=e;this.$["*imageSize"]={width:r,height:n},this.$["*tabId"]===N.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(t){t&&console.error("Failed to load image info",t)}}async initEditor(){try{await this._waitForSize()}catch(t){this.isConnected&&console.error(t.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==K&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",t=>{let e=this.ref["img-el"];e.src!==t&&(this._imgLoading=!0,e.src=t||K)}),this.sub("cropPreset",t=>{this.$["*cropPresetList"]=Pe(t)}),this.sub("tabs",t=>{this.$["*tabList"]=_r(t)}),this.sub("*tabId",t=>{this.ref["img-el"].className=D("image",{image_hidden_to_cropper:t===N.CROP,image_hidden_effects:t!==N.CROP})}),this.classList.add("editor_ON"),this.sub("*networkProblems",t=>{this.$["presence.networkProblems"]=t,this.$["presence.modalCaption"]=!t}),this.sub("*editorTransformations",t=>{if(Object.keys(t).length===0)return;let e=this.$["*originalUrl"],r=P(Et(t),"preview"),n=O(e,r),o={originalUrl:e,cdnUrlModifiers:r,cdnUrl:n,transformations:t};this.dispatchEvent(new CustomEvent("change",{detail:o,bubbles:!0,composed:!0}))},!1),this.sub("uuid",t=>t&&this.updateImage()),this.sub("cdnUrl",t=>t&&this.updateImage())}};h(ot,"className","cloud-image-editor");ot.template=yr;ot.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var ti=class extends L{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(i){let t=this.$["*imageBox"];if(!t)return;if(i===""&&t.height<=y&&t.width<=y)return!0;let e=t.height<=y&&(i.includes("n")||i.includes("s")),r=t.width<=y&&(i.includes("e")||i.includes("w"));return e||r}_createBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i,o=this.ref["svg-el"],l=Y("mask",{id:"backdrop-mask"}),a=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),c=Y("rect",{x:t,y:e,width:r,height:n,fill:"black"});l.appendChild(a),l.appendChild(c);let u=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});o.appendChild(u),o.appendChild(l),this._backdropMask=l,this._backdropMaskInner=c}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i;this._backdropMaskInner&&kt(this._backdropMaskInner,{x:t,y:e,width:r,height:n})}_updateFrame(){let i=this.$["*cropBox"];if(!(!i||!this._frameGuides||!this._frameThumbs)){for(let t of Object.values(this._frameThumbs)){let{direction:e,pathNode:r,interactionNode:n,groupNode:o}=t,l=e==="",a=e.length===2,{x:c,y:u,width:d,height:p}=i;if(l){let f={x:c+d/3,y:u+p/3,width:d/3,height:p/3};kt(n,f)}else{let f=wt(Math.min(d,p)/(24*2+34)/2,0,1),{d:_,center:A}=a?$s(i,e,f):Ss(i,e,f),E=Math.max(Di*wt(Math.min(d,p)/Di/3,0,1),As);kt(n,{x:A[0]-E,y:A[1]-E,width:E*2,height:E*2}),kt(r,{d:_})}let m=this._shouldThumbBeDisabled(e);o.setAttribute("class",D("thumb",{"thumb--hidden":m,"thumb--visible":!m}))}kt(this._frameGuides,{x:i.x-1*.5,y:i.y-1*.5,width:i.width+1,height:i.height+1})}}_createThumbs(){let i={};for(let t=0;t<3;t++)for(let e=0;e<3;e++){let r=`${["n","","s"][t]}${["w","","e"][e]}`,n=Y("g");n.classList.add("thumb"),n.setAttribute("with-effects","");let o=Y("rect",{fill:"transparent"}),l=Y("path",{stroke:"currentColor",fill:"none","stroke-width":3});n.appendChild(l),n.appendChild(o),i[r]={direction:r,pathNode:l,interactionNode:o,groupNode:n},o.addEventListener("pointerdown",this._handlePointerDown.bind(this,r))}return i}_createGuides(){let i=Y("svg"),t=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"#000000","stroke-width":1,"stroke-opacity":.5});i.appendChild(t);for(let e=1;e<=2;e++){let r=Y("line",{x1:`${ee*e}%`,y1:"0%",x2:`${ee*e}%`,y2:"100%",stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}for(let e=1;e<=2;e++){let r=Y("line",{x1:"0%",y1:`${ee*e}%`,x2:"100%",y2:`${ee*e}%`,stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}return i.classList.add("guides","guides--semi-hidden"),i}_createFrame(){let i=this.ref["svg-el"],t=document.createDocumentFragment(),e=this._createGuides();t.appendChild(e);let r=this._createThumbs();for(let{groupNode:n}of Object.values(r))t.appendChild(n);i.appendChild(t),this._frameThumbs=r,this._frameGuides=e}_handlePointerDown(i,t){if(!this._frameThumbs)return;let e=this._frameThumbs[i];if(this._shouldThumbBeDisabled(i))return;let r=this.$["*cropBox"],{x:n,y:o}=this.ref["svg-el"].getBoundingClientRect(),l=t.x-n,a=t.y-o;this.$.dragging=!0,this._draggingThumb=e,this._dragStartPoint=[l,a],this._dragStartCrop={...r}}_handlePointerUp_(i){this._updateCursor(),this.$.dragging&&(i.stopPropagation(),i.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(i){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;i.stopPropagation(),i.preventDefault();let t=this.ref["svg-el"],{x:e,y:r}=t.getBoundingClientRect(),n=i.x-e,o=i.y-r,l=n-this._dragStartPoint[0],a=o-this._dragStartPoint[1],{direction:c}=this._draggingThumb,u=this._calcCropBox(c,[l,a]);u&&(this.$["*cropBox"]=u)}_calcCropBox(i,t){var c,u;let[e,r]=t,n=this.$["*imageBox"],o=(c=this._dragStartCrop)!=null?c:this.$["*cropBox"],l=(u=this.$["*cropPresetList"])==null?void 0:u[0],a=l?l.width/l.height:void 0;if(i===""?o=ks({rect:o,delta:[e,r],imageBox:n}):o=Os({rect:o,delta:[e,r],direction:i,aspectRatio:a,imageBox:n}),!Object.values(o).every(d=>Number.isFinite(d)&&d>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:o});return}return Bt(jt(o),this.$["*imageBox"])}_handleSvgPointerMove_(i){if(!this._frameThumbs)return;let t=Object.values(this._frameThumbs).find(e=>{if(this._shouldThumbBeDisabled(e.direction))return!1;let n=e.interactionNode.getBoundingClientRect(),o={x:n.x,y:n.y,width:n.width,height:n.height};return Ls(o,[i.x,i.y])});this._hoverThumb=t,this._updateCursor()}_updateCursor(){let i=this._hoverThumb;this.ref["svg-el"].style.cursor=i?Is(i.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(i){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:t})=>t).forEach(t=>{t.setAttribute("class",D("thumb",{"thumb--hidden":!i,"thumb--visible":i}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",i=>{i&&(this._guidesHidden=i.height<=y||i.width<=y,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",i=>{this._frameGuides&&this._frameGuides.setAttribute("class",D({"guides--hidden":this._guidesHidden,"guides--visible":!this._guidesHidden&&i,"guides--semi-hidden":!this._guidesHidden&&!i}))}),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)}};ti.template='';var _t=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.sub("title",t=>{this._titleEl&&(this._titleEl.style.display=t?"block":"none")}),this.sub("active",t=>{this.className=D({active:t,not_active:!t})}),this.sub("on.click",t=>{this.onclick=t})}};_t.template=`
{{title}}
`;function Lo(s){let i=s+90;return i=i>=360?0:i,i}function Uo(s,i){return s==="rotate"?Lo(i):["mirror","flip"].includes(s)?!i:null}var pe=class extends _t{initCallback(){super.initCallback(),this.defineAccessor("operation",i=>{i&&(this._operation=i,this.$.icon=i)}),this.$["on.click"]=i=>{let t=this.$["*cropperEl"].getValue(this._operation),e=Uo(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};var fe={FILTER:"filter",COLOR_OPERATION:"color_operation"},lt="original",ei=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":t=>{this.$["*faderEl"].set(t),this.$.value=t}})}setOperation(t,e){this._controlType=t==="filter"?fe.FILTER:fe.COLOR_OPERATION,this._operation=t,this._iconName=t,this._title=t.toUpperCase(),this._filter=e,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===lt?void 0:this.$.value,filter:this._filter===lt?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:t,zero:e}=rt[this._operation],[r,n]=t;this.$.min=r,this.$.max=n,this.$.zero=e;let o=this.$["*editorTransformations"][this._operation];if(this._controlType===fe.FILTER){let l=n;if(o){let{name:a,amount:c}=o;l=a===this._filter?c:n}this.$.value=l,this.$.defaultValue=l}if(this._controlType===fe.COLOR_OPERATION){let l=typeof o!="undefined"?o:e;this.$.value=l,this.$.defaultValue=l}}apply(){let t;this._controlType===fe.FILTER?this._filter===lt?t=null:t={name:this._filter,amount:this.$.value}:t=this.$.value;let e={...this.$["*editorTransformations"],[this._operation]:t};this.$["*editorTransformations"]=e}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",t=>{this._originalUrl=t}),this.sub("value",t=>{let e=`${this._filter||this._operation} ${t}`;this.$["*operationTooltip"]=e})}};ei.template=``;function me(s){let i=new Image;return{promise:new Promise((r,n)=>{i.src=s,i.onload=r,i.onerror=n}),image:i,cancel:()=>{i.naturalWidth===0&&(i.src=K)}}}function ge(s){let i=[];for(let n of s){let o=me(n);i.push(o)}let t=i.map(n=>n.image);return{promise:Promise.allSettled(i.map(n=>n.promise)),images:t,cancel:()=>{i.forEach(n=>{n.cancel()})}}}var Xt=class extends _t{constructor(){super(...arguments);h(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,r=Math.ceil(e*t),n=e>=2?"lightest":"normal",o=100,l={...this.$["*editorTransformations"]};return l[this._operation]=this._filter!==lt?{name:this._filter,amount:o}:void 0,O(this._originalUrl,P(Fe,Et(l),`quality/${n}`,`scale_crop/${r}x${r}/center`))}_observerCallback(t,e){if(t[0].isIntersecting){let n=this.proxyUrl(this._previewSrc()),o=this.ref["preview-el"],{promise:l,cancel:a}=me(n);this._cancelPreload=a,l.catch(c=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:c})}).finally(()=>{o.style.backgroundImage=`url(${n})`,o.setAttribute("loaded",""),e.unobserve(this)})}else this._cancelPreload&&this._cancelPreload()}initCallback(){super.initCallback(),this.$["on.click"]=e=>{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===lt,this.$.icon=this.$.isOriginal?"original":"slider"}),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("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 r=this.ref["icon-el"];r.style.opacity=e?"1":"0";let n=this.ref["preview-el"];e?n.style.opacity="0":n.style.backgroundImage&&(n.style.opacity="1")}),this.sub("*networkProblems",e=>{if(!e){let r=this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"];n.style.backgroundImage&&(n.style.backgroundImage="none",n.style.backgroundImage=`url(${r})`)}})}destroyCallback(){var t;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),this._cancelPreload&&this._cancelPreload()}};Xt.template=`
`;var _e=class extends _t{constructor(){super(...arguments);h(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=t=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.$.title=this.l10n(t))}),this.sub("*editorTransformations",t=>{if(!this._operation)return;let{zero:e}=rt[this._operation],r=t[this._operation],n=typeof r!="undefined"?r!==e:!1;this.$.active=n})}};var vr=(s,i)=>{let t,e,r;return(...n)=>{t?(clearTimeout(e),e=setTimeout(()=>{Date.now()-r>=i&&(s(...n),r=Date.now())},Math.max(i-(Date.now()-r),0))):(s(...n),r=Date.now(),t=!0)}};function Cr(s,i){let t={};for(let e of i){let r=s[e];(s.hasOwnProperty(e)||r!==void 0)&&(t[e]=r)}return t}function qt(s,i,t){let r=window.devicePixelRatio,n=Math.min(Math.ceil(i*r),3e3),o=r>=2?"lightest":"normal";return O(s,P(Fe,Et(t),`quality/${o}`,`stretch/off/-/resize/${n}x`))}function Ro(s){return s?[({dimensions:t,coords:e})=>[...t,...e].every(r=>Number.isInteger(r)&&Number.isFinite(r)),({dimensions:t,coords:e})=>t.every(r=>r>0)&&e.every(r=>r>=0)].every(t=>t(s)):!0}var ii=class extends L{constructor(){super(),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=I(this._commit.bind(this),300),this._handleResizeThrottled=vr(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 i=this.$["*editorTransformations"],t=Cr(i,Object.keys(this.$["*operations"])),e={...this.$["*operations"],...t};this.$["*operations"]=e}_initCanvas(){let i=this.ref["canvas-el"],t=i.getContext("2d"),e=this.offsetWidth,r=this.offsetHeight,n=window.devicePixelRatio;i.style.width=`${e}px`,i.style.height=`${r}px`,i.width=e*n,i.height=r*n,t==null||t.scale(n,n),this._canvas=i,this._ctx=t}_alignImage(){if(!this._isActive||!this.$.image)return;let i=this.$.image,t=this.$["*padding"],e=this.$["*operations"],{rotate:r}=e,n={width:this.offsetWidth,height:this.offsetHeight},o=zt({width:i.naturalWidth,height:i.naturalHeight},r),l;if(o.width>n.width-t*2||o.height>n.height-t*2){let a=o.width/o.height,c=n.width/n.height;if(a>c){let u=n.width-t*2,d=u/a,p=0+t,m=t+(n.height-t*2)/2-d/2;l={x:p,y:m,width:u,height:d}}else{let u=n.height-t*2,d=u*a,p=t+(n.width-t*2)/2-d/2,m=0+t;l={x:p,y:m,width:d,height:u}}}else{let{width:a,height:c}=o,u=t+(n.width-t*2)/2-a/2,d=t+(n.height-t*2)/2-c/2;l={x:u,y:d,width:a,height:c}}this.$["*imageBox"]=jt(l)}_alignCrop(){var d;let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,n=this.$["*editorTransformations"].crop,{width:o,x:l,y:a}=this.$["*imageBox"];if(n){let{dimensions:[p,m],coords:[f,_]}=n,{width:A}=zt(this._imageSize,r),E=o/A;i=Bt(jt({x:l+f*E,y:a+_*E,width:p*E,height:m*E}),this.$["*imageBox"])}let c=(d=this.$["*cropPresetList"])==null?void 0:d[0],u=c?c.width/c.height:void 0;if(!Us(i,t)||u&&!Rs(i,u)){let p=t.width/t.height,m=t.width,f=t.height;u&&(p>u?m=Math.min(t.height*u,t.width):f=Math.min(t.width/u,t.height)),i={x:t.x+t.width/2-m/2,y:t.y+t.height/2-f/2,width:m,height:f}}this.$["*cropBox"]=Bt(jt(i),this.$["*imageBox"])}_drawImage(){let i=this._ctx;if(!i)return;let t=this.$.image,e=this.$["*imageBox"],r=this.$["*operations"],{mirror:n,flip:o,rotate:l}=r,a=zt({width:e.width,height:e.height},l);i.save(),i.translate(e.x+e.width/2,e.y+e.height/2),i.rotate(l*Math.PI*-1/180),i.scale(n?-1:1,o?-1:1),i.drawImage(t,-a.width/2,-a.height/2,a.width,a.height),i.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let i=this._canvas;this._ctx.clearRect(0,0,i.width,i.height),this._drawImage()}_animateIn({fromViewer:i}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=D({active_from_viewer:i,active_from_editor:!i,inactive_to_editor:!1})}))}_getCropDimensions(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o}=t,{width:l,height:a}=zt(this._imageSize,r),{width:c,height:u}=i,d=n/l,p=o/a;return[wt(Math.round(c/d),1,l),wt(Math.round(u/p),1,a)]}_getCropTransformation(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o,x:l,y:a}=t,{width:c,height:u}=zt(this._imageSize,r),{x:d,y:p}=i,m=n/c,f=o/u,_=this._getCropDimensions(),A={dimensions:_,coords:[wt(Math.round((d-l)/m),0,c-_[0]),wt(Math.round((p-a)/f),0,u-_[1])]};if(!Ro(A)){console.error("Cropper is trying to create invalid crop object",{payload:A});return}if(!(_[0]===c&&_[1]===u))return A}_commit(){if(!this.isConnected)return;let i=this.$["*operations"],{rotate:t,mirror:e,flip:r}=i,n=this._getCropTransformation(),l={...this.$["*editorTransformations"],crop:n,rotate:t,mirror:e,flip:r};this.$["*editorTransformations"]=l}setValue(i,t){console.log(`Apply cropper operation [${i}=${t}]`),this.$["*operations"]={...this.$["*operations"],[i]:t},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(i){return this.$["*operations"][i]}async activate(i,{fromViewer:t}={}){if(!this._isActive){this._isActive=!0,this._imageSize=i,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:t})}catch(e){console.error("Failed to activate cropper",{error:e})}this._observer=new ResizeObserver(([e])=>{e.contentRect.width>0&&e.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:i=!1}={}){var t;this._isActive&&(!i&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=D({active_from_viewer:!1,active_from_editor:!1,inactive_to_editor:!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(t=this._observer)==null||t.disconnect())}_transitionToCrop(){let i=this._getCropDimensions(),t=Math.min(this.offsetWidth,i[0])/this.$["*cropBox"].width,e=Math.min(this.offsetHeight,i[1])/this.$["*cropBox"].height,r=Math.min(t,e),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,o=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${r}) translate(${(this.offsetWidth/2-n)/r}px, ${(this.offsetHeight/2-o)/r}px)`,this.style.transformOrigin=`${n}px ${o}px`}_transitionToImage(){let i=this.$["*cropBox"].x+this.$["*cropBox"].width/2,t=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${i}px ${t}px`}_reset(){this._isActive||(this.$.image=null)}_waitForImage(i,t){let e=this.offsetWidth;t={...t,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let r=this.proxyUrl(qt(i,e,t)),{promise:n,cancel:o,image:l}=me(r),a=this._handleImageLoading(r);return l.addEventListener("load",a,{once:!0}),l.addEventListener("error",a,{once:!0}),this._cancelPreload&&this._cancelPreload(),this._cancelPreload=o,n.then(()=>l).catch(c=>(console.error("Failed to load image",{error:c}),this.$["*networkProblems"]=!0,Promise.resolve(l)))}_handleImageLoading(i){let t="crop",e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",i=>{i||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var i;super.destroyCallback(),(i=this._observer)==null||i.disconnect()}};ii.template=``;function Gi(s,i,t){let e=Array(t);t--;for(let r=t;r>=0;r--)e[r]=Math.ceil((r*i+(t-r)*s)/t);return e}function Po(s){return s.reduce((i,t,e)=>er<=i&&i<=n);return s.map(r=>{let n=Math.abs(e[0]-e[1]),o=Math.abs(i-e[0])/n;return e[0]===r?i>t?1:1-o:e[1]===r?i>=t?o:1:0})}function No(s,i){return s.map((t,e)=>tn-o)}var Ki=class extends L{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=I(this._addKeypoint.bind(this),600),this.classList.add("inactive_to_cropper")}_handleImageLoading(i){let t=this._operation,e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let i of this._keypoints){let{image:t}=i;t&&(t.style.opacity=i.opacity.toString(),t.style.zIndex=i.zIndex.toString())}})}_imageSrc({url:i=this._url,filter:t=this._filter,operation:e,value:r}={}){let n={...this._transformations};e&&(n[e]=t?{name:t,amount:r}:r);let o=this.offsetWidth;return this.proxyUrl(qt(i,o,n))}_constructKeypoint(i,t){return{src:this._imageSrc({operation:i,value:t}),image:null,opacity:0,zIndex:0,value:t}}_isSame(i,t){return this._operation===i&&this._filter===t}_addKeypoint(i,t,e){let r=()=>!this._isSame(i,t)||this._value!==e||!!this._keypoints.find(a=>a.value===e);if(r())return;let n=this._constructKeypoint(i,e),o=new Image;o.src=n.src;let l=this._handleImageLoading(n.src);o.addEventListener("load",l,{once:!0}),o.addEventListener("error",l,{once:!0}),n.image=o,o.classList.add("fader-image"),o.addEventListener("load",()=>{if(r())return;let a=this._keypoints,c=a.findIndex(d=>d.value>e),u=c{this.$["*networkProblems"]=!0},{once:!0})}set(i){i=typeof i=="string"?parseInt(i,10):i,this._update(this._operation,i),this._addKeypointDebounced(this._operation,this._filter,i)}_update(i,t){this._operation=i,this._value=t;let{zero:e}=rt[i],r=this._keypoints.map(l=>l.value),n=Mo(r,t,e),o=No(r,e);for(let[l,a]of Object.entries(this._keypoints))a.opacity=n[l],a.zIndex=o[l];this._flush()}_createPreviewImage(){let i=new Image;return i.classList.add("fader-image","fader-image--preview"),i.style.opacity="0",i}async _initNodes(){let i=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&i.appendChild(this._previewImage);let t=document.createElement("div");i.appendChild(t);let e=this._keypoints.map(c=>c.src),{images:r,promise:n,cancel:o}=ge(e);r.forEach(c=>{let u=this._handleImageLoading(c.src);c.addEventListener("load",u),c.addEventListener("error",u)}),this._cancelLastImages=()=>{o(),this._cancelLastImages=void 0};let l=this._operation,a=this._filter;await n,this._isActive&&this._isSame(l,a)&&(this._container&&this._container.remove(),this._container=t,this._keypoints.forEach((c,u)=>{let d=r[u];d.classList.add("fader-image"),c.image=d,this._container.appendChild(d)}),this.appendChild(i),this._flush())}setTransformations(i){if(this._transformations=i,this._previewImage){let t=this._imageSrc(),e=this._handleImageLoading(t);this._previewImage.src=t,this._previewImage.addEventListener("load",e,{once:!0}),this._previewImage.addEventListener("error",e,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}preload({url:i,filter:t,operation:e,value:r}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=wr(e,r).map(a=>this._imageSrc({url:i,filter:t,operation:e,value:a})),{cancel:l}=ge(o);this._cancelBatchPreload=l}_setOriginalSrc(i){let t=this._previewImage||this._createPreviewImage();if(!this.contains(t)&&this.appendChild(t),this._previewImage=t,t.src===i){t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1});return}t.style.opacity="0";let e=this._handleImageLoading(i);t.addEventListener("error",e,{once:!0}),t.src=i,t.addEventListener("load",()=>{e(),t&&(t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1}))},{once:!0}),t.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}activate({url:i,operation:t,value:e,filter:r,fromViewer:n}){if(this._isActive=!0,this._hidden=!1,this._url=i,this._operation=t||"initial",this._value=e,this._filter=r,this._fromViewer=n,typeof e!="number"&&!r){let l=this._imageSrc({operation:t,value:e});this._setOriginalSrc(l),this._container&&this._container.remove();return}this._keypoints=wr(t,e).map(l=>this._constructKeypoint(t,l)),this._update(t,e),this._initNodes()}deactivate({hide:i=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),i&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=D({active_from_viewer:!1,active_from_cropper:!1,inactive_to_cropper:!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};var Do=1,si=class extends L{initCallback(){super.initCallback(),this.addEventListener("wheel",i=>{i.preventDefault();let{deltaY:t,deltaX:e}=i;Math.abs(e)>Do?this.scrollLeft+=e:this.scrollLeft+=t})}};si.template=" ";function Fo(s){return``}function Vo(s){return`
`}var ri=class extends L{constructor(){super();h(this,"_updateInfoTooltip",I(()=>{var o,l;let t=this.$["*editorTransformations"],e=this.$["*currentOperation"],r="",n=!1;if(this.$["*tabId"]===N.FILTERS)if(n=!0,this.$["*currentFilter"]&&((o=t==null?void 0:t.filter)==null?void 0:o.name)===this.$["*currentFilter"]){let a=((l=t==null?void 0:t.filter)==null?void 0:l.amount)||100;r=this.l10n(this.$["*currentFilter"])+" "+a}else r=this.l10n(lt);else if(this.$["*tabId"]===N.TUNING&&e){n=!0;let a=(t==null?void 0:t[e])||rt[e].zero;r=e+" "+a}n&&(this.$["*operationTooltip"]=r),this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",n)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":lt,"*currentOperation":null,"*tabId":N.CROP,showLoader:!1,filters:er,colorOperations:tr,cropOperations:ir,"*operationTooltip":null,"l10n.cancel":this.l10n("cancel"),"l10n.apply":this.l10n("apply"),"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:"sub-toolbar--top-hidden",visible:"sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"sub-toolbar--bottom-hidden",visible:"sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"tab-content--hidden",visible:"tab-content--visible"},"presence.tabToggleStyles":{hidden:"tab-toggle--hidden",visible:"tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"tab-toggles--hidden",visible:"tab-toggles--visible"},"on.cancel":()=>{this._cancelPreload&&this._cancelPreload(),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":t=>{let e=t.currentTarget.getAttribute("data-id");e&&this._activateTab(e,{fromViewer:!1})}},this._debouncedShowLoader=I(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===N.TUNING&&this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",!1)}_createOperationControl(t){let e=new _e;return e.operation=t,e}_createFilterControl(t){let e=new Xt;return e.filter=t,e}_createToggleControl(t){let e=new pe;return e.operation=t,e}_renderControlsList(t){let e=this.ref[`controls-list-${t}`],r=document.createDocumentFragment();t===N.CROP?this.$.cropOperations.forEach(n=>{let o=this._createToggleControl(n);r.appendChild(o)}):t===N.FILTERS?[lt,...this.$.filters].forEach(n=>{let o=this._createFilterControl(n);r.appendChild(o)}):t===N.TUNING&&this.$.colorOperations.forEach(n=>{let o=this._createOperationControl(n);r.appendChild(o)}),[...r.children].forEach((n,o)=>{o===r.childNodes.length-1&&n.classList.add("controls-list_last-item")}),e.innerHTML="",e.appendChild(r)}_activateTab(t,{fromViewer:e}){this.$["*tabId"]=t,t===N.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:e})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:e}),this.$["*cropperEl"].deactivate());for(let r of W){let n=r===t,o=this.ref[`tab-toggle-${r}`];o.active=n,n?(this._renderControlsList(t),this._syncTabIndicator()):this._unmountTabControls(r),this.$[`presence.tabContent.${r}`]=n}}_unmountTabControls(t){let e=this.ref[`controls-list-${t}`];e&&(e.innerHTML="")}_syncTabIndicator(){let t=this.ref[`tab-toggle-${this.$["*tabId"]}`],e=this.ref["tabs-indicator"];e.style.transform=`translateX(${t.offsetLeft}px)`}_preloadEditedImage(){if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let t=this.$["*imgContainerEl"].offsetWidth,e=this.proxyUrl(qt(this.$["*originalUrl"],t,this.$["*editorTransformations"]));this._cancelPreload&&this._cancelPreload();let{cancel:r}=ge([e]);this._cancelPreload=()=>{r(),this._cancelPreload=void 0}}}_showLoader(t){this.$.showLoader=t}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",t=>{t&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",t=>{var r;let e=(r=t==null?void 0:t.filter)==null?void 0:r.name;this.$["*currentFilter"]!==e&&(this.$["*currentFilter"]=e)}),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",t=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(t)}),this.sub("*loadingOperations",t=>{let e=!1;for(let[,r]of t.entries()){if(e)break;for(let[,n]of r.entries())if(n){e=!0;break}}this._debouncedShowLoader(e)}),this.sub("*showSlider",t=>{this.$["presence.subToolbar"]=t,this.$["presence.mainToolbar"]=!t}),this.sub("*tabList",t=>{this.$["presence.tabToggles"]=t.length>1;for(let e of W){this.$[`presence.tabToggle.${e}`]=t.includes(e);let r=this.ref[`tab-toggle-${e}`];r.style.gridColumn=t.indexOf(e)+1}t.includes(this.$["*tabId"])||this._activateTab(t[0],{fromViewer:!1})}),this._updateInfoTooltip()}};ri.template=`
{{*operationTooltip}}
${W.map(Vo).join("")}
${W.map(Fo).join("")}
`;var be=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},this.defineAccessor("active",i=>{i?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return D("icon",{icon_left:!this._iconReversed,icon_right:this._iconReversed,icon_hidden:this._iconHidden,icon_single:this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",i=>{this._iconSingle=!this.$.text,this._iconHidden=!i,this.$.iconCss=this._iconCss()}),this.sub("theme",i=>{i!=="custom"&&(this.className=i)}),this.sub("text",i=>{this._iconSingle=!1}),this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.hasAttribute("theme")||this.setAttribute("theme","default")}set reverse(i){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};be.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});be.template=`
{{text}}
`;var ni=class extends b{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let i=this.ref["line-el"];i.style.transition="initial",i.style.opacity="0",i.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",i=>{typeof i=="boolean"&&(i?this._start():this._stop())})}_start(){this._active=!0;let{width:i}=this.getBoundingClientRect(),t=this.ref["line-el"];t.style.transition="transform 1s",t.style.opacity="1",t.style.transform=`translateX(${i}px)`,t.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};ni.template=`
`;var oi={transition:"transition",visible:"visible",hidden:"hidden"},li=class extends b{constructor(){super(),this._visible=!1,this._visibleStyle=oi.visible,this._hiddenStyle=oi.hidden,this._externalTransitions=!1,this.defineAccessor("styles",i=>{i&&(this._externalTransitions=!0,this._visibleStyle=i.visible,this._hiddenStyle=i.hidden)}),this.defineAccessor("visible",i=>{typeof i=="boolean"&&(this._visible=i,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",gr(this,{[oi.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.setAttribute("hidden",""),this._externalTransitions||this.classList.add(oi.transition),this._handleVisible(),setTimeout(()=>this.removeAttribute("hidden"),0)}};li.template=" ";var ai=class extends b{constructor(){super();h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let t=parseInt(this.ref["input-el"].value,10);this._updateValue(t),this.$.onInput&&this.$.onInput(t)},"on.sliderChange":()=>{let t=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(t)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",e=>{this.$.disabled=e}),this.defineAccessor("min",e=>{this.$.min=e}),this.defineAccessor("max",e=>{this.$.max=e}),this.defineAccessor("defaultValue",e=>{this.$.defaultValue=e,this.ref["input-el"].value=e,this._updateValue(e)}),this.defineAccessor("zero",e=>{this._zero=e}),this.defineAccessor("onInput",e=>{e&&(this.$.onInput=e)}),this.defineAccessor("onChange",e=>{e&&(this.$.onChange=e)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)},0),this.sub("disabled",e=>{let r=this.ref["input-el"];e?r.setAttribute("disabled","disabled"):r.removeAttribute("disabled")});let t=this.ref["input-el"];t.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),t.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(t){this._updateZeroDot(t);let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(t-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${o}px)`})}_updateZeroDot(t){if(!this._zeroDotEl)return;t===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="0.2";let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${o}px)`})}_updateSteps(){let e=this.ref["steps-el"],{width:r}=e.getBoundingClientRect(),n=Math.ceil(r/2),o=Math.ceil(n/15)-2;if(this._stepsCount===o)return;let l=document.createDocumentFragment(),a=document.createElement("div"),c=document.createElement("div");a.className="minor-step",c.className="border-step",l.appendChild(c);for(let d=0;d
`;var Yi=class extends v{constructor(){super();h(this,"activityType",g.activities.CLOUD_IMG_EDIT);this.init$={...this.init$,cdnUrl:null}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.sub("*focusedEntry",t=>{t&&(this.entry=t,this.entry.subscribe("cdnUrl",e=>{e&&(this.$.cdnUrl=e)}))}),this.subConfigValue("cropPreset",t=>{this._instance&&this._instance.getAttribute("crop-preset")!==t&&this._instance.setAttribute("crop-preset",t)}),this.subConfigValue("cloudImageEditorTabs",t=>{this._instance&&this._instance.getAttribute("tabs")!==t&&this._instance.setAttribute("tabs",t)})}handleApply(t){if(!this.entry)return;let e=t.detail;this.entry.setMultipleValues({cdnUrl:e.cdnUrl,cdnUrlModifiers:e.cdnUrlModifiers}),this.historyBack()}handleCancel(){this.historyBack()}mountEditor(){let t=new ot,e=this.$.cdnUrl,r=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;t.setAttribute("ctx-name",this.ctxName),t.setAttribute("cdn-url",e),r&&t.setAttribute("crop-preset",r),n&&t.setAttribute("tabs",n),t.addEventListener("apply",o=>this.handleApply(o)),t.addEventListener("cancel",()=>this.handleCancel()),this.innerHTML="",this.appendChild(t),this._mounted=!0,this._instance=t}unmountEditor(){this._instance=void 0,this.innerHTML=""}};var Bo=function(s){return s.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},Tr=function(s,i="i"){let t=s.split("*").map(Bo);return new RegExp("^"+t.join(".+")+"$",i)};var zo=s=>Object.keys(s).reduce((t,e)=>{let r=s[e],n=Object.keys(r).reduce((o,l)=>{let a=r[l];return o+`${l}: ${a};`},"");return t+`${e}{${n}}`},"");function Er({textColor:s,backgroundColor:i,linkColor:t,linkColorHover:e,shadeColor:r}){let n=`solid 1px ${r}`;return zo({body:{color:s,"background-color":i},".side-bar":{background:"inherit","border-right":n},".main-content":{background:"inherit"},".main-content-header":{background:"inherit"},".main-content-footer":{background:"inherit"},".list-table-row":{color:"inherit"},".list-table-row:hover":{background:r},".list-table-row .list-table-cell-a, .list-table-row .list-table-cell-b":{"border-top":n},".list-table-body .list-items":{"border-bottom":n},".bread-crumbs a":{color:t},".bread-crumbs a:hover":{color:e},".main-content.loading":{background:`${i} url(/static/images/loading_spinner.gif) center no-repeat`,"background-size":"25px 25px"},".list-icons-item":{"background-color":r},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a":{color:t},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a:hover":{color:e},".side-bar-menu a":{color:t},".side-bar-menu a:hover":{color:e},".source-gdrive .side-bar-menu .current, .source-gdrive .side-bar-menu a:hover, .source-gphotos .side-bar-menu .current, .source-gphotos .side-bar-menu a:hover":{color:e},".source-vk .side-bar-menu a":{color:t},".source-vk .side-bar-menu a:hover":{color:e,background:"none"}})}var At={};window.addEventListener("message",s=>{let i;try{i=JSON.parse(s.data)}catch{return}if((i==null?void 0:i.type)in At){let t=At[i.type];for(let[e,r]of t)s.source===e&&r(i)}});var xr=function(s,i,t){s in At||(At[s]=[]),At[s].push([i,t])},Ar=function(s,i){s in At&&(At[s]=At[s].filter(t=>t[0]!==i))};function $r(s){let i=[];for(let[t,e]of Object.entries(s))e==null||typeof e=="string"&&e.length===0||i.push(`${t}=${encodeURIComponent(e)}`);return i.join("&")}var ci=class extends v{constructor(){super();h(this,"activityType",g.activities.EXTERNAL);h(this,"_iframe",null);h(this,"updateCssData",()=>{this.isActivityActive&&(this._inheritedUpdateCssData(),this.applyStyles())});h(this,"_inheritedUpdateCssData",this.updateCssData);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],counter:0,onDone:()=>{for(let t of this.$.selectedList){let e=this.extractUrlFromMessage(t),{filename:r}=t,{externalSourceType:n}=this.activityParams;this.addFileFromUrl(e,{fileName:r,source:n})}this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()}}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:t}=this.activityParams;this.set$({activityCaption:`${t==null?void 0:t[0].toUpperCase()}${t==null?void 0:t.slice(1)}`,activityIcon:t}),this.mountIframe()}}),this.sub("*currentActivity",t=>{t!==this.activityType&&this.unmountIframe()}),this.sub("selectedList",t=>{this.$.counter=t.length})}extractUrlFromMessage(t){if(t.alternatives){let e=M(this.cfg.externalSourcesPreferredTypes);for(let r of e){let n=Tr(r);for(let[o,l]of Object.entries(t.alternatives))if(n.test(o))return l}}return t.url}sendMessage(t){var e,r;(r=(e=this._iframe)==null?void 0:e.contentWindow)==null||r.postMessage(JSON.stringify(t),"*")}async handleFileSelected(t){this.$.selectedList=[...this.$.selectedList,t]}handleIframeLoad(){this.applyStyles()}getCssValue(t){return window.getComputedStyle(this).getPropertyValue(t).trim()}applyStyles(){let t={backgroundColor:this.getCssValue("--clr-background-light"),textColor:this.getCssValue("--clr-txt"),shadeColor:this.getCssValue("--clr-shade-lv1"),linkColor:"#157cfc",linkColorHover:"#3891ff"};this.sendMessage({type:"embed-css",style:Er(t)})}remoteUrl(){var l,a;let t=this.cfg.pubkey,e=(!1).toString(),{externalSourceType:r}=this.activityParams,n={lang:((a=(l=this.getCssData("--l10n-locale-name"))==null?void 0:l.split("-"))==null?void 0:a[0])||"en",public_key:t,images_only:e,pass_window_open:!1,session_key:this.cfg.remoteTabSessionKey},o=new URL(this.cfg.socialBaseUrl);return o.pathname=`/window3/${r}`,o.search=$r(n),o.toString()}mountIframe(){let t=Zt({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});t.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(t),xr("file-selected",t.contentWindow,this.handleFileSelected.bind(this)),this._iframe=t,this.$.selectedList=[]}unmountIframe(){this._iframe&&Ar("file-selected",this._iframe.contentWindow),this.ref.iframeWrapper.innerHTML="",this._iframe=null,this.$.selectedList=[],this.$.counter=0}};ci.template=`
{{activityCaption}}
{{counter}}
`;var ye=class extends b{setCurrentTab(i){if(!i)return;[...this.ref.context.querySelectorAll("[tab-ctx]")].forEach(e=>{e.getAttribute("tab-ctx")===i?e.removeAttribute("hidden"):e.setAttribute("hidden","")});for(let e in this._tabMap)e===i?this._tabMap[e].setAttribute("current",""):this._tabMap[e].removeAttribute("current")}initCallback(){super.initCallback(),this._tabMap={},this.defineAccessor("tab-list",i=>{if(!i)return;M(i).forEach(e=>{let r=Zt({tag:"div",attributes:{class:"tab"},properties:{onclick:()=>{this.setCurrentTab(e)}}});r.textContent=this.l10n(e),this.ref.row.appendChild(r),this._tabMap[e]=r})}),this.defineAccessor("default",i=>{this.setCurrentTab(i)}),this.hasAttribute("default")||this.setCurrentTab(Object.keys(this._tabMap)[0])}};ye.bindAttributes({"tab-list":null,default:null});ye.template=`
`;var Gt=class extends v{constructor(){super();h(this,"processInnerHtml",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return Gt.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,yi(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var e,r;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(l=>l.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let l of n){let a=document.createElement("input");a.type="hidden",a.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,a.value=l!=null?l:"",this._dynamicInputsContainer.appendChild(a)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let l=o.find(d=>!d.isValid),a=(r=l==null?void 0:l.validationErrorMessage)!=null?r:(e=l==null?void 0:l.uploadError)==null?void 0:e.message,c=this.$["*message"];c=c!=null&&c.isError?`${c.caption}. ${c.text}`:void 0;let u=a!=null?a:c;u?this._validationInputElement.setCustomValidity(u):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(l=>l.isUploaded&&l.isValid)){this.$.output={groupData:void 0,files:t};return}let r=this.getUploadClientOptions(),n=t.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=await Ts(n,r);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};Gt.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var Zi=class extends g{};var hi=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:t=>{var e;t.preventDefault(),t.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((e=this.$.options.find(r=>r.value==this.value))==null?void 0:e.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",t=>{var r;this.$.currentText=((r=t==null?void 0:t[0])==null?void 0:r.text)||"";let e="";t==null||t.forEach(n=>{e+=``}),this.$.selectHtml=e})}};hi.template=``;var q={PLAY:"play",PAUSE:"pause",FS_ON:"fullscreen-on",FS_OFF:"fullscreen-off",VOL_ON:"unmute",VOL_OFF:"mute",CAP_ON:"captions",CAP_OFF:"captions-off"},Sr={requestFullscreen:s=>{s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen&&s.webkitRequestFullscreen()},exitFullscreen:()=>{document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}},Q=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,src:"",ppIcon:q.PLAY,fsIcon:q.FS_ON,volIcon:q.VOL_ON,capIcon:q.CAP_OFF,totalTime:"00:00",currentTime:"00:00",progressCssWidth:"0",hasSubtitles:!1,volumeDisabled:!1,volumeValue:0,onPP:()=>{this.togglePlay()},onFs:()=>{this.toggleFullscreen()},onCap:()=>{this.toggleCaptions()},onMute:()=>{this.toggleSound()},onVolChange:t=>{let e=parseFloat(t.currentTarget.$.value);this.setVolume(e)},progressClicked:t=>{let e=this.progress.getBoundingClientRect();this._video.currentTime=this._video.duration*(t.offsetX/e.width)}})}togglePlay(){this._video.paused||this._video.ended?this._video.play():this._video.pause()}toggleFullscreen(){(document.fullscreenElement||document.webkitFullscreenElement)===this?Sr.exitFullscreen():Sr.requestFullscreen(this)}toggleCaptions(){this.$.capIcon===q.CAP_OFF?(this.$.capIcon=q.CAP_ON,this._video.textTracks[0].mode="showing",window.localStorage.setItem(Q.is+":captions","1")):(this.$.capIcon=q.CAP_OFF,this._video.textTracks[0].mode="hidden",window.localStorage.removeItem(Q.is+":captions"))}toggleSound(){this.$.volIcon===q.VOL_ON?(this.$.volIcon=q.VOL_OFF,this.$.volumeDisabled=!0,this._video.muted=!0):(this.$.volIcon=q.VOL_ON,this.$.volumeDisabled=!1,this._video.muted=!1)}setVolume(t){window.localStorage.setItem(Q.is+":volume",t);let e=t?t/100:0;this._video.volume=e}get progress(){return this.ref.progress}_getUrl(t){return t.includes("/")?t:`https://ucarecdn.com/${t}/`}_desc2attrs(t){let e=[];for(let r in t){let n=r==="src"?this._getUrl(t[r]):t[r];e.push(`${r}="${n}"`)}return e.join(" ")}_timeFmt(t){let e=new Date(Math.round(t)*1e3);return[e.getMinutes(),e.getSeconds()].map(r=>r<10?"0"+r:r).join(":")}_initTracks(){[...this._video.textTracks].forEach(t=>{t.mode="hidden"}),window.localStorage.getItem(Q.is+":captions")&&this.toggleCaptions()}_castAttributes(){let t=["autoplay","loop","muted"];[...this.attributes].forEach(e=>{t.includes(e.name)&&this._video.setAttribute(e.name,e.value)})}initCallback(){super.initCallback(),this._video=this.ref.video,this._castAttributes(),this._video.addEventListener("play",()=>{this.$.ppIcon=q.PAUSE,this.setAttribute("playback","")}),this._video.addEventListener("pause",()=>{this.$.ppIcon=q.PLAY,this.removeAttribute("playback")}),this.addEventListener("fullscreenchange",e=>{console.log(e),document.fullscreenElement===this?this.$.fsIcon=q.FS_OFF:this.$.fsIcon=q.FS_ON}),this.sub("src",e=>{if(!e)return;let r=this._getUrl(e);this._video.src=r}),this.sub("video",async e=>{if(!e)return;let r=await(await window.fetch(this._getUrl(e))).json();r.poster&&(this._video.poster=this._getUrl(r.poster));let n="";r==null||r.sources.forEach(o=>{n+=``}),r.tracks&&(r.tracks.forEach(o=>{n+=``}),this.$.hasSubtitles=!0),this._video.innerHTML+=n,this._initTracks(),console.log(r)}),this._video.addEventListener("loadedmetadata",e=>{this.$.currentTime=this._timeFmt(this._video.currentTime),this.$.totalTime=this._timeFmt(this._video.duration)}),this._video.addEventListener("timeupdate",e=>{let r=Math.round(100*(this._video.currentTime/this._video.duration));this.$.progressCssWidth=r+"%",this.$.currentTime=this._timeFmt(this._video.currentTime)});let t=window.localStorage.getItem(Q.is+":volume");if(t){let e=parseFloat(t);this.setVolume(e),this.$.volumeValue=e}}};Q.template=`
{{currentTime}} / {{totalTime}}
`;Q.bindAttributes({video:"video",src:"src"});var jo="css-src";function ui(s){return class extends s{constructor(){super(...arguments);h(this,"renderShadow",!0);h(this,"pauseRender",!0);h(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),Ae({element:this,attribute:jo,onSuccess:t=>{this.attachShadow({mode:"open"});let e=document.createElement("link");e.rel="stylesheet",e.type="text/css",e.href=t,e.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(e)},onTimeout:()=>{console.error("Attribute `css-src` is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}var ve=class extends ui(b){};var di=class extends b{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};h(di,"template",`Powered by Uploadcare`);var $t=class extends ve{constructor(){super(...arguments);h(this,"requireCtxName",!0);h(this,"init$",Ue(this));h(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};var pi=class extends $t{};pi.template=``;var fi=class extends $t{constructor(){super(...arguments);h(this,"pauseRender",!0)}shadowReadyCallback(){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"]=g.activities.UPLOAD_LIST:this.$["*currentActivity"]=t.initActivity||g.activities.START_FROM}),this.subConfigValue("sourceList",e=>{e!=="local"&&(this.cfg.sourceList="local")}),this.subConfigValue("confirmUpload",e=>{e!==!1&&(this.cfg.confirmUpload=!1)})}};fi.template=``;var mi=class extends $t{constructor(){super(),this.init$={...this.init$,couldCancel:!1,cancel:()=>{this.couldHistoryBack?this.$["*historyBack"]():this.couldShowList&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}}}get couldHistoryBack(){let i=this.$["*history"];return i.length>1&&i[i.length-1]!==g.activities.START_FROM}get couldShowList(){return this.cfg.showEmptyList||this.$["*uploadList"].length>0}shadowReadyCallback(){let i=this.ref.uBlock;this.sub("*currentActivity",t=>{t||(this.$["*currentActivity"]=i.initActivity||g.activities.START_FROM)}),this.sub("*uploadList",t=>{(t==null?void 0:t.length)>0&&this.$["*currentActivity"]===(i.initActivity||g.activities.START_FROM)&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}),this.sub("*history",()=>{this.$.couldCancel=this.couldHistoryBack||this.couldShowList})}};mi.template=``;var Ji=class extends ui(ot){shadowReadyCallback(){this.__shadowReady=!0,this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async initEditor(){this.__shadowReady&&await super.initEditor()}};function Qi(s){for(let i in s){let t=[...i].reduce((e,r)=>(r.toUpperCase()===r&&(r="-"+r.toLowerCase()),e+=r),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),s[i].reg&&s[i].reg(t)}}var ts="LR";async function Ho(s,i=!1){return new Promise((t,e)=>{if(typeof document!="object"){t(null);return}if(typeof window=="object"&&window[ts]){t(window[ts]);return}let r=document.createElement("script");r.async=!0,r.src=s,r.onerror=()=>{e()},r.onload=()=>{let n=window[ts];i&&Qi(n),t(n)},document.head.appendChild(r)})}export{g as ActivityBlock,Zi as ActivityHeader,Nt as BaseComponent,b as Block,Ke as CameraSource,Ji as CloudImageEditor,Yi as CloudImageEditorActivity,ot as CloudImageEditorBlock,To as Config,Ze as ConfirmationDialog,di as Copyright,ti as CropFrame,$ as Data,Gt as DataOutput,ae as DropArea,pe as EditorCropButtonControl,Xt as EditorFilterControl,ii as EditorImageCropper,Ki as EditorImageFader,_e as EditorOperationControl,si as EditorScroller,ei as EditorSlider,ri as EditorToolbar,ci as ExternalSource,gt as FileItem,de as FilePreview,mi as FileUploaderInline,fi as FileUploaderMinimal,pi as FileUploaderRegular,ne as Icon,Bi as Img,ni as LineLoaderUi,be as LrBtnUi,Xe as MessageBox,ue as Modal,Ns as PACKAGE_NAME,Ds as PACKAGE_VERSION,li as PresenceToggle,Qe as ProgressBar,Je as ProgressBarCommon,hi as Select,ve as ShadowWrapper,le as SimpleBtn,ai as SliderUi,ce as SourceBtn,Hi as SourceList,He as StartFrom,ye as Tabs,ko as UploadCtxProvider,Ye as UploadDetails,qe as UploadList,v as UploaderBlock,Ge as UrlSource,Q as Video,Ho as connectBlocksFrom,Qi as registerBlocks,ui as shadowed,ut as toKebabCase}; \ No newline at end of file diff --git a/web/lr-basic.min.css b/web/lr-basic.min.css index 285cd4813..c112938bd 100644 --- a/web/lr-basic.min.css +++ b/web/lr-basic.min.css @@ -1 +1 @@ -:where(.lr-wgt-cfg,.lr-wgt-common),:host{--cfg-pubkey: "YOUR_PUBLIC_KEY";--cfg-multiple: 1;--cfg-multiple-min: 0;--cfg-multiple-max: 0;--cfg-confirm-upload: 0;--cfg-img-only: 0;--cfg-accept: "";--cfg-external-sources-preferred-types: "";--cfg-store: "auto";--cfg-camera-mirror: 1;--cfg-source-list: "local, url, camera, dropbox, gdrive";--cfg-max-local-file-size-bytes: 0;--cfg-thumb-size: 76;--cfg-show-empty-list: 0;--cfg-use-local-image-editor: 0;--cfg-use-cloud-image-editor: 1;--cfg-remove-copyright: 0;--cfg-modal-scroll-lock: 1;--cfg-modal-backdrop-strokes: 0;--cfg-source-list-wrap: 1;--cfg-init-activity: "start-from";--cfg-done-activity: "";--cfg-remote-tab-session-key: "";--cfg-cdn-cname: "https://ucarecdn.com";--cfg-base-url: "https://upload.uploadcare.com";--cfg-social-base-url: "https://social.uploadcare.com";--cfg-secure-signature: "";--cfg-secure-expire: "";--cfg-secure-delivery-proxy: "";--cfg-retry-throttled-request-max-times: 1;--cfg-multipart-min-file-size: 26214400;--cfg-multipart-chunk-size: 5242880;--cfg-max-concurrent-requests: 10;--cfg-multipart-max-concurrent-requests: 4;--cfg-multipart-max-attempts: 3;--cfg-check-for-url-duplicates: 0;--cfg-save-url-for-recurrent-uploads: 0;--cfg-group-output: 0;--cfg-user-agent-integration: ""}:where(.lr-wgt-icons,.lr-wgt-common),:host{--icon-default: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-file: "m2.89453 1.2012c0-.473389.38376-.857145.85714-.857145h8.40003c.2273 0 .4453.090306.6061.251051l8.4 8.400004c.1607.16074.251.37876.251.60609v13.2c0 .4734-.3837.8571-.8571.8571h-16.80003c-.47338 0-.85714-.3837-.85714-.8571zm1.71429.85714v19.88576h15.08568v-11.4858h-7.5428c-.4734 0-.8572-.3837-.8572-.8571v-7.54286zm8.39998 1.21218 5.4736 5.47353-5.4736.00001z";--icon-close: "m4.60395 4.60395c.29289-.2929.76776-.2929 1.06066 0l6.33539 6.33535 6.3354-6.33535c.2929-.2929.7677-.2929 1.0606 0 .2929.29289.2929.76776 0 1.06066l-6.3353 6.33539 6.3353 6.3354c.2929.2929.2929.7677 0 1.0606s-.7677.2929-1.0606 0l-6.3354-6.3353-6.33539 6.3353c-.2929.2929-.76777.2929-1.06066 0-.2929-.2929-.2929-.7677 0-1.0606l6.33535-6.3354-6.33535-6.33539c-.2929-.2929-.2929-.76777 0-1.06066z";--icon-collapse: "M3.11572 12C3.11572 11.5858 3.45151 11.25 3.86572 11.25H20.1343C20.5485 11.25 20.8843 11.5858 20.8843 12C20.8843 12.4142 20.5485 12.75 20.1343 12.75H3.86572C3.45151 12.75 3.11572 12.4142 3.11572 12Z";--icon-expand: "M12.0001 8.33716L3.53033 16.8068C3.23743 17.0997 2.76256 17.0997 2.46967 16.8068C2.17678 16.5139 2.17678 16.0391 2.46967 15.7462L11.0753 7.14067C11.1943 7.01825 11.3365 6.92067 11.4936 6.8536C11.6537 6.78524 11.826 6.75 12.0001 6.75C12.1742 6.75 12.3465 6.78524 12.5066 6.8536C12.6637 6.92067 12.8059 7.01826 12.925 7.14068L21.5304 15.7462C21.8233 16.0391 21.8233 16.5139 21.5304 16.8068C21.2375 17.0997 20.7627 17.0997 20.4698 16.8068L12.0001 8.33716Z";--icon-info: "M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";--icon-error: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";--icon-arrow-down: "m11.5009 23.0302c.2844.2533.7135.2533.9978 0l9.2899-8.2758c.3092-.2756.3366-.7496.0611-1.0589s-.7496-.3367-1.0589-.0612l-8.0417 7.1639v-19.26834c0-.41421-.3358-.749997-.75-.749997s-.75.335787-.75.749997v19.26704l-8.04025-7.1626c-.30928-.2755-.78337-.2481-1.05889.0612-.27553.3093-.24816.7833.06112 1.0589z";--icon-upload: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-local: "m3 3.75c-.82843 0-1.5.67157-1.5 1.5v13.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-9.75c0-.82843-.6716-1.5-1.5-1.5h-9c-.2634 0-.5076-.13822-.6431-.36413l-2.03154-3.38587zm-3 1.5c0-1.65685 1.34315-3 3-3h6.75c.2634 0 .5076.13822.6431.36413l2.0315 3.38587h8.5754c1.6569 0 3 1.34315 3 3v9.75c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3z";--icon-url: "m19.1099 3.67026c-1.7092-1.70917-4.5776-1.68265-6.4076.14738l-2.2212 2.22122c-.2929.29289-.7678.29289-1.0607 0-.29289-.29289-.29289-.76777 0-1.06066l2.2212-2.22122c2.376-2.375966 6.1949-2.481407 8.5289-.14738l1.2202 1.22015c2.334 2.33403 2.2286 6.15294-.1474 8.52895l-2.2212 2.2212c-.2929.2929-.7678.2929-1.0607 0s-.2929-.7678 0-1.0607l2.2212-2.2212c1.8301-1.83003 1.8566-4.69842.1474-6.40759zm-3.3597 4.57991c.2929.29289.2929.76776 0 1.06066l-6.43918 6.43927c-.29289.2928-.76777.2928-1.06066 0-.29289-.2929-.29289-.7678 0-1.0607l6.43924-6.43923c.2929-.2929.7677-.2929 1.0606 0zm-9.71158 1.17048c.29289.29289.29289.76775 0 1.06065l-2.22123 2.2212c-1.83002 1.8301-1.85654 4.6984-.14737 6.4076l1.22015 1.2202c1.70917 1.7091 4.57756 1.6826 6.40763-.1474l2.2212-2.2212c.2929-.2929.7677-.2929 1.0606 0s.2929.7677 0 1.0606l-2.2212 2.2212c-2.37595 2.376-6.19486 2.4815-8.52889.1474l-1.22015-1.2201c-2.334031-2.3341-2.22859-6.153.14737-8.5289l2.22123-2.22125c.29289-.2929.76776-.2929 1.06066 0z";--icon-camera: "m7.65 2.55c.14164-.18885.36393-.3.6-.3h7.5c.2361 0 .4584.11115.6.3l2.025 2.7h2.625c1.6569 0 3 1.34315 3 3v10.5c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3v-10.5c0-1.65685 1.34315-3 3-3h2.625zm.975 1.2-2.025 2.7c-.14164.18885-.36393.3-.6.3h-3c-.82843 0-1.5.67157-1.5 1.5v10.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-10.5c0-.82843-.6716-1.5-1.5-1.5h-3c-.2361 0-.4584-.11115-.6-.3l-2.025-2.7zm3.375 6c-1.864 0-3.375 1.511-3.375 3.375s1.511 3.375 3.375 3.375 3.375-1.511 3.375-3.375-1.511-3.375-3.375-3.375zm-4.875 3.375c0-2.6924 2.18261-4.875 4.875-4.875 2.6924 0 4.875 2.1826 4.875 4.875s-2.1826 4.875-4.875 4.875c-2.69239 0-4.875-2.1826-4.875-4.875z";--icon-dots: "M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z";--icon-back: "M20.251 12.0001C20.251 12.4143 19.9152 12.7501 19.501 12.7501L6.06696 12.7501L11.7872 18.6007C12.0768 18.8968 12.0715 19.3717 11.7753 19.6613C11.4791 19.9508 11.0043 19.9455 10.7147 19.6493L4.13648 12.9213C4.01578 12.8029 3.91947 12.662 3.85307 12.5065C3.78471 12.3464 3.74947 12.1741 3.74947 12C3.74947 11.8259 3.78471 11.6536 3.85307 11.4935C3.91947 11.338 4.01578 11.1971 4.13648 11.0787L10.7147 4.35068C11.0043 4.0545 11.4791 4.04916 11.7753 4.33873C12.0715 4.62831 12.0768 5.10315 11.7872 5.39932L6.06678 11.2501L19.501 11.2501C19.9152 11.2501 20.251 11.5859 20.251 12.0001Z";--icon-remove: "m6.35673 9.71429c-.76333 0-1.35856.66121-1.27865 1.42031l1.01504 9.6429c.06888.6543.62067 1.1511 1.27865 1.1511h9.25643c.658 0 1.2098-.4968 1.2787-1.1511l1.015-9.6429c.0799-.7591-.5153-1.42031-1.2786-1.42031zm.50041-4.5v.32142h-2.57143c-.71008 0-1.28571.57564-1.28571 1.28572s.57563 1.28571 1.28571 1.28571h15.42859c.7101 0 1.2857-.57563 1.2857-1.28571s-.5756-1.28572-1.2857-1.28572h-2.5714v-.32142c0-1.77521-1.4391-3.21429-3.2143-3.21429h-3.8572c-1.77517 0-3.21426 1.43908-3.21426 3.21429zm7.07146-.64286c.355 0 .6428.28782.6428.64286v.32142h-5.14283v-.32142c0-.35504.28782-.64286.64283-.64286z";--icon-edit: "M3.96371 14.4792c-.15098.151-.25578.3419-.3021.5504L2.52752 20.133c-.17826.8021.53735 1.5177 1.33951 1.3395l5.10341-1.1341c.20844-.0463.39934-.1511.55032-.3021l8.05064-8.0507-5.557-5.55702-8.05069 8.05062ZM13.4286 5.01437l5.557 5.55703 2.0212-2.02111c.6576-.65765.6576-1.72393 0-2.38159l-3.1755-3.17546c-.6577-.65765-1.7239-.65765-2.3816 0l-2.0211 2.02113Z";--icon-detail: "M5,3C3.89,3 3,3.89 3,5V19C3,20.11 3.89,21 5,21H19C20.11,21 21,20.11 21,19V5C21,3.89 20.11,3 19,3H5M5,5H19V19H5V5M7,7V9H17V7H7M7,11V13H17V11H7M7,15V17H14V15H7Z";--icon-select: "M7,10L12,15L17,10H7Z";--icon-check: "m12 22c5.5228 0 10-4.4772 10-10 0-5.52285-4.4772-10-10-10-5.52285 0-10 4.47715-10 10 0 5.5228 4.47715 10 10 10zm4.7071-11.4929-5.9071 5.9071-3.50711-3.5071c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.3906 1.02369-.3906 1.41422 0l2.09289 2.0929 4.4929-4.49294c.3905-.39052 1.0237-.39052 1.4142 0 .3905.39053.3905 1.02374 0 1.41424z";--icon-add: "M12.75 21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21V12.7499H3C2.58579 12.7499 2.25 12.4141 2.25 11.9999C2.25 11.5857 2.58579 11.2499 3 11.2499H11.25V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V11.2499H21C21.4142 11.2499 21.75 11.5857 21.75 11.9999C21.75 12.4141 21.4142 12.7499 21 12.7499H12.75V21Z";--icon-edit-file: "m12.1109 6c.3469-1.69213 1.8444-2.96484 3.6391-2.96484s3.2922 1.27271 3.6391 2.96484h2.314c.4142 0 .75.33578.75.75 0 .41421-.3358.75-.75.75h-2.314c-.3469 1.69213-1.8444 2.9648-3.6391 2.9648s-3.2922-1.27267-3.6391-2.9648h-9.81402c-.41422 0-.75001-.33579-.75-.75 0-.41422.33578-.75.75-.75zm3.6391-1.46484c-1.2232 0-2.2148.99162-2.2148 2.21484s.9916 2.21484 2.2148 2.21484 2.2148-.99162 2.2148-2.21484-.9916-2.21484-2.2148-2.21484zm-11.1391 11.96484c.34691-1.6921 1.84437-2.9648 3.6391-2.9648 1.7947 0 3.2922 1.2727 3.6391 2.9648h9.814c.4142 0 .75.3358.75.75s-.3358.75-.75.75h-9.814c-.3469 1.6921-1.8444 2.9648-3.6391 2.9648-1.79473 0-3.29219-1.2727-3.6391-2.9648h-2.31402c-.41422 0-.75-.3358-.75-.75s.33578-.75.75-.75zm3.6391-1.4648c-1.22322 0-2.21484.9916-2.21484 2.2148s.99162 2.2148 2.21484 2.2148 2.2148-.9916 2.2148-2.2148-.99158-2.2148-2.2148-2.2148z";--icon-remove-file: "m11.9554 3.29999c-.7875 0-1.5427.31281-2.0995.86963-.49303.49303-.79476 1.14159-.85742 1.83037h5.91382c-.0627-.68878-.3644-1.33734-.8575-1.83037-.5568-.55682-1.312-.86963-2.0994-.86963zm4.461 2.7c-.0656-1.08712-.5264-2.11657-1.3009-2.89103-.8381-.83812-1.9749-1.30897-3.1601-1.30897-1.1853 0-2.32204.47085-3.16016 1.30897-.77447.77446-1.23534 1.80391-1.30087 2.89103h-2.31966c-.03797 0-.07529.00282-.11174.00827h-1.98826c-.41422 0-.75.33578-.75.75 0 .41421.33578.75.75.75h1.35v11.84174c0 .7559.30026 1.4808.83474 2.0152.53448.5345 1.25939.8348 2.01526.8348h9.44999c.7559 0 1.4808-.3003 2.0153-.8348.5344-.5344.8347-1.2593.8347-2.0152v-11.84174h1.35c.4142 0 .75-.33579.75-.75 0-.41422-.3358-.75-.75-.75h-1.9883c-.0364-.00545-.0737-.00827-.1117-.00827zm-10.49169 1.50827v11.84174c0 .358.14223.7014.3954.9546.25318.2532.59656.3954.9546.3954h9.44999c.358 0 .7014-.1422.9546-.3954s.3954-.5966.3954-.9546v-11.84174z";--icon-trash-file: var(--icon-remove);--icon-upload-error: var(--icon-error);--icon-fullscreen: "M5,5H10V7H7V10H5V5M14,5H19V10H17V7H14V5M17,14H19V19H14V17H17V14M10,17V19H5V14H7V17H10Z";--icon-fullscreen-exit: "M14,14H19V16H16V19H14V14M5,14H10V19H8V16H5V14M8,5H10V10H5V8H8V5M19,8V10H14V5H16V8H19Z";--icon-badge-success: "M10.5 18.2044L18.0992 10.0207C18.6629 9.41362 18.6277 8.46452 18.0207 7.90082C17.4136 7.33711 16.4645 7.37226 15.9008 7.97933L10.5 13.7956L8.0992 11.2101C7.53549 10.603 6.5864 10.5679 5.97933 11.1316C5.37226 11.6953 5.33711 12.6444 5.90082 13.2515L10.5 18.2044Z";--icon-badge-error: "m13.6 18.4c0 .8837-.7164 1.6-1.6 1.6-.8837 0-1.6-.7163-1.6-1.6s.7163-1.6 1.6-1.6c.8836 0 1.6.7163 1.6 1.6zm-1.6-13.9c.8284 0 1.5.67157 1.5 1.5v7c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5v-7c0-.82843.6716-1.5 1.5-1.5z";--icon-about: "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-.922.163-.241.369-.419.617-.532.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.72-.1.216-.234.408-.405.574a3.48 3.48 0 0 1-.575.453c-.33.199-.613.42-.847.66-.234.242-.415.558-.543.949-.125.39-.19.916-.197 1.577ZM11.205 17.15c.21.206.46.31.75.31.196 0 .374-.049.534-.144.16-.096.287-.224.383-.384.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";--icon-edit-rotate: "M16.89,15.5L18.31,16.89C19.21,15.73 19.76,14.39 19.93,13H17.91C17.77,13.87 17.43,14.72 16.89,15.5M13,17.9V19.92C14.39,19.75 15.74,19.21 16.9,18.31L15.46,16.87C14.71,17.41 13.87,17.76 13,17.9M19.93,11C19.76,9.61 19.21,8.27 18.31,7.11L16.89,8.53C17.43,9.28 17.77,10.13 17.91,11M15.55,5.55L11,1V4.07C7.06,4.56 4,7.92 4,12C4,16.08 7.05,19.44 11,19.93V17.91C8.16,17.43 6,14.97 6,12C6,9.03 8.16,6.57 11,6.09V10L15.55,5.55Z";--icon-edit-flip-v: "M3 15V17H5V15M15 19V21H17V19M19 3H5C3.9 3 3 3.9 3 5V9H5V5H19V9H21V5C21 3.9 20.1 3 19 3M21 19H19V21C20.1 21 21 20.1 21 19M1 11V13H23V11M7 19V21H9V19M19 15V17H21V15M11 19V21H13V19M3 19C3 20.1 3.9 21 5 21V19Z";--icon-edit-flip-h: "M15 21H17V19H15M19 9H21V7H19M3 5V19C3 20.1 3.9 21 5 21H9V19H5V5H9V3H5C3.9 3 3 3.9 3 5M19 3V5H21C21 3.9 20.1 3 19 3M11 23H13V1H11M19 17H21V15H19M15 5H17V3H15M19 13H21V11H19M19 21C20.1 21 21 20.1 21 19H19Z";--icon-edit-brightness: "M12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6A6,6 0 0,1 18,12A6,6 0 0,1 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z";--icon-edit-contrast: "M12,20C9.79,20 7.79,19.1 6.34,17.66L17.66,6.34C19.1,7.79 20,9.79 20,12A8,8 0 0,1 12,20M6,8H8V6H9.5V8H11.5V9.5H9.5V11.5H8V9.5H6M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,16H17V14.5H12V16Z";--icon-edit-saturation: "M3,13A9,9 0 0,0 12,22C12,17 7.97,13 3,13M12,5.5A2.5,2.5 0 0,1 14.5,8A2.5,2.5 0 0,1 12,10.5A2.5,2.5 0 0,1 9.5,8A2.5,2.5 0 0,1 12,5.5M5.6,10.25A2.5,2.5 0 0,0 8.1,12.75C8.63,12.75 9.12,12.58 9.5,12.31C9.5,12.37 9.5,12.43 9.5,12.5A2.5,2.5 0 0,0 12,15A2.5,2.5 0 0,0 14.5,12.5C14.5,12.43 14.5,12.37 14.5,12.31C14.88,12.58 15.37,12.75 15.9,12.75C17.28,12.75 18.4,11.63 18.4,10.25C18.4,9.25 17.81,8.4 16.97,8C17.81,7.6 18.4,6.74 18.4,5.75C18.4,4.37 17.28,3.25 15.9,3.25C15.37,3.25 14.88,3.41 14.5,3.69C14.5,3.63 14.5,3.56 14.5,3.5A2.5,2.5 0 0,0 12,1A2.5,2.5 0 0,0 9.5,3.5C9.5,3.56 9.5,3.63 9.5,3.69C9.12,3.41 8.63,3.25 8.1,3.25A2.5,2.5 0 0,0 5.6,5.75C5.6,6.74 6.19,7.6 7.03,8C6.19,8.4 5.6,9.25 5.6,10.25M12,22A9,9 0 0,0 21,13C16,13 12,17 12,22Z";--icon-edit-crop: "M7,17V1H5V5H1V7H5V17A2,2 0 0,0 7,19H17V23H19V19H23V17M17,15H19V7C19,5.89 18.1,5 17,5H9V7H17V15Z";--icon-edit-text: "M18.5,4L19.66,8.35L18.7,8.61C18.25,7.74 17.79,6.87 17.26,6.43C16.73,6 16.11,6 15.5,6H13V16.5C13,17 13,17.5 13.33,17.75C13.67,18 14.33,18 15,18V19H9V18C9.67,18 10.33,18 10.67,17.75C11,17.5 11,17 11,16.5V6H8.5C7.89,6 7.27,6 6.74,6.43C6.21,6.87 5.75,7.74 5.3,8.61L4.34,8.35L5.5,4H18.5Z";--icon-edit-draw: "m21.879394 2.1631238c-1.568367-1.62768627-4.136546-1.53831744-5.596267.1947479l-8.5642801 10.1674753c-1.4906533-.224626-3.061232.258204-4.2082427 1.448604-1.0665468 1.106968-1.0997707 2.464806-1.1203996 3.308068-.00142.05753-.00277.113001-.00439.16549-.02754.894146-.08585 1.463274-.5821351 2.069648l-.80575206.98457.88010766.913285c1.0539516 1.093903 2.6691689 1.587048 4.1744915 1.587048 1.5279113 0 3.2235468-.50598 4.4466094-1.775229 1.147079-1.190514 1.612375-2.820653 1.395772-4.367818l9.796763-8.8879697c1.669907-1.5149954 1.75609-4.1802333.187723-5.8079195zm-16.4593821 13.7924592c.8752943-.908358 2.2944227-.908358 3.1697054 0 .8752942.908358.8752942 2.381259 0 3.289617-.5909138.61325-1.5255389.954428-2.53719.954428-.5223687 0-.9935663-.09031-1.3832112-.232762.3631253-.915463.3952949-1.77626.4154309-2.429737.032192-1.045425.072224-1.308557.3352649-1.581546z";--icon-edit-guides: "M1.39,18.36L3.16,16.6L4.58,18L5.64,16.95L4.22,15.54L5.64,14.12L8.11,16.6L9.17,15.54L6.7,13.06L8.11,11.65L9.53,13.06L10.59,12L9.17,10.59L10.59,9.17L13.06,11.65L14.12,10.59L11.65,8.11L13.06,6.7L14.47,8.11L15.54,7.05L14.12,5.64L15.54,4.22L18,6.7L19.07,5.64L16.6,3.16L18.36,1.39L22.61,5.64L5.64,22.61L1.39,18.36Z";--icon-edit-color: "M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z";--icon-edit-resize: "M10.59,12L14.59,8H11V6H18V13H16V9.41L12,13.41V16H20V4H8V12H10.59M22,2V18H12V22H2V12H6V2H22M10,14H4V20H10V14Z";--icon-external-source-placeholder: "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";--icon-facebook: "m12 1.5c-5.79901 0-10.5 4.70099-10.5 10.5 0 4.9427 3.41586 9.0888 8.01562 10.2045v-6.1086h-2.13281c-.41421 0-.75-.3358-.75-.75v-3.2812c0-.4142.33579-.75.75-.75h2.13281v-1.92189c0-.95748.22571-2.51089 1.38068-3.6497 1.1934-1.17674 3.1742-1.71859 6.2536-1.05619.3455.07433.5923.3798.5923.73323v2.75395c0 .41422-.3358.75-.75.75-.6917 0-1.2029.02567-1.5844.0819-.3865.05694-.5781.13711-.675.20223-.1087.07303-.2367.20457-.2367 1.02837v1.0781h2.3906c.2193 0 .4275.0959.57.2626.1425.1666.205.3872.1709.6038l-.5156 3.2813c-.0573.3647-.3716.6335-.7409.6335h-1.875v6.1058c4.5939-1.1198 8.0039-5.2631 8.0039-10.2017 0-5.79901-4.701-10.5-10.5-10.5zm-12 10.5c0-6.62744 5.37256-12 12-12 6.6274 0 12 5.37256 12 12 0 5.9946-4.3948 10.9614-10.1384 11.8564-.2165.0337-.4369-.0289-.6033-.1714s-.2622-.3506-.2622-.5697v-7.7694c0-.4142.3358-.75.75-.75h1.9836l.28-1.7812h-2.2636c-.4142 0-.75-.3358-.75-.75v-1.8281c0-.82854.0888-1.72825.9-2.27338.3631-.24396.8072-.36961 1.293-.4412.3081-.0454.6583-.07238 1.0531-.08618v-1.39629c-2.4096-.40504-3.6447.13262-4.2928.77165-.7376.72735-.9338 1.79299-.9338 2.58161v2.67189c0 .4142-.3358.75-.75.75h-2.13279v1.7812h2.13279c.4142 0 .75.3358.75.75v7.7712c0 .219-.0956.427-.2619.5695-.1662.1424-.3864.2052-.6028.1717-5.74968-.8898-10.1509-5.8593-10.1509-11.8583z";--icon-dropbox: "m6.01895 1.92072c.24583-.15659.56012-.15658.80593.00003l5.17512 3.29711 5.1761-3.29714c.2458-.15659.5601-.15658.8059.00003l5.5772 3.55326c.2162.13771.347.37625.347.63253 0 .25629-.1308.49483-.347.63254l-4.574 2.91414 4.574 2.91418c.2162.1377.347.3762.347.6325s-.1308.4948-.347.6325l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.1761-3.2971-5.17512 3.2971c-.24581.1566-.5601.1566-.80593 0l-5.578142-3.5532c-.216172-.1377-.347058-.3763-.347058-.6326s.130886-.4949.347058-.6326l4.574772-2.91408-4.574772-2.91411c-.216172-.1377-.347058-.37626-.347058-.63257 0-.2563.130886-.49486.347058-.63256zm.40291 8.61518-4.18213 2.664 4.18213 2.664 4.18144-2.664zm6.97504 2.664 4.1821 2.664 4.1814-2.664-4.1814-2.664zm2.7758-3.54668-4.1727 2.65798-4.17196-2.65798 4.17196-2.658zm1.4063-.88268 4.1814-2.664-4.1814-2.664-4.1821 2.664zm-6.9757-2.664-4.18144-2.664-4.18213 2.664 4.18213 2.664zm-4.81262 12.43736c.22254-.3494.68615-.4522 1.03551-.2297l5.17521 3.2966 5.1742-3.2965c.3493-.2226.813-.1198 1.0355.2295.2226.3494.1198.813-.2295 1.0355l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.57819-3.5532c-.34936-.2226-.45216-.6862-.22963-1.0355z";--icon-gdrive: "m7.73633 1.81806c.13459-.22968.38086-.37079.64707-.37079h7.587c.2718 0 .5223.14697.6548.38419l7.2327 12.94554c.1281.2293.1269.5089-.0031.7371l-3.7935 6.6594c-.1334.2342-.3822.3788-.6517.3788l-14.81918.0004c-.26952 0-.51831-.1446-.65171-.3788l-3.793526-6.6598c-.1327095-.233-.130949-.5191.004617-.7504zm.63943 1.87562-6.71271 11.45452 2.93022 5.1443 6.65493-11.58056zm3.73574 6.52652-2.39793 4.1727 4.78633.0001zm4.1168 4.1729 5.6967-.0002-6.3946-11.44563h-5.85354zm5.6844 1.4998h-13.06111l-2.96515 5.1598 13.08726-.0004z";--icon-gphotos: "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";--icon-instagram: "M6.225 12a5.775 5.775 0 1 1 11.55 0 5.775 5.775 0 0 1-11.55 0zM12 7.725a4.275 4.275 0 1 0 0 8.55 4.275 4.275 0 0 0 0-8.55zM18.425 6.975a1.4 1.4 0 1 0 0-2.8 1.4 1.4 0 0 0 0 2.8zM11.958.175h.084c2.152 0 3.823 0 5.152.132 1.35.134 2.427.41 3.362 1.013a7.15 7.15 0 0 1 2.124 2.124c.604.935.88 2.012 1.013 3.362.132 1.329.132 3 .132 5.152v.084c0 2.152 0 3.823-.132 5.152-.134 1.35-.41 2.427-1.013 3.362a7.15 7.15 0 0 1-2.124 2.124c-.935.604-2.012.88-3.362 1.013-1.329.132-3 .132-5.152.132h-.084c-2.152 0-3.824 0-5.153-.132-1.35-.134-2.427-.409-3.36-1.013a7.15 7.15 0 0 1-2.125-2.124C.716 19.62.44 18.544.307 17.194c-.132-1.329-.132-3-.132-5.152v-.084c0-2.152 0-3.823.132-5.152.133-1.35.409-2.427 1.013-3.362A7.15 7.15 0 0 1 3.444 1.32C4.378.716 5.456.44 6.805.307c1.33-.132 3-.132 5.153-.132zM6.953 1.799c-1.234.123-2.043.36-2.695.78A5.65 5.65 0 0 0 2.58 4.26c-.42.65-.657 1.46-.78 2.695C1.676 8.2 1.675 9.797 1.675 12c0 2.203 0 3.8.124 5.046.123 1.235.36 2.044.78 2.696a5.649 5.649 0 0 0 1.68 1.678c.65.421 1.46.658 2.694.78 1.247.124 2.844.125 5.047.125s3.8 0 5.046-.124c1.235-.123 2.044-.36 2.695-.78a5.648 5.648 0 0 0 1.68-1.68c.42-.65.657-1.46.78-2.694.123-1.247.124-2.844.124-5.047s-.001-3.8-.125-5.046c-.122-1.235-.359-2.044-.78-2.695a5.65 5.65 0 0 0-1.679-1.68c-.651-.42-1.46-.657-2.695-.78-1.246-.123-2.843-.124-5.046-.124-2.203 0-3.8 0-5.047.124z";--icon-flickr: "M5.95874 7.92578C3.66131 7.92578 1.81885 9.76006 1.81885 11.9994C1.81885 14.2402 3.66145 16.0744 5.95874 16.0744C8.26061 16.0744 10.1039 14.2396 10.1039 11.9994C10.1039 9.76071 8.26074 7.92578 5.95874 7.92578ZM0.318848 11.9994C0.318848 8.91296 2.85168 6.42578 5.95874 6.42578C9.06906 6.42578 11.6039 8.91232 11.6039 11.9994C11.6039 15.0877 9.06919 17.5744 5.95874 17.5744C2.85155 17.5744 0.318848 15.0871 0.318848 11.9994ZM18.3898 7.92578C16.0878 7.92578 14.2447 9.76071 14.2447 11.9994C14.2447 14.2396 16.088 16.0744 18.3898 16.0744C20.6886 16.0744 22.531 14.2401 22.531 11.9994C22.531 9.76019 20.6887 7.92578 18.3898 7.92578ZM12.7447 11.9994C12.7447 8.91232 15.2795 6.42578 18.3898 6.42578C21.4981 6.42578 24.031 8.91283 24.031 11.9994C24.031 15.0872 21.4982 17.5744 18.3898 17.5744C15.2794 17.5744 12.7447 15.0877 12.7447 11.9994Z";--icon-vk: var(--icon-external-source-placeholder);--icon-evernote: "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.276.01-.039.018-.078.022-.105.011-.061.023-.14.034-.23.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-.576-.097-.015-.18-.028-.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-.915.197.193.412.357.627.493a5.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.235-.212-.103-.5-.174-.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.996ZM15.638 11.626a.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";--icon-box: "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";--icon-onedrive: "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";--icon-huddle: "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"}:where(.lr-wgt-l10n_en-US,.lr-wgt-common),:host{--l10n-locale-name: "en-US";--l10n-upload-file: "Upload file";--l10n-upload-files: "Upload files";--l10n-choose-file: "Choose file";--l10n-choose-files: "Choose files";--l10n-drop-files-here: "Drop files here";--l10n-select-file-source: "Select file source";--l10n-selected: "Selected";--l10n-upload: "Upload";--l10n-add-more: "Add more";--l10n-cancel: "Cancel";--l10n-clear: "Clear";--l10n-camera-shot: "Shot";--l10n-upload-url: "Import";--l10n-upload-url-placeholder: "Paste link here";--l10n-edit-image: "Edit image";--l10n-edit-detail: "Details";--l10n-back: "Back";--l10n-done: "Done";--l10n-ok: "Ok";--l10n-remove-from-list: "Remove";--l10n-no: "No";--l10n-yes: "Yes";--l10n-confirm-your-action: "Confirm your action";--l10n-are-you-sure: "Are you sure?";--l10n-selected-count: "Selected:";--l10n-upload-error: "Upload error";--l10n-validation-error: "Validation error";--l10n-no-files: "No files selected";--l10n-browse: "Browse";--l10n-not-uploaded-yet: "Not uploaded yet...";--l10n-file__one: "file";--l10n-file__other: "files";--l10n-error__one: "error";--l10n-error__other: "errors";--l10n-header-uploading: "Uploading {{count}} {{plural:file(count)}}";--l10n-header-failed: "{{count}} {{plural:error(count)}}";--l10n-header-succeed: "{{count}} {{plural:file(count)}} uploaded";--l10n-header-total: "{{count}} {{plural:file(count)}} selected";--l10n-src-type-local: "From device";--l10n-src-type-from-url: "From link";--l10n-src-type-camera: "Camera";--l10n-src-type-draw: "Draw";--l10n-src-type-facebook: "Facebook";--l10n-src-type-dropbox: "Dropbox";--l10n-src-type-gdrive: "Google Drive";--l10n-src-type-gphotos: "Google Photos";--l10n-src-type-instagram: "Instagram";--l10n-src-type-flickr: "Flickr";--l10n-src-type-vk: "VK";--l10n-src-type-evernote: "Evernote";--l10n-src-type-box: "Box";--l10n-src-type-onedrive: "Onedrive";--l10n-src-type-huddle: "Huddle";--l10n-src-type-other: "Other";--l10n-src-type: var(--l10n-src-type-local);--l10n-caption-from-url: "Import from link";--l10n-caption-camera: "Camera";--l10n-caption-draw: "Draw";--l10n-caption-edit-file: "Edit file";--l10n-file-no-name: "No name...";--l10n-toggle-fullscreen: "Toggle fullscreen";--l10n-toggle-guides: "Toggle guides";--l10n-rotate: "Rotate";--l10n-flip-vertical: "Flip vertical";--l10n-flip-horizontal: "Flip horizontal";--l10n-brightness: "Brightness";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-resize: "Resize image";--l10n-crop: "Crop";--l10n-select-color: "Select color";--l10n-text: "Text";--l10n-draw: "Draw";--l10n-cancel-edit: "Cancel edit";--l10n-tab-view: "Preview";--l10n-tab-details: "Details";--l10n-file-name: "Name";--l10n-file-size: "Size";--l10n-cdn-url: "CDN URL";--l10n-file-size-unknown: "Unknown";--l10n-camera-permissions-denied: "Camera access denied";--l10n-camera-permissions-prompt: "Please allow access to the camera";--l10n-camera-permissions-request: "Request access";--l10n-files-count-limit-error-title: "Files count limit overflow";--l10n-files-count-limit-error-too-few: "You\2019ve chosen {{total}}. At least {{min}} required.";--l10n-files-count-limit-error-too-many: "You\2019ve chosen too many files. {{max}} is maximum.";--l10n-files-count-minimum: "At least {{count}} files are required";--l10n-files-count-allowed: "Only {{count}} files are allowed";--l10n-files-max-size-limit-error: "File is too big. Max file size is {{maxFileSize}}.";--l10n-has-validation-errors: "File validation error ocurred. Please, check your files before upload.";--l10n-images-only-accepted: "Only image files are accepted.";--l10n-file-type-not-allowed: "Uploading of these file types is not allowed."}:where(.lr-wgt-theme,.lr-wgt-common),:host{--darkmode: 0;--h-foreground: 208;--s-foreground: 4%;--l-foreground: calc(10% + 78% * var(--darkmode));--h-background: 208;--s-background: 4%;--l-background: calc(97% - 85% * var(--darkmode));--h-accent: 211;--s-accent: 100%;--l-accent: calc(50% - 5% * var(--darkmode));--h-confirm: 137;--s-confirm: 85%;--l-confirm: 53%;--h-error: 358;--s-error: 100%;--l-error: 66%;--shadows: 1;--h-shadow: 0;--s-shadow: 0%;--l-shadow: 0%;--opacity-normal: .6;--opacity-hover: .9;--opacity-active: 1;--ui-size: 32px;--gap-min: 2px;--gap-small: 4px;--gap-mid: 10px;--gap-max: 20px;--gap-table: 0px;--borders: 1;--border-radius-element: 8px;--border-radius-frame: 12px;--border-radius-thumb: 6px;--transition-duration: .2s;--modal-max-w: 800px;--modal-max-h: 600px;--modal-normal-w: 430px;--darkmode-minus: calc(1 + var(--darkmode) * -2);--clr-background: hsl(var(--h-background), var(--s-background), var(--l-background));--clr-background-dark: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-background-light: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 3% * var(--darkmode-minus)) );--clr-accent: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 15% * var(--darkmode)));--clr-accent-light: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 30%);--clr-accent-lightest: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 10%);--clr-accent-light-opaque: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 45% * var(--darkmode-minus)));--clr-accent-lightest-opaque: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) + 47% * var(--darkmode-minus)) );--clr-confirm: hsl(var(--h-confirm), var(--s-confirm), var(--l-confirm));--clr-error: hsl(var(--h-error), var(--s-error), var(--l-error));--clr-error-light: hsla(var(--h-error), var(--s-error), var(--l-error), 15%);--clr-error-lightest: hsla(var(--h-error), var(--s-error), var(--l-error), 5%);--clr-error-message-bgr: hsl(var(--h-error), var(--s-error), calc(var(--l-error) + 60% * var(--darkmode-minus)));--clr-txt: hsl(var(--h-foreground), var(--s-foreground), var(--l-foreground));--clr-txt-mid: hsl(var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 20% * var(--darkmode-minus)));--clr-txt-light: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 30% * var(--darkmode-minus)) );--clr-txt-lightest: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 50% * var(--darkmode-minus)) );--clr-shade-lv1: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 5%);--clr-shade-lv2: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 8%);--clr-shade-lv3: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 12%);--clr-generic-file-icon: var(--clr-txt-lightest);--border-light: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.1 - .05 * var(--darkmode)) * var(--borders)) );--border-mid: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.2 - .1 * var(--darkmode)) * var(--borders)) );--border-accent: 1px solid hsla(var(--h-accent), var(--s-accent), var(--l-accent), 1 * var(--borders));--border-dashed: 1px dashed hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), calc(.2 * var(--borders)));--clr-curtain: hsla(var(--h-background), var(--s-background), calc(var(--l-background)), 60%);--hsl-shadow: var(--h-shadow), var(--s-shadow), var(--l-shadow);--modal-shadow: 0px 0px 1px hsla(var(--hsl-shadow), calc((.3 + .65 * var(--darkmode)) * var(--shadows))), 0px 6px 20px hsla(var(--hsl-shadow), calc((.1 + .4 * var(--darkmode)) * var(--shadows)));--clr-btn-bgr-primary: var(--clr-accent);--clr-btn-bgr-primary-hover: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 4% * var(--darkmode-minus)) );--clr-btn-bgr-primary-active: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 8% * var(--darkmode-minus)) );--clr-btn-txt-primary: hsl(var(--h-accent), var(--s-accent), 98%);--shadow-btn-primary: none;--clr-btn-bgr-secondary: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-hover: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 7% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-active: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 12% * var(--darkmode-minus)) );--clr-btn-txt-secondary: var(--clr-txt-mid);--shadow-btn-secondary: none;--clr-btn-bgr-disabled: var(--clr-background);--clr-btn-txt-disabled: var(--clr-txt-lightest);--shadow-btn-disabled: none}@media only screen and (max-height: 600px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-h: 100%}}@media only screen and (max-width: 430px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-w: 100vw;--modal-max-h: var(--uploadcare-blocks-window-height)}}:where(.lr-wgt-theme,.lr-wgt-common),:host{color:var(--clr-txt);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}:where(.lr-wgt-theme,.lr-wgt-common) *,:host *{box-sizing:border-box}:where(.lr-wgt-theme,.lr-wgt-common) [hidden],:host [hidden]{display:none!important}:where(.lr-wgt-theme,.lr-wgt-common) [activity]:not([active]),:host [activity]:not([active]){display:none}:where(.lr-wgt-theme,.lr-wgt-common) dialog:not([open]) [activity],:host dialog:not([open]) [activity]{display:none}:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{display:flex;align-items:center;justify-content:center;height:var(--ui-size);padding-right:1.4em;padding-left:1.4em;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--border-radius-element);cursor:pointer;user-select:none}@media only screen and (max-width: 800px){:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{padding-right:1em;padding-left:1em}}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn,:host button.primary-btn{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary);box-shadow:var(--shadow-btn-primary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:hover,:host button.primary-btn:hover{background-color:var(--clr-btn-bgr-primary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:active,:host button.primary-btn:active{background-color:var(--clr-btn-bgr-primary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn,:host button.secondary-btn{color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:hover,:host button.secondary-btn:hover{background-color:var(--clr-btn-bgr-secondary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:active,:host button.secondary-btn:active{background-color:var(--clr-btn-bgr-secondary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn,:host button.mini-btn{width:var(--ui-size);height:var(--ui-size);padding:0;background-color:transparent;border:none;cursor:pointer;transition:var(--transition-duration) ease;color:var(--clr-txt)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:hover,:host button.mini-btn:hover{background-color:var(--clr-shade-lv1)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:active,:host button.mini-btn:active{background-color:var(--clr-shade-lv2)}:where(.lr-wgt-theme,.lr-wgt-common) :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]),:host :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]){color:var(--clr-btn-txt-disabled);background-color:var(--clr-btn-bgr-disabled);box-shadow:var(--shadow-btn-disabled);pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) a,:host a{color:var(--clr-accent);text-decoration:none}:where(.lr-wgt-theme,.lr-wgt-common) a[disabled],:host a[disabled]{pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]{display:flex;width:100%;height:var(--ui-size);padding-right:.6em;padding-left:.6em;color:var(--clr-txt);font-size:1em;font-family:inherit;background-color:var(--clr-background-light);border:var(--border-light);border-radius:var(--border-radius-element);transition:var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]::placeholder{color:var(--clr-txt-lightest)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:hover,:host input[type=text]:hover{border-color:var(--clr-accent-light)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:focus,:host input[type=text]:focus{border-color:var(--clr-accent);outline:none}:where(.lr-wgt-theme,.lr-wgt-common) input[disabled],:host input[disabled]{opacity:.6;pointer-events:none}lr-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size)}lr-icon svg{width:calc(var(--ui-size) / 2);height:calc(var(--ui-size) / 2)}lr-icon:not([raw]) path{fill:currentColor}lr-tabs{display:grid;grid-template-rows:min-content minmax(var(--ui-size),auto);height:100%;overflow:hidden;color:var(--clr-txt-lightest)}lr-tabs>.tabs-row{display:flex;grid-template-columns:minmax();background-color:var(--clr-background-light)}lr-tabs>.tabs-context{overflow-y:auto}lr-tabs .tabs-row>.tab{display:flex;flex-grow:1;align-items:center;justify-content:center;height:var(--ui-size);border-bottom:var(--border-light);cursor:pointer;transition:var(--transition-duration)}lr-tabs .tabs-row>.tab[current]{color:var(--clr-txt);border-color:var(--clr-txt)}lr-range{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--ui-size)}lr-range datalist{display:none}lr-range input{width:100%;height:100%;opacity:0}lr-range .track-wrapper{position:absolute;right:10px;left:10px;display:flex;align-items:center;justify-content:center;height:2px;user-select:none;pointer-events:none}lr-range .track{position:absolute;right:0;left:0;display:flex;align-items:center;justify-content:center;height:2px;background-color:currentColor;border-radius:2px;opacity:.5}lr-range .slider{position:absolute;width:16px;height:16px;background-color:currentColor;border-radius:100%;transform:translate(-50%)}lr-range .bar{position:absolute;left:0;height:100%;background-color:currentColor;border-radius:2px}lr-range .caption{position:absolute;display:inline-flex;justify-content:center}lr-color{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size);overflow:hidden;background-color:var(--clr-background);cursor:pointer}lr-color[current]{background-color:var(--clr-txt)}lr-color input[type=color]{position:absolute;display:block;width:100%;height:100%;opacity:0}lr-color .current-color{position:absolute;width:50%;height:50%;border:2px solid #fff;border-radius:100%;pointer-events:none}lr-config{display:none}lr-simple-btn{position:relative;display:inline-flex}lr-simple-btn button{padding-left:.2em!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-simple-btn button lr-icon svg{transform:scale(.8)}lr-simple-btn button:hover{background-color:var(--clr-btn-bgr-secondary-hover)}lr-simple-btn button:active{background-color:var(--clr-btn-bgr-secondary-active)}lr-simple-btn>lr-drop-area{display:contents}lr-simple-btn .visual-drop-area{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--gap-min);border:var(--border-dashed);border-radius:inherit;opacity:0;transition:border-color var(--transition-duration) ease,background-color var(--transition-duration) ease,opacity var(--transition-duration) ease}lr-simple-btn .visual-drop-area:before{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--clr-txt-light);background-color:var(--clr-background);border-radius:inherit;content:var(--l10n-drop-files-here)}lr-simple-btn>lr-drop-area[drag-state=active] .visual-drop-area{background-color:var(--clr-accent-lightest);opacity:1}lr-simple-btn>lr-drop-area[drag-state=inactive] .visual-drop-area{background-color:var(--clr-shade-lv1);opacity:0}lr-simple-btn>lr-drop-area[drag-state=near] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent-light);opacity:1}lr-simple-btn>lr-drop-area[drag-state=over] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent);opacity:1}lr-simple-btn>:where(lr-drop-area[drag-state="active"],lr-drop-area[drag-state="near"],lr-drop-area[drag-state="over"]) button{box-shadow:none}lr-simple-btn>lr-drop-area:after{content:""}lr-source-btn{display:flex;align-items:center;margin-bottom:var(--gap-min);padding:var(--gap-min) var(--gap-mid);color:var(--clr-txt-mid);border-radius:var(--border-radius-element);cursor:pointer;transition-duration:var(--transition-duration);transition-property:background-color,color;user-select:none}lr-source-btn:hover{color:var(--clr-accent);background-color:var(--clr-accent-lightest)}lr-source-btn:active{color:var(--clr-accent);background-color:var(--clr-accent-light)}lr-source-btn lr-icon{display:inline-flex;flex-grow:1;justify-content:center;min-width:var(--ui-size);margin-right:var(--gap-mid);opacity:.8}lr-source-btn[type=local]>.txt:after{content:var(--l10n-local-files)}lr-source-btn[type=camera]>.txt:after{content:var(--l10n-camera)}lr-source-btn[type=url]>.txt:after{content:var(--l10n-from-url)}lr-source-btn[type=other]>.txt:after{content:var(--l10n-other)}lr-source-btn .txt{display:flex;align-items:center;box-sizing:border-box;width:100%;height:var(--ui-size);padding:0;white-space:nowrap;border:none}lr-drop-area{padding:var(--gap-min);overflow:hidden;border:var(--border-dashed);border-radius:var(--border-radius-frame);transition:var(--transition-duration) ease}lr-drop-area,lr-drop-area .content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}lr-drop-area .text{position:relative;margin:var(--gap-mid);color:var(--clr-txt-light);transition:var(--transition-duration) ease}lr-drop-area[ghost][drag-state=inactive]{display:none;opacity:0}lr-drop-area[ghost]:not([fullscreen]):is([drag-state="active"],[drag-state="near"],[drag-state="over"]){background:var(--clr-background)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) :is(.text,.icon-container){color:var(--clr-accent)}lr-drop-area:is([drag-state="active"],[drag-state="near"],[drag-state="over"],:hover){color:var(--clr-accent);background:var(--clr-accent-lightest);border-color:var(--clr-accent-light)}lr-drop-area:is([drag-state="active"],[drag-state="near"]){opacity:1}lr-drop-area[drag-state=over]{border-color:var(--clr-accent);opacity:1}lr-drop-area[with-icon]{min-height:calc(var(--ui-size) * 6)}lr-drop-area[with-icon] .content-wrapper{display:flex;flex-direction:column}lr-drop-area[with-icon] .text{color:var(--clr-txt);font-weight:500;font-size:1.1em}lr-drop-area[with-icon] .icon-container{position:relative;width:calc(var(--ui-size) * 2);height:calc(var(--ui-size) * 2);margin:var(--gap-mid);overflow:hidden;color:var(--clr-txt);background-color:var(--clr-background);border-radius:50%;transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon{position:absolute;top:calc(50% - var(--ui-size) / 2);left:calc(50% - var(--ui-size) / 2);transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon:last-child{transform:translateY(calc(var(--ui-size) * 1.5))}lr-drop-area[with-icon]:hover .icon-container,lr-drop-area[with-icon]:hover .text{color:var(--clr-accent)}lr-drop-area[with-icon]:hover .icon-container{background-color:var(--clr-accent-lightest)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .icon-container{color:#fff;background-color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .text{color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:last-child{transform:translateY(0)}lr-drop-area[with-icon]>.content-wrapper[drag-state=near] lr-icon:last-child{transform:scale(1.3)}lr-drop-area[with-icon]>.content-wrapper[drag-state=over] lr-icon:last-child{transform:scale(1.5)}lr-drop-area[fullscreen]{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--gap-mid) * 2);height:calc(100vh - var(--gap-mid) * 2);margin:var(--gap-mid)}lr-drop-area[fullscreen] .content-wrapper{width:100%;max-width:calc(var(--modal-normal-w) * .8);height:calc(var(--ui-size) * 6);color:var(--clr-txt);background-color:var(--clr-background-light);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:var(--transition-duration) ease}lr-drop-area[with-icon][fullscreen][drag-state=active]>.content-wrapper,lr-drop-area[with-icon][fullscreen][drag-state=near]>.content-wrapper{transform:translateY(var(--gap-mid));opacity:0}lr-drop-area[with-icon][fullscreen][drag-state=over]>.content-wrapper{transform:translateY(0);opacity:1}:is(lr-drop-area[with-icon][fullscreen])>.content-wrapper lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-modal{--modal-max-content-height: calc(var(--uploadcare-blocks-window-height, 100vh) - 4 * var(--gap-mid) - var(--ui-size));--modal-content-height-fill: var(--uploadcare-blocks-window-height, 100vh)}lr-modal[dialog-fallback]{--lr-z-max: 2147483647;position:fixed;z-index:var(--lr-z-max);display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;pointer-events:none;inset:0}lr-modal[dialog-fallback] dialog[open]{z-index:var(--lr-z-max);pointer-events:auto}lr-modal[dialog-fallback] dialog[open]+.backdrop{position:fixed;top:0;left:0;z-index:calc(var(--lr-z-max) - 1);align-items:center;justify-content:center;width:100vw;height:100vh;background-color:var(--clr-curtain);pointer-events:auto}lr-modal[strokes][dialog-fallback] dialog[open]+.backdrop{background-image:var(--modal-backdrop-background-image)}@supports selector(dialog::backdrop){lr-modal>dialog::backdrop{background-color:#0000001a}lr-modal[strokes]>dialog::backdrop{background-image:var(--modal-backdrop-background-image)}}lr-modal>dialog[open]{transform:translateY(0);visibility:visible;opacity:1}lr-modal>dialog:not([open]){transform:translateY(20px);visibility:hidden;opacity:0}lr-modal>dialog{display:flex;flex-direction:column;width:max-content;max-width:min(calc(100% - var(--gap-mid) * 2),calc(var(--modal-max-w) - var(--gap-mid) * 2));min-height:var(--ui-size);max-height:calc(var(--modal-max-h) - var(--gap-mid) * 2);margin:auto;padding:0;overflow:hidden;background-color:var(--clr-background-light);border:0;border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:transform calc(var(--transition-duration) * 2)}@media only screen and (max-width: 430px),only screen and (max-height: 600px){lr-modal>dialog>.content{height:var(--modal-max-content-height)}}lr-url-source{display:block;background-color:var(--clr-background-light)}lr-modal lr-url-source{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-url-source>.content{display:grid;grid-gap:var(--gap-small);grid-template-columns:1fr min-content;padding:var(--gap-mid);padding-top:0}lr-url-source .url-input{display:flex}lr-url-source .url-upload-btn:after{content:var(--l10n-upload-url)}lr-camera-source{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;overflow:hidden;background-color:var(--clr-background-light);border-radius:var(--border-radius-element)}lr-modal lr-camera-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:100vh;max-height:var(--modal-max-content-height)}lr-camera-source.initialized{height:max-content}@media only screen and (max-width: 430px){lr-camera-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-camera-source video{display:block;width:100%;max-height:100%;object-fit:contain;object-position:center center;background-color:var(--clr-background-dark);border-radius:var(--border-radius-element)}lr-camera-source .toolbar{position:absolute;bottom:0;display:flex;justify-content:space-between;width:100%;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-camera-source .content{display:flex;flex:1;justify-content:center;width:100%;padding:var(--gap-mid);padding-top:0;overflow:hidden}lr-camera-source .message-box{--padding: calc(var(--gap-max) * 2);display:flex;flex-direction:column;grid-gap:var(--gap-max);align-items:center;justify-content:center;padding:var(--padding) var(--padding) 0 var(--padding);color:var(--clr-txt)}lr-camera-source .message-box button{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary)}lr-camera-source .shot-btn{position:absolute;bottom:var(--gap-max);width:calc(var(--ui-size) * 1.8);height:calc(var(--ui-size) * 1.8);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;opacity:.85;transition:var(--transition-duration) ease}lr-camera-source .shot-btn:hover{transform:scale(1.05);opacity:1}lr-camera-source .shot-btn:active{background-color:var(--clr-txt-mid);opacity:1}lr-camera-source .shot-btn[disabled]{bottom:calc(var(--gap-max) * -1 - var(--gap-mid) - var(--ui-size) * 2)}lr-camera-source .shot-btn lr-icon svg{width:calc(var(--ui-size) / 1.5);height:calc(var(--ui-size) / 1.5)}lr-external-source{display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--clr-background-light);overflow:hidden}lr-modal lr-external-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height)}lr-external-source>.content{position:relative;display:grid;flex:1;grid-template-rows:1fr min-content}@media only screen and (max-width: 430px){lr-external-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-external-source iframe{display:block;width:100%;height:100%;border:none}lr-external-source .iframe-wrapper{overflow:hidden}lr-external-source .toolbar{display:grid;grid-gap:var(--gap-mid);grid-template-columns:max-content 1fr max-content max-content;align-items:center;width:100%;padding:var(--gap-mid);border-top:var(--border-light)}lr-external-source .back-btn{padding-left:0}lr-external-source .back-btn:after{content:var(--l10n-back)}lr-external-source .selected-counter{display:flex;grid-gap:var(--gap-mid);align-items:center;justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt-light)}lr-upload-list{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light);transition:opacity var(--transition-duration)}lr-modal lr-upload-list{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:max-content;max-height:var(--modal-max-content-height)}lr-upload-list .no-files{height:var(--ui-size);padding:var(--gap-max)}lr-upload-list .files{display:block;flex:1;min-height:var(--ui-size);padding:0 var(--gap-mid);overflow:auto}lr-upload-list .toolbar{display:flex;gap:var(--gap-small);justify-content:space-between;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-upload-list .toolbar .add-more-btn{padding-left:.2em}lr-upload-list .toolbar-spacer{flex:1}lr-upload-list lr-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--gap-mid) * 2);height:calc(100% - var(--gap-mid) * 2);margin:var(--gap-mid);border-radius:var(--border-radius-element)}lr-upload-list lr-activity-header>.header-text{padding:0 var(--gap-mid)}lr-start-from{display:block}lr-start-from .content{display:grid;grid-auto-flow:row;gap:var(--gap-max);width:100%;height:max-content;padding:var(--gap-max);overflow-y:auto;background-color:var(--clr-background-light)}lr-modal lr-start-from{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-file-item{display:block}lr-file-item>.inner{position:relative;display:grid;grid-template-columns:32px 1fr max-content;gap:var(--gap-min);align-items:center;margin-bottom:var(--gap-small);padding:var(--gap-mid);overflow:hidden;font-size:.95em;background-color:var(--clr-background);border-radius:var(--border-radius-element);transition:var(--transition-duration)}lr-file-item:last-of-type>.inner{margin-bottom:0}lr-file-item>.inner[focused]{background-color:transparent}lr-file-item>.inner[uploading] .edit-btn{display:none}lr-file-item>:where(.inner[failed],.inner[limit-overflow]){background-color:var(--clr-error-lightest)}lr-file-item .thumb{position:relative;display:inline-flex;width:var(--ui-size);height:var(--ui-size);background-color:var(--clr-shade-lv1);background-position:center center;background-size:cover;border-radius:var(--border-radius-thumb)}lr-file-item .file-name-wrapper{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--gap-mid);padding-left:var(--gap-mid);overflow:hidden;color:var(--clr-txt-light);transition:color var(--transition-duration)}lr-file-item .file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}lr-file-item .file-error{display:none;color:var(--clr-error);font-size:.85em;line-height:130%}lr-file-item button.remove-btn,lr-file-item button.edit-btn{color:var(--clr-txt-lightest)!important}lr-file-item button.upload-btn{display:none}lr-file-item button:hover{color:var(--clr-txt-light)}lr-file-item .badge{position:absolute;top:calc(var(--ui-size) * -.13);right:calc(var(--ui-size) * -.13);width:calc(var(--ui-size) * .44);height:calc(var(--ui-size) * .44);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;transform:scale(.3);opacity:0;transition:var(--transition-duration) ease}lr-file-item>.inner:where([failed],[limit-overflow],[finished]) .badge{transform:scale(1);opacity:1}lr-file-item>.inner[finished] .badge{background-color:var(--clr-confirm)}lr-file-item>.inner:where([failed],[limit-overflow]) .badge{background-color:var(--clr-error)}lr-file-item>.inner:where([failed],[limit-overflow]) .file-error{display:block}lr-file-item .badge lr-icon,lr-file-item .badge lr-icon svg{width:100%;height:100%}lr-file-item .progress-bar{top:calc(100% - 2px);height:2px}lr-file-item .file-actions{display:flex;gap:var(--gap-min);align-items:center;justify-content:center}lr-upload-details{display:flex;flex-direction:column;width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height);overflow:hidden;background-color:var(--clr-background-light)}lr-upload-details>.content{position:relative;display:grid;flex:1;grid-template-rows:auto min-content}lr-upload-details lr-tabs .tabs-context{position:relative}lr-upload-details .toolbar{display:grid;grid-template-columns:min-content min-content 1fr min-content;gap:var(--gap-mid);padding:var(--gap-mid);border-top:var(--border-light)}lr-upload-details .toolbar[edit-disabled]{display:flex;justify-content:space-between}lr-upload-details .remove-btn{padding-left:.5em}lr-upload-details .detail-btn{padding-left:0;color:var(--clr-txt);background-color:var(--clr-background)}lr-upload-details .edit-btn{padding-left:.5em}lr-upload-details .details{padding:var(--gap-max)}lr-upload-details .info-block{padding-top:var(--gap-max);padding-bottom:calc(var(--gap-max) + var(--gap-table));color:var(--clr-txt);border-bottom:var(--border-light)}lr-upload-details .info-block:first-of-type{padding-top:0}lr-upload-details .info-block:last-of-type{border-bottom:none}lr-upload-details .info-block>.info-block_name{margin-bottom:.4em;color:var(--clr-txt-light);font-size:.8em}lr-upload-details .cdn-link[disabled]{pointer-events:none}lr-upload-details .cdn-link[disabled]:before{filter:grayscale(1);content:var(--l10n-not-uploaded-yet)}lr-file-preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}lr-file-preview>lr-img{display:contents}lr-file-preview>lr-img>.img-view{position:absolute;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;object-fit:scale-down}lr-message-box{position:fixed;right:var(--gap-mid);bottom:var(--gap-mid);left:var(--gap-mid);z-index:100000;display:grid;grid-template-rows:min-content auto;color:var(--clr-txt);font-size:.9em;background:var(--clr-background);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:calc(var(--transition-duration) * 2)}lr-message-box[inline]{position:static}lr-message-box:not([active]){transform:translateY(10px);visibility:hidden;opacity:0}lr-message-box[error]{color:var(--clr-error);background-color:var(--clr-error-message-bgr)}lr-message-box .heading{display:grid;grid-template-columns:min-content auto min-content;padding:var(--gap-mid)}lr-message-box .caption{display:flex;align-items:center;word-break:break-word}lr-message-box .heading button{width:var(--ui-size);padding:0;color:currentColor;background-color:transparent;opacity:var(--opacity-normal)}lr-message-box .heading button:hover{opacity:var(--opacity-hover)}lr-message-box .heading button:active{opacity:var(--opacity-active)}lr-message-box .msg{padding:var(--gap-max);padding-top:0;text-align:left}lr-confirmation-dialog{display:block;padding:var(--gap-mid);padding-top:var(--gap-max)}lr-confirmation-dialog .message{display:flex;justify-content:center;padding:var(--gap-mid);padding-bottom:var(--gap-max);font-weight:500;font-size:1.1em}lr-confirmation-dialog .toolbar{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-mid);margin-top:var(--gap-mid)}lr-progress-bar-common{position:fixed;right:0;bottom:0;left:0;z-index:10000;display:block;height:var(--gap-mid);background-color:var(--clr-background);transition:opacity .3s}lr-progress-bar-common:not([active]){opacity:0;pointer-events:none}lr-progress-bar{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}lr-progress-bar .progress{width:calc(var(--l-width) * 1%);height:100%;background-color:var(--clr-accent-light);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}lr-progress-bar .progress--unknown{width:100%;transform-origin:0% 50%;animation:lr-indeterminateAnimation 1s infinite linear}lr-progress-bar .progress--hidden{opacity:0}@keyframes lr-indeterminateAnimation{0%{transform:translate(0) scaleX(0)}40%{transform:translate(0) scaleX(.4)}to{transform:translate(100%) scaleX(.5)}}lr-activity-header{display:flex;gap:var(--gap-mid);justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt);font-weight:500;font-size:1em;line-height:var(--ui-size)}lr-activity-header lr-icon{height:var(--ui-size)}lr-activity-header>*{display:flex;align-items:center}lr-activity-header button{display:inline-flex;align-items:center;justify-content:center;color:var(--clr-txt-mid)}lr-activity-header button:hover{background-color:var(--clr-background)}lr-activity-header button:active{background-color:var(--clr-background-dark)}lr-copyright .credits{padding:0 var(--gap-mid) var(--gap-mid) calc(var(--gap-mid) * 1.5);color:var(--clr-txt-lightest);font-weight:400;font-size:.85em;opacity:.7;transition:var(--transition-duration) ease}lr-copyright .credits:hover{opacity:1}:host(.lr-cloud-image-editor) lr-icon,.lr-cloud-image-editor lr-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host(.lr-cloud-image-editor) lr-icon svg,.lr-cloud-image-editor lr-icon svg{width:unset;height:unset}:host(.lr-cloud-image-editor) lr-icon:not([raw]) path,.lr-cloud-image-editor lr-icon:not([raw]) path{stroke-linejoin:round;fill:none;stroke:currentColor;stroke-width:1.2}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--icon-rotate: "M13.5.399902L12 1.9999l1.5 1.6M12.0234 2H14.4C16.3882 2 18 3.61178 18 5.6V8M4 17h9c.5523 0 1-.4477 1-1V7c0-.55228-.4477-1-1-1H4c-.55228 0-1 .44771-1 1v9c0 .5523.44771 1 1 1z";--icon-mirror: "M5.00042.399902l-1.5 1.599998 1.5 1.6M15.0004.399902l1.5 1.599998-1.5 1.6M3.51995 2H16.477M8.50042 16.7V6.04604c0-.30141-.39466-.41459-.5544-.159L1.28729 16.541c-.12488.1998.01877.459.2544.459h6.65873c.16568 0 .3-.1343.3-.3zm2.99998 0V6.04604c0-.30141.3947-.41459.5544-.159L18.7135 16.541c.1249.1998-.0187.459-.2544.459h-6.6587c-.1657 0-.3-.1343-.3-.3z";--icon-flip: "M19.6001 4.99993l-1.6-1.5-1.6 1.5m3.2 9.99997l-1.6 1.5-1.6-1.5M18 3.52337V16.4765M3.3 8.49993h10.654c.3014 0 .4146-.39466.159-.5544L3.459 1.2868C3.25919 1.16192 3 1.30557 3 1.5412v6.65873c0 .16568.13432.3.3.3zm0 2.99997h10.654c.3014 0 .4146.3947.159.5544L3.459 18.7131c-.19981.1248-.459-.0188-.459-.2544v-6.6588c0-.1657.13432-.3.3-.3z";--icon-sad: "M2 17c4.41828-4 11.5817-4 16 0M16.5 5c0 .55228-.4477 1-1 1s-1-.44772-1-1 .4477-1 1-1 1 .44772 1 1zm-11 0c0 .55228-.44772 1-1 1s-1-.44772-1-1 .44772-1 1-1 1 .44772 1 1z";--icon-closeMax: "M3 3l14 14m0-14L3 17";--icon-crop: "M20 14H7.00513C6.45001 14 6 13.55 6 12.9949V0M0 6h13.0667c.5154 0 .9333.41787.9333.93333V20M14.5.399902L13 1.9999l1.5 1.6M13 2h2c1.6569 0 3 1.34315 3 3v2M5.5 19.5999l1.5-1.6-1.5-1.6M7 18H5c-1.65685 0-3-1.3431-3-3v-2";--icon-tuning: "M8 10h11M1 10h4M1 4.5h11m3 0h4m-18 11h11m3 0h4M12 4.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M5 10a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M12 15.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0";--icon-filters: "M4.5 6.5a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m-3.5 6a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m7 0a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0";--icon-done: "M1 10.6316l5.68421 5.6842L19 4";--icon-original: "M0 40L40-.00000133";--icon-slider: "M0 10h11m0 0c0 1.1046.8954 2 2 2s2-.8954 2-2m-4 0c0-1.10457.8954-2 2-2s2 .89543 2 2m0 0h5";--icon-exposure: "M10 20v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M5 10a5 5 0 1010 0 5 5 0 10-10 0";--icon-contrast: "M2 10a8 8 0 1016 0 8 8 0 10-16 0m8-8v16m8-8h-8m7.5977 2.5H10m6.24 2.5H10m7.6-7.5H10M16.2422 5H10";--icon-brightness: "M15 10c0 2.7614-2.2386 5-5 5m5-5c0-2.76142-2.2386-5-5-5m5 5h-5m0 5c-2.76142 0-5-2.2386-5-5 0-2.76142 2.23858-5 5-5m0 10V5m0 15v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M14.3242 7.5H10m4.3242 5H10";--icon-gamma: "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";--icon-enhance: "M19 13h-2m0 0c-2.2091 0-4-1.7909-4-4m4 4c-2.2091 0-4 1.7909-4 4m0-8V7m0 2c0 2.2091-1.7909 4-4 4m-2 0h2m0 0c2.2091 0 4 1.7909 4 4m0 0v2M8 8.5H6.5m0 0c-1.10457 0-2-.89543-2-2m2 2c-1.10457 0-2 .89543-2 2m0-4V5m0 1.5c0 1.10457-.89543 2-2 2M1 8.5h1.5m0 0c1.10457 0 2 .89543 2 2m0 0V12M12 3h-1m0 0c-.5523 0-1-.44772-1-1m1 1c-.5523 0-1 .44772-1 1m0-2V1m0 1c0 .55228-.44772 1-1 1M8 3h1m0 0c.55228 0 1 .44772 1 1m0 0v1";--icon-saturation: ' ';--icon-warmth: ' ';--icon-vibrance: ' '}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--l10n-cancel: "Cancel";--l10n-apply: "Apply";--l10n-brightness: "Brightness";--l10n-exposure: "Exposure";--l10n-gamma: "Gamma";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-vibrance: "Vibrance";--l10n-warmth: "Warmth";--l10n-enhance: "Enhance";--l10n-original: "Original"}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--rgb-primary-accent: 6, 2, 196;--rgb-text-base: 0, 0, 0;--rgb-text-accent-contrast: 255, 255, 255;--rgb-fill-contrast: 255, 255, 255;--rgb-fill-shaded: 245, 245, 245;--rgb-shadow: 0, 0, 0;--rgb-error: 209, 81, 81;--opacity-shade-mid: .2;--color-primary-accent: rgb(var(--rgb-primary-accent));--color-text-base: rgb(var(--rgb-text-base));--color-text-accent-contrast: rgb(var(--rgb-text-accent-contrast));--color-text-soft: rgb(var(--rgb-fill-contrast));--color-text-error: rgb(var(--rgb-error));--color-fill-contrast: rgb(var(--rgb-fill-contrast));--color-modal-backdrop: rgba(var(--rgb-fill-shaded), .95);--color-image-background: rgba(var(--rgb-fill-shaded));--color-outline: rgba(var(--rgb-text-base), var(--opacity-shade-mid));--color-underline: rgba(var(--rgb-text-base), .08);--color-shade: rgba(var(--rgb-text-base), .02);--color-focus-ring: var(--color-primary-accent);--color-input-placeholder: rgba(var(--rgb-text-base), .32);--color-error: rgb(var(--rgb-error));--font-size-ui: 16px;--font-size-title: 18px;--font-weight-title: 500;--font-size-soft: 14px;--size-touch-area: 40px;--size-panel-heading: 66px;--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--border-radius-connect: 2px;--border-radius-editor: 3px;--border-radius-thumb: 4px;--border-radius-ui: 5px;--border-radius-base: 6px;--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--opacity-min: var(--opacity-shade-mid);--opacity-mid: .1;--opacity-max: .05;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--shadow-base: 0px 5px 15px rgba(var(--rgb-shadow), .1), 0px 1px 4px rgba(var(--rgb-shadow), .15);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}:host(.lr-cloud-image-editor) :is([can-handle-paste]:hover,[can-handle-paste]:focus),.lr-cloud-image-editor :is([can-handle-paste]:hover,[can-handle-paste]:focus){--can-handle-paste: "true"}:host(.lr-cloud-image-editor) :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover),.lr-cloud-image-editor :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover){--filter-effect: var(--hover-filter) !important;--opacity-effect: var(--hover-opacity) !important;--color-effect: var(--hover-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex]:active,[with-effects]:active),.lr-cloud-image-editor :is([tabindex]:active,[with-effects]:active){--filter-effect: var(--down-filter) !important;--opacity-effect: var(--down-opacity) !important;--color-effect: var(--down-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex][active],[with-effects][active]),.lr-cloud-image-editor :is([tabindex][active],[with-effects][active]){--filter-effect: var(--active-filter) !important;--opacity-effect: var(--active-opacity) !important;--color-effect: var(--active-color-rgb) !important}:host(.lr-cloud-image-editor) [hidden-scrollbar]::-webkit-scrollbar,.lr-cloud-image-editor [hidden-scrollbar]::-webkit-scrollbar{display:none}:host(.lr-cloud-image-editor) [hidden-scrollbar],.lr-cloud-image-editor [hidden-scrollbar]{-ms-overflow-style:none;scrollbar-width:none}:host(.lr-cloud-image-editor.editor_ON),.lr-cloud-image-editor.editor_ON{--modal-header-opacity: 0;--modal-header-height: 0px;--modal-toolbar-height: calc(var(--size-panel-heading) * 2)}:host(.lr-cloud-image-editor.editor_OFF),.lr-cloud-image-editor.editor_OFF{--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading)}:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-min-img-height: var(--modal-toolbar-height);--l-max-img-height: 100%;--l-edit-button-width: 120px;--l-toolbar-horizontal-padding: var(--cldtr-gap-mid-1);position:relative;display:grid;grid-template-rows:minmax(var(--l-min-img-height),var(--l-max-img-height)) minmax(var(--modal-toolbar-height),auto);height:100%;overflow:hidden;overflow-y:auto;transition:.3s}@media only screen and (max-width: 800px){:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-edit-button-width: 70px;--l-toolbar-horizontal-padding: var(--cldtr-gap-min)}}:host(.lr-cloud-image-editor)>.wrapper>.viewport,.lr-cloud-image-editor>.wrapper>.viewport{display:flex;align-items:center;justify-content:center;overflow:hidden}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image{--viewer-image-opacity: 1;position:absolute;top:0;left:0;z-index:10;display:block;box-sizing:border-box;width:100%;height:100%;object-fit:scale-down;background-color:var(--color-image-background);transform:scale(1);opacity:var(--viewer-image-opacity);user-select:none;pointer-events:auto}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_visible_viewer,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_visible_viewer{transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-4)}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper{--viewer-image-opacity: 0;background-image:var(--transparent-pixel);transform:scale(1);transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_effects,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_effects{--viewer-image-opacity: 0;transform:scale(1);transition:opacity var(--transition-duration-3) cubic-bezier(.5,0,1,1),transform var(--transition-duration-4);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container,.lr-cloud-image-editor>.wrapper>.viewport>.image_container{position:relative;display:block;width:100%;height:100%;background-color:var(--color-image-background);transition:var(--transition-duration-3)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar,.lr-cloud-image-editor>.wrapper>.toolbar{position:relative;transition:.3s}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content{position:absolute;bottom:0;left:0;box-sizing:border-box;width:100%;height:var(--modal-toolbar-height);min-height:var(--size-panel-heading);background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer{display:flex;align-items:center;justify-content:space-between;height:var(--size-panel-heading);padding-right:var(--l-toolbar-horizontal-padding);padding-left:var(--l-toolbar-horizontal-padding)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor{display:flex}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.info_pan,.lr-cloud-image-editor>.wrapper>.viewport>.info_pan{position:absolute;user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer{position:absolute;z-index:2;display:flex;max-width:120px;transform:translate(-40px);user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer>.file_type,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer>.file_type{padding:4px .8em}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash,.lr-cloud-image-editor>.wrapper>.network_problems_splash{position:absolute;z-index:4;display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:rgba(var(--rgb-text-base),.6);background-color:rgba(var(--rgb-fill-shaded));border-radius:50%}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text{margin-top:var(--cldtr-gap-max);font-size:var(--font-size-ui)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_footer,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_footer{display:flex;align-items:center;justify-content:center;height:var(--size-panel-heading)}lr-crop-frame>.svg{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);opacity:inherit;transition:var(--transition-duration-3)}lr-crop-frame>.thumb{--idle-color-rgb: var(--color-text-base);--hover-color-rgb: var(--color-primary-accent);--focus-color-rgb: var(--color-primary-accent);--down-color-rgb: var(--color-primary-accent);--color-effect: var(--idle-color-rgb);color:var(--color-effect);transition:color var(--transition-duration-3),opacity var(--transition-duration-3)}lr-crop-frame>.thumb--visible{opacity:1;pointer-events:auto}lr-crop-frame>.thumb--hidden{opacity:0;pointer-events:none}lr-crop-frame>.guides{transition:var(--transition-duration-3)}lr-crop-frame>.guides--hidden{opacity:0}lr-crop-frame>.guides--semi-hidden{opacity:.2}lr-crop-frame>.guides--visible{opacity:1}lr-editor-button-control,lr-editor-crop-button-control,lr-editor-filter-control,lr-editor-operation-control{--l-base-min-width: 40px;--l-base-height: var(--l-base-min-width);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--filter-effect: var(--idle-filter);--idle-color-rgb: var(--rgb-text-base);--idle-opacity: .05;--idle-filter: 1;--hover-color-rgb: var(--idle-color-rgb);--hover-opacity: .08;--hover-filter: .8;--down-color-rgb: var(--hover-color-rgb);--down-opacity: .12;--down-filter: .6;position:relative;display:grid;grid-template-columns:var(--l-base-min-width) auto;align-items:center;height:var(--l-base-height);color:rgba(var(--idle-color-rgb));outline:none;cursor:pointer;transition:var(--l-width-transition)}lr-editor-button-control.active,lr-editor-operation-control.active,lr-editor-crop-button-control.active,lr-editor-filter-control.active{--idle-color-rgb: var(--rgb-primary-accent)}lr-editor-filter-control.not_active .preview[loaded]{opacity:1}lr-editor-filter-control.active .preview{opacity:0}lr-editor-button-control.not_active,lr-editor-operation-control.not_active,lr-editor-crop-button-control.not_active,lr-editor-filter-control.not_active{--idle-color-rgb: var(--rgb-text-base)}lr-editor-button-control>.before,lr-editor-operation-control>.before,lr-editor-crop-button-control>.before,lr-editor-filter-control>.before{position:absolute;right:0;left:0;z-index:-1;width:100%;height:100%;background-color:rgba(var(--color-effect),var(--opacity-effect));border-radius:var(--border-radius-editor);transition:var(--transition-duration-3)}lr-editor-button-control>.title,lr-editor-operation-control>.title,lr-editor-crop-button-control>.title,lr-editor-filter-control>.title{padding-right:var(--cldtr-gap-mid-1);font-size:.7em;letter-spacing:1.004px;text-transform:uppercase}lr-editor-filter-control>.preview{position:absolute;right:0;left:0;z-index:1;width:100%;height:var(--l-base-height);background-repeat:no-repeat;background-size:contain;border-radius:var(--border-radius-editor);opacity:0;filter:brightness(var(--filter-effect));transition:var(--transition-duration-3)}lr-editor-filter-control>.original-icon{color:var(--color-text-base);opacity:.3}lr-editor-image-cropper{position:absolute;top:0;left:0;z-index:10;display:block;width:100%;height:100%;opacity:0;pointer-events:none;touch-action:none}lr-editor-image-cropper.active_from_editor{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.active_from_viewer{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.inactive_to_editor{opacity:0;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1),opacity var(--transition-duration-3) calc(var(--transition-duration-3) + .05s);pointer-events:none}lr-editor-image-cropper>.canvas{position:absolute;top:0;left:0;z-index:1;display:block;width:100%;height:100%}lr-editor-image-fader{position:absolute;top:0;left:0;display:block;width:100%;height:100%}lr-editor-image-fader.active_from_viewer{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-start);pointer-events:auto}lr-editor-image-fader.active_from_cropper{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:auto}lr-editor-image-fader.inactive_to_cropper{z-index:3;transform:scale(1);opacity:0;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}lr-editor-image-fader .fader-image{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:scale-down;transform:scale(1);user-select:none;content-visibility:auto}lr-editor-image-fader .fader-image--preview{background-color:var(--color-image-background);border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);transform:scale(1);opacity:0;transition:var(--transition-duration-3)}lr-editor-scroller{display:flex;align-items:center;width:100%;height:100%;overflow-x:scroll}lr-editor-slider{display:flex;align-items:center;justify-content:center;width:100%;height:66px}lr-editor-toolbar{position:relative;width:100%;height:100%}@media only screen and (max-width: 600px){lr-editor-toolbar{--l-tab-gap: var(--cldtr-gap-mid-1);--l-slider-padding: var(--cldtr-gap-min);--l-controls-padding: var(--cldtr-gap-min)}}@media only screen and (min-width: 601px){lr-editor-toolbar{--l-tab-gap: calc(var(--cldtr-gap-mid-1) + var(--cldtr-gap-max));--l-slider-padding: var(--cldtr-gap-mid-1);--l-controls-padding: var(--cldtr-gap-mid-1)}}lr-editor-toolbar>.toolbar-container{position:relative;width:100%;height:100%;overflow:hidden}lr-editor-toolbar>.toolbar-container>.sub-toolbar{position:absolute;display:grid;grid-template-rows:1fr 1fr;width:100%;height:100%;background-color:var(--color-fill-contrast);transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-3) ease-in-out,visibility var(--transition-duration-3) ease-in-out}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--visible{transform:translateY(0);opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--top-hidden{transform:translateY(100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--bottom-hidden{transform:translateY(-100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row{display:flex;align-items:center;justify-content:space-between;padding-right:var(--l-controls-padding);padding-left:var(--l-controls-padding)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles{position:relative;display:grid;grid-auto-flow:column;grid-gap:0px var(--l-tab-gap);align-items:center;height:100%}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggles_indicator{position:absolute;bottom:0;left:0;width:var(--size-touch-area);height:2px;background-color:var(--color-primary-accent);transform:translate(0);transition:transform var(--transition-duration-3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row{position:relative}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content{position:absolute;top:0;left:0;display:flex;width:100%;height:100%;overflow:hidden;opacity:0;content-visibility:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--visible{opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--hidden{opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--visible{display:contents}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles.tab-toggles--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_align{display:grid;grid-template-areas:". inner .";grid-template-columns:1fr auto 1fr;box-sizing:border-box;min-width:100%;padding-left:var(--cldtr-gap-max)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner{display:grid;grid-area:inner;grid-auto-flow:column;grid-gap:calc((var(--cldtr-gap-min) - 1px) * 3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner:last-child{padding-right:var(--cldtr-gap-max)}lr-editor-toolbar .controls-list_last-item{margin-right:var(--cldtr-gap-max)}lr-editor-toolbar .info-tooltip_container{position:absolute;display:flex;align-items:flex-start;justify-content:center;width:100%;height:100%}lr-editor-toolbar .info-tooltip_wrapper{position:absolute;top:calc(-100% - var(--cldtr-gap-mid-2));display:flex;flex-direction:column;justify-content:flex-end;height:100%;pointer-events:none}lr-editor-toolbar .info-tooltip{z-index:3;padding-top:calc(var(--cldtr-gap-min) / 2);padding-right:var(--cldtr-gap-min);padding-bottom:calc(var(--cldtr-gap-min) / 2);padding-left:var(--cldtr-gap-min);color:var(--color-text-base);font-size:.7em;letter-spacing:1px;text-transform:uppercase;background-color:var(--color-text-accent-contrast);border-radius:var(--border-radius-editor);transform:translateY(100%);opacity:0;transition:var(--transition-duration-3)}lr-editor-toolbar .info-tooltip_visible{transform:translateY(0);opacity:1}lr-editor-toolbar .slider{padding-right:var(--l-slider-padding);padding-left:var(--l-slider-padding)}lr-btn-ui{--filter-effect: var(--idle-brightness);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--l-transition-effect: var(--css-transition, color var(--transition-duration-2), filter var(--transition-duration-2));display:inline-flex;align-items:center;box-sizing:var(--css-box-sizing, border-box);height:var(--css-height, var(--size-touch-area));padding-right:var(--css-padding-right, var(--cldtr-gap-mid-1));padding-left:var(--css-padding-left, var(--cldtr-gap-mid-1));color:rgba(var(--color-effect),var(--opacity-effect));outline:none;cursor:pointer;filter:brightness(var(--filter-effect));transition:var(--l-transition-effect);user-select:none}lr-btn-ui .text{white-space:nowrap}lr-btn-ui .icon{display:flex;align-items:center;justify-content:center;color:rgba(var(--color-effect),var(--opacity-effect));filter:brightness(var(--filter-effect));transition:var(--l-transition-effect)}lr-btn-ui .icon_left{margin-right:var(--cldtr-gap-mid-1);margin-left:0}lr-btn-ui .icon_right{margin-right:0;margin-left:var(--cldtr-gap-mid-1)}lr-btn-ui .icon_single{margin-right:0;margin-left:0}lr-btn-ui .icon_hidden{display:none;margin:0}lr-btn-ui.primary{--idle-color-rgb: var(--rgb-primary-accent);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--idle-color-rgb);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.boring{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-text-base);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: 1;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.default{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-primary-accent);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-line-loader-ui{position:absolute;top:0;left:0;z-index:9999;width:100%;height:2px;opacity:.5}lr-line-loader-ui .inner{width:25%;max-width:200px;height:100%}lr-line-loader-ui .line{width:100%;height:100%;background-color:var(--color-primary-accent);transform:translate(-101%);transition:transform 1s}lr-slider-ui{--l-thumb-size: 24px;--l-zero-dot-size: 5px;--l-zero-dot-offset: 2px;--idle-color-rgb: var(--rgb-text-base);--hover-color-rgb: var(--rgb-primary-accent);--down-color-rgb: var(--rgb-primary-accent);--color-effect: var(--idle-color-rgb);--l-color: rgb(var(--color-effect));position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:calc(var(--l-thumb-size) + (var(--l-zero-dot-size) + var(--l-zero-dot-offset)) * 2)}lr-slider-ui .thumb{position:absolute;left:0;width:var(--l-thumb-size);height:var(--l-thumb-size);background-color:var(--l-color);border-radius:50%;transform:translate(0);opacity:1;transition:opacity var(--transition-duration-2)}lr-slider-ui .steps{position:absolute;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:100%;padding-right:calc(var(--l-thumb-size) / 2);padding-left:calc(var(--l-thumb-size) / 2)}lr-slider-ui .border-step{width:0px;height:10px;border-right:1px solid var(--l-color);opacity:.6;transition:var(--transition-duration-2)}lr-slider-ui .minor-step{width:0px;height:4px;border-right:1px solid var(--l-color);opacity:.2;transition:var(--transition-duration-2)}lr-slider-ui .zero-dot{position:absolute;top:calc(100% - var(--l-zero-dot-offset) * 2);left:calc(var(--l-thumb-size) / 2 - var(--l-zero-dot-size) / 2);width:var(--l-zero-dot-size);height:var(--l-zero-dot-size);background-color:var(--color-primary-accent);border-radius:50%;opacity:0;transition:var(--transition-duration-3)}lr-slider-ui .input{position:absolute;width:calc(100% - 10px);height:100%;margin:0;cursor:pointer;opacity:0}lr-presence-toggle.transition{transition:opacity var(--transition-duration-3),visibility var(--transition-duration-3)}lr-presence-toggle.visible{opacity:1;pointer-events:inherit}lr-presence-toggle.hidden{opacity:0;pointer-events:none}ctx-provider{--color-text-base: black;--color-primary-accent: blue;display:flex;align-items:center;justify-content:center;width:190px;height:40px;padding-right:10px;padding-left:10px;background-color:#f5f5f5;border-radius:3px}lr-cloud-image-editor-activity{position:relative;display:flex;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light)}lr-modal lr-cloud-image-editor-activity{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%)}lr-select{display:inline-flex}lr-select>button{position:relative;display:inline-flex;align-items:center;padding-right:0!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-select>button>select{position:absolute;display:block;width:100%;height:100%;opacity:0} +:where(.lr-wgt-cfg,.lr-wgt-common),:host{--cfg-pubkey: "YOUR_PUBLIC_KEY";--cfg-multiple: 1;--cfg-multiple-min: 0;--cfg-multiple-max: 0;--cfg-confirm-upload: 0;--cfg-img-only: 0;--cfg-accept: "";--cfg-external-sources-preferred-types: "";--cfg-store: "auto";--cfg-camera-mirror: 1;--cfg-source-list: "local, url, camera, dropbox, gdrive";--cfg-max-local-file-size-bytes: 0;--cfg-thumb-size: 76;--cfg-show-empty-list: 0;--cfg-use-local-image-editor: 0;--cfg-use-cloud-image-editor: 1;--cfg-remove-copyright: 0;--cfg-modal-scroll-lock: 1;--cfg-modal-backdrop-strokes: 0;--cfg-source-list-wrap: 1;--cfg-init-activity: "start-from";--cfg-done-activity: "";--cfg-remote-tab-session-key: "";--cfg-cdn-cname: "https://ucarecdn.com";--cfg-base-url: "https://upload.uploadcare.com";--cfg-social-base-url: "https://social.uploadcare.com";--cfg-secure-signature: "";--cfg-secure-expire: "";--cfg-secure-delivery-proxy: "";--cfg-retry-throttled-request-max-times: 1;--cfg-multipart-min-file-size: 26214400;--cfg-multipart-chunk-size: 5242880;--cfg-max-concurrent-requests: 10;--cfg-multipart-max-concurrent-requests: 4;--cfg-multipart-max-attempts: 3;--cfg-check-for-url-duplicates: 0;--cfg-save-url-for-recurrent-uploads: 0;--cfg-group-output: 0;--cfg-user-agent-integration: ""}:where(.lr-wgt-icons,.lr-wgt-common),:host{--icon-default: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-file: "m2.89453 1.2012c0-.473389.38376-.857145.85714-.857145h8.40003c.2273 0 .4453.090306.6061.251051l8.4 8.400004c.1607.16074.251.37876.251.60609v13.2c0 .4734-.3837.8571-.8571.8571h-16.80003c-.47338 0-.85714-.3837-.85714-.8571zm1.71429.85714v19.88576h15.08568v-11.4858h-7.5428c-.4734 0-.8572-.3837-.8572-.8571v-7.54286zm8.39998 1.21218 5.4736 5.47353-5.4736.00001z";--icon-close: "m4.60395 4.60395c.29289-.2929.76776-.2929 1.06066 0l6.33539 6.33535 6.3354-6.33535c.2929-.2929.7677-.2929 1.0606 0 .2929.29289.2929.76776 0 1.06066l-6.3353 6.33539 6.3353 6.3354c.2929.2929.2929.7677 0 1.0606s-.7677.2929-1.0606 0l-6.3354-6.3353-6.33539 6.3353c-.2929.2929-.76777.2929-1.06066 0-.2929-.2929-.2929-.7677 0-1.0606l6.33535-6.3354-6.33535-6.33539c-.2929-.2929-.2929-.76777 0-1.06066z";--icon-collapse: "M3.11572 12C3.11572 11.5858 3.45151 11.25 3.86572 11.25H20.1343C20.5485 11.25 20.8843 11.5858 20.8843 12C20.8843 12.4142 20.5485 12.75 20.1343 12.75H3.86572C3.45151 12.75 3.11572 12.4142 3.11572 12Z";--icon-expand: "M12.0001 8.33716L3.53033 16.8068C3.23743 17.0997 2.76256 17.0997 2.46967 16.8068C2.17678 16.5139 2.17678 16.0391 2.46967 15.7462L11.0753 7.14067C11.1943 7.01825 11.3365 6.92067 11.4936 6.8536C11.6537 6.78524 11.826 6.75 12.0001 6.75C12.1742 6.75 12.3465 6.78524 12.5066 6.8536C12.6637 6.92067 12.8059 7.01826 12.925 7.14068L21.5304 15.7462C21.8233 16.0391 21.8233 16.5139 21.5304 16.8068C21.2375 17.0997 20.7627 17.0997 20.4698 16.8068L12.0001 8.33716Z";--icon-info: "M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";--icon-error: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";--icon-arrow-down: "m11.5009 23.0302c.2844.2533.7135.2533.9978 0l9.2899-8.2758c.3092-.2756.3366-.7496.0611-1.0589s-.7496-.3367-1.0589-.0612l-8.0417 7.1639v-19.26834c0-.41421-.3358-.749997-.75-.749997s-.75.335787-.75.749997v19.26704l-8.04025-7.1626c-.30928-.2755-.78337-.2481-1.05889.0612-.27553.3093-.24816.7833.06112 1.0589z";--icon-upload: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-local: "m3 3.75c-.82843 0-1.5.67157-1.5 1.5v13.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-9.75c0-.82843-.6716-1.5-1.5-1.5h-9c-.2634 0-.5076-.13822-.6431-.36413l-2.03154-3.38587zm-3 1.5c0-1.65685 1.34315-3 3-3h6.75c.2634 0 .5076.13822.6431.36413l2.0315 3.38587h8.5754c1.6569 0 3 1.34315 3 3v9.75c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3z";--icon-url: "m19.1099 3.67026c-1.7092-1.70917-4.5776-1.68265-6.4076.14738l-2.2212 2.22122c-.2929.29289-.7678.29289-1.0607 0-.29289-.29289-.29289-.76777 0-1.06066l2.2212-2.22122c2.376-2.375966 6.1949-2.481407 8.5289-.14738l1.2202 1.22015c2.334 2.33403 2.2286 6.15294-.1474 8.52895l-2.2212 2.2212c-.2929.2929-.7678.2929-1.0607 0s-.2929-.7678 0-1.0607l2.2212-2.2212c1.8301-1.83003 1.8566-4.69842.1474-6.40759zm-3.3597 4.57991c.2929.29289.2929.76776 0 1.06066l-6.43918 6.43927c-.29289.2928-.76777.2928-1.06066 0-.29289-.2929-.29289-.7678 0-1.0607l6.43924-6.43923c.2929-.2929.7677-.2929 1.0606 0zm-9.71158 1.17048c.29289.29289.29289.76775 0 1.06065l-2.22123 2.2212c-1.83002 1.8301-1.85654 4.6984-.14737 6.4076l1.22015 1.2202c1.70917 1.7091 4.57756 1.6826 6.40763-.1474l2.2212-2.2212c.2929-.2929.7677-.2929 1.0606 0s.2929.7677 0 1.0606l-2.2212 2.2212c-2.37595 2.376-6.19486 2.4815-8.52889.1474l-1.22015-1.2201c-2.334031-2.3341-2.22859-6.153.14737-8.5289l2.22123-2.22125c.29289-.2929.76776-.2929 1.06066 0z";--icon-camera: "m7.65 2.55c.14164-.18885.36393-.3.6-.3h7.5c.2361 0 .4584.11115.6.3l2.025 2.7h2.625c1.6569 0 3 1.34315 3 3v10.5c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3v-10.5c0-1.65685 1.34315-3 3-3h2.625zm.975 1.2-2.025 2.7c-.14164.18885-.36393.3-.6.3h-3c-.82843 0-1.5.67157-1.5 1.5v10.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-10.5c0-.82843-.6716-1.5-1.5-1.5h-3c-.2361 0-.4584-.11115-.6-.3l-2.025-2.7zm3.375 6c-1.864 0-3.375 1.511-3.375 3.375s1.511 3.375 3.375 3.375 3.375-1.511 3.375-3.375-1.511-3.375-3.375-3.375zm-4.875 3.375c0-2.6924 2.18261-4.875 4.875-4.875 2.6924 0 4.875 2.1826 4.875 4.875s-2.1826 4.875-4.875 4.875c-2.69239 0-4.875-2.1826-4.875-4.875z";--icon-dots: "M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z";--icon-back: "M20.251 12.0001C20.251 12.4143 19.9152 12.7501 19.501 12.7501L6.06696 12.7501L11.7872 18.6007C12.0768 18.8968 12.0715 19.3717 11.7753 19.6613C11.4791 19.9508 11.0043 19.9455 10.7147 19.6493L4.13648 12.9213C4.01578 12.8029 3.91947 12.662 3.85307 12.5065C3.78471 12.3464 3.74947 12.1741 3.74947 12C3.74947 11.8259 3.78471 11.6536 3.85307 11.4935C3.91947 11.338 4.01578 11.1971 4.13648 11.0787L10.7147 4.35068C11.0043 4.0545 11.4791 4.04916 11.7753 4.33873C12.0715 4.62831 12.0768 5.10315 11.7872 5.39932L6.06678 11.2501L19.501 11.2501C19.9152 11.2501 20.251 11.5859 20.251 12.0001Z";--icon-remove: "m6.35673 9.71429c-.76333 0-1.35856.66121-1.27865 1.42031l1.01504 9.6429c.06888.6543.62067 1.1511 1.27865 1.1511h9.25643c.658 0 1.2098-.4968 1.2787-1.1511l1.015-9.6429c.0799-.7591-.5153-1.42031-1.2786-1.42031zm.50041-4.5v.32142h-2.57143c-.71008 0-1.28571.57564-1.28571 1.28572s.57563 1.28571 1.28571 1.28571h15.42859c.7101 0 1.2857-.57563 1.2857-1.28571s-.5756-1.28572-1.2857-1.28572h-2.5714v-.32142c0-1.77521-1.4391-3.21429-3.2143-3.21429h-3.8572c-1.77517 0-3.21426 1.43908-3.21426 3.21429zm7.07146-.64286c.355 0 .6428.28782.6428.64286v.32142h-5.14283v-.32142c0-.35504.28782-.64286.64283-.64286z";--icon-edit: "M3.96371 14.4792c-.15098.151-.25578.3419-.3021.5504L2.52752 20.133c-.17826.8021.53735 1.5177 1.33951 1.3395l5.10341-1.1341c.20844-.0463.39934-.1511.55032-.3021l8.05064-8.0507-5.557-5.55702-8.05069 8.05062ZM13.4286 5.01437l5.557 5.55703 2.0212-2.02111c.6576-.65765.6576-1.72393 0-2.38159l-3.1755-3.17546c-.6577-.65765-1.7239-.65765-2.3816 0l-2.0211 2.02113Z";--icon-detail: "M5,3C3.89,3 3,3.89 3,5V19C3,20.11 3.89,21 5,21H19C20.11,21 21,20.11 21,19V5C21,3.89 20.11,3 19,3H5M5,5H19V19H5V5M7,7V9H17V7H7M7,11V13H17V11H7M7,15V17H14V15H7Z";--icon-select: "M7,10L12,15L17,10H7Z";--icon-check: "m12 22c5.5228 0 10-4.4772 10-10 0-5.52285-4.4772-10-10-10-5.52285 0-10 4.47715-10 10 0 5.5228 4.47715 10 10 10zm4.7071-11.4929-5.9071 5.9071-3.50711-3.5071c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.3906 1.02369-.3906 1.41422 0l2.09289 2.0929 4.4929-4.49294c.3905-.39052 1.0237-.39052 1.4142 0 .3905.39053.3905 1.02374 0 1.41424z";--icon-add: "M12.75 21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21V12.7499H3C2.58579 12.7499 2.25 12.4141 2.25 11.9999C2.25 11.5857 2.58579 11.2499 3 11.2499H11.25V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V11.2499H21C21.4142 11.2499 21.75 11.5857 21.75 11.9999C21.75 12.4141 21.4142 12.7499 21 12.7499H12.75V21Z";--icon-edit-file: "m12.1109 6c.3469-1.69213 1.8444-2.96484 3.6391-2.96484s3.2922 1.27271 3.6391 2.96484h2.314c.4142 0 .75.33578.75.75 0 .41421-.3358.75-.75.75h-2.314c-.3469 1.69213-1.8444 2.9648-3.6391 2.9648s-3.2922-1.27267-3.6391-2.9648h-9.81402c-.41422 0-.75001-.33579-.75-.75 0-.41422.33578-.75.75-.75zm3.6391-1.46484c-1.2232 0-2.2148.99162-2.2148 2.21484s.9916 2.21484 2.2148 2.21484 2.2148-.99162 2.2148-2.21484-.9916-2.21484-2.2148-2.21484zm-11.1391 11.96484c.34691-1.6921 1.84437-2.9648 3.6391-2.9648 1.7947 0 3.2922 1.2727 3.6391 2.9648h9.814c.4142 0 .75.3358.75.75s-.3358.75-.75.75h-9.814c-.3469 1.6921-1.8444 2.9648-3.6391 2.9648-1.79473 0-3.29219-1.2727-3.6391-2.9648h-2.31402c-.41422 0-.75-.3358-.75-.75s.33578-.75.75-.75zm3.6391-1.4648c-1.22322 0-2.21484.9916-2.21484 2.2148s.99162 2.2148 2.21484 2.2148 2.2148-.9916 2.2148-2.2148-.99158-2.2148-2.2148-2.2148z";--icon-remove-file: "m11.9554 3.29999c-.7875 0-1.5427.31281-2.0995.86963-.49303.49303-.79476 1.14159-.85742 1.83037h5.91382c-.0627-.68878-.3644-1.33734-.8575-1.83037-.5568-.55682-1.312-.86963-2.0994-.86963zm4.461 2.7c-.0656-1.08712-.5264-2.11657-1.3009-2.89103-.8381-.83812-1.9749-1.30897-3.1601-1.30897-1.1853 0-2.32204.47085-3.16016 1.30897-.77447.77446-1.23534 1.80391-1.30087 2.89103h-2.31966c-.03797 0-.07529.00282-.11174.00827h-1.98826c-.41422 0-.75.33578-.75.75 0 .41421.33578.75.75.75h1.35v11.84174c0 .7559.30026 1.4808.83474 2.0152.53448.5345 1.25939.8348 2.01526.8348h9.44999c.7559 0 1.4808-.3003 2.0153-.8348.5344-.5344.8347-1.2593.8347-2.0152v-11.84174h1.35c.4142 0 .75-.33579.75-.75 0-.41422-.3358-.75-.75-.75h-1.9883c-.0364-.00545-.0737-.00827-.1117-.00827zm-10.49169 1.50827v11.84174c0 .358.14223.7014.3954.9546.25318.2532.59656.3954.9546.3954h9.44999c.358 0 .7014-.1422.9546-.3954s.3954-.5966.3954-.9546v-11.84174z";--icon-trash-file: var(--icon-remove);--icon-upload-error: var(--icon-error);--icon-fullscreen: "M5,5H10V7H7V10H5V5M14,5H19V10H17V7H14V5M17,14H19V19H14V17H17V14M10,17V19H5V14H7V17H10Z";--icon-fullscreen-exit: "M14,14H19V16H16V19H14V14M5,14H10V19H8V16H5V14M8,5H10V10H5V8H8V5M19,8V10H14V5H16V8H19Z";--icon-badge-success: "M10.5 18.2044L18.0992 10.0207C18.6629 9.41362 18.6277 8.46452 18.0207 7.90082C17.4136 7.33711 16.4645 7.37226 15.9008 7.97933L10.5 13.7956L8.0992 11.2101C7.53549 10.603 6.5864 10.5679 5.97933 11.1316C5.37226 11.6953 5.33711 12.6444 5.90082 13.2515L10.5 18.2044Z";--icon-badge-error: "m13.6 18.4c0 .8837-.7164 1.6-1.6 1.6-.8837 0-1.6-.7163-1.6-1.6s.7163-1.6 1.6-1.6c.8836 0 1.6.7163 1.6 1.6zm-1.6-13.9c.8284 0 1.5.67157 1.5 1.5v7c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5v-7c0-.82843.6716-1.5 1.5-1.5z";--icon-about: "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-.922.163-.241.369-.419.617-.532.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.72-.1.216-.234.408-.405.574a3.48 3.48 0 0 1-.575.453c-.33.199-.613.42-.847.66-.234.242-.415.558-.543.949-.125.39-.19.916-.197 1.577ZM11.205 17.15c.21.206.46.31.75.31.196 0 .374-.049.534-.144.16-.096.287-.224.383-.384.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";--icon-edit-rotate: "M16.89,15.5L18.31,16.89C19.21,15.73 19.76,14.39 19.93,13H17.91C17.77,13.87 17.43,14.72 16.89,15.5M13,17.9V19.92C14.39,19.75 15.74,19.21 16.9,18.31L15.46,16.87C14.71,17.41 13.87,17.76 13,17.9M19.93,11C19.76,9.61 19.21,8.27 18.31,7.11L16.89,8.53C17.43,9.28 17.77,10.13 17.91,11M15.55,5.55L11,1V4.07C7.06,4.56 4,7.92 4,12C4,16.08 7.05,19.44 11,19.93V17.91C8.16,17.43 6,14.97 6,12C6,9.03 8.16,6.57 11,6.09V10L15.55,5.55Z";--icon-edit-flip-v: "M3 15V17H5V15M15 19V21H17V19M19 3H5C3.9 3 3 3.9 3 5V9H5V5H19V9H21V5C21 3.9 20.1 3 19 3M21 19H19V21C20.1 21 21 20.1 21 19M1 11V13H23V11M7 19V21H9V19M19 15V17H21V15M11 19V21H13V19M3 19C3 20.1 3.9 21 5 21V19Z";--icon-edit-flip-h: "M15 21H17V19H15M19 9H21V7H19M3 5V19C3 20.1 3.9 21 5 21H9V19H5V5H9V3H5C3.9 3 3 3.9 3 5M19 3V5H21C21 3.9 20.1 3 19 3M11 23H13V1H11M19 17H21V15H19M15 5H17V3H15M19 13H21V11H19M19 21C20.1 21 21 20.1 21 19H19Z";--icon-edit-brightness: "M12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6A6,6 0 0,1 18,12A6,6 0 0,1 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z";--icon-edit-contrast: "M12,20C9.79,20 7.79,19.1 6.34,17.66L17.66,6.34C19.1,7.79 20,9.79 20,12A8,8 0 0,1 12,20M6,8H8V6H9.5V8H11.5V9.5H9.5V11.5H8V9.5H6M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,16H17V14.5H12V16Z";--icon-edit-saturation: "M3,13A9,9 0 0,0 12,22C12,17 7.97,13 3,13M12,5.5A2.5,2.5 0 0,1 14.5,8A2.5,2.5 0 0,1 12,10.5A2.5,2.5 0 0,1 9.5,8A2.5,2.5 0 0,1 12,5.5M5.6,10.25A2.5,2.5 0 0,0 8.1,12.75C8.63,12.75 9.12,12.58 9.5,12.31C9.5,12.37 9.5,12.43 9.5,12.5A2.5,2.5 0 0,0 12,15A2.5,2.5 0 0,0 14.5,12.5C14.5,12.43 14.5,12.37 14.5,12.31C14.88,12.58 15.37,12.75 15.9,12.75C17.28,12.75 18.4,11.63 18.4,10.25C18.4,9.25 17.81,8.4 16.97,8C17.81,7.6 18.4,6.74 18.4,5.75C18.4,4.37 17.28,3.25 15.9,3.25C15.37,3.25 14.88,3.41 14.5,3.69C14.5,3.63 14.5,3.56 14.5,3.5A2.5,2.5 0 0,0 12,1A2.5,2.5 0 0,0 9.5,3.5C9.5,3.56 9.5,3.63 9.5,3.69C9.12,3.41 8.63,3.25 8.1,3.25A2.5,2.5 0 0,0 5.6,5.75C5.6,6.74 6.19,7.6 7.03,8C6.19,8.4 5.6,9.25 5.6,10.25M12,22A9,9 0 0,0 21,13C16,13 12,17 12,22Z";--icon-edit-crop: "M7,17V1H5V5H1V7H5V17A2,2 0 0,0 7,19H17V23H19V19H23V17M17,15H19V7C19,5.89 18.1,5 17,5H9V7H17V15Z";--icon-edit-text: "M18.5,4L19.66,8.35L18.7,8.61C18.25,7.74 17.79,6.87 17.26,6.43C16.73,6 16.11,6 15.5,6H13V16.5C13,17 13,17.5 13.33,17.75C13.67,18 14.33,18 15,18V19H9V18C9.67,18 10.33,18 10.67,17.75C11,17.5 11,17 11,16.5V6H8.5C7.89,6 7.27,6 6.74,6.43C6.21,6.87 5.75,7.74 5.3,8.61L4.34,8.35L5.5,4H18.5Z";--icon-edit-draw: "m21.879394 2.1631238c-1.568367-1.62768627-4.136546-1.53831744-5.596267.1947479l-8.5642801 10.1674753c-1.4906533-.224626-3.061232.258204-4.2082427 1.448604-1.0665468 1.106968-1.0997707 2.464806-1.1203996 3.308068-.00142.05753-.00277.113001-.00439.16549-.02754.894146-.08585 1.463274-.5821351 2.069648l-.80575206.98457.88010766.913285c1.0539516 1.093903 2.6691689 1.587048 4.1744915 1.587048 1.5279113 0 3.2235468-.50598 4.4466094-1.775229 1.147079-1.190514 1.612375-2.820653 1.395772-4.367818l9.796763-8.8879697c1.669907-1.5149954 1.75609-4.1802333.187723-5.8079195zm-16.4593821 13.7924592c.8752943-.908358 2.2944227-.908358 3.1697054 0 .8752942.908358.8752942 2.381259 0 3.289617-.5909138.61325-1.5255389.954428-2.53719.954428-.5223687 0-.9935663-.09031-1.3832112-.232762.3631253-.915463.3952949-1.77626.4154309-2.429737.032192-1.045425.072224-1.308557.3352649-1.581546z";--icon-edit-guides: "M1.39,18.36L3.16,16.6L4.58,18L5.64,16.95L4.22,15.54L5.64,14.12L8.11,16.6L9.17,15.54L6.7,13.06L8.11,11.65L9.53,13.06L10.59,12L9.17,10.59L10.59,9.17L13.06,11.65L14.12,10.59L11.65,8.11L13.06,6.7L14.47,8.11L15.54,7.05L14.12,5.64L15.54,4.22L18,6.7L19.07,5.64L16.6,3.16L18.36,1.39L22.61,5.64L5.64,22.61L1.39,18.36Z";--icon-edit-color: "M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z";--icon-edit-resize: "M10.59,12L14.59,8H11V6H18V13H16V9.41L12,13.41V16H20V4H8V12H10.59M22,2V18H12V22H2V12H6V2H22M10,14H4V20H10V14Z";--icon-external-source-placeholder: "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";--icon-facebook: "m12 1.5c-5.79901 0-10.5 4.70099-10.5 10.5 0 4.9427 3.41586 9.0888 8.01562 10.2045v-6.1086h-2.13281c-.41421 0-.75-.3358-.75-.75v-3.2812c0-.4142.33579-.75.75-.75h2.13281v-1.92189c0-.95748.22571-2.51089 1.38068-3.6497 1.1934-1.17674 3.1742-1.71859 6.2536-1.05619.3455.07433.5923.3798.5923.73323v2.75395c0 .41422-.3358.75-.75.75-.6917 0-1.2029.02567-1.5844.0819-.3865.05694-.5781.13711-.675.20223-.1087.07303-.2367.20457-.2367 1.02837v1.0781h2.3906c.2193 0 .4275.0959.57.2626.1425.1666.205.3872.1709.6038l-.5156 3.2813c-.0573.3647-.3716.6335-.7409.6335h-1.875v6.1058c4.5939-1.1198 8.0039-5.2631 8.0039-10.2017 0-5.79901-4.701-10.5-10.5-10.5zm-12 10.5c0-6.62744 5.37256-12 12-12 6.6274 0 12 5.37256 12 12 0 5.9946-4.3948 10.9614-10.1384 11.8564-.2165.0337-.4369-.0289-.6033-.1714s-.2622-.3506-.2622-.5697v-7.7694c0-.4142.3358-.75.75-.75h1.9836l.28-1.7812h-2.2636c-.4142 0-.75-.3358-.75-.75v-1.8281c0-.82854.0888-1.72825.9-2.27338.3631-.24396.8072-.36961 1.293-.4412.3081-.0454.6583-.07238 1.0531-.08618v-1.39629c-2.4096-.40504-3.6447.13262-4.2928.77165-.7376.72735-.9338 1.79299-.9338 2.58161v2.67189c0 .4142-.3358.75-.75.75h-2.13279v1.7812h2.13279c.4142 0 .75.3358.75.75v7.7712c0 .219-.0956.427-.2619.5695-.1662.1424-.3864.2052-.6028.1717-5.74968-.8898-10.1509-5.8593-10.1509-11.8583z";--icon-dropbox: "m6.01895 1.92072c.24583-.15659.56012-.15658.80593.00003l5.17512 3.29711 5.1761-3.29714c.2458-.15659.5601-.15658.8059.00003l5.5772 3.55326c.2162.13771.347.37625.347.63253 0 .25629-.1308.49483-.347.63254l-4.574 2.91414 4.574 2.91418c.2162.1377.347.3762.347.6325s-.1308.4948-.347.6325l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.1761-3.2971-5.17512 3.2971c-.24581.1566-.5601.1566-.80593 0l-5.578142-3.5532c-.216172-.1377-.347058-.3763-.347058-.6326s.130886-.4949.347058-.6326l4.574772-2.91408-4.574772-2.91411c-.216172-.1377-.347058-.37626-.347058-.63257 0-.2563.130886-.49486.347058-.63256zm.40291 8.61518-4.18213 2.664 4.18213 2.664 4.18144-2.664zm6.97504 2.664 4.1821 2.664 4.1814-2.664-4.1814-2.664zm2.7758-3.54668-4.1727 2.65798-4.17196-2.65798 4.17196-2.658zm1.4063-.88268 4.1814-2.664-4.1814-2.664-4.1821 2.664zm-6.9757-2.664-4.18144-2.664-4.18213 2.664 4.18213 2.664zm-4.81262 12.43736c.22254-.3494.68615-.4522 1.03551-.2297l5.17521 3.2966 5.1742-3.2965c.3493-.2226.813-.1198 1.0355.2295.2226.3494.1198.813-.2295 1.0355l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.57819-3.5532c-.34936-.2226-.45216-.6862-.22963-1.0355z";--icon-gdrive: "m7.73633 1.81806c.13459-.22968.38086-.37079.64707-.37079h7.587c.2718 0 .5223.14697.6548.38419l7.2327 12.94554c.1281.2293.1269.5089-.0031.7371l-3.7935 6.6594c-.1334.2342-.3822.3788-.6517.3788l-14.81918.0004c-.26952 0-.51831-.1446-.65171-.3788l-3.793526-6.6598c-.1327095-.233-.130949-.5191.004617-.7504zm.63943 1.87562-6.71271 11.45452 2.93022 5.1443 6.65493-11.58056zm3.73574 6.52652-2.39793 4.1727 4.78633.0001zm4.1168 4.1729 5.6967-.0002-6.3946-11.44563h-5.85354zm5.6844 1.4998h-13.06111l-2.96515 5.1598 13.08726-.0004z";--icon-gphotos: "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";--icon-instagram: "M6.225 12a5.775 5.775 0 1 1 11.55 0 5.775 5.775 0 0 1-11.55 0zM12 7.725a4.275 4.275 0 1 0 0 8.55 4.275 4.275 0 0 0 0-8.55zM18.425 6.975a1.4 1.4 0 1 0 0-2.8 1.4 1.4 0 0 0 0 2.8zM11.958.175h.084c2.152 0 3.823 0 5.152.132 1.35.134 2.427.41 3.362 1.013a7.15 7.15 0 0 1 2.124 2.124c.604.935.88 2.012 1.013 3.362.132 1.329.132 3 .132 5.152v.084c0 2.152 0 3.823-.132 5.152-.134 1.35-.41 2.427-1.013 3.362a7.15 7.15 0 0 1-2.124 2.124c-.935.604-2.012.88-3.362 1.013-1.329.132-3 .132-5.152.132h-.084c-2.152 0-3.824 0-5.153-.132-1.35-.134-2.427-.409-3.36-1.013a7.15 7.15 0 0 1-2.125-2.124C.716 19.62.44 18.544.307 17.194c-.132-1.329-.132-3-.132-5.152v-.084c0-2.152 0-3.823.132-5.152.133-1.35.409-2.427 1.013-3.362A7.15 7.15 0 0 1 3.444 1.32C4.378.716 5.456.44 6.805.307c1.33-.132 3-.132 5.153-.132zM6.953 1.799c-1.234.123-2.043.36-2.695.78A5.65 5.65 0 0 0 2.58 4.26c-.42.65-.657 1.46-.78 2.695C1.676 8.2 1.675 9.797 1.675 12c0 2.203 0 3.8.124 5.046.123 1.235.36 2.044.78 2.696a5.649 5.649 0 0 0 1.68 1.678c.65.421 1.46.658 2.694.78 1.247.124 2.844.125 5.047.125s3.8 0 5.046-.124c1.235-.123 2.044-.36 2.695-.78a5.648 5.648 0 0 0 1.68-1.68c.42-.65.657-1.46.78-2.694.123-1.247.124-2.844.124-5.047s-.001-3.8-.125-5.046c-.122-1.235-.359-2.044-.78-2.695a5.65 5.65 0 0 0-1.679-1.68c-.651-.42-1.46-.657-2.695-.78-1.246-.123-2.843-.124-5.046-.124-2.203 0-3.8 0-5.047.124z";--icon-flickr: "M5.95874 7.92578C3.66131 7.92578 1.81885 9.76006 1.81885 11.9994C1.81885 14.2402 3.66145 16.0744 5.95874 16.0744C8.26061 16.0744 10.1039 14.2396 10.1039 11.9994C10.1039 9.76071 8.26074 7.92578 5.95874 7.92578ZM0.318848 11.9994C0.318848 8.91296 2.85168 6.42578 5.95874 6.42578C9.06906 6.42578 11.6039 8.91232 11.6039 11.9994C11.6039 15.0877 9.06919 17.5744 5.95874 17.5744C2.85155 17.5744 0.318848 15.0871 0.318848 11.9994ZM18.3898 7.92578C16.0878 7.92578 14.2447 9.76071 14.2447 11.9994C14.2447 14.2396 16.088 16.0744 18.3898 16.0744C20.6886 16.0744 22.531 14.2401 22.531 11.9994C22.531 9.76019 20.6887 7.92578 18.3898 7.92578ZM12.7447 11.9994C12.7447 8.91232 15.2795 6.42578 18.3898 6.42578C21.4981 6.42578 24.031 8.91283 24.031 11.9994C24.031 15.0872 21.4982 17.5744 18.3898 17.5744C15.2794 17.5744 12.7447 15.0877 12.7447 11.9994Z";--icon-vk: var(--icon-external-source-placeholder);--icon-evernote: "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.276.01-.039.018-.078.022-.105.011-.061.023-.14.034-.23.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-.576-.097-.015-.18-.028-.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-.915.197.193.412.357.627.493a5.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.235-.212-.103-.5-.174-.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.996ZM15.638 11.626a.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";--icon-box: "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";--icon-onedrive: "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";--icon-huddle: "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"}:where(.lr-wgt-l10n_en-US,.lr-wgt-common),:host{--l10n-locale-name: "en-US";--l10n-upload-file: "Upload file";--l10n-upload-files: "Upload files";--l10n-choose-file: "Choose file";--l10n-choose-files: "Choose files";--l10n-drop-files-here: "Drop files here";--l10n-select-file-source: "Select file source";--l10n-selected: "Selected";--l10n-upload: "Upload";--l10n-add-more: "Add more";--l10n-cancel: "Cancel";--l10n-start-from-cancel: var(--l10n-cancel);--l10n-clear: "Clear";--l10n-camera-shot: "Shot";--l10n-upload-url: "Import";--l10n-upload-url-placeholder: "Paste link here";--l10n-edit-image: "Edit image";--l10n-edit-detail: "Details";--l10n-back: "Back";--l10n-done: "Done";--l10n-ok: "Ok";--l10n-remove-from-list: "Remove";--l10n-no: "No";--l10n-yes: "Yes";--l10n-confirm-your-action: "Confirm your action";--l10n-are-you-sure: "Are you sure?";--l10n-selected-count: "Selected:";--l10n-upload-error: "Upload error";--l10n-validation-error: "Validation error";--l10n-no-files: "No files selected";--l10n-browse: "Browse";--l10n-not-uploaded-yet: "Not uploaded yet...";--l10n-file__one: "file";--l10n-file__other: "files";--l10n-error__one: "error";--l10n-error__other: "errors";--l10n-header-uploading: "Uploading {{count}} {{plural:file(count)}}";--l10n-header-failed: "{{count}} {{plural:error(count)}}";--l10n-header-succeed: "{{count}} {{plural:file(count)}} uploaded";--l10n-header-total: "{{count}} {{plural:file(count)}} selected";--l10n-src-type-local: "From device";--l10n-src-type-from-url: "From link";--l10n-src-type-camera: "Camera";--l10n-src-type-draw: "Draw";--l10n-src-type-facebook: "Facebook";--l10n-src-type-dropbox: "Dropbox";--l10n-src-type-gdrive: "Google Drive";--l10n-src-type-gphotos: "Google Photos";--l10n-src-type-instagram: "Instagram";--l10n-src-type-flickr: "Flickr";--l10n-src-type-vk: "VK";--l10n-src-type-evernote: "Evernote";--l10n-src-type-box: "Box";--l10n-src-type-onedrive: "Onedrive";--l10n-src-type-huddle: "Huddle";--l10n-src-type-other: "Other";--l10n-src-type: var(--l10n-src-type-local);--l10n-caption-from-url: "Import from link";--l10n-caption-camera: "Camera";--l10n-caption-draw: "Draw";--l10n-caption-edit-file: "Edit file";--l10n-file-no-name: "No name...";--l10n-toggle-fullscreen: "Toggle fullscreen";--l10n-toggle-guides: "Toggle guides";--l10n-rotate: "Rotate";--l10n-flip-vertical: "Flip vertical";--l10n-flip-horizontal: "Flip horizontal";--l10n-brightness: "Brightness";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-resize: "Resize image";--l10n-crop: "Crop";--l10n-select-color: "Select color";--l10n-text: "Text";--l10n-draw: "Draw";--l10n-cancel-edit: "Cancel edit";--l10n-tab-view: "Preview";--l10n-tab-details: "Details";--l10n-file-name: "Name";--l10n-file-size: "Size";--l10n-cdn-url: "CDN URL";--l10n-file-size-unknown: "Unknown";--l10n-camera-permissions-denied: "Camera access denied";--l10n-camera-permissions-prompt: "Please allow access to the camera";--l10n-camera-permissions-request: "Request access";--l10n-files-count-limit-error-title: "Files count limit overflow";--l10n-files-count-limit-error-too-few: "You\2019ve chosen {{total}}. At least {{min}} required.";--l10n-files-count-limit-error-too-many: "You\2019ve chosen too many files. {{max}} is maximum.";--l10n-files-count-minimum: "At least {{count}} files are required";--l10n-files-count-allowed: "Only {{count}} files are allowed";--l10n-files-max-size-limit-error: "File is too big. Max file size is {{maxFileSize}}.";--l10n-has-validation-errors: "File validation error ocurred. Please, check your files before upload.";--l10n-images-only-accepted: "Only image files are accepted.";--l10n-file-type-not-allowed: "Uploading of these file types is not allowed."}:where(.lr-wgt-theme,.lr-wgt-common),:host{--darkmode: 0;--h-foreground: 208;--s-foreground: 4%;--l-foreground: calc(10% + 78% * var(--darkmode));--h-background: 208;--s-background: 4%;--l-background: calc(97% - 85% * var(--darkmode));--h-accent: 211;--s-accent: 100%;--l-accent: calc(50% - 5% * var(--darkmode));--h-confirm: 137;--s-confirm: 85%;--l-confirm: 53%;--h-error: 358;--s-error: 100%;--l-error: 66%;--shadows: 1;--h-shadow: 0;--s-shadow: 0%;--l-shadow: 0%;--opacity-normal: .6;--opacity-hover: .9;--opacity-active: 1;--ui-size: 32px;--gap-min: 2px;--gap-small: 4px;--gap-mid: 10px;--gap-max: 20px;--gap-table: 0px;--borders: 1;--border-radius-element: 8px;--border-radius-frame: 12px;--border-radius-thumb: 6px;--transition-duration: .2s;--modal-max-w: 800px;--modal-max-h: 600px;--modal-normal-w: 430px;--darkmode-minus: calc(1 + var(--darkmode) * -2);--clr-background: hsl(var(--h-background), var(--s-background), var(--l-background));--clr-background-dark: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-background-light: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 3% * var(--darkmode-minus)) );--clr-accent: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 15% * var(--darkmode)));--clr-accent-light: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 30%);--clr-accent-lightest: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 10%);--clr-accent-light-opaque: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 45% * var(--darkmode-minus)));--clr-accent-lightest-opaque: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) + 47% * var(--darkmode-minus)) );--clr-confirm: hsl(var(--h-confirm), var(--s-confirm), var(--l-confirm));--clr-error: hsl(var(--h-error), var(--s-error), var(--l-error));--clr-error-light: hsla(var(--h-error), var(--s-error), var(--l-error), 15%);--clr-error-lightest: hsla(var(--h-error), var(--s-error), var(--l-error), 5%);--clr-error-message-bgr: hsl(var(--h-error), var(--s-error), calc(var(--l-error) + 60% * var(--darkmode-minus)));--clr-txt: hsl(var(--h-foreground), var(--s-foreground), var(--l-foreground));--clr-txt-mid: hsl(var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 20% * var(--darkmode-minus)));--clr-txt-light: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 30% * var(--darkmode-minus)) );--clr-txt-lightest: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 50% * var(--darkmode-minus)) );--clr-shade-lv1: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 5%);--clr-shade-lv2: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 8%);--clr-shade-lv3: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 12%);--clr-generic-file-icon: var(--clr-txt-lightest);--border-light: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.1 - .05 * var(--darkmode)) * var(--borders)) );--border-mid: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.2 - .1 * var(--darkmode)) * var(--borders)) );--border-accent: 1px solid hsla(var(--h-accent), var(--s-accent), var(--l-accent), 1 * var(--borders));--border-dashed: 1px dashed hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), calc(.2 * var(--borders)));--clr-curtain: hsla(var(--h-background), var(--s-background), calc(var(--l-background)), 60%);--hsl-shadow: var(--h-shadow), var(--s-shadow), var(--l-shadow);--modal-shadow: 0px 0px 1px hsla(var(--hsl-shadow), calc((.3 + .65 * var(--darkmode)) * var(--shadows))), 0px 6px 20px hsla(var(--hsl-shadow), calc((.1 + .4 * var(--darkmode)) * var(--shadows)));--clr-btn-bgr-primary: var(--clr-accent);--clr-btn-bgr-primary-hover: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 4% * var(--darkmode-minus)) );--clr-btn-bgr-primary-active: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 8% * var(--darkmode-minus)) );--clr-btn-txt-primary: hsl(var(--h-accent), var(--s-accent), 98%);--shadow-btn-primary: none;--clr-btn-bgr-secondary: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-hover: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 7% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-active: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 12% * var(--darkmode-minus)) );--clr-btn-txt-secondary: var(--clr-txt-mid);--shadow-btn-secondary: none;--clr-btn-bgr-disabled: var(--clr-background);--clr-btn-txt-disabled: var(--clr-txt-lightest);--shadow-btn-disabled: none}@media only screen and (max-height: 600px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-h: 100%}}@media only screen and (max-width: 430px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-w: 100vw;--modal-max-h: var(--uploadcare-blocks-window-height)}}:where(.lr-wgt-theme,.lr-wgt-common),:host{color:var(--clr-txt);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}:where(.lr-wgt-theme,.lr-wgt-common) *,:host *{box-sizing:border-box}:where(.lr-wgt-theme,.lr-wgt-common) [hidden],:host [hidden]{display:none!important}:where(.lr-wgt-theme,.lr-wgt-common) [activity]:not([active]),:host [activity]:not([active]){display:none}:where(.lr-wgt-theme,.lr-wgt-common) dialog:not([open]) [activity],:host dialog:not([open]) [activity]{display:none}:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{display:flex;align-items:center;justify-content:center;height:var(--ui-size);padding-right:1.4em;padding-left:1.4em;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--border-radius-element);cursor:pointer;user-select:none}@media only screen and (max-width: 800px){:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{padding-right:1em;padding-left:1em}}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn,:host button.primary-btn{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary);box-shadow:var(--shadow-btn-primary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:hover,:host button.primary-btn:hover{background-color:var(--clr-btn-bgr-primary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:active,:host button.primary-btn:active{background-color:var(--clr-btn-bgr-primary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn,:host button.secondary-btn{color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:hover,:host button.secondary-btn:hover{background-color:var(--clr-btn-bgr-secondary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:active,:host button.secondary-btn:active{background-color:var(--clr-btn-bgr-secondary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn,:host button.mini-btn{width:var(--ui-size);height:var(--ui-size);padding:0;background-color:transparent;border:none;cursor:pointer;transition:var(--transition-duration) ease;color:var(--clr-txt)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:hover,:host button.mini-btn:hover{background-color:var(--clr-shade-lv1)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:active,:host button.mini-btn:active{background-color:var(--clr-shade-lv2)}:where(.lr-wgt-theme,.lr-wgt-common) :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]),:host :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]){color:var(--clr-btn-txt-disabled);background-color:var(--clr-btn-bgr-disabled);box-shadow:var(--shadow-btn-disabled);pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) a,:host a{color:var(--clr-accent);text-decoration:none}:where(.lr-wgt-theme,.lr-wgt-common) a[disabled],:host a[disabled]{pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]{display:flex;width:100%;height:var(--ui-size);padding-right:.6em;padding-left:.6em;color:var(--clr-txt);font-size:1em;font-family:inherit;background-color:var(--clr-background-light);border:var(--border-light);border-radius:var(--border-radius-element);transition:var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]::placeholder{color:var(--clr-txt-lightest)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:hover,:host input[type=text]:hover{border-color:var(--clr-accent-light)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:focus,:host input[type=text]:focus{border-color:var(--clr-accent);outline:none}:where(.lr-wgt-theme,.lr-wgt-common) input[disabled],:host input[disabled]{opacity:.6;pointer-events:none}lr-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size)}lr-icon svg{width:calc(var(--ui-size) / 2);height:calc(var(--ui-size) / 2)}lr-icon:not([raw]) path{fill:currentColor}lr-tabs{display:grid;grid-template-rows:min-content minmax(var(--ui-size),auto);height:100%;overflow:hidden;color:var(--clr-txt-lightest)}lr-tabs>.tabs-row{display:flex;grid-template-columns:minmax();background-color:var(--clr-background-light)}lr-tabs>.tabs-context{overflow-y:auto}lr-tabs .tabs-row>.tab{display:flex;flex-grow:1;align-items:center;justify-content:center;height:var(--ui-size);border-bottom:var(--border-light);cursor:pointer;transition:var(--transition-duration)}lr-tabs .tabs-row>.tab[current]{color:var(--clr-txt);border-color:var(--clr-txt)}lr-range{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--ui-size)}lr-range datalist{display:none}lr-range input{width:100%;height:100%;opacity:0}lr-range .track-wrapper{position:absolute;right:10px;left:10px;display:flex;align-items:center;justify-content:center;height:2px;user-select:none;pointer-events:none}lr-range .track{position:absolute;right:0;left:0;display:flex;align-items:center;justify-content:center;height:2px;background-color:currentColor;border-radius:2px;opacity:.5}lr-range .slider{position:absolute;width:16px;height:16px;background-color:currentColor;border-radius:100%;transform:translate(-50%)}lr-range .bar{position:absolute;left:0;height:100%;background-color:currentColor;border-radius:2px}lr-range .caption{position:absolute;display:inline-flex;justify-content:center}lr-color{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size);overflow:hidden;background-color:var(--clr-background);cursor:pointer}lr-color[current]{background-color:var(--clr-txt)}lr-color input[type=color]{position:absolute;display:block;width:100%;height:100%;opacity:0}lr-color .current-color{position:absolute;width:50%;height:50%;border:2px solid #fff;border-radius:100%;pointer-events:none}lr-config{display:none}lr-simple-btn{position:relative;display:inline-flex}lr-simple-btn button{padding-left:.2em!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-simple-btn button lr-icon svg{transform:scale(.8)}lr-simple-btn button:hover{background-color:var(--clr-btn-bgr-secondary-hover)}lr-simple-btn button:active{background-color:var(--clr-btn-bgr-secondary-active)}lr-simple-btn>lr-drop-area{display:contents}lr-simple-btn .visual-drop-area{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--gap-min);border:var(--border-dashed);border-radius:inherit;opacity:0;transition:border-color var(--transition-duration) ease,background-color var(--transition-duration) ease,opacity var(--transition-duration) ease}lr-simple-btn .visual-drop-area:before{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--clr-txt-light);background-color:var(--clr-background);border-radius:inherit;content:var(--l10n-drop-files-here)}lr-simple-btn>lr-drop-area[drag-state=active] .visual-drop-area{background-color:var(--clr-accent-lightest);opacity:1}lr-simple-btn>lr-drop-area[drag-state=inactive] .visual-drop-area{background-color:var(--clr-shade-lv1);opacity:0}lr-simple-btn>lr-drop-area[drag-state=near] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent-light);opacity:1}lr-simple-btn>lr-drop-area[drag-state=over] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent);opacity:1}lr-simple-btn>:where(lr-drop-area[drag-state="active"],lr-drop-area[drag-state="near"],lr-drop-area[drag-state="over"]) button{box-shadow:none}lr-simple-btn>lr-drop-area:after{content:""}lr-source-btn{display:flex;align-items:center;margin-bottom:var(--gap-min);padding:var(--gap-min) var(--gap-mid);color:var(--clr-txt-mid);border-radius:var(--border-radius-element);cursor:pointer;transition-duration:var(--transition-duration);transition-property:background-color,color;user-select:none}lr-source-btn:hover{color:var(--clr-accent);background-color:var(--clr-accent-lightest)}lr-source-btn:active{color:var(--clr-accent);background-color:var(--clr-accent-light)}lr-source-btn lr-icon{display:inline-flex;flex-grow:1;justify-content:center;min-width:var(--ui-size);margin-right:var(--gap-mid);opacity:.8}lr-source-btn[type=local]>.txt:after{content:var(--l10n-local-files)}lr-source-btn[type=camera]>.txt:after{content:var(--l10n-camera)}lr-source-btn[type=url]>.txt:after{content:var(--l10n-from-url)}lr-source-btn[type=other]>.txt:after{content:var(--l10n-other)}lr-source-btn .txt{display:flex;align-items:center;box-sizing:border-box;width:100%;height:var(--ui-size);padding:0;white-space:nowrap;border:none}lr-drop-area{padding:var(--gap-min);overflow:hidden;border:var(--border-dashed);border-radius:var(--border-radius-frame);transition:var(--transition-duration) ease}lr-drop-area,lr-drop-area .content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}lr-drop-area .text{position:relative;margin:var(--gap-mid);color:var(--clr-txt-light);transition:var(--transition-duration) ease}lr-drop-area[ghost][drag-state=inactive]{display:none;opacity:0}lr-drop-area[ghost]:not([fullscreen]):is([drag-state="active"],[drag-state="near"],[drag-state="over"]){background:var(--clr-background)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) :is(.text,.icon-container){color:var(--clr-accent)}lr-drop-area:is([drag-state="active"],[drag-state="near"],[drag-state="over"],:hover){color:var(--clr-accent);background:var(--clr-accent-lightest);border-color:var(--clr-accent-light)}lr-drop-area:is([drag-state="active"],[drag-state="near"]){opacity:1}lr-drop-area[drag-state=over]{border-color:var(--clr-accent);opacity:1}lr-drop-area[with-icon]{min-height:calc(var(--ui-size) * 6)}lr-drop-area[with-icon] .content-wrapper{display:flex;flex-direction:column}lr-drop-area[with-icon] .text{color:var(--clr-txt);font-weight:500;font-size:1.1em}lr-drop-area[with-icon] .icon-container{position:relative;width:calc(var(--ui-size) * 2);height:calc(var(--ui-size) * 2);margin:var(--gap-mid);overflow:hidden;color:var(--clr-txt);background-color:var(--clr-background);border-radius:50%;transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon{position:absolute;top:calc(50% - var(--ui-size) / 2);left:calc(50% - var(--ui-size) / 2);transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon:last-child{transform:translateY(calc(var(--ui-size) * 1.5))}lr-drop-area[with-icon]:hover .icon-container,lr-drop-area[with-icon]:hover .text{color:var(--clr-accent)}lr-drop-area[with-icon]:hover .icon-container{background-color:var(--clr-accent-lightest)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .icon-container{color:#fff;background-color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .text{color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:last-child{transform:translateY(0)}lr-drop-area[with-icon]>.content-wrapper[drag-state=near] lr-icon:last-child{transform:scale(1.3)}lr-drop-area[with-icon]>.content-wrapper[drag-state=over] lr-icon:last-child{transform:scale(1.5)}lr-drop-area[fullscreen]{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--gap-mid) * 2);height:calc(100vh - var(--gap-mid) * 2);margin:var(--gap-mid)}lr-drop-area[fullscreen] .content-wrapper{width:100%;max-width:calc(var(--modal-normal-w) * .8);height:calc(var(--ui-size) * 6);color:var(--clr-txt);background-color:var(--clr-background-light);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:var(--transition-duration) ease}lr-drop-area[with-icon][fullscreen][drag-state=active]>.content-wrapper,lr-drop-area[with-icon][fullscreen][drag-state=near]>.content-wrapper{transform:translateY(var(--gap-mid));opacity:0}lr-drop-area[with-icon][fullscreen][drag-state=over]>.content-wrapper{transform:translateY(0);opacity:1}:is(lr-drop-area[with-icon][fullscreen])>.content-wrapper lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[clickable]{cursor:pointer}lr-modal{--modal-max-content-height: calc(var(--uploadcare-blocks-window-height, 100vh) - 4 * var(--gap-mid) - var(--ui-size));--modal-content-height-fill: var(--uploadcare-blocks-window-height, 100vh)}lr-modal[dialog-fallback]{--lr-z-max: 2147483647;position:fixed;z-index:var(--lr-z-max);display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;pointer-events:none;inset:0}lr-modal[dialog-fallback] dialog[open]{z-index:var(--lr-z-max);pointer-events:auto}lr-modal[dialog-fallback] dialog[open]+.backdrop{position:fixed;top:0;left:0;z-index:calc(var(--lr-z-max) - 1);align-items:center;justify-content:center;width:100vw;height:100vh;background-color:var(--clr-curtain);pointer-events:auto}lr-modal[strokes][dialog-fallback] dialog[open]+.backdrop{background-image:var(--modal-backdrop-background-image)}@supports selector(dialog::backdrop){lr-modal>dialog::backdrop{background-color:#0000001a}lr-modal[strokes]>dialog::backdrop{background-image:var(--modal-backdrop-background-image)}}lr-modal>dialog[open]{transform:translateY(0);visibility:visible;opacity:1}lr-modal>dialog:not([open]){transform:translateY(20px);visibility:hidden;opacity:0}lr-modal>dialog{display:flex;flex-direction:column;width:max-content;max-width:min(calc(100% - var(--gap-mid) * 2),calc(var(--modal-max-w) - var(--gap-mid) * 2));min-height:var(--ui-size);max-height:calc(var(--modal-max-h) - var(--gap-mid) * 2);margin:auto;padding:0;overflow:hidden;background-color:var(--clr-background-light);border:0;border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:transform calc(var(--transition-duration) * 2)}@media only screen and (max-width: 430px),only screen and (max-height: 600px){lr-modal>dialog>.content{height:var(--modal-max-content-height)}}lr-url-source{display:block;background-color:var(--clr-background-light)}lr-modal lr-url-source{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-url-source>.content{display:grid;grid-gap:var(--gap-small);grid-template-columns:1fr min-content;padding:var(--gap-mid);padding-top:0}lr-url-source .url-input{display:flex}lr-url-source .url-upload-btn:after{content:var(--l10n-upload-url)}lr-camera-source{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;overflow:hidden;background-color:var(--clr-background-light);border-radius:var(--border-radius-element)}lr-modal lr-camera-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:100vh;max-height:var(--modal-max-content-height)}lr-camera-source.initialized{height:max-content}@media only screen and (max-width: 430px){lr-camera-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-camera-source video{display:block;width:100%;max-height:100%;object-fit:contain;object-position:center center;background-color:var(--clr-background-dark);border-radius:var(--border-radius-element)}lr-camera-source .toolbar{position:absolute;bottom:0;display:flex;justify-content:space-between;width:100%;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-camera-source .content{display:flex;flex:1;justify-content:center;width:100%;padding:var(--gap-mid);padding-top:0;overflow:hidden}lr-camera-source .message-box{--padding: calc(var(--gap-max) * 2);display:flex;flex-direction:column;grid-gap:var(--gap-max);align-items:center;justify-content:center;padding:var(--padding) var(--padding) 0 var(--padding);color:var(--clr-txt)}lr-camera-source .message-box button{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary)}lr-camera-source .shot-btn{position:absolute;bottom:var(--gap-max);width:calc(var(--ui-size) * 1.8);height:calc(var(--ui-size) * 1.8);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;opacity:.85;transition:var(--transition-duration) ease}lr-camera-source .shot-btn:hover{transform:scale(1.05);opacity:1}lr-camera-source .shot-btn:active{background-color:var(--clr-txt-mid);opacity:1}lr-camera-source .shot-btn[disabled]{bottom:calc(var(--gap-max) * -1 - var(--gap-mid) - var(--ui-size) * 2)}lr-camera-source .shot-btn lr-icon svg{width:calc(var(--ui-size) / 1.5);height:calc(var(--ui-size) / 1.5)}lr-external-source{display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--clr-background-light);overflow:hidden}lr-modal lr-external-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height)}lr-external-source>.content{position:relative;display:grid;flex:1;grid-template-rows:1fr min-content}@media only screen and (max-width: 430px){lr-external-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-external-source iframe{display:block;width:100%;height:100%;border:none}lr-external-source .iframe-wrapper{overflow:hidden}lr-external-source .toolbar{display:grid;grid-gap:var(--gap-mid);grid-template-columns:max-content 1fr max-content max-content;align-items:center;width:100%;padding:var(--gap-mid);border-top:var(--border-light)}lr-external-source .back-btn{padding-left:0}lr-external-source .back-btn:after{content:var(--l10n-back)}lr-external-source .selected-counter{display:flex;grid-gap:var(--gap-mid);align-items:center;justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt-light)}lr-upload-list{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light);transition:opacity var(--transition-duration)}lr-modal lr-upload-list{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:max-content;max-height:var(--modal-max-content-height)}lr-upload-list .no-files{height:var(--ui-size);padding:var(--gap-max)}lr-upload-list .files{display:block;flex:1;min-height:var(--ui-size);padding:0 var(--gap-mid);overflow:auto}lr-upload-list .toolbar{display:flex;gap:var(--gap-small);justify-content:space-between;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-upload-list .toolbar .add-more-btn{padding-left:.2em}lr-upload-list .toolbar-spacer{flex:1}lr-upload-list lr-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--gap-mid) * 2);height:calc(100% - var(--gap-mid) * 2);margin:var(--gap-mid);border-radius:var(--border-radius-element)}lr-upload-list lr-activity-header>.header-text{padding:0 var(--gap-mid)}lr-start-from{display:block}lr-start-from .content{display:grid;grid-auto-flow:row;gap:var(--gap-max);width:100%;height:max-content;padding:var(--gap-max);overflow-y:auto;background-color:var(--clr-background-light)}lr-modal lr-start-from{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-file-item{display:block}lr-file-item>.inner{position:relative;display:grid;grid-template-columns:32px 1fr max-content;gap:var(--gap-min);align-items:center;margin-bottom:var(--gap-small);padding:var(--gap-mid);overflow:hidden;font-size:.95em;background-color:var(--clr-background);border-radius:var(--border-radius-element);transition:var(--transition-duration)}lr-file-item:last-of-type>.inner{margin-bottom:0}lr-file-item>.inner[focused]{background-color:transparent}lr-file-item>.inner[uploading] .edit-btn{display:none}lr-file-item>:where(.inner[failed],.inner[limit-overflow]){background-color:var(--clr-error-lightest)}lr-file-item .thumb{position:relative;display:inline-flex;width:var(--ui-size);height:var(--ui-size);background-color:var(--clr-shade-lv1);background-position:center center;background-size:cover;border-radius:var(--border-radius-thumb)}lr-file-item .file-name-wrapper{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--gap-mid);padding-left:var(--gap-mid);overflow:hidden;color:var(--clr-txt-light);transition:color var(--transition-duration)}lr-file-item .file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}lr-file-item .file-error{display:none;color:var(--clr-error);font-size:.85em;line-height:130%}lr-file-item button.remove-btn,lr-file-item button.edit-btn{color:var(--clr-txt-lightest)!important}lr-file-item button.upload-btn{display:none}lr-file-item button:hover{color:var(--clr-txt-light)}lr-file-item .badge{position:absolute;top:calc(var(--ui-size) * -.13);right:calc(var(--ui-size) * -.13);width:calc(var(--ui-size) * .44);height:calc(var(--ui-size) * .44);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;transform:scale(.3);opacity:0;transition:var(--transition-duration) ease}lr-file-item>.inner:where([failed],[limit-overflow],[finished]) .badge{transform:scale(1);opacity:1}lr-file-item>.inner[finished] .badge{background-color:var(--clr-confirm)}lr-file-item>.inner:where([failed],[limit-overflow]) .badge{background-color:var(--clr-error)}lr-file-item>.inner:where([failed],[limit-overflow]) .file-error{display:block}lr-file-item .badge lr-icon,lr-file-item .badge lr-icon svg{width:100%;height:100%}lr-file-item .progress-bar{top:calc(100% - 2px);height:2px}lr-file-item .file-actions{display:flex;gap:var(--gap-min);align-items:center;justify-content:center}lr-upload-details{display:flex;flex-direction:column;width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height);overflow:hidden;background-color:var(--clr-background-light)}lr-upload-details>.content{position:relative;display:grid;flex:1;grid-template-rows:auto min-content}lr-upload-details lr-tabs .tabs-context{position:relative}lr-upload-details .toolbar{display:grid;grid-template-columns:min-content min-content 1fr min-content;gap:var(--gap-mid);padding:var(--gap-mid);border-top:var(--border-light)}lr-upload-details .toolbar[edit-disabled]{display:flex;justify-content:space-between}lr-upload-details .remove-btn{padding-left:.5em}lr-upload-details .detail-btn{padding-left:0;color:var(--clr-txt);background-color:var(--clr-background)}lr-upload-details .edit-btn{padding-left:.5em}lr-upload-details .details{padding:var(--gap-max)}lr-upload-details .info-block{padding-top:var(--gap-max);padding-bottom:calc(var(--gap-max) + var(--gap-table));color:var(--clr-txt);border-bottom:var(--border-light)}lr-upload-details .info-block:first-of-type{padding-top:0}lr-upload-details .info-block:last-of-type{border-bottom:none}lr-upload-details .info-block>.info-block_name{margin-bottom:.4em;color:var(--clr-txt-light);font-size:.8em}lr-upload-details .cdn-link[disabled]{pointer-events:none}lr-upload-details .cdn-link[disabled]:before{filter:grayscale(1);content:var(--l10n-not-uploaded-yet)}lr-file-preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}lr-file-preview>lr-img{display:contents}lr-file-preview>lr-img>.img-view{position:absolute;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;object-fit:scale-down}lr-message-box{position:fixed;right:var(--gap-mid);bottom:var(--gap-mid);left:var(--gap-mid);z-index:100000;display:grid;grid-template-rows:min-content auto;color:var(--clr-txt);font-size:.9em;background:var(--clr-background);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:calc(var(--transition-duration) * 2)}lr-message-box[inline]{position:static}lr-message-box:not([active]){transform:translateY(10px);visibility:hidden;opacity:0}lr-message-box[error]{color:var(--clr-error);background-color:var(--clr-error-message-bgr)}lr-message-box .heading{display:grid;grid-template-columns:min-content auto min-content;padding:var(--gap-mid)}lr-message-box .caption{display:flex;align-items:center;word-break:break-word}lr-message-box .heading button{width:var(--ui-size);padding:0;color:currentColor;background-color:transparent;opacity:var(--opacity-normal)}lr-message-box .heading button:hover{opacity:var(--opacity-hover)}lr-message-box .heading button:active{opacity:var(--opacity-active)}lr-message-box .msg{padding:var(--gap-max);padding-top:0;text-align:left}lr-confirmation-dialog{display:block;padding:var(--gap-mid);padding-top:var(--gap-max)}lr-confirmation-dialog .message{display:flex;justify-content:center;padding:var(--gap-mid);padding-bottom:var(--gap-max);font-weight:500;font-size:1.1em}lr-confirmation-dialog .toolbar{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-mid);margin-top:var(--gap-mid)}lr-progress-bar-common{position:fixed;right:0;bottom:0;left:0;z-index:10000;display:block;height:var(--gap-mid);background-color:var(--clr-background);transition:opacity .3s}lr-progress-bar-common:not([active]){opacity:0;pointer-events:none}lr-progress-bar{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}lr-progress-bar .progress{width:calc(var(--l-width) * 1%);height:100%;background-color:var(--clr-accent-light);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}lr-progress-bar .progress--unknown{width:100%;transform-origin:0% 50%;animation:lr-indeterminateAnimation 1s infinite linear}lr-progress-bar .progress--hidden{opacity:0}@keyframes lr-indeterminateAnimation{0%{transform:translate(0) scaleX(0)}40%{transform:translate(0) scaleX(.4)}to{transform:translate(100%) scaleX(.5)}}lr-activity-header{display:flex;gap:var(--gap-mid);justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt);font-weight:500;font-size:1em;line-height:var(--ui-size)}lr-activity-header lr-icon{height:var(--ui-size)}lr-activity-header>*{display:flex;align-items:center}lr-activity-header button{display:inline-flex;align-items:center;justify-content:center;color:var(--clr-txt-mid)}lr-activity-header button:hover{background-color:var(--clr-background)}lr-activity-header button:active{background-color:var(--clr-background-dark)}lr-copyright .credits{padding:0 var(--gap-mid) var(--gap-mid) calc(var(--gap-mid) * 1.5);color:var(--clr-txt-lightest);font-weight:400;font-size:.85em;opacity:.7;transition:var(--transition-duration) ease}lr-copyright .credits:hover{opacity:1}:host(.lr-cloud-image-editor) lr-icon,.lr-cloud-image-editor lr-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host(.lr-cloud-image-editor) lr-icon svg,.lr-cloud-image-editor lr-icon svg{width:unset;height:unset}:host(.lr-cloud-image-editor) lr-icon:not([raw]) path,.lr-cloud-image-editor lr-icon:not([raw]) path{stroke-linejoin:round;fill:none;stroke:currentColor;stroke-width:1.2}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--icon-rotate: "M13.5.399902L12 1.9999l1.5 1.6M12.0234 2H14.4C16.3882 2 18 3.61178 18 5.6V8M4 17h9c.5523 0 1-.4477 1-1V7c0-.55228-.4477-1-1-1H4c-.55228 0-1 .44771-1 1v9c0 .5523.44771 1 1 1z";--icon-mirror: "M5.00042.399902l-1.5 1.599998 1.5 1.6M15.0004.399902l1.5 1.599998-1.5 1.6M3.51995 2H16.477M8.50042 16.7V6.04604c0-.30141-.39466-.41459-.5544-.159L1.28729 16.541c-.12488.1998.01877.459.2544.459h6.65873c.16568 0 .3-.1343.3-.3zm2.99998 0V6.04604c0-.30141.3947-.41459.5544-.159L18.7135 16.541c.1249.1998-.0187.459-.2544.459h-6.6587c-.1657 0-.3-.1343-.3-.3z";--icon-flip: "M19.6001 4.99993l-1.6-1.5-1.6 1.5m3.2 9.99997l-1.6 1.5-1.6-1.5M18 3.52337V16.4765M3.3 8.49993h10.654c.3014 0 .4146-.39466.159-.5544L3.459 1.2868C3.25919 1.16192 3 1.30557 3 1.5412v6.65873c0 .16568.13432.3.3.3zm0 2.99997h10.654c.3014 0 .4146.3947.159.5544L3.459 18.7131c-.19981.1248-.459-.0188-.459-.2544v-6.6588c0-.1657.13432-.3.3-.3z";--icon-sad: "M2 17c4.41828-4 11.5817-4 16 0M16.5 5c0 .55228-.4477 1-1 1s-1-.44772-1-1 .4477-1 1-1 1 .44772 1 1zm-11 0c0 .55228-.44772 1-1 1s-1-.44772-1-1 .44772-1 1-1 1 .44772 1 1z";--icon-closeMax: "M3 3l14 14m0-14L3 17";--icon-crop: "M20 14H7.00513C6.45001 14 6 13.55 6 12.9949V0M0 6h13.0667c.5154 0 .9333.41787.9333.93333V20M14.5.399902L13 1.9999l1.5 1.6M13 2h2c1.6569 0 3 1.34315 3 3v2M5.5 19.5999l1.5-1.6-1.5-1.6M7 18H5c-1.65685 0-3-1.3431-3-3v-2";--icon-tuning: "M8 10h11M1 10h4M1 4.5h11m3 0h4m-18 11h11m3 0h4M12 4.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M5 10a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M12 15.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0";--icon-filters: "M4.5 6.5a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m-3.5 6a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m7 0a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0";--icon-done: "M1 10.6316l5.68421 5.6842L19 4";--icon-original: "M0 40L40-.00000133";--icon-slider: "M0 10h11m0 0c0 1.1046.8954 2 2 2s2-.8954 2-2m-4 0c0-1.10457.8954-2 2-2s2 .89543 2 2m0 0h5";--icon-exposure: "M10 20v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M5 10a5 5 0 1010 0 5 5 0 10-10 0";--icon-contrast: "M2 10a8 8 0 1016 0 8 8 0 10-16 0m8-8v16m8-8h-8m7.5977 2.5H10m6.24 2.5H10m7.6-7.5H10M16.2422 5H10";--icon-brightness: "M15 10c0 2.7614-2.2386 5-5 5m5-5c0-2.76142-2.2386-5-5-5m5 5h-5m0 5c-2.76142 0-5-2.2386-5-5 0-2.76142 2.23858-5 5-5m0 10V5m0 15v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M14.3242 7.5H10m4.3242 5H10";--icon-gamma: "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";--icon-enhance: "M19 13h-2m0 0c-2.2091 0-4-1.7909-4-4m4 4c-2.2091 0-4 1.7909-4 4m0-8V7m0 2c0 2.2091-1.7909 4-4 4m-2 0h2m0 0c2.2091 0 4 1.7909 4 4m0 0v2M8 8.5H6.5m0 0c-1.10457 0-2-.89543-2-2m2 2c-1.10457 0-2 .89543-2 2m0-4V5m0 1.5c0 1.10457-.89543 2-2 2M1 8.5h1.5m0 0c1.10457 0 2 .89543 2 2m0 0V12M12 3h-1m0 0c-.5523 0-1-.44772-1-1m1 1c-.5523 0-1 .44772-1 1m0-2V1m0 1c0 .55228-.44772 1-1 1M8 3h1m0 0c.55228 0 1 .44772 1 1m0 0v1";--icon-saturation: ' ';--icon-warmth: ' ';--icon-vibrance: ' '}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--l10n-cancel: "Cancel";--l10n-apply: "Apply";--l10n-brightness: "Brightness";--l10n-exposure: "Exposure";--l10n-gamma: "Gamma";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-vibrance: "Vibrance";--l10n-warmth: "Warmth";--l10n-enhance: "Enhance";--l10n-original: "Original"}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--rgb-primary-accent: 6, 2, 196;--rgb-text-base: 0, 0, 0;--rgb-text-accent-contrast: 255, 255, 255;--rgb-fill-contrast: 255, 255, 255;--rgb-fill-shaded: 245, 245, 245;--rgb-shadow: 0, 0, 0;--rgb-error: 209, 81, 81;--opacity-shade-mid: .2;--color-primary-accent: rgb(var(--rgb-primary-accent));--color-text-base: rgb(var(--rgb-text-base));--color-text-accent-contrast: rgb(var(--rgb-text-accent-contrast));--color-text-soft: rgb(var(--rgb-fill-contrast));--color-text-error: rgb(var(--rgb-error));--color-fill-contrast: rgb(var(--rgb-fill-contrast));--color-modal-backdrop: rgba(var(--rgb-fill-shaded), .95);--color-image-background: rgba(var(--rgb-fill-shaded));--color-outline: rgba(var(--rgb-text-base), var(--opacity-shade-mid));--color-underline: rgba(var(--rgb-text-base), .08);--color-shade: rgba(var(--rgb-text-base), .02);--color-focus-ring: var(--color-primary-accent);--color-input-placeholder: rgba(var(--rgb-text-base), .32);--color-error: rgb(var(--rgb-error));--font-size-ui: 16px;--font-size-title: 18px;--font-weight-title: 500;--font-size-soft: 14px;--size-touch-area: 40px;--size-panel-heading: 66px;--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--border-radius-connect: 2px;--border-radius-editor: 3px;--border-radius-thumb: 4px;--border-radius-ui: 5px;--border-radius-base: 6px;--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--opacity-min: var(--opacity-shade-mid);--opacity-mid: .1;--opacity-max: .05;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--shadow-base: 0px 5px 15px rgba(var(--rgb-shadow), .1), 0px 1px 4px rgba(var(--rgb-shadow), .15);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}:host(.lr-cloud-image-editor) :is([can-handle-paste]:hover,[can-handle-paste]:focus),.lr-cloud-image-editor :is([can-handle-paste]:hover,[can-handle-paste]:focus){--can-handle-paste: "true"}:host(.lr-cloud-image-editor) :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover),.lr-cloud-image-editor :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover){--filter-effect: var(--hover-filter) !important;--opacity-effect: var(--hover-opacity) !important;--color-effect: var(--hover-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex]:active,[with-effects]:active),.lr-cloud-image-editor :is([tabindex]:active,[with-effects]:active){--filter-effect: var(--down-filter) !important;--opacity-effect: var(--down-opacity) !important;--color-effect: var(--down-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex][active],[with-effects][active]),.lr-cloud-image-editor :is([tabindex][active],[with-effects][active]){--filter-effect: var(--active-filter) !important;--opacity-effect: var(--active-opacity) !important;--color-effect: var(--active-color-rgb) !important}:host(.lr-cloud-image-editor) [hidden-scrollbar]::-webkit-scrollbar,.lr-cloud-image-editor [hidden-scrollbar]::-webkit-scrollbar{display:none}:host(.lr-cloud-image-editor) [hidden-scrollbar],.lr-cloud-image-editor [hidden-scrollbar]{-ms-overflow-style:none;scrollbar-width:none}:host(.lr-cloud-image-editor.editor_ON),.lr-cloud-image-editor.editor_ON{--modal-header-opacity: 0;--modal-header-height: 0px;--modal-toolbar-height: calc(var(--size-panel-heading) * 2)}:host(.lr-cloud-image-editor.editor_OFF),.lr-cloud-image-editor.editor_OFF{--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading)}:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-min-img-height: var(--modal-toolbar-height);--l-max-img-height: 100%;--l-edit-button-width: 120px;--l-toolbar-horizontal-padding: var(--cldtr-gap-mid-1);position:relative;display:grid;grid-template-rows:minmax(var(--l-min-img-height),var(--l-max-img-height)) minmax(var(--modal-toolbar-height),auto);height:100%;overflow:hidden;overflow-y:auto;transition:.3s}@media only screen and (max-width: 800px){:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-edit-button-width: 70px;--l-toolbar-horizontal-padding: var(--cldtr-gap-min)}}:host(.lr-cloud-image-editor)>.wrapper>.viewport,.lr-cloud-image-editor>.wrapper>.viewport{display:flex;align-items:center;justify-content:center;overflow:hidden}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image{--viewer-image-opacity: 1;position:absolute;top:0;left:0;z-index:10;display:block;box-sizing:border-box;width:100%;height:100%;object-fit:scale-down;background-color:var(--color-image-background);transform:scale(1);opacity:var(--viewer-image-opacity);user-select:none;pointer-events:auto}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_visible_viewer,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_visible_viewer{transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-4)}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper{--viewer-image-opacity: 0;background-image:var(--transparent-pixel);transform:scale(1);transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_effects,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_effects{--viewer-image-opacity: 0;transform:scale(1);transition:opacity var(--transition-duration-3) cubic-bezier(.5,0,1,1),transform var(--transition-duration-4);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container,.lr-cloud-image-editor>.wrapper>.viewport>.image_container{position:relative;display:block;width:100%;height:100%;background-color:var(--color-image-background);transition:var(--transition-duration-3)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar,.lr-cloud-image-editor>.wrapper>.toolbar{position:relative;transition:.3s}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content{position:absolute;bottom:0;left:0;box-sizing:border-box;width:100%;height:var(--modal-toolbar-height);min-height:var(--size-panel-heading);background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer{display:flex;align-items:center;justify-content:space-between;height:var(--size-panel-heading);padding-right:var(--l-toolbar-horizontal-padding);padding-left:var(--l-toolbar-horizontal-padding)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor{display:flex}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.info_pan,.lr-cloud-image-editor>.wrapper>.viewport>.info_pan{position:absolute;user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer{position:absolute;z-index:2;display:flex;max-width:120px;transform:translate(-40px);user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer>.file_type,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer>.file_type{padding:4px .8em}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash,.lr-cloud-image-editor>.wrapper>.network_problems_splash{position:absolute;z-index:4;display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:rgba(var(--rgb-text-base),.6);background-color:rgba(var(--rgb-fill-shaded));border-radius:50%}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text{margin-top:var(--cldtr-gap-max);font-size:var(--font-size-ui)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_footer,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_footer{display:flex;align-items:center;justify-content:center;height:var(--size-panel-heading)}lr-crop-frame>.svg{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);opacity:inherit;transition:var(--transition-duration-3)}lr-crop-frame>.thumb{--idle-color-rgb: var(--color-text-base);--hover-color-rgb: var(--color-primary-accent);--focus-color-rgb: var(--color-primary-accent);--down-color-rgb: var(--color-primary-accent);--color-effect: var(--idle-color-rgb);color:var(--color-effect);transition:color var(--transition-duration-3),opacity var(--transition-duration-3)}lr-crop-frame>.thumb--visible{opacity:1;pointer-events:auto}lr-crop-frame>.thumb--hidden{opacity:0;pointer-events:none}lr-crop-frame>.guides{transition:var(--transition-duration-3)}lr-crop-frame>.guides--hidden{opacity:0}lr-crop-frame>.guides--semi-hidden{opacity:.2}lr-crop-frame>.guides--visible{opacity:1}lr-editor-button-control,lr-editor-crop-button-control,lr-editor-filter-control,lr-editor-operation-control{--l-base-min-width: 40px;--l-base-height: var(--l-base-min-width);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--filter-effect: var(--idle-filter);--idle-color-rgb: var(--rgb-text-base);--idle-opacity: .05;--idle-filter: 1;--hover-color-rgb: var(--idle-color-rgb);--hover-opacity: .08;--hover-filter: .8;--down-color-rgb: var(--hover-color-rgb);--down-opacity: .12;--down-filter: .6;position:relative;display:grid;grid-template-columns:var(--l-base-min-width) auto;align-items:center;height:var(--l-base-height);color:rgba(var(--idle-color-rgb));outline:none;cursor:pointer;transition:var(--l-width-transition)}lr-editor-button-control.active,lr-editor-operation-control.active,lr-editor-crop-button-control.active,lr-editor-filter-control.active{--idle-color-rgb: var(--rgb-primary-accent)}lr-editor-filter-control.not_active .preview[loaded]{opacity:1}lr-editor-filter-control.active .preview{opacity:0}lr-editor-button-control.not_active,lr-editor-operation-control.not_active,lr-editor-crop-button-control.not_active,lr-editor-filter-control.not_active{--idle-color-rgb: var(--rgb-text-base)}lr-editor-button-control>.before,lr-editor-operation-control>.before,lr-editor-crop-button-control>.before,lr-editor-filter-control>.before{position:absolute;right:0;left:0;z-index:-1;width:100%;height:100%;background-color:rgba(var(--color-effect),var(--opacity-effect));border-radius:var(--border-radius-editor);transition:var(--transition-duration-3)}lr-editor-button-control>.title,lr-editor-operation-control>.title,lr-editor-crop-button-control>.title,lr-editor-filter-control>.title{padding-right:var(--cldtr-gap-mid-1);font-size:.7em;letter-spacing:1.004px;text-transform:uppercase}lr-editor-filter-control>.preview{position:absolute;right:0;left:0;z-index:1;width:100%;height:var(--l-base-height);background-repeat:no-repeat;background-size:contain;border-radius:var(--border-radius-editor);opacity:0;filter:brightness(var(--filter-effect));transition:var(--transition-duration-3)}lr-editor-filter-control>.original-icon{color:var(--color-text-base);opacity:.3}lr-editor-image-cropper{position:absolute;top:0;left:0;z-index:10;display:block;width:100%;height:100%;opacity:0;pointer-events:none;touch-action:none}lr-editor-image-cropper.active_from_editor{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.active_from_viewer{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.inactive_to_editor{opacity:0;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1),opacity var(--transition-duration-3) calc(var(--transition-duration-3) + .05s);pointer-events:none}lr-editor-image-cropper>.canvas{position:absolute;top:0;left:0;z-index:1;display:block;width:100%;height:100%}lr-editor-image-fader{position:absolute;top:0;left:0;display:block;width:100%;height:100%}lr-editor-image-fader.active_from_viewer{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-start);pointer-events:auto}lr-editor-image-fader.active_from_cropper{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:auto}lr-editor-image-fader.inactive_to_cropper{z-index:3;transform:scale(1);opacity:0;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}lr-editor-image-fader .fader-image{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:scale-down;transform:scale(1);user-select:none;content-visibility:auto}lr-editor-image-fader .fader-image--preview{background-color:var(--color-image-background);border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);transform:scale(1);opacity:0;transition:var(--transition-duration-3)}lr-editor-scroller{display:flex;align-items:center;width:100%;height:100%;overflow-x:scroll}lr-editor-slider{display:flex;align-items:center;justify-content:center;width:100%;height:66px}lr-editor-toolbar{position:relative;width:100%;height:100%}@media only screen and (max-width: 600px){lr-editor-toolbar{--l-tab-gap: var(--cldtr-gap-mid-1);--l-slider-padding: var(--cldtr-gap-min);--l-controls-padding: var(--cldtr-gap-min)}}@media only screen and (min-width: 601px){lr-editor-toolbar{--l-tab-gap: calc(var(--cldtr-gap-mid-1) + var(--cldtr-gap-max));--l-slider-padding: var(--cldtr-gap-mid-1);--l-controls-padding: var(--cldtr-gap-mid-1)}}lr-editor-toolbar>.toolbar-container{position:relative;width:100%;height:100%;overflow:hidden}lr-editor-toolbar>.toolbar-container>.sub-toolbar{position:absolute;display:grid;grid-template-rows:1fr 1fr;width:100%;height:100%;background-color:var(--color-fill-contrast);transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-3) ease-in-out,visibility var(--transition-duration-3) ease-in-out}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--visible{transform:translateY(0);opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--top-hidden{transform:translateY(100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--bottom-hidden{transform:translateY(-100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row{display:flex;align-items:center;justify-content:space-between;padding-right:var(--l-controls-padding);padding-left:var(--l-controls-padding)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles{position:relative;display:grid;grid-auto-flow:column;grid-gap:0px var(--l-tab-gap);align-items:center;height:100%}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggles_indicator{position:absolute;bottom:0;left:0;width:var(--size-touch-area);height:2px;background-color:var(--color-primary-accent);transform:translate(0);transition:transform var(--transition-duration-3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row{position:relative}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content{position:absolute;top:0;left:0;display:flex;width:100%;height:100%;overflow:hidden;opacity:0;content-visibility:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--visible{opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--hidden{opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--visible{display:contents}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles.tab-toggles--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_align{display:grid;grid-template-areas:". inner .";grid-template-columns:1fr auto 1fr;box-sizing:border-box;min-width:100%;padding-left:var(--cldtr-gap-max)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner{display:grid;grid-area:inner;grid-auto-flow:column;grid-gap:calc((var(--cldtr-gap-min) - 1px) * 3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner:last-child{padding-right:var(--cldtr-gap-max)}lr-editor-toolbar .controls-list_last-item{margin-right:var(--cldtr-gap-max)}lr-editor-toolbar .info-tooltip_container{position:absolute;display:flex;align-items:flex-start;justify-content:center;width:100%;height:100%}lr-editor-toolbar .info-tooltip_wrapper{position:absolute;top:calc(-100% - var(--cldtr-gap-mid-2));display:flex;flex-direction:column;justify-content:flex-end;height:100%;pointer-events:none}lr-editor-toolbar .info-tooltip{z-index:3;padding-top:calc(var(--cldtr-gap-min) / 2);padding-right:var(--cldtr-gap-min);padding-bottom:calc(var(--cldtr-gap-min) / 2);padding-left:var(--cldtr-gap-min);color:var(--color-text-base);font-size:.7em;letter-spacing:1px;text-transform:uppercase;background-color:var(--color-text-accent-contrast);border-radius:var(--border-radius-editor);transform:translateY(100%);opacity:0;transition:var(--transition-duration-3)}lr-editor-toolbar .info-tooltip_visible{transform:translateY(0);opacity:1}lr-editor-toolbar .slider{padding-right:var(--l-slider-padding);padding-left:var(--l-slider-padding)}lr-btn-ui{--filter-effect: var(--idle-brightness);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--l-transition-effect: var(--css-transition, color var(--transition-duration-2), filter var(--transition-duration-2));display:inline-flex;align-items:center;box-sizing:var(--css-box-sizing, border-box);height:var(--css-height, var(--size-touch-area));padding-right:var(--css-padding-right, var(--cldtr-gap-mid-1));padding-left:var(--css-padding-left, var(--cldtr-gap-mid-1));color:rgba(var(--color-effect),var(--opacity-effect));outline:none;cursor:pointer;filter:brightness(var(--filter-effect));transition:var(--l-transition-effect);user-select:none}lr-btn-ui .text{white-space:nowrap}lr-btn-ui .icon{display:flex;align-items:center;justify-content:center;color:rgba(var(--color-effect),var(--opacity-effect));filter:brightness(var(--filter-effect));transition:var(--l-transition-effect)}lr-btn-ui .icon_left{margin-right:var(--cldtr-gap-mid-1);margin-left:0}lr-btn-ui .icon_right{margin-right:0;margin-left:var(--cldtr-gap-mid-1)}lr-btn-ui .icon_single{margin-right:0;margin-left:0}lr-btn-ui .icon_hidden{display:none;margin:0}lr-btn-ui.primary{--idle-color-rgb: var(--rgb-primary-accent);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--idle-color-rgb);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.boring{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-text-base);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: 1;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.default{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-primary-accent);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-line-loader-ui{position:absolute;top:0;left:0;z-index:9999;width:100%;height:2px;opacity:.5}lr-line-loader-ui .inner{width:25%;max-width:200px;height:100%}lr-line-loader-ui .line{width:100%;height:100%;background-color:var(--color-primary-accent);transform:translate(-101%);transition:transform 1s}lr-slider-ui{--l-thumb-size: 24px;--l-zero-dot-size: 5px;--l-zero-dot-offset: 2px;--idle-color-rgb: var(--rgb-text-base);--hover-color-rgb: var(--rgb-primary-accent);--down-color-rgb: var(--rgb-primary-accent);--color-effect: var(--idle-color-rgb);--l-color: rgb(var(--color-effect));position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:calc(var(--l-thumb-size) + (var(--l-zero-dot-size) + var(--l-zero-dot-offset)) * 2)}lr-slider-ui .thumb{position:absolute;left:0;width:var(--l-thumb-size);height:var(--l-thumb-size);background-color:var(--l-color);border-radius:50%;transform:translate(0);opacity:1;transition:opacity var(--transition-duration-2)}lr-slider-ui .steps{position:absolute;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:100%;padding-right:calc(var(--l-thumb-size) / 2);padding-left:calc(var(--l-thumb-size) / 2)}lr-slider-ui .border-step{width:0px;height:10px;border-right:1px solid var(--l-color);opacity:.6;transition:var(--transition-duration-2)}lr-slider-ui .minor-step{width:0px;height:4px;border-right:1px solid var(--l-color);opacity:.2;transition:var(--transition-duration-2)}lr-slider-ui .zero-dot{position:absolute;top:calc(100% - var(--l-zero-dot-offset) * 2);left:calc(var(--l-thumb-size) / 2 - var(--l-zero-dot-size) / 2);width:var(--l-zero-dot-size);height:var(--l-zero-dot-size);background-color:var(--color-primary-accent);border-radius:50%;opacity:0;transition:var(--transition-duration-3)}lr-slider-ui .input{position:absolute;width:calc(100% - 10px);height:100%;margin:0;cursor:pointer;opacity:0}lr-presence-toggle.transition{transition:opacity var(--transition-duration-3),visibility var(--transition-duration-3)}lr-presence-toggle.visible{opacity:1;pointer-events:inherit}lr-presence-toggle.hidden{opacity:0;pointer-events:none}ctx-provider{--color-text-base: black;--color-primary-accent: blue;display:flex;align-items:center;justify-content:center;width:190px;height:40px;padding-right:10px;padding-left:10px;background-color:#f5f5f5;border-radius:3px}lr-cloud-image-editor-activity{position:relative;display:flex;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light)}lr-modal lr-cloud-image-editor-activity{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%)}lr-select{display:inline-flex}lr-select>button{position:relative;display:inline-flex;align-items:center;padding-right:0!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-select>button>select{position:absolute;display:block;width:100%;height:100%;opacity:0} diff --git a/web/lr-file-uploader-inline.min.css b/web/lr-file-uploader-inline.min.css index 122b8c9eb..2920ba53c 100644 --- a/web/lr-file-uploader-inline.min.css +++ b/web/lr-file-uploader-inline.min.css @@ -1 +1 @@ -:where(.lr-wgt-cfg,.lr-wgt-common),:host{--cfg-pubkey: "YOUR_PUBLIC_KEY";--cfg-multiple: 1;--cfg-multiple-min: 0;--cfg-multiple-max: 0;--cfg-confirm-upload: 0;--cfg-img-only: 0;--cfg-accept: "";--cfg-external-sources-preferred-types: "";--cfg-store: "auto";--cfg-camera-mirror: 1;--cfg-source-list: "local, url, camera, dropbox, gdrive";--cfg-max-local-file-size-bytes: 0;--cfg-thumb-size: 76;--cfg-show-empty-list: 0;--cfg-use-local-image-editor: 0;--cfg-use-cloud-image-editor: 1;--cfg-remove-copyright: 0;--cfg-modal-scroll-lock: 1;--cfg-modal-backdrop-strokes: 0;--cfg-source-list-wrap: 1;--cfg-init-activity: "start-from";--cfg-done-activity: "";--cfg-remote-tab-session-key: "";--cfg-cdn-cname: "https://ucarecdn.com";--cfg-base-url: "https://upload.uploadcare.com";--cfg-social-base-url: "https://social.uploadcare.com";--cfg-secure-signature: "";--cfg-secure-expire: "";--cfg-secure-delivery-proxy: "";--cfg-retry-throttled-request-max-times: 1;--cfg-multipart-min-file-size: 26214400;--cfg-multipart-chunk-size: 5242880;--cfg-max-concurrent-requests: 10;--cfg-multipart-max-concurrent-requests: 4;--cfg-multipart-max-attempts: 3;--cfg-check-for-url-duplicates: 0;--cfg-save-url-for-recurrent-uploads: 0;--cfg-group-output: 0;--cfg-user-agent-integration: ""}:where(.lr-wgt-icons,.lr-wgt-common),:host{--icon-default: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-file: "m2.89453 1.2012c0-.473389.38376-.857145.85714-.857145h8.40003c.2273 0 .4453.090306.6061.251051l8.4 8.400004c.1607.16074.251.37876.251.60609v13.2c0 .4734-.3837.8571-.8571.8571h-16.80003c-.47338 0-.85714-.3837-.85714-.8571zm1.71429.85714v19.88576h15.08568v-11.4858h-7.5428c-.4734 0-.8572-.3837-.8572-.8571v-7.54286zm8.39998 1.21218 5.4736 5.47353-5.4736.00001z";--icon-close: "m4.60395 4.60395c.29289-.2929.76776-.2929 1.06066 0l6.33539 6.33535 6.3354-6.33535c.2929-.2929.7677-.2929 1.0606 0 .2929.29289.2929.76776 0 1.06066l-6.3353 6.33539 6.3353 6.3354c.2929.2929.2929.7677 0 1.0606s-.7677.2929-1.0606 0l-6.3354-6.3353-6.33539 6.3353c-.2929.2929-.76777.2929-1.06066 0-.2929-.2929-.2929-.7677 0-1.0606l6.33535-6.3354-6.33535-6.33539c-.2929-.2929-.2929-.76777 0-1.06066z";--icon-collapse: "M3.11572 12C3.11572 11.5858 3.45151 11.25 3.86572 11.25H20.1343C20.5485 11.25 20.8843 11.5858 20.8843 12C20.8843 12.4142 20.5485 12.75 20.1343 12.75H3.86572C3.45151 12.75 3.11572 12.4142 3.11572 12Z";--icon-expand: "M12.0001 8.33716L3.53033 16.8068C3.23743 17.0997 2.76256 17.0997 2.46967 16.8068C2.17678 16.5139 2.17678 16.0391 2.46967 15.7462L11.0753 7.14067C11.1943 7.01825 11.3365 6.92067 11.4936 6.8536C11.6537 6.78524 11.826 6.75 12.0001 6.75C12.1742 6.75 12.3465 6.78524 12.5066 6.8536C12.6637 6.92067 12.8059 7.01826 12.925 7.14068L21.5304 15.7462C21.8233 16.0391 21.8233 16.5139 21.5304 16.8068C21.2375 17.0997 20.7627 17.0997 20.4698 16.8068L12.0001 8.33716Z";--icon-info: "M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";--icon-error: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";--icon-arrow-down: "m11.5009 23.0302c.2844.2533.7135.2533.9978 0l9.2899-8.2758c.3092-.2756.3366-.7496.0611-1.0589s-.7496-.3367-1.0589-.0612l-8.0417 7.1639v-19.26834c0-.41421-.3358-.749997-.75-.749997s-.75.335787-.75.749997v19.26704l-8.04025-7.1626c-.30928-.2755-.78337-.2481-1.05889.0612-.27553.3093-.24816.7833.06112 1.0589z";--icon-upload: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-local: "m3 3.75c-.82843 0-1.5.67157-1.5 1.5v13.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-9.75c0-.82843-.6716-1.5-1.5-1.5h-9c-.2634 0-.5076-.13822-.6431-.36413l-2.03154-3.38587zm-3 1.5c0-1.65685 1.34315-3 3-3h6.75c.2634 0 .5076.13822.6431.36413l2.0315 3.38587h8.5754c1.6569 0 3 1.34315 3 3v9.75c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3z";--icon-url: "m19.1099 3.67026c-1.7092-1.70917-4.5776-1.68265-6.4076.14738l-2.2212 2.22122c-.2929.29289-.7678.29289-1.0607 0-.29289-.29289-.29289-.76777 0-1.06066l2.2212-2.22122c2.376-2.375966 6.1949-2.481407 8.5289-.14738l1.2202 1.22015c2.334 2.33403 2.2286 6.15294-.1474 8.52895l-2.2212 2.2212c-.2929.2929-.7678.2929-1.0607 0s-.2929-.7678 0-1.0607l2.2212-2.2212c1.8301-1.83003 1.8566-4.69842.1474-6.40759zm-3.3597 4.57991c.2929.29289.2929.76776 0 1.06066l-6.43918 6.43927c-.29289.2928-.76777.2928-1.06066 0-.29289-.2929-.29289-.7678 0-1.0607l6.43924-6.43923c.2929-.2929.7677-.2929 1.0606 0zm-9.71158 1.17048c.29289.29289.29289.76775 0 1.06065l-2.22123 2.2212c-1.83002 1.8301-1.85654 4.6984-.14737 6.4076l1.22015 1.2202c1.70917 1.7091 4.57756 1.6826 6.40763-.1474l2.2212-2.2212c.2929-.2929.7677-.2929 1.0606 0s.2929.7677 0 1.0606l-2.2212 2.2212c-2.37595 2.376-6.19486 2.4815-8.52889.1474l-1.22015-1.2201c-2.334031-2.3341-2.22859-6.153.14737-8.5289l2.22123-2.22125c.29289-.2929.76776-.2929 1.06066 0z";--icon-camera: "m7.65 2.55c.14164-.18885.36393-.3.6-.3h7.5c.2361 0 .4584.11115.6.3l2.025 2.7h2.625c1.6569 0 3 1.34315 3 3v10.5c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3v-10.5c0-1.65685 1.34315-3 3-3h2.625zm.975 1.2-2.025 2.7c-.14164.18885-.36393.3-.6.3h-3c-.82843 0-1.5.67157-1.5 1.5v10.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-10.5c0-.82843-.6716-1.5-1.5-1.5h-3c-.2361 0-.4584-.11115-.6-.3l-2.025-2.7zm3.375 6c-1.864 0-3.375 1.511-3.375 3.375s1.511 3.375 3.375 3.375 3.375-1.511 3.375-3.375-1.511-3.375-3.375-3.375zm-4.875 3.375c0-2.6924 2.18261-4.875 4.875-4.875 2.6924 0 4.875 2.1826 4.875 4.875s-2.1826 4.875-4.875 4.875c-2.69239 0-4.875-2.1826-4.875-4.875z";--icon-dots: "M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z";--icon-back: "M20.251 12.0001C20.251 12.4143 19.9152 12.7501 19.501 12.7501L6.06696 12.7501L11.7872 18.6007C12.0768 18.8968 12.0715 19.3717 11.7753 19.6613C11.4791 19.9508 11.0043 19.9455 10.7147 19.6493L4.13648 12.9213C4.01578 12.8029 3.91947 12.662 3.85307 12.5065C3.78471 12.3464 3.74947 12.1741 3.74947 12C3.74947 11.8259 3.78471 11.6536 3.85307 11.4935C3.91947 11.338 4.01578 11.1971 4.13648 11.0787L10.7147 4.35068C11.0043 4.0545 11.4791 4.04916 11.7753 4.33873C12.0715 4.62831 12.0768 5.10315 11.7872 5.39932L6.06678 11.2501L19.501 11.2501C19.9152 11.2501 20.251 11.5859 20.251 12.0001Z";--icon-remove: "m6.35673 9.71429c-.76333 0-1.35856.66121-1.27865 1.42031l1.01504 9.6429c.06888.6543.62067 1.1511 1.27865 1.1511h9.25643c.658 0 1.2098-.4968 1.2787-1.1511l1.015-9.6429c.0799-.7591-.5153-1.42031-1.2786-1.42031zm.50041-4.5v.32142h-2.57143c-.71008 0-1.28571.57564-1.28571 1.28572s.57563 1.28571 1.28571 1.28571h15.42859c.7101 0 1.2857-.57563 1.2857-1.28571s-.5756-1.28572-1.2857-1.28572h-2.5714v-.32142c0-1.77521-1.4391-3.21429-3.2143-3.21429h-3.8572c-1.77517 0-3.21426 1.43908-3.21426 3.21429zm7.07146-.64286c.355 0 .6428.28782.6428.64286v.32142h-5.14283v-.32142c0-.35504.28782-.64286.64283-.64286z";--icon-edit: "M3.96371 14.4792c-.15098.151-.25578.3419-.3021.5504L2.52752 20.133c-.17826.8021.53735 1.5177 1.33951 1.3395l5.10341-1.1341c.20844-.0463.39934-.1511.55032-.3021l8.05064-8.0507-5.557-5.55702-8.05069 8.05062ZM13.4286 5.01437l5.557 5.55703 2.0212-2.02111c.6576-.65765.6576-1.72393 0-2.38159l-3.1755-3.17546c-.6577-.65765-1.7239-.65765-2.3816 0l-2.0211 2.02113Z";--icon-detail: "M5,3C3.89,3 3,3.89 3,5V19C3,20.11 3.89,21 5,21H19C20.11,21 21,20.11 21,19V5C21,3.89 20.11,3 19,3H5M5,5H19V19H5V5M7,7V9H17V7H7M7,11V13H17V11H7M7,15V17H14V15H7Z";--icon-select: "M7,10L12,15L17,10H7Z";--icon-check: "m12 22c5.5228 0 10-4.4772 10-10 0-5.52285-4.4772-10-10-10-5.52285 0-10 4.47715-10 10 0 5.5228 4.47715 10 10 10zm4.7071-11.4929-5.9071 5.9071-3.50711-3.5071c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.3906 1.02369-.3906 1.41422 0l2.09289 2.0929 4.4929-4.49294c.3905-.39052 1.0237-.39052 1.4142 0 .3905.39053.3905 1.02374 0 1.41424z";--icon-add: "M12.75 21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21V12.7499H3C2.58579 12.7499 2.25 12.4141 2.25 11.9999C2.25 11.5857 2.58579 11.2499 3 11.2499H11.25V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V11.2499H21C21.4142 11.2499 21.75 11.5857 21.75 11.9999C21.75 12.4141 21.4142 12.7499 21 12.7499H12.75V21Z";--icon-edit-file: "m12.1109 6c.3469-1.69213 1.8444-2.96484 3.6391-2.96484s3.2922 1.27271 3.6391 2.96484h2.314c.4142 0 .75.33578.75.75 0 .41421-.3358.75-.75.75h-2.314c-.3469 1.69213-1.8444 2.9648-3.6391 2.9648s-3.2922-1.27267-3.6391-2.9648h-9.81402c-.41422 0-.75001-.33579-.75-.75 0-.41422.33578-.75.75-.75zm3.6391-1.46484c-1.2232 0-2.2148.99162-2.2148 2.21484s.9916 2.21484 2.2148 2.21484 2.2148-.99162 2.2148-2.21484-.9916-2.21484-2.2148-2.21484zm-11.1391 11.96484c.34691-1.6921 1.84437-2.9648 3.6391-2.9648 1.7947 0 3.2922 1.2727 3.6391 2.9648h9.814c.4142 0 .75.3358.75.75s-.3358.75-.75.75h-9.814c-.3469 1.6921-1.8444 2.9648-3.6391 2.9648-1.79473 0-3.29219-1.2727-3.6391-2.9648h-2.31402c-.41422 0-.75-.3358-.75-.75s.33578-.75.75-.75zm3.6391-1.4648c-1.22322 0-2.21484.9916-2.21484 2.2148s.99162 2.2148 2.21484 2.2148 2.2148-.9916 2.2148-2.2148-.99158-2.2148-2.2148-2.2148z";--icon-remove-file: "m11.9554 3.29999c-.7875 0-1.5427.31281-2.0995.86963-.49303.49303-.79476 1.14159-.85742 1.83037h5.91382c-.0627-.68878-.3644-1.33734-.8575-1.83037-.5568-.55682-1.312-.86963-2.0994-.86963zm4.461 2.7c-.0656-1.08712-.5264-2.11657-1.3009-2.89103-.8381-.83812-1.9749-1.30897-3.1601-1.30897-1.1853 0-2.32204.47085-3.16016 1.30897-.77447.77446-1.23534 1.80391-1.30087 2.89103h-2.31966c-.03797 0-.07529.00282-.11174.00827h-1.98826c-.41422 0-.75.33578-.75.75 0 .41421.33578.75.75.75h1.35v11.84174c0 .7559.30026 1.4808.83474 2.0152.53448.5345 1.25939.8348 2.01526.8348h9.44999c.7559 0 1.4808-.3003 2.0153-.8348.5344-.5344.8347-1.2593.8347-2.0152v-11.84174h1.35c.4142 0 .75-.33579.75-.75 0-.41422-.3358-.75-.75-.75h-1.9883c-.0364-.00545-.0737-.00827-.1117-.00827zm-10.49169 1.50827v11.84174c0 .358.14223.7014.3954.9546.25318.2532.59656.3954.9546.3954h9.44999c.358 0 .7014-.1422.9546-.3954s.3954-.5966.3954-.9546v-11.84174z";--icon-trash-file: var(--icon-remove);--icon-upload-error: var(--icon-error);--icon-fullscreen: "M5,5H10V7H7V10H5V5M14,5H19V10H17V7H14V5M17,14H19V19H14V17H17V14M10,17V19H5V14H7V17H10Z";--icon-fullscreen-exit: "M14,14H19V16H16V19H14V14M5,14H10V19H8V16H5V14M8,5H10V10H5V8H8V5M19,8V10H14V5H16V8H19Z";--icon-badge-success: "M10.5 18.2044L18.0992 10.0207C18.6629 9.41362 18.6277 8.46452 18.0207 7.90082C17.4136 7.33711 16.4645 7.37226 15.9008 7.97933L10.5 13.7956L8.0992 11.2101C7.53549 10.603 6.5864 10.5679 5.97933 11.1316C5.37226 11.6953 5.33711 12.6444 5.90082 13.2515L10.5 18.2044Z";--icon-badge-error: "m13.6 18.4c0 .8837-.7164 1.6-1.6 1.6-.8837 0-1.6-.7163-1.6-1.6s.7163-1.6 1.6-1.6c.8836 0 1.6.7163 1.6 1.6zm-1.6-13.9c.8284 0 1.5.67157 1.5 1.5v7c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5v-7c0-.82843.6716-1.5 1.5-1.5z";--icon-about: "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-.922.163-.241.369-.419.617-.532.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.72-.1.216-.234.408-.405.574a3.48 3.48 0 0 1-.575.453c-.33.199-.613.42-.847.66-.234.242-.415.558-.543.949-.125.39-.19.916-.197 1.577ZM11.205 17.15c.21.206.46.31.75.31.196 0 .374-.049.534-.144.16-.096.287-.224.383-.384.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";--icon-edit-rotate: "M16.89,15.5L18.31,16.89C19.21,15.73 19.76,14.39 19.93,13H17.91C17.77,13.87 17.43,14.72 16.89,15.5M13,17.9V19.92C14.39,19.75 15.74,19.21 16.9,18.31L15.46,16.87C14.71,17.41 13.87,17.76 13,17.9M19.93,11C19.76,9.61 19.21,8.27 18.31,7.11L16.89,8.53C17.43,9.28 17.77,10.13 17.91,11M15.55,5.55L11,1V4.07C7.06,4.56 4,7.92 4,12C4,16.08 7.05,19.44 11,19.93V17.91C8.16,17.43 6,14.97 6,12C6,9.03 8.16,6.57 11,6.09V10L15.55,5.55Z";--icon-edit-flip-v: "M3 15V17H5V15M15 19V21H17V19M19 3H5C3.9 3 3 3.9 3 5V9H5V5H19V9H21V5C21 3.9 20.1 3 19 3M21 19H19V21C20.1 21 21 20.1 21 19M1 11V13H23V11M7 19V21H9V19M19 15V17H21V15M11 19V21H13V19M3 19C3 20.1 3.9 21 5 21V19Z";--icon-edit-flip-h: "M15 21H17V19H15M19 9H21V7H19M3 5V19C3 20.1 3.9 21 5 21H9V19H5V5H9V3H5C3.9 3 3 3.9 3 5M19 3V5H21C21 3.9 20.1 3 19 3M11 23H13V1H11M19 17H21V15H19M15 5H17V3H15M19 13H21V11H19M19 21C20.1 21 21 20.1 21 19H19Z";--icon-edit-brightness: "M12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6A6,6 0 0,1 18,12A6,6 0 0,1 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z";--icon-edit-contrast: "M12,20C9.79,20 7.79,19.1 6.34,17.66L17.66,6.34C19.1,7.79 20,9.79 20,12A8,8 0 0,1 12,20M6,8H8V6H9.5V8H11.5V9.5H9.5V11.5H8V9.5H6M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,16H17V14.5H12V16Z";--icon-edit-saturation: "M3,13A9,9 0 0,0 12,22C12,17 7.97,13 3,13M12,5.5A2.5,2.5 0 0,1 14.5,8A2.5,2.5 0 0,1 12,10.5A2.5,2.5 0 0,1 9.5,8A2.5,2.5 0 0,1 12,5.5M5.6,10.25A2.5,2.5 0 0,0 8.1,12.75C8.63,12.75 9.12,12.58 9.5,12.31C9.5,12.37 9.5,12.43 9.5,12.5A2.5,2.5 0 0,0 12,15A2.5,2.5 0 0,0 14.5,12.5C14.5,12.43 14.5,12.37 14.5,12.31C14.88,12.58 15.37,12.75 15.9,12.75C17.28,12.75 18.4,11.63 18.4,10.25C18.4,9.25 17.81,8.4 16.97,8C17.81,7.6 18.4,6.74 18.4,5.75C18.4,4.37 17.28,3.25 15.9,3.25C15.37,3.25 14.88,3.41 14.5,3.69C14.5,3.63 14.5,3.56 14.5,3.5A2.5,2.5 0 0,0 12,1A2.5,2.5 0 0,0 9.5,3.5C9.5,3.56 9.5,3.63 9.5,3.69C9.12,3.41 8.63,3.25 8.1,3.25A2.5,2.5 0 0,0 5.6,5.75C5.6,6.74 6.19,7.6 7.03,8C6.19,8.4 5.6,9.25 5.6,10.25M12,22A9,9 0 0,0 21,13C16,13 12,17 12,22Z";--icon-edit-crop: "M7,17V1H5V5H1V7H5V17A2,2 0 0,0 7,19H17V23H19V19H23V17M17,15H19V7C19,5.89 18.1,5 17,5H9V7H17V15Z";--icon-edit-text: "M18.5,4L19.66,8.35L18.7,8.61C18.25,7.74 17.79,6.87 17.26,6.43C16.73,6 16.11,6 15.5,6H13V16.5C13,17 13,17.5 13.33,17.75C13.67,18 14.33,18 15,18V19H9V18C9.67,18 10.33,18 10.67,17.75C11,17.5 11,17 11,16.5V6H8.5C7.89,6 7.27,6 6.74,6.43C6.21,6.87 5.75,7.74 5.3,8.61L4.34,8.35L5.5,4H18.5Z";--icon-edit-draw: "m21.879394 2.1631238c-1.568367-1.62768627-4.136546-1.53831744-5.596267.1947479l-8.5642801 10.1674753c-1.4906533-.224626-3.061232.258204-4.2082427 1.448604-1.0665468 1.106968-1.0997707 2.464806-1.1203996 3.308068-.00142.05753-.00277.113001-.00439.16549-.02754.894146-.08585 1.463274-.5821351 2.069648l-.80575206.98457.88010766.913285c1.0539516 1.093903 2.6691689 1.587048 4.1744915 1.587048 1.5279113 0 3.2235468-.50598 4.4466094-1.775229 1.147079-1.190514 1.612375-2.820653 1.395772-4.367818l9.796763-8.8879697c1.669907-1.5149954 1.75609-4.1802333.187723-5.8079195zm-16.4593821 13.7924592c.8752943-.908358 2.2944227-.908358 3.1697054 0 .8752942.908358.8752942 2.381259 0 3.289617-.5909138.61325-1.5255389.954428-2.53719.954428-.5223687 0-.9935663-.09031-1.3832112-.232762.3631253-.915463.3952949-1.77626.4154309-2.429737.032192-1.045425.072224-1.308557.3352649-1.581546z";--icon-edit-guides: "M1.39,18.36L3.16,16.6L4.58,18L5.64,16.95L4.22,15.54L5.64,14.12L8.11,16.6L9.17,15.54L6.7,13.06L8.11,11.65L9.53,13.06L10.59,12L9.17,10.59L10.59,9.17L13.06,11.65L14.12,10.59L11.65,8.11L13.06,6.7L14.47,8.11L15.54,7.05L14.12,5.64L15.54,4.22L18,6.7L19.07,5.64L16.6,3.16L18.36,1.39L22.61,5.64L5.64,22.61L1.39,18.36Z";--icon-edit-color: "M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z";--icon-edit-resize: "M10.59,12L14.59,8H11V6H18V13H16V9.41L12,13.41V16H20V4H8V12H10.59M22,2V18H12V22H2V12H6V2H22M10,14H4V20H10V14Z";--icon-external-source-placeholder: "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";--icon-facebook: "m12 1.5c-5.79901 0-10.5 4.70099-10.5 10.5 0 4.9427 3.41586 9.0888 8.01562 10.2045v-6.1086h-2.13281c-.41421 0-.75-.3358-.75-.75v-3.2812c0-.4142.33579-.75.75-.75h2.13281v-1.92189c0-.95748.22571-2.51089 1.38068-3.6497 1.1934-1.17674 3.1742-1.71859 6.2536-1.05619.3455.07433.5923.3798.5923.73323v2.75395c0 .41422-.3358.75-.75.75-.6917 0-1.2029.02567-1.5844.0819-.3865.05694-.5781.13711-.675.20223-.1087.07303-.2367.20457-.2367 1.02837v1.0781h2.3906c.2193 0 .4275.0959.57.2626.1425.1666.205.3872.1709.6038l-.5156 3.2813c-.0573.3647-.3716.6335-.7409.6335h-1.875v6.1058c4.5939-1.1198 8.0039-5.2631 8.0039-10.2017 0-5.79901-4.701-10.5-10.5-10.5zm-12 10.5c0-6.62744 5.37256-12 12-12 6.6274 0 12 5.37256 12 12 0 5.9946-4.3948 10.9614-10.1384 11.8564-.2165.0337-.4369-.0289-.6033-.1714s-.2622-.3506-.2622-.5697v-7.7694c0-.4142.3358-.75.75-.75h1.9836l.28-1.7812h-2.2636c-.4142 0-.75-.3358-.75-.75v-1.8281c0-.82854.0888-1.72825.9-2.27338.3631-.24396.8072-.36961 1.293-.4412.3081-.0454.6583-.07238 1.0531-.08618v-1.39629c-2.4096-.40504-3.6447.13262-4.2928.77165-.7376.72735-.9338 1.79299-.9338 2.58161v2.67189c0 .4142-.3358.75-.75.75h-2.13279v1.7812h2.13279c.4142 0 .75.3358.75.75v7.7712c0 .219-.0956.427-.2619.5695-.1662.1424-.3864.2052-.6028.1717-5.74968-.8898-10.1509-5.8593-10.1509-11.8583z";--icon-dropbox: "m6.01895 1.92072c.24583-.15659.56012-.15658.80593.00003l5.17512 3.29711 5.1761-3.29714c.2458-.15659.5601-.15658.8059.00003l5.5772 3.55326c.2162.13771.347.37625.347.63253 0 .25629-.1308.49483-.347.63254l-4.574 2.91414 4.574 2.91418c.2162.1377.347.3762.347.6325s-.1308.4948-.347.6325l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.1761-3.2971-5.17512 3.2971c-.24581.1566-.5601.1566-.80593 0l-5.578142-3.5532c-.216172-.1377-.347058-.3763-.347058-.6326s.130886-.4949.347058-.6326l4.574772-2.91408-4.574772-2.91411c-.216172-.1377-.347058-.37626-.347058-.63257 0-.2563.130886-.49486.347058-.63256zm.40291 8.61518-4.18213 2.664 4.18213 2.664 4.18144-2.664zm6.97504 2.664 4.1821 2.664 4.1814-2.664-4.1814-2.664zm2.7758-3.54668-4.1727 2.65798-4.17196-2.65798 4.17196-2.658zm1.4063-.88268 4.1814-2.664-4.1814-2.664-4.1821 2.664zm-6.9757-2.664-4.18144-2.664-4.18213 2.664 4.18213 2.664zm-4.81262 12.43736c.22254-.3494.68615-.4522 1.03551-.2297l5.17521 3.2966 5.1742-3.2965c.3493-.2226.813-.1198 1.0355.2295.2226.3494.1198.813-.2295 1.0355l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.57819-3.5532c-.34936-.2226-.45216-.6862-.22963-1.0355z";--icon-gdrive: "m7.73633 1.81806c.13459-.22968.38086-.37079.64707-.37079h7.587c.2718 0 .5223.14697.6548.38419l7.2327 12.94554c.1281.2293.1269.5089-.0031.7371l-3.7935 6.6594c-.1334.2342-.3822.3788-.6517.3788l-14.81918.0004c-.26952 0-.51831-.1446-.65171-.3788l-3.793526-6.6598c-.1327095-.233-.130949-.5191.004617-.7504zm.63943 1.87562-6.71271 11.45452 2.93022 5.1443 6.65493-11.58056zm3.73574 6.52652-2.39793 4.1727 4.78633.0001zm4.1168 4.1729 5.6967-.0002-6.3946-11.44563h-5.85354zm5.6844 1.4998h-13.06111l-2.96515 5.1598 13.08726-.0004z";--icon-gphotos: "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";--icon-instagram: "M6.225 12a5.775 5.775 0 1 1 11.55 0 5.775 5.775 0 0 1-11.55 0zM12 7.725a4.275 4.275 0 1 0 0 8.55 4.275 4.275 0 0 0 0-8.55zM18.425 6.975a1.4 1.4 0 1 0 0-2.8 1.4 1.4 0 0 0 0 2.8zM11.958.175h.084c2.152 0 3.823 0 5.152.132 1.35.134 2.427.41 3.362 1.013a7.15 7.15 0 0 1 2.124 2.124c.604.935.88 2.012 1.013 3.362.132 1.329.132 3 .132 5.152v.084c0 2.152 0 3.823-.132 5.152-.134 1.35-.41 2.427-1.013 3.362a7.15 7.15 0 0 1-2.124 2.124c-.935.604-2.012.88-3.362 1.013-1.329.132-3 .132-5.152.132h-.084c-2.152 0-3.824 0-5.153-.132-1.35-.134-2.427-.409-3.36-1.013a7.15 7.15 0 0 1-2.125-2.124C.716 19.62.44 18.544.307 17.194c-.132-1.329-.132-3-.132-5.152v-.084c0-2.152 0-3.823.132-5.152.133-1.35.409-2.427 1.013-3.362A7.15 7.15 0 0 1 3.444 1.32C4.378.716 5.456.44 6.805.307c1.33-.132 3-.132 5.153-.132zM6.953 1.799c-1.234.123-2.043.36-2.695.78A5.65 5.65 0 0 0 2.58 4.26c-.42.65-.657 1.46-.78 2.695C1.676 8.2 1.675 9.797 1.675 12c0 2.203 0 3.8.124 5.046.123 1.235.36 2.044.78 2.696a5.649 5.649 0 0 0 1.68 1.678c.65.421 1.46.658 2.694.78 1.247.124 2.844.125 5.047.125s3.8 0 5.046-.124c1.235-.123 2.044-.36 2.695-.78a5.648 5.648 0 0 0 1.68-1.68c.42-.65.657-1.46.78-2.694.123-1.247.124-2.844.124-5.047s-.001-3.8-.125-5.046c-.122-1.235-.359-2.044-.78-2.695a5.65 5.65 0 0 0-1.679-1.68c-.651-.42-1.46-.657-2.695-.78-1.246-.123-2.843-.124-5.046-.124-2.203 0-3.8 0-5.047.124z";--icon-flickr: "M5.95874 7.92578C3.66131 7.92578 1.81885 9.76006 1.81885 11.9994C1.81885 14.2402 3.66145 16.0744 5.95874 16.0744C8.26061 16.0744 10.1039 14.2396 10.1039 11.9994C10.1039 9.76071 8.26074 7.92578 5.95874 7.92578ZM0.318848 11.9994C0.318848 8.91296 2.85168 6.42578 5.95874 6.42578C9.06906 6.42578 11.6039 8.91232 11.6039 11.9994C11.6039 15.0877 9.06919 17.5744 5.95874 17.5744C2.85155 17.5744 0.318848 15.0871 0.318848 11.9994ZM18.3898 7.92578C16.0878 7.92578 14.2447 9.76071 14.2447 11.9994C14.2447 14.2396 16.088 16.0744 18.3898 16.0744C20.6886 16.0744 22.531 14.2401 22.531 11.9994C22.531 9.76019 20.6887 7.92578 18.3898 7.92578ZM12.7447 11.9994C12.7447 8.91232 15.2795 6.42578 18.3898 6.42578C21.4981 6.42578 24.031 8.91283 24.031 11.9994C24.031 15.0872 21.4982 17.5744 18.3898 17.5744C15.2794 17.5744 12.7447 15.0877 12.7447 11.9994Z";--icon-vk: var(--icon-external-source-placeholder);--icon-evernote: "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.276.01-.039.018-.078.022-.105.011-.061.023-.14.034-.23.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-.576-.097-.015-.18-.028-.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-.915.197.193.412.357.627.493a5.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.235-.212-.103-.5-.174-.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.996ZM15.638 11.626a.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";--icon-box: "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";--icon-onedrive: "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";--icon-huddle: "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"}:where(.lr-wgt-l10n_en-US,.lr-wgt-common),:host{--l10n-locale-name: "en-US";--l10n-upload-file: "Upload file";--l10n-upload-files: "Upload files";--l10n-choose-file: "Choose file";--l10n-choose-files: "Choose files";--l10n-drop-files-here: "Drop files here";--l10n-select-file-source: "Select file source";--l10n-selected: "Selected";--l10n-upload: "Upload";--l10n-add-more: "Add more";--l10n-cancel: "Cancel";--l10n-clear: "Clear";--l10n-camera-shot: "Shot";--l10n-upload-url: "Import";--l10n-upload-url-placeholder: "Paste link here";--l10n-edit-image: "Edit image";--l10n-edit-detail: "Details";--l10n-back: "Back";--l10n-done: "Done";--l10n-ok: "Ok";--l10n-remove-from-list: "Remove";--l10n-no: "No";--l10n-yes: "Yes";--l10n-confirm-your-action: "Confirm your action";--l10n-are-you-sure: "Are you sure?";--l10n-selected-count: "Selected:";--l10n-upload-error: "Upload error";--l10n-validation-error: "Validation error";--l10n-no-files: "No files selected";--l10n-browse: "Browse";--l10n-not-uploaded-yet: "Not uploaded yet...";--l10n-file__one: "file";--l10n-file__other: "files";--l10n-error__one: "error";--l10n-error__other: "errors";--l10n-header-uploading: "Uploading {{count}} {{plural:file(count)}}";--l10n-header-failed: "{{count}} {{plural:error(count)}}";--l10n-header-succeed: "{{count}} {{plural:file(count)}} uploaded";--l10n-header-total: "{{count}} {{plural:file(count)}} selected";--l10n-src-type-local: "From device";--l10n-src-type-from-url: "From link";--l10n-src-type-camera: "Camera";--l10n-src-type-draw: "Draw";--l10n-src-type-facebook: "Facebook";--l10n-src-type-dropbox: "Dropbox";--l10n-src-type-gdrive: "Google Drive";--l10n-src-type-gphotos: "Google Photos";--l10n-src-type-instagram: "Instagram";--l10n-src-type-flickr: "Flickr";--l10n-src-type-vk: "VK";--l10n-src-type-evernote: "Evernote";--l10n-src-type-box: "Box";--l10n-src-type-onedrive: "Onedrive";--l10n-src-type-huddle: "Huddle";--l10n-src-type-other: "Other";--l10n-src-type: var(--l10n-src-type-local);--l10n-caption-from-url: "Import from link";--l10n-caption-camera: "Camera";--l10n-caption-draw: "Draw";--l10n-caption-edit-file: "Edit file";--l10n-file-no-name: "No name...";--l10n-toggle-fullscreen: "Toggle fullscreen";--l10n-toggle-guides: "Toggle guides";--l10n-rotate: "Rotate";--l10n-flip-vertical: "Flip vertical";--l10n-flip-horizontal: "Flip horizontal";--l10n-brightness: "Brightness";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-resize: "Resize image";--l10n-crop: "Crop";--l10n-select-color: "Select color";--l10n-text: "Text";--l10n-draw: "Draw";--l10n-cancel-edit: "Cancel edit";--l10n-tab-view: "Preview";--l10n-tab-details: "Details";--l10n-file-name: "Name";--l10n-file-size: "Size";--l10n-cdn-url: "CDN URL";--l10n-file-size-unknown: "Unknown";--l10n-camera-permissions-denied: "Camera access denied";--l10n-camera-permissions-prompt: "Please allow access to the camera";--l10n-camera-permissions-request: "Request access";--l10n-files-count-limit-error-title: "Files count limit overflow";--l10n-files-count-limit-error-too-few: "You\2019ve chosen {{total}}. At least {{min}} required.";--l10n-files-count-limit-error-too-many: "You\2019ve chosen too many files. {{max}} is maximum.";--l10n-files-count-minimum: "At least {{count}} files are required";--l10n-files-count-allowed: "Only {{count}} files are allowed";--l10n-files-max-size-limit-error: "File is too big. Max file size is {{maxFileSize}}.";--l10n-has-validation-errors: "File validation error ocurred. Please, check your files before upload.";--l10n-images-only-accepted: "Only image files are accepted.";--l10n-file-type-not-allowed: "Uploading of these file types is not allowed."}:where(.lr-wgt-theme,.lr-wgt-common),:host{--darkmode: 0;--h-foreground: 208;--s-foreground: 4%;--l-foreground: calc(10% + 78% * var(--darkmode));--h-background: 208;--s-background: 4%;--l-background: calc(97% - 85% * var(--darkmode));--h-accent: 211;--s-accent: 100%;--l-accent: calc(50% - 5% * var(--darkmode));--h-confirm: 137;--s-confirm: 85%;--l-confirm: 53%;--h-error: 358;--s-error: 100%;--l-error: 66%;--shadows: 1;--h-shadow: 0;--s-shadow: 0%;--l-shadow: 0%;--opacity-normal: .6;--opacity-hover: .9;--opacity-active: 1;--ui-size: 32px;--gap-min: 2px;--gap-small: 4px;--gap-mid: 10px;--gap-max: 20px;--gap-table: 0px;--borders: 1;--border-radius-element: 8px;--border-radius-frame: 12px;--border-radius-thumb: 6px;--transition-duration: .2s;--modal-max-w: 800px;--modal-max-h: 600px;--modal-normal-w: 430px;--darkmode-minus: calc(1 + var(--darkmode) * -2);--clr-background: hsl(var(--h-background), var(--s-background), var(--l-background));--clr-background-dark: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-background-light: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 3% * var(--darkmode-minus)) );--clr-accent: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 15% * var(--darkmode)));--clr-accent-light: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 30%);--clr-accent-lightest: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 10%);--clr-accent-light-opaque: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 45% * var(--darkmode-minus)));--clr-accent-lightest-opaque: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) + 47% * var(--darkmode-minus)) );--clr-confirm: hsl(var(--h-confirm), var(--s-confirm), var(--l-confirm));--clr-error: hsl(var(--h-error), var(--s-error), var(--l-error));--clr-error-light: hsla(var(--h-error), var(--s-error), var(--l-error), 15%);--clr-error-lightest: hsla(var(--h-error), var(--s-error), var(--l-error), 5%);--clr-error-message-bgr: hsl(var(--h-error), var(--s-error), calc(var(--l-error) + 60% * var(--darkmode-minus)));--clr-txt: hsl(var(--h-foreground), var(--s-foreground), var(--l-foreground));--clr-txt-mid: hsl(var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 20% * var(--darkmode-minus)));--clr-txt-light: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 30% * var(--darkmode-minus)) );--clr-txt-lightest: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 50% * var(--darkmode-minus)) );--clr-shade-lv1: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 5%);--clr-shade-lv2: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 8%);--clr-shade-lv3: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 12%);--clr-generic-file-icon: var(--clr-txt-lightest);--border-light: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.1 - .05 * var(--darkmode)) * var(--borders)) );--border-mid: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.2 - .1 * var(--darkmode)) * var(--borders)) );--border-accent: 1px solid hsla(var(--h-accent), var(--s-accent), var(--l-accent), 1 * var(--borders));--border-dashed: 1px dashed hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), calc(.2 * var(--borders)));--clr-curtain: hsla(var(--h-background), var(--s-background), calc(var(--l-background)), 60%);--hsl-shadow: var(--h-shadow), var(--s-shadow), var(--l-shadow);--modal-shadow: 0px 0px 1px hsla(var(--hsl-shadow), calc((.3 + .65 * var(--darkmode)) * var(--shadows))), 0px 6px 20px hsla(var(--hsl-shadow), calc((.1 + .4 * var(--darkmode)) * var(--shadows)));--clr-btn-bgr-primary: var(--clr-accent);--clr-btn-bgr-primary-hover: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 4% * var(--darkmode-minus)) );--clr-btn-bgr-primary-active: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 8% * var(--darkmode-minus)) );--clr-btn-txt-primary: hsl(var(--h-accent), var(--s-accent), 98%);--shadow-btn-primary: none;--clr-btn-bgr-secondary: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-hover: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 7% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-active: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 12% * var(--darkmode-minus)) );--clr-btn-txt-secondary: var(--clr-txt-mid);--shadow-btn-secondary: none;--clr-btn-bgr-disabled: var(--clr-background);--clr-btn-txt-disabled: var(--clr-txt-lightest);--shadow-btn-disabled: none}@media only screen and (max-height: 600px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-h: 100%}}@media only screen and (max-width: 430px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-w: 100vw;--modal-max-h: var(--uploadcare-blocks-window-height)}}:where(.lr-wgt-theme,.lr-wgt-common),:host{color:var(--clr-txt);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}:where(.lr-wgt-theme,.lr-wgt-common) *,:host *{box-sizing:border-box}:where(.lr-wgt-theme,.lr-wgt-common) [hidden],:host [hidden]{display:none!important}:where(.lr-wgt-theme,.lr-wgt-common) [activity]:not([active]),:host [activity]:not([active]){display:none}:where(.lr-wgt-theme,.lr-wgt-common) dialog:not([open]) [activity],:host dialog:not([open]) [activity]{display:none}:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{display:flex;align-items:center;justify-content:center;height:var(--ui-size);padding-right:1.4em;padding-left:1.4em;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--border-radius-element);cursor:pointer;user-select:none}@media only screen and (max-width: 800px){:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{padding-right:1em;padding-left:1em}}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn,:host button.primary-btn{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary);box-shadow:var(--shadow-btn-primary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:hover,:host button.primary-btn:hover{background-color:var(--clr-btn-bgr-primary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:active,:host button.primary-btn:active{background-color:var(--clr-btn-bgr-primary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn,:host button.secondary-btn{color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:hover,:host button.secondary-btn:hover{background-color:var(--clr-btn-bgr-secondary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:active,:host button.secondary-btn:active{background-color:var(--clr-btn-bgr-secondary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn,:host button.mini-btn{width:var(--ui-size);height:var(--ui-size);padding:0;background-color:transparent;border:none;cursor:pointer;transition:var(--transition-duration) ease;color:var(--clr-txt)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:hover,:host button.mini-btn:hover{background-color:var(--clr-shade-lv1)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:active,:host button.mini-btn:active{background-color:var(--clr-shade-lv2)}:where(.lr-wgt-theme,.lr-wgt-common) :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]),:host :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]){color:var(--clr-btn-txt-disabled);background-color:var(--clr-btn-bgr-disabled);box-shadow:var(--shadow-btn-disabled);pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) a,:host a{color:var(--clr-accent);text-decoration:none}:where(.lr-wgt-theme,.lr-wgt-common) a[disabled],:host a[disabled]{pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]{display:flex;width:100%;height:var(--ui-size);padding-right:.6em;padding-left:.6em;color:var(--clr-txt);font-size:1em;font-family:inherit;background-color:var(--clr-background-light);border:var(--border-light);border-radius:var(--border-radius-element);transition:var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]::placeholder{color:var(--clr-txt-lightest)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:hover,:host input[type=text]:hover{border-color:var(--clr-accent-light)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:focus,:host input[type=text]:focus{border-color:var(--clr-accent);outline:none}:where(.lr-wgt-theme,.lr-wgt-common) input[disabled],:host input[disabled]{opacity:.6;pointer-events:none}lr-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size)}lr-icon svg{width:calc(var(--ui-size) / 2);height:calc(var(--ui-size) / 2)}lr-icon:not([raw]) path{fill:currentColor}lr-tabs{display:grid;grid-template-rows:min-content minmax(var(--ui-size),auto);height:100%;overflow:hidden;color:var(--clr-txt-lightest)}lr-tabs>.tabs-row{display:flex;grid-template-columns:minmax();background-color:var(--clr-background-light)}lr-tabs>.tabs-context{overflow-y:auto}lr-tabs .tabs-row>.tab{display:flex;flex-grow:1;align-items:center;justify-content:center;height:var(--ui-size);border-bottom:var(--border-light);cursor:pointer;transition:var(--transition-duration)}lr-tabs .tabs-row>.tab[current]{color:var(--clr-txt);border-color:var(--clr-txt)}lr-range{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--ui-size)}lr-range datalist{display:none}lr-range input{width:100%;height:100%;opacity:0}lr-range .track-wrapper{position:absolute;right:10px;left:10px;display:flex;align-items:center;justify-content:center;height:2px;user-select:none;pointer-events:none}lr-range .track{position:absolute;right:0;left:0;display:flex;align-items:center;justify-content:center;height:2px;background-color:currentColor;border-radius:2px;opacity:.5}lr-range .slider{position:absolute;width:16px;height:16px;background-color:currentColor;border-radius:100%;transform:translate(-50%)}lr-range .bar{position:absolute;left:0;height:100%;background-color:currentColor;border-radius:2px}lr-range .caption{position:absolute;display:inline-flex;justify-content:center}lr-color{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size);overflow:hidden;background-color:var(--clr-background);cursor:pointer}lr-color[current]{background-color:var(--clr-txt)}lr-color input[type=color]{position:absolute;display:block;width:100%;height:100%;opacity:0}lr-color .current-color{position:absolute;width:50%;height:50%;border:2px solid #fff;border-radius:100%;pointer-events:none}lr-config{display:none}lr-simple-btn{position:relative;display:inline-flex}lr-simple-btn button{padding-left:.2em!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-simple-btn button lr-icon svg{transform:scale(.8)}lr-simple-btn button:hover{background-color:var(--clr-btn-bgr-secondary-hover)}lr-simple-btn button:active{background-color:var(--clr-btn-bgr-secondary-active)}lr-simple-btn>lr-drop-area{display:contents}lr-simple-btn .visual-drop-area{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--gap-min);border:var(--border-dashed);border-radius:inherit;opacity:0;transition:border-color var(--transition-duration) ease,background-color var(--transition-duration) ease,opacity var(--transition-duration) ease}lr-simple-btn .visual-drop-area:before{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--clr-txt-light);background-color:var(--clr-background);border-radius:inherit;content:var(--l10n-drop-files-here)}lr-simple-btn>lr-drop-area[drag-state=active] .visual-drop-area{background-color:var(--clr-accent-lightest);opacity:1}lr-simple-btn>lr-drop-area[drag-state=inactive] .visual-drop-area{background-color:var(--clr-shade-lv1);opacity:0}lr-simple-btn>lr-drop-area[drag-state=near] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent-light);opacity:1}lr-simple-btn>lr-drop-area[drag-state=over] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent);opacity:1}lr-simple-btn>:where(lr-drop-area[drag-state="active"],lr-drop-area[drag-state="near"],lr-drop-area[drag-state="over"]) button{box-shadow:none}lr-simple-btn>lr-drop-area:after{content:""}lr-source-btn{display:flex;align-items:center;margin-bottom:var(--gap-min);padding:var(--gap-min) var(--gap-mid);color:var(--clr-txt-mid);border-radius:var(--border-radius-element);cursor:pointer;transition-duration:var(--transition-duration);transition-property:background-color,color;user-select:none}lr-source-btn:hover{color:var(--clr-accent);background-color:var(--clr-accent-lightest)}lr-source-btn:active{color:var(--clr-accent);background-color:var(--clr-accent-light)}lr-source-btn lr-icon{display:inline-flex;flex-grow:1;justify-content:center;min-width:var(--ui-size);margin-right:var(--gap-mid);opacity:.8}lr-source-btn[type=local]>.txt:after{content:var(--l10n-local-files)}lr-source-btn[type=camera]>.txt:after{content:var(--l10n-camera)}lr-source-btn[type=url]>.txt:after{content:var(--l10n-from-url)}lr-source-btn[type=other]>.txt:after{content:var(--l10n-other)}lr-source-btn .txt{display:flex;align-items:center;box-sizing:border-box;width:100%;height:var(--ui-size);padding:0;white-space:nowrap;border:none}lr-drop-area{padding:var(--gap-min);overflow:hidden;border:var(--border-dashed);border-radius:var(--border-radius-frame);transition:var(--transition-duration) ease}lr-drop-area,lr-drop-area .content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}lr-drop-area .text{position:relative;margin:var(--gap-mid);color:var(--clr-txt-light);transition:var(--transition-duration) ease}lr-drop-area[ghost][drag-state=inactive]{display:none;opacity:0}lr-drop-area[ghost]:not([fullscreen]):is([drag-state="active"],[drag-state="near"],[drag-state="over"]){background:var(--clr-background)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) :is(.text,.icon-container){color:var(--clr-accent)}lr-drop-area:is([drag-state="active"],[drag-state="near"],[drag-state="over"],:hover){color:var(--clr-accent);background:var(--clr-accent-lightest);border-color:var(--clr-accent-light)}lr-drop-area:is([drag-state="active"],[drag-state="near"]){opacity:1}lr-drop-area[drag-state=over]{border-color:var(--clr-accent);opacity:1}lr-drop-area[with-icon]{min-height:calc(var(--ui-size) * 6)}lr-drop-area[with-icon] .content-wrapper{display:flex;flex-direction:column}lr-drop-area[with-icon] .text{color:var(--clr-txt);font-weight:500;font-size:1.1em}lr-drop-area[with-icon] .icon-container{position:relative;width:calc(var(--ui-size) * 2);height:calc(var(--ui-size) * 2);margin:var(--gap-mid);overflow:hidden;color:var(--clr-txt);background-color:var(--clr-background);border-radius:50%;transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon{position:absolute;top:calc(50% - var(--ui-size) / 2);left:calc(50% - var(--ui-size) / 2);transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon:last-child{transform:translateY(calc(var(--ui-size) * 1.5))}lr-drop-area[with-icon]:hover .icon-container,lr-drop-area[with-icon]:hover .text{color:var(--clr-accent)}lr-drop-area[with-icon]:hover .icon-container{background-color:var(--clr-accent-lightest)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .icon-container{color:#fff;background-color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .text{color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:last-child{transform:translateY(0)}lr-drop-area[with-icon]>.content-wrapper[drag-state=near] lr-icon:last-child{transform:scale(1.3)}lr-drop-area[with-icon]>.content-wrapper[drag-state=over] lr-icon:last-child{transform:scale(1.5)}lr-drop-area[fullscreen]{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--gap-mid) * 2);height:calc(100vh - var(--gap-mid) * 2);margin:var(--gap-mid)}lr-drop-area[fullscreen] .content-wrapper{width:100%;max-width:calc(var(--modal-normal-w) * .8);height:calc(var(--ui-size) * 6);color:var(--clr-txt);background-color:var(--clr-background-light);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:var(--transition-duration) ease}lr-drop-area[with-icon][fullscreen][drag-state=active]>.content-wrapper,lr-drop-area[with-icon][fullscreen][drag-state=near]>.content-wrapper{transform:translateY(var(--gap-mid));opacity:0}lr-drop-area[with-icon][fullscreen][drag-state=over]>.content-wrapper{transform:translateY(0);opacity:1}:is(lr-drop-area[with-icon][fullscreen])>.content-wrapper lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-modal{--modal-max-content-height: calc(var(--uploadcare-blocks-window-height, 100vh) - 4 * var(--gap-mid) - var(--ui-size));--modal-content-height-fill: var(--uploadcare-blocks-window-height, 100vh)}lr-modal[dialog-fallback]{--lr-z-max: 2147483647;position:fixed;z-index:var(--lr-z-max);display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;pointer-events:none;inset:0}lr-modal[dialog-fallback] dialog[open]{z-index:var(--lr-z-max);pointer-events:auto}lr-modal[dialog-fallback] dialog[open]+.backdrop{position:fixed;top:0;left:0;z-index:calc(var(--lr-z-max) - 1);align-items:center;justify-content:center;width:100vw;height:100vh;background-color:var(--clr-curtain);pointer-events:auto}lr-modal[strokes][dialog-fallback] dialog[open]+.backdrop{background-image:var(--modal-backdrop-background-image)}@supports selector(dialog::backdrop){lr-modal>dialog::backdrop{background-color:#0000001a}lr-modal[strokes]>dialog::backdrop{background-image:var(--modal-backdrop-background-image)}}lr-modal>dialog[open]{transform:translateY(0);visibility:visible;opacity:1}lr-modal>dialog:not([open]){transform:translateY(20px);visibility:hidden;opacity:0}lr-modal>dialog{display:flex;flex-direction:column;width:max-content;max-width:min(calc(100% - var(--gap-mid) * 2),calc(var(--modal-max-w) - var(--gap-mid) * 2));min-height:var(--ui-size);max-height:calc(var(--modal-max-h) - var(--gap-mid) * 2);margin:auto;padding:0;overflow:hidden;background-color:var(--clr-background-light);border:0;border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:transform calc(var(--transition-duration) * 2)}@media only screen and (max-width: 430px),only screen and (max-height: 600px){lr-modal>dialog>.content{height:var(--modal-max-content-height)}}lr-url-source{display:block;background-color:var(--clr-background-light)}lr-modal lr-url-source{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-url-source>.content{display:grid;grid-gap:var(--gap-small);grid-template-columns:1fr min-content;padding:var(--gap-mid);padding-top:0}lr-url-source .url-input{display:flex}lr-url-source .url-upload-btn:after{content:var(--l10n-upload-url)}lr-camera-source{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;overflow:hidden;background-color:var(--clr-background-light);border-radius:var(--border-radius-element)}lr-modal lr-camera-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:100vh;max-height:var(--modal-max-content-height)}lr-camera-source.initialized{height:max-content}@media only screen and (max-width: 430px){lr-camera-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-camera-source video{display:block;width:100%;max-height:100%;object-fit:contain;object-position:center center;background-color:var(--clr-background-dark);border-radius:var(--border-radius-element)}lr-camera-source .toolbar{position:absolute;bottom:0;display:flex;justify-content:space-between;width:100%;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-camera-source .content{display:flex;flex:1;justify-content:center;width:100%;padding:var(--gap-mid);padding-top:0;overflow:hidden}lr-camera-source .message-box{--padding: calc(var(--gap-max) * 2);display:flex;flex-direction:column;grid-gap:var(--gap-max);align-items:center;justify-content:center;padding:var(--padding) var(--padding) 0 var(--padding);color:var(--clr-txt)}lr-camera-source .message-box button{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary)}lr-camera-source .shot-btn{position:absolute;bottom:var(--gap-max);width:calc(var(--ui-size) * 1.8);height:calc(var(--ui-size) * 1.8);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;opacity:.85;transition:var(--transition-duration) ease}lr-camera-source .shot-btn:hover{transform:scale(1.05);opacity:1}lr-camera-source .shot-btn:active{background-color:var(--clr-txt-mid);opacity:1}lr-camera-source .shot-btn[disabled]{bottom:calc(var(--gap-max) * -1 - var(--gap-mid) - var(--ui-size) * 2)}lr-camera-source .shot-btn lr-icon svg{width:calc(var(--ui-size) / 1.5);height:calc(var(--ui-size) / 1.5)}lr-external-source{display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--clr-background-light);overflow:hidden}lr-modal lr-external-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height)}lr-external-source>.content{position:relative;display:grid;flex:1;grid-template-rows:1fr min-content}@media only screen and (max-width: 430px){lr-external-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-external-source iframe{display:block;width:100%;height:100%;border:none}lr-external-source .iframe-wrapper{overflow:hidden}lr-external-source .toolbar{display:grid;grid-gap:var(--gap-mid);grid-template-columns:max-content 1fr max-content max-content;align-items:center;width:100%;padding:var(--gap-mid);border-top:var(--border-light)}lr-external-source .back-btn{padding-left:0}lr-external-source .back-btn:after{content:var(--l10n-back)}lr-external-source .selected-counter{display:flex;grid-gap:var(--gap-mid);align-items:center;justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt-light)}lr-upload-list{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light);transition:opacity var(--transition-duration)}lr-modal lr-upload-list{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:max-content;max-height:var(--modal-max-content-height)}lr-upload-list .no-files{height:var(--ui-size);padding:var(--gap-max)}lr-upload-list .files{display:block;flex:1;min-height:var(--ui-size);padding:0 var(--gap-mid);overflow:auto}lr-upload-list .toolbar{display:flex;gap:var(--gap-small);justify-content:space-between;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-upload-list .toolbar .add-more-btn{padding-left:.2em}lr-upload-list .toolbar-spacer{flex:1}lr-upload-list lr-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--gap-mid) * 2);height:calc(100% - var(--gap-mid) * 2);margin:var(--gap-mid);border-radius:var(--border-radius-element)}lr-upload-list lr-activity-header>.header-text{padding:0 var(--gap-mid)}lr-start-from{display:block}lr-start-from .content{display:grid;grid-auto-flow:row;gap:var(--gap-max);width:100%;height:max-content;padding:var(--gap-max);overflow-y:auto;background-color:var(--clr-background-light)}lr-modal lr-start-from{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-file-item{display:block}lr-file-item>.inner{position:relative;display:grid;grid-template-columns:32px 1fr max-content;gap:var(--gap-min);align-items:center;margin-bottom:var(--gap-small);padding:var(--gap-mid);overflow:hidden;font-size:.95em;background-color:var(--clr-background);border-radius:var(--border-radius-element);transition:var(--transition-duration)}lr-file-item:last-of-type>.inner{margin-bottom:0}lr-file-item>.inner[focused]{background-color:transparent}lr-file-item>.inner[uploading] .edit-btn{display:none}lr-file-item>:where(.inner[failed],.inner[limit-overflow]){background-color:var(--clr-error-lightest)}lr-file-item .thumb{position:relative;display:inline-flex;width:var(--ui-size);height:var(--ui-size);background-color:var(--clr-shade-lv1);background-position:center center;background-size:cover;border-radius:var(--border-radius-thumb)}lr-file-item .file-name-wrapper{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--gap-mid);padding-left:var(--gap-mid);overflow:hidden;color:var(--clr-txt-light);transition:color var(--transition-duration)}lr-file-item .file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}lr-file-item .file-error{display:none;color:var(--clr-error);font-size:.85em;line-height:130%}lr-file-item button.remove-btn,lr-file-item button.edit-btn{color:var(--clr-txt-lightest)!important}lr-file-item button.upload-btn{display:none}lr-file-item button:hover{color:var(--clr-txt-light)}lr-file-item .badge{position:absolute;top:calc(var(--ui-size) * -.13);right:calc(var(--ui-size) * -.13);width:calc(var(--ui-size) * .44);height:calc(var(--ui-size) * .44);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;transform:scale(.3);opacity:0;transition:var(--transition-duration) ease}lr-file-item>.inner:where([failed],[limit-overflow],[finished]) .badge{transform:scale(1);opacity:1}lr-file-item>.inner[finished] .badge{background-color:var(--clr-confirm)}lr-file-item>.inner:where([failed],[limit-overflow]) .badge{background-color:var(--clr-error)}lr-file-item>.inner:where([failed],[limit-overflow]) .file-error{display:block}lr-file-item .badge lr-icon,lr-file-item .badge lr-icon svg{width:100%;height:100%}lr-file-item .progress-bar{top:calc(100% - 2px);height:2px}lr-file-item .file-actions{display:flex;gap:var(--gap-min);align-items:center;justify-content:center}lr-upload-details{display:flex;flex-direction:column;width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height);overflow:hidden;background-color:var(--clr-background-light)}lr-upload-details>.content{position:relative;display:grid;flex:1;grid-template-rows:auto min-content}lr-upload-details lr-tabs .tabs-context{position:relative}lr-upload-details .toolbar{display:grid;grid-template-columns:min-content min-content 1fr min-content;gap:var(--gap-mid);padding:var(--gap-mid);border-top:var(--border-light)}lr-upload-details .toolbar[edit-disabled]{display:flex;justify-content:space-between}lr-upload-details .remove-btn{padding-left:.5em}lr-upload-details .detail-btn{padding-left:0;color:var(--clr-txt);background-color:var(--clr-background)}lr-upload-details .edit-btn{padding-left:.5em}lr-upload-details .details{padding:var(--gap-max)}lr-upload-details .info-block{padding-top:var(--gap-max);padding-bottom:calc(var(--gap-max) + var(--gap-table));color:var(--clr-txt);border-bottom:var(--border-light)}lr-upload-details .info-block:first-of-type{padding-top:0}lr-upload-details .info-block:last-of-type{border-bottom:none}lr-upload-details .info-block>.info-block_name{margin-bottom:.4em;color:var(--clr-txt-light);font-size:.8em}lr-upload-details .cdn-link[disabled]{pointer-events:none}lr-upload-details .cdn-link[disabled]:before{filter:grayscale(1);content:var(--l10n-not-uploaded-yet)}lr-file-preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}lr-file-preview>lr-img{display:contents}lr-file-preview>lr-img>.img-view{position:absolute;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;object-fit:scale-down}lr-message-box{position:fixed;right:var(--gap-mid);bottom:var(--gap-mid);left:var(--gap-mid);z-index:100000;display:grid;grid-template-rows:min-content auto;color:var(--clr-txt);font-size:.9em;background:var(--clr-background);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:calc(var(--transition-duration) * 2)}lr-message-box[inline]{position:static}lr-message-box:not([active]){transform:translateY(10px);visibility:hidden;opacity:0}lr-message-box[error]{color:var(--clr-error);background-color:var(--clr-error-message-bgr)}lr-message-box .heading{display:grid;grid-template-columns:min-content auto min-content;padding:var(--gap-mid)}lr-message-box .caption{display:flex;align-items:center;word-break:break-word}lr-message-box .heading button{width:var(--ui-size);padding:0;color:currentColor;background-color:transparent;opacity:var(--opacity-normal)}lr-message-box .heading button:hover{opacity:var(--opacity-hover)}lr-message-box .heading button:active{opacity:var(--opacity-active)}lr-message-box .msg{padding:var(--gap-max);padding-top:0;text-align:left}lr-confirmation-dialog{display:block;padding:var(--gap-mid);padding-top:var(--gap-max)}lr-confirmation-dialog .message{display:flex;justify-content:center;padding:var(--gap-mid);padding-bottom:var(--gap-max);font-weight:500;font-size:1.1em}lr-confirmation-dialog .toolbar{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-mid);margin-top:var(--gap-mid)}lr-progress-bar-common{position:fixed;right:0;bottom:0;left:0;z-index:10000;display:block;height:var(--gap-mid);background-color:var(--clr-background);transition:opacity .3s}lr-progress-bar-common:not([active]){opacity:0;pointer-events:none}lr-progress-bar{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}lr-progress-bar .progress{width:calc(var(--l-width) * 1%);height:100%;background-color:var(--clr-accent-light);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}lr-progress-bar .progress--unknown{width:100%;transform-origin:0% 50%;animation:lr-indeterminateAnimation 1s infinite linear}lr-progress-bar .progress--hidden{opacity:0}@keyframes lr-indeterminateAnimation{0%{transform:translate(0) scaleX(0)}40%{transform:translate(0) scaleX(.4)}to{transform:translate(100%) scaleX(.5)}}lr-activity-header{display:flex;gap:var(--gap-mid);justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt);font-weight:500;font-size:1em;line-height:var(--ui-size)}lr-activity-header lr-icon{height:var(--ui-size)}lr-activity-header>*{display:flex;align-items:center}lr-activity-header button{display:inline-flex;align-items:center;justify-content:center;color:var(--clr-txt-mid)}lr-activity-header button:hover{background-color:var(--clr-background)}lr-activity-header button:active{background-color:var(--clr-background-dark)}lr-copyright .credits{padding:0 var(--gap-mid) var(--gap-mid) calc(var(--gap-mid) * 1.5);color:var(--clr-txt-lightest);font-weight:400;font-size:.85em;opacity:.7;transition:var(--transition-duration) ease}lr-copyright .credits:hover{opacity:1}:host(.lr-cloud-image-editor) lr-icon,.lr-cloud-image-editor lr-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host(.lr-cloud-image-editor) lr-icon svg,.lr-cloud-image-editor lr-icon svg{width:unset;height:unset}:host(.lr-cloud-image-editor) lr-icon:not([raw]) path,.lr-cloud-image-editor lr-icon:not([raw]) path{stroke-linejoin:round;fill:none;stroke:currentColor;stroke-width:1.2}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--icon-rotate: "M13.5.399902L12 1.9999l1.5 1.6M12.0234 2H14.4C16.3882 2 18 3.61178 18 5.6V8M4 17h9c.5523 0 1-.4477 1-1V7c0-.55228-.4477-1-1-1H4c-.55228 0-1 .44771-1 1v9c0 .5523.44771 1 1 1z";--icon-mirror: "M5.00042.399902l-1.5 1.599998 1.5 1.6M15.0004.399902l1.5 1.599998-1.5 1.6M3.51995 2H16.477M8.50042 16.7V6.04604c0-.30141-.39466-.41459-.5544-.159L1.28729 16.541c-.12488.1998.01877.459.2544.459h6.65873c.16568 0 .3-.1343.3-.3zm2.99998 0V6.04604c0-.30141.3947-.41459.5544-.159L18.7135 16.541c.1249.1998-.0187.459-.2544.459h-6.6587c-.1657 0-.3-.1343-.3-.3z";--icon-flip: "M19.6001 4.99993l-1.6-1.5-1.6 1.5m3.2 9.99997l-1.6 1.5-1.6-1.5M18 3.52337V16.4765M3.3 8.49993h10.654c.3014 0 .4146-.39466.159-.5544L3.459 1.2868C3.25919 1.16192 3 1.30557 3 1.5412v6.65873c0 .16568.13432.3.3.3zm0 2.99997h10.654c.3014 0 .4146.3947.159.5544L3.459 18.7131c-.19981.1248-.459-.0188-.459-.2544v-6.6588c0-.1657.13432-.3.3-.3z";--icon-sad: "M2 17c4.41828-4 11.5817-4 16 0M16.5 5c0 .55228-.4477 1-1 1s-1-.44772-1-1 .4477-1 1-1 1 .44772 1 1zm-11 0c0 .55228-.44772 1-1 1s-1-.44772-1-1 .44772-1 1-1 1 .44772 1 1z";--icon-closeMax: "M3 3l14 14m0-14L3 17";--icon-crop: "M20 14H7.00513C6.45001 14 6 13.55 6 12.9949V0M0 6h13.0667c.5154 0 .9333.41787.9333.93333V20M14.5.399902L13 1.9999l1.5 1.6M13 2h2c1.6569 0 3 1.34315 3 3v2M5.5 19.5999l1.5-1.6-1.5-1.6M7 18H5c-1.65685 0-3-1.3431-3-3v-2";--icon-tuning: "M8 10h11M1 10h4M1 4.5h11m3 0h4m-18 11h11m3 0h4M12 4.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M5 10a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M12 15.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0";--icon-filters: "M4.5 6.5a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m-3.5 6a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m7 0a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0";--icon-done: "M1 10.6316l5.68421 5.6842L19 4";--icon-original: "M0 40L40-.00000133";--icon-slider: "M0 10h11m0 0c0 1.1046.8954 2 2 2s2-.8954 2-2m-4 0c0-1.10457.8954-2 2-2s2 .89543 2 2m0 0h5";--icon-exposure: "M10 20v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M5 10a5 5 0 1010 0 5 5 0 10-10 0";--icon-contrast: "M2 10a8 8 0 1016 0 8 8 0 10-16 0m8-8v16m8-8h-8m7.5977 2.5H10m6.24 2.5H10m7.6-7.5H10M16.2422 5H10";--icon-brightness: "M15 10c0 2.7614-2.2386 5-5 5m5-5c0-2.76142-2.2386-5-5-5m5 5h-5m0 5c-2.76142 0-5-2.2386-5-5 0-2.76142 2.23858-5 5-5m0 10V5m0 15v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M14.3242 7.5H10m4.3242 5H10";--icon-gamma: "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";--icon-enhance: "M19 13h-2m0 0c-2.2091 0-4-1.7909-4-4m4 4c-2.2091 0-4 1.7909-4 4m0-8V7m0 2c0 2.2091-1.7909 4-4 4m-2 0h2m0 0c2.2091 0 4 1.7909 4 4m0 0v2M8 8.5H6.5m0 0c-1.10457 0-2-.89543-2-2m2 2c-1.10457 0-2 .89543-2 2m0-4V5m0 1.5c0 1.10457-.89543 2-2 2M1 8.5h1.5m0 0c1.10457 0 2 .89543 2 2m0 0V12M12 3h-1m0 0c-.5523 0-1-.44772-1-1m1 1c-.5523 0-1 .44772-1 1m0-2V1m0 1c0 .55228-.44772 1-1 1M8 3h1m0 0c.55228 0 1 .44772 1 1m0 0v1";--icon-saturation: ' ';--icon-warmth: ' ';--icon-vibrance: ' '}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--l10n-cancel: "Cancel";--l10n-apply: "Apply";--l10n-brightness: "Brightness";--l10n-exposure: "Exposure";--l10n-gamma: "Gamma";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-vibrance: "Vibrance";--l10n-warmth: "Warmth";--l10n-enhance: "Enhance";--l10n-original: "Original"}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--rgb-primary-accent: 6, 2, 196;--rgb-text-base: 0, 0, 0;--rgb-text-accent-contrast: 255, 255, 255;--rgb-fill-contrast: 255, 255, 255;--rgb-fill-shaded: 245, 245, 245;--rgb-shadow: 0, 0, 0;--rgb-error: 209, 81, 81;--opacity-shade-mid: .2;--color-primary-accent: rgb(var(--rgb-primary-accent));--color-text-base: rgb(var(--rgb-text-base));--color-text-accent-contrast: rgb(var(--rgb-text-accent-contrast));--color-text-soft: rgb(var(--rgb-fill-contrast));--color-text-error: rgb(var(--rgb-error));--color-fill-contrast: rgb(var(--rgb-fill-contrast));--color-modal-backdrop: rgba(var(--rgb-fill-shaded), .95);--color-image-background: rgba(var(--rgb-fill-shaded));--color-outline: rgba(var(--rgb-text-base), var(--opacity-shade-mid));--color-underline: rgba(var(--rgb-text-base), .08);--color-shade: rgba(var(--rgb-text-base), .02);--color-focus-ring: var(--color-primary-accent);--color-input-placeholder: rgba(var(--rgb-text-base), .32);--color-error: rgb(var(--rgb-error));--font-size-ui: 16px;--font-size-title: 18px;--font-weight-title: 500;--font-size-soft: 14px;--size-touch-area: 40px;--size-panel-heading: 66px;--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--border-radius-connect: 2px;--border-radius-editor: 3px;--border-radius-thumb: 4px;--border-radius-ui: 5px;--border-radius-base: 6px;--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--opacity-min: var(--opacity-shade-mid);--opacity-mid: .1;--opacity-max: .05;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--shadow-base: 0px 5px 15px rgba(var(--rgb-shadow), .1), 0px 1px 4px rgba(var(--rgb-shadow), .15);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}:host(.lr-cloud-image-editor) :is([can-handle-paste]:hover,[can-handle-paste]:focus),.lr-cloud-image-editor :is([can-handle-paste]:hover,[can-handle-paste]:focus){--can-handle-paste: "true"}:host(.lr-cloud-image-editor) :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover),.lr-cloud-image-editor :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover){--filter-effect: var(--hover-filter) !important;--opacity-effect: var(--hover-opacity) !important;--color-effect: var(--hover-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex]:active,[with-effects]:active),.lr-cloud-image-editor :is([tabindex]:active,[with-effects]:active){--filter-effect: var(--down-filter) !important;--opacity-effect: var(--down-opacity) !important;--color-effect: var(--down-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex][active],[with-effects][active]),.lr-cloud-image-editor :is([tabindex][active],[with-effects][active]){--filter-effect: var(--active-filter) !important;--opacity-effect: var(--active-opacity) !important;--color-effect: var(--active-color-rgb) !important}:host(.lr-cloud-image-editor) [hidden-scrollbar]::-webkit-scrollbar,.lr-cloud-image-editor [hidden-scrollbar]::-webkit-scrollbar{display:none}:host(.lr-cloud-image-editor) [hidden-scrollbar],.lr-cloud-image-editor [hidden-scrollbar]{-ms-overflow-style:none;scrollbar-width:none}:host(.lr-cloud-image-editor.editor_ON),.lr-cloud-image-editor.editor_ON{--modal-header-opacity: 0;--modal-header-height: 0px;--modal-toolbar-height: calc(var(--size-panel-heading) * 2)}:host(.lr-cloud-image-editor.editor_OFF),.lr-cloud-image-editor.editor_OFF{--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading)}:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-min-img-height: var(--modal-toolbar-height);--l-max-img-height: 100%;--l-edit-button-width: 120px;--l-toolbar-horizontal-padding: var(--cldtr-gap-mid-1);position:relative;display:grid;grid-template-rows:minmax(var(--l-min-img-height),var(--l-max-img-height)) minmax(var(--modal-toolbar-height),auto);height:100%;overflow:hidden;overflow-y:auto;transition:.3s}@media only screen and (max-width: 800px){:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-edit-button-width: 70px;--l-toolbar-horizontal-padding: var(--cldtr-gap-min)}}:host(.lr-cloud-image-editor)>.wrapper>.viewport,.lr-cloud-image-editor>.wrapper>.viewport{display:flex;align-items:center;justify-content:center;overflow:hidden}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image{--viewer-image-opacity: 1;position:absolute;top:0;left:0;z-index:10;display:block;box-sizing:border-box;width:100%;height:100%;object-fit:scale-down;background-color:var(--color-image-background);transform:scale(1);opacity:var(--viewer-image-opacity);user-select:none;pointer-events:auto}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_visible_viewer,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_visible_viewer{transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-4)}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper{--viewer-image-opacity: 0;background-image:var(--transparent-pixel);transform:scale(1);transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_effects,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_effects{--viewer-image-opacity: 0;transform:scale(1);transition:opacity var(--transition-duration-3) cubic-bezier(.5,0,1,1),transform var(--transition-duration-4);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container,.lr-cloud-image-editor>.wrapper>.viewport>.image_container{position:relative;display:block;width:100%;height:100%;background-color:var(--color-image-background);transition:var(--transition-duration-3)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar,.lr-cloud-image-editor>.wrapper>.toolbar{position:relative;transition:.3s}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content{position:absolute;bottom:0;left:0;box-sizing:border-box;width:100%;height:var(--modal-toolbar-height);min-height:var(--size-panel-heading);background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer{display:flex;align-items:center;justify-content:space-between;height:var(--size-panel-heading);padding-right:var(--l-toolbar-horizontal-padding);padding-left:var(--l-toolbar-horizontal-padding)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor{display:flex}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.info_pan,.lr-cloud-image-editor>.wrapper>.viewport>.info_pan{position:absolute;user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer{position:absolute;z-index:2;display:flex;max-width:120px;transform:translate(-40px);user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer>.file_type,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer>.file_type{padding:4px .8em}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash,.lr-cloud-image-editor>.wrapper>.network_problems_splash{position:absolute;z-index:4;display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:rgba(var(--rgb-text-base),.6);background-color:rgba(var(--rgb-fill-shaded));border-radius:50%}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text{margin-top:var(--cldtr-gap-max);font-size:var(--font-size-ui)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_footer,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_footer{display:flex;align-items:center;justify-content:center;height:var(--size-panel-heading)}lr-crop-frame>.svg{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);opacity:inherit;transition:var(--transition-duration-3)}lr-crop-frame>.thumb{--idle-color-rgb: var(--color-text-base);--hover-color-rgb: var(--color-primary-accent);--focus-color-rgb: var(--color-primary-accent);--down-color-rgb: var(--color-primary-accent);--color-effect: var(--idle-color-rgb);color:var(--color-effect);transition:color var(--transition-duration-3),opacity var(--transition-duration-3)}lr-crop-frame>.thumb--visible{opacity:1;pointer-events:auto}lr-crop-frame>.thumb--hidden{opacity:0;pointer-events:none}lr-crop-frame>.guides{transition:var(--transition-duration-3)}lr-crop-frame>.guides--hidden{opacity:0}lr-crop-frame>.guides--semi-hidden{opacity:.2}lr-crop-frame>.guides--visible{opacity:1}lr-editor-button-control,lr-editor-crop-button-control,lr-editor-filter-control,lr-editor-operation-control{--l-base-min-width: 40px;--l-base-height: var(--l-base-min-width);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--filter-effect: var(--idle-filter);--idle-color-rgb: var(--rgb-text-base);--idle-opacity: .05;--idle-filter: 1;--hover-color-rgb: var(--idle-color-rgb);--hover-opacity: .08;--hover-filter: .8;--down-color-rgb: var(--hover-color-rgb);--down-opacity: .12;--down-filter: .6;position:relative;display:grid;grid-template-columns:var(--l-base-min-width) auto;align-items:center;height:var(--l-base-height);color:rgba(var(--idle-color-rgb));outline:none;cursor:pointer;transition:var(--l-width-transition)}lr-editor-button-control.active,lr-editor-operation-control.active,lr-editor-crop-button-control.active,lr-editor-filter-control.active{--idle-color-rgb: var(--rgb-primary-accent)}lr-editor-filter-control.not_active .preview[loaded]{opacity:1}lr-editor-filter-control.active .preview{opacity:0}lr-editor-button-control.not_active,lr-editor-operation-control.not_active,lr-editor-crop-button-control.not_active,lr-editor-filter-control.not_active{--idle-color-rgb: var(--rgb-text-base)}lr-editor-button-control>.before,lr-editor-operation-control>.before,lr-editor-crop-button-control>.before,lr-editor-filter-control>.before{position:absolute;right:0;left:0;z-index:-1;width:100%;height:100%;background-color:rgba(var(--color-effect),var(--opacity-effect));border-radius:var(--border-radius-editor);transition:var(--transition-duration-3)}lr-editor-button-control>.title,lr-editor-operation-control>.title,lr-editor-crop-button-control>.title,lr-editor-filter-control>.title{padding-right:var(--cldtr-gap-mid-1);font-size:.7em;letter-spacing:1.004px;text-transform:uppercase}lr-editor-filter-control>.preview{position:absolute;right:0;left:0;z-index:1;width:100%;height:var(--l-base-height);background-repeat:no-repeat;background-size:contain;border-radius:var(--border-radius-editor);opacity:0;filter:brightness(var(--filter-effect));transition:var(--transition-duration-3)}lr-editor-filter-control>.original-icon{color:var(--color-text-base);opacity:.3}lr-editor-image-cropper{position:absolute;top:0;left:0;z-index:10;display:block;width:100%;height:100%;opacity:0;pointer-events:none;touch-action:none}lr-editor-image-cropper.active_from_editor{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.active_from_viewer{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.inactive_to_editor{opacity:0;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1),opacity var(--transition-duration-3) calc(var(--transition-duration-3) + .05s);pointer-events:none}lr-editor-image-cropper>.canvas{position:absolute;top:0;left:0;z-index:1;display:block;width:100%;height:100%}lr-editor-image-fader{position:absolute;top:0;left:0;display:block;width:100%;height:100%}lr-editor-image-fader.active_from_viewer{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-start);pointer-events:auto}lr-editor-image-fader.active_from_cropper{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:auto}lr-editor-image-fader.inactive_to_cropper{z-index:3;transform:scale(1);opacity:0;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}lr-editor-image-fader .fader-image{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:scale-down;transform:scale(1);user-select:none;content-visibility:auto}lr-editor-image-fader .fader-image--preview{background-color:var(--color-image-background);border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);transform:scale(1);opacity:0;transition:var(--transition-duration-3)}lr-editor-scroller{display:flex;align-items:center;width:100%;height:100%;overflow-x:scroll}lr-editor-slider{display:flex;align-items:center;justify-content:center;width:100%;height:66px}lr-editor-toolbar{position:relative;width:100%;height:100%}@media only screen and (max-width: 600px){lr-editor-toolbar{--l-tab-gap: var(--cldtr-gap-mid-1);--l-slider-padding: var(--cldtr-gap-min);--l-controls-padding: var(--cldtr-gap-min)}}@media only screen and (min-width: 601px){lr-editor-toolbar{--l-tab-gap: calc(var(--cldtr-gap-mid-1) + var(--cldtr-gap-max));--l-slider-padding: var(--cldtr-gap-mid-1);--l-controls-padding: var(--cldtr-gap-mid-1)}}lr-editor-toolbar>.toolbar-container{position:relative;width:100%;height:100%;overflow:hidden}lr-editor-toolbar>.toolbar-container>.sub-toolbar{position:absolute;display:grid;grid-template-rows:1fr 1fr;width:100%;height:100%;background-color:var(--color-fill-contrast);transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-3) ease-in-out,visibility var(--transition-duration-3) ease-in-out}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--visible{transform:translateY(0);opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--top-hidden{transform:translateY(100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--bottom-hidden{transform:translateY(-100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row{display:flex;align-items:center;justify-content:space-between;padding-right:var(--l-controls-padding);padding-left:var(--l-controls-padding)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles{position:relative;display:grid;grid-auto-flow:column;grid-gap:0px var(--l-tab-gap);align-items:center;height:100%}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggles_indicator{position:absolute;bottom:0;left:0;width:var(--size-touch-area);height:2px;background-color:var(--color-primary-accent);transform:translate(0);transition:transform var(--transition-duration-3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row{position:relative}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content{position:absolute;top:0;left:0;display:flex;width:100%;height:100%;overflow:hidden;opacity:0;content-visibility:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--visible{opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--hidden{opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--visible{display:contents}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles.tab-toggles--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_align{display:grid;grid-template-areas:". inner .";grid-template-columns:1fr auto 1fr;box-sizing:border-box;min-width:100%;padding-left:var(--cldtr-gap-max)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner{display:grid;grid-area:inner;grid-auto-flow:column;grid-gap:calc((var(--cldtr-gap-min) - 1px) * 3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner:last-child{padding-right:var(--cldtr-gap-max)}lr-editor-toolbar .controls-list_last-item{margin-right:var(--cldtr-gap-max)}lr-editor-toolbar .info-tooltip_container{position:absolute;display:flex;align-items:flex-start;justify-content:center;width:100%;height:100%}lr-editor-toolbar .info-tooltip_wrapper{position:absolute;top:calc(-100% - var(--cldtr-gap-mid-2));display:flex;flex-direction:column;justify-content:flex-end;height:100%;pointer-events:none}lr-editor-toolbar .info-tooltip{z-index:3;padding-top:calc(var(--cldtr-gap-min) / 2);padding-right:var(--cldtr-gap-min);padding-bottom:calc(var(--cldtr-gap-min) / 2);padding-left:var(--cldtr-gap-min);color:var(--color-text-base);font-size:.7em;letter-spacing:1px;text-transform:uppercase;background-color:var(--color-text-accent-contrast);border-radius:var(--border-radius-editor);transform:translateY(100%);opacity:0;transition:var(--transition-duration-3)}lr-editor-toolbar .info-tooltip_visible{transform:translateY(0);opacity:1}lr-editor-toolbar .slider{padding-right:var(--l-slider-padding);padding-left:var(--l-slider-padding)}lr-btn-ui{--filter-effect: var(--idle-brightness);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--l-transition-effect: var(--css-transition, color var(--transition-duration-2), filter var(--transition-duration-2));display:inline-flex;align-items:center;box-sizing:var(--css-box-sizing, border-box);height:var(--css-height, var(--size-touch-area));padding-right:var(--css-padding-right, var(--cldtr-gap-mid-1));padding-left:var(--css-padding-left, var(--cldtr-gap-mid-1));color:rgba(var(--color-effect),var(--opacity-effect));outline:none;cursor:pointer;filter:brightness(var(--filter-effect));transition:var(--l-transition-effect);user-select:none}lr-btn-ui .text{white-space:nowrap}lr-btn-ui .icon{display:flex;align-items:center;justify-content:center;color:rgba(var(--color-effect),var(--opacity-effect));filter:brightness(var(--filter-effect));transition:var(--l-transition-effect)}lr-btn-ui .icon_left{margin-right:var(--cldtr-gap-mid-1);margin-left:0}lr-btn-ui .icon_right{margin-right:0;margin-left:var(--cldtr-gap-mid-1)}lr-btn-ui .icon_single{margin-right:0;margin-left:0}lr-btn-ui .icon_hidden{display:none;margin:0}lr-btn-ui.primary{--idle-color-rgb: var(--rgb-primary-accent);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--idle-color-rgb);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.boring{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-text-base);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: 1;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.default{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-primary-accent);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-line-loader-ui{position:absolute;top:0;left:0;z-index:9999;width:100%;height:2px;opacity:.5}lr-line-loader-ui .inner{width:25%;max-width:200px;height:100%}lr-line-loader-ui .line{width:100%;height:100%;background-color:var(--color-primary-accent);transform:translate(-101%);transition:transform 1s}lr-slider-ui{--l-thumb-size: 24px;--l-zero-dot-size: 5px;--l-zero-dot-offset: 2px;--idle-color-rgb: var(--rgb-text-base);--hover-color-rgb: var(--rgb-primary-accent);--down-color-rgb: var(--rgb-primary-accent);--color-effect: var(--idle-color-rgb);--l-color: rgb(var(--color-effect));position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:calc(var(--l-thumb-size) + (var(--l-zero-dot-size) + var(--l-zero-dot-offset)) * 2)}lr-slider-ui .thumb{position:absolute;left:0;width:var(--l-thumb-size);height:var(--l-thumb-size);background-color:var(--l-color);border-radius:50%;transform:translate(0);opacity:1;transition:opacity var(--transition-duration-2)}lr-slider-ui .steps{position:absolute;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:100%;padding-right:calc(var(--l-thumb-size) / 2);padding-left:calc(var(--l-thumb-size) / 2)}lr-slider-ui .border-step{width:0px;height:10px;border-right:1px solid var(--l-color);opacity:.6;transition:var(--transition-duration-2)}lr-slider-ui .minor-step{width:0px;height:4px;border-right:1px solid var(--l-color);opacity:.2;transition:var(--transition-duration-2)}lr-slider-ui .zero-dot{position:absolute;top:calc(100% - var(--l-zero-dot-offset) * 2);left:calc(var(--l-thumb-size) / 2 - var(--l-zero-dot-size) / 2);width:var(--l-zero-dot-size);height:var(--l-zero-dot-size);background-color:var(--color-primary-accent);border-radius:50%;opacity:0;transition:var(--transition-duration-3)}lr-slider-ui .input{position:absolute;width:calc(100% - 10px);height:100%;margin:0;cursor:pointer;opacity:0}lr-presence-toggle.transition{transition:opacity var(--transition-duration-3),visibility var(--transition-duration-3)}lr-presence-toggle.visible{opacity:1;pointer-events:inherit}lr-presence-toggle.hidden{opacity:0;pointer-events:none}ctx-provider{--color-text-base: black;--color-primary-accent: blue;display:flex;align-items:center;justify-content:center;width:190px;height:40px;padding-right:10px;padding-left:10px;background-color:#f5f5f5;border-radius:3px}lr-cloud-image-editor-activity{position:relative;display:flex;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light)}lr-modal lr-cloud-image-editor-activity{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%)}lr-select{display:inline-flex}lr-select>button{position:relative;display:inline-flex;align-items:center;padding-right:0!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-select>button>select{position:absolute;display:block;width:100%;height:100%;opacity:0}:host{flex:1}lr-start-from{height:100%;container-type:inline-size}.lr-wgt-common,:host{--cfg-done-activity: "start-from";--cfg-init-activity: "start-from"}lr-activity-header:after{width:var(--ui-size);height:var(--ui-size);content:""}lr-activity-header .close-btn{display:none}@container (min-width: 500px){lr-start-from .content{grid-template-columns:1fr max-content}lr-start-from lr-copyright{grid-column:2}lr-start-from lr-drop-area{grid-row:span 3}lr-start-from:has(lr-copyright[hidden]) lr-drop-area{grid-row:span 2}lr-start-from:has(.cancel-btn[hidden]) lr-drop-area{grid-row:span 2}lr-start-from:has(lr-copyright[hidden]):has(.cancel-btn[hidden]) lr-drop-area{grid-row:span 1}} +:where(.lr-wgt-cfg,.lr-wgt-common),:host{--cfg-pubkey: "YOUR_PUBLIC_KEY";--cfg-multiple: 1;--cfg-multiple-min: 0;--cfg-multiple-max: 0;--cfg-confirm-upload: 0;--cfg-img-only: 0;--cfg-accept: "";--cfg-external-sources-preferred-types: "";--cfg-store: "auto";--cfg-camera-mirror: 1;--cfg-source-list: "local, url, camera, dropbox, gdrive";--cfg-max-local-file-size-bytes: 0;--cfg-thumb-size: 76;--cfg-show-empty-list: 0;--cfg-use-local-image-editor: 0;--cfg-use-cloud-image-editor: 1;--cfg-remove-copyright: 0;--cfg-modal-scroll-lock: 1;--cfg-modal-backdrop-strokes: 0;--cfg-source-list-wrap: 1;--cfg-init-activity: "start-from";--cfg-done-activity: "";--cfg-remote-tab-session-key: "";--cfg-cdn-cname: "https://ucarecdn.com";--cfg-base-url: "https://upload.uploadcare.com";--cfg-social-base-url: "https://social.uploadcare.com";--cfg-secure-signature: "";--cfg-secure-expire: "";--cfg-secure-delivery-proxy: "";--cfg-retry-throttled-request-max-times: 1;--cfg-multipart-min-file-size: 26214400;--cfg-multipart-chunk-size: 5242880;--cfg-max-concurrent-requests: 10;--cfg-multipart-max-concurrent-requests: 4;--cfg-multipart-max-attempts: 3;--cfg-check-for-url-duplicates: 0;--cfg-save-url-for-recurrent-uploads: 0;--cfg-group-output: 0;--cfg-user-agent-integration: ""}:where(.lr-wgt-icons,.lr-wgt-common),:host{--icon-default: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-file: "m2.89453 1.2012c0-.473389.38376-.857145.85714-.857145h8.40003c.2273 0 .4453.090306.6061.251051l8.4 8.400004c.1607.16074.251.37876.251.60609v13.2c0 .4734-.3837.8571-.8571.8571h-16.80003c-.47338 0-.85714-.3837-.85714-.8571zm1.71429.85714v19.88576h15.08568v-11.4858h-7.5428c-.4734 0-.8572-.3837-.8572-.8571v-7.54286zm8.39998 1.21218 5.4736 5.47353-5.4736.00001z";--icon-close: "m4.60395 4.60395c.29289-.2929.76776-.2929 1.06066 0l6.33539 6.33535 6.3354-6.33535c.2929-.2929.7677-.2929 1.0606 0 .2929.29289.2929.76776 0 1.06066l-6.3353 6.33539 6.3353 6.3354c.2929.2929.2929.7677 0 1.0606s-.7677.2929-1.0606 0l-6.3354-6.3353-6.33539 6.3353c-.2929.2929-.76777.2929-1.06066 0-.2929-.2929-.2929-.7677 0-1.0606l6.33535-6.3354-6.33535-6.33539c-.2929-.2929-.2929-.76777 0-1.06066z";--icon-collapse: "M3.11572 12C3.11572 11.5858 3.45151 11.25 3.86572 11.25H20.1343C20.5485 11.25 20.8843 11.5858 20.8843 12C20.8843 12.4142 20.5485 12.75 20.1343 12.75H3.86572C3.45151 12.75 3.11572 12.4142 3.11572 12Z";--icon-expand: "M12.0001 8.33716L3.53033 16.8068C3.23743 17.0997 2.76256 17.0997 2.46967 16.8068C2.17678 16.5139 2.17678 16.0391 2.46967 15.7462L11.0753 7.14067C11.1943 7.01825 11.3365 6.92067 11.4936 6.8536C11.6537 6.78524 11.826 6.75 12.0001 6.75C12.1742 6.75 12.3465 6.78524 12.5066 6.8536C12.6637 6.92067 12.8059 7.01826 12.925 7.14068L21.5304 15.7462C21.8233 16.0391 21.8233 16.5139 21.5304 16.8068C21.2375 17.0997 20.7627 17.0997 20.4698 16.8068L12.0001 8.33716Z";--icon-info: "M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";--icon-error: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";--icon-arrow-down: "m11.5009 23.0302c.2844.2533.7135.2533.9978 0l9.2899-8.2758c.3092-.2756.3366-.7496.0611-1.0589s-.7496-.3367-1.0589-.0612l-8.0417 7.1639v-19.26834c0-.41421-.3358-.749997-.75-.749997s-.75.335787-.75.749997v19.26704l-8.04025-7.1626c-.30928-.2755-.78337-.2481-1.05889.0612-.27553.3093-.24816.7833.06112 1.0589z";--icon-upload: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-local: "m3 3.75c-.82843 0-1.5.67157-1.5 1.5v13.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-9.75c0-.82843-.6716-1.5-1.5-1.5h-9c-.2634 0-.5076-.13822-.6431-.36413l-2.03154-3.38587zm-3 1.5c0-1.65685 1.34315-3 3-3h6.75c.2634 0 .5076.13822.6431.36413l2.0315 3.38587h8.5754c1.6569 0 3 1.34315 3 3v9.75c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3z";--icon-url: "m19.1099 3.67026c-1.7092-1.70917-4.5776-1.68265-6.4076.14738l-2.2212 2.22122c-.2929.29289-.7678.29289-1.0607 0-.29289-.29289-.29289-.76777 0-1.06066l2.2212-2.22122c2.376-2.375966 6.1949-2.481407 8.5289-.14738l1.2202 1.22015c2.334 2.33403 2.2286 6.15294-.1474 8.52895l-2.2212 2.2212c-.2929.2929-.7678.2929-1.0607 0s-.2929-.7678 0-1.0607l2.2212-2.2212c1.8301-1.83003 1.8566-4.69842.1474-6.40759zm-3.3597 4.57991c.2929.29289.2929.76776 0 1.06066l-6.43918 6.43927c-.29289.2928-.76777.2928-1.06066 0-.29289-.2929-.29289-.7678 0-1.0607l6.43924-6.43923c.2929-.2929.7677-.2929 1.0606 0zm-9.71158 1.17048c.29289.29289.29289.76775 0 1.06065l-2.22123 2.2212c-1.83002 1.8301-1.85654 4.6984-.14737 6.4076l1.22015 1.2202c1.70917 1.7091 4.57756 1.6826 6.40763-.1474l2.2212-2.2212c.2929-.2929.7677-.2929 1.0606 0s.2929.7677 0 1.0606l-2.2212 2.2212c-2.37595 2.376-6.19486 2.4815-8.52889.1474l-1.22015-1.2201c-2.334031-2.3341-2.22859-6.153.14737-8.5289l2.22123-2.22125c.29289-.2929.76776-.2929 1.06066 0z";--icon-camera: "m7.65 2.55c.14164-.18885.36393-.3.6-.3h7.5c.2361 0 .4584.11115.6.3l2.025 2.7h2.625c1.6569 0 3 1.34315 3 3v10.5c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3v-10.5c0-1.65685 1.34315-3 3-3h2.625zm.975 1.2-2.025 2.7c-.14164.18885-.36393.3-.6.3h-3c-.82843 0-1.5.67157-1.5 1.5v10.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-10.5c0-.82843-.6716-1.5-1.5-1.5h-3c-.2361 0-.4584-.11115-.6-.3l-2.025-2.7zm3.375 6c-1.864 0-3.375 1.511-3.375 3.375s1.511 3.375 3.375 3.375 3.375-1.511 3.375-3.375-1.511-3.375-3.375-3.375zm-4.875 3.375c0-2.6924 2.18261-4.875 4.875-4.875 2.6924 0 4.875 2.1826 4.875 4.875s-2.1826 4.875-4.875 4.875c-2.69239 0-4.875-2.1826-4.875-4.875z";--icon-dots: "M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z";--icon-back: "M20.251 12.0001C20.251 12.4143 19.9152 12.7501 19.501 12.7501L6.06696 12.7501L11.7872 18.6007C12.0768 18.8968 12.0715 19.3717 11.7753 19.6613C11.4791 19.9508 11.0043 19.9455 10.7147 19.6493L4.13648 12.9213C4.01578 12.8029 3.91947 12.662 3.85307 12.5065C3.78471 12.3464 3.74947 12.1741 3.74947 12C3.74947 11.8259 3.78471 11.6536 3.85307 11.4935C3.91947 11.338 4.01578 11.1971 4.13648 11.0787L10.7147 4.35068C11.0043 4.0545 11.4791 4.04916 11.7753 4.33873C12.0715 4.62831 12.0768 5.10315 11.7872 5.39932L6.06678 11.2501L19.501 11.2501C19.9152 11.2501 20.251 11.5859 20.251 12.0001Z";--icon-remove: "m6.35673 9.71429c-.76333 0-1.35856.66121-1.27865 1.42031l1.01504 9.6429c.06888.6543.62067 1.1511 1.27865 1.1511h9.25643c.658 0 1.2098-.4968 1.2787-1.1511l1.015-9.6429c.0799-.7591-.5153-1.42031-1.2786-1.42031zm.50041-4.5v.32142h-2.57143c-.71008 0-1.28571.57564-1.28571 1.28572s.57563 1.28571 1.28571 1.28571h15.42859c.7101 0 1.2857-.57563 1.2857-1.28571s-.5756-1.28572-1.2857-1.28572h-2.5714v-.32142c0-1.77521-1.4391-3.21429-3.2143-3.21429h-3.8572c-1.77517 0-3.21426 1.43908-3.21426 3.21429zm7.07146-.64286c.355 0 .6428.28782.6428.64286v.32142h-5.14283v-.32142c0-.35504.28782-.64286.64283-.64286z";--icon-edit: "M3.96371 14.4792c-.15098.151-.25578.3419-.3021.5504L2.52752 20.133c-.17826.8021.53735 1.5177 1.33951 1.3395l5.10341-1.1341c.20844-.0463.39934-.1511.55032-.3021l8.05064-8.0507-5.557-5.55702-8.05069 8.05062ZM13.4286 5.01437l5.557 5.55703 2.0212-2.02111c.6576-.65765.6576-1.72393 0-2.38159l-3.1755-3.17546c-.6577-.65765-1.7239-.65765-2.3816 0l-2.0211 2.02113Z";--icon-detail: "M5,3C3.89,3 3,3.89 3,5V19C3,20.11 3.89,21 5,21H19C20.11,21 21,20.11 21,19V5C21,3.89 20.11,3 19,3H5M5,5H19V19H5V5M7,7V9H17V7H7M7,11V13H17V11H7M7,15V17H14V15H7Z";--icon-select: "M7,10L12,15L17,10H7Z";--icon-check: "m12 22c5.5228 0 10-4.4772 10-10 0-5.52285-4.4772-10-10-10-5.52285 0-10 4.47715-10 10 0 5.5228 4.47715 10 10 10zm4.7071-11.4929-5.9071 5.9071-3.50711-3.5071c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.3906 1.02369-.3906 1.41422 0l2.09289 2.0929 4.4929-4.49294c.3905-.39052 1.0237-.39052 1.4142 0 .3905.39053.3905 1.02374 0 1.41424z";--icon-add: "M12.75 21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21V12.7499H3C2.58579 12.7499 2.25 12.4141 2.25 11.9999C2.25 11.5857 2.58579 11.2499 3 11.2499H11.25V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V11.2499H21C21.4142 11.2499 21.75 11.5857 21.75 11.9999C21.75 12.4141 21.4142 12.7499 21 12.7499H12.75V21Z";--icon-edit-file: "m12.1109 6c.3469-1.69213 1.8444-2.96484 3.6391-2.96484s3.2922 1.27271 3.6391 2.96484h2.314c.4142 0 .75.33578.75.75 0 .41421-.3358.75-.75.75h-2.314c-.3469 1.69213-1.8444 2.9648-3.6391 2.9648s-3.2922-1.27267-3.6391-2.9648h-9.81402c-.41422 0-.75001-.33579-.75-.75 0-.41422.33578-.75.75-.75zm3.6391-1.46484c-1.2232 0-2.2148.99162-2.2148 2.21484s.9916 2.21484 2.2148 2.21484 2.2148-.99162 2.2148-2.21484-.9916-2.21484-2.2148-2.21484zm-11.1391 11.96484c.34691-1.6921 1.84437-2.9648 3.6391-2.9648 1.7947 0 3.2922 1.2727 3.6391 2.9648h9.814c.4142 0 .75.3358.75.75s-.3358.75-.75.75h-9.814c-.3469 1.6921-1.8444 2.9648-3.6391 2.9648-1.79473 0-3.29219-1.2727-3.6391-2.9648h-2.31402c-.41422 0-.75-.3358-.75-.75s.33578-.75.75-.75zm3.6391-1.4648c-1.22322 0-2.21484.9916-2.21484 2.2148s.99162 2.2148 2.21484 2.2148 2.2148-.9916 2.2148-2.2148-.99158-2.2148-2.2148-2.2148z";--icon-remove-file: "m11.9554 3.29999c-.7875 0-1.5427.31281-2.0995.86963-.49303.49303-.79476 1.14159-.85742 1.83037h5.91382c-.0627-.68878-.3644-1.33734-.8575-1.83037-.5568-.55682-1.312-.86963-2.0994-.86963zm4.461 2.7c-.0656-1.08712-.5264-2.11657-1.3009-2.89103-.8381-.83812-1.9749-1.30897-3.1601-1.30897-1.1853 0-2.32204.47085-3.16016 1.30897-.77447.77446-1.23534 1.80391-1.30087 2.89103h-2.31966c-.03797 0-.07529.00282-.11174.00827h-1.98826c-.41422 0-.75.33578-.75.75 0 .41421.33578.75.75.75h1.35v11.84174c0 .7559.30026 1.4808.83474 2.0152.53448.5345 1.25939.8348 2.01526.8348h9.44999c.7559 0 1.4808-.3003 2.0153-.8348.5344-.5344.8347-1.2593.8347-2.0152v-11.84174h1.35c.4142 0 .75-.33579.75-.75 0-.41422-.3358-.75-.75-.75h-1.9883c-.0364-.00545-.0737-.00827-.1117-.00827zm-10.49169 1.50827v11.84174c0 .358.14223.7014.3954.9546.25318.2532.59656.3954.9546.3954h9.44999c.358 0 .7014-.1422.9546-.3954s.3954-.5966.3954-.9546v-11.84174z";--icon-trash-file: var(--icon-remove);--icon-upload-error: var(--icon-error);--icon-fullscreen: "M5,5H10V7H7V10H5V5M14,5H19V10H17V7H14V5M17,14H19V19H14V17H17V14M10,17V19H5V14H7V17H10Z";--icon-fullscreen-exit: "M14,14H19V16H16V19H14V14M5,14H10V19H8V16H5V14M8,5H10V10H5V8H8V5M19,8V10H14V5H16V8H19Z";--icon-badge-success: "M10.5 18.2044L18.0992 10.0207C18.6629 9.41362 18.6277 8.46452 18.0207 7.90082C17.4136 7.33711 16.4645 7.37226 15.9008 7.97933L10.5 13.7956L8.0992 11.2101C7.53549 10.603 6.5864 10.5679 5.97933 11.1316C5.37226 11.6953 5.33711 12.6444 5.90082 13.2515L10.5 18.2044Z";--icon-badge-error: "m13.6 18.4c0 .8837-.7164 1.6-1.6 1.6-.8837 0-1.6-.7163-1.6-1.6s.7163-1.6 1.6-1.6c.8836 0 1.6.7163 1.6 1.6zm-1.6-13.9c.8284 0 1.5.67157 1.5 1.5v7c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5v-7c0-.82843.6716-1.5 1.5-1.5z";--icon-about: "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-.922.163-.241.369-.419.617-.532.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.72-.1.216-.234.408-.405.574a3.48 3.48 0 0 1-.575.453c-.33.199-.613.42-.847.66-.234.242-.415.558-.543.949-.125.39-.19.916-.197 1.577ZM11.205 17.15c.21.206.46.31.75.31.196 0 .374-.049.534-.144.16-.096.287-.224.383-.384.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";--icon-edit-rotate: "M16.89,15.5L18.31,16.89C19.21,15.73 19.76,14.39 19.93,13H17.91C17.77,13.87 17.43,14.72 16.89,15.5M13,17.9V19.92C14.39,19.75 15.74,19.21 16.9,18.31L15.46,16.87C14.71,17.41 13.87,17.76 13,17.9M19.93,11C19.76,9.61 19.21,8.27 18.31,7.11L16.89,8.53C17.43,9.28 17.77,10.13 17.91,11M15.55,5.55L11,1V4.07C7.06,4.56 4,7.92 4,12C4,16.08 7.05,19.44 11,19.93V17.91C8.16,17.43 6,14.97 6,12C6,9.03 8.16,6.57 11,6.09V10L15.55,5.55Z";--icon-edit-flip-v: "M3 15V17H5V15M15 19V21H17V19M19 3H5C3.9 3 3 3.9 3 5V9H5V5H19V9H21V5C21 3.9 20.1 3 19 3M21 19H19V21C20.1 21 21 20.1 21 19M1 11V13H23V11M7 19V21H9V19M19 15V17H21V15M11 19V21H13V19M3 19C3 20.1 3.9 21 5 21V19Z";--icon-edit-flip-h: "M15 21H17V19H15M19 9H21V7H19M3 5V19C3 20.1 3.9 21 5 21H9V19H5V5H9V3H5C3.9 3 3 3.9 3 5M19 3V5H21C21 3.9 20.1 3 19 3M11 23H13V1H11M19 17H21V15H19M15 5H17V3H15M19 13H21V11H19M19 21C20.1 21 21 20.1 21 19H19Z";--icon-edit-brightness: "M12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6A6,6 0 0,1 18,12A6,6 0 0,1 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z";--icon-edit-contrast: "M12,20C9.79,20 7.79,19.1 6.34,17.66L17.66,6.34C19.1,7.79 20,9.79 20,12A8,8 0 0,1 12,20M6,8H8V6H9.5V8H11.5V9.5H9.5V11.5H8V9.5H6M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,16H17V14.5H12V16Z";--icon-edit-saturation: "M3,13A9,9 0 0,0 12,22C12,17 7.97,13 3,13M12,5.5A2.5,2.5 0 0,1 14.5,8A2.5,2.5 0 0,1 12,10.5A2.5,2.5 0 0,1 9.5,8A2.5,2.5 0 0,1 12,5.5M5.6,10.25A2.5,2.5 0 0,0 8.1,12.75C8.63,12.75 9.12,12.58 9.5,12.31C9.5,12.37 9.5,12.43 9.5,12.5A2.5,2.5 0 0,0 12,15A2.5,2.5 0 0,0 14.5,12.5C14.5,12.43 14.5,12.37 14.5,12.31C14.88,12.58 15.37,12.75 15.9,12.75C17.28,12.75 18.4,11.63 18.4,10.25C18.4,9.25 17.81,8.4 16.97,8C17.81,7.6 18.4,6.74 18.4,5.75C18.4,4.37 17.28,3.25 15.9,3.25C15.37,3.25 14.88,3.41 14.5,3.69C14.5,3.63 14.5,3.56 14.5,3.5A2.5,2.5 0 0,0 12,1A2.5,2.5 0 0,0 9.5,3.5C9.5,3.56 9.5,3.63 9.5,3.69C9.12,3.41 8.63,3.25 8.1,3.25A2.5,2.5 0 0,0 5.6,5.75C5.6,6.74 6.19,7.6 7.03,8C6.19,8.4 5.6,9.25 5.6,10.25M12,22A9,9 0 0,0 21,13C16,13 12,17 12,22Z";--icon-edit-crop: "M7,17V1H5V5H1V7H5V17A2,2 0 0,0 7,19H17V23H19V19H23V17M17,15H19V7C19,5.89 18.1,5 17,5H9V7H17V15Z";--icon-edit-text: "M18.5,4L19.66,8.35L18.7,8.61C18.25,7.74 17.79,6.87 17.26,6.43C16.73,6 16.11,6 15.5,6H13V16.5C13,17 13,17.5 13.33,17.75C13.67,18 14.33,18 15,18V19H9V18C9.67,18 10.33,18 10.67,17.75C11,17.5 11,17 11,16.5V6H8.5C7.89,6 7.27,6 6.74,6.43C6.21,6.87 5.75,7.74 5.3,8.61L4.34,8.35L5.5,4H18.5Z";--icon-edit-draw: "m21.879394 2.1631238c-1.568367-1.62768627-4.136546-1.53831744-5.596267.1947479l-8.5642801 10.1674753c-1.4906533-.224626-3.061232.258204-4.2082427 1.448604-1.0665468 1.106968-1.0997707 2.464806-1.1203996 3.308068-.00142.05753-.00277.113001-.00439.16549-.02754.894146-.08585 1.463274-.5821351 2.069648l-.80575206.98457.88010766.913285c1.0539516 1.093903 2.6691689 1.587048 4.1744915 1.587048 1.5279113 0 3.2235468-.50598 4.4466094-1.775229 1.147079-1.190514 1.612375-2.820653 1.395772-4.367818l9.796763-8.8879697c1.669907-1.5149954 1.75609-4.1802333.187723-5.8079195zm-16.4593821 13.7924592c.8752943-.908358 2.2944227-.908358 3.1697054 0 .8752942.908358.8752942 2.381259 0 3.289617-.5909138.61325-1.5255389.954428-2.53719.954428-.5223687 0-.9935663-.09031-1.3832112-.232762.3631253-.915463.3952949-1.77626.4154309-2.429737.032192-1.045425.072224-1.308557.3352649-1.581546z";--icon-edit-guides: "M1.39,18.36L3.16,16.6L4.58,18L5.64,16.95L4.22,15.54L5.64,14.12L8.11,16.6L9.17,15.54L6.7,13.06L8.11,11.65L9.53,13.06L10.59,12L9.17,10.59L10.59,9.17L13.06,11.65L14.12,10.59L11.65,8.11L13.06,6.7L14.47,8.11L15.54,7.05L14.12,5.64L15.54,4.22L18,6.7L19.07,5.64L16.6,3.16L18.36,1.39L22.61,5.64L5.64,22.61L1.39,18.36Z";--icon-edit-color: "M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z";--icon-edit-resize: "M10.59,12L14.59,8H11V6H18V13H16V9.41L12,13.41V16H20V4H8V12H10.59M22,2V18H12V22H2V12H6V2H22M10,14H4V20H10V14Z";--icon-external-source-placeholder: "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";--icon-facebook: "m12 1.5c-5.79901 0-10.5 4.70099-10.5 10.5 0 4.9427 3.41586 9.0888 8.01562 10.2045v-6.1086h-2.13281c-.41421 0-.75-.3358-.75-.75v-3.2812c0-.4142.33579-.75.75-.75h2.13281v-1.92189c0-.95748.22571-2.51089 1.38068-3.6497 1.1934-1.17674 3.1742-1.71859 6.2536-1.05619.3455.07433.5923.3798.5923.73323v2.75395c0 .41422-.3358.75-.75.75-.6917 0-1.2029.02567-1.5844.0819-.3865.05694-.5781.13711-.675.20223-.1087.07303-.2367.20457-.2367 1.02837v1.0781h2.3906c.2193 0 .4275.0959.57.2626.1425.1666.205.3872.1709.6038l-.5156 3.2813c-.0573.3647-.3716.6335-.7409.6335h-1.875v6.1058c4.5939-1.1198 8.0039-5.2631 8.0039-10.2017 0-5.79901-4.701-10.5-10.5-10.5zm-12 10.5c0-6.62744 5.37256-12 12-12 6.6274 0 12 5.37256 12 12 0 5.9946-4.3948 10.9614-10.1384 11.8564-.2165.0337-.4369-.0289-.6033-.1714s-.2622-.3506-.2622-.5697v-7.7694c0-.4142.3358-.75.75-.75h1.9836l.28-1.7812h-2.2636c-.4142 0-.75-.3358-.75-.75v-1.8281c0-.82854.0888-1.72825.9-2.27338.3631-.24396.8072-.36961 1.293-.4412.3081-.0454.6583-.07238 1.0531-.08618v-1.39629c-2.4096-.40504-3.6447.13262-4.2928.77165-.7376.72735-.9338 1.79299-.9338 2.58161v2.67189c0 .4142-.3358.75-.75.75h-2.13279v1.7812h2.13279c.4142 0 .75.3358.75.75v7.7712c0 .219-.0956.427-.2619.5695-.1662.1424-.3864.2052-.6028.1717-5.74968-.8898-10.1509-5.8593-10.1509-11.8583z";--icon-dropbox: "m6.01895 1.92072c.24583-.15659.56012-.15658.80593.00003l5.17512 3.29711 5.1761-3.29714c.2458-.15659.5601-.15658.8059.00003l5.5772 3.55326c.2162.13771.347.37625.347.63253 0 .25629-.1308.49483-.347.63254l-4.574 2.91414 4.574 2.91418c.2162.1377.347.3762.347.6325s-.1308.4948-.347.6325l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.1761-3.2971-5.17512 3.2971c-.24581.1566-.5601.1566-.80593 0l-5.578142-3.5532c-.216172-.1377-.347058-.3763-.347058-.6326s.130886-.4949.347058-.6326l4.574772-2.91408-4.574772-2.91411c-.216172-.1377-.347058-.37626-.347058-.63257 0-.2563.130886-.49486.347058-.63256zm.40291 8.61518-4.18213 2.664 4.18213 2.664 4.18144-2.664zm6.97504 2.664 4.1821 2.664 4.1814-2.664-4.1814-2.664zm2.7758-3.54668-4.1727 2.65798-4.17196-2.65798 4.17196-2.658zm1.4063-.88268 4.1814-2.664-4.1814-2.664-4.1821 2.664zm-6.9757-2.664-4.18144-2.664-4.18213 2.664 4.18213 2.664zm-4.81262 12.43736c.22254-.3494.68615-.4522 1.03551-.2297l5.17521 3.2966 5.1742-3.2965c.3493-.2226.813-.1198 1.0355.2295.2226.3494.1198.813-.2295 1.0355l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.57819-3.5532c-.34936-.2226-.45216-.6862-.22963-1.0355z";--icon-gdrive: "m7.73633 1.81806c.13459-.22968.38086-.37079.64707-.37079h7.587c.2718 0 .5223.14697.6548.38419l7.2327 12.94554c.1281.2293.1269.5089-.0031.7371l-3.7935 6.6594c-.1334.2342-.3822.3788-.6517.3788l-14.81918.0004c-.26952 0-.51831-.1446-.65171-.3788l-3.793526-6.6598c-.1327095-.233-.130949-.5191.004617-.7504zm.63943 1.87562-6.71271 11.45452 2.93022 5.1443 6.65493-11.58056zm3.73574 6.52652-2.39793 4.1727 4.78633.0001zm4.1168 4.1729 5.6967-.0002-6.3946-11.44563h-5.85354zm5.6844 1.4998h-13.06111l-2.96515 5.1598 13.08726-.0004z";--icon-gphotos: "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";--icon-instagram: "M6.225 12a5.775 5.775 0 1 1 11.55 0 5.775 5.775 0 0 1-11.55 0zM12 7.725a4.275 4.275 0 1 0 0 8.55 4.275 4.275 0 0 0 0-8.55zM18.425 6.975a1.4 1.4 0 1 0 0-2.8 1.4 1.4 0 0 0 0 2.8zM11.958.175h.084c2.152 0 3.823 0 5.152.132 1.35.134 2.427.41 3.362 1.013a7.15 7.15 0 0 1 2.124 2.124c.604.935.88 2.012 1.013 3.362.132 1.329.132 3 .132 5.152v.084c0 2.152 0 3.823-.132 5.152-.134 1.35-.41 2.427-1.013 3.362a7.15 7.15 0 0 1-2.124 2.124c-.935.604-2.012.88-3.362 1.013-1.329.132-3 .132-5.152.132h-.084c-2.152 0-3.824 0-5.153-.132-1.35-.134-2.427-.409-3.36-1.013a7.15 7.15 0 0 1-2.125-2.124C.716 19.62.44 18.544.307 17.194c-.132-1.329-.132-3-.132-5.152v-.084c0-2.152 0-3.823.132-5.152.133-1.35.409-2.427 1.013-3.362A7.15 7.15 0 0 1 3.444 1.32C4.378.716 5.456.44 6.805.307c1.33-.132 3-.132 5.153-.132zM6.953 1.799c-1.234.123-2.043.36-2.695.78A5.65 5.65 0 0 0 2.58 4.26c-.42.65-.657 1.46-.78 2.695C1.676 8.2 1.675 9.797 1.675 12c0 2.203 0 3.8.124 5.046.123 1.235.36 2.044.78 2.696a5.649 5.649 0 0 0 1.68 1.678c.65.421 1.46.658 2.694.78 1.247.124 2.844.125 5.047.125s3.8 0 5.046-.124c1.235-.123 2.044-.36 2.695-.78a5.648 5.648 0 0 0 1.68-1.68c.42-.65.657-1.46.78-2.694.123-1.247.124-2.844.124-5.047s-.001-3.8-.125-5.046c-.122-1.235-.359-2.044-.78-2.695a5.65 5.65 0 0 0-1.679-1.68c-.651-.42-1.46-.657-2.695-.78-1.246-.123-2.843-.124-5.046-.124-2.203 0-3.8 0-5.047.124z";--icon-flickr: "M5.95874 7.92578C3.66131 7.92578 1.81885 9.76006 1.81885 11.9994C1.81885 14.2402 3.66145 16.0744 5.95874 16.0744C8.26061 16.0744 10.1039 14.2396 10.1039 11.9994C10.1039 9.76071 8.26074 7.92578 5.95874 7.92578ZM0.318848 11.9994C0.318848 8.91296 2.85168 6.42578 5.95874 6.42578C9.06906 6.42578 11.6039 8.91232 11.6039 11.9994C11.6039 15.0877 9.06919 17.5744 5.95874 17.5744C2.85155 17.5744 0.318848 15.0871 0.318848 11.9994ZM18.3898 7.92578C16.0878 7.92578 14.2447 9.76071 14.2447 11.9994C14.2447 14.2396 16.088 16.0744 18.3898 16.0744C20.6886 16.0744 22.531 14.2401 22.531 11.9994C22.531 9.76019 20.6887 7.92578 18.3898 7.92578ZM12.7447 11.9994C12.7447 8.91232 15.2795 6.42578 18.3898 6.42578C21.4981 6.42578 24.031 8.91283 24.031 11.9994C24.031 15.0872 21.4982 17.5744 18.3898 17.5744C15.2794 17.5744 12.7447 15.0877 12.7447 11.9994Z";--icon-vk: var(--icon-external-source-placeholder);--icon-evernote: "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.276.01-.039.018-.078.022-.105.011-.061.023-.14.034-.23.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-.576-.097-.015-.18-.028-.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-.915.197.193.412.357.627.493a5.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.235-.212-.103-.5-.174-.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.996ZM15.638 11.626a.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";--icon-box: "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";--icon-onedrive: "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";--icon-huddle: "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"}:where(.lr-wgt-l10n_en-US,.lr-wgt-common),:host{--l10n-locale-name: "en-US";--l10n-upload-file: "Upload file";--l10n-upload-files: "Upload files";--l10n-choose-file: "Choose file";--l10n-choose-files: "Choose files";--l10n-drop-files-here: "Drop files here";--l10n-select-file-source: "Select file source";--l10n-selected: "Selected";--l10n-upload: "Upload";--l10n-add-more: "Add more";--l10n-cancel: "Cancel";--l10n-start-from-cancel: var(--l10n-cancel);--l10n-clear: "Clear";--l10n-camera-shot: "Shot";--l10n-upload-url: "Import";--l10n-upload-url-placeholder: "Paste link here";--l10n-edit-image: "Edit image";--l10n-edit-detail: "Details";--l10n-back: "Back";--l10n-done: "Done";--l10n-ok: "Ok";--l10n-remove-from-list: "Remove";--l10n-no: "No";--l10n-yes: "Yes";--l10n-confirm-your-action: "Confirm your action";--l10n-are-you-sure: "Are you sure?";--l10n-selected-count: "Selected:";--l10n-upload-error: "Upload error";--l10n-validation-error: "Validation error";--l10n-no-files: "No files selected";--l10n-browse: "Browse";--l10n-not-uploaded-yet: "Not uploaded yet...";--l10n-file__one: "file";--l10n-file__other: "files";--l10n-error__one: "error";--l10n-error__other: "errors";--l10n-header-uploading: "Uploading {{count}} {{plural:file(count)}}";--l10n-header-failed: "{{count}} {{plural:error(count)}}";--l10n-header-succeed: "{{count}} {{plural:file(count)}} uploaded";--l10n-header-total: "{{count}} {{plural:file(count)}} selected";--l10n-src-type-local: "From device";--l10n-src-type-from-url: "From link";--l10n-src-type-camera: "Camera";--l10n-src-type-draw: "Draw";--l10n-src-type-facebook: "Facebook";--l10n-src-type-dropbox: "Dropbox";--l10n-src-type-gdrive: "Google Drive";--l10n-src-type-gphotos: "Google Photos";--l10n-src-type-instagram: "Instagram";--l10n-src-type-flickr: "Flickr";--l10n-src-type-vk: "VK";--l10n-src-type-evernote: "Evernote";--l10n-src-type-box: "Box";--l10n-src-type-onedrive: "Onedrive";--l10n-src-type-huddle: "Huddle";--l10n-src-type-other: "Other";--l10n-src-type: var(--l10n-src-type-local);--l10n-caption-from-url: "Import from link";--l10n-caption-camera: "Camera";--l10n-caption-draw: "Draw";--l10n-caption-edit-file: "Edit file";--l10n-file-no-name: "No name...";--l10n-toggle-fullscreen: "Toggle fullscreen";--l10n-toggle-guides: "Toggle guides";--l10n-rotate: "Rotate";--l10n-flip-vertical: "Flip vertical";--l10n-flip-horizontal: "Flip horizontal";--l10n-brightness: "Brightness";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-resize: "Resize image";--l10n-crop: "Crop";--l10n-select-color: "Select color";--l10n-text: "Text";--l10n-draw: "Draw";--l10n-cancel-edit: "Cancel edit";--l10n-tab-view: "Preview";--l10n-tab-details: "Details";--l10n-file-name: "Name";--l10n-file-size: "Size";--l10n-cdn-url: "CDN URL";--l10n-file-size-unknown: "Unknown";--l10n-camera-permissions-denied: "Camera access denied";--l10n-camera-permissions-prompt: "Please allow access to the camera";--l10n-camera-permissions-request: "Request access";--l10n-files-count-limit-error-title: "Files count limit overflow";--l10n-files-count-limit-error-too-few: "You\2019ve chosen {{total}}. At least {{min}} required.";--l10n-files-count-limit-error-too-many: "You\2019ve chosen too many files. {{max}} is maximum.";--l10n-files-count-minimum: "At least {{count}} files are required";--l10n-files-count-allowed: "Only {{count}} files are allowed";--l10n-files-max-size-limit-error: "File is too big. Max file size is {{maxFileSize}}.";--l10n-has-validation-errors: "File validation error ocurred. Please, check your files before upload.";--l10n-images-only-accepted: "Only image files are accepted.";--l10n-file-type-not-allowed: "Uploading of these file types is not allowed."}:where(.lr-wgt-theme,.lr-wgt-common),:host{--darkmode: 0;--h-foreground: 208;--s-foreground: 4%;--l-foreground: calc(10% + 78% * var(--darkmode));--h-background: 208;--s-background: 4%;--l-background: calc(97% - 85% * var(--darkmode));--h-accent: 211;--s-accent: 100%;--l-accent: calc(50% - 5% * var(--darkmode));--h-confirm: 137;--s-confirm: 85%;--l-confirm: 53%;--h-error: 358;--s-error: 100%;--l-error: 66%;--shadows: 1;--h-shadow: 0;--s-shadow: 0%;--l-shadow: 0%;--opacity-normal: .6;--opacity-hover: .9;--opacity-active: 1;--ui-size: 32px;--gap-min: 2px;--gap-small: 4px;--gap-mid: 10px;--gap-max: 20px;--gap-table: 0px;--borders: 1;--border-radius-element: 8px;--border-radius-frame: 12px;--border-radius-thumb: 6px;--transition-duration: .2s;--modal-max-w: 800px;--modal-max-h: 600px;--modal-normal-w: 430px;--darkmode-minus: calc(1 + var(--darkmode) * -2);--clr-background: hsl(var(--h-background), var(--s-background), var(--l-background));--clr-background-dark: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-background-light: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 3% * var(--darkmode-minus)) );--clr-accent: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 15% * var(--darkmode)));--clr-accent-light: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 30%);--clr-accent-lightest: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 10%);--clr-accent-light-opaque: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 45% * var(--darkmode-minus)));--clr-accent-lightest-opaque: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) + 47% * var(--darkmode-minus)) );--clr-confirm: hsl(var(--h-confirm), var(--s-confirm), var(--l-confirm));--clr-error: hsl(var(--h-error), var(--s-error), var(--l-error));--clr-error-light: hsla(var(--h-error), var(--s-error), var(--l-error), 15%);--clr-error-lightest: hsla(var(--h-error), var(--s-error), var(--l-error), 5%);--clr-error-message-bgr: hsl(var(--h-error), var(--s-error), calc(var(--l-error) + 60% * var(--darkmode-minus)));--clr-txt: hsl(var(--h-foreground), var(--s-foreground), var(--l-foreground));--clr-txt-mid: hsl(var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 20% * var(--darkmode-minus)));--clr-txt-light: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 30% * var(--darkmode-minus)) );--clr-txt-lightest: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 50% * var(--darkmode-minus)) );--clr-shade-lv1: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 5%);--clr-shade-lv2: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 8%);--clr-shade-lv3: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 12%);--clr-generic-file-icon: var(--clr-txt-lightest);--border-light: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.1 - .05 * var(--darkmode)) * var(--borders)) );--border-mid: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.2 - .1 * var(--darkmode)) * var(--borders)) );--border-accent: 1px solid hsla(var(--h-accent), var(--s-accent), var(--l-accent), 1 * var(--borders));--border-dashed: 1px dashed hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), calc(.2 * var(--borders)));--clr-curtain: hsla(var(--h-background), var(--s-background), calc(var(--l-background)), 60%);--hsl-shadow: var(--h-shadow), var(--s-shadow), var(--l-shadow);--modal-shadow: 0px 0px 1px hsla(var(--hsl-shadow), calc((.3 + .65 * var(--darkmode)) * var(--shadows))), 0px 6px 20px hsla(var(--hsl-shadow), calc((.1 + .4 * var(--darkmode)) * var(--shadows)));--clr-btn-bgr-primary: var(--clr-accent);--clr-btn-bgr-primary-hover: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 4% * var(--darkmode-minus)) );--clr-btn-bgr-primary-active: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 8% * var(--darkmode-minus)) );--clr-btn-txt-primary: hsl(var(--h-accent), var(--s-accent), 98%);--shadow-btn-primary: none;--clr-btn-bgr-secondary: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-hover: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 7% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-active: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 12% * var(--darkmode-minus)) );--clr-btn-txt-secondary: var(--clr-txt-mid);--shadow-btn-secondary: none;--clr-btn-bgr-disabled: var(--clr-background);--clr-btn-txt-disabled: var(--clr-txt-lightest);--shadow-btn-disabled: none}@media only screen and (max-height: 600px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-h: 100%}}@media only screen and (max-width: 430px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-w: 100vw;--modal-max-h: var(--uploadcare-blocks-window-height)}}:where(.lr-wgt-theme,.lr-wgt-common),:host{color:var(--clr-txt);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}:where(.lr-wgt-theme,.lr-wgt-common) *,:host *{box-sizing:border-box}:where(.lr-wgt-theme,.lr-wgt-common) [hidden],:host [hidden]{display:none!important}:where(.lr-wgt-theme,.lr-wgt-common) [activity]:not([active]),:host [activity]:not([active]){display:none}:where(.lr-wgt-theme,.lr-wgt-common) dialog:not([open]) [activity],:host dialog:not([open]) [activity]{display:none}:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{display:flex;align-items:center;justify-content:center;height:var(--ui-size);padding-right:1.4em;padding-left:1.4em;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--border-radius-element);cursor:pointer;user-select:none}@media only screen and (max-width: 800px){:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{padding-right:1em;padding-left:1em}}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn,:host button.primary-btn{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary);box-shadow:var(--shadow-btn-primary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:hover,:host button.primary-btn:hover{background-color:var(--clr-btn-bgr-primary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:active,:host button.primary-btn:active{background-color:var(--clr-btn-bgr-primary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn,:host button.secondary-btn{color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:hover,:host button.secondary-btn:hover{background-color:var(--clr-btn-bgr-secondary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:active,:host button.secondary-btn:active{background-color:var(--clr-btn-bgr-secondary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn,:host button.mini-btn{width:var(--ui-size);height:var(--ui-size);padding:0;background-color:transparent;border:none;cursor:pointer;transition:var(--transition-duration) ease;color:var(--clr-txt)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:hover,:host button.mini-btn:hover{background-color:var(--clr-shade-lv1)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:active,:host button.mini-btn:active{background-color:var(--clr-shade-lv2)}:where(.lr-wgt-theme,.lr-wgt-common) :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]),:host :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]){color:var(--clr-btn-txt-disabled);background-color:var(--clr-btn-bgr-disabled);box-shadow:var(--shadow-btn-disabled);pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) a,:host a{color:var(--clr-accent);text-decoration:none}:where(.lr-wgt-theme,.lr-wgt-common) a[disabled],:host a[disabled]{pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]{display:flex;width:100%;height:var(--ui-size);padding-right:.6em;padding-left:.6em;color:var(--clr-txt);font-size:1em;font-family:inherit;background-color:var(--clr-background-light);border:var(--border-light);border-radius:var(--border-radius-element);transition:var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]::placeholder{color:var(--clr-txt-lightest)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:hover,:host input[type=text]:hover{border-color:var(--clr-accent-light)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:focus,:host input[type=text]:focus{border-color:var(--clr-accent);outline:none}:where(.lr-wgt-theme,.lr-wgt-common) input[disabled],:host input[disabled]{opacity:.6;pointer-events:none}lr-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size)}lr-icon svg{width:calc(var(--ui-size) / 2);height:calc(var(--ui-size) / 2)}lr-icon:not([raw]) path{fill:currentColor}lr-tabs{display:grid;grid-template-rows:min-content minmax(var(--ui-size),auto);height:100%;overflow:hidden;color:var(--clr-txt-lightest)}lr-tabs>.tabs-row{display:flex;grid-template-columns:minmax();background-color:var(--clr-background-light)}lr-tabs>.tabs-context{overflow-y:auto}lr-tabs .tabs-row>.tab{display:flex;flex-grow:1;align-items:center;justify-content:center;height:var(--ui-size);border-bottom:var(--border-light);cursor:pointer;transition:var(--transition-duration)}lr-tabs .tabs-row>.tab[current]{color:var(--clr-txt);border-color:var(--clr-txt)}lr-range{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--ui-size)}lr-range datalist{display:none}lr-range input{width:100%;height:100%;opacity:0}lr-range .track-wrapper{position:absolute;right:10px;left:10px;display:flex;align-items:center;justify-content:center;height:2px;user-select:none;pointer-events:none}lr-range .track{position:absolute;right:0;left:0;display:flex;align-items:center;justify-content:center;height:2px;background-color:currentColor;border-radius:2px;opacity:.5}lr-range .slider{position:absolute;width:16px;height:16px;background-color:currentColor;border-radius:100%;transform:translate(-50%)}lr-range .bar{position:absolute;left:0;height:100%;background-color:currentColor;border-radius:2px}lr-range .caption{position:absolute;display:inline-flex;justify-content:center}lr-color{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size);overflow:hidden;background-color:var(--clr-background);cursor:pointer}lr-color[current]{background-color:var(--clr-txt)}lr-color input[type=color]{position:absolute;display:block;width:100%;height:100%;opacity:0}lr-color .current-color{position:absolute;width:50%;height:50%;border:2px solid #fff;border-radius:100%;pointer-events:none}lr-config{display:none}lr-simple-btn{position:relative;display:inline-flex}lr-simple-btn button{padding-left:.2em!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-simple-btn button lr-icon svg{transform:scale(.8)}lr-simple-btn button:hover{background-color:var(--clr-btn-bgr-secondary-hover)}lr-simple-btn button:active{background-color:var(--clr-btn-bgr-secondary-active)}lr-simple-btn>lr-drop-area{display:contents}lr-simple-btn .visual-drop-area{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--gap-min);border:var(--border-dashed);border-radius:inherit;opacity:0;transition:border-color var(--transition-duration) ease,background-color var(--transition-duration) ease,opacity var(--transition-duration) ease}lr-simple-btn .visual-drop-area:before{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--clr-txt-light);background-color:var(--clr-background);border-radius:inherit;content:var(--l10n-drop-files-here)}lr-simple-btn>lr-drop-area[drag-state=active] .visual-drop-area{background-color:var(--clr-accent-lightest);opacity:1}lr-simple-btn>lr-drop-area[drag-state=inactive] .visual-drop-area{background-color:var(--clr-shade-lv1);opacity:0}lr-simple-btn>lr-drop-area[drag-state=near] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent-light);opacity:1}lr-simple-btn>lr-drop-area[drag-state=over] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent);opacity:1}lr-simple-btn>:where(lr-drop-area[drag-state="active"],lr-drop-area[drag-state="near"],lr-drop-area[drag-state="over"]) button{box-shadow:none}lr-simple-btn>lr-drop-area:after{content:""}lr-source-btn{display:flex;align-items:center;margin-bottom:var(--gap-min);padding:var(--gap-min) var(--gap-mid);color:var(--clr-txt-mid);border-radius:var(--border-radius-element);cursor:pointer;transition-duration:var(--transition-duration);transition-property:background-color,color;user-select:none}lr-source-btn:hover{color:var(--clr-accent);background-color:var(--clr-accent-lightest)}lr-source-btn:active{color:var(--clr-accent);background-color:var(--clr-accent-light)}lr-source-btn lr-icon{display:inline-flex;flex-grow:1;justify-content:center;min-width:var(--ui-size);margin-right:var(--gap-mid);opacity:.8}lr-source-btn[type=local]>.txt:after{content:var(--l10n-local-files)}lr-source-btn[type=camera]>.txt:after{content:var(--l10n-camera)}lr-source-btn[type=url]>.txt:after{content:var(--l10n-from-url)}lr-source-btn[type=other]>.txt:after{content:var(--l10n-other)}lr-source-btn .txt{display:flex;align-items:center;box-sizing:border-box;width:100%;height:var(--ui-size);padding:0;white-space:nowrap;border:none}lr-drop-area{padding:var(--gap-min);overflow:hidden;border:var(--border-dashed);border-radius:var(--border-radius-frame);transition:var(--transition-duration) ease}lr-drop-area,lr-drop-area .content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}lr-drop-area .text{position:relative;margin:var(--gap-mid);color:var(--clr-txt-light);transition:var(--transition-duration) ease}lr-drop-area[ghost][drag-state=inactive]{display:none;opacity:0}lr-drop-area[ghost]:not([fullscreen]):is([drag-state="active"],[drag-state="near"],[drag-state="over"]){background:var(--clr-background)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) :is(.text,.icon-container){color:var(--clr-accent)}lr-drop-area:is([drag-state="active"],[drag-state="near"],[drag-state="over"],:hover){color:var(--clr-accent);background:var(--clr-accent-lightest);border-color:var(--clr-accent-light)}lr-drop-area:is([drag-state="active"],[drag-state="near"]){opacity:1}lr-drop-area[drag-state=over]{border-color:var(--clr-accent);opacity:1}lr-drop-area[with-icon]{min-height:calc(var(--ui-size) * 6)}lr-drop-area[with-icon] .content-wrapper{display:flex;flex-direction:column}lr-drop-area[with-icon] .text{color:var(--clr-txt);font-weight:500;font-size:1.1em}lr-drop-area[with-icon] .icon-container{position:relative;width:calc(var(--ui-size) * 2);height:calc(var(--ui-size) * 2);margin:var(--gap-mid);overflow:hidden;color:var(--clr-txt);background-color:var(--clr-background);border-radius:50%;transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon{position:absolute;top:calc(50% - var(--ui-size) / 2);left:calc(50% - var(--ui-size) / 2);transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon:last-child{transform:translateY(calc(var(--ui-size) * 1.5))}lr-drop-area[with-icon]:hover .icon-container,lr-drop-area[with-icon]:hover .text{color:var(--clr-accent)}lr-drop-area[with-icon]:hover .icon-container{background-color:var(--clr-accent-lightest)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .icon-container{color:#fff;background-color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .text{color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:last-child{transform:translateY(0)}lr-drop-area[with-icon]>.content-wrapper[drag-state=near] lr-icon:last-child{transform:scale(1.3)}lr-drop-area[with-icon]>.content-wrapper[drag-state=over] lr-icon:last-child{transform:scale(1.5)}lr-drop-area[fullscreen]{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--gap-mid) * 2);height:calc(100vh - var(--gap-mid) * 2);margin:var(--gap-mid)}lr-drop-area[fullscreen] .content-wrapper{width:100%;max-width:calc(var(--modal-normal-w) * .8);height:calc(var(--ui-size) * 6);color:var(--clr-txt);background-color:var(--clr-background-light);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:var(--transition-duration) ease}lr-drop-area[with-icon][fullscreen][drag-state=active]>.content-wrapper,lr-drop-area[with-icon][fullscreen][drag-state=near]>.content-wrapper{transform:translateY(var(--gap-mid));opacity:0}lr-drop-area[with-icon][fullscreen][drag-state=over]>.content-wrapper{transform:translateY(0);opacity:1}:is(lr-drop-area[with-icon][fullscreen])>.content-wrapper lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[clickable]{cursor:pointer}lr-modal{--modal-max-content-height: calc(var(--uploadcare-blocks-window-height, 100vh) - 4 * var(--gap-mid) - var(--ui-size));--modal-content-height-fill: var(--uploadcare-blocks-window-height, 100vh)}lr-modal[dialog-fallback]{--lr-z-max: 2147483647;position:fixed;z-index:var(--lr-z-max);display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;pointer-events:none;inset:0}lr-modal[dialog-fallback] dialog[open]{z-index:var(--lr-z-max);pointer-events:auto}lr-modal[dialog-fallback] dialog[open]+.backdrop{position:fixed;top:0;left:0;z-index:calc(var(--lr-z-max) - 1);align-items:center;justify-content:center;width:100vw;height:100vh;background-color:var(--clr-curtain);pointer-events:auto}lr-modal[strokes][dialog-fallback] dialog[open]+.backdrop{background-image:var(--modal-backdrop-background-image)}@supports selector(dialog::backdrop){lr-modal>dialog::backdrop{background-color:#0000001a}lr-modal[strokes]>dialog::backdrop{background-image:var(--modal-backdrop-background-image)}}lr-modal>dialog[open]{transform:translateY(0);visibility:visible;opacity:1}lr-modal>dialog:not([open]){transform:translateY(20px);visibility:hidden;opacity:0}lr-modal>dialog{display:flex;flex-direction:column;width:max-content;max-width:min(calc(100% - var(--gap-mid) * 2),calc(var(--modal-max-w) - var(--gap-mid) * 2));min-height:var(--ui-size);max-height:calc(var(--modal-max-h) - var(--gap-mid) * 2);margin:auto;padding:0;overflow:hidden;background-color:var(--clr-background-light);border:0;border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:transform calc(var(--transition-duration) * 2)}@media only screen and (max-width: 430px),only screen and (max-height: 600px){lr-modal>dialog>.content{height:var(--modal-max-content-height)}}lr-url-source{display:block;background-color:var(--clr-background-light)}lr-modal lr-url-source{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-url-source>.content{display:grid;grid-gap:var(--gap-small);grid-template-columns:1fr min-content;padding:var(--gap-mid);padding-top:0}lr-url-source .url-input{display:flex}lr-url-source .url-upload-btn:after{content:var(--l10n-upload-url)}lr-camera-source{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;overflow:hidden;background-color:var(--clr-background-light);border-radius:var(--border-radius-element)}lr-modal lr-camera-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:100vh;max-height:var(--modal-max-content-height)}lr-camera-source.initialized{height:max-content}@media only screen and (max-width: 430px){lr-camera-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-camera-source video{display:block;width:100%;max-height:100%;object-fit:contain;object-position:center center;background-color:var(--clr-background-dark);border-radius:var(--border-radius-element)}lr-camera-source .toolbar{position:absolute;bottom:0;display:flex;justify-content:space-between;width:100%;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-camera-source .content{display:flex;flex:1;justify-content:center;width:100%;padding:var(--gap-mid);padding-top:0;overflow:hidden}lr-camera-source .message-box{--padding: calc(var(--gap-max) * 2);display:flex;flex-direction:column;grid-gap:var(--gap-max);align-items:center;justify-content:center;padding:var(--padding) var(--padding) 0 var(--padding);color:var(--clr-txt)}lr-camera-source .message-box button{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary)}lr-camera-source .shot-btn{position:absolute;bottom:var(--gap-max);width:calc(var(--ui-size) * 1.8);height:calc(var(--ui-size) * 1.8);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;opacity:.85;transition:var(--transition-duration) ease}lr-camera-source .shot-btn:hover{transform:scale(1.05);opacity:1}lr-camera-source .shot-btn:active{background-color:var(--clr-txt-mid);opacity:1}lr-camera-source .shot-btn[disabled]{bottom:calc(var(--gap-max) * -1 - var(--gap-mid) - var(--ui-size) * 2)}lr-camera-source .shot-btn lr-icon svg{width:calc(var(--ui-size) / 1.5);height:calc(var(--ui-size) / 1.5)}lr-external-source{display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--clr-background-light);overflow:hidden}lr-modal lr-external-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height)}lr-external-source>.content{position:relative;display:grid;flex:1;grid-template-rows:1fr min-content}@media only screen and (max-width: 430px){lr-external-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-external-source iframe{display:block;width:100%;height:100%;border:none}lr-external-source .iframe-wrapper{overflow:hidden}lr-external-source .toolbar{display:grid;grid-gap:var(--gap-mid);grid-template-columns:max-content 1fr max-content max-content;align-items:center;width:100%;padding:var(--gap-mid);border-top:var(--border-light)}lr-external-source .back-btn{padding-left:0}lr-external-source .back-btn:after{content:var(--l10n-back)}lr-external-source .selected-counter{display:flex;grid-gap:var(--gap-mid);align-items:center;justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt-light)}lr-upload-list{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light);transition:opacity var(--transition-duration)}lr-modal lr-upload-list{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:max-content;max-height:var(--modal-max-content-height)}lr-upload-list .no-files{height:var(--ui-size);padding:var(--gap-max)}lr-upload-list .files{display:block;flex:1;min-height:var(--ui-size);padding:0 var(--gap-mid);overflow:auto}lr-upload-list .toolbar{display:flex;gap:var(--gap-small);justify-content:space-between;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-upload-list .toolbar .add-more-btn{padding-left:.2em}lr-upload-list .toolbar-spacer{flex:1}lr-upload-list lr-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--gap-mid) * 2);height:calc(100% - var(--gap-mid) * 2);margin:var(--gap-mid);border-radius:var(--border-radius-element)}lr-upload-list lr-activity-header>.header-text{padding:0 var(--gap-mid)}lr-start-from{display:block}lr-start-from .content{display:grid;grid-auto-flow:row;gap:var(--gap-max);width:100%;height:max-content;padding:var(--gap-max);overflow-y:auto;background-color:var(--clr-background-light)}lr-modal lr-start-from{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-file-item{display:block}lr-file-item>.inner{position:relative;display:grid;grid-template-columns:32px 1fr max-content;gap:var(--gap-min);align-items:center;margin-bottom:var(--gap-small);padding:var(--gap-mid);overflow:hidden;font-size:.95em;background-color:var(--clr-background);border-radius:var(--border-radius-element);transition:var(--transition-duration)}lr-file-item:last-of-type>.inner{margin-bottom:0}lr-file-item>.inner[focused]{background-color:transparent}lr-file-item>.inner[uploading] .edit-btn{display:none}lr-file-item>:where(.inner[failed],.inner[limit-overflow]){background-color:var(--clr-error-lightest)}lr-file-item .thumb{position:relative;display:inline-flex;width:var(--ui-size);height:var(--ui-size);background-color:var(--clr-shade-lv1);background-position:center center;background-size:cover;border-radius:var(--border-radius-thumb)}lr-file-item .file-name-wrapper{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--gap-mid);padding-left:var(--gap-mid);overflow:hidden;color:var(--clr-txt-light);transition:color var(--transition-duration)}lr-file-item .file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}lr-file-item .file-error{display:none;color:var(--clr-error);font-size:.85em;line-height:130%}lr-file-item button.remove-btn,lr-file-item button.edit-btn{color:var(--clr-txt-lightest)!important}lr-file-item button.upload-btn{display:none}lr-file-item button:hover{color:var(--clr-txt-light)}lr-file-item .badge{position:absolute;top:calc(var(--ui-size) * -.13);right:calc(var(--ui-size) * -.13);width:calc(var(--ui-size) * .44);height:calc(var(--ui-size) * .44);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;transform:scale(.3);opacity:0;transition:var(--transition-duration) ease}lr-file-item>.inner:where([failed],[limit-overflow],[finished]) .badge{transform:scale(1);opacity:1}lr-file-item>.inner[finished] .badge{background-color:var(--clr-confirm)}lr-file-item>.inner:where([failed],[limit-overflow]) .badge{background-color:var(--clr-error)}lr-file-item>.inner:where([failed],[limit-overflow]) .file-error{display:block}lr-file-item .badge lr-icon,lr-file-item .badge lr-icon svg{width:100%;height:100%}lr-file-item .progress-bar{top:calc(100% - 2px);height:2px}lr-file-item .file-actions{display:flex;gap:var(--gap-min);align-items:center;justify-content:center}lr-upload-details{display:flex;flex-direction:column;width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height);overflow:hidden;background-color:var(--clr-background-light)}lr-upload-details>.content{position:relative;display:grid;flex:1;grid-template-rows:auto min-content}lr-upload-details lr-tabs .tabs-context{position:relative}lr-upload-details .toolbar{display:grid;grid-template-columns:min-content min-content 1fr min-content;gap:var(--gap-mid);padding:var(--gap-mid);border-top:var(--border-light)}lr-upload-details .toolbar[edit-disabled]{display:flex;justify-content:space-between}lr-upload-details .remove-btn{padding-left:.5em}lr-upload-details .detail-btn{padding-left:0;color:var(--clr-txt);background-color:var(--clr-background)}lr-upload-details .edit-btn{padding-left:.5em}lr-upload-details .details{padding:var(--gap-max)}lr-upload-details .info-block{padding-top:var(--gap-max);padding-bottom:calc(var(--gap-max) + var(--gap-table));color:var(--clr-txt);border-bottom:var(--border-light)}lr-upload-details .info-block:first-of-type{padding-top:0}lr-upload-details .info-block:last-of-type{border-bottom:none}lr-upload-details .info-block>.info-block_name{margin-bottom:.4em;color:var(--clr-txt-light);font-size:.8em}lr-upload-details .cdn-link[disabled]{pointer-events:none}lr-upload-details .cdn-link[disabled]:before{filter:grayscale(1);content:var(--l10n-not-uploaded-yet)}lr-file-preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}lr-file-preview>lr-img{display:contents}lr-file-preview>lr-img>.img-view{position:absolute;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;object-fit:scale-down}lr-message-box{position:fixed;right:var(--gap-mid);bottom:var(--gap-mid);left:var(--gap-mid);z-index:100000;display:grid;grid-template-rows:min-content auto;color:var(--clr-txt);font-size:.9em;background:var(--clr-background);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:calc(var(--transition-duration) * 2)}lr-message-box[inline]{position:static}lr-message-box:not([active]){transform:translateY(10px);visibility:hidden;opacity:0}lr-message-box[error]{color:var(--clr-error);background-color:var(--clr-error-message-bgr)}lr-message-box .heading{display:grid;grid-template-columns:min-content auto min-content;padding:var(--gap-mid)}lr-message-box .caption{display:flex;align-items:center;word-break:break-word}lr-message-box .heading button{width:var(--ui-size);padding:0;color:currentColor;background-color:transparent;opacity:var(--opacity-normal)}lr-message-box .heading button:hover{opacity:var(--opacity-hover)}lr-message-box .heading button:active{opacity:var(--opacity-active)}lr-message-box .msg{padding:var(--gap-max);padding-top:0;text-align:left}lr-confirmation-dialog{display:block;padding:var(--gap-mid);padding-top:var(--gap-max)}lr-confirmation-dialog .message{display:flex;justify-content:center;padding:var(--gap-mid);padding-bottom:var(--gap-max);font-weight:500;font-size:1.1em}lr-confirmation-dialog .toolbar{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-mid);margin-top:var(--gap-mid)}lr-progress-bar-common{position:fixed;right:0;bottom:0;left:0;z-index:10000;display:block;height:var(--gap-mid);background-color:var(--clr-background);transition:opacity .3s}lr-progress-bar-common:not([active]){opacity:0;pointer-events:none}lr-progress-bar{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}lr-progress-bar .progress{width:calc(var(--l-width) * 1%);height:100%;background-color:var(--clr-accent-light);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}lr-progress-bar .progress--unknown{width:100%;transform-origin:0% 50%;animation:lr-indeterminateAnimation 1s infinite linear}lr-progress-bar .progress--hidden{opacity:0}@keyframes lr-indeterminateAnimation{0%{transform:translate(0) scaleX(0)}40%{transform:translate(0) scaleX(.4)}to{transform:translate(100%) scaleX(.5)}}lr-activity-header{display:flex;gap:var(--gap-mid);justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt);font-weight:500;font-size:1em;line-height:var(--ui-size)}lr-activity-header lr-icon{height:var(--ui-size)}lr-activity-header>*{display:flex;align-items:center}lr-activity-header button{display:inline-flex;align-items:center;justify-content:center;color:var(--clr-txt-mid)}lr-activity-header button:hover{background-color:var(--clr-background)}lr-activity-header button:active{background-color:var(--clr-background-dark)}lr-copyright .credits{padding:0 var(--gap-mid) var(--gap-mid) calc(var(--gap-mid) * 1.5);color:var(--clr-txt-lightest);font-weight:400;font-size:.85em;opacity:.7;transition:var(--transition-duration) ease}lr-copyright .credits:hover{opacity:1}:host(.lr-cloud-image-editor) lr-icon,.lr-cloud-image-editor lr-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host(.lr-cloud-image-editor) lr-icon svg,.lr-cloud-image-editor lr-icon svg{width:unset;height:unset}:host(.lr-cloud-image-editor) lr-icon:not([raw]) path,.lr-cloud-image-editor lr-icon:not([raw]) path{stroke-linejoin:round;fill:none;stroke:currentColor;stroke-width:1.2}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--icon-rotate: "M13.5.399902L12 1.9999l1.5 1.6M12.0234 2H14.4C16.3882 2 18 3.61178 18 5.6V8M4 17h9c.5523 0 1-.4477 1-1V7c0-.55228-.4477-1-1-1H4c-.55228 0-1 .44771-1 1v9c0 .5523.44771 1 1 1z";--icon-mirror: "M5.00042.399902l-1.5 1.599998 1.5 1.6M15.0004.399902l1.5 1.599998-1.5 1.6M3.51995 2H16.477M8.50042 16.7V6.04604c0-.30141-.39466-.41459-.5544-.159L1.28729 16.541c-.12488.1998.01877.459.2544.459h6.65873c.16568 0 .3-.1343.3-.3zm2.99998 0V6.04604c0-.30141.3947-.41459.5544-.159L18.7135 16.541c.1249.1998-.0187.459-.2544.459h-6.6587c-.1657 0-.3-.1343-.3-.3z";--icon-flip: "M19.6001 4.99993l-1.6-1.5-1.6 1.5m3.2 9.99997l-1.6 1.5-1.6-1.5M18 3.52337V16.4765M3.3 8.49993h10.654c.3014 0 .4146-.39466.159-.5544L3.459 1.2868C3.25919 1.16192 3 1.30557 3 1.5412v6.65873c0 .16568.13432.3.3.3zm0 2.99997h10.654c.3014 0 .4146.3947.159.5544L3.459 18.7131c-.19981.1248-.459-.0188-.459-.2544v-6.6588c0-.1657.13432-.3.3-.3z";--icon-sad: "M2 17c4.41828-4 11.5817-4 16 0M16.5 5c0 .55228-.4477 1-1 1s-1-.44772-1-1 .4477-1 1-1 1 .44772 1 1zm-11 0c0 .55228-.44772 1-1 1s-1-.44772-1-1 .44772-1 1-1 1 .44772 1 1z";--icon-closeMax: "M3 3l14 14m0-14L3 17";--icon-crop: "M20 14H7.00513C6.45001 14 6 13.55 6 12.9949V0M0 6h13.0667c.5154 0 .9333.41787.9333.93333V20M14.5.399902L13 1.9999l1.5 1.6M13 2h2c1.6569 0 3 1.34315 3 3v2M5.5 19.5999l1.5-1.6-1.5-1.6M7 18H5c-1.65685 0-3-1.3431-3-3v-2";--icon-tuning: "M8 10h11M1 10h4M1 4.5h11m3 0h4m-18 11h11m3 0h4M12 4.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M5 10a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M12 15.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0";--icon-filters: "M4.5 6.5a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m-3.5 6a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m7 0a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0";--icon-done: "M1 10.6316l5.68421 5.6842L19 4";--icon-original: "M0 40L40-.00000133";--icon-slider: "M0 10h11m0 0c0 1.1046.8954 2 2 2s2-.8954 2-2m-4 0c0-1.10457.8954-2 2-2s2 .89543 2 2m0 0h5";--icon-exposure: "M10 20v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M5 10a5 5 0 1010 0 5 5 0 10-10 0";--icon-contrast: "M2 10a8 8 0 1016 0 8 8 0 10-16 0m8-8v16m8-8h-8m7.5977 2.5H10m6.24 2.5H10m7.6-7.5H10M16.2422 5H10";--icon-brightness: "M15 10c0 2.7614-2.2386 5-5 5m5-5c0-2.76142-2.2386-5-5-5m5 5h-5m0 5c-2.76142 0-5-2.2386-5-5 0-2.76142 2.23858-5 5-5m0 10V5m0 15v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M14.3242 7.5H10m4.3242 5H10";--icon-gamma: "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";--icon-enhance: "M19 13h-2m0 0c-2.2091 0-4-1.7909-4-4m4 4c-2.2091 0-4 1.7909-4 4m0-8V7m0 2c0 2.2091-1.7909 4-4 4m-2 0h2m0 0c2.2091 0 4 1.7909 4 4m0 0v2M8 8.5H6.5m0 0c-1.10457 0-2-.89543-2-2m2 2c-1.10457 0-2 .89543-2 2m0-4V5m0 1.5c0 1.10457-.89543 2-2 2M1 8.5h1.5m0 0c1.10457 0 2 .89543 2 2m0 0V12M12 3h-1m0 0c-.5523 0-1-.44772-1-1m1 1c-.5523 0-1 .44772-1 1m0-2V1m0 1c0 .55228-.44772 1-1 1M8 3h1m0 0c.55228 0 1 .44772 1 1m0 0v1";--icon-saturation: ' ';--icon-warmth: ' ';--icon-vibrance: ' '}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--l10n-cancel: "Cancel";--l10n-apply: "Apply";--l10n-brightness: "Brightness";--l10n-exposure: "Exposure";--l10n-gamma: "Gamma";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-vibrance: "Vibrance";--l10n-warmth: "Warmth";--l10n-enhance: "Enhance";--l10n-original: "Original"}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--rgb-primary-accent: 6, 2, 196;--rgb-text-base: 0, 0, 0;--rgb-text-accent-contrast: 255, 255, 255;--rgb-fill-contrast: 255, 255, 255;--rgb-fill-shaded: 245, 245, 245;--rgb-shadow: 0, 0, 0;--rgb-error: 209, 81, 81;--opacity-shade-mid: .2;--color-primary-accent: rgb(var(--rgb-primary-accent));--color-text-base: rgb(var(--rgb-text-base));--color-text-accent-contrast: rgb(var(--rgb-text-accent-contrast));--color-text-soft: rgb(var(--rgb-fill-contrast));--color-text-error: rgb(var(--rgb-error));--color-fill-contrast: rgb(var(--rgb-fill-contrast));--color-modal-backdrop: rgba(var(--rgb-fill-shaded), .95);--color-image-background: rgba(var(--rgb-fill-shaded));--color-outline: rgba(var(--rgb-text-base), var(--opacity-shade-mid));--color-underline: rgba(var(--rgb-text-base), .08);--color-shade: rgba(var(--rgb-text-base), .02);--color-focus-ring: var(--color-primary-accent);--color-input-placeholder: rgba(var(--rgb-text-base), .32);--color-error: rgb(var(--rgb-error));--font-size-ui: 16px;--font-size-title: 18px;--font-weight-title: 500;--font-size-soft: 14px;--size-touch-area: 40px;--size-panel-heading: 66px;--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--border-radius-connect: 2px;--border-radius-editor: 3px;--border-radius-thumb: 4px;--border-radius-ui: 5px;--border-radius-base: 6px;--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--opacity-min: var(--opacity-shade-mid);--opacity-mid: .1;--opacity-max: .05;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--shadow-base: 0px 5px 15px rgba(var(--rgb-shadow), .1), 0px 1px 4px rgba(var(--rgb-shadow), .15);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}:host(.lr-cloud-image-editor) :is([can-handle-paste]:hover,[can-handle-paste]:focus),.lr-cloud-image-editor :is([can-handle-paste]:hover,[can-handle-paste]:focus){--can-handle-paste: "true"}:host(.lr-cloud-image-editor) :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover),.lr-cloud-image-editor :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover){--filter-effect: var(--hover-filter) !important;--opacity-effect: var(--hover-opacity) !important;--color-effect: var(--hover-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex]:active,[with-effects]:active),.lr-cloud-image-editor :is([tabindex]:active,[with-effects]:active){--filter-effect: var(--down-filter) !important;--opacity-effect: var(--down-opacity) !important;--color-effect: var(--down-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex][active],[with-effects][active]),.lr-cloud-image-editor :is([tabindex][active],[with-effects][active]){--filter-effect: var(--active-filter) !important;--opacity-effect: var(--active-opacity) !important;--color-effect: var(--active-color-rgb) !important}:host(.lr-cloud-image-editor) [hidden-scrollbar]::-webkit-scrollbar,.lr-cloud-image-editor [hidden-scrollbar]::-webkit-scrollbar{display:none}:host(.lr-cloud-image-editor) [hidden-scrollbar],.lr-cloud-image-editor [hidden-scrollbar]{-ms-overflow-style:none;scrollbar-width:none}:host(.lr-cloud-image-editor.editor_ON),.lr-cloud-image-editor.editor_ON{--modal-header-opacity: 0;--modal-header-height: 0px;--modal-toolbar-height: calc(var(--size-panel-heading) * 2)}:host(.lr-cloud-image-editor.editor_OFF),.lr-cloud-image-editor.editor_OFF{--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading)}:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-min-img-height: var(--modal-toolbar-height);--l-max-img-height: 100%;--l-edit-button-width: 120px;--l-toolbar-horizontal-padding: var(--cldtr-gap-mid-1);position:relative;display:grid;grid-template-rows:minmax(var(--l-min-img-height),var(--l-max-img-height)) minmax(var(--modal-toolbar-height),auto);height:100%;overflow:hidden;overflow-y:auto;transition:.3s}@media only screen and (max-width: 800px){:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-edit-button-width: 70px;--l-toolbar-horizontal-padding: var(--cldtr-gap-min)}}:host(.lr-cloud-image-editor)>.wrapper>.viewport,.lr-cloud-image-editor>.wrapper>.viewport{display:flex;align-items:center;justify-content:center;overflow:hidden}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image{--viewer-image-opacity: 1;position:absolute;top:0;left:0;z-index:10;display:block;box-sizing:border-box;width:100%;height:100%;object-fit:scale-down;background-color:var(--color-image-background);transform:scale(1);opacity:var(--viewer-image-opacity);user-select:none;pointer-events:auto}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_visible_viewer,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_visible_viewer{transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-4)}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper{--viewer-image-opacity: 0;background-image:var(--transparent-pixel);transform:scale(1);transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_effects,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_effects{--viewer-image-opacity: 0;transform:scale(1);transition:opacity var(--transition-duration-3) cubic-bezier(.5,0,1,1),transform var(--transition-duration-4);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container,.lr-cloud-image-editor>.wrapper>.viewport>.image_container{position:relative;display:block;width:100%;height:100%;background-color:var(--color-image-background);transition:var(--transition-duration-3)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar,.lr-cloud-image-editor>.wrapper>.toolbar{position:relative;transition:.3s}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content{position:absolute;bottom:0;left:0;box-sizing:border-box;width:100%;height:var(--modal-toolbar-height);min-height:var(--size-panel-heading);background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer{display:flex;align-items:center;justify-content:space-between;height:var(--size-panel-heading);padding-right:var(--l-toolbar-horizontal-padding);padding-left:var(--l-toolbar-horizontal-padding)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor{display:flex}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.info_pan,.lr-cloud-image-editor>.wrapper>.viewport>.info_pan{position:absolute;user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer{position:absolute;z-index:2;display:flex;max-width:120px;transform:translate(-40px);user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer>.file_type,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer>.file_type{padding:4px .8em}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash,.lr-cloud-image-editor>.wrapper>.network_problems_splash{position:absolute;z-index:4;display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:rgba(var(--rgb-text-base),.6);background-color:rgba(var(--rgb-fill-shaded));border-radius:50%}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text{margin-top:var(--cldtr-gap-max);font-size:var(--font-size-ui)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_footer,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_footer{display:flex;align-items:center;justify-content:center;height:var(--size-panel-heading)}lr-crop-frame>.svg{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);opacity:inherit;transition:var(--transition-duration-3)}lr-crop-frame>.thumb{--idle-color-rgb: var(--color-text-base);--hover-color-rgb: var(--color-primary-accent);--focus-color-rgb: var(--color-primary-accent);--down-color-rgb: var(--color-primary-accent);--color-effect: var(--idle-color-rgb);color:var(--color-effect);transition:color var(--transition-duration-3),opacity var(--transition-duration-3)}lr-crop-frame>.thumb--visible{opacity:1;pointer-events:auto}lr-crop-frame>.thumb--hidden{opacity:0;pointer-events:none}lr-crop-frame>.guides{transition:var(--transition-duration-3)}lr-crop-frame>.guides--hidden{opacity:0}lr-crop-frame>.guides--semi-hidden{opacity:.2}lr-crop-frame>.guides--visible{opacity:1}lr-editor-button-control,lr-editor-crop-button-control,lr-editor-filter-control,lr-editor-operation-control{--l-base-min-width: 40px;--l-base-height: var(--l-base-min-width);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--filter-effect: var(--idle-filter);--idle-color-rgb: var(--rgb-text-base);--idle-opacity: .05;--idle-filter: 1;--hover-color-rgb: var(--idle-color-rgb);--hover-opacity: .08;--hover-filter: .8;--down-color-rgb: var(--hover-color-rgb);--down-opacity: .12;--down-filter: .6;position:relative;display:grid;grid-template-columns:var(--l-base-min-width) auto;align-items:center;height:var(--l-base-height);color:rgba(var(--idle-color-rgb));outline:none;cursor:pointer;transition:var(--l-width-transition)}lr-editor-button-control.active,lr-editor-operation-control.active,lr-editor-crop-button-control.active,lr-editor-filter-control.active{--idle-color-rgb: var(--rgb-primary-accent)}lr-editor-filter-control.not_active .preview[loaded]{opacity:1}lr-editor-filter-control.active .preview{opacity:0}lr-editor-button-control.not_active,lr-editor-operation-control.not_active,lr-editor-crop-button-control.not_active,lr-editor-filter-control.not_active{--idle-color-rgb: var(--rgb-text-base)}lr-editor-button-control>.before,lr-editor-operation-control>.before,lr-editor-crop-button-control>.before,lr-editor-filter-control>.before{position:absolute;right:0;left:0;z-index:-1;width:100%;height:100%;background-color:rgba(var(--color-effect),var(--opacity-effect));border-radius:var(--border-radius-editor);transition:var(--transition-duration-3)}lr-editor-button-control>.title,lr-editor-operation-control>.title,lr-editor-crop-button-control>.title,lr-editor-filter-control>.title{padding-right:var(--cldtr-gap-mid-1);font-size:.7em;letter-spacing:1.004px;text-transform:uppercase}lr-editor-filter-control>.preview{position:absolute;right:0;left:0;z-index:1;width:100%;height:var(--l-base-height);background-repeat:no-repeat;background-size:contain;border-radius:var(--border-radius-editor);opacity:0;filter:brightness(var(--filter-effect));transition:var(--transition-duration-3)}lr-editor-filter-control>.original-icon{color:var(--color-text-base);opacity:.3}lr-editor-image-cropper{position:absolute;top:0;left:0;z-index:10;display:block;width:100%;height:100%;opacity:0;pointer-events:none;touch-action:none}lr-editor-image-cropper.active_from_editor{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.active_from_viewer{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.inactive_to_editor{opacity:0;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1),opacity var(--transition-duration-3) calc(var(--transition-duration-3) + .05s);pointer-events:none}lr-editor-image-cropper>.canvas{position:absolute;top:0;left:0;z-index:1;display:block;width:100%;height:100%}lr-editor-image-fader{position:absolute;top:0;left:0;display:block;width:100%;height:100%}lr-editor-image-fader.active_from_viewer{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-start);pointer-events:auto}lr-editor-image-fader.active_from_cropper{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:auto}lr-editor-image-fader.inactive_to_cropper{z-index:3;transform:scale(1);opacity:0;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}lr-editor-image-fader .fader-image{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:scale-down;transform:scale(1);user-select:none;content-visibility:auto}lr-editor-image-fader .fader-image--preview{background-color:var(--color-image-background);border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);transform:scale(1);opacity:0;transition:var(--transition-duration-3)}lr-editor-scroller{display:flex;align-items:center;width:100%;height:100%;overflow-x:scroll}lr-editor-slider{display:flex;align-items:center;justify-content:center;width:100%;height:66px}lr-editor-toolbar{position:relative;width:100%;height:100%}@media only screen and (max-width: 600px){lr-editor-toolbar{--l-tab-gap: var(--cldtr-gap-mid-1);--l-slider-padding: var(--cldtr-gap-min);--l-controls-padding: var(--cldtr-gap-min)}}@media only screen and (min-width: 601px){lr-editor-toolbar{--l-tab-gap: calc(var(--cldtr-gap-mid-1) + var(--cldtr-gap-max));--l-slider-padding: var(--cldtr-gap-mid-1);--l-controls-padding: var(--cldtr-gap-mid-1)}}lr-editor-toolbar>.toolbar-container{position:relative;width:100%;height:100%;overflow:hidden}lr-editor-toolbar>.toolbar-container>.sub-toolbar{position:absolute;display:grid;grid-template-rows:1fr 1fr;width:100%;height:100%;background-color:var(--color-fill-contrast);transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-3) ease-in-out,visibility var(--transition-duration-3) ease-in-out}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--visible{transform:translateY(0);opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--top-hidden{transform:translateY(100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--bottom-hidden{transform:translateY(-100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row{display:flex;align-items:center;justify-content:space-between;padding-right:var(--l-controls-padding);padding-left:var(--l-controls-padding)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles{position:relative;display:grid;grid-auto-flow:column;grid-gap:0px var(--l-tab-gap);align-items:center;height:100%}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggles_indicator{position:absolute;bottom:0;left:0;width:var(--size-touch-area);height:2px;background-color:var(--color-primary-accent);transform:translate(0);transition:transform var(--transition-duration-3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row{position:relative}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content{position:absolute;top:0;left:0;display:flex;width:100%;height:100%;overflow:hidden;opacity:0;content-visibility:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--visible{opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--hidden{opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--visible{display:contents}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles.tab-toggles--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_align{display:grid;grid-template-areas:". inner .";grid-template-columns:1fr auto 1fr;box-sizing:border-box;min-width:100%;padding-left:var(--cldtr-gap-max)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner{display:grid;grid-area:inner;grid-auto-flow:column;grid-gap:calc((var(--cldtr-gap-min) - 1px) * 3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner:last-child{padding-right:var(--cldtr-gap-max)}lr-editor-toolbar .controls-list_last-item{margin-right:var(--cldtr-gap-max)}lr-editor-toolbar .info-tooltip_container{position:absolute;display:flex;align-items:flex-start;justify-content:center;width:100%;height:100%}lr-editor-toolbar .info-tooltip_wrapper{position:absolute;top:calc(-100% - var(--cldtr-gap-mid-2));display:flex;flex-direction:column;justify-content:flex-end;height:100%;pointer-events:none}lr-editor-toolbar .info-tooltip{z-index:3;padding-top:calc(var(--cldtr-gap-min) / 2);padding-right:var(--cldtr-gap-min);padding-bottom:calc(var(--cldtr-gap-min) / 2);padding-left:var(--cldtr-gap-min);color:var(--color-text-base);font-size:.7em;letter-spacing:1px;text-transform:uppercase;background-color:var(--color-text-accent-contrast);border-radius:var(--border-radius-editor);transform:translateY(100%);opacity:0;transition:var(--transition-duration-3)}lr-editor-toolbar .info-tooltip_visible{transform:translateY(0);opacity:1}lr-editor-toolbar .slider{padding-right:var(--l-slider-padding);padding-left:var(--l-slider-padding)}lr-btn-ui{--filter-effect: var(--idle-brightness);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--l-transition-effect: var(--css-transition, color var(--transition-duration-2), filter var(--transition-duration-2));display:inline-flex;align-items:center;box-sizing:var(--css-box-sizing, border-box);height:var(--css-height, var(--size-touch-area));padding-right:var(--css-padding-right, var(--cldtr-gap-mid-1));padding-left:var(--css-padding-left, var(--cldtr-gap-mid-1));color:rgba(var(--color-effect),var(--opacity-effect));outline:none;cursor:pointer;filter:brightness(var(--filter-effect));transition:var(--l-transition-effect);user-select:none}lr-btn-ui .text{white-space:nowrap}lr-btn-ui .icon{display:flex;align-items:center;justify-content:center;color:rgba(var(--color-effect),var(--opacity-effect));filter:brightness(var(--filter-effect));transition:var(--l-transition-effect)}lr-btn-ui .icon_left{margin-right:var(--cldtr-gap-mid-1);margin-left:0}lr-btn-ui .icon_right{margin-right:0;margin-left:var(--cldtr-gap-mid-1)}lr-btn-ui .icon_single{margin-right:0;margin-left:0}lr-btn-ui .icon_hidden{display:none;margin:0}lr-btn-ui.primary{--idle-color-rgb: var(--rgb-primary-accent);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--idle-color-rgb);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.boring{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-text-base);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: 1;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.default{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-primary-accent);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-line-loader-ui{position:absolute;top:0;left:0;z-index:9999;width:100%;height:2px;opacity:.5}lr-line-loader-ui .inner{width:25%;max-width:200px;height:100%}lr-line-loader-ui .line{width:100%;height:100%;background-color:var(--color-primary-accent);transform:translate(-101%);transition:transform 1s}lr-slider-ui{--l-thumb-size: 24px;--l-zero-dot-size: 5px;--l-zero-dot-offset: 2px;--idle-color-rgb: var(--rgb-text-base);--hover-color-rgb: var(--rgb-primary-accent);--down-color-rgb: var(--rgb-primary-accent);--color-effect: var(--idle-color-rgb);--l-color: rgb(var(--color-effect));position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:calc(var(--l-thumb-size) + (var(--l-zero-dot-size) + var(--l-zero-dot-offset)) * 2)}lr-slider-ui .thumb{position:absolute;left:0;width:var(--l-thumb-size);height:var(--l-thumb-size);background-color:var(--l-color);border-radius:50%;transform:translate(0);opacity:1;transition:opacity var(--transition-duration-2)}lr-slider-ui .steps{position:absolute;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:100%;padding-right:calc(var(--l-thumb-size) / 2);padding-left:calc(var(--l-thumb-size) / 2)}lr-slider-ui .border-step{width:0px;height:10px;border-right:1px solid var(--l-color);opacity:.6;transition:var(--transition-duration-2)}lr-slider-ui .minor-step{width:0px;height:4px;border-right:1px solid var(--l-color);opacity:.2;transition:var(--transition-duration-2)}lr-slider-ui .zero-dot{position:absolute;top:calc(100% - var(--l-zero-dot-offset) * 2);left:calc(var(--l-thumb-size) / 2 - var(--l-zero-dot-size) / 2);width:var(--l-zero-dot-size);height:var(--l-zero-dot-size);background-color:var(--color-primary-accent);border-radius:50%;opacity:0;transition:var(--transition-duration-3)}lr-slider-ui .input{position:absolute;width:calc(100% - 10px);height:100%;margin:0;cursor:pointer;opacity:0}lr-presence-toggle.transition{transition:opacity var(--transition-duration-3),visibility var(--transition-duration-3)}lr-presence-toggle.visible{opacity:1;pointer-events:inherit}lr-presence-toggle.hidden{opacity:0;pointer-events:none}ctx-provider{--color-text-base: black;--color-primary-accent: blue;display:flex;align-items:center;justify-content:center;width:190px;height:40px;padding-right:10px;padding-left:10px;background-color:#f5f5f5;border-radius:3px}lr-cloud-image-editor-activity{position:relative;display:flex;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light)}lr-modal lr-cloud-image-editor-activity{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%)}lr-select{display:inline-flex}lr-select>button{position:relative;display:inline-flex;align-items:center;padding-right:0!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-select>button>select{position:absolute;display:block;width:100%;height:100%;opacity:0}:host{flex:1}lr-start-from{height:100%;container-type:inline-size}.lr-wgt-common,:host{--cfg-done-activity: "start-from";--cfg-init-activity: "start-from"}lr-activity-header:after{width:var(--ui-size);height:var(--ui-size);content:""}lr-activity-header .close-btn{display:none}@container (min-width: 500px){lr-start-from .content{grid-template-columns:1fr max-content}lr-start-from lr-copyright{grid-column:2}lr-start-from lr-drop-area{grid-row:span 3}lr-start-from:has(lr-copyright[hidden]) lr-drop-area{grid-row:span 2}lr-start-from:has(.cancel-btn[hidden]) lr-drop-area{grid-row:span 2}lr-start-from:has(lr-copyright[hidden]):has(.cancel-btn[hidden]) lr-drop-area{grid-row:span 1}} diff --git a/web/lr-file-uploader-inline.min.js b/web/lr-file-uploader-inline.min.js index b19df09fd..9be3e9ac2 100644 --- a/web/lr-file-uploader-inline.min.js +++ b/web/lr-file-uploader-inline.min.js @@ -24,4 +24,4 @@ * */ var kr=Object.defineProperty;var Or=(s,i,t)=>i in s?kr(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t;var h=(s,i,t)=>(Or(s,typeof i!="symbol"?i+"":i,t),t);var Lr=Object.defineProperty,Ur=(s,i,t)=>i in s?Lr(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t,bi=(s,i,t)=>(Ur(s,typeof i!="symbol"?i+"":i,t),t);function Rr(s){let i=t=>{var e;for(let r in t)((e=t[r])==null?void 0:e.constructor)===Object&&(t[r]=i(t[r]));return{...t}};return i(s)}var $=class{constructor(s){s.constructor===Object?this.store=Rr(s):(this._storeIsProxy=!0,this.store=s),this.callbackMap=Object.create(null)}static warn(s,i){console.warn(`Symbiote Data: cannot ${s}. Prop name: `+i)}read(s){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?($.warn("read",s),null):this.store[s]}has(s){return this._storeIsProxy?this.store[s]!==void 0:this.store.hasOwnProperty(s)}add(s,i,t=!1){!t&&Object.keys(this.store).includes(s)||(this.store[s]=i,this.notify(s))}pub(s,i){if(!this._storeIsProxy&&!this.store.hasOwnProperty(s)){$.warn("publish",s);return}this.store[s]=i,this.notify(s)}multiPub(s){for(let i in s)this.pub(i,s[i])}notify(s){this.callbackMap[s]&&this.callbackMap[s].forEach(i=>{i(this.store[s])})}sub(s,i,t=!0){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?($.warn("subscribe",s),null):(this.callbackMap[s]||(this.callbackMap[s]=new Set),this.callbackMap[s].add(i),t&&i(this.store[s]),{remove:()=>{this.callbackMap[s].delete(i),this.callbackMap[s].size||delete this.callbackMap[s]},callback:i})}static registerCtx(s,i=Symbol()){let t=$.globalStore.get(i);return t?console.warn('State: context UID "'+i+'" already in use'):(t=new $(s),$.globalStore.set(i,t)),t}static deleteCtx(s){$.globalStore.delete(s)}static getCtx(s,i=!0){return $.globalStore.get(s)||(i&&console.warn('State: wrong context UID - "'+s+'"'),null)}};$.globalStore=new Map;var C=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"}),ss="1234567890QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm",Pr=ss.length-1,Yt=class{static generate(s="XXXXXXXXX-XXX"){let i="";for(let t=0;t{li&&t?i[0].toUpperCase()+i.slice(1):i).join("").split("_").map((i,t)=>i&&t?i.toUpperCase():i).join("")}function Nr(s,i){[...s.querySelectorAll(`[${C.REPEAT_ATTR}]`)].forEach(t=>{let e=t.getAttribute(C.REPEAT_ITEM_TAG_ATTR),r;if(e&&(r=window.customElements.get(e)),!r){r=class extends i.BaseComponent{constructor(){super(),e||(this.style.display="contents")}};let o=t.innerHTML;r.template=o,r.reg(e)}for(;t.firstChild;)t.firstChild.remove();let n=t.getAttribute(C.REPEAT_ATTR);i.sub(n,o=>{if(!o){for(;t.firstChild;)t.firstChild.remove();return}let l=[...t.children],a,c=u=>{u.forEach((p,m)=>{if(l[m])if(l[m].set$)setTimeout(()=>{l[m].set$(p)});else for(let f in p)l[m][f]=p[f];else{a||(a=new DocumentFragment);let f=new r;Object.assign(f.init$,p),a.appendChild(f)}}),a&&t.appendChild(a);let d=l.slice(u.length,l.length);for(let p of d)p.remove()};if(o.constructor===Array)c(o);else if(o.constructor===Object){let u=[];for(let d in o){let p=o[d];Object.defineProperty(p,"_KEY_",{value:d,enumerable:!0}),u.push(p)}c(u)}else console.warn("Symbiote repeat data type error:"),console.log(o)}),t.removeAttribute(C.REPEAT_ATTR),t.removeAttribute(C.REPEAT_ITEM_TAG_ATTR)})}var es="__default__";function Dr(s,i){if(i.shadowRoot)return;let t=[...s.querySelectorAll("slot")];if(!t.length)return;let e={};t.forEach(r=>{let n=r.getAttribute("name")||es;e[n]={slot:r,fr:document.createDocumentFragment()}}),i.initChildren.forEach(r=>{var n;let o=es;r instanceof Element&&r.hasAttribute("slot")&&(o=r.getAttribute("slot"),r.removeAttribute("slot")),(n=e[o])==null||n.fr.appendChild(r)}),Object.values(e).forEach(r=>{if(r.fr.childNodes.length)r.slot.parentNode.replaceChild(r.fr,r.slot);else if(r.slot.childNodes.length){let n=document.createDocumentFragment();n.append(...r.slot.childNodes),r.slot.parentNode.replaceChild(n,r.slot)}else r.slot.remove()})}function Fr(s,i){[...s.querySelectorAll(`[${C.EL_REF_ATTR}]`)].forEach(t=>{let e=t.getAttribute(C.EL_REF_ATTR);i.ref[e]=t,t.removeAttribute(C.EL_REF_ATTR)})}function Vr(s,i){[...s.querySelectorAll(`[${C.BIND_ATTR}]`)].forEach(t=>{let r=t.getAttribute(C.BIND_ATTR).split(";");[...t.attributes].forEach(n=>{if(n.name.startsWith("-")&&n.value){let o=Mr(n.name.replace("-",""));r.push(o+":"+n.value),t.removeAttribute(n.name)}}),r.forEach(n=>{if(!n)return;let o=n.split(":").map(u=>u.trim()),l=o[0],a;l.indexOf(C.ATTR_BIND_PRFX)===0&&(a=!0,l=l.replace(C.ATTR_BIND_PRFX,""));let c=o[1].split(",").map(u=>u.trim());for(let u of c){let d;u.startsWith("!!")?(d="double",u=u.replace("!!","")):u.startsWith("!")&&(d="single",u=u.replace("!","")),i.sub(u,p=>{d==="double"?p=!!p:d==="single"&&(p=!p),a?(p==null?void 0:p.constructor)===Boolean?p?t.setAttribute(l,""):t.removeAttribute(l):t.setAttribute(l,p):rs(t,l,p)||(t[C.SET_LATER_KEY]||(t[C.SET_LATER_KEY]=Object.create(null)),t[C.SET_LATER_KEY][l]=p)})}}),t.removeAttribute(C.BIND_ATTR)})}var Ce="{{",Kt="}}",Br="skip-text";function zr(s){let i,t=[],e=document.createTreeWalker(s,NodeFilter.SHOW_TEXT,{acceptNode:r=>{var n;return!((n=r.parentElement)!=null&&n.hasAttribute(Br))&&r.textContent.includes(Ce)&&r.textContent.includes(Kt)&&1}});for(;i=e.nextNode();)t.push(i);return t}var jr=function(s,i){zr(s).forEach(e=>{let r=[],n;for(;e.textContent.includes(Kt);)e.textContent.startsWith(Ce)?(n=e.textContent.indexOf(Kt)+Kt.length,e.splitText(n),r.push(e)):(n=e.textContent.indexOf(Ce),e.splitText(n)),e=e.nextSibling;r.forEach(o=>{let l=o.textContent.replace(Ce,"").replace(Kt,"");o.textContent="",i.sub(l,a=>{o.textContent=a})})})},Hr=[Nr,Dr,Fr,Vr,jr],we="'",Mt='"',Wr=/\\([0-9a-fA-F]{1,6} ?)/g;function Xr(s){return(s[0]===Mt||s[0]===we)&&(s[s.length-1]===Mt||s[s.length-1]===we)}function qr(s){return(s[0]===Mt||s[0]===we)&&(s=s.slice(1)),(s[s.length-1]===Mt||s[s.length-1]===we)&&(s=s.slice(0,-1)),s}function Gr(s){let i="",t="";for(var e=0;eString.fromCodePoint(parseInt(e.trim(),16))),i=i.replaceAll(`\\ -`,"\\n"),i=Gr(i),i=Mt+i+Mt);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${s}`)}}var is=0,Pt=null,ht=null,bt=class extends HTMLElement{constructor(){super(),bi(this,"updateCssData",()=>{var s;this.dropCssDataCache(),(s=this.__boundCssProps)==null||s.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 bt}initCallback(){}__initCallback(){var s;this.__initialized||(this.__initialized=!0,(s=this.initCallback)==null||s.call(this))}render(s,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let r=this.getAttribute(C.USE_TPL);if(r){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(r))||document.querySelector(r);o?s=o.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)t=s;else if((s==null?void 0:s.constructor)===String){let r=document.createElement("template");r.innerHTML=s,t=r.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let r of this.tplProcessors)r(t,this)}let e=()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()};if(this.constructor.__shadowStylesUrl){i=!0;let r=document.createElement("link");r.rel="stylesheet",r.href=this.constructor.__shadowStylesUrl,r.onload=e,this.shadowRoot.prepend(r)}else e()}addTemplateProcessor(s){this.tplProcessors.add(s)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=Yt.generate(),this.style.setProperty(C.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(C.CSS_CTX_PROP,!0)}get ctxName(){var s;let i=((s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=$.registerCtx({},this)),this.__localCtx}get nodeCtx(){return $.getCtx(this.ctxName,!1)||$.registerCtx({},this.ctxName)}static __parseProp(s,i){let t,e;if(s.startsWith(C.EXT_DATA_CTX_PRFX))t=i.nodeCtx,e=s.replace(C.EXT_DATA_CTX_PRFX,"");else if(s.includes(C.NAMED_DATA_CTX_SPLTR)){let r=s.split(C.NAMED_DATA_CTX_SPLTR);t=$.getCtx(r[0]),e=r[1]}else t=i.localCtx,e=s;return{ctx:t,name:e}}sub(s,i,t=!0){let e=n=>{this.isConnected&&i(n)},r=bt.__parseProp(s,this);r.ctx.has(r.name)?this.allSubs.add(r.ctx.sub(r.name,e,t)):window.setTimeout(()=>{this.allSubs.add(r.ctx.sub(r.name,e,t))})}notify(s){let i=bt.__parseProp(s,this);i.ctx.notify(i.name)}has(s){let i=bt.__parseProp(s,this);return i.ctx.has(i.name)}add(s,i,t=!1){let e=bt.__parseProp(s,this);e.ctx.add(e.name,i,t)}add$(s,i=!1){for(let t in s)this.add(t,s[t],i)}get $(){if(!this.__stateProxy){let s=Object.create(null);this.__stateProxy=new Proxy(s,{set:(i,t,e)=>{let r=bt.__parseProp(t,this);return r.ctx.pub(r.name,e),!0},get:(i,t)=>{let e=bt.__parseProp(t,this);return e.ctx.read(e.name)}})}return this.__stateProxy}set$(s,i=!1){for(let t in s){let e=s[t];i||![String,Number,Boolean].includes(e==null?void 0:e.constructor)?this.$[t]=e:this.$[t]!==e&&(this.$[t]=e)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(C.CTX_OWNER_ATTR)&&this.getAttribute(C.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let s=this.constructor.__attrDesc;if(s)for(let i of Object.values(s))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(C.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(C.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(C.NAMED_DATA_CTX_SPLTR)){let t=i.split(C.NAMED_DATA_CTX_SPLTR),e=t[0].trim(),r=t[1].trim();if(e&&r){let n=$.getCtx(e,!1);n||(n=$.registerCtx({},e)),n.add(r,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var s;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim();if(i&&this.style.setProperty(C.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[C.SET_LATER_KEY]){for(let t in this[C.SET_LATER_KEY])rs(this,t,this[C.SET_LATER_KEY][t]);delete this[C.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of Hr)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${C.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let r=this.constructor.__rootStylesLink.cloneNode(!0);r.setAttribute(C.ROOT_STYLE_ATTR_NAME,this.constructor.is),r.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(r):t.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);ht==null||ht.delete(this.updateCssData),ht!=null&&ht.size||(Pt==null||Pt.disconnect(),Pt=null,ht=null)},100)))}static reg(s,i=!1){s||(is++,s=`${C.AUTO_TAG_PRFX}-${is}`),this.__tag=s;let t=window.customElements.get(s);if(t){!i&&t!==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(` `));return}window.customElements.define(s,i?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,i,t){var e;if(i===t)return;let r=(e=this.constructor.__attrDesc)==null?void 0:e[s];r?this.__dataCtxInitialized?this.$[r]=t:this.init$[r]=t:this[s]=t}getCssData(s,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(s)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(s).trim();try{this.__cssDataCache[s]=Kr(t)}catch{!i&&console.warn(`CSS Data error: ${s}`),this.__cssDataCache[s]=null}}return this.__cssDataCache[s]}__extractCssName(s){return s.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){ht||(ht=new Set),ht.add(this.updateCssData),Pt||(Pt=new MutationObserver(s=>{s[0].type==="attributes"&&ht.forEach(i=>{i()})}),Pt.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(s,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(s);let t=this.getCssData(this.__extractCssName(s),!0);t===null&&(t=i),this.add(s,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(s,i,t){let e="__"+s;this[e]=this[s],Object.defineProperty(this,s,{set:r=>{this[e]=r,t?window.setTimeout(()=>{i==null||i(r)}):i==null||i(r)},get:()=>this[e]}),this[s]=this[e]}static set shadowStyles(s){let i=new Blob([s],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(s){if(!this.__rootStylesLink){let i=new Blob([s],{type:"text/css"}),t=URL.createObjectURL(i),e=document.createElement("link");e.href=t,e.rel="stylesheet",this.__rootStylesLink=e}}},Nt=bt;bi(Nt,"template");var _i=class{static _print(s){console.warn(s)}static setDefaultTitle(s){this.defaultTitle=s}static setRoutingMap(s){Object.assign(this.appMap,s);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}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(t=>{if(t.includes("?"))s.route=t.replace("?","");else if(t.includes("=")){let e=t.split("=");s.options[e[0]]=decodeURI(e[1])}else s.options[t]=!0}),s}static notify(){let s=this.readAddressBar(),i=this.appMap[s.route];if(i&&i.title&&(document.title=i.title),s.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${s.route}" not found...`);return}let t=new CustomEvent(_i.routingEventName,{detail:{route:s.route,options:Object.assign(i||{},s.options)}});window.dispatchEvent(t)}static reflect(s,i={}){let t=this.appMap[s];if(!t){this._print("Wrong route: "+s);return}let e="?"+s;for(let n in i)i[n]===!0?e+=this.separator+n:e+=this.separator+n+`=${i[n]}`;let r=t.title||this.defaultTitle||"";window.history.pushState(null,r,e),document.title=r}static applyRoute(s,i={}){this.reflect(s,i),this.notify()}static setSeparator(s){this._separator=s}static get separator(){return this._separator||"&"}static createRouterData(s,i){this.setRoutingMap(i);let t=$.registerCtx({route:null,options:null,title:null},s);return window.addEventListener(this.routingEventName,e=>{var r;t.multiPub({route:e.detail.route,options:e.detail.options,title:((r=e.detail.options)==null?void 0:r.title)||this.defaultTitle||""})}),_i.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};_i.appMap=Object.create(null);function yi(s,i){for(let t in i)t.includes("-")?s.style.setProperty(t,i[t]):s.style[t]=i[t]}function Yr(s,i){for(let t in i)i[t].constructor===Boolean?i[t]?s.setAttribute(t,""):s.removeAttribute(t):s.setAttribute(t,i[t])}function Zt(s={tag:"div"}){let i=document.createElement(s.tag);if(s.attributes&&Yr(i,s.attributes),s.styles&&yi(i,s.styles),s.properties)for(let t in s.properties)i[t]=s.properties[t];return s.processors&&s.processors.forEach(t=>{t(i)}),s.children&&s.children.forEach(t=>{let e=Zt(t);i.appendChild(e)}),i}var ns="idb-store-ready",Zr="symbiote-db",Jr="symbiote-idb-update_",Qr=class{_notifyWhenReady(s=null){window.dispatchEvent(new CustomEvent(ns,{detail:{dbName:this.name,storeName:this.storeName,event:s}}))}get _updEventName(){return Jr+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,i){this.name=s,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=e=>{this._notifyWhenReady(e)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async r=>{r(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(s){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(s);return new Promise((e,r)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?e(n.target.result._value):(e(null),console.warn(`IDB: cannot read "${s}"`))},t.onerror=n=>{r(n)}})}write(s,i,t=!1){let e={_key:s,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(e);return new Promise((o,l)=>{n.onsuccess=a=>{t||this._notifySubscribers(s),o(a.target.result)},n.onerror=a=>{l(a)}})}delete(s,i=!1){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(s);return new Promise((r,n)=>{e.onsuccess=o=>{i||this._notifySubscribers(s),r(o)},e.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,e)=>{i.onsuccess=r=>{let n=r.target.result;t(n.map(o=>o._value))},i.onerror=r=>{e(r)}})}subscribe(s,i){this._subscriptionsMap[s]||(this._subscriptionsMap[s]=new Set);let t=this._subscriptionsMap[s];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[s]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,os.clear(this.name)}},os=class{static get readyEventName(){return ns}static open(s=Zr,i="store"){let t=s+"/"+i;return this._reg[t]||(this._reg[t]=new Qr(s,i)),this._reg[t]}static clear(s){window.indexedDB.deleteDatabase(s);for(let i in this._reg)i.split("/")[0]===s&&delete this._reg[i]}};bi(os,"_reg",Object.create(null));var S=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),tn=Object.freeze({[S.UPLOAD_START]:"LR_UPLOAD_START",[S.REMOVE]:"LR_REMOVE",[S.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[S.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[S.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[S.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[S.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[S.DATA_OUTPUT]:"LR_DATA_OUTPUT",[S.DONE_FLOW]:"LR_DONE_FLOW",[S.INIT_FLOW]:"LR_INIT_FLOW"}),Te=class{constructor(i){h(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var r;(r=this._target)==null||r.dispatchEvent(new CustomEvent(i,{detail:t}));let e=tn[i];window.dispatchEvent(new CustomEvent(e,{detail:{ctx:this._getCtxName(),type:e,data:t}}))}emit(i,t,{debounce:e}={}){if(typeof e!="number"&&!e){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let r=typeof e=="number"?e:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},r);this._timeoutStore.set(i,n)}};function I(s,i){let t,e=(...r)=>{clearTimeout(t),t=setTimeout(()=>s(...r),i)};return e.cancel=()=>{clearTimeout(t)},e}var en="--uploadcare-blocks-window-height",Ee="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function vi(){return typeof window[Ee]=="undefined"?!1:!!window[Ee]}function ls(){if(vi())return;let s=()=>{document.documentElement.style.setProperty(en,`${window.innerHeight}px`),window[Ee]=!0},i=I(s,100);return window.addEventListener("resize",i,{passive:!0}),s(),()=>{window[Ee]=!1,window.removeEventListener("resize",i)}}var xe=(s,i)=>new Intl.PluralRules(s).select(i);var sn=s=>s,Ci="{{",cs="}}",as="plural:";function Jt(s,i,t={}){var o;let{openToken:e=Ci,closeToken:r=cs,transform:n=sn}=t;for(let l in i){let a=(o=i[l])==null?void 0:o.toString();s=s.replaceAll(e+l+r,typeof a=="string"?n(a):a)}return s}function hs(s){let i=[],t=s.indexOf(Ci);for(;t!==-1;){let e=s.indexOf(cs,t),r=s.substring(t+2,e);if(r.startsWith(as)){let n=s.substring(t+2,e).replace(as,""),o=n.substring(0,n.indexOf("(")),l=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:r,pluralKey:o,countVariable:l})}t=s.indexOf(Ci,e)}return i}var ut=s=>{var i;return(i=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:i.map(t=>t.toLowerCase()).join("-")};var Ae=({element:s,attribute:i,onSuccess:t,onTimeout:e,timeout:r=300})=>{let n=setTimeout(()=>{a.disconnect(),e()},r),o=c=>{let u=s.getAttribute(i);c.type==="attributes"&&c.attributeName===i&&u!==null&&(clearTimeout(n),a.disconnect(),t(u))},l=s.getAttribute(i);l!==null&&(clearTimeout(n),t(l));let a=new MutationObserver(c=>{let u=c[c.length-1];o(u)});a.observe(s,{attributes:!0,attributeFilter:[i]})};var us=new Set;function Qt(s){us.has(s)||(us.add(s),console.warn(s))}function ds(s){return Object.prototype.toString.call(s)==="[object Object]"}var rn=/\W|_/g;function nn(s){return s.split(rn).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}function ps(s,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(s)?s.map(t=>ft(t,{ignoreKeys:i})):s}function ft(s,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(s))return ps(s,{ignoreKeys:i});if(!ds(s))return s;let t={};for(let e of Object.keys(s)){let r=s[e];if(i.includes(e)){t[e]=r;continue}ds(r)?r=ft(r,{ignoreKeys:i}):Array.isArray(r)&&(r=ps(r,{ignoreKeys:i})),t[nn(e)]=r}return t}var on=s=>new Promise(i=>setTimeout(i,s));function Si({libraryName:s,libraryVersion:i,userAgent:t,publicKey:e="",integration:r=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:e,libraryName:s,libraryVersion:i,languageName:n,integration:r});let o=[s,i,e].filter(Boolean).join("/"),l=[n,r].filter(Boolean).join("; ");return`${o} (${l})`}var ln={factor:2,time:100};function an(s,i=ln){let t=0;function e(r){let n=Math.round(i.time*i.factor**t);return r({attempt:t,retry:l=>on(l!=null?l:n).then(()=>(t+=1,e(r)))})}return e(s)}var Dt=class extends Error{constructor(t){super();h(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,Dt.prototype),this.originalProgressEvent=t}},Se=(s,i)=>{s&&(s.aborted?Promise.resolve().then(i):s.addEventListener("abort",()=>i(),{once:!0}))},yt=class extends Error{constructor(t="Request canceled"){super(t);h(this,"isCancel",!0);Object.setPrototypeOf(this,yt.prototype)}},cn=500,ms=({check:s,interval:i=cn,timeout:t,signal:e})=>new Promise((r,n)=>{let o,l;Se(e,()=>{o&&clearTimeout(o),n(new yt("Poll cancelled"))}),t&&(l=setTimeout(()=>{o&&clearTimeout(o),n(new yt("Timed out"))},t));let a=()=>{try{Promise.resolve(s(e)).then(c=>{c?(l&&clearTimeout(l),r(c)):o=setTimeout(a,i)}).catch(c=>{l&&clearTimeout(l),n(c)})}catch(c){l&&clearTimeout(l),n(c)}};o=setTimeout(a,0)}),x={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"},Ie="application/octet-stream",gs="original",vt=({method:s,url:i,data:t,headers:e={},signal:r,onProgress:n})=>new Promise((o,l)=>{let a=new XMLHttpRequest,c=(s==null?void 0:s.toUpperCase())||"GET",u=!1;a.open(c,i,!0),e&&Object.entries(e).forEach(d=>{let[p,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&a.setRequestHeader(p,m)}),a.responseType="text",Se(r,()=>{u=!0,a.abort(),l(new yt)}),a.onload=()=>{if(a.status!=200)l(new Error(`Error ${a.status}: ${a.statusText}`));else{let d={method:c,url:i,data:t,headers:e||void 0,signal:r,onProgress:n},p=a.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};p.forEach(function(A){let E=A.split(": "),T=E.shift(),w=E.join(": ");T&&typeof T!="undefined"&&(m[T]=w)});let f=a.response,_=a.status;o({request:d,data:f,headers:m,status:_})}},a.onerror=d=>{u||l(new Dt(d))},n&&typeof n=="function"&&(a.upload.onprogress=d=>{d.lengthComputable?n({isComputable:!0,value:d.loaded/d.total}):n({isComputable:!1})}),t?a.send(t):a.send()});function hn(s,...i){return s}var un=({name:s})=>s?[s]:[],dn=hn,pn=()=>new FormData,_s=s=>!1,ke=s=>typeof Blob!="undefined"&&s instanceof Blob,Oe=s=>typeof File!="undefined"&&s instanceof File,Le=s=>!!s&&typeof s=="object"&&!Array.isArray(s)&&"uri"in s&&typeof s.uri=="string",Ft=s=>ke(s)||Oe(s)||_s()||Le(s),fn=s=>typeof s=="string"||typeof s=="number"||typeof s=="undefined",mn=s=>!!s&&typeof s=="object"&&!Array.isArray(s),gn=s=>!!s&&typeof s=="object"&&"data"in s&&Ft(s.data);function _n(s,i,t){if(gn(t)){let{name:e,contentType:r}=t,n=dn(t.data,e,r!=null?r:Ie),o=un({name:e,contentType:r});s.push([i,n,...o])}else if(mn(t))for(let[e,r]of Object.entries(t))typeof r!="undefined"&&s.push([`${i}[${e}]`,String(r)]);else fn(t)&&t&&s.push([i,t.toString()])}function bn(s){let i=[];for(let[t,e]of Object.entries(s))_n(i,t,e);return i}function Ii(s){let i=pn(),t=bn(s);for(let e of t){let[r,n,...o]=e;i.append(r,n,...o)}return i}var R=class extends Error{constructor(t,e,r,n,o){super();h(this,"isCancel");h(this,"code");h(this,"request");h(this,"response");h(this,"headers");this.name="UploadClientError",this.message=t,this.code=e,this.request=r,this.response=n,this.headers=o,Object.setPrototypeOf(this,R.prototype)}},yn=s=>{let i=new URLSearchParams;for(let[t,e]of Object.entries(s))e&&typeof e=="object"&&!Array.isArray(e)?Object.entries(e).filter(r=>{var n;return(n=r[1])!=null?n:!1}).forEach(r=>i.set(`${t}[${r[0]}]`,String(r[1]))):Array.isArray(e)?e.forEach(r=>{i.append(`${t}[]`,r)}):typeof e=="string"&&e?i.set(t,e):typeof e=="number"&&i.set(t,e.toString());return i.toString()},dt=(s,i,t)=>{let e=new URL(s);return e.pathname=(e.pathname+i).replace("//","/"),t&&(e.search=yn(t)),e.toString()},vn="6.8.0",Cn="UploadcareUploadClient",wn=vn;function It(s){return Si({libraryName:Cn,libraryVersion:wn,...s})}var Tn="RequestThrottledError",fs=15e3,En=1e3;function xn(s){let{headers:i}=s||{};if(!i||typeof i["retry-after"]!="string")return fs;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:fs}function Ct(s,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:e}=i;return an(({attempt:r,retry:n})=>s().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===Tn&&r{let i="";return(ke(s)||Oe(s)||Le(s))&&(i=s.type),i||Ie},ys=s=>{let i="";return Oe(s)&&s.name?i=s.name:ke(s)||_s()?i="":Le(s)&&s.name&&(i=s.name),i||gs};function ki(s){return typeof s=="undefined"||s==="auto"?"auto":s?"1":"0"}function An(s,{publicKey:i,fileName:t,contentType:e,baseURL:r=x.baseURL,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(r,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({file:{data:s,name:t||ys(s),contentType:e||bs(s)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:ki(l),signature:n,expire:o,source:u,metadata:_}),signal:a,onProgress:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var Ei;(function(s){s.Token="token",s.FileInfo="file_info"})(Ei||(Ei={}));function $n(s,{publicKey:i,baseURL:t=x.baseURL,store:e,fileName:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,source:c="url",signal:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},url:dt(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:s,store:ki(e),filename:r,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:l,expire:a,source:c,metadata:_}),signal:u}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var j;(function(s){s.Unknown="unknown",s.Waiting="waiting",s.Progress="progress",s.Error="error",s.Success="success"})(j||(j={}));var Sn=s=>"status"in s&&s.status===j.Error;function In(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=x.retryNetworkErrorMaxTimes}={}){return Ct(()=>vt({method:"GET",headers:i?{"X-UC-User-Agent":It({publicKey:i,integration:r,userAgent:n})}:void 0,url:dt(t,"/from_url/status/",{jsonerrors:1,token:s}),signal:e}).then(({data:a,headers:c,request:u})=>{let d=ft(JSON.parse(a));if("error"in d&&!Sn(d))throw new R(d.error.content,void 0,u,d,c);return d}),{retryNetworkErrorMaxTimes:l,retryThrottledRequestMaxTimes:o})}function kn(s,{publicKey:i,baseURL:t=x.baseURL,jsonpCallback:e,secureSignature:r,secureExpire:n,signal:o,source:l,integration:a,userAgent:c,retryThrottledRequestMaxTimes:u=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:a,userAgent:c})},url:dt(t,"/group/",{jsonerrors:1,pub_key:i,files:s,callback:e,signature:r,expire:n,source:l}),signal:o}).then(({data:p,headers:m,request:f})=>{let _=ft(JSON.parse(p));if("error"in _)throw new R(_.error.content,_.error.errorCode,f,_,m);return _}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:u})}function vs(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,source:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"GET",headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},url:dt(t,"/info/",{jsonerrors:1,pub_key:i,file_id:s,source:r}),signal:e}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function On(s,{publicKey:i,contentType:t,fileName:e,multipartChunkSize:r=x.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:l,store:a,signal:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({filename:e||gs,size:s,content_type:t||Ie,part_size:r,UPLOADCARE_STORE:ki(a),UPLOADCARE_PUB_KEY:i,signature:o,expire:l,source:u,metadata:_}),signal:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w.parts=Object.keys(w.parts).map(B=>w.parts[B]),w}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})}function Ln(s,i,{contentType:t,signal:e,onProgress:r,retryThrottledRequestMaxTimes:n=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"PUT",url:i,data:s,onProgress:r,signal:e,headers:{"Content-Type":t||Ie}}).then(l=>(r&&r({isComputable:!0,value:1}),l)).then(({status:l})=>({code:l})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}function Un(s,{publicKey:i,baseURL:t=x.baseURL,source:e="local",signal:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",url:dt(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},data:Ii({uuid:s,UPLOADCARE_PUB_KEY:i,source:e}),signal:r}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function Oi(s,{publicKey:i,baseURL:t,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l,signal:a,onProgress:c}){return ms({check:u=>vs(s,{publicKey:i,baseURL:t,signal:u,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:a})}function Rn(s){return"defaultEffects"in s}var pt=class{constructor(i,{baseCDN:t=x.baseCDN,fileName:e}={}){h(this,"uuid");h(this,"name",null);h(this,"size",null);h(this,"isStored",null);h(this,"isImage",null);h(this,"mimeType",null);h(this,"cdnUrl",null);h(this,"s3Url",null);h(this,"originalFilename",null);h(this,"imageInfo",null);h(this,"videoInfo",null);h(this,"contentInfo",null);h(this,"metadata",null);h(this,"s3Bucket",null);h(this,"defaultEffects",null);let{uuid:r,s3Bucket:n}=i,o=dt(t,`${r}/`),l=n?dt(`https://${n}.s3.amazonaws.com/`,`${r}/${i.filename}`):null;this.uuid=r,this.name=e||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=l,Rn(i)&&(this.defaultEffects=i.defaultEffects)}},Pn=(s,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,contentType:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,baseCDN:_,metadata:A})=>An(s,{publicKey:i,fileName:t,contentType:l,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:A}).then(({file:E})=>Oi(E,{publicKey:i,baseURL:e,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(E=>new pt(E,{baseCDN:_})),Mn=(s,{publicKey:i,fileName:t,baseURL:e,signal:r,onProgress:n,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u,baseCDN:d})=>vs(s,{publicKey:i,baseURL:e,signal:r,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u}).then(p=>new pt(p,{baseCDN:d,fileName:t})).then(p=>(n&&n({isComputable:!0,value:1}),p)),Nn=(s,{signal:i}={})=>{let t=null,e=null,r=s.map(()=>new AbortController),n=o=>()=>{e=o,r.forEach((l,a)=>a!==o&&l.abort())};return Se(i,()=>{r.forEach(o=>o.abort())}),Promise.all(s.map((o,l)=>{let a=n(l);return Promise.resolve().then(()=>o({stopRace:a,signal:r[l].signal})).then(c=>(a(),c)).catch(c=>(t=c,null))})).then(o=>{if(e===null)throw t;return o[e]})},Dn=window.WebSocket,xi=class{constructor(){h(this,"events",Object.create({}))}emit(i,t){var e;(e=this.events[i])==null||e.forEach(r=>r(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(e=>e!==t):this.events[i]=[]}},Fn=(s,i)=>s==="success"?{status:j.Success,...i}:s==="progress"?{status:j.Progress,...i}:{status:j.Error,...i},Ai=class{constructor(i,t=3e4){h(this,"key");h(this,"disconnectTime");h(this,"ws");h(this,"queue",[]);h(this,"isConnected",!1);h(this,"subscribers",0);h(this,"emmitter",new xi);h(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Dn(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let e=JSON.parse(t.data.toString());switch(e.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(e.channel,Fn(e.event,JSON.parse(e.data)))}})}}disconnect(){let i=()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var r;let e=JSON.stringify({event:i,data:t});(r=this.ws)==null||r.send(e)}subscribe(i,t){this.subscribers+=1,this.connect();let e=`task-status-${i}`,r={event:"pusher:subscribe",data:{channel:e}};this.emmitter.on(e,t),this.isConnected?this.send(r.event,r.data):this.queue.push(r)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,e={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(e.event,e.data):this.queue=this.queue.filter(r=>r.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}},wi=null,Li=s=>{if(!wi){let i=typeof window=="undefined"?0:3e4;wi=new Ai(s,i)}return wi},Vn=s=>{Li(s).connect()};function Bn({token:s,publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:l,signal:a}){return ms({check:c=>In(s,{publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:c}).then(u=>{switch(u.status){case j.Error:return new R(u.error,u.errorCode);case j.Waiting:return!1;case j.Unknown:return new R(`Token "${s}" was not found.`);case j.Progress:return l&&(u.total==="unknown"?l({isComputable:!1}):l({isComputable:!0,value:u.done/u.total})),!1;case j.Success:return l&&l({isComputable:!0,value:u.done/u.total}),u;default:throw new Error("Unknown status")}}),signal:a})}var zn=({token:s,pusherKey:i,signal:t,onProgress:e})=>new Promise((r,n)=>{let o=Li(i),l=o.onError(n),a=()=>{l(),o.unsubscribe(s)};Se(t,()=>{a(),n(new yt("pusher cancelled"))}),o.subscribe(s,c=>{switch(c.status){case j.Progress:{e&&(c.total==="unknown"?e({isComputable:!1}):e({isComputable:!0,value:c.done/c.total}));break}case j.Success:{a(),e&&e({isComputable:!0,value:c.done/c.total}),r(c);break}case j.Error:a(),n(new R(c.msg,c.error_code))}})}),jn=(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,onProgress:d,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,pusherKey:A=x.pusherKey,metadata:E})=>Promise.resolve(Vn(A)).then(()=>$n(s,{publicKey:i,fileName:t,baseURL:e,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,metadata:E})).catch(T=>{let w=Li(A);return w==null||w.disconnect(),Promise.reject(T)}).then(T=>T.type===Ei.FileInfo?T:Nn([({signal:w})=>Bn({token:T.token,publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:w}),({signal:w})=>zn({token:T.token,pusherKey:A,signal:w,onProgress:d})],{signal:u})).then(T=>{if(T instanceof R)throw T;return T}).then(T=>Oi(T.uuid,{publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:u})).then(T=>new pt(T,{baseCDN:r})),Ti=new WeakMap,Hn=async s=>{if(Ti.has(s))return Ti.get(s);let i=await fetch(s.uri).then(t=>t.blob());return Ti.set(s,i),i},Cs=async s=>{if(Oe(s)||ke(s))return s.size;if(Le(s))return(await Hn(s)).size;throw new Error("Unknown file type. Cannot determine file size.")},Wn=(s,i=x.multipartMinFileSize)=>s>=i,ws=s=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!Ft(s)&&t.test(s)},Ui=s=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!Ft(s)&&t.test(s)},Xn=(s,i)=>new Promise((t,e)=>{let r=[],n=!1,o=i.length,l=[...i],a=()=>{let c=i.length-l.length,u=l.shift();u&&u().then(d=>{n||(r[c]=d,o-=1,o?a():t(r))}).catch(d=>{n=!0,e(d)})};for(let c=0;c{let r=e*i,n=Math.min(r+e,t);return s.slice(r,n)},Gn=async(s,i,t)=>e=>qn(s,e,i,t),Kn=(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})=>Ln(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a}),Yn=async(s,{publicKey:i,fileName:t,fileSize:e,baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,contentType:_,multipartChunkSize:A=x.multipartChunkSize,maxConcurrentRequests:E=x.maxConcurrentRequests,baseCDN:T,metadata:w})=>{let B=e!=null?e:await Cs(s),at,St=(U,z)=>{if(!c)return;at||(at=Array(U).fill(0));let J=tt=>tt.reduce((ct,gi)=>ct+gi,0);return tt=>{tt.isComputable&&(at[z]=tt.value,c({isComputable:!0,value:J(at)/U}))}};return _||(_=bs(s)),On(B,{publicKey:i,contentType:_,fileName:t||ys(s),baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:w}).then(async({uuid:U,parts:z})=>{let J=await Gn(s,B,A);return Promise.all([U,Xn(E,z.map((tt,ct)=>()=>Kn(J(ct),tt,{publicKey:i,contentType:_,onProgress:St(z.length,ct),signal:a,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})))])}).then(([U])=>Un(U,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})).then(U=>U.isReady?U:Oi(U.uuid,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(U=>new pt(U,{baseCDN:T}))};async function Ri(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartMinFileSize:_,multipartChunkSize:A,maxConcurrentRequests:E,baseCDN:T=x.baseCDN,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,pusherKey:at,metadata:St}){if(Ft(s)){let U=await Cs(s);return Wn(U,_)?Yn(s,{publicKey:i,contentType:f,multipartChunkSize:A,fileSize:U,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,maxConcurrentRequests:E,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St}):Pn(s,{publicKey:i,fileName:t,contentType:f,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St})}if(Ui(s))return jn(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:T,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,pusherKey:at,metadata:St});if(ws(s))return Mn(s,{publicKey:i,fileName:t,baseURL:e,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T});throw new TypeError(`File uploading from "${s}" is not supported`)}var $i=class{constructor(i,{baseCDN:t=x.baseCDN}={}){h(this,"uuid");h(this,"filesCount");h(this,"totalSize");h(this,"isStored");h(this,"isImage");h(this,"cdnUrl");h(this,"files");h(this,"createdAt");h(this,"storedAt",null);this.uuid=i.id,this.filesCount=i.filesCount;let e=i.files.filter(Boolean);this.totalSize=Object.values(e).reduce((r,n)=>r+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(e).filter(r=>r.isImage).length,this.cdnUrl=i.cdnUrl,this.files=e.map(r=>new pt(r,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}},Zn=s=>{for(let i of s)if(!Ft(i))return!1;return!0},Jn=s=>{for(let i of s)if(!ws(i))return!1;return!0},Qn=s=>{for(let i of s)if(!Ui(i))return!1;return!0};function Ts(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_=x.multipartChunkSize,baseCDN:A=x.baseCDN,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T,jsonpCallback:w}){if(!Zn(s)&&!Qn(s)&&!Jn(s))throw new TypeError(`Group uploading from "${s}" is not supported`);let B,at=!0,St=s.length,U=(z,J)=>{if(!a)return;B||(B=Array(z).fill(0));let tt=ct=>ct.reduce((gi,Ir)=>gi+Ir)/z;return ct=>{if(!ct.isComputable||!at){at=!1,a({isComputable:!1});return}B[J]=ct.value,a({isComputable:!0,value:tt(B)})}};return Promise.all(s.map((z,J)=>Ft(z)||Ui(z)?Ri(z,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:U(St,J),source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_,baseCDN:A,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T}).then(tt=>tt.uuid):z)).then(z=>kn(z,{publicKey:i,baseURL:e,jsonpCallback:w,secureSignature:r,secureExpire:n,signal:l,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m}).then(J=>new $i(J,{baseCDN:A})).then(J=>(a&&a({isComputable:!0,value:1}),J)))}var $e=class{constructor(i){h(this,"_concurrency",1);h(this,"_pending",[]);h(this,"_running",0);h(this,"_resolvers",new Map);h(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(e),this._rejectors.delete(e),this._running-=1,this._run()}).then(o=>r(o)).catch(o=>n(o))}}add(i){return new Promise((t,e)=>{this._resolvers.set(i,t),this._rejectors.set(i,e),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};var Pi=()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),Mi=s=>({...Pi(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{s.set$({"*modalActive":!1,"*currentActivity":""})}}),Ue=s=>({...Mi(s),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new $e(1)});function Es(s,i){[...s.querySelectorAll("[l10n]")].forEach(t=>{let e=t.getAttribute("l10n"),r="textContent";if(e.includes(":")){let o=e.split(":");r=o[0],e=o[1]}let n="l10n:"+e;i.__l10nKeys.push(n),i.add(n,e),i.sub(n,o=>{t[r]=i.l10n(o)}),t.removeAttribute("l10n")})}var H=s=>`*cfg/${s}`;var Ni="lr-",b=class extends Nt{constructor(){super();h(this,"requireCtxName",!1);h(this,"allowCustomTemplate",!0);h(this,"init$",Pi());h(this,"updateCtxCssData",()=>{Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let e of t)e.isConnected&&e.updateCssData()});this.activityType=null,this.addTemplateProcessor(Es),this.__l10nKeys=[]}l10n(t,e={}){if(!t)return"";let r=this.getCssData("--l10n-"+t,!0)||t,n=hs(r);for(let l of n)e[l.variable]=this.pluralize(l.pluralKey,Number(e[l.countVariable]));return Jt(r,e)}pluralize(t,e){let r=this.l10n("locale-name")||"en-US",n=xe(r,e);return this.l10n(`${t}__${n}`)}emit(t,e,r){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,e,r)}applyL10nKey(t,e){let r="l10n:"+t;this.$[r]=e,this.__l10nKeys.push(t)}hasBlockInCtx(t){let e=this.$["*blocksRegistry"];for(let r of e)if(t(r))return!0;return!1}setOrAddState(t,e){this.add$({[t]:e},!0)}setActivity(t){if(this.hasBlockInCtx(e=>e.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Ni}${t}`,!0),vi()||(this._destroyInnerHeightTracker=ls()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?Ae({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new Te(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,e=2){let r=["B","KB","MB","GB","TB"],n=c=>this.getCssData("--l10n-unit-"+c.toLowerCase(),!0)||c;if(t===0)return`0 ${n(r[0])}`;let o=1024,l=e<0?0:e,a=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**a).toFixed(l))+" "+n(r[a])}proxyUrl(t){let e=this.cfg.secureDeliveryProxy;return e?Jt(e,{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(e,r,n)=>{if(typeof r!="string")return!1;let o=H(r);return this.$[o]=n,!0},get:(e,r)=>{let n=H(r),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${ut(r)}`))}})}return this.__cfgProxy}subConfigValue(t,e){let r=this.parseCfgProp(H(t));r.ctx.has(r.name)?this.sub(H(t),e):(this.bindCssData(`--cfg-${ut(t)}`),this.sub(`--cfg-${ut(t)}`,e))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Ni)?t:Ni+t)}};h(b,"StateConsumerScope",null),h(b,"className","");var xs="active",te="___ACTIVITY_IS_ACTIVE___",et=class extends b{constructor(){super(...arguments);h(this,"historyTracked",!1);h(this,"init$",Mi(this));h(this,"_debouncedHistoryFlush",I(this._historyFlush.bind(this),10))}_deactivate(){var e;let t=et._activityRegistry[this.activityKey];this[te]=!1,this.removeAttribute(xs),(e=t==null?void 0:t.deactivateCallback)==null||e.call(t)}_activate(){var e;let t=et._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[te]=!0,this.setAttribute(xs,""),(e=t==null?void 0:t.activateCallback)==null||e.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[te]?this._deactivate():this.activityType===t&&!this[te]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!et._activityRegistry[this.activityKey]}get isActivityActive(){return this[te]}registerActivity(t,e={}){let{onActivate:r,onDeactivate:n}=e;et._activityRegistry||(et._activityRegistry=Object.create(null)),et._activityRegistry[this.activityKey]={activateCallback:r,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),et._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(et._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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(){let t=this.$["*history"];if(t){let e=t.pop();for(;e===this.activityType;)e=t.pop();this.$["*currentActivity"]=e,this.$["*history"]=t,e||this.setOrAddState("*modalActive",!1)}}},g=et;h(g,"_activityRegistry",Object.create(null));g.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var ee=33.333333333333336,y=1,Di=24,As=6;function kt(s,i){for(let t in i)s.setAttributeNS(null,t,i[t].toString())}function Y(s,i={}){let t=document.createElementNS("http://www.w3.org/2000/svg",s);return kt(t,i),t}function $s(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=i.includes("w")?0:1,a=i.includes("n")?0:1,c=[-1,1][l],u=[-1,1][a],d=[e+l*n+1.5*c,r+a*o+1.5*u-24*t*u],p=[e+l*n+1.5*c,r+a*o+1.5*u],m=[e+l*n-24*t*c+1.5*c,r+a*o+1.5*u];return{d:`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]} L ${m[0]} ${m[1]}`,center:p}}function Ss(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=["n","s"].includes(i)?.5:{w:0,e:1}[i],a=["w","e"].includes(i)?.5:{n:0,s:1}[i],c=[-1,1][l],u=[-1,1][a],d,p;["n","s"].includes(i)?(d=[e+l*n-34*t/2,r+a*o+1.5*u],p=[e+l*n+34*t/2,r+a*o+1.5*u]):(d=[e+l*n+1.5*c,r+a*o-34*t/2],p=[e+l*n+1.5*c,r+a*o+34*t/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 Is(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 ks({rect:s,delta:[i,t],imageBox:e}){return Bt({...s,x:s.x+i,y:s.y+t},e)}function Bt(s,i){let{x:t}=s,{y:e}=s;return s.xi.x+i.width&&(t=i.x+i.width-s.width),s.yi.y+i.height&&(e=i.y+i.height-s.height),{...s,x:t,y:e}}function to({rect:s,delta:i,aspectRatio:t,imageBox:e}){let[,r]=i,{y:n,width:o,height:l}=s;n+=r,l-=r,t&&(o=l*t);let a=s.x+s.width/2-o/2;return n<=e.y&&(n=e.y,l=s.y+s.height-n,t&&(o=l*t,a=s.x+s.width/2-o/2)),a<=e.x&&(a=e.x,n=s.y+s.height-l),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y+s.height-l),l=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x+s.width-o),l=e.y+e.height&&(l=e.y+e.height-n,t&&(o=l*t),a=s.x+s.width/2-o/2),a<=e.x&&(a=e.x,n=s.y),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y),l=e.x+e.width&&(o=e.x+e.width-n,t&&(l=o/t),a=s.y+s.height/2-l/2),a<=e.y&&(a=e.y,n=s.x),a+l>=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x),lt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x+s.width-a,l=e.y)):t&&(r=c*t-a,a=a+r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y+s.height-c)),ce.x+e.width&&(r=e.x+e.width-o-a),l+nt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x,l=e.y)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y+s.height-c)),ce.y+e.height&&(n=e.y+e.height-l-c),o+=r,a-=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x+s.width-a,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y)),ce.x+e.width&&(r=e.x+e.width-o-a),l+c+n>e.y+e.height&&(n=e.y+e.height-l-c),a+=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y)),c=i.x&&s.y>=i.y&&s.x+s.width<=i.x+i.width&&s.y+s.height<=i.y+i.height}function Rs(s,i){return Math.abs(s.width/s.height-i)<.1}function zt({width:s,height:i},t){let e=t/90%2!==0;return{width:e?i:s,height:e?s:i}}function Ps(s,i,t){let e=s/i,r,n;e>t?(r=Math.round(i*t),n=i):(r=s,n=Math.round(s/t));let o=Math.round((s-r)/2),l=Math.round((i-n)/2);return o+r>s&&(r=s-o),l+n>i&&(n=i-l),{x:o,y:l,width:r,height:n}}function jt(s){return{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}}function wt(s,i,t){return Math.min(Math.max(s,i),t)}var Pe=s=>{if(!s)return[];let[i,t]=s.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${s}`);return}return[{type:"aspect-ratio",width:i,height:t}]};var Z=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var Ms=s=>s?s.split(",").map(i=>i.trim()):[],Ot=s=>s?s.join(","):"";var Ns="blocks",Ds="0.29.1";function Fs(s){return Si({...s,libraryName:Ns,libraryVersion:Ds})}var Vs=s=>{if(typeof s!="string"||!s)return"";let i=s.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},Me=(...s)=>s.filter(i=>typeof i=="string"&&i).map(i=>Vs(i)).join("/-/"),P=(...s)=>{let i=Me(...s);return i?`-/${i}/`:""};function Bs(s){let i=new URL(s),t=i.pathname+i.search+i.hash,e=t.lastIndexOf("http"),r=t.lastIndexOf("/"),n="";return e>=0?n=t.slice(e):r>=0&&(n=t.slice(r+1)),n}function zs(s){let i=new URL(s),{pathname:t}=i,e=t.indexOf("/"),r=t.indexOf("/",e+1);return t.substring(e+1,r)}function js(s){let i=Hs(s),t=new URL(i),e=t.pathname.indexOf("/-/");return e===-1?[]:t.pathname.substring(e).split("/-/").filter(Boolean).map(n=>Vs(n))}function Hs(s){let i=new URL(s),t=Bs(s),e=Ws(t)?Xs(t).pathname:t;return i.pathname=i.pathname.replace(e,""),i.search="",i.hash="",i.toString()}function Ws(s){return s.startsWith("http")}function Xs(s){let i=new URL(s);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}var O=(s,i,t)=>{let e=new URL(Hs(s));if(t=t||Bs(s),e.pathname.startsWith("//")&&(e.pathname=e.pathname.replace("//","/")),Ws(t)){let r=Xs(t);e.pathname=e.pathname+(i||"")+(r.pathname||""),e.search=r.search,e.hash=r.hash}else e.pathname=e.pathname+(i||"")+(t||"");return e.toString()},Tt=(s,i)=>{let t=new URL(s);return t.pathname=i+"/",t.toString()};var M=(s,i=",")=>s.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0);var ie=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],Fi=s=>s?s.filter(i=>typeof i=="string").map(i=>M(i)).flat():[],Vi=(s,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),s.startsWith(t)):s===t),qs=(s,i)=>i.some(t=>t.startsWith(".")?s.toLowerCase().endsWith(t.toLowerCase()):!1),se=s=>{let i=s==null?void 0:s.type;return i?Vi(i,ie):!1};var st=1e3,Lt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),re=s=>Math.ceil(s*100)/100,Gs=(s,i=Lt.AUTO)=>{let t=i===Lt.AUTO;if(i===Lt.BYTE||t&&s(e[r]=i[r].value,e),{}),this.__data=$.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}let e=this.__typedSchema[i];if((t==null?void 0:t.constructor)===e.type||t instanceof e.type||e.nullable&&t===null){this.__data.pub(i,t);return}console.warn(ao+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){$.deleteCtx(this.__ctxId)}};var De=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||Yt.generate(),this.__data=$.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(e,r)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[e]||(t[e]=new Set),t[e].add(r),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let e of this.__collectionObservers)e==null||e([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new Ne(this.__typedSchema);for(let e in i)t.setValue(e,i[e]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(e=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(e,()=>{this.__notifyObservers(e,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,e){this.read(i).setValue(t,e)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(e=>{let r=this.read(e);i(r)&&t.push(e)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){$.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};var Ys=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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:pt,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var v=class extends g{constructor(){super(...arguments);h(this,"couldBeUploadCollectionOwner",!1);h(this,"isUploadCollectionOwner",!1);h(this,"init$",Ue(this));h(this,"__initialUploadMetadata",null);h(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);h(this,"_debouncedRunValidators",I(this._runValidators.bind(this),100));h(this,"_flushOutputItems",I(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(S.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));h(this,"_handleCollectonUpdate",(t,e,r)=>{var n;this._runValidators();for(let o of r)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()});h(this,"_handleCollectionPropertiesUpdate",t=>{this._flushOutputItems();let e=this.uploadCollection,r=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>e.read(n)).filter(Boolean);for(let n of r)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=e.findItems(a=>!a.getValue("uploadError"));o.forEach(a=>{n+=e.readProp(a,"uploadProgress")});let l=Math.round(n/o.length);this.$["*commonProgress"]=l,this.emit(S.UPLOAD_PROGRESS,l,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=e.findItems(l=>!!l.getValue("fileInfo")),o=e.findItems(l=>!!l.getValue("uploadError")||!!l.getValue("validationErrorMsg"));if(e.size-o.length===n.length){let l=this.getOutputData(a=>!!a.getValue("fileInfo")&&!a.getValue("silentUpload"));l.length>0&&this.emit(S.UPLOAD_FINISH,l,{debounce:!0})}}t.uploadError&&e.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(S.UPLOAD_ERROR,e.readProp(o,"uploadError"))}),t.validationErrorMsg&&e.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(S.VALIDATION_ERROR,e.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&e.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(S.CLOUD_MODIFICATION,e.readProp(o,"cdnUrlModifiers"))})})}setUploadMetadata(t){Qt("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let e=new De({typedSchema:Ys,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",e)}let t=()=>this.hasBlockInCtx(e=>e instanceof v?e.isUploadCollectionOwner&&e.isConnected&&e!==this:!1);this.couldBeUploadCollectionOwner&&!t()&&(this.isUploadCollectionOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators())),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata),this.subConfigValue("maxConcurrentRequests",e=>{this.$["*uploadQueue"].concurrency=Number(e)||1})}destroyCallback(){var t,e;super.destroyCallback(),this.isUploadCollectionOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(e=this._unobserveCollection)==null||e.call(this))}addFileFromUrl(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromUuid(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({uuid:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromObject(t,{silent:e,fileName:r,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:se(t),mimeType:t.type,fileName:r!=null?r:t.name,fileSize:t.size,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(e=>{this.uploadCollection.add({file:e,isImage:se(e),mimeType:e.type,fileName:e.name,fileSize:e.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var r;let e=Ot(Fi([(r=this.cfg.accept)!=null?r:"",...this.cfg.imgOnly?ie:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=Ot(ie)):this.fileInput.accept=e,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:Z.LOCAL})),this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=M(this.cfg.sourceList)),t}initFlow(t=!1){var e;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((e=this.sourceList)==null?void 0:e.length)===1){let r=this.sourceList[0];r==="local"?(this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(v.extSrcList).includes(r)?this.set$({"*currentActivityParams":{externalSourceType:r},"*currentActivity":g.activities.EXTERNAL}):this.$["*currentActivity"]=r,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":g.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(S.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(S.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let e=this.cfg.imgOnly,r=this.cfg.accept,n=Fi([...e?ie:[],r]);if(!n.length)return;let o=t.getValue("mimeType"),l=t.getValue("fileName");if(!o||!l)return;let a=Vi(o,n),c=qs(l,n);if(!a&&!c)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let e=this.cfg.maxLocalFileSizeBytes,r=t.getValue("fileSize");if(e&&r&&r>e)return this.l10n("files-max-size-limit-error",{maxFileSize:Gs(e)})}_validateMultipleLimit(t){let e=this.uploadCollection.items(),r=e.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&e.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let e=this.cfg.imgOnly,r=t.getValue("isImage");if(!(!e||r)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let e of this._validators){let r=e(t);if(r){t.setValue("validationErrorMsg",r);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let e=this.uploadCollection.read(t);e&&this._runValidatorsForEntry(e)})}setInitialCrop(){let t=Pe(this.cfg.cropPreset);if(t){let[e]=t,r=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of r){let o=n.getValue("fileInfo"),{width:l,height:a}=o.imageInfo,c=e.width/e.height,u=Ps(l,a,c),d=P(`crop/${u.width}x${u.height}/${u.x},${u.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:d,cdnUrl:O(n.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(p=>p.activityType===g.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var r;let e=(r=this.cfg.metadata)!=null?r:this.$["*uploadMetadata"];if(typeof e=="function"){let n=this.getOutputItem(t);return await e(n)}return e}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Fs,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,l;let e=$.getCtx(t).store,r=e.fileInfo||{name:e.fileName,originalFilename:e.fileName,size:e.fileSize,isImage:e.isImage,mimeType:e.mimeType};return{...r,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(l=(o=e.cdnUrl)!=null?o:r.cdnUrl)!=null?l:null,validationErrorMessage:e.validationErrorMsg,uploadError:e.uploadError,isUploaded:!!e.uuid&&!!e.fileInfo,isValid:!e.validationErrorMsg&&!e.uploadError,fullPath:e.fullPath,uploadProgress:e.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};v.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});v.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...v.extSrcList});var G={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};function co(s,i){if(typeof i=="number")return G[s]!==i?`${s}/${i}`:"";if(typeof i=="boolean")return i&&G[s]!==i?`${s}`:"";if(s==="filter"){if(!i||G[s]===i.amount)return"";let{name:t,amount:e}=i;return`${s}/${t}/${e}`}if(s==="crop"){if(!i)return"";let{dimensions:t,coords:e}=i;return`${s}/${t.join("x")}/${e.join(",")}`}return""}var Js=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function Et(s){return Me(...Js.filter(i=>typeof s[i]!="undefined"&&s[i]!==null).map(i=>{let t=s[i];return co(i,t)}).filter(i=>!!i))}var Fe=Me("format/auto","progressive/yes"),mt=([s])=>typeof s!="undefined"?Number(s):void 0,Zs=()=>!0,ho=([s,i])=>({name:s,amount:typeof i!="undefined"?Number(i):100}),uo=([s,i])=>({dimensions:M(s,"x").map(Number),coords:M(i).map(Number)}),po={enhance:mt,brightness:mt,exposure:mt,gamma:mt,contrast:mt,saturation:mt,vibrance:mt,warmth:mt,filter:ho,mirror:Zs,flip:Zs,rotate:mt,crop:uo};function Qs(s){let i={};for(let t of s){let[e,...r]=t.split("/");if(!Js.includes(e))continue;let n=po[e],o=n(r);i[e]=o}return i}var N=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),W=[N.CROP,N.TUNING,N.FILTERS],tr=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],er=["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"],ir=["rotate","mirror","flip"],rt=Object.freeze({brightness:{zero:G.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:G.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:G.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:G.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:G.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:G.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:G.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:G.enhance,range:[0,100],keypointsNumber:1},filter:{zero:G.filter,range:[0,100],keypointsNumber:1}});var fo="https://ucarecdn.com",mo="https://upload.uploadcare.com",go="https://social.uploadcare.com",xt={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:Ot(W),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:fo,baseUrl:mo,socialBaseUrl:go,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var X=s=>String(s),nt=s=>{let i=Number(s);if(Number.isNaN(i))throw new Error(`Invalid number: "${s}"`);return i},k=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}"`)},_o=s=>s==="auto"?s:k(s),bo={pubkey:X,multiple:k,multipleMin:nt,multipleMax:nt,confirmUpload:k,imgOnly:k,accept:X,externalSourcesPreferredTypes:X,store:_o,cameraMirror:k,sourceList:X,maxLocalFileSizeBytes:nt,thumbSize:nt,showEmptyList:k,useLocalImageEditor:k,useCloudImageEditor:k,cloudImageEditorTabs:X,removeCopyright:k,cropPreset:X,modalScrollLock:k,modalBackdropStrokes:k,sourceListWrap:k,remoteTabSessionKey:X,cdnCname:X,baseUrl:X,socialBaseUrl:X,secureSignature:X,secureExpire:X,secureDeliveryProxy:X,retryThrottledRequestMaxTimes:nt,multipartMinFileSize:nt,multipartChunkSize:nt,maxConcurrentRequests:nt,multipartMaxConcurrentRequests:nt,multipartMaxAttempts:nt,checkForUrlDuplicates:k,saveUrlForRecurrentUploads:k,groupOutput:k,userAgentIntegration:X},sr=(s,i)=>{if(!(typeof i=="undefined"||i===null))try{return bo[s](i)}catch(t){return console.error(`Invalid value for config key "${s}".`,t),xt[s]}};var Ve=Object.keys(xt),yo=["metadata"],vo=s=>yo.includes(s),Be=Ve.filter(s=>!vo(s)),Co={...Object.fromEntries(Be.map(s=>[ut(s),s])),...Object.fromEntries(Be.map(s=>[s.toLowerCase(),s]))},wo={...Object.fromEntries(Ve.map(s=>[ut(s),H(s)])),...Object.fromEntries(Ve.map(s=>[s.toLowerCase(),H(s)]))},ze=class extends b{constructor(){super();h(this,"ctxOwner",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(xt).map(([t,e])=>[H(t),e]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let e of Be)this.sub(H(e),r=>{r!==xt[e]&&(t[e]=r)},!1);for(let e of Ve){let r="__"+e;t[r]=t[e],Object.defineProperty(this,e,{set:n=>{if(t[r]=n,Be.includes(e)){let o=[...new Set([ut(e),e.toLowerCase()])];for(let l of o)typeof n=="undefined"||n===null?this.removeAttribute(l):this.setAttribute(l,n.toString())}this.$[H(e)]!==n&&(typeof n=="undefined"||n===null?this.$[H(e)]=xt[e]:this.$[H(e)]=n)},get:()=>this.$[H(e)]}),typeof t[e]!="undefined"&&t[e]!==null&&(t[e]=t[r])}}attributeChangedCallback(t,e,r){if(e===r)return;let n=Co[t],o=sr(n,r),l=o!=null?o:xt[n],a=this;a[n]=l}};ze.bindAttributes(wo);var To=ze;var ne=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=this.getCssData(`--icon-${t}`);e&&(this.$.path=e)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};ne.template=``;ne.bindAttributes({name:"name",size:"size"});var Eo="https://ucarecdn.com",Ut=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:Eo},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{default:"auto"},"cdn-operations":{},progressive:{},quality:{default:"smart"},"is-background-for":{}});var rr=s=>[...new Set(s)];var oe="--lr-img-",nr="unresolved",Ht=2,Wt=3,or=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),ar=Object.create(null),lr;for(let s in Ut)ar[oe+s]=((lr=Ut[s])==null?void 0:lr.default)||"";var je=class extends Nt{constructor(){super(...arguments);h(this,"cssInit$",ar)}$$(t){return this.$[oe+t]}set$$(t){for(let e in t)this.$[oe+e]=t[e]}sub$$(t,e){this.sub(oe+t,r=>{r===null||r===""||e(r)})}_fmtAbs(t){return!t.includes("//")&&!or&&(t=new URL(t,document.baseURI).href),t}_getCdnModifiers(t=""){return P(t&&`resize/${t}`,this.$$("cdn-operations")||"",`format/${this.$$("format")||Ut.format.default}`,`quality/${this.$$("quality")||Ut.quality.default}`)}_getUrlBase(t=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(or&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let e=this._getCdnModifiers(t);if(this.$$("src").startsWith(this.$$("cdn-cname")))return O(this.$$("src"),e);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("proxy-cname"))return this._proxyUrl(O(this.$$("proxy-cname"),e,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(O(`https://${this.$$("pubkey")}.ucr.io/`,e,this._fmtAbs(this.$$("src"))))}_proxyUrl(t){return this.$$("secure-delivery-proxy")?Jt(this.$$("secure-delivery-proxy"),{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}_getElSize(t,e=1,r=!0){let n=t.getBoundingClientRect(),o=e*Math.round(n.width),l=r?"":e*Math.round(n.height);return o||l?`${o||""}x${l||""}`:null}_setupEventProxy(t){let e=n=>{n.stopPropagation();let o=new Event(n.type,n);this.dispatchEvent(o)},r=["load","error"];for(let n of r)t.addEventListener(n,e)}get img(){return this._img||(this._img=new Image,this._setupEventProxy(this.img),this._img.setAttribute(nr,""),this.img.onload=()=>{this.img.removeAttribute(nr)},this.initAttributes(),this.appendChild(this._img)),this._img}get bgSelector(){return this.$$("is-background-for")}initAttributes(){[...this.attributes].forEach(t=>{Ut[t.name]||this.img.setAttribute(t.name,t.value)})}get breakpoints(){return this.$$("breakpoints")?rr(M(this.$$("breakpoints")).map(t=>Number(t))):null}renderBg(t){let e=new Set;this.breakpoints?this.breakpoints.forEach(n=>{e.add(`url("${this._getUrlBase(n+"x")}") ${n}w`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(n*Ht+"x")}") ${n*Ht}w`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(n*Wt+"x")}") ${n*Wt}w`)}):(e.add(`url("${this._getUrlBase(this._getElSize(t))}") 1x`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Ht))}") ${Ht}x`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Wt))}") ${Wt}x`));let r=`image-set(${[...e].join(", ")})`;t.style.setProperty("background-image",r),t.style.setProperty("background-image","-webkit-"+r)}getSrcset(){let t=new Set;return this.breakpoints?this.breakpoints.forEach(e=>{t.add(this._getUrlBase(e+"x")+` ${e}w`),this.$$("hi-res-support")&&t.add(this._getUrlBase(e*Ht+"x")+` ${e*Ht}w`),this.$$("ultra-res-support")&&t.add(this._getUrlBase(e*Wt+"x")+` ${e*Wt}w`)}):(t.add(this._getUrlBase(this._getElSize(this.img))+" 1x"),this.$$("hi-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,2))+" 2x"),this.$$("ultra-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,3))+" 3x")),[...t].join()}getSrc(){return this._getUrlBase()}init(){this.bgSelector?[...document.querySelectorAll(this.bgSelector)].forEach(t=>{this.$$("intersection")?this.initIntersection(t,()=>{this.renderBg(t)}):this.renderBg(t)}):this.$$("intersection")?this.initIntersection(this.img,()=>{this.img.srcset=this.getSrcset(),this.img.src=this.getSrc()}):(this.img.srcset=this.getSrcset(),this.img.src=this.getSrc())}initIntersection(t,e){let r={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(n=>{n.forEach(o=>{o.isIntersecting&&(e(),this._isnObserver.unobserve(t))})},r),this._isnObserver.observe(t),this._observed||(this._observed=new Set),this._observed.add(t)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(t=>{this._isnObserver.unobserve(t)}),this._isnObserver=null)}static get observedAttributes(){return Object.keys(Ut)}attributeChangedCallback(t,e,r){window.setTimeout(()=>{this.$[oe+t]=r})}};var Bi=class extends je{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",i=>{this.$$("is-background-for")||(this.img.loading=i?"lazy":"eager")})}};var le=class extends v{constructor(){super(),this.init$={...this.init$,"*simpleButtonText":"",withDropZone:!0,onClick:()=>{this.initFlow()}}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",i=>{typeof i!="undefined"&&(this.$.withDropZone=k(i))}),this.subConfigValue("multiple",i=>{this.$["*simpleButtonText"]=i?this.l10n("upload-files"):this.l10n("upload-file")})}};le.template=``;le.bindAttributes({dropzone:null});var He=class extends g{constructor(){super(...arguments);h(this,"historyTracked",!0);h(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};He.template='
';function xo(s){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let e=r=>{r.type!=="loadend"&&t.abort(),i(!1)};t.onloadend=e,t.onprogress=e,t.readAsDataURL(s)}catch{i(!1)}})}function Ao(s,i){return new Promise(t=>{let e=0,r=[],n=l=>{l||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),l.isFile?(e++,l.file(a=>{e--;let c=new File([a],a.name,{type:a.type||i});r.push({type:"file",file:c,fullPath:l.fullPath}),e===0&&t(r)})):l.isDirectory&&o(l.createReader())},o=l=>{e++,l.readEntries(a=>{e--;for(let c of a)n(c);e===0&&t(r)})};n(s)})}function cr(s){let i=[],t=[];for(let e=0;e{a&&i.push(...a)}));continue}let o=r.getAsFile();o&&t.push(xo(o).then(l=>{l||i.push({type:"file",file:o})}))}else r.kind==="string"&&r.type.match("^text/uri-list")&&t.push(new Promise(n=>{r.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}var F={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},hr=["focus"],$o=100,zi=new Map;function So(s,i){let t=Math.max(Math.min(s[0],i.x+i.width),i.x),e=Math.max(Math.min(s[1],i.y+i.height),i.y);return Math.sqrt((s[0]-t)*(s[0]-t)+(s[1]-e)*(s[1]-e))}function ji(s){let i=0,t=document.body,e=new Set,r=f=>e.add(f),n=F.INACTIVE,o=f=>{s.shouldIgnore()&&f!==F.INACTIVE||(n!==f&&e.forEach(_=>_(f)),n=f)},l=()=>i>0;r(f=>s.onChange(f));let a=()=>{i=0,o(F.INACTIVE)},c=()=>{i+=1,n===F.INACTIVE&&o(F.ACTIVE)},u=()=>{i-=1,l()||o(F.INACTIVE)},d=f=>{f.preventDefault(),i=0,o(F.INACTIVE)},p=f=>{if(s.shouldIgnore())return;l()||(i+=1);let _=[f.x,f.y],A=s.element.getBoundingClientRect(),E=Math.floor(So(_,A)),T=E<$o,w=f.composedPath().includes(s.element);zi.set(s.element,E);let B=Math.min(...zi.values())===E;w&&B?(f.preventDefault(),o(F.OVER)):o(T&&B?F.NEAR:F.ACTIVE)},m=async f=>{if(s.shouldIgnore())return;f.preventDefault();let _=await cr(f.dataTransfer);s.onItems(_),o(F.INACTIVE)};return t.addEventListener("drop",d),t.addEventListener("dragleave",u),t.addEventListener("dragenter",c),t.addEventListener("dragover",p),s.element.addEventListener("drop",m),hr.forEach(f=>{window.addEventListener(f,a)}),()=>{zi.delete(s.element),t.removeEventListener("drop",d),t.removeEventListener("dragleave",u),t.removeEventListener("dragenter",c),t.removeEventListener("dragover",p),s.element.removeEventListener("drop",m),hr.forEach(f=>{window.removeEventListener(f,a)})}}var ae=class extends v{constructor(){super(),this.init$={...this.init$,state:F.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,e=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),r=window.getComputedStyle(this),n=r.visibility!=="hidden"&&r.display!=="none";return t&&n&&e}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!k(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:k(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:k(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:k(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=ji({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(e=>{e.type==="url"?this.addFileFromUrl(e.url,{source:Z.DROP_AREA}):e.type==="file"&&this.addFileFromObject(e.file,{source:Z.DROP_AREA,fullPath:e.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=ji({element:i,onChange:t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&i.setAttribute("drag-state",e)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&this.setAttribute("drag-state",e)}),this.subConfigValue("sourceList",t=>{let e=M(t);this.$.isEnabled=e.includes(v.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(e=>e!==this).filter(e=>e.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,e=this.uploadCollection.size;return!(i&&t&&e>=t||!i&&e>0)}destroyCallback(){var i,t,e,r;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(e=this._destroyDropzone)==null||e.call(this),(r=this._destroyContentWrapperDropzone)==null||r.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};ae.template=`
{{text}}
`;ae.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Io="src-type-",ce=class extends v{constructor(){super(...arguments);h(this,"_registeredTypes",{});h(this,"init$",{...this.init$,iconName:"default"})}initTypes(){this.registerType({type:v.sourceTypes.LOCAL,onClick:()=>{this.openSystemDialog()}}),this.registerType({type:v.sourceTypes.URL,activity:g.activities.URL,textKey:"from-url"}),this.registerType({type:v.sourceTypes.CAMERA,activity:g.activities.CAMERA,onClick:()=>{var e=document.createElement("input").capture!==void 0;return e&&this.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:g.activities.DRAW,icon:"edit-draw"});for(let t of Object.values(v.extSrcList))this.registerType({type:t,activity:g.activities.EXTERNAL,activityParams:{externalSourceType:t}})}initCallback(){super.initCallback(),this.initTypes(),this.setAttribute("role","button"),this.defineAccessor("type",t=>{t&&this.applyType(t)})}registerType(t){this._registeredTypes[t.type]=t}getType(t){return this._registeredTypes[t]}applyType(t){let e=this._registeredTypes[t];if(!e){console.warn("Unsupported source type: "+t);return}let{textKey:r=t,icon:n=t,activity:o,onClick:l,activityParams:a={}}=e;this.applyL10nKey("src-type",`${Io}${r}`),this.$.iconName=n,this.onclick=c=>{(l?l(c):!!o)&&this.set$({"*currentActivityParams":a,"*currentActivity":o})}}};ce.template=`
`;ce.bindAttributes({type:null});var Hi=class extends b{initCallback(){super.initCallback(),this.subConfigValue("sourceList",i=>{let t=M(i),e="";t.forEach(r=>{e+=``}),this.cfg.sourceListWrap?this.innerHTML=e:this.outerHTML=e})}};function ur(s){let i=new Blob([s],{type:"image/svg+xml"});return URL.createObjectURL(i)}function dr(s="#fff",i="rgba(0, 0, 0, .1)"){return ur(``)}function he(s="hsl(209, 21%, 65%)",i=32,t=32){return ur(``)}function pr(s,i=40){if(s.type==="image/svg+xml")return URL.createObjectURL(s);let t=document.createElement("canvas"),e=t.getContext("2d"),r=new Image,n=new Promise((o,l)=>{r.onload=()=>{let a=r.height/r.width;a>1?(t.width=i,t.height=i*a):(t.height=i,t.width=i/a),e.fillStyle="rgb(240, 240, 240)",e.fillRect(0,0,t.width,t.height),e.drawImage(r,0,0,t.width,t.height),t.toBlob(c=>{if(!c){l();return}let u=URL.createObjectURL(c);o(u)})},r.onerror=a=>{l(a)}});return r.src=URL.createObjectURL(s),n}var V=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),gt=class extends v{constructor(){super();h(this,"pauseRender",!0);h(this,"_entrySubs",new Set);h(this,"_entry",null);h(this,"_isIntersecting",!1);h(this,"_debouncedGenerateThumb",I(this._generateThumbnail.bind(this),100));h(this,"_debouncedCalculateState",I(this._calculateState.bind(this),100));h(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:V.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===g.activities.DETAILS)?this.$["*currentActivity"]=g.activities.DETAILS:this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let e=this.getOutputData(r=>r.getValue("uuid")===t);this.emit(S.REMOVE,e,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[e]=t;this._isIntersecting=e.isIntersecting,e.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),e.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,e=V.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?e=V.FAILED:t.getValue("validationMultipleLimitMsg")?e=V.LIMIT_OVERFLOW:t.getValue("isUploading")?e=V.UPLOADING:t.getValue("fileInfo")&&(e=V.FINISHED),this.$.state=e}async _generateThumbnail(){var e;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let r=this.cfg.thumbSize,n=this.proxyUrl(O(Tt(this.cfg.cdnCname,this._entry.getValue("uuid")),P(t.getValue("cdnUrlModifiers"),`scale_crop/${r}x${r}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((e=t.getValue("file"))!=null&&e.type.includes("image"))try{let r=await pr(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",r)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(n))}else{let r=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(r))}}_subEntry(t,e){let r=this._entry.subscribe(t,n=>{this.isConnected&&e(n)});this._entrySubs.add(r)}_handleEntryId(t){var r;this._reset();let e=(r=this.uploadCollection)==null?void 0:r.read(t);this._entry=e,e&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||e.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=e.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{gt.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),gt.activeInstances.add(this)}_handleState(t){var e,r,n;this.set$({isFailed:t===V.FAILED,isLimitOverflow:t===V.LIMIT_OVERFLOW,isUploading:t===V.UPLOADING,isFinished:t===V.FINISHED,progressVisible:t===V.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((e=this._entry)==null?void 0:e.getValue("isImage"))&&((r=this._entry)==null?void 0:r.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===V.FAILED||t===V.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===V.FINISHED&&(this.$.badgeIcon="badge-success"),t===V.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),gt.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,l;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let e=this.cfg.multiple?this.cfg.multipleMax:1;if(e&&this.uploadCollection.size>e)return;let r=this.getOutputData(a=>!a.getValue("fileInfo"));this.emit(S.UPLOAD_START,r,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let a=new AbortController;t.setValue("abortController",a);let c=async()=>{let d=this.getUploadClientOptions();return Ri(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...d,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:p=>{if(p.isComputable){let m=p.value*100;t.setValue("uploadProgress",m)}this.$.progressUnknown=!p.isComputable},signal:a.signal,metadata:await this.getMetadataFor(t.uid)})},u=await this.$["*uploadQueue"].add(c);t.setMultipleValues({fileInfo:u,isUploading:!1,fileName:u.originalFilename,fileSize:u.size,isImage:u.isImage,mimeType:(l=(o=(n=u.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?l:u.mimeType,uuid:u.uuid,cdnUrl:u.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(a){console.warn("Upload error",a),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),a instanceof R?a.isCancel||t.setValue("uploadError",a):t.setValue("uploadError",new Error("Unexpected error"))}}};gt.template=`
{{itemName}}{{errorText}}
`;gt.activeInstances=new Set;var ue=class extends b{constructor(){super();h(this,"_handleBackdropClick",()=>{this._closeDialog()});h(this,"_closeDialog",()=>{this.setOrAddState("*modalActive",!1)});h(this,"_handleDialogClose",()=>{this._closeDialog()});h(this,"_handleDialogMouseDown",t=>{this._mouseDownTarget=t.target});h(this,"_handleDialogMouseUp",t=>{t.target===this.ref.dialog&&t.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(){if(super.initCallback(),typeof HTMLDialogElement=="function")this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp);else{this.setAttribute("dialog-fallback","");let t=document.createElement("div");t.className="backdrop",this.appendChild(t),t.addEventListener("click",this._handleBackdropClick)}this.sub("*modalActive",t=>{this.$.isOpen!==t&&(this.$.isOpen=t),t&&this.cfg.modalScrollLock?document.body.style.overflow="hidden":document.body.style.overflow=""}),this.subConfigValue("modalBackdropStrokes",t=>{t?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.sub("isOpen",t=>{t?this.show():this.hide()})}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)}};h(ue,"StateConsumerScope","modal");ue.template=``;var We=class{constructor(){h(this,"caption","");h(this,"text","");h(this,"iconName","");h(this,"isError",!1)}},Xe=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};Xe.template=`
{{captionTxt}}
{{msgTxt}}
`;var qe=class extends v{constructor(){super();h(this,"couldBeUploadCollectionOwner",!0);h(this,"historyTracked",!0);h(this,"activityType",g.activities.UPLOAD_LIST);h(this,"_debouncedHandleCollectionUpdate",I(()=>{var t;this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),((t=this.$["*uploadList"])==null?void 0:t.length)===0&&!this.cfg.showEmptyList&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(e=>!!e.getValue("fileInfo"));this.emit(S.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var u,d;let t=!!this.cfg.multiple,e=t?(u=this.cfg.multipleMin)!=null?u:0:1,r=t?(d=this.cfg.multipleMax)!=null?d:0:1,n=this.uploadCollection.size,o=e?nr:!1;return{passed:!o&&!l,tooFew:o,tooMany:l,min:e,max:r,exact:r===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,e=this._validateFilesCount();if(t&&!e.passed){let r=new We,n=e.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";r.caption=this.l10n("files-count-limit-error-title"),r.text=this.l10n(n,{min:e.min,max:e.max,total:t}),r.isError=!0,this.set$({"*message":r})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),r={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let m of t){let f=this.uploadCollection.read(m);f.getValue("fileInfo")&&!f.getValue("validationErrorMsg")&&(r.succeed+=1),f.getValue("isUploading")&&(r.uploading+=1),(f.getValue("validationErrorMsg")||f.getValue("uploadError"))&&(r.failed+=1),f.getValue("validationMultipleLimitMsg")&&(r.limitOverflow+=1)}let{passed:n,tooMany:o,exact:l}=this._validateFilesCount(),a=r.failed===0&&r.limitOverflow===0,c=!1,u=!1,d=!1;r.total-r.succeed-r.uploading-r.failed>0&&n?c=!0:(u=!0,d=r.total===r.succeed&&n&&a),this.set$({doneBtnVisible:u,doneBtnEnabled:d,uploadBtnVisible:c,addMoreBtnEnabled:r.total===0||!o&&!l,addMoreBtnVisible:!l||this.cfg.multiple,headerText:this._getHeaderText(r)})}_getHeaderText(t){let e=r=>{let n=t[r];return this.l10n(`header-${r}`,{count:n})};return t.uploading>0?e("uploading"):t.failed>0?e("failed"):t.succeed>0?e("succeed"):e("total")}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{var e;((e=this.uploadCollection)==null?void 0:e.size)===0&&!this.cfg.showEmptyList&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};qe.template=`{{headerText}}
`;var Ge=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.URL);h(this,"init$",{...this.init$,importDisabled:!0,onUpload:t=>{t.preventDefault();let e=this.ref.input.value;this.addFileFromUrl(e,{source:Z.URL_TAB}),this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:t=>{let e=t.target.value;this.set$({importDisabled:!e})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};Ge.template=`
`;var Wi=()=>typeof navigator.permissions!="undefined";var Ke=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.CAMERA);h(this,"_unsubPermissions",null);h(this,"init$",{...this.init$,video:null,videoTransformCss:null,shotBtnDisabled:!0,videoHidden:!0,messageHidden:!0,requestBtnHidden:Wi(),l10nMessage:null,originalErrorMessage:null,cameraSelectOptions:null,cameraSelectHidden:!0,onCameraSelectChange:t=>{this._selectedCameraId=t.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>{this._shot()},onRequestPermissions:()=>{this._capture()}});h(this,"_onActivate",()=>{Wi()&&this._subscribePermissions(),this._capture()});h(this,"_onDeactivate",()=>{this._unsubPermissions&&this._unsubPermissions(),this._stopCapture()});h(this,"_handlePermissionsChange",()=>{this._capture()});h(this,"_setPermissionsState",I(t=>{this.$.originalErrorMessage=null,this.classList.toggle("initialized",t==="granted"),t==="granted"?this.set$({videoHidden:!1,shotBtnDisabled:!1,messageHidden:!0}):t==="prompt"?(this.$.l10nMessage=this.l10n("camera-permissions-prompt"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage=this.l10n("camera-permissions-denied"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture())},300))}async _subscribePermissions(){try{(await navigator.permissions.query({name:"camera"})).addEventListener("change",this._handlePermissionsChange)}catch(t){console.log("Failed to use permissions API. Fallback to manual request mode.",t),this._capture()}}async _capture(){let t={video:{width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},audio:!1};this._selectedCameraId&&(t.video.deviceId={exact:this._selectedCameraId}),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d");try{this._setPermissionsState("prompt");let e=await navigator.mediaDevices.getUserMedia(t);e.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=e,this._capturing=!0,this._setPermissionsState("granted")}catch(e){this._setPermissionsState("denied"),this.$.originalErrorMessage=e.message}}_stopCapture(){var t;this._capturing&&((t=this.$.video)==null||t.getTracks()[0].stop(),this.$.video=null,this._capturing=!1)}_shot(){this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this._ctx.drawImage(this.ref.video,0,0);let t=Date.now(),e=`camera-${t}.png`;this._canvas.toBlob(r=>{let n=new File([r],e,{lastModified:t,type:"image/png"});this.addFileFromObject(n,{source:Z.CAMERA}),this.set$({"*currentActivity":g.activities.UPLOAD_LIST})})}async initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",t=>{this.$.videoTransformCss=t?"scaleX(-1)":null});try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(r=>r.kind==="videoinput").map((r,n)=>({text:r.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:r.deviceId}));e.length>1&&(this.$.cameraSelectOptions=e,this.$.cameraSelectHidden=!1)}catch{}}};Ke.template=`
{{l10nMessage}}{{originalErrorMessage}}
`;var Xi=class extends v{constructor(){super(...arguments);h(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}},ko=Xi;var Ye=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.DETAILS);h(this,"pauseRender",!0);h(this,"init$",{...this.init$,checkerboard:!1,fileSize:null,fileName:"",cdnUrl:"",errorTxt:"",cloudEditBtnHidden:!0,onNameInput:null,onBack:()=>{this.historyBack()},onRemove:()=>{this.uploadCollection.remove(this.entry.uid),this.historyBack()},onCloudEdit:()=>{this.entry.getValue("uuid")&&(this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}})}showNonImageThumb(){let t=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon"),e=he(t,108,108);this.ref.filePreview.setImageUrl(e),this.set$({checkerboard:!1})}initCallback(){super.initCallback(),this.render(),this.$.fileSize=this.l10n("file-size-unknown"),this.registerActivity(this.activityType,{onDeactivate:()=>{this.ref.filePreview.clear()}}),this.sub("*focusedEntry",t=>{if(!t)return;this._entrySubs?this._entrySubs.forEach(n=>{this._entrySubs.delete(n),n.remove()}):this._entrySubs=new Set,this.entry=t;let e=t.getValue("file");if(e){this._file=e;let n=se(this._file);n&&!t.getValue("cdnUrl")&&(this.ref.filePreview.setImageFile(this._file),this.set$({checkerboard:!0})),n||this.showNonImageThumb()}let r=(n,o)=>{this._entrySubs.add(this.entry.subscribe(n,o))};r("fileName",n=>{this.$.fileName=n,this.$.onNameInput=()=>{let o=this.ref.file_name_input.value;Object.defineProperty(this._file,"name",{writable:!0,value:o}),this.entry.setValue("fileName",o)}}),r("fileSize",n=>{this.$.fileSize=Number.isFinite(n)?this.fileSizeFmt(n):this.l10n("file-size-unknown")}),r("uploadError",n=>{this.$.errorTxt=n==null?void 0:n.message}),r("externalUrl",n=>{n&&(this.entry.getValue("uuid")||this.showNonImageThumb())}),r("cdnUrl",n=>{let o=this.cfg.useCloudImageEditor&&n&&this.entry.getValue("isImage");if(n&&this.ref.filePreview.clear(),this.set$({cdnUrl:n,cloudEditBtnHidden:!o}),n&&this.entry.getValue("isImage")){let l=O(n,P("format/auto","preview"));this.ref.filePreview.setImageUrl(this.proxyUrl(l))}})})}};Ye.template=`
{{fileSize}}
{{errorTxt}}
`;var qi=class{constructor(){h(this,"captionL10nStr","confirm-your-action");h(this,"messageL10Str","are-you-sure");h(this,"confirmL10nStr","yes");h(this,"denyL10nStr","no")}confirmAction(){console.log("Confirmed")}denyAction(){this.historyBack()}},Ze=class extends g{constructor(){super(...arguments);h(this,"activityType",g.activities.CONFIRMATION);h(this,"_defaults",new qi);h(this,"init$",{...this.init$,activityCaption:"",messageTxt:"",confirmBtnTxt:"",denyBtnTxt:"","*confirmation":null,onConfirm:this._defaults.confirmAction,onDeny:this._defaults.denyAction.bind(this)})}initCallback(){super.initCallback(),this.set$({messageTxt:this.l10n(this._defaults.messageL10Str),confirmBtnTxt:this.l10n(this._defaults.confirmL10nStr),denyBtnTxt:this.l10n(this._defaults.denyL10nStr)}),this.sub("*confirmation",t=>{t&&this.set$({"*currentActivity":g.activities.CONFIRMATION,activityCaption:this.l10n(t.captionL10nStr),messageTxt:this.l10n(t.messageL10Str),confirmBtnTxt:this.l10n(t.confirmL10nStr),denyBtnTxt:this.l10n(t.denyL10nStr),onDeny:()=>{t.denyAction()},onConfirm:()=>{t.confirmAction()}})})}};Ze.template=`{{activityCaption}}
{{messageTxt}}
`;var Je=class extends v{constructor(){super(...arguments);h(this,"init$",{...this.init$,visible:!1,unknown:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let t=this.uploadCollection.items().some(e=>this.uploadCollection.read(e).getValue("isUploading"));this.$.visible=t}),this.sub("visible",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",t=>{this.$.value=t})}destroyCallback(){var t;super.destroyCallback(),(t=this._unobserveCollection)==null||t.call(this)}};Je.template=``;var Qe=class extends b{constructor(){super(...arguments);h(this,"_value",0);h(this,"_unknownMode",!1);h(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};Qe.template='
';var K="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";var de=class extends b{constructor(){super();h(this,"init$",{...this.init$,checkerboard:!1,src:K})}initCallback(){super.initCallback(),this.sub("checkerboard",()=>{this.style.backgroundImage=this.hasAttribute("checkerboard")?`url(${dr()})`:"unset"})}destroyCallback(){super.destroyCallback(),URL.revokeObjectURL(this._lastObjectUrl)}setImage(t){this.$.src=t.src}setImageFile(t){let e=URL.createObjectURL(t);this.$.src=e,this._lastObjectUrl=e}setImageUrl(t){this.$.src=t}clear(){URL.revokeObjectURL(this._lastObjectUrl),this.$.src=K}};de.template='';de.bindAttributes({checkerboard:"checkerboard"});var fr="--cfg-ctx-name",L=class extends b{get cfgCssCtxName(){return this.getCssData(fr,!0)}get cfgCtxName(){var t;let i=((t=this.getAttribute("ctx-name"))==null?void 0:t.trim())||this.cfgCssCtxName||this.__cachedCfgCtxName;return this.__cachedCfgCtxName=i,i}connectedCallback(){var i;if(!this.connectedOnce){let t=(i=this.getAttribute("ctx-name"))==null?void 0:i.trim();t&&this.style.setProperty(fr,`'${t}'`)}super.connectedCallback()}parseCfgProp(i){return{...super.parseCfgProp(i),ctx:$.getCtx(this.cfgCtxName)}}};function mr(...s){return s.reduce((i,t)=>{if(typeof t=="string")return i[t]=!0,i;for(let e of Object.keys(t))i[e]=t[e];return i},{})}function D(...s){let i=mr(...s);return Object.keys(i).reduce((t,e)=>(i[e]&&t.push(e),t),[]).join(" ")}function gr(s,...i){let t=mr(...i);for(let e of Object.keys(t))s.classList.toggle(e,t[e])}var _r=s=>{if(!s)return W;let i=Ms(s).filter(t=>W.includes(t));return i.length===0?W:i};function br(s){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":W,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:K,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:Ot(W),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let i=s.querySelectorAll("img");for(let t of i){let e=t.src;t.src=K,t.src=e}s.$["*networkProblems"]=!1},"*on.apply":i=>{if(!i)return;let t=s.$["*originalUrl"],e=P(Et(i),"preview"),r=O(t,e),n={originalUrl:t,cdnUrlModifiers:e,cdnUrl:r,transformations:i};s.dispatchEvent(new CustomEvent("apply",{detail:n,bubbles:!0,composed:!0})),s.remove()},"*on.cancel":()=>{s.remove(),s.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}var yr=`
Network error
{{fileType}}
{{msg}}
`;var ot=class extends L{constructor(){super();h(this,"_debouncedShowLoader",I(this._showLoader.bind(this),300));this.init$={...this.init$,...br(this)}}get ctxName(){return this.autoCtxName}_showLoader(t){this.$.showLoader=t}_waitForSize(){return new Promise((e,r)=>{let n=setTimeout(()=>{r(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),o=new ResizeObserver(([l])=>{l.contentRect.width>0&&l.contentRect.height>0&&(e(),clearTimeout(n),o.disconnect())});o.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(await this._waitForSize(),this.$["*tabId"]===N.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate(),this.$["*editorTransformations"]={},this.$.cdnUrl){let t=zs(this.$.cdnUrl);this.$["*originalUrl"]=Tt(this.$.cdnUrl,t);let e=js(this.$.cdnUrl),r=Qs(e);this.$["*editorTransformations"]=r}else if(this.$.uuid)this.$["*originalUrl"]=Tt(this.cfg.cdnCname,this.$.uuid);else throw new Error("No UUID nor CDN URL provided");try{let t=O(this.$["*originalUrl"],P("json")),e=await fetch(t).then(o=>o.json()),{width:r,height:n}=e;this.$["*imageSize"]={width:r,height:n},this.$["*tabId"]===N.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(t){t&&console.error("Failed to load image info",t)}}async initEditor(){try{await this._waitForSize()}catch(t){this.isConnected&&console.error(t.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==K&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",t=>{let e=this.ref["img-el"];e.src!==t&&(this._imgLoading=!0,e.src=t||K)}),this.sub("cropPreset",t=>{this.$["*cropPresetList"]=Pe(t)}),this.sub("tabs",t=>{this.$["*tabList"]=_r(t)}),this.sub("*tabId",t=>{this.ref["img-el"].className=D("image",{image_hidden_to_cropper:t===N.CROP,image_hidden_effects:t!==N.CROP})}),this.classList.add("editor_ON"),this.sub("*networkProblems",t=>{this.$["presence.networkProblems"]=t,this.$["presence.modalCaption"]=!t}),this.sub("*editorTransformations",t=>{if(Object.keys(t).length===0)return;let e=this.$["*originalUrl"],r=P(Et(t),"preview"),n=O(e,r),o={originalUrl:e,cdnUrlModifiers:r,cdnUrl:n,transformations:t};this.dispatchEvent(new CustomEvent("change",{detail:o,bubbles:!0,composed:!0}))},!1),this.sub("uuid",t=>t&&this.updateImage()),this.sub("cdnUrl",t=>t&&this.updateImage())}};h(ot,"className","cloud-image-editor");ot.template=yr;ot.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var ti=class extends L{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(i){let t=this.$["*imageBox"];if(!t)return;if(i===""&&t.height<=y&&t.width<=y)return!0;let e=t.height<=y&&(i.includes("n")||i.includes("s")),r=t.width<=y&&(i.includes("e")||i.includes("w"));return e||r}_createBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i,o=this.ref["svg-el"],l=Y("mask",{id:"backdrop-mask"}),a=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),c=Y("rect",{x:t,y:e,width:r,height:n,fill:"black"});l.appendChild(a),l.appendChild(c);let u=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});o.appendChild(u),o.appendChild(l),this._backdropMask=l,this._backdropMaskInner=c}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i;this._backdropMaskInner&&kt(this._backdropMaskInner,{x:t,y:e,width:r,height:n})}_updateFrame(){let i=this.$["*cropBox"];if(!(!i||!this._frameGuides||!this._frameThumbs)){for(let t of Object.values(this._frameThumbs)){let{direction:e,pathNode:r,interactionNode:n,groupNode:o}=t,l=e==="",a=e.length===2,{x:c,y:u,width:d,height:p}=i;if(l){let f={x:c+d/3,y:u+p/3,width:d/3,height:p/3};kt(n,f)}else{let f=wt(Math.min(d,p)/(24*2+34)/2,0,1),{d:_,center:A}=a?$s(i,e,f):Ss(i,e,f),E=Math.max(Di*wt(Math.min(d,p)/Di/3,0,1),As);kt(n,{x:A[0]-E,y:A[1]-E,width:E*2,height:E*2}),kt(r,{d:_})}let m=this._shouldThumbBeDisabled(e);o.setAttribute("class",D("thumb",{"thumb--hidden":m,"thumb--visible":!m}))}kt(this._frameGuides,{x:i.x-1*.5,y:i.y-1*.5,width:i.width+1,height:i.height+1})}}_createThumbs(){let i={};for(let t=0;t<3;t++)for(let e=0;e<3;e++){let r=`${["n","","s"][t]}${["w","","e"][e]}`,n=Y("g");n.classList.add("thumb"),n.setAttribute("with-effects","");let o=Y("rect",{fill:"transparent"}),l=Y("path",{stroke:"currentColor",fill:"none","stroke-width":3});n.appendChild(l),n.appendChild(o),i[r]={direction:r,pathNode:l,interactionNode:o,groupNode:n},o.addEventListener("pointerdown",this._handlePointerDown.bind(this,r))}return i}_createGuides(){let i=Y("svg"),t=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"#000000","stroke-width":1,"stroke-opacity":.5});i.appendChild(t);for(let e=1;e<=2;e++){let r=Y("line",{x1:`${ee*e}%`,y1:"0%",x2:`${ee*e}%`,y2:"100%",stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}for(let e=1;e<=2;e++){let r=Y("line",{x1:"0%",y1:`${ee*e}%`,x2:"100%",y2:`${ee*e}%`,stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}return i.classList.add("guides","guides--semi-hidden"),i}_createFrame(){let i=this.ref["svg-el"],t=document.createDocumentFragment(),e=this._createGuides();t.appendChild(e);let r=this._createThumbs();for(let{groupNode:n}of Object.values(r))t.appendChild(n);i.appendChild(t),this._frameThumbs=r,this._frameGuides=e}_handlePointerDown(i,t){if(!this._frameThumbs)return;let e=this._frameThumbs[i];if(this._shouldThumbBeDisabled(i))return;let r=this.$["*cropBox"],{x:n,y:o}=this.ref["svg-el"].getBoundingClientRect(),l=t.x-n,a=t.y-o;this.$.dragging=!0,this._draggingThumb=e,this._dragStartPoint=[l,a],this._dragStartCrop={...r}}_handlePointerUp_(i){this._updateCursor(),this.$.dragging&&(i.stopPropagation(),i.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(i){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;i.stopPropagation(),i.preventDefault();let t=this.ref["svg-el"],{x:e,y:r}=t.getBoundingClientRect(),n=i.x-e,o=i.y-r,l=n-this._dragStartPoint[0],a=o-this._dragStartPoint[1],{direction:c}=this._draggingThumb,u=this._calcCropBox(c,[l,a]);u&&(this.$["*cropBox"]=u)}_calcCropBox(i,t){var c,u;let[e,r]=t,n=this.$["*imageBox"],o=(c=this._dragStartCrop)!=null?c:this.$["*cropBox"],l=(u=this.$["*cropPresetList"])==null?void 0:u[0],a=l?l.width/l.height:void 0;if(i===""?o=ks({rect:o,delta:[e,r],imageBox:n}):o=Os({rect:o,delta:[e,r],direction:i,aspectRatio:a,imageBox:n}),!Object.values(o).every(d=>Number.isFinite(d)&&d>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:o});return}return Bt(jt(o),this.$["*imageBox"])}_handleSvgPointerMove_(i){if(!this._frameThumbs)return;let t=Object.values(this._frameThumbs).find(e=>{if(this._shouldThumbBeDisabled(e.direction))return!1;let n=e.interactionNode.getBoundingClientRect(),o={x:n.x,y:n.y,width:n.width,height:n.height};return Ls(o,[i.x,i.y])});this._hoverThumb=t,this._updateCursor()}_updateCursor(){let i=this._hoverThumb;this.ref["svg-el"].style.cursor=i?Is(i.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(i){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:t})=>t).forEach(t=>{t.setAttribute("class",D("thumb",{"thumb--hidden":!i,"thumb--visible":i}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",i=>{i&&(this._guidesHidden=i.height<=y||i.width<=y,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",i=>{this._frameGuides&&this._frameGuides.setAttribute("class",D({"guides--hidden":this._guidesHidden,"guides--visible":!this._guidesHidden&&i,"guides--semi-hidden":!this._guidesHidden&&!i}))}),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)}};ti.template='';var _t=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.sub("title",t=>{this._titleEl&&(this._titleEl.style.display=t?"block":"none")}),this.sub("active",t=>{this.className=D({active:t,not_active:!t})}),this.sub("on.click",t=>{this.onclick=t})}};_t.template=`
{{title}}
`;function Lo(s){let i=s+90;return i=i>=360?0:i,i}function Uo(s,i){return s==="rotate"?Lo(i):["mirror","flip"].includes(s)?!i:null}var pe=class extends _t{initCallback(){super.initCallback(),this.defineAccessor("operation",i=>{i&&(this._operation=i,this.$.icon=i)}),this.$["on.click"]=i=>{let t=this.$["*cropperEl"].getValue(this._operation),e=Uo(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};var fe={FILTER:"filter",COLOR_OPERATION:"color_operation"},lt="original",ei=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":t=>{this.$["*faderEl"].set(t),this.$.value=t}})}setOperation(t,e){this._controlType=t==="filter"?fe.FILTER:fe.COLOR_OPERATION,this._operation=t,this._iconName=t,this._title=t.toUpperCase(),this._filter=e,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===lt?void 0:this.$.value,filter:this._filter===lt?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:t,zero:e}=rt[this._operation],[r,n]=t;this.$.min=r,this.$.max=n,this.$.zero=e;let o=this.$["*editorTransformations"][this._operation];if(this._controlType===fe.FILTER){let l=n;if(o){let{name:a,amount:c}=o;l=a===this._filter?c:n}this.$.value=l,this.$.defaultValue=l}if(this._controlType===fe.COLOR_OPERATION){let l=typeof o!="undefined"?o:e;this.$.value=l,this.$.defaultValue=l}}apply(){let t;this._controlType===fe.FILTER?this._filter===lt?t=null:t={name:this._filter,amount:this.$.value}:t=this.$.value;let e={...this.$["*editorTransformations"],[this._operation]:t};this.$["*editorTransformations"]=e}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",t=>{this._originalUrl=t}),this.sub("value",t=>{let e=`${this._filter||this._operation} ${t}`;this.$["*operationTooltip"]=e})}};ei.template=``;function me(s){let i=new Image;return{promise:new Promise((r,n)=>{i.src=s,i.onload=r,i.onerror=n}),image:i,cancel:()=>{i.naturalWidth===0&&(i.src=K)}}}function ge(s){let i=[];for(let n of s){let o=me(n);i.push(o)}let t=i.map(n=>n.image);return{promise:Promise.allSettled(i.map(n=>n.promise)),images:t,cancel:()=>{i.forEach(n=>{n.cancel()})}}}var Xt=class extends _t{constructor(){super(...arguments);h(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,r=Math.ceil(e*t),n=e>=2?"lightest":"normal",o=100,l={...this.$["*editorTransformations"]};return l[this._operation]=this._filter!==lt?{name:this._filter,amount:o}:void 0,O(this._originalUrl,P(Fe,Et(l),`quality/${n}`,`scale_crop/${r}x${r}/center`))}_observerCallback(t,e){if(t[0].isIntersecting){let n=this.proxyUrl(this._previewSrc()),o=this.ref["preview-el"],{promise:l,cancel:a}=me(n);this._cancelPreload=a,l.catch(c=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:c})}).finally(()=>{o.style.backgroundImage=`url(${n})`,o.setAttribute("loaded",""),e.unobserve(this)})}else this._cancelPreload&&this._cancelPreload()}initCallback(){super.initCallback(),this.$["on.click"]=e=>{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===lt,this.$.icon=this.$.isOriginal?"original":"slider"}),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("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 r=this.ref["icon-el"];r.style.opacity=e?"1":"0";let n=this.ref["preview-el"];e?n.style.opacity="0":n.style.backgroundImage&&(n.style.opacity="1")}),this.sub("*networkProblems",e=>{if(!e){let r=this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"];n.style.backgroundImage&&(n.style.backgroundImage="none",n.style.backgroundImage=`url(${r})`)}})}destroyCallback(){var t;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),this._cancelPreload&&this._cancelPreload()}};Xt.template=`
`;var _e=class extends _t{constructor(){super(...arguments);h(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=t=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.$.title=this.l10n(t))}),this.sub("*editorTransformations",t=>{if(!this._operation)return;let{zero:e}=rt[this._operation],r=t[this._operation],n=typeof r!="undefined"?r!==e:!1;this.$.active=n})}};var vr=(s,i)=>{let t,e,r;return(...n)=>{t?(clearTimeout(e),e=setTimeout(()=>{Date.now()-r>=i&&(s(...n),r=Date.now())},Math.max(i-(Date.now()-r),0))):(s(...n),r=Date.now(),t=!0)}};function Cr(s,i){let t={};for(let e of i){let r=s[e];(s.hasOwnProperty(e)||r!==void 0)&&(t[e]=r)}return t}function qt(s,i,t){let r=window.devicePixelRatio,n=Math.min(Math.ceil(i*r),3e3),o=r>=2?"lightest":"normal";return O(s,P(Fe,Et(t),`quality/${o}`,`stretch/off/-/resize/${n}x`))}function Ro(s){return s?[({dimensions:t,coords:e})=>[...t,...e].every(r=>Number.isInteger(r)&&Number.isFinite(r)),({dimensions:t,coords:e})=>t.every(r=>r>0)&&e.every(r=>r>=0)].every(t=>t(s)):!0}var ii=class extends L{constructor(){super(),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=I(this._commit.bind(this),300),this._handleResizeThrottled=vr(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 i=this.$["*editorTransformations"],t=Cr(i,Object.keys(this.$["*operations"])),e={...this.$["*operations"],...t};this.$["*operations"]=e}_initCanvas(){let i=this.ref["canvas-el"],t=i.getContext("2d"),e=this.offsetWidth,r=this.offsetHeight,n=window.devicePixelRatio;i.style.width=`${e}px`,i.style.height=`${r}px`,i.width=e*n,i.height=r*n,t==null||t.scale(n,n),this._canvas=i,this._ctx=t}_alignImage(){if(!this._isActive||!this.$.image)return;let i=this.$.image,t=this.$["*padding"],e=this.$["*operations"],{rotate:r}=e,n={width:this.offsetWidth,height:this.offsetHeight},o=zt({width:i.naturalWidth,height:i.naturalHeight},r),l;if(o.width>n.width-t*2||o.height>n.height-t*2){let a=o.width/o.height,c=n.width/n.height;if(a>c){let u=n.width-t*2,d=u/a,p=0+t,m=t+(n.height-t*2)/2-d/2;l={x:p,y:m,width:u,height:d}}else{let u=n.height-t*2,d=u*a,p=t+(n.width-t*2)/2-d/2,m=0+t;l={x:p,y:m,width:d,height:u}}}else{let{width:a,height:c}=o,u=t+(n.width-t*2)/2-a/2,d=t+(n.height-t*2)/2-c/2;l={x:u,y:d,width:a,height:c}}this.$["*imageBox"]=jt(l)}_alignCrop(){var d;let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,n=this.$["*editorTransformations"].crop,{width:o,x:l,y:a}=this.$["*imageBox"];if(n){let{dimensions:[p,m],coords:[f,_]}=n,{width:A}=zt(this._imageSize,r),E=o/A;i=Bt(jt({x:l+f*E,y:a+_*E,width:p*E,height:m*E}),this.$["*imageBox"])}let c=(d=this.$["*cropPresetList"])==null?void 0:d[0],u=c?c.width/c.height:void 0;if(!Us(i,t)||u&&!Rs(i,u)){let p=t.width/t.height,m=t.width,f=t.height;u&&(p>u?m=Math.min(t.height*u,t.width):f=Math.min(t.width/u,t.height)),i={x:t.x+t.width/2-m/2,y:t.y+t.height/2-f/2,width:m,height:f}}this.$["*cropBox"]=Bt(jt(i),this.$["*imageBox"])}_drawImage(){let i=this._ctx;if(!i)return;let t=this.$.image,e=this.$["*imageBox"],r=this.$["*operations"],{mirror:n,flip:o,rotate:l}=r,a=zt({width:e.width,height:e.height},l);i.save(),i.translate(e.x+e.width/2,e.y+e.height/2),i.rotate(l*Math.PI*-1/180),i.scale(n?-1:1,o?-1:1),i.drawImage(t,-a.width/2,-a.height/2,a.width,a.height),i.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let i=this._canvas;this._ctx.clearRect(0,0,i.width,i.height),this._drawImage()}_animateIn({fromViewer:i}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=D({active_from_viewer:i,active_from_editor:!i,inactive_to_editor:!1})}))}_getCropDimensions(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o}=t,{width:l,height:a}=zt(this._imageSize,r),{width:c,height:u}=i,d=n/l,p=o/a;return[wt(Math.round(c/d),1,l),wt(Math.round(u/p),1,a)]}_getCropTransformation(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o,x:l,y:a}=t,{width:c,height:u}=zt(this._imageSize,r),{x:d,y:p}=i,m=n/c,f=o/u,_=this._getCropDimensions(),A={dimensions:_,coords:[wt(Math.round((d-l)/m),0,c-_[0]),wt(Math.round((p-a)/f),0,u-_[1])]};if(!Ro(A)){console.error("Cropper is trying to create invalid crop object",{payload:A});return}if(!(_[0]===c&&_[1]===u))return A}_commit(){if(!this.isConnected)return;let i=this.$["*operations"],{rotate:t,mirror:e,flip:r}=i,n=this._getCropTransformation(),l={...this.$["*editorTransformations"],crop:n,rotate:t,mirror:e,flip:r};this.$["*editorTransformations"]=l}setValue(i,t){console.log(`Apply cropper operation [${i}=${t}]`),this.$["*operations"]={...this.$["*operations"],[i]:t},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(i){return this.$["*operations"][i]}async activate(i,{fromViewer:t}={}){if(!this._isActive){this._isActive=!0,this._imageSize=i,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:t})}catch(e){console.error("Failed to activate cropper",{error:e})}this._observer=new ResizeObserver(([e])=>{e.contentRect.width>0&&e.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:i=!1}={}){var t;this._isActive&&(!i&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=D({active_from_viewer:!1,active_from_editor:!1,inactive_to_editor:!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(t=this._observer)==null||t.disconnect())}_transitionToCrop(){let i=this._getCropDimensions(),t=Math.min(this.offsetWidth,i[0])/this.$["*cropBox"].width,e=Math.min(this.offsetHeight,i[1])/this.$["*cropBox"].height,r=Math.min(t,e),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,o=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${r}) translate(${(this.offsetWidth/2-n)/r}px, ${(this.offsetHeight/2-o)/r}px)`,this.style.transformOrigin=`${n}px ${o}px`}_transitionToImage(){let i=this.$["*cropBox"].x+this.$["*cropBox"].width/2,t=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${i}px ${t}px`}_reset(){this._isActive||(this.$.image=null)}_waitForImage(i,t){let e=this.offsetWidth;t={...t,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let r=this.proxyUrl(qt(i,e,t)),{promise:n,cancel:o,image:l}=me(r),a=this._handleImageLoading(r);return l.addEventListener("load",a,{once:!0}),l.addEventListener("error",a,{once:!0}),this._cancelPreload&&this._cancelPreload(),this._cancelPreload=o,n.then(()=>l).catch(c=>(console.error("Failed to load image",{error:c}),this.$["*networkProblems"]=!0,Promise.resolve(l)))}_handleImageLoading(i){let t="crop",e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",i=>{i||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var i;super.destroyCallback(),(i=this._observer)==null||i.disconnect()}};ii.template=``;function Gi(s,i,t){let e=Array(t);t--;for(let r=t;r>=0;r--)e[r]=Math.ceil((r*i+(t-r)*s)/t);return e}function Po(s){return s.reduce((i,t,e)=>er<=i&&i<=n);return s.map(r=>{let n=Math.abs(e[0]-e[1]),o=Math.abs(i-e[0])/n;return e[0]===r?i>t?1:1-o:e[1]===r?i>=t?o:1:0})}function No(s,i){return s.map((t,e)=>tn-o)}var Ki=class extends L{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=I(this._addKeypoint.bind(this),600),this.classList.add("inactive_to_cropper")}_handleImageLoading(i){let t=this._operation,e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let i of this._keypoints){let{image:t}=i;t&&(t.style.opacity=i.opacity.toString(),t.style.zIndex=i.zIndex.toString())}})}_imageSrc({url:i=this._url,filter:t=this._filter,operation:e,value:r}={}){let n={...this._transformations};e&&(n[e]=t?{name:t,amount:r}:r);let o=this.offsetWidth;return this.proxyUrl(qt(i,o,n))}_constructKeypoint(i,t){return{src:this._imageSrc({operation:i,value:t}),image:null,opacity:0,zIndex:0,value:t}}_isSame(i,t){return this._operation===i&&this._filter===t}_addKeypoint(i,t,e){let r=()=>!this._isSame(i,t)||this._value!==e||!!this._keypoints.find(a=>a.value===e);if(r())return;let n=this._constructKeypoint(i,e),o=new Image;o.src=n.src;let l=this._handleImageLoading(n.src);o.addEventListener("load",l,{once:!0}),o.addEventListener("error",l,{once:!0}),n.image=o,o.classList.add("fader-image"),o.addEventListener("load",()=>{if(r())return;let a=this._keypoints,c=a.findIndex(d=>d.value>e),u=c{this.$["*networkProblems"]=!0},{once:!0})}set(i){i=typeof i=="string"?parseInt(i,10):i,this._update(this._operation,i),this._addKeypointDebounced(this._operation,this._filter,i)}_update(i,t){this._operation=i,this._value=t;let{zero:e}=rt[i],r=this._keypoints.map(l=>l.value),n=Mo(r,t,e),o=No(r,e);for(let[l,a]of Object.entries(this._keypoints))a.opacity=n[l],a.zIndex=o[l];this._flush()}_createPreviewImage(){let i=new Image;return i.classList.add("fader-image","fader-image--preview"),i.style.opacity="0",i}async _initNodes(){let i=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&i.appendChild(this._previewImage);let t=document.createElement("div");i.appendChild(t);let e=this._keypoints.map(c=>c.src),{images:r,promise:n,cancel:o}=ge(e);r.forEach(c=>{let u=this._handleImageLoading(c.src);c.addEventListener("load",u),c.addEventListener("error",u)}),this._cancelLastImages=()=>{o(),this._cancelLastImages=void 0};let l=this._operation,a=this._filter;await n,this._isActive&&this._isSame(l,a)&&(this._container&&this._container.remove(),this._container=t,this._keypoints.forEach((c,u)=>{let d=r[u];d.classList.add("fader-image"),c.image=d,this._container.appendChild(d)}),this.appendChild(i),this._flush())}setTransformations(i){if(this._transformations=i,this._previewImage){let t=this._imageSrc(),e=this._handleImageLoading(t);this._previewImage.src=t,this._previewImage.addEventListener("load",e,{once:!0}),this._previewImage.addEventListener("error",e,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}preload({url:i,filter:t,operation:e,value:r}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=wr(e,r).map(a=>this._imageSrc({url:i,filter:t,operation:e,value:a})),{cancel:l}=ge(o);this._cancelBatchPreload=l}_setOriginalSrc(i){let t=this._previewImage||this._createPreviewImage();if(!this.contains(t)&&this.appendChild(t),this._previewImage=t,t.src===i){t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1});return}t.style.opacity="0";let e=this._handleImageLoading(i);t.addEventListener("error",e,{once:!0}),t.src=i,t.addEventListener("load",()=>{e(),t&&(t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1}))},{once:!0}),t.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}activate({url:i,operation:t,value:e,filter:r,fromViewer:n}){if(this._isActive=!0,this._hidden=!1,this._url=i,this._operation=t||"initial",this._value=e,this._filter=r,this._fromViewer=n,typeof e!="number"&&!r){let l=this._imageSrc({operation:t,value:e});this._setOriginalSrc(l),this._container&&this._container.remove();return}this._keypoints=wr(t,e).map(l=>this._constructKeypoint(t,l)),this._update(t,e),this._initNodes()}deactivate({hide:i=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),i&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=D({active_from_viewer:!1,active_from_cropper:!1,inactive_to_cropper:!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};var Do=1,si=class extends L{initCallback(){super.initCallback(),this.addEventListener("wheel",i=>{i.preventDefault();let{deltaY:t,deltaX:e}=i;Math.abs(e)>Do?this.scrollLeft+=e:this.scrollLeft+=t})}};si.template=" ";function Fo(s){return``}function Vo(s){return`
`}var ri=class extends L{constructor(){super();h(this,"_updateInfoTooltip",I(()=>{var o,l;let t=this.$["*editorTransformations"],e=this.$["*currentOperation"],r="",n=!1;if(this.$["*tabId"]===N.FILTERS)if(n=!0,this.$["*currentFilter"]&&((o=t==null?void 0:t.filter)==null?void 0:o.name)===this.$["*currentFilter"]){let a=((l=t==null?void 0:t.filter)==null?void 0:l.amount)||100;r=this.l10n(this.$["*currentFilter"])+" "+a}else r=this.l10n(lt);else if(this.$["*tabId"]===N.TUNING&&e){n=!0;let a=(t==null?void 0:t[e])||rt[e].zero;r=e+" "+a}n&&(this.$["*operationTooltip"]=r),this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",n)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":lt,"*currentOperation":null,"*tabId":N.CROP,showLoader:!1,filters:er,colorOperations:tr,cropOperations:ir,"*operationTooltip":null,"l10n.cancel":this.l10n("cancel"),"l10n.apply":this.l10n("apply"),"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:"sub-toolbar--top-hidden",visible:"sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"sub-toolbar--bottom-hidden",visible:"sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"tab-content--hidden",visible:"tab-content--visible"},"presence.tabToggleStyles":{hidden:"tab-toggle--hidden",visible:"tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"tab-toggles--hidden",visible:"tab-toggles--visible"},"on.cancel":()=>{this._cancelPreload&&this._cancelPreload(),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":t=>{let e=t.currentTarget.getAttribute("data-id");e&&this._activateTab(e,{fromViewer:!1})}},this._debouncedShowLoader=I(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===N.TUNING&&this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",!1)}_createOperationControl(t){let e=new _e;return e.operation=t,e}_createFilterControl(t){let e=new Xt;return e.filter=t,e}_createToggleControl(t){let e=new pe;return e.operation=t,e}_renderControlsList(t){let e=this.ref[`controls-list-${t}`],r=document.createDocumentFragment();t===N.CROP?this.$.cropOperations.forEach(n=>{let o=this._createToggleControl(n);r.appendChild(o)}):t===N.FILTERS?[lt,...this.$.filters].forEach(n=>{let o=this._createFilterControl(n);r.appendChild(o)}):t===N.TUNING&&this.$.colorOperations.forEach(n=>{let o=this._createOperationControl(n);r.appendChild(o)}),[...r.children].forEach((n,o)=>{o===r.childNodes.length-1&&n.classList.add("controls-list_last-item")}),e.innerHTML="",e.appendChild(r)}_activateTab(t,{fromViewer:e}){this.$["*tabId"]=t,t===N.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:e})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:e}),this.$["*cropperEl"].deactivate());for(let r of W){let n=r===t,o=this.ref[`tab-toggle-${r}`];o.active=n,n?(this._renderControlsList(t),this._syncTabIndicator()):this._unmountTabControls(r),this.$[`presence.tabContent.${r}`]=n}}_unmountTabControls(t){let e=this.ref[`controls-list-${t}`];e&&(e.innerHTML="")}_syncTabIndicator(){let t=this.ref[`tab-toggle-${this.$["*tabId"]}`],e=this.ref["tabs-indicator"];e.style.transform=`translateX(${t.offsetLeft}px)`}_preloadEditedImage(){if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let t=this.$["*imgContainerEl"].offsetWidth,e=this.proxyUrl(qt(this.$["*originalUrl"],t,this.$["*editorTransformations"]));this._cancelPreload&&this._cancelPreload();let{cancel:r}=ge([e]);this._cancelPreload=()=>{r(),this._cancelPreload=void 0}}}_showLoader(t){this.$.showLoader=t}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",t=>{t&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",t=>{var r;let e=(r=t==null?void 0:t.filter)==null?void 0:r.name;this.$["*currentFilter"]!==e&&(this.$["*currentFilter"]=e)}),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",t=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(t)}),this.sub("*loadingOperations",t=>{let e=!1;for(let[,r]of t.entries()){if(e)break;for(let[,n]of r.entries())if(n){e=!0;break}}this._debouncedShowLoader(e)}),this.sub("*showSlider",t=>{this.$["presence.subToolbar"]=t,this.$["presence.mainToolbar"]=!t}),this.sub("*tabList",t=>{this.$["presence.tabToggles"]=t.length>1;for(let e of W){this.$[`presence.tabToggle.${e}`]=t.includes(e);let r=this.ref[`tab-toggle-${e}`];r.style.gridColumn=t.indexOf(e)+1}t.includes(this.$["*tabId"])||this._activateTab(t[0],{fromViewer:!1})}),this._updateInfoTooltip()}};ri.template=`
{{*operationTooltip}}
${W.map(Vo).join("")}
${W.map(Fo).join("")}
`;var be=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},this.defineAccessor("active",i=>{i?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return D("icon",{icon_left:!this._iconReversed,icon_right:this._iconReversed,icon_hidden:this._iconHidden,icon_single:this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",i=>{this._iconSingle=!this.$.text,this._iconHidden=!i,this.$.iconCss=this._iconCss()}),this.sub("theme",i=>{i!=="custom"&&(this.className=i)}),this.sub("text",i=>{this._iconSingle=!1}),this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.hasAttribute("theme")||this.setAttribute("theme","default")}set reverse(i){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};be.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});be.template=`
{{text}}
`;var ni=class extends b{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let i=this.ref["line-el"];i.style.transition="initial",i.style.opacity="0",i.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",i=>{typeof i=="boolean"&&(i?this._start():this._stop())})}_start(){this._active=!0;let{width:i}=this.getBoundingClientRect(),t=this.ref["line-el"];t.style.transition="transform 1s",t.style.opacity="1",t.style.transform=`translateX(${i}px)`,t.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};ni.template=`
`;var oi={transition:"transition",visible:"visible",hidden:"hidden"},li=class extends b{constructor(){super(),this._visible=!1,this._visibleStyle=oi.visible,this._hiddenStyle=oi.hidden,this._externalTransitions=!1,this.defineAccessor("styles",i=>{i&&(this._externalTransitions=!0,this._visibleStyle=i.visible,this._hiddenStyle=i.hidden)}),this.defineAccessor("visible",i=>{typeof i=="boolean"&&(this._visible=i,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",gr(this,{[oi.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.setAttribute("hidden",""),this._externalTransitions||this.classList.add(oi.transition),this._handleVisible(),setTimeout(()=>this.removeAttribute("hidden"),0)}};li.template=" ";var ai=class extends b{constructor(){super();h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let t=parseInt(this.ref["input-el"].value,10);this._updateValue(t),this.$.onInput&&this.$.onInput(t)},"on.sliderChange":()=>{let t=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(t)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",e=>{this.$.disabled=e}),this.defineAccessor("min",e=>{this.$.min=e}),this.defineAccessor("max",e=>{this.$.max=e}),this.defineAccessor("defaultValue",e=>{this.$.defaultValue=e,this.ref["input-el"].value=e,this._updateValue(e)}),this.defineAccessor("zero",e=>{this._zero=e}),this.defineAccessor("onInput",e=>{e&&(this.$.onInput=e)}),this.defineAccessor("onChange",e=>{e&&(this.$.onChange=e)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)},0),this.sub("disabled",e=>{let r=this.ref["input-el"];e?r.setAttribute("disabled","disabled"):r.removeAttribute("disabled")});let t=this.ref["input-el"];t.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),t.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(t){this._updateZeroDot(t);let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(t-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${o}px)`})}_updateZeroDot(t){if(!this._zeroDotEl)return;t===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="0.2";let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${o}px)`})}_updateSteps(){let e=this.ref["steps-el"],{width:r}=e.getBoundingClientRect(),n=Math.ceil(r/2),o=Math.ceil(n/15)-2;if(this._stepsCount===o)return;let l=document.createDocumentFragment(),a=document.createElement("div"),c=document.createElement("div");a.className="minor-step",c.className="border-step",l.appendChild(c);for(let d=0;d
`;var Yi=class extends v{constructor(){super();h(this,"activityType",g.activities.CLOUD_IMG_EDIT);this.init$={...this.init$,cdnUrl:null}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.sub("*focusedEntry",t=>{t&&(this.entry=t,this.entry.subscribe("cdnUrl",e=>{e&&(this.$.cdnUrl=e)}))}),this.subConfigValue("cropPreset",t=>{this._instance&&this._instance.getAttribute("crop-preset")!==t&&this._instance.setAttribute("crop-preset",t)}),this.subConfigValue("cloudImageEditorTabs",t=>{this._instance&&this._instance.getAttribute("tabs")!==t&&this._instance.setAttribute("tabs",t)})}handleApply(t){if(!this.entry)return;let e=t.detail;this.entry.setMultipleValues({cdnUrl:e.cdnUrl,cdnUrlModifiers:e.cdnUrlModifiers}),this.historyBack()}handleCancel(){this.historyBack()}mountEditor(){let t=new ot,e=this.$.cdnUrl,r=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;t.setAttribute("ctx-name",this.ctxName),t.setAttribute("cdn-url",e),r&&t.setAttribute("crop-preset",r),n&&t.setAttribute("tabs",n),t.addEventListener("apply",o=>this.handleApply(o)),t.addEventListener("cancel",()=>this.handleCancel()),this.innerHTML="",this.appendChild(t),this._mounted=!0,this._instance=t}unmountEditor(){this._instance=void 0,this.innerHTML=""}};var Bo=function(s){return s.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},Tr=function(s,i="i"){let t=s.split("*").map(Bo);return new RegExp("^"+t.join(".+")+"$",i)};var zo=s=>Object.keys(s).reduce((t,e)=>{let r=s[e],n=Object.keys(r).reduce((o,l)=>{let a=r[l];return o+`${l}: ${a};`},"");return t+`${e}{${n}}`},"");function Er({textColor:s,backgroundColor:i,linkColor:t,linkColorHover:e,shadeColor:r}){let n=`solid 1px ${r}`;return zo({body:{color:s,"background-color":i},".side-bar":{background:"inherit","border-right":n},".main-content":{background:"inherit"},".main-content-header":{background:"inherit"},".main-content-footer":{background:"inherit"},".list-table-row":{color:"inherit"},".list-table-row:hover":{background:r},".list-table-row .list-table-cell-a, .list-table-row .list-table-cell-b":{"border-top":n},".list-table-body .list-items":{"border-bottom":n},".bread-crumbs a":{color:t},".bread-crumbs a:hover":{color:e},".main-content.loading":{background:`${i} url(/static/images/loading_spinner.gif) center no-repeat`,"background-size":"25px 25px"},".list-icons-item":{"background-color":r},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a":{color:t},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a:hover":{color:e},".side-bar-menu a":{color:t},".side-bar-menu a:hover":{color:e},".source-gdrive .side-bar-menu .current, .source-gdrive .side-bar-menu a:hover, .source-gphotos .side-bar-menu .current, .source-gphotos .side-bar-menu a:hover":{color:e},".source-vk .side-bar-menu a":{color:t},".source-vk .side-bar-menu a:hover":{color:e,background:"none"}})}var At={};window.addEventListener("message",s=>{let i;try{i=JSON.parse(s.data)}catch{return}if((i==null?void 0:i.type)in At){let t=At[i.type];for(let[e,r]of t)s.source===e&&r(i)}});var xr=function(s,i,t){s in At||(At[s]=[]),At[s].push([i,t])},Ar=function(s,i){s in At&&(At[s]=At[s].filter(t=>t[0]!==i))};function $r(s){let i=[];for(let[t,e]of Object.entries(s))e==null||typeof e=="string"&&e.length===0||i.push(`${t}=${encodeURIComponent(e)}`);return i.join("&")}var ci=class extends v{constructor(){super();h(this,"activityType",g.activities.EXTERNAL);h(this,"_iframe",null);h(this,"updateCssData",()=>{this.isActivityActive&&(this._inheritedUpdateCssData(),this.applyStyles())});h(this,"_inheritedUpdateCssData",this.updateCssData);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],counter:0,onDone:()=>{for(let t of this.$.selectedList){let e=this.extractUrlFromMessage(t),{filename:r}=t,{externalSourceType:n}=this.activityParams;this.addFileFromUrl(e,{fileName:r,source:n})}this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()}}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:t}=this.activityParams;this.set$({activityCaption:`${t==null?void 0:t[0].toUpperCase()}${t==null?void 0:t.slice(1)}`,activityIcon:t}),this.mountIframe()}}),this.sub("*currentActivity",t=>{t!==this.activityType&&this.unmountIframe()}),this.sub("selectedList",t=>{this.$.counter=t.length})}extractUrlFromMessage(t){if(t.alternatives){let e=M(this.cfg.externalSourcesPreferredTypes);for(let r of e){let n=Tr(r);for(let[o,l]of Object.entries(t.alternatives))if(n.test(o))return l}}return t.url}sendMessage(t){var e,r;(r=(e=this._iframe)==null?void 0:e.contentWindow)==null||r.postMessage(JSON.stringify(t),"*")}async handleFileSelected(t){this.$.selectedList=[...this.$.selectedList,t]}handleIframeLoad(){this.applyStyles()}getCssValue(t){return window.getComputedStyle(this).getPropertyValue(t).trim()}applyStyles(){let t={backgroundColor:this.getCssValue("--clr-background-light"),textColor:this.getCssValue("--clr-txt"),shadeColor:this.getCssValue("--clr-shade-lv1"),linkColor:"#157cfc",linkColorHover:"#3891ff"};this.sendMessage({type:"embed-css",style:Er(t)})}remoteUrl(){var l,a;let t=this.cfg.pubkey,e=(!1).toString(),{externalSourceType:r}=this.activityParams,n={lang:((a=(l=this.getCssData("--l10n-locale-name"))==null?void 0:l.split("-"))==null?void 0:a[0])||"en",public_key:t,images_only:e,pass_window_open:!1,session_key:this.cfg.remoteTabSessionKey},o=new URL(this.cfg.socialBaseUrl);return o.pathname=`/window3/${r}`,o.search=$r(n),o.toString()}mountIframe(){let t=Zt({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});t.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(t),xr("file-selected",t.contentWindow,this.handleFileSelected.bind(this)),this._iframe=t,this.$.selectedList=[]}unmountIframe(){this._iframe&&Ar("file-selected",this._iframe.contentWindow),this.ref.iframeWrapper.innerHTML="",this._iframe=null,this.$.selectedList=[],this.$.counter=0}};ci.template=`
{{activityCaption}}
{{counter}}
`;var ye=class extends b{setCurrentTab(i){if(!i)return;[...this.ref.context.querySelectorAll("[tab-ctx]")].forEach(e=>{e.getAttribute("tab-ctx")===i?e.removeAttribute("hidden"):e.setAttribute("hidden","")});for(let e in this._tabMap)e===i?this._tabMap[e].setAttribute("current",""):this._tabMap[e].removeAttribute("current")}initCallback(){super.initCallback(),this._tabMap={},this.defineAccessor("tab-list",i=>{if(!i)return;M(i).forEach(e=>{let r=Zt({tag:"div",attributes:{class:"tab"},properties:{onclick:()=>{this.setCurrentTab(e)}}});r.textContent=this.l10n(e),this.ref.row.appendChild(r),this._tabMap[e]=r})}),this.defineAccessor("default",i=>{this.setCurrentTab(i)}),this.hasAttribute("default")||this.setCurrentTab(Object.keys(this._tabMap)[0])}};ye.bindAttributes({"tab-list":null,default:null});ye.template=`
`;var Gt=class extends v{constructor(){super();h(this,"processInnerHtml",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return Gt.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,yi(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var e,r;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(l=>l.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let l of n){let a=document.createElement("input");a.type="hidden",a.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,a.value=l!=null?l:"",this._dynamicInputsContainer.appendChild(a)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let l=o.find(d=>!d.isValid),a=(r=l==null?void 0:l.validationErrorMessage)!=null?r:(e=l==null?void 0:l.uploadError)==null?void 0:e.message,c=this.$["*message"];c=c!=null&&c.isError?`${c.caption}. ${c.text}`:void 0;let u=a!=null?a:c;u?this._validationInputElement.setCustomValidity(u):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(l=>l.isUploaded&&l.isValid)){this.$.output={groupData:void 0,files:t};return}let r=this.getUploadClientOptions(),n=t.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=await Ts(n,r);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};Gt.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var Zi=class extends g{};var hi=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:t=>{var e;t.preventDefault(),t.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((e=this.$.options.find(r=>r.value==this.value))==null?void 0:e.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",t=>{var r;this.$.currentText=((r=t==null?void 0:t[0])==null?void 0:r.text)||"";let e="";t==null||t.forEach(n=>{e+=``}),this.$.selectHtml=e})}};hi.template=``;var q={PLAY:"play",PAUSE:"pause",FS_ON:"fullscreen-on",FS_OFF:"fullscreen-off",VOL_ON:"unmute",VOL_OFF:"mute",CAP_ON:"captions",CAP_OFF:"captions-off"},Sr={requestFullscreen:s=>{s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen&&s.webkitRequestFullscreen()},exitFullscreen:()=>{document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}},Q=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,src:"",ppIcon:q.PLAY,fsIcon:q.FS_ON,volIcon:q.VOL_ON,capIcon:q.CAP_OFF,totalTime:"00:00",currentTime:"00:00",progressCssWidth:"0",hasSubtitles:!1,volumeDisabled:!1,volumeValue:0,onPP:()=>{this.togglePlay()},onFs:()=>{this.toggleFullscreen()},onCap:()=>{this.toggleCaptions()},onMute:()=>{this.toggleSound()},onVolChange:t=>{let e=parseFloat(t.currentTarget.$.value);this.setVolume(e)},progressClicked:t=>{let e=this.progress.getBoundingClientRect();this._video.currentTime=this._video.duration*(t.offsetX/e.width)}})}togglePlay(){this._video.paused||this._video.ended?this._video.play():this._video.pause()}toggleFullscreen(){(document.fullscreenElement||document.webkitFullscreenElement)===this?Sr.exitFullscreen():Sr.requestFullscreen(this)}toggleCaptions(){this.$.capIcon===q.CAP_OFF?(this.$.capIcon=q.CAP_ON,this._video.textTracks[0].mode="showing",window.localStorage.setItem(Q.is+":captions","1")):(this.$.capIcon=q.CAP_OFF,this._video.textTracks[0].mode="hidden",window.localStorage.removeItem(Q.is+":captions"))}toggleSound(){this.$.volIcon===q.VOL_ON?(this.$.volIcon=q.VOL_OFF,this.$.volumeDisabled=!0,this._video.muted=!0):(this.$.volIcon=q.VOL_ON,this.$.volumeDisabled=!1,this._video.muted=!1)}setVolume(t){window.localStorage.setItem(Q.is+":volume",t);let e=t?t/100:0;this._video.volume=e}get progress(){return this.ref.progress}_getUrl(t){return t.includes("/")?t:`https://ucarecdn.com/${t}/`}_desc2attrs(t){let e=[];for(let r in t){let n=r==="src"?this._getUrl(t[r]):t[r];e.push(`${r}="${n}"`)}return e.join(" ")}_timeFmt(t){let e=new Date(Math.round(t)*1e3);return[e.getMinutes(),e.getSeconds()].map(r=>r<10?"0"+r:r).join(":")}_initTracks(){[...this._video.textTracks].forEach(t=>{t.mode="hidden"}),window.localStorage.getItem(Q.is+":captions")&&this.toggleCaptions()}_castAttributes(){let t=["autoplay","loop","muted"];[...this.attributes].forEach(e=>{t.includes(e.name)&&this._video.setAttribute(e.name,e.value)})}initCallback(){super.initCallback(),this._video=this.ref.video,this._castAttributes(),this._video.addEventListener("play",()=>{this.$.ppIcon=q.PAUSE,this.setAttribute("playback","")}),this._video.addEventListener("pause",()=>{this.$.ppIcon=q.PLAY,this.removeAttribute("playback")}),this.addEventListener("fullscreenchange",e=>{console.log(e),document.fullscreenElement===this?this.$.fsIcon=q.FS_OFF:this.$.fsIcon=q.FS_ON}),this.sub("src",e=>{if(!e)return;let r=this._getUrl(e);this._video.src=r}),this.sub("video",async e=>{if(!e)return;let r=await(await window.fetch(this._getUrl(e))).json();r.poster&&(this._video.poster=this._getUrl(r.poster));let n="";r==null||r.sources.forEach(o=>{n+=``}),r.tracks&&(r.tracks.forEach(o=>{n+=``}),this.$.hasSubtitles=!0),this._video.innerHTML+=n,this._initTracks(),console.log(r)}),this._video.addEventListener("loadedmetadata",e=>{this.$.currentTime=this._timeFmt(this._video.currentTime),this.$.totalTime=this._timeFmt(this._video.duration)}),this._video.addEventListener("timeupdate",e=>{let r=Math.round(100*(this._video.currentTime/this._video.duration));this.$.progressCssWidth=r+"%",this.$.currentTime=this._timeFmt(this._video.currentTime)});let t=window.localStorage.getItem(Q.is+":volume");if(t){let e=parseFloat(t);this.setVolume(e),this.$.volumeValue=e}}};Q.template=`
{{currentTime}} / {{totalTime}}
`;Q.bindAttributes({video:"video",src:"src"});var jo="css-src";function ui(s){return class extends s{constructor(){super(...arguments);h(this,"renderShadow",!0);h(this,"pauseRender",!0);h(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),Ae({element:this,attribute:jo,onSuccess:t=>{this.attachShadow({mode:"open"});let e=document.createElement("link");e.rel="stylesheet",e.type="text/css",e.href=t,e.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(e)},onTimeout:()=>{console.error("Attribute `css-src` is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}var ve=class extends ui(b){};var di=class extends b{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};h(di,"template",`Powered by Uploadcare`);var $t=class extends ve{constructor(){super(...arguments);h(this,"requireCtxName",!0);h(this,"init$",Ue(this));h(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};var pi=class extends $t{};pi.template=``;var fi=class extends $t{constructor(){super(...arguments);h(this,"pauseRender",!0)}shadowReadyCallback(){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"]=g.activities.UPLOAD_LIST:this.$["*currentActivity"]=t.initActivity||g.activities.START_FROM}),this.subConfigValue("sourceList",e=>{e!=="local"&&(this.cfg.sourceList="local")}),this.subConfigValue("confirmUpload",e=>{e!==!1&&(this.cfg.confirmUpload=!1)})}};fi.template=``;var mi=class extends $t{constructor(){super(),this.init$={...this.init$,couldBackHistory:!1}}shadowReadyCallback(){let i=this.ref.uBlock;this.sub("*currentActivity",t=>{t||(this.$["*currentActivity"]=i.initActivity||g.activities.START_FROM)}),this.sub("*uploadList",t=>{(t==null?void 0:t.length)>0&&this.$["*currentActivity"]===(i.initActivity||g.activities.START_FROM)&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}),this.sub("*history",t=>this.$.couldBackHistory=t.length>1)}};mi.template=``;var Ji=class extends ui(ot){shadowReadyCallback(){this.__shadowReady=!0,this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async initEditor(){this.__shadowReady&&await super.initEditor()}};function Qi(s){for(let i in s){let t=[...i].reduce((e,r)=>(r.toUpperCase()===r&&(r="-"+r.toLowerCase()),e+=r),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),s[i].reg&&s[i].reg(t)}}var ts="LR";async function Ho(s,i=!1){return new Promise((t,e)=>{if(typeof document!="object"){t(null);return}if(typeof window=="object"&&window[ts]){t(window[ts]);return}let r=document.createElement("script");r.async=!0,r.src=s,r.onerror=()=>{e()},r.onload=()=>{let n=window[ts];i&&Qi(n),t(n)},document.head.appendChild(r)})}export{g as ActivityBlock,Zi as ActivityHeader,Nt as BaseComponent,b as Block,Ke as CameraSource,Ji as CloudImageEditor,Yi as CloudImageEditorActivity,ot as CloudImageEditorBlock,To as Config,Ze as ConfirmationDialog,di as Copyright,ti as CropFrame,$ as Data,Gt as DataOutput,ae as DropArea,pe as EditorCropButtonControl,Xt as EditorFilterControl,ii as EditorImageCropper,Ki as EditorImageFader,_e as EditorOperationControl,si as EditorScroller,ei as EditorSlider,ri as EditorToolbar,ci as ExternalSource,gt as FileItem,de as FilePreview,mi as FileUploaderInline,fi as FileUploaderMinimal,pi as FileUploaderRegular,ne as Icon,Bi as Img,ni as LineLoaderUi,be as LrBtnUi,Xe as MessageBox,ue as Modal,Ns as PACKAGE_NAME,Ds as PACKAGE_VERSION,li as PresenceToggle,Qe as ProgressBar,Je as ProgressBarCommon,hi as Select,ve as ShadowWrapper,le as SimpleBtn,ai as SliderUi,ce as SourceBtn,Hi as SourceList,He as StartFrom,ye as Tabs,ko as UploadCtxProvider,Ye as UploadDetails,qe as UploadList,v as UploaderBlock,Ge as UrlSource,Q as Video,Ho as connectBlocksFrom,Qi as registerBlocks,ui as shadowed,ut as toKebabCase}; \ No newline at end of file +`,"\\n"),i=Gr(i),i=Mt+i+Mt);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${s}`)}}var is=0,Pt=null,ht=null,bt=class extends HTMLElement{constructor(){super(),bi(this,"updateCssData",()=>{var s;this.dropCssDataCache(),(s=this.__boundCssProps)==null||s.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 bt}initCallback(){}__initCallback(){var s;this.__initialized||(this.__initialized=!0,(s=this.initCallback)==null||s.call(this))}render(s,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let r=this.getAttribute(C.USE_TPL);if(r){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(r))||document.querySelector(r);o?s=o.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)t=s;else if((s==null?void 0:s.constructor)===String){let r=document.createElement("template");r.innerHTML=s,t=r.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let r of this.tplProcessors)r(t,this)}let e=()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()};if(this.constructor.__shadowStylesUrl){i=!0;let r=document.createElement("link");r.rel="stylesheet",r.href=this.constructor.__shadowStylesUrl,r.onload=e,this.shadowRoot.prepend(r)}else e()}addTemplateProcessor(s){this.tplProcessors.add(s)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=Yt.generate(),this.style.setProperty(C.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(C.CSS_CTX_PROP,!0)}get ctxName(){var s;let i=((s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=$.registerCtx({},this)),this.__localCtx}get nodeCtx(){return $.getCtx(this.ctxName,!1)||$.registerCtx({},this.ctxName)}static __parseProp(s,i){let t,e;if(s.startsWith(C.EXT_DATA_CTX_PRFX))t=i.nodeCtx,e=s.replace(C.EXT_DATA_CTX_PRFX,"");else if(s.includes(C.NAMED_DATA_CTX_SPLTR)){let r=s.split(C.NAMED_DATA_CTX_SPLTR);t=$.getCtx(r[0]),e=r[1]}else t=i.localCtx,e=s;return{ctx:t,name:e}}sub(s,i,t=!0){let e=n=>{this.isConnected&&i(n)},r=bt.__parseProp(s,this);r.ctx.has(r.name)?this.allSubs.add(r.ctx.sub(r.name,e,t)):window.setTimeout(()=>{this.allSubs.add(r.ctx.sub(r.name,e,t))})}notify(s){let i=bt.__parseProp(s,this);i.ctx.notify(i.name)}has(s){let i=bt.__parseProp(s,this);return i.ctx.has(i.name)}add(s,i,t=!1){let e=bt.__parseProp(s,this);e.ctx.add(e.name,i,t)}add$(s,i=!1){for(let t in s)this.add(t,s[t],i)}get $(){if(!this.__stateProxy){let s=Object.create(null);this.__stateProxy=new Proxy(s,{set:(i,t,e)=>{let r=bt.__parseProp(t,this);return r.ctx.pub(r.name,e),!0},get:(i,t)=>{let e=bt.__parseProp(t,this);return e.ctx.read(e.name)}})}return this.__stateProxy}set$(s,i=!1){for(let t in s){let e=s[t];i||![String,Number,Boolean].includes(e==null?void 0:e.constructor)?this.$[t]=e:this.$[t]!==e&&(this.$[t]=e)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(C.CTX_OWNER_ATTR)&&this.getAttribute(C.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let s=this.constructor.__attrDesc;if(s)for(let i of Object.values(s))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(C.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(C.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(C.NAMED_DATA_CTX_SPLTR)){let t=i.split(C.NAMED_DATA_CTX_SPLTR),e=t[0].trim(),r=t[1].trim();if(e&&r){let n=$.getCtx(e,!1);n||(n=$.registerCtx({},e)),n.add(r,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var s;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim();if(i&&this.style.setProperty(C.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[C.SET_LATER_KEY]){for(let t in this[C.SET_LATER_KEY])rs(this,t,this[C.SET_LATER_KEY][t]);delete this[C.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of Hr)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${C.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let r=this.constructor.__rootStylesLink.cloneNode(!0);r.setAttribute(C.ROOT_STYLE_ATTR_NAME,this.constructor.is),r.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(r):t.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);ht==null||ht.delete(this.updateCssData),ht!=null&&ht.size||(Pt==null||Pt.disconnect(),Pt=null,ht=null)},100)))}static reg(s,i=!1){s||(is++,s=`${C.AUTO_TAG_PRFX}-${is}`),this.__tag=s;let t=window.customElements.get(s);if(t){!i&&t!==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(` `));return}window.customElements.define(s,i?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,i,t){var e;if(i===t)return;let r=(e=this.constructor.__attrDesc)==null?void 0:e[s];r?this.__dataCtxInitialized?this.$[r]=t:this.init$[r]=t:this[s]=t}getCssData(s,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(s)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(s).trim();try{this.__cssDataCache[s]=Kr(t)}catch{!i&&console.warn(`CSS Data error: ${s}`),this.__cssDataCache[s]=null}}return this.__cssDataCache[s]}__extractCssName(s){return s.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){ht||(ht=new Set),ht.add(this.updateCssData),Pt||(Pt=new MutationObserver(s=>{s[0].type==="attributes"&&ht.forEach(i=>{i()})}),Pt.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(s,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(s);let t=this.getCssData(this.__extractCssName(s),!0);t===null&&(t=i),this.add(s,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(s,i,t){let e="__"+s;this[e]=this[s],Object.defineProperty(this,s,{set:r=>{this[e]=r,t?window.setTimeout(()=>{i==null||i(r)}):i==null||i(r)},get:()=>this[e]}),this[s]=this[e]}static set shadowStyles(s){let i=new Blob([s],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(s){if(!this.__rootStylesLink){let i=new Blob([s],{type:"text/css"}),t=URL.createObjectURL(i),e=document.createElement("link");e.href=t,e.rel="stylesheet",this.__rootStylesLink=e}}},Nt=bt;bi(Nt,"template");var _i=class{static _print(s){console.warn(s)}static setDefaultTitle(s){this.defaultTitle=s}static setRoutingMap(s){Object.assign(this.appMap,s);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}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(t=>{if(t.includes("?"))s.route=t.replace("?","");else if(t.includes("=")){let e=t.split("=");s.options[e[0]]=decodeURI(e[1])}else s.options[t]=!0}),s}static notify(){let s=this.readAddressBar(),i=this.appMap[s.route];if(i&&i.title&&(document.title=i.title),s.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${s.route}" not found...`);return}let t=new CustomEvent(_i.routingEventName,{detail:{route:s.route,options:Object.assign(i||{},s.options)}});window.dispatchEvent(t)}static reflect(s,i={}){let t=this.appMap[s];if(!t){this._print("Wrong route: "+s);return}let e="?"+s;for(let n in i)i[n]===!0?e+=this.separator+n:e+=this.separator+n+`=${i[n]}`;let r=t.title||this.defaultTitle||"";window.history.pushState(null,r,e),document.title=r}static applyRoute(s,i={}){this.reflect(s,i),this.notify()}static setSeparator(s){this._separator=s}static get separator(){return this._separator||"&"}static createRouterData(s,i){this.setRoutingMap(i);let t=$.registerCtx({route:null,options:null,title:null},s);return window.addEventListener(this.routingEventName,e=>{var r;t.multiPub({route:e.detail.route,options:e.detail.options,title:((r=e.detail.options)==null?void 0:r.title)||this.defaultTitle||""})}),_i.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};_i.appMap=Object.create(null);function yi(s,i){for(let t in i)t.includes("-")?s.style.setProperty(t,i[t]):s.style[t]=i[t]}function Yr(s,i){for(let t in i)i[t].constructor===Boolean?i[t]?s.setAttribute(t,""):s.removeAttribute(t):s.setAttribute(t,i[t])}function Zt(s={tag:"div"}){let i=document.createElement(s.tag);if(s.attributes&&Yr(i,s.attributes),s.styles&&yi(i,s.styles),s.properties)for(let t in s.properties)i[t]=s.properties[t];return s.processors&&s.processors.forEach(t=>{t(i)}),s.children&&s.children.forEach(t=>{let e=Zt(t);i.appendChild(e)}),i}var ns="idb-store-ready",Zr="symbiote-db",Jr="symbiote-idb-update_",Qr=class{_notifyWhenReady(s=null){window.dispatchEvent(new CustomEvent(ns,{detail:{dbName:this.name,storeName:this.storeName,event:s}}))}get _updEventName(){return Jr+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,i){this.name=s,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=e=>{this._notifyWhenReady(e)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async r=>{r(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(s){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(s);return new Promise((e,r)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?e(n.target.result._value):(e(null),console.warn(`IDB: cannot read "${s}"`))},t.onerror=n=>{r(n)}})}write(s,i,t=!1){let e={_key:s,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(e);return new Promise((o,l)=>{n.onsuccess=a=>{t||this._notifySubscribers(s),o(a.target.result)},n.onerror=a=>{l(a)}})}delete(s,i=!1){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(s);return new Promise((r,n)=>{e.onsuccess=o=>{i||this._notifySubscribers(s),r(o)},e.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,e)=>{i.onsuccess=r=>{let n=r.target.result;t(n.map(o=>o._value))},i.onerror=r=>{e(r)}})}subscribe(s,i){this._subscriptionsMap[s]||(this._subscriptionsMap[s]=new Set);let t=this._subscriptionsMap[s];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[s]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,os.clear(this.name)}},os=class{static get readyEventName(){return ns}static open(s=Zr,i="store"){let t=s+"/"+i;return this._reg[t]||(this._reg[t]=new Qr(s,i)),this._reg[t]}static clear(s){window.indexedDB.deleteDatabase(s);for(let i in this._reg)i.split("/")[0]===s&&delete this._reg[i]}};bi(os,"_reg",Object.create(null));var S=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),tn=Object.freeze({[S.UPLOAD_START]:"LR_UPLOAD_START",[S.REMOVE]:"LR_REMOVE",[S.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[S.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[S.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[S.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[S.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[S.DATA_OUTPUT]:"LR_DATA_OUTPUT",[S.DONE_FLOW]:"LR_DONE_FLOW",[S.INIT_FLOW]:"LR_INIT_FLOW"}),Te=class{constructor(i){h(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var r;(r=this._target)==null||r.dispatchEvent(new CustomEvent(i,{detail:t}));let e=tn[i];window.dispatchEvent(new CustomEvent(e,{detail:{ctx:this._getCtxName(),type:e,data:t}}))}emit(i,t,{debounce:e}={}){if(typeof e!="number"&&!e){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let r=typeof e=="number"?e:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},r);this._timeoutStore.set(i,n)}};function I(s,i){let t,e=(...r)=>{clearTimeout(t),t=setTimeout(()=>s(...r),i)};return e.cancel=()=>{clearTimeout(t)},e}var en="--uploadcare-blocks-window-height",Ee="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function vi(){return typeof window[Ee]=="undefined"?!1:!!window[Ee]}function ls(){if(vi())return;let s=()=>{document.documentElement.style.setProperty(en,`${window.innerHeight}px`),window[Ee]=!0},i=I(s,100);return window.addEventListener("resize",i,{passive:!0}),s(),()=>{window[Ee]=!1,window.removeEventListener("resize",i)}}var xe=(s,i)=>new Intl.PluralRules(s).select(i);var sn=s=>s,Ci="{{",cs="}}",as="plural:";function Jt(s,i,t={}){var o;let{openToken:e=Ci,closeToken:r=cs,transform:n=sn}=t;for(let l in i){let a=(o=i[l])==null?void 0:o.toString();s=s.replaceAll(e+l+r,typeof a=="string"?n(a):a)}return s}function hs(s){let i=[],t=s.indexOf(Ci);for(;t!==-1;){let e=s.indexOf(cs,t),r=s.substring(t+2,e);if(r.startsWith(as)){let n=s.substring(t+2,e).replace(as,""),o=n.substring(0,n.indexOf("(")),l=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:r,pluralKey:o,countVariable:l})}t=s.indexOf(Ci,e)}return i}var ut=s=>{var i;return(i=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:i.map(t=>t.toLowerCase()).join("-")};var Ae=({element:s,attribute:i,onSuccess:t,onTimeout:e,timeout:r=300})=>{let n=setTimeout(()=>{a.disconnect(),e()},r),o=c=>{let u=s.getAttribute(i);c.type==="attributes"&&c.attributeName===i&&u!==null&&(clearTimeout(n),a.disconnect(),t(u))},l=s.getAttribute(i);l!==null&&(clearTimeout(n),t(l));let a=new MutationObserver(c=>{let u=c[c.length-1];o(u)});a.observe(s,{attributes:!0,attributeFilter:[i]})};var us=new Set;function Qt(s){us.has(s)||(us.add(s),console.warn(s))}function ds(s){return Object.prototype.toString.call(s)==="[object Object]"}var rn=/\W|_/g;function nn(s){return s.split(rn).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}function ps(s,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(s)?s.map(t=>ft(t,{ignoreKeys:i})):s}function ft(s,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(s))return ps(s,{ignoreKeys:i});if(!ds(s))return s;let t={};for(let e of Object.keys(s)){let r=s[e];if(i.includes(e)){t[e]=r;continue}ds(r)?r=ft(r,{ignoreKeys:i}):Array.isArray(r)&&(r=ps(r,{ignoreKeys:i})),t[nn(e)]=r}return t}var on=s=>new Promise(i=>setTimeout(i,s));function Si({libraryName:s,libraryVersion:i,userAgent:t,publicKey:e="",integration:r=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:e,libraryName:s,libraryVersion:i,languageName:n,integration:r});let o=[s,i,e].filter(Boolean).join("/"),l=[n,r].filter(Boolean).join("; ");return`${o} (${l})`}var ln={factor:2,time:100};function an(s,i=ln){let t=0;function e(r){let n=Math.round(i.time*i.factor**t);return r({attempt:t,retry:l=>on(l!=null?l:n).then(()=>(t+=1,e(r)))})}return e(s)}var Dt=class extends Error{constructor(t){super();h(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,Dt.prototype),this.originalProgressEvent=t}},Se=(s,i)=>{s&&(s.aborted?Promise.resolve().then(i):s.addEventListener("abort",()=>i(),{once:!0}))},yt=class extends Error{constructor(t="Request canceled"){super(t);h(this,"isCancel",!0);Object.setPrototypeOf(this,yt.prototype)}},cn=500,ms=({check:s,interval:i=cn,timeout:t,signal:e})=>new Promise((r,n)=>{let o,l;Se(e,()=>{o&&clearTimeout(o),n(new yt("Poll cancelled"))}),t&&(l=setTimeout(()=>{o&&clearTimeout(o),n(new yt("Timed out"))},t));let a=()=>{try{Promise.resolve(s(e)).then(c=>{c?(l&&clearTimeout(l),r(c)):o=setTimeout(a,i)}).catch(c=>{l&&clearTimeout(l),n(c)})}catch(c){l&&clearTimeout(l),n(c)}};o=setTimeout(a,0)}),x={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"},Ie="application/octet-stream",gs="original",vt=({method:s,url:i,data:t,headers:e={},signal:r,onProgress:n})=>new Promise((o,l)=>{let a=new XMLHttpRequest,c=(s==null?void 0:s.toUpperCase())||"GET",u=!1;a.open(c,i,!0),e&&Object.entries(e).forEach(d=>{let[p,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&a.setRequestHeader(p,m)}),a.responseType="text",Se(r,()=>{u=!0,a.abort(),l(new yt)}),a.onload=()=>{if(a.status!=200)l(new Error(`Error ${a.status}: ${a.statusText}`));else{let d={method:c,url:i,data:t,headers:e||void 0,signal:r,onProgress:n},p=a.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};p.forEach(function(A){let E=A.split(": "),T=E.shift(),w=E.join(": ");T&&typeof T!="undefined"&&(m[T]=w)});let f=a.response,_=a.status;o({request:d,data:f,headers:m,status:_})}},a.onerror=d=>{u||l(new Dt(d))},n&&typeof n=="function"&&(a.upload.onprogress=d=>{d.lengthComputable?n({isComputable:!0,value:d.loaded/d.total}):n({isComputable:!1})}),t?a.send(t):a.send()});function hn(s,...i){return s}var un=({name:s})=>s?[s]:[],dn=hn,pn=()=>new FormData,_s=s=>!1,ke=s=>typeof Blob!="undefined"&&s instanceof Blob,Oe=s=>typeof File!="undefined"&&s instanceof File,Le=s=>!!s&&typeof s=="object"&&!Array.isArray(s)&&"uri"in s&&typeof s.uri=="string",Ft=s=>ke(s)||Oe(s)||_s()||Le(s),fn=s=>typeof s=="string"||typeof s=="number"||typeof s=="undefined",mn=s=>!!s&&typeof s=="object"&&!Array.isArray(s),gn=s=>!!s&&typeof s=="object"&&"data"in s&&Ft(s.data);function _n(s,i,t){if(gn(t)){let{name:e,contentType:r}=t,n=dn(t.data,e,r!=null?r:Ie),o=un({name:e,contentType:r});s.push([i,n,...o])}else if(mn(t))for(let[e,r]of Object.entries(t))typeof r!="undefined"&&s.push([`${i}[${e}]`,String(r)]);else fn(t)&&t&&s.push([i,t.toString()])}function bn(s){let i=[];for(let[t,e]of Object.entries(s))_n(i,t,e);return i}function Ii(s){let i=pn(),t=bn(s);for(let e of t){let[r,n,...o]=e;i.append(r,n,...o)}return i}var R=class extends Error{constructor(t,e,r,n,o){super();h(this,"isCancel");h(this,"code");h(this,"request");h(this,"response");h(this,"headers");this.name="UploadClientError",this.message=t,this.code=e,this.request=r,this.response=n,this.headers=o,Object.setPrototypeOf(this,R.prototype)}},yn=s=>{let i=new URLSearchParams;for(let[t,e]of Object.entries(s))e&&typeof e=="object"&&!Array.isArray(e)?Object.entries(e).filter(r=>{var n;return(n=r[1])!=null?n:!1}).forEach(r=>i.set(`${t}[${r[0]}]`,String(r[1]))):Array.isArray(e)?e.forEach(r=>{i.append(`${t}[]`,r)}):typeof e=="string"&&e?i.set(t,e):typeof e=="number"&&i.set(t,e.toString());return i.toString()},dt=(s,i,t)=>{let e=new URL(s);return e.pathname=(e.pathname+i).replace("//","/"),t&&(e.search=yn(t)),e.toString()},vn="6.8.0",Cn="UploadcareUploadClient",wn=vn;function It(s){return Si({libraryName:Cn,libraryVersion:wn,...s})}var Tn="RequestThrottledError",fs=15e3,En=1e3;function xn(s){let{headers:i}=s||{};if(!i||typeof i["retry-after"]!="string")return fs;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:fs}function Ct(s,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:e}=i;return an(({attempt:r,retry:n})=>s().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===Tn&&r{let i="";return(ke(s)||Oe(s)||Le(s))&&(i=s.type),i||Ie},ys=s=>{let i="";return Oe(s)&&s.name?i=s.name:ke(s)||_s()?i="":Le(s)&&s.name&&(i=s.name),i||gs};function ki(s){return typeof s=="undefined"||s==="auto"?"auto":s?"1":"0"}function An(s,{publicKey:i,fileName:t,contentType:e,baseURL:r=x.baseURL,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(r,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({file:{data:s,name:t||ys(s),contentType:e||bs(s)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:ki(l),signature:n,expire:o,source:u,metadata:_}),signal:a,onProgress:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var Ei;(function(s){s.Token="token",s.FileInfo="file_info"})(Ei||(Ei={}));function $n(s,{publicKey:i,baseURL:t=x.baseURL,store:e,fileName:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,source:c="url",signal:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},url:dt(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:s,store:ki(e),filename:r,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:l,expire:a,source:c,metadata:_}),signal:u}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var j;(function(s){s.Unknown="unknown",s.Waiting="waiting",s.Progress="progress",s.Error="error",s.Success="success"})(j||(j={}));var Sn=s=>"status"in s&&s.status===j.Error;function In(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=x.retryNetworkErrorMaxTimes}={}){return Ct(()=>vt({method:"GET",headers:i?{"X-UC-User-Agent":It({publicKey:i,integration:r,userAgent:n})}:void 0,url:dt(t,"/from_url/status/",{jsonerrors:1,token:s}),signal:e}).then(({data:a,headers:c,request:u})=>{let d=ft(JSON.parse(a));if("error"in d&&!Sn(d))throw new R(d.error.content,void 0,u,d,c);return d}),{retryNetworkErrorMaxTimes:l,retryThrottledRequestMaxTimes:o})}function kn(s,{publicKey:i,baseURL:t=x.baseURL,jsonpCallback:e,secureSignature:r,secureExpire:n,signal:o,source:l,integration:a,userAgent:c,retryThrottledRequestMaxTimes:u=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:a,userAgent:c})},url:dt(t,"/group/",{jsonerrors:1,pub_key:i,files:s,callback:e,signature:r,expire:n,source:l}),signal:o}).then(({data:p,headers:m,request:f})=>{let _=ft(JSON.parse(p));if("error"in _)throw new R(_.error.content,_.error.errorCode,f,_,m);return _}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:u})}function vs(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,source:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"GET",headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},url:dt(t,"/info/",{jsonerrors:1,pub_key:i,file_id:s,source:r}),signal:e}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function On(s,{publicKey:i,contentType:t,fileName:e,multipartChunkSize:r=x.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:l,store:a,signal:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({filename:e||gs,size:s,content_type:t||Ie,part_size:r,UPLOADCARE_STORE:ki(a),UPLOADCARE_PUB_KEY:i,signature:o,expire:l,source:u,metadata:_}),signal:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w.parts=Object.keys(w.parts).map(B=>w.parts[B]),w}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})}function Ln(s,i,{contentType:t,signal:e,onProgress:r,retryThrottledRequestMaxTimes:n=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"PUT",url:i,data:s,onProgress:r,signal:e,headers:{"Content-Type":t||Ie}}).then(l=>(r&&r({isComputable:!0,value:1}),l)).then(({status:l})=>({code:l})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}function Un(s,{publicKey:i,baseURL:t=x.baseURL,source:e="local",signal:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",url:dt(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},data:Ii({uuid:s,UPLOADCARE_PUB_KEY:i,source:e}),signal:r}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function Oi(s,{publicKey:i,baseURL:t,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l,signal:a,onProgress:c}){return ms({check:u=>vs(s,{publicKey:i,baseURL:t,signal:u,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:a})}function Rn(s){return"defaultEffects"in s}var pt=class{constructor(i,{baseCDN:t=x.baseCDN,fileName:e}={}){h(this,"uuid");h(this,"name",null);h(this,"size",null);h(this,"isStored",null);h(this,"isImage",null);h(this,"mimeType",null);h(this,"cdnUrl",null);h(this,"s3Url",null);h(this,"originalFilename",null);h(this,"imageInfo",null);h(this,"videoInfo",null);h(this,"contentInfo",null);h(this,"metadata",null);h(this,"s3Bucket",null);h(this,"defaultEffects",null);let{uuid:r,s3Bucket:n}=i,o=dt(t,`${r}/`),l=n?dt(`https://${n}.s3.amazonaws.com/`,`${r}/${i.filename}`):null;this.uuid=r,this.name=e||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=l,Rn(i)&&(this.defaultEffects=i.defaultEffects)}},Pn=(s,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,contentType:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,baseCDN:_,metadata:A})=>An(s,{publicKey:i,fileName:t,contentType:l,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:A}).then(({file:E})=>Oi(E,{publicKey:i,baseURL:e,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(E=>new pt(E,{baseCDN:_})),Mn=(s,{publicKey:i,fileName:t,baseURL:e,signal:r,onProgress:n,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u,baseCDN:d})=>vs(s,{publicKey:i,baseURL:e,signal:r,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u}).then(p=>new pt(p,{baseCDN:d,fileName:t})).then(p=>(n&&n({isComputable:!0,value:1}),p)),Nn=(s,{signal:i}={})=>{let t=null,e=null,r=s.map(()=>new AbortController),n=o=>()=>{e=o,r.forEach((l,a)=>a!==o&&l.abort())};return Se(i,()=>{r.forEach(o=>o.abort())}),Promise.all(s.map((o,l)=>{let a=n(l);return Promise.resolve().then(()=>o({stopRace:a,signal:r[l].signal})).then(c=>(a(),c)).catch(c=>(t=c,null))})).then(o=>{if(e===null)throw t;return o[e]})},Dn=window.WebSocket,xi=class{constructor(){h(this,"events",Object.create({}))}emit(i,t){var e;(e=this.events[i])==null||e.forEach(r=>r(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(e=>e!==t):this.events[i]=[]}},Fn=(s,i)=>s==="success"?{status:j.Success,...i}:s==="progress"?{status:j.Progress,...i}:{status:j.Error,...i},Ai=class{constructor(i,t=3e4){h(this,"key");h(this,"disconnectTime");h(this,"ws");h(this,"queue",[]);h(this,"isConnected",!1);h(this,"subscribers",0);h(this,"emmitter",new xi);h(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Dn(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let e=JSON.parse(t.data.toString());switch(e.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(e.channel,Fn(e.event,JSON.parse(e.data)))}})}}disconnect(){let i=()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var r;let e=JSON.stringify({event:i,data:t});(r=this.ws)==null||r.send(e)}subscribe(i,t){this.subscribers+=1,this.connect();let e=`task-status-${i}`,r={event:"pusher:subscribe",data:{channel:e}};this.emmitter.on(e,t),this.isConnected?this.send(r.event,r.data):this.queue.push(r)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,e={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(e.event,e.data):this.queue=this.queue.filter(r=>r.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}},wi=null,Li=s=>{if(!wi){let i=typeof window=="undefined"?0:3e4;wi=new Ai(s,i)}return wi},Vn=s=>{Li(s).connect()};function Bn({token:s,publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:l,signal:a}){return ms({check:c=>In(s,{publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:c}).then(u=>{switch(u.status){case j.Error:return new R(u.error,u.errorCode);case j.Waiting:return!1;case j.Unknown:return new R(`Token "${s}" was not found.`);case j.Progress:return l&&(u.total==="unknown"?l({isComputable:!1}):l({isComputable:!0,value:u.done/u.total})),!1;case j.Success:return l&&l({isComputable:!0,value:u.done/u.total}),u;default:throw new Error("Unknown status")}}),signal:a})}var zn=({token:s,pusherKey:i,signal:t,onProgress:e})=>new Promise((r,n)=>{let o=Li(i),l=o.onError(n),a=()=>{l(),o.unsubscribe(s)};Se(t,()=>{a(),n(new yt("pusher cancelled"))}),o.subscribe(s,c=>{switch(c.status){case j.Progress:{e&&(c.total==="unknown"?e({isComputable:!1}):e({isComputable:!0,value:c.done/c.total}));break}case j.Success:{a(),e&&e({isComputable:!0,value:c.done/c.total}),r(c);break}case j.Error:a(),n(new R(c.msg,c.error_code))}})}),jn=(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,onProgress:d,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,pusherKey:A=x.pusherKey,metadata:E})=>Promise.resolve(Vn(A)).then(()=>$n(s,{publicKey:i,fileName:t,baseURL:e,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,metadata:E})).catch(T=>{let w=Li(A);return w==null||w.disconnect(),Promise.reject(T)}).then(T=>T.type===Ei.FileInfo?T:Nn([({signal:w})=>Bn({token:T.token,publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:w}),({signal:w})=>zn({token:T.token,pusherKey:A,signal:w,onProgress:d})],{signal:u})).then(T=>{if(T instanceof R)throw T;return T}).then(T=>Oi(T.uuid,{publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:u})).then(T=>new pt(T,{baseCDN:r})),Ti=new WeakMap,Hn=async s=>{if(Ti.has(s))return Ti.get(s);let i=await fetch(s.uri).then(t=>t.blob());return Ti.set(s,i),i},Cs=async s=>{if(Oe(s)||ke(s))return s.size;if(Le(s))return(await Hn(s)).size;throw new Error("Unknown file type. Cannot determine file size.")},Wn=(s,i=x.multipartMinFileSize)=>s>=i,ws=s=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!Ft(s)&&t.test(s)},Ui=s=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!Ft(s)&&t.test(s)},Xn=(s,i)=>new Promise((t,e)=>{let r=[],n=!1,o=i.length,l=[...i],a=()=>{let c=i.length-l.length,u=l.shift();u&&u().then(d=>{n||(r[c]=d,o-=1,o?a():t(r))}).catch(d=>{n=!0,e(d)})};for(let c=0;c{let r=e*i,n=Math.min(r+e,t);return s.slice(r,n)},Gn=async(s,i,t)=>e=>qn(s,e,i,t),Kn=(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})=>Ln(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a}),Yn=async(s,{publicKey:i,fileName:t,fileSize:e,baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,contentType:_,multipartChunkSize:A=x.multipartChunkSize,maxConcurrentRequests:E=x.maxConcurrentRequests,baseCDN:T,metadata:w})=>{let B=e!=null?e:await Cs(s),at,St=(U,z)=>{if(!c)return;at||(at=Array(U).fill(0));let J=tt=>tt.reduce((ct,gi)=>ct+gi,0);return tt=>{tt.isComputable&&(at[z]=tt.value,c({isComputable:!0,value:J(at)/U}))}};return _||(_=bs(s)),On(B,{publicKey:i,contentType:_,fileName:t||ys(s),baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:w}).then(async({uuid:U,parts:z})=>{let J=await Gn(s,B,A);return Promise.all([U,Xn(E,z.map((tt,ct)=>()=>Kn(J(ct),tt,{publicKey:i,contentType:_,onProgress:St(z.length,ct),signal:a,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})))])}).then(([U])=>Un(U,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})).then(U=>U.isReady?U:Oi(U.uuid,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(U=>new pt(U,{baseCDN:T}))};async function Ri(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartMinFileSize:_,multipartChunkSize:A,maxConcurrentRequests:E,baseCDN:T=x.baseCDN,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,pusherKey:at,metadata:St}){if(Ft(s)){let U=await Cs(s);return Wn(U,_)?Yn(s,{publicKey:i,contentType:f,multipartChunkSize:A,fileSize:U,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,maxConcurrentRequests:E,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St}):Pn(s,{publicKey:i,fileName:t,contentType:f,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St})}if(Ui(s))return jn(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:T,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,pusherKey:at,metadata:St});if(ws(s))return Mn(s,{publicKey:i,fileName:t,baseURL:e,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T});throw new TypeError(`File uploading from "${s}" is not supported`)}var $i=class{constructor(i,{baseCDN:t=x.baseCDN}={}){h(this,"uuid");h(this,"filesCount");h(this,"totalSize");h(this,"isStored");h(this,"isImage");h(this,"cdnUrl");h(this,"files");h(this,"createdAt");h(this,"storedAt",null);this.uuid=i.id,this.filesCount=i.filesCount;let e=i.files.filter(Boolean);this.totalSize=Object.values(e).reduce((r,n)=>r+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(e).filter(r=>r.isImage).length,this.cdnUrl=i.cdnUrl,this.files=e.map(r=>new pt(r,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}},Zn=s=>{for(let i of s)if(!Ft(i))return!1;return!0},Jn=s=>{for(let i of s)if(!ws(i))return!1;return!0},Qn=s=>{for(let i of s)if(!Ui(i))return!1;return!0};function Ts(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_=x.multipartChunkSize,baseCDN:A=x.baseCDN,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T,jsonpCallback:w}){if(!Zn(s)&&!Qn(s)&&!Jn(s))throw new TypeError(`Group uploading from "${s}" is not supported`);let B,at=!0,St=s.length,U=(z,J)=>{if(!a)return;B||(B=Array(z).fill(0));let tt=ct=>ct.reduce((gi,Ir)=>gi+Ir)/z;return ct=>{if(!ct.isComputable||!at){at=!1,a({isComputable:!1});return}B[J]=ct.value,a({isComputable:!0,value:tt(B)})}};return Promise.all(s.map((z,J)=>Ft(z)||Ui(z)?Ri(z,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:U(St,J),source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_,baseCDN:A,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T}).then(tt=>tt.uuid):z)).then(z=>kn(z,{publicKey:i,baseURL:e,jsonpCallback:w,secureSignature:r,secureExpire:n,signal:l,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m}).then(J=>new $i(J,{baseCDN:A})).then(J=>(a&&a({isComputable:!0,value:1}),J)))}var $e=class{constructor(i){h(this,"_concurrency",1);h(this,"_pending",[]);h(this,"_running",0);h(this,"_resolvers",new Map);h(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(e),this._rejectors.delete(e),this._running-=1,this._run()}).then(o=>r(o)).catch(o=>n(o))}}add(i){return new Promise((t,e)=>{this._resolvers.set(i,t),this._rejectors.set(i,e),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};var Pi=()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),Mi=s=>({...Pi(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{s.set$({"*modalActive":!1,"*currentActivity":""})}}),Ue=s=>({...Mi(s),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new $e(1)});function Es(s,i){[...s.querySelectorAll("[l10n]")].forEach(t=>{let e=t.getAttribute("l10n"),r="textContent";if(e.includes(":")){let o=e.split(":");r=o[0],e=o[1]}let n="l10n:"+e;i.__l10nKeys.push(n),i.add(n,e),i.sub(n,o=>{t[r]=i.l10n(o)}),t.removeAttribute("l10n")})}var H=s=>`*cfg/${s}`;var Ni="lr-",b=class extends Nt{constructor(){super();h(this,"requireCtxName",!1);h(this,"allowCustomTemplate",!0);h(this,"init$",Pi());h(this,"updateCtxCssData",()=>{Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let e of t)e.isConnected&&e.updateCssData()});this.activityType=null,this.addTemplateProcessor(Es),this.__l10nKeys=[]}l10n(t,e={}){if(!t)return"";let r=this.getCssData("--l10n-"+t,!0)||t,n=hs(r);for(let l of n)e[l.variable]=this.pluralize(l.pluralKey,Number(e[l.countVariable]));return Jt(r,e)}pluralize(t,e){let r=this.l10n("locale-name")||"en-US",n=xe(r,e);return this.l10n(`${t}__${n}`)}emit(t,e,r){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,e,r)}applyL10nKey(t,e){let r="l10n:"+t;this.$[r]=e,this.__l10nKeys.push(t)}hasBlockInCtx(t){let e=this.$["*blocksRegistry"];for(let r of e)if(t(r))return!0;return!1}setOrAddState(t,e){this.add$({[t]:e},!0)}setActivity(t){if(this.hasBlockInCtx(e=>e.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Ni}${t}`,!0),vi()||(this._destroyInnerHeightTracker=ls()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?Ae({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new Te(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,e=2){let r=["B","KB","MB","GB","TB"],n=c=>this.getCssData("--l10n-unit-"+c.toLowerCase(),!0)||c;if(t===0)return`0 ${n(r[0])}`;let o=1024,l=e<0?0:e,a=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**a).toFixed(l))+" "+n(r[a])}proxyUrl(t){let e=this.cfg.secureDeliveryProxy;return e?Jt(e,{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(e,r,n)=>{if(typeof r!="string")return!1;let o=H(r);return this.$[o]=n,!0},get:(e,r)=>{let n=H(r),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${ut(r)}`))}})}return this.__cfgProxy}subConfigValue(t,e){let r=this.parseCfgProp(H(t));r.ctx.has(r.name)?this.sub(H(t),e):(this.bindCssData(`--cfg-${ut(t)}`),this.sub(`--cfg-${ut(t)}`,e))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Ni)?t:Ni+t)}};h(b,"StateConsumerScope",null),h(b,"className","");var xs="active",te="___ACTIVITY_IS_ACTIVE___",et=class extends b{constructor(){super(...arguments);h(this,"historyTracked",!1);h(this,"init$",Mi(this));h(this,"_debouncedHistoryFlush",I(this._historyFlush.bind(this),10))}_deactivate(){var e;let t=et._activityRegistry[this.activityKey];this[te]=!1,this.removeAttribute(xs),(e=t==null?void 0:t.deactivateCallback)==null||e.call(t)}_activate(){var e;let t=et._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[te]=!0,this.setAttribute(xs,""),(e=t==null?void 0:t.activateCallback)==null||e.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[te]?this._deactivate():this.activityType===t&&!this[te]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t[t.length-1]!==this.activityType&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!et._activityRegistry[this.activityKey]}get isActivityActive(){return this[te]}get couldOpenActivity(){return!0}registerActivity(t,e={}){let{onActivate:r,onDeactivate:n}=e;et._activityRegistry||(et._activityRegistry=Object.create(null)),et._activityRegistry[this.activityKey]={activateCallback:r,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),et._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(et._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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 e;let t=this.$["*history"];if(t){let r=t.pop();for(;r===this.activityType;)r=t.pop();let n=!!r;if(r){let l=[...this.$["*blocksRegistry"]].find(a=>a.activityType===r);n=(e=l==null?void 0:l.couldOpenActivity)!=null?e:!1}r=n?r:void 0,this.$["*currentActivity"]=r,this.$["*history"]=t,r||this.setOrAddState("*modalActive",!1)}}},g=et;h(g,"_activityRegistry",Object.create(null));g.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var ee=33.333333333333336,y=1,Di=24,As=6;function kt(s,i){for(let t in i)s.setAttributeNS(null,t,i[t].toString())}function Y(s,i={}){let t=document.createElementNS("http://www.w3.org/2000/svg",s);return kt(t,i),t}function $s(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=i.includes("w")?0:1,a=i.includes("n")?0:1,c=[-1,1][l],u=[-1,1][a],d=[e+l*n+1.5*c,r+a*o+1.5*u-24*t*u],p=[e+l*n+1.5*c,r+a*o+1.5*u],m=[e+l*n-24*t*c+1.5*c,r+a*o+1.5*u];return{d:`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]} L ${m[0]} ${m[1]}`,center:p}}function Ss(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=["n","s"].includes(i)?.5:{w:0,e:1}[i],a=["w","e"].includes(i)?.5:{n:0,s:1}[i],c=[-1,1][l],u=[-1,1][a],d,p;["n","s"].includes(i)?(d=[e+l*n-34*t/2,r+a*o+1.5*u],p=[e+l*n+34*t/2,r+a*o+1.5*u]):(d=[e+l*n+1.5*c,r+a*o-34*t/2],p=[e+l*n+1.5*c,r+a*o+34*t/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 Is(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 ks({rect:s,delta:[i,t],imageBox:e}){return Bt({...s,x:s.x+i,y:s.y+t},e)}function Bt(s,i){let{x:t}=s,{y:e}=s;return s.xi.x+i.width&&(t=i.x+i.width-s.width),s.yi.y+i.height&&(e=i.y+i.height-s.height),{...s,x:t,y:e}}function to({rect:s,delta:i,aspectRatio:t,imageBox:e}){let[,r]=i,{y:n,width:o,height:l}=s;n+=r,l-=r,t&&(o=l*t);let a=s.x+s.width/2-o/2;return n<=e.y&&(n=e.y,l=s.y+s.height-n,t&&(o=l*t,a=s.x+s.width/2-o/2)),a<=e.x&&(a=e.x,n=s.y+s.height-l),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y+s.height-l),l=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x+s.width-o),l=e.y+e.height&&(l=e.y+e.height-n,t&&(o=l*t),a=s.x+s.width/2-o/2),a<=e.x&&(a=e.x,n=s.y),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y),l=e.x+e.width&&(o=e.x+e.width-n,t&&(l=o/t),a=s.y+s.height/2-l/2),a<=e.y&&(a=e.y,n=s.x),a+l>=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x),lt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x+s.width-a,l=e.y)):t&&(r=c*t-a,a=a+r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y+s.height-c)),ce.x+e.width&&(r=e.x+e.width-o-a),l+nt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x,l=e.y)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y+s.height-c)),ce.y+e.height&&(n=e.y+e.height-l-c),o+=r,a-=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x+s.width-a,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y)),ce.x+e.width&&(r=e.x+e.width-o-a),l+c+n>e.y+e.height&&(n=e.y+e.height-l-c),a+=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y)),c=i.x&&s.y>=i.y&&s.x+s.width<=i.x+i.width&&s.y+s.height<=i.y+i.height}function Rs(s,i){return Math.abs(s.width/s.height-i)<.1}function zt({width:s,height:i},t){let e=t/90%2!==0;return{width:e?i:s,height:e?s:i}}function Ps(s,i,t){let e=s/i,r,n;e>t?(r=Math.round(i*t),n=i):(r=s,n=Math.round(s/t));let o=Math.round((s-r)/2),l=Math.round((i-n)/2);return o+r>s&&(r=s-o),l+n>i&&(n=i-l),{x:o,y:l,width:r,height:n}}function jt(s){return{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}}function wt(s,i,t){return Math.min(Math.max(s,i),t)}var Pe=s=>{if(!s)return[];let[i,t]=s.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${s}`);return}return[{type:"aspect-ratio",width:i,height:t}]};var Z=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var Ms=s=>s?s.split(",").map(i=>i.trim()):[],Ot=s=>s?s.join(","):"";var Ns="blocks",Ds="0.29.1";function Fs(s){return Si({...s,libraryName:Ns,libraryVersion:Ds})}var Vs=s=>{if(typeof s!="string"||!s)return"";let i=s.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},Me=(...s)=>s.filter(i=>typeof i=="string"&&i).map(i=>Vs(i)).join("/-/"),P=(...s)=>{let i=Me(...s);return i?`-/${i}/`:""};function Bs(s){let i=new URL(s),t=i.pathname+i.search+i.hash,e=t.lastIndexOf("http"),r=t.lastIndexOf("/"),n="";return e>=0?n=t.slice(e):r>=0&&(n=t.slice(r+1)),n}function zs(s){let i=new URL(s),{pathname:t}=i,e=t.indexOf("/"),r=t.indexOf("/",e+1);return t.substring(e+1,r)}function js(s){let i=Hs(s),t=new URL(i),e=t.pathname.indexOf("/-/");return e===-1?[]:t.pathname.substring(e).split("/-/").filter(Boolean).map(n=>Vs(n))}function Hs(s){let i=new URL(s),t=Bs(s),e=Ws(t)?Xs(t).pathname:t;return i.pathname=i.pathname.replace(e,""),i.search="",i.hash="",i.toString()}function Ws(s){return s.startsWith("http")}function Xs(s){let i=new URL(s);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}var O=(s,i,t)=>{let e=new URL(Hs(s));if(t=t||Bs(s),e.pathname.startsWith("//")&&(e.pathname=e.pathname.replace("//","/")),Ws(t)){let r=Xs(t);e.pathname=e.pathname+(i||"")+(r.pathname||""),e.search=r.search,e.hash=r.hash}else e.pathname=e.pathname+(i||"")+(t||"");return e.toString()},Tt=(s,i)=>{let t=new URL(s);return t.pathname=i+"/",t.toString()};var M=(s,i=",")=>s.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0);var ie=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],Fi=s=>s?s.filter(i=>typeof i=="string").map(i=>M(i)).flat():[],Vi=(s,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),s.startsWith(t)):s===t),qs=(s,i)=>i.some(t=>t.startsWith(".")?s.toLowerCase().endsWith(t.toLowerCase()):!1),se=s=>{let i=s==null?void 0:s.type;return i?Vi(i,ie):!1};var st=1e3,Lt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),re=s=>Math.ceil(s*100)/100,Gs=(s,i=Lt.AUTO)=>{let t=i===Lt.AUTO;if(i===Lt.BYTE||t&&s(e[r]=i[r].value,e),{}),this.__data=$.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}let e=this.__typedSchema[i];if((t==null?void 0:t.constructor)===e.type||t instanceof e.type||e.nullable&&t===null){this.__data.pub(i,t);return}console.warn(ao+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){$.deleteCtx(this.__ctxId)}};var De=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||Yt.generate(),this.__data=$.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(e,r)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[e]||(t[e]=new Set),t[e].add(r),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let e of this.__collectionObservers)e==null||e([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new Ne(this.__typedSchema);for(let e in i)t.setValue(e,i[e]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(e=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(e,()=>{this.__notifyObservers(e,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,e){this.read(i).setValue(t,e)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(e=>{let r=this.read(e);i(r)&&t.push(e)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){$.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};var Ys=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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:pt,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var v=class extends g{constructor(){super(...arguments);h(this,"isCtxOwner",!1);h(this,"init$",Ue(this));h(this,"__initialUploadMetadata",null);h(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);h(this,"_debouncedRunValidators",I(this._runValidators.bind(this),100));h(this,"_flushOutputItems",I(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(S.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));h(this,"_handleCollectonUpdate",(t,e,r)=>{var n;this._runValidators();for(let o of r)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()});h(this,"_handleCollectionPropertiesUpdate",t=>{this._flushOutputItems();let e=this.uploadCollection,r=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>e.read(n)).filter(Boolean);for(let n of r)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=e.findItems(a=>!a.getValue("uploadError"));o.forEach(a=>{n+=e.readProp(a,"uploadProgress")});let l=Math.round(n/o.length);this.$["*commonProgress"]=l,this.emit(S.UPLOAD_PROGRESS,l,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=e.findItems(l=>!!l.getValue("fileInfo")),o=e.findItems(l=>!!l.getValue("uploadError")||!!l.getValue("validationErrorMsg"));if(e.size-o.length===n.length){let l=this.getOutputData(a=>!!a.getValue("fileInfo")&&!a.getValue("silentUpload"));l.length>0&&this.emit(S.UPLOAD_FINISH,l,{debounce:!0})}}t.uploadError&&e.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(S.UPLOAD_ERROR,e.readProp(o,"uploadError"))}),t.validationErrorMsg&&e.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(S.VALIDATION_ERROR,e.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&e.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(S.CLOUD_MODIFICATION,e.readProp(o,"cdnUrlModifiers"))})})}setUploadMetadata(t){Qt("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}get hasCtxOwner(){return this.hasBlockInCtx(t=>t instanceof v?t.isCtxOwner&&t.isConnected&&t!==this:!1)}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let t=new De({typedSchema:Ys,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",t)}this.hasCtxOwner||this.initCtxOwner()}destroyCallback(){var t,e;super.destroyCallback(),this.isCtxOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(e=this._unobserveCollection)==null||e.call(this))}initCtxOwner(){this.isCtxOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators()),this.subConfigValue("maxConcurrentRequests",t=>{this.$["*uploadQueue"].concurrency=Number(t)||1}),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata)}addFileFromUrl(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromUuid(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({uuid:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromObject(t,{silent:e,fileName:r,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:se(t),mimeType:t.type,fileName:r!=null?r:t.name,fileSize:t.size,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(e=>{this.uploadCollection.add({file:e,isImage:se(e),mimeType:e.type,fileName:e.name,fileSize:e.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var r;let e=Ot(Fi([(r=this.cfg.accept)!=null?r:"",...this.cfg.imgOnly?ie:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=Ot(ie)):this.fileInput.accept=e,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:Z.LOCAL})),this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=M(this.cfg.sourceList)),t}initFlow(t=!1){var e;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((e=this.sourceList)==null?void 0:e.length)===1){let r=this.sourceList[0];r==="local"?(this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(v.extSrcList).includes(r)?this.set$({"*currentActivityParams":{externalSourceType:r},"*currentActivity":g.activities.EXTERNAL}):this.$["*currentActivity"]=r,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":g.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(S.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(S.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let e=this.cfg.imgOnly,r=this.cfg.accept,n=Fi([...e?ie:[],r]);if(!n.length)return;let o=t.getValue("mimeType"),l=t.getValue("fileName");if(!o||!l)return;let a=Vi(o,n),c=qs(l,n);if(!a&&!c)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let e=this.cfg.maxLocalFileSizeBytes,r=t.getValue("fileSize");if(e&&r&&r>e)return this.l10n("files-max-size-limit-error",{maxFileSize:Gs(e)})}_validateMultipleLimit(t){let e=this.uploadCollection.items(),r=e.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&e.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let e=this.cfg.imgOnly,r=t.getValue("isImage");if(!(!e||r)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let e of this._validators){let r=e(t);if(r){t.setValue("validationErrorMsg",r);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let e=this.uploadCollection.read(t);e&&this._runValidatorsForEntry(e)})}setInitialCrop(){let t=Pe(this.cfg.cropPreset);if(t){let[e]=t,r=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of r){let o=n.getValue("fileInfo"),{width:l,height:a}=o.imageInfo,c=e.width/e.height,u=Ps(l,a,c),d=P(`crop/${u.width}x${u.height}/${u.x},${u.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:d,cdnUrl:O(n.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(p=>p.activityType===g.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var r;let e=(r=this.cfg.metadata)!=null?r:this.$["*uploadMetadata"];if(typeof e=="function"){let n=this.getOutputItem(t);return await e(n)}return e}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Fs,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,l;let e=$.getCtx(t).store,r=e.fileInfo||{name:e.fileName,originalFilename:e.fileName,size:e.fileSize,isImage:e.isImage,mimeType:e.mimeType};return{...r,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(l=(o=e.cdnUrl)!=null?o:r.cdnUrl)!=null?l:null,validationErrorMessage:e.validationErrorMsg,uploadError:e.uploadError,isUploaded:!!e.uuid&&!!e.fileInfo,isValid:!e.validationErrorMsg&&!e.uploadError,fullPath:e.fullPath,uploadProgress:e.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};v.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});v.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...v.extSrcList});var G={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};function co(s,i){if(typeof i=="number")return G[s]!==i?`${s}/${i}`:"";if(typeof i=="boolean")return i&&G[s]!==i?`${s}`:"";if(s==="filter"){if(!i||G[s]===i.amount)return"";let{name:t,amount:e}=i;return`${s}/${t}/${e}`}if(s==="crop"){if(!i)return"";let{dimensions:t,coords:e}=i;return`${s}/${t.join("x")}/${e.join(",")}`}return""}var Js=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function Et(s){return Me(...Js.filter(i=>typeof s[i]!="undefined"&&s[i]!==null).map(i=>{let t=s[i];return co(i,t)}).filter(i=>!!i))}var Fe=Me("format/auto","progressive/yes"),mt=([s])=>typeof s!="undefined"?Number(s):void 0,Zs=()=>!0,ho=([s,i])=>({name:s,amount:typeof i!="undefined"?Number(i):100}),uo=([s,i])=>({dimensions:M(s,"x").map(Number),coords:M(i).map(Number)}),po={enhance:mt,brightness:mt,exposure:mt,gamma:mt,contrast:mt,saturation:mt,vibrance:mt,warmth:mt,filter:ho,mirror:Zs,flip:Zs,rotate:mt,crop:uo};function Qs(s){let i={};for(let t of s){let[e,...r]=t.split("/");if(!Js.includes(e))continue;let n=po[e],o=n(r);i[e]=o}return i}var N=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),W=[N.CROP,N.TUNING,N.FILTERS],tr=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],er=["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"],ir=["rotate","mirror","flip"],rt=Object.freeze({brightness:{zero:G.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:G.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:G.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:G.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:G.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:G.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:G.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:G.enhance,range:[0,100],keypointsNumber:1},filter:{zero:G.filter,range:[0,100],keypointsNumber:1}});var fo="https://ucarecdn.com",mo="https://upload.uploadcare.com",go="https://social.uploadcare.com",xt={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:Ot(W),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:fo,baseUrl:mo,socialBaseUrl:go,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var X=s=>String(s),nt=s=>{let i=Number(s);if(Number.isNaN(i))throw new Error(`Invalid number: "${s}"`);return i},k=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}"`)},_o=s=>s==="auto"?s:k(s),bo={pubkey:X,multiple:k,multipleMin:nt,multipleMax:nt,confirmUpload:k,imgOnly:k,accept:X,externalSourcesPreferredTypes:X,store:_o,cameraMirror:k,sourceList:X,maxLocalFileSizeBytes:nt,thumbSize:nt,showEmptyList:k,useLocalImageEditor:k,useCloudImageEditor:k,cloudImageEditorTabs:X,removeCopyright:k,cropPreset:X,modalScrollLock:k,modalBackdropStrokes:k,sourceListWrap:k,remoteTabSessionKey:X,cdnCname:X,baseUrl:X,socialBaseUrl:X,secureSignature:X,secureExpire:X,secureDeliveryProxy:X,retryThrottledRequestMaxTimes:nt,multipartMinFileSize:nt,multipartChunkSize:nt,maxConcurrentRequests:nt,multipartMaxConcurrentRequests:nt,multipartMaxAttempts:nt,checkForUrlDuplicates:k,saveUrlForRecurrentUploads:k,groupOutput:k,userAgentIntegration:X},sr=(s,i)=>{if(!(typeof i=="undefined"||i===null))try{return bo[s](i)}catch(t){return console.error(`Invalid value for config key "${s}".`,t),xt[s]}};var Ve=Object.keys(xt),yo=["metadata"],vo=s=>yo.includes(s),Be=Ve.filter(s=>!vo(s)),Co={...Object.fromEntries(Be.map(s=>[ut(s),s])),...Object.fromEntries(Be.map(s=>[s.toLowerCase(),s]))},wo={...Object.fromEntries(Ve.map(s=>[ut(s),H(s)])),...Object.fromEntries(Ve.map(s=>[s.toLowerCase(),H(s)]))},ze=class extends b{constructor(){super();h(this,"ctxOwner",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(xt).map(([t,e])=>[H(t),e]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let e of Be)this.sub(H(e),r=>{r!==xt[e]&&(t[e]=r)},!1);for(let e of Ve){let r="__"+e;t[r]=t[e],Object.defineProperty(this,e,{set:n=>{if(t[r]=n,Be.includes(e)){let o=[...new Set([ut(e),e.toLowerCase()])];for(let l of o)typeof n=="undefined"||n===null?this.removeAttribute(l):this.setAttribute(l,n.toString())}this.$[H(e)]!==n&&(typeof n=="undefined"||n===null?this.$[H(e)]=xt[e]:this.$[H(e)]=n)},get:()=>this.$[H(e)]}),typeof t[e]!="undefined"&&t[e]!==null&&(t[e]=t[r])}}attributeChangedCallback(t,e,r){if(e===r)return;let n=Co[t],o=sr(n,r),l=o!=null?o:xt[n],a=this;a[n]=l}};ze.bindAttributes(wo);var To=ze;var ne=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=this.getCssData(`--icon-${t}`);e&&(this.$.path=e)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};ne.template=``;ne.bindAttributes({name:"name",size:"size"});var Eo="https://ucarecdn.com",Ut=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:Eo},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{default:"auto"},"cdn-operations":{},progressive:{},quality:{default:"smart"},"is-background-for":{}});var rr=s=>[...new Set(s)];var oe="--lr-img-",nr="unresolved",Ht=2,Wt=3,or=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),ar=Object.create(null),lr;for(let s in Ut)ar[oe+s]=((lr=Ut[s])==null?void 0:lr.default)||"";var je=class extends Nt{constructor(){super(...arguments);h(this,"cssInit$",ar)}$$(t){return this.$[oe+t]}set$$(t){for(let e in t)this.$[oe+e]=t[e]}sub$$(t,e){this.sub(oe+t,r=>{r===null||r===""||e(r)})}_fmtAbs(t){return!t.includes("//")&&!or&&(t=new URL(t,document.baseURI).href),t}_getCdnModifiers(t=""){return P(t&&`resize/${t}`,this.$$("cdn-operations")||"",`format/${this.$$("format")||Ut.format.default}`,`quality/${this.$$("quality")||Ut.quality.default}`)}_getUrlBase(t=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(or&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let e=this._getCdnModifiers(t);if(this.$$("src").startsWith(this.$$("cdn-cname")))return O(this.$$("src"),e);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("proxy-cname"))return this._proxyUrl(O(this.$$("proxy-cname"),e,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(O(`https://${this.$$("pubkey")}.ucr.io/`,e,this._fmtAbs(this.$$("src"))))}_proxyUrl(t){return this.$$("secure-delivery-proxy")?Jt(this.$$("secure-delivery-proxy"),{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}_getElSize(t,e=1,r=!0){let n=t.getBoundingClientRect(),o=e*Math.round(n.width),l=r?"":e*Math.round(n.height);return o||l?`${o||""}x${l||""}`:null}_setupEventProxy(t){let e=n=>{n.stopPropagation();let o=new Event(n.type,n);this.dispatchEvent(o)},r=["load","error"];for(let n of r)t.addEventListener(n,e)}get img(){return this._img||(this._img=new Image,this._setupEventProxy(this.img),this._img.setAttribute(nr,""),this.img.onload=()=>{this.img.removeAttribute(nr)},this.initAttributes(),this.appendChild(this._img)),this._img}get bgSelector(){return this.$$("is-background-for")}initAttributes(){[...this.attributes].forEach(t=>{Ut[t.name]||this.img.setAttribute(t.name,t.value)})}get breakpoints(){return this.$$("breakpoints")?rr(M(this.$$("breakpoints")).map(t=>Number(t))):null}renderBg(t){let e=new Set;this.breakpoints?this.breakpoints.forEach(n=>{e.add(`url("${this._getUrlBase(n+"x")}") ${n}w`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(n*Ht+"x")}") ${n*Ht}w`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(n*Wt+"x")}") ${n*Wt}w`)}):(e.add(`url("${this._getUrlBase(this._getElSize(t))}") 1x`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Ht))}") ${Ht}x`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Wt))}") ${Wt}x`));let r=`image-set(${[...e].join(", ")})`;t.style.setProperty("background-image",r),t.style.setProperty("background-image","-webkit-"+r)}getSrcset(){let t=new Set;return this.breakpoints?this.breakpoints.forEach(e=>{t.add(this._getUrlBase(e+"x")+` ${e}w`),this.$$("hi-res-support")&&t.add(this._getUrlBase(e*Ht+"x")+` ${e*Ht}w`),this.$$("ultra-res-support")&&t.add(this._getUrlBase(e*Wt+"x")+` ${e*Wt}w`)}):(t.add(this._getUrlBase(this._getElSize(this.img))+" 1x"),this.$$("hi-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,2))+" 2x"),this.$$("ultra-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,3))+" 3x")),[...t].join()}getSrc(){return this._getUrlBase()}init(){this.bgSelector?[...document.querySelectorAll(this.bgSelector)].forEach(t=>{this.$$("intersection")?this.initIntersection(t,()=>{this.renderBg(t)}):this.renderBg(t)}):this.$$("intersection")?this.initIntersection(this.img,()=>{this.img.srcset=this.getSrcset(),this.img.src=this.getSrc()}):(this.img.srcset=this.getSrcset(),this.img.src=this.getSrc())}initIntersection(t,e){let r={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(n=>{n.forEach(o=>{o.isIntersecting&&(e(),this._isnObserver.unobserve(t))})},r),this._isnObserver.observe(t),this._observed||(this._observed=new Set),this._observed.add(t)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(t=>{this._isnObserver.unobserve(t)}),this._isnObserver=null)}static get observedAttributes(){return Object.keys(Ut)}attributeChangedCallback(t,e,r){window.setTimeout(()=>{this.$[oe+t]=r})}};var Bi=class extends je{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",i=>{this.$$("is-background-for")||(this.img.loading=i?"lazy":"eager")})}};var le=class extends v{constructor(){super(),this.init$={...this.init$,"*simpleButtonText":"",withDropZone:!0,onClick:()=>{this.initFlow()}}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",i=>{typeof i!="undefined"&&(this.$.withDropZone=k(i))}),this.subConfigValue("multiple",i=>{this.$["*simpleButtonText"]=i?this.l10n("upload-files"):this.l10n("upload-file")})}};le.template=``;le.bindAttributes({dropzone:null});var He=class extends g{constructor(){super(...arguments);h(this,"historyTracked",!0);h(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};He.template='
';function xo(s){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let e=r=>{r.type!=="loadend"&&t.abort(),i(!1)};t.onloadend=e,t.onprogress=e,t.readAsDataURL(s)}catch{i(!1)}})}function Ao(s,i){return new Promise(t=>{let e=0,r=[],n=l=>{l||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),l.isFile?(e++,l.file(a=>{e--;let c=new File([a],a.name,{type:a.type||i});r.push({type:"file",file:c,fullPath:l.fullPath}),e===0&&t(r)})):l.isDirectory&&o(l.createReader())},o=l=>{e++,l.readEntries(a=>{e--;for(let c of a)n(c);e===0&&t(r)})};n(s)})}function cr(s){let i=[],t=[];for(let e=0;e{a&&i.push(...a)}));continue}let o=r.getAsFile();o&&t.push(xo(o).then(l=>{l||i.push({type:"file",file:o})}))}else r.kind==="string"&&r.type.match("^text/uri-list")&&t.push(new Promise(n=>{r.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}var F={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},hr=["focus"],$o=100,zi=new Map;function So(s,i){let t=Math.max(Math.min(s[0],i.x+i.width),i.x),e=Math.max(Math.min(s[1],i.y+i.height),i.y);return Math.sqrt((s[0]-t)*(s[0]-t)+(s[1]-e)*(s[1]-e))}function ji(s){let i=0,t=document.body,e=new Set,r=f=>e.add(f),n=F.INACTIVE,o=f=>{s.shouldIgnore()&&f!==F.INACTIVE||(n!==f&&e.forEach(_=>_(f)),n=f)},l=()=>i>0;r(f=>s.onChange(f));let a=()=>{i=0,o(F.INACTIVE)},c=()=>{i+=1,n===F.INACTIVE&&o(F.ACTIVE)},u=()=>{i-=1,l()||o(F.INACTIVE)},d=f=>{f.preventDefault(),i=0,o(F.INACTIVE)},p=f=>{if(s.shouldIgnore())return;l()||(i+=1);let _=[f.x,f.y],A=s.element.getBoundingClientRect(),E=Math.floor(So(_,A)),T=E<$o,w=f.composedPath().includes(s.element);zi.set(s.element,E);let B=Math.min(...zi.values())===E;w&&B?(f.preventDefault(),o(F.OVER)):o(T&&B?F.NEAR:F.ACTIVE)},m=async f=>{if(s.shouldIgnore())return;f.preventDefault();let _=await cr(f.dataTransfer);s.onItems(_),o(F.INACTIVE)};return t.addEventListener("drop",d),t.addEventListener("dragleave",u),t.addEventListener("dragenter",c),t.addEventListener("dragover",p),s.element.addEventListener("drop",m),hr.forEach(f=>{window.addEventListener(f,a)}),()=>{zi.delete(s.element),t.removeEventListener("drop",d),t.removeEventListener("dragleave",u),t.removeEventListener("dragenter",c),t.removeEventListener("dragover",p),s.element.removeEventListener("drop",m),hr.forEach(f=>{window.removeEventListener(f,a)})}}var ae=class extends v{constructor(){super(),this.init$={...this.init$,state:F.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,e=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),r=window.getComputedStyle(this),n=r.visibility!=="hidden"&&r.display!=="none";return t&&n&&e}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!k(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:k(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:k(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:k(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=ji({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(e=>{e.type==="url"?this.addFileFromUrl(e.url,{source:Z.DROP_AREA}):e.type==="file"&&this.addFileFromObject(e.file,{source:Z.DROP_AREA,fullPath:e.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=ji({element:i,onChange:t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&i.setAttribute("drag-state",e)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&this.setAttribute("drag-state",e)}),this.subConfigValue("sourceList",t=>{let e=M(t);this.$.isEnabled=e.includes(v.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.sub("isClickable",t=>{this.toggleAttribute("clickable",t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(e=>e!==this).filter(e=>e.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,e=this.uploadCollection.size;return!(i&&t&&e>=t||!i&&e>0)}destroyCallback(){var i,t,e,r;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(e=this._destroyDropzone)==null||e.call(this),(r=this._destroyContentWrapperDropzone)==null||r.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};ae.template=`
{{text}}
`;ae.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Io="src-type-",ce=class extends v{constructor(){super(...arguments);h(this,"_registeredTypes",{});h(this,"init$",{...this.init$,iconName:"default"})}initTypes(){this.registerType({type:v.sourceTypes.LOCAL,onClick:()=>{this.openSystemDialog()}}),this.registerType({type:v.sourceTypes.URL,activity:g.activities.URL,textKey:"from-url"}),this.registerType({type:v.sourceTypes.CAMERA,activity:g.activities.CAMERA,onClick:()=>{var e=document.createElement("input").capture!==void 0;return e&&this.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:g.activities.DRAW,icon:"edit-draw"});for(let t of Object.values(v.extSrcList))this.registerType({type:t,activity:g.activities.EXTERNAL,activityParams:{externalSourceType:t}})}initCallback(){super.initCallback(),this.initTypes(),this.setAttribute("role","button"),this.defineAccessor("type",t=>{t&&this.applyType(t)})}registerType(t){this._registeredTypes[t.type]=t}getType(t){return this._registeredTypes[t]}applyType(t){let e=this._registeredTypes[t];if(!e){console.warn("Unsupported source type: "+t);return}let{textKey:r=t,icon:n=t,activity:o,onClick:l,activityParams:a={}}=e;this.applyL10nKey("src-type",`${Io}${r}`),this.$.iconName=n,this.onclick=c=>{(l?l(c):!!o)&&this.set$({"*currentActivityParams":a,"*currentActivity":o})}}};ce.template=`
`;ce.bindAttributes({type:null});var Hi=class extends b{initCallback(){super.initCallback(),this.subConfigValue("sourceList",i=>{let t=M(i),e="";t.forEach(r=>{e+=``}),this.cfg.sourceListWrap?this.innerHTML=e:this.outerHTML=e})}};function ur(s){let i=new Blob([s],{type:"image/svg+xml"});return URL.createObjectURL(i)}function dr(s="#fff",i="rgba(0, 0, 0, .1)"){return ur(``)}function he(s="hsl(209, 21%, 65%)",i=32,t=32){return ur(``)}function pr(s,i=40){if(s.type==="image/svg+xml")return URL.createObjectURL(s);let t=document.createElement("canvas"),e=t.getContext("2d"),r=new Image,n=new Promise((o,l)=>{r.onload=()=>{let a=r.height/r.width;a>1?(t.width=i,t.height=i*a):(t.height=i,t.width=i/a),e.fillStyle="rgb(240, 240, 240)",e.fillRect(0,0,t.width,t.height),e.drawImage(r,0,0,t.width,t.height),t.toBlob(c=>{if(!c){l();return}let u=URL.createObjectURL(c);o(u)})},r.onerror=a=>{l(a)}});return r.src=URL.createObjectURL(s),n}var V=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),gt=class extends v{constructor(){super();h(this,"pauseRender",!0);h(this,"_entrySubs",new Set);h(this,"_entry",null);h(this,"_isIntersecting",!1);h(this,"_debouncedGenerateThumb",I(this._generateThumbnail.bind(this),100));h(this,"_debouncedCalculateState",I(this._calculateState.bind(this),100));h(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:V.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===g.activities.DETAILS)?this.$["*currentActivity"]=g.activities.DETAILS:this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let e=this.getOutputData(r=>r.getValue("uuid")===t);this.emit(S.REMOVE,e,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[e]=t;this._isIntersecting=e.isIntersecting,e.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),e.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,e=V.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?e=V.FAILED:t.getValue("validationMultipleLimitMsg")?e=V.LIMIT_OVERFLOW:t.getValue("isUploading")?e=V.UPLOADING:t.getValue("fileInfo")&&(e=V.FINISHED),this.$.state=e}async _generateThumbnail(){var e;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let r=this.cfg.thumbSize,n=this.proxyUrl(O(Tt(this.cfg.cdnCname,this._entry.getValue("uuid")),P(t.getValue("cdnUrlModifiers"),`scale_crop/${r}x${r}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((e=t.getValue("file"))!=null&&e.type.includes("image"))try{let r=await pr(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",r)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(n))}else{let r=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(r))}}_subEntry(t,e){let r=this._entry.subscribe(t,n=>{this.isConnected&&e(n)});this._entrySubs.add(r)}_handleEntryId(t){var r;this._reset();let e=(r=this.uploadCollection)==null?void 0:r.read(t);this._entry=e,e&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||e.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=e.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{gt.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),gt.activeInstances.add(this)}_handleState(t){var e,r,n;this.set$({isFailed:t===V.FAILED,isLimitOverflow:t===V.LIMIT_OVERFLOW,isUploading:t===V.UPLOADING,isFinished:t===V.FINISHED,progressVisible:t===V.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((e=this._entry)==null?void 0:e.getValue("isImage"))&&((r=this._entry)==null?void 0:r.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===V.FAILED||t===V.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===V.FINISHED&&(this.$.badgeIcon="badge-success"),t===V.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),gt.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,l;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let e=this.cfg.multiple?this.cfg.multipleMax:1;if(e&&this.uploadCollection.size>e)return;let r=this.getOutputData(a=>!a.getValue("fileInfo"));this.emit(S.UPLOAD_START,r,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let a=new AbortController;t.setValue("abortController",a);let c=async()=>{let d=this.getUploadClientOptions();return Ri(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...d,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:p=>{if(p.isComputable){let m=p.value*100;t.setValue("uploadProgress",m)}this.$.progressUnknown=!p.isComputable},signal:a.signal,metadata:await this.getMetadataFor(t.uid)})},u=await this.$["*uploadQueue"].add(c);t.setMultipleValues({fileInfo:u,isUploading:!1,fileName:u.originalFilename,fileSize:u.size,isImage:u.isImage,mimeType:(l=(o=(n=u.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?l:u.mimeType,uuid:u.uuid,cdnUrl:u.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(a){console.warn("Upload error",a),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),a instanceof R?a.isCancel||t.setValue("uploadError",a):t.setValue("uploadError",new Error("Unexpected error"))}}};gt.template=`
{{itemName}}{{errorText}}
`;gt.activeInstances=new Set;var ue=class extends b{constructor(){super();h(this,"_handleBackdropClick",()=>{this._closeDialog()});h(this,"_closeDialog",()=>{this.setOrAddState("*modalActive",!1)});h(this,"_handleDialogClose",()=>{this._closeDialog()});h(this,"_handleDialogMouseDown",t=>{this._mouseDownTarget=t.target});h(this,"_handleDialogMouseUp",t=>{t.target===this.ref.dialog&&t.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(){if(super.initCallback(),typeof HTMLDialogElement=="function")this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp);else{this.setAttribute("dialog-fallback","");let t=document.createElement("div");t.className="backdrop",this.appendChild(t),t.addEventListener("click",this._handleBackdropClick)}this.sub("*modalActive",t=>{this.$.isOpen!==t&&(this.$.isOpen=t),t&&this.cfg.modalScrollLock?document.body.style.overflow="hidden":document.body.style.overflow=""}),this.subConfigValue("modalBackdropStrokes",t=>{t?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.sub("isOpen",t=>{t?this.show():this.hide()})}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)}};h(ue,"StateConsumerScope","modal");ue.template=``;var We=class{constructor(){h(this,"caption","");h(this,"text","");h(this,"iconName","");h(this,"isError",!1)}},Xe=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};Xe.template=`
{{captionTxt}}
{{msgTxt}}
`;var qe=class extends v{constructor(){super();h(this,"historyTracked",!0);h(this,"activityType",g.activities.UPLOAD_LIST);h(this,"_debouncedHandleCollectionUpdate",I(()=>{this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),!this.couldOpenActivity&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(e=>!!e.getValue("fileInfo"));this.emit(S.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var u,d;let t=!!this.cfg.multiple,e=t?(u=this.cfg.multipleMin)!=null?u:0:1,r=t?(d=this.cfg.multipleMax)!=null?d:0:1,n=this.uploadCollection.size,o=e?nr:!1;return{passed:!o&&!l,tooFew:o,tooMany:l,min:e,max:r,exact:r===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,e=this._validateFilesCount();if(t&&!e.passed){let r=new We,n=e.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";r.caption=this.l10n("files-count-limit-error-title"),r.text=this.l10n(n,{min:e.min,max:e.max,total:t}),r.isError=!0,this.set$({"*message":r})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),r={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let m of t){let f=this.uploadCollection.read(m);f.getValue("fileInfo")&&!f.getValue("validationErrorMsg")&&(r.succeed+=1),f.getValue("isUploading")&&(r.uploading+=1),(f.getValue("validationErrorMsg")||f.getValue("uploadError"))&&(r.failed+=1),f.getValue("validationMultipleLimitMsg")&&(r.limitOverflow+=1)}let{passed:n,tooMany:o,exact:l}=this._validateFilesCount(),a=r.failed===0&&r.limitOverflow===0,c=!1,u=!1,d=!1;r.total-r.succeed-r.uploading-r.failed>0&&n?c=!0:(u=!0,d=r.total===r.succeed&&n&&a),this.set$({doneBtnVisible:u,doneBtnEnabled:d,uploadBtnVisible:c,addMoreBtnEnabled:r.total===0||!o&&!l,addMoreBtnVisible:!l||this.cfg.multiple,headerText:this._getHeaderText(r)})}_getHeaderText(t){let e=r=>{let n=t[r];return this.l10n(`header-${r}`,{count:n})};return t.uploading>0?e("uploading"):t.failed>0?e("failed"):t.succeed>0?e("succeed"):e("total")}get couldOpenActivity(){return this.cfg.showEmptyList||this.uploadCollection.size>0}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{!this.couldOpenActivity&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};qe.template=`{{headerText}}
`;var Ge=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.URL);h(this,"init$",{...this.init$,importDisabled:!0,onUpload:t=>{t.preventDefault();let e=this.ref.input.value;this.addFileFromUrl(e,{source:Z.URL_TAB}),this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:t=>{let e=t.target.value;this.set$({importDisabled:!e})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};Ge.template=`
`;var Wi=()=>typeof navigator.permissions!="undefined";var Ke=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.CAMERA);h(this,"_unsubPermissions",null);h(this,"init$",{...this.init$,video:null,videoTransformCss:null,shotBtnDisabled:!0,videoHidden:!0,messageHidden:!0,requestBtnHidden:Wi(),l10nMessage:null,originalErrorMessage:null,cameraSelectOptions:null,cameraSelectHidden:!0,onCameraSelectChange:t=>{this._selectedCameraId=t.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>{this._shot()},onRequestPermissions:()=>{this._capture()}});h(this,"_onActivate",()=>{Wi()&&this._subscribePermissions(),this._capture()});h(this,"_onDeactivate",()=>{this._unsubPermissions&&this._unsubPermissions(),this._stopCapture()});h(this,"_handlePermissionsChange",()=>{this._capture()});h(this,"_setPermissionsState",I(t=>{this.$.originalErrorMessage=null,this.classList.toggle("initialized",t==="granted"),t==="granted"?this.set$({videoHidden:!1,shotBtnDisabled:!1,messageHidden:!0}):t==="prompt"?(this.$.l10nMessage=this.l10n("camera-permissions-prompt"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage=this.l10n("camera-permissions-denied"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture())},300))}async _subscribePermissions(){try{(await navigator.permissions.query({name:"camera"})).addEventListener("change",this._handlePermissionsChange)}catch(t){console.log("Failed to use permissions API. Fallback to manual request mode.",t),this._capture()}}async _capture(){let t={video:{width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},audio:!1};this._selectedCameraId&&(t.video.deviceId={exact:this._selectedCameraId}),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d");try{this._setPermissionsState("prompt");let e=await navigator.mediaDevices.getUserMedia(t);e.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=e,this._capturing=!0,this._setPermissionsState("granted")}catch(e){this._setPermissionsState("denied"),this.$.originalErrorMessage=e.message}}_stopCapture(){var t;this._capturing&&((t=this.$.video)==null||t.getTracks()[0].stop(),this.$.video=null,this._capturing=!1)}_shot(){this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this._ctx.drawImage(this.ref.video,0,0);let t=Date.now(),e=`camera-${t}.png`;this._canvas.toBlob(r=>{let n=new File([r],e,{lastModified:t,type:"image/png"});this.addFileFromObject(n,{source:Z.CAMERA}),this.set$({"*currentActivity":g.activities.UPLOAD_LIST})})}async initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",t=>{this.$.videoTransformCss=t?"scaleX(-1)":null});try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(r=>r.kind==="videoinput").map((r,n)=>({text:r.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:r.deviceId}));e.length>1&&(this.$.cameraSelectOptions=e,this.$.cameraSelectHidden=!1)}catch{}}};Ke.template=`
{{l10nMessage}}{{originalErrorMessage}}
`;var Xi=class extends v{constructor(){super(...arguments);h(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}},ko=Xi;var Ye=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.DETAILS);h(this,"pauseRender",!0);h(this,"init$",{...this.init$,checkerboard:!1,fileSize:null,fileName:"",cdnUrl:"",errorTxt:"",cloudEditBtnHidden:!0,onNameInput:null,onBack:()=>{this.historyBack()},onRemove:()=>{this.uploadCollection.remove(this.entry.uid),this.historyBack()},onCloudEdit:()=>{this.entry.getValue("uuid")&&(this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}})}showNonImageThumb(){let t=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon"),e=he(t,108,108);this.ref.filePreview.setImageUrl(e),this.set$({checkerboard:!1})}initCallback(){super.initCallback(),this.render(),this.$.fileSize=this.l10n("file-size-unknown"),this.registerActivity(this.activityType,{onDeactivate:()=>{this.ref.filePreview.clear()}}),this.sub("*focusedEntry",t=>{if(!t)return;this._entrySubs?this._entrySubs.forEach(n=>{this._entrySubs.delete(n),n.remove()}):this._entrySubs=new Set,this.entry=t;let e=t.getValue("file");if(e){this._file=e;let n=se(this._file);n&&!t.getValue("cdnUrl")&&(this.ref.filePreview.setImageFile(this._file),this.set$({checkerboard:!0})),n||this.showNonImageThumb()}let r=(n,o)=>{this._entrySubs.add(this.entry.subscribe(n,o))};r("fileName",n=>{this.$.fileName=n,this.$.onNameInput=()=>{let o=this.ref.file_name_input.value;Object.defineProperty(this._file,"name",{writable:!0,value:o}),this.entry.setValue("fileName",o)}}),r("fileSize",n=>{this.$.fileSize=Number.isFinite(n)?this.fileSizeFmt(n):this.l10n("file-size-unknown")}),r("uploadError",n=>{this.$.errorTxt=n==null?void 0:n.message}),r("externalUrl",n=>{n&&(this.entry.getValue("uuid")||this.showNonImageThumb())}),r("cdnUrl",n=>{let o=this.cfg.useCloudImageEditor&&n&&this.entry.getValue("isImage");if(n&&this.ref.filePreview.clear(),this.set$({cdnUrl:n,cloudEditBtnHidden:!o}),n&&this.entry.getValue("isImage")){let l=O(n,P("format/auto","preview"));this.ref.filePreview.setImageUrl(this.proxyUrl(l))}})})}};Ye.template=`
{{fileSize}}
{{errorTxt}}
`;var qi=class{constructor(){h(this,"captionL10nStr","confirm-your-action");h(this,"messageL10Str","are-you-sure");h(this,"confirmL10nStr","yes");h(this,"denyL10nStr","no")}confirmAction(){console.log("Confirmed")}denyAction(){this.historyBack()}},Ze=class extends g{constructor(){super(...arguments);h(this,"activityType",g.activities.CONFIRMATION);h(this,"_defaults",new qi);h(this,"init$",{...this.init$,activityCaption:"",messageTxt:"",confirmBtnTxt:"",denyBtnTxt:"","*confirmation":null,onConfirm:this._defaults.confirmAction,onDeny:this._defaults.denyAction.bind(this)})}initCallback(){super.initCallback(),this.set$({messageTxt:this.l10n(this._defaults.messageL10Str),confirmBtnTxt:this.l10n(this._defaults.confirmL10nStr),denyBtnTxt:this.l10n(this._defaults.denyL10nStr)}),this.sub("*confirmation",t=>{t&&this.set$({"*currentActivity":g.activities.CONFIRMATION,activityCaption:this.l10n(t.captionL10nStr),messageTxt:this.l10n(t.messageL10Str),confirmBtnTxt:this.l10n(t.confirmL10nStr),denyBtnTxt:this.l10n(t.denyL10nStr),onDeny:()=>{t.denyAction()},onConfirm:()=>{t.confirmAction()}})})}};Ze.template=`{{activityCaption}}
{{messageTxt}}
`;var Je=class extends v{constructor(){super(...arguments);h(this,"init$",{...this.init$,visible:!1,unknown:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let t=this.uploadCollection.items().some(e=>this.uploadCollection.read(e).getValue("isUploading"));this.$.visible=t}),this.sub("visible",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",t=>{this.$.value=t})}destroyCallback(){var t;super.destroyCallback(),(t=this._unobserveCollection)==null||t.call(this)}};Je.template=``;var Qe=class extends b{constructor(){super(...arguments);h(this,"_value",0);h(this,"_unknownMode",!1);h(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};Qe.template='
';var K="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";var de=class extends b{constructor(){super();h(this,"init$",{...this.init$,checkerboard:!1,src:K})}initCallback(){super.initCallback(),this.sub("checkerboard",()=>{this.style.backgroundImage=this.hasAttribute("checkerboard")?`url(${dr()})`:"unset"})}destroyCallback(){super.destroyCallback(),URL.revokeObjectURL(this._lastObjectUrl)}setImage(t){this.$.src=t.src}setImageFile(t){let e=URL.createObjectURL(t);this.$.src=e,this._lastObjectUrl=e}setImageUrl(t){this.$.src=t}clear(){URL.revokeObjectURL(this._lastObjectUrl),this.$.src=K}};de.template='';de.bindAttributes({checkerboard:"checkerboard"});var fr="--cfg-ctx-name",L=class extends b{get cfgCssCtxName(){return this.getCssData(fr,!0)}get cfgCtxName(){var t;let i=((t=this.getAttribute("ctx-name"))==null?void 0:t.trim())||this.cfgCssCtxName||this.__cachedCfgCtxName;return this.__cachedCfgCtxName=i,i}connectedCallback(){var i;if(!this.connectedOnce){let t=(i=this.getAttribute("ctx-name"))==null?void 0:i.trim();t&&this.style.setProperty(fr,`'${t}'`)}super.connectedCallback()}parseCfgProp(i){return{...super.parseCfgProp(i),ctx:$.getCtx(this.cfgCtxName)}}};function mr(...s){return s.reduce((i,t)=>{if(typeof t=="string")return i[t]=!0,i;for(let e of Object.keys(t))i[e]=t[e];return i},{})}function D(...s){let i=mr(...s);return Object.keys(i).reduce((t,e)=>(i[e]&&t.push(e),t),[]).join(" ")}function gr(s,...i){let t=mr(...i);for(let e of Object.keys(t))s.classList.toggle(e,t[e])}var _r=s=>{if(!s)return W;let i=Ms(s).filter(t=>W.includes(t));return i.length===0?W:i};function br(s){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":W,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:K,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:Ot(W),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let i=s.querySelectorAll("img");for(let t of i){let e=t.src;t.src=K,t.src=e}s.$["*networkProblems"]=!1},"*on.apply":i=>{if(!i)return;let t=s.$["*originalUrl"],e=P(Et(i),"preview"),r=O(t,e),n={originalUrl:t,cdnUrlModifiers:e,cdnUrl:r,transformations:i};s.dispatchEvent(new CustomEvent("apply",{detail:n,bubbles:!0,composed:!0})),s.remove()},"*on.cancel":()=>{s.remove(),s.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}var yr=`
Network error
{{fileType}}
{{msg}}
`;var ot=class extends L{constructor(){super();h(this,"_debouncedShowLoader",I(this._showLoader.bind(this),300));this.init$={...this.init$,...br(this)}}get ctxName(){return this.autoCtxName}_showLoader(t){this.$.showLoader=t}_waitForSize(){return new Promise((e,r)=>{let n=setTimeout(()=>{r(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),o=new ResizeObserver(([l])=>{l.contentRect.width>0&&l.contentRect.height>0&&(e(),clearTimeout(n),o.disconnect())});o.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(await this._waitForSize(),this.$["*tabId"]===N.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate(),this.$["*editorTransformations"]={},this.$.cdnUrl){let t=zs(this.$.cdnUrl);this.$["*originalUrl"]=Tt(this.$.cdnUrl,t);let e=js(this.$.cdnUrl),r=Qs(e);this.$["*editorTransformations"]=r}else if(this.$.uuid)this.$["*originalUrl"]=Tt(this.cfg.cdnCname,this.$.uuid);else throw new Error("No UUID nor CDN URL provided");try{let t=O(this.$["*originalUrl"],P("json")),e=await fetch(t).then(o=>o.json()),{width:r,height:n}=e;this.$["*imageSize"]={width:r,height:n},this.$["*tabId"]===N.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(t){t&&console.error("Failed to load image info",t)}}async initEditor(){try{await this._waitForSize()}catch(t){this.isConnected&&console.error(t.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==K&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",t=>{let e=this.ref["img-el"];e.src!==t&&(this._imgLoading=!0,e.src=t||K)}),this.sub("cropPreset",t=>{this.$["*cropPresetList"]=Pe(t)}),this.sub("tabs",t=>{this.$["*tabList"]=_r(t)}),this.sub("*tabId",t=>{this.ref["img-el"].className=D("image",{image_hidden_to_cropper:t===N.CROP,image_hidden_effects:t!==N.CROP})}),this.classList.add("editor_ON"),this.sub("*networkProblems",t=>{this.$["presence.networkProblems"]=t,this.$["presence.modalCaption"]=!t}),this.sub("*editorTransformations",t=>{if(Object.keys(t).length===0)return;let e=this.$["*originalUrl"],r=P(Et(t),"preview"),n=O(e,r),o={originalUrl:e,cdnUrlModifiers:r,cdnUrl:n,transformations:t};this.dispatchEvent(new CustomEvent("change",{detail:o,bubbles:!0,composed:!0}))},!1),this.sub("uuid",t=>t&&this.updateImage()),this.sub("cdnUrl",t=>t&&this.updateImage())}};h(ot,"className","cloud-image-editor");ot.template=yr;ot.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var ti=class extends L{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(i){let t=this.$["*imageBox"];if(!t)return;if(i===""&&t.height<=y&&t.width<=y)return!0;let e=t.height<=y&&(i.includes("n")||i.includes("s")),r=t.width<=y&&(i.includes("e")||i.includes("w"));return e||r}_createBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i,o=this.ref["svg-el"],l=Y("mask",{id:"backdrop-mask"}),a=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),c=Y("rect",{x:t,y:e,width:r,height:n,fill:"black"});l.appendChild(a),l.appendChild(c);let u=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});o.appendChild(u),o.appendChild(l),this._backdropMask=l,this._backdropMaskInner=c}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i;this._backdropMaskInner&&kt(this._backdropMaskInner,{x:t,y:e,width:r,height:n})}_updateFrame(){let i=this.$["*cropBox"];if(!(!i||!this._frameGuides||!this._frameThumbs)){for(let t of Object.values(this._frameThumbs)){let{direction:e,pathNode:r,interactionNode:n,groupNode:o}=t,l=e==="",a=e.length===2,{x:c,y:u,width:d,height:p}=i;if(l){let f={x:c+d/3,y:u+p/3,width:d/3,height:p/3};kt(n,f)}else{let f=wt(Math.min(d,p)/(24*2+34)/2,0,1),{d:_,center:A}=a?$s(i,e,f):Ss(i,e,f),E=Math.max(Di*wt(Math.min(d,p)/Di/3,0,1),As);kt(n,{x:A[0]-E,y:A[1]-E,width:E*2,height:E*2}),kt(r,{d:_})}let m=this._shouldThumbBeDisabled(e);o.setAttribute("class",D("thumb",{"thumb--hidden":m,"thumb--visible":!m}))}kt(this._frameGuides,{x:i.x-1*.5,y:i.y-1*.5,width:i.width+1,height:i.height+1})}}_createThumbs(){let i={};for(let t=0;t<3;t++)for(let e=0;e<3;e++){let r=`${["n","","s"][t]}${["w","","e"][e]}`,n=Y("g");n.classList.add("thumb"),n.setAttribute("with-effects","");let o=Y("rect",{fill:"transparent"}),l=Y("path",{stroke:"currentColor",fill:"none","stroke-width":3});n.appendChild(l),n.appendChild(o),i[r]={direction:r,pathNode:l,interactionNode:o,groupNode:n},o.addEventListener("pointerdown",this._handlePointerDown.bind(this,r))}return i}_createGuides(){let i=Y("svg"),t=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"#000000","stroke-width":1,"stroke-opacity":.5});i.appendChild(t);for(let e=1;e<=2;e++){let r=Y("line",{x1:`${ee*e}%`,y1:"0%",x2:`${ee*e}%`,y2:"100%",stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}for(let e=1;e<=2;e++){let r=Y("line",{x1:"0%",y1:`${ee*e}%`,x2:"100%",y2:`${ee*e}%`,stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}return i.classList.add("guides","guides--semi-hidden"),i}_createFrame(){let i=this.ref["svg-el"],t=document.createDocumentFragment(),e=this._createGuides();t.appendChild(e);let r=this._createThumbs();for(let{groupNode:n}of Object.values(r))t.appendChild(n);i.appendChild(t),this._frameThumbs=r,this._frameGuides=e}_handlePointerDown(i,t){if(!this._frameThumbs)return;let e=this._frameThumbs[i];if(this._shouldThumbBeDisabled(i))return;let r=this.$["*cropBox"],{x:n,y:o}=this.ref["svg-el"].getBoundingClientRect(),l=t.x-n,a=t.y-o;this.$.dragging=!0,this._draggingThumb=e,this._dragStartPoint=[l,a],this._dragStartCrop={...r}}_handlePointerUp_(i){this._updateCursor(),this.$.dragging&&(i.stopPropagation(),i.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(i){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;i.stopPropagation(),i.preventDefault();let t=this.ref["svg-el"],{x:e,y:r}=t.getBoundingClientRect(),n=i.x-e,o=i.y-r,l=n-this._dragStartPoint[0],a=o-this._dragStartPoint[1],{direction:c}=this._draggingThumb,u=this._calcCropBox(c,[l,a]);u&&(this.$["*cropBox"]=u)}_calcCropBox(i,t){var c,u;let[e,r]=t,n=this.$["*imageBox"],o=(c=this._dragStartCrop)!=null?c:this.$["*cropBox"],l=(u=this.$["*cropPresetList"])==null?void 0:u[0],a=l?l.width/l.height:void 0;if(i===""?o=ks({rect:o,delta:[e,r],imageBox:n}):o=Os({rect:o,delta:[e,r],direction:i,aspectRatio:a,imageBox:n}),!Object.values(o).every(d=>Number.isFinite(d)&&d>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:o});return}return Bt(jt(o),this.$["*imageBox"])}_handleSvgPointerMove_(i){if(!this._frameThumbs)return;let t=Object.values(this._frameThumbs).find(e=>{if(this._shouldThumbBeDisabled(e.direction))return!1;let n=e.interactionNode.getBoundingClientRect(),o={x:n.x,y:n.y,width:n.width,height:n.height};return Ls(o,[i.x,i.y])});this._hoverThumb=t,this._updateCursor()}_updateCursor(){let i=this._hoverThumb;this.ref["svg-el"].style.cursor=i?Is(i.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(i){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:t})=>t).forEach(t=>{t.setAttribute("class",D("thumb",{"thumb--hidden":!i,"thumb--visible":i}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",i=>{i&&(this._guidesHidden=i.height<=y||i.width<=y,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",i=>{this._frameGuides&&this._frameGuides.setAttribute("class",D({"guides--hidden":this._guidesHidden,"guides--visible":!this._guidesHidden&&i,"guides--semi-hidden":!this._guidesHidden&&!i}))}),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)}};ti.template='';var _t=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.sub("title",t=>{this._titleEl&&(this._titleEl.style.display=t?"block":"none")}),this.sub("active",t=>{this.className=D({active:t,not_active:!t})}),this.sub("on.click",t=>{this.onclick=t})}};_t.template=`
{{title}}
`;function Lo(s){let i=s+90;return i=i>=360?0:i,i}function Uo(s,i){return s==="rotate"?Lo(i):["mirror","flip"].includes(s)?!i:null}var pe=class extends _t{initCallback(){super.initCallback(),this.defineAccessor("operation",i=>{i&&(this._operation=i,this.$.icon=i)}),this.$["on.click"]=i=>{let t=this.$["*cropperEl"].getValue(this._operation),e=Uo(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};var fe={FILTER:"filter",COLOR_OPERATION:"color_operation"},lt="original",ei=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":t=>{this.$["*faderEl"].set(t),this.$.value=t}})}setOperation(t,e){this._controlType=t==="filter"?fe.FILTER:fe.COLOR_OPERATION,this._operation=t,this._iconName=t,this._title=t.toUpperCase(),this._filter=e,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===lt?void 0:this.$.value,filter:this._filter===lt?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:t,zero:e}=rt[this._operation],[r,n]=t;this.$.min=r,this.$.max=n,this.$.zero=e;let o=this.$["*editorTransformations"][this._operation];if(this._controlType===fe.FILTER){let l=n;if(o){let{name:a,amount:c}=o;l=a===this._filter?c:n}this.$.value=l,this.$.defaultValue=l}if(this._controlType===fe.COLOR_OPERATION){let l=typeof o!="undefined"?o:e;this.$.value=l,this.$.defaultValue=l}}apply(){let t;this._controlType===fe.FILTER?this._filter===lt?t=null:t={name:this._filter,amount:this.$.value}:t=this.$.value;let e={...this.$["*editorTransformations"],[this._operation]:t};this.$["*editorTransformations"]=e}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",t=>{this._originalUrl=t}),this.sub("value",t=>{let e=`${this._filter||this._operation} ${t}`;this.$["*operationTooltip"]=e})}};ei.template=``;function me(s){let i=new Image;return{promise:new Promise((r,n)=>{i.src=s,i.onload=r,i.onerror=n}),image:i,cancel:()=>{i.naturalWidth===0&&(i.src=K)}}}function ge(s){let i=[];for(let n of s){let o=me(n);i.push(o)}let t=i.map(n=>n.image);return{promise:Promise.allSettled(i.map(n=>n.promise)),images:t,cancel:()=>{i.forEach(n=>{n.cancel()})}}}var Xt=class extends _t{constructor(){super(...arguments);h(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,r=Math.ceil(e*t),n=e>=2?"lightest":"normal",o=100,l={...this.$["*editorTransformations"]};return l[this._operation]=this._filter!==lt?{name:this._filter,amount:o}:void 0,O(this._originalUrl,P(Fe,Et(l),`quality/${n}`,`scale_crop/${r}x${r}/center`))}_observerCallback(t,e){if(t[0].isIntersecting){let n=this.proxyUrl(this._previewSrc()),o=this.ref["preview-el"],{promise:l,cancel:a}=me(n);this._cancelPreload=a,l.catch(c=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:c})}).finally(()=>{o.style.backgroundImage=`url(${n})`,o.setAttribute("loaded",""),e.unobserve(this)})}else this._cancelPreload&&this._cancelPreload()}initCallback(){super.initCallback(),this.$["on.click"]=e=>{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===lt,this.$.icon=this.$.isOriginal?"original":"slider"}),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("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 r=this.ref["icon-el"];r.style.opacity=e?"1":"0";let n=this.ref["preview-el"];e?n.style.opacity="0":n.style.backgroundImage&&(n.style.opacity="1")}),this.sub("*networkProblems",e=>{if(!e){let r=this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"];n.style.backgroundImage&&(n.style.backgroundImage="none",n.style.backgroundImage=`url(${r})`)}})}destroyCallback(){var t;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),this._cancelPreload&&this._cancelPreload()}};Xt.template=`
`;var _e=class extends _t{constructor(){super(...arguments);h(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=t=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.$.title=this.l10n(t))}),this.sub("*editorTransformations",t=>{if(!this._operation)return;let{zero:e}=rt[this._operation],r=t[this._operation],n=typeof r!="undefined"?r!==e:!1;this.$.active=n})}};var vr=(s,i)=>{let t,e,r;return(...n)=>{t?(clearTimeout(e),e=setTimeout(()=>{Date.now()-r>=i&&(s(...n),r=Date.now())},Math.max(i-(Date.now()-r),0))):(s(...n),r=Date.now(),t=!0)}};function Cr(s,i){let t={};for(let e of i){let r=s[e];(s.hasOwnProperty(e)||r!==void 0)&&(t[e]=r)}return t}function qt(s,i,t){let r=window.devicePixelRatio,n=Math.min(Math.ceil(i*r),3e3),o=r>=2?"lightest":"normal";return O(s,P(Fe,Et(t),`quality/${o}`,`stretch/off/-/resize/${n}x`))}function Ro(s){return s?[({dimensions:t,coords:e})=>[...t,...e].every(r=>Number.isInteger(r)&&Number.isFinite(r)),({dimensions:t,coords:e})=>t.every(r=>r>0)&&e.every(r=>r>=0)].every(t=>t(s)):!0}var ii=class extends L{constructor(){super(),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=I(this._commit.bind(this),300),this._handleResizeThrottled=vr(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 i=this.$["*editorTransformations"],t=Cr(i,Object.keys(this.$["*operations"])),e={...this.$["*operations"],...t};this.$["*operations"]=e}_initCanvas(){let i=this.ref["canvas-el"],t=i.getContext("2d"),e=this.offsetWidth,r=this.offsetHeight,n=window.devicePixelRatio;i.style.width=`${e}px`,i.style.height=`${r}px`,i.width=e*n,i.height=r*n,t==null||t.scale(n,n),this._canvas=i,this._ctx=t}_alignImage(){if(!this._isActive||!this.$.image)return;let i=this.$.image,t=this.$["*padding"],e=this.$["*operations"],{rotate:r}=e,n={width:this.offsetWidth,height:this.offsetHeight},o=zt({width:i.naturalWidth,height:i.naturalHeight},r),l;if(o.width>n.width-t*2||o.height>n.height-t*2){let a=o.width/o.height,c=n.width/n.height;if(a>c){let u=n.width-t*2,d=u/a,p=0+t,m=t+(n.height-t*2)/2-d/2;l={x:p,y:m,width:u,height:d}}else{let u=n.height-t*2,d=u*a,p=t+(n.width-t*2)/2-d/2,m=0+t;l={x:p,y:m,width:d,height:u}}}else{let{width:a,height:c}=o,u=t+(n.width-t*2)/2-a/2,d=t+(n.height-t*2)/2-c/2;l={x:u,y:d,width:a,height:c}}this.$["*imageBox"]=jt(l)}_alignCrop(){var d;let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,n=this.$["*editorTransformations"].crop,{width:o,x:l,y:a}=this.$["*imageBox"];if(n){let{dimensions:[p,m],coords:[f,_]}=n,{width:A}=zt(this._imageSize,r),E=o/A;i=Bt(jt({x:l+f*E,y:a+_*E,width:p*E,height:m*E}),this.$["*imageBox"])}let c=(d=this.$["*cropPresetList"])==null?void 0:d[0],u=c?c.width/c.height:void 0;if(!Us(i,t)||u&&!Rs(i,u)){let p=t.width/t.height,m=t.width,f=t.height;u&&(p>u?m=Math.min(t.height*u,t.width):f=Math.min(t.width/u,t.height)),i={x:t.x+t.width/2-m/2,y:t.y+t.height/2-f/2,width:m,height:f}}this.$["*cropBox"]=Bt(jt(i),this.$["*imageBox"])}_drawImage(){let i=this._ctx;if(!i)return;let t=this.$.image,e=this.$["*imageBox"],r=this.$["*operations"],{mirror:n,flip:o,rotate:l}=r,a=zt({width:e.width,height:e.height},l);i.save(),i.translate(e.x+e.width/2,e.y+e.height/2),i.rotate(l*Math.PI*-1/180),i.scale(n?-1:1,o?-1:1),i.drawImage(t,-a.width/2,-a.height/2,a.width,a.height),i.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let i=this._canvas;this._ctx.clearRect(0,0,i.width,i.height),this._drawImage()}_animateIn({fromViewer:i}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=D({active_from_viewer:i,active_from_editor:!i,inactive_to_editor:!1})}))}_getCropDimensions(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o}=t,{width:l,height:a}=zt(this._imageSize,r),{width:c,height:u}=i,d=n/l,p=o/a;return[wt(Math.round(c/d),1,l),wt(Math.round(u/p),1,a)]}_getCropTransformation(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o,x:l,y:a}=t,{width:c,height:u}=zt(this._imageSize,r),{x:d,y:p}=i,m=n/c,f=o/u,_=this._getCropDimensions(),A={dimensions:_,coords:[wt(Math.round((d-l)/m),0,c-_[0]),wt(Math.round((p-a)/f),0,u-_[1])]};if(!Ro(A)){console.error("Cropper is trying to create invalid crop object",{payload:A});return}if(!(_[0]===c&&_[1]===u))return A}_commit(){if(!this.isConnected)return;let i=this.$["*operations"],{rotate:t,mirror:e,flip:r}=i,n=this._getCropTransformation(),l={...this.$["*editorTransformations"],crop:n,rotate:t,mirror:e,flip:r};this.$["*editorTransformations"]=l}setValue(i,t){console.log(`Apply cropper operation [${i}=${t}]`),this.$["*operations"]={...this.$["*operations"],[i]:t},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(i){return this.$["*operations"][i]}async activate(i,{fromViewer:t}={}){if(!this._isActive){this._isActive=!0,this._imageSize=i,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:t})}catch(e){console.error("Failed to activate cropper",{error:e})}this._observer=new ResizeObserver(([e])=>{e.contentRect.width>0&&e.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:i=!1}={}){var t;this._isActive&&(!i&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=D({active_from_viewer:!1,active_from_editor:!1,inactive_to_editor:!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(t=this._observer)==null||t.disconnect())}_transitionToCrop(){let i=this._getCropDimensions(),t=Math.min(this.offsetWidth,i[0])/this.$["*cropBox"].width,e=Math.min(this.offsetHeight,i[1])/this.$["*cropBox"].height,r=Math.min(t,e),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,o=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${r}) translate(${(this.offsetWidth/2-n)/r}px, ${(this.offsetHeight/2-o)/r}px)`,this.style.transformOrigin=`${n}px ${o}px`}_transitionToImage(){let i=this.$["*cropBox"].x+this.$["*cropBox"].width/2,t=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${i}px ${t}px`}_reset(){this._isActive||(this.$.image=null)}_waitForImage(i,t){let e=this.offsetWidth;t={...t,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let r=this.proxyUrl(qt(i,e,t)),{promise:n,cancel:o,image:l}=me(r),a=this._handleImageLoading(r);return l.addEventListener("load",a,{once:!0}),l.addEventListener("error",a,{once:!0}),this._cancelPreload&&this._cancelPreload(),this._cancelPreload=o,n.then(()=>l).catch(c=>(console.error("Failed to load image",{error:c}),this.$["*networkProblems"]=!0,Promise.resolve(l)))}_handleImageLoading(i){let t="crop",e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",i=>{i||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var i;super.destroyCallback(),(i=this._observer)==null||i.disconnect()}};ii.template=``;function Gi(s,i,t){let e=Array(t);t--;for(let r=t;r>=0;r--)e[r]=Math.ceil((r*i+(t-r)*s)/t);return e}function Po(s){return s.reduce((i,t,e)=>er<=i&&i<=n);return s.map(r=>{let n=Math.abs(e[0]-e[1]),o=Math.abs(i-e[0])/n;return e[0]===r?i>t?1:1-o:e[1]===r?i>=t?o:1:0})}function No(s,i){return s.map((t,e)=>tn-o)}var Ki=class extends L{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=I(this._addKeypoint.bind(this),600),this.classList.add("inactive_to_cropper")}_handleImageLoading(i){let t=this._operation,e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let i of this._keypoints){let{image:t}=i;t&&(t.style.opacity=i.opacity.toString(),t.style.zIndex=i.zIndex.toString())}})}_imageSrc({url:i=this._url,filter:t=this._filter,operation:e,value:r}={}){let n={...this._transformations};e&&(n[e]=t?{name:t,amount:r}:r);let o=this.offsetWidth;return this.proxyUrl(qt(i,o,n))}_constructKeypoint(i,t){return{src:this._imageSrc({operation:i,value:t}),image:null,opacity:0,zIndex:0,value:t}}_isSame(i,t){return this._operation===i&&this._filter===t}_addKeypoint(i,t,e){let r=()=>!this._isSame(i,t)||this._value!==e||!!this._keypoints.find(a=>a.value===e);if(r())return;let n=this._constructKeypoint(i,e),o=new Image;o.src=n.src;let l=this._handleImageLoading(n.src);o.addEventListener("load",l,{once:!0}),o.addEventListener("error",l,{once:!0}),n.image=o,o.classList.add("fader-image"),o.addEventListener("load",()=>{if(r())return;let a=this._keypoints,c=a.findIndex(d=>d.value>e),u=c{this.$["*networkProblems"]=!0},{once:!0})}set(i){i=typeof i=="string"?parseInt(i,10):i,this._update(this._operation,i),this._addKeypointDebounced(this._operation,this._filter,i)}_update(i,t){this._operation=i,this._value=t;let{zero:e}=rt[i],r=this._keypoints.map(l=>l.value),n=Mo(r,t,e),o=No(r,e);for(let[l,a]of Object.entries(this._keypoints))a.opacity=n[l],a.zIndex=o[l];this._flush()}_createPreviewImage(){let i=new Image;return i.classList.add("fader-image","fader-image--preview"),i.style.opacity="0",i}async _initNodes(){let i=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&i.appendChild(this._previewImage);let t=document.createElement("div");i.appendChild(t);let e=this._keypoints.map(c=>c.src),{images:r,promise:n,cancel:o}=ge(e);r.forEach(c=>{let u=this._handleImageLoading(c.src);c.addEventListener("load",u),c.addEventListener("error",u)}),this._cancelLastImages=()=>{o(),this._cancelLastImages=void 0};let l=this._operation,a=this._filter;await n,this._isActive&&this._isSame(l,a)&&(this._container&&this._container.remove(),this._container=t,this._keypoints.forEach((c,u)=>{let d=r[u];d.classList.add("fader-image"),c.image=d,this._container.appendChild(d)}),this.appendChild(i),this._flush())}setTransformations(i){if(this._transformations=i,this._previewImage){let t=this._imageSrc(),e=this._handleImageLoading(t);this._previewImage.src=t,this._previewImage.addEventListener("load",e,{once:!0}),this._previewImage.addEventListener("error",e,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}preload({url:i,filter:t,operation:e,value:r}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=wr(e,r).map(a=>this._imageSrc({url:i,filter:t,operation:e,value:a})),{cancel:l}=ge(o);this._cancelBatchPreload=l}_setOriginalSrc(i){let t=this._previewImage||this._createPreviewImage();if(!this.contains(t)&&this.appendChild(t),this._previewImage=t,t.src===i){t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1});return}t.style.opacity="0";let e=this._handleImageLoading(i);t.addEventListener("error",e,{once:!0}),t.src=i,t.addEventListener("load",()=>{e(),t&&(t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1}))},{once:!0}),t.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}activate({url:i,operation:t,value:e,filter:r,fromViewer:n}){if(this._isActive=!0,this._hidden=!1,this._url=i,this._operation=t||"initial",this._value=e,this._filter=r,this._fromViewer=n,typeof e!="number"&&!r){let l=this._imageSrc({operation:t,value:e});this._setOriginalSrc(l),this._container&&this._container.remove();return}this._keypoints=wr(t,e).map(l=>this._constructKeypoint(t,l)),this._update(t,e),this._initNodes()}deactivate({hide:i=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),i&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=D({active_from_viewer:!1,active_from_cropper:!1,inactive_to_cropper:!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};var Do=1,si=class extends L{initCallback(){super.initCallback(),this.addEventListener("wheel",i=>{i.preventDefault();let{deltaY:t,deltaX:e}=i;Math.abs(e)>Do?this.scrollLeft+=e:this.scrollLeft+=t})}};si.template=" ";function Fo(s){return``}function Vo(s){return`
`}var ri=class extends L{constructor(){super();h(this,"_updateInfoTooltip",I(()=>{var o,l;let t=this.$["*editorTransformations"],e=this.$["*currentOperation"],r="",n=!1;if(this.$["*tabId"]===N.FILTERS)if(n=!0,this.$["*currentFilter"]&&((o=t==null?void 0:t.filter)==null?void 0:o.name)===this.$["*currentFilter"]){let a=((l=t==null?void 0:t.filter)==null?void 0:l.amount)||100;r=this.l10n(this.$["*currentFilter"])+" "+a}else r=this.l10n(lt);else if(this.$["*tabId"]===N.TUNING&&e){n=!0;let a=(t==null?void 0:t[e])||rt[e].zero;r=e+" "+a}n&&(this.$["*operationTooltip"]=r),this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",n)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":lt,"*currentOperation":null,"*tabId":N.CROP,showLoader:!1,filters:er,colorOperations:tr,cropOperations:ir,"*operationTooltip":null,"l10n.cancel":this.l10n("cancel"),"l10n.apply":this.l10n("apply"),"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:"sub-toolbar--top-hidden",visible:"sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"sub-toolbar--bottom-hidden",visible:"sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"tab-content--hidden",visible:"tab-content--visible"},"presence.tabToggleStyles":{hidden:"tab-toggle--hidden",visible:"tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"tab-toggles--hidden",visible:"tab-toggles--visible"},"on.cancel":()=>{this._cancelPreload&&this._cancelPreload(),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":t=>{let e=t.currentTarget.getAttribute("data-id");e&&this._activateTab(e,{fromViewer:!1})}},this._debouncedShowLoader=I(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===N.TUNING&&this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",!1)}_createOperationControl(t){let e=new _e;return e.operation=t,e}_createFilterControl(t){let e=new Xt;return e.filter=t,e}_createToggleControl(t){let e=new pe;return e.operation=t,e}_renderControlsList(t){let e=this.ref[`controls-list-${t}`],r=document.createDocumentFragment();t===N.CROP?this.$.cropOperations.forEach(n=>{let o=this._createToggleControl(n);r.appendChild(o)}):t===N.FILTERS?[lt,...this.$.filters].forEach(n=>{let o=this._createFilterControl(n);r.appendChild(o)}):t===N.TUNING&&this.$.colorOperations.forEach(n=>{let o=this._createOperationControl(n);r.appendChild(o)}),[...r.children].forEach((n,o)=>{o===r.childNodes.length-1&&n.classList.add("controls-list_last-item")}),e.innerHTML="",e.appendChild(r)}_activateTab(t,{fromViewer:e}){this.$["*tabId"]=t,t===N.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:e})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:e}),this.$["*cropperEl"].deactivate());for(let r of W){let n=r===t,o=this.ref[`tab-toggle-${r}`];o.active=n,n?(this._renderControlsList(t),this._syncTabIndicator()):this._unmountTabControls(r),this.$[`presence.tabContent.${r}`]=n}}_unmountTabControls(t){let e=this.ref[`controls-list-${t}`];e&&(e.innerHTML="")}_syncTabIndicator(){let t=this.ref[`tab-toggle-${this.$["*tabId"]}`],e=this.ref["tabs-indicator"];e.style.transform=`translateX(${t.offsetLeft}px)`}_preloadEditedImage(){if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let t=this.$["*imgContainerEl"].offsetWidth,e=this.proxyUrl(qt(this.$["*originalUrl"],t,this.$["*editorTransformations"]));this._cancelPreload&&this._cancelPreload();let{cancel:r}=ge([e]);this._cancelPreload=()=>{r(),this._cancelPreload=void 0}}}_showLoader(t){this.$.showLoader=t}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",t=>{t&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",t=>{var r;let e=(r=t==null?void 0:t.filter)==null?void 0:r.name;this.$["*currentFilter"]!==e&&(this.$["*currentFilter"]=e)}),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",t=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(t)}),this.sub("*loadingOperations",t=>{let e=!1;for(let[,r]of t.entries()){if(e)break;for(let[,n]of r.entries())if(n){e=!0;break}}this._debouncedShowLoader(e)}),this.sub("*showSlider",t=>{this.$["presence.subToolbar"]=t,this.$["presence.mainToolbar"]=!t}),this.sub("*tabList",t=>{this.$["presence.tabToggles"]=t.length>1;for(let e of W){this.$[`presence.tabToggle.${e}`]=t.includes(e);let r=this.ref[`tab-toggle-${e}`];r.style.gridColumn=t.indexOf(e)+1}t.includes(this.$["*tabId"])||this._activateTab(t[0],{fromViewer:!1})}),this._updateInfoTooltip()}};ri.template=`
{{*operationTooltip}}
${W.map(Vo).join("")}
${W.map(Fo).join("")}
`;var be=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},this.defineAccessor("active",i=>{i?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return D("icon",{icon_left:!this._iconReversed,icon_right:this._iconReversed,icon_hidden:this._iconHidden,icon_single:this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",i=>{this._iconSingle=!this.$.text,this._iconHidden=!i,this.$.iconCss=this._iconCss()}),this.sub("theme",i=>{i!=="custom"&&(this.className=i)}),this.sub("text",i=>{this._iconSingle=!1}),this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.hasAttribute("theme")||this.setAttribute("theme","default")}set reverse(i){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};be.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});be.template=`
{{text}}
`;var ni=class extends b{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let i=this.ref["line-el"];i.style.transition="initial",i.style.opacity="0",i.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",i=>{typeof i=="boolean"&&(i?this._start():this._stop())})}_start(){this._active=!0;let{width:i}=this.getBoundingClientRect(),t=this.ref["line-el"];t.style.transition="transform 1s",t.style.opacity="1",t.style.transform=`translateX(${i}px)`,t.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};ni.template=`
`;var oi={transition:"transition",visible:"visible",hidden:"hidden"},li=class extends b{constructor(){super(),this._visible=!1,this._visibleStyle=oi.visible,this._hiddenStyle=oi.hidden,this._externalTransitions=!1,this.defineAccessor("styles",i=>{i&&(this._externalTransitions=!0,this._visibleStyle=i.visible,this._hiddenStyle=i.hidden)}),this.defineAccessor("visible",i=>{typeof i=="boolean"&&(this._visible=i,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",gr(this,{[oi.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.setAttribute("hidden",""),this._externalTransitions||this.classList.add(oi.transition),this._handleVisible(),setTimeout(()=>this.removeAttribute("hidden"),0)}};li.template=" ";var ai=class extends b{constructor(){super();h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let t=parseInt(this.ref["input-el"].value,10);this._updateValue(t),this.$.onInput&&this.$.onInput(t)},"on.sliderChange":()=>{let t=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(t)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",e=>{this.$.disabled=e}),this.defineAccessor("min",e=>{this.$.min=e}),this.defineAccessor("max",e=>{this.$.max=e}),this.defineAccessor("defaultValue",e=>{this.$.defaultValue=e,this.ref["input-el"].value=e,this._updateValue(e)}),this.defineAccessor("zero",e=>{this._zero=e}),this.defineAccessor("onInput",e=>{e&&(this.$.onInput=e)}),this.defineAccessor("onChange",e=>{e&&(this.$.onChange=e)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)},0),this.sub("disabled",e=>{let r=this.ref["input-el"];e?r.setAttribute("disabled","disabled"):r.removeAttribute("disabled")});let t=this.ref["input-el"];t.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),t.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(t){this._updateZeroDot(t);let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(t-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${o}px)`})}_updateZeroDot(t){if(!this._zeroDotEl)return;t===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="0.2";let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${o}px)`})}_updateSteps(){let e=this.ref["steps-el"],{width:r}=e.getBoundingClientRect(),n=Math.ceil(r/2),o=Math.ceil(n/15)-2;if(this._stepsCount===o)return;let l=document.createDocumentFragment(),a=document.createElement("div"),c=document.createElement("div");a.className="minor-step",c.className="border-step",l.appendChild(c);for(let d=0;d
`;var Yi=class extends v{constructor(){super();h(this,"activityType",g.activities.CLOUD_IMG_EDIT);this.init$={...this.init$,cdnUrl:null}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.sub("*focusedEntry",t=>{t&&(this.entry=t,this.entry.subscribe("cdnUrl",e=>{e&&(this.$.cdnUrl=e)}))}),this.subConfigValue("cropPreset",t=>{this._instance&&this._instance.getAttribute("crop-preset")!==t&&this._instance.setAttribute("crop-preset",t)}),this.subConfigValue("cloudImageEditorTabs",t=>{this._instance&&this._instance.getAttribute("tabs")!==t&&this._instance.setAttribute("tabs",t)})}handleApply(t){if(!this.entry)return;let e=t.detail;this.entry.setMultipleValues({cdnUrl:e.cdnUrl,cdnUrlModifiers:e.cdnUrlModifiers}),this.historyBack()}handleCancel(){this.historyBack()}mountEditor(){let t=new ot,e=this.$.cdnUrl,r=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;t.setAttribute("ctx-name",this.ctxName),t.setAttribute("cdn-url",e),r&&t.setAttribute("crop-preset",r),n&&t.setAttribute("tabs",n),t.addEventListener("apply",o=>this.handleApply(o)),t.addEventListener("cancel",()=>this.handleCancel()),this.innerHTML="",this.appendChild(t),this._mounted=!0,this._instance=t}unmountEditor(){this._instance=void 0,this.innerHTML=""}};var Bo=function(s){return s.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},Tr=function(s,i="i"){let t=s.split("*").map(Bo);return new RegExp("^"+t.join(".+")+"$",i)};var zo=s=>Object.keys(s).reduce((t,e)=>{let r=s[e],n=Object.keys(r).reduce((o,l)=>{let a=r[l];return o+`${l}: ${a};`},"");return t+`${e}{${n}}`},"");function Er({textColor:s,backgroundColor:i,linkColor:t,linkColorHover:e,shadeColor:r}){let n=`solid 1px ${r}`;return zo({body:{color:s,"background-color":i},".side-bar":{background:"inherit","border-right":n},".main-content":{background:"inherit"},".main-content-header":{background:"inherit"},".main-content-footer":{background:"inherit"},".list-table-row":{color:"inherit"},".list-table-row:hover":{background:r},".list-table-row .list-table-cell-a, .list-table-row .list-table-cell-b":{"border-top":n},".list-table-body .list-items":{"border-bottom":n},".bread-crumbs a":{color:t},".bread-crumbs a:hover":{color:e},".main-content.loading":{background:`${i} url(/static/images/loading_spinner.gif) center no-repeat`,"background-size":"25px 25px"},".list-icons-item":{"background-color":r},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a":{color:t},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a:hover":{color:e},".side-bar-menu a":{color:t},".side-bar-menu a:hover":{color:e},".source-gdrive .side-bar-menu .current, .source-gdrive .side-bar-menu a:hover, .source-gphotos .side-bar-menu .current, .source-gphotos .side-bar-menu a:hover":{color:e},".source-vk .side-bar-menu a":{color:t},".source-vk .side-bar-menu a:hover":{color:e,background:"none"}})}var At={};window.addEventListener("message",s=>{let i;try{i=JSON.parse(s.data)}catch{return}if((i==null?void 0:i.type)in At){let t=At[i.type];for(let[e,r]of t)s.source===e&&r(i)}});var xr=function(s,i,t){s in At||(At[s]=[]),At[s].push([i,t])},Ar=function(s,i){s in At&&(At[s]=At[s].filter(t=>t[0]!==i))};function $r(s){let i=[];for(let[t,e]of Object.entries(s))e==null||typeof e=="string"&&e.length===0||i.push(`${t}=${encodeURIComponent(e)}`);return i.join("&")}var ci=class extends v{constructor(){super();h(this,"activityType",g.activities.EXTERNAL);h(this,"_iframe",null);h(this,"updateCssData",()=>{this.isActivityActive&&(this._inheritedUpdateCssData(),this.applyStyles())});h(this,"_inheritedUpdateCssData",this.updateCssData);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],counter:0,onDone:()=>{for(let t of this.$.selectedList){let e=this.extractUrlFromMessage(t),{filename:r}=t,{externalSourceType:n}=this.activityParams;this.addFileFromUrl(e,{fileName:r,source:n})}this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()}}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:t}=this.activityParams;this.set$({activityCaption:`${t==null?void 0:t[0].toUpperCase()}${t==null?void 0:t.slice(1)}`,activityIcon:t}),this.mountIframe()}}),this.sub("*currentActivity",t=>{t!==this.activityType&&this.unmountIframe()}),this.sub("selectedList",t=>{this.$.counter=t.length})}extractUrlFromMessage(t){if(t.alternatives){let e=M(this.cfg.externalSourcesPreferredTypes);for(let r of e){let n=Tr(r);for(let[o,l]of Object.entries(t.alternatives))if(n.test(o))return l}}return t.url}sendMessage(t){var e,r;(r=(e=this._iframe)==null?void 0:e.contentWindow)==null||r.postMessage(JSON.stringify(t),"*")}async handleFileSelected(t){this.$.selectedList=[...this.$.selectedList,t]}handleIframeLoad(){this.applyStyles()}getCssValue(t){return window.getComputedStyle(this).getPropertyValue(t).trim()}applyStyles(){let t={backgroundColor:this.getCssValue("--clr-background-light"),textColor:this.getCssValue("--clr-txt"),shadeColor:this.getCssValue("--clr-shade-lv1"),linkColor:"#157cfc",linkColorHover:"#3891ff"};this.sendMessage({type:"embed-css",style:Er(t)})}remoteUrl(){var l,a;let t=this.cfg.pubkey,e=(!1).toString(),{externalSourceType:r}=this.activityParams,n={lang:((a=(l=this.getCssData("--l10n-locale-name"))==null?void 0:l.split("-"))==null?void 0:a[0])||"en",public_key:t,images_only:e,pass_window_open:!1,session_key:this.cfg.remoteTabSessionKey},o=new URL(this.cfg.socialBaseUrl);return o.pathname=`/window3/${r}`,o.search=$r(n),o.toString()}mountIframe(){let t=Zt({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});t.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(t),xr("file-selected",t.contentWindow,this.handleFileSelected.bind(this)),this._iframe=t,this.$.selectedList=[]}unmountIframe(){this._iframe&&Ar("file-selected",this._iframe.contentWindow),this.ref.iframeWrapper.innerHTML="",this._iframe=null,this.$.selectedList=[],this.$.counter=0}};ci.template=`
{{activityCaption}}
{{counter}}
`;var ye=class extends b{setCurrentTab(i){if(!i)return;[...this.ref.context.querySelectorAll("[tab-ctx]")].forEach(e=>{e.getAttribute("tab-ctx")===i?e.removeAttribute("hidden"):e.setAttribute("hidden","")});for(let e in this._tabMap)e===i?this._tabMap[e].setAttribute("current",""):this._tabMap[e].removeAttribute("current")}initCallback(){super.initCallback(),this._tabMap={},this.defineAccessor("tab-list",i=>{if(!i)return;M(i).forEach(e=>{let r=Zt({tag:"div",attributes:{class:"tab"},properties:{onclick:()=>{this.setCurrentTab(e)}}});r.textContent=this.l10n(e),this.ref.row.appendChild(r),this._tabMap[e]=r})}),this.defineAccessor("default",i=>{this.setCurrentTab(i)}),this.hasAttribute("default")||this.setCurrentTab(Object.keys(this._tabMap)[0])}};ye.bindAttributes({"tab-list":null,default:null});ye.template=`
`;var Gt=class extends v{constructor(){super();h(this,"processInnerHtml",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return Gt.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,yi(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var e,r;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(l=>l.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let l of n){let a=document.createElement("input");a.type="hidden",a.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,a.value=l!=null?l:"",this._dynamicInputsContainer.appendChild(a)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let l=o.find(d=>!d.isValid),a=(r=l==null?void 0:l.validationErrorMessage)!=null?r:(e=l==null?void 0:l.uploadError)==null?void 0:e.message,c=this.$["*message"];c=c!=null&&c.isError?`${c.caption}. ${c.text}`:void 0;let u=a!=null?a:c;u?this._validationInputElement.setCustomValidity(u):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(l=>l.isUploaded&&l.isValid)){this.$.output={groupData:void 0,files:t};return}let r=this.getUploadClientOptions(),n=t.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=await Ts(n,r);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};Gt.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var Zi=class extends g{};var hi=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:t=>{var e;t.preventDefault(),t.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((e=this.$.options.find(r=>r.value==this.value))==null?void 0:e.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",t=>{var r;this.$.currentText=((r=t==null?void 0:t[0])==null?void 0:r.text)||"";let e="";t==null||t.forEach(n=>{e+=``}),this.$.selectHtml=e})}};hi.template=``;var q={PLAY:"play",PAUSE:"pause",FS_ON:"fullscreen-on",FS_OFF:"fullscreen-off",VOL_ON:"unmute",VOL_OFF:"mute",CAP_ON:"captions",CAP_OFF:"captions-off"},Sr={requestFullscreen:s=>{s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen&&s.webkitRequestFullscreen()},exitFullscreen:()=>{document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}},Q=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,src:"",ppIcon:q.PLAY,fsIcon:q.FS_ON,volIcon:q.VOL_ON,capIcon:q.CAP_OFF,totalTime:"00:00",currentTime:"00:00",progressCssWidth:"0",hasSubtitles:!1,volumeDisabled:!1,volumeValue:0,onPP:()=>{this.togglePlay()},onFs:()=>{this.toggleFullscreen()},onCap:()=>{this.toggleCaptions()},onMute:()=>{this.toggleSound()},onVolChange:t=>{let e=parseFloat(t.currentTarget.$.value);this.setVolume(e)},progressClicked:t=>{let e=this.progress.getBoundingClientRect();this._video.currentTime=this._video.duration*(t.offsetX/e.width)}})}togglePlay(){this._video.paused||this._video.ended?this._video.play():this._video.pause()}toggleFullscreen(){(document.fullscreenElement||document.webkitFullscreenElement)===this?Sr.exitFullscreen():Sr.requestFullscreen(this)}toggleCaptions(){this.$.capIcon===q.CAP_OFF?(this.$.capIcon=q.CAP_ON,this._video.textTracks[0].mode="showing",window.localStorage.setItem(Q.is+":captions","1")):(this.$.capIcon=q.CAP_OFF,this._video.textTracks[0].mode="hidden",window.localStorage.removeItem(Q.is+":captions"))}toggleSound(){this.$.volIcon===q.VOL_ON?(this.$.volIcon=q.VOL_OFF,this.$.volumeDisabled=!0,this._video.muted=!0):(this.$.volIcon=q.VOL_ON,this.$.volumeDisabled=!1,this._video.muted=!1)}setVolume(t){window.localStorage.setItem(Q.is+":volume",t);let e=t?t/100:0;this._video.volume=e}get progress(){return this.ref.progress}_getUrl(t){return t.includes("/")?t:`https://ucarecdn.com/${t}/`}_desc2attrs(t){let e=[];for(let r in t){let n=r==="src"?this._getUrl(t[r]):t[r];e.push(`${r}="${n}"`)}return e.join(" ")}_timeFmt(t){let e=new Date(Math.round(t)*1e3);return[e.getMinutes(),e.getSeconds()].map(r=>r<10?"0"+r:r).join(":")}_initTracks(){[...this._video.textTracks].forEach(t=>{t.mode="hidden"}),window.localStorage.getItem(Q.is+":captions")&&this.toggleCaptions()}_castAttributes(){let t=["autoplay","loop","muted"];[...this.attributes].forEach(e=>{t.includes(e.name)&&this._video.setAttribute(e.name,e.value)})}initCallback(){super.initCallback(),this._video=this.ref.video,this._castAttributes(),this._video.addEventListener("play",()=>{this.$.ppIcon=q.PAUSE,this.setAttribute("playback","")}),this._video.addEventListener("pause",()=>{this.$.ppIcon=q.PLAY,this.removeAttribute("playback")}),this.addEventListener("fullscreenchange",e=>{console.log(e),document.fullscreenElement===this?this.$.fsIcon=q.FS_OFF:this.$.fsIcon=q.FS_ON}),this.sub("src",e=>{if(!e)return;let r=this._getUrl(e);this._video.src=r}),this.sub("video",async e=>{if(!e)return;let r=await(await window.fetch(this._getUrl(e))).json();r.poster&&(this._video.poster=this._getUrl(r.poster));let n="";r==null||r.sources.forEach(o=>{n+=``}),r.tracks&&(r.tracks.forEach(o=>{n+=``}),this.$.hasSubtitles=!0),this._video.innerHTML+=n,this._initTracks(),console.log(r)}),this._video.addEventListener("loadedmetadata",e=>{this.$.currentTime=this._timeFmt(this._video.currentTime),this.$.totalTime=this._timeFmt(this._video.duration)}),this._video.addEventListener("timeupdate",e=>{let r=Math.round(100*(this._video.currentTime/this._video.duration));this.$.progressCssWidth=r+"%",this.$.currentTime=this._timeFmt(this._video.currentTime)});let t=window.localStorage.getItem(Q.is+":volume");if(t){let e=parseFloat(t);this.setVolume(e),this.$.volumeValue=e}}};Q.template=`
{{currentTime}} / {{totalTime}}
`;Q.bindAttributes({video:"video",src:"src"});var jo="css-src";function ui(s){return class extends s{constructor(){super(...arguments);h(this,"renderShadow",!0);h(this,"pauseRender",!0);h(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),Ae({element:this,attribute:jo,onSuccess:t=>{this.attachShadow({mode:"open"});let e=document.createElement("link");e.rel="stylesheet",e.type="text/css",e.href=t,e.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(e)},onTimeout:()=>{console.error("Attribute `css-src` is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}var ve=class extends ui(b){};var di=class extends b{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};h(di,"template",`Powered by Uploadcare`);var $t=class extends ve{constructor(){super(...arguments);h(this,"requireCtxName",!0);h(this,"init$",Ue(this));h(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};var pi=class extends $t{};pi.template=``;var fi=class extends $t{constructor(){super(...arguments);h(this,"pauseRender",!0)}shadowReadyCallback(){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"]=g.activities.UPLOAD_LIST:this.$["*currentActivity"]=t.initActivity||g.activities.START_FROM}),this.subConfigValue("sourceList",e=>{e!=="local"&&(this.cfg.sourceList="local")}),this.subConfigValue("confirmUpload",e=>{e!==!1&&(this.cfg.confirmUpload=!1)})}};fi.template=``;var mi=class extends $t{constructor(){super(),this.init$={...this.init$,couldCancel:!1,cancel:()=>{this.couldHistoryBack?this.$["*historyBack"]():this.couldShowList&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}}}get couldHistoryBack(){let i=this.$["*history"];return i.length>1&&i[i.length-1]!==g.activities.START_FROM}get couldShowList(){return this.cfg.showEmptyList||this.$["*uploadList"].length>0}shadowReadyCallback(){let i=this.ref.uBlock;this.sub("*currentActivity",t=>{t||(this.$["*currentActivity"]=i.initActivity||g.activities.START_FROM)}),this.sub("*uploadList",t=>{(t==null?void 0:t.length)>0&&this.$["*currentActivity"]===(i.initActivity||g.activities.START_FROM)&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}),this.sub("*history",()=>{this.$.couldCancel=this.couldHistoryBack||this.couldShowList})}};mi.template=``;var Ji=class extends ui(ot){shadowReadyCallback(){this.__shadowReady=!0,this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async initEditor(){this.__shadowReady&&await super.initEditor()}};function Qi(s){for(let i in s){let t=[...i].reduce((e,r)=>(r.toUpperCase()===r&&(r="-"+r.toLowerCase()),e+=r),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),s[i].reg&&s[i].reg(t)}}var ts="LR";async function Ho(s,i=!1){return new Promise((t,e)=>{if(typeof document!="object"){t(null);return}if(typeof window=="object"&&window[ts]){t(window[ts]);return}let r=document.createElement("script");r.async=!0,r.src=s,r.onerror=()=>{e()},r.onload=()=>{let n=window[ts];i&&Qi(n),t(n)},document.head.appendChild(r)})}export{g as ActivityBlock,Zi as ActivityHeader,Nt as BaseComponent,b as Block,Ke as CameraSource,Ji as CloudImageEditor,Yi as CloudImageEditorActivity,ot as CloudImageEditorBlock,To as Config,Ze as ConfirmationDialog,di as Copyright,ti as CropFrame,$ as Data,Gt as DataOutput,ae as DropArea,pe as EditorCropButtonControl,Xt as EditorFilterControl,ii as EditorImageCropper,Ki as EditorImageFader,_e as EditorOperationControl,si as EditorScroller,ei as EditorSlider,ri as EditorToolbar,ci as ExternalSource,gt as FileItem,de as FilePreview,mi as FileUploaderInline,fi as FileUploaderMinimal,pi as FileUploaderRegular,ne as Icon,Bi as Img,ni as LineLoaderUi,be as LrBtnUi,Xe as MessageBox,ue as Modal,Ns as PACKAGE_NAME,Ds as PACKAGE_VERSION,li as PresenceToggle,Qe as ProgressBar,Je as ProgressBarCommon,hi as Select,ve as ShadowWrapper,le as SimpleBtn,ai as SliderUi,ce as SourceBtn,Hi as SourceList,He as StartFrom,ye as Tabs,ko as UploadCtxProvider,Ye as UploadDetails,qe as UploadList,v as UploaderBlock,Ge as UrlSource,Q as Video,Ho as connectBlocksFrom,Qi as registerBlocks,ui as shadowed,ut as toKebabCase}; \ No newline at end of file diff --git a/web/lr-file-uploader-minimal.min.css b/web/lr-file-uploader-minimal.min.css index bcf1e20d0..165450d4f 100644 --- a/web/lr-file-uploader-minimal.min.css +++ b/web/lr-file-uploader-minimal.min.css @@ -1 +1 @@ -:where(.lr-wgt-cfg,.lr-wgt-common),:host{--cfg-pubkey: "YOUR_PUBLIC_KEY";--cfg-multiple: 1;--cfg-multiple-min: 0;--cfg-multiple-max: 0;--cfg-confirm-upload: 0;--cfg-img-only: 0;--cfg-accept: "";--cfg-external-sources-preferred-types: "";--cfg-store: "auto";--cfg-camera-mirror: 1;--cfg-source-list: "local, url, camera, dropbox, gdrive";--cfg-max-local-file-size-bytes: 0;--cfg-thumb-size: 76;--cfg-show-empty-list: 0;--cfg-use-local-image-editor: 0;--cfg-use-cloud-image-editor: 1;--cfg-remove-copyright: 0;--cfg-modal-scroll-lock: 1;--cfg-modal-backdrop-strokes: 0;--cfg-source-list-wrap: 1;--cfg-init-activity: "start-from";--cfg-done-activity: "";--cfg-remote-tab-session-key: "";--cfg-cdn-cname: "https://ucarecdn.com";--cfg-base-url: "https://upload.uploadcare.com";--cfg-social-base-url: "https://social.uploadcare.com";--cfg-secure-signature: "";--cfg-secure-expire: "";--cfg-secure-delivery-proxy: "";--cfg-retry-throttled-request-max-times: 1;--cfg-multipart-min-file-size: 26214400;--cfg-multipart-chunk-size: 5242880;--cfg-max-concurrent-requests: 10;--cfg-multipart-max-concurrent-requests: 4;--cfg-multipart-max-attempts: 3;--cfg-check-for-url-duplicates: 0;--cfg-save-url-for-recurrent-uploads: 0;--cfg-group-output: 0;--cfg-user-agent-integration: ""}:where(.lr-wgt-theme,.lr-wgt-common),:host{color:var(--clr-txt);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}:where(.lr-wgt-theme,.lr-wgt-common) *,:host *{box-sizing:border-box}:where(.lr-wgt-theme,.lr-wgt-common) [hidden],:host [hidden]{display:none!important}:where(.lr-wgt-theme,.lr-wgt-common) [activity]:not([active]),:host [activity]:not([active]){display:none}:where(.lr-wgt-theme,.lr-wgt-common) dialog:not([open]) [activity],:host dialog:not([open]) [activity]{display:none}:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{display:flex;align-items:center;justify-content:center;height:var(--ui-size);padding-right:1.4em;padding-left:1.4em;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--border-radius-element);cursor:pointer;user-select:none}@media only screen and (max-width: 800px){:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{padding-right:1em;padding-left:1em}}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn,:host button.primary-btn{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary);box-shadow:var(--shadow-btn-primary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:hover,:host button.primary-btn:hover{background-color:var(--clr-btn-bgr-primary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:active,:host button.primary-btn:active{background-color:var(--clr-btn-bgr-primary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn,:host button.secondary-btn{color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:hover,:host button.secondary-btn:hover{background-color:var(--clr-btn-bgr-secondary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:active,:host button.secondary-btn:active{background-color:var(--clr-btn-bgr-secondary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn,:host button.mini-btn{width:var(--ui-size);height:var(--ui-size);padding:0;background-color:transparent;border:none;cursor:pointer;transition:var(--transition-duration) ease;color:var(--clr-txt)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:hover,:host button.mini-btn:hover{background-color:var(--clr-shade-lv1)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:active,:host button.mini-btn:active{background-color:var(--clr-shade-lv2)}:where(.lr-wgt-theme,.lr-wgt-common) :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]),:host :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]){color:var(--clr-btn-txt-disabled);background-color:var(--clr-btn-bgr-disabled);box-shadow:var(--shadow-btn-disabled);pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) a,:host a{color:var(--clr-accent);text-decoration:none}:where(.lr-wgt-theme,.lr-wgt-common) a[disabled],:host a[disabled]{pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]{display:flex;width:100%;height:var(--ui-size);padding-right:.6em;padding-left:.6em;color:var(--clr-txt);font-size:1em;font-family:inherit;background-color:var(--clr-background-light);border:var(--border-light);border-radius:var(--border-radius-element);transition:var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]::placeholder{color:var(--clr-txt-lightest)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:hover,:host input[type=text]:hover{border-color:var(--clr-accent-light)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:focus,:host input[type=text]:focus{border-color:var(--clr-accent);outline:none}:where(.lr-wgt-theme,.lr-wgt-common) input[disabled],:host input[disabled]{opacity:.6;pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common),:host{--darkmode: 0;--h-foreground: 208;--s-foreground: 4%;--l-foreground: calc(10% + 78% * var(--darkmode));--h-background: 208;--s-background: 4%;--l-background: calc(97% - 85% * var(--darkmode));--h-accent: 211;--s-accent: 100%;--l-accent: calc(50% - 5% * var(--darkmode));--h-confirm: 137;--s-confirm: 85%;--l-confirm: 53%;--h-error: 358;--s-error: 100%;--l-error: 66%;--shadows: 1;--h-shadow: 0;--s-shadow: 0%;--l-shadow: 0%;--opacity-normal: .6;--opacity-hover: .9;--opacity-active: 1;--ui-size: 32px;--gap-min: 2px;--gap-small: 4px;--gap-mid: 10px;--gap-max: 20px;--gap-table: 0px;--borders: 1;--border-radius-element: 8px;--border-radius-frame: 12px;--border-radius-thumb: 6px;--transition-duration: .2s;--modal-max-w: 800px;--modal-max-h: 600px;--modal-normal-w: 430px;--darkmode-minus: calc(1 + var(--darkmode) * -2);--clr-background: hsl(var(--h-background), var(--s-background), var(--l-background));--clr-background-dark: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-background-light: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 3% * var(--darkmode-minus)) );--clr-accent: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 15% * var(--darkmode)));--clr-accent-light: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 30%);--clr-accent-lightest: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 10%);--clr-accent-light-opaque: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 45% * var(--darkmode-minus)));--clr-accent-lightest-opaque: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) + 47% * var(--darkmode-minus)) );--clr-confirm: hsl(var(--h-confirm), var(--s-confirm), var(--l-confirm));--clr-error: hsl(var(--h-error), var(--s-error), var(--l-error));--clr-error-light: hsla(var(--h-error), var(--s-error), var(--l-error), 15%);--clr-error-lightest: hsla(var(--h-error), var(--s-error), var(--l-error), 5%);--clr-error-message-bgr: hsl(var(--h-error), var(--s-error), calc(var(--l-error) + 60% * var(--darkmode-minus)));--clr-txt: hsl(var(--h-foreground), var(--s-foreground), var(--l-foreground));--clr-txt-mid: hsl(var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 20% * var(--darkmode-minus)));--clr-txt-light: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 30% * var(--darkmode-minus)) );--clr-txt-lightest: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 50% * var(--darkmode-minus)) );--clr-shade-lv1: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 5%);--clr-shade-lv2: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 8%);--clr-shade-lv3: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 12%);--clr-generic-file-icon: var(--clr-txt-lightest);--border-light: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.1 - .05 * var(--darkmode)) * var(--borders)) );--border-mid: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.2 - .1 * var(--darkmode)) * var(--borders)) );--border-accent: 1px solid hsla(var(--h-accent), var(--s-accent), var(--l-accent), 1 * var(--borders));--border-dashed: 1px dashed hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), calc(.2 * var(--borders)));--clr-curtain: hsla(var(--h-background), var(--s-background), calc(var(--l-background)), 60%);--hsl-shadow: var(--h-shadow), var(--s-shadow), var(--l-shadow);--modal-shadow: 0px 0px 1px hsla(var(--hsl-shadow), calc((.3 + .65 * var(--darkmode)) * var(--shadows))), 0px 6px 20px hsla(var(--hsl-shadow), calc((.1 + .4 * var(--darkmode)) * var(--shadows)));--clr-btn-bgr-primary: var(--clr-accent);--clr-btn-bgr-primary-hover: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 4% * var(--darkmode-minus)) );--clr-btn-bgr-primary-active: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 8% * var(--darkmode-minus)) );--clr-btn-txt-primary: hsl(var(--h-accent), var(--s-accent), 98%);--shadow-btn-primary: none;--clr-btn-bgr-secondary: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-hover: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 7% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-active: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 12% * var(--darkmode-minus)) );--clr-btn-txt-secondary: var(--clr-txt-mid);--shadow-btn-secondary: none;--clr-btn-bgr-disabled: var(--clr-background);--clr-btn-txt-disabled: var(--clr-txt-lightest);--shadow-btn-disabled: none}@media only screen and (max-height: 600px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-h: 100%}}@media only screen and (max-width: 430px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-w: 100vw;--modal-max-h: var(--uploadcare-blocks-window-height)}}lr-start-from{display:block}lr-start-from .content{display:grid;grid-auto-flow:row;gap:var(--gap-max);width:100%;height:max-content;padding:var(--gap-max);overflow-y:auto;background-color:var(--clr-background-light)}lr-modal lr-start-from{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-drop-area{padding:var(--gap-min);overflow:hidden;border:var(--border-dashed);border-radius:var(--border-radius-frame);transition:var(--transition-duration) ease}lr-drop-area,lr-drop-area .content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}lr-drop-area .text{position:relative;margin:var(--gap-mid);color:var(--clr-txt-light);transition:var(--transition-duration) ease}lr-drop-area[ghost][drag-state=inactive]{display:none;opacity:0}lr-drop-area[ghost]:not([fullscreen]):is([drag-state="active"],[drag-state="near"],[drag-state="over"]){background:var(--clr-background)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) :is(.text,.icon-container){color:var(--clr-accent)}lr-drop-area:is([drag-state="active"],[drag-state="near"],[drag-state="over"],:hover){color:var(--clr-accent);background:var(--clr-accent-lightest);border-color:var(--clr-accent-light)}lr-drop-area:is([drag-state="active"],[drag-state="near"]){opacity:1}lr-drop-area[drag-state=over]{border-color:var(--clr-accent);opacity:1}lr-drop-area[with-icon]{min-height:calc(var(--ui-size) * 6)}lr-drop-area[with-icon] .content-wrapper{display:flex;flex-direction:column}lr-drop-area[with-icon] .text{color:var(--clr-txt);font-weight:500;font-size:1.1em}lr-drop-area[with-icon] .icon-container{position:relative;width:calc(var(--ui-size) * 2);height:calc(var(--ui-size) * 2);margin:var(--gap-mid);overflow:hidden;color:var(--clr-txt);background-color:var(--clr-background);border-radius:50%;transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon{position:absolute;top:calc(50% - var(--ui-size) / 2);left:calc(50% - var(--ui-size) / 2);transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon:last-child{transform:translateY(calc(var(--ui-size) * 1.5))}lr-drop-area[with-icon]:hover .icon-container,lr-drop-area[with-icon]:hover .text{color:var(--clr-accent)}lr-drop-area[with-icon]:hover .icon-container{background-color:var(--clr-accent-lightest)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .icon-container{color:#fff;background-color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .text{color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:last-child{transform:translateY(0)}lr-drop-area[with-icon]>.content-wrapper[drag-state=near] lr-icon:last-child{transform:scale(1.3)}lr-drop-area[with-icon]>.content-wrapper[drag-state=over] lr-icon:last-child{transform:scale(1.5)}lr-drop-area[fullscreen]{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--gap-mid) * 2);height:calc(100vh - var(--gap-mid) * 2);margin:var(--gap-mid)}lr-drop-area[fullscreen] .content-wrapper{width:100%;max-width:calc(var(--modal-normal-w) * .8);height:calc(var(--ui-size) * 6);color:var(--clr-txt);background-color:var(--clr-background-light);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:var(--transition-duration) ease}lr-drop-area[with-icon][fullscreen][drag-state=active]>.content-wrapper,lr-drop-area[with-icon][fullscreen][drag-state=near]>.content-wrapper{transform:translateY(var(--gap-mid));opacity:0}lr-drop-area[with-icon][fullscreen][drag-state=over]>.content-wrapper{transform:translateY(0);opacity:1}:is(lr-drop-area[with-icon][fullscreen])>.content-wrapper lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-upload-list{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light);transition:opacity var(--transition-duration)}lr-modal lr-upload-list{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:max-content;max-height:var(--modal-max-content-height)}lr-upload-list .no-files{height:var(--ui-size);padding:var(--gap-max)}lr-upload-list .files{display:block;flex:1;min-height:var(--ui-size);padding:0 var(--gap-mid);overflow:auto}lr-upload-list .toolbar{display:flex;gap:var(--gap-small);justify-content:space-between;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-upload-list .toolbar .add-more-btn{padding-left:.2em}lr-upload-list .toolbar-spacer{flex:1}lr-upload-list lr-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--gap-mid) * 2);height:calc(100% - var(--gap-mid) * 2);margin:var(--gap-mid);border-radius:var(--border-radius-element)}lr-upload-list lr-activity-header>.header-text{padding:0 var(--gap-mid)}lr-file-item{display:block}lr-file-item>.inner{position:relative;display:grid;grid-template-columns:32px 1fr max-content;gap:var(--gap-min);align-items:center;margin-bottom:var(--gap-small);padding:var(--gap-mid);overflow:hidden;font-size:.95em;background-color:var(--clr-background);border-radius:var(--border-radius-element);transition:var(--transition-duration)}lr-file-item:last-of-type>.inner{margin-bottom:0}lr-file-item>.inner[focused]{background-color:transparent}lr-file-item>.inner[uploading] .edit-btn{display:none}lr-file-item>:where(.inner[failed],.inner[limit-overflow]){background-color:var(--clr-error-lightest)}lr-file-item .thumb{position:relative;display:inline-flex;width:var(--ui-size);height:var(--ui-size);background-color:var(--clr-shade-lv1);background-position:center center;background-size:cover;border-radius:var(--border-radius-thumb)}lr-file-item .file-name-wrapper{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--gap-mid);padding-left:var(--gap-mid);overflow:hidden;color:var(--clr-txt-light);transition:color var(--transition-duration)}lr-file-item .file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}lr-file-item .file-error{display:none;color:var(--clr-error);font-size:.85em;line-height:130%}lr-file-item button.remove-btn,lr-file-item button.edit-btn{color:var(--clr-txt-lightest)!important}lr-file-item button.upload-btn{display:none}lr-file-item button:hover{color:var(--clr-txt-light)}lr-file-item .badge{position:absolute;top:calc(var(--ui-size) * -.13);right:calc(var(--ui-size) * -.13);width:calc(var(--ui-size) * .44);height:calc(var(--ui-size) * .44);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;transform:scale(.3);opacity:0;transition:var(--transition-duration) ease}lr-file-item>.inner:where([failed],[limit-overflow],[finished]) .badge{transform:scale(1);opacity:1}lr-file-item>.inner[finished] .badge{background-color:var(--clr-confirm)}lr-file-item>.inner:where([failed],[limit-overflow]) .badge{background-color:var(--clr-error)}lr-file-item>.inner:where([failed],[limit-overflow]) .file-error{display:block}lr-file-item .badge lr-icon,lr-file-item .badge lr-icon svg{width:100%;height:100%}lr-file-item .progress-bar{top:calc(100% - 2px);height:2px}lr-file-item .file-actions{display:flex;gap:var(--gap-min);align-items:center;justify-content:center}lr-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size)}lr-icon svg{width:calc(var(--ui-size) / 2);height:calc(var(--ui-size) / 2)}lr-icon:not([raw]) path{fill:currentColor}lr-progress-bar{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}lr-progress-bar .progress{width:calc(var(--l-width) * 1%);height:100%;background-color:var(--clr-accent-light);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}lr-progress-bar .progress--unknown{width:100%;transform-origin:0% 50%;animation:lr-indeterminateAnimation 1s infinite linear}lr-progress-bar .progress--hidden{opacity:0}@keyframes lr-indeterminateAnimation{0%{transform:translate(0) scaleX(0)}40%{transform:translate(0) scaleX(.4)}to{transform:translate(100%) scaleX(.5)}}lr-message-box{position:fixed;right:var(--gap-mid);bottom:var(--gap-mid);left:var(--gap-mid);z-index:100000;display:grid;grid-template-rows:min-content auto;color:var(--clr-txt);font-size:.9em;background:var(--clr-background);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:calc(var(--transition-duration) * 2)}lr-message-box[inline]{position:static}lr-message-box:not([active]){transform:translateY(10px);visibility:hidden;opacity:0}lr-message-box[error]{color:var(--clr-error);background-color:var(--clr-error-message-bgr)}lr-message-box .heading{display:grid;grid-template-columns:min-content auto min-content;padding:var(--gap-mid)}lr-message-box .caption{display:flex;align-items:center;word-break:break-word}lr-message-box .heading button{width:var(--ui-size);padding:0;color:currentColor;background-color:transparent;opacity:var(--opacity-normal)}lr-message-box .heading button:hover{opacity:var(--opacity-hover)}lr-message-box .heading button:active{opacity:var(--opacity-active)}lr-message-box .msg{padding:var(--gap-max);padding-top:0;text-align:left}lr-copyright .credits{padding:0 var(--gap-mid) var(--gap-mid) calc(var(--gap-mid) * 1.5);color:var(--clr-txt-lightest);font-weight:400;font-size:.85em;opacity:.7;transition:var(--transition-duration) ease}lr-copyright .credits:hover{opacity:1}:where(.lr-wgt-l10n_en-US,.lr-wgt-common),:host{--l10n-locale-name: "en-US";--l10n-upload-file: "Upload file";--l10n-upload-files: "Upload files";--l10n-choose-file: "Choose file";--l10n-choose-files: "Choose files";--l10n-drop-files-here: "Drop files here";--l10n-select-file-source: "Select file source";--l10n-selected: "Selected";--l10n-upload: "Upload";--l10n-add-more: "Add more";--l10n-cancel: "Cancel";--l10n-clear: "Clear";--l10n-camera-shot: "Shot";--l10n-upload-url: "Import";--l10n-upload-url-placeholder: "Paste link here";--l10n-edit-image: "Edit image";--l10n-edit-detail: "Details";--l10n-back: "Back";--l10n-done: "Done";--l10n-ok: "Ok";--l10n-remove-from-list: "Remove";--l10n-no: "No";--l10n-yes: "Yes";--l10n-confirm-your-action: "Confirm your action";--l10n-are-you-sure: "Are you sure?";--l10n-selected-count: "Selected:";--l10n-upload-error: "Upload error";--l10n-validation-error: "Validation error";--l10n-no-files: "No files selected";--l10n-browse: "Browse";--l10n-not-uploaded-yet: "Not uploaded yet...";--l10n-file__one: "file";--l10n-file__other: "files";--l10n-error__one: "error";--l10n-error__other: "errors";--l10n-header-uploading: "Uploading {{count}} {{plural:file(count)}}";--l10n-header-failed: "{{count}} {{plural:error(count)}}";--l10n-header-succeed: "{{count}} {{plural:file(count)}} uploaded";--l10n-header-total: "{{count}} {{plural:file(count)}} selected";--l10n-src-type-local: "From device";--l10n-src-type-from-url: "From link";--l10n-src-type-camera: "Camera";--l10n-src-type-draw: "Draw";--l10n-src-type-facebook: "Facebook";--l10n-src-type-dropbox: "Dropbox";--l10n-src-type-gdrive: "Google Drive";--l10n-src-type-gphotos: "Google Photos";--l10n-src-type-instagram: "Instagram";--l10n-src-type-flickr: "Flickr";--l10n-src-type-vk: "VK";--l10n-src-type-evernote: "Evernote";--l10n-src-type-box: "Box";--l10n-src-type-onedrive: "Onedrive";--l10n-src-type-huddle: "Huddle";--l10n-src-type-other: "Other";--l10n-src-type: var(--l10n-src-type-local);--l10n-caption-from-url: "Import from link";--l10n-caption-camera: "Camera";--l10n-caption-draw: "Draw";--l10n-caption-edit-file: "Edit file";--l10n-file-no-name: "No name...";--l10n-toggle-fullscreen: "Toggle fullscreen";--l10n-toggle-guides: "Toggle guides";--l10n-rotate: "Rotate";--l10n-flip-vertical: "Flip vertical";--l10n-flip-horizontal: "Flip horizontal";--l10n-brightness: "Brightness";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-resize: "Resize image";--l10n-crop: "Crop";--l10n-select-color: "Select color";--l10n-text: "Text";--l10n-draw: "Draw";--l10n-cancel-edit: "Cancel edit";--l10n-tab-view: "Preview";--l10n-tab-details: "Details";--l10n-file-name: "Name";--l10n-file-size: "Size";--l10n-cdn-url: "CDN URL";--l10n-file-size-unknown: "Unknown";--l10n-camera-permissions-denied: "Camera access denied";--l10n-camera-permissions-prompt: "Please allow access to the camera";--l10n-camera-permissions-request: "Request access";--l10n-files-count-limit-error-title: "Files count limit overflow";--l10n-files-count-limit-error-too-few: "You\2019ve chosen {{total}}. At least {{min}} required.";--l10n-files-count-limit-error-too-many: "You\2019ve chosen too many files. {{max}} is maximum.";--l10n-files-count-minimum: "At least {{count}} files are required";--l10n-files-count-allowed: "Only {{count}} files are allowed";--l10n-files-max-size-limit-error: "File is too big. Max file size is {{maxFileSize}}.";--l10n-has-validation-errors: "File validation error ocurred. Please, check your files before upload.";--l10n-images-only-accepted: "Only image files are accepted.";--l10n-file-type-not-allowed: "Uploading of these file types is not allowed."}:where(.lr-wgt-icons,.lr-wgt-common),:host{--icon-arrow-down: "m11.5009 23.0302c.2844.2533.7135.2533.9978 0l9.2899-8.2758c.3092-.2756.3366-.7496.0611-1.0589s-.7496-.3367-1.0589-.0612l-8.0417 7.1639v-19.26834c0-.41421-.3358-.749997-.75-.749997s-.75.335787-.75.749997v19.26704l-8.04025-7.1626c-.30928-.2755-.78337-.2481-1.05889.0612-.27553.3093-.24816.7833.06112 1.0589z";--icon-default: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-close: "m4.60395 4.60395c.29289-.2929.76776-.2929 1.06066 0l6.33539 6.33535 6.3354-6.33535c.2929-.2929.7677-.2929 1.0606 0 .2929.29289.2929.76776 0 1.06066l-6.3353 6.33539 6.3353 6.3354c.2929.2929.2929.7677 0 1.0606s-.7677.2929-1.0606 0l-6.3354-6.3353-6.33539 6.3353c-.2929.2929-.76777.2929-1.06066 0-.2929-.2929-.2929-.7677 0-1.0606l6.33535-6.3354-6.33535-6.33539c-.2929-.2929-.2929-.76777 0-1.06066z";--icon-info: "M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";--icon-error: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";--icon-remove: "m6.35673 9.71429c-.76333 0-1.35856.66121-1.27865 1.42031l1.01504 9.6429c.06888.6543.62067 1.1511 1.27865 1.1511h9.25643c.658 0 1.2098-.4968 1.2787-1.1511l1.015-9.6429c.0799-.7591-.5153-1.42031-1.2786-1.42031zm.50041-4.5v.32142h-2.57143c-.71008 0-1.28571.57564-1.28571 1.28572s.57563 1.28571 1.28571 1.28571h15.42859c.7101 0 1.2857-.57563 1.2857-1.28571s-.5756-1.28572-1.2857-1.28572h-2.5714v-.32142c0-1.77521-1.4391-3.21429-3.2143-3.21429h-3.8572c-1.77517 0-3.21426 1.43908-3.21426 3.21429zm7.07146-.64286c.355 0 .6428.28782.6428.64286v.32142h-5.14283v-.32142c0-.35504.28782-.64286.64283-.64286z";--icon-check: "m12 22c5.5228 0 10-4.4772 10-10 0-5.52285-4.4772-10-10-10-5.52285 0-10 4.47715-10 10 0 5.5228 4.47715 10 10 10zm4.7071-11.4929-5.9071 5.9071-3.50711-3.5071c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.3906 1.02369-.3906 1.41422 0l2.09289 2.0929 4.4929-4.49294c.3905-.39052 1.0237-.39052 1.4142 0 .3905.39053.3905 1.02374 0 1.41424z";--icon-remove-file: "m11.9554 3.29999c-.7875 0-1.5427.31281-2.0995.86963-.49303.49303-.79476 1.14159-.85742 1.83037h5.91382c-.0627-.68878-.3644-1.33734-.8575-1.83037-.5568-.55682-1.312-.86963-2.0994-.86963zm4.461 2.7c-.0656-1.08712-.5264-2.11657-1.3009-2.89103-.8381-.83812-1.9749-1.30897-3.1601-1.30897-1.1853 0-2.32204.47085-3.16016 1.30897-.77447.77446-1.23534 1.80391-1.30087 2.89103h-2.31966c-.03797 0-.07529.00282-.11174.00827h-1.98826c-.41422 0-.75.33578-.75.75 0 .41421.33578.75.75.75h1.35v11.84174c0 .7559.30026 1.4808.83474 2.0152.53448.5345 1.25939.8348 2.01526.8348h9.44999c.7559 0 1.4808-.3003 2.0153-.8348.5344-.5344.8347-1.2593.8347-2.0152v-11.84174h1.35c.4142 0 .75-.33579.75-.75 0-.41422-.3358-.75-.75-.75h-1.9883c-.0364-.00545-.0737-.00827-.1117-.00827zm-10.49169 1.50827v11.84174c0 .358.14223.7014.3954.9546.25318.2532.59656.3954.9546.3954h9.44999c.358 0 .7014-.1422.9546-.3954s.3954-.5966.3954-.9546v-11.84174z";--icon-trash-file: var(--icon-remove);--icon-upload-error: var(--icon-error);--icon-badge-success: "M10.5 18.2044L18.0992 10.0207C18.6629 9.41362 18.6277 8.46452 18.0207 7.90082C17.4136 7.33711 16.4645 7.37226 15.9008 7.97933L10.5 13.7956L8.0992 11.2101C7.53549 10.603 6.5864 10.5679 5.97933 11.1316C5.37226 11.6953 5.33711 12.6444 5.90082 13.2515L10.5 18.2044Z";--icon-badge-error: "m13.6 18.4c0 .8837-.7164 1.6-1.6 1.6-.8837 0-1.6-.7163-1.6-1.6s.7163-1.6 1.6-1.6c.8836 0 1.6.7163 1.6 1.6zm-1.6-13.9c.8284 0 1.5.67157 1.5 1.5v7c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5v-7c0-.82843.6716-1.5 1.5-1.5z";--icon-edit-file: "m12.1109 6c.3469-1.69213 1.8444-2.96484 3.6391-2.96484s3.2922 1.27271 3.6391 2.96484h2.314c.4142 0 .75.33578.75.75 0 .41421-.3358.75-.75.75h-2.314c-.3469 1.69213-1.8444 2.9648-3.6391 2.9648s-3.2922-1.27267-3.6391-2.9648h-9.81402c-.41422 0-.75001-.33579-.75-.75 0-.41422.33578-.75.75-.75zm3.6391-1.46484c-1.2232 0-2.2148.99162-2.2148 2.21484s.9916 2.21484 2.2148 2.21484 2.2148-.99162 2.2148-2.21484-.9916-2.21484-2.2148-2.21484zm-11.1391 11.96484c.34691-1.6921 1.84437-2.9648 3.6391-2.9648 1.7947 0 3.2922 1.2727 3.6391 2.9648h9.814c.4142 0 .75.3358.75.75s-.3358.75-.75.75h-9.814c-.3469 1.6921-1.8444 2.9648-3.6391 2.9648-1.79473 0-3.29219-1.2727-3.6391-2.9648h-2.31402c-.41422 0-.75-.3358-.75-.75s.33578-.75.75-.75zm3.6391-1.4648c-1.22322 0-2.21484.9916-2.21484 2.2148s.99162 2.2148 2.21484 2.2148 2.2148-.9916 2.2148-2.2148-.99158-2.2148-2.2148-2.2148z";--icon-upload: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-add: "M12.75 21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21V12.7499H3C2.58579 12.7499 2.25 12.4141 2.25 11.9999C2.25 11.5857 2.58579 11.2499 3 11.2499H11.25V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V11.2499H21C21.4142 11.2499 21.75 11.5857 21.75 11.9999C21.75 12.4141 21.4142 12.7499 21 12.7499H12.75V21Z"}:where(.lr-wgt-common),:host{--cfg-multiple: 1;--cfg-confirm-upload: 0;--cfg-init-activity: "start-from";--cfg-done-activity: "upload-list";position:relative;display:block}lr-start-from{display:flex;flex-direction:column;gap:var(--gap-min);padding:0;overflow:hidden;text-align:center;background-color:transparent}lr-drop-area{display:flex;align-items:center;justify-content:center;width:100%;min-height:calc(var(--ui-size) + var(--gap-mid) * 2 + var(--gap-min) * 4);padding:0;line-height:140%;text-align:center;background-color:var(--clr-background);border-radius:var(--border-radius-frame);cursor:pointer}lr-upload-list lr-activity-header{display:none}lr-upload-list>.toolbar{background-color:transparent}lr-upload-list{width:100%;height:unset;padding:var(--gap-small);background-color:transparent;border:var(--border-dashed);border-radius:var(--border-radius-frame)}lr-upload-list .files{padding:0}lr-upload-list .toolbar{display:block;padding:0}lr-upload-list .toolbar .cancel-btn,lr-upload-list .toolbar .upload-btn,lr-upload-list .toolbar .done-btn{display:none}lr-upload-list .toolbar .add-more-btn{width:100%;height:calc(var(--ui-size) + var(--gap-mid) * 2);margin-top:var(--gap-small);background-color:var(--clr-background)}lr-upload-list .toolbar .add-more-btn[disabled]{display:none}lr-upload-list .toolbar .add-more-btn:hover{background-color:var(--clr-background-dark)}lr-upload-list .toolbar .add-more-btn>span{display:none}lr-file-item{background-color:var(--clr-background);border-radius:var(--border-radius-element)}lr-file-item .edit-btn{display:none}lr-file-item lr-progress-bar{top:0!important;height:100%!important}lr-file-item lr-progress-bar .progress{background-color:var(--clr-accent-lightest);border-radius:var(--border-radius-element)}lr-upload-list lr-drop-area{width:100%;height:100%;margin:0;border-radius:var(--border-radius-frame)} +:where(.lr-wgt-cfg,.lr-wgt-common),:host{--cfg-pubkey: "YOUR_PUBLIC_KEY";--cfg-multiple: 1;--cfg-multiple-min: 0;--cfg-multiple-max: 0;--cfg-confirm-upload: 0;--cfg-img-only: 0;--cfg-accept: "";--cfg-external-sources-preferred-types: "";--cfg-store: "auto";--cfg-camera-mirror: 1;--cfg-source-list: "local, url, camera, dropbox, gdrive";--cfg-max-local-file-size-bytes: 0;--cfg-thumb-size: 76;--cfg-show-empty-list: 0;--cfg-use-local-image-editor: 0;--cfg-use-cloud-image-editor: 1;--cfg-remove-copyright: 0;--cfg-modal-scroll-lock: 1;--cfg-modal-backdrop-strokes: 0;--cfg-source-list-wrap: 1;--cfg-init-activity: "start-from";--cfg-done-activity: "";--cfg-remote-tab-session-key: "";--cfg-cdn-cname: "https://ucarecdn.com";--cfg-base-url: "https://upload.uploadcare.com";--cfg-social-base-url: "https://social.uploadcare.com";--cfg-secure-signature: "";--cfg-secure-expire: "";--cfg-secure-delivery-proxy: "";--cfg-retry-throttled-request-max-times: 1;--cfg-multipart-min-file-size: 26214400;--cfg-multipart-chunk-size: 5242880;--cfg-max-concurrent-requests: 10;--cfg-multipart-max-concurrent-requests: 4;--cfg-multipart-max-attempts: 3;--cfg-check-for-url-duplicates: 0;--cfg-save-url-for-recurrent-uploads: 0;--cfg-group-output: 0;--cfg-user-agent-integration: ""}:where(.lr-wgt-theme,.lr-wgt-common),:host{color:var(--clr-txt);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}:where(.lr-wgt-theme,.lr-wgt-common) *,:host *{box-sizing:border-box}:where(.lr-wgt-theme,.lr-wgt-common) [hidden],:host [hidden]{display:none!important}:where(.lr-wgt-theme,.lr-wgt-common) [activity]:not([active]),:host [activity]:not([active]){display:none}:where(.lr-wgt-theme,.lr-wgt-common) dialog:not([open]) [activity],:host dialog:not([open]) [activity]{display:none}:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{display:flex;align-items:center;justify-content:center;height:var(--ui-size);padding-right:1.4em;padding-left:1.4em;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--border-radius-element);cursor:pointer;user-select:none}@media only screen and (max-width: 800px){:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{padding-right:1em;padding-left:1em}}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn,:host button.primary-btn{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary);box-shadow:var(--shadow-btn-primary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:hover,:host button.primary-btn:hover{background-color:var(--clr-btn-bgr-primary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:active,:host button.primary-btn:active{background-color:var(--clr-btn-bgr-primary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn,:host button.secondary-btn{color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:hover,:host button.secondary-btn:hover{background-color:var(--clr-btn-bgr-secondary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:active,:host button.secondary-btn:active{background-color:var(--clr-btn-bgr-secondary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn,:host button.mini-btn{width:var(--ui-size);height:var(--ui-size);padding:0;background-color:transparent;border:none;cursor:pointer;transition:var(--transition-duration) ease;color:var(--clr-txt)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:hover,:host button.mini-btn:hover{background-color:var(--clr-shade-lv1)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:active,:host button.mini-btn:active{background-color:var(--clr-shade-lv2)}:where(.lr-wgt-theme,.lr-wgt-common) :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]),:host :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]){color:var(--clr-btn-txt-disabled);background-color:var(--clr-btn-bgr-disabled);box-shadow:var(--shadow-btn-disabled);pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) a,:host a{color:var(--clr-accent);text-decoration:none}:where(.lr-wgt-theme,.lr-wgt-common) a[disabled],:host a[disabled]{pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]{display:flex;width:100%;height:var(--ui-size);padding-right:.6em;padding-left:.6em;color:var(--clr-txt);font-size:1em;font-family:inherit;background-color:var(--clr-background-light);border:var(--border-light);border-radius:var(--border-radius-element);transition:var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]::placeholder{color:var(--clr-txt-lightest)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:hover,:host input[type=text]:hover{border-color:var(--clr-accent-light)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:focus,:host input[type=text]:focus{border-color:var(--clr-accent);outline:none}:where(.lr-wgt-theme,.lr-wgt-common) input[disabled],:host input[disabled]{opacity:.6;pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common),:host{--darkmode: 0;--h-foreground: 208;--s-foreground: 4%;--l-foreground: calc(10% + 78% * var(--darkmode));--h-background: 208;--s-background: 4%;--l-background: calc(97% - 85% * var(--darkmode));--h-accent: 211;--s-accent: 100%;--l-accent: calc(50% - 5% * var(--darkmode));--h-confirm: 137;--s-confirm: 85%;--l-confirm: 53%;--h-error: 358;--s-error: 100%;--l-error: 66%;--shadows: 1;--h-shadow: 0;--s-shadow: 0%;--l-shadow: 0%;--opacity-normal: .6;--opacity-hover: .9;--opacity-active: 1;--ui-size: 32px;--gap-min: 2px;--gap-small: 4px;--gap-mid: 10px;--gap-max: 20px;--gap-table: 0px;--borders: 1;--border-radius-element: 8px;--border-radius-frame: 12px;--border-radius-thumb: 6px;--transition-duration: .2s;--modal-max-w: 800px;--modal-max-h: 600px;--modal-normal-w: 430px;--darkmode-minus: calc(1 + var(--darkmode) * -2);--clr-background: hsl(var(--h-background), var(--s-background), var(--l-background));--clr-background-dark: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-background-light: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 3% * var(--darkmode-minus)) );--clr-accent: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 15% * var(--darkmode)));--clr-accent-light: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 30%);--clr-accent-lightest: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 10%);--clr-accent-light-opaque: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 45% * var(--darkmode-minus)));--clr-accent-lightest-opaque: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) + 47% * var(--darkmode-minus)) );--clr-confirm: hsl(var(--h-confirm), var(--s-confirm), var(--l-confirm));--clr-error: hsl(var(--h-error), var(--s-error), var(--l-error));--clr-error-light: hsla(var(--h-error), var(--s-error), var(--l-error), 15%);--clr-error-lightest: hsla(var(--h-error), var(--s-error), var(--l-error), 5%);--clr-error-message-bgr: hsl(var(--h-error), var(--s-error), calc(var(--l-error) + 60% * var(--darkmode-minus)));--clr-txt: hsl(var(--h-foreground), var(--s-foreground), var(--l-foreground));--clr-txt-mid: hsl(var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 20% * var(--darkmode-minus)));--clr-txt-light: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 30% * var(--darkmode-minus)) );--clr-txt-lightest: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 50% * var(--darkmode-minus)) );--clr-shade-lv1: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 5%);--clr-shade-lv2: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 8%);--clr-shade-lv3: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 12%);--clr-generic-file-icon: var(--clr-txt-lightest);--border-light: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.1 - .05 * var(--darkmode)) * var(--borders)) );--border-mid: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.2 - .1 * var(--darkmode)) * var(--borders)) );--border-accent: 1px solid hsla(var(--h-accent), var(--s-accent), var(--l-accent), 1 * var(--borders));--border-dashed: 1px dashed hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), calc(.2 * var(--borders)));--clr-curtain: hsla(var(--h-background), var(--s-background), calc(var(--l-background)), 60%);--hsl-shadow: var(--h-shadow), var(--s-shadow), var(--l-shadow);--modal-shadow: 0px 0px 1px hsla(var(--hsl-shadow), calc((.3 + .65 * var(--darkmode)) * var(--shadows))), 0px 6px 20px hsla(var(--hsl-shadow), calc((.1 + .4 * var(--darkmode)) * var(--shadows)));--clr-btn-bgr-primary: var(--clr-accent);--clr-btn-bgr-primary-hover: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 4% * var(--darkmode-minus)) );--clr-btn-bgr-primary-active: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 8% * var(--darkmode-minus)) );--clr-btn-txt-primary: hsl(var(--h-accent), var(--s-accent), 98%);--shadow-btn-primary: none;--clr-btn-bgr-secondary: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-hover: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 7% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-active: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 12% * var(--darkmode-minus)) );--clr-btn-txt-secondary: var(--clr-txt-mid);--shadow-btn-secondary: none;--clr-btn-bgr-disabled: var(--clr-background);--clr-btn-txt-disabled: var(--clr-txt-lightest);--shadow-btn-disabled: none}@media only screen and (max-height: 600px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-h: 100%}}@media only screen and (max-width: 430px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-w: 100vw;--modal-max-h: var(--uploadcare-blocks-window-height)}}lr-start-from{display:block}lr-start-from .content{display:grid;grid-auto-flow:row;gap:var(--gap-max);width:100%;height:max-content;padding:var(--gap-max);overflow-y:auto;background-color:var(--clr-background-light)}lr-modal lr-start-from{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-drop-area{padding:var(--gap-min);overflow:hidden;border:var(--border-dashed);border-radius:var(--border-radius-frame);transition:var(--transition-duration) ease}lr-drop-area,lr-drop-area .content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}lr-drop-area .text{position:relative;margin:var(--gap-mid);color:var(--clr-txt-light);transition:var(--transition-duration) ease}lr-drop-area[ghost][drag-state=inactive]{display:none;opacity:0}lr-drop-area[ghost]:not([fullscreen]):is([drag-state="active"],[drag-state="near"],[drag-state="over"]){background:var(--clr-background)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) :is(.text,.icon-container){color:var(--clr-accent)}lr-drop-area:is([drag-state="active"],[drag-state="near"],[drag-state="over"],:hover){color:var(--clr-accent);background:var(--clr-accent-lightest);border-color:var(--clr-accent-light)}lr-drop-area:is([drag-state="active"],[drag-state="near"]){opacity:1}lr-drop-area[drag-state=over]{border-color:var(--clr-accent);opacity:1}lr-drop-area[with-icon]{min-height:calc(var(--ui-size) * 6)}lr-drop-area[with-icon] .content-wrapper{display:flex;flex-direction:column}lr-drop-area[with-icon] .text{color:var(--clr-txt);font-weight:500;font-size:1.1em}lr-drop-area[with-icon] .icon-container{position:relative;width:calc(var(--ui-size) * 2);height:calc(var(--ui-size) * 2);margin:var(--gap-mid);overflow:hidden;color:var(--clr-txt);background-color:var(--clr-background);border-radius:50%;transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon{position:absolute;top:calc(50% - var(--ui-size) / 2);left:calc(50% - var(--ui-size) / 2);transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon:last-child{transform:translateY(calc(var(--ui-size) * 1.5))}lr-drop-area[with-icon]:hover .icon-container,lr-drop-area[with-icon]:hover .text{color:var(--clr-accent)}lr-drop-area[with-icon]:hover .icon-container{background-color:var(--clr-accent-lightest)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .icon-container{color:#fff;background-color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .text{color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:last-child{transform:translateY(0)}lr-drop-area[with-icon]>.content-wrapper[drag-state=near] lr-icon:last-child{transform:scale(1.3)}lr-drop-area[with-icon]>.content-wrapper[drag-state=over] lr-icon:last-child{transform:scale(1.5)}lr-drop-area[fullscreen]{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--gap-mid) * 2);height:calc(100vh - var(--gap-mid) * 2);margin:var(--gap-mid)}lr-drop-area[fullscreen] .content-wrapper{width:100%;max-width:calc(var(--modal-normal-w) * .8);height:calc(var(--ui-size) * 6);color:var(--clr-txt);background-color:var(--clr-background-light);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:var(--transition-duration) ease}lr-drop-area[with-icon][fullscreen][drag-state=active]>.content-wrapper,lr-drop-area[with-icon][fullscreen][drag-state=near]>.content-wrapper{transform:translateY(var(--gap-mid));opacity:0}lr-drop-area[with-icon][fullscreen][drag-state=over]>.content-wrapper{transform:translateY(0);opacity:1}:is(lr-drop-area[with-icon][fullscreen])>.content-wrapper lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[clickable]{cursor:pointer}lr-upload-list{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light);transition:opacity var(--transition-duration)}lr-modal lr-upload-list{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:max-content;max-height:var(--modal-max-content-height)}lr-upload-list .no-files{height:var(--ui-size);padding:var(--gap-max)}lr-upload-list .files{display:block;flex:1;min-height:var(--ui-size);padding:0 var(--gap-mid);overflow:auto}lr-upload-list .toolbar{display:flex;gap:var(--gap-small);justify-content:space-between;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-upload-list .toolbar .add-more-btn{padding-left:.2em}lr-upload-list .toolbar-spacer{flex:1}lr-upload-list lr-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--gap-mid) * 2);height:calc(100% - var(--gap-mid) * 2);margin:var(--gap-mid);border-radius:var(--border-radius-element)}lr-upload-list lr-activity-header>.header-text{padding:0 var(--gap-mid)}lr-file-item{display:block}lr-file-item>.inner{position:relative;display:grid;grid-template-columns:32px 1fr max-content;gap:var(--gap-min);align-items:center;margin-bottom:var(--gap-small);padding:var(--gap-mid);overflow:hidden;font-size:.95em;background-color:var(--clr-background);border-radius:var(--border-radius-element);transition:var(--transition-duration)}lr-file-item:last-of-type>.inner{margin-bottom:0}lr-file-item>.inner[focused]{background-color:transparent}lr-file-item>.inner[uploading] .edit-btn{display:none}lr-file-item>:where(.inner[failed],.inner[limit-overflow]){background-color:var(--clr-error-lightest)}lr-file-item .thumb{position:relative;display:inline-flex;width:var(--ui-size);height:var(--ui-size);background-color:var(--clr-shade-lv1);background-position:center center;background-size:cover;border-radius:var(--border-radius-thumb)}lr-file-item .file-name-wrapper{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--gap-mid);padding-left:var(--gap-mid);overflow:hidden;color:var(--clr-txt-light);transition:color var(--transition-duration)}lr-file-item .file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}lr-file-item .file-error{display:none;color:var(--clr-error);font-size:.85em;line-height:130%}lr-file-item button.remove-btn,lr-file-item button.edit-btn{color:var(--clr-txt-lightest)!important}lr-file-item button.upload-btn{display:none}lr-file-item button:hover{color:var(--clr-txt-light)}lr-file-item .badge{position:absolute;top:calc(var(--ui-size) * -.13);right:calc(var(--ui-size) * -.13);width:calc(var(--ui-size) * .44);height:calc(var(--ui-size) * .44);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;transform:scale(.3);opacity:0;transition:var(--transition-duration) ease}lr-file-item>.inner:where([failed],[limit-overflow],[finished]) .badge{transform:scale(1);opacity:1}lr-file-item>.inner[finished] .badge{background-color:var(--clr-confirm)}lr-file-item>.inner:where([failed],[limit-overflow]) .badge{background-color:var(--clr-error)}lr-file-item>.inner:where([failed],[limit-overflow]) .file-error{display:block}lr-file-item .badge lr-icon,lr-file-item .badge lr-icon svg{width:100%;height:100%}lr-file-item .progress-bar{top:calc(100% - 2px);height:2px}lr-file-item .file-actions{display:flex;gap:var(--gap-min);align-items:center;justify-content:center}lr-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size)}lr-icon svg{width:calc(var(--ui-size) / 2);height:calc(var(--ui-size) / 2)}lr-icon:not([raw]) path{fill:currentColor}lr-progress-bar{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}lr-progress-bar .progress{width:calc(var(--l-width) * 1%);height:100%;background-color:var(--clr-accent-light);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}lr-progress-bar .progress--unknown{width:100%;transform-origin:0% 50%;animation:lr-indeterminateAnimation 1s infinite linear}lr-progress-bar .progress--hidden{opacity:0}@keyframes lr-indeterminateAnimation{0%{transform:translate(0) scaleX(0)}40%{transform:translate(0) scaleX(.4)}to{transform:translate(100%) scaleX(.5)}}lr-message-box{position:fixed;right:var(--gap-mid);bottom:var(--gap-mid);left:var(--gap-mid);z-index:100000;display:grid;grid-template-rows:min-content auto;color:var(--clr-txt);font-size:.9em;background:var(--clr-background);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:calc(var(--transition-duration) * 2)}lr-message-box[inline]{position:static}lr-message-box:not([active]){transform:translateY(10px);visibility:hidden;opacity:0}lr-message-box[error]{color:var(--clr-error);background-color:var(--clr-error-message-bgr)}lr-message-box .heading{display:grid;grid-template-columns:min-content auto min-content;padding:var(--gap-mid)}lr-message-box .caption{display:flex;align-items:center;word-break:break-word}lr-message-box .heading button{width:var(--ui-size);padding:0;color:currentColor;background-color:transparent;opacity:var(--opacity-normal)}lr-message-box .heading button:hover{opacity:var(--opacity-hover)}lr-message-box .heading button:active{opacity:var(--opacity-active)}lr-message-box .msg{padding:var(--gap-max);padding-top:0;text-align:left}lr-copyright .credits{padding:0 var(--gap-mid) var(--gap-mid) calc(var(--gap-mid) * 1.5);color:var(--clr-txt-lightest);font-weight:400;font-size:.85em;opacity:.7;transition:var(--transition-duration) ease}lr-copyright .credits:hover{opacity:1}:where(.lr-wgt-l10n_en-US,.lr-wgt-common),:host{--l10n-locale-name: "en-US";--l10n-upload-file: "Upload file";--l10n-upload-files: "Upload files";--l10n-choose-file: "Choose file";--l10n-choose-files: "Choose files";--l10n-drop-files-here: "Drop files here";--l10n-select-file-source: "Select file source";--l10n-selected: "Selected";--l10n-upload: "Upload";--l10n-add-more: "Add more";--l10n-cancel: "Cancel";--l10n-start-from-cancel: var(--l10n-cancel);--l10n-clear: "Clear";--l10n-camera-shot: "Shot";--l10n-upload-url: "Import";--l10n-upload-url-placeholder: "Paste link here";--l10n-edit-image: "Edit image";--l10n-edit-detail: "Details";--l10n-back: "Back";--l10n-done: "Done";--l10n-ok: "Ok";--l10n-remove-from-list: "Remove";--l10n-no: "No";--l10n-yes: "Yes";--l10n-confirm-your-action: "Confirm your action";--l10n-are-you-sure: "Are you sure?";--l10n-selected-count: "Selected:";--l10n-upload-error: "Upload error";--l10n-validation-error: "Validation error";--l10n-no-files: "No files selected";--l10n-browse: "Browse";--l10n-not-uploaded-yet: "Not uploaded yet...";--l10n-file__one: "file";--l10n-file__other: "files";--l10n-error__one: "error";--l10n-error__other: "errors";--l10n-header-uploading: "Uploading {{count}} {{plural:file(count)}}";--l10n-header-failed: "{{count}} {{plural:error(count)}}";--l10n-header-succeed: "{{count}} {{plural:file(count)}} uploaded";--l10n-header-total: "{{count}} {{plural:file(count)}} selected";--l10n-src-type-local: "From device";--l10n-src-type-from-url: "From link";--l10n-src-type-camera: "Camera";--l10n-src-type-draw: "Draw";--l10n-src-type-facebook: "Facebook";--l10n-src-type-dropbox: "Dropbox";--l10n-src-type-gdrive: "Google Drive";--l10n-src-type-gphotos: "Google Photos";--l10n-src-type-instagram: "Instagram";--l10n-src-type-flickr: "Flickr";--l10n-src-type-vk: "VK";--l10n-src-type-evernote: "Evernote";--l10n-src-type-box: "Box";--l10n-src-type-onedrive: "Onedrive";--l10n-src-type-huddle: "Huddle";--l10n-src-type-other: "Other";--l10n-src-type: var(--l10n-src-type-local);--l10n-caption-from-url: "Import from link";--l10n-caption-camera: "Camera";--l10n-caption-draw: "Draw";--l10n-caption-edit-file: "Edit file";--l10n-file-no-name: "No name...";--l10n-toggle-fullscreen: "Toggle fullscreen";--l10n-toggle-guides: "Toggle guides";--l10n-rotate: "Rotate";--l10n-flip-vertical: "Flip vertical";--l10n-flip-horizontal: "Flip horizontal";--l10n-brightness: "Brightness";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-resize: "Resize image";--l10n-crop: "Crop";--l10n-select-color: "Select color";--l10n-text: "Text";--l10n-draw: "Draw";--l10n-cancel-edit: "Cancel edit";--l10n-tab-view: "Preview";--l10n-tab-details: "Details";--l10n-file-name: "Name";--l10n-file-size: "Size";--l10n-cdn-url: "CDN URL";--l10n-file-size-unknown: "Unknown";--l10n-camera-permissions-denied: "Camera access denied";--l10n-camera-permissions-prompt: "Please allow access to the camera";--l10n-camera-permissions-request: "Request access";--l10n-files-count-limit-error-title: "Files count limit overflow";--l10n-files-count-limit-error-too-few: "You\2019ve chosen {{total}}. At least {{min}} required.";--l10n-files-count-limit-error-too-many: "You\2019ve chosen too many files. {{max}} is maximum.";--l10n-files-count-minimum: "At least {{count}} files are required";--l10n-files-count-allowed: "Only {{count}} files are allowed";--l10n-files-max-size-limit-error: "File is too big. Max file size is {{maxFileSize}}.";--l10n-has-validation-errors: "File validation error ocurred. Please, check your files before upload.";--l10n-images-only-accepted: "Only image files are accepted.";--l10n-file-type-not-allowed: "Uploading of these file types is not allowed."}:where(.lr-wgt-icons,.lr-wgt-common),:host{--icon-arrow-down: "m11.5009 23.0302c.2844.2533.7135.2533.9978 0l9.2899-8.2758c.3092-.2756.3366-.7496.0611-1.0589s-.7496-.3367-1.0589-.0612l-8.0417 7.1639v-19.26834c0-.41421-.3358-.749997-.75-.749997s-.75.335787-.75.749997v19.26704l-8.04025-7.1626c-.30928-.2755-.78337-.2481-1.05889.0612-.27553.3093-.24816.7833.06112 1.0589z";--icon-default: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-close: "m4.60395 4.60395c.29289-.2929.76776-.2929 1.06066 0l6.33539 6.33535 6.3354-6.33535c.2929-.2929.7677-.2929 1.0606 0 .2929.29289.2929.76776 0 1.06066l-6.3353 6.33539 6.3353 6.3354c.2929.2929.2929.7677 0 1.0606s-.7677.2929-1.0606 0l-6.3354-6.3353-6.33539 6.3353c-.2929.2929-.76777.2929-1.06066 0-.2929-.2929-.2929-.7677 0-1.0606l6.33535-6.3354-6.33535-6.33539c-.2929-.2929-.2929-.76777 0-1.06066z";--icon-info: "M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";--icon-error: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";--icon-remove: "m6.35673 9.71429c-.76333 0-1.35856.66121-1.27865 1.42031l1.01504 9.6429c.06888.6543.62067 1.1511 1.27865 1.1511h9.25643c.658 0 1.2098-.4968 1.2787-1.1511l1.015-9.6429c.0799-.7591-.5153-1.42031-1.2786-1.42031zm.50041-4.5v.32142h-2.57143c-.71008 0-1.28571.57564-1.28571 1.28572s.57563 1.28571 1.28571 1.28571h15.42859c.7101 0 1.2857-.57563 1.2857-1.28571s-.5756-1.28572-1.2857-1.28572h-2.5714v-.32142c0-1.77521-1.4391-3.21429-3.2143-3.21429h-3.8572c-1.77517 0-3.21426 1.43908-3.21426 3.21429zm7.07146-.64286c.355 0 .6428.28782.6428.64286v.32142h-5.14283v-.32142c0-.35504.28782-.64286.64283-.64286z";--icon-check: "m12 22c5.5228 0 10-4.4772 10-10 0-5.52285-4.4772-10-10-10-5.52285 0-10 4.47715-10 10 0 5.5228 4.47715 10 10 10zm4.7071-11.4929-5.9071 5.9071-3.50711-3.5071c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.3906 1.02369-.3906 1.41422 0l2.09289 2.0929 4.4929-4.49294c.3905-.39052 1.0237-.39052 1.4142 0 .3905.39053.3905 1.02374 0 1.41424z";--icon-remove-file: "m11.9554 3.29999c-.7875 0-1.5427.31281-2.0995.86963-.49303.49303-.79476 1.14159-.85742 1.83037h5.91382c-.0627-.68878-.3644-1.33734-.8575-1.83037-.5568-.55682-1.312-.86963-2.0994-.86963zm4.461 2.7c-.0656-1.08712-.5264-2.11657-1.3009-2.89103-.8381-.83812-1.9749-1.30897-3.1601-1.30897-1.1853 0-2.32204.47085-3.16016 1.30897-.77447.77446-1.23534 1.80391-1.30087 2.89103h-2.31966c-.03797 0-.07529.00282-.11174.00827h-1.98826c-.41422 0-.75.33578-.75.75 0 .41421.33578.75.75.75h1.35v11.84174c0 .7559.30026 1.4808.83474 2.0152.53448.5345 1.25939.8348 2.01526.8348h9.44999c.7559 0 1.4808-.3003 2.0153-.8348.5344-.5344.8347-1.2593.8347-2.0152v-11.84174h1.35c.4142 0 .75-.33579.75-.75 0-.41422-.3358-.75-.75-.75h-1.9883c-.0364-.00545-.0737-.00827-.1117-.00827zm-10.49169 1.50827v11.84174c0 .358.14223.7014.3954.9546.25318.2532.59656.3954.9546.3954h9.44999c.358 0 .7014-.1422.9546-.3954s.3954-.5966.3954-.9546v-11.84174z";--icon-trash-file: var(--icon-remove);--icon-upload-error: var(--icon-error);--icon-badge-success: "M10.5 18.2044L18.0992 10.0207C18.6629 9.41362 18.6277 8.46452 18.0207 7.90082C17.4136 7.33711 16.4645 7.37226 15.9008 7.97933L10.5 13.7956L8.0992 11.2101C7.53549 10.603 6.5864 10.5679 5.97933 11.1316C5.37226 11.6953 5.33711 12.6444 5.90082 13.2515L10.5 18.2044Z";--icon-badge-error: "m13.6 18.4c0 .8837-.7164 1.6-1.6 1.6-.8837 0-1.6-.7163-1.6-1.6s.7163-1.6 1.6-1.6c.8836 0 1.6.7163 1.6 1.6zm-1.6-13.9c.8284 0 1.5.67157 1.5 1.5v7c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5v-7c0-.82843.6716-1.5 1.5-1.5z";--icon-edit-file: "m12.1109 6c.3469-1.69213 1.8444-2.96484 3.6391-2.96484s3.2922 1.27271 3.6391 2.96484h2.314c.4142 0 .75.33578.75.75 0 .41421-.3358.75-.75.75h-2.314c-.3469 1.69213-1.8444 2.9648-3.6391 2.9648s-3.2922-1.27267-3.6391-2.9648h-9.81402c-.41422 0-.75001-.33579-.75-.75 0-.41422.33578-.75.75-.75zm3.6391-1.46484c-1.2232 0-2.2148.99162-2.2148 2.21484s.9916 2.21484 2.2148 2.21484 2.2148-.99162 2.2148-2.21484-.9916-2.21484-2.2148-2.21484zm-11.1391 11.96484c.34691-1.6921 1.84437-2.9648 3.6391-2.9648 1.7947 0 3.2922 1.2727 3.6391 2.9648h9.814c.4142 0 .75.3358.75.75s-.3358.75-.75.75h-9.814c-.3469 1.6921-1.8444 2.9648-3.6391 2.9648-1.79473 0-3.29219-1.2727-3.6391-2.9648h-2.31402c-.41422 0-.75-.3358-.75-.75s.33578-.75.75-.75zm3.6391-1.4648c-1.22322 0-2.21484.9916-2.21484 2.2148s.99162 2.2148 2.21484 2.2148 2.2148-.9916 2.2148-2.2148-.99158-2.2148-2.2148-2.2148z";--icon-upload: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-add: "M12.75 21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21V12.7499H3C2.58579 12.7499 2.25 12.4141 2.25 11.9999C2.25 11.5857 2.58579 11.2499 3 11.2499H11.25V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V11.2499H21C21.4142 11.2499 21.75 11.5857 21.75 11.9999C21.75 12.4141 21.4142 12.7499 21 12.7499H12.75V21Z"}:where(.lr-wgt-common),:host{--cfg-multiple: 1;--cfg-confirm-upload: 0;--cfg-init-activity: "start-from";--cfg-done-activity: "upload-list";position:relative;display:block}lr-start-from{display:flex;flex-direction:column;gap:var(--gap-min);padding:0;overflow:hidden;text-align:center;background-color:transparent}lr-drop-area{display:flex;align-items:center;justify-content:center;width:100%;min-height:calc(var(--ui-size) + var(--gap-mid) * 2 + var(--gap-min) * 4);padding:0;line-height:140%;text-align:center;background-color:var(--clr-background);border-radius:var(--border-radius-frame)}lr-upload-list lr-activity-header{display:none}lr-upload-list>.toolbar{background-color:transparent}lr-upload-list{width:100%;height:unset;padding:var(--gap-small);background-color:transparent;border:var(--border-dashed);border-radius:var(--border-radius-frame)}lr-upload-list .files{padding:0}lr-upload-list .toolbar{display:block;padding:0}lr-upload-list .toolbar .cancel-btn,lr-upload-list .toolbar .upload-btn,lr-upload-list .toolbar .done-btn{display:none}lr-upload-list .toolbar .add-more-btn{width:100%;height:calc(var(--ui-size) + var(--gap-mid) * 2);margin-top:var(--gap-small);background-color:var(--clr-background)}lr-upload-list .toolbar .add-more-btn[disabled]{display:none}lr-upload-list .toolbar .add-more-btn:hover{background-color:var(--clr-background-dark)}lr-upload-list .toolbar .add-more-btn>span{display:none}lr-file-item{background-color:var(--clr-background);border-radius:var(--border-radius-element)}lr-file-item .edit-btn{display:none}lr-file-item lr-progress-bar{top:0!important;height:100%!important}lr-file-item lr-progress-bar .progress{background-color:var(--clr-accent-lightest);border-radius:var(--border-radius-element)}lr-upload-list lr-drop-area{width:100%;height:100%;margin:0;border-radius:var(--border-radius-frame)} diff --git a/web/lr-file-uploader-minimal.min.js b/web/lr-file-uploader-minimal.min.js index e74446c40..276d82af5 100644 --- a/web/lr-file-uploader-minimal.min.js +++ b/web/lr-file-uploader-minimal.min.js @@ -23,5 +23,5 @@ * SOFTWARE. * */ -var Ei=Object.defineProperty;var vi=(e,i,t)=>i in e?Ei(e,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[i]=t;var u=(e,i,t)=>(vi(e,typeof i!="symbol"?i+"":i,t),t);function Ti(e){for(let i in e){let t=[...i].reduce((r,s)=>(s.toUpperCase()===s&&(s="-"+s.toLowerCase()),r+=s),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),e[i].reg&&e[i].reg(t)}}function $(e,i){let t,r=(...s)=>{clearTimeout(t),t=setTimeout(()=>e(...s),i)};return r.cancel=()=>{clearTimeout(t)},r}var wi=Object.defineProperty,Ai=(e,i,t)=>i in e?wi(e,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[i]=t,te=(e,i,t)=>(Ai(e,typeof i!="symbol"?i+"":i,t),t);function xi(e){let i=t=>{var r;for(let s in t)((r=t[s])==null?void 0:r.constructor)===Object&&(t[s]=i(t[s]));return{...t}};return i(e)}var T=class{constructor(e){e.constructor===Object?this.store=xi(e):(this._storeIsProxy=!0,this.store=e),this.callbackMap=Object.create(null)}static warn(e,i){console.warn(`Symbiote Data: cannot ${e}. Prop name: `+i)}read(e){return!this._storeIsProxy&&!this.store.hasOwnProperty(e)?(T.warn("read",e),null):this.store[e]}has(e){return this._storeIsProxy?this.store[e]!==void 0:this.store.hasOwnProperty(e)}add(e,i,t=!1){!t&&Object.keys(this.store).includes(e)||(this.store[e]=i,this.notify(e))}pub(e,i){if(!this._storeIsProxy&&!this.store.hasOwnProperty(e)){T.warn("publish",e);return}this.store[e]=i,this.notify(e)}multiPub(e){for(let i in e)this.pub(i,e[i])}notify(e){this.callbackMap[e]&&this.callbackMap[e].forEach(i=>{i(this.store[e])})}sub(e,i,t=!0){return!this._storeIsProxy&&!this.store.hasOwnProperty(e)?(T.warn("subscribe",e),null):(this.callbackMap[e]||(this.callbackMap[e]=new Set),this.callbackMap[e].add(i),t&&i(this.store[e]),{remove:()=>{this.callbackMap[e].delete(i),this.callbackMap[e].size||delete this.callbackMap[e]},callback:i})}static registerCtx(e,i=Symbol()){let t=T.globalStore.get(i);return t?console.warn('State: context UID "'+i+'" already in use'):(t=new T(e),T.globalStore.set(i,t)),t}static deleteCtx(e){T.globalStore.delete(e)}static getCtx(e,i=!0){return T.globalStore.get(e)||(i&&console.warn('State: wrong context UID - "'+e+'"'),null)}};T.globalStore=new Map;var _=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"}),Le="1234567890QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm",Si=Le.length-1,mt=class{static generate(e="XXXXXXXXX-XXX"){let i="";for(let t=0;t{li&&t?i[0].toUpperCase()+i.slice(1):i).join("").split("_").map((i,t)=>i&&t?i.toUpperCase():i).join("")}function Ii(e,i){[...e.querySelectorAll(`[${_.REPEAT_ATTR}]`)].forEach(t=>{let r=t.getAttribute(_.REPEAT_ITEM_TAG_ATTR),s;if(r&&(s=window.customElements.get(r)),!s){s=class extends i.BaseComponent{constructor(){super(),r||(this.style.display="contents")}};let o=t.innerHTML;s.template=o,s.reg(r)}for(;t.firstChild;)t.firstChild.remove();let n=t.getAttribute(_.REPEAT_ATTR);i.sub(n,o=>{if(!o){for(;t.firstChild;)t.firstChild.remove();return}let l=[...t.children],a,c=h=>{h.forEach((f,m)=>{if(l[m])if(l[m].set$)setTimeout(()=>{l[m].set$(f)});else for(let p in f)l[m][p]=f[p];else{a||(a=new DocumentFragment);let p=new s;Object.assign(p.init$,f),a.appendChild(p)}}),a&&t.appendChild(a);let d=l.slice(h.length,l.length);for(let f of d)f.remove()};if(o.constructor===Array)c(o);else if(o.constructor===Object){let h=[];for(let d in o){let f=o[d];Object.defineProperty(f,"_KEY_",{value:d,enumerable:!0}),h.push(f)}c(h)}else console.warn("Symbiote repeat data type error:"),console.log(o)}),t.removeAttribute(_.REPEAT_ATTR),t.removeAttribute(_.REPEAT_ITEM_TAG_ATTR)})}var Ue="__default__";function Ui(e,i){if(i.shadowRoot)return;let t=[...e.querySelectorAll("slot")];if(!t.length)return;let r={};t.forEach(s=>{let n=s.getAttribute("name")||Ue;r[n]={slot:s,fr:document.createDocumentFragment()}}),i.initChildren.forEach(s=>{var n;let o=Ue;s instanceof Element&&s.hasAttribute("slot")&&(o=s.getAttribute("slot"),s.removeAttribute("slot")),(n=r[o])==null||n.fr.appendChild(s)}),Object.values(r).forEach(s=>{if(s.fr.childNodes.length)s.slot.parentNode.replaceChild(s.fr,s.slot);else if(s.slot.childNodes.length){let n=document.createDocumentFragment();n.append(...s.slot.childNodes),s.slot.parentNode.replaceChild(n,s.slot)}else s.slot.remove()})}function Ri(e,i){[...e.querySelectorAll(`[${_.EL_REF_ATTR}]`)].forEach(t=>{let r=t.getAttribute(_.EL_REF_ATTR);i.ref[r]=t,t.removeAttribute(_.EL_REF_ATTR)})}function Li(e,i){[...e.querySelectorAll(`[${_.BIND_ATTR}]`)].forEach(t=>{let s=t.getAttribute(_.BIND_ATTR).split(";");[...t.attributes].forEach(n=>{if(n.name.startsWith("-")&&n.value){let o=Oi(n.name.replace("-",""));s.push(o+":"+n.value),t.removeAttribute(n.name)}}),s.forEach(n=>{if(!n)return;let o=n.split(":").map(h=>h.trim()),l=o[0],a;l.indexOf(_.ATTR_BIND_PRFX)===0&&(a=!0,l=l.replace(_.ATTR_BIND_PRFX,""));let c=o[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("!","")),i.sub(h,f=>{d==="double"?f=!!f:d==="single"&&(f=!f),a?(f==null?void 0:f.constructor)===Boolean?f?t.setAttribute(l,""):t.removeAttribute(l):t.setAttribute(l,f):Pe(t,l,f)||(t[_.SET_LATER_KEY]||(t[_.SET_LATER_KEY]=Object.create(null)),t[_.SET_LATER_KEY][l]=f)})}}),t.removeAttribute(_.BIND_ATTR)})}var Tt="{{",pt="}}",Pi="skip-text";function Mi(e){let i,t=[],r=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,{acceptNode:s=>{var n;return!((n=s.parentElement)!=null&&n.hasAttribute(Pi))&&s.textContent.includes(Tt)&&s.textContent.includes(pt)&&1}});for(;i=r.nextNode();)t.push(i);return t}var ki=function(e,i){Mi(e).forEach(r=>{let s=[],n;for(;r.textContent.includes(pt);)r.textContent.startsWith(Tt)?(n=r.textContent.indexOf(pt)+pt.length,r.splitText(n),s.push(r)):(n=r.textContent.indexOf(Tt),r.splitText(n)),r=r.nextSibling;s.forEach(o=>{let l=o.textContent.replace(Tt,"").replace(pt,"");o.textContent="",i.sub(l,a=>{o.textContent=a})})})},Ni=[Ii,Ui,Ri,Li,ki],wt="'",ut='"',Di=/\\([0-9a-fA-F]{1,6} ?)/g;function $i(e){return(e[0]===ut||e[0]===wt)&&(e[e.length-1]===ut||e[e.length-1]===wt)}function Fi(e){return(e[0]===ut||e[0]===wt)&&(e=e.slice(1)),(e[e.length-1]===ut||e[e.length-1]===wt)&&(e=e.slice(0,-1)),e}function Vi(e){let i="",t="";for(var r=0;rString.fromCodePoint(parseInt(r.trim(),16))),i=i.replaceAll(`\\ -`,"\\n"),i=Vi(i),i=ut+i+ut);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${e}`)}}var Re=0,at=null,G=null,Z=class extends HTMLElement{constructor(){super(),te(this,"updateCssData",()=>{var e;this.dropCssDataCache(),(e=this.__boundCssProps)==null||e.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 Z}initCallback(){}__initCallback(){var e;this.__initialized||(this.__initialized=!0,(e=this.initCallback)==null||e.call(this))}render(e,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let s=this.getAttribute(_.USE_TPL);if(s){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(s))||document.querySelector(s);o?e=o.content.cloneNode(!0):console.warn(`Symbiote template "${s}" is not found...`)}}if(this.processInnerHtml)for(let s of this.tplProcessors)s(this,this);if(e||this.constructor.template){if(this.constructor.template&&!this.constructor.__tpl&&(this.constructor.__tpl=document.createElement("template"),this.constructor.__tpl.innerHTML=this.constructor.template),(e==null?void 0:e.constructor)===DocumentFragment)t=e;else if((e==null?void 0:e.constructor)===String){let s=document.createElement("template");s.innerHTML=e,t=s.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let s of this.tplProcessors)s(t,this)}let r=()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()};if(this.constructor.__shadowStylesUrl){i=!0;let s=document.createElement("link");s.rel="stylesheet",s.href=this.constructor.__shadowStylesUrl,s.onload=r,this.shadowRoot.prepend(s)}else r()}addTemplateProcessor(e){this.tplProcessors.add(e)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=mt.generate(),this.style.setProperty(_.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(_.CSS_CTX_PROP,!0)}get ctxName(){var e;let i=((e=this.getAttribute(_.CTX_NAME_ATTR))==null?void 0:e.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=T.registerCtx({},this)),this.__localCtx}get nodeCtx(){return T.getCtx(this.ctxName,!1)||T.registerCtx({},this.ctxName)}static __parseProp(e,i){let t,r;if(e.startsWith(_.EXT_DATA_CTX_PRFX))t=i.nodeCtx,r=e.replace(_.EXT_DATA_CTX_PRFX,"");else if(e.includes(_.NAMED_DATA_CTX_SPLTR)){let s=e.split(_.NAMED_DATA_CTX_SPLTR);t=T.getCtx(s[0]),r=s[1]}else t=i.localCtx,r=e;return{ctx:t,name:r}}sub(e,i,t=!0){let r=n=>{this.isConnected&&i(n)},s=Z.__parseProp(e,this);s.ctx.has(s.name)?this.allSubs.add(s.ctx.sub(s.name,r,t)):window.setTimeout(()=>{this.allSubs.add(s.ctx.sub(s.name,r,t))})}notify(e){let i=Z.__parseProp(e,this);i.ctx.notify(i.name)}has(e){let i=Z.__parseProp(e,this);return i.ctx.has(i.name)}add(e,i,t=!1){let r=Z.__parseProp(e,this);r.ctx.add(r.name,i,t)}add$(e,i=!1){for(let t in e)this.add(t,e[t],i)}get $(){if(!this.__stateProxy){let e=Object.create(null);this.__stateProxy=new Proxy(e,{set:(i,t,r)=>{let s=Z.__parseProp(t,this);return s.ctx.pub(s.name,r),!0},get:(i,t)=>{let r=Z.__parseProp(t,this);return r.ctx.read(r.name)}})}return this.__stateProxy}set$(e,i=!1){for(let t in e){let r=e[t];i||![String,Number,Boolean].includes(r==null?void 0:r.constructor)?this.$[t]=r:this.$[t]!==r&&(this.$[t]=r)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(_.CTX_OWNER_ATTR)&&this.getAttribute(_.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let e=this.constructor.__attrDesc;if(e)for(let i of Object.values(e))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(_.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(_.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(_.NAMED_DATA_CTX_SPLTR)){let t=i.split(_.NAMED_DATA_CTX_SPLTR),r=t[0].trim(),s=t[1].trim();if(r&&s){let n=T.getCtx(r,!1);n||(n=T.registerCtx({},r)),n.add(s,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var e;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(e=this.getAttribute(_.CTX_NAME_ATTR))==null?void 0:e.trim();if(i&&this.style.setProperty(_.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[_.SET_LATER_KEY]){for(let t in this[_.SET_LATER_KEY])Pe(this,t,this[_.SET_LATER_KEY][t]);delete this[_.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of Ni)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${_.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let s=this.constructor.__rootStylesLink.cloneNode(!0);s.setAttribute(_.ROOT_STYLE_ATTR_NAME,this.constructor.is),s.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(s):t.prepend(s)}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 e of this.allSubs)e.remove(),this.allSubs.delete(e);for(let e of this.tplProcessors)this.tplProcessors.delete(e);G==null||G.delete(this.updateCssData),G!=null&&G.size||(at==null||at.disconnect(),at=null,G=null)},100)))}static reg(e,i=!1){e||(Re++,e=`${_.AUTO_TAG_PRFX}-${Re}`),this.__tag=e;let t=window.customElements.get(e);if(t){!i&&t!==this&&console.warn([`Element with tag name "${e}" 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(` `));return}window.customElements.define(e,i?class extends this{}:this)}static get is(){return this.__tag||this.reg(),this.__tag}static bindAttributes(e){this.observedAttributes=Object.keys(e),this.__attrDesc=e}attributeChangedCallback(e,i,t){var r;if(i===t)return;let s=(r=this.constructor.__attrDesc)==null?void 0:r[e];s?this.__dataCtxInitialized?this.$[s]=t:this.init$[s]=t:this[e]=t}getCssData(e,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(e)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(e).trim();try{this.__cssDataCache[e]=zi(t)}catch{!i&&console.warn(`CSS Data error: ${e}`),this.__cssDataCache[e]=null}}return this.__cssDataCache[e]}__extractCssName(e){return e.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){G||(G=new Set),G.add(this.updateCssData),at||(at=new MutationObserver(e=>{e[0].type==="attributes"&&G.forEach(i=>{i()})}),at.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(e,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(e);let t=this.getCssData(this.__extractCssName(e),!0);t===null&&(t=i),this.add(e,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(e,i,t){let r="__"+e;this[r]=this[e],Object.defineProperty(this,e,{set:s=>{this[r]=s,t?window.setTimeout(()=>{i==null||i(s)}):i==null||i(s)},get:()=>this[r]}),this[e]=this[r]}static set shadowStyles(e){let i=new Blob([e],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(e){if(!this.__rootStylesLink){let i=new Blob([e],{type:"text/css"}),t=URL.createObjectURL(i),r=document.createElement("link");r.href=t,r.rel="stylesheet",this.__rootStylesLink=r}}},ee=Z;te(ee,"template");var Qt=class{static _print(e){console.warn(e)}static setDefaultTitle(e){this.defaultTitle=e}static setRoutingMap(e){Object.assign(this.appMap,e);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}static set routingEventName(e){this.__routingEventName=e}static get routingEventName(){return this.__routingEventName||"sym-on-route"}static readAddressBar(){let e={route:null,options:{}};return window.location.search.split(this.separator).forEach(t=>{if(t.includes("?"))e.route=t.replace("?","");else if(t.includes("=")){let r=t.split("=");e.options[r[0]]=decodeURI(r[1])}else e.options[t]=!0}),e}static notify(){let e=this.readAddressBar(),i=this.appMap[e.route];if(i&&i.title&&(document.title=i.title),e.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${e.route}" not found...`);return}let t=new CustomEvent(Qt.routingEventName,{detail:{route:e.route,options:Object.assign(i||{},e.options)}});window.dispatchEvent(t)}static reflect(e,i={}){let t=this.appMap[e];if(!t){this._print("Wrong route: "+e);return}let r="?"+e;for(let n in i)i[n]===!0?r+=this.separator+n:r+=this.separator+n+`=${i[n]}`;let s=t.title||this.defaultTitle||"";window.history.pushState(null,s,r),document.title=s}static applyRoute(e,i={}){this.reflect(e,i),this.notify()}static setSeparator(e){this._separator=e}static get separator(){return this._separator||"&"}static createRouterData(e,i){this.setRoutingMap(i);let t=T.registerCtx({route:null,options:null,title:null},e);return window.addEventListener(this.routingEventName,r=>{var s;t.multiPub({route:r.detail.route,options:r.detail.options,title:((s=r.detail.options)==null?void 0:s.title)||this.defaultTitle||""})}),Qt.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};Qt.appMap=Object.create(null);function Me(e,i){for(let t in i)t.includes("-")?e.style.setProperty(t,i[t]):e.style[t]=i[t]}var ke="idb-store-ready",ji="symbiote-db",Hi="symbiote-idb-update_",Wi=class{_notifyWhenReady(e=null){window.dispatchEvent(new CustomEvent(ke,{detail:{dbName:this.name,storeName:this.storeName,event:e}}))}get _updEventName(){return Hi+this.name}_getUpdateEvent(e){return new CustomEvent(this._updEventName,{detail:{key:this.name,newValue:e}})}_notifySubscribers(e){window.localStorage.removeItem(this.name),window.localStorage.setItem(this.name,e),window.dispatchEvent(this._getUpdateEvent(e))}constructor(e,i){this.name=e,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=r=>{this._notifyWhenReady(r)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async s=>{s(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(e){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(e);return new Promise((r,s)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?r(n.target.result._value):(r(null),console.warn(`IDB: cannot read "${e}"`))},t.onerror=n=>{s(n)}})}write(e,i,t=!1){let r={_key:e,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(r);return new Promise((o,l)=>{n.onsuccess=a=>{t||this._notifySubscribers(e),o(a.target.result)},n.onerror=a=>{l(a)}})}delete(e,i=!1){let r=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(e);return new Promise((s,n)=>{r.onsuccess=o=>{i||this._notifySubscribers(e),s(o)},r.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,r)=>{i.onsuccess=s=>{let n=s.target.result;t(n.map(o=>o._value))},i.onerror=s=>{r(s)}})}subscribe(e,i){this._subscriptionsMap[e]||(this._subscriptionsMap[e]=new Set);let t=this._subscriptionsMap[e];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[e]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,Ne.clear(this.name)}},Ne=class{static get readyEventName(){return ke}static open(e=ji,i="store"){let t=e+"/"+i;return this._reg[t]||(this._reg[t]=new Wi(e,i)),this._reg[t]}static clear(e){window.indexedDB.deleteDatabase(e);for(let i in this._reg)i.split("/")[0]===e&&delete this._reg[i]}};te(Ne,"_reg",Object.create(null));var w=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),Bi=Object.freeze({[w.UPLOAD_START]:"LR_UPLOAD_START",[w.REMOVE]:"LR_REMOVE",[w.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[w.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[w.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[w.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[w.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[w.DATA_OUTPUT]:"LR_DATA_OUTPUT",[w.DONE_FLOW]:"LR_DONE_FLOW",[w.INIT_FLOW]:"LR_INIT_FLOW"}),At=class{constructor(i){u(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var s;(s=this._target)==null||s.dispatchEvent(new CustomEvent(i,{detail:t}));let r=Bi[i];window.dispatchEvent(new CustomEvent(r,{detail:{ctx:this._getCtxName(),type:r,data:t}}))}emit(i,t,{debounce:r}={}){if(typeof r!="number"&&!r){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let s=typeof r=="number"?r:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},s);this._timeoutStore.set(i,n)}};var Xi="--uploadcare-blocks-window-height",xt="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function ie(){return typeof window[xt]=="undefined"?!1:!!window[xt]}function De(){if(ie())return;let e=()=>{document.documentElement.style.setProperty(Xi,`${window.innerHeight}px`),window[xt]=!0},i=$(e,100);return window.addEventListener("resize",i,{passive:!0}),e(),()=>{window[xt]=!1,window.removeEventListener("resize",i)}}var St=(e,i)=>new Intl.PluralRules(e).select(i);var Gi=e=>e,re="{{",Fe="}}",$e="plural:";function se(e,i,t={}){var o;let{openToken:r=re,closeToken:s=Fe,transform:n=Gi}=t;for(let l in i){let a=(o=i[l])==null?void 0:o.toString();e=e.replaceAll(r+l+s,typeof a=="string"?n(a):a)}return e}function Ve(e){let i=[],t=e.indexOf(re);for(;t!==-1;){let r=e.indexOf(Fe,t),s=e.substring(t+2,r);if(s.startsWith($e)){let n=e.substring(t+2,r).replace($e,""),o=n.substring(0,n.indexOf("(")),l=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:s,pluralKey:o,countVariable:l})}t=e.indexOf(re,r)}return i}var Q=e=>{var i;return(i=e.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:i.map(t=>t.toLowerCase()).join("-")};var Ot=({element:e,attribute:i,onSuccess:t,onTimeout:r,timeout:s=300})=>{let n=setTimeout(()=>{a.disconnect(),r()},s),o=c=>{let h=e.getAttribute(i);c.type==="attributes"&&c.attributeName===i&&h!==null&&(clearTimeout(n),a.disconnect(),t(h))},l=e.getAttribute(i);l!==null&&(clearTimeout(n),t(l));let a=new MutationObserver(c=>{let h=c[c.length-1];o(h)});a.observe(e,{attributes:!0,attributeFilter:[i]})};var ze=new Set;function _t(e){ze.has(e)||(ze.add(e),console.warn(e))}function je(e){return Object.prototype.toString.call(e)==="[object Object]"}var qi=/\W|_/g;function Ki(e){return e.split(qi).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}function He(e,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(e)?e.map(t=>Y(t,{ignoreKeys:i})):e}function Y(e,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(e))return He(e,{ignoreKeys:i});if(!je(e))return e;let t={};for(let r of Object.keys(e)){let s=e[r];if(i.includes(r)){t[r]=s;continue}je(s)?s=Y(s,{ignoreKeys:i}):Array.isArray(s)&&(s=He(s,{ignoreKeys:i})),t[Ki(r)]=s}return t}var Yi=e=>new Promise(i=>setTimeout(i,e));function he({libraryName:e,libraryVersion:i,userAgent:t,publicKey:r="",integration:s=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:r,libraryName:e,libraryVersion:i,languageName:n,integration:s});let o=[e,i,r].filter(Boolean).join("/"),l=[n,s].filter(Boolean).join("; ");return`${o} (${l})`}var Ji={factor:2,time:100};function Zi(e,i=Ji){let t=0;function r(s){let n=Math.round(i.time*i.factor**t);return s({attempt:t,retry:l=>Yi(l!=null?l:n).then(()=>(t+=1,r(s)))})}return r(e)}var ct=class extends Error{constructor(t){super();u(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,ct.prototype),this.originalProgressEvent=t}},Ut=(e,i)=>{e&&(e.aborted?Promise.resolve().then(i):e.addEventListener("abort",()=>i(),{once:!0}))},tt=class extends Error{constructor(t="Request canceled"){super(t);u(this,"isCancel",!0);Object.setPrototypeOf(this,tt.prototype)}},Qi=500,Be=({check:e,interval:i=Qi,timeout:t,signal:r})=>new Promise((s,n)=>{let o,l;Ut(r,()=>{o&&clearTimeout(o),n(new tt("Poll cancelled"))}),t&&(l=setTimeout(()=>{o&&clearTimeout(o),n(new tt("Timed out"))},t));let a=()=>{try{Promise.resolve(e(r)).then(c=>{c?(l&&clearTimeout(l),s(c)):o=setTimeout(a,i)}).catch(c=>{l&&clearTimeout(l),n(c)})}catch(c){l&&clearTimeout(l),n(c)}};o=setTimeout(a,0)}),y={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"},Rt="application/octet-stream",Xe="original",et=({method:e,url:i,data:t,headers:r={},signal:s,onProgress:n})=>new Promise((o,l)=>{let a=new XMLHttpRequest,c=(e==null?void 0:e.toUpperCase())||"GET",h=!1;a.open(c,i,!0),r&&Object.entries(r).forEach(d=>{let[f,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&a.setRequestHeader(f,m)}),a.responseType="text",Ut(s,()=>{h=!0,a.abort(),l(new tt)}),a.onload=()=>{if(a.status!=200)l(new Error(`Error ${a.status}: ${a.statusText}`));else{let d={method:c,url:i,data:t,headers:r||void 0,signal:s,onProgress:n},f=a.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};f.forEach(function(A){let v=A.split(": "),b=v.shift(),g=v.join(": ");b&&typeof b!="undefined"&&(m[b]=g)});let p=a.response,C=a.status;o({request:d,data:p,headers:m,status:C})}},a.onerror=d=>{h||l(new ct(d))},n&&typeof n=="function"&&(a.upload.onprogress=d=>{d.lengthComputable?n({isComputable:!0,value:d.loaded/d.total}):n({isComputable:!1})}),t?a.send(t):a.send()});function tr(e,...i){return e}var er=({name:e})=>e?[e]:[],ir=tr,rr=()=>new FormData,Ge=e=>!1,Lt=e=>typeof Blob!="undefined"&&e instanceof Blob,Pt=e=>typeof File!="undefined"&&e instanceof File,Mt=e=>!!e&&typeof e=="object"&&!Array.isArray(e)&&"uri"in e&&typeof e.uri=="string",ht=e=>Lt(e)||Pt(e)||Ge()||Mt(e),sr=e=>typeof e=="string"||typeof e=="number"||typeof e=="undefined",nr=e=>!!e&&typeof e=="object"&&!Array.isArray(e),or=e=>!!e&&typeof e=="object"&&"data"in e&&ht(e.data);function lr(e,i,t){if(or(t)){let{name:r,contentType:s}=t,n=ir(t.data,r,s!=null?s:Rt),o=er({name:r,contentType:s});e.push([i,n,...o])}else if(nr(t))for(let[r,s]of Object.entries(t))typeof s!="undefined"&&e.push([`${i}[${r}]`,String(s)]);else sr(t)&&t&&e.push([i,t.toString()])}function ar(e){let i=[];for(let[t,r]of Object.entries(e))lr(i,t,r);return i}function de(e){let i=rr(),t=ar(e);for(let r of t){let[s,n,...o]=r;i.append(s,n,...o)}return i}var U=class extends Error{constructor(t,r,s,n,o){super();u(this,"isCancel");u(this,"code");u(this,"request");u(this,"response");u(this,"headers");this.name="UploadClientError",this.message=t,this.code=r,this.request=s,this.response=n,this.headers=o,Object.setPrototypeOf(this,U.prototype)}},ur=e=>{let i=new URLSearchParams;for(let[t,r]of Object.entries(e))r&&typeof r=="object"&&!Array.isArray(r)?Object.entries(r).filter(s=>{var n;return(n=s[1])!=null?n:!1}).forEach(s=>i.set(`${t}[${s[0]}]`,String(s[1]))):Array.isArray(r)?r.forEach(s=>{i.append(`${t}[]`,s)}):typeof r=="string"&&r?i.set(t,r):typeof r=="number"&&i.set(t,r.toString());return i.toString()},q=(e,i,t)=>{let r=new URL(e);return r.pathname=(r.pathname+i).replace("//","/"),t&&(r.search=ur(t)),r.toString()},cr="6.8.0",hr="UploadcareUploadClient",dr=cr;function ot(e){return he({libraryName:hr,libraryVersion:dr,...e})}var fr="RequestThrottledError",We=15e3,pr=1e3;function mr(e){let{headers:i}=e||{};if(!i||typeof i["retry-after"]!="string")return We;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:We}function it(e,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:r}=i;return Zi(({attempt:s,retry:n})=>e().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===fr&&s{let i="";return(Lt(e)||Pt(e)||Mt(e))&&(i=e.type),i||Rt},Ke=e=>{let i="";return Pt(e)&&e.name?i=e.name:Lt(e)||Ge()?i="":Mt(e)&&e.name&&(i=e.name),i||Xe};function fe(e){return typeof e=="undefined"||e==="auto"?"auto":e?"1":"0"}function _r(e,{publicKey:i,fileName:t,contentType:r,baseURL:s=y.baseURL,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:h="local",integration:d,userAgent:f,retryThrottledRequestMaxTimes:m=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:p=y.retryNetworkErrorMaxTimes,metadata:C}){return it(()=>et({method:"POST",url:q(s,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":ot({publicKey:i,integration:d,userAgent:f})},data:de({file:{data:e,name:t||Ke(e),contentType:r||qe(e)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:fe(l),signature:n,expire:o,source:h,metadata:C}),signal:a,onProgress:c}).then(({data:A,headers:v,request:b})=>{let g=Y(JSON.parse(A));if("error"in g)throw new U(g.error.content,g.error.errorCode,b,g,v);return g}),{retryNetworkErrorMaxTimes:p,retryThrottledRequestMaxTimes:m})}var le;(function(e){e.Token="token",e.FileInfo="file_info"})(le||(le={}));function gr(e,{publicKey:i,baseURL:t=y.baseURL,store:r,fileName:s,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,source:c="url",signal:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:p=y.retryNetworkErrorMaxTimes,metadata:C}){return it(()=>et({method:"POST",headers:{"X-UC-User-Agent":ot({publicKey:i,integration:d,userAgent:f})},url:q(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:e,store:fe(r),filename:s,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:l,expire:a,source:c,metadata:C}),signal:h}).then(({data:A,headers:v,request:b})=>{let g=Y(JSON.parse(A));if("error"in g)throw new U(g.error.content,g.error.errorCode,b,g,v);return g}),{retryNetworkErrorMaxTimes:p,retryThrottledRequestMaxTimes:m})}var k;(function(e){e.Unknown="unknown",e.Waiting="waiting",e.Progress="progress",e.Error="error",e.Success="success"})(k||(k={}));var br=e=>"status"in e&&e.status===k.Error;function yr(e,{publicKey:i,baseURL:t=y.baseURL,signal:r,integration:s,userAgent:n,retryThrottledRequestMaxTimes:o=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=y.retryNetworkErrorMaxTimes}={}){return it(()=>et({method:"GET",headers:i?{"X-UC-User-Agent":ot({publicKey:i,integration:s,userAgent:n})}:void 0,url:q(t,"/from_url/status/",{jsonerrors:1,token:e}),signal:r}).then(({data:a,headers:c,request:h})=>{let d=Y(JSON.parse(a));if("error"in d&&!br(d))throw new U(d.error.content,void 0,h,d,c);return d}),{retryNetworkErrorMaxTimes:l,retryThrottledRequestMaxTimes:o})}function Cr(e,{publicKey:i,baseURL:t=y.baseURL,jsonpCallback:r,secureSignature:s,secureExpire:n,signal:o,source:l,integration:a,userAgent:c,retryThrottledRequestMaxTimes:h=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=y.retryNetworkErrorMaxTimes}){return it(()=>et({method:"POST",headers:{"X-UC-User-Agent":ot({publicKey:i,integration:a,userAgent:c})},url:q(t,"/group/",{jsonerrors:1,pub_key:i,files:e,callback:r,signature:s,expire:n,source:l}),signal:o}).then(({data:f,headers:m,request:p})=>{let C=Y(JSON.parse(f));if("error"in C)throw new U(C.error.content,C.error.errorCode,p,C,m);return C}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:h})}function Ye(e,{publicKey:i,baseURL:t=y.baseURL,signal:r,source:s,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=y.retryNetworkErrorMaxTimes}){return it(()=>et({method:"GET",headers:{"X-UC-User-Agent":ot({publicKey:i,integration:n,userAgent:o})},url:q(t,"/info/",{jsonerrors:1,pub_key:i,file_id:e,source:s}),signal:r}).then(({data:c,headers:h,request:d})=>{let f=Y(JSON.parse(c));if("error"in f)throw new U(f.error.content,f.error.errorCode,d,f,h);return f}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function Er(e,{publicKey:i,contentType:t,fileName:r,multipartChunkSize:s=y.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:l,store:a,signal:c,source:h="local",integration:d,userAgent:f,retryThrottledRequestMaxTimes:m=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:p=y.retryNetworkErrorMaxTimes,metadata:C}){return it(()=>et({method:"POST",url:q(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":ot({publicKey:i,integration:d,userAgent:f})},data:de({filename:r||Xe,size:e,content_type:t||Rt,part_size:s,UPLOADCARE_STORE:fe(a),UPLOADCARE_PUB_KEY:i,signature:o,expire:l,source:h,metadata:C}),signal:c}).then(({data:A,headers:v,request:b})=>{let g=Y(JSON.parse(A));if("error"in g)throw new U(g.error.content,g.error.errorCode,b,g,v);return g.parts=Object.keys(g.parts).map(P=>g.parts[P]),g}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p})}function vr(e,i,{contentType:t,signal:r,onProgress:s,retryThrottledRequestMaxTimes:n=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=y.retryNetworkErrorMaxTimes}){return it(()=>et({method:"PUT",url:i,data:e,onProgress:s,signal:r,headers:{"Content-Type":t||Rt}}).then(l=>(s&&s({isComputable:!0,value:1}),l)).then(({status:l})=>({code:l})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}function Tr(e,{publicKey:i,baseURL:t=y.baseURL,source:r="local",signal:s,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=y.retryNetworkErrorMaxTimes}){return it(()=>et({method:"POST",url:q(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":ot({publicKey:i,integration:n,userAgent:o})},data:de({uuid:e,UPLOADCARE_PUB_KEY:i,source:r}),signal:s}).then(({data:c,headers:h,request:d})=>{let f=Y(JSON.parse(c));if("error"in f)throw new U(f.error.content,f.error.errorCode,d,f,h);return f}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function pe(e,{publicKey:i,baseURL:t,source:r,integration:s,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l,signal:a,onProgress:c}){return Be({check:h=>Ye(e,{publicKey:i,baseURL:t,signal:h,source:r,integration:s,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:a})}function wr(e){return"defaultEffects"in e}var K=class{constructor(i,{baseCDN:t=y.baseCDN,fileName:r}={}){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:n}=i,o=q(t,`${s}/`),l=n?q(`https://${n}.s3.amazonaws.com/`,`${s}/${i.filename}`):null;this.uuid=s,this.name=r||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=l,wr(i)&&(this.defaultEffects=i.defaultEffects)}},Ar=(e,{publicKey:i,fileName:t,baseURL:r,secureSignature:s,secureExpire:n,store:o,contentType:l,signal:a,onProgress:c,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,baseCDN:C,metadata:A})=>_r(e,{publicKey:i,fileName:t,contentType:l,baseURL:r,secureSignature:s,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,metadata:A}).then(({file:v})=>pe(v,{publicKey:i,baseURL:r,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,onProgress:c,signal:a})).then(v=>new K(v,{baseCDN:C})),xr=(e,{publicKey:i,fileName:t,baseURL:r,signal:s,onProgress:n,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:h,baseCDN:d})=>Ye(e,{publicKey:i,baseURL:r,signal:s,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:h}).then(f=>new K(f,{baseCDN:d,fileName:t})).then(f=>(n&&n({isComputable:!0,value:1}),f)),Sr=(e,{signal:i}={})=>{let t=null,r=null,s=e.map(()=>new AbortController),n=o=>()=>{r=o,s.forEach((l,a)=>a!==o&&l.abort())};return Ut(i,()=>{s.forEach(o=>o.abort())}),Promise.all(e.map((o,l)=>{let a=n(l);return Promise.resolve().then(()=>o({stopRace:a,signal:s[l].signal})).then(c=>(a(),c)).catch(c=>(t=c,null))})).then(o=>{if(r===null)throw t;return o[r]})},Or=window.WebSocket,ae=class{constructor(){u(this,"events",Object.create({}))}emit(i,t){var r;(r=this.events[i])==null||r.forEach(s=>s(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(r=>r!==t):this.events[i]=[]}},Ir=(e,i)=>e==="success"?{status:k.Success,...i}:e==="progress"?{status:k.Progress,...i}:{status:k.Error,...i},ue=class{constructor(i,t=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 ae);u(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Or(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let r=JSON.parse(t.data.toString());switch(r.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(r.channel,Ir(r.event,JSON.parse(r.data)))}})}}disconnect(){let i=()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var s;let r=JSON.stringify({event:i,data:t});(s=this.ws)==null||s.send(r)}subscribe(i,t){this.subscribers+=1,this.connect();let r=`task-status-${i}`,s={event:"pusher:subscribe",data:{channel:r}};this.emmitter.on(r,t),this.isConnected?this.send(s.event,s.data):this.queue.push(s)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,r={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(r.event,r.data):this.queue=this.queue.filter(s=>s.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}},ne=null,me=e=>{if(!ne){let i=typeof window=="undefined"?0:3e4;ne=new ue(e,i)}return ne},Ur=e=>{me(e).connect()};function Rr({token:e,publicKey:i,baseURL:t,integration:r,userAgent:s,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:l,signal:a}){return Be({check:c=>yr(e,{publicKey:i,baseURL:t,integration:r,userAgent:s,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:c}).then(h=>{switch(h.status){case k.Error:return new U(h.error,h.errorCode);case k.Waiting:return!1;case k.Unknown:return new U(`Token "${e}" was not found.`);case k.Progress:return l&&(h.total==="unknown"?l({isComputable:!1}):l({isComputable:!0,value:h.done/h.total})),!1;case k.Success:return l&&l({isComputable:!0,value:h.done/h.total}),h;default:throw new Error("Unknown status")}}),signal:a})}var Lr=({token:e,pusherKey:i,signal:t,onProgress:r})=>new Promise((s,n)=>{let o=me(i),l=o.onError(n),a=()=>{l(),o.unsubscribe(e)};Ut(t,()=>{a(),n(new tt("pusher cancelled"))}),o.subscribe(e,c=>{switch(c.status){case k.Progress:{r&&(c.total==="unknown"?r({isComputable:!1}):r({isComputable:!0,value:c.done/c.total}));break}case k.Success:{a(),r&&r({isComputable:!0,value:c.done/c.total}),s(c);break}case k.Error:a(),n(new U(c.msg,c.error_code))}})}),Pr=(e,{publicKey:i,fileName:t,baseURL:r,baseCDN:s,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:h,onProgress:d,source:f,integration:m,userAgent:p,retryThrottledRequestMaxTimes:C,pusherKey:A=y.pusherKey,metadata:v})=>Promise.resolve(Ur(A)).then(()=>gr(e,{publicKey:i,fileName:t,baseURL:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:h,source:f,integration:m,userAgent:p,retryThrottledRequestMaxTimes:C,metadata:v})).catch(b=>{let g=me(A);return g==null||g.disconnect(),Promise.reject(b)}).then(b=>b.type===le.FileInfo?b:Sr([({signal:g})=>Rr({token:b.token,publicKey:i,baseURL:r,integration:m,userAgent:p,retryThrottledRequestMaxTimes:C,onProgress:d,signal:g}),({signal:g})=>Lr({token:b.token,pusherKey:A,signal:g,onProgress:d})],{signal:h})).then(b=>{if(b instanceof U)throw b;return b}).then(b=>pe(b.uuid,{publicKey:i,baseURL:r,integration:m,userAgent:p,retryThrottledRequestMaxTimes:C,onProgress:d,signal:h})).then(b=>new K(b,{baseCDN:s})),oe=new WeakMap,Mr=async e=>{if(oe.has(e))return oe.get(e);let i=await fetch(e.uri).then(t=>t.blob());return oe.set(e,i),i},Je=async e=>{if(Pt(e)||Lt(e))return e.size;if(Mt(e))return(await Mr(e)).size;throw new Error("Unknown file type. Cannot determine file size.")},kr=(e,i=y.multipartMinFileSize)=>e>=i,Ze=e=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!ht(e)&&t.test(e)},_e=e=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!ht(e)&&t.test(e)},Nr=(e,i)=>new Promise((t,r)=>{let s=[],n=!1,o=i.length,l=[...i],a=()=>{let c=i.length-l.length,h=l.shift();h&&h().then(d=>{n||(s[c]=d,o-=1,o?a():t(s))}).catch(d=>{n=!0,r(d)})};for(let c=0;c{let s=r*i,n=Math.min(s+r,t);return e.slice(s,n)},$r=async(e,i,t)=>r=>Dr(e,r,i,t),Fr=(e,i,{publicKey:t,contentType:r,onProgress:s,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})=>vr(e,i,{publicKey:t,contentType:r,onProgress:s,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a}),Vr=async(e,{publicKey:i,fileName:t,fileSize:r,baseURL:s,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,contentType:C,multipartChunkSize:A=y.multipartChunkSize,maxConcurrentRequests:v=y.maxConcurrentRequests,baseCDN:b,metadata:g})=>{let P=r!=null?r:await Je(e),B,nt=(I,M)=>{if(!c)return;B||(B=Array(I).fill(0));let F=V=>V.reduce((X,Zt)=>X+Zt,0);return V=>{V.isComputable&&(B[M]=V.value,c({isComputable:!0,value:F(B)/I}))}};return C||(C=qe(e)),Er(P,{publicKey:i,contentType:C,fileName:t||Ke(e),baseURL:s,secureSignature:n,secureExpire:o,store:l,signal:a,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,metadata:g}).then(async({uuid:I,parts:M})=>{let F=await $r(e,P,A);return Promise.all([I,Nr(v,M.map((V,X)=>()=>Fr(F(X),V,{publicKey:i,contentType:C,onProgress:nt(M.length,X),signal:a,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p})))])}).then(([I])=>Tr(I,{publicKey:i,baseURL:s,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p})).then(I=>I.isReady?I:pe(I.uuid,{publicKey:i,baseURL:s,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,onProgress:c,signal:a})).then(I=>new K(I,{baseCDN:b}))};async function ge(e,{publicKey:i,fileName:t,baseURL:r=y.baseURL,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,contentType:p,multipartMinFileSize:C,multipartChunkSize:A,maxConcurrentRequests:v,baseCDN:b=y.baseCDN,checkForUrlDuplicates:g,saveUrlForRecurrentUploads:P,pusherKey:B,metadata:nt}){if(ht(e)){let I=await Je(e);return kr(I,C)?Vr(e,{publicKey:i,contentType:p,multipartChunkSize:A,fileSize:I,fileName:t,baseURL:r,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,maxConcurrentRequests:v,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,baseCDN:b,metadata:nt}):Ar(e,{publicKey:i,fileName:t,contentType:p,baseURL:r,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,baseCDN:b,metadata:nt})}if(_e(e))return Pr(e,{publicKey:i,fileName:t,baseURL:r,baseCDN:b,checkForUrlDuplicates:g,saveUrlForRecurrentUploads:P,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,pusherKey:B,metadata:nt});if(Ze(e))return xr(e,{publicKey:i,fileName:t,baseURL:r,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,baseCDN:b});throw new TypeError(`File uploading from "${e}" is not supported`)}var ce=class{constructor(i,{baseCDN:t=y.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=i.id,this.filesCount=i.filesCount;let r=i.files.filter(Boolean);this.totalSize=Object.values(r).reduce((s,n)=>s+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(r).filter(s=>s.isImage).length,this.cdnUrl=i.cdnUrl,this.files=r.map(s=>new K(s,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}},zr=e=>{for(let i of e)if(!ht(i))return!1;return!0},jr=e=>{for(let i of e)if(!Ze(i))return!1;return!0},Hr=e=>{for(let i of e)if(!_e(i))return!1;return!0};function Qe(e,{publicKey:i,fileName:t,baseURL:r=y.baseURL,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,contentType:p,multipartChunkSize:C=y.multipartChunkSize,baseCDN:A=y.baseCDN,checkForUrlDuplicates:v,saveUrlForRecurrentUploads:b,jsonpCallback:g}){if(!zr(e)&&!Hr(e)&&!jr(e))throw new TypeError(`Group uploading from "${e}" is not supported`);let P,B=!0,nt=e.length,I=(M,F)=>{if(!a)return;P||(P=Array(M).fill(0));let V=X=>X.reduce((Zt,Ci)=>Zt+Ci)/M;return X=>{if(!X.isComputable||!B){B=!1,a({isComputable:!1});return}P[F]=X.value,a({isComputable:!0,value:V(P)})}};return Promise.all(e.map((M,F)=>ht(M)||_e(M)?ge(M,{publicKey:i,fileName:t,baseURL:r,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:I(nt,F),source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,contentType:p,multipartChunkSize:C,baseCDN:A,checkForUrlDuplicates:v,saveUrlForRecurrentUploads:b}).then(V=>V.uuid):M)).then(M=>Cr(M,{publicKey:i,baseURL:r,jsonpCallback:g,secureSignature:s,secureExpire:n,signal:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m}).then(F=>new ce(F,{baseCDN:A})).then(F=>(a&&a({isComputable:!0,value:1}),F)))}var It=class{constructor(i){u(this,"_concurrency",1);u(this,"_pending",[]);u(this,"_running",0);u(this,"_resolvers",new Map);u(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(r),this._rejectors.delete(r),this._running-=1,this._run()}).then(o=>s(o)).catch(o=>n(o))}}add(i){return new Promise((t,r)=>{this._resolvers.set(i,t),this._rejectors.set(i,r),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};var be=()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),ye=e=>({...be(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{e.set$({"*modalActive":!1,"*currentActivity":""})}}),kt=e=>({...ye(e),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new It(1)});function ti(e,i){[...e.querySelectorAll("[l10n]")].forEach(t=>{let r=t.getAttribute("l10n"),s="textContent";if(r.includes(":")){let o=r.split(":");s=o[0],r=o[1]}let n="l10n:"+r;i.__l10nKeys.push(n),i.add(n,r),i.sub(n,o=>{t[s]=i.l10n(o)}),t.removeAttribute("l10n")})}var N=e=>`*cfg/${e}`;var Ce="lr-",O=class extends ee{constructor(){super();u(this,"requireCtxName",!1);u(this,"allowCustomTemplate",!0);u(this,"init$",be());u(this,"updateCtxCssData",()=>{_t("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let r of t)r.isConnected&&r.updateCssData()});this.activityType=null,this.addTemplateProcessor(ti),this.__l10nKeys=[]}l10n(t,r={}){if(!t)return"";let s=this.getCssData("--l10n-"+t,!0)||t,n=Ve(s);for(let l of n)r[l.variable]=this.pluralize(l.pluralKey,Number(r[l.countVariable]));return se(s,r)}pluralize(t,r){let s=this.l10n("locale-name")||"en-US",n=St(s,r);return this.l10n(`${t}__${n}`)}emit(t,r,s){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,r,s)}applyL10nKey(t,r){let s="l10n:"+t;this.$[s]=r,this.__l10nKeys.push(t)}hasBlockInCtx(t){let r=this.$["*blocksRegistry"];for(let s of r)if(t(s))return!0;return!1}setOrAddState(t,r){this.add$({[t]:r},!0)}setActivity(t){if(this.hasBlockInCtx(r=>r.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Ce}${t}`,!0),ie()||(this._destroyInnerHeightTracker=De()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?Ot({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new At(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,r=2){let s=["B","KB","MB","GB","TB"],n=c=>this.getCssData("--l10n-unit-"+c.toLowerCase(),!0)||c;if(t===0)return`0 ${n(s[0])}`;let o=1024,l=r<0?0:r,a=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**a).toFixed(l))+" "+n(s[a])}proxyUrl(t){let r=this.cfg.secureDeliveryProxy;return r?se(r,{previewUrl:t},{transform:s=>window.encodeURIComponent(s)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(r,s,n)=>{if(typeof s!="string")return!1;let o=N(s);return this.$[o]=n,!0},get:(r,s)=>{let n=N(s),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(_t("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${Q(s)}`))}})}return this.__cfgProxy}subConfigValue(t,r){let s=this.parseCfgProp(N(t));s.ctx.has(s.name)?this.sub(N(t),r):(this.bindCssData(`--cfg-${Q(t)}`),this.sub(`--cfg-${Q(t)}`,r))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Ce)?t:Ce+t)}};u(O,"StateConsumerScope",null),u(O,"className","");var ei="active",gt="___ACTIVITY_IS_ACTIVE___",z=class extends O{constructor(){super(...arguments);u(this,"historyTracked",!1);u(this,"init$",ye(this));u(this,"_debouncedHistoryFlush",$(this._historyFlush.bind(this),10))}_deactivate(){var r;let t=z._activityRegistry[this.activityKey];this[gt]=!1,this.removeAttribute(ei),(r=t==null?void 0:t.deactivateCallback)==null||r.call(t)}_activate(){var r;let t=z._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[gt]=!0,this.setAttribute(ei,""),(r=t==null?void 0:t.activateCallback)==null||r.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[gt]?this._deactivate():this.activityType===t&&!this[gt]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!z._activityRegistry[this.activityKey]}get isActivityActive(){return this[gt]}registerActivity(t,r={}){let{onActivate:s,onDeactivate:n}=r;z._activityRegistry||(z._activityRegistry=Object.create(null)),z._activityRegistry[this.activityKey]={activateCallback:s,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),z._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(z._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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(){let t=this.$["*history"];if(t){let r=t.pop();for(;r===this.activityType;)r=t.pop();this.$["*currentActivity"]=r,this.$["*history"]=t,r||this.setOrAddState("*modalActive",!1)}}},E=z;u(E,"_activityRegistry",Object.create(null));E.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var Wr="css-src";function Br(e){return class extends e{constructor(){super(...arguments);u(this,"renderShadow",!0);u(this,"pauseRender",!0);u(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),Ot({element:this,attribute:Wr,onSuccess:t=>{this.attachShadow({mode:"open"});let r=document.createElement("link");r.rel="stylesheet",r.type="text/css",r.href=t,r.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(r)},onTimeout:()=>{console.error("Attribute `css-src`is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}var Nt=class extends Br(O){};var Dt=class extends Nt{constructor(){super(...arguments);u(this,"requireCtxName",!0);u(this,"init$",kt(this));u(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};var $t=class extends Dt{constructor(){super(...arguments);u(this,"pauseRender",!0)}shadowReadyCallback(){let t=this.ref.uBlock;this.sub("*currentActivity",r=>{r||(this.$["*currentActivity"]=t.initActivity||E.activities.START_FROM)}),this.sub("*uploadList",r=>{(r==null?void 0:r.length)>0?this.$["*currentActivity"]=E.activities.UPLOAD_LIST:this.$["*currentActivity"]=t.initActivity||E.activities.START_FROM}),this.subConfigValue("sourceList",r=>{r!=="local"&&(this.cfg.sourceList="local")}),this.subConfigValue("confirmUpload",r=>{r!==!1&&(this.cfg.confirmUpload=!1)})}};$t.template=``;var Ft=class extends E{constructor(){super(...arguments);u(this,"historyTracked",!0);u(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};Ft.template='
';function ii(e,i,t){let r=e/i,s,n;r>t?(s=Math.round(i*t),n=i):(s=e,n=Math.round(e/t));let o=Math.round((e-s)/2),l=Math.round((i-n)/2);return o+s>e&&(s=e-o),l+n>i&&(n=i-l),{x:o,y:l,width:s,height:n}}var ri=e=>{if(!e)return[];let[i,t]=e.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${e}`);return}return[{type:"aspect-ratio",width:i,height:t}]};var rt=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var bt=e=>e?e.join(","):"";var si="blocks",ni="0.29.1";function oi(e){return he({...e,libraryName:si,libraryVersion:ni})}var Xr=e=>{if(typeof e!="string"||!e)return"";let i=e.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},Ee=(...e)=>e.filter(i=>typeof i=="string"&&i).map(i=>Xr(i)).join("/-/"),Vt=(...e)=>{let i=Ee(...e);return i?`-/${i}/`:""};function li(e){let i=new URL(e),t=i.pathname+i.search+i.hash,r=t.lastIndexOf("http"),s=t.lastIndexOf("/"),n="";return r>=0?n=t.slice(r):s>=0&&(n=t.slice(s+1)),n}function Gr(e){let i=new URL(e),t=li(e),r=ai(t)?ui(t).pathname:t;return i.pathname=i.pathname.replace(r,""),i.search="",i.hash="",i.toString()}function ai(e){return e.startsWith("http")}function ui(e){let i=new URL(e);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}var zt=(e,i,t)=>{let r=new URL(Gr(e));if(t=t||li(e),r.pathname.startsWith("//")&&(r.pathname=r.pathname.replace("//","/")),ai(t)){let s=ui(t);r.pathname=r.pathname+(i||"")+(s.pathname||""),r.search=s.search,r.hash=s.hash}else r.pathname=r.pathname+(i||"")+(t||"");return r.toString()},ci=(e,i)=>{let t=new URL(e);return t.pathname=i+"/",t.toString()};var dt=(e,i=",")=>e.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0);var yt=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],ve=e=>e?e.filter(i=>typeof i=="string").map(i=>dt(i)).flat():[],Te=(e,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),e.startsWith(t)):e===t),hi=(e,i)=>i.some(t=>t.startsWith(".")?e.toLowerCase().endsWith(t.toLowerCase()):!1),we=e=>{let i=e==null?void 0:e.type;return i?Te(i,yt):!1};var j=1e3,lt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),Ct=e=>Math.ceil(e*100)/100,di=(e,i=lt.AUTO)=>{let t=i===lt.AUTO;if(i===lt.BYTE||t&&e(r[s]=i[s].value,r),{}),this.__data=T.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(fi+i);return}let r=this.__typedSchema[i];if((t==null?void 0:t.constructor)===r.type||t instanceof r.type||r.nullable&&t===null){this.__data.pub(i,t);return}console.warn(qr+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(fi+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){T.deleteCtx(this.__ctxId)}};var Ht=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||mt.generate(),this.__data=T.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(r,s)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[r]||(t[r]=new Set),t[r].add(s),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let r of this.__collectionObservers)r==null||r([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new jt(this.__typedSchema);for(let r in i)t.setValue(r,i[r]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(r=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(r,()=>{this.__notifyObservers(r,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,r){this.read(i).setValue(t,r)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(r=>{let s=this.read(r);i(s)&&t.push(r)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){T.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};var pi=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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:K,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var S=class extends E{constructor(){super(...arguments);u(this,"couldBeUploadCollectionOwner",!1);u(this,"isUploadCollectionOwner",!1);u(this,"init$",kt(this));u(this,"__initialUploadMetadata",null);u(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);u(this,"_debouncedRunValidators",$(this._runValidators.bind(this),100));u(this,"_flushOutputItems",$(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(w.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));u(this,"_handleCollectonUpdate",(t,r,s)=>{var n;this._runValidators();for(let o of s)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()});u(this,"_handleCollectionPropertiesUpdate",t=>{this._flushOutputItems();let r=this.uploadCollection,s=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>r.read(n)).filter(Boolean);for(let n of s)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=r.findItems(a=>!a.getValue("uploadError"));o.forEach(a=>{n+=r.readProp(a,"uploadProgress")});let l=Math.round(n/o.length);this.$["*commonProgress"]=l,this.emit(w.UPLOAD_PROGRESS,l,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=r.findItems(l=>!!l.getValue("fileInfo")),o=r.findItems(l=>!!l.getValue("uploadError")||!!l.getValue("validationErrorMsg"));if(r.size-o.length===n.length){let l=this.getOutputData(a=>!!a.getValue("fileInfo")&&!a.getValue("silentUpload"));l.length>0&&this.emit(w.UPLOAD_FINISH,l,{debounce:!0})}}t.uploadError&&r.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(w.UPLOAD_ERROR,r.readProp(o,"uploadError"))}),t.validationErrorMsg&&r.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(w.VALIDATION_ERROR,r.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&r.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(w.CLOUD_MODIFICATION,r.readProp(o,"cdnUrlModifiers"))})})}setUploadMetadata(t){_t("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let r=new Ht({typedSchema:pi,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",r)}let t=()=>this.hasBlockInCtx(r=>r instanceof S?r.isUploadCollectionOwner&&r.isConnected&&r!==this:!1);this.couldBeUploadCollectionOwner&&!t()&&(this.isUploadCollectionOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators())),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata),this.subConfigValue("maxConcurrentRequests",r=>{this.$["*uploadQueue"].concurrency=Number(r)||1})}destroyCallback(){var t,r;super.destroyCallback(),this.isUploadCollectionOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(r=this._unobserveCollection)==null||r.call(this))}addFileFromUrl(t,{silent:r,fileName:s,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:s!=null?s:null,silentUpload:r!=null?r:!1,source:n!=null?n:rt.API})}addFileFromUuid(t,{silent:r,fileName:s,source:n}={}){this.uploadCollection.add({uuid:t,fileName:s!=null?s:null,silentUpload:r!=null?r:!1,source:n!=null?n:rt.API})}addFileFromObject(t,{silent:r,fileName:s,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:we(t),mimeType:t.type,fileName:s!=null?s:t.name,fileSize:t.size,silentUpload:r!=null?r:!1,source:n!=null?n:rt.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(r=>{this.uploadCollection.add({file:r,isImage:we(r),mimeType:r.type,fileName:r.name,fileSize:r.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var s;let r=bt(ve([(s=this.cfg.accept)!=null?s:"",...this.cfg.imgOnly?yt:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=bt(yt)):this.fileInput.accept=r,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:rt.LOCAL})),this.$["*currentActivity"]=E.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=dt(this.cfg.sourceList)),t}initFlow(t=!1){var r;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":E.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((r=this.sourceList)==null?void 0:r.length)===1){let s=this.sourceList[0];s==="local"?(this.$["*currentActivity"]=E.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(S.extSrcList).includes(s)?this.set$({"*currentActivityParams":{externalSourceType:s},"*currentActivity":E.activities.EXTERNAL}):this.$["*currentActivity"]=s,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":E.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(w.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(w.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let r=this.cfg.imgOnly,s=this.cfg.accept,n=ve([...r?yt:[],s]);if(!n.length)return;let o=t.getValue("mimeType"),l=t.getValue("fileName");if(!o||!l)return;let a=Te(o,n),c=hi(l,n);if(!a&&!c)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let r=this.cfg.maxLocalFileSizeBytes,s=t.getValue("fileSize");if(r&&s&&s>r)return this.l10n("files-max-size-limit-error",{maxFileSize:di(r)})}_validateMultipleLimit(t){let r=this.uploadCollection.items(),s=r.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&r.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let r=this.cfg.imgOnly,s=t.getValue("isImage");if(!(!r||s)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let r of this._validators){let s=r(t);if(s){t.setValue("validationErrorMsg",s);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let r=this.uploadCollection.read(t);r&&this._runValidatorsForEntry(r)})}setInitialCrop(){let t=ri(this.cfg.cropPreset);if(t){let[r]=t,s=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of s){let o=n.getValue("fileInfo"),{width:l,height:a}=o.imageInfo,c=r.width/r.height,h=ii(l,a,c),d=Vt(`crop/${h.width}x${h.height}/${h.x},${h.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:d,cdnUrl:zt(n.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(f=>f.activityType===E.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=E.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var s;let r=(s=this.cfg.metadata)!=null?s:this.$["*uploadMetadata"];if(typeof r=="function"){let n=this.getOutputItem(t);return await r(n)}return r}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:oi,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,l;let r=T.getCtx(t).store,s=r.fileInfo||{name:r.fileName,originalFilename:r.fileName,size:r.fileSize,isImage:r.isImage,mimeType:r.mimeType};return{...s,file:r.file,externalUrl:r.externalUrl,cdnUrlModifiers:r.cdnUrlModifiers,cdnUrl:(l=(o=r.cdnUrl)!=null?o:s.cdnUrl)!=null?l:null,validationErrorMessage:r.validationErrorMsg,uploadError:r.uploadError,isUploaded:!!r.uuid&&!!r.fileInfo,isValid:!r.validationErrorMsg&&!r.uploadError,fullPath:r.fullPath,uploadProgress:r.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};S.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});S.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...S.extSrcList});var H={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};var oo=Ee("format/auto","progressive/yes");var Ae=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),mi=[Ae.CROP,Ae.TUNING,Ae.FILTERS];var uo=Object.freeze({brightness:{zero:H.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:H.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:H.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:H.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:H.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:H.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:H.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:H.enhance,range:[0,100],keypointsNumber:1},filter:{zero:H.filter,range:[0,100],keypointsNumber:1}});var Kr="https://ucarecdn.com",Yr="https://upload.uploadcare.com",Jr="https://social.uploadcare.com",st={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:bt(mi),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:Kr,baseUrl:Yr,socialBaseUrl:Jr,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var D=e=>String(e),W=e=>{let i=Number(e);if(Number.isNaN(i))throw new Error(`Invalid number: "${e}"`);return i},x=e=>{if(typeof e=="undefined"||e===null)return!1;if(typeof e=="boolean")return e;if(e==="true"||e==="")return!0;if(e==="false")return!1;throw new Error(`Invalid boolean: "${e}"`)},Zr=e=>e==="auto"?e:x(e),Qr={pubkey:D,multiple:x,multipleMin:W,multipleMax:W,confirmUpload:x,imgOnly:x,accept:D,externalSourcesPreferredTypes:D,store:Zr,cameraMirror:x,sourceList:D,maxLocalFileSizeBytes:W,thumbSize:W,showEmptyList:x,useLocalImageEditor:x,useCloudImageEditor:x,cloudImageEditorTabs:D,removeCopyright:x,cropPreset:D,modalScrollLock:x,modalBackdropStrokes:x,sourceListWrap:x,remoteTabSessionKey:D,cdnCname:D,baseUrl:D,socialBaseUrl:D,secureSignature:D,secureExpire:D,secureDeliveryProxy:D,retryThrottledRequestMaxTimes:W,multipartMinFileSize:W,multipartChunkSize:W,maxConcurrentRequests:W,multipartMaxConcurrentRequests:W,multipartMaxAttempts:W,checkForUrlDuplicates:x,saveUrlForRecurrentUploads:x,groupOutput:x,userAgentIntegration:D},_i=(e,i)=>{if(!(typeof i=="undefined"||i===null))try{return Qr[e](i)}catch(t){return console.error(`Invalid value for config key "${e}".`,t),st[e]}};function ts(e){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let r=s=>{s.type!=="loadend"&&t.abort(),i(!1)};t.onloadend=r,t.onprogress=r,t.readAsDataURL(e)}catch{i(!1)}})}function es(e,i){return new Promise(t=>{let r=0,s=[],n=l=>{l||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),l.isFile?(r++,l.file(a=>{r--;let c=new File([a],a.name,{type:a.type||i});s.push({type:"file",file:c,fullPath:l.fullPath}),r===0&&t(s)})):l.isDirectory&&o(l.createReader())},o=l=>{r++,l.readEntries(a=>{r--;for(let c of a)n(c);r===0&&t(s)})};n(e)})}function gi(e){let i=[],t=[];for(let r=0;r{a&&i.push(...a)}));continue}let o=s.getAsFile();o&&t.push(ts(o).then(l=>{l||i.push({type:"file",file:o})}))}else s.kind==="string"&&s.type.match("^text/uri-list")&&t.push(new Promise(n=>{s.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}var R={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},bi=["focus"],is=100,xe=new Map;function rs(e,i){let t=Math.max(Math.min(e[0],i.x+i.width),i.x),r=Math.max(Math.min(e[1],i.y+i.height),i.y);return Math.sqrt((e[0]-t)*(e[0]-t)+(e[1]-r)*(e[1]-r))}function Se(e){let i=0,t=document.body,r=new Set,s=p=>r.add(p),n=R.INACTIVE,o=p=>{e.shouldIgnore()&&p!==R.INACTIVE||(n!==p&&r.forEach(C=>C(p)),n=p)},l=()=>i>0;s(p=>e.onChange(p));let a=()=>{i=0,o(R.INACTIVE)},c=()=>{i+=1,n===R.INACTIVE&&o(R.ACTIVE)},h=()=>{i-=1,l()||o(R.INACTIVE)},d=p=>{p.preventDefault(),i=0,o(R.INACTIVE)},f=p=>{if(e.shouldIgnore())return;l()||(i+=1);let C=[p.x,p.y],A=e.element.getBoundingClientRect(),v=Math.floor(rs(C,A)),b=v{if(e.shouldIgnore())return;p.preventDefault();let C=await gi(p.dataTransfer);e.onItems(C),o(R.INACTIVE)};return t.addEventListener("drop",d),t.addEventListener("dragleave",h),t.addEventListener("dragenter",c),t.addEventListener("dragover",f),e.element.addEventListener("drop",m),bi.forEach(p=>{window.addEventListener(p,a)}),()=>{xe.delete(e.element),t.removeEventListener("drop",d),t.removeEventListener("dragleave",h),t.removeEventListener("dragenter",c),t.removeEventListener("dragover",f),e.element.removeEventListener("drop",m),bi.forEach(p=>{window.removeEventListener(p,a)})}}var Et=class extends S{constructor(){super(),this.init$={...this.init$,state:R.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,r=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),s=window.getComputedStyle(this),n=s.visibility!=="hidden"&&s.display!=="none";return t&&n&&r}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!x(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:x(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:x(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:x(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=Se({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(r=>{r.type==="url"?this.addFileFromUrl(r.url,{source:rt.DROP_AREA}):r.type==="file"&&this.addFileFromObject(r.file,{source:rt.DROP_AREA,fullPath:r.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":E.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=Se({element:i,onChange:t=>{var s;let r=(s=Object.entries(R).find(([,n])=>n===t))==null?void 0:s[0].toLowerCase();r&&i.setAttribute("drag-state",r)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var s;let r=(s=Object.entries(R).find(([,n])=>n===t))==null?void 0:s[0].toLowerCase();r&&this.setAttribute("drag-state",r)}),this.subConfigValue("sourceList",t=>{let r=dt(t);this.$.isEnabled=r.includes(S.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(r=>r!==this).filter(r=>r.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,r=this.uploadCollection.size;return!(i&&t&&r>=t||!i&&r>0)}destroyCallback(){var i,t,r,s;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(r=this._destroyDropzone)==null||r.call(this),(s=this._destroyContentWrapperDropzone)==null||s.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};Et.template=`
{{text}}
`;Et.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Wt=class{constructor(){u(this,"caption","");u(this,"text","");u(this,"iconName","");u(this,"isError",!1)}},Bt=class extends O{constructor(){super(...arguments);u(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};Bt.template=`
{{captionTxt}}
{{msgTxt}}
`;var Xt=class extends S{constructor(){super();u(this,"couldBeUploadCollectionOwner",!0);u(this,"historyTracked",!0);u(this,"activityType",E.activities.UPLOAD_LIST);u(this,"_debouncedHandleCollectionUpdate",$(()=>{var t;this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),((t=this.$["*uploadList"])==null?void 0:t.length)===0&&!this.cfg.showEmptyList&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(r=>!!r.getValue("fileInfo"));this.emit(w.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var h,d;let t=!!this.cfg.multiple,r=t?(h=this.cfg.multipleMin)!=null?h:0:1,s=t?(d=this.cfg.multipleMax)!=null?d:0:1,n=this.uploadCollection.size,o=r?ns:!1;return{passed:!o&&!l,tooFew:o,tooMany:l,min:r,max:s,exact:s===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,r=this._validateFilesCount();if(t&&!r.passed){let s=new Wt,n=r.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";s.caption=this.l10n("files-count-limit-error-title"),s.text=this.l10n(n,{min:r.min,max:r.max,total:t}),s.isError=!0,this.set$({"*message":s})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),s={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let m of t){let p=this.uploadCollection.read(m);p.getValue("fileInfo")&&!p.getValue("validationErrorMsg")&&(s.succeed+=1),p.getValue("isUploading")&&(s.uploading+=1),(p.getValue("validationErrorMsg")||p.getValue("uploadError"))&&(s.failed+=1),p.getValue("validationMultipleLimitMsg")&&(s.limitOverflow+=1)}let{passed:n,tooMany:o,exact:l}=this._validateFilesCount(),a=s.failed===0&&s.limitOverflow===0,c=!1,h=!1,d=!1;s.total-s.succeed-s.uploading-s.failed>0&&n?c=!0:(h=!0,d=s.total===s.succeed&&n&&a),this.set$({doneBtnVisible:h,doneBtnEnabled:d,uploadBtnVisible:c,addMoreBtnEnabled:s.total===0||!o&&!l,addMoreBtnVisible:!l||this.cfg.multiple,headerText:this._getHeaderText(s)})}_getHeaderText(t){let r=s=>{let n=t[s];return this.l10n(`header-${s}`,{count:n})};return t.uploading>0?r("uploading"):t.failed>0?r("failed"):t.succeed>0?r("succeed"):r("total")}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{var r;((r=this.uploadCollection)==null?void 0:r.size)===0&&!this.cfg.showEmptyList&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};Xt.template=`{{headerText}}
`;function ss(e){let i=new Blob([e],{type:"image/svg+xml"});return URL.createObjectURL(i)}function Oe(e="hsl(209, 21%, 65%)",i=32,t=32){return ss(``)}function yi(e,i=40){if(e.type==="image/svg+xml")return URL.createObjectURL(e);let t=document.createElement("canvas"),r=t.getContext("2d"),s=new Image,n=new Promise((o,l)=>{s.onload=()=>{let a=s.height/s.width;a>1?(t.width=i,t.height=i*a):(t.height=i,t.width=i/a),r.fillStyle="rgb(240, 240, 240)",r.fillRect(0,0,t.width,t.height),r.drawImage(s,0,0,t.width,t.height),t.toBlob(c=>{if(!c){l();return}let h=URL.createObjectURL(c);o(h)})},s.onerror=a=>{l(a)}});return s.src=URL.createObjectURL(e),n}var L=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),J=class extends S{constructor(){super();u(this,"pauseRender",!0);u(this,"_entrySubs",new Set);u(this,"_entry",null);u(this,"_isIntersecting",!1);u(this,"_debouncedGenerateThumb",$(this._generateThumbnail.bind(this),100));u(this,"_debouncedCalculateState",$(this._calculateState.bind(this),100));u(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:L.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===E.activities.DETAILS)?this.$["*currentActivity"]=E.activities.DETAILS:this.$["*currentActivity"]=E.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let r=this.getOutputData(s=>s.getValue("uuid")===t);this.emit(w.REMOVE,r,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[r]=t;this._isIntersecting=r.isIntersecting,r.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),r.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,r=L.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?r=L.FAILED:t.getValue("validationMultipleLimitMsg")?r=L.LIMIT_OVERFLOW:t.getValue("isUploading")?r=L.UPLOADING:t.getValue("fileInfo")&&(r=L.FINISHED),this.$.state=r}async _generateThumbnail(){var r;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let s=this.cfg.thumbSize,n=this.proxyUrl(zt(ci(this.cfg.cdnCname,this._entry.getValue("uuid")),Vt(t.getValue("cdnUrlModifiers"),`scale_crop/${s}x${s}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((r=t.getValue("file"))!=null&&r.type.includes("image"))try{let s=await yi(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",s)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",Oe(n))}else{let s=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",Oe(s))}}_subEntry(t,r){let s=this._entry.subscribe(t,n=>{this.isConnected&&r(n)});this._entrySubs.add(s)}_handleEntryId(t){var s;this._reset();let r=(s=this.uploadCollection)==null?void 0:s.read(t);this._entry=r,r&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||r.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=r.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{J.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),J.activeInstances.add(this)}_handleState(t){var r,s,n;this.set$({isFailed:t===L.FAILED,isLimitOverflow:t===L.LIMIT_OVERFLOW,isUploading:t===L.UPLOADING,isFinished:t===L.FINISHED,progressVisible:t===L.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((r=this._entry)==null?void 0:r.getValue("isImage"))&&((s=this._entry)==null?void 0:s.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===L.FAILED||t===L.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===L.FINISHED&&(this.$.badgeIcon="badge-success"),t===L.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),J.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,l;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let r=this.cfg.multiple?this.cfg.multipleMax:1;if(r&&this.uploadCollection.size>r)return;let s=this.getOutputData(a=>!a.getValue("fileInfo"));this.emit(w.UPLOAD_START,s,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let a=new AbortController;t.setValue("abortController",a);let c=async()=>{let d=this.getUploadClientOptions();return ge(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...d,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:f=>{if(f.isComputable){let m=f.value*100;t.setValue("uploadProgress",m)}this.$.progressUnknown=!f.isComputable},signal:a.signal,metadata:await this.getMetadataFor(t.uid)})},h=await this.$["*uploadQueue"].add(c);t.setMultipleValues({fileInfo:h,isUploading:!1,fileName:h.originalFilename,fileSize:h.size,isImage:h.isImage,mimeType:(l=(o=(n=h.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?l:h.mimeType,uuid:h.uuid,cdnUrl:h.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(a){console.warn("Upload error",a),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),a instanceof U?a.isCancel||t.setValue("uploadError",a):t.setValue("uploadError",new Error("Unexpected error"))}}};J.template=`
{{itemName}}{{errorText}}
`;J.activeInstances=new Set;var vt=class extends O{constructor(){super(...arguments);u(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let r=this.getCssData(`--icon-${t}`);r&&(this.$.path=r)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};vt.template=``;vt.bindAttributes({name:"name",size:"size"});var Gt=class extends O{constructor(){super(...arguments);u(this,"_value",0);u(this,"_unknownMode",!1);u(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};Gt.template='
';var qt=class extends O{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};u(qt,"template",`Powered by Uploadcare`);var ft=class extends S{constructor(){super();u(this,"processInnerHtml",!0);u(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return ft.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,Me(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var r,s;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(l=>l.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let l of n){let a=document.createElement("input");a.type="hidden",a.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,a.value=l!=null?l:"",this._dynamicInputsContainer.appendChild(a)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let l=o.find(d=>!d.isValid),a=(s=l==null?void 0:l.validationErrorMessage)!=null?s:(r=l==null?void 0:l.uploadError)==null?void 0:r.message,c=this.$["*message"];c=c!=null&&c.isError?`${c.caption}. ${c.text}`:void 0;let h=a!=null?a:c;h?this._validationInputElement.setCustomValidity(h):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(l=>l.isUploaded&&l.isValid)){this.$.output={groupData:void 0,files:t};return}let s=this.getUploadClientOptions(),n=t.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=await Qe(n,s);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};ft.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var Kt=Object.keys(st),ns=["metadata"],os=e=>ns.includes(e),Yt=Kt.filter(e=>!os(e)),ls={...Object.fromEntries(Yt.map(e=>[Q(e),e])),...Object.fromEntries(Yt.map(e=>[e.toLowerCase(),e]))},as={...Object.fromEntries(Kt.map(e=>[Q(e),N(e)])),...Object.fromEntries(Kt.map(e=>[e.toLowerCase(),N(e)]))},Jt=class extends O{constructor(){super();u(this,"ctxOwner",!0);u(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(st).map(([t,r])=>[N(t),r]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let r of Yt)this.sub(N(r),s=>{s!==st[r]&&(t[r]=s)},!1);for(let r of Kt){let s="__"+r;t[s]=t[r],Object.defineProperty(this,r,{set:n=>{if(t[s]=n,Yt.includes(r)){let o=[...new Set([Q(r),r.toLowerCase()])];for(let l of o)typeof n=="undefined"||n===null?this.removeAttribute(l):this.setAttribute(l,n.toString())}this.$[N(r)]!==n&&(typeof n=="undefined"||n===null?this.$[N(r)]=st[r]:this.$[N(r)]=n)},get:()=>this.$[N(r)]}),typeof t[r]!="undefined"&&t[r]!==null&&(t[r]=t[s])}}attributeChangedCallback(t,r,s){if(r===s)return;let n=ls[t],o=_i(n,s),l=o!=null?o:st[n],a=this;a[n]=l}};Jt.bindAttributes(as);var us=Jt;var Ie=class extends S{constructor(){super(...arguments);u(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}},cs=Ie;export{us as Config,qt as Copyright,ft as DataOutput,Et as DropArea,J as FileItem,$t as FileUploaderMinimal,vt as Icon,Bt as MessageBox,Gt as ProgressBar,Ft as StartFrom,cs as UploadCtxProvider,Xt as UploadList,Ti as registerBlocks}; \ No newline at end of file +var vi=Object.defineProperty;var Ei=(e,i,t)=>i in e?vi(e,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[i]=t;var u=(e,i,t)=>(Ei(e,typeof i!="symbol"?i+"":i,t),t);function Ti(e){for(let i in e){let t=[...i].reduce((r,s)=>(s.toUpperCase()===s&&(s="-"+s.toLowerCase()),r+=s),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),e[i].reg&&e[i].reg(t)}}function $(e,i){let t,r=(...s)=>{clearTimeout(t),t=setTimeout(()=>e(...s),i)};return r.cancel=()=>{clearTimeout(t)},r}var wi=Object.defineProperty,Ai=(e,i,t)=>i in e?wi(e,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[i]=t,te=(e,i,t)=>(Ai(e,typeof i!="symbol"?i+"":i,t),t);function xi(e){let i=t=>{var r;for(let s in t)((r=t[s])==null?void 0:r.constructor)===Object&&(t[s]=i(t[s]));return{...t}};return i(e)}var T=class{constructor(e){e.constructor===Object?this.store=xi(e):(this._storeIsProxy=!0,this.store=e),this.callbackMap=Object.create(null)}static warn(e,i){console.warn(`Symbiote Data: cannot ${e}. Prop name: `+i)}read(e){return!this._storeIsProxy&&!this.store.hasOwnProperty(e)?(T.warn("read",e),null):this.store[e]}has(e){return this._storeIsProxy?this.store[e]!==void 0:this.store.hasOwnProperty(e)}add(e,i,t=!1){!t&&Object.keys(this.store).includes(e)||(this.store[e]=i,this.notify(e))}pub(e,i){if(!this._storeIsProxy&&!this.store.hasOwnProperty(e)){T.warn("publish",e);return}this.store[e]=i,this.notify(e)}multiPub(e){for(let i in e)this.pub(i,e[i])}notify(e){this.callbackMap[e]&&this.callbackMap[e].forEach(i=>{i(this.store[e])})}sub(e,i,t=!0){return!this._storeIsProxy&&!this.store.hasOwnProperty(e)?(T.warn("subscribe",e),null):(this.callbackMap[e]||(this.callbackMap[e]=new Set),this.callbackMap[e].add(i),t&&i(this.store[e]),{remove:()=>{this.callbackMap[e].delete(i),this.callbackMap[e].size||delete this.callbackMap[e]},callback:i})}static registerCtx(e,i=Symbol()){let t=T.globalStore.get(i);return t?console.warn('State: context UID "'+i+'" already in use'):(t=new T(e),T.globalStore.set(i,t)),t}static deleteCtx(e){T.globalStore.delete(e)}static getCtx(e,i=!0){return T.globalStore.get(e)||(i&&console.warn('State: wrong context UID - "'+e+'"'),null)}};T.globalStore=new Map;var _=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"}),Le="1234567890QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm",Si=Le.length-1,mt=class{static generate(e="XXXXXXXXX-XXX"){let i="";for(let t=0;t{li&&t?i[0].toUpperCase()+i.slice(1):i).join("").split("_").map((i,t)=>i&&t?i.toUpperCase():i).join("")}function Ii(e,i){[...e.querySelectorAll(`[${_.REPEAT_ATTR}]`)].forEach(t=>{let r=t.getAttribute(_.REPEAT_ITEM_TAG_ATTR),s;if(r&&(s=window.customElements.get(r)),!s){s=class extends i.BaseComponent{constructor(){super(),r||(this.style.display="contents")}};let o=t.innerHTML;s.template=o,s.reg(r)}for(;t.firstChild;)t.firstChild.remove();let n=t.getAttribute(_.REPEAT_ATTR);i.sub(n,o=>{if(!o){for(;t.firstChild;)t.firstChild.remove();return}let l=[...t.children],a,c=h=>{h.forEach((f,m)=>{if(l[m])if(l[m].set$)setTimeout(()=>{l[m].set$(f)});else for(let p in f)l[m][p]=f[p];else{a||(a=new DocumentFragment);let p=new s;Object.assign(p.init$,f),a.appendChild(p)}}),a&&t.appendChild(a);let d=l.slice(h.length,l.length);for(let f of d)f.remove()};if(o.constructor===Array)c(o);else if(o.constructor===Object){let h=[];for(let d in o){let f=o[d];Object.defineProperty(f,"_KEY_",{value:d,enumerable:!0}),h.push(f)}c(h)}else console.warn("Symbiote repeat data type error:"),console.log(o)}),t.removeAttribute(_.REPEAT_ATTR),t.removeAttribute(_.REPEAT_ITEM_TAG_ATTR)})}var Ue="__default__";function Ui(e,i){if(i.shadowRoot)return;let t=[...e.querySelectorAll("slot")];if(!t.length)return;let r={};t.forEach(s=>{let n=s.getAttribute("name")||Ue;r[n]={slot:s,fr:document.createDocumentFragment()}}),i.initChildren.forEach(s=>{var n;let o=Ue;s instanceof Element&&s.hasAttribute("slot")&&(o=s.getAttribute("slot"),s.removeAttribute("slot")),(n=r[o])==null||n.fr.appendChild(s)}),Object.values(r).forEach(s=>{if(s.fr.childNodes.length)s.slot.parentNode.replaceChild(s.fr,s.slot);else if(s.slot.childNodes.length){let n=document.createDocumentFragment();n.append(...s.slot.childNodes),s.slot.parentNode.replaceChild(n,s.slot)}else s.slot.remove()})}function Ri(e,i){[...e.querySelectorAll(`[${_.EL_REF_ATTR}]`)].forEach(t=>{let r=t.getAttribute(_.EL_REF_ATTR);i.ref[r]=t,t.removeAttribute(_.EL_REF_ATTR)})}function Li(e,i){[...e.querySelectorAll(`[${_.BIND_ATTR}]`)].forEach(t=>{let s=t.getAttribute(_.BIND_ATTR).split(";");[...t.attributes].forEach(n=>{if(n.name.startsWith("-")&&n.value){let o=Oi(n.name.replace("-",""));s.push(o+":"+n.value),t.removeAttribute(n.name)}}),s.forEach(n=>{if(!n)return;let o=n.split(":").map(h=>h.trim()),l=o[0],a;l.indexOf(_.ATTR_BIND_PRFX)===0&&(a=!0,l=l.replace(_.ATTR_BIND_PRFX,""));let c=o[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("!","")),i.sub(h,f=>{d==="double"?f=!!f:d==="single"&&(f=!f),a?(f==null?void 0:f.constructor)===Boolean?f?t.setAttribute(l,""):t.removeAttribute(l):t.setAttribute(l,f):Pe(t,l,f)||(t[_.SET_LATER_KEY]||(t[_.SET_LATER_KEY]=Object.create(null)),t[_.SET_LATER_KEY][l]=f)})}}),t.removeAttribute(_.BIND_ATTR)})}var Tt="{{",pt="}}",Pi="skip-text";function Mi(e){let i,t=[],r=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,{acceptNode:s=>{var n;return!((n=s.parentElement)!=null&&n.hasAttribute(Pi))&&s.textContent.includes(Tt)&&s.textContent.includes(pt)&&1}});for(;i=r.nextNode();)t.push(i);return t}var ki=function(e,i){Mi(e).forEach(r=>{let s=[],n;for(;r.textContent.includes(pt);)r.textContent.startsWith(Tt)?(n=r.textContent.indexOf(pt)+pt.length,r.splitText(n),s.push(r)):(n=r.textContent.indexOf(Tt),r.splitText(n)),r=r.nextSibling;s.forEach(o=>{let l=o.textContent.replace(Tt,"").replace(pt,"");o.textContent="",i.sub(l,a=>{o.textContent=a})})})},Ni=[Ii,Ui,Ri,Li,ki],wt="'",ut='"',Di=/\\([0-9a-fA-F]{1,6} ?)/g;function $i(e){return(e[0]===ut||e[0]===wt)&&(e[e.length-1]===ut||e[e.length-1]===wt)}function Fi(e){return(e[0]===ut||e[0]===wt)&&(e=e.slice(1)),(e[e.length-1]===ut||e[e.length-1]===wt)&&(e=e.slice(0,-1)),e}function Vi(e){let i="",t="";for(var r=0;rString.fromCodePoint(parseInt(r.trim(),16))),i=i.replaceAll(`\\ +`,"\\n"),i=Vi(i),i=ut+i+ut);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${e}`)}}var Re=0,at=null,G=null,Z=class extends HTMLElement{constructor(){super(),te(this,"updateCssData",()=>{var e;this.dropCssDataCache(),(e=this.__boundCssProps)==null||e.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 Z}initCallback(){}__initCallback(){var e;this.__initialized||(this.__initialized=!0,(e=this.initCallback)==null||e.call(this))}render(e,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let s=this.getAttribute(_.USE_TPL);if(s){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(s))||document.querySelector(s);o?e=o.content.cloneNode(!0):console.warn(`Symbiote template "${s}" is not found...`)}}if(this.processInnerHtml)for(let s of this.tplProcessors)s(this,this);if(e||this.constructor.template){if(this.constructor.template&&!this.constructor.__tpl&&(this.constructor.__tpl=document.createElement("template"),this.constructor.__tpl.innerHTML=this.constructor.template),(e==null?void 0:e.constructor)===DocumentFragment)t=e;else if((e==null?void 0:e.constructor)===String){let s=document.createElement("template");s.innerHTML=e,t=s.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let s of this.tplProcessors)s(t,this)}let r=()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()};if(this.constructor.__shadowStylesUrl){i=!0;let s=document.createElement("link");s.rel="stylesheet",s.href=this.constructor.__shadowStylesUrl,s.onload=r,this.shadowRoot.prepend(s)}else r()}addTemplateProcessor(e){this.tplProcessors.add(e)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=mt.generate(),this.style.setProperty(_.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(_.CSS_CTX_PROP,!0)}get ctxName(){var e;let i=((e=this.getAttribute(_.CTX_NAME_ATTR))==null?void 0:e.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=T.registerCtx({},this)),this.__localCtx}get nodeCtx(){return T.getCtx(this.ctxName,!1)||T.registerCtx({},this.ctxName)}static __parseProp(e,i){let t,r;if(e.startsWith(_.EXT_DATA_CTX_PRFX))t=i.nodeCtx,r=e.replace(_.EXT_DATA_CTX_PRFX,"");else if(e.includes(_.NAMED_DATA_CTX_SPLTR)){let s=e.split(_.NAMED_DATA_CTX_SPLTR);t=T.getCtx(s[0]),r=s[1]}else t=i.localCtx,r=e;return{ctx:t,name:r}}sub(e,i,t=!0){let r=n=>{this.isConnected&&i(n)},s=Z.__parseProp(e,this);s.ctx.has(s.name)?this.allSubs.add(s.ctx.sub(s.name,r,t)):window.setTimeout(()=>{this.allSubs.add(s.ctx.sub(s.name,r,t))})}notify(e){let i=Z.__parseProp(e,this);i.ctx.notify(i.name)}has(e){let i=Z.__parseProp(e,this);return i.ctx.has(i.name)}add(e,i,t=!1){let r=Z.__parseProp(e,this);r.ctx.add(r.name,i,t)}add$(e,i=!1){for(let t in e)this.add(t,e[t],i)}get $(){if(!this.__stateProxy){let e=Object.create(null);this.__stateProxy=new Proxy(e,{set:(i,t,r)=>{let s=Z.__parseProp(t,this);return s.ctx.pub(s.name,r),!0},get:(i,t)=>{let r=Z.__parseProp(t,this);return r.ctx.read(r.name)}})}return this.__stateProxy}set$(e,i=!1){for(let t in e){let r=e[t];i||![String,Number,Boolean].includes(r==null?void 0:r.constructor)?this.$[t]=r:this.$[t]!==r&&(this.$[t]=r)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(_.CTX_OWNER_ATTR)&&this.getAttribute(_.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let e=this.constructor.__attrDesc;if(e)for(let i of Object.values(e))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(_.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(_.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(_.NAMED_DATA_CTX_SPLTR)){let t=i.split(_.NAMED_DATA_CTX_SPLTR),r=t[0].trim(),s=t[1].trim();if(r&&s){let n=T.getCtx(r,!1);n||(n=T.registerCtx({},r)),n.add(s,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var e;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(e=this.getAttribute(_.CTX_NAME_ATTR))==null?void 0:e.trim();if(i&&this.style.setProperty(_.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[_.SET_LATER_KEY]){for(let t in this[_.SET_LATER_KEY])Pe(this,t,this[_.SET_LATER_KEY][t]);delete this[_.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of Ni)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${_.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let s=this.constructor.__rootStylesLink.cloneNode(!0);s.setAttribute(_.ROOT_STYLE_ATTR_NAME,this.constructor.is),s.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(s):t.prepend(s)}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 e of this.allSubs)e.remove(),this.allSubs.delete(e);for(let e of this.tplProcessors)this.tplProcessors.delete(e);G==null||G.delete(this.updateCssData),G!=null&&G.size||(at==null||at.disconnect(),at=null,G=null)},100)))}static reg(e,i=!1){e||(Re++,e=`${_.AUTO_TAG_PRFX}-${Re}`),this.__tag=e;let t=window.customElements.get(e);if(t){!i&&t!==this&&console.warn([`Element with tag name "${e}" 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(` `));return}window.customElements.define(e,i?class extends this{}:this)}static get is(){return this.__tag||this.reg(),this.__tag}static bindAttributes(e){this.observedAttributes=Object.keys(e),this.__attrDesc=e}attributeChangedCallback(e,i,t){var r;if(i===t)return;let s=(r=this.constructor.__attrDesc)==null?void 0:r[e];s?this.__dataCtxInitialized?this.$[s]=t:this.init$[s]=t:this[e]=t}getCssData(e,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(e)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(e).trim();try{this.__cssDataCache[e]=zi(t)}catch{!i&&console.warn(`CSS Data error: ${e}`),this.__cssDataCache[e]=null}}return this.__cssDataCache[e]}__extractCssName(e){return e.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){G||(G=new Set),G.add(this.updateCssData),at||(at=new MutationObserver(e=>{e[0].type==="attributes"&&G.forEach(i=>{i()})}),at.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(e,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(e);let t=this.getCssData(this.__extractCssName(e),!0);t===null&&(t=i),this.add(e,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(e,i,t){let r="__"+e;this[r]=this[e],Object.defineProperty(this,e,{set:s=>{this[r]=s,t?window.setTimeout(()=>{i==null||i(s)}):i==null||i(s)},get:()=>this[r]}),this[e]=this[r]}static set shadowStyles(e){let i=new Blob([e],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(e){if(!this.__rootStylesLink){let i=new Blob([e],{type:"text/css"}),t=URL.createObjectURL(i),r=document.createElement("link");r.href=t,r.rel="stylesheet",this.__rootStylesLink=r}}},ee=Z;te(ee,"template");var Qt=class{static _print(e){console.warn(e)}static setDefaultTitle(e){this.defaultTitle=e}static setRoutingMap(e){Object.assign(this.appMap,e);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}static set routingEventName(e){this.__routingEventName=e}static get routingEventName(){return this.__routingEventName||"sym-on-route"}static readAddressBar(){let e={route:null,options:{}};return window.location.search.split(this.separator).forEach(t=>{if(t.includes("?"))e.route=t.replace("?","");else if(t.includes("=")){let r=t.split("=");e.options[r[0]]=decodeURI(r[1])}else e.options[t]=!0}),e}static notify(){let e=this.readAddressBar(),i=this.appMap[e.route];if(i&&i.title&&(document.title=i.title),e.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${e.route}" not found...`);return}let t=new CustomEvent(Qt.routingEventName,{detail:{route:e.route,options:Object.assign(i||{},e.options)}});window.dispatchEvent(t)}static reflect(e,i={}){let t=this.appMap[e];if(!t){this._print("Wrong route: "+e);return}let r="?"+e;for(let n in i)i[n]===!0?r+=this.separator+n:r+=this.separator+n+`=${i[n]}`;let s=t.title||this.defaultTitle||"";window.history.pushState(null,s,r),document.title=s}static applyRoute(e,i={}){this.reflect(e,i),this.notify()}static setSeparator(e){this._separator=e}static get separator(){return this._separator||"&"}static createRouterData(e,i){this.setRoutingMap(i);let t=T.registerCtx({route:null,options:null,title:null},e);return window.addEventListener(this.routingEventName,r=>{var s;t.multiPub({route:r.detail.route,options:r.detail.options,title:((s=r.detail.options)==null?void 0:s.title)||this.defaultTitle||""})}),Qt.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};Qt.appMap=Object.create(null);function Me(e,i){for(let t in i)t.includes("-")?e.style.setProperty(t,i[t]):e.style[t]=i[t]}var ke="idb-store-ready",ji="symbiote-db",Hi="symbiote-idb-update_",Wi=class{_notifyWhenReady(e=null){window.dispatchEvent(new CustomEvent(ke,{detail:{dbName:this.name,storeName:this.storeName,event:e}}))}get _updEventName(){return Hi+this.name}_getUpdateEvent(e){return new CustomEvent(this._updEventName,{detail:{key:this.name,newValue:e}})}_notifySubscribers(e){window.localStorage.removeItem(this.name),window.localStorage.setItem(this.name,e),window.dispatchEvent(this._getUpdateEvent(e))}constructor(e,i){this.name=e,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=r=>{this._notifyWhenReady(r)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async s=>{s(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(e){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(e);return new Promise((r,s)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?r(n.target.result._value):(r(null),console.warn(`IDB: cannot read "${e}"`))},t.onerror=n=>{s(n)}})}write(e,i,t=!1){let r={_key:e,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(r);return new Promise((o,l)=>{n.onsuccess=a=>{t||this._notifySubscribers(e),o(a.target.result)},n.onerror=a=>{l(a)}})}delete(e,i=!1){let r=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(e);return new Promise((s,n)=>{r.onsuccess=o=>{i||this._notifySubscribers(e),s(o)},r.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,r)=>{i.onsuccess=s=>{let n=s.target.result;t(n.map(o=>o._value))},i.onerror=s=>{r(s)}})}subscribe(e,i){this._subscriptionsMap[e]||(this._subscriptionsMap[e]=new Set);let t=this._subscriptionsMap[e];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[e]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,Ne.clear(this.name)}},Ne=class{static get readyEventName(){return ke}static open(e=ji,i="store"){let t=e+"/"+i;return this._reg[t]||(this._reg[t]=new Wi(e,i)),this._reg[t]}static clear(e){window.indexedDB.deleteDatabase(e);for(let i in this._reg)i.split("/")[0]===e&&delete this._reg[i]}};te(Ne,"_reg",Object.create(null));var w=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),Xi=Object.freeze({[w.UPLOAD_START]:"LR_UPLOAD_START",[w.REMOVE]:"LR_REMOVE",[w.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[w.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[w.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[w.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[w.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[w.DATA_OUTPUT]:"LR_DATA_OUTPUT",[w.DONE_FLOW]:"LR_DONE_FLOW",[w.INIT_FLOW]:"LR_INIT_FLOW"}),At=class{constructor(i){u(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var s;(s=this._target)==null||s.dispatchEvent(new CustomEvent(i,{detail:t}));let r=Xi[i];window.dispatchEvent(new CustomEvent(r,{detail:{ctx:this._getCtxName(),type:r,data:t}}))}emit(i,t,{debounce:r}={}){if(typeof r!="number"&&!r){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let s=typeof r=="number"?r:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},s);this._timeoutStore.set(i,n)}};var Bi="--uploadcare-blocks-window-height",xt="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function ie(){return typeof window[xt]=="undefined"?!1:!!window[xt]}function De(){if(ie())return;let e=()=>{document.documentElement.style.setProperty(Bi,`${window.innerHeight}px`),window[xt]=!0},i=$(e,100);return window.addEventListener("resize",i,{passive:!0}),e(),()=>{window[xt]=!1,window.removeEventListener("resize",i)}}var St=(e,i)=>new Intl.PluralRules(e).select(i);var Gi=e=>e,re="{{",Fe="}}",$e="plural:";function se(e,i,t={}){var o;let{openToken:r=re,closeToken:s=Fe,transform:n=Gi}=t;for(let l in i){let a=(o=i[l])==null?void 0:o.toString();e=e.replaceAll(r+l+s,typeof a=="string"?n(a):a)}return e}function Ve(e){let i=[],t=e.indexOf(re);for(;t!==-1;){let r=e.indexOf(Fe,t),s=e.substring(t+2,r);if(s.startsWith($e)){let n=e.substring(t+2,r).replace($e,""),o=n.substring(0,n.indexOf("(")),l=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:s,pluralKey:o,countVariable:l})}t=e.indexOf(re,r)}return i}var Q=e=>{var i;return(i=e.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:i.map(t=>t.toLowerCase()).join("-")};var Ot=({element:e,attribute:i,onSuccess:t,onTimeout:r,timeout:s=300})=>{let n=setTimeout(()=>{a.disconnect(),r()},s),o=c=>{let h=e.getAttribute(i);c.type==="attributes"&&c.attributeName===i&&h!==null&&(clearTimeout(n),a.disconnect(),t(h))},l=e.getAttribute(i);l!==null&&(clearTimeout(n),t(l));let a=new MutationObserver(c=>{let h=c[c.length-1];o(h)});a.observe(e,{attributes:!0,attributeFilter:[i]})};var ze=new Set;function _t(e){ze.has(e)||(ze.add(e),console.warn(e))}function je(e){return Object.prototype.toString.call(e)==="[object Object]"}var qi=/\W|_/g;function Ki(e){return e.split(qi).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}function He(e,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(e)?e.map(t=>Y(t,{ignoreKeys:i})):e}function Y(e,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(e))return He(e,{ignoreKeys:i});if(!je(e))return e;let t={};for(let r of Object.keys(e)){let s=e[r];if(i.includes(r)){t[r]=s;continue}je(s)?s=Y(s,{ignoreKeys:i}):Array.isArray(s)&&(s=He(s,{ignoreKeys:i})),t[Ki(r)]=s}return t}var Yi=e=>new Promise(i=>setTimeout(i,e));function he({libraryName:e,libraryVersion:i,userAgent:t,publicKey:r="",integration:s=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:r,libraryName:e,libraryVersion:i,languageName:n,integration:s});let o=[e,i,r].filter(Boolean).join("/"),l=[n,s].filter(Boolean).join("; ");return`${o} (${l})`}var Ji={factor:2,time:100};function Zi(e,i=Ji){let t=0;function r(s){let n=Math.round(i.time*i.factor**t);return s({attempt:t,retry:l=>Yi(l!=null?l:n).then(()=>(t+=1,r(s)))})}return r(e)}var ct=class extends Error{constructor(t){super();u(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,ct.prototype),this.originalProgressEvent=t}},Ut=(e,i)=>{e&&(e.aborted?Promise.resolve().then(i):e.addEventListener("abort",()=>i(),{once:!0}))},tt=class extends Error{constructor(t="Request canceled"){super(t);u(this,"isCancel",!0);Object.setPrototypeOf(this,tt.prototype)}},Qi=500,Xe=({check:e,interval:i=Qi,timeout:t,signal:r})=>new Promise((s,n)=>{let o,l;Ut(r,()=>{o&&clearTimeout(o),n(new tt("Poll cancelled"))}),t&&(l=setTimeout(()=>{o&&clearTimeout(o),n(new tt("Timed out"))},t));let a=()=>{try{Promise.resolve(e(r)).then(c=>{c?(l&&clearTimeout(l),s(c)):o=setTimeout(a,i)}).catch(c=>{l&&clearTimeout(l),n(c)})}catch(c){l&&clearTimeout(l),n(c)}};o=setTimeout(a,0)}),y={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"},Rt="application/octet-stream",Be="original",et=({method:e,url:i,data:t,headers:r={},signal:s,onProgress:n})=>new Promise((o,l)=>{let a=new XMLHttpRequest,c=(e==null?void 0:e.toUpperCase())||"GET",h=!1;a.open(c,i,!0),r&&Object.entries(r).forEach(d=>{let[f,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&a.setRequestHeader(f,m)}),a.responseType="text",Ut(s,()=>{h=!0,a.abort(),l(new tt)}),a.onload=()=>{if(a.status!=200)l(new Error(`Error ${a.status}: ${a.statusText}`));else{let d={method:c,url:i,data:t,headers:r||void 0,signal:s,onProgress:n},f=a.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};f.forEach(function(A){let E=A.split(": "),b=E.shift(),g=E.join(": ");b&&typeof b!="undefined"&&(m[b]=g)});let p=a.response,C=a.status;o({request:d,data:p,headers:m,status:C})}},a.onerror=d=>{h||l(new ct(d))},n&&typeof n=="function"&&(a.upload.onprogress=d=>{d.lengthComputable?n({isComputable:!0,value:d.loaded/d.total}):n({isComputable:!1})}),t?a.send(t):a.send()});function tr(e,...i){return e}var er=({name:e})=>e?[e]:[],ir=tr,rr=()=>new FormData,Ge=e=>!1,Lt=e=>typeof Blob!="undefined"&&e instanceof Blob,Pt=e=>typeof File!="undefined"&&e instanceof File,Mt=e=>!!e&&typeof e=="object"&&!Array.isArray(e)&&"uri"in e&&typeof e.uri=="string",ht=e=>Lt(e)||Pt(e)||Ge()||Mt(e),sr=e=>typeof e=="string"||typeof e=="number"||typeof e=="undefined",nr=e=>!!e&&typeof e=="object"&&!Array.isArray(e),or=e=>!!e&&typeof e=="object"&&"data"in e&&ht(e.data);function lr(e,i,t){if(or(t)){let{name:r,contentType:s}=t,n=ir(t.data,r,s!=null?s:Rt),o=er({name:r,contentType:s});e.push([i,n,...o])}else if(nr(t))for(let[r,s]of Object.entries(t))typeof s!="undefined"&&e.push([`${i}[${r}]`,String(s)]);else sr(t)&&t&&e.push([i,t.toString()])}function ar(e){let i=[];for(let[t,r]of Object.entries(e))lr(i,t,r);return i}function de(e){let i=rr(),t=ar(e);for(let r of t){let[s,n,...o]=r;i.append(s,n,...o)}return i}var U=class extends Error{constructor(t,r,s,n,o){super();u(this,"isCancel");u(this,"code");u(this,"request");u(this,"response");u(this,"headers");this.name="UploadClientError",this.message=t,this.code=r,this.request=s,this.response=n,this.headers=o,Object.setPrototypeOf(this,U.prototype)}},ur=e=>{let i=new URLSearchParams;for(let[t,r]of Object.entries(e))r&&typeof r=="object"&&!Array.isArray(r)?Object.entries(r).filter(s=>{var n;return(n=s[1])!=null?n:!1}).forEach(s=>i.set(`${t}[${s[0]}]`,String(s[1]))):Array.isArray(r)?r.forEach(s=>{i.append(`${t}[]`,s)}):typeof r=="string"&&r?i.set(t,r):typeof r=="number"&&i.set(t,r.toString());return i.toString()},q=(e,i,t)=>{let r=new URL(e);return r.pathname=(r.pathname+i).replace("//","/"),t&&(r.search=ur(t)),r.toString()},cr="6.8.0",hr="UploadcareUploadClient",dr=cr;function ot(e){return he({libraryName:hr,libraryVersion:dr,...e})}var fr="RequestThrottledError",We=15e3,pr=1e3;function mr(e){let{headers:i}=e||{};if(!i||typeof i["retry-after"]!="string")return We;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:We}function it(e,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:r}=i;return Zi(({attempt:s,retry:n})=>e().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===fr&&s{let i="";return(Lt(e)||Pt(e)||Mt(e))&&(i=e.type),i||Rt},Ke=e=>{let i="";return Pt(e)&&e.name?i=e.name:Lt(e)||Ge()?i="":Mt(e)&&e.name&&(i=e.name),i||Be};function fe(e){return typeof e=="undefined"||e==="auto"?"auto":e?"1":"0"}function _r(e,{publicKey:i,fileName:t,contentType:r,baseURL:s=y.baseURL,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:h="local",integration:d,userAgent:f,retryThrottledRequestMaxTimes:m=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:p=y.retryNetworkErrorMaxTimes,metadata:C}){return it(()=>et({method:"POST",url:q(s,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":ot({publicKey:i,integration:d,userAgent:f})},data:de({file:{data:e,name:t||Ke(e),contentType:r||qe(e)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:fe(l),signature:n,expire:o,source:h,metadata:C}),signal:a,onProgress:c}).then(({data:A,headers:E,request:b})=>{let g=Y(JSON.parse(A));if("error"in g)throw new U(g.error.content,g.error.errorCode,b,g,E);return g}),{retryNetworkErrorMaxTimes:p,retryThrottledRequestMaxTimes:m})}var le;(function(e){e.Token="token",e.FileInfo="file_info"})(le||(le={}));function gr(e,{publicKey:i,baseURL:t=y.baseURL,store:r,fileName:s,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,source:c="url",signal:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:p=y.retryNetworkErrorMaxTimes,metadata:C}){return it(()=>et({method:"POST",headers:{"X-UC-User-Agent":ot({publicKey:i,integration:d,userAgent:f})},url:q(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:e,store:fe(r),filename:s,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:l,expire:a,source:c,metadata:C}),signal:h}).then(({data:A,headers:E,request:b})=>{let g=Y(JSON.parse(A));if("error"in g)throw new U(g.error.content,g.error.errorCode,b,g,E);return g}),{retryNetworkErrorMaxTimes:p,retryThrottledRequestMaxTimes:m})}var k;(function(e){e.Unknown="unknown",e.Waiting="waiting",e.Progress="progress",e.Error="error",e.Success="success"})(k||(k={}));var br=e=>"status"in e&&e.status===k.Error;function yr(e,{publicKey:i,baseURL:t=y.baseURL,signal:r,integration:s,userAgent:n,retryThrottledRequestMaxTimes:o=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=y.retryNetworkErrorMaxTimes}={}){return it(()=>et({method:"GET",headers:i?{"X-UC-User-Agent":ot({publicKey:i,integration:s,userAgent:n})}:void 0,url:q(t,"/from_url/status/",{jsonerrors:1,token:e}),signal:r}).then(({data:a,headers:c,request:h})=>{let d=Y(JSON.parse(a));if("error"in d&&!br(d))throw new U(d.error.content,void 0,h,d,c);return d}),{retryNetworkErrorMaxTimes:l,retryThrottledRequestMaxTimes:o})}function Cr(e,{publicKey:i,baseURL:t=y.baseURL,jsonpCallback:r,secureSignature:s,secureExpire:n,signal:o,source:l,integration:a,userAgent:c,retryThrottledRequestMaxTimes:h=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=y.retryNetworkErrorMaxTimes}){return it(()=>et({method:"POST",headers:{"X-UC-User-Agent":ot({publicKey:i,integration:a,userAgent:c})},url:q(t,"/group/",{jsonerrors:1,pub_key:i,files:e,callback:r,signature:s,expire:n,source:l}),signal:o}).then(({data:f,headers:m,request:p})=>{let C=Y(JSON.parse(f));if("error"in C)throw new U(C.error.content,C.error.errorCode,p,C,m);return C}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:h})}function Ye(e,{publicKey:i,baseURL:t=y.baseURL,signal:r,source:s,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=y.retryNetworkErrorMaxTimes}){return it(()=>et({method:"GET",headers:{"X-UC-User-Agent":ot({publicKey:i,integration:n,userAgent:o})},url:q(t,"/info/",{jsonerrors:1,pub_key:i,file_id:e,source:s}),signal:r}).then(({data:c,headers:h,request:d})=>{let f=Y(JSON.parse(c));if("error"in f)throw new U(f.error.content,f.error.errorCode,d,f,h);return f}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function vr(e,{publicKey:i,contentType:t,fileName:r,multipartChunkSize:s=y.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:l,store:a,signal:c,source:h="local",integration:d,userAgent:f,retryThrottledRequestMaxTimes:m=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:p=y.retryNetworkErrorMaxTimes,metadata:C}){return it(()=>et({method:"POST",url:q(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":ot({publicKey:i,integration:d,userAgent:f})},data:de({filename:r||Be,size:e,content_type:t||Rt,part_size:s,UPLOADCARE_STORE:fe(a),UPLOADCARE_PUB_KEY:i,signature:o,expire:l,source:h,metadata:C}),signal:c}).then(({data:A,headers:E,request:b})=>{let g=Y(JSON.parse(A));if("error"in g)throw new U(g.error.content,g.error.errorCode,b,g,E);return g.parts=Object.keys(g.parts).map(P=>g.parts[P]),g}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p})}function Er(e,i,{contentType:t,signal:r,onProgress:s,retryThrottledRequestMaxTimes:n=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=y.retryNetworkErrorMaxTimes}){return it(()=>et({method:"PUT",url:i,data:e,onProgress:s,signal:r,headers:{"Content-Type":t||Rt}}).then(l=>(s&&s({isComputable:!0,value:1}),l)).then(({status:l})=>({code:l})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}function Tr(e,{publicKey:i,baseURL:t=y.baseURL,source:r="local",signal:s,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=y.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=y.retryNetworkErrorMaxTimes}){return it(()=>et({method:"POST",url:q(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":ot({publicKey:i,integration:n,userAgent:o})},data:de({uuid:e,UPLOADCARE_PUB_KEY:i,source:r}),signal:s}).then(({data:c,headers:h,request:d})=>{let f=Y(JSON.parse(c));if("error"in f)throw new U(f.error.content,f.error.errorCode,d,f,h);return f}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function pe(e,{publicKey:i,baseURL:t,source:r,integration:s,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l,signal:a,onProgress:c}){return Xe({check:h=>Ye(e,{publicKey:i,baseURL:t,signal:h,source:r,integration:s,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:a})}function wr(e){return"defaultEffects"in e}var K=class{constructor(i,{baseCDN:t=y.baseCDN,fileName:r}={}){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:n}=i,o=q(t,`${s}/`),l=n?q(`https://${n}.s3.amazonaws.com/`,`${s}/${i.filename}`):null;this.uuid=s,this.name=r||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=l,wr(i)&&(this.defaultEffects=i.defaultEffects)}},Ar=(e,{publicKey:i,fileName:t,baseURL:r,secureSignature:s,secureExpire:n,store:o,contentType:l,signal:a,onProgress:c,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,baseCDN:C,metadata:A})=>_r(e,{publicKey:i,fileName:t,contentType:l,baseURL:r,secureSignature:s,secureExpire:n,store:o,signal:a,onProgress:c,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,metadata:A}).then(({file:E})=>pe(E,{publicKey:i,baseURL:r,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,onProgress:c,signal:a})).then(E=>new K(E,{baseCDN:C})),xr=(e,{publicKey:i,fileName:t,baseURL:r,signal:s,onProgress:n,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:h,baseCDN:d})=>Ye(e,{publicKey:i,baseURL:r,signal:s,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:h}).then(f=>new K(f,{baseCDN:d,fileName:t})).then(f=>(n&&n({isComputable:!0,value:1}),f)),Sr=(e,{signal:i}={})=>{let t=null,r=null,s=e.map(()=>new AbortController),n=o=>()=>{r=o,s.forEach((l,a)=>a!==o&&l.abort())};return Ut(i,()=>{s.forEach(o=>o.abort())}),Promise.all(e.map((o,l)=>{let a=n(l);return Promise.resolve().then(()=>o({stopRace:a,signal:s[l].signal})).then(c=>(a(),c)).catch(c=>(t=c,null))})).then(o=>{if(r===null)throw t;return o[r]})},Or=window.WebSocket,ae=class{constructor(){u(this,"events",Object.create({}))}emit(i,t){var r;(r=this.events[i])==null||r.forEach(s=>s(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(r=>r!==t):this.events[i]=[]}},Ir=(e,i)=>e==="success"?{status:k.Success,...i}:e==="progress"?{status:k.Progress,...i}:{status:k.Error,...i},ue=class{constructor(i,t=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 ae);u(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Or(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let r=JSON.parse(t.data.toString());switch(r.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(r.channel,Ir(r.event,JSON.parse(r.data)))}})}}disconnect(){let i=()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var s;let r=JSON.stringify({event:i,data:t});(s=this.ws)==null||s.send(r)}subscribe(i,t){this.subscribers+=1,this.connect();let r=`task-status-${i}`,s={event:"pusher:subscribe",data:{channel:r}};this.emmitter.on(r,t),this.isConnected?this.send(s.event,s.data):this.queue.push(s)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,r={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(r.event,r.data):this.queue=this.queue.filter(s=>s.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}},ne=null,me=e=>{if(!ne){let i=typeof window=="undefined"?0:3e4;ne=new ue(e,i)}return ne},Ur=e=>{me(e).connect()};function Rr({token:e,publicKey:i,baseURL:t,integration:r,userAgent:s,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:l,signal:a}){return Xe({check:c=>yr(e,{publicKey:i,baseURL:t,integration:r,userAgent:s,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:c}).then(h=>{switch(h.status){case k.Error:return new U(h.error,h.errorCode);case k.Waiting:return!1;case k.Unknown:return new U(`Token "${e}" was not found.`);case k.Progress:return l&&(h.total==="unknown"?l({isComputable:!1}):l({isComputable:!0,value:h.done/h.total})),!1;case k.Success:return l&&l({isComputable:!0,value:h.done/h.total}),h;default:throw new Error("Unknown status")}}),signal:a})}var Lr=({token:e,pusherKey:i,signal:t,onProgress:r})=>new Promise((s,n)=>{let o=me(i),l=o.onError(n),a=()=>{l(),o.unsubscribe(e)};Ut(t,()=>{a(),n(new tt("pusher cancelled"))}),o.subscribe(e,c=>{switch(c.status){case k.Progress:{r&&(c.total==="unknown"?r({isComputable:!1}):r({isComputable:!0,value:c.done/c.total}));break}case k.Success:{a(),r&&r({isComputable:!0,value:c.done/c.total}),s(c);break}case k.Error:a(),n(new U(c.msg,c.error_code))}})}),Pr=(e,{publicKey:i,fileName:t,baseURL:r,baseCDN:s,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:h,onProgress:d,source:f,integration:m,userAgent:p,retryThrottledRequestMaxTimes:C,pusherKey:A=y.pusherKey,metadata:E})=>Promise.resolve(Ur(A)).then(()=>gr(e,{publicKey:i,fileName:t,baseURL:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:h,source:f,integration:m,userAgent:p,retryThrottledRequestMaxTimes:C,metadata:E})).catch(b=>{let g=me(A);return g==null||g.disconnect(),Promise.reject(b)}).then(b=>b.type===le.FileInfo?b:Sr([({signal:g})=>Rr({token:b.token,publicKey:i,baseURL:r,integration:m,userAgent:p,retryThrottledRequestMaxTimes:C,onProgress:d,signal:g}),({signal:g})=>Lr({token:b.token,pusherKey:A,signal:g,onProgress:d})],{signal:h})).then(b=>{if(b instanceof U)throw b;return b}).then(b=>pe(b.uuid,{publicKey:i,baseURL:r,integration:m,userAgent:p,retryThrottledRequestMaxTimes:C,onProgress:d,signal:h})).then(b=>new K(b,{baseCDN:s})),oe=new WeakMap,Mr=async e=>{if(oe.has(e))return oe.get(e);let i=await fetch(e.uri).then(t=>t.blob());return oe.set(e,i),i},Je=async e=>{if(Pt(e)||Lt(e))return e.size;if(Mt(e))return(await Mr(e)).size;throw new Error("Unknown file type. Cannot determine file size.")},kr=(e,i=y.multipartMinFileSize)=>e>=i,Ze=e=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!ht(e)&&t.test(e)},_e=e=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!ht(e)&&t.test(e)},Nr=(e,i)=>new Promise((t,r)=>{let s=[],n=!1,o=i.length,l=[...i],a=()=>{let c=i.length-l.length,h=l.shift();h&&h().then(d=>{n||(s[c]=d,o-=1,o?a():t(s))}).catch(d=>{n=!0,r(d)})};for(let c=0;c{let s=r*i,n=Math.min(s+r,t);return e.slice(s,n)},$r=async(e,i,t)=>r=>Dr(e,r,i,t),Fr=(e,i,{publicKey:t,contentType:r,onProgress:s,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})=>Er(e,i,{publicKey:t,contentType:r,onProgress:s,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a}),Vr=async(e,{publicKey:i,fileName:t,fileSize:r,baseURL:s,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,contentType:C,multipartChunkSize:A=y.multipartChunkSize,maxConcurrentRequests:E=y.maxConcurrentRequests,baseCDN:b,metadata:g})=>{let P=r!=null?r:await Je(e),X,nt=(I,M)=>{if(!c)return;X||(X=Array(I).fill(0));let F=V=>V.reduce((B,Zt)=>B+Zt,0);return V=>{V.isComputable&&(X[M]=V.value,c({isComputable:!0,value:F(X)/I}))}};return C||(C=qe(e)),vr(P,{publicKey:i,contentType:C,fileName:t||Ke(e),baseURL:s,secureSignature:n,secureExpire:o,store:l,signal:a,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,metadata:g}).then(async({uuid:I,parts:M})=>{let F=await $r(e,P,A);return Promise.all([I,Nr(E,M.map((V,B)=>()=>Fr(F(B),V,{publicKey:i,contentType:C,onProgress:nt(M.length,B),signal:a,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p})))])}).then(([I])=>Tr(I,{publicKey:i,baseURL:s,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p})).then(I=>I.isReady?I:pe(I.uuid,{publicKey:i,baseURL:s,source:h,integration:d,userAgent:f,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:p,onProgress:c,signal:a})).then(I=>new K(I,{baseCDN:b}))};async function ge(e,{publicKey:i,fileName:t,baseURL:r=y.baseURL,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,contentType:p,multipartMinFileSize:C,multipartChunkSize:A,maxConcurrentRequests:E,baseCDN:b=y.baseCDN,checkForUrlDuplicates:g,saveUrlForRecurrentUploads:P,pusherKey:X,metadata:nt}){if(ht(e)){let I=await Je(e);return kr(I,C)?Vr(e,{publicKey:i,contentType:p,multipartChunkSize:A,fileSize:I,fileName:t,baseURL:r,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,maxConcurrentRequests:E,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,baseCDN:b,metadata:nt}):Ar(e,{publicKey:i,fileName:t,contentType:p,baseURL:r,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,baseCDN:b,metadata:nt})}if(_e(e))return Pr(e,{publicKey:i,fileName:t,baseURL:r,baseCDN:b,checkForUrlDuplicates:g,saveUrlForRecurrentUploads:P,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,pusherKey:X,metadata:nt});if(Ze(e))return xr(e,{publicKey:i,fileName:t,baseURL:r,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,baseCDN:b});throw new TypeError(`File uploading from "${e}" is not supported`)}var ce=class{constructor(i,{baseCDN:t=y.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=i.id,this.filesCount=i.filesCount;let r=i.files.filter(Boolean);this.totalSize=Object.values(r).reduce((s,n)=>s+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(r).filter(s=>s.isImage).length,this.cdnUrl=i.cdnUrl,this.files=r.map(s=>new K(s,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}},zr=e=>{for(let i of e)if(!ht(i))return!1;return!0},jr=e=>{for(let i of e)if(!Ze(i))return!1;return!0},Hr=e=>{for(let i of e)if(!_e(i))return!1;return!0};function Qe(e,{publicKey:i,fileName:t,baseURL:r=y.baseURL,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,contentType:p,multipartChunkSize:C=y.multipartChunkSize,baseCDN:A=y.baseCDN,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:b,jsonpCallback:g}){if(!zr(e)&&!Hr(e)&&!jr(e))throw new TypeError(`Group uploading from "${e}" is not supported`);let P,X=!0,nt=e.length,I=(M,F)=>{if(!a)return;P||(P=Array(M).fill(0));let V=B=>B.reduce((Zt,Ci)=>Zt+Ci)/M;return B=>{if(!B.isComputable||!X){X=!1,a({isComputable:!1});return}P[F]=B.value,a({isComputable:!0,value:V(P)})}};return Promise.all(e.map((M,F)=>ht(M)||_e(M)?ge(M,{publicKey:i,fileName:t,baseURL:r,secureSignature:s,secureExpire:n,store:o,signal:l,onProgress:I(nt,F),source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m,contentType:p,multipartChunkSize:C,baseCDN:A,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:b}).then(V=>V.uuid):M)).then(M=>Cr(M,{publicKey:i,baseURL:r,jsonpCallback:g,secureSignature:s,secureExpire:n,signal:l,source:c,integration:h,userAgent:d,retryThrottledRequestMaxTimes:f,retryNetworkErrorMaxTimes:m}).then(F=>new ce(F,{baseCDN:A})).then(F=>(a&&a({isComputable:!0,value:1}),F)))}var It=class{constructor(i){u(this,"_concurrency",1);u(this,"_pending",[]);u(this,"_running",0);u(this,"_resolvers",new Map);u(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(r),this._rejectors.delete(r),this._running-=1,this._run()}).then(o=>s(o)).catch(o=>n(o))}}add(i){return new Promise((t,r)=>{this._resolvers.set(i,t),this._rejectors.set(i,r),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};var be=()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),ye=e=>({...be(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{e.set$({"*modalActive":!1,"*currentActivity":""})}}),kt=e=>({...ye(e),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new It(1)});function ti(e,i){[...e.querySelectorAll("[l10n]")].forEach(t=>{let r=t.getAttribute("l10n"),s="textContent";if(r.includes(":")){let o=r.split(":");s=o[0],r=o[1]}let n="l10n:"+r;i.__l10nKeys.push(n),i.add(n,r),i.sub(n,o=>{t[s]=i.l10n(o)}),t.removeAttribute("l10n")})}var N=e=>`*cfg/${e}`;var Ce="lr-",O=class extends ee{constructor(){super();u(this,"requireCtxName",!1);u(this,"allowCustomTemplate",!0);u(this,"init$",be());u(this,"updateCtxCssData",()=>{_t("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let r of t)r.isConnected&&r.updateCssData()});this.activityType=null,this.addTemplateProcessor(ti),this.__l10nKeys=[]}l10n(t,r={}){if(!t)return"";let s=this.getCssData("--l10n-"+t,!0)||t,n=Ve(s);for(let l of n)r[l.variable]=this.pluralize(l.pluralKey,Number(r[l.countVariable]));return se(s,r)}pluralize(t,r){let s=this.l10n("locale-name")||"en-US",n=St(s,r);return this.l10n(`${t}__${n}`)}emit(t,r,s){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,r,s)}applyL10nKey(t,r){let s="l10n:"+t;this.$[s]=r,this.__l10nKeys.push(t)}hasBlockInCtx(t){let r=this.$["*blocksRegistry"];for(let s of r)if(t(s))return!0;return!1}setOrAddState(t,r){this.add$({[t]:r},!0)}setActivity(t){if(this.hasBlockInCtx(r=>r.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Ce}${t}`,!0),ie()||(this._destroyInnerHeightTracker=De()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?Ot({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new At(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,r=2){let s=["B","KB","MB","GB","TB"],n=c=>this.getCssData("--l10n-unit-"+c.toLowerCase(),!0)||c;if(t===0)return`0 ${n(s[0])}`;let o=1024,l=r<0?0:r,a=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**a).toFixed(l))+" "+n(s[a])}proxyUrl(t){let r=this.cfg.secureDeliveryProxy;return r?se(r,{previewUrl:t},{transform:s=>window.encodeURIComponent(s)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(r,s,n)=>{if(typeof s!="string")return!1;let o=N(s);return this.$[o]=n,!0},get:(r,s)=>{let n=N(s),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(_t("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${Q(s)}`))}})}return this.__cfgProxy}subConfigValue(t,r){let s=this.parseCfgProp(N(t));s.ctx.has(s.name)?this.sub(N(t),r):(this.bindCssData(`--cfg-${Q(t)}`),this.sub(`--cfg-${Q(t)}`,r))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Ce)?t:Ce+t)}};u(O,"StateConsumerScope",null),u(O,"className","");var ei="active",gt="___ACTIVITY_IS_ACTIVE___",z=class extends O{constructor(){super(...arguments);u(this,"historyTracked",!1);u(this,"init$",ye(this));u(this,"_debouncedHistoryFlush",$(this._historyFlush.bind(this),10))}_deactivate(){var r;let t=z._activityRegistry[this.activityKey];this[gt]=!1,this.removeAttribute(ei),(r=t==null?void 0:t.deactivateCallback)==null||r.call(t)}_activate(){var r;let t=z._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[gt]=!0,this.setAttribute(ei,""),(r=t==null?void 0:t.activateCallback)==null||r.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[gt]?this._deactivate():this.activityType===t&&!this[gt]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t[t.length-1]!==this.activityType&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!z._activityRegistry[this.activityKey]}get isActivityActive(){return this[gt]}get couldOpenActivity(){return!0}registerActivity(t,r={}){let{onActivate:s,onDeactivate:n}=r;z._activityRegistry||(z._activityRegistry=Object.create(null)),z._activityRegistry[this.activityKey]={activateCallback:s,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),z._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(z._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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 r;let t=this.$["*history"];if(t){let s=t.pop();for(;s===this.activityType;)s=t.pop();let n=!!s;if(s){let l=[...this.$["*blocksRegistry"]].find(a=>a.activityType===s);n=(r=l==null?void 0:l.couldOpenActivity)!=null?r:!1}s=n?s:void 0,this.$["*currentActivity"]=s,this.$["*history"]=t,s||this.setOrAddState("*modalActive",!1)}}},v=z;u(v,"_activityRegistry",Object.create(null));v.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var Wr="css-src";function Xr(e){return class extends e{constructor(){super(...arguments);u(this,"renderShadow",!0);u(this,"pauseRender",!0);u(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),Ot({element:this,attribute:Wr,onSuccess:t=>{this.attachShadow({mode:"open"});let r=document.createElement("link");r.rel="stylesheet",r.type="text/css",r.href=t,r.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(r)},onTimeout:()=>{console.error("Attribute `css-src`is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}var Nt=class extends Xr(O){};var Dt=class extends Nt{constructor(){super(...arguments);u(this,"requireCtxName",!0);u(this,"init$",kt(this));u(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};var $t=class extends Dt{constructor(){super(...arguments);u(this,"pauseRender",!0)}shadowReadyCallback(){let t=this.ref.uBlock;this.sub("*currentActivity",r=>{r||(this.$["*currentActivity"]=t.initActivity||v.activities.START_FROM)}),this.sub("*uploadList",r=>{(r==null?void 0:r.length)>0?this.$["*currentActivity"]=v.activities.UPLOAD_LIST:this.$["*currentActivity"]=t.initActivity||v.activities.START_FROM}),this.subConfigValue("sourceList",r=>{r!=="local"&&(this.cfg.sourceList="local")}),this.subConfigValue("confirmUpload",r=>{r!==!1&&(this.cfg.confirmUpload=!1)})}};$t.template=``;var Ft=class extends v{constructor(){super(...arguments);u(this,"historyTracked",!0);u(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};Ft.template='
';function ii(e,i,t){let r=e/i,s,n;r>t?(s=Math.round(i*t),n=i):(s=e,n=Math.round(e/t));let o=Math.round((e-s)/2),l=Math.round((i-n)/2);return o+s>e&&(s=e-o),l+n>i&&(n=i-l),{x:o,y:l,width:s,height:n}}var ri=e=>{if(!e)return[];let[i,t]=e.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${e}`);return}return[{type:"aspect-ratio",width:i,height:t}]};var rt=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var bt=e=>e?e.join(","):"";var si="blocks",ni="0.29.1";function oi(e){return he({...e,libraryName:si,libraryVersion:ni})}var Br=e=>{if(typeof e!="string"||!e)return"";let i=e.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},ve=(...e)=>e.filter(i=>typeof i=="string"&&i).map(i=>Br(i)).join("/-/"),Vt=(...e)=>{let i=ve(...e);return i?`-/${i}/`:""};function li(e){let i=new URL(e),t=i.pathname+i.search+i.hash,r=t.lastIndexOf("http"),s=t.lastIndexOf("/"),n="";return r>=0?n=t.slice(r):s>=0&&(n=t.slice(s+1)),n}function Gr(e){let i=new URL(e),t=li(e),r=ai(t)?ui(t).pathname:t;return i.pathname=i.pathname.replace(r,""),i.search="",i.hash="",i.toString()}function ai(e){return e.startsWith("http")}function ui(e){let i=new URL(e);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}var zt=(e,i,t)=>{let r=new URL(Gr(e));if(t=t||li(e),r.pathname.startsWith("//")&&(r.pathname=r.pathname.replace("//","/")),ai(t)){let s=ui(t);r.pathname=r.pathname+(i||"")+(s.pathname||""),r.search=s.search,r.hash=s.hash}else r.pathname=r.pathname+(i||"")+(t||"");return r.toString()},ci=(e,i)=>{let t=new URL(e);return t.pathname=i+"/",t.toString()};var dt=(e,i=",")=>e.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0);var yt=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],Ee=e=>e?e.filter(i=>typeof i=="string").map(i=>dt(i)).flat():[],Te=(e,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),e.startsWith(t)):e===t),hi=(e,i)=>i.some(t=>t.startsWith(".")?e.toLowerCase().endsWith(t.toLowerCase()):!1),we=e=>{let i=e==null?void 0:e.type;return i?Te(i,yt):!1};var j=1e3,lt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),Ct=e=>Math.ceil(e*100)/100,di=(e,i=lt.AUTO)=>{let t=i===lt.AUTO;if(i===lt.BYTE||t&&e(r[s]=i[s].value,r),{}),this.__data=T.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(fi+i);return}let r=this.__typedSchema[i];if((t==null?void 0:t.constructor)===r.type||t instanceof r.type||r.nullable&&t===null){this.__data.pub(i,t);return}console.warn(qr+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(fi+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){T.deleteCtx(this.__ctxId)}};var Ht=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||mt.generate(),this.__data=T.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(r,s)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[r]||(t[r]=new Set),t[r].add(s),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let r of this.__collectionObservers)r==null||r([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new jt(this.__typedSchema);for(let r in i)t.setValue(r,i[r]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(r=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(r,()=>{this.__notifyObservers(r,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,r){this.read(i).setValue(t,r)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(r=>{let s=this.read(r);i(s)&&t.push(r)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){T.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};var pi=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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:K,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var S=class extends v{constructor(){super(...arguments);u(this,"isCtxOwner",!1);u(this,"init$",kt(this));u(this,"__initialUploadMetadata",null);u(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);u(this,"_debouncedRunValidators",$(this._runValidators.bind(this),100));u(this,"_flushOutputItems",$(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(w.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));u(this,"_handleCollectonUpdate",(t,r,s)=>{var n;this._runValidators();for(let o of s)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()});u(this,"_handleCollectionPropertiesUpdate",t=>{this._flushOutputItems();let r=this.uploadCollection,s=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>r.read(n)).filter(Boolean);for(let n of s)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=r.findItems(a=>!a.getValue("uploadError"));o.forEach(a=>{n+=r.readProp(a,"uploadProgress")});let l=Math.round(n/o.length);this.$["*commonProgress"]=l,this.emit(w.UPLOAD_PROGRESS,l,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=r.findItems(l=>!!l.getValue("fileInfo")),o=r.findItems(l=>!!l.getValue("uploadError")||!!l.getValue("validationErrorMsg"));if(r.size-o.length===n.length){let l=this.getOutputData(a=>!!a.getValue("fileInfo")&&!a.getValue("silentUpload"));l.length>0&&this.emit(w.UPLOAD_FINISH,l,{debounce:!0})}}t.uploadError&&r.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(w.UPLOAD_ERROR,r.readProp(o,"uploadError"))}),t.validationErrorMsg&&r.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(w.VALIDATION_ERROR,r.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&r.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(w.CLOUD_MODIFICATION,r.readProp(o,"cdnUrlModifiers"))})})}setUploadMetadata(t){_t("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}get hasCtxOwner(){return this.hasBlockInCtx(t=>t instanceof S?t.isCtxOwner&&t.isConnected&&t!==this:!1)}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let t=new Ht({typedSchema:pi,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",t)}this.hasCtxOwner||this.initCtxOwner()}destroyCallback(){var t,r;super.destroyCallback(),this.isCtxOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(r=this._unobserveCollection)==null||r.call(this))}initCtxOwner(){this.isCtxOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators()),this.subConfigValue("maxConcurrentRequests",t=>{this.$["*uploadQueue"].concurrency=Number(t)||1}),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata)}addFileFromUrl(t,{silent:r,fileName:s,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:s!=null?s:null,silentUpload:r!=null?r:!1,source:n!=null?n:rt.API})}addFileFromUuid(t,{silent:r,fileName:s,source:n}={}){this.uploadCollection.add({uuid:t,fileName:s!=null?s:null,silentUpload:r!=null?r:!1,source:n!=null?n:rt.API})}addFileFromObject(t,{silent:r,fileName:s,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:we(t),mimeType:t.type,fileName:s!=null?s:t.name,fileSize:t.size,silentUpload:r!=null?r:!1,source:n!=null?n:rt.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(r=>{this.uploadCollection.add({file:r,isImage:we(r),mimeType:r.type,fileName:r.name,fileSize:r.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var s;let r=bt(Ee([(s=this.cfg.accept)!=null?s:"",...this.cfg.imgOnly?yt:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=bt(yt)):this.fileInput.accept=r,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:rt.LOCAL})),this.$["*currentActivity"]=v.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=dt(this.cfg.sourceList)),t}initFlow(t=!1){var r;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":v.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((r=this.sourceList)==null?void 0:r.length)===1){let s=this.sourceList[0];s==="local"?(this.$["*currentActivity"]=v.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(S.extSrcList).includes(s)?this.set$({"*currentActivityParams":{externalSourceType:s},"*currentActivity":v.activities.EXTERNAL}):this.$["*currentActivity"]=s,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":v.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(w.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(w.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let r=this.cfg.imgOnly,s=this.cfg.accept,n=Ee([...r?yt:[],s]);if(!n.length)return;let o=t.getValue("mimeType"),l=t.getValue("fileName");if(!o||!l)return;let a=Te(o,n),c=hi(l,n);if(!a&&!c)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let r=this.cfg.maxLocalFileSizeBytes,s=t.getValue("fileSize");if(r&&s&&s>r)return this.l10n("files-max-size-limit-error",{maxFileSize:di(r)})}_validateMultipleLimit(t){let r=this.uploadCollection.items(),s=r.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&r.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let r=this.cfg.imgOnly,s=t.getValue("isImage");if(!(!r||s)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let r of this._validators){let s=r(t);if(s){t.setValue("validationErrorMsg",s);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let r=this.uploadCollection.read(t);r&&this._runValidatorsForEntry(r)})}setInitialCrop(){let t=ri(this.cfg.cropPreset);if(t){let[r]=t,s=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of s){let o=n.getValue("fileInfo"),{width:l,height:a}=o.imageInfo,c=r.width/r.height,h=ii(l,a,c),d=Vt(`crop/${h.width}x${h.height}/${h.x},${h.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:d,cdnUrl:zt(n.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(f=>f.activityType===v.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=v.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var s;let r=(s=this.cfg.metadata)!=null?s:this.$["*uploadMetadata"];if(typeof r=="function"){let n=this.getOutputItem(t);return await r(n)}return r}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:oi,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,l;let r=T.getCtx(t).store,s=r.fileInfo||{name:r.fileName,originalFilename:r.fileName,size:r.fileSize,isImage:r.isImage,mimeType:r.mimeType};return{...s,file:r.file,externalUrl:r.externalUrl,cdnUrlModifiers:r.cdnUrlModifiers,cdnUrl:(l=(o=r.cdnUrl)!=null?o:s.cdnUrl)!=null?l:null,validationErrorMessage:r.validationErrorMsg,uploadError:r.uploadError,isUploaded:!!r.uuid&&!!r.fileInfo,isValid:!r.validationErrorMsg&&!r.uploadError,fullPath:r.fullPath,uploadProgress:r.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};S.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});S.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...S.extSrcList});var H={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};var oo=ve("format/auto","progressive/yes");var Ae=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),mi=[Ae.CROP,Ae.TUNING,Ae.FILTERS];var uo=Object.freeze({brightness:{zero:H.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:H.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:H.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:H.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:H.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:H.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:H.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:H.enhance,range:[0,100],keypointsNumber:1},filter:{zero:H.filter,range:[0,100],keypointsNumber:1}});var Kr="https://ucarecdn.com",Yr="https://upload.uploadcare.com",Jr="https://social.uploadcare.com",st={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:bt(mi),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:Kr,baseUrl:Yr,socialBaseUrl:Jr,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var D=e=>String(e),W=e=>{let i=Number(e);if(Number.isNaN(i))throw new Error(`Invalid number: "${e}"`);return i},x=e=>{if(typeof e=="undefined"||e===null)return!1;if(typeof e=="boolean")return e;if(e==="true"||e==="")return!0;if(e==="false")return!1;throw new Error(`Invalid boolean: "${e}"`)},Zr=e=>e==="auto"?e:x(e),Qr={pubkey:D,multiple:x,multipleMin:W,multipleMax:W,confirmUpload:x,imgOnly:x,accept:D,externalSourcesPreferredTypes:D,store:Zr,cameraMirror:x,sourceList:D,maxLocalFileSizeBytes:W,thumbSize:W,showEmptyList:x,useLocalImageEditor:x,useCloudImageEditor:x,cloudImageEditorTabs:D,removeCopyright:x,cropPreset:D,modalScrollLock:x,modalBackdropStrokes:x,sourceListWrap:x,remoteTabSessionKey:D,cdnCname:D,baseUrl:D,socialBaseUrl:D,secureSignature:D,secureExpire:D,secureDeliveryProxy:D,retryThrottledRequestMaxTimes:W,multipartMinFileSize:W,multipartChunkSize:W,maxConcurrentRequests:W,multipartMaxConcurrentRequests:W,multipartMaxAttempts:W,checkForUrlDuplicates:x,saveUrlForRecurrentUploads:x,groupOutput:x,userAgentIntegration:D},_i=(e,i)=>{if(!(typeof i=="undefined"||i===null))try{return Qr[e](i)}catch(t){return console.error(`Invalid value for config key "${e}".`,t),st[e]}};function ts(e){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let r=s=>{s.type!=="loadend"&&t.abort(),i(!1)};t.onloadend=r,t.onprogress=r,t.readAsDataURL(e)}catch{i(!1)}})}function es(e,i){return new Promise(t=>{let r=0,s=[],n=l=>{l||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),l.isFile?(r++,l.file(a=>{r--;let c=new File([a],a.name,{type:a.type||i});s.push({type:"file",file:c,fullPath:l.fullPath}),r===0&&t(s)})):l.isDirectory&&o(l.createReader())},o=l=>{r++,l.readEntries(a=>{r--;for(let c of a)n(c);r===0&&t(s)})};n(e)})}function gi(e){let i=[],t=[];for(let r=0;r{a&&i.push(...a)}));continue}let o=s.getAsFile();o&&t.push(ts(o).then(l=>{l||i.push({type:"file",file:o})}))}else s.kind==="string"&&s.type.match("^text/uri-list")&&t.push(new Promise(n=>{s.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}var R={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},bi=["focus"],is=100,xe=new Map;function rs(e,i){let t=Math.max(Math.min(e[0],i.x+i.width),i.x),r=Math.max(Math.min(e[1],i.y+i.height),i.y);return Math.sqrt((e[0]-t)*(e[0]-t)+(e[1]-r)*(e[1]-r))}function Se(e){let i=0,t=document.body,r=new Set,s=p=>r.add(p),n=R.INACTIVE,o=p=>{e.shouldIgnore()&&p!==R.INACTIVE||(n!==p&&r.forEach(C=>C(p)),n=p)},l=()=>i>0;s(p=>e.onChange(p));let a=()=>{i=0,o(R.INACTIVE)},c=()=>{i+=1,n===R.INACTIVE&&o(R.ACTIVE)},h=()=>{i-=1,l()||o(R.INACTIVE)},d=p=>{p.preventDefault(),i=0,o(R.INACTIVE)},f=p=>{if(e.shouldIgnore())return;l()||(i+=1);let C=[p.x,p.y],A=e.element.getBoundingClientRect(),E=Math.floor(rs(C,A)),b=E{if(e.shouldIgnore())return;p.preventDefault();let C=await gi(p.dataTransfer);e.onItems(C),o(R.INACTIVE)};return t.addEventListener("drop",d),t.addEventListener("dragleave",h),t.addEventListener("dragenter",c),t.addEventListener("dragover",f),e.element.addEventListener("drop",m),bi.forEach(p=>{window.addEventListener(p,a)}),()=>{xe.delete(e.element),t.removeEventListener("drop",d),t.removeEventListener("dragleave",h),t.removeEventListener("dragenter",c),t.removeEventListener("dragover",f),e.element.removeEventListener("drop",m),bi.forEach(p=>{window.removeEventListener(p,a)})}}var vt=class extends S{constructor(){super(),this.init$={...this.init$,state:R.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,r=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),s=window.getComputedStyle(this),n=s.visibility!=="hidden"&&s.display!=="none";return t&&n&&r}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!x(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:x(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:x(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:x(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=Se({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(r=>{r.type==="url"?this.addFileFromUrl(r.url,{source:rt.DROP_AREA}):r.type==="file"&&this.addFileFromObject(r.file,{source:rt.DROP_AREA,fullPath:r.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":v.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=Se({element:i,onChange:t=>{var s;let r=(s=Object.entries(R).find(([,n])=>n===t))==null?void 0:s[0].toLowerCase();r&&i.setAttribute("drag-state",r)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var s;let r=(s=Object.entries(R).find(([,n])=>n===t))==null?void 0:s[0].toLowerCase();r&&this.setAttribute("drag-state",r)}),this.subConfigValue("sourceList",t=>{let r=dt(t);this.$.isEnabled=r.includes(S.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.sub("isClickable",t=>{this.toggleAttribute("clickable",t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(r=>r!==this).filter(r=>r.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,r=this.uploadCollection.size;return!(i&&t&&r>=t||!i&&r>0)}destroyCallback(){var i,t,r,s;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(r=this._destroyDropzone)==null||r.call(this),(s=this._destroyContentWrapperDropzone)==null||s.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};vt.template=`
{{text}}
`;vt.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Wt=class{constructor(){u(this,"caption","");u(this,"text","");u(this,"iconName","");u(this,"isError",!1)}},Xt=class extends O{constructor(){super(...arguments);u(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};Xt.template=`
{{captionTxt}}
{{msgTxt}}
`;var Bt=class extends S{constructor(){super();u(this,"historyTracked",!0);u(this,"activityType",v.activities.UPLOAD_LIST);u(this,"_debouncedHandleCollectionUpdate",$(()=>{this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),!this.couldOpenActivity&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(r=>!!r.getValue("fileInfo"));this.emit(w.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var h,d;let t=!!this.cfg.multiple,r=t?(h=this.cfg.multipleMin)!=null?h:0:1,s=t?(d=this.cfg.multipleMax)!=null?d:0:1,n=this.uploadCollection.size,o=r?ns:!1;return{passed:!o&&!l,tooFew:o,tooMany:l,min:r,max:s,exact:s===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,r=this._validateFilesCount();if(t&&!r.passed){let s=new Wt,n=r.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";s.caption=this.l10n("files-count-limit-error-title"),s.text=this.l10n(n,{min:r.min,max:r.max,total:t}),s.isError=!0,this.set$({"*message":s})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),s={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let m of t){let p=this.uploadCollection.read(m);p.getValue("fileInfo")&&!p.getValue("validationErrorMsg")&&(s.succeed+=1),p.getValue("isUploading")&&(s.uploading+=1),(p.getValue("validationErrorMsg")||p.getValue("uploadError"))&&(s.failed+=1),p.getValue("validationMultipleLimitMsg")&&(s.limitOverflow+=1)}let{passed:n,tooMany:o,exact:l}=this._validateFilesCount(),a=s.failed===0&&s.limitOverflow===0,c=!1,h=!1,d=!1;s.total-s.succeed-s.uploading-s.failed>0&&n?c=!0:(h=!0,d=s.total===s.succeed&&n&&a),this.set$({doneBtnVisible:h,doneBtnEnabled:d,uploadBtnVisible:c,addMoreBtnEnabled:s.total===0||!o&&!l,addMoreBtnVisible:!l||this.cfg.multiple,headerText:this._getHeaderText(s)})}_getHeaderText(t){let r=s=>{let n=t[s];return this.l10n(`header-${s}`,{count:n})};return t.uploading>0?r("uploading"):t.failed>0?r("failed"):t.succeed>0?r("succeed"):r("total")}get couldOpenActivity(){return this.cfg.showEmptyList||this.uploadCollection.size>0}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{!this.couldOpenActivity&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};Bt.template=`{{headerText}}
`;function ss(e){let i=new Blob([e],{type:"image/svg+xml"});return URL.createObjectURL(i)}function Oe(e="hsl(209, 21%, 65%)",i=32,t=32){return ss(``)}function yi(e,i=40){if(e.type==="image/svg+xml")return URL.createObjectURL(e);let t=document.createElement("canvas"),r=t.getContext("2d"),s=new Image,n=new Promise((o,l)=>{s.onload=()=>{let a=s.height/s.width;a>1?(t.width=i,t.height=i*a):(t.height=i,t.width=i/a),r.fillStyle="rgb(240, 240, 240)",r.fillRect(0,0,t.width,t.height),r.drawImage(s,0,0,t.width,t.height),t.toBlob(c=>{if(!c){l();return}let h=URL.createObjectURL(c);o(h)})},s.onerror=a=>{l(a)}});return s.src=URL.createObjectURL(e),n}var L=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),J=class extends S{constructor(){super();u(this,"pauseRender",!0);u(this,"_entrySubs",new Set);u(this,"_entry",null);u(this,"_isIntersecting",!1);u(this,"_debouncedGenerateThumb",$(this._generateThumbnail.bind(this),100));u(this,"_debouncedCalculateState",$(this._calculateState.bind(this),100));u(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:L.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===v.activities.DETAILS)?this.$["*currentActivity"]=v.activities.DETAILS:this.$["*currentActivity"]=v.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let r=this.getOutputData(s=>s.getValue("uuid")===t);this.emit(w.REMOVE,r,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[r]=t;this._isIntersecting=r.isIntersecting,r.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),r.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,r=L.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?r=L.FAILED:t.getValue("validationMultipleLimitMsg")?r=L.LIMIT_OVERFLOW:t.getValue("isUploading")?r=L.UPLOADING:t.getValue("fileInfo")&&(r=L.FINISHED),this.$.state=r}async _generateThumbnail(){var r;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let s=this.cfg.thumbSize,n=this.proxyUrl(zt(ci(this.cfg.cdnCname,this._entry.getValue("uuid")),Vt(t.getValue("cdnUrlModifiers"),`scale_crop/${s}x${s}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((r=t.getValue("file"))!=null&&r.type.includes("image"))try{let s=await yi(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",s)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",Oe(n))}else{let s=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",Oe(s))}}_subEntry(t,r){let s=this._entry.subscribe(t,n=>{this.isConnected&&r(n)});this._entrySubs.add(s)}_handleEntryId(t){var s;this._reset();let r=(s=this.uploadCollection)==null?void 0:s.read(t);this._entry=r,r&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||r.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=r.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{J.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),J.activeInstances.add(this)}_handleState(t){var r,s,n;this.set$({isFailed:t===L.FAILED,isLimitOverflow:t===L.LIMIT_OVERFLOW,isUploading:t===L.UPLOADING,isFinished:t===L.FINISHED,progressVisible:t===L.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((r=this._entry)==null?void 0:r.getValue("isImage"))&&((s=this._entry)==null?void 0:s.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===L.FAILED||t===L.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===L.FINISHED&&(this.$.badgeIcon="badge-success"),t===L.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),J.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,l;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let r=this.cfg.multiple?this.cfg.multipleMax:1;if(r&&this.uploadCollection.size>r)return;let s=this.getOutputData(a=>!a.getValue("fileInfo"));this.emit(w.UPLOAD_START,s,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let a=new AbortController;t.setValue("abortController",a);let c=async()=>{let d=this.getUploadClientOptions();return ge(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...d,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:f=>{if(f.isComputable){let m=f.value*100;t.setValue("uploadProgress",m)}this.$.progressUnknown=!f.isComputable},signal:a.signal,metadata:await this.getMetadataFor(t.uid)})},h=await this.$["*uploadQueue"].add(c);t.setMultipleValues({fileInfo:h,isUploading:!1,fileName:h.originalFilename,fileSize:h.size,isImage:h.isImage,mimeType:(l=(o=(n=h.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?l:h.mimeType,uuid:h.uuid,cdnUrl:h.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(a){console.warn("Upload error",a),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),a instanceof U?a.isCancel||t.setValue("uploadError",a):t.setValue("uploadError",new Error("Unexpected error"))}}};J.template=`
{{itemName}}{{errorText}}
`;J.activeInstances=new Set;var Et=class extends O{constructor(){super(...arguments);u(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let r=this.getCssData(`--icon-${t}`);r&&(this.$.path=r)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};Et.template=``;Et.bindAttributes({name:"name",size:"size"});var Gt=class extends O{constructor(){super(...arguments);u(this,"_value",0);u(this,"_unknownMode",!1);u(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};Gt.template='
';var qt=class extends O{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};u(qt,"template",`Powered by Uploadcare`);var ft=class extends S{constructor(){super();u(this,"processInnerHtml",!0);u(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return ft.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,Me(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var r,s;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(l=>l.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let l of n){let a=document.createElement("input");a.type="hidden",a.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,a.value=l!=null?l:"",this._dynamicInputsContainer.appendChild(a)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let l=o.find(d=>!d.isValid),a=(s=l==null?void 0:l.validationErrorMessage)!=null?s:(r=l==null?void 0:l.uploadError)==null?void 0:r.message,c=this.$["*message"];c=c!=null&&c.isError?`${c.caption}. ${c.text}`:void 0;let h=a!=null?a:c;h?this._validationInputElement.setCustomValidity(h):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(l=>l.isUploaded&&l.isValid)){this.$.output={groupData:void 0,files:t};return}let s=this.getUploadClientOptions(),n=t.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=await Qe(n,s);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};ft.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var Kt=Object.keys(st),ns=["metadata"],os=e=>ns.includes(e),Yt=Kt.filter(e=>!os(e)),ls={...Object.fromEntries(Yt.map(e=>[Q(e),e])),...Object.fromEntries(Yt.map(e=>[e.toLowerCase(),e]))},as={...Object.fromEntries(Kt.map(e=>[Q(e),N(e)])),...Object.fromEntries(Kt.map(e=>[e.toLowerCase(),N(e)]))},Jt=class extends O{constructor(){super();u(this,"ctxOwner",!0);u(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(st).map(([t,r])=>[N(t),r]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let r of Yt)this.sub(N(r),s=>{s!==st[r]&&(t[r]=s)},!1);for(let r of Kt){let s="__"+r;t[s]=t[r],Object.defineProperty(this,r,{set:n=>{if(t[s]=n,Yt.includes(r)){let o=[...new Set([Q(r),r.toLowerCase()])];for(let l of o)typeof n=="undefined"||n===null?this.removeAttribute(l):this.setAttribute(l,n.toString())}this.$[N(r)]!==n&&(typeof n=="undefined"||n===null?this.$[N(r)]=st[r]:this.$[N(r)]=n)},get:()=>this.$[N(r)]}),typeof t[r]!="undefined"&&t[r]!==null&&(t[r]=t[s])}}attributeChangedCallback(t,r,s){if(r===s)return;let n=ls[t],o=_i(n,s),l=o!=null?o:st[n],a=this;a[n]=l}};Jt.bindAttributes(as);var us=Jt;var Ie=class extends S{constructor(){super(...arguments);u(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}},cs=Ie;export{us as Config,qt as Copyright,ft as DataOutput,vt as DropArea,J as FileItem,$t as FileUploaderMinimal,Et as Icon,Xt as MessageBox,Gt as ProgressBar,Ft as StartFrom,cs as UploadCtxProvider,Bt as UploadList,Ti as registerBlocks}; \ No newline at end of file diff --git a/web/lr-file-uploader-regular.min.css b/web/lr-file-uploader-regular.min.css index 285cd4813..c112938bd 100644 --- a/web/lr-file-uploader-regular.min.css +++ b/web/lr-file-uploader-regular.min.css @@ -1 +1 @@ -:where(.lr-wgt-cfg,.lr-wgt-common),:host{--cfg-pubkey: "YOUR_PUBLIC_KEY";--cfg-multiple: 1;--cfg-multiple-min: 0;--cfg-multiple-max: 0;--cfg-confirm-upload: 0;--cfg-img-only: 0;--cfg-accept: "";--cfg-external-sources-preferred-types: "";--cfg-store: "auto";--cfg-camera-mirror: 1;--cfg-source-list: "local, url, camera, dropbox, gdrive";--cfg-max-local-file-size-bytes: 0;--cfg-thumb-size: 76;--cfg-show-empty-list: 0;--cfg-use-local-image-editor: 0;--cfg-use-cloud-image-editor: 1;--cfg-remove-copyright: 0;--cfg-modal-scroll-lock: 1;--cfg-modal-backdrop-strokes: 0;--cfg-source-list-wrap: 1;--cfg-init-activity: "start-from";--cfg-done-activity: "";--cfg-remote-tab-session-key: "";--cfg-cdn-cname: "https://ucarecdn.com";--cfg-base-url: "https://upload.uploadcare.com";--cfg-social-base-url: "https://social.uploadcare.com";--cfg-secure-signature: "";--cfg-secure-expire: "";--cfg-secure-delivery-proxy: "";--cfg-retry-throttled-request-max-times: 1;--cfg-multipart-min-file-size: 26214400;--cfg-multipart-chunk-size: 5242880;--cfg-max-concurrent-requests: 10;--cfg-multipart-max-concurrent-requests: 4;--cfg-multipart-max-attempts: 3;--cfg-check-for-url-duplicates: 0;--cfg-save-url-for-recurrent-uploads: 0;--cfg-group-output: 0;--cfg-user-agent-integration: ""}:where(.lr-wgt-icons,.lr-wgt-common),:host{--icon-default: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-file: "m2.89453 1.2012c0-.473389.38376-.857145.85714-.857145h8.40003c.2273 0 .4453.090306.6061.251051l8.4 8.400004c.1607.16074.251.37876.251.60609v13.2c0 .4734-.3837.8571-.8571.8571h-16.80003c-.47338 0-.85714-.3837-.85714-.8571zm1.71429.85714v19.88576h15.08568v-11.4858h-7.5428c-.4734 0-.8572-.3837-.8572-.8571v-7.54286zm8.39998 1.21218 5.4736 5.47353-5.4736.00001z";--icon-close: "m4.60395 4.60395c.29289-.2929.76776-.2929 1.06066 0l6.33539 6.33535 6.3354-6.33535c.2929-.2929.7677-.2929 1.0606 0 .2929.29289.2929.76776 0 1.06066l-6.3353 6.33539 6.3353 6.3354c.2929.2929.2929.7677 0 1.0606s-.7677.2929-1.0606 0l-6.3354-6.3353-6.33539 6.3353c-.2929.2929-.76777.2929-1.06066 0-.2929-.2929-.2929-.7677 0-1.0606l6.33535-6.3354-6.33535-6.33539c-.2929-.2929-.2929-.76777 0-1.06066z";--icon-collapse: "M3.11572 12C3.11572 11.5858 3.45151 11.25 3.86572 11.25H20.1343C20.5485 11.25 20.8843 11.5858 20.8843 12C20.8843 12.4142 20.5485 12.75 20.1343 12.75H3.86572C3.45151 12.75 3.11572 12.4142 3.11572 12Z";--icon-expand: "M12.0001 8.33716L3.53033 16.8068C3.23743 17.0997 2.76256 17.0997 2.46967 16.8068C2.17678 16.5139 2.17678 16.0391 2.46967 15.7462L11.0753 7.14067C11.1943 7.01825 11.3365 6.92067 11.4936 6.8536C11.6537 6.78524 11.826 6.75 12.0001 6.75C12.1742 6.75 12.3465 6.78524 12.5066 6.8536C12.6637 6.92067 12.8059 7.01826 12.925 7.14068L21.5304 15.7462C21.8233 16.0391 21.8233 16.5139 21.5304 16.8068C21.2375 17.0997 20.7627 17.0997 20.4698 16.8068L12.0001 8.33716Z";--icon-info: "M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";--icon-error: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";--icon-arrow-down: "m11.5009 23.0302c.2844.2533.7135.2533.9978 0l9.2899-8.2758c.3092-.2756.3366-.7496.0611-1.0589s-.7496-.3367-1.0589-.0612l-8.0417 7.1639v-19.26834c0-.41421-.3358-.749997-.75-.749997s-.75.335787-.75.749997v19.26704l-8.04025-7.1626c-.30928-.2755-.78337-.2481-1.05889.0612-.27553.3093-.24816.7833.06112 1.0589z";--icon-upload: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-local: "m3 3.75c-.82843 0-1.5.67157-1.5 1.5v13.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-9.75c0-.82843-.6716-1.5-1.5-1.5h-9c-.2634 0-.5076-.13822-.6431-.36413l-2.03154-3.38587zm-3 1.5c0-1.65685 1.34315-3 3-3h6.75c.2634 0 .5076.13822.6431.36413l2.0315 3.38587h8.5754c1.6569 0 3 1.34315 3 3v9.75c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3z";--icon-url: "m19.1099 3.67026c-1.7092-1.70917-4.5776-1.68265-6.4076.14738l-2.2212 2.22122c-.2929.29289-.7678.29289-1.0607 0-.29289-.29289-.29289-.76777 0-1.06066l2.2212-2.22122c2.376-2.375966 6.1949-2.481407 8.5289-.14738l1.2202 1.22015c2.334 2.33403 2.2286 6.15294-.1474 8.52895l-2.2212 2.2212c-.2929.2929-.7678.2929-1.0607 0s-.2929-.7678 0-1.0607l2.2212-2.2212c1.8301-1.83003 1.8566-4.69842.1474-6.40759zm-3.3597 4.57991c.2929.29289.2929.76776 0 1.06066l-6.43918 6.43927c-.29289.2928-.76777.2928-1.06066 0-.29289-.2929-.29289-.7678 0-1.0607l6.43924-6.43923c.2929-.2929.7677-.2929 1.0606 0zm-9.71158 1.17048c.29289.29289.29289.76775 0 1.06065l-2.22123 2.2212c-1.83002 1.8301-1.85654 4.6984-.14737 6.4076l1.22015 1.2202c1.70917 1.7091 4.57756 1.6826 6.40763-.1474l2.2212-2.2212c.2929-.2929.7677-.2929 1.0606 0s.2929.7677 0 1.0606l-2.2212 2.2212c-2.37595 2.376-6.19486 2.4815-8.52889.1474l-1.22015-1.2201c-2.334031-2.3341-2.22859-6.153.14737-8.5289l2.22123-2.22125c.29289-.2929.76776-.2929 1.06066 0z";--icon-camera: "m7.65 2.55c.14164-.18885.36393-.3.6-.3h7.5c.2361 0 .4584.11115.6.3l2.025 2.7h2.625c1.6569 0 3 1.34315 3 3v10.5c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3v-10.5c0-1.65685 1.34315-3 3-3h2.625zm.975 1.2-2.025 2.7c-.14164.18885-.36393.3-.6.3h-3c-.82843 0-1.5.67157-1.5 1.5v10.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-10.5c0-.82843-.6716-1.5-1.5-1.5h-3c-.2361 0-.4584-.11115-.6-.3l-2.025-2.7zm3.375 6c-1.864 0-3.375 1.511-3.375 3.375s1.511 3.375 3.375 3.375 3.375-1.511 3.375-3.375-1.511-3.375-3.375-3.375zm-4.875 3.375c0-2.6924 2.18261-4.875 4.875-4.875 2.6924 0 4.875 2.1826 4.875 4.875s-2.1826 4.875-4.875 4.875c-2.69239 0-4.875-2.1826-4.875-4.875z";--icon-dots: "M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z";--icon-back: "M20.251 12.0001C20.251 12.4143 19.9152 12.7501 19.501 12.7501L6.06696 12.7501L11.7872 18.6007C12.0768 18.8968 12.0715 19.3717 11.7753 19.6613C11.4791 19.9508 11.0043 19.9455 10.7147 19.6493L4.13648 12.9213C4.01578 12.8029 3.91947 12.662 3.85307 12.5065C3.78471 12.3464 3.74947 12.1741 3.74947 12C3.74947 11.8259 3.78471 11.6536 3.85307 11.4935C3.91947 11.338 4.01578 11.1971 4.13648 11.0787L10.7147 4.35068C11.0043 4.0545 11.4791 4.04916 11.7753 4.33873C12.0715 4.62831 12.0768 5.10315 11.7872 5.39932L6.06678 11.2501L19.501 11.2501C19.9152 11.2501 20.251 11.5859 20.251 12.0001Z";--icon-remove: "m6.35673 9.71429c-.76333 0-1.35856.66121-1.27865 1.42031l1.01504 9.6429c.06888.6543.62067 1.1511 1.27865 1.1511h9.25643c.658 0 1.2098-.4968 1.2787-1.1511l1.015-9.6429c.0799-.7591-.5153-1.42031-1.2786-1.42031zm.50041-4.5v.32142h-2.57143c-.71008 0-1.28571.57564-1.28571 1.28572s.57563 1.28571 1.28571 1.28571h15.42859c.7101 0 1.2857-.57563 1.2857-1.28571s-.5756-1.28572-1.2857-1.28572h-2.5714v-.32142c0-1.77521-1.4391-3.21429-3.2143-3.21429h-3.8572c-1.77517 0-3.21426 1.43908-3.21426 3.21429zm7.07146-.64286c.355 0 .6428.28782.6428.64286v.32142h-5.14283v-.32142c0-.35504.28782-.64286.64283-.64286z";--icon-edit: "M3.96371 14.4792c-.15098.151-.25578.3419-.3021.5504L2.52752 20.133c-.17826.8021.53735 1.5177 1.33951 1.3395l5.10341-1.1341c.20844-.0463.39934-.1511.55032-.3021l8.05064-8.0507-5.557-5.55702-8.05069 8.05062ZM13.4286 5.01437l5.557 5.55703 2.0212-2.02111c.6576-.65765.6576-1.72393 0-2.38159l-3.1755-3.17546c-.6577-.65765-1.7239-.65765-2.3816 0l-2.0211 2.02113Z";--icon-detail: "M5,3C3.89,3 3,3.89 3,5V19C3,20.11 3.89,21 5,21H19C20.11,21 21,20.11 21,19V5C21,3.89 20.11,3 19,3H5M5,5H19V19H5V5M7,7V9H17V7H7M7,11V13H17V11H7M7,15V17H14V15H7Z";--icon-select: "M7,10L12,15L17,10H7Z";--icon-check: "m12 22c5.5228 0 10-4.4772 10-10 0-5.52285-4.4772-10-10-10-5.52285 0-10 4.47715-10 10 0 5.5228 4.47715 10 10 10zm4.7071-11.4929-5.9071 5.9071-3.50711-3.5071c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.3906 1.02369-.3906 1.41422 0l2.09289 2.0929 4.4929-4.49294c.3905-.39052 1.0237-.39052 1.4142 0 .3905.39053.3905 1.02374 0 1.41424z";--icon-add: "M12.75 21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21V12.7499H3C2.58579 12.7499 2.25 12.4141 2.25 11.9999C2.25 11.5857 2.58579 11.2499 3 11.2499H11.25V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V11.2499H21C21.4142 11.2499 21.75 11.5857 21.75 11.9999C21.75 12.4141 21.4142 12.7499 21 12.7499H12.75V21Z";--icon-edit-file: "m12.1109 6c.3469-1.69213 1.8444-2.96484 3.6391-2.96484s3.2922 1.27271 3.6391 2.96484h2.314c.4142 0 .75.33578.75.75 0 .41421-.3358.75-.75.75h-2.314c-.3469 1.69213-1.8444 2.9648-3.6391 2.9648s-3.2922-1.27267-3.6391-2.9648h-9.81402c-.41422 0-.75001-.33579-.75-.75 0-.41422.33578-.75.75-.75zm3.6391-1.46484c-1.2232 0-2.2148.99162-2.2148 2.21484s.9916 2.21484 2.2148 2.21484 2.2148-.99162 2.2148-2.21484-.9916-2.21484-2.2148-2.21484zm-11.1391 11.96484c.34691-1.6921 1.84437-2.9648 3.6391-2.9648 1.7947 0 3.2922 1.2727 3.6391 2.9648h9.814c.4142 0 .75.3358.75.75s-.3358.75-.75.75h-9.814c-.3469 1.6921-1.8444 2.9648-3.6391 2.9648-1.79473 0-3.29219-1.2727-3.6391-2.9648h-2.31402c-.41422 0-.75-.3358-.75-.75s.33578-.75.75-.75zm3.6391-1.4648c-1.22322 0-2.21484.9916-2.21484 2.2148s.99162 2.2148 2.21484 2.2148 2.2148-.9916 2.2148-2.2148-.99158-2.2148-2.2148-2.2148z";--icon-remove-file: "m11.9554 3.29999c-.7875 0-1.5427.31281-2.0995.86963-.49303.49303-.79476 1.14159-.85742 1.83037h5.91382c-.0627-.68878-.3644-1.33734-.8575-1.83037-.5568-.55682-1.312-.86963-2.0994-.86963zm4.461 2.7c-.0656-1.08712-.5264-2.11657-1.3009-2.89103-.8381-.83812-1.9749-1.30897-3.1601-1.30897-1.1853 0-2.32204.47085-3.16016 1.30897-.77447.77446-1.23534 1.80391-1.30087 2.89103h-2.31966c-.03797 0-.07529.00282-.11174.00827h-1.98826c-.41422 0-.75.33578-.75.75 0 .41421.33578.75.75.75h1.35v11.84174c0 .7559.30026 1.4808.83474 2.0152.53448.5345 1.25939.8348 2.01526.8348h9.44999c.7559 0 1.4808-.3003 2.0153-.8348.5344-.5344.8347-1.2593.8347-2.0152v-11.84174h1.35c.4142 0 .75-.33579.75-.75 0-.41422-.3358-.75-.75-.75h-1.9883c-.0364-.00545-.0737-.00827-.1117-.00827zm-10.49169 1.50827v11.84174c0 .358.14223.7014.3954.9546.25318.2532.59656.3954.9546.3954h9.44999c.358 0 .7014-.1422.9546-.3954s.3954-.5966.3954-.9546v-11.84174z";--icon-trash-file: var(--icon-remove);--icon-upload-error: var(--icon-error);--icon-fullscreen: "M5,5H10V7H7V10H5V5M14,5H19V10H17V7H14V5M17,14H19V19H14V17H17V14M10,17V19H5V14H7V17H10Z";--icon-fullscreen-exit: "M14,14H19V16H16V19H14V14M5,14H10V19H8V16H5V14M8,5H10V10H5V8H8V5M19,8V10H14V5H16V8H19Z";--icon-badge-success: "M10.5 18.2044L18.0992 10.0207C18.6629 9.41362 18.6277 8.46452 18.0207 7.90082C17.4136 7.33711 16.4645 7.37226 15.9008 7.97933L10.5 13.7956L8.0992 11.2101C7.53549 10.603 6.5864 10.5679 5.97933 11.1316C5.37226 11.6953 5.33711 12.6444 5.90082 13.2515L10.5 18.2044Z";--icon-badge-error: "m13.6 18.4c0 .8837-.7164 1.6-1.6 1.6-.8837 0-1.6-.7163-1.6-1.6s.7163-1.6 1.6-1.6c.8836 0 1.6.7163 1.6 1.6zm-1.6-13.9c.8284 0 1.5.67157 1.5 1.5v7c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5v-7c0-.82843.6716-1.5 1.5-1.5z";--icon-about: "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-.922.163-.241.369-.419.617-.532.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.72-.1.216-.234.408-.405.574a3.48 3.48 0 0 1-.575.453c-.33.199-.613.42-.847.66-.234.242-.415.558-.543.949-.125.39-.19.916-.197 1.577ZM11.205 17.15c.21.206.46.31.75.31.196 0 .374-.049.534-.144.16-.096.287-.224.383-.384.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";--icon-edit-rotate: "M16.89,15.5L18.31,16.89C19.21,15.73 19.76,14.39 19.93,13H17.91C17.77,13.87 17.43,14.72 16.89,15.5M13,17.9V19.92C14.39,19.75 15.74,19.21 16.9,18.31L15.46,16.87C14.71,17.41 13.87,17.76 13,17.9M19.93,11C19.76,9.61 19.21,8.27 18.31,7.11L16.89,8.53C17.43,9.28 17.77,10.13 17.91,11M15.55,5.55L11,1V4.07C7.06,4.56 4,7.92 4,12C4,16.08 7.05,19.44 11,19.93V17.91C8.16,17.43 6,14.97 6,12C6,9.03 8.16,6.57 11,6.09V10L15.55,5.55Z";--icon-edit-flip-v: "M3 15V17H5V15M15 19V21H17V19M19 3H5C3.9 3 3 3.9 3 5V9H5V5H19V9H21V5C21 3.9 20.1 3 19 3M21 19H19V21C20.1 21 21 20.1 21 19M1 11V13H23V11M7 19V21H9V19M19 15V17H21V15M11 19V21H13V19M3 19C3 20.1 3.9 21 5 21V19Z";--icon-edit-flip-h: "M15 21H17V19H15M19 9H21V7H19M3 5V19C3 20.1 3.9 21 5 21H9V19H5V5H9V3H5C3.9 3 3 3.9 3 5M19 3V5H21C21 3.9 20.1 3 19 3M11 23H13V1H11M19 17H21V15H19M15 5H17V3H15M19 13H21V11H19M19 21C20.1 21 21 20.1 21 19H19Z";--icon-edit-brightness: "M12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6A6,6 0 0,1 18,12A6,6 0 0,1 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z";--icon-edit-contrast: "M12,20C9.79,20 7.79,19.1 6.34,17.66L17.66,6.34C19.1,7.79 20,9.79 20,12A8,8 0 0,1 12,20M6,8H8V6H9.5V8H11.5V9.5H9.5V11.5H8V9.5H6M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,16H17V14.5H12V16Z";--icon-edit-saturation: "M3,13A9,9 0 0,0 12,22C12,17 7.97,13 3,13M12,5.5A2.5,2.5 0 0,1 14.5,8A2.5,2.5 0 0,1 12,10.5A2.5,2.5 0 0,1 9.5,8A2.5,2.5 0 0,1 12,5.5M5.6,10.25A2.5,2.5 0 0,0 8.1,12.75C8.63,12.75 9.12,12.58 9.5,12.31C9.5,12.37 9.5,12.43 9.5,12.5A2.5,2.5 0 0,0 12,15A2.5,2.5 0 0,0 14.5,12.5C14.5,12.43 14.5,12.37 14.5,12.31C14.88,12.58 15.37,12.75 15.9,12.75C17.28,12.75 18.4,11.63 18.4,10.25C18.4,9.25 17.81,8.4 16.97,8C17.81,7.6 18.4,6.74 18.4,5.75C18.4,4.37 17.28,3.25 15.9,3.25C15.37,3.25 14.88,3.41 14.5,3.69C14.5,3.63 14.5,3.56 14.5,3.5A2.5,2.5 0 0,0 12,1A2.5,2.5 0 0,0 9.5,3.5C9.5,3.56 9.5,3.63 9.5,3.69C9.12,3.41 8.63,3.25 8.1,3.25A2.5,2.5 0 0,0 5.6,5.75C5.6,6.74 6.19,7.6 7.03,8C6.19,8.4 5.6,9.25 5.6,10.25M12,22A9,9 0 0,0 21,13C16,13 12,17 12,22Z";--icon-edit-crop: "M7,17V1H5V5H1V7H5V17A2,2 0 0,0 7,19H17V23H19V19H23V17M17,15H19V7C19,5.89 18.1,5 17,5H9V7H17V15Z";--icon-edit-text: "M18.5,4L19.66,8.35L18.7,8.61C18.25,7.74 17.79,6.87 17.26,6.43C16.73,6 16.11,6 15.5,6H13V16.5C13,17 13,17.5 13.33,17.75C13.67,18 14.33,18 15,18V19H9V18C9.67,18 10.33,18 10.67,17.75C11,17.5 11,17 11,16.5V6H8.5C7.89,6 7.27,6 6.74,6.43C6.21,6.87 5.75,7.74 5.3,8.61L4.34,8.35L5.5,4H18.5Z";--icon-edit-draw: "m21.879394 2.1631238c-1.568367-1.62768627-4.136546-1.53831744-5.596267.1947479l-8.5642801 10.1674753c-1.4906533-.224626-3.061232.258204-4.2082427 1.448604-1.0665468 1.106968-1.0997707 2.464806-1.1203996 3.308068-.00142.05753-.00277.113001-.00439.16549-.02754.894146-.08585 1.463274-.5821351 2.069648l-.80575206.98457.88010766.913285c1.0539516 1.093903 2.6691689 1.587048 4.1744915 1.587048 1.5279113 0 3.2235468-.50598 4.4466094-1.775229 1.147079-1.190514 1.612375-2.820653 1.395772-4.367818l9.796763-8.8879697c1.669907-1.5149954 1.75609-4.1802333.187723-5.8079195zm-16.4593821 13.7924592c.8752943-.908358 2.2944227-.908358 3.1697054 0 .8752942.908358.8752942 2.381259 0 3.289617-.5909138.61325-1.5255389.954428-2.53719.954428-.5223687 0-.9935663-.09031-1.3832112-.232762.3631253-.915463.3952949-1.77626.4154309-2.429737.032192-1.045425.072224-1.308557.3352649-1.581546z";--icon-edit-guides: "M1.39,18.36L3.16,16.6L4.58,18L5.64,16.95L4.22,15.54L5.64,14.12L8.11,16.6L9.17,15.54L6.7,13.06L8.11,11.65L9.53,13.06L10.59,12L9.17,10.59L10.59,9.17L13.06,11.65L14.12,10.59L11.65,8.11L13.06,6.7L14.47,8.11L15.54,7.05L14.12,5.64L15.54,4.22L18,6.7L19.07,5.64L16.6,3.16L18.36,1.39L22.61,5.64L5.64,22.61L1.39,18.36Z";--icon-edit-color: "M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z";--icon-edit-resize: "M10.59,12L14.59,8H11V6H18V13H16V9.41L12,13.41V16H20V4H8V12H10.59M22,2V18H12V22H2V12H6V2H22M10,14H4V20H10V14Z";--icon-external-source-placeholder: "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";--icon-facebook: "m12 1.5c-5.79901 0-10.5 4.70099-10.5 10.5 0 4.9427 3.41586 9.0888 8.01562 10.2045v-6.1086h-2.13281c-.41421 0-.75-.3358-.75-.75v-3.2812c0-.4142.33579-.75.75-.75h2.13281v-1.92189c0-.95748.22571-2.51089 1.38068-3.6497 1.1934-1.17674 3.1742-1.71859 6.2536-1.05619.3455.07433.5923.3798.5923.73323v2.75395c0 .41422-.3358.75-.75.75-.6917 0-1.2029.02567-1.5844.0819-.3865.05694-.5781.13711-.675.20223-.1087.07303-.2367.20457-.2367 1.02837v1.0781h2.3906c.2193 0 .4275.0959.57.2626.1425.1666.205.3872.1709.6038l-.5156 3.2813c-.0573.3647-.3716.6335-.7409.6335h-1.875v6.1058c4.5939-1.1198 8.0039-5.2631 8.0039-10.2017 0-5.79901-4.701-10.5-10.5-10.5zm-12 10.5c0-6.62744 5.37256-12 12-12 6.6274 0 12 5.37256 12 12 0 5.9946-4.3948 10.9614-10.1384 11.8564-.2165.0337-.4369-.0289-.6033-.1714s-.2622-.3506-.2622-.5697v-7.7694c0-.4142.3358-.75.75-.75h1.9836l.28-1.7812h-2.2636c-.4142 0-.75-.3358-.75-.75v-1.8281c0-.82854.0888-1.72825.9-2.27338.3631-.24396.8072-.36961 1.293-.4412.3081-.0454.6583-.07238 1.0531-.08618v-1.39629c-2.4096-.40504-3.6447.13262-4.2928.77165-.7376.72735-.9338 1.79299-.9338 2.58161v2.67189c0 .4142-.3358.75-.75.75h-2.13279v1.7812h2.13279c.4142 0 .75.3358.75.75v7.7712c0 .219-.0956.427-.2619.5695-.1662.1424-.3864.2052-.6028.1717-5.74968-.8898-10.1509-5.8593-10.1509-11.8583z";--icon-dropbox: "m6.01895 1.92072c.24583-.15659.56012-.15658.80593.00003l5.17512 3.29711 5.1761-3.29714c.2458-.15659.5601-.15658.8059.00003l5.5772 3.55326c.2162.13771.347.37625.347.63253 0 .25629-.1308.49483-.347.63254l-4.574 2.91414 4.574 2.91418c.2162.1377.347.3762.347.6325s-.1308.4948-.347.6325l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.1761-3.2971-5.17512 3.2971c-.24581.1566-.5601.1566-.80593 0l-5.578142-3.5532c-.216172-.1377-.347058-.3763-.347058-.6326s.130886-.4949.347058-.6326l4.574772-2.91408-4.574772-2.91411c-.216172-.1377-.347058-.37626-.347058-.63257 0-.2563.130886-.49486.347058-.63256zm.40291 8.61518-4.18213 2.664 4.18213 2.664 4.18144-2.664zm6.97504 2.664 4.1821 2.664 4.1814-2.664-4.1814-2.664zm2.7758-3.54668-4.1727 2.65798-4.17196-2.65798 4.17196-2.658zm1.4063-.88268 4.1814-2.664-4.1814-2.664-4.1821 2.664zm-6.9757-2.664-4.18144-2.664-4.18213 2.664 4.18213 2.664zm-4.81262 12.43736c.22254-.3494.68615-.4522 1.03551-.2297l5.17521 3.2966 5.1742-3.2965c.3493-.2226.813-.1198 1.0355.2295.2226.3494.1198.813-.2295 1.0355l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.57819-3.5532c-.34936-.2226-.45216-.6862-.22963-1.0355z";--icon-gdrive: "m7.73633 1.81806c.13459-.22968.38086-.37079.64707-.37079h7.587c.2718 0 .5223.14697.6548.38419l7.2327 12.94554c.1281.2293.1269.5089-.0031.7371l-3.7935 6.6594c-.1334.2342-.3822.3788-.6517.3788l-14.81918.0004c-.26952 0-.51831-.1446-.65171-.3788l-3.793526-6.6598c-.1327095-.233-.130949-.5191.004617-.7504zm.63943 1.87562-6.71271 11.45452 2.93022 5.1443 6.65493-11.58056zm3.73574 6.52652-2.39793 4.1727 4.78633.0001zm4.1168 4.1729 5.6967-.0002-6.3946-11.44563h-5.85354zm5.6844 1.4998h-13.06111l-2.96515 5.1598 13.08726-.0004z";--icon-gphotos: "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";--icon-instagram: "M6.225 12a5.775 5.775 0 1 1 11.55 0 5.775 5.775 0 0 1-11.55 0zM12 7.725a4.275 4.275 0 1 0 0 8.55 4.275 4.275 0 0 0 0-8.55zM18.425 6.975a1.4 1.4 0 1 0 0-2.8 1.4 1.4 0 0 0 0 2.8zM11.958.175h.084c2.152 0 3.823 0 5.152.132 1.35.134 2.427.41 3.362 1.013a7.15 7.15 0 0 1 2.124 2.124c.604.935.88 2.012 1.013 3.362.132 1.329.132 3 .132 5.152v.084c0 2.152 0 3.823-.132 5.152-.134 1.35-.41 2.427-1.013 3.362a7.15 7.15 0 0 1-2.124 2.124c-.935.604-2.012.88-3.362 1.013-1.329.132-3 .132-5.152.132h-.084c-2.152 0-3.824 0-5.153-.132-1.35-.134-2.427-.409-3.36-1.013a7.15 7.15 0 0 1-2.125-2.124C.716 19.62.44 18.544.307 17.194c-.132-1.329-.132-3-.132-5.152v-.084c0-2.152 0-3.823.132-5.152.133-1.35.409-2.427 1.013-3.362A7.15 7.15 0 0 1 3.444 1.32C4.378.716 5.456.44 6.805.307c1.33-.132 3-.132 5.153-.132zM6.953 1.799c-1.234.123-2.043.36-2.695.78A5.65 5.65 0 0 0 2.58 4.26c-.42.65-.657 1.46-.78 2.695C1.676 8.2 1.675 9.797 1.675 12c0 2.203 0 3.8.124 5.046.123 1.235.36 2.044.78 2.696a5.649 5.649 0 0 0 1.68 1.678c.65.421 1.46.658 2.694.78 1.247.124 2.844.125 5.047.125s3.8 0 5.046-.124c1.235-.123 2.044-.36 2.695-.78a5.648 5.648 0 0 0 1.68-1.68c.42-.65.657-1.46.78-2.694.123-1.247.124-2.844.124-5.047s-.001-3.8-.125-5.046c-.122-1.235-.359-2.044-.78-2.695a5.65 5.65 0 0 0-1.679-1.68c-.651-.42-1.46-.657-2.695-.78-1.246-.123-2.843-.124-5.046-.124-2.203 0-3.8 0-5.047.124z";--icon-flickr: "M5.95874 7.92578C3.66131 7.92578 1.81885 9.76006 1.81885 11.9994C1.81885 14.2402 3.66145 16.0744 5.95874 16.0744C8.26061 16.0744 10.1039 14.2396 10.1039 11.9994C10.1039 9.76071 8.26074 7.92578 5.95874 7.92578ZM0.318848 11.9994C0.318848 8.91296 2.85168 6.42578 5.95874 6.42578C9.06906 6.42578 11.6039 8.91232 11.6039 11.9994C11.6039 15.0877 9.06919 17.5744 5.95874 17.5744C2.85155 17.5744 0.318848 15.0871 0.318848 11.9994ZM18.3898 7.92578C16.0878 7.92578 14.2447 9.76071 14.2447 11.9994C14.2447 14.2396 16.088 16.0744 18.3898 16.0744C20.6886 16.0744 22.531 14.2401 22.531 11.9994C22.531 9.76019 20.6887 7.92578 18.3898 7.92578ZM12.7447 11.9994C12.7447 8.91232 15.2795 6.42578 18.3898 6.42578C21.4981 6.42578 24.031 8.91283 24.031 11.9994C24.031 15.0872 21.4982 17.5744 18.3898 17.5744C15.2794 17.5744 12.7447 15.0877 12.7447 11.9994Z";--icon-vk: var(--icon-external-source-placeholder);--icon-evernote: "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.276.01-.039.018-.078.022-.105.011-.061.023-.14.034-.23.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-.576-.097-.015-.18-.028-.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-.915.197.193.412.357.627.493a5.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.235-.212-.103-.5-.174-.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.996ZM15.638 11.626a.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";--icon-box: "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";--icon-onedrive: "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";--icon-huddle: "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"}:where(.lr-wgt-l10n_en-US,.lr-wgt-common),:host{--l10n-locale-name: "en-US";--l10n-upload-file: "Upload file";--l10n-upload-files: "Upload files";--l10n-choose-file: "Choose file";--l10n-choose-files: "Choose files";--l10n-drop-files-here: "Drop files here";--l10n-select-file-source: "Select file source";--l10n-selected: "Selected";--l10n-upload: "Upload";--l10n-add-more: "Add more";--l10n-cancel: "Cancel";--l10n-clear: "Clear";--l10n-camera-shot: "Shot";--l10n-upload-url: "Import";--l10n-upload-url-placeholder: "Paste link here";--l10n-edit-image: "Edit image";--l10n-edit-detail: "Details";--l10n-back: "Back";--l10n-done: "Done";--l10n-ok: "Ok";--l10n-remove-from-list: "Remove";--l10n-no: "No";--l10n-yes: "Yes";--l10n-confirm-your-action: "Confirm your action";--l10n-are-you-sure: "Are you sure?";--l10n-selected-count: "Selected:";--l10n-upload-error: "Upload error";--l10n-validation-error: "Validation error";--l10n-no-files: "No files selected";--l10n-browse: "Browse";--l10n-not-uploaded-yet: "Not uploaded yet...";--l10n-file__one: "file";--l10n-file__other: "files";--l10n-error__one: "error";--l10n-error__other: "errors";--l10n-header-uploading: "Uploading {{count}} {{plural:file(count)}}";--l10n-header-failed: "{{count}} {{plural:error(count)}}";--l10n-header-succeed: "{{count}} {{plural:file(count)}} uploaded";--l10n-header-total: "{{count}} {{plural:file(count)}} selected";--l10n-src-type-local: "From device";--l10n-src-type-from-url: "From link";--l10n-src-type-camera: "Camera";--l10n-src-type-draw: "Draw";--l10n-src-type-facebook: "Facebook";--l10n-src-type-dropbox: "Dropbox";--l10n-src-type-gdrive: "Google Drive";--l10n-src-type-gphotos: "Google Photos";--l10n-src-type-instagram: "Instagram";--l10n-src-type-flickr: "Flickr";--l10n-src-type-vk: "VK";--l10n-src-type-evernote: "Evernote";--l10n-src-type-box: "Box";--l10n-src-type-onedrive: "Onedrive";--l10n-src-type-huddle: "Huddle";--l10n-src-type-other: "Other";--l10n-src-type: var(--l10n-src-type-local);--l10n-caption-from-url: "Import from link";--l10n-caption-camera: "Camera";--l10n-caption-draw: "Draw";--l10n-caption-edit-file: "Edit file";--l10n-file-no-name: "No name...";--l10n-toggle-fullscreen: "Toggle fullscreen";--l10n-toggle-guides: "Toggle guides";--l10n-rotate: "Rotate";--l10n-flip-vertical: "Flip vertical";--l10n-flip-horizontal: "Flip horizontal";--l10n-brightness: "Brightness";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-resize: "Resize image";--l10n-crop: "Crop";--l10n-select-color: "Select color";--l10n-text: "Text";--l10n-draw: "Draw";--l10n-cancel-edit: "Cancel edit";--l10n-tab-view: "Preview";--l10n-tab-details: "Details";--l10n-file-name: "Name";--l10n-file-size: "Size";--l10n-cdn-url: "CDN URL";--l10n-file-size-unknown: "Unknown";--l10n-camera-permissions-denied: "Camera access denied";--l10n-camera-permissions-prompt: "Please allow access to the camera";--l10n-camera-permissions-request: "Request access";--l10n-files-count-limit-error-title: "Files count limit overflow";--l10n-files-count-limit-error-too-few: "You\2019ve chosen {{total}}. At least {{min}} required.";--l10n-files-count-limit-error-too-many: "You\2019ve chosen too many files. {{max}} is maximum.";--l10n-files-count-minimum: "At least {{count}} files are required";--l10n-files-count-allowed: "Only {{count}} files are allowed";--l10n-files-max-size-limit-error: "File is too big. Max file size is {{maxFileSize}}.";--l10n-has-validation-errors: "File validation error ocurred. Please, check your files before upload.";--l10n-images-only-accepted: "Only image files are accepted.";--l10n-file-type-not-allowed: "Uploading of these file types is not allowed."}:where(.lr-wgt-theme,.lr-wgt-common),:host{--darkmode: 0;--h-foreground: 208;--s-foreground: 4%;--l-foreground: calc(10% + 78% * var(--darkmode));--h-background: 208;--s-background: 4%;--l-background: calc(97% - 85% * var(--darkmode));--h-accent: 211;--s-accent: 100%;--l-accent: calc(50% - 5% * var(--darkmode));--h-confirm: 137;--s-confirm: 85%;--l-confirm: 53%;--h-error: 358;--s-error: 100%;--l-error: 66%;--shadows: 1;--h-shadow: 0;--s-shadow: 0%;--l-shadow: 0%;--opacity-normal: .6;--opacity-hover: .9;--opacity-active: 1;--ui-size: 32px;--gap-min: 2px;--gap-small: 4px;--gap-mid: 10px;--gap-max: 20px;--gap-table: 0px;--borders: 1;--border-radius-element: 8px;--border-radius-frame: 12px;--border-radius-thumb: 6px;--transition-duration: .2s;--modal-max-w: 800px;--modal-max-h: 600px;--modal-normal-w: 430px;--darkmode-minus: calc(1 + var(--darkmode) * -2);--clr-background: hsl(var(--h-background), var(--s-background), var(--l-background));--clr-background-dark: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-background-light: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 3% * var(--darkmode-minus)) );--clr-accent: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 15% * var(--darkmode)));--clr-accent-light: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 30%);--clr-accent-lightest: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 10%);--clr-accent-light-opaque: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 45% * var(--darkmode-minus)));--clr-accent-lightest-opaque: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) + 47% * var(--darkmode-minus)) );--clr-confirm: hsl(var(--h-confirm), var(--s-confirm), var(--l-confirm));--clr-error: hsl(var(--h-error), var(--s-error), var(--l-error));--clr-error-light: hsla(var(--h-error), var(--s-error), var(--l-error), 15%);--clr-error-lightest: hsla(var(--h-error), var(--s-error), var(--l-error), 5%);--clr-error-message-bgr: hsl(var(--h-error), var(--s-error), calc(var(--l-error) + 60% * var(--darkmode-minus)));--clr-txt: hsl(var(--h-foreground), var(--s-foreground), var(--l-foreground));--clr-txt-mid: hsl(var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 20% * var(--darkmode-minus)));--clr-txt-light: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 30% * var(--darkmode-minus)) );--clr-txt-lightest: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 50% * var(--darkmode-minus)) );--clr-shade-lv1: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 5%);--clr-shade-lv2: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 8%);--clr-shade-lv3: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 12%);--clr-generic-file-icon: var(--clr-txt-lightest);--border-light: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.1 - .05 * var(--darkmode)) * var(--borders)) );--border-mid: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.2 - .1 * var(--darkmode)) * var(--borders)) );--border-accent: 1px solid hsla(var(--h-accent), var(--s-accent), var(--l-accent), 1 * var(--borders));--border-dashed: 1px dashed hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), calc(.2 * var(--borders)));--clr-curtain: hsla(var(--h-background), var(--s-background), calc(var(--l-background)), 60%);--hsl-shadow: var(--h-shadow), var(--s-shadow), var(--l-shadow);--modal-shadow: 0px 0px 1px hsla(var(--hsl-shadow), calc((.3 + .65 * var(--darkmode)) * var(--shadows))), 0px 6px 20px hsla(var(--hsl-shadow), calc((.1 + .4 * var(--darkmode)) * var(--shadows)));--clr-btn-bgr-primary: var(--clr-accent);--clr-btn-bgr-primary-hover: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 4% * var(--darkmode-minus)) );--clr-btn-bgr-primary-active: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 8% * var(--darkmode-minus)) );--clr-btn-txt-primary: hsl(var(--h-accent), var(--s-accent), 98%);--shadow-btn-primary: none;--clr-btn-bgr-secondary: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-hover: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 7% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-active: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 12% * var(--darkmode-minus)) );--clr-btn-txt-secondary: var(--clr-txt-mid);--shadow-btn-secondary: none;--clr-btn-bgr-disabled: var(--clr-background);--clr-btn-txt-disabled: var(--clr-txt-lightest);--shadow-btn-disabled: none}@media only screen and (max-height: 600px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-h: 100%}}@media only screen and (max-width: 430px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-w: 100vw;--modal-max-h: var(--uploadcare-blocks-window-height)}}:where(.lr-wgt-theme,.lr-wgt-common),:host{color:var(--clr-txt);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}:where(.lr-wgt-theme,.lr-wgt-common) *,:host *{box-sizing:border-box}:where(.lr-wgt-theme,.lr-wgt-common) [hidden],:host [hidden]{display:none!important}:where(.lr-wgt-theme,.lr-wgt-common) [activity]:not([active]),:host [activity]:not([active]){display:none}:where(.lr-wgt-theme,.lr-wgt-common) dialog:not([open]) [activity],:host dialog:not([open]) [activity]{display:none}:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{display:flex;align-items:center;justify-content:center;height:var(--ui-size);padding-right:1.4em;padding-left:1.4em;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--border-radius-element);cursor:pointer;user-select:none}@media only screen and (max-width: 800px){:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{padding-right:1em;padding-left:1em}}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn,:host button.primary-btn{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary);box-shadow:var(--shadow-btn-primary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:hover,:host button.primary-btn:hover{background-color:var(--clr-btn-bgr-primary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:active,:host button.primary-btn:active{background-color:var(--clr-btn-bgr-primary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn,:host button.secondary-btn{color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:hover,:host button.secondary-btn:hover{background-color:var(--clr-btn-bgr-secondary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:active,:host button.secondary-btn:active{background-color:var(--clr-btn-bgr-secondary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn,:host button.mini-btn{width:var(--ui-size);height:var(--ui-size);padding:0;background-color:transparent;border:none;cursor:pointer;transition:var(--transition-duration) ease;color:var(--clr-txt)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:hover,:host button.mini-btn:hover{background-color:var(--clr-shade-lv1)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:active,:host button.mini-btn:active{background-color:var(--clr-shade-lv2)}:where(.lr-wgt-theme,.lr-wgt-common) :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]),:host :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]){color:var(--clr-btn-txt-disabled);background-color:var(--clr-btn-bgr-disabled);box-shadow:var(--shadow-btn-disabled);pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) a,:host a{color:var(--clr-accent);text-decoration:none}:where(.lr-wgt-theme,.lr-wgt-common) a[disabled],:host a[disabled]{pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]{display:flex;width:100%;height:var(--ui-size);padding-right:.6em;padding-left:.6em;color:var(--clr-txt);font-size:1em;font-family:inherit;background-color:var(--clr-background-light);border:var(--border-light);border-radius:var(--border-radius-element);transition:var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]::placeholder{color:var(--clr-txt-lightest)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:hover,:host input[type=text]:hover{border-color:var(--clr-accent-light)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:focus,:host input[type=text]:focus{border-color:var(--clr-accent);outline:none}:where(.lr-wgt-theme,.lr-wgt-common) input[disabled],:host input[disabled]{opacity:.6;pointer-events:none}lr-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size)}lr-icon svg{width:calc(var(--ui-size) / 2);height:calc(var(--ui-size) / 2)}lr-icon:not([raw]) path{fill:currentColor}lr-tabs{display:grid;grid-template-rows:min-content minmax(var(--ui-size),auto);height:100%;overflow:hidden;color:var(--clr-txt-lightest)}lr-tabs>.tabs-row{display:flex;grid-template-columns:minmax();background-color:var(--clr-background-light)}lr-tabs>.tabs-context{overflow-y:auto}lr-tabs .tabs-row>.tab{display:flex;flex-grow:1;align-items:center;justify-content:center;height:var(--ui-size);border-bottom:var(--border-light);cursor:pointer;transition:var(--transition-duration)}lr-tabs .tabs-row>.tab[current]{color:var(--clr-txt);border-color:var(--clr-txt)}lr-range{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--ui-size)}lr-range datalist{display:none}lr-range input{width:100%;height:100%;opacity:0}lr-range .track-wrapper{position:absolute;right:10px;left:10px;display:flex;align-items:center;justify-content:center;height:2px;user-select:none;pointer-events:none}lr-range .track{position:absolute;right:0;left:0;display:flex;align-items:center;justify-content:center;height:2px;background-color:currentColor;border-radius:2px;opacity:.5}lr-range .slider{position:absolute;width:16px;height:16px;background-color:currentColor;border-radius:100%;transform:translate(-50%)}lr-range .bar{position:absolute;left:0;height:100%;background-color:currentColor;border-radius:2px}lr-range .caption{position:absolute;display:inline-flex;justify-content:center}lr-color{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size);overflow:hidden;background-color:var(--clr-background);cursor:pointer}lr-color[current]{background-color:var(--clr-txt)}lr-color input[type=color]{position:absolute;display:block;width:100%;height:100%;opacity:0}lr-color .current-color{position:absolute;width:50%;height:50%;border:2px solid #fff;border-radius:100%;pointer-events:none}lr-config{display:none}lr-simple-btn{position:relative;display:inline-flex}lr-simple-btn button{padding-left:.2em!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-simple-btn button lr-icon svg{transform:scale(.8)}lr-simple-btn button:hover{background-color:var(--clr-btn-bgr-secondary-hover)}lr-simple-btn button:active{background-color:var(--clr-btn-bgr-secondary-active)}lr-simple-btn>lr-drop-area{display:contents}lr-simple-btn .visual-drop-area{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--gap-min);border:var(--border-dashed);border-radius:inherit;opacity:0;transition:border-color var(--transition-duration) ease,background-color var(--transition-duration) ease,opacity var(--transition-duration) ease}lr-simple-btn .visual-drop-area:before{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--clr-txt-light);background-color:var(--clr-background);border-radius:inherit;content:var(--l10n-drop-files-here)}lr-simple-btn>lr-drop-area[drag-state=active] .visual-drop-area{background-color:var(--clr-accent-lightest);opacity:1}lr-simple-btn>lr-drop-area[drag-state=inactive] .visual-drop-area{background-color:var(--clr-shade-lv1);opacity:0}lr-simple-btn>lr-drop-area[drag-state=near] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent-light);opacity:1}lr-simple-btn>lr-drop-area[drag-state=over] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent);opacity:1}lr-simple-btn>:where(lr-drop-area[drag-state="active"],lr-drop-area[drag-state="near"],lr-drop-area[drag-state="over"]) button{box-shadow:none}lr-simple-btn>lr-drop-area:after{content:""}lr-source-btn{display:flex;align-items:center;margin-bottom:var(--gap-min);padding:var(--gap-min) var(--gap-mid);color:var(--clr-txt-mid);border-radius:var(--border-radius-element);cursor:pointer;transition-duration:var(--transition-duration);transition-property:background-color,color;user-select:none}lr-source-btn:hover{color:var(--clr-accent);background-color:var(--clr-accent-lightest)}lr-source-btn:active{color:var(--clr-accent);background-color:var(--clr-accent-light)}lr-source-btn lr-icon{display:inline-flex;flex-grow:1;justify-content:center;min-width:var(--ui-size);margin-right:var(--gap-mid);opacity:.8}lr-source-btn[type=local]>.txt:after{content:var(--l10n-local-files)}lr-source-btn[type=camera]>.txt:after{content:var(--l10n-camera)}lr-source-btn[type=url]>.txt:after{content:var(--l10n-from-url)}lr-source-btn[type=other]>.txt:after{content:var(--l10n-other)}lr-source-btn .txt{display:flex;align-items:center;box-sizing:border-box;width:100%;height:var(--ui-size);padding:0;white-space:nowrap;border:none}lr-drop-area{padding:var(--gap-min);overflow:hidden;border:var(--border-dashed);border-radius:var(--border-radius-frame);transition:var(--transition-duration) ease}lr-drop-area,lr-drop-area .content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}lr-drop-area .text{position:relative;margin:var(--gap-mid);color:var(--clr-txt-light);transition:var(--transition-duration) ease}lr-drop-area[ghost][drag-state=inactive]{display:none;opacity:0}lr-drop-area[ghost]:not([fullscreen]):is([drag-state="active"],[drag-state="near"],[drag-state="over"]){background:var(--clr-background)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) :is(.text,.icon-container){color:var(--clr-accent)}lr-drop-area:is([drag-state="active"],[drag-state="near"],[drag-state="over"],:hover){color:var(--clr-accent);background:var(--clr-accent-lightest);border-color:var(--clr-accent-light)}lr-drop-area:is([drag-state="active"],[drag-state="near"]){opacity:1}lr-drop-area[drag-state=over]{border-color:var(--clr-accent);opacity:1}lr-drop-area[with-icon]{min-height:calc(var(--ui-size) * 6)}lr-drop-area[with-icon] .content-wrapper{display:flex;flex-direction:column}lr-drop-area[with-icon] .text{color:var(--clr-txt);font-weight:500;font-size:1.1em}lr-drop-area[with-icon] .icon-container{position:relative;width:calc(var(--ui-size) * 2);height:calc(var(--ui-size) * 2);margin:var(--gap-mid);overflow:hidden;color:var(--clr-txt);background-color:var(--clr-background);border-radius:50%;transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon{position:absolute;top:calc(50% - var(--ui-size) / 2);left:calc(50% - var(--ui-size) / 2);transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon:last-child{transform:translateY(calc(var(--ui-size) * 1.5))}lr-drop-area[with-icon]:hover .icon-container,lr-drop-area[with-icon]:hover .text{color:var(--clr-accent)}lr-drop-area[with-icon]:hover .icon-container{background-color:var(--clr-accent-lightest)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .icon-container{color:#fff;background-color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .text{color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:last-child{transform:translateY(0)}lr-drop-area[with-icon]>.content-wrapper[drag-state=near] lr-icon:last-child{transform:scale(1.3)}lr-drop-area[with-icon]>.content-wrapper[drag-state=over] lr-icon:last-child{transform:scale(1.5)}lr-drop-area[fullscreen]{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--gap-mid) * 2);height:calc(100vh - var(--gap-mid) * 2);margin:var(--gap-mid)}lr-drop-area[fullscreen] .content-wrapper{width:100%;max-width:calc(var(--modal-normal-w) * .8);height:calc(var(--ui-size) * 6);color:var(--clr-txt);background-color:var(--clr-background-light);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:var(--transition-duration) ease}lr-drop-area[with-icon][fullscreen][drag-state=active]>.content-wrapper,lr-drop-area[with-icon][fullscreen][drag-state=near]>.content-wrapper{transform:translateY(var(--gap-mid));opacity:0}lr-drop-area[with-icon][fullscreen][drag-state=over]>.content-wrapper{transform:translateY(0);opacity:1}:is(lr-drop-area[with-icon][fullscreen])>.content-wrapper lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-modal{--modal-max-content-height: calc(var(--uploadcare-blocks-window-height, 100vh) - 4 * var(--gap-mid) - var(--ui-size));--modal-content-height-fill: var(--uploadcare-blocks-window-height, 100vh)}lr-modal[dialog-fallback]{--lr-z-max: 2147483647;position:fixed;z-index:var(--lr-z-max);display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;pointer-events:none;inset:0}lr-modal[dialog-fallback] dialog[open]{z-index:var(--lr-z-max);pointer-events:auto}lr-modal[dialog-fallback] dialog[open]+.backdrop{position:fixed;top:0;left:0;z-index:calc(var(--lr-z-max) - 1);align-items:center;justify-content:center;width:100vw;height:100vh;background-color:var(--clr-curtain);pointer-events:auto}lr-modal[strokes][dialog-fallback] dialog[open]+.backdrop{background-image:var(--modal-backdrop-background-image)}@supports selector(dialog::backdrop){lr-modal>dialog::backdrop{background-color:#0000001a}lr-modal[strokes]>dialog::backdrop{background-image:var(--modal-backdrop-background-image)}}lr-modal>dialog[open]{transform:translateY(0);visibility:visible;opacity:1}lr-modal>dialog:not([open]){transform:translateY(20px);visibility:hidden;opacity:0}lr-modal>dialog{display:flex;flex-direction:column;width:max-content;max-width:min(calc(100% - var(--gap-mid) * 2),calc(var(--modal-max-w) - var(--gap-mid) * 2));min-height:var(--ui-size);max-height:calc(var(--modal-max-h) - var(--gap-mid) * 2);margin:auto;padding:0;overflow:hidden;background-color:var(--clr-background-light);border:0;border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:transform calc(var(--transition-duration) * 2)}@media only screen and (max-width: 430px),only screen and (max-height: 600px){lr-modal>dialog>.content{height:var(--modal-max-content-height)}}lr-url-source{display:block;background-color:var(--clr-background-light)}lr-modal lr-url-source{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-url-source>.content{display:grid;grid-gap:var(--gap-small);grid-template-columns:1fr min-content;padding:var(--gap-mid);padding-top:0}lr-url-source .url-input{display:flex}lr-url-source .url-upload-btn:after{content:var(--l10n-upload-url)}lr-camera-source{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;overflow:hidden;background-color:var(--clr-background-light);border-radius:var(--border-radius-element)}lr-modal lr-camera-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:100vh;max-height:var(--modal-max-content-height)}lr-camera-source.initialized{height:max-content}@media only screen and (max-width: 430px){lr-camera-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-camera-source video{display:block;width:100%;max-height:100%;object-fit:contain;object-position:center center;background-color:var(--clr-background-dark);border-radius:var(--border-radius-element)}lr-camera-source .toolbar{position:absolute;bottom:0;display:flex;justify-content:space-between;width:100%;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-camera-source .content{display:flex;flex:1;justify-content:center;width:100%;padding:var(--gap-mid);padding-top:0;overflow:hidden}lr-camera-source .message-box{--padding: calc(var(--gap-max) * 2);display:flex;flex-direction:column;grid-gap:var(--gap-max);align-items:center;justify-content:center;padding:var(--padding) var(--padding) 0 var(--padding);color:var(--clr-txt)}lr-camera-source .message-box button{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary)}lr-camera-source .shot-btn{position:absolute;bottom:var(--gap-max);width:calc(var(--ui-size) * 1.8);height:calc(var(--ui-size) * 1.8);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;opacity:.85;transition:var(--transition-duration) ease}lr-camera-source .shot-btn:hover{transform:scale(1.05);opacity:1}lr-camera-source .shot-btn:active{background-color:var(--clr-txt-mid);opacity:1}lr-camera-source .shot-btn[disabled]{bottom:calc(var(--gap-max) * -1 - var(--gap-mid) - var(--ui-size) * 2)}lr-camera-source .shot-btn lr-icon svg{width:calc(var(--ui-size) / 1.5);height:calc(var(--ui-size) / 1.5)}lr-external-source{display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--clr-background-light);overflow:hidden}lr-modal lr-external-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height)}lr-external-source>.content{position:relative;display:grid;flex:1;grid-template-rows:1fr min-content}@media only screen and (max-width: 430px){lr-external-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-external-source iframe{display:block;width:100%;height:100%;border:none}lr-external-source .iframe-wrapper{overflow:hidden}lr-external-source .toolbar{display:grid;grid-gap:var(--gap-mid);grid-template-columns:max-content 1fr max-content max-content;align-items:center;width:100%;padding:var(--gap-mid);border-top:var(--border-light)}lr-external-source .back-btn{padding-left:0}lr-external-source .back-btn:after{content:var(--l10n-back)}lr-external-source .selected-counter{display:flex;grid-gap:var(--gap-mid);align-items:center;justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt-light)}lr-upload-list{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light);transition:opacity var(--transition-duration)}lr-modal lr-upload-list{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:max-content;max-height:var(--modal-max-content-height)}lr-upload-list .no-files{height:var(--ui-size);padding:var(--gap-max)}lr-upload-list .files{display:block;flex:1;min-height:var(--ui-size);padding:0 var(--gap-mid);overflow:auto}lr-upload-list .toolbar{display:flex;gap:var(--gap-small);justify-content:space-between;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-upload-list .toolbar .add-more-btn{padding-left:.2em}lr-upload-list .toolbar-spacer{flex:1}lr-upload-list lr-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--gap-mid) * 2);height:calc(100% - var(--gap-mid) * 2);margin:var(--gap-mid);border-radius:var(--border-radius-element)}lr-upload-list lr-activity-header>.header-text{padding:0 var(--gap-mid)}lr-start-from{display:block}lr-start-from .content{display:grid;grid-auto-flow:row;gap:var(--gap-max);width:100%;height:max-content;padding:var(--gap-max);overflow-y:auto;background-color:var(--clr-background-light)}lr-modal lr-start-from{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-file-item{display:block}lr-file-item>.inner{position:relative;display:grid;grid-template-columns:32px 1fr max-content;gap:var(--gap-min);align-items:center;margin-bottom:var(--gap-small);padding:var(--gap-mid);overflow:hidden;font-size:.95em;background-color:var(--clr-background);border-radius:var(--border-radius-element);transition:var(--transition-duration)}lr-file-item:last-of-type>.inner{margin-bottom:0}lr-file-item>.inner[focused]{background-color:transparent}lr-file-item>.inner[uploading] .edit-btn{display:none}lr-file-item>:where(.inner[failed],.inner[limit-overflow]){background-color:var(--clr-error-lightest)}lr-file-item .thumb{position:relative;display:inline-flex;width:var(--ui-size);height:var(--ui-size);background-color:var(--clr-shade-lv1);background-position:center center;background-size:cover;border-radius:var(--border-radius-thumb)}lr-file-item .file-name-wrapper{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--gap-mid);padding-left:var(--gap-mid);overflow:hidden;color:var(--clr-txt-light);transition:color var(--transition-duration)}lr-file-item .file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}lr-file-item .file-error{display:none;color:var(--clr-error);font-size:.85em;line-height:130%}lr-file-item button.remove-btn,lr-file-item button.edit-btn{color:var(--clr-txt-lightest)!important}lr-file-item button.upload-btn{display:none}lr-file-item button:hover{color:var(--clr-txt-light)}lr-file-item .badge{position:absolute;top:calc(var(--ui-size) * -.13);right:calc(var(--ui-size) * -.13);width:calc(var(--ui-size) * .44);height:calc(var(--ui-size) * .44);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;transform:scale(.3);opacity:0;transition:var(--transition-duration) ease}lr-file-item>.inner:where([failed],[limit-overflow],[finished]) .badge{transform:scale(1);opacity:1}lr-file-item>.inner[finished] .badge{background-color:var(--clr-confirm)}lr-file-item>.inner:where([failed],[limit-overflow]) .badge{background-color:var(--clr-error)}lr-file-item>.inner:where([failed],[limit-overflow]) .file-error{display:block}lr-file-item .badge lr-icon,lr-file-item .badge lr-icon svg{width:100%;height:100%}lr-file-item .progress-bar{top:calc(100% - 2px);height:2px}lr-file-item .file-actions{display:flex;gap:var(--gap-min);align-items:center;justify-content:center}lr-upload-details{display:flex;flex-direction:column;width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height);overflow:hidden;background-color:var(--clr-background-light)}lr-upload-details>.content{position:relative;display:grid;flex:1;grid-template-rows:auto min-content}lr-upload-details lr-tabs .tabs-context{position:relative}lr-upload-details .toolbar{display:grid;grid-template-columns:min-content min-content 1fr min-content;gap:var(--gap-mid);padding:var(--gap-mid);border-top:var(--border-light)}lr-upload-details .toolbar[edit-disabled]{display:flex;justify-content:space-between}lr-upload-details .remove-btn{padding-left:.5em}lr-upload-details .detail-btn{padding-left:0;color:var(--clr-txt);background-color:var(--clr-background)}lr-upload-details .edit-btn{padding-left:.5em}lr-upload-details .details{padding:var(--gap-max)}lr-upload-details .info-block{padding-top:var(--gap-max);padding-bottom:calc(var(--gap-max) + var(--gap-table));color:var(--clr-txt);border-bottom:var(--border-light)}lr-upload-details .info-block:first-of-type{padding-top:0}lr-upload-details .info-block:last-of-type{border-bottom:none}lr-upload-details .info-block>.info-block_name{margin-bottom:.4em;color:var(--clr-txt-light);font-size:.8em}lr-upload-details .cdn-link[disabled]{pointer-events:none}lr-upload-details .cdn-link[disabled]:before{filter:grayscale(1);content:var(--l10n-not-uploaded-yet)}lr-file-preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}lr-file-preview>lr-img{display:contents}lr-file-preview>lr-img>.img-view{position:absolute;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;object-fit:scale-down}lr-message-box{position:fixed;right:var(--gap-mid);bottom:var(--gap-mid);left:var(--gap-mid);z-index:100000;display:grid;grid-template-rows:min-content auto;color:var(--clr-txt);font-size:.9em;background:var(--clr-background);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:calc(var(--transition-duration) * 2)}lr-message-box[inline]{position:static}lr-message-box:not([active]){transform:translateY(10px);visibility:hidden;opacity:0}lr-message-box[error]{color:var(--clr-error);background-color:var(--clr-error-message-bgr)}lr-message-box .heading{display:grid;grid-template-columns:min-content auto min-content;padding:var(--gap-mid)}lr-message-box .caption{display:flex;align-items:center;word-break:break-word}lr-message-box .heading button{width:var(--ui-size);padding:0;color:currentColor;background-color:transparent;opacity:var(--opacity-normal)}lr-message-box .heading button:hover{opacity:var(--opacity-hover)}lr-message-box .heading button:active{opacity:var(--opacity-active)}lr-message-box .msg{padding:var(--gap-max);padding-top:0;text-align:left}lr-confirmation-dialog{display:block;padding:var(--gap-mid);padding-top:var(--gap-max)}lr-confirmation-dialog .message{display:flex;justify-content:center;padding:var(--gap-mid);padding-bottom:var(--gap-max);font-weight:500;font-size:1.1em}lr-confirmation-dialog .toolbar{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-mid);margin-top:var(--gap-mid)}lr-progress-bar-common{position:fixed;right:0;bottom:0;left:0;z-index:10000;display:block;height:var(--gap-mid);background-color:var(--clr-background);transition:opacity .3s}lr-progress-bar-common:not([active]){opacity:0;pointer-events:none}lr-progress-bar{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}lr-progress-bar .progress{width:calc(var(--l-width) * 1%);height:100%;background-color:var(--clr-accent-light);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}lr-progress-bar .progress--unknown{width:100%;transform-origin:0% 50%;animation:lr-indeterminateAnimation 1s infinite linear}lr-progress-bar .progress--hidden{opacity:0}@keyframes lr-indeterminateAnimation{0%{transform:translate(0) scaleX(0)}40%{transform:translate(0) scaleX(.4)}to{transform:translate(100%) scaleX(.5)}}lr-activity-header{display:flex;gap:var(--gap-mid);justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt);font-weight:500;font-size:1em;line-height:var(--ui-size)}lr-activity-header lr-icon{height:var(--ui-size)}lr-activity-header>*{display:flex;align-items:center}lr-activity-header button{display:inline-flex;align-items:center;justify-content:center;color:var(--clr-txt-mid)}lr-activity-header button:hover{background-color:var(--clr-background)}lr-activity-header button:active{background-color:var(--clr-background-dark)}lr-copyright .credits{padding:0 var(--gap-mid) var(--gap-mid) calc(var(--gap-mid) * 1.5);color:var(--clr-txt-lightest);font-weight:400;font-size:.85em;opacity:.7;transition:var(--transition-duration) ease}lr-copyright .credits:hover{opacity:1}:host(.lr-cloud-image-editor) lr-icon,.lr-cloud-image-editor lr-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host(.lr-cloud-image-editor) lr-icon svg,.lr-cloud-image-editor lr-icon svg{width:unset;height:unset}:host(.lr-cloud-image-editor) lr-icon:not([raw]) path,.lr-cloud-image-editor lr-icon:not([raw]) path{stroke-linejoin:round;fill:none;stroke:currentColor;stroke-width:1.2}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--icon-rotate: "M13.5.399902L12 1.9999l1.5 1.6M12.0234 2H14.4C16.3882 2 18 3.61178 18 5.6V8M4 17h9c.5523 0 1-.4477 1-1V7c0-.55228-.4477-1-1-1H4c-.55228 0-1 .44771-1 1v9c0 .5523.44771 1 1 1z";--icon-mirror: "M5.00042.399902l-1.5 1.599998 1.5 1.6M15.0004.399902l1.5 1.599998-1.5 1.6M3.51995 2H16.477M8.50042 16.7V6.04604c0-.30141-.39466-.41459-.5544-.159L1.28729 16.541c-.12488.1998.01877.459.2544.459h6.65873c.16568 0 .3-.1343.3-.3zm2.99998 0V6.04604c0-.30141.3947-.41459.5544-.159L18.7135 16.541c.1249.1998-.0187.459-.2544.459h-6.6587c-.1657 0-.3-.1343-.3-.3z";--icon-flip: "M19.6001 4.99993l-1.6-1.5-1.6 1.5m3.2 9.99997l-1.6 1.5-1.6-1.5M18 3.52337V16.4765M3.3 8.49993h10.654c.3014 0 .4146-.39466.159-.5544L3.459 1.2868C3.25919 1.16192 3 1.30557 3 1.5412v6.65873c0 .16568.13432.3.3.3zm0 2.99997h10.654c.3014 0 .4146.3947.159.5544L3.459 18.7131c-.19981.1248-.459-.0188-.459-.2544v-6.6588c0-.1657.13432-.3.3-.3z";--icon-sad: "M2 17c4.41828-4 11.5817-4 16 0M16.5 5c0 .55228-.4477 1-1 1s-1-.44772-1-1 .4477-1 1-1 1 .44772 1 1zm-11 0c0 .55228-.44772 1-1 1s-1-.44772-1-1 .44772-1 1-1 1 .44772 1 1z";--icon-closeMax: "M3 3l14 14m0-14L3 17";--icon-crop: "M20 14H7.00513C6.45001 14 6 13.55 6 12.9949V0M0 6h13.0667c.5154 0 .9333.41787.9333.93333V20M14.5.399902L13 1.9999l1.5 1.6M13 2h2c1.6569 0 3 1.34315 3 3v2M5.5 19.5999l1.5-1.6-1.5-1.6M7 18H5c-1.65685 0-3-1.3431-3-3v-2";--icon-tuning: "M8 10h11M1 10h4M1 4.5h11m3 0h4m-18 11h11m3 0h4M12 4.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M5 10a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M12 15.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0";--icon-filters: "M4.5 6.5a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m-3.5 6a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m7 0a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0";--icon-done: "M1 10.6316l5.68421 5.6842L19 4";--icon-original: "M0 40L40-.00000133";--icon-slider: "M0 10h11m0 0c0 1.1046.8954 2 2 2s2-.8954 2-2m-4 0c0-1.10457.8954-2 2-2s2 .89543 2 2m0 0h5";--icon-exposure: "M10 20v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M5 10a5 5 0 1010 0 5 5 0 10-10 0";--icon-contrast: "M2 10a8 8 0 1016 0 8 8 0 10-16 0m8-8v16m8-8h-8m7.5977 2.5H10m6.24 2.5H10m7.6-7.5H10M16.2422 5H10";--icon-brightness: "M15 10c0 2.7614-2.2386 5-5 5m5-5c0-2.76142-2.2386-5-5-5m5 5h-5m0 5c-2.76142 0-5-2.2386-5-5 0-2.76142 2.23858-5 5-5m0 10V5m0 15v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M14.3242 7.5H10m4.3242 5H10";--icon-gamma: "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";--icon-enhance: "M19 13h-2m0 0c-2.2091 0-4-1.7909-4-4m4 4c-2.2091 0-4 1.7909-4 4m0-8V7m0 2c0 2.2091-1.7909 4-4 4m-2 0h2m0 0c2.2091 0 4 1.7909 4 4m0 0v2M8 8.5H6.5m0 0c-1.10457 0-2-.89543-2-2m2 2c-1.10457 0-2 .89543-2 2m0-4V5m0 1.5c0 1.10457-.89543 2-2 2M1 8.5h1.5m0 0c1.10457 0 2 .89543 2 2m0 0V12M12 3h-1m0 0c-.5523 0-1-.44772-1-1m1 1c-.5523 0-1 .44772-1 1m0-2V1m0 1c0 .55228-.44772 1-1 1M8 3h1m0 0c.55228 0 1 .44772 1 1m0 0v1";--icon-saturation: ' ';--icon-warmth: ' ';--icon-vibrance: ' '}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--l10n-cancel: "Cancel";--l10n-apply: "Apply";--l10n-brightness: "Brightness";--l10n-exposure: "Exposure";--l10n-gamma: "Gamma";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-vibrance: "Vibrance";--l10n-warmth: "Warmth";--l10n-enhance: "Enhance";--l10n-original: "Original"}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--rgb-primary-accent: 6, 2, 196;--rgb-text-base: 0, 0, 0;--rgb-text-accent-contrast: 255, 255, 255;--rgb-fill-contrast: 255, 255, 255;--rgb-fill-shaded: 245, 245, 245;--rgb-shadow: 0, 0, 0;--rgb-error: 209, 81, 81;--opacity-shade-mid: .2;--color-primary-accent: rgb(var(--rgb-primary-accent));--color-text-base: rgb(var(--rgb-text-base));--color-text-accent-contrast: rgb(var(--rgb-text-accent-contrast));--color-text-soft: rgb(var(--rgb-fill-contrast));--color-text-error: rgb(var(--rgb-error));--color-fill-contrast: rgb(var(--rgb-fill-contrast));--color-modal-backdrop: rgba(var(--rgb-fill-shaded), .95);--color-image-background: rgba(var(--rgb-fill-shaded));--color-outline: rgba(var(--rgb-text-base), var(--opacity-shade-mid));--color-underline: rgba(var(--rgb-text-base), .08);--color-shade: rgba(var(--rgb-text-base), .02);--color-focus-ring: var(--color-primary-accent);--color-input-placeholder: rgba(var(--rgb-text-base), .32);--color-error: rgb(var(--rgb-error));--font-size-ui: 16px;--font-size-title: 18px;--font-weight-title: 500;--font-size-soft: 14px;--size-touch-area: 40px;--size-panel-heading: 66px;--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--border-radius-connect: 2px;--border-radius-editor: 3px;--border-radius-thumb: 4px;--border-radius-ui: 5px;--border-radius-base: 6px;--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--opacity-min: var(--opacity-shade-mid);--opacity-mid: .1;--opacity-max: .05;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--shadow-base: 0px 5px 15px rgba(var(--rgb-shadow), .1), 0px 1px 4px rgba(var(--rgb-shadow), .15);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}:host(.lr-cloud-image-editor) :is([can-handle-paste]:hover,[can-handle-paste]:focus),.lr-cloud-image-editor :is([can-handle-paste]:hover,[can-handle-paste]:focus){--can-handle-paste: "true"}:host(.lr-cloud-image-editor) :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover),.lr-cloud-image-editor :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover){--filter-effect: var(--hover-filter) !important;--opacity-effect: var(--hover-opacity) !important;--color-effect: var(--hover-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex]:active,[with-effects]:active),.lr-cloud-image-editor :is([tabindex]:active,[with-effects]:active){--filter-effect: var(--down-filter) !important;--opacity-effect: var(--down-opacity) !important;--color-effect: var(--down-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex][active],[with-effects][active]),.lr-cloud-image-editor :is([tabindex][active],[with-effects][active]){--filter-effect: var(--active-filter) !important;--opacity-effect: var(--active-opacity) !important;--color-effect: var(--active-color-rgb) !important}:host(.lr-cloud-image-editor) [hidden-scrollbar]::-webkit-scrollbar,.lr-cloud-image-editor [hidden-scrollbar]::-webkit-scrollbar{display:none}:host(.lr-cloud-image-editor) [hidden-scrollbar],.lr-cloud-image-editor [hidden-scrollbar]{-ms-overflow-style:none;scrollbar-width:none}:host(.lr-cloud-image-editor.editor_ON),.lr-cloud-image-editor.editor_ON{--modal-header-opacity: 0;--modal-header-height: 0px;--modal-toolbar-height: calc(var(--size-panel-heading) * 2)}:host(.lr-cloud-image-editor.editor_OFF),.lr-cloud-image-editor.editor_OFF{--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading)}:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-min-img-height: var(--modal-toolbar-height);--l-max-img-height: 100%;--l-edit-button-width: 120px;--l-toolbar-horizontal-padding: var(--cldtr-gap-mid-1);position:relative;display:grid;grid-template-rows:minmax(var(--l-min-img-height),var(--l-max-img-height)) minmax(var(--modal-toolbar-height),auto);height:100%;overflow:hidden;overflow-y:auto;transition:.3s}@media only screen and (max-width: 800px){:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-edit-button-width: 70px;--l-toolbar-horizontal-padding: var(--cldtr-gap-min)}}:host(.lr-cloud-image-editor)>.wrapper>.viewport,.lr-cloud-image-editor>.wrapper>.viewport{display:flex;align-items:center;justify-content:center;overflow:hidden}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image{--viewer-image-opacity: 1;position:absolute;top:0;left:0;z-index:10;display:block;box-sizing:border-box;width:100%;height:100%;object-fit:scale-down;background-color:var(--color-image-background);transform:scale(1);opacity:var(--viewer-image-opacity);user-select:none;pointer-events:auto}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_visible_viewer,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_visible_viewer{transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-4)}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper{--viewer-image-opacity: 0;background-image:var(--transparent-pixel);transform:scale(1);transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_effects,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_effects{--viewer-image-opacity: 0;transform:scale(1);transition:opacity var(--transition-duration-3) cubic-bezier(.5,0,1,1),transform var(--transition-duration-4);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container,.lr-cloud-image-editor>.wrapper>.viewport>.image_container{position:relative;display:block;width:100%;height:100%;background-color:var(--color-image-background);transition:var(--transition-duration-3)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar,.lr-cloud-image-editor>.wrapper>.toolbar{position:relative;transition:.3s}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content{position:absolute;bottom:0;left:0;box-sizing:border-box;width:100%;height:var(--modal-toolbar-height);min-height:var(--size-panel-heading);background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer{display:flex;align-items:center;justify-content:space-between;height:var(--size-panel-heading);padding-right:var(--l-toolbar-horizontal-padding);padding-left:var(--l-toolbar-horizontal-padding)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor{display:flex}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.info_pan,.lr-cloud-image-editor>.wrapper>.viewport>.info_pan{position:absolute;user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer{position:absolute;z-index:2;display:flex;max-width:120px;transform:translate(-40px);user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer>.file_type,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer>.file_type{padding:4px .8em}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash,.lr-cloud-image-editor>.wrapper>.network_problems_splash{position:absolute;z-index:4;display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:rgba(var(--rgb-text-base),.6);background-color:rgba(var(--rgb-fill-shaded));border-radius:50%}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text{margin-top:var(--cldtr-gap-max);font-size:var(--font-size-ui)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_footer,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_footer{display:flex;align-items:center;justify-content:center;height:var(--size-panel-heading)}lr-crop-frame>.svg{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);opacity:inherit;transition:var(--transition-duration-3)}lr-crop-frame>.thumb{--idle-color-rgb: var(--color-text-base);--hover-color-rgb: var(--color-primary-accent);--focus-color-rgb: var(--color-primary-accent);--down-color-rgb: var(--color-primary-accent);--color-effect: var(--idle-color-rgb);color:var(--color-effect);transition:color var(--transition-duration-3),opacity var(--transition-duration-3)}lr-crop-frame>.thumb--visible{opacity:1;pointer-events:auto}lr-crop-frame>.thumb--hidden{opacity:0;pointer-events:none}lr-crop-frame>.guides{transition:var(--transition-duration-3)}lr-crop-frame>.guides--hidden{opacity:0}lr-crop-frame>.guides--semi-hidden{opacity:.2}lr-crop-frame>.guides--visible{opacity:1}lr-editor-button-control,lr-editor-crop-button-control,lr-editor-filter-control,lr-editor-operation-control{--l-base-min-width: 40px;--l-base-height: var(--l-base-min-width);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--filter-effect: var(--idle-filter);--idle-color-rgb: var(--rgb-text-base);--idle-opacity: .05;--idle-filter: 1;--hover-color-rgb: var(--idle-color-rgb);--hover-opacity: .08;--hover-filter: .8;--down-color-rgb: var(--hover-color-rgb);--down-opacity: .12;--down-filter: .6;position:relative;display:grid;grid-template-columns:var(--l-base-min-width) auto;align-items:center;height:var(--l-base-height);color:rgba(var(--idle-color-rgb));outline:none;cursor:pointer;transition:var(--l-width-transition)}lr-editor-button-control.active,lr-editor-operation-control.active,lr-editor-crop-button-control.active,lr-editor-filter-control.active{--idle-color-rgb: var(--rgb-primary-accent)}lr-editor-filter-control.not_active .preview[loaded]{opacity:1}lr-editor-filter-control.active .preview{opacity:0}lr-editor-button-control.not_active,lr-editor-operation-control.not_active,lr-editor-crop-button-control.not_active,lr-editor-filter-control.not_active{--idle-color-rgb: var(--rgb-text-base)}lr-editor-button-control>.before,lr-editor-operation-control>.before,lr-editor-crop-button-control>.before,lr-editor-filter-control>.before{position:absolute;right:0;left:0;z-index:-1;width:100%;height:100%;background-color:rgba(var(--color-effect),var(--opacity-effect));border-radius:var(--border-radius-editor);transition:var(--transition-duration-3)}lr-editor-button-control>.title,lr-editor-operation-control>.title,lr-editor-crop-button-control>.title,lr-editor-filter-control>.title{padding-right:var(--cldtr-gap-mid-1);font-size:.7em;letter-spacing:1.004px;text-transform:uppercase}lr-editor-filter-control>.preview{position:absolute;right:0;left:0;z-index:1;width:100%;height:var(--l-base-height);background-repeat:no-repeat;background-size:contain;border-radius:var(--border-radius-editor);opacity:0;filter:brightness(var(--filter-effect));transition:var(--transition-duration-3)}lr-editor-filter-control>.original-icon{color:var(--color-text-base);opacity:.3}lr-editor-image-cropper{position:absolute;top:0;left:0;z-index:10;display:block;width:100%;height:100%;opacity:0;pointer-events:none;touch-action:none}lr-editor-image-cropper.active_from_editor{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.active_from_viewer{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.inactive_to_editor{opacity:0;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1),opacity var(--transition-duration-3) calc(var(--transition-duration-3) + .05s);pointer-events:none}lr-editor-image-cropper>.canvas{position:absolute;top:0;left:0;z-index:1;display:block;width:100%;height:100%}lr-editor-image-fader{position:absolute;top:0;left:0;display:block;width:100%;height:100%}lr-editor-image-fader.active_from_viewer{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-start);pointer-events:auto}lr-editor-image-fader.active_from_cropper{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:auto}lr-editor-image-fader.inactive_to_cropper{z-index:3;transform:scale(1);opacity:0;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}lr-editor-image-fader .fader-image{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:scale-down;transform:scale(1);user-select:none;content-visibility:auto}lr-editor-image-fader .fader-image--preview{background-color:var(--color-image-background);border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);transform:scale(1);opacity:0;transition:var(--transition-duration-3)}lr-editor-scroller{display:flex;align-items:center;width:100%;height:100%;overflow-x:scroll}lr-editor-slider{display:flex;align-items:center;justify-content:center;width:100%;height:66px}lr-editor-toolbar{position:relative;width:100%;height:100%}@media only screen and (max-width: 600px){lr-editor-toolbar{--l-tab-gap: var(--cldtr-gap-mid-1);--l-slider-padding: var(--cldtr-gap-min);--l-controls-padding: var(--cldtr-gap-min)}}@media only screen and (min-width: 601px){lr-editor-toolbar{--l-tab-gap: calc(var(--cldtr-gap-mid-1) + var(--cldtr-gap-max));--l-slider-padding: var(--cldtr-gap-mid-1);--l-controls-padding: var(--cldtr-gap-mid-1)}}lr-editor-toolbar>.toolbar-container{position:relative;width:100%;height:100%;overflow:hidden}lr-editor-toolbar>.toolbar-container>.sub-toolbar{position:absolute;display:grid;grid-template-rows:1fr 1fr;width:100%;height:100%;background-color:var(--color-fill-contrast);transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-3) ease-in-out,visibility var(--transition-duration-3) ease-in-out}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--visible{transform:translateY(0);opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--top-hidden{transform:translateY(100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--bottom-hidden{transform:translateY(-100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row{display:flex;align-items:center;justify-content:space-between;padding-right:var(--l-controls-padding);padding-left:var(--l-controls-padding)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles{position:relative;display:grid;grid-auto-flow:column;grid-gap:0px var(--l-tab-gap);align-items:center;height:100%}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggles_indicator{position:absolute;bottom:0;left:0;width:var(--size-touch-area);height:2px;background-color:var(--color-primary-accent);transform:translate(0);transition:transform var(--transition-duration-3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row{position:relative}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content{position:absolute;top:0;left:0;display:flex;width:100%;height:100%;overflow:hidden;opacity:0;content-visibility:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--visible{opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--hidden{opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--visible{display:contents}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles.tab-toggles--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_align{display:grid;grid-template-areas:". inner .";grid-template-columns:1fr auto 1fr;box-sizing:border-box;min-width:100%;padding-left:var(--cldtr-gap-max)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner{display:grid;grid-area:inner;grid-auto-flow:column;grid-gap:calc((var(--cldtr-gap-min) - 1px) * 3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner:last-child{padding-right:var(--cldtr-gap-max)}lr-editor-toolbar .controls-list_last-item{margin-right:var(--cldtr-gap-max)}lr-editor-toolbar .info-tooltip_container{position:absolute;display:flex;align-items:flex-start;justify-content:center;width:100%;height:100%}lr-editor-toolbar .info-tooltip_wrapper{position:absolute;top:calc(-100% - var(--cldtr-gap-mid-2));display:flex;flex-direction:column;justify-content:flex-end;height:100%;pointer-events:none}lr-editor-toolbar .info-tooltip{z-index:3;padding-top:calc(var(--cldtr-gap-min) / 2);padding-right:var(--cldtr-gap-min);padding-bottom:calc(var(--cldtr-gap-min) / 2);padding-left:var(--cldtr-gap-min);color:var(--color-text-base);font-size:.7em;letter-spacing:1px;text-transform:uppercase;background-color:var(--color-text-accent-contrast);border-radius:var(--border-radius-editor);transform:translateY(100%);opacity:0;transition:var(--transition-duration-3)}lr-editor-toolbar .info-tooltip_visible{transform:translateY(0);opacity:1}lr-editor-toolbar .slider{padding-right:var(--l-slider-padding);padding-left:var(--l-slider-padding)}lr-btn-ui{--filter-effect: var(--idle-brightness);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--l-transition-effect: var(--css-transition, color var(--transition-duration-2), filter var(--transition-duration-2));display:inline-flex;align-items:center;box-sizing:var(--css-box-sizing, border-box);height:var(--css-height, var(--size-touch-area));padding-right:var(--css-padding-right, var(--cldtr-gap-mid-1));padding-left:var(--css-padding-left, var(--cldtr-gap-mid-1));color:rgba(var(--color-effect),var(--opacity-effect));outline:none;cursor:pointer;filter:brightness(var(--filter-effect));transition:var(--l-transition-effect);user-select:none}lr-btn-ui .text{white-space:nowrap}lr-btn-ui .icon{display:flex;align-items:center;justify-content:center;color:rgba(var(--color-effect),var(--opacity-effect));filter:brightness(var(--filter-effect));transition:var(--l-transition-effect)}lr-btn-ui .icon_left{margin-right:var(--cldtr-gap-mid-1);margin-left:0}lr-btn-ui .icon_right{margin-right:0;margin-left:var(--cldtr-gap-mid-1)}lr-btn-ui .icon_single{margin-right:0;margin-left:0}lr-btn-ui .icon_hidden{display:none;margin:0}lr-btn-ui.primary{--idle-color-rgb: var(--rgb-primary-accent);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--idle-color-rgb);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.boring{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-text-base);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: 1;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.default{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-primary-accent);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-line-loader-ui{position:absolute;top:0;left:0;z-index:9999;width:100%;height:2px;opacity:.5}lr-line-loader-ui .inner{width:25%;max-width:200px;height:100%}lr-line-loader-ui .line{width:100%;height:100%;background-color:var(--color-primary-accent);transform:translate(-101%);transition:transform 1s}lr-slider-ui{--l-thumb-size: 24px;--l-zero-dot-size: 5px;--l-zero-dot-offset: 2px;--idle-color-rgb: var(--rgb-text-base);--hover-color-rgb: var(--rgb-primary-accent);--down-color-rgb: var(--rgb-primary-accent);--color-effect: var(--idle-color-rgb);--l-color: rgb(var(--color-effect));position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:calc(var(--l-thumb-size) + (var(--l-zero-dot-size) + var(--l-zero-dot-offset)) * 2)}lr-slider-ui .thumb{position:absolute;left:0;width:var(--l-thumb-size);height:var(--l-thumb-size);background-color:var(--l-color);border-radius:50%;transform:translate(0);opacity:1;transition:opacity var(--transition-duration-2)}lr-slider-ui .steps{position:absolute;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:100%;padding-right:calc(var(--l-thumb-size) / 2);padding-left:calc(var(--l-thumb-size) / 2)}lr-slider-ui .border-step{width:0px;height:10px;border-right:1px solid var(--l-color);opacity:.6;transition:var(--transition-duration-2)}lr-slider-ui .minor-step{width:0px;height:4px;border-right:1px solid var(--l-color);opacity:.2;transition:var(--transition-duration-2)}lr-slider-ui .zero-dot{position:absolute;top:calc(100% - var(--l-zero-dot-offset) * 2);left:calc(var(--l-thumb-size) / 2 - var(--l-zero-dot-size) / 2);width:var(--l-zero-dot-size);height:var(--l-zero-dot-size);background-color:var(--color-primary-accent);border-radius:50%;opacity:0;transition:var(--transition-duration-3)}lr-slider-ui .input{position:absolute;width:calc(100% - 10px);height:100%;margin:0;cursor:pointer;opacity:0}lr-presence-toggle.transition{transition:opacity var(--transition-duration-3),visibility var(--transition-duration-3)}lr-presence-toggle.visible{opacity:1;pointer-events:inherit}lr-presence-toggle.hidden{opacity:0;pointer-events:none}ctx-provider{--color-text-base: black;--color-primary-accent: blue;display:flex;align-items:center;justify-content:center;width:190px;height:40px;padding-right:10px;padding-left:10px;background-color:#f5f5f5;border-radius:3px}lr-cloud-image-editor-activity{position:relative;display:flex;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light)}lr-modal lr-cloud-image-editor-activity{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%)}lr-select{display:inline-flex}lr-select>button{position:relative;display:inline-flex;align-items:center;padding-right:0!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-select>button>select{position:absolute;display:block;width:100%;height:100%;opacity:0} +:where(.lr-wgt-cfg,.lr-wgt-common),:host{--cfg-pubkey: "YOUR_PUBLIC_KEY";--cfg-multiple: 1;--cfg-multiple-min: 0;--cfg-multiple-max: 0;--cfg-confirm-upload: 0;--cfg-img-only: 0;--cfg-accept: "";--cfg-external-sources-preferred-types: "";--cfg-store: "auto";--cfg-camera-mirror: 1;--cfg-source-list: "local, url, camera, dropbox, gdrive";--cfg-max-local-file-size-bytes: 0;--cfg-thumb-size: 76;--cfg-show-empty-list: 0;--cfg-use-local-image-editor: 0;--cfg-use-cloud-image-editor: 1;--cfg-remove-copyright: 0;--cfg-modal-scroll-lock: 1;--cfg-modal-backdrop-strokes: 0;--cfg-source-list-wrap: 1;--cfg-init-activity: "start-from";--cfg-done-activity: "";--cfg-remote-tab-session-key: "";--cfg-cdn-cname: "https://ucarecdn.com";--cfg-base-url: "https://upload.uploadcare.com";--cfg-social-base-url: "https://social.uploadcare.com";--cfg-secure-signature: "";--cfg-secure-expire: "";--cfg-secure-delivery-proxy: "";--cfg-retry-throttled-request-max-times: 1;--cfg-multipart-min-file-size: 26214400;--cfg-multipart-chunk-size: 5242880;--cfg-max-concurrent-requests: 10;--cfg-multipart-max-concurrent-requests: 4;--cfg-multipart-max-attempts: 3;--cfg-check-for-url-duplicates: 0;--cfg-save-url-for-recurrent-uploads: 0;--cfg-group-output: 0;--cfg-user-agent-integration: ""}:where(.lr-wgt-icons,.lr-wgt-common),:host{--icon-default: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-file: "m2.89453 1.2012c0-.473389.38376-.857145.85714-.857145h8.40003c.2273 0 .4453.090306.6061.251051l8.4 8.400004c.1607.16074.251.37876.251.60609v13.2c0 .4734-.3837.8571-.8571.8571h-16.80003c-.47338 0-.85714-.3837-.85714-.8571zm1.71429.85714v19.88576h15.08568v-11.4858h-7.5428c-.4734 0-.8572-.3837-.8572-.8571v-7.54286zm8.39998 1.21218 5.4736 5.47353-5.4736.00001z";--icon-close: "m4.60395 4.60395c.29289-.2929.76776-.2929 1.06066 0l6.33539 6.33535 6.3354-6.33535c.2929-.2929.7677-.2929 1.0606 0 .2929.29289.2929.76776 0 1.06066l-6.3353 6.33539 6.3353 6.3354c.2929.2929.2929.7677 0 1.0606s-.7677.2929-1.0606 0l-6.3354-6.3353-6.33539 6.3353c-.2929.2929-.76777.2929-1.06066 0-.2929-.2929-.2929-.7677 0-1.0606l6.33535-6.3354-6.33535-6.33539c-.2929-.2929-.2929-.76777 0-1.06066z";--icon-collapse: "M3.11572 12C3.11572 11.5858 3.45151 11.25 3.86572 11.25H20.1343C20.5485 11.25 20.8843 11.5858 20.8843 12C20.8843 12.4142 20.5485 12.75 20.1343 12.75H3.86572C3.45151 12.75 3.11572 12.4142 3.11572 12Z";--icon-expand: "M12.0001 8.33716L3.53033 16.8068C3.23743 17.0997 2.76256 17.0997 2.46967 16.8068C2.17678 16.5139 2.17678 16.0391 2.46967 15.7462L11.0753 7.14067C11.1943 7.01825 11.3365 6.92067 11.4936 6.8536C11.6537 6.78524 11.826 6.75 12.0001 6.75C12.1742 6.75 12.3465 6.78524 12.5066 6.8536C12.6637 6.92067 12.8059 7.01826 12.925 7.14068L21.5304 15.7462C21.8233 16.0391 21.8233 16.5139 21.5304 16.8068C21.2375 17.0997 20.7627 17.0997 20.4698 16.8068L12.0001 8.33716Z";--icon-info: "M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";--icon-error: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";--icon-arrow-down: "m11.5009 23.0302c.2844.2533.7135.2533.9978 0l9.2899-8.2758c.3092-.2756.3366-.7496.0611-1.0589s-.7496-.3367-1.0589-.0612l-8.0417 7.1639v-19.26834c0-.41421-.3358-.749997-.75-.749997s-.75.335787-.75.749997v19.26704l-8.04025-7.1626c-.30928-.2755-.78337-.2481-1.05889.0612-.27553.3093-.24816.7833.06112 1.0589z";--icon-upload: "m11.5014.392135c.2844-.253315.7134-.253315.9978 0l6.7037 5.971925c.3093.27552.3366.74961.0611 1.05889-.2755.30929-.7496.33666-1.0589.06113l-5.4553-4.85982v13.43864c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-13.43771l-5.45427 4.85889c-.30929.27553-.78337.24816-1.0589-.06113-.27553-.30928-.24816-.78337.06113-1.05889zm-10.644466 16.336765c.414216 0 .749996.3358.749996.75v4.9139h20.78567v-4.9139c0-.4142.3358-.75.75-.75.4143 0 .75.3358.75.75v5.6639c0 .4143-.3357.75-.75.75h-22.285666c-.414214 0-.75-.3357-.75-.75v-5.6639c0-.4142.335786-.75.75-.75z";--icon-local: "m3 3.75c-.82843 0-1.5.67157-1.5 1.5v13.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-9.75c0-.82843-.6716-1.5-1.5-1.5h-9c-.2634 0-.5076-.13822-.6431-.36413l-2.03154-3.38587zm-3 1.5c0-1.65685 1.34315-3 3-3h6.75c.2634 0 .5076.13822.6431.36413l2.0315 3.38587h8.5754c1.6569 0 3 1.34315 3 3v9.75c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3z";--icon-url: "m19.1099 3.67026c-1.7092-1.70917-4.5776-1.68265-6.4076.14738l-2.2212 2.22122c-.2929.29289-.7678.29289-1.0607 0-.29289-.29289-.29289-.76777 0-1.06066l2.2212-2.22122c2.376-2.375966 6.1949-2.481407 8.5289-.14738l1.2202 1.22015c2.334 2.33403 2.2286 6.15294-.1474 8.52895l-2.2212 2.2212c-.2929.2929-.7678.2929-1.0607 0s-.2929-.7678 0-1.0607l2.2212-2.2212c1.8301-1.83003 1.8566-4.69842.1474-6.40759zm-3.3597 4.57991c.2929.29289.2929.76776 0 1.06066l-6.43918 6.43927c-.29289.2928-.76777.2928-1.06066 0-.29289-.2929-.29289-.7678 0-1.0607l6.43924-6.43923c.2929-.2929.7677-.2929 1.0606 0zm-9.71158 1.17048c.29289.29289.29289.76775 0 1.06065l-2.22123 2.2212c-1.83002 1.8301-1.85654 4.6984-.14737 6.4076l1.22015 1.2202c1.70917 1.7091 4.57756 1.6826 6.40763-.1474l2.2212-2.2212c.2929-.2929.7677-.2929 1.0606 0s.2929.7677 0 1.0606l-2.2212 2.2212c-2.37595 2.376-6.19486 2.4815-8.52889.1474l-1.22015-1.2201c-2.334031-2.3341-2.22859-6.153.14737-8.5289l2.22123-2.22125c.29289-.2929.76776-.2929 1.06066 0z";--icon-camera: "m7.65 2.55c.14164-.18885.36393-.3.6-.3h7.5c.2361 0 .4584.11115.6.3l2.025 2.7h2.625c1.6569 0 3 1.34315 3 3v10.5c0 1.6569-1.3431 3-3 3h-18c-1.65685 0-3-1.3431-3-3v-10.5c0-1.65685 1.34315-3 3-3h2.625zm.975 1.2-2.025 2.7c-.14164.18885-.36393.3-.6.3h-3c-.82843 0-1.5.67157-1.5 1.5v10.5c0 .8284.67157 1.5 1.5 1.5h18c.8284 0 1.5-.6716 1.5-1.5v-10.5c0-.82843-.6716-1.5-1.5-1.5h-3c-.2361 0-.4584-.11115-.6-.3l-2.025-2.7zm3.375 6c-1.864 0-3.375 1.511-3.375 3.375s1.511 3.375 3.375 3.375 3.375-1.511 3.375-3.375-1.511-3.375-3.375-3.375zm-4.875 3.375c0-2.6924 2.18261-4.875 4.875-4.875 2.6924 0 4.875 2.1826 4.875 4.875s-2.1826 4.875-4.875 4.875c-2.69239 0-4.875-2.1826-4.875-4.875z";--icon-dots: "M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z";--icon-back: "M20.251 12.0001C20.251 12.4143 19.9152 12.7501 19.501 12.7501L6.06696 12.7501L11.7872 18.6007C12.0768 18.8968 12.0715 19.3717 11.7753 19.6613C11.4791 19.9508 11.0043 19.9455 10.7147 19.6493L4.13648 12.9213C4.01578 12.8029 3.91947 12.662 3.85307 12.5065C3.78471 12.3464 3.74947 12.1741 3.74947 12C3.74947 11.8259 3.78471 11.6536 3.85307 11.4935C3.91947 11.338 4.01578 11.1971 4.13648 11.0787L10.7147 4.35068C11.0043 4.0545 11.4791 4.04916 11.7753 4.33873C12.0715 4.62831 12.0768 5.10315 11.7872 5.39932L6.06678 11.2501L19.501 11.2501C19.9152 11.2501 20.251 11.5859 20.251 12.0001Z";--icon-remove: "m6.35673 9.71429c-.76333 0-1.35856.66121-1.27865 1.42031l1.01504 9.6429c.06888.6543.62067 1.1511 1.27865 1.1511h9.25643c.658 0 1.2098-.4968 1.2787-1.1511l1.015-9.6429c.0799-.7591-.5153-1.42031-1.2786-1.42031zm.50041-4.5v.32142h-2.57143c-.71008 0-1.28571.57564-1.28571 1.28572s.57563 1.28571 1.28571 1.28571h15.42859c.7101 0 1.2857-.57563 1.2857-1.28571s-.5756-1.28572-1.2857-1.28572h-2.5714v-.32142c0-1.77521-1.4391-3.21429-3.2143-3.21429h-3.8572c-1.77517 0-3.21426 1.43908-3.21426 3.21429zm7.07146-.64286c.355 0 .6428.28782.6428.64286v.32142h-5.14283v-.32142c0-.35504.28782-.64286.64283-.64286z";--icon-edit: "M3.96371 14.4792c-.15098.151-.25578.3419-.3021.5504L2.52752 20.133c-.17826.8021.53735 1.5177 1.33951 1.3395l5.10341-1.1341c.20844-.0463.39934-.1511.55032-.3021l8.05064-8.0507-5.557-5.55702-8.05069 8.05062ZM13.4286 5.01437l5.557 5.55703 2.0212-2.02111c.6576-.65765.6576-1.72393 0-2.38159l-3.1755-3.17546c-.6577-.65765-1.7239-.65765-2.3816 0l-2.0211 2.02113Z";--icon-detail: "M5,3C3.89,3 3,3.89 3,5V19C3,20.11 3.89,21 5,21H19C20.11,21 21,20.11 21,19V5C21,3.89 20.11,3 19,3H5M5,5H19V19H5V5M7,7V9H17V7H7M7,11V13H17V11H7M7,15V17H14V15H7Z";--icon-select: "M7,10L12,15L17,10H7Z";--icon-check: "m12 22c5.5228 0 10-4.4772 10-10 0-5.52285-4.4772-10-10-10-5.52285 0-10 4.47715-10 10 0 5.5228 4.47715 10 10 10zm4.7071-11.4929-5.9071 5.9071-3.50711-3.5071c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.3906 1.02369-.3906 1.41422 0l2.09289 2.0929 4.4929-4.49294c.3905-.39052 1.0237-.39052 1.4142 0 .3905.39053.3905 1.02374 0 1.41424z";--icon-add: "M12.75 21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21V12.7499H3C2.58579 12.7499 2.25 12.4141 2.25 11.9999C2.25 11.5857 2.58579 11.2499 3 11.2499H11.25V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V11.2499H21C21.4142 11.2499 21.75 11.5857 21.75 11.9999C21.75 12.4141 21.4142 12.7499 21 12.7499H12.75V21Z";--icon-edit-file: "m12.1109 6c.3469-1.69213 1.8444-2.96484 3.6391-2.96484s3.2922 1.27271 3.6391 2.96484h2.314c.4142 0 .75.33578.75.75 0 .41421-.3358.75-.75.75h-2.314c-.3469 1.69213-1.8444 2.9648-3.6391 2.9648s-3.2922-1.27267-3.6391-2.9648h-9.81402c-.41422 0-.75001-.33579-.75-.75 0-.41422.33578-.75.75-.75zm3.6391-1.46484c-1.2232 0-2.2148.99162-2.2148 2.21484s.9916 2.21484 2.2148 2.21484 2.2148-.99162 2.2148-2.21484-.9916-2.21484-2.2148-2.21484zm-11.1391 11.96484c.34691-1.6921 1.84437-2.9648 3.6391-2.9648 1.7947 0 3.2922 1.2727 3.6391 2.9648h9.814c.4142 0 .75.3358.75.75s-.3358.75-.75.75h-9.814c-.3469 1.6921-1.8444 2.9648-3.6391 2.9648-1.79473 0-3.29219-1.2727-3.6391-2.9648h-2.31402c-.41422 0-.75-.3358-.75-.75s.33578-.75.75-.75zm3.6391-1.4648c-1.22322 0-2.21484.9916-2.21484 2.2148s.99162 2.2148 2.21484 2.2148 2.2148-.9916 2.2148-2.2148-.99158-2.2148-2.2148-2.2148z";--icon-remove-file: "m11.9554 3.29999c-.7875 0-1.5427.31281-2.0995.86963-.49303.49303-.79476 1.14159-.85742 1.83037h5.91382c-.0627-.68878-.3644-1.33734-.8575-1.83037-.5568-.55682-1.312-.86963-2.0994-.86963zm4.461 2.7c-.0656-1.08712-.5264-2.11657-1.3009-2.89103-.8381-.83812-1.9749-1.30897-3.1601-1.30897-1.1853 0-2.32204.47085-3.16016 1.30897-.77447.77446-1.23534 1.80391-1.30087 2.89103h-2.31966c-.03797 0-.07529.00282-.11174.00827h-1.98826c-.41422 0-.75.33578-.75.75 0 .41421.33578.75.75.75h1.35v11.84174c0 .7559.30026 1.4808.83474 2.0152.53448.5345 1.25939.8348 2.01526.8348h9.44999c.7559 0 1.4808-.3003 2.0153-.8348.5344-.5344.8347-1.2593.8347-2.0152v-11.84174h1.35c.4142 0 .75-.33579.75-.75 0-.41422-.3358-.75-.75-.75h-1.9883c-.0364-.00545-.0737-.00827-.1117-.00827zm-10.49169 1.50827v11.84174c0 .358.14223.7014.3954.9546.25318.2532.59656.3954.9546.3954h9.44999c.358 0 .7014-.1422.9546-.3954s.3954-.5966.3954-.9546v-11.84174z";--icon-trash-file: var(--icon-remove);--icon-upload-error: var(--icon-error);--icon-fullscreen: "M5,5H10V7H7V10H5V5M14,5H19V10H17V7H14V5M17,14H19V19H14V17H17V14M10,17V19H5V14H7V17H10Z";--icon-fullscreen-exit: "M14,14H19V16H16V19H14V14M5,14H10V19H8V16H5V14M8,5H10V10H5V8H8V5M19,8V10H14V5H16V8H19Z";--icon-badge-success: "M10.5 18.2044L18.0992 10.0207C18.6629 9.41362 18.6277 8.46452 18.0207 7.90082C17.4136 7.33711 16.4645 7.37226 15.9008 7.97933L10.5 13.7956L8.0992 11.2101C7.53549 10.603 6.5864 10.5679 5.97933 11.1316C5.37226 11.6953 5.33711 12.6444 5.90082 13.2515L10.5 18.2044Z";--icon-badge-error: "m13.6 18.4c0 .8837-.7164 1.6-1.6 1.6-.8837 0-1.6-.7163-1.6-1.6s.7163-1.6 1.6-1.6c.8836 0 1.6.7163 1.6 1.6zm-1.6-13.9c.8284 0 1.5.67157 1.5 1.5v7c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5v-7c0-.82843.6716-1.5 1.5-1.5z";--icon-about: "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-.922.163-.241.369-.419.617-.532.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.72-.1.216-.234.408-.405.574a3.48 3.48 0 0 1-.575.453c-.33.199-.613.42-.847.66-.234.242-.415.558-.543.949-.125.39-.19.916-.197 1.577ZM11.205 17.15c.21.206.46.31.75.31.196 0 .374-.049.534-.144.16-.096.287-.224.383-.384.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";--icon-edit-rotate: "M16.89,15.5L18.31,16.89C19.21,15.73 19.76,14.39 19.93,13H17.91C17.77,13.87 17.43,14.72 16.89,15.5M13,17.9V19.92C14.39,19.75 15.74,19.21 16.9,18.31L15.46,16.87C14.71,17.41 13.87,17.76 13,17.9M19.93,11C19.76,9.61 19.21,8.27 18.31,7.11L16.89,8.53C17.43,9.28 17.77,10.13 17.91,11M15.55,5.55L11,1V4.07C7.06,4.56 4,7.92 4,12C4,16.08 7.05,19.44 11,19.93V17.91C8.16,17.43 6,14.97 6,12C6,9.03 8.16,6.57 11,6.09V10L15.55,5.55Z";--icon-edit-flip-v: "M3 15V17H5V15M15 19V21H17V19M19 3H5C3.9 3 3 3.9 3 5V9H5V5H19V9H21V5C21 3.9 20.1 3 19 3M21 19H19V21C20.1 21 21 20.1 21 19M1 11V13H23V11M7 19V21H9V19M19 15V17H21V15M11 19V21H13V19M3 19C3 20.1 3.9 21 5 21V19Z";--icon-edit-flip-h: "M15 21H17V19H15M19 9H21V7H19M3 5V19C3 20.1 3.9 21 5 21H9V19H5V5H9V3H5C3.9 3 3 3.9 3 5M19 3V5H21C21 3.9 20.1 3 19 3M11 23H13V1H11M19 17H21V15H19M15 5H17V3H15M19 13H21V11H19M19 21C20.1 21 21 20.1 21 19H19Z";--icon-edit-brightness: "M12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6A6,6 0 0,1 18,12A6,6 0 0,1 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z";--icon-edit-contrast: "M12,20C9.79,20 7.79,19.1 6.34,17.66L17.66,6.34C19.1,7.79 20,9.79 20,12A8,8 0 0,1 12,20M6,8H8V6H9.5V8H11.5V9.5H9.5V11.5H8V9.5H6M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,16H17V14.5H12V16Z";--icon-edit-saturation: "M3,13A9,9 0 0,0 12,22C12,17 7.97,13 3,13M12,5.5A2.5,2.5 0 0,1 14.5,8A2.5,2.5 0 0,1 12,10.5A2.5,2.5 0 0,1 9.5,8A2.5,2.5 0 0,1 12,5.5M5.6,10.25A2.5,2.5 0 0,0 8.1,12.75C8.63,12.75 9.12,12.58 9.5,12.31C9.5,12.37 9.5,12.43 9.5,12.5A2.5,2.5 0 0,0 12,15A2.5,2.5 0 0,0 14.5,12.5C14.5,12.43 14.5,12.37 14.5,12.31C14.88,12.58 15.37,12.75 15.9,12.75C17.28,12.75 18.4,11.63 18.4,10.25C18.4,9.25 17.81,8.4 16.97,8C17.81,7.6 18.4,6.74 18.4,5.75C18.4,4.37 17.28,3.25 15.9,3.25C15.37,3.25 14.88,3.41 14.5,3.69C14.5,3.63 14.5,3.56 14.5,3.5A2.5,2.5 0 0,0 12,1A2.5,2.5 0 0,0 9.5,3.5C9.5,3.56 9.5,3.63 9.5,3.69C9.12,3.41 8.63,3.25 8.1,3.25A2.5,2.5 0 0,0 5.6,5.75C5.6,6.74 6.19,7.6 7.03,8C6.19,8.4 5.6,9.25 5.6,10.25M12,22A9,9 0 0,0 21,13C16,13 12,17 12,22Z";--icon-edit-crop: "M7,17V1H5V5H1V7H5V17A2,2 0 0,0 7,19H17V23H19V19H23V17M17,15H19V7C19,5.89 18.1,5 17,5H9V7H17V15Z";--icon-edit-text: "M18.5,4L19.66,8.35L18.7,8.61C18.25,7.74 17.79,6.87 17.26,6.43C16.73,6 16.11,6 15.5,6H13V16.5C13,17 13,17.5 13.33,17.75C13.67,18 14.33,18 15,18V19H9V18C9.67,18 10.33,18 10.67,17.75C11,17.5 11,17 11,16.5V6H8.5C7.89,6 7.27,6 6.74,6.43C6.21,6.87 5.75,7.74 5.3,8.61L4.34,8.35L5.5,4H18.5Z";--icon-edit-draw: "m21.879394 2.1631238c-1.568367-1.62768627-4.136546-1.53831744-5.596267.1947479l-8.5642801 10.1674753c-1.4906533-.224626-3.061232.258204-4.2082427 1.448604-1.0665468 1.106968-1.0997707 2.464806-1.1203996 3.308068-.00142.05753-.00277.113001-.00439.16549-.02754.894146-.08585 1.463274-.5821351 2.069648l-.80575206.98457.88010766.913285c1.0539516 1.093903 2.6691689 1.587048 4.1744915 1.587048 1.5279113 0 3.2235468-.50598 4.4466094-1.775229 1.147079-1.190514 1.612375-2.820653 1.395772-4.367818l9.796763-8.8879697c1.669907-1.5149954 1.75609-4.1802333.187723-5.8079195zm-16.4593821 13.7924592c.8752943-.908358 2.2944227-.908358 3.1697054 0 .8752942.908358.8752942 2.381259 0 3.289617-.5909138.61325-1.5255389.954428-2.53719.954428-.5223687 0-.9935663-.09031-1.3832112-.232762.3631253-.915463.3952949-1.77626.4154309-2.429737.032192-1.045425.072224-1.308557.3352649-1.581546z";--icon-edit-guides: "M1.39,18.36L3.16,16.6L4.58,18L5.64,16.95L4.22,15.54L5.64,14.12L8.11,16.6L9.17,15.54L6.7,13.06L8.11,11.65L9.53,13.06L10.59,12L9.17,10.59L10.59,9.17L13.06,11.65L14.12,10.59L11.65,8.11L13.06,6.7L14.47,8.11L15.54,7.05L14.12,5.64L15.54,4.22L18,6.7L19.07,5.64L16.6,3.16L18.36,1.39L22.61,5.64L5.64,22.61L1.39,18.36Z";--icon-edit-color: "M17.5,12A1.5,1.5 0 0,1 16,10.5A1.5,1.5 0 0,1 17.5,9A1.5,1.5 0 0,1 19,10.5A1.5,1.5 0 0,1 17.5,12M14.5,8A1.5,1.5 0 0,1 13,6.5A1.5,1.5 0 0,1 14.5,5A1.5,1.5 0 0,1 16,6.5A1.5,1.5 0 0,1 14.5,8M9.5,8A1.5,1.5 0 0,1 8,6.5A1.5,1.5 0 0,1 9.5,5A1.5,1.5 0 0,1 11,6.5A1.5,1.5 0 0,1 9.5,8M6.5,12A1.5,1.5 0 0,1 5,10.5A1.5,1.5 0 0,1 6.5,9A1.5,1.5 0 0,1 8,10.5A1.5,1.5 0 0,1 6.5,12M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A1.5,1.5 0 0,0 13.5,19.5C13.5,19.11 13.35,18.76 13.11,18.5C12.88,18.23 12.73,17.88 12.73,17.5A1.5,1.5 0 0,1 14.23,16H16A5,5 0 0,0 21,11C21,6.58 16.97,3 12,3Z";--icon-edit-resize: "M10.59,12L14.59,8H11V6H18V13H16V9.41L12,13.41V16H20V4H8V12H10.59M22,2V18H12V22H2V12H6V2H22M10,14H4V20H10V14Z";--icon-external-source-placeholder: "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";--icon-facebook: "m12 1.5c-5.79901 0-10.5 4.70099-10.5 10.5 0 4.9427 3.41586 9.0888 8.01562 10.2045v-6.1086h-2.13281c-.41421 0-.75-.3358-.75-.75v-3.2812c0-.4142.33579-.75.75-.75h2.13281v-1.92189c0-.95748.22571-2.51089 1.38068-3.6497 1.1934-1.17674 3.1742-1.71859 6.2536-1.05619.3455.07433.5923.3798.5923.73323v2.75395c0 .41422-.3358.75-.75.75-.6917 0-1.2029.02567-1.5844.0819-.3865.05694-.5781.13711-.675.20223-.1087.07303-.2367.20457-.2367 1.02837v1.0781h2.3906c.2193 0 .4275.0959.57.2626.1425.1666.205.3872.1709.6038l-.5156 3.2813c-.0573.3647-.3716.6335-.7409.6335h-1.875v6.1058c4.5939-1.1198 8.0039-5.2631 8.0039-10.2017 0-5.79901-4.701-10.5-10.5-10.5zm-12 10.5c0-6.62744 5.37256-12 12-12 6.6274 0 12 5.37256 12 12 0 5.9946-4.3948 10.9614-10.1384 11.8564-.2165.0337-.4369-.0289-.6033-.1714s-.2622-.3506-.2622-.5697v-7.7694c0-.4142.3358-.75.75-.75h1.9836l.28-1.7812h-2.2636c-.4142 0-.75-.3358-.75-.75v-1.8281c0-.82854.0888-1.72825.9-2.27338.3631-.24396.8072-.36961 1.293-.4412.3081-.0454.6583-.07238 1.0531-.08618v-1.39629c-2.4096-.40504-3.6447.13262-4.2928.77165-.7376.72735-.9338 1.79299-.9338 2.58161v2.67189c0 .4142-.3358.75-.75.75h-2.13279v1.7812h2.13279c.4142 0 .75.3358.75.75v7.7712c0 .219-.0956.427-.2619.5695-.1662.1424-.3864.2052-.6028.1717-5.74968-.8898-10.1509-5.8593-10.1509-11.8583z";--icon-dropbox: "m6.01895 1.92072c.24583-.15659.56012-.15658.80593.00003l5.17512 3.29711 5.1761-3.29714c.2458-.15659.5601-.15658.8059.00003l5.5772 3.55326c.2162.13771.347.37625.347.63253 0 .25629-.1308.49483-.347.63254l-4.574 2.91414 4.574 2.91418c.2162.1377.347.3762.347.6325s-.1308.4948-.347.6325l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.1761-3.2971-5.17512 3.2971c-.24581.1566-.5601.1566-.80593 0l-5.578142-3.5532c-.216172-.1377-.347058-.3763-.347058-.6326s.130886-.4949.347058-.6326l4.574772-2.91408-4.574772-2.91411c-.216172-.1377-.347058-.37626-.347058-.63257 0-.2563.130886-.49486.347058-.63256zm.40291 8.61518-4.18213 2.664 4.18213 2.664 4.18144-2.664zm6.97504 2.664 4.1821 2.664 4.1814-2.664-4.1814-2.664zm2.7758-3.54668-4.1727 2.65798-4.17196-2.65798 4.17196-2.658zm1.4063-.88268 4.1814-2.664-4.1814-2.664-4.1821 2.664zm-6.9757-2.664-4.18144-2.664-4.18213 2.664 4.18213 2.664zm-4.81262 12.43736c.22254-.3494.68615-.4522 1.03551-.2297l5.17521 3.2966 5.1742-3.2965c.3493-.2226.813-.1198 1.0355.2295.2226.3494.1198.813-.2295 1.0355l-5.5772 3.5533c-.2458.1566-.5601.1566-.8059 0l-5.57819-3.5532c-.34936-.2226-.45216-.6862-.22963-1.0355z";--icon-gdrive: "m7.73633 1.81806c.13459-.22968.38086-.37079.64707-.37079h7.587c.2718 0 .5223.14697.6548.38419l7.2327 12.94554c.1281.2293.1269.5089-.0031.7371l-3.7935 6.6594c-.1334.2342-.3822.3788-.6517.3788l-14.81918.0004c-.26952 0-.51831-.1446-.65171-.3788l-3.793526-6.6598c-.1327095-.233-.130949-.5191.004617-.7504zm.63943 1.87562-6.71271 11.45452 2.93022 5.1443 6.65493-11.58056zm3.73574 6.52652-2.39793 4.1727 4.78633.0001zm4.1168 4.1729 5.6967-.0002-6.3946-11.44563h-5.85354zm5.6844 1.4998h-13.06111l-2.96515 5.1598 13.08726-.0004z";--icon-gphotos: "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";--icon-instagram: "M6.225 12a5.775 5.775 0 1 1 11.55 0 5.775 5.775 0 0 1-11.55 0zM12 7.725a4.275 4.275 0 1 0 0 8.55 4.275 4.275 0 0 0 0-8.55zM18.425 6.975a1.4 1.4 0 1 0 0-2.8 1.4 1.4 0 0 0 0 2.8zM11.958.175h.084c2.152 0 3.823 0 5.152.132 1.35.134 2.427.41 3.362 1.013a7.15 7.15 0 0 1 2.124 2.124c.604.935.88 2.012 1.013 3.362.132 1.329.132 3 .132 5.152v.084c0 2.152 0 3.823-.132 5.152-.134 1.35-.41 2.427-1.013 3.362a7.15 7.15 0 0 1-2.124 2.124c-.935.604-2.012.88-3.362 1.013-1.329.132-3 .132-5.152.132h-.084c-2.152 0-3.824 0-5.153-.132-1.35-.134-2.427-.409-3.36-1.013a7.15 7.15 0 0 1-2.125-2.124C.716 19.62.44 18.544.307 17.194c-.132-1.329-.132-3-.132-5.152v-.084c0-2.152 0-3.823.132-5.152.133-1.35.409-2.427 1.013-3.362A7.15 7.15 0 0 1 3.444 1.32C4.378.716 5.456.44 6.805.307c1.33-.132 3-.132 5.153-.132zM6.953 1.799c-1.234.123-2.043.36-2.695.78A5.65 5.65 0 0 0 2.58 4.26c-.42.65-.657 1.46-.78 2.695C1.676 8.2 1.675 9.797 1.675 12c0 2.203 0 3.8.124 5.046.123 1.235.36 2.044.78 2.696a5.649 5.649 0 0 0 1.68 1.678c.65.421 1.46.658 2.694.78 1.247.124 2.844.125 5.047.125s3.8 0 5.046-.124c1.235-.123 2.044-.36 2.695-.78a5.648 5.648 0 0 0 1.68-1.68c.42-.65.657-1.46.78-2.694.123-1.247.124-2.844.124-5.047s-.001-3.8-.125-5.046c-.122-1.235-.359-2.044-.78-2.695a5.65 5.65 0 0 0-1.679-1.68c-.651-.42-1.46-.657-2.695-.78-1.246-.123-2.843-.124-5.046-.124-2.203 0-3.8 0-5.047.124z";--icon-flickr: "M5.95874 7.92578C3.66131 7.92578 1.81885 9.76006 1.81885 11.9994C1.81885 14.2402 3.66145 16.0744 5.95874 16.0744C8.26061 16.0744 10.1039 14.2396 10.1039 11.9994C10.1039 9.76071 8.26074 7.92578 5.95874 7.92578ZM0.318848 11.9994C0.318848 8.91296 2.85168 6.42578 5.95874 6.42578C9.06906 6.42578 11.6039 8.91232 11.6039 11.9994C11.6039 15.0877 9.06919 17.5744 5.95874 17.5744C2.85155 17.5744 0.318848 15.0871 0.318848 11.9994ZM18.3898 7.92578C16.0878 7.92578 14.2447 9.76071 14.2447 11.9994C14.2447 14.2396 16.088 16.0744 18.3898 16.0744C20.6886 16.0744 22.531 14.2401 22.531 11.9994C22.531 9.76019 20.6887 7.92578 18.3898 7.92578ZM12.7447 11.9994C12.7447 8.91232 15.2795 6.42578 18.3898 6.42578C21.4981 6.42578 24.031 8.91283 24.031 11.9994C24.031 15.0872 21.4982 17.5744 18.3898 17.5744C15.2794 17.5744 12.7447 15.0877 12.7447 11.9994Z";--icon-vk: var(--icon-external-source-placeholder);--icon-evernote: "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.276.01-.039.018-.078.022-.105.011-.061.023-.14.034-.23.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-.576-.097-.015-.18-.028-.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-.915.197.193.412.357.627.493a5.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.235-.212-.103-.5-.174-.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.996ZM15.638 11.626a.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";--icon-box: "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";--icon-onedrive: "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";--icon-huddle: "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"}:where(.lr-wgt-l10n_en-US,.lr-wgt-common),:host{--l10n-locale-name: "en-US";--l10n-upload-file: "Upload file";--l10n-upload-files: "Upload files";--l10n-choose-file: "Choose file";--l10n-choose-files: "Choose files";--l10n-drop-files-here: "Drop files here";--l10n-select-file-source: "Select file source";--l10n-selected: "Selected";--l10n-upload: "Upload";--l10n-add-more: "Add more";--l10n-cancel: "Cancel";--l10n-start-from-cancel: var(--l10n-cancel);--l10n-clear: "Clear";--l10n-camera-shot: "Shot";--l10n-upload-url: "Import";--l10n-upload-url-placeholder: "Paste link here";--l10n-edit-image: "Edit image";--l10n-edit-detail: "Details";--l10n-back: "Back";--l10n-done: "Done";--l10n-ok: "Ok";--l10n-remove-from-list: "Remove";--l10n-no: "No";--l10n-yes: "Yes";--l10n-confirm-your-action: "Confirm your action";--l10n-are-you-sure: "Are you sure?";--l10n-selected-count: "Selected:";--l10n-upload-error: "Upload error";--l10n-validation-error: "Validation error";--l10n-no-files: "No files selected";--l10n-browse: "Browse";--l10n-not-uploaded-yet: "Not uploaded yet...";--l10n-file__one: "file";--l10n-file__other: "files";--l10n-error__one: "error";--l10n-error__other: "errors";--l10n-header-uploading: "Uploading {{count}} {{plural:file(count)}}";--l10n-header-failed: "{{count}} {{plural:error(count)}}";--l10n-header-succeed: "{{count}} {{plural:file(count)}} uploaded";--l10n-header-total: "{{count}} {{plural:file(count)}} selected";--l10n-src-type-local: "From device";--l10n-src-type-from-url: "From link";--l10n-src-type-camera: "Camera";--l10n-src-type-draw: "Draw";--l10n-src-type-facebook: "Facebook";--l10n-src-type-dropbox: "Dropbox";--l10n-src-type-gdrive: "Google Drive";--l10n-src-type-gphotos: "Google Photos";--l10n-src-type-instagram: "Instagram";--l10n-src-type-flickr: "Flickr";--l10n-src-type-vk: "VK";--l10n-src-type-evernote: "Evernote";--l10n-src-type-box: "Box";--l10n-src-type-onedrive: "Onedrive";--l10n-src-type-huddle: "Huddle";--l10n-src-type-other: "Other";--l10n-src-type: var(--l10n-src-type-local);--l10n-caption-from-url: "Import from link";--l10n-caption-camera: "Camera";--l10n-caption-draw: "Draw";--l10n-caption-edit-file: "Edit file";--l10n-file-no-name: "No name...";--l10n-toggle-fullscreen: "Toggle fullscreen";--l10n-toggle-guides: "Toggle guides";--l10n-rotate: "Rotate";--l10n-flip-vertical: "Flip vertical";--l10n-flip-horizontal: "Flip horizontal";--l10n-brightness: "Brightness";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-resize: "Resize image";--l10n-crop: "Crop";--l10n-select-color: "Select color";--l10n-text: "Text";--l10n-draw: "Draw";--l10n-cancel-edit: "Cancel edit";--l10n-tab-view: "Preview";--l10n-tab-details: "Details";--l10n-file-name: "Name";--l10n-file-size: "Size";--l10n-cdn-url: "CDN URL";--l10n-file-size-unknown: "Unknown";--l10n-camera-permissions-denied: "Camera access denied";--l10n-camera-permissions-prompt: "Please allow access to the camera";--l10n-camera-permissions-request: "Request access";--l10n-files-count-limit-error-title: "Files count limit overflow";--l10n-files-count-limit-error-too-few: "You\2019ve chosen {{total}}. At least {{min}} required.";--l10n-files-count-limit-error-too-many: "You\2019ve chosen too many files. {{max}} is maximum.";--l10n-files-count-minimum: "At least {{count}} files are required";--l10n-files-count-allowed: "Only {{count}} files are allowed";--l10n-files-max-size-limit-error: "File is too big. Max file size is {{maxFileSize}}.";--l10n-has-validation-errors: "File validation error ocurred. Please, check your files before upload.";--l10n-images-only-accepted: "Only image files are accepted.";--l10n-file-type-not-allowed: "Uploading of these file types is not allowed."}:where(.lr-wgt-theme,.lr-wgt-common),:host{--darkmode: 0;--h-foreground: 208;--s-foreground: 4%;--l-foreground: calc(10% + 78% * var(--darkmode));--h-background: 208;--s-background: 4%;--l-background: calc(97% - 85% * var(--darkmode));--h-accent: 211;--s-accent: 100%;--l-accent: calc(50% - 5% * var(--darkmode));--h-confirm: 137;--s-confirm: 85%;--l-confirm: 53%;--h-error: 358;--s-error: 100%;--l-error: 66%;--shadows: 1;--h-shadow: 0;--s-shadow: 0%;--l-shadow: 0%;--opacity-normal: .6;--opacity-hover: .9;--opacity-active: 1;--ui-size: 32px;--gap-min: 2px;--gap-small: 4px;--gap-mid: 10px;--gap-max: 20px;--gap-table: 0px;--borders: 1;--border-radius-element: 8px;--border-radius-frame: 12px;--border-radius-thumb: 6px;--transition-duration: .2s;--modal-max-w: 800px;--modal-max-h: 600px;--modal-normal-w: 430px;--darkmode-minus: calc(1 + var(--darkmode) * -2);--clr-background: hsl(var(--h-background), var(--s-background), var(--l-background));--clr-background-dark: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-background-light: hsl( var(--h-background), var(--s-background), calc(var(--l-background) + 3% * var(--darkmode-minus)) );--clr-accent: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 15% * var(--darkmode)));--clr-accent-light: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 30%);--clr-accent-lightest: hsla(var(--h-accent), var(--s-accent), var(--l-accent), 10%);--clr-accent-light-opaque: hsl(var(--h-accent), var(--s-accent), calc(var(--l-accent) + 45% * var(--darkmode-minus)));--clr-accent-lightest-opaque: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) + 47% * var(--darkmode-minus)) );--clr-confirm: hsl(var(--h-confirm), var(--s-confirm), var(--l-confirm));--clr-error: hsl(var(--h-error), var(--s-error), var(--l-error));--clr-error-light: hsla(var(--h-error), var(--s-error), var(--l-error), 15%);--clr-error-lightest: hsla(var(--h-error), var(--s-error), var(--l-error), 5%);--clr-error-message-bgr: hsl(var(--h-error), var(--s-error), calc(var(--l-error) + 60% * var(--darkmode-minus)));--clr-txt: hsl(var(--h-foreground), var(--s-foreground), var(--l-foreground));--clr-txt-mid: hsl(var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 20% * var(--darkmode-minus)));--clr-txt-light: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 30% * var(--darkmode-minus)) );--clr-txt-lightest: hsl( var(--h-foreground), var(--s-foreground), calc(var(--l-foreground) + 50% * var(--darkmode-minus)) );--clr-shade-lv1: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 5%);--clr-shade-lv2: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 8%);--clr-shade-lv3: hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), 12%);--clr-generic-file-icon: var(--clr-txt-lightest);--border-light: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.1 - .05 * var(--darkmode)) * var(--borders)) );--border-mid: 1px solid hsla( var(--h-foreground), var(--s-foreground), var(--l-foreground), calc((.2 - .1 * var(--darkmode)) * var(--borders)) );--border-accent: 1px solid hsla(var(--h-accent), var(--s-accent), var(--l-accent), 1 * var(--borders));--border-dashed: 1px dashed hsla(var(--h-foreground), var(--s-foreground), var(--l-foreground), calc(.2 * var(--borders)));--clr-curtain: hsla(var(--h-background), var(--s-background), calc(var(--l-background)), 60%);--hsl-shadow: var(--h-shadow), var(--s-shadow), var(--l-shadow);--modal-shadow: 0px 0px 1px hsla(var(--hsl-shadow), calc((.3 + .65 * var(--darkmode)) * var(--shadows))), 0px 6px 20px hsla(var(--hsl-shadow), calc((.1 + .4 * var(--darkmode)) * var(--shadows)));--clr-btn-bgr-primary: var(--clr-accent);--clr-btn-bgr-primary-hover: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 4% * var(--darkmode-minus)) );--clr-btn-bgr-primary-active: hsl( var(--h-accent), var(--s-accent), calc(var(--l-accent) - 8% * var(--darkmode-minus)) );--clr-btn-txt-primary: hsl(var(--h-accent), var(--s-accent), 98%);--shadow-btn-primary: none;--clr-btn-bgr-secondary: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 3% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-hover: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 7% * var(--darkmode-minus)) );--clr-btn-bgr-secondary-active: hsl( var(--h-background), var(--s-background), calc(var(--l-background) - 12% * var(--darkmode-minus)) );--clr-btn-txt-secondary: var(--clr-txt-mid);--shadow-btn-secondary: none;--clr-btn-bgr-disabled: var(--clr-background);--clr-btn-txt-disabled: var(--clr-txt-lightest);--shadow-btn-disabled: none}@media only screen and (max-height: 600px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-h: 100%}}@media only screen and (max-width: 430px){:where(.lr-wgt-theme,.lr-wgt-common),:host{--modal-max-w: 100vw;--modal-max-h: var(--uploadcare-blocks-window-height)}}:where(.lr-wgt-theme,.lr-wgt-common),:host{color:var(--clr-txt);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}:where(.lr-wgt-theme,.lr-wgt-common) *,:host *{box-sizing:border-box}:where(.lr-wgt-theme,.lr-wgt-common) [hidden],:host [hidden]{display:none!important}:where(.lr-wgt-theme,.lr-wgt-common) [activity]:not([active]),:host [activity]:not([active]){display:none}:where(.lr-wgt-theme,.lr-wgt-common) dialog:not([open]) [activity],:host dialog:not([open]) [activity]{display:none}:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{display:flex;align-items:center;justify-content:center;height:var(--ui-size);padding-right:1.4em;padding-left:1.4em;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--border-radius-element);cursor:pointer;user-select:none}@media only screen and (max-width: 800px){:where(.lr-wgt-theme,.lr-wgt-common) button,:host button{padding-right:1em;padding-left:1em}}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn,:host button.primary-btn{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary);box-shadow:var(--shadow-btn-primary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:hover,:host button.primary-btn:hover{background-color:var(--clr-btn-bgr-primary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.primary-btn:active,:host button.primary-btn:active{background-color:var(--clr-btn-bgr-primary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn,:host button.secondary-btn{color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary);transition:background-color var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:hover,:host button.secondary-btn:hover{background-color:var(--clr-btn-bgr-secondary-hover)}:where(.lr-wgt-theme,.lr-wgt-common) button.secondary-btn:active,:host button.secondary-btn:active{background-color:var(--clr-btn-bgr-secondary-active)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn,:host button.mini-btn{width:var(--ui-size);height:var(--ui-size);padding:0;background-color:transparent;border:none;cursor:pointer;transition:var(--transition-duration) ease;color:var(--clr-txt)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:hover,:host button.mini-btn:hover{background-color:var(--clr-shade-lv1)}:where(.lr-wgt-theme,.lr-wgt-common) button.mini-btn:active,:host button.mini-btn:active{background-color:var(--clr-shade-lv2)}:where(.lr-wgt-theme,.lr-wgt-common) :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]),:host :is(button[disabled],button.primary-btn[disabled],button.secondary-btn[disabled]){color:var(--clr-btn-txt-disabled);background-color:var(--clr-btn-bgr-disabled);box-shadow:var(--shadow-btn-disabled);pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) a,:host a{color:var(--clr-accent);text-decoration:none}:where(.lr-wgt-theme,.lr-wgt-common) a[disabled],:host a[disabled]{pointer-events:none}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]{display:flex;width:100%;height:var(--ui-size);padding-right:.6em;padding-left:.6em;color:var(--clr-txt);font-size:1em;font-family:inherit;background-color:var(--clr-background-light);border:var(--border-light);border-radius:var(--border-radius-element);transition:var(--transition-duration)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text],:host input[type=text]::placeholder{color:var(--clr-txt-lightest)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:hover,:host input[type=text]:hover{border-color:var(--clr-accent-light)}:where(.lr-wgt-theme,.lr-wgt-common) input[type=text]:focus,:host input[type=text]:focus{border-color:var(--clr-accent);outline:none}:where(.lr-wgt-theme,.lr-wgt-common) input[disabled],:host input[disabled]{opacity:.6;pointer-events:none}lr-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size)}lr-icon svg{width:calc(var(--ui-size) / 2);height:calc(var(--ui-size) / 2)}lr-icon:not([raw]) path{fill:currentColor}lr-tabs{display:grid;grid-template-rows:min-content minmax(var(--ui-size),auto);height:100%;overflow:hidden;color:var(--clr-txt-lightest)}lr-tabs>.tabs-row{display:flex;grid-template-columns:minmax();background-color:var(--clr-background-light)}lr-tabs>.tabs-context{overflow-y:auto}lr-tabs .tabs-row>.tab{display:flex;flex-grow:1;align-items:center;justify-content:center;height:var(--ui-size);border-bottom:var(--border-light);cursor:pointer;transition:var(--transition-duration)}lr-tabs .tabs-row>.tab[current]{color:var(--clr-txt);border-color:var(--clr-txt)}lr-range{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--ui-size)}lr-range datalist{display:none}lr-range input{width:100%;height:100%;opacity:0}lr-range .track-wrapper{position:absolute;right:10px;left:10px;display:flex;align-items:center;justify-content:center;height:2px;user-select:none;pointer-events:none}lr-range .track{position:absolute;right:0;left:0;display:flex;align-items:center;justify-content:center;height:2px;background-color:currentColor;border-radius:2px;opacity:.5}lr-range .slider{position:absolute;width:16px;height:16px;background-color:currentColor;border-radius:100%;transform:translate(-50%)}lr-range .bar{position:absolute;left:0;height:100%;background-color:currentColor;border-radius:2px}lr-range .caption{position:absolute;display:inline-flex;justify-content:center}lr-color{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--ui-size);height:var(--ui-size);overflow:hidden;background-color:var(--clr-background);cursor:pointer}lr-color[current]{background-color:var(--clr-txt)}lr-color input[type=color]{position:absolute;display:block;width:100%;height:100%;opacity:0}lr-color .current-color{position:absolute;width:50%;height:50%;border:2px solid #fff;border-radius:100%;pointer-events:none}lr-config{display:none}lr-simple-btn{position:relative;display:inline-flex}lr-simple-btn button{padding-left:.2em!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-simple-btn button lr-icon svg{transform:scale(.8)}lr-simple-btn button:hover{background-color:var(--clr-btn-bgr-secondary-hover)}lr-simple-btn button:active{background-color:var(--clr-btn-bgr-secondary-active)}lr-simple-btn>lr-drop-area{display:contents}lr-simple-btn .visual-drop-area{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--gap-min);border:var(--border-dashed);border-radius:inherit;opacity:0;transition:border-color var(--transition-duration) ease,background-color var(--transition-duration) ease,opacity var(--transition-duration) ease}lr-simple-btn .visual-drop-area:before{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--clr-txt-light);background-color:var(--clr-background);border-radius:inherit;content:var(--l10n-drop-files-here)}lr-simple-btn>lr-drop-area[drag-state=active] .visual-drop-area{background-color:var(--clr-accent-lightest);opacity:1}lr-simple-btn>lr-drop-area[drag-state=inactive] .visual-drop-area{background-color:var(--clr-shade-lv1);opacity:0}lr-simple-btn>lr-drop-area[drag-state=near] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent-light);opacity:1}lr-simple-btn>lr-drop-area[drag-state=over] .visual-drop-area{background-color:var(--clr-accent-lightest);border-color:var(--clr-accent);opacity:1}lr-simple-btn>:where(lr-drop-area[drag-state="active"],lr-drop-area[drag-state="near"],lr-drop-area[drag-state="over"]) button{box-shadow:none}lr-simple-btn>lr-drop-area:after{content:""}lr-source-btn{display:flex;align-items:center;margin-bottom:var(--gap-min);padding:var(--gap-min) var(--gap-mid);color:var(--clr-txt-mid);border-radius:var(--border-radius-element);cursor:pointer;transition-duration:var(--transition-duration);transition-property:background-color,color;user-select:none}lr-source-btn:hover{color:var(--clr-accent);background-color:var(--clr-accent-lightest)}lr-source-btn:active{color:var(--clr-accent);background-color:var(--clr-accent-light)}lr-source-btn lr-icon{display:inline-flex;flex-grow:1;justify-content:center;min-width:var(--ui-size);margin-right:var(--gap-mid);opacity:.8}lr-source-btn[type=local]>.txt:after{content:var(--l10n-local-files)}lr-source-btn[type=camera]>.txt:after{content:var(--l10n-camera)}lr-source-btn[type=url]>.txt:after{content:var(--l10n-from-url)}lr-source-btn[type=other]>.txt:after{content:var(--l10n-other)}lr-source-btn .txt{display:flex;align-items:center;box-sizing:border-box;width:100%;height:var(--ui-size);padding:0;white-space:nowrap;border:none}lr-drop-area{padding:var(--gap-min);overflow:hidden;border:var(--border-dashed);border-radius:var(--border-radius-frame);transition:var(--transition-duration) ease}lr-drop-area,lr-drop-area .content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}lr-drop-area .text{position:relative;margin:var(--gap-mid);color:var(--clr-txt-light);transition:var(--transition-duration) ease}lr-drop-area[ghost][drag-state=inactive]{display:none;opacity:0}lr-drop-area[ghost]:not([fullscreen]):is([drag-state="active"],[drag-state="near"],[drag-state="over"]){background:var(--clr-background)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) :is(.text,.icon-container){color:var(--clr-accent)}lr-drop-area:is([drag-state="active"],[drag-state="near"],[drag-state="over"],:hover){color:var(--clr-accent);background:var(--clr-accent-lightest);border-color:var(--clr-accent-light)}lr-drop-area:is([drag-state="active"],[drag-state="near"]){opacity:1}lr-drop-area[drag-state=over]{border-color:var(--clr-accent);opacity:1}lr-drop-area[with-icon]{min-height:calc(var(--ui-size) * 6)}lr-drop-area[with-icon] .content-wrapper{display:flex;flex-direction:column}lr-drop-area[with-icon] .text{color:var(--clr-txt);font-weight:500;font-size:1.1em}lr-drop-area[with-icon] .icon-container{position:relative;width:calc(var(--ui-size) * 2);height:calc(var(--ui-size) * 2);margin:var(--gap-mid);overflow:hidden;color:var(--clr-txt);background-color:var(--clr-background);border-radius:50%;transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon{position:absolute;top:calc(50% - var(--ui-size) / 2);left:calc(50% - var(--ui-size) / 2);transition:var(--transition-duration) ease}lr-drop-area[with-icon] lr-icon:last-child{transform:translateY(calc(var(--ui-size) * 1.5))}lr-drop-area[with-icon]:hover .icon-container,lr-drop-area[with-icon]:hover .text{color:var(--clr-accent)}lr-drop-area[with-icon]:hover .icon-container{background-color:var(--clr-accent-lightest)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .icon-container{color:#fff;background-color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) .text{color:var(--clr-accent)}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[with-icon]>.content-wrapper:is([drag-state="active"],[drag-state="near"],[drag-state="over"]) lr-icon:last-child{transform:translateY(0)}lr-drop-area[with-icon]>.content-wrapper[drag-state=near] lr-icon:last-child{transform:scale(1.3)}lr-drop-area[with-icon]>.content-wrapper[drag-state=over] lr-icon:last-child{transform:scale(1.5)}lr-drop-area[fullscreen]{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--gap-mid) * 2);height:calc(100vh - var(--gap-mid) * 2);margin:var(--gap-mid)}lr-drop-area[fullscreen] .content-wrapper{width:100%;max-width:calc(var(--modal-normal-w) * .8);height:calc(var(--ui-size) * 6);color:var(--clr-txt);background-color:var(--clr-background-light);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:var(--transition-duration) ease}lr-drop-area[with-icon][fullscreen][drag-state=active]>.content-wrapper,lr-drop-area[with-icon][fullscreen][drag-state=near]>.content-wrapper{transform:translateY(var(--gap-mid));opacity:0}lr-drop-area[with-icon][fullscreen][drag-state=over]>.content-wrapper{transform:translateY(0);opacity:1}:is(lr-drop-area[with-icon][fullscreen])>.content-wrapper lr-icon:first-child{transform:translateY(calc(var(--ui-size) * -1.5))}lr-drop-area[clickable]{cursor:pointer}lr-modal{--modal-max-content-height: calc(var(--uploadcare-blocks-window-height, 100vh) - 4 * var(--gap-mid) - var(--ui-size));--modal-content-height-fill: var(--uploadcare-blocks-window-height, 100vh)}lr-modal[dialog-fallback]{--lr-z-max: 2147483647;position:fixed;z-index:var(--lr-z-max);display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;pointer-events:none;inset:0}lr-modal[dialog-fallback] dialog[open]{z-index:var(--lr-z-max);pointer-events:auto}lr-modal[dialog-fallback] dialog[open]+.backdrop{position:fixed;top:0;left:0;z-index:calc(var(--lr-z-max) - 1);align-items:center;justify-content:center;width:100vw;height:100vh;background-color:var(--clr-curtain);pointer-events:auto}lr-modal[strokes][dialog-fallback] dialog[open]+.backdrop{background-image:var(--modal-backdrop-background-image)}@supports selector(dialog::backdrop){lr-modal>dialog::backdrop{background-color:#0000001a}lr-modal[strokes]>dialog::backdrop{background-image:var(--modal-backdrop-background-image)}}lr-modal>dialog[open]{transform:translateY(0);visibility:visible;opacity:1}lr-modal>dialog:not([open]){transform:translateY(20px);visibility:hidden;opacity:0}lr-modal>dialog{display:flex;flex-direction:column;width:max-content;max-width:min(calc(100% - var(--gap-mid) * 2),calc(var(--modal-max-w) - var(--gap-mid) * 2));min-height:var(--ui-size);max-height:calc(var(--modal-max-h) - var(--gap-mid) * 2);margin:auto;padding:0;overflow:hidden;background-color:var(--clr-background-light);border:0;border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:transform calc(var(--transition-duration) * 2)}@media only screen and (max-width: 430px),only screen and (max-height: 600px){lr-modal>dialog>.content{height:var(--modal-max-content-height)}}lr-url-source{display:block;background-color:var(--clr-background-light)}lr-modal lr-url-source{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-url-source>.content{display:grid;grid-gap:var(--gap-small);grid-template-columns:1fr min-content;padding:var(--gap-mid);padding-top:0}lr-url-source .url-input{display:flex}lr-url-source .url-upload-btn:after{content:var(--l10n-upload-url)}lr-camera-source{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;overflow:hidden;background-color:var(--clr-background-light);border-radius:var(--border-radius-element)}lr-modal lr-camera-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:100vh;max-height:var(--modal-max-content-height)}lr-camera-source.initialized{height:max-content}@media only screen and (max-width: 430px){lr-camera-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-camera-source video{display:block;width:100%;max-height:100%;object-fit:contain;object-position:center center;background-color:var(--clr-background-dark);border-radius:var(--border-radius-element)}lr-camera-source .toolbar{position:absolute;bottom:0;display:flex;justify-content:space-between;width:100%;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-camera-source .content{display:flex;flex:1;justify-content:center;width:100%;padding:var(--gap-mid);padding-top:0;overflow:hidden}lr-camera-source .message-box{--padding: calc(var(--gap-max) * 2);display:flex;flex-direction:column;grid-gap:var(--gap-max);align-items:center;justify-content:center;padding:var(--padding) var(--padding) 0 var(--padding);color:var(--clr-txt)}lr-camera-source .message-box button{color:var(--clr-btn-txt-primary);background-color:var(--clr-btn-bgr-primary)}lr-camera-source .shot-btn{position:absolute;bottom:var(--gap-max);width:calc(var(--ui-size) * 1.8);height:calc(var(--ui-size) * 1.8);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;opacity:.85;transition:var(--transition-duration) ease}lr-camera-source .shot-btn:hover{transform:scale(1.05);opacity:1}lr-camera-source .shot-btn:active{background-color:var(--clr-txt-mid);opacity:1}lr-camera-source .shot-btn[disabled]{bottom:calc(var(--gap-max) * -1 - var(--gap-mid) - var(--ui-size) * 2)}lr-camera-source .shot-btn lr-icon svg{width:calc(var(--ui-size) / 1.5);height:calc(var(--ui-size) / 1.5)}lr-external-source{display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--clr-background-light);overflow:hidden}lr-modal lr-external-source{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height)}lr-external-source>.content{position:relative;display:grid;flex:1;grid-template-rows:1fr min-content}@media only screen and (max-width: 430px){lr-external-source{width:calc(100vw - var(--gap-mid) * 2);height:var(--modal-content-height-fill, 100%)}}lr-external-source iframe{display:block;width:100%;height:100%;border:none}lr-external-source .iframe-wrapper{overflow:hidden}lr-external-source .toolbar{display:grid;grid-gap:var(--gap-mid);grid-template-columns:max-content 1fr max-content max-content;align-items:center;width:100%;padding:var(--gap-mid);border-top:var(--border-light)}lr-external-source .back-btn{padding-left:0}lr-external-source .back-btn:after{content:var(--l10n-back)}lr-external-source .selected-counter{display:flex;grid-gap:var(--gap-mid);align-items:center;justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt-light)}lr-upload-list{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light);transition:opacity var(--transition-duration)}lr-modal lr-upload-list{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:max-content;max-height:var(--modal-max-content-height)}lr-upload-list .no-files{height:var(--ui-size);padding:var(--gap-max)}lr-upload-list .files{display:block;flex:1;min-height:var(--ui-size);padding:0 var(--gap-mid);overflow:auto}lr-upload-list .toolbar{display:flex;gap:var(--gap-small);justify-content:space-between;padding:var(--gap-mid);background-color:var(--clr-background-light)}lr-upload-list .toolbar .add-more-btn{padding-left:.2em}lr-upload-list .toolbar-spacer{flex:1}lr-upload-list lr-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--gap-mid) * 2);height:calc(100% - var(--gap-mid) * 2);margin:var(--gap-mid);border-radius:var(--border-radius-element)}lr-upload-list lr-activity-header>.header-text{padding:0 var(--gap-mid)}lr-start-from{display:block}lr-start-from .content{display:grid;grid-auto-flow:row;gap:var(--gap-max);width:100%;height:max-content;padding:var(--gap-max);overflow-y:auto;background-color:var(--clr-background-light)}lr-modal lr-start-from{width:min(calc(var(--modal-normal-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2))}lr-file-item{display:block}lr-file-item>.inner{position:relative;display:grid;grid-template-columns:32px 1fr max-content;gap:var(--gap-min);align-items:center;margin-bottom:var(--gap-small);padding:var(--gap-mid);overflow:hidden;font-size:.95em;background-color:var(--clr-background);border-radius:var(--border-radius-element);transition:var(--transition-duration)}lr-file-item:last-of-type>.inner{margin-bottom:0}lr-file-item>.inner[focused]{background-color:transparent}lr-file-item>.inner[uploading] .edit-btn{display:none}lr-file-item>:where(.inner[failed],.inner[limit-overflow]){background-color:var(--clr-error-lightest)}lr-file-item .thumb{position:relative;display:inline-flex;width:var(--ui-size);height:var(--ui-size);background-color:var(--clr-shade-lv1);background-position:center center;background-size:cover;border-radius:var(--border-radius-thumb)}lr-file-item .file-name-wrapper{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--gap-mid);padding-left:var(--gap-mid);overflow:hidden;color:var(--clr-txt-light);transition:color var(--transition-duration)}lr-file-item .file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}lr-file-item .file-error{display:none;color:var(--clr-error);font-size:.85em;line-height:130%}lr-file-item button.remove-btn,lr-file-item button.edit-btn{color:var(--clr-txt-lightest)!important}lr-file-item button.upload-btn{display:none}lr-file-item button:hover{color:var(--clr-txt-light)}lr-file-item .badge{position:absolute;top:calc(var(--ui-size) * -.13);right:calc(var(--ui-size) * -.13);width:calc(var(--ui-size) * .44);height:calc(var(--ui-size) * .44);color:var(--clr-background-light);background-color:var(--clr-txt);border-radius:50%;transform:scale(.3);opacity:0;transition:var(--transition-duration) ease}lr-file-item>.inner:where([failed],[limit-overflow],[finished]) .badge{transform:scale(1);opacity:1}lr-file-item>.inner[finished] .badge{background-color:var(--clr-confirm)}lr-file-item>.inner:where([failed],[limit-overflow]) .badge{background-color:var(--clr-error)}lr-file-item>.inner:where([failed],[limit-overflow]) .file-error{display:block}lr-file-item .badge lr-icon,lr-file-item .badge lr-icon svg{width:100%;height:100%}lr-file-item .progress-bar{top:calc(100% - 2px);height:2px}lr-file-item .file-actions{display:flex;gap:var(--gap-min);align-items:center;justify-content:center}lr-upload-details{display:flex;flex-direction:column;width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%);max-height:var(--modal-max-content-height);overflow:hidden;background-color:var(--clr-background-light)}lr-upload-details>.content{position:relative;display:grid;flex:1;grid-template-rows:auto min-content}lr-upload-details lr-tabs .tabs-context{position:relative}lr-upload-details .toolbar{display:grid;grid-template-columns:min-content min-content 1fr min-content;gap:var(--gap-mid);padding:var(--gap-mid);border-top:var(--border-light)}lr-upload-details .toolbar[edit-disabled]{display:flex;justify-content:space-between}lr-upload-details .remove-btn{padding-left:.5em}lr-upload-details .detail-btn{padding-left:0;color:var(--clr-txt);background-color:var(--clr-background)}lr-upload-details .edit-btn{padding-left:.5em}lr-upload-details .details{padding:var(--gap-max)}lr-upload-details .info-block{padding-top:var(--gap-max);padding-bottom:calc(var(--gap-max) + var(--gap-table));color:var(--clr-txt);border-bottom:var(--border-light)}lr-upload-details .info-block:first-of-type{padding-top:0}lr-upload-details .info-block:last-of-type{border-bottom:none}lr-upload-details .info-block>.info-block_name{margin-bottom:.4em;color:var(--clr-txt-light);font-size:.8em}lr-upload-details .cdn-link[disabled]{pointer-events:none}lr-upload-details .cdn-link[disabled]:before{filter:grayscale(1);content:var(--l10n-not-uploaded-yet)}lr-file-preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}lr-file-preview>lr-img{display:contents}lr-file-preview>lr-img>.img-view{position:absolute;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;object-fit:scale-down}lr-message-box{position:fixed;right:var(--gap-mid);bottom:var(--gap-mid);left:var(--gap-mid);z-index:100000;display:grid;grid-template-rows:min-content auto;color:var(--clr-txt);font-size:.9em;background:var(--clr-background);border-radius:var(--border-radius-frame);box-shadow:var(--modal-shadow);transition:calc(var(--transition-duration) * 2)}lr-message-box[inline]{position:static}lr-message-box:not([active]){transform:translateY(10px);visibility:hidden;opacity:0}lr-message-box[error]{color:var(--clr-error);background-color:var(--clr-error-message-bgr)}lr-message-box .heading{display:grid;grid-template-columns:min-content auto min-content;padding:var(--gap-mid)}lr-message-box .caption{display:flex;align-items:center;word-break:break-word}lr-message-box .heading button{width:var(--ui-size);padding:0;color:currentColor;background-color:transparent;opacity:var(--opacity-normal)}lr-message-box .heading button:hover{opacity:var(--opacity-hover)}lr-message-box .heading button:active{opacity:var(--opacity-active)}lr-message-box .msg{padding:var(--gap-max);padding-top:0;text-align:left}lr-confirmation-dialog{display:block;padding:var(--gap-mid);padding-top:var(--gap-max)}lr-confirmation-dialog .message{display:flex;justify-content:center;padding:var(--gap-mid);padding-bottom:var(--gap-max);font-weight:500;font-size:1.1em}lr-confirmation-dialog .toolbar{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-mid);margin-top:var(--gap-mid)}lr-progress-bar-common{position:fixed;right:0;bottom:0;left:0;z-index:10000;display:block;height:var(--gap-mid);background-color:var(--clr-background);transition:opacity .3s}lr-progress-bar-common:not([active]){opacity:0;pointer-events:none}lr-progress-bar{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}lr-progress-bar .progress{width:calc(var(--l-width) * 1%);height:100%;background-color:var(--clr-accent-light);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}lr-progress-bar .progress--unknown{width:100%;transform-origin:0% 50%;animation:lr-indeterminateAnimation 1s infinite linear}lr-progress-bar .progress--hidden{opacity:0}@keyframes lr-indeterminateAnimation{0%{transform:translate(0) scaleX(0)}40%{transform:translate(0) scaleX(.4)}to{transform:translate(100%) scaleX(.5)}}lr-activity-header{display:flex;gap:var(--gap-mid);justify-content:space-between;padding:var(--gap-mid);color:var(--clr-txt);font-weight:500;font-size:1em;line-height:var(--ui-size)}lr-activity-header lr-icon{height:var(--ui-size)}lr-activity-header>*{display:flex;align-items:center}lr-activity-header button{display:inline-flex;align-items:center;justify-content:center;color:var(--clr-txt-mid)}lr-activity-header button:hover{background-color:var(--clr-background)}lr-activity-header button:active{background-color:var(--clr-background-dark)}lr-copyright .credits{padding:0 var(--gap-mid) var(--gap-mid) calc(var(--gap-mid) * 1.5);color:var(--clr-txt-lightest);font-weight:400;font-size:.85em;opacity:.7;transition:var(--transition-duration) ease}lr-copyright .credits:hover{opacity:1}:host(.lr-cloud-image-editor) lr-icon,.lr-cloud-image-editor lr-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host(.lr-cloud-image-editor) lr-icon svg,.lr-cloud-image-editor lr-icon svg{width:unset;height:unset}:host(.lr-cloud-image-editor) lr-icon:not([raw]) path,.lr-cloud-image-editor lr-icon:not([raw]) path{stroke-linejoin:round;fill:none;stroke:currentColor;stroke-width:1.2}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--icon-rotate: "M13.5.399902L12 1.9999l1.5 1.6M12.0234 2H14.4C16.3882 2 18 3.61178 18 5.6V8M4 17h9c.5523 0 1-.4477 1-1V7c0-.55228-.4477-1-1-1H4c-.55228 0-1 .44771-1 1v9c0 .5523.44771 1 1 1z";--icon-mirror: "M5.00042.399902l-1.5 1.599998 1.5 1.6M15.0004.399902l1.5 1.599998-1.5 1.6M3.51995 2H16.477M8.50042 16.7V6.04604c0-.30141-.39466-.41459-.5544-.159L1.28729 16.541c-.12488.1998.01877.459.2544.459h6.65873c.16568 0 .3-.1343.3-.3zm2.99998 0V6.04604c0-.30141.3947-.41459.5544-.159L18.7135 16.541c.1249.1998-.0187.459-.2544.459h-6.6587c-.1657 0-.3-.1343-.3-.3z";--icon-flip: "M19.6001 4.99993l-1.6-1.5-1.6 1.5m3.2 9.99997l-1.6 1.5-1.6-1.5M18 3.52337V16.4765M3.3 8.49993h10.654c.3014 0 .4146-.39466.159-.5544L3.459 1.2868C3.25919 1.16192 3 1.30557 3 1.5412v6.65873c0 .16568.13432.3.3.3zm0 2.99997h10.654c.3014 0 .4146.3947.159.5544L3.459 18.7131c-.19981.1248-.459-.0188-.459-.2544v-6.6588c0-.1657.13432-.3.3-.3z";--icon-sad: "M2 17c4.41828-4 11.5817-4 16 0M16.5 5c0 .55228-.4477 1-1 1s-1-.44772-1-1 .4477-1 1-1 1 .44772 1 1zm-11 0c0 .55228-.44772 1-1 1s-1-.44772-1-1 .44772-1 1-1 1 .44772 1 1z";--icon-closeMax: "M3 3l14 14m0-14L3 17";--icon-crop: "M20 14H7.00513C6.45001 14 6 13.55 6 12.9949V0M0 6h13.0667c.5154 0 .9333.41787.9333.93333V20M14.5.399902L13 1.9999l1.5 1.6M13 2h2c1.6569 0 3 1.34315 3 3v2M5.5 19.5999l1.5-1.6-1.5-1.6M7 18H5c-1.65685 0-3-1.3431-3-3v-2";--icon-tuning: "M8 10h11M1 10h4M1 4.5h11m3 0h4m-18 11h11m3 0h4M12 4.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M5 10a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0M12 15.5a1.5 1.5 0 103 0 1.5 1.5 0 10-3 0";--icon-filters: "M4.5 6.5a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m-3.5 6a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0m7 0a5.5 5.5 0 1011 0 5.5 5.5 0 10-11 0";--icon-done: "M1 10.6316l5.68421 5.6842L19 4";--icon-original: "M0 40L40-.00000133";--icon-slider: "M0 10h11m0 0c0 1.1046.8954 2 2 2s2-.8954 2-2m-4 0c0-1.10457.8954-2 2-2s2 .89543 2 2m0 0h5";--icon-exposure: "M10 20v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M5 10a5 5 0 1010 0 5 5 0 10-10 0";--icon-contrast: "M2 10a8 8 0 1016 0 8 8 0 10-16 0m8-8v16m8-8h-8m7.5977 2.5H10m6.24 2.5H10m7.6-7.5H10M16.2422 5H10";--icon-brightness: "M15 10c0 2.7614-2.2386 5-5 5m5-5c0-2.76142-2.2386-5-5-5m5 5h-5m0 5c-2.76142 0-5-2.2386-5-5 0-2.76142 2.23858-5 5-5m0 10V5m0 15v-3M2.92946 2.92897l2.12132 2.12132M0 10h3m-.07054 7.071l2.12132-2.1213M10 0v3m7.0705 14.071l-2.1213-2.1213M20 10h-3m.0705-7.07103l-2.1213 2.12132M14.3242 7.5H10m4.3242 5H10";--icon-gamma: "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";--icon-enhance: "M19 13h-2m0 0c-2.2091 0-4-1.7909-4-4m4 4c-2.2091 0-4 1.7909-4 4m0-8V7m0 2c0 2.2091-1.7909 4-4 4m-2 0h2m0 0c2.2091 0 4 1.7909 4 4m0 0v2M8 8.5H6.5m0 0c-1.10457 0-2-.89543-2-2m2 2c-1.10457 0-2 .89543-2 2m0-4V5m0 1.5c0 1.10457-.89543 2-2 2M1 8.5h1.5m0 0c1.10457 0 2 .89543 2 2m0 0V12M12 3h-1m0 0c-.5523 0-1-.44772-1-1m1 1c-.5523 0-1 .44772-1 1m0-2V1m0 1c0 .55228-.44772 1-1 1M8 3h1m0 0c.55228 0 1 .44772 1 1m0 0v1";--icon-saturation: ' ';--icon-warmth: ' ';--icon-vibrance: ' '}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--l10n-cancel: "Cancel";--l10n-apply: "Apply";--l10n-brightness: "Brightness";--l10n-exposure: "Exposure";--l10n-gamma: "Gamma";--l10n-contrast: "Contrast";--l10n-saturation: "Saturation";--l10n-vibrance: "Vibrance";--l10n-warmth: "Warmth";--l10n-enhance: "Enhance";--l10n-original: "Original"}:host(.lr-cloud-image-editor),.lr-cloud-image-editor{--rgb-primary-accent: 6, 2, 196;--rgb-text-base: 0, 0, 0;--rgb-text-accent-contrast: 255, 255, 255;--rgb-fill-contrast: 255, 255, 255;--rgb-fill-shaded: 245, 245, 245;--rgb-shadow: 0, 0, 0;--rgb-error: 209, 81, 81;--opacity-shade-mid: .2;--color-primary-accent: rgb(var(--rgb-primary-accent));--color-text-base: rgb(var(--rgb-text-base));--color-text-accent-contrast: rgb(var(--rgb-text-accent-contrast));--color-text-soft: rgb(var(--rgb-fill-contrast));--color-text-error: rgb(var(--rgb-error));--color-fill-contrast: rgb(var(--rgb-fill-contrast));--color-modal-backdrop: rgba(var(--rgb-fill-shaded), .95);--color-image-background: rgba(var(--rgb-fill-shaded));--color-outline: rgba(var(--rgb-text-base), var(--opacity-shade-mid));--color-underline: rgba(var(--rgb-text-base), .08);--color-shade: rgba(var(--rgb-text-base), .02);--color-focus-ring: var(--color-primary-accent);--color-input-placeholder: rgba(var(--rgb-text-base), .32);--color-error: rgb(var(--rgb-error));--font-size-ui: 16px;--font-size-title: 18px;--font-weight-title: 500;--font-size-soft: 14px;--size-touch-area: 40px;--size-panel-heading: 66px;--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--border-radius-connect: 2px;--border-radius-editor: 3px;--border-radius-thumb: 4px;--border-radius-ui: 5px;--border-radius-base: 6px;--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--opacity-min: var(--opacity-shade-mid);--opacity-mid: .1;--opacity-max: .05;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--shadow-base: 0px 5px 15px rgba(var(--rgb-shadow), .1), 0px 1px 4px rgba(var(--rgb-shadow), .15);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}:host(.lr-cloud-image-editor) :is([can-handle-paste]:hover,[can-handle-paste]:focus),.lr-cloud-image-editor :is([can-handle-paste]:hover,[can-handle-paste]:focus){--can-handle-paste: "true"}:host(.lr-cloud-image-editor) :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover),.lr-cloud-image-editor :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover){--filter-effect: var(--hover-filter) !important;--opacity-effect: var(--hover-opacity) !important;--color-effect: var(--hover-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex]:active,[with-effects]:active),.lr-cloud-image-editor :is([tabindex]:active,[with-effects]:active){--filter-effect: var(--down-filter) !important;--opacity-effect: var(--down-opacity) !important;--color-effect: var(--down-color-rgb) !important}:host(.lr-cloud-image-editor) :is([tabindex][active],[with-effects][active]),.lr-cloud-image-editor :is([tabindex][active],[with-effects][active]){--filter-effect: var(--active-filter) !important;--opacity-effect: var(--active-opacity) !important;--color-effect: var(--active-color-rgb) !important}:host(.lr-cloud-image-editor) [hidden-scrollbar]::-webkit-scrollbar,.lr-cloud-image-editor [hidden-scrollbar]::-webkit-scrollbar{display:none}:host(.lr-cloud-image-editor) [hidden-scrollbar],.lr-cloud-image-editor [hidden-scrollbar]{-ms-overflow-style:none;scrollbar-width:none}:host(.lr-cloud-image-editor.editor_ON),.lr-cloud-image-editor.editor_ON{--modal-header-opacity: 0;--modal-header-height: 0px;--modal-toolbar-height: calc(var(--size-panel-heading) * 2)}:host(.lr-cloud-image-editor.editor_OFF),.lr-cloud-image-editor.editor_OFF{--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading)}:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-min-img-height: var(--modal-toolbar-height);--l-max-img-height: 100%;--l-edit-button-width: 120px;--l-toolbar-horizontal-padding: var(--cldtr-gap-mid-1);position:relative;display:grid;grid-template-rows:minmax(var(--l-min-img-height),var(--l-max-img-height)) minmax(var(--modal-toolbar-height),auto);height:100%;overflow:hidden;overflow-y:auto;transition:.3s}@media only screen and (max-width: 800px){:host(.lr-cloud-image-editor)>.wrapper,.lr-cloud-image-editor>.wrapper{--l-edit-button-width: 70px;--l-toolbar-horizontal-padding: var(--cldtr-gap-min)}}:host(.lr-cloud-image-editor)>.wrapper>.viewport,.lr-cloud-image-editor>.wrapper>.viewport{display:flex;align-items:center;justify-content:center;overflow:hidden}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image{--viewer-image-opacity: 1;position:absolute;top:0;left:0;z-index:10;display:block;box-sizing:border-box;width:100%;height:100%;object-fit:scale-down;background-color:var(--color-image-background);transform:scale(1);opacity:var(--viewer-image-opacity);user-select:none;pointer-events:auto}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_visible_viewer,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_visible_viewer{transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-4)}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_to_cropper{--viewer-image-opacity: 0;background-image:var(--transparent-pixel);transform:scale(1);transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container>.image.image_hidden_effects,.lr-cloud-image-editor>.wrapper>.viewport>.image_container>.image.image_hidden_effects{--viewer-image-opacity: 0;transform:scale(1);transition:opacity var(--transition-duration-3) cubic-bezier(.5,0,1,1),transform var(--transition-duration-4);pointer-events:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.image_container,.lr-cloud-image-editor>.wrapper>.viewport>.image_container{position:relative;display:block;width:100%;height:100%;background-color:var(--color-image-background);transition:var(--transition-duration-3)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar,.lr-cloud-image-editor>.wrapper>.toolbar{position:relative;transition:.3s}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content{position:absolute;bottom:0;left:0;box-sizing:border-box;width:100%;height:var(--modal-toolbar-height);min-height:var(--size-panel-heading);background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__viewer{display:flex;align-items:center;justify-content:space-between;height:var(--size-panel-heading);padding-right:var(--l-toolbar-horizontal-padding);padding-left:var(--l-toolbar-horizontal-padding)}:host(.lr-cloud-image-editor)>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor,.lr-cloud-image-editor>.wrapper>.toolbar>.toolbar_content.toolbar_content__editor{display:flex}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.info_pan,.lr-cloud-image-editor>.wrapper>.viewport>.info_pan{position:absolute;user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer{position:absolute;z-index:2;display:flex;max-width:120px;transform:translate(-40px);user-select:none}:host(.lr-cloud-image-editor)>.wrapper>.viewport>.file_type_outer>.file_type,.lr-cloud-image-editor>.wrapper>.viewport>.file_type_outer>.file_type{padding:4px .8em}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash,.lr-cloud-image-editor>.wrapper>.network_problems_splash{position:absolute;z-index:4;display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--color-fill-contrast)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:rgba(var(--rgb-text-base),.6);background-color:rgba(var(--rgb-fill-shaded));border-radius:50%}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_content>.network_problems_text{margin-top:var(--cldtr-gap-max);font-size:var(--font-size-ui)}:host(.lr-cloud-image-editor)>.wrapper>.network_problems_splash>.network_problems_footer,.lr-cloud-image-editor>.wrapper>.network_problems_splash>.network_problems_footer{display:flex;align-items:center;justify-content:center;height:var(--size-panel-heading)}lr-crop-frame>.svg{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);opacity:inherit;transition:var(--transition-duration-3)}lr-crop-frame>.thumb{--idle-color-rgb: var(--color-text-base);--hover-color-rgb: var(--color-primary-accent);--focus-color-rgb: var(--color-primary-accent);--down-color-rgb: var(--color-primary-accent);--color-effect: var(--idle-color-rgb);color:var(--color-effect);transition:color var(--transition-duration-3),opacity var(--transition-duration-3)}lr-crop-frame>.thumb--visible{opacity:1;pointer-events:auto}lr-crop-frame>.thumb--hidden{opacity:0;pointer-events:none}lr-crop-frame>.guides{transition:var(--transition-duration-3)}lr-crop-frame>.guides--hidden{opacity:0}lr-crop-frame>.guides--semi-hidden{opacity:.2}lr-crop-frame>.guides--visible{opacity:1}lr-editor-button-control,lr-editor-crop-button-control,lr-editor-filter-control,lr-editor-operation-control{--l-base-min-width: 40px;--l-base-height: var(--l-base-min-width);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--filter-effect: var(--idle-filter);--idle-color-rgb: var(--rgb-text-base);--idle-opacity: .05;--idle-filter: 1;--hover-color-rgb: var(--idle-color-rgb);--hover-opacity: .08;--hover-filter: .8;--down-color-rgb: var(--hover-color-rgb);--down-opacity: .12;--down-filter: .6;position:relative;display:grid;grid-template-columns:var(--l-base-min-width) auto;align-items:center;height:var(--l-base-height);color:rgba(var(--idle-color-rgb));outline:none;cursor:pointer;transition:var(--l-width-transition)}lr-editor-button-control.active,lr-editor-operation-control.active,lr-editor-crop-button-control.active,lr-editor-filter-control.active{--idle-color-rgb: var(--rgb-primary-accent)}lr-editor-filter-control.not_active .preview[loaded]{opacity:1}lr-editor-filter-control.active .preview{opacity:0}lr-editor-button-control.not_active,lr-editor-operation-control.not_active,lr-editor-crop-button-control.not_active,lr-editor-filter-control.not_active{--idle-color-rgb: var(--rgb-text-base)}lr-editor-button-control>.before,lr-editor-operation-control>.before,lr-editor-crop-button-control>.before,lr-editor-filter-control>.before{position:absolute;right:0;left:0;z-index:-1;width:100%;height:100%;background-color:rgba(var(--color-effect),var(--opacity-effect));border-radius:var(--border-radius-editor);transition:var(--transition-duration-3)}lr-editor-button-control>.title,lr-editor-operation-control>.title,lr-editor-crop-button-control>.title,lr-editor-filter-control>.title{padding-right:var(--cldtr-gap-mid-1);font-size:.7em;letter-spacing:1.004px;text-transform:uppercase}lr-editor-filter-control>.preview{position:absolute;right:0;left:0;z-index:1;width:100%;height:var(--l-base-height);background-repeat:no-repeat;background-size:contain;border-radius:var(--border-radius-editor);opacity:0;filter:brightness(var(--filter-effect));transition:var(--transition-duration-3)}lr-editor-filter-control>.original-icon{color:var(--color-text-base);opacity:.3}lr-editor-image-cropper{position:absolute;top:0;left:0;z-index:10;display:block;width:100%;height:100%;opacity:0;pointer-events:none;touch-action:none}lr-editor-image-cropper.active_from_editor{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.active_from_viewer{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}lr-editor-image-cropper.inactive_to_editor{opacity:0;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1),opacity var(--transition-duration-3) calc(var(--transition-duration-3) + .05s);pointer-events:none}lr-editor-image-cropper>.canvas{position:absolute;top:0;left:0;z-index:1;display:block;width:100%;height:100%}lr-editor-image-fader{position:absolute;top:0;left:0;display:block;width:100%;height:100%}lr-editor-image-fader.active_from_viewer{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-start);pointer-events:auto}lr-editor-image-fader.active_from_cropper{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:auto}lr-editor-image-fader.inactive_to_cropper{z-index:3;transform:scale(1);opacity:0;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}lr-editor-image-fader .fader-image{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:scale-down;transform:scale(1);user-select:none;content-visibility:auto}lr-editor-image-fader .fader-image--preview{background-color:var(--color-image-background);border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);transform:scale(1);opacity:0;transition:var(--transition-duration-3)}lr-editor-scroller{display:flex;align-items:center;width:100%;height:100%;overflow-x:scroll}lr-editor-slider{display:flex;align-items:center;justify-content:center;width:100%;height:66px}lr-editor-toolbar{position:relative;width:100%;height:100%}@media only screen and (max-width: 600px){lr-editor-toolbar{--l-tab-gap: var(--cldtr-gap-mid-1);--l-slider-padding: var(--cldtr-gap-min);--l-controls-padding: var(--cldtr-gap-min)}}@media only screen and (min-width: 601px){lr-editor-toolbar{--l-tab-gap: calc(var(--cldtr-gap-mid-1) + var(--cldtr-gap-max));--l-slider-padding: var(--cldtr-gap-mid-1);--l-controls-padding: var(--cldtr-gap-mid-1)}}lr-editor-toolbar>.toolbar-container{position:relative;width:100%;height:100%;overflow:hidden}lr-editor-toolbar>.toolbar-container>.sub-toolbar{position:absolute;display:grid;grid-template-rows:1fr 1fr;width:100%;height:100%;background-color:var(--color-fill-contrast);transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-3) ease-in-out,visibility var(--transition-duration-3) ease-in-out}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--visible{transform:translateY(0);opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--top-hidden{transform:translateY(100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar.sub-toolbar--bottom-hidden{transform:translateY(-100%);opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row{display:flex;align-items:center;justify-content:space-between;padding-right:var(--l-controls-padding);padding-left:var(--l-controls-padding)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles{position:relative;display:grid;grid-auto-flow:column;grid-gap:0px var(--l-tab-gap);align-items:center;height:100%}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggles_indicator{position:absolute;bottom:0;left:0;width:var(--size-touch-area);height:2px;background-color:var(--color-primary-accent);transform:translate(0);transition:transform var(--transition-duration-3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row{position:relative}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content{position:absolute;top:0;left:0;display:flex;width:100%;height:100%;overflow:hidden;opacity:0;content-visibility:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--visible{opacity:1;pointer-events:auto}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content.tab-content--hidden{opacity:0;pointer-events:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--visible{display:contents}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles>.tab-toggle.tab-toggle--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.controls-row>.tab-toggles.tab-toggles--hidden{display:none}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_align{display:grid;grid-template-areas:". inner .";grid-template-columns:1fr auto 1fr;box-sizing:border-box;min-width:100%;padding-left:var(--cldtr-gap-max)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner{display:grid;grid-area:inner;grid-auto-flow:column;grid-gap:calc((var(--cldtr-gap-min) - 1px) * 3)}lr-editor-toolbar>.toolbar-container>.sub-toolbar>.tab-content-row>.tab-content .controls-list_inner:last-child{padding-right:var(--cldtr-gap-max)}lr-editor-toolbar .controls-list_last-item{margin-right:var(--cldtr-gap-max)}lr-editor-toolbar .info-tooltip_container{position:absolute;display:flex;align-items:flex-start;justify-content:center;width:100%;height:100%}lr-editor-toolbar .info-tooltip_wrapper{position:absolute;top:calc(-100% - var(--cldtr-gap-mid-2));display:flex;flex-direction:column;justify-content:flex-end;height:100%;pointer-events:none}lr-editor-toolbar .info-tooltip{z-index:3;padding-top:calc(var(--cldtr-gap-min) / 2);padding-right:var(--cldtr-gap-min);padding-bottom:calc(var(--cldtr-gap-min) / 2);padding-left:var(--cldtr-gap-min);color:var(--color-text-base);font-size:.7em;letter-spacing:1px;text-transform:uppercase;background-color:var(--color-text-accent-contrast);border-radius:var(--border-radius-editor);transform:translateY(100%);opacity:0;transition:var(--transition-duration-3)}lr-editor-toolbar .info-tooltip_visible{transform:translateY(0);opacity:1}lr-editor-toolbar .slider{padding-right:var(--l-slider-padding);padding-left:var(--l-slider-padding)}lr-btn-ui{--filter-effect: var(--idle-brightness);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--l-transition-effect: var(--css-transition, color var(--transition-duration-2), filter var(--transition-duration-2));display:inline-flex;align-items:center;box-sizing:var(--css-box-sizing, border-box);height:var(--css-height, var(--size-touch-area));padding-right:var(--css-padding-right, var(--cldtr-gap-mid-1));padding-left:var(--css-padding-left, var(--cldtr-gap-mid-1));color:rgba(var(--color-effect),var(--opacity-effect));outline:none;cursor:pointer;filter:brightness(var(--filter-effect));transition:var(--l-transition-effect);user-select:none}lr-btn-ui .text{white-space:nowrap}lr-btn-ui .icon{display:flex;align-items:center;justify-content:center;color:rgba(var(--color-effect),var(--opacity-effect));filter:brightness(var(--filter-effect));transition:var(--l-transition-effect)}lr-btn-ui .icon_left{margin-right:var(--cldtr-gap-mid-1);margin-left:0}lr-btn-ui .icon_right{margin-right:0;margin-left:var(--cldtr-gap-mid-1)}lr-btn-ui .icon_single{margin-right:0;margin-left:0}lr-btn-ui .icon_hidden{display:none;margin:0}lr-btn-ui.primary{--idle-color-rgb: var(--rgb-primary-accent);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--idle-color-rgb);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.boring{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-text-base);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: 1;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-btn-ui.default{--idle-color-rgb: var(--rgb-text-base);--idle-brightness: 1;--idle-opacity: .6;--hover-color-rgb: var(--rgb-primary-accent);--hover-brightness: 1;--hover-opacity: 1;--down-color-rgb: var(--hover-color-rgb);--down-brightness: .75;--down-opacity: 1;--active-color-rgb: var(--rgb-primary-accent);--active-brightness: 1;--active-opacity: 1}lr-line-loader-ui{position:absolute;top:0;left:0;z-index:9999;width:100%;height:2px;opacity:.5}lr-line-loader-ui .inner{width:25%;max-width:200px;height:100%}lr-line-loader-ui .line{width:100%;height:100%;background-color:var(--color-primary-accent);transform:translate(-101%);transition:transform 1s}lr-slider-ui{--l-thumb-size: 24px;--l-zero-dot-size: 5px;--l-zero-dot-offset: 2px;--idle-color-rgb: var(--rgb-text-base);--hover-color-rgb: var(--rgb-primary-accent);--down-color-rgb: var(--rgb-primary-accent);--color-effect: var(--idle-color-rgb);--l-color: rgb(var(--color-effect));position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:calc(var(--l-thumb-size) + (var(--l-zero-dot-size) + var(--l-zero-dot-offset)) * 2)}lr-slider-ui .thumb{position:absolute;left:0;width:var(--l-thumb-size);height:var(--l-thumb-size);background-color:var(--l-color);border-radius:50%;transform:translate(0);opacity:1;transition:opacity var(--transition-duration-2)}lr-slider-ui .steps{position:absolute;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:100%;padding-right:calc(var(--l-thumb-size) / 2);padding-left:calc(var(--l-thumb-size) / 2)}lr-slider-ui .border-step{width:0px;height:10px;border-right:1px solid var(--l-color);opacity:.6;transition:var(--transition-duration-2)}lr-slider-ui .minor-step{width:0px;height:4px;border-right:1px solid var(--l-color);opacity:.2;transition:var(--transition-duration-2)}lr-slider-ui .zero-dot{position:absolute;top:calc(100% - var(--l-zero-dot-offset) * 2);left:calc(var(--l-thumb-size) / 2 - var(--l-zero-dot-size) / 2);width:var(--l-zero-dot-size);height:var(--l-zero-dot-size);background-color:var(--color-primary-accent);border-radius:50%;opacity:0;transition:var(--transition-duration-3)}lr-slider-ui .input{position:absolute;width:calc(100% - 10px);height:100%;margin:0;cursor:pointer;opacity:0}lr-presence-toggle.transition{transition:opacity var(--transition-duration-3),visibility var(--transition-duration-3)}lr-presence-toggle.visible{opacity:1;pointer-events:inherit}lr-presence-toggle.hidden{opacity:0;pointer-events:none}ctx-provider{--color-text-base: black;--color-primary-accent: blue;display:flex;align-items:center;justify-content:center;width:190px;height:40px;padding-right:10px;padding-left:10px;background-color:#f5f5f5;border-radius:3px}lr-cloud-image-editor-activity{position:relative;display:flex;width:100%;height:100%;overflow:hidden;background-color:var(--clr-background-light)}lr-modal lr-cloud-image-editor-activity{width:min(calc(var(--modal-max-w) - var(--gap-mid) * 2),calc(100vw - var(--gap-mid) * 2));height:var(--modal-content-height-fill, 100%)}lr-select{display:inline-flex}lr-select>button{position:relative;display:inline-flex;align-items:center;padding-right:0!important;color:var(--clr-btn-txt-secondary);background-color:var(--clr-btn-bgr-secondary);box-shadow:var(--shadow-btn-secondary)}lr-select>button>select{position:absolute;display:block;width:100%;height:100%;opacity:0} diff --git a/web/lr-file-uploader-regular.min.js b/web/lr-file-uploader-regular.min.js index b19df09fd..9be3e9ac2 100644 --- a/web/lr-file-uploader-regular.min.js +++ b/web/lr-file-uploader-regular.min.js @@ -24,4 +24,4 @@ * */ var kr=Object.defineProperty;var Or=(s,i,t)=>i in s?kr(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t;var h=(s,i,t)=>(Or(s,typeof i!="symbol"?i+"":i,t),t);var Lr=Object.defineProperty,Ur=(s,i,t)=>i in s?Lr(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t,bi=(s,i,t)=>(Ur(s,typeof i!="symbol"?i+"":i,t),t);function Rr(s){let i=t=>{var e;for(let r in t)((e=t[r])==null?void 0:e.constructor)===Object&&(t[r]=i(t[r]));return{...t}};return i(s)}var $=class{constructor(s){s.constructor===Object?this.store=Rr(s):(this._storeIsProxy=!0,this.store=s),this.callbackMap=Object.create(null)}static warn(s,i){console.warn(`Symbiote Data: cannot ${s}. Prop name: `+i)}read(s){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?($.warn("read",s),null):this.store[s]}has(s){return this._storeIsProxy?this.store[s]!==void 0:this.store.hasOwnProperty(s)}add(s,i,t=!1){!t&&Object.keys(this.store).includes(s)||(this.store[s]=i,this.notify(s))}pub(s,i){if(!this._storeIsProxy&&!this.store.hasOwnProperty(s)){$.warn("publish",s);return}this.store[s]=i,this.notify(s)}multiPub(s){for(let i in s)this.pub(i,s[i])}notify(s){this.callbackMap[s]&&this.callbackMap[s].forEach(i=>{i(this.store[s])})}sub(s,i,t=!0){return!this._storeIsProxy&&!this.store.hasOwnProperty(s)?($.warn("subscribe",s),null):(this.callbackMap[s]||(this.callbackMap[s]=new Set),this.callbackMap[s].add(i),t&&i(this.store[s]),{remove:()=>{this.callbackMap[s].delete(i),this.callbackMap[s].size||delete this.callbackMap[s]},callback:i})}static registerCtx(s,i=Symbol()){let t=$.globalStore.get(i);return t?console.warn('State: context UID "'+i+'" already in use'):(t=new $(s),$.globalStore.set(i,t)),t}static deleteCtx(s){$.globalStore.delete(s)}static getCtx(s,i=!0){return $.globalStore.get(s)||(i&&console.warn('State: wrong context UID - "'+s+'"'),null)}};$.globalStore=new Map;var C=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"}),ss="1234567890QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm",Pr=ss.length-1,Yt=class{static generate(s="XXXXXXXXX-XXX"){let i="";for(let t=0;t{li&&t?i[0].toUpperCase()+i.slice(1):i).join("").split("_").map((i,t)=>i&&t?i.toUpperCase():i).join("")}function Nr(s,i){[...s.querySelectorAll(`[${C.REPEAT_ATTR}]`)].forEach(t=>{let e=t.getAttribute(C.REPEAT_ITEM_TAG_ATTR),r;if(e&&(r=window.customElements.get(e)),!r){r=class extends i.BaseComponent{constructor(){super(),e||(this.style.display="contents")}};let o=t.innerHTML;r.template=o,r.reg(e)}for(;t.firstChild;)t.firstChild.remove();let n=t.getAttribute(C.REPEAT_ATTR);i.sub(n,o=>{if(!o){for(;t.firstChild;)t.firstChild.remove();return}let l=[...t.children],a,c=u=>{u.forEach((p,m)=>{if(l[m])if(l[m].set$)setTimeout(()=>{l[m].set$(p)});else for(let f in p)l[m][f]=p[f];else{a||(a=new DocumentFragment);let f=new r;Object.assign(f.init$,p),a.appendChild(f)}}),a&&t.appendChild(a);let d=l.slice(u.length,l.length);for(let p of d)p.remove()};if(o.constructor===Array)c(o);else if(o.constructor===Object){let u=[];for(let d in o){let p=o[d];Object.defineProperty(p,"_KEY_",{value:d,enumerable:!0}),u.push(p)}c(u)}else console.warn("Symbiote repeat data type error:"),console.log(o)}),t.removeAttribute(C.REPEAT_ATTR),t.removeAttribute(C.REPEAT_ITEM_TAG_ATTR)})}var es="__default__";function Dr(s,i){if(i.shadowRoot)return;let t=[...s.querySelectorAll("slot")];if(!t.length)return;let e={};t.forEach(r=>{let n=r.getAttribute("name")||es;e[n]={slot:r,fr:document.createDocumentFragment()}}),i.initChildren.forEach(r=>{var n;let o=es;r instanceof Element&&r.hasAttribute("slot")&&(o=r.getAttribute("slot"),r.removeAttribute("slot")),(n=e[o])==null||n.fr.appendChild(r)}),Object.values(e).forEach(r=>{if(r.fr.childNodes.length)r.slot.parentNode.replaceChild(r.fr,r.slot);else if(r.slot.childNodes.length){let n=document.createDocumentFragment();n.append(...r.slot.childNodes),r.slot.parentNode.replaceChild(n,r.slot)}else r.slot.remove()})}function Fr(s,i){[...s.querySelectorAll(`[${C.EL_REF_ATTR}]`)].forEach(t=>{let e=t.getAttribute(C.EL_REF_ATTR);i.ref[e]=t,t.removeAttribute(C.EL_REF_ATTR)})}function Vr(s,i){[...s.querySelectorAll(`[${C.BIND_ATTR}]`)].forEach(t=>{let r=t.getAttribute(C.BIND_ATTR).split(";");[...t.attributes].forEach(n=>{if(n.name.startsWith("-")&&n.value){let o=Mr(n.name.replace("-",""));r.push(o+":"+n.value),t.removeAttribute(n.name)}}),r.forEach(n=>{if(!n)return;let o=n.split(":").map(u=>u.trim()),l=o[0],a;l.indexOf(C.ATTR_BIND_PRFX)===0&&(a=!0,l=l.replace(C.ATTR_BIND_PRFX,""));let c=o[1].split(",").map(u=>u.trim());for(let u of c){let d;u.startsWith("!!")?(d="double",u=u.replace("!!","")):u.startsWith("!")&&(d="single",u=u.replace("!","")),i.sub(u,p=>{d==="double"?p=!!p:d==="single"&&(p=!p),a?(p==null?void 0:p.constructor)===Boolean?p?t.setAttribute(l,""):t.removeAttribute(l):t.setAttribute(l,p):rs(t,l,p)||(t[C.SET_LATER_KEY]||(t[C.SET_LATER_KEY]=Object.create(null)),t[C.SET_LATER_KEY][l]=p)})}}),t.removeAttribute(C.BIND_ATTR)})}var Ce="{{",Kt="}}",Br="skip-text";function zr(s){let i,t=[],e=document.createTreeWalker(s,NodeFilter.SHOW_TEXT,{acceptNode:r=>{var n;return!((n=r.parentElement)!=null&&n.hasAttribute(Br))&&r.textContent.includes(Ce)&&r.textContent.includes(Kt)&&1}});for(;i=e.nextNode();)t.push(i);return t}var jr=function(s,i){zr(s).forEach(e=>{let r=[],n;for(;e.textContent.includes(Kt);)e.textContent.startsWith(Ce)?(n=e.textContent.indexOf(Kt)+Kt.length,e.splitText(n),r.push(e)):(n=e.textContent.indexOf(Ce),e.splitText(n)),e=e.nextSibling;r.forEach(o=>{let l=o.textContent.replace(Ce,"").replace(Kt,"");o.textContent="",i.sub(l,a=>{o.textContent=a})})})},Hr=[Nr,Dr,Fr,Vr,jr],we="'",Mt='"',Wr=/\\([0-9a-fA-F]{1,6} ?)/g;function Xr(s){return(s[0]===Mt||s[0]===we)&&(s[s.length-1]===Mt||s[s.length-1]===we)}function qr(s){return(s[0]===Mt||s[0]===we)&&(s=s.slice(1)),(s[s.length-1]===Mt||s[s.length-1]===we)&&(s=s.slice(0,-1)),s}function Gr(s){let i="",t="";for(var e=0;eString.fromCodePoint(parseInt(e.trim(),16))),i=i.replaceAll(`\\ -`,"\\n"),i=Gr(i),i=Mt+i+Mt);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${s}`)}}var is=0,Pt=null,ht=null,bt=class extends HTMLElement{constructor(){super(),bi(this,"updateCssData",()=>{var s;this.dropCssDataCache(),(s=this.__boundCssProps)==null||s.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 bt}initCallback(){}__initCallback(){var s;this.__initialized||(this.__initialized=!0,(s=this.initCallback)==null||s.call(this))}render(s,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let r=this.getAttribute(C.USE_TPL);if(r){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(r))||document.querySelector(r);o?s=o.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)t=s;else if((s==null?void 0:s.constructor)===String){let r=document.createElement("template");r.innerHTML=s,t=r.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let r of this.tplProcessors)r(t,this)}let e=()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()};if(this.constructor.__shadowStylesUrl){i=!0;let r=document.createElement("link");r.rel="stylesheet",r.href=this.constructor.__shadowStylesUrl,r.onload=e,this.shadowRoot.prepend(r)}else e()}addTemplateProcessor(s){this.tplProcessors.add(s)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=Yt.generate(),this.style.setProperty(C.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(C.CSS_CTX_PROP,!0)}get ctxName(){var s;let i=((s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=$.registerCtx({},this)),this.__localCtx}get nodeCtx(){return $.getCtx(this.ctxName,!1)||$.registerCtx({},this.ctxName)}static __parseProp(s,i){let t,e;if(s.startsWith(C.EXT_DATA_CTX_PRFX))t=i.nodeCtx,e=s.replace(C.EXT_DATA_CTX_PRFX,"");else if(s.includes(C.NAMED_DATA_CTX_SPLTR)){let r=s.split(C.NAMED_DATA_CTX_SPLTR);t=$.getCtx(r[0]),e=r[1]}else t=i.localCtx,e=s;return{ctx:t,name:e}}sub(s,i,t=!0){let e=n=>{this.isConnected&&i(n)},r=bt.__parseProp(s,this);r.ctx.has(r.name)?this.allSubs.add(r.ctx.sub(r.name,e,t)):window.setTimeout(()=>{this.allSubs.add(r.ctx.sub(r.name,e,t))})}notify(s){let i=bt.__parseProp(s,this);i.ctx.notify(i.name)}has(s){let i=bt.__parseProp(s,this);return i.ctx.has(i.name)}add(s,i,t=!1){let e=bt.__parseProp(s,this);e.ctx.add(e.name,i,t)}add$(s,i=!1){for(let t in s)this.add(t,s[t],i)}get $(){if(!this.__stateProxy){let s=Object.create(null);this.__stateProxy=new Proxy(s,{set:(i,t,e)=>{let r=bt.__parseProp(t,this);return r.ctx.pub(r.name,e),!0},get:(i,t)=>{let e=bt.__parseProp(t,this);return e.ctx.read(e.name)}})}return this.__stateProxy}set$(s,i=!1){for(let t in s){let e=s[t];i||![String,Number,Boolean].includes(e==null?void 0:e.constructor)?this.$[t]=e:this.$[t]!==e&&(this.$[t]=e)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(C.CTX_OWNER_ATTR)&&this.getAttribute(C.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let s=this.constructor.__attrDesc;if(s)for(let i of Object.values(s))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(C.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(C.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(C.NAMED_DATA_CTX_SPLTR)){let t=i.split(C.NAMED_DATA_CTX_SPLTR),e=t[0].trim(),r=t[1].trim();if(e&&r){let n=$.getCtx(e,!1);n||(n=$.registerCtx({},e)),n.add(r,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var s;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim();if(i&&this.style.setProperty(C.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[C.SET_LATER_KEY]){for(let t in this[C.SET_LATER_KEY])rs(this,t,this[C.SET_LATER_KEY][t]);delete this[C.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of Hr)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${C.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let r=this.constructor.__rootStylesLink.cloneNode(!0);r.setAttribute(C.ROOT_STYLE_ATTR_NAME,this.constructor.is),r.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(r):t.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);ht==null||ht.delete(this.updateCssData),ht!=null&&ht.size||(Pt==null||Pt.disconnect(),Pt=null,ht=null)},100)))}static reg(s,i=!1){s||(is++,s=`${C.AUTO_TAG_PRFX}-${is}`),this.__tag=s;let t=window.customElements.get(s);if(t){!i&&t!==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(` `));return}window.customElements.define(s,i?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,i,t){var e;if(i===t)return;let r=(e=this.constructor.__attrDesc)==null?void 0:e[s];r?this.__dataCtxInitialized?this.$[r]=t:this.init$[r]=t:this[s]=t}getCssData(s,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(s)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(s).trim();try{this.__cssDataCache[s]=Kr(t)}catch{!i&&console.warn(`CSS Data error: ${s}`),this.__cssDataCache[s]=null}}return this.__cssDataCache[s]}__extractCssName(s){return s.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){ht||(ht=new Set),ht.add(this.updateCssData),Pt||(Pt=new MutationObserver(s=>{s[0].type==="attributes"&&ht.forEach(i=>{i()})}),Pt.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(s,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(s);let t=this.getCssData(this.__extractCssName(s),!0);t===null&&(t=i),this.add(s,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(s,i,t){let e="__"+s;this[e]=this[s],Object.defineProperty(this,s,{set:r=>{this[e]=r,t?window.setTimeout(()=>{i==null||i(r)}):i==null||i(r)},get:()=>this[e]}),this[s]=this[e]}static set shadowStyles(s){let i=new Blob([s],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(s){if(!this.__rootStylesLink){let i=new Blob([s],{type:"text/css"}),t=URL.createObjectURL(i),e=document.createElement("link");e.href=t,e.rel="stylesheet",this.__rootStylesLink=e}}},Nt=bt;bi(Nt,"template");var _i=class{static _print(s){console.warn(s)}static setDefaultTitle(s){this.defaultTitle=s}static setRoutingMap(s){Object.assign(this.appMap,s);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}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(t=>{if(t.includes("?"))s.route=t.replace("?","");else if(t.includes("=")){let e=t.split("=");s.options[e[0]]=decodeURI(e[1])}else s.options[t]=!0}),s}static notify(){let s=this.readAddressBar(),i=this.appMap[s.route];if(i&&i.title&&(document.title=i.title),s.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${s.route}" not found...`);return}let t=new CustomEvent(_i.routingEventName,{detail:{route:s.route,options:Object.assign(i||{},s.options)}});window.dispatchEvent(t)}static reflect(s,i={}){let t=this.appMap[s];if(!t){this._print("Wrong route: "+s);return}let e="?"+s;for(let n in i)i[n]===!0?e+=this.separator+n:e+=this.separator+n+`=${i[n]}`;let r=t.title||this.defaultTitle||"";window.history.pushState(null,r,e),document.title=r}static applyRoute(s,i={}){this.reflect(s,i),this.notify()}static setSeparator(s){this._separator=s}static get separator(){return this._separator||"&"}static createRouterData(s,i){this.setRoutingMap(i);let t=$.registerCtx({route:null,options:null,title:null},s);return window.addEventListener(this.routingEventName,e=>{var r;t.multiPub({route:e.detail.route,options:e.detail.options,title:((r=e.detail.options)==null?void 0:r.title)||this.defaultTitle||""})}),_i.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};_i.appMap=Object.create(null);function yi(s,i){for(let t in i)t.includes("-")?s.style.setProperty(t,i[t]):s.style[t]=i[t]}function Yr(s,i){for(let t in i)i[t].constructor===Boolean?i[t]?s.setAttribute(t,""):s.removeAttribute(t):s.setAttribute(t,i[t])}function Zt(s={tag:"div"}){let i=document.createElement(s.tag);if(s.attributes&&Yr(i,s.attributes),s.styles&&yi(i,s.styles),s.properties)for(let t in s.properties)i[t]=s.properties[t];return s.processors&&s.processors.forEach(t=>{t(i)}),s.children&&s.children.forEach(t=>{let e=Zt(t);i.appendChild(e)}),i}var ns="idb-store-ready",Zr="symbiote-db",Jr="symbiote-idb-update_",Qr=class{_notifyWhenReady(s=null){window.dispatchEvent(new CustomEvent(ns,{detail:{dbName:this.name,storeName:this.storeName,event:s}}))}get _updEventName(){return Jr+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,i){this.name=s,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=e=>{this._notifyWhenReady(e)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async r=>{r(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(s){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(s);return new Promise((e,r)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?e(n.target.result._value):(e(null),console.warn(`IDB: cannot read "${s}"`))},t.onerror=n=>{r(n)}})}write(s,i,t=!1){let e={_key:s,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(e);return new Promise((o,l)=>{n.onsuccess=a=>{t||this._notifySubscribers(s),o(a.target.result)},n.onerror=a=>{l(a)}})}delete(s,i=!1){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(s);return new Promise((r,n)=>{e.onsuccess=o=>{i||this._notifySubscribers(s),r(o)},e.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,e)=>{i.onsuccess=r=>{let n=r.target.result;t(n.map(o=>o._value))},i.onerror=r=>{e(r)}})}subscribe(s,i){this._subscriptionsMap[s]||(this._subscriptionsMap[s]=new Set);let t=this._subscriptionsMap[s];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[s]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,os.clear(this.name)}},os=class{static get readyEventName(){return ns}static open(s=Zr,i="store"){let t=s+"/"+i;return this._reg[t]||(this._reg[t]=new Qr(s,i)),this._reg[t]}static clear(s){window.indexedDB.deleteDatabase(s);for(let i in this._reg)i.split("/")[0]===s&&delete this._reg[i]}};bi(os,"_reg",Object.create(null));var S=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),tn=Object.freeze({[S.UPLOAD_START]:"LR_UPLOAD_START",[S.REMOVE]:"LR_REMOVE",[S.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[S.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[S.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[S.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[S.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[S.DATA_OUTPUT]:"LR_DATA_OUTPUT",[S.DONE_FLOW]:"LR_DONE_FLOW",[S.INIT_FLOW]:"LR_INIT_FLOW"}),Te=class{constructor(i){h(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var r;(r=this._target)==null||r.dispatchEvent(new CustomEvent(i,{detail:t}));let e=tn[i];window.dispatchEvent(new CustomEvent(e,{detail:{ctx:this._getCtxName(),type:e,data:t}}))}emit(i,t,{debounce:e}={}){if(typeof e!="number"&&!e){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let r=typeof e=="number"?e:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},r);this._timeoutStore.set(i,n)}};function I(s,i){let t,e=(...r)=>{clearTimeout(t),t=setTimeout(()=>s(...r),i)};return e.cancel=()=>{clearTimeout(t)},e}var en="--uploadcare-blocks-window-height",Ee="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function vi(){return typeof window[Ee]=="undefined"?!1:!!window[Ee]}function ls(){if(vi())return;let s=()=>{document.documentElement.style.setProperty(en,`${window.innerHeight}px`),window[Ee]=!0},i=I(s,100);return window.addEventListener("resize",i,{passive:!0}),s(),()=>{window[Ee]=!1,window.removeEventListener("resize",i)}}var xe=(s,i)=>new Intl.PluralRules(s).select(i);var sn=s=>s,Ci="{{",cs="}}",as="plural:";function Jt(s,i,t={}){var o;let{openToken:e=Ci,closeToken:r=cs,transform:n=sn}=t;for(let l in i){let a=(o=i[l])==null?void 0:o.toString();s=s.replaceAll(e+l+r,typeof a=="string"?n(a):a)}return s}function hs(s){let i=[],t=s.indexOf(Ci);for(;t!==-1;){let e=s.indexOf(cs,t),r=s.substring(t+2,e);if(r.startsWith(as)){let n=s.substring(t+2,e).replace(as,""),o=n.substring(0,n.indexOf("(")),l=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:r,pluralKey:o,countVariable:l})}t=s.indexOf(Ci,e)}return i}var ut=s=>{var i;return(i=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:i.map(t=>t.toLowerCase()).join("-")};var Ae=({element:s,attribute:i,onSuccess:t,onTimeout:e,timeout:r=300})=>{let n=setTimeout(()=>{a.disconnect(),e()},r),o=c=>{let u=s.getAttribute(i);c.type==="attributes"&&c.attributeName===i&&u!==null&&(clearTimeout(n),a.disconnect(),t(u))},l=s.getAttribute(i);l!==null&&(clearTimeout(n),t(l));let a=new MutationObserver(c=>{let u=c[c.length-1];o(u)});a.observe(s,{attributes:!0,attributeFilter:[i]})};var us=new Set;function Qt(s){us.has(s)||(us.add(s),console.warn(s))}function ds(s){return Object.prototype.toString.call(s)==="[object Object]"}var rn=/\W|_/g;function nn(s){return s.split(rn).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}function ps(s,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(s)?s.map(t=>ft(t,{ignoreKeys:i})):s}function ft(s,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(s))return ps(s,{ignoreKeys:i});if(!ds(s))return s;let t={};for(let e of Object.keys(s)){let r=s[e];if(i.includes(e)){t[e]=r;continue}ds(r)?r=ft(r,{ignoreKeys:i}):Array.isArray(r)&&(r=ps(r,{ignoreKeys:i})),t[nn(e)]=r}return t}var on=s=>new Promise(i=>setTimeout(i,s));function Si({libraryName:s,libraryVersion:i,userAgent:t,publicKey:e="",integration:r=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:e,libraryName:s,libraryVersion:i,languageName:n,integration:r});let o=[s,i,e].filter(Boolean).join("/"),l=[n,r].filter(Boolean).join("; ");return`${o} (${l})`}var ln={factor:2,time:100};function an(s,i=ln){let t=0;function e(r){let n=Math.round(i.time*i.factor**t);return r({attempt:t,retry:l=>on(l!=null?l:n).then(()=>(t+=1,e(r)))})}return e(s)}var Dt=class extends Error{constructor(t){super();h(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,Dt.prototype),this.originalProgressEvent=t}},Se=(s,i)=>{s&&(s.aborted?Promise.resolve().then(i):s.addEventListener("abort",()=>i(),{once:!0}))},yt=class extends Error{constructor(t="Request canceled"){super(t);h(this,"isCancel",!0);Object.setPrototypeOf(this,yt.prototype)}},cn=500,ms=({check:s,interval:i=cn,timeout:t,signal:e})=>new Promise((r,n)=>{let o,l;Se(e,()=>{o&&clearTimeout(o),n(new yt("Poll cancelled"))}),t&&(l=setTimeout(()=>{o&&clearTimeout(o),n(new yt("Timed out"))},t));let a=()=>{try{Promise.resolve(s(e)).then(c=>{c?(l&&clearTimeout(l),r(c)):o=setTimeout(a,i)}).catch(c=>{l&&clearTimeout(l),n(c)})}catch(c){l&&clearTimeout(l),n(c)}};o=setTimeout(a,0)}),x={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"},Ie="application/octet-stream",gs="original",vt=({method:s,url:i,data:t,headers:e={},signal:r,onProgress:n})=>new Promise((o,l)=>{let a=new XMLHttpRequest,c=(s==null?void 0:s.toUpperCase())||"GET",u=!1;a.open(c,i,!0),e&&Object.entries(e).forEach(d=>{let[p,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&a.setRequestHeader(p,m)}),a.responseType="text",Se(r,()=>{u=!0,a.abort(),l(new yt)}),a.onload=()=>{if(a.status!=200)l(new Error(`Error ${a.status}: ${a.statusText}`));else{let d={method:c,url:i,data:t,headers:e||void 0,signal:r,onProgress:n},p=a.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};p.forEach(function(A){let E=A.split(": "),T=E.shift(),w=E.join(": ");T&&typeof T!="undefined"&&(m[T]=w)});let f=a.response,_=a.status;o({request:d,data:f,headers:m,status:_})}},a.onerror=d=>{u||l(new Dt(d))},n&&typeof n=="function"&&(a.upload.onprogress=d=>{d.lengthComputable?n({isComputable:!0,value:d.loaded/d.total}):n({isComputable:!1})}),t?a.send(t):a.send()});function hn(s,...i){return s}var un=({name:s})=>s?[s]:[],dn=hn,pn=()=>new FormData,_s=s=>!1,ke=s=>typeof Blob!="undefined"&&s instanceof Blob,Oe=s=>typeof File!="undefined"&&s instanceof File,Le=s=>!!s&&typeof s=="object"&&!Array.isArray(s)&&"uri"in s&&typeof s.uri=="string",Ft=s=>ke(s)||Oe(s)||_s()||Le(s),fn=s=>typeof s=="string"||typeof s=="number"||typeof s=="undefined",mn=s=>!!s&&typeof s=="object"&&!Array.isArray(s),gn=s=>!!s&&typeof s=="object"&&"data"in s&&Ft(s.data);function _n(s,i,t){if(gn(t)){let{name:e,contentType:r}=t,n=dn(t.data,e,r!=null?r:Ie),o=un({name:e,contentType:r});s.push([i,n,...o])}else if(mn(t))for(let[e,r]of Object.entries(t))typeof r!="undefined"&&s.push([`${i}[${e}]`,String(r)]);else fn(t)&&t&&s.push([i,t.toString()])}function bn(s){let i=[];for(let[t,e]of Object.entries(s))_n(i,t,e);return i}function Ii(s){let i=pn(),t=bn(s);for(let e of t){let[r,n,...o]=e;i.append(r,n,...o)}return i}var R=class extends Error{constructor(t,e,r,n,o){super();h(this,"isCancel");h(this,"code");h(this,"request");h(this,"response");h(this,"headers");this.name="UploadClientError",this.message=t,this.code=e,this.request=r,this.response=n,this.headers=o,Object.setPrototypeOf(this,R.prototype)}},yn=s=>{let i=new URLSearchParams;for(let[t,e]of Object.entries(s))e&&typeof e=="object"&&!Array.isArray(e)?Object.entries(e).filter(r=>{var n;return(n=r[1])!=null?n:!1}).forEach(r=>i.set(`${t}[${r[0]}]`,String(r[1]))):Array.isArray(e)?e.forEach(r=>{i.append(`${t}[]`,r)}):typeof e=="string"&&e?i.set(t,e):typeof e=="number"&&i.set(t,e.toString());return i.toString()},dt=(s,i,t)=>{let e=new URL(s);return e.pathname=(e.pathname+i).replace("//","/"),t&&(e.search=yn(t)),e.toString()},vn="6.8.0",Cn="UploadcareUploadClient",wn=vn;function It(s){return Si({libraryName:Cn,libraryVersion:wn,...s})}var Tn="RequestThrottledError",fs=15e3,En=1e3;function xn(s){let{headers:i}=s||{};if(!i||typeof i["retry-after"]!="string")return fs;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:fs}function Ct(s,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:e}=i;return an(({attempt:r,retry:n})=>s().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===Tn&&r{let i="";return(ke(s)||Oe(s)||Le(s))&&(i=s.type),i||Ie},ys=s=>{let i="";return Oe(s)&&s.name?i=s.name:ke(s)||_s()?i="":Le(s)&&s.name&&(i=s.name),i||gs};function ki(s){return typeof s=="undefined"||s==="auto"?"auto":s?"1":"0"}function An(s,{publicKey:i,fileName:t,contentType:e,baseURL:r=x.baseURL,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(r,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({file:{data:s,name:t||ys(s),contentType:e||bs(s)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:ki(l),signature:n,expire:o,source:u,metadata:_}),signal:a,onProgress:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var Ei;(function(s){s.Token="token",s.FileInfo="file_info"})(Ei||(Ei={}));function $n(s,{publicKey:i,baseURL:t=x.baseURL,store:e,fileName:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,source:c="url",signal:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},url:dt(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:s,store:ki(e),filename:r,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:l,expire:a,source:c,metadata:_}),signal:u}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var j;(function(s){s.Unknown="unknown",s.Waiting="waiting",s.Progress="progress",s.Error="error",s.Success="success"})(j||(j={}));var Sn=s=>"status"in s&&s.status===j.Error;function In(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=x.retryNetworkErrorMaxTimes}={}){return Ct(()=>vt({method:"GET",headers:i?{"X-UC-User-Agent":It({publicKey:i,integration:r,userAgent:n})}:void 0,url:dt(t,"/from_url/status/",{jsonerrors:1,token:s}),signal:e}).then(({data:a,headers:c,request:u})=>{let d=ft(JSON.parse(a));if("error"in d&&!Sn(d))throw new R(d.error.content,void 0,u,d,c);return d}),{retryNetworkErrorMaxTimes:l,retryThrottledRequestMaxTimes:o})}function kn(s,{publicKey:i,baseURL:t=x.baseURL,jsonpCallback:e,secureSignature:r,secureExpire:n,signal:o,source:l,integration:a,userAgent:c,retryThrottledRequestMaxTimes:u=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:a,userAgent:c})},url:dt(t,"/group/",{jsonerrors:1,pub_key:i,files:s,callback:e,signature:r,expire:n,source:l}),signal:o}).then(({data:p,headers:m,request:f})=>{let _=ft(JSON.parse(p));if("error"in _)throw new R(_.error.content,_.error.errorCode,f,_,m);return _}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:u})}function vs(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,source:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"GET",headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},url:dt(t,"/info/",{jsonerrors:1,pub_key:i,file_id:s,source:r}),signal:e}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function On(s,{publicKey:i,contentType:t,fileName:e,multipartChunkSize:r=x.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:l,store:a,signal:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({filename:e||gs,size:s,content_type:t||Ie,part_size:r,UPLOADCARE_STORE:ki(a),UPLOADCARE_PUB_KEY:i,signature:o,expire:l,source:u,metadata:_}),signal:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w.parts=Object.keys(w.parts).map(B=>w.parts[B]),w}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})}function Ln(s,i,{contentType:t,signal:e,onProgress:r,retryThrottledRequestMaxTimes:n=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"PUT",url:i,data:s,onProgress:r,signal:e,headers:{"Content-Type":t||Ie}}).then(l=>(r&&r({isComputable:!0,value:1}),l)).then(({status:l})=>({code:l})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}function Un(s,{publicKey:i,baseURL:t=x.baseURL,source:e="local",signal:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",url:dt(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},data:Ii({uuid:s,UPLOADCARE_PUB_KEY:i,source:e}),signal:r}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function Oi(s,{publicKey:i,baseURL:t,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l,signal:a,onProgress:c}){return ms({check:u=>vs(s,{publicKey:i,baseURL:t,signal:u,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:a})}function Rn(s){return"defaultEffects"in s}var pt=class{constructor(i,{baseCDN:t=x.baseCDN,fileName:e}={}){h(this,"uuid");h(this,"name",null);h(this,"size",null);h(this,"isStored",null);h(this,"isImage",null);h(this,"mimeType",null);h(this,"cdnUrl",null);h(this,"s3Url",null);h(this,"originalFilename",null);h(this,"imageInfo",null);h(this,"videoInfo",null);h(this,"contentInfo",null);h(this,"metadata",null);h(this,"s3Bucket",null);h(this,"defaultEffects",null);let{uuid:r,s3Bucket:n}=i,o=dt(t,`${r}/`),l=n?dt(`https://${n}.s3.amazonaws.com/`,`${r}/${i.filename}`):null;this.uuid=r,this.name=e||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=l,Rn(i)&&(this.defaultEffects=i.defaultEffects)}},Pn=(s,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,contentType:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,baseCDN:_,metadata:A})=>An(s,{publicKey:i,fileName:t,contentType:l,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:A}).then(({file:E})=>Oi(E,{publicKey:i,baseURL:e,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(E=>new pt(E,{baseCDN:_})),Mn=(s,{publicKey:i,fileName:t,baseURL:e,signal:r,onProgress:n,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u,baseCDN:d})=>vs(s,{publicKey:i,baseURL:e,signal:r,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u}).then(p=>new pt(p,{baseCDN:d,fileName:t})).then(p=>(n&&n({isComputable:!0,value:1}),p)),Nn=(s,{signal:i}={})=>{let t=null,e=null,r=s.map(()=>new AbortController),n=o=>()=>{e=o,r.forEach((l,a)=>a!==o&&l.abort())};return Se(i,()=>{r.forEach(o=>o.abort())}),Promise.all(s.map((o,l)=>{let a=n(l);return Promise.resolve().then(()=>o({stopRace:a,signal:r[l].signal})).then(c=>(a(),c)).catch(c=>(t=c,null))})).then(o=>{if(e===null)throw t;return o[e]})},Dn=window.WebSocket,xi=class{constructor(){h(this,"events",Object.create({}))}emit(i,t){var e;(e=this.events[i])==null||e.forEach(r=>r(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(e=>e!==t):this.events[i]=[]}},Fn=(s,i)=>s==="success"?{status:j.Success,...i}:s==="progress"?{status:j.Progress,...i}:{status:j.Error,...i},Ai=class{constructor(i,t=3e4){h(this,"key");h(this,"disconnectTime");h(this,"ws");h(this,"queue",[]);h(this,"isConnected",!1);h(this,"subscribers",0);h(this,"emmitter",new xi);h(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Dn(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let e=JSON.parse(t.data.toString());switch(e.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(e.channel,Fn(e.event,JSON.parse(e.data)))}})}}disconnect(){let i=()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var r;let e=JSON.stringify({event:i,data:t});(r=this.ws)==null||r.send(e)}subscribe(i,t){this.subscribers+=1,this.connect();let e=`task-status-${i}`,r={event:"pusher:subscribe",data:{channel:e}};this.emmitter.on(e,t),this.isConnected?this.send(r.event,r.data):this.queue.push(r)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,e={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(e.event,e.data):this.queue=this.queue.filter(r=>r.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}},wi=null,Li=s=>{if(!wi){let i=typeof window=="undefined"?0:3e4;wi=new Ai(s,i)}return wi},Vn=s=>{Li(s).connect()};function Bn({token:s,publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:l,signal:a}){return ms({check:c=>In(s,{publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:c}).then(u=>{switch(u.status){case j.Error:return new R(u.error,u.errorCode);case j.Waiting:return!1;case j.Unknown:return new R(`Token "${s}" was not found.`);case j.Progress:return l&&(u.total==="unknown"?l({isComputable:!1}):l({isComputable:!0,value:u.done/u.total})),!1;case j.Success:return l&&l({isComputable:!0,value:u.done/u.total}),u;default:throw new Error("Unknown status")}}),signal:a})}var zn=({token:s,pusherKey:i,signal:t,onProgress:e})=>new Promise((r,n)=>{let o=Li(i),l=o.onError(n),a=()=>{l(),o.unsubscribe(s)};Se(t,()=>{a(),n(new yt("pusher cancelled"))}),o.subscribe(s,c=>{switch(c.status){case j.Progress:{e&&(c.total==="unknown"?e({isComputable:!1}):e({isComputable:!0,value:c.done/c.total}));break}case j.Success:{a(),e&&e({isComputable:!0,value:c.done/c.total}),r(c);break}case j.Error:a(),n(new R(c.msg,c.error_code))}})}),jn=(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,onProgress:d,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,pusherKey:A=x.pusherKey,metadata:E})=>Promise.resolve(Vn(A)).then(()=>$n(s,{publicKey:i,fileName:t,baseURL:e,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,metadata:E})).catch(T=>{let w=Li(A);return w==null||w.disconnect(),Promise.reject(T)}).then(T=>T.type===Ei.FileInfo?T:Nn([({signal:w})=>Bn({token:T.token,publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:w}),({signal:w})=>zn({token:T.token,pusherKey:A,signal:w,onProgress:d})],{signal:u})).then(T=>{if(T instanceof R)throw T;return T}).then(T=>Oi(T.uuid,{publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:u})).then(T=>new pt(T,{baseCDN:r})),Ti=new WeakMap,Hn=async s=>{if(Ti.has(s))return Ti.get(s);let i=await fetch(s.uri).then(t=>t.blob());return Ti.set(s,i),i},Cs=async s=>{if(Oe(s)||ke(s))return s.size;if(Le(s))return(await Hn(s)).size;throw new Error("Unknown file type. Cannot determine file size.")},Wn=(s,i=x.multipartMinFileSize)=>s>=i,ws=s=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!Ft(s)&&t.test(s)},Ui=s=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!Ft(s)&&t.test(s)},Xn=(s,i)=>new Promise((t,e)=>{let r=[],n=!1,o=i.length,l=[...i],a=()=>{let c=i.length-l.length,u=l.shift();u&&u().then(d=>{n||(r[c]=d,o-=1,o?a():t(r))}).catch(d=>{n=!0,e(d)})};for(let c=0;c{let r=e*i,n=Math.min(r+e,t);return s.slice(r,n)},Gn=async(s,i,t)=>e=>qn(s,e,i,t),Kn=(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})=>Ln(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a}),Yn=async(s,{publicKey:i,fileName:t,fileSize:e,baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,contentType:_,multipartChunkSize:A=x.multipartChunkSize,maxConcurrentRequests:E=x.maxConcurrentRequests,baseCDN:T,metadata:w})=>{let B=e!=null?e:await Cs(s),at,St=(U,z)=>{if(!c)return;at||(at=Array(U).fill(0));let J=tt=>tt.reduce((ct,gi)=>ct+gi,0);return tt=>{tt.isComputable&&(at[z]=tt.value,c({isComputable:!0,value:J(at)/U}))}};return _||(_=bs(s)),On(B,{publicKey:i,contentType:_,fileName:t||ys(s),baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:w}).then(async({uuid:U,parts:z})=>{let J=await Gn(s,B,A);return Promise.all([U,Xn(E,z.map((tt,ct)=>()=>Kn(J(ct),tt,{publicKey:i,contentType:_,onProgress:St(z.length,ct),signal:a,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})))])}).then(([U])=>Un(U,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})).then(U=>U.isReady?U:Oi(U.uuid,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(U=>new pt(U,{baseCDN:T}))};async function Ri(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartMinFileSize:_,multipartChunkSize:A,maxConcurrentRequests:E,baseCDN:T=x.baseCDN,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,pusherKey:at,metadata:St}){if(Ft(s)){let U=await Cs(s);return Wn(U,_)?Yn(s,{publicKey:i,contentType:f,multipartChunkSize:A,fileSize:U,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,maxConcurrentRequests:E,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St}):Pn(s,{publicKey:i,fileName:t,contentType:f,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St})}if(Ui(s))return jn(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:T,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,pusherKey:at,metadata:St});if(ws(s))return Mn(s,{publicKey:i,fileName:t,baseURL:e,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T});throw new TypeError(`File uploading from "${s}" is not supported`)}var $i=class{constructor(i,{baseCDN:t=x.baseCDN}={}){h(this,"uuid");h(this,"filesCount");h(this,"totalSize");h(this,"isStored");h(this,"isImage");h(this,"cdnUrl");h(this,"files");h(this,"createdAt");h(this,"storedAt",null);this.uuid=i.id,this.filesCount=i.filesCount;let e=i.files.filter(Boolean);this.totalSize=Object.values(e).reduce((r,n)=>r+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(e).filter(r=>r.isImage).length,this.cdnUrl=i.cdnUrl,this.files=e.map(r=>new pt(r,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}},Zn=s=>{for(let i of s)if(!Ft(i))return!1;return!0},Jn=s=>{for(let i of s)if(!ws(i))return!1;return!0},Qn=s=>{for(let i of s)if(!Ui(i))return!1;return!0};function Ts(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_=x.multipartChunkSize,baseCDN:A=x.baseCDN,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T,jsonpCallback:w}){if(!Zn(s)&&!Qn(s)&&!Jn(s))throw new TypeError(`Group uploading from "${s}" is not supported`);let B,at=!0,St=s.length,U=(z,J)=>{if(!a)return;B||(B=Array(z).fill(0));let tt=ct=>ct.reduce((gi,Ir)=>gi+Ir)/z;return ct=>{if(!ct.isComputable||!at){at=!1,a({isComputable:!1});return}B[J]=ct.value,a({isComputable:!0,value:tt(B)})}};return Promise.all(s.map((z,J)=>Ft(z)||Ui(z)?Ri(z,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:U(St,J),source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_,baseCDN:A,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T}).then(tt=>tt.uuid):z)).then(z=>kn(z,{publicKey:i,baseURL:e,jsonpCallback:w,secureSignature:r,secureExpire:n,signal:l,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m}).then(J=>new $i(J,{baseCDN:A})).then(J=>(a&&a({isComputable:!0,value:1}),J)))}var $e=class{constructor(i){h(this,"_concurrency",1);h(this,"_pending",[]);h(this,"_running",0);h(this,"_resolvers",new Map);h(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(e),this._rejectors.delete(e),this._running-=1,this._run()}).then(o=>r(o)).catch(o=>n(o))}}add(i){return new Promise((t,e)=>{this._resolvers.set(i,t),this._rejectors.set(i,e),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};var Pi=()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),Mi=s=>({...Pi(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{s.set$({"*modalActive":!1,"*currentActivity":""})}}),Ue=s=>({...Mi(s),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new $e(1)});function Es(s,i){[...s.querySelectorAll("[l10n]")].forEach(t=>{let e=t.getAttribute("l10n"),r="textContent";if(e.includes(":")){let o=e.split(":");r=o[0],e=o[1]}let n="l10n:"+e;i.__l10nKeys.push(n),i.add(n,e),i.sub(n,o=>{t[r]=i.l10n(o)}),t.removeAttribute("l10n")})}var H=s=>`*cfg/${s}`;var Ni="lr-",b=class extends Nt{constructor(){super();h(this,"requireCtxName",!1);h(this,"allowCustomTemplate",!0);h(this,"init$",Pi());h(this,"updateCtxCssData",()=>{Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let e of t)e.isConnected&&e.updateCssData()});this.activityType=null,this.addTemplateProcessor(Es),this.__l10nKeys=[]}l10n(t,e={}){if(!t)return"";let r=this.getCssData("--l10n-"+t,!0)||t,n=hs(r);for(let l of n)e[l.variable]=this.pluralize(l.pluralKey,Number(e[l.countVariable]));return Jt(r,e)}pluralize(t,e){let r=this.l10n("locale-name")||"en-US",n=xe(r,e);return this.l10n(`${t}__${n}`)}emit(t,e,r){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,e,r)}applyL10nKey(t,e){let r="l10n:"+t;this.$[r]=e,this.__l10nKeys.push(t)}hasBlockInCtx(t){let e=this.$["*blocksRegistry"];for(let r of e)if(t(r))return!0;return!1}setOrAddState(t,e){this.add$({[t]:e},!0)}setActivity(t){if(this.hasBlockInCtx(e=>e.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Ni}${t}`,!0),vi()||(this._destroyInnerHeightTracker=ls()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?Ae({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new Te(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,e=2){let r=["B","KB","MB","GB","TB"],n=c=>this.getCssData("--l10n-unit-"+c.toLowerCase(),!0)||c;if(t===0)return`0 ${n(r[0])}`;let o=1024,l=e<0?0:e,a=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**a).toFixed(l))+" "+n(r[a])}proxyUrl(t){let e=this.cfg.secureDeliveryProxy;return e?Jt(e,{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(e,r,n)=>{if(typeof r!="string")return!1;let o=H(r);return this.$[o]=n,!0},get:(e,r)=>{let n=H(r),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${ut(r)}`))}})}return this.__cfgProxy}subConfigValue(t,e){let r=this.parseCfgProp(H(t));r.ctx.has(r.name)?this.sub(H(t),e):(this.bindCssData(`--cfg-${ut(t)}`),this.sub(`--cfg-${ut(t)}`,e))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Ni)?t:Ni+t)}};h(b,"StateConsumerScope",null),h(b,"className","");var xs="active",te="___ACTIVITY_IS_ACTIVE___",et=class extends b{constructor(){super(...arguments);h(this,"historyTracked",!1);h(this,"init$",Mi(this));h(this,"_debouncedHistoryFlush",I(this._historyFlush.bind(this),10))}_deactivate(){var e;let t=et._activityRegistry[this.activityKey];this[te]=!1,this.removeAttribute(xs),(e=t==null?void 0:t.deactivateCallback)==null||e.call(t)}_activate(){var e;let t=et._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[te]=!0,this.setAttribute(xs,""),(e=t==null?void 0:t.activateCallback)==null||e.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[te]?this._deactivate():this.activityType===t&&!this[te]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!et._activityRegistry[this.activityKey]}get isActivityActive(){return this[te]}registerActivity(t,e={}){let{onActivate:r,onDeactivate:n}=e;et._activityRegistry||(et._activityRegistry=Object.create(null)),et._activityRegistry[this.activityKey]={activateCallback:r,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),et._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(et._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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(){let t=this.$["*history"];if(t){let e=t.pop();for(;e===this.activityType;)e=t.pop();this.$["*currentActivity"]=e,this.$["*history"]=t,e||this.setOrAddState("*modalActive",!1)}}},g=et;h(g,"_activityRegistry",Object.create(null));g.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var ee=33.333333333333336,y=1,Di=24,As=6;function kt(s,i){for(let t in i)s.setAttributeNS(null,t,i[t].toString())}function Y(s,i={}){let t=document.createElementNS("http://www.w3.org/2000/svg",s);return kt(t,i),t}function $s(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=i.includes("w")?0:1,a=i.includes("n")?0:1,c=[-1,1][l],u=[-1,1][a],d=[e+l*n+1.5*c,r+a*o+1.5*u-24*t*u],p=[e+l*n+1.5*c,r+a*o+1.5*u],m=[e+l*n-24*t*c+1.5*c,r+a*o+1.5*u];return{d:`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]} L ${m[0]} ${m[1]}`,center:p}}function Ss(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=["n","s"].includes(i)?.5:{w:0,e:1}[i],a=["w","e"].includes(i)?.5:{n:0,s:1}[i],c=[-1,1][l],u=[-1,1][a],d,p;["n","s"].includes(i)?(d=[e+l*n-34*t/2,r+a*o+1.5*u],p=[e+l*n+34*t/2,r+a*o+1.5*u]):(d=[e+l*n+1.5*c,r+a*o-34*t/2],p=[e+l*n+1.5*c,r+a*o+34*t/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 Is(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 ks({rect:s,delta:[i,t],imageBox:e}){return Bt({...s,x:s.x+i,y:s.y+t},e)}function Bt(s,i){let{x:t}=s,{y:e}=s;return s.xi.x+i.width&&(t=i.x+i.width-s.width),s.yi.y+i.height&&(e=i.y+i.height-s.height),{...s,x:t,y:e}}function to({rect:s,delta:i,aspectRatio:t,imageBox:e}){let[,r]=i,{y:n,width:o,height:l}=s;n+=r,l-=r,t&&(o=l*t);let a=s.x+s.width/2-o/2;return n<=e.y&&(n=e.y,l=s.y+s.height-n,t&&(o=l*t,a=s.x+s.width/2-o/2)),a<=e.x&&(a=e.x,n=s.y+s.height-l),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y+s.height-l),l=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x+s.width-o),l=e.y+e.height&&(l=e.y+e.height-n,t&&(o=l*t),a=s.x+s.width/2-o/2),a<=e.x&&(a=e.x,n=s.y),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y),l=e.x+e.width&&(o=e.x+e.width-n,t&&(l=o/t),a=s.y+s.height/2-l/2),a<=e.y&&(a=e.y,n=s.x),a+l>=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x),lt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x+s.width-a,l=e.y)):t&&(r=c*t-a,a=a+r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y+s.height-c)),ce.x+e.width&&(r=e.x+e.width-o-a),l+nt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x,l=e.y)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y+s.height-c)),ce.y+e.height&&(n=e.y+e.height-l-c),o+=r,a-=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x+s.width-a,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y)),ce.x+e.width&&(r=e.x+e.width-o-a),l+c+n>e.y+e.height&&(n=e.y+e.height-l-c),a+=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y)),c=i.x&&s.y>=i.y&&s.x+s.width<=i.x+i.width&&s.y+s.height<=i.y+i.height}function Rs(s,i){return Math.abs(s.width/s.height-i)<.1}function zt({width:s,height:i},t){let e=t/90%2!==0;return{width:e?i:s,height:e?s:i}}function Ps(s,i,t){let e=s/i,r,n;e>t?(r=Math.round(i*t),n=i):(r=s,n=Math.round(s/t));let o=Math.round((s-r)/2),l=Math.round((i-n)/2);return o+r>s&&(r=s-o),l+n>i&&(n=i-l),{x:o,y:l,width:r,height:n}}function jt(s){return{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}}function wt(s,i,t){return Math.min(Math.max(s,i),t)}var Pe=s=>{if(!s)return[];let[i,t]=s.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${s}`);return}return[{type:"aspect-ratio",width:i,height:t}]};var Z=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var Ms=s=>s?s.split(",").map(i=>i.trim()):[],Ot=s=>s?s.join(","):"";var Ns="blocks",Ds="0.29.1";function Fs(s){return Si({...s,libraryName:Ns,libraryVersion:Ds})}var Vs=s=>{if(typeof s!="string"||!s)return"";let i=s.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},Me=(...s)=>s.filter(i=>typeof i=="string"&&i).map(i=>Vs(i)).join("/-/"),P=(...s)=>{let i=Me(...s);return i?`-/${i}/`:""};function Bs(s){let i=new URL(s),t=i.pathname+i.search+i.hash,e=t.lastIndexOf("http"),r=t.lastIndexOf("/"),n="";return e>=0?n=t.slice(e):r>=0&&(n=t.slice(r+1)),n}function zs(s){let i=new URL(s),{pathname:t}=i,e=t.indexOf("/"),r=t.indexOf("/",e+1);return t.substring(e+1,r)}function js(s){let i=Hs(s),t=new URL(i),e=t.pathname.indexOf("/-/");return e===-1?[]:t.pathname.substring(e).split("/-/").filter(Boolean).map(n=>Vs(n))}function Hs(s){let i=new URL(s),t=Bs(s),e=Ws(t)?Xs(t).pathname:t;return i.pathname=i.pathname.replace(e,""),i.search="",i.hash="",i.toString()}function Ws(s){return s.startsWith("http")}function Xs(s){let i=new URL(s);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}var O=(s,i,t)=>{let e=new URL(Hs(s));if(t=t||Bs(s),e.pathname.startsWith("//")&&(e.pathname=e.pathname.replace("//","/")),Ws(t)){let r=Xs(t);e.pathname=e.pathname+(i||"")+(r.pathname||""),e.search=r.search,e.hash=r.hash}else e.pathname=e.pathname+(i||"")+(t||"");return e.toString()},Tt=(s,i)=>{let t=new URL(s);return t.pathname=i+"/",t.toString()};var M=(s,i=",")=>s.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0);var ie=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],Fi=s=>s?s.filter(i=>typeof i=="string").map(i=>M(i)).flat():[],Vi=(s,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),s.startsWith(t)):s===t),qs=(s,i)=>i.some(t=>t.startsWith(".")?s.toLowerCase().endsWith(t.toLowerCase()):!1),se=s=>{let i=s==null?void 0:s.type;return i?Vi(i,ie):!1};var st=1e3,Lt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),re=s=>Math.ceil(s*100)/100,Gs=(s,i=Lt.AUTO)=>{let t=i===Lt.AUTO;if(i===Lt.BYTE||t&&s(e[r]=i[r].value,e),{}),this.__data=$.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}let e=this.__typedSchema[i];if((t==null?void 0:t.constructor)===e.type||t instanceof e.type||e.nullable&&t===null){this.__data.pub(i,t);return}console.warn(ao+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){$.deleteCtx(this.__ctxId)}};var De=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||Yt.generate(),this.__data=$.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(e,r)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[e]||(t[e]=new Set),t[e].add(r),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let e of this.__collectionObservers)e==null||e([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new Ne(this.__typedSchema);for(let e in i)t.setValue(e,i[e]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(e=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(e,()=>{this.__notifyObservers(e,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,e){this.read(i).setValue(t,e)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(e=>{let r=this.read(e);i(r)&&t.push(e)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){$.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};var Ys=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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:pt,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var v=class extends g{constructor(){super(...arguments);h(this,"couldBeUploadCollectionOwner",!1);h(this,"isUploadCollectionOwner",!1);h(this,"init$",Ue(this));h(this,"__initialUploadMetadata",null);h(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);h(this,"_debouncedRunValidators",I(this._runValidators.bind(this),100));h(this,"_flushOutputItems",I(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(S.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));h(this,"_handleCollectonUpdate",(t,e,r)=>{var n;this._runValidators();for(let o of r)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()});h(this,"_handleCollectionPropertiesUpdate",t=>{this._flushOutputItems();let e=this.uploadCollection,r=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>e.read(n)).filter(Boolean);for(let n of r)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=e.findItems(a=>!a.getValue("uploadError"));o.forEach(a=>{n+=e.readProp(a,"uploadProgress")});let l=Math.round(n/o.length);this.$["*commonProgress"]=l,this.emit(S.UPLOAD_PROGRESS,l,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=e.findItems(l=>!!l.getValue("fileInfo")),o=e.findItems(l=>!!l.getValue("uploadError")||!!l.getValue("validationErrorMsg"));if(e.size-o.length===n.length){let l=this.getOutputData(a=>!!a.getValue("fileInfo")&&!a.getValue("silentUpload"));l.length>0&&this.emit(S.UPLOAD_FINISH,l,{debounce:!0})}}t.uploadError&&e.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(S.UPLOAD_ERROR,e.readProp(o,"uploadError"))}),t.validationErrorMsg&&e.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(S.VALIDATION_ERROR,e.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&e.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(S.CLOUD_MODIFICATION,e.readProp(o,"cdnUrlModifiers"))})})}setUploadMetadata(t){Qt("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let e=new De({typedSchema:Ys,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",e)}let t=()=>this.hasBlockInCtx(e=>e instanceof v?e.isUploadCollectionOwner&&e.isConnected&&e!==this:!1);this.couldBeUploadCollectionOwner&&!t()&&(this.isUploadCollectionOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators())),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata),this.subConfigValue("maxConcurrentRequests",e=>{this.$["*uploadQueue"].concurrency=Number(e)||1})}destroyCallback(){var t,e;super.destroyCallback(),this.isUploadCollectionOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(e=this._unobserveCollection)==null||e.call(this))}addFileFromUrl(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromUuid(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({uuid:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromObject(t,{silent:e,fileName:r,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:se(t),mimeType:t.type,fileName:r!=null?r:t.name,fileSize:t.size,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(e=>{this.uploadCollection.add({file:e,isImage:se(e),mimeType:e.type,fileName:e.name,fileSize:e.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var r;let e=Ot(Fi([(r=this.cfg.accept)!=null?r:"",...this.cfg.imgOnly?ie:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=Ot(ie)):this.fileInput.accept=e,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:Z.LOCAL})),this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=M(this.cfg.sourceList)),t}initFlow(t=!1){var e;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((e=this.sourceList)==null?void 0:e.length)===1){let r=this.sourceList[0];r==="local"?(this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(v.extSrcList).includes(r)?this.set$({"*currentActivityParams":{externalSourceType:r},"*currentActivity":g.activities.EXTERNAL}):this.$["*currentActivity"]=r,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":g.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(S.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(S.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let e=this.cfg.imgOnly,r=this.cfg.accept,n=Fi([...e?ie:[],r]);if(!n.length)return;let o=t.getValue("mimeType"),l=t.getValue("fileName");if(!o||!l)return;let a=Vi(o,n),c=qs(l,n);if(!a&&!c)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let e=this.cfg.maxLocalFileSizeBytes,r=t.getValue("fileSize");if(e&&r&&r>e)return this.l10n("files-max-size-limit-error",{maxFileSize:Gs(e)})}_validateMultipleLimit(t){let e=this.uploadCollection.items(),r=e.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&e.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let e=this.cfg.imgOnly,r=t.getValue("isImage");if(!(!e||r)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let e of this._validators){let r=e(t);if(r){t.setValue("validationErrorMsg",r);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let e=this.uploadCollection.read(t);e&&this._runValidatorsForEntry(e)})}setInitialCrop(){let t=Pe(this.cfg.cropPreset);if(t){let[e]=t,r=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of r){let o=n.getValue("fileInfo"),{width:l,height:a}=o.imageInfo,c=e.width/e.height,u=Ps(l,a,c),d=P(`crop/${u.width}x${u.height}/${u.x},${u.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:d,cdnUrl:O(n.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(p=>p.activityType===g.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var r;let e=(r=this.cfg.metadata)!=null?r:this.$["*uploadMetadata"];if(typeof e=="function"){let n=this.getOutputItem(t);return await e(n)}return e}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Fs,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,l;let e=$.getCtx(t).store,r=e.fileInfo||{name:e.fileName,originalFilename:e.fileName,size:e.fileSize,isImage:e.isImage,mimeType:e.mimeType};return{...r,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(l=(o=e.cdnUrl)!=null?o:r.cdnUrl)!=null?l:null,validationErrorMessage:e.validationErrorMsg,uploadError:e.uploadError,isUploaded:!!e.uuid&&!!e.fileInfo,isValid:!e.validationErrorMsg&&!e.uploadError,fullPath:e.fullPath,uploadProgress:e.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};v.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});v.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...v.extSrcList});var G={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};function co(s,i){if(typeof i=="number")return G[s]!==i?`${s}/${i}`:"";if(typeof i=="boolean")return i&&G[s]!==i?`${s}`:"";if(s==="filter"){if(!i||G[s]===i.amount)return"";let{name:t,amount:e}=i;return`${s}/${t}/${e}`}if(s==="crop"){if(!i)return"";let{dimensions:t,coords:e}=i;return`${s}/${t.join("x")}/${e.join(",")}`}return""}var Js=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function Et(s){return Me(...Js.filter(i=>typeof s[i]!="undefined"&&s[i]!==null).map(i=>{let t=s[i];return co(i,t)}).filter(i=>!!i))}var Fe=Me("format/auto","progressive/yes"),mt=([s])=>typeof s!="undefined"?Number(s):void 0,Zs=()=>!0,ho=([s,i])=>({name:s,amount:typeof i!="undefined"?Number(i):100}),uo=([s,i])=>({dimensions:M(s,"x").map(Number),coords:M(i).map(Number)}),po={enhance:mt,brightness:mt,exposure:mt,gamma:mt,contrast:mt,saturation:mt,vibrance:mt,warmth:mt,filter:ho,mirror:Zs,flip:Zs,rotate:mt,crop:uo};function Qs(s){let i={};for(let t of s){let[e,...r]=t.split("/");if(!Js.includes(e))continue;let n=po[e],o=n(r);i[e]=o}return i}var N=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),W=[N.CROP,N.TUNING,N.FILTERS],tr=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],er=["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"],ir=["rotate","mirror","flip"],rt=Object.freeze({brightness:{zero:G.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:G.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:G.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:G.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:G.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:G.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:G.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:G.enhance,range:[0,100],keypointsNumber:1},filter:{zero:G.filter,range:[0,100],keypointsNumber:1}});var fo="https://ucarecdn.com",mo="https://upload.uploadcare.com",go="https://social.uploadcare.com",xt={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:Ot(W),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:fo,baseUrl:mo,socialBaseUrl:go,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var X=s=>String(s),nt=s=>{let i=Number(s);if(Number.isNaN(i))throw new Error(`Invalid number: "${s}"`);return i},k=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}"`)},_o=s=>s==="auto"?s:k(s),bo={pubkey:X,multiple:k,multipleMin:nt,multipleMax:nt,confirmUpload:k,imgOnly:k,accept:X,externalSourcesPreferredTypes:X,store:_o,cameraMirror:k,sourceList:X,maxLocalFileSizeBytes:nt,thumbSize:nt,showEmptyList:k,useLocalImageEditor:k,useCloudImageEditor:k,cloudImageEditorTabs:X,removeCopyright:k,cropPreset:X,modalScrollLock:k,modalBackdropStrokes:k,sourceListWrap:k,remoteTabSessionKey:X,cdnCname:X,baseUrl:X,socialBaseUrl:X,secureSignature:X,secureExpire:X,secureDeliveryProxy:X,retryThrottledRequestMaxTimes:nt,multipartMinFileSize:nt,multipartChunkSize:nt,maxConcurrentRequests:nt,multipartMaxConcurrentRequests:nt,multipartMaxAttempts:nt,checkForUrlDuplicates:k,saveUrlForRecurrentUploads:k,groupOutput:k,userAgentIntegration:X},sr=(s,i)=>{if(!(typeof i=="undefined"||i===null))try{return bo[s](i)}catch(t){return console.error(`Invalid value for config key "${s}".`,t),xt[s]}};var Ve=Object.keys(xt),yo=["metadata"],vo=s=>yo.includes(s),Be=Ve.filter(s=>!vo(s)),Co={...Object.fromEntries(Be.map(s=>[ut(s),s])),...Object.fromEntries(Be.map(s=>[s.toLowerCase(),s]))},wo={...Object.fromEntries(Ve.map(s=>[ut(s),H(s)])),...Object.fromEntries(Ve.map(s=>[s.toLowerCase(),H(s)]))},ze=class extends b{constructor(){super();h(this,"ctxOwner",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(xt).map(([t,e])=>[H(t),e]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let e of Be)this.sub(H(e),r=>{r!==xt[e]&&(t[e]=r)},!1);for(let e of Ve){let r="__"+e;t[r]=t[e],Object.defineProperty(this,e,{set:n=>{if(t[r]=n,Be.includes(e)){let o=[...new Set([ut(e),e.toLowerCase()])];for(let l of o)typeof n=="undefined"||n===null?this.removeAttribute(l):this.setAttribute(l,n.toString())}this.$[H(e)]!==n&&(typeof n=="undefined"||n===null?this.$[H(e)]=xt[e]:this.$[H(e)]=n)},get:()=>this.$[H(e)]}),typeof t[e]!="undefined"&&t[e]!==null&&(t[e]=t[r])}}attributeChangedCallback(t,e,r){if(e===r)return;let n=Co[t],o=sr(n,r),l=o!=null?o:xt[n],a=this;a[n]=l}};ze.bindAttributes(wo);var To=ze;var ne=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=this.getCssData(`--icon-${t}`);e&&(this.$.path=e)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};ne.template=``;ne.bindAttributes({name:"name",size:"size"});var Eo="https://ucarecdn.com",Ut=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:Eo},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{default:"auto"},"cdn-operations":{},progressive:{},quality:{default:"smart"},"is-background-for":{}});var rr=s=>[...new Set(s)];var oe="--lr-img-",nr="unresolved",Ht=2,Wt=3,or=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),ar=Object.create(null),lr;for(let s in Ut)ar[oe+s]=((lr=Ut[s])==null?void 0:lr.default)||"";var je=class extends Nt{constructor(){super(...arguments);h(this,"cssInit$",ar)}$$(t){return this.$[oe+t]}set$$(t){for(let e in t)this.$[oe+e]=t[e]}sub$$(t,e){this.sub(oe+t,r=>{r===null||r===""||e(r)})}_fmtAbs(t){return!t.includes("//")&&!or&&(t=new URL(t,document.baseURI).href),t}_getCdnModifiers(t=""){return P(t&&`resize/${t}`,this.$$("cdn-operations")||"",`format/${this.$$("format")||Ut.format.default}`,`quality/${this.$$("quality")||Ut.quality.default}`)}_getUrlBase(t=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(or&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let e=this._getCdnModifiers(t);if(this.$$("src").startsWith(this.$$("cdn-cname")))return O(this.$$("src"),e);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("proxy-cname"))return this._proxyUrl(O(this.$$("proxy-cname"),e,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(O(`https://${this.$$("pubkey")}.ucr.io/`,e,this._fmtAbs(this.$$("src"))))}_proxyUrl(t){return this.$$("secure-delivery-proxy")?Jt(this.$$("secure-delivery-proxy"),{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}_getElSize(t,e=1,r=!0){let n=t.getBoundingClientRect(),o=e*Math.round(n.width),l=r?"":e*Math.round(n.height);return o||l?`${o||""}x${l||""}`:null}_setupEventProxy(t){let e=n=>{n.stopPropagation();let o=new Event(n.type,n);this.dispatchEvent(o)},r=["load","error"];for(let n of r)t.addEventListener(n,e)}get img(){return this._img||(this._img=new Image,this._setupEventProxy(this.img),this._img.setAttribute(nr,""),this.img.onload=()=>{this.img.removeAttribute(nr)},this.initAttributes(),this.appendChild(this._img)),this._img}get bgSelector(){return this.$$("is-background-for")}initAttributes(){[...this.attributes].forEach(t=>{Ut[t.name]||this.img.setAttribute(t.name,t.value)})}get breakpoints(){return this.$$("breakpoints")?rr(M(this.$$("breakpoints")).map(t=>Number(t))):null}renderBg(t){let e=new Set;this.breakpoints?this.breakpoints.forEach(n=>{e.add(`url("${this._getUrlBase(n+"x")}") ${n}w`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(n*Ht+"x")}") ${n*Ht}w`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(n*Wt+"x")}") ${n*Wt}w`)}):(e.add(`url("${this._getUrlBase(this._getElSize(t))}") 1x`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Ht))}") ${Ht}x`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Wt))}") ${Wt}x`));let r=`image-set(${[...e].join(", ")})`;t.style.setProperty("background-image",r),t.style.setProperty("background-image","-webkit-"+r)}getSrcset(){let t=new Set;return this.breakpoints?this.breakpoints.forEach(e=>{t.add(this._getUrlBase(e+"x")+` ${e}w`),this.$$("hi-res-support")&&t.add(this._getUrlBase(e*Ht+"x")+` ${e*Ht}w`),this.$$("ultra-res-support")&&t.add(this._getUrlBase(e*Wt+"x")+` ${e*Wt}w`)}):(t.add(this._getUrlBase(this._getElSize(this.img))+" 1x"),this.$$("hi-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,2))+" 2x"),this.$$("ultra-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,3))+" 3x")),[...t].join()}getSrc(){return this._getUrlBase()}init(){this.bgSelector?[...document.querySelectorAll(this.bgSelector)].forEach(t=>{this.$$("intersection")?this.initIntersection(t,()=>{this.renderBg(t)}):this.renderBg(t)}):this.$$("intersection")?this.initIntersection(this.img,()=>{this.img.srcset=this.getSrcset(),this.img.src=this.getSrc()}):(this.img.srcset=this.getSrcset(),this.img.src=this.getSrc())}initIntersection(t,e){let r={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(n=>{n.forEach(o=>{o.isIntersecting&&(e(),this._isnObserver.unobserve(t))})},r),this._isnObserver.observe(t),this._observed||(this._observed=new Set),this._observed.add(t)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(t=>{this._isnObserver.unobserve(t)}),this._isnObserver=null)}static get observedAttributes(){return Object.keys(Ut)}attributeChangedCallback(t,e,r){window.setTimeout(()=>{this.$[oe+t]=r})}};var Bi=class extends je{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",i=>{this.$$("is-background-for")||(this.img.loading=i?"lazy":"eager")})}};var le=class extends v{constructor(){super(),this.init$={...this.init$,"*simpleButtonText":"",withDropZone:!0,onClick:()=>{this.initFlow()}}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",i=>{typeof i!="undefined"&&(this.$.withDropZone=k(i))}),this.subConfigValue("multiple",i=>{this.$["*simpleButtonText"]=i?this.l10n("upload-files"):this.l10n("upload-file")})}};le.template=``;le.bindAttributes({dropzone:null});var He=class extends g{constructor(){super(...arguments);h(this,"historyTracked",!0);h(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};He.template='
';function xo(s){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let e=r=>{r.type!=="loadend"&&t.abort(),i(!1)};t.onloadend=e,t.onprogress=e,t.readAsDataURL(s)}catch{i(!1)}})}function Ao(s,i){return new Promise(t=>{let e=0,r=[],n=l=>{l||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),l.isFile?(e++,l.file(a=>{e--;let c=new File([a],a.name,{type:a.type||i});r.push({type:"file",file:c,fullPath:l.fullPath}),e===0&&t(r)})):l.isDirectory&&o(l.createReader())},o=l=>{e++,l.readEntries(a=>{e--;for(let c of a)n(c);e===0&&t(r)})};n(s)})}function cr(s){let i=[],t=[];for(let e=0;e{a&&i.push(...a)}));continue}let o=r.getAsFile();o&&t.push(xo(o).then(l=>{l||i.push({type:"file",file:o})}))}else r.kind==="string"&&r.type.match("^text/uri-list")&&t.push(new Promise(n=>{r.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}var F={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},hr=["focus"],$o=100,zi=new Map;function So(s,i){let t=Math.max(Math.min(s[0],i.x+i.width),i.x),e=Math.max(Math.min(s[1],i.y+i.height),i.y);return Math.sqrt((s[0]-t)*(s[0]-t)+(s[1]-e)*(s[1]-e))}function ji(s){let i=0,t=document.body,e=new Set,r=f=>e.add(f),n=F.INACTIVE,o=f=>{s.shouldIgnore()&&f!==F.INACTIVE||(n!==f&&e.forEach(_=>_(f)),n=f)},l=()=>i>0;r(f=>s.onChange(f));let a=()=>{i=0,o(F.INACTIVE)},c=()=>{i+=1,n===F.INACTIVE&&o(F.ACTIVE)},u=()=>{i-=1,l()||o(F.INACTIVE)},d=f=>{f.preventDefault(),i=0,o(F.INACTIVE)},p=f=>{if(s.shouldIgnore())return;l()||(i+=1);let _=[f.x,f.y],A=s.element.getBoundingClientRect(),E=Math.floor(So(_,A)),T=E<$o,w=f.composedPath().includes(s.element);zi.set(s.element,E);let B=Math.min(...zi.values())===E;w&&B?(f.preventDefault(),o(F.OVER)):o(T&&B?F.NEAR:F.ACTIVE)},m=async f=>{if(s.shouldIgnore())return;f.preventDefault();let _=await cr(f.dataTransfer);s.onItems(_),o(F.INACTIVE)};return t.addEventListener("drop",d),t.addEventListener("dragleave",u),t.addEventListener("dragenter",c),t.addEventListener("dragover",p),s.element.addEventListener("drop",m),hr.forEach(f=>{window.addEventListener(f,a)}),()=>{zi.delete(s.element),t.removeEventListener("drop",d),t.removeEventListener("dragleave",u),t.removeEventListener("dragenter",c),t.removeEventListener("dragover",p),s.element.removeEventListener("drop",m),hr.forEach(f=>{window.removeEventListener(f,a)})}}var ae=class extends v{constructor(){super(),this.init$={...this.init$,state:F.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,e=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),r=window.getComputedStyle(this),n=r.visibility!=="hidden"&&r.display!=="none";return t&&n&&e}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!k(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:k(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:k(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:k(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=ji({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(e=>{e.type==="url"?this.addFileFromUrl(e.url,{source:Z.DROP_AREA}):e.type==="file"&&this.addFileFromObject(e.file,{source:Z.DROP_AREA,fullPath:e.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=ji({element:i,onChange:t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&i.setAttribute("drag-state",e)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&this.setAttribute("drag-state",e)}),this.subConfigValue("sourceList",t=>{let e=M(t);this.$.isEnabled=e.includes(v.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(e=>e!==this).filter(e=>e.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,e=this.uploadCollection.size;return!(i&&t&&e>=t||!i&&e>0)}destroyCallback(){var i,t,e,r;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(e=this._destroyDropzone)==null||e.call(this),(r=this._destroyContentWrapperDropzone)==null||r.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};ae.template=`
{{text}}
`;ae.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Io="src-type-",ce=class extends v{constructor(){super(...arguments);h(this,"_registeredTypes",{});h(this,"init$",{...this.init$,iconName:"default"})}initTypes(){this.registerType({type:v.sourceTypes.LOCAL,onClick:()=>{this.openSystemDialog()}}),this.registerType({type:v.sourceTypes.URL,activity:g.activities.URL,textKey:"from-url"}),this.registerType({type:v.sourceTypes.CAMERA,activity:g.activities.CAMERA,onClick:()=>{var e=document.createElement("input").capture!==void 0;return e&&this.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:g.activities.DRAW,icon:"edit-draw"});for(let t of Object.values(v.extSrcList))this.registerType({type:t,activity:g.activities.EXTERNAL,activityParams:{externalSourceType:t}})}initCallback(){super.initCallback(),this.initTypes(),this.setAttribute("role","button"),this.defineAccessor("type",t=>{t&&this.applyType(t)})}registerType(t){this._registeredTypes[t.type]=t}getType(t){return this._registeredTypes[t]}applyType(t){let e=this._registeredTypes[t];if(!e){console.warn("Unsupported source type: "+t);return}let{textKey:r=t,icon:n=t,activity:o,onClick:l,activityParams:a={}}=e;this.applyL10nKey("src-type",`${Io}${r}`),this.$.iconName=n,this.onclick=c=>{(l?l(c):!!o)&&this.set$({"*currentActivityParams":a,"*currentActivity":o})}}};ce.template=`
`;ce.bindAttributes({type:null});var Hi=class extends b{initCallback(){super.initCallback(),this.subConfigValue("sourceList",i=>{let t=M(i),e="";t.forEach(r=>{e+=``}),this.cfg.sourceListWrap?this.innerHTML=e:this.outerHTML=e})}};function ur(s){let i=new Blob([s],{type:"image/svg+xml"});return URL.createObjectURL(i)}function dr(s="#fff",i="rgba(0, 0, 0, .1)"){return ur(``)}function he(s="hsl(209, 21%, 65%)",i=32,t=32){return ur(``)}function pr(s,i=40){if(s.type==="image/svg+xml")return URL.createObjectURL(s);let t=document.createElement("canvas"),e=t.getContext("2d"),r=new Image,n=new Promise((o,l)=>{r.onload=()=>{let a=r.height/r.width;a>1?(t.width=i,t.height=i*a):(t.height=i,t.width=i/a),e.fillStyle="rgb(240, 240, 240)",e.fillRect(0,0,t.width,t.height),e.drawImage(r,0,0,t.width,t.height),t.toBlob(c=>{if(!c){l();return}let u=URL.createObjectURL(c);o(u)})},r.onerror=a=>{l(a)}});return r.src=URL.createObjectURL(s),n}var V=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),gt=class extends v{constructor(){super();h(this,"pauseRender",!0);h(this,"_entrySubs",new Set);h(this,"_entry",null);h(this,"_isIntersecting",!1);h(this,"_debouncedGenerateThumb",I(this._generateThumbnail.bind(this),100));h(this,"_debouncedCalculateState",I(this._calculateState.bind(this),100));h(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:V.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===g.activities.DETAILS)?this.$["*currentActivity"]=g.activities.DETAILS:this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let e=this.getOutputData(r=>r.getValue("uuid")===t);this.emit(S.REMOVE,e,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[e]=t;this._isIntersecting=e.isIntersecting,e.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),e.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,e=V.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?e=V.FAILED:t.getValue("validationMultipleLimitMsg")?e=V.LIMIT_OVERFLOW:t.getValue("isUploading")?e=V.UPLOADING:t.getValue("fileInfo")&&(e=V.FINISHED),this.$.state=e}async _generateThumbnail(){var e;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let r=this.cfg.thumbSize,n=this.proxyUrl(O(Tt(this.cfg.cdnCname,this._entry.getValue("uuid")),P(t.getValue("cdnUrlModifiers"),`scale_crop/${r}x${r}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((e=t.getValue("file"))!=null&&e.type.includes("image"))try{let r=await pr(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",r)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(n))}else{let r=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(r))}}_subEntry(t,e){let r=this._entry.subscribe(t,n=>{this.isConnected&&e(n)});this._entrySubs.add(r)}_handleEntryId(t){var r;this._reset();let e=(r=this.uploadCollection)==null?void 0:r.read(t);this._entry=e,e&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||e.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=e.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{gt.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),gt.activeInstances.add(this)}_handleState(t){var e,r,n;this.set$({isFailed:t===V.FAILED,isLimitOverflow:t===V.LIMIT_OVERFLOW,isUploading:t===V.UPLOADING,isFinished:t===V.FINISHED,progressVisible:t===V.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((e=this._entry)==null?void 0:e.getValue("isImage"))&&((r=this._entry)==null?void 0:r.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===V.FAILED||t===V.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===V.FINISHED&&(this.$.badgeIcon="badge-success"),t===V.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),gt.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,l;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let e=this.cfg.multiple?this.cfg.multipleMax:1;if(e&&this.uploadCollection.size>e)return;let r=this.getOutputData(a=>!a.getValue("fileInfo"));this.emit(S.UPLOAD_START,r,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let a=new AbortController;t.setValue("abortController",a);let c=async()=>{let d=this.getUploadClientOptions();return Ri(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...d,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:p=>{if(p.isComputable){let m=p.value*100;t.setValue("uploadProgress",m)}this.$.progressUnknown=!p.isComputable},signal:a.signal,metadata:await this.getMetadataFor(t.uid)})},u=await this.$["*uploadQueue"].add(c);t.setMultipleValues({fileInfo:u,isUploading:!1,fileName:u.originalFilename,fileSize:u.size,isImage:u.isImage,mimeType:(l=(o=(n=u.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?l:u.mimeType,uuid:u.uuid,cdnUrl:u.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(a){console.warn("Upload error",a),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),a instanceof R?a.isCancel||t.setValue("uploadError",a):t.setValue("uploadError",new Error("Unexpected error"))}}};gt.template=`
{{itemName}}{{errorText}}
`;gt.activeInstances=new Set;var ue=class extends b{constructor(){super();h(this,"_handleBackdropClick",()=>{this._closeDialog()});h(this,"_closeDialog",()=>{this.setOrAddState("*modalActive",!1)});h(this,"_handleDialogClose",()=>{this._closeDialog()});h(this,"_handleDialogMouseDown",t=>{this._mouseDownTarget=t.target});h(this,"_handleDialogMouseUp",t=>{t.target===this.ref.dialog&&t.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(){if(super.initCallback(),typeof HTMLDialogElement=="function")this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp);else{this.setAttribute("dialog-fallback","");let t=document.createElement("div");t.className="backdrop",this.appendChild(t),t.addEventListener("click",this._handleBackdropClick)}this.sub("*modalActive",t=>{this.$.isOpen!==t&&(this.$.isOpen=t),t&&this.cfg.modalScrollLock?document.body.style.overflow="hidden":document.body.style.overflow=""}),this.subConfigValue("modalBackdropStrokes",t=>{t?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.sub("isOpen",t=>{t?this.show():this.hide()})}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)}};h(ue,"StateConsumerScope","modal");ue.template=``;var We=class{constructor(){h(this,"caption","");h(this,"text","");h(this,"iconName","");h(this,"isError",!1)}},Xe=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};Xe.template=`
{{captionTxt}}
{{msgTxt}}
`;var qe=class extends v{constructor(){super();h(this,"couldBeUploadCollectionOwner",!0);h(this,"historyTracked",!0);h(this,"activityType",g.activities.UPLOAD_LIST);h(this,"_debouncedHandleCollectionUpdate",I(()=>{var t;this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),((t=this.$["*uploadList"])==null?void 0:t.length)===0&&!this.cfg.showEmptyList&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(e=>!!e.getValue("fileInfo"));this.emit(S.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var u,d;let t=!!this.cfg.multiple,e=t?(u=this.cfg.multipleMin)!=null?u:0:1,r=t?(d=this.cfg.multipleMax)!=null?d:0:1,n=this.uploadCollection.size,o=e?nr:!1;return{passed:!o&&!l,tooFew:o,tooMany:l,min:e,max:r,exact:r===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,e=this._validateFilesCount();if(t&&!e.passed){let r=new We,n=e.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";r.caption=this.l10n("files-count-limit-error-title"),r.text=this.l10n(n,{min:e.min,max:e.max,total:t}),r.isError=!0,this.set$({"*message":r})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),r={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let m of t){let f=this.uploadCollection.read(m);f.getValue("fileInfo")&&!f.getValue("validationErrorMsg")&&(r.succeed+=1),f.getValue("isUploading")&&(r.uploading+=1),(f.getValue("validationErrorMsg")||f.getValue("uploadError"))&&(r.failed+=1),f.getValue("validationMultipleLimitMsg")&&(r.limitOverflow+=1)}let{passed:n,tooMany:o,exact:l}=this._validateFilesCount(),a=r.failed===0&&r.limitOverflow===0,c=!1,u=!1,d=!1;r.total-r.succeed-r.uploading-r.failed>0&&n?c=!0:(u=!0,d=r.total===r.succeed&&n&&a),this.set$({doneBtnVisible:u,doneBtnEnabled:d,uploadBtnVisible:c,addMoreBtnEnabled:r.total===0||!o&&!l,addMoreBtnVisible:!l||this.cfg.multiple,headerText:this._getHeaderText(r)})}_getHeaderText(t){let e=r=>{let n=t[r];return this.l10n(`header-${r}`,{count:n})};return t.uploading>0?e("uploading"):t.failed>0?e("failed"):t.succeed>0?e("succeed"):e("total")}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{var e;((e=this.uploadCollection)==null?void 0:e.size)===0&&!this.cfg.showEmptyList&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};qe.template=`{{headerText}}
`;var Ge=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.URL);h(this,"init$",{...this.init$,importDisabled:!0,onUpload:t=>{t.preventDefault();let e=this.ref.input.value;this.addFileFromUrl(e,{source:Z.URL_TAB}),this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:t=>{let e=t.target.value;this.set$({importDisabled:!e})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};Ge.template=`
`;var Wi=()=>typeof navigator.permissions!="undefined";var Ke=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.CAMERA);h(this,"_unsubPermissions",null);h(this,"init$",{...this.init$,video:null,videoTransformCss:null,shotBtnDisabled:!0,videoHidden:!0,messageHidden:!0,requestBtnHidden:Wi(),l10nMessage:null,originalErrorMessage:null,cameraSelectOptions:null,cameraSelectHidden:!0,onCameraSelectChange:t=>{this._selectedCameraId=t.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>{this._shot()},onRequestPermissions:()=>{this._capture()}});h(this,"_onActivate",()=>{Wi()&&this._subscribePermissions(),this._capture()});h(this,"_onDeactivate",()=>{this._unsubPermissions&&this._unsubPermissions(),this._stopCapture()});h(this,"_handlePermissionsChange",()=>{this._capture()});h(this,"_setPermissionsState",I(t=>{this.$.originalErrorMessage=null,this.classList.toggle("initialized",t==="granted"),t==="granted"?this.set$({videoHidden:!1,shotBtnDisabled:!1,messageHidden:!0}):t==="prompt"?(this.$.l10nMessage=this.l10n("camera-permissions-prompt"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage=this.l10n("camera-permissions-denied"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture())},300))}async _subscribePermissions(){try{(await navigator.permissions.query({name:"camera"})).addEventListener("change",this._handlePermissionsChange)}catch(t){console.log("Failed to use permissions API. Fallback to manual request mode.",t),this._capture()}}async _capture(){let t={video:{width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},audio:!1};this._selectedCameraId&&(t.video.deviceId={exact:this._selectedCameraId}),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d");try{this._setPermissionsState("prompt");let e=await navigator.mediaDevices.getUserMedia(t);e.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=e,this._capturing=!0,this._setPermissionsState("granted")}catch(e){this._setPermissionsState("denied"),this.$.originalErrorMessage=e.message}}_stopCapture(){var t;this._capturing&&((t=this.$.video)==null||t.getTracks()[0].stop(),this.$.video=null,this._capturing=!1)}_shot(){this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this._ctx.drawImage(this.ref.video,0,0);let t=Date.now(),e=`camera-${t}.png`;this._canvas.toBlob(r=>{let n=new File([r],e,{lastModified:t,type:"image/png"});this.addFileFromObject(n,{source:Z.CAMERA}),this.set$({"*currentActivity":g.activities.UPLOAD_LIST})})}async initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",t=>{this.$.videoTransformCss=t?"scaleX(-1)":null});try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(r=>r.kind==="videoinput").map((r,n)=>({text:r.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:r.deviceId}));e.length>1&&(this.$.cameraSelectOptions=e,this.$.cameraSelectHidden=!1)}catch{}}};Ke.template=`
{{l10nMessage}}{{originalErrorMessage}}
`;var Xi=class extends v{constructor(){super(...arguments);h(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}},ko=Xi;var Ye=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.DETAILS);h(this,"pauseRender",!0);h(this,"init$",{...this.init$,checkerboard:!1,fileSize:null,fileName:"",cdnUrl:"",errorTxt:"",cloudEditBtnHidden:!0,onNameInput:null,onBack:()=>{this.historyBack()},onRemove:()=>{this.uploadCollection.remove(this.entry.uid),this.historyBack()},onCloudEdit:()=>{this.entry.getValue("uuid")&&(this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}})}showNonImageThumb(){let t=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon"),e=he(t,108,108);this.ref.filePreview.setImageUrl(e),this.set$({checkerboard:!1})}initCallback(){super.initCallback(),this.render(),this.$.fileSize=this.l10n("file-size-unknown"),this.registerActivity(this.activityType,{onDeactivate:()=>{this.ref.filePreview.clear()}}),this.sub("*focusedEntry",t=>{if(!t)return;this._entrySubs?this._entrySubs.forEach(n=>{this._entrySubs.delete(n),n.remove()}):this._entrySubs=new Set,this.entry=t;let e=t.getValue("file");if(e){this._file=e;let n=se(this._file);n&&!t.getValue("cdnUrl")&&(this.ref.filePreview.setImageFile(this._file),this.set$({checkerboard:!0})),n||this.showNonImageThumb()}let r=(n,o)=>{this._entrySubs.add(this.entry.subscribe(n,o))};r("fileName",n=>{this.$.fileName=n,this.$.onNameInput=()=>{let o=this.ref.file_name_input.value;Object.defineProperty(this._file,"name",{writable:!0,value:o}),this.entry.setValue("fileName",o)}}),r("fileSize",n=>{this.$.fileSize=Number.isFinite(n)?this.fileSizeFmt(n):this.l10n("file-size-unknown")}),r("uploadError",n=>{this.$.errorTxt=n==null?void 0:n.message}),r("externalUrl",n=>{n&&(this.entry.getValue("uuid")||this.showNonImageThumb())}),r("cdnUrl",n=>{let o=this.cfg.useCloudImageEditor&&n&&this.entry.getValue("isImage");if(n&&this.ref.filePreview.clear(),this.set$({cdnUrl:n,cloudEditBtnHidden:!o}),n&&this.entry.getValue("isImage")){let l=O(n,P("format/auto","preview"));this.ref.filePreview.setImageUrl(this.proxyUrl(l))}})})}};Ye.template=`
{{fileSize}}
{{errorTxt}}
`;var qi=class{constructor(){h(this,"captionL10nStr","confirm-your-action");h(this,"messageL10Str","are-you-sure");h(this,"confirmL10nStr","yes");h(this,"denyL10nStr","no")}confirmAction(){console.log("Confirmed")}denyAction(){this.historyBack()}},Ze=class extends g{constructor(){super(...arguments);h(this,"activityType",g.activities.CONFIRMATION);h(this,"_defaults",new qi);h(this,"init$",{...this.init$,activityCaption:"",messageTxt:"",confirmBtnTxt:"",denyBtnTxt:"","*confirmation":null,onConfirm:this._defaults.confirmAction,onDeny:this._defaults.denyAction.bind(this)})}initCallback(){super.initCallback(),this.set$({messageTxt:this.l10n(this._defaults.messageL10Str),confirmBtnTxt:this.l10n(this._defaults.confirmL10nStr),denyBtnTxt:this.l10n(this._defaults.denyL10nStr)}),this.sub("*confirmation",t=>{t&&this.set$({"*currentActivity":g.activities.CONFIRMATION,activityCaption:this.l10n(t.captionL10nStr),messageTxt:this.l10n(t.messageL10Str),confirmBtnTxt:this.l10n(t.confirmL10nStr),denyBtnTxt:this.l10n(t.denyL10nStr),onDeny:()=>{t.denyAction()},onConfirm:()=>{t.confirmAction()}})})}};Ze.template=`{{activityCaption}}
{{messageTxt}}
`;var Je=class extends v{constructor(){super(...arguments);h(this,"init$",{...this.init$,visible:!1,unknown:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let t=this.uploadCollection.items().some(e=>this.uploadCollection.read(e).getValue("isUploading"));this.$.visible=t}),this.sub("visible",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",t=>{this.$.value=t})}destroyCallback(){var t;super.destroyCallback(),(t=this._unobserveCollection)==null||t.call(this)}};Je.template=``;var Qe=class extends b{constructor(){super(...arguments);h(this,"_value",0);h(this,"_unknownMode",!1);h(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};Qe.template='
';var K="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";var de=class extends b{constructor(){super();h(this,"init$",{...this.init$,checkerboard:!1,src:K})}initCallback(){super.initCallback(),this.sub("checkerboard",()=>{this.style.backgroundImage=this.hasAttribute("checkerboard")?`url(${dr()})`:"unset"})}destroyCallback(){super.destroyCallback(),URL.revokeObjectURL(this._lastObjectUrl)}setImage(t){this.$.src=t.src}setImageFile(t){let e=URL.createObjectURL(t);this.$.src=e,this._lastObjectUrl=e}setImageUrl(t){this.$.src=t}clear(){URL.revokeObjectURL(this._lastObjectUrl),this.$.src=K}};de.template='';de.bindAttributes({checkerboard:"checkerboard"});var fr="--cfg-ctx-name",L=class extends b{get cfgCssCtxName(){return this.getCssData(fr,!0)}get cfgCtxName(){var t;let i=((t=this.getAttribute("ctx-name"))==null?void 0:t.trim())||this.cfgCssCtxName||this.__cachedCfgCtxName;return this.__cachedCfgCtxName=i,i}connectedCallback(){var i;if(!this.connectedOnce){let t=(i=this.getAttribute("ctx-name"))==null?void 0:i.trim();t&&this.style.setProperty(fr,`'${t}'`)}super.connectedCallback()}parseCfgProp(i){return{...super.parseCfgProp(i),ctx:$.getCtx(this.cfgCtxName)}}};function mr(...s){return s.reduce((i,t)=>{if(typeof t=="string")return i[t]=!0,i;for(let e of Object.keys(t))i[e]=t[e];return i},{})}function D(...s){let i=mr(...s);return Object.keys(i).reduce((t,e)=>(i[e]&&t.push(e),t),[]).join(" ")}function gr(s,...i){let t=mr(...i);for(let e of Object.keys(t))s.classList.toggle(e,t[e])}var _r=s=>{if(!s)return W;let i=Ms(s).filter(t=>W.includes(t));return i.length===0?W:i};function br(s){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":W,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:K,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:Ot(W),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let i=s.querySelectorAll("img");for(let t of i){let e=t.src;t.src=K,t.src=e}s.$["*networkProblems"]=!1},"*on.apply":i=>{if(!i)return;let t=s.$["*originalUrl"],e=P(Et(i),"preview"),r=O(t,e),n={originalUrl:t,cdnUrlModifiers:e,cdnUrl:r,transformations:i};s.dispatchEvent(new CustomEvent("apply",{detail:n,bubbles:!0,composed:!0})),s.remove()},"*on.cancel":()=>{s.remove(),s.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}var yr=`
Network error
{{fileType}}
{{msg}}
`;var ot=class extends L{constructor(){super();h(this,"_debouncedShowLoader",I(this._showLoader.bind(this),300));this.init$={...this.init$,...br(this)}}get ctxName(){return this.autoCtxName}_showLoader(t){this.$.showLoader=t}_waitForSize(){return new Promise((e,r)=>{let n=setTimeout(()=>{r(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),o=new ResizeObserver(([l])=>{l.contentRect.width>0&&l.contentRect.height>0&&(e(),clearTimeout(n),o.disconnect())});o.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(await this._waitForSize(),this.$["*tabId"]===N.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate(),this.$["*editorTransformations"]={},this.$.cdnUrl){let t=zs(this.$.cdnUrl);this.$["*originalUrl"]=Tt(this.$.cdnUrl,t);let e=js(this.$.cdnUrl),r=Qs(e);this.$["*editorTransformations"]=r}else if(this.$.uuid)this.$["*originalUrl"]=Tt(this.cfg.cdnCname,this.$.uuid);else throw new Error("No UUID nor CDN URL provided");try{let t=O(this.$["*originalUrl"],P("json")),e=await fetch(t).then(o=>o.json()),{width:r,height:n}=e;this.$["*imageSize"]={width:r,height:n},this.$["*tabId"]===N.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(t){t&&console.error("Failed to load image info",t)}}async initEditor(){try{await this._waitForSize()}catch(t){this.isConnected&&console.error(t.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==K&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",t=>{let e=this.ref["img-el"];e.src!==t&&(this._imgLoading=!0,e.src=t||K)}),this.sub("cropPreset",t=>{this.$["*cropPresetList"]=Pe(t)}),this.sub("tabs",t=>{this.$["*tabList"]=_r(t)}),this.sub("*tabId",t=>{this.ref["img-el"].className=D("image",{image_hidden_to_cropper:t===N.CROP,image_hidden_effects:t!==N.CROP})}),this.classList.add("editor_ON"),this.sub("*networkProblems",t=>{this.$["presence.networkProblems"]=t,this.$["presence.modalCaption"]=!t}),this.sub("*editorTransformations",t=>{if(Object.keys(t).length===0)return;let e=this.$["*originalUrl"],r=P(Et(t),"preview"),n=O(e,r),o={originalUrl:e,cdnUrlModifiers:r,cdnUrl:n,transformations:t};this.dispatchEvent(new CustomEvent("change",{detail:o,bubbles:!0,composed:!0}))},!1),this.sub("uuid",t=>t&&this.updateImage()),this.sub("cdnUrl",t=>t&&this.updateImage())}};h(ot,"className","cloud-image-editor");ot.template=yr;ot.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var ti=class extends L{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(i){let t=this.$["*imageBox"];if(!t)return;if(i===""&&t.height<=y&&t.width<=y)return!0;let e=t.height<=y&&(i.includes("n")||i.includes("s")),r=t.width<=y&&(i.includes("e")||i.includes("w"));return e||r}_createBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i,o=this.ref["svg-el"],l=Y("mask",{id:"backdrop-mask"}),a=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),c=Y("rect",{x:t,y:e,width:r,height:n,fill:"black"});l.appendChild(a),l.appendChild(c);let u=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});o.appendChild(u),o.appendChild(l),this._backdropMask=l,this._backdropMaskInner=c}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i;this._backdropMaskInner&&kt(this._backdropMaskInner,{x:t,y:e,width:r,height:n})}_updateFrame(){let i=this.$["*cropBox"];if(!(!i||!this._frameGuides||!this._frameThumbs)){for(let t of Object.values(this._frameThumbs)){let{direction:e,pathNode:r,interactionNode:n,groupNode:o}=t,l=e==="",a=e.length===2,{x:c,y:u,width:d,height:p}=i;if(l){let f={x:c+d/3,y:u+p/3,width:d/3,height:p/3};kt(n,f)}else{let f=wt(Math.min(d,p)/(24*2+34)/2,0,1),{d:_,center:A}=a?$s(i,e,f):Ss(i,e,f),E=Math.max(Di*wt(Math.min(d,p)/Di/3,0,1),As);kt(n,{x:A[0]-E,y:A[1]-E,width:E*2,height:E*2}),kt(r,{d:_})}let m=this._shouldThumbBeDisabled(e);o.setAttribute("class",D("thumb",{"thumb--hidden":m,"thumb--visible":!m}))}kt(this._frameGuides,{x:i.x-1*.5,y:i.y-1*.5,width:i.width+1,height:i.height+1})}}_createThumbs(){let i={};for(let t=0;t<3;t++)for(let e=0;e<3;e++){let r=`${["n","","s"][t]}${["w","","e"][e]}`,n=Y("g");n.classList.add("thumb"),n.setAttribute("with-effects","");let o=Y("rect",{fill:"transparent"}),l=Y("path",{stroke:"currentColor",fill:"none","stroke-width":3});n.appendChild(l),n.appendChild(o),i[r]={direction:r,pathNode:l,interactionNode:o,groupNode:n},o.addEventListener("pointerdown",this._handlePointerDown.bind(this,r))}return i}_createGuides(){let i=Y("svg"),t=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"#000000","stroke-width":1,"stroke-opacity":.5});i.appendChild(t);for(let e=1;e<=2;e++){let r=Y("line",{x1:`${ee*e}%`,y1:"0%",x2:`${ee*e}%`,y2:"100%",stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}for(let e=1;e<=2;e++){let r=Y("line",{x1:"0%",y1:`${ee*e}%`,x2:"100%",y2:`${ee*e}%`,stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}return i.classList.add("guides","guides--semi-hidden"),i}_createFrame(){let i=this.ref["svg-el"],t=document.createDocumentFragment(),e=this._createGuides();t.appendChild(e);let r=this._createThumbs();for(let{groupNode:n}of Object.values(r))t.appendChild(n);i.appendChild(t),this._frameThumbs=r,this._frameGuides=e}_handlePointerDown(i,t){if(!this._frameThumbs)return;let e=this._frameThumbs[i];if(this._shouldThumbBeDisabled(i))return;let r=this.$["*cropBox"],{x:n,y:o}=this.ref["svg-el"].getBoundingClientRect(),l=t.x-n,a=t.y-o;this.$.dragging=!0,this._draggingThumb=e,this._dragStartPoint=[l,a],this._dragStartCrop={...r}}_handlePointerUp_(i){this._updateCursor(),this.$.dragging&&(i.stopPropagation(),i.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(i){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;i.stopPropagation(),i.preventDefault();let t=this.ref["svg-el"],{x:e,y:r}=t.getBoundingClientRect(),n=i.x-e,o=i.y-r,l=n-this._dragStartPoint[0],a=o-this._dragStartPoint[1],{direction:c}=this._draggingThumb,u=this._calcCropBox(c,[l,a]);u&&(this.$["*cropBox"]=u)}_calcCropBox(i,t){var c,u;let[e,r]=t,n=this.$["*imageBox"],o=(c=this._dragStartCrop)!=null?c:this.$["*cropBox"],l=(u=this.$["*cropPresetList"])==null?void 0:u[0],a=l?l.width/l.height:void 0;if(i===""?o=ks({rect:o,delta:[e,r],imageBox:n}):o=Os({rect:o,delta:[e,r],direction:i,aspectRatio:a,imageBox:n}),!Object.values(o).every(d=>Number.isFinite(d)&&d>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:o});return}return Bt(jt(o),this.$["*imageBox"])}_handleSvgPointerMove_(i){if(!this._frameThumbs)return;let t=Object.values(this._frameThumbs).find(e=>{if(this._shouldThumbBeDisabled(e.direction))return!1;let n=e.interactionNode.getBoundingClientRect(),o={x:n.x,y:n.y,width:n.width,height:n.height};return Ls(o,[i.x,i.y])});this._hoverThumb=t,this._updateCursor()}_updateCursor(){let i=this._hoverThumb;this.ref["svg-el"].style.cursor=i?Is(i.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(i){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:t})=>t).forEach(t=>{t.setAttribute("class",D("thumb",{"thumb--hidden":!i,"thumb--visible":i}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",i=>{i&&(this._guidesHidden=i.height<=y||i.width<=y,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",i=>{this._frameGuides&&this._frameGuides.setAttribute("class",D({"guides--hidden":this._guidesHidden,"guides--visible":!this._guidesHidden&&i,"guides--semi-hidden":!this._guidesHidden&&!i}))}),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)}};ti.template='';var _t=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.sub("title",t=>{this._titleEl&&(this._titleEl.style.display=t?"block":"none")}),this.sub("active",t=>{this.className=D({active:t,not_active:!t})}),this.sub("on.click",t=>{this.onclick=t})}};_t.template=`
{{title}}
`;function Lo(s){let i=s+90;return i=i>=360?0:i,i}function Uo(s,i){return s==="rotate"?Lo(i):["mirror","flip"].includes(s)?!i:null}var pe=class extends _t{initCallback(){super.initCallback(),this.defineAccessor("operation",i=>{i&&(this._operation=i,this.$.icon=i)}),this.$["on.click"]=i=>{let t=this.$["*cropperEl"].getValue(this._operation),e=Uo(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};var fe={FILTER:"filter",COLOR_OPERATION:"color_operation"},lt="original",ei=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":t=>{this.$["*faderEl"].set(t),this.$.value=t}})}setOperation(t,e){this._controlType=t==="filter"?fe.FILTER:fe.COLOR_OPERATION,this._operation=t,this._iconName=t,this._title=t.toUpperCase(),this._filter=e,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===lt?void 0:this.$.value,filter:this._filter===lt?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:t,zero:e}=rt[this._operation],[r,n]=t;this.$.min=r,this.$.max=n,this.$.zero=e;let o=this.$["*editorTransformations"][this._operation];if(this._controlType===fe.FILTER){let l=n;if(o){let{name:a,amount:c}=o;l=a===this._filter?c:n}this.$.value=l,this.$.defaultValue=l}if(this._controlType===fe.COLOR_OPERATION){let l=typeof o!="undefined"?o:e;this.$.value=l,this.$.defaultValue=l}}apply(){let t;this._controlType===fe.FILTER?this._filter===lt?t=null:t={name:this._filter,amount:this.$.value}:t=this.$.value;let e={...this.$["*editorTransformations"],[this._operation]:t};this.$["*editorTransformations"]=e}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",t=>{this._originalUrl=t}),this.sub("value",t=>{let e=`${this._filter||this._operation} ${t}`;this.$["*operationTooltip"]=e})}};ei.template=``;function me(s){let i=new Image;return{promise:new Promise((r,n)=>{i.src=s,i.onload=r,i.onerror=n}),image:i,cancel:()=>{i.naturalWidth===0&&(i.src=K)}}}function ge(s){let i=[];for(let n of s){let o=me(n);i.push(o)}let t=i.map(n=>n.image);return{promise:Promise.allSettled(i.map(n=>n.promise)),images:t,cancel:()=>{i.forEach(n=>{n.cancel()})}}}var Xt=class extends _t{constructor(){super(...arguments);h(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,r=Math.ceil(e*t),n=e>=2?"lightest":"normal",o=100,l={...this.$["*editorTransformations"]};return l[this._operation]=this._filter!==lt?{name:this._filter,amount:o}:void 0,O(this._originalUrl,P(Fe,Et(l),`quality/${n}`,`scale_crop/${r}x${r}/center`))}_observerCallback(t,e){if(t[0].isIntersecting){let n=this.proxyUrl(this._previewSrc()),o=this.ref["preview-el"],{promise:l,cancel:a}=me(n);this._cancelPreload=a,l.catch(c=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:c})}).finally(()=>{o.style.backgroundImage=`url(${n})`,o.setAttribute("loaded",""),e.unobserve(this)})}else this._cancelPreload&&this._cancelPreload()}initCallback(){super.initCallback(),this.$["on.click"]=e=>{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===lt,this.$.icon=this.$.isOriginal?"original":"slider"}),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("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 r=this.ref["icon-el"];r.style.opacity=e?"1":"0";let n=this.ref["preview-el"];e?n.style.opacity="0":n.style.backgroundImage&&(n.style.opacity="1")}),this.sub("*networkProblems",e=>{if(!e){let r=this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"];n.style.backgroundImage&&(n.style.backgroundImage="none",n.style.backgroundImage=`url(${r})`)}})}destroyCallback(){var t;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),this._cancelPreload&&this._cancelPreload()}};Xt.template=`
`;var _e=class extends _t{constructor(){super(...arguments);h(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=t=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.$.title=this.l10n(t))}),this.sub("*editorTransformations",t=>{if(!this._operation)return;let{zero:e}=rt[this._operation],r=t[this._operation],n=typeof r!="undefined"?r!==e:!1;this.$.active=n})}};var vr=(s,i)=>{let t,e,r;return(...n)=>{t?(clearTimeout(e),e=setTimeout(()=>{Date.now()-r>=i&&(s(...n),r=Date.now())},Math.max(i-(Date.now()-r),0))):(s(...n),r=Date.now(),t=!0)}};function Cr(s,i){let t={};for(let e of i){let r=s[e];(s.hasOwnProperty(e)||r!==void 0)&&(t[e]=r)}return t}function qt(s,i,t){let r=window.devicePixelRatio,n=Math.min(Math.ceil(i*r),3e3),o=r>=2?"lightest":"normal";return O(s,P(Fe,Et(t),`quality/${o}`,`stretch/off/-/resize/${n}x`))}function Ro(s){return s?[({dimensions:t,coords:e})=>[...t,...e].every(r=>Number.isInteger(r)&&Number.isFinite(r)),({dimensions:t,coords:e})=>t.every(r=>r>0)&&e.every(r=>r>=0)].every(t=>t(s)):!0}var ii=class extends L{constructor(){super(),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=I(this._commit.bind(this),300),this._handleResizeThrottled=vr(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 i=this.$["*editorTransformations"],t=Cr(i,Object.keys(this.$["*operations"])),e={...this.$["*operations"],...t};this.$["*operations"]=e}_initCanvas(){let i=this.ref["canvas-el"],t=i.getContext("2d"),e=this.offsetWidth,r=this.offsetHeight,n=window.devicePixelRatio;i.style.width=`${e}px`,i.style.height=`${r}px`,i.width=e*n,i.height=r*n,t==null||t.scale(n,n),this._canvas=i,this._ctx=t}_alignImage(){if(!this._isActive||!this.$.image)return;let i=this.$.image,t=this.$["*padding"],e=this.$["*operations"],{rotate:r}=e,n={width:this.offsetWidth,height:this.offsetHeight},o=zt({width:i.naturalWidth,height:i.naturalHeight},r),l;if(o.width>n.width-t*2||o.height>n.height-t*2){let a=o.width/o.height,c=n.width/n.height;if(a>c){let u=n.width-t*2,d=u/a,p=0+t,m=t+(n.height-t*2)/2-d/2;l={x:p,y:m,width:u,height:d}}else{let u=n.height-t*2,d=u*a,p=t+(n.width-t*2)/2-d/2,m=0+t;l={x:p,y:m,width:d,height:u}}}else{let{width:a,height:c}=o,u=t+(n.width-t*2)/2-a/2,d=t+(n.height-t*2)/2-c/2;l={x:u,y:d,width:a,height:c}}this.$["*imageBox"]=jt(l)}_alignCrop(){var d;let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,n=this.$["*editorTransformations"].crop,{width:o,x:l,y:a}=this.$["*imageBox"];if(n){let{dimensions:[p,m],coords:[f,_]}=n,{width:A}=zt(this._imageSize,r),E=o/A;i=Bt(jt({x:l+f*E,y:a+_*E,width:p*E,height:m*E}),this.$["*imageBox"])}let c=(d=this.$["*cropPresetList"])==null?void 0:d[0],u=c?c.width/c.height:void 0;if(!Us(i,t)||u&&!Rs(i,u)){let p=t.width/t.height,m=t.width,f=t.height;u&&(p>u?m=Math.min(t.height*u,t.width):f=Math.min(t.width/u,t.height)),i={x:t.x+t.width/2-m/2,y:t.y+t.height/2-f/2,width:m,height:f}}this.$["*cropBox"]=Bt(jt(i),this.$["*imageBox"])}_drawImage(){let i=this._ctx;if(!i)return;let t=this.$.image,e=this.$["*imageBox"],r=this.$["*operations"],{mirror:n,flip:o,rotate:l}=r,a=zt({width:e.width,height:e.height},l);i.save(),i.translate(e.x+e.width/2,e.y+e.height/2),i.rotate(l*Math.PI*-1/180),i.scale(n?-1:1,o?-1:1),i.drawImage(t,-a.width/2,-a.height/2,a.width,a.height),i.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let i=this._canvas;this._ctx.clearRect(0,0,i.width,i.height),this._drawImage()}_animateIn({fromViewer:i}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=D({active_from_viewer:i,active_from_editor:!i,inactive_to_editor:!1})}))}_getCropDimensions(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o}=t,{width:l,height:a}=zt(this._imageSize,r),{width:c,height:u}=i,d=n/l,p=o/a;return[wt(Math.round(c/d),1,l),wt(Math.round(u/p),1,a)]}_getCropTransformation(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o,x:l,y:a}=t,{width:c,height:u}=zt(this._imageSize,r),{x:d,y:p}=i,m=n/c,f=o/u,_=this._getCropDimensions(),A={dimensions:_,coords:[wt(Math.round((d-l)/m),0,c-_[0]),wt(Math.round((p-a)/f),0,u-_[1])]};if(!Ro(A)){console.error("Cropper is trying to create invalid crop object",{payload:A});return}if(!(_[0]===c&&_[1]===u))return A}_commit(){if(!this.isConnected)return;let i=this.$["*operations"],{rotate:t,mirror:e,flip:r}=i,n=this._getCropTransformation(),l={...this.$["*editorTransformations"],crop:n,rotate:t,mirror:e,flip:r};this.$["*editorTransformations"]=l}setValue(i,t){console.log(`Apply cropper operation [${i}=${t}]`),this.$["*operations"]={...this.$["*operations"],[i]:t},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(i){return this.$["*operations"][i]}async activate(i,{fromViewer:t}={}){if(!this._isActive){this._isActive=!0,this._imageSize=i,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:t})}catch(e){console.error("Failed to activate cropper",{error:e})}this._observer=new ResizeObserver(([e])=>{e.contentRect.width>0&&e.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:i=!1}={}){var t;this._isActive&&(!i&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=D({active_from_viewer:!1,active_from_editor:!1,inactive_to_editor:!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(t=this._observer)==null||t.disconnect())}_transitionToCrop(){let i=this._getCropDimensions(),t=Math.min(this.offsetWidth,i[0])/this.$["*cropBox"].width,e=Math.min(this.offsetHeight,i[1])/this.$["*cropBox"].height,r=Math.min(t,e),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,o=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${r}) translate(${(this.offsetWidth/2-n)/r}px, ${(this.offsetHeight/2-o)/r}px)`,this.style.transformOrigin=`${n}px ${o}px`}_transitionToImage(){let i=this.$["*cropBox"].x+this.$["*cropBox"].width/2,t=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${i}px ${t}px`}_reset(){this._isActive||(this.$.image=null)}_waitForImage(i,t){let e=this.offsetWidth;t={...t,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let r=this.proxyUrl(qt(i,e,t)),{promise:n,cancel:o,image:l}=me(r),a=this._handleImageLoading(r);return l.addEventListener("load",a,{once:!0}),l.addEventListener("error",a,{once:!0}),this._cancelPreload&&this._cancelPreload(),this._cancelPreload=o,n.then(()=>l).catch(c=>(console.error("Failed to load image",{error:c}),this.$["*networkProblems"]=!0,Promise.resolve(l)))}_handleImageLoading(i){let t="crop",e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",i=>{i||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var i;super.destroyCallback(),(i=this._observer)==null||i.disconnect()}};ii.template=``;function Gi(s,i,t){let e=Array(t);t--;for(let r=t;r>=0;r--)e[r]=Math.ceil((r*i+(t-r)*s)/t);return e}function Po(s){return s.reduce((i,t,e)=>er<=i&&i<=n);return s.map(r=>{let n=Math.abs(e[0]-e[1]),o=Math.abs(i-e[0])/n;return e[0]===r?i>t?1:1-o:e[1]===r?i>=t?o:1:0})}function No(s,i){return s.map((t,e)=>tn-o)}var Ki=class extends L{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=I(this._addKeypoint.bind(this),600),this.classList.add("inactive_to_cropper")}_handleImageLoading(i){let t=this._operation,e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let i of this._keypoints){let{image:t}=i;t&&(t.style.opacity=i.opacity.toString(),t.style.zIndex=i.zIndex.toString())}})}_imageSrc({url:i=this._url,filter:t=this._filter,operation:e,value:r}={}){let n={...this._transformations};e&&(n[e]=t?{name:t,amount:r}:r);let o=this.offsetWidth;return this.proxyUrl(qt(i,o,n))}_constructKeypoint(i,t){return{src:this._imageSrc({operation:i,value:t}),image:null,opacity:0,zIndex:0,value:t}}_isSame(i,t){return this._operation===i&&this._filter===t}_addKeypoint(i,t,e){let r=()=>!this._isSame(i,t)||this._value!==e||!!this._keypoints.find(a=>a.value===e);if(r())return;let n=this._constructKeypoint(i,e),o=new Image;o.src=n.src;let l=this._handleImageLoading(n.src);o.addEventListener("load",l,{once:!0}),o.addEventListener("error",l,{once:!0}),n.image=o,o.classList.add("fader-image"),o.addEventListener("load",()=>{if(r())return;let a=this._keypoints,c=a.findIndex(d=>d.value>e),u=c{this.$["*networkProblems"]=!0},{once:!0})}set(i){i=typeof i=="string"?parseInt(i,10):i,this._update(this._operation,i),this._addKeypointDebounced(this._operation,this._filter,i)}_update(i,t){this._operation=i,this._value=t;let{zero:e}=rt[i],r=this._keypoints.map(l=>l.value),n=Mo(r,t,e),o=No(r,e);for(let[l,a]of Object.entries(this._keypoints))a.opacity=n[l],a.zIndex=o[l];this._flush()}_createPreviewImage(){let i=new Image;return i.classList.add("fader-image","fader-image--preview"),i.style.opacity="0",i}async _initNodes(){let i=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&i.appendChild(this._previewImage);let t=document.createElement("div");i.appendChild(t);let e=this._keypoints.map(c=>c.src),{images:r,promise:n,cancel:o}=ge(e);r.forEach(c=>{let u=this._handleImageLoading(c.src);c.addEventListener("load",u),c.addEventListener("error",u)}),this._cancelLastImages=()=>{o(),this._cancelLastImages=void 0};let l=this._operation,a=this._filter;await n,this._isActive&&this._isSame(l,a)&&(this._container&&this._container.remove(),this._container=t,this._keypoints.forEach((c,u)=>{let d=r[u];d.classList.add("fader-image"),c.image=d,this._container.appendChild(d)}),this.appendChild(i),this._flush())}setTransformations(i){if(this._transformations=i,this._previewImage){let t=this._imageSrc(),e=this._handleImageLoading(t);this._previewImage.src=t,this._previewImage.addEventListener("load",e,{once:!0}),this._previewImage.addEventListener("error",e,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}preload({url:i,filter:t,operation:e,value:r}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=wr(e,r).map(a=>this._imageSrc({url:i,filter:t,operation:e,value:a})),{cancel:l}=ge(o);this._cancelBatchPreload=l}_setOriginalSrc(i){let t=this._previewImage||this._createPreviewImage();if(!this.contains(t)&&this.appendChild(t),this._previewImage=t,t.src===i){t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1});return}t.style.opacity="0";let e=this._handleImageLoading(i);t.addEventListener("error",e,{once:!0}),t.src=i,t.addEventListener("load",()=>{e(),t&&(t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1}))},{once:!0}),t.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}activate({url:i,operation:t,value:e,filter:r,fromViewer:n}){if(this._isActive=!0,this._hidden=!1,this._url=i,this._operation=t||"initial",this._value=e,this._filter=r,this._fromViewer=n,typeof e!="number"&&!r){let l=this._imageSrc({operation:t,value:e});this._setOriginalSrc(l),this._container&&this._container.remove();return}this._keypoints=wr(t,e).map(l=>this._constructKeypoint(t,l)),this._update(t,e),this._initNodes()}deactivate({hide:i=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),i&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=D({active_from_viewer:!1,active_from_cropper:!1,inactive_to_cropper:!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};var Do=1,si=class extends L{initCallback(){super.initCallback(),this.addEventListener("wheel",i=>{i.preventDefault();let{deltaY:t,deltaX:e}=i;Math.abs(e)>Do?this.scrollLeft+=e:this.scrollLeft+=t})}};si.template=" ";function Fo(s){return``}function Vo(s){return`
`}var ri=class extends L{constructor(){super();h(this,"_updateInfoTooltip",I(()=>{var o,l;let t=this.$["*editorTransformations"],e=this.$["*currentOperation"],r="",n=!1;if(this.$["*tabId"]===N.FILTERS)if(n=!0,this.$["*currentFilter"]&&((o=t==null?void 0:t.filter)==null?void 0:o.name)===this.$["*currentFilter"]){let a=((l=t==null?void 0:t.filter)==null?void 0:l.amount)||100;r=this.l10n(this.$["*currentFilter"])+" "+a}else r=this.l10n(lt);else if(this.$["*tabId"]===N.TUNING&&e){n=!0;let a=(t==null?void 0:t[e])||rt[e].zero;r=e+" "+a}n&&(this.$["*operationTooltip"]=r),this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",n)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":lt,"*currentOperation":null,"*tabId":N.CROP,showLoader:!1,filters:er,colorOperations:tr,cropOperations:ir,"*operationTooltip":null,"l10n.cancel":this.l10n("cancel"),"l10n.apply":this.l10n("apply"),"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:"sub-toolbar--top-hidden",visible:"sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"sub-toolbar--bottom-hidden",visible:"sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"tab-content--hidden",visible:"tab-content--visible"},"presence.tabToggleStyles":{hidden:"tab-toggle--hidden",visible:"tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"tab-toggles--hidden",visible:"tab-toggles--visible"},"on.cancel":()=>{this._cancelPreload&&this._cancelPreload(),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":t=>{let e=t.currentTarget.getAttribute("data-id");e&&this._activateTab(e,{fromViewer:!1})}},this._debouncedShowLoader=I(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===N.TUNING&&this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",!1)}_createOperationControl(t){let e=new _e;return e.operation=t,e}_createFilterControl(t){let e=new Xt;return e.filter=t,e}_createToggleControl(t){let e=new pe;return e.operation=t,e}_renderControlsList(t){let e=this.ref[`controls-list-${t}`],r=document.createDocumentFragment();t===N.CROP?this.$.cropOperations.forEach(n=>{let o=this._createToggleControl(n);r.appendChild(o)}):t===N.FILTERS?[lt,...this.$.filters].forEach(n=>{let o=this._createFilterControl(n);r.appendChild(o)}):t===N.TUNING&&this.$.colorOperations.forEach(n=>{let o=this._createOperationControl(n);r.appendChild(o)}),[...r.children].forEach((n,o)=>{o===r.childNodes.length-1&&n.classList.add("controls-list_last-item")}),e.innerHTML="",e.appendChild(r)}_activateTab(t,{fromViewer:e}){this.$["*tabId"]=t,t===N.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:e})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:e}),this.$["*cropperEl"].deactivate());for(let r of W){let n=r===t,o=this.ref[`tab-toggle-${r}`];o.active=n,n?(this._renderControlsList(t),this._syncTabIndicator()):this._unmountTabControls(r),this.$[`presence.tabContent.${r}`]=n}}_unmountTabControls(t){let e=this.ref[`controls-list-${t}`];e&&(e.innerHTML="")}_syncTabIndicator(){let t=this.ref[`tab-toggle-${this.$["*tabId"]}`],e=this.ref["tabs-indicator"];e.style.transform=`translateX(${t.offsetLeft}px)`}_preloadEditedImage(){if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let t=this.$["*imgContainerEl"].offsetWidth,e=this.proxyUrl(qt(this.$["*originalUrl"],t,this.$["*editorTransformations"]));this._cancelPreload&&this._cancelPreload();let{cancel:r}=ge([e]);this._cancelPreload=()=>{r(),this._cancelPreload=void 0}}}_showLoader(t){this.$.showLoader=t}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",t=>{t&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",t=>{var r;let e=(r=t==null?void 0:t.filter)==null?void 0:r.name;this.$["*currentFilter"]!==e&&(this.$["*currentFilter"]=e)}),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",t=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(t)}),this.sub("*loadingOperations",t=>{let e=!1;for(let[,r]of t.entries()){if(e)break;for(let[,n]of r.entries())if(n){e=!0;break}}this._debouncedShowLoader(e)}),this.sub("*showSlider",t=>{this.$["presence.subToolbar"]=t,this.$["presence.mainToolbar"]=!t}),this.sub("*tabList",t=>{this.$["presence.tabToggles"]=t.length>1;for(let e of W){this.$[`presence.tabToggle.${e}`]=t.includes(e);let r=this.ref[`tab-toggle-${e}`];r.style.gridColumn=t.indexOf(e)+1}t.includes(this.$["*tabId"])||this._activateTab(t[0],{fromViewer:!1})}),this._updateInfoTooltip()}};ri.template=`
{{*operationTooltip}}
${W.map(Vo).join("")}
${W.map(Fo).join("")}
`;var be=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},this.defineAccessor("active",i=>{i?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return D("icon",{icon_left:!this._iconReversed,icon_right:this._iconReversed,icon_hidden:this._iconHidden,icon_single:this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",i=>{this._iconSingle=!this.$.text,this._iconHidden=!i,this.$.iconCss=this._iconCss()}),this.sub("theme",i=>{i!=="custom"&&(this.className=i)}),this.sub("text",i=>{this._iconSingle=!1}),this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.hasAttribute("theme")||this.setAttribute("theme","default")}set reverse(i){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};be.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});be.template=`
{{text}}
`;var ni=class extends b{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let i=this.ref["line-el"];i.style.transition="initial",i.style.opacity="0",i.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",i=>{typeof i=="boolean"&&(i?this._start():this._stop())})}_start(){this._active=!0;let{width:i}=this.getBoundingClientRect(),t=this.ref["line-el"];t.style.transition="transform 1s",t.style.opacity="1",t.style.transform=`translateX(${i}px)`,t.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};ni.template=`
`;var oi={transition:"transition",visible:"visible",hidden:"hidden"},li=class extends b{constructor(){super(),this._visible=!1,this._visibleStyle=oi.visible,this._hiddenStyle=oi.hidden,this._externalTransitions=!1,this.defineAccessor("styles",i=>{i&&(this._externalTransitions=!0,this._visibleStyle=i.visible,this._hiddenStyle=i.hidden)}),this.defineAccessor("visible",i=>{typeof i=="boolean"&&(this._visible=i,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",gr(this,{[oi.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.setAttribute("hidden",""),this._externalTransitions||this.classList.add(oi.transition),this._handleVisible(),setTimeout(()=>this.removeAttribute("hidden"),0)}};li.template=" ";var ai=class extends b{constructor(){super();h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let t=parseInt(this.ref["input-el"].value,10);this._updateValue(t),this.$.onInput&&this.$.onInput(t)},"on.sliderChange":()=>{let t=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(t)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",e=>{this.$.disabled=e}),this.defineAccessor("min",e=>{this.$.min=e}),this.defineAccessor("max",e=>{this.$.max=e}),this.defineAccessor("defaultValue",e=>{this.$.defaultValue=e,this.ref["input-el"].value=e,this._updateValue(e)}),this.defineAccessor("zero",e=>{this._zero=e}),this.defineAccessor("onInput",e=>{e&&(this.$.onInput=e)}),this.defineAccessor("onChange",e=>{e&&(this.$.onChange=e)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)},0),this.sub("disabled",e=>{let r=this.ref["input-el"];e?r.setAttribute("disabled","disabled"):r.removeAttribute("disabled")});let t=this.ref["input-el"];t.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),t.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(t){this._updateZeroDot(t);let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(t-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${o}px)`})}_updateZeroDot(t){if(!this._zeroDotEl)return;t===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="0.2";let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${o}px)`})}_updateSteps(){let e=this.ref["steps-el"],{width:r}=e.getBoundingClientRect(),n=Math.ceil(r/2),o=Math.ceil(n/15)-2;if(this._stepsCount===o)return;let l=document.createDocumentFragment(),a=document.createElement("div"),c=document.createElement("div");a.className="minor-step",c.className="border-step",l.appendChild(c);for(let d=0;d
`;var Yi=class extends v{constructor(){super();h(this,"activityType",g.activities.CLOUD_IMG_EDIT);this.init$={...this.init$,cdnUrl:null}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.sub("*focusedEntry",t=>{t&&(this.entry=t,this.entry.subscribe("cdnUrl",e=>{e&&(this.$.cdnUrl=e)}))}),this.subConfigValue("cropPreset",t=>{this._instance&&this._instance.getAttribute("crop-preset")!==t&&this._instance.setAttribute("crop-preset",t)}),this.subConfigValue("cloudImageEditorTabs",t=>{this._instance&&this._instance.getAttribute("tabs")!==t&&this._instance.setAttribute("tabs",t)})}handleApply(t){if(!this.entry)return;let e=t.detail;this.entry.setMultipleValues({cdnUrl:e.cdnUrl,cdnUrlModifiers:e.cdnUrlModifiers}),this.historyBack()}handleCancel(){this.historyBack()}mountEditor(){let t=new ot,e=this.$.cdnUrl,r=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;t.setAttribute("ctx-name",this.ctxName),t.setAttribute("cdn-url",e),r&&t.setAttribute("crop-preset",r),n&&t.setAttribute("tabs",n),t.addEventListener("apply",o=>this.handleApply(o)),t.addEventListener("cancel",()=>this.handleCancel()),this.innerHTML="",this.appendChild(t),this._mounted=!0,this._instance=t}unmountEditor(){this._instance=void 0,this.innerHTML=""}};var Bo=function(s){return s.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},Tr=function(s,i="i"){let t=s.split("*").map(Bo);return new RegExp("^"+t.join(".+")+"$",i)};var zo=s=>Object.keys(s).reduce((t,e)=>{let r=s[e],n=Object.keys(r).reduce((o,l)=>{let a=r[l];return o+`${l}: ${a};`},"");return t+`${e}{${n}}`},"");function Er({textColor:s,backgroundColor:i,linkColor:t,linkColorHover:e,shadeColor:r}){let n=`solid 1px ${r}`;return zo({body:{color:s,"background-color":i},".side-bar":{background:"inherit","border-right":n},".main-content":{background:"inherit"},".main-content-header":{background:"inherit"},".main-content-footer":{background:"inherit"},".list-table-row":{color:"inherit"},".list-table-row:hover":{background:r},".list-table-row .list-table-cell-a, .list-table-row .list-table-cell-b":{"border-top":n},".list-table-body .list-items":{"border-bottom":n},".bread-crumbs a":{color:t},".bread-crumbs a:hover":{color:e},".main-content.loading":{background:`${i} url(/static/images/loading_spinner.gif) center no-repeat`,"background-size":"25px 25px"},".list-icons-item":{"background-color":r},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a":{color:t},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a:hover":{color:e},".side-bar-menu a":{color:t},".side-bar-menu a:hover":{color:e},".source-gdrive .side-bar-menu .current, .source-gdrive .side-bar-menu a:hover, .source-gphotos .side-bar-menu .current, .source-gphotos .side-bar-menu a:hover":{color:e},".source-vk .side-bar-menu a":{color:t},".source-vk .side-bar-menu a:hover":{color:e,background:"none"}})}var At={};window.addEventListener("message",s=>{let i;try{i=JSON.parse(s.data)}catch{return}if((i==null?void 0:i.type)in At){let t=At[i.type];for(let[e,r]of t)s.source===e&&r(i)}});var xr=function(s,i,t){s in At||(At[s]=[]),At[s].push([i,t])},Ar=function(s,i){s in At&&(At[s]=At[s].filter(t=>t[0]!==i))};function $r(s){let i=[];for(let[t,e]of Object.entries(s))e==null||typeof e=="string"&&e.length===0||i.push(`${t}=${encodeURIComponent(e)}`);return i.join("&")}var ci=class extends v{constructor(){super();h(this,"activityType",g.activities.EXTERNAL);h(this,"_iframe",null);h(this,"updateCssData",()=>{this.isActivityActive&&(this._inheritedUpdateCssData(),this.applyStyles())});h(this,"_inheritedUpdateCssData",this.updateCssData);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],counter:0,onDone:()=>{for(let t of this.$.selectedList){let e=this.extractUrlFromMessage(t),{filename:r}=t,{externalSourceType:n}=this.activityParams;this.addFileFromUrl(e,{fileName:r,source:n})}this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()}}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:t}=this.activityParams;this.set$({activityCaption:`${t==null?void 0:t[0].toUpperCase()}${t==null?void 0:t.slice(1)}`,activityIcon:t}),this.mountIframe()}}),this.sub("*currentActivity",t=>{t!==this.activityType&&this.unmountIframe()}),this.sub("selectedList",t=>{this.$.counter=t.length})}extractUrlFromMessage(t){if(t.alternatives){let e=M(this.cfg.externalSourcesPreferredTypes);for(let r of e){let n=Tr(r);for(let[o,l]of Object.entries(t.alternatives))if(n.test(o))return l}}return t.url}sendMessage(t){var e,r;(r=(e=this._iframe)==null?void 0:e.contentWindow)==null||r.postMessage(JSON.stringify(t),"*")}async handleFileSelected(t){this.$.selectedList=[...this.$.selectedList,t]}handleIframeLoad(){this.applyStyles()}getCssValue(t){return window.getComputedStyle(this).getPropertyValue(t).trim()}applyStyles(){let t={backgroundColor:this.getCssValue("--clr-background-light"),textColor:this.getCssValue("--clr-txt"),shadeColor:this.getCssValue("--clr-shade-lv1"),linkColor:"#157cfc",linkColorHover:"#3891ff"};this.sendMessage({type:"embed-css",style:Er(t)})}remoteUrl(){var l,a;let t=this.cfg.pubkey,e=(!1).toString(),{externalSourceType:r}=this.activityParams,n={lang:((a=(l=this.getCssData("--l10n-locale-name"))==null?void 0:l.split("-"))==null?void 0:a[0])||"en",public_key:t,images_only:e,pass_window_open:!1,session_key:this.cfg.remoteTabSessionKey},o=new URL(this.cfg.socialBaseUrl);return o.pathname=`/window3/${r}`,o.search=$r(n),o.toString()}mountIframe(){let t=Zt({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});t.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(t),xr("file-selected",t.contentWindow,this.handleFileSelected.bind(this)),this._iframe=t,this.$.selectedList=[]}unmountIframe(){this._iframe&&Ar("file-selected",this._iframe.contentWindow),this.ref.iframeWrapper.innerHTML="",this._iframe=null,this.$.selectedList=[],this.$.counter=0}};ci.template=`
{{activityCaption}}
{{counter}}
`;var ye=class extends b{setCurrentTab(i){if(!i)return;[...this.ref.context.querySelectorAll("[tab-ctx]")].forEach(e=>{e.getAttribute("tab-ctx")===i?e.removeAttribute("hidden"):e.setAttribute("hidden","")});for(let e in this._tabMap)e===i?this._tabMap[e].setAttribute("current",""):this._tabMap[e].removeAttribute("current")}initCallback(){super.initCallback(),this._tabMap={},this.defineAccessor("tab-list",i=>{if(!i)return;M(i).forEach(e=>{let r=Zt({tag:"div",attributes:{class:"tab"},properties:{onclick:()=>{this.setCurrentTab(e)}}});r.textContent=this.l10n(e),this.ref.row.appendChild(r),this._tabMap[e]=r})}),this.defineAccessor("default",i=>{this.setCurrentTab(i)}),this.hasAttribute("default")||this.setCurrentTab(Object.keys(this._tabMap)[0])}};ye.bindAttributes({"tab-list":null,default:null});ye.template=`
`;var Gt=class extends v{constructor(){super();h(this,"processInnerHtml",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return Gt.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,yi(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var e,r;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(l=>l.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let l of n){let a=document.createElement("input");a.type="hidden",a.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,a.value=l!=null?l:"",this._dynamicInputsContainer.appendChild(a)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let l=o.find(d=>!d.isValid),a=(r=l==null?void 0:l.validationErrorMessage)!=null?r:(e=l==null?void 0:l.uploadError)==null?void 0:e.message,c=this.$["*message"];c=c!=null&&c.isError?`${c.caption}. ${c.text}`:void 0;let u=a!=null?a:c;u?this._validationInputElement.setCustomValidity(u):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(l=>l.isUploaded&&l.isValid)){this.$.output={groupData:void 0,files:t};return}let r=this.getUploadClientOptions(),n=t.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=await Ts(n,r);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};Gt.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var Zi=class extends g{};var hi=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:t=>{var e;t.preventDefault(),t.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((e=this.$.options.find(r=>r.value==this.value))==null?void 0:e.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",t=>{var r;this.$.currentText=((r=t==null?void 0:t[0])==null?void 0:r.text)||"";let e="";t==null||t.forEach(n=>{e+=``}),this.$.selectHtml=e})}};hi.template=``;var q={PLAY:"play",PAUSE:"pause",FS_ON:"fullscreen-on",FS_OFF:"fullscreen-off",VOL_ON:"unmute",VOL_OFF:"mute",CAP_ON:"captions",CAP_OFF:"captions-off"},Sr={requestFullscreen:s=>{s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen&&s.webkitRequestFullscreen()},exitFullscreen:()=>{document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}},Q=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,src:"",ppIcon:q.PLAY,fsIcon:q.FS_ON,volIcon:q.VOL_ON,capIcon:q.CAP_OFF,totalTime:"00:00",currentTime:"00:00",progressCssWidth:"0",hasSubtitles:!1,volumeDisabled:!1,volumeValue:0,onPP:()=>{this.togglePlay()},onFs:()=>{this.toggleFullscreen()},onCap:()=>{this.toggleCaptions()},onMute:()=>{this.toggleSound()},onVolChange:t=>{let e=parseFloat(t.currentTarget.$.value);this.setVolume(e)},progressClicked:t=>{let e=this.progress.getBoundingClientRect();this._video.currentTime=this._video.duration*(t.offsetX/e.width)}})}togglePlay(){this._video.paused||this._video.ended?this._video.play():this._video.pause()}toggleFullscreen(){(document.fullscreenElement||document.webkitFullscreenElement)===this?Sr.exitFullscreen():Sr.requestFullscreen(this)}toggleCaptions(){this.$.capIcon===q.CAP_OFF?(this.$.capIcon=q.CAP_ON,this._video.textTracks[0].mode="showing",window.localStorage.setItem(Q.is+":captions","1")):(this.$.capIcon=q.CAP_OFF,this._video.textTracks[0].mode="hidden",window.localStorage.removeItem(Q.is+":captions"))}toggleSound(){this.$.volIcon===q.VOL_ON?(this.$.volIcon=q.VOL_OFF,this.$.volumeDisabled=!0,this._video.muted=!0):(this.$.volIcon=q.VOL_ON,this.$.volumeDisabled=!1,this._video.muted=!1)}setVolume(t){window.localStorage.setItem(Q.is+":volume",t);let e=t?t/100:0;this._video.volume=e}get progress(){return this.ref.progress}_getUrl(t){return t.includes("/")?t:`https://ucarecdn.com/${t}/`}_desc2attrs(t){let e=[];for(let r in t){let n=r==="src"?this._getUrl(t[r]):t[r];e.push(`${r}="${n}"`)}return e.join(" ")}_timeFmt(t){let e=new Date(Math.round(t)*1e3);return[e.getMinutes(),e.getSeconds()].map(r=>r<10?"0"+r:r).join(":")}_initTracks(){[...this._video.textTracks].forEach(t=>{t.mode="hidden"}),window.localStorage.getItem(Q.is+":captions")&&this.toggleCaptions()}_castAttributes(){let t=["autoplay","loop","muted"];[...this.attributes].forEach(e=>{t.includes(e.name)&&this._video.setAttribute(e.name,e.value)})}initCallback(){super.initCallback(),this._video=this.ref.video,this._castAttributes(),this._video.addEventListener("play",()=>{this.$.ppIcon=q.PAUSE,this.setAttribute("playback","")}),this._video.addEventListener("pause",()=>{this.$.ppIcon=q.PLAY,this.removeAttribute("playback")}),this.addEventListener("fullscreenchange",e=>{console.log(e),document.fullscreenElement===this?this.$.fsIcon=q.FS_OFF:this.$.fsIcon=q.FS_ON}),this.sub("src",e=>{if(!e)return;let r=this._getUrl(e);this._video.src=r}),this.sub("video",async e=>{if(!e)return;let r=await(await window.fetch(this._getUrl(e))).json();r.poster&&(this._video.poster=this._getUrl(r.poster));let n="";r==null||r.sources.forEach(o=>{n+=``}),r.tracks&&(r.tracks.forEach(o=>{n+=``}),this.$.hasSubtitles=!0),this._video.innerHTML+=n,this._initTracks(),console.log(r)}),this._video.addEventListener("loadedmetadata",e=>{this.$.currentTime=this._timeFmt(this._video.currentTime),this.$.totalTime=this._timeFmt(this._video.duration)}),this._video.addEventListener("timeupdate",e=>{let r=Math.round(100*(this._video.currentTime/this._video.duration));this.$.progressCssWidth=r+"%",this.$.currentTime=this._timeFmt(this._video.currentTime)});let t=window.localStorage.getItem(Q.is+":volume");if(t){let e=parseFloat(t);this.setVolume(e),this.$.volumeValue=e}}};Q.template=`
{{currentTime}} / {{totalTime}}
`;Q.bindAttributes({video:"video",src:"src"});var jo="css-src";function ui(s){return class extends s{constructor(){super(...arguments);h(this,"renderShadow",!0);h(this,"pauseRender",!0);h(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),Ae({element:this,attribute:jo,onSuccess:t=>{this.attachShadow({mode:"open"});let e=document.createElement("link");e.rel="stylesheet",e.type="text/css",e.href=t,e.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(e)},onTimeout:()=>{console.error("Attribute `css-src` is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}var ve=class extends ui(b){};var di=class extends b{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};h(di,"template",`Powered by Uploadcare`);var $t=class extends ve{constructor(){super(...arguments);h(this,"requireCtxName",!0);h(this,"init$",Ue(this));h(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};var pi=class extends $t{};pi.template=``;var fi=class extends $t{constructor(){super(...arguments);h(this,"pauseRender",!0)}shadowReadyCallback(){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"]=g.activities.UPLOAD_LIST:this.$["*currentActivity"]=t.initActivity||g.activities.START_FROM}),this.subConfigValue("sourceList",e=>{e!=="local"&&(this.cfg.sourceList="local")}),this.subConfigValue("confirmUpload",e=>{e!==!1&&(this.cfg.confirmUpload=!1)})}};fi.template=``;var mi=class extends $t{constructor(){super(),this.init$={...this.init$,couldBackHistory:!1}}shadowReadyCallback(){let i=this.ref.uBlock;this.sub("*currentActivity",t=>{t||(this.$["*currentActivity"]=i.initActivity||g.activities.START_FROM)}),this.sub("*uploadList",t=>{(t==null?void 0:t.length)>0&&this.$["*currentActivity"]===(i.initActivity||g.activities.START_FROM)&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}),this.sub("*history",t=>this.$.couldBackHistory=t.length>1)}};mi.template=``;var Ji=class extends ui(ot){shadowReadyCallback(){this.__shadowReady=!0,this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async initEditor(){this.__shadowReady&&await super.initEditor()}};function Qi(s){for(let i in s){let t=[...i].reduce((e,r)=>(r.toUpperCase()===r&&(r="-"+r.toLowerCase()),e+=r),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),s[i].reg&&s[i].reg(t)}}var ts="LR";async function Ho(s,i=!1){return new Promise((t,e)=>{if(typeof document!="object"){t(null);return}if(typeof window=="object"&&window[ts]){t(window[ts]);return}let r=document.createElement("script");r.async=!0,r.src=s,r.onerror=()=>{e()},r.onload=()=>{let n=window[ts];i&&Qi(n),t(n)},document.head.appendChild(r)})}export{g as ActivityBlock,Zi as ActivityHeader,Nt as BaseComponent,b as Block,Ke as CameraSource,Ji as CloudImageEditor,Yi as CloudImageEditorActivity,ot as CloudImageEditorBlock,To as Config,Ze as ConfirmationDialog,di as Copyright,ti as CropFrame,$ as Data,Gt as DataOutput,ae as DropArea,pe as EditorCropButtonControl,Xt as EditorFilterControl,ii as EditorImageCropper,Ki as EditorImageFader,_e as EditorOperationControl,si as EditorScroller,ei as EditorSlider,ri as EditorToolbar,ci as ExternalSource,gt as FileItem,de as FilePreview,mi as FileUploaderInline,fi as FileUploaderMinimal,pi as FileUploaderRegular,ne as Icon,Bi as Img,ni as LineLoaderUi,be as LrBtnUi,Xe as MessageBox,ue as Modal,Ns as PACKAGE_NAME,Ds as PACKAGE_VERSION,li as PresenceToggle,Qe as ProgressBar,Je as ProgressBarCommon,hi as Select,ve as ShadowWrapper,le as SimpleBtn,ai as SliderUi,ce as SourceBtn,Hi as SourceList,He as StartFrom,ye as Tabs,ko as UploadCtxProvider,Ye as UploadDetails,qe as UploadList,v as UploaderBlock,Ge as UrlSource,Q as Video,Ho as connectBlocksFrom,Qi as registerBlocks,ui as shadowed,ut as toKebabCase}; \ No newline at end of file +`,"\\n"),i=Gr(i),i=Mt+i+Mt);try{return JSON.parse(i)}catch{throw new Error(`Failed to parse CSS property value: ${i}. Original input: ${s}`)}}var is=0,Pt=null,ht=null,bt=class extends HTMLElement{constructor(){super(),bi(this,"updateCssData",()=>{var s;this.dropCssDataCache(),(s=this.__boundCssProps)==null||s.forEach(i=>{let t=this.getCssData(this.__extractCssName(i),!0);t!==null&&this.$[i]!==t&&(this.$[i]=t)})}),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 bt}initCallback(){}__initCallback(){var s;this.__initialized||(this.__initialized=!0,(s=this.initCallback)==null||s.call(this))}render(s,i=this.renderShadow){let t;if((i||this.constructor.__shadowStylesUrl)&&!this.shadowRoot&&this.attachShadow({mode:"open"}),this.allowCustomTemplate){let r=this.getAttribute(C.USE_TPL);if(r){let n=this.getRootNode(),o=(n==null?void 0:n.querySelector(r))||document.querySelector(r);o?s=o.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)t=s;else if((s==null?void 0:s.constructor)===String){let r=document.createElement("template");r.innerHTML=s,t=r.content.cloneNode(!0)}else this.constructor.__tpl&&(t=this.constructor.__tpl.content.cloneNode(!0));for(let r of this.tplProcessors)r(t,this)}let e=()=>{t&&(i&&this.shadowRoot.appendChild(t)||this.appendChild(t)),this.__initCallback()};if(this.constructor.__shadowStylesUrl){i=!0;let r=document.createElement("link");r.rel="stylesheet",r.href=this.constructor.__shadowStylesUrl,r.onload=e,this.shadowRoot.prepend(r)}else e()}addTemplateProcessor(s){this.tplProcessors.add(s)}get autoCtxName(){return this.__autoCtxName||(this.__autoCtxName=Yt.generate(),this.style.setProperty(C.CSS_CTX_PROP,`'${this.__autoCtxName}'`)),this.__autoCtxName}get cssCtxName(){return this.getCssData(C.CSS_CTX_PROP,!0)}get ctxName(){var s;let i=((s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim())||this.cssCtxName||this.__cachedCtxName||this.autoCtxName;return this.__cachedCtxName=i,i}get localCtx(){return this.__localCtx||(this.__localCtx=$.registerCtx({},this)),this.__localCtx}get nodeCtx(){return $.getCtx(this.ctxName,!1)||$.registerCtx({},this.ctxName)}static __parseProp(s,i){let t,e;if(s.startsWith(C.EXT_DATA_CTX_PRFX))t=i.nodeCtx,e=s.replace(C.EXT_DATA_CTX_PRFX,"");else if(s.includes(C.NAMED_DATA_CTX_SPLTR)){let r=s.split(C.NAMED_DATA_CTX_SPLTR);t=$.getCtx(r[0]),e=r[1]}else t=i.localCtx,e=s;return{ctx:t,name:e}}sub(s,i,t=!0){let e=n=>{this.isConnected&&i(n)},r=bt.__parseProp(s,this);r.ctx.has(r.name)?this.allSubs.add(r.ctx.sub(r.name,e,t)):window.setTimeout(()=>{this.allSubs.add(r.ctx.sub(r.name,e,t))})}notify(s){let i=bt.__parseProp(s,this);i.ctx.notify(i.name)}has(s){let i=bt.__parseProp(s,this);return i.ctx.has(i.name)}add(s,i,t=!1){let e=bt.__parseProp(s,this);e.ctx.add(e.name,i,t)}add$(s,i=!1){for(let t in s)this.add(t,s[t],i)}get $(){if(!this.__stateProxy){let s=Object.create(null);this.__stateProxy=new Proxy(s,{set:(i,t,e)=>{let r=bt.__parseProp(t,this);return r.ctx.pub(r.name,e),!0},get:(i,t)=>{let e=bt.__parseProp(t,this);return e.ctx.read(e.name)}})}return this.__stateProxy}set$(s,i=!1){for(let t in s){let e=s[t];i||![String,Number,Boolean].includes(e==null?void 0:e.constructor)?this.$[t]=e:this.$[t]!==e&&(this.$[t]=e)}}get __ctxOwner(){return this.ctxOwner||this.hasAttribute(C.CTX_OWNER_ATTR)&&this.getAttribute(C.CTX_OWNER_ATTR)!=="false"}__initDataCtx(){let s=this.constructor.__attrDesc;if(s)for(let i of Object.values(s))Object.keys(this.init$).includes(i)||(this.init$[i]="");for(let i in this.init$)if(i.startsWith(C.EXT_DATA_CTX_PRFX))this.nodeCtx.add(i.replace(C.EXT_DATA_CTX_PRFX,""),this.init$[i],this.__ctxOwner);else if(i.includes(C.NAMED_DATA_CTX_SPLTR)){let t=i.split(C.NAMED_DATA_CTX_SPLTR),e=t[0].trim(),r=t[1].trim();if(e&&r){let n=$.getCtx(e,!1);n||(n=$.registerCtx({},e)),n.add(r,this.init$[i])}}else this.localCtx.add(i,this.init$[i]);for(let i in this.cssInit$)this.bindCssData(i,this.cssInit$[i]);this.__dataCtxInitialized=!0}connectedCallback(){var s;if(this.isConnected){if(this.__disconnectTimeout&&window.clearTimeout(this.__disconnectTimeout),!this.connectedOnce){let i=(s=this.getAttribute(C.CTX_NAME_ATTR))==null?void 0:s.trim();if(i&&this.style.setProperty(C.CSS_CTX_PROP,`'${i}'`),this.__initDataCtx(),this[C.SET_LATER_KEY]){for(let t in this[C.SET_LATER_KEY])rs(this,t,this[C.SET_LATER_KEY][t]);delete this[C.SET_LATER_KEY]}this.initChildren=[...this.childNodes];for(let t of Hr)this.addTemplateProcessor(t);if(this.pauseRender)this.__initCallback();else if(this.constructor.__rootStylesLink){let t=this.getRootNode();if(!t)return;if(t==null?void 0:t.querySelector(`link[${C.ROOT_STYLE_ATTR_NAME}="${this.constructor.is}"]`)){this.render();return}let r=this.constructor.__rootStylesLink.cloneNode(!0);r.setAttribute(C.ROOT_STYLE_ATTR_NAME,this.constructor.is),r.onload=()=>{this.render()},t.nodeType===Node.DOCUMENT_NODE?t.head.appendChild(r):t.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);ht==null||ht.delete(this.updateCssData),ht!=null&&ht.size||(Pt==null||Pt.disconnect(),Pt=null,ht=null)},100)))}static reg(s,i=!1){s||(is++,s=`${C.AUTO_TAG_PRFX}-${is}`),this.__tag=s;let t=window.customElements.get(s);if(t){!i&&t!==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(` `));return}window.customElements.define(s,i?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,i,t){var e;if(i===t)return;let r=(e=this.constructor.__attrDesc)==null?void 0:e[s];r?this.__dataCtxInitialized?this.$[r]=t:this.init$[r]=t:this[s]=t}getCssData(s,i=!1){if(this.__cssDataCache||(this.__cssDataCache=Object.create(null)),!Object.keys(this.__cssDataCache).includes(s)){this.__computedStyle||(this.__computedStyle=window.getComputedStyle(this));let t=this.__computedStyle.getPropertyValue(s).trim();try{this.__cssDataCache[s]=Kr(t)}catch{!i&&console.warn(`CSS Data error: ${s}`),this.__cssDataCache[s]=null}}return this.__cssDataCache[s]}__extractCssName(s){return s.split("--").map((i,t)=>t===0?"":i).join("--")}__initStyleAttrObserver(){ht||(ht=new Set),ht.add(this.updateCssData),Pt||(Pt=new MutationObserver(s=>{s[0].type==="attributes"&&ht.forEach(i=>{i()})}),Pt.observe(document,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}))}bindCssData(s,i=""){this.__boundCssProps||(this.__boundCssProps=new Set),this.__boundCssProps.add(s);let t=this.getCssData(this.__extractCssName(s),!0);t===null&&(t=i),this.add(s,t),this.__initStyleAttrObserver()}dropCssDataCache(){this.__cssDataCache=null,this.__computedStyle=null}defineAccessor(s,i,t){let e="__"+s;this[e]=this[s],Object.defineProperty(this,s,{set:r=>{this[e]=r,t?window.setTimeout(()=>{i==null||i(r)}):i==null||i(r)},get:()=>this[e]}),this[s]=this[e]}static set shadowStyles(s){let i=new Blob([s],{type:"text/css"});this.__shadowStylesUrl=URL.createObjectURL(i)}static set rootStyles(s){if(!this.__rootStylesLink){let i=new Blob([s],{type:"text/css"}),t=URL.createObjectURL(i),e=document.createElement("link");e.href=t,e.rel="stylesheet",this.__rootStylesLink=e}}},Nt=bt;bi(Nt,"template");var _i=class{static _print(s){console.warn(s)}static setDefaultTitle(s){this.defaultTitle=s}static setRoutingMap(s){Object.assign(this.appMap,s);for(let i in this.appMap)!this.defaultRoute&&this.appMap[i].default===!0?this.defaultRoute=i:!this.errorRoute&&this.appMap[i].error===!0&&(this.errorRoute=i)}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(t=>{if(t.includes("?"))s.route=t.replace("?","");else if(t.includes("=")){let e=t.split("=");s.options[e[0]]=decodeURI(e[1])}else s.options[t]=!0}),s}static notify(){let s=this.readAddressBar(),i=this.appMap[s.route];if(i&&i.title&&(document.title=i.title),s.route===null&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i&&this.errorRoute){this.applyRoute(this.errorRoute);return}else if(!i&&this.defaultRoute){this.applyRoute(this.defaultRoute);return}else if(!i){this._print(`Route "${s.route}" not found...`);return}let t=new CustomEvent(_i.routingEventName,{detail:{route:s.route,options:Object.assign(i||{},s.options)}});window.dispatchEvent(t)}static reflect(s,i={}){let t=this.appMap[s];if(!t){this._print("Wrong route: "+s);return}let e="?"+s;for(let n in i)i[n]===!0?e+=this.separator+n:e+=this.separator+n+`=${i[n]}`;let r=t.title||this.defaultTitle||"";window.history.pushState(null,r,e),document.title=r}static applyRoute(s,i={}){this.reflect(s,i),this.notify()}static setSeparator(s){this._separator=s}static get separator(){return this._separator||"&"}static createRouterData(s,i){this.setRoutingMap(i);let t=$.registerCtx({route:null,options:null,title:null},s);return window.addEventListener(this.routingEventName,e=>{var r;t.multiPub({route:e.detail.route,options:e.detail.options,title:((r=e.detail.options)==null?void 0:r.title)||this.defaultTitle||""})}),_i.notify(),this.initPopstateListener(),t}static initPopstateListener(){this.__onPopstate||(this.__onPopstate=()=>{this.notify()},window.addEventListener("popstate",this.__onPopstate))}static removePopstateListener(){window.removeEventListener("popstate",this.__onPopstate),this.__onPopstate=null}};_i.appMap=Object.create(null);function yi(s,i){for(let t in i)t.includes("-")?s.style.setProperty(t,i[t]):s.style[t]=i[t]}function Yr(s,i){for(let t in i)i[t].constructor===Boolean?i[t]?s.setAttribute(t,""):s.removeAttribute(t):s.setAttribute(t,i[t])}function Zt(s={tag:"div"}){let i=document.createElement(s.tag);if(s.attributes&&Yr(i,s.attributes),s.styles&&yi(i,s.styles),s.properties)for(let t in s.properties)i[t]=s.properties[t];return s.processors&&s.processors.forEach(t=>{t(i)}),s.children&&s.children.forEach(t=>{let e=Zt(t);i.appendChild(e)}),i}var ns="idb-store-ready",Zr="symbiote-db",Jr="symbiote-idb-update_",Qr=class{_notifyWhenReady(s=null){window.dispatchEvent(new CustomEvent(ns,{detail:{dbName:this.name,storeName:this.storeName,event:s}}))}get _updEventName(){return Jr+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,i){this.name=s,this.storeName=i,this.version=1,this.request=window.indexedDB.open(this.name,this.version),this.request.onupgradeneeded=t=>{this.db=t.target.result,this.objStore=this.db.createObjectStore(i,{keyPath:"_key"}),this.objStore.transaction.oncomplete=e=>{this._notifyWhenReady(e)}},this.request.onsuccess=t=>{this.db=t.target.result,this._notifyWhenReady(t)},this.request.onerror=t=>{console.error(t)},this._subscriptionsMap={},this._updateHandler=t=>{t.key===this.name&&this._subscriptionsMap[t.newValue]&&this._subscriptionsMap[t.newValue].forEach(async r=>{r(await this.read(t.newValue))})},this._localUpdateHandler=t=>{this._updateHandler(t.detail)},window.addEventListener("storage",this._updateHandler),window.addEventListener(this._updEventName,this._localUpdateHandler)}read(s){let t=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).get(s);return new Promise((e,r)=>{t.onsuccess=n=>{var o;(o=n.target.result)!=null&&o._value?e(n.target.result._value):(e(null),console.warn(`IDB: cannot read "${s}"`))},t.onerror=n=>{r(n)}})}write(s,i,t=!1){let e={_key:s,_value:i},n=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).put(e);return new Promise((o,l)=>{n.onsuccess=a=>{t||this._notifySubscribers(s),o(a.target.result)},n.onerror=a=>{l(a)}})}delete(s,i=!1){let e=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).delete(s);return new Promise((r,n)=>{e.onsuccess=o=>{i||this._notifySubscribers(s),r(o)},e.onerror=o=>{n(o)}})}getAll(){let i=this.db.transaction(this.storeName,"readwrite").objectStore(this.storeName).getAll();return new Promise((t,e)=>{i.onsuccess=r=>{let n=r.target.result;t(n.map(o=>o._value))},i.onerror=r=>{e(r)}})}subscribe(s,i){this._subscriptionsMap[s]||(this._subscriptionsMap[s]=new Set);let t=this._subscriptionsMap[s];return t.add(i),{remove:()=>{t.delete(i),t.size||delete this._subscriptionsMap[s]}}}stop(){window.removeEventListener("storage",this._updateHandler),this._subscriptionsMap=null,os.clear(this.name)}},os=class{static get readyEventName(){return ns}static open(s=Zr,i="store"){let t=s+"/"+i;return this._reg[t]||(this._reg[t]=new Qr(s,i)),this._reg[t]}static clear(s){window.indexedDB.deleteDatabase(s);for(let i in this._reg)i.split("/")[0]===s&&delete this._reg[i]}};bi(os,"_reg",Object.create(null));var S=Object.freeze({UPLOAD_START:"upload-start",REMOVE:"remove",UPLOAD_PROGRESS:"upload-progress",UPLOAD_FINISH:"upload-finish",UPLOAD_ERROR:"upload-error",VALIDATION_ERROR:"validation-error",CLOUD_MODIFICATION:"cloud-modification",DATA_OUTPUT:"data-output",DONE_FLOW:"done-flow",INIT_FLOW:"init-flow"}),tn=Object.freeze({[S.UPLOAD_START]:"LR_UPLOAD_START",[S.REMOVE]:"LR_REMOVE",[S.UPLOAD_PROGRESS]:"LR_UPLOAD_PROGRESS",[S.UPLOAD_FINISH]:"LR_UPLOAD_FINISH",[S.UPLOAD_ERROR]:"LR_UPLOAD_ERROR",[S.VALIDATION_ERROR]:"LR_VALIDATION_ERROR",[S.CLOUD_MODIFICATION]:"LR_CLOUD_MODIFICATION",[S.DATA_OUTPUT]:"LR_DATA_OUTPUT",[S.DONE_FLOW]:"LR_DONE_FLOW",[S.INIT_FLOW]:"LR_INIT_FLOW"}),Te=class{constructor(i){h(this,"_timeoutStore",new Map);this._getCtxName=i}bindTarget(i){this._target=i}_dispatch(i,t){var r;(r=this._target)==null||r.dispatchEvent(new CustomEvent(i,{detail:t}));let e=tn[i];window.dispatchEvent(new CustomEvent(e,{detail:{ctx:this._getCtxName(),type:e,data:t}}))}emit(i,t,{debounce:e}={}){if(typeof e!="number"&&!e){this._dispatch(i,t);return}this._timeoutStore.has(i)&&window.clearTimeout(this._timeoutStore.get(i));let r=typeof e=="number"?e:20,n=window.setTimeout(()=>{this._dispatch(i,t),this._timeoutStore.delete(i)},r);this._timeoutStore.set(i,n)}};function I(s,i){let t,e=(...r)=>{clearTimeout(t),t=setTimeout(()=>s(...r),i)};return e.cancel=()=>{clearTimeout(t)},e}var en="--uploadcare-blocks-window-height",Ee="__UPLOADCARE_BLOCKS_WINDOW_HEIGHT_TRACKER_ENABLED__";function vi(){return typeof window[Ee]=="undefined"?!1:!!window[Ee]}function ls(){if(vi())return;let s=()=>{document.documentElement.style.setProperty(en,`${window.innerHeight}px`),window[Ee]=!0},i=I(s,100);return window.addEventListener("resize",i,{passive:!0}),s(),()=>{window[Ee]=!1,window.removeEventListener("resize",i)}}var xe=(s,i)=>new Intl.PluralRules(s).select(i);var sn=s=>s,Ci="{{",cs="}}",as="plural:";function Jt(s,i,t={}){var o;let{openToken:e=Ci,closeToken:r=cs,transform:n=sn}=t;for(let l in i){let a=(o=i[l])==null?void 0:o.toString();s=s.replaceAll(e+l+r,typeof a=="string"?n(a):a)}return s}function hs(s){let i=[],t=s.indexOf(Ci);for(;t!==-1;){let e=s.indexOf(cs,t),r=s.substring(t+2,e);if(r.startsWith(as)){let n=s.substring(t+2,e).replace(as,""),o=n.substring(0,n.indexOf("(")),l=n.substring(n.indexOf("(")+1,n.indexOf(")"));i.push({variable:r,pluralKey:o,countVariable:l})}t=s.indexOf(Ci,e)}return i}var ut=s=>{var i;return(i=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:i.map(t=>t.toLowerCase()).join("-")};var Ae=({element:s,attribute:i,onSuccess:t,onTimeout:e,timeout:r=300})=>{let n=setTimeout(()=>{a.disconnect(),e()},r),o=c=>{let u=s.getAttribute(i);c.type==="attributes"&&c.attributeName===i&&u!==null&&(clearTimeout(n),a.disconnect(),t(u))},l=s.getAttribute(i);l!==null&&(clearTimeout(n),t(l));let a=new MutationObserver(c=>{let u=c[c.length-1];o(u)});a.observe(s,{attributes:!0,attributeFilter:[i]})};var us=new Set;function Qt(s){us.has(s)||(us.add(s),console.warn(s))}function ds(s){return Object.prototype.toString.call(s)==="[object Object]"}var rn=/\W|_/g;function nn(s){return s.split(rn).map((i,t)=>i.charAt(0)[t>0?"toUpperCase":"toLowerCase"]()+i.slice(1)).join("")}function ps(s,{ignoreKeys:i}={ignoreKeys:[]}){return Array.isArray(s)?s.map(t=>ft(t,{ignoreKeys:i})):s}function ft(s,{ignoreKeys:i}={ignoreKeys:[]}){if(Array.isArray(s))return ps(s,{ignoreKeys:i});if(!ds(s))return s;let t={};for(let e of Object.keys(s)){let r=s[e];if(i.includes(e)){t[e]=r;continue}ds(r)?r=ft(r,{ignoreKeys:i}):Array.isArray(r)&&(r=ps(r,{ignoreKeys:i})),t[nn(e)]=r}return t}var on=s=>new Promise(i=>setTimeout(i,s));function Si({libraryName:s,libraryVersion:i,userAgent:t,publicKey:e="",integration:r=""}){let n="JavaScript";if(typeof t=="string")return t;if(typeof t=="function")return t({publicKey:e,libraryName:s,libraryVersion:i,languageName:n,integration:r});let o=[s,i,e].filter(Boolean).join("/"),l=[n,r].filter(Boolean).join("; ");return`${o} (${l})`}var ln={factor:2,time:100};function an(s,i=ln){let t=0;function e(r){let n=Math.round(i.time*i.factor**t);return r({attempt:t,retry:l=>on(l!=null?l:n).then(()=>(t+=1,e(r)))})}return e(s)}var Dt=class extends Error{constructor(t){super();h(this,"originalProgressEvent");this.name="UploadcareNetworkError",this.message="Network error",Object.setPrototypeOf(this,Dt.prototype),this.originalProgressEvent=t}},Se=(s,i)=>{s&&(s.aborted?Promise.resolve().then(i):s.addEventListener("abort",()=>i(),{once:!0}))},yt=class extends Error{constructor(t="Request canceled"){super(t);h(this,"isCancel",!0);Object.setPrototypeOf(this,yt.prototype)}},cn=500,ms=({check:s,interval:i=cn,timeout:t,signal:e})=>new Promise((r,n)=>{let o,l;Se(e,()=>{o&&clearTimeout(o),n(new yt("Poll cancelled"))}),t&&(l=setTimeout(()=>{o&&clearTimeout(o),n(new yt("Timed out"))},t));let a=()=>{try{Promise.resolve(s(e)).then(c=>{c?(l&&clearTimeout(l),r(c)):o=setTimeout(a,i)}).catch(c=>{l&&clearTimeout(l),n(c)})}catch(c){l&&clearTimeout(l),n(c)}};o=setTimeout(a,0)}),x={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"},Ie="application/octet-stream",gs="original",vt=({method:s,url:i,data:t,headers:e={},signal:r,onProgress:n})=>new Promise((o,l)=>{let a=new XMLHttpRequest,c=(s==null?void 0:s.toUpperCase())||"GET",u=!1;a.open(c,i,!0),e&&Object.entries(e).forEach(d=>{let[p,m]=d;typeof m!="undefined"&&!Array.isArray(m)&&a.setRequestHeader(p,m)}),a.responseType="text",Se(r,()=>{u=!0,a.abort(),l(new yt)}),a.onload=()=>{if(a.status!=200)l(new Error(`Error ${a.status}: ${a.statusText}`));else{let d={method:c,url:i,data:t,headers:e||void 0,signal:r,onProgress:n},p=a.getAllResponseHeaders().trim().split(/[\r\n]+/),m={};p.forEach(function(A){let E=A.split(": "),T=E.shift(),w=E.join(": ");T&&typeof T!="undefined"&&(m[T]=w)});let f=a.response,_=a.status;o({request:d,data:f,headers:m,status:_})}},a.onerror=d=>{u||l(new Dt(d))},n&&typeof n=="function"&&(a.upload.onprogress=d=>{d.lengthComputable?n({isComputable:!0,value:d.loaded/d.total}):n({isComputable:!1})}),t?a.send(t):a.send()});function hn(s,...i){return s}var un=({name:s})=>s?[s]:[],dn=hn,pn=()=>new FormData,_s=s=>!1,ke=s=>typeof Blob!="undefined"&&s instanceof Blob,Oe=s=>typeof File!="undefined"&&s instanceof File,Le=s=>!!s&&typeof s=="object"&&!Array.isArray(s)&&"uri"in s&&typeof s.uri=="string",Ft=s=>ke(s)||Oe(s)||_s()||Le(s),fn=s=>typeof s=="string"||typeof s=="number"||typeof s=="undefined",mn=s=>!!s&&typeof s=="object"&&!Array.isArray(s),gn=s=>!!s&&typeof s=="object"&&"data"in s&&Ft(s.data);function _n(s,i,t){if(gn(t)){let{name:e,contentType:r}=t,n=dn(t.data,e,r!=null?r:Ie),o=un({name:e,contentType:r});s.push([i,n,...o])}else if(mn(t))for(let[e,r]of Object.entries(t))typeof r!="undefined"&&s.push([`${i}[${e}]`,String(r)]);else fn(t)&&t&&s.push([i,t.toString()])}function bn(s){let i=[];for(let[t,e]of Object.entries(s))_n(i,t,e);return i}function Ii(s){let i=pn(),t=bn(s);for(let e of t){let[r,n,...o]=e;i.append(r,n,...o)}return i}var R=class extends Error{constructor(t,e,r,n,o){super();h(this,"isCancel");h(this,"code");h(this,"request");h(this,"response");h(this,"headers");this.name="UploadClientError",this.message=t,this.code=e,this.request=r,this.response=n,this.headers=o,Object.setPrototypeOf(this,R.prototype)}},yn=s=>{let i=new URLSearchParams;for(let[t,e]of Object.entries(s))e&&typeof e=="object"&&!Array.isArray(e)?Object.entries(e).filter(r=>{var n;return(n=r[1])!=null?n:!1}).forEach(r=>i.set(`${t}[${r[0]}]`,String(r[1]))):Array.isArray(e)?e.forEach(r=>{i.append(`${t}[]`,r)}):typeof e=="string"&&e?i.set(t,e):typeof e=="number"&&i.set(t,e.toString());return i.toString()},dt=(s,i,t)=>{let e=new URL(s);return e.pathname=(e.pathname+i).replace("//","/"),t&&(e.search=yn(t)),e.toString()},vn="6.8.0",Cn="UploadcareUploadClient",wn=vn;function It(s){return Si({libraryName:Cn,libraryVersion:wn,...s})}var Tn="RequestThrottledError",fs=15e3,En=1e3;function xn(s){let{headers:i}=s||{};if(!i||typeof i["retry-after"]!="string")return fs;let t=parseInt(i["retry-after"],10);return Number.isFinite(t)?t*1e3:fs}function Ct(s,i){let{retryThrottledRequestMaxTimes:t,retryNetworkErrorMaxTimes:e}=i;return an(({attempt:r,retry:n})=>s().catch(o=>{if("response"in o&&(o==null?void 0:o.code)===Tn&&r{let i="";return(ke(s)||Oe(s)||Le(s))&&(i=s.type),i||Ie},ys=s=>{let i="";return Oe(s)&&s.name?i=s.name:ke(s)||_s()?i="":Le(s)&&s.name&&(i=s.name),i||gs};function ki(s){return typeof s=="undefined"||s==="auto"?"auto":s?"1":"0"}function An(s,{publicKey:i,fileName:t,contentType:e,baseURL:r=x.baseURL,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(r,"/base/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({file:{data:s,name:t||ys(s),contentType:e||bs(s)},UPLOADCARE_PUB_KEY:i,UPLOADCARE_STORE:ki(l),signature:n,expire:o,source:u,metadata:_}),signal:a,onProgress:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var Ei;(function(s){s.Token="token",s.FileInfo="file_info"})(Ei||(Ei={}));function $n(s,{publicKey:i,baseURL:t=x.baseURL,store:e,fileName:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,source:c="url",signal:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},url:dt(t,"/from_url/",{jsonerrors:1,pub_key:i,source_url:s,store:ki(e),filename:r,check_URL_duplicates:n?1:void 0,save_URL_duplicates:o?1:void 0,signature:l,expire:a,source:c,metadata:_}),signal:u}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w}),{retryNetworkErrorMaxTimes:f,retryThrottledRequestMaxTimes:m})}var j;(function(s){s.Unknown="unknown",s.Waiting="waiting",s.Progress="progress",s.Error="error",s.Success="success"})(j||(j={}));var Sn=s=>"status"in s&&s.status===j.Error;function In(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:l=x.retryNetworkErrorMaxTimes}={}){return Ct(()=>vt({method:"GET",headers:i?{"X-UC-User-Agent":It({publicKey:i,integration:r,userAgent:n})}:void 0,url:dt(t,"/from_url/status/",{jsonerrors:1,token:s}),signal:e}).then(({data:a,headers:c,request:u})=>{let d=ft(JSON.parse(a));if("error"in d&&!Sn(d))throw new R(d.error.content,void 0,u,d,c);return d}),{retryNetworkErrorMaxTimes:l,retryThrottledRequestMaxTimes:o})}function kn(s,{publicKey:i,baseURL:t=x.baseURL,jsonpCallback:e,secureSignature:r,secureExpire:n,signal:o,source:l,integration:a,userAgent:c,retryThrottledRequestMaxTimes:u=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:d=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",headers:{"X-UC-User-Agent":It({publicKey:i,integration:a,userAgent:c})},url:dt(t,"/group/",{jsonerrors:1,pub_key:i,files:s,callback:e,signature:r,expire:n,source:l}),signal:o}).then(({data:p,headers:m,request:f})=>{let _=ft(JSON.parse(p));if("error"in _)throw new R(_.error.content,_.error.errorCode,f,_,m);return _}),{retryNetworkErrorMaxTimes:d,retryThrottledRequestMaxTimes:u})}function vs(s,{publicKey:i,baseURL:t=x.baseURL,signal:e,source:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"GET",headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},url:dt(t,"/info/",{jsonerrors:1,pub_key:i,file_id:s,source:r}),signal:e}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function On(s,{publicKey:i,contentType:t,fileName:e,multipartChunkSize:r=x.multipartChunkSize,baseURL:n="",secureSignature:o,secureExpire:l,store:a,signal:c,source:u="local",integration:d,userAgent:p,retryThrottledRequestMaxTimes:m=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:f=x.retryNetworkErrorMaxTimes,metadata:_}){return Ct(()=>vt({method:"POST",url:dt(n,"/multipart/start/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:d,userAgent:p})},data:Ii({filename:e||gs,size:s,content_type:t||Ie,part_size:r,UPLOADCARE_STORE:ki(a),UPLOADCARE_PUB_KEY:i,signature:o,expire:l,source:u,metadata:_}),signal:c}).then(({data:A,headers:E,request:T})=>{let w=ft(JSON.parse(A));if("error"in w)throw new R(w.error.content,w.error.errorCode,T,w,E);return w.parts=Object.keys(w.parts).map(B=>w.parts[B]),w}),{retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})}function Ln(s,i,{contentType:t,signal:e,onProgress:r,retryThrottledRequestMaxTimes:n=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:o=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"PUT",url:i,data:s,onProgress:r,signal:e,headers:{"Content-Type":t||Ie}}).then(l=>(r&&r({isComputable:!0,value:1}),l)).then(({status:l})=>({code:l})),{retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o})}function Un(s,{publicKey:i,baseURL:t=x.baseURL,source:e="local",signal:r,integration:n,userAgent:o,retryThrottledRequestMaxTimes:l=x.retryThrottledRequestMaxTimes,retryNetworkErrorMaxTimes:a=x.retryNetworkErrorMaxTimes}){return Ct(()=>vt({method:"POST",url:dt(t,"/multipart/complete/",{jsonerrors:1}),headers:{"X-UC-User-Agent":It({publicKey:i,integration:n,userAgent:o})},data:Ii({uuid:s,UPLOADCARE_PUB_KEY:i,source:e}),signal:r}).then(({data:c,headers:u,request:d})=>{let p=ft(JSON.parse(c));if("error"in p)throw new R(p.error.content,p.error.errorCode,d,p,u);return p}),{retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})}function Oi(s,{publicKey:i,baseURL:t,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l,signal:a,onProgress:c}){return ms({check:u=>vs(s,{publicKey:i,baseURL:t,signal:u,source:e,integration:r,userAgent:n,retryThrottledRequestMaxTimes:o,retryNetworkErrorMaxTimes:l}).then(d=>d.isReady?d:(c&&c({isComputable:!0,value:1}),!1)),signal:a})}function Rn(s){return"defaultEffects"in s}var pt=class{constructor(i,{baseCDN:t=x.baseCDN,fileName:e}={}){h(this,"uuid");h(this,"name",null);h(this,"size",null);h(this,"isStored",null);h(this,"isImage",null);h(this,"mimeType",null);h(this,"cdnUrl",null);h(this,"s3Url",null);h(this,"originalFilename",null);h(this,"imageInfo",null);h(this,"videoInfo",null);h(this,"contentInfo",null);h(this,"metadata",null);h(this,"s3Bucket",null);h(this,"defaultEffects",null);let{uuid:r,s3Bucket:n}=i,o=dt(t,`${r}/`),l=n?dt(`https://${n}.s3.amazonaws.com/`,`${r}/${i.filename}`):null;this.uuid=r,this.name=e||i.filename,this.size=i.size,this.isStored=i.isStored,this.isImage=i.isImage,this.mimeType=i.mimeType,this.cdnUrl=o,this.originalFilename=i.originalFilename,this.imageInfo=i.imageInfo,this.videoInfo=i.videoInfo,this.contentInfo=i.contentInfo,this.metadata=i.metadata||null,this.s3Bucket=n||null,this.s3Url=l,Rn(i)&&(this.defaultEffects=i.defaultEffects)}},Pn=(s,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,contentType:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,baseCDN:_,metadata:A})=>An(s,{publicKey:i,fileName:t,contentType:l,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:A}).then(({file:E})=>Oi(E,{publicKey:i,baseURL:e,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(E=>new pt(E,{baseCDN:_})),Mn=(s,{publicKey:i,fileName:t,baseURL:e,signal:r,onProgress:n,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u,baseCDN:d})=>vs(s,{publicKey:i,baseURL:e,signal:r,source:o,integration:l,userAgent:a,retryThrottledRequestMaxTimes:c,retryNetworkErrorMaxTimes:u}).then(p=>new pt(p,{baseCDN:d,fileName:t})).then(p=>(n&&n({isComputable:!0,value:1}),p)),Nn=(s,{signal:i}={})=>{let t=null,e=null,r=s.map(()=>new AbortController),n=o=>()=>{e=o,r.forEach((l,a)=>a!==o&&l.abort())};return Se(i,()=>{r.forEach(o=>o.abort())}),Promise.all(s.map((o,l)=>{let a=n(l);return Promise.resolve().then(()=>o({stopRace:a,signal:r[l].signal})).then(c=>(a(),c)).catch(c=>(t=c,null))})).then(o=>{if(e===null)throw t;return o[e]})},Dn=window.WebSocket,xi=class{constructor(){h(this,"events",Object.create({}))}emit(i,t){var e;(e=this.events[i])==null||e.forEach(r=>r(t))}on(i,t){this.events[i]=this.events[i]||[],this.events[i].push(t)}off(i,t){t?this.events[i]=this.events[i].filter(e=>e!==t):this.events[i]=[]}},Fn=(s,i)=>s==="success"?{status:j.Success,...i}:s==="progress"?{status:j.Progress,...i}:{status:j.Error,...i},Ai=class{constructor(i,t=3e4){h(this,"key");h(this,"disconnectTime");h(this,"ws");h(this,"queue",[]);h(this,"isConnected",!1);h(this,"subscribers",0);h(this,"emmitter",new xi);h(this,"disconnectTimeoutId",null);this.key=i,this.disconnectTime=t}connect(){if(this.disconnectTimeoutId&&clearTimeout(this.disconnectTimeoutId),!this.isConnected&&!this.ws){let i=`wss://ws.pusherapp.com/app/${this.key}?protocol=5&client=js&version=1.12.2`;this.ws=new Dn(i),this.ws.addEventListener("error",t=>{this.emmitter.emit("error",new Error(t.message))}),this.emmitter.on("connected",()=>{this.isConnected=!0,this.queue.forEach(t=>this.send(t.event,t.data)),this.queue=[]}),this.ws.addEventListener("message",t=>{let e=JSON.parse(t.data.toString());switch(e.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(e.channel,Fn(e.event,JSON.parse(e.data)))}})}}disconnect(){let i=()=>{var t;(t=this.ws)==null||t.close(),this.ws=void 0,this.isConnected=!1};this.disconnectTime?this.disconnectTimeoutId=setTimeout(()=>{i()},this.disconnectTime):i()}send(i,t){var r;let e=JSON.stringify({event:i,data:t});(r=this.ws)==null||r.send(e)}subscribe(i,t){this.subscribers+=1,this.connect();let e=`task-status-${i}`,r={event:"pusher:subscribe",data:{channel:e}};this.emmitter.on(e,t),this.isConnected?this.send(r.event,r.data):this.queue.push(r)}unsubscribe(i){this.subscribers-=1;let t=`task-status-${i}`,e={event:"pusher:unsubscribe",data:{channel:t}};this.emmitter.off(t),this.isConnected?this.send(e.event,e.data):this.queue=this.queue.filter(r=>r.data.channel!==t),this.subscribers===0&&this.disconnect()}onError(i){return this.emmitter.on("error",i),()=>this.emmitter.off("error",i)}},wi=null,Li=s=>{if(!wi){let i=typeof window=="undefined"?0:3e4;wi=new Ai(s,i)}return wi},Vn=s=>{Li(s).connect()};function Bn({token:s,publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,onProgress:l,signal:a}){return ms({check:c=>In(s,{publicKey:i,baseURL:t,integration:e,userAgent:r,retryThrottledRequestMaxTimes:n,retryNetworkErrorMaxTimes:o,signal:c}).then(u=>{switch(u.status){case j.Error:return new R(u.error,u.errorCode);case j.Waiting:return!1;case j.Unknown:return new R(`Token "${s}" was not found.`);case j.Progress:return l&&(u.total==="unknown"?l({isComputable:!1}):l({isComputable:!0,value:u.done/u.total})),!1;case j.Success:return l&&l({isComputable:!0,value:u.done/u.total}),u;default:throw new Error("Unknown status")}}),signal:a})}var zn=({token:s,pusherKey:i,signal:t,onProgress:e})=>new Promise((r,n)=>{let o=Li(i),l=o.onError(n),a=()=>{l(),o.unsubscribe(s)};Se(t,()=>{a(),n(new yt("pusher cancelled"))}),o.subscribe(s,c=>{switch(c.status){case j.Progress:{e&&(c.total==="unknown"?e({isComputable:!1}):e({isComputable:!0,value:c.done/c.total}));break}case j.Success:{a(),e&&e({isComputable:!0,value:c.done/c.total}),r(c);break}case j.Error:a(),n(new R(c.msg,c.error_code))}})}),jn=(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:r,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,onProgress:d,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,pusherKey:A=x.pusherKey,metadata:E})=>Promise.resolve(Vn(A)).then(()=>$n(s,{publicKey:i,fileName:t,baseURL:e,checkForUrlDuplicates:n,saveUrlForRecurrentUploads:o,secureSignature:l,secureExpire:a,store:c,signal:u,source:p,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,metadata:E})).catch(T=>{let w=Li(A);return w==null||w.disconnect(),Promise.reject(T)}).then(T=>T.type===Ei.FileInfo?T:Nn([({signal:w})=>Bn({token:T.token,publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:w}),({signal:w})=>zn({token:T.token,pusherKey:A,signal:w,onProgress:d})],{signal:u})).then(T=>{if(T instanceof R)throw T;return T}).then(T=>Oi(T.uuid,{publicKey:i,baseURL:e,integration:m,userAgent:f,retryThrottledRequestMaxTimes:_,onProgress:d,signal:u})).then(T=>new pt(T,{baseCDN:r})),Ti=new WeakMap,Hn=async s=>{if(Ti.has(s))return Ti.get(s);let i=await fetch(s.uri).then(t=>t.blob());return Ti.set(s,i),i},Cs=async s=>{if(Oe(s)||ke(s))return s.size;if(Le(s))return(await Hn(s)).size;throw new Error("Unknown file type. Cannot determine file size.")},Wn=(s,i=x.multipartMinFileSize)=>s>=i,ws=s=>{let i="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",t=new RegExp(i);return!Ft(s)&&t.test(s)},Ui=s=>{let i="^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$",t=new RegExp(i);return!Ft(s)&&t.test(s)},Xn=(s,i)=>new Promise((t,e)=>{let r=[],n=!1,o=i.length,l=[...i],a=()=>{let c=i.length-l.length,u=l.shift();u&&u().then(d=>{n||(r[c]=d,o-=1,o?a():t(r))}).catch(d=>{n=!0,e(d)})};for(let c=0;c{let r=e*i,n=Math.min(r+e,t);return s.slice(r,n)},Gn=async(s,i,t)=>e=>qn(s,e,i,t),Kn=(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a})=>Ln(s,i,{publicKey:t,contentType:e,onProgress:r,signal:n,integration:o,retryThrottledRequestMaxTimes:l,retryNetworkErrorMaxTimes:a}),Yn=async(s,{publicKey:i,fileName:t,fileSize:e,baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,onProgress:c,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,contentType:_,multipartChunkSize:A=x.multipartChunkSize,maxConcurrentRequests:E=x.maxConcurrentRequests,baseCDN:T,metadata:w})=>{let B=e!=null?e:await Cs(s),at,St=(U,z)=>{if(!c)return;at||(at=Array(U).fill(0));let J=tt=>tt.reduce((ct,gi)=>ct+gi,0);return tt=>{tt.isComputable&&(at[z]=tt.value,c({isComputable:!0,value:J(at)/U}))}};return _||(_=bs(s)),On(B,{publicKey:i,contentType:_,fileName:t||ys(s),baseURL:r,secureSignature:n,secureExpire:o,store:l,signal:a,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,metadata:w}).then(async({uuid:U,parts:z})=>{let J=await Gn(s,B,A);return Promise.all([U,Xn(E,z.map((tt,ct)=>()=>Kn(J(ct),tt,{publicKey:i,contentType:_,onProgress:St(z.length,ct),signal:a,integration:d,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})))])}).then(([U])=>Un(U,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f})).then(U=>U.isReady?U:Oi(U.uuid,{publicKey:i,baseURL:r,source:u,integration:d,userAgent:p,retryThrottledRequestMaxTimes:m,retryNetworkErrorMaxTimes:f,onProgress:c,signal:a})).then(U=>new pt(U,{baseCDN:T}))};async function Ri(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartMinFileSize:_,multipartChunkSize:A,maxConcurrentRequests:E,baseCDN:T=x.baseCDN,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,pusherKey:at,metadata:St}){if(Ft(s)){let U=await Cs(s);return Wn(U,_)?Yn(s,{publicKey:i,contentType:f,multipartChunkSize:A,fileSize:U,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,maxConcurrentRequests:E,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St}):Pn(s,{publicKey:i,fileName:t,contentType:f,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T,metadata:St})}if(Ui(s))return jn(s,{publicKey:i,fileName:t,baseURL:e,baseCDN:T,checkForUrlDuplicates:w,saveUrlForRecurrentUploads:B,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,pusherKey:at,metadata:St});if(ws(s))return Mn(s,{publicKey:i,fileName:t,baseURL:e,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,baseCDN:T});throw new TypeError(`File uploading from "${s}" is not supported`)}var $i=class{constructor(i,{baseCDN:t=x.baseCDN}={}){h(this,"uuid");h(this,"filesCount");h(this,"totalSize");h(this,"isStored");h(this,"isImage");h(this,"cdnUrl");h(this,"files");h(this,"createdAt");h(this,"storedAt",null);this.uuid=i.id,this.filesCount=i.filesCount;let e=i.files.filter(Boolean);this.totalSize=Object.values(e).reduce((r,n)=>r+n.size,0),this.isStored=!!i.datetimeStored,this.isImage=!!Object.values(e).filter(r=>r.isImage).length,this.cdnUrl=i.cdnUrl,this.files=e.map(r=>new pt(r,{baseCDN:t})),this.createdAt=i.datetimeCreated,this.storedAt=i.datetimeStored}},Zn=s=>{for(let i of s)if(!Ft(i))return!1;return!0},Jn=s=>{for(let i of s)if(!ws(i))return!1;return!0},Qn=s=>{for(let i of s)if(!Ui(i))return!1;return!0};function Ts(s,{publicKey:i,fileName:t,baseURL:e=x.baseURL,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:a,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_=x.multipartChunkSize,baseCDN:A=x.baseCDN,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T,jsonpCallback:w}){if(!Zn(s)&&!Qn(s)&&!Jn(s))throw new TypeError(`Group uploading from "${s}" is not supported`);let B,at=!0,St=s.length,U=(z,J)=>{if(!a)return;B||(B=Array(z).fill(0));let tt=ct=>ct.reduce((gi,Ir)=>gi+Ir)/z;return ct=>{if(!ct.isComputable||!at){at=!1,a({isComputable:!1});return}B[J]=ct.value,a({isComputable:!0,value:tt(B)})}};return Promise.all(s.map((z,J)=>Ft(z)||Ui(z)?Ri(z,{publicKey:i,fileName:t,baseURL:e,secureSignature:r,secureExpire:n,store:o,signal:l,onProgress:U(St,J),source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m,contentType:f,multipartChunkSize:_,baseCDN:A,checkForUrlDuplicates:E,saveUrlForRecurrentUploads:T}).then(tt=>tt.uuid):z)).then(z=>kn(z,{publicKey:i,baseURL:e,jsonpCallback:w,secureSignature:r,secureExpire:n,signal:l,source:c,integration:u,userAgent:d,retryThrottledRequestMaxTimes:p,retryNetworkErrorMaxTimes:m}).then(J=>new $i(J,{baseCDN:A})).then(J=>(a&&a({isComputable:!0,value:1}),J)))}var $e=class{constructor(i){h(this,"_concurrency",1);h(this,"_pending",[]);h(this,"_running",0);h(this,"_resolvers",new Map);h(this,"_rejectors",new Map);this._concurrency=i}_run(){let i=this._concurrency-this._running;for(let t=0;t{this._resolvers.delete(e),this._rejectors.delete(e),this._running-=1,this._run()}).then(o=>r(o)).catch(o=>n(o))}}add(i){return new Promise((t,e)=>{this._resolvers.set(i,t),this._rejectors.set(i,e),this._pending.push(i),this._run()})}get pending(){return this._pending.length}get running(){return this._running}set concurrency(i){this._concurrency=i,this._run()}get concurrency(){return this._concurrency}};var Pi=()=>({"*blocksRegistry":new Set,"*eventEmitter":null}),Mi=s=>({...Pi(),"*currentActivity":"","*currentActivityParams":{},"*history":[],"*historyBack":null,"*closeModal":()=>{s.set$({"*modalActive":!1,"*currentActivity":""})}}),Ue=s=>({...Mi(s),"*commonProgress":0,"*uploadList":[],"*outputData":null,"*focusedEntry":null,"*uploadMetadata":null,"*uploadQueue":new $e(1)});function Es(s,i){[...s.querySelectorAll("[l10n]")].forEach(t=>{let e=t.getAttribute("l10n"),r="textContent";if(e.includes(":")){let o=e.split(":");r=o[0],e=o[1]}let n="l10n:"+e;i.__l10nKeys.push(n),i.add(n,e),i.sub(n,o=>{t[r]=i.l10n(o)}),t.removeAttribute("l10n")})}var H=s=>`*cfg/${s}`;var Ni="lr-",b=class extends Nt{constructor(){super();h(this,"requireCtxName",!1);h(this,"allowCustomTemplate",!0);h(this,"init$",Pi());h(this,"updateCtxCssData",()=>{Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/");let t=this.$["*blocksRegistry"];for(let e of t)e.isConnected&&e.updateCssData()});this.activityType=null,this.addTemplateProcessor(Es),this.__l10nKeys=[]}l10n(t,e={}){if(!t)return"";let r=this.getCssData("--l10n-"+t,!0)||t,n=hs(r);for(let l of n)e[l.variable]=this.pluralize(l.pluralKey,Number(e[l.countVariable]));return Jt(r,e)}pluralize(t,e){let r=this.l10n("locale-name")||"en-US",n=xe(r,e);return this.l10n(`${t}__${n}`)}emit(t,e,r){let n=this.has("*eventEmitter")&&this.$["*eventEmitter"];n&&n.emit(t,e,r)}applyL10nKey(t,e){let r="l10n:"+t;this.$[r]=e,this.__l10nKeys.push(t)}hasBlockInCtx(t){let e=this.$["*blocksRegistry"];for(let r of e)if(t(r))return!0;return!1}setOrAddState(t,e){this.add$({[t]:e},!0)}setActivity(t){if(this.hasBlockInCtx(e=>e.activityType===t)){this.$["*currentActivity"]=t;return}console.warn(`Activity type "${t}" not found in the context`)}connectedCallback(){let t=this.constructor.className;t&&this.classList.toggle(`${Ni}${t}`,!0),vi()||(this._destroyInnerHeightTracker=ls()),this.hasAttribute("retpl")&&(this.constructor.template=null,this.processInnerHtml=!0),this.requireCtxName?Ae({element:this,attribute:"ctx-name",onSuccess:()=>{super.connectedCallback()},onTimeout:()=>{console.error("Attribute `ctx-name` is required and it is not set.")}}):super.connectedCallback()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._destroyInnerHeightTracker)==null||t.call(this)}initCallback(){this.$["*blocksRegistry"].add(this),this.$["*eventEmitter"]||(this.$["*eventEmitter"]=new Te(()=>this.ctxName))}destroyCallback(){this.$["*blocksRegistry"].delete(this)}fileSizeFmt(t,e=2){let r=["B","KB","MB","GB","TB"],n=c=>this.getCssData("--l10n-unit-"+c.toLowerCase(),!0)||c;if(t===0)return`0 ${n(r[0])}`;let o=1024,l=e<0?0:e,a=Math.floor(Math.log(t)/Math.log(o));return parseFloat((t/o**a).toFixed(l))+" "+n(r[a])}proxyUrl(t){let e=this.cfg.secureDeliveryProxy;return e?Jt(e,{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}parseCfgProp(t){return{ctx:this.nodeCtx,name:t.replace("*","")}}get cfg(){if(!this.__cfgProxy){let t=Object.create(null);this.__cfgProxy=new Proxy(t,{set:(e,r,n)=>{if(typeof r!="string")return!1;let o=H(r);return this.$[o]=n,!0},get:(e,r)=>{let n=H(r),o=this.parseCfgProp(n);return o.ctx.has(o.name)?o.ctx.read(o.name):(Qt("Using CSS variables for configuration is deprecated. Please use `lr-config` instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.getCssData(`--cfg-${ut(r)}`))}})}return this.__cfgProxy}subConfigValue(t,e){let r=this.parseCfgProp(H(t));r.ctx.has(r.name)?this.sub(H(t),e):(this.bindCssData(`--cfg-${ut(t)}`),this.sub(`--cfg-${ut(t)}`,e))}static reg(t){if(!t){super.reg();return}super.reg(t.startsWith(Ni)?t:Ni+t)}};h(b,"StateConsumerScope",null),h(b,"className","");var xs="active",te="___ACTIVITY_IS_ACTIVE___",et=class extends b{constructor(){super(...arguments);h(this,"historyTracked",!1);h(this,"init$",Mi(this));h(this,"_debouncedHistoryFlush",I(this._historyFlush.bind(this),10))}_deactivate(){var e;let t=et._activityRegistry[this.activityKey];this[te]=!1,this.removeAttribute(xs),(e=t==null?void 0:t.deactivateCallback)==null||e.call(t)}_activate(){var e;let t=et._activityRegistry[this.activityKey];this.$["*historyBack"]=this.historyBack.bind(this),this[te]=!0,this.setAttribute(xs,""),(e=t==null?void 0:t.activateCallback)==null||e.call(t),this._debouncedHistoryFlush()}initCallback(){super.initCallback(),this.hasAttribute("current-activity")&&this.sub("*currentActivity",t=>{this.setAttribute("current-activity",t)}),this.activityType&&(this.hasAttribute("activity")||this.setAttribute("activity",this.activityType),this.sub("*currentActivity",t=>{this.activityType!==t&&this[te]?this._deactivate():this.activityType===t&&!this[te]&&this._activate(),t||(this.$["*history"]=[])}))}_historyFlush(){let t=this.$["*history"];t&&(t.length>10&&(t=t.slice(t.length-11,t.length-1)),this.historyTracked&&t[t.length-1]!==this.activityType&&t.push(this.activityType),this.$["*history"]=t)}_isActivityRegistered(){return this.activityType&&!!et._activityRegistry[this.activityKey]}get isActivityActive(){return this[te]}get couldOpenActivity(){return!0}registerActivity(t,e={}){let{onActivate:r,onDeactivate:n}=e;et._activityRegistry||(et._activityRegistry=Object.create(null)),et._activityRegistry[this.activityKey]={activateCallback:r,deactivateCallback:n}}unregisterActivity(){this.isActivityActive&&this._deactivate(),et._activityRegistry[this.activityKey]=void 0}destroyCallback(){super.destroyCallback(),this._isActivityRegistered()&&this.unregisterActivity(),Object.keys(et._activityRegistry).length===0&&(this.$["*currentActivity"]=null)}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 e;let t=this.$["*history"];if(t){let r=t.pop();for(;r===this.activityType;)r=t.pop();let n=!!r;if(r){let l=[...this.$["*blocksRegistry"]].find(a=>a.activityType===r);n=(e=l==null?void 0:l.couldOpenActivity)!=null?e:!1}r=n?r:void 0,this.$["*currentActivity"]=r,this.$["*history"]=t,r||this.setOrAddState("*modalActive",!1)}}},g=et;h(g,"_activityRegistry",Object.create(null));g.activities=Object.freeze({START_FROM:"start-from",CAMERA:"camera",DRAW:"draw",UPLOAD_LIST:"upload-list",URL:"url",CONFIRMATION:"confirmation",CLOUD_IMG_EDIT:"cloud-image-edit",EXTERNAL:"external",DETAILS:"details"});var ee=33.333333333333336,y=1,Di=24,As=6;function kt(s,i){for(let t in i)s.setAttributeNS(null,t,i[t].toString())}function Y(s,i={}){let t=document.createElementNS("http://www.w3.org/2000/svg",s);return kt(t,i),t}function $s(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=i.includes("w")?0:1,a=i.includes("n")?0:1,c=[-1,1][l],u=[-1,1][a],d=[e+l*n+1.5*c,r+a*o+1.5*u-24*t*u],p=[e+l*n+1.5*c,r+a*o+1.5*u],m=[e+l*n-24*t*c+1.5*c,r+a*o+1.5*u];return{d:`M ${d[0]} ${d[1]} L ${p[0]} ${p[1]} L ${m[0]} ${m[1]}`,center:p}}function Ss(s,i,t){let{x:e,y:r,width:n,height:o}=s,l=["n","s"].includes(i)?.5:{w:0,e:1}[i],a=["w","e"].includes(i)?.5:{n:0,s:1}[i],c=[-1,1][l],u=[-1,1][a],d,p;["n","s"].includes(i)?(d=[e+l*n-34*t/2,r+a*o+1.5*u],p=[e+l*n+34*t/2,r+a*o+1.5*u]):(d=[e+l*n+1.5*c,r+a*o-34*t/2],p=[e+l*n+1.5*c,r+a*o+34*t/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 Is(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 ks({rect:s,delta:[i,t],imageBox:e}){return Bt({...s,x:s.x+i,y:s.y+t},e)}function Bt(s,i){let{x:t}=s,{y:e}=s;return s.xi.x+i.width&&(t=i.x+i.width-s.width),s.yi.y+i.height&&(e=i.y+i.height-s.height),{...s,x:t,y:e}}function to({rect:s,delta:i,aspectRatio:t,imageBox:e}){let[,r]=i,{y:n,width:o,height:l}=s;n+=r,l-=r,t&&(o=l*t);let a=s.x+s.width/2-o/2;return n<=e.y&&(n=e.y,l=s.y+s.height-n,t&&(o=l*t,a=s.x+s.width/2-o/2)),a<=e.x&&(a=e.x,n=s.y+s.height-l),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y+s.height-l),l=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x+s.width-o),l=e.y+e.height&&(l=e.y+e.height-n,t&&(o=l*t),a=s.x+s.width/2-o/2),a<=e.x&&(a=e.x,n=s.y),a+o>=e.x+e.width&&(a=Math.max(e.x,e.x+e.width-o),o=e.x+e.width-a,t&&(l=o/t),n=s.y),l=e.x+e.width&&(o=e.x+e.width-n,t&&(l=o/t),a=s.y+s.height/2-l/2),a<=e.y&&(a=e.y,n=s.x),a+l>=e.y+e.height&&(a=Math.max(e.y,e.y+e.height-l),l=e.y+e.height-a,t&&(o=l*t),n=s.x),lt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x+s.width-a,l=e.y)):t&&(r=c*t-a,a=a+r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y+s.height-c)),ce.x+e.width&&(r=e.x+e.width-o-a),l+nt?(n=a/t-c,c+=n,l-=n,l<=e.y&&(c=c-(e.y-l),a=c*t,o=s.x,l=e.y)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y+s.height-c)),ce.y+e.height&&(n=e.y+e.height-l-c),o+=r,a-=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x+s.width-a,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o-=r,o<=e.x&&(a=a-(e.x-o),c=a/t,o=e.x,l=s.y)),ce.x+e.width&&(r=e.x+e.width-o-a),l+c+n>e.y+e.height&&(n=e.y+e.height-l-c),a+=r,c+=n,t&&Math.abs(a/c)>t?(n=a/t-c,c+=n,l+c>=e.y+e.height&&(c=e.y+e.height-l,a=c*t,o=s.x,l=e.y+e.height-c)):t&&(r=c*t-a,a+=r,o+a>=e.x+e.width&&(a=e.x+e.width-o,c=a/t,o=e.x+e.width-a,l=s.y)),c=i.x&&s.y>=i.y&&s.x+s.width<=i.x+i.width&&s.y+s.height<=i.y+i.height}function Rs(s,i){return Math.abs(s.width/s.height-i)<.1}function zt({width:s,height:i},t){let e=t/90%2!==0;return{width:e?i:s,height:e?s:i}}function Ps(s,i,t){let e=s/i,r,n;e>t?(r=Math.round(i*t),n=i):(r=s,n=Math.round(s/t));let o=Math.round((s-r)/2),l=Math.round((i-n)/2);return o+r>s&&(r=s-o),l+n>i&&(n=i-l),{x:o,y:l,width:r,height:n}}function jt(s){return{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}}function wt(s,i,t){return Math.min(Math.max(s,i),t)}var Pe=s=>{if(!s)return[];let[i,t]=s.split(":").map(Number);if(!Number.isFinite(i)||!Number.isFinite(t)){console.error(`Invalid crop preset: ${s}`);return}return[{type:"aspect-ratio",width:i,height:t}]};var Z=Object.freeze({LOCAL:"local",DROP_AREA:"drop-area",URL_TAB:"url-tab",CAMERA:"camera",EXTERNAL:"external",API:"js-api"});var Ms=s=>s?s.split(",").map(i=>i.trim()):[],Ot=s=>s?s.join(","):"";var Ns="blocks",Ds="0.29.1";function Fs(s){return Si({...s,libraryName:Ns,libraryVersion:Ds})}var Vs=s=>{if(typeof s!="string"||!s)return"";let i=s.trim();return i.startsWith("-/")?i=i.slice(2):i.startsWith("/")&&(i=i.slice(1)),i.endsWith("/")&&(i=i.slice(0,i.length-1)),i},Me=(...s)=>s.filter(i=>typeof i=="string"&&i).map(i=>Vs(i)).join("/-/"),P=(...s)=>{let i=Me(...s);return i?`-/${i}/`:""};function Bs(s){let i=new URL(s),t=i.pathname+i.search+i.hash,e=t.lastIndexOf("http"),r=t.lastIndexOf("/"),n="";return e>=0?n=t.slice(e):r>=0&&(n=t.slice(r+1)),n}function zs(s){let i=new URL(s),{pathname:t}=i,e=t.indexOf("/"),r=t.indexOf("/",e+1);return t.substring(e+1,r)}function js(s){let i=Hs(s),t=new URL(i),e=t.pathname.indexOf("/-/");return e===-1?[]:t.pathname.substring(e).split("/-/").filter(Boolean).map(n=>Vs(n))}function Hs(s){let i=new URL(s),t=Bs(s),e=Ws(t)?Xs(t).pathname:t;return i.pathname=i.pathname.replace(e,""),i.search="",i.hash="",i.toString()}function Ws(s){return s.startsWith("http")}function Xs(s){let i=new URL(s);return{pathname:i.origin+i.pathname||"",search:i.search||"",hash:i.hash||""}}var O=(s,i,t)=>{let e=new URL(Hs(s));if(t=t||Bs(s),e.pathname.startsWith("//")&&(e.pathname=e.pathname.replace("//","/")),Ws(t)){let r=Xs(t);e.pathname=e.pathname+(i||"")+(r.pathname||""),e.search=r.search,e.hash=r.hash}else e.pathname=e.pathname+(i||"")+(t||"");return e.toString()},Tt=(s,i)=>{let t=new URL(s);return t.pathname=i+"/",t.toString()};var M=(s,i=",")=>s.trim().split(i).map(t=>t.trim()).filter(t=>t.length>0);var ie=["image/*","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/avif","image/avif-sequence",".heif",".heifs",".heic",".heics",".avif",".avifs"],Fi=s=>s?s.filter(i=>typeof i=="string").map(i=>M(i)).flat():[],Vi=(s,i)=>i.some(t=>t.endsWith("*")?(t=t.replace("*",""),s.startsWith(t)):s===t),qs=(s,i)=>i.some(t=>t.startsWith(".")?s.toLowerCase().endsWith(t.toLowerCase()):!1),se=s=>{let i=s==null?void 0:s.type;return i?Vi(i,ie):!1};var st=1e3,Lt=Object.freeze({AUTO:"auto",BYTE:"byte",KB:"kb",MB:"mb",GB:"gb",TB:"tb",PB:"pb"}),re=s=>Math.ceil(s*100)/100,Gs=(s,i=Lt.AUTO)=>{let t=i===Lt.AUTO;if(i===Lt.BYTE||t&&s(e[r]=i[r].value,e),{}),this.__data=$.registerCtx(this.__schema,this.__ctxId)}get uid(){return this.__ctxId}setValue(i,t){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}let e=this.__typedSchema[i];if((t==null?void 0:t.constructor)===e.type||t instanceof e.type||e.nullable&&t===null){this.__data.pub(i,t);return}console.warn(ao+i)}setMultipleValues(i){for(let t in i)this.setValue(t,i[t])}getValue(i){if(!this.__typedSchema.hasOwnProperty(i)){console.warn(Ks+i);return}return this.__data.read(i)}subscribe(i,t){return this.__data.sub(i,t)}remove(){$.deleteCtx(this.__ctxId)}};var De=class{constructor(i){this.__typedSchema=i.typedSchema,this.__ctxId=i.ctxName||Yt.generate(),this.__data=$.registerCtx({},this.__ctxId),this.__watchList=i.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 t=Object.create(null);this.__notifyObservers=(e,r)=>{this.__observeTimeout&&window.clearTimeout(this.__observeTimeout),t[e]||(t[e]=new Set),t[e].add(r),this.__observeTimeout=window.setTimeout(()=>{Object.keys(t).length!==0&&(this.__propertyObservers.forEach(n=>{n({...t})}),t=Object.create(null))})}}notify(){this.__notifyTimeout&&window.clearTimeout(this.__notifyTimeout),this.__notifyTimeout=window.setTimeout(()=>{let i=new Set(this.__added),t=new Set(this.__removed);this.__added.clear(),this.__removed.clear();for(let e of this.__collectionObservers)e==null||e([...this.__items],i,t)})}observeCollection(i){return this.__collectionObservers.add(i),this.notify(),()=>{this.unobserveCollection(i)}}unobserveCollection(i){this.__collectionObservers.delete(i)}add(i){let t=new Ne(this.__typedSchema);for(let e in i)t.setValue(e,i[e]);return this.__data.add(t.uid,t),this.__added.add(t),this.__watchList.forEach(e=>{this.__subsMap[t.uid]||(this.__subsMap[t.uid]=[]),this.__subsMap[t.uid].push(t.subscribe(e,()=>{this.__notifyObservers(e,t.uid)}))}),this.__items.add(t.uid),this.notify(),t}read(i){return this.__data.read(i)}readProp(i,t){return this.read(i).getValue(t)}publishProp(i,t,e){this.read(i).setValue(t,e)}remove(i){this.__removed.add(this.__data.read(i)),this.__items.delete(i),this.notify(),this.__data.pub(i,null),delete this.__subsMap[i]}clearAll(){this.__items.forEach(i=>{this.remove(i)})}observeProperties(i){return this.__propertyObservers.add(i),()=>{this.unobserveProperties(i)}}unobserveProperties(i){this.__propertyObservers.delete(i)}findItems(i){let t=[];return this.__items.forEach(e=>{let r=this.read(e);i(r)&&t.push(e)}),t}items(){return[...this.__items]}get size(){return this.__items.size}destroy(){$.deleteCtx(this.__data),this.__propertyObservers=null,this.__collectionObservers=null;for(let i in this.__subsMap)this.__subsMap[i].forEach(t=>{t.remove()}),delete this.__subsMap[i]}};var Ys=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},uploadError:{type:Error,value:null,nullable:!0},validationErrorMsg:{type:String,value:null,nullable:!0},validationMultipleLimitMsg:{type:String,value:null,nullable:!0},ctxName:{type:String,value:null},cdnUrl:{type:String,value:null},cdnUrlModifiers:{type:String,value:null},fileInfo:{type:pt,value:null},isUploading:{type:Boolean,value:!1},abortController:{type:AbortController,value:null,nullable:!0},thumbUrl:{type:String,value:null,nullable:!0},silentUpload:{type:Boolean,value:!1},source:{type:String,value:!1,nullable:!0},fullPath:{type:String,value:null,nullable:!0}});var v=class extends g{constructor(){super(...arguments);h(this,"isCtxOwner",!1);h(this,"init$",Ue(this));h(this,"__initialUploadMetadata",null);h(this,"_validators",[this._validateMultipleLimit.bind(this),this._validateIsImage.bind(this),this._validateFileType.bind(this),this._validateMaxSizeLimit.bind(this)]);h(this,"_debouncedRunValidators",I(this._runValidators.bind(this),100));h(this,"_flushOutputItems",I(()=>{let t=this.getOutputData();t.length===this.uploadCollection.size&&(this.emit(S.DATA_OUTPUT,t),this.$["*outputData"]=t)},100));h(this,"_handleCollectonUpdate",(t,e,r)=>{var n;this._runValidators();for(let o of r)(n=o==null?void 0:o.getValue("abortController"))==null||n.abort(),o==null||o.setValue("abortController",null),URL.revokeObjectURL(o==null?void 0:o.getValue("thumbUrl"));this.$["*uploadList"]=t.map(o=>({uid:o})),this._flushOutputItems()});h(this,"_handleCollectionPropertiesUpdate",t=>{this._flushOutputItems();let e=this.uploadCollection,r=[...new Set(Object.values(t).map(n=>[...n]).flat())].map(n=>e.read(n)).filter(Boolean);for(let n of r)this._runValidatorsForEntry(n);if(t.uploadProgress){let n=0,o=e.findItems(a=>!a.getValue("uploadError"));o.forEach(a=>{n+=e.readProp(a,"uploadProgress")});let l=Math.round(n/o.length);this.$["*commonProgress"]=l,this.emit(S.UPLOAD_PROGRESS,l,{debounce:!0})}if(t.fileInfo){this.cfg.cropPreset&&this.setInitialCrop();let n=e.findItems(l=>!!l.getValue("fileInfo")),o=e.findItems(l=>!!l.getValue("uploadError")||!!l.getValue("validationErrorMsg"));if(e.size-o.length===n.length){let l=this.getOutputData(a=>!!a.getValue("fileInfo")&&!a.getValue("silentUpload"));l.length>0&&this.emit(S.UPLOAD_FINISH,l,{debounce:!0})}}t.uploadError&&e.findItems(o=>!!o.getValue("uploadError")).forEach(o=>{this.emit(S.UPLOAD_ERROR,e.readProp(o,"uploadError"))}),t.validationErrorMsg&&e.findItems(o=>!!o.getValue("validationErrorMsg")).forEach(o=>{this.emit(S.VALIDATION_ERROR,e.readProp(o,"validationErrorMsg"))}),t.cdnUrlModifiers&&e.findItems(o=>!!o.getValue("cdnUrlModifiers")).forEach(o=>{this.emit(S.CLOUD_MODIFICATION,e.readProp(o,"cdnUrlModifiers"))})})}setUploadMetadata(t){Qt("setUploadMetadata is deprecated. Use `metadata` instance property on `lr-config` block instead. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/"),this.connectedOnce?this.$["*uploadMetadata"]=t:this.__initialUploadMetadata=t}get hasCtxOwner(){return this.hasBlockInCtx(t=>t instanceof v?t.isCtxOwner&&t.isConnected&&t!==this:!1)}initCallback(){if(super.initCallback(),!this.has("*uploadCollection")){let t=new De({typedSchema:Ys,watchList:["uploadProgress","fileInfo","uploadError","validationErrorMsg","validationMultipleLimitMsg","cdnUrlModifiers"]});this.add("*uploadCollection",t)}this.hasCtxOwner||this.initCtxOwner()}destroyCallback(){var t,e;super.destroyCallback(),this.isCtxOwner&&((t=this._unobserveCollectionProperties)==null||t.call(this),(e=this._unobserveCollection)==null||e.call(this))}initCtxOwner(){this.isCtxOwner=!0,this._unobserveCollection=this.uploadCollection.observeCollection(this._handleCollectonUpdate),this._unobserveCollectionProperties=this.uploadCollection.observeProperties(this._handleCollectionPropertiesUpdate),this.subConfigValue("maxLocalFileSizeBytes",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMin",()=>this._debouncedRunValidators()),this.subConfigValue("multipleMax",()=>this._debouncedRunValidators()),this.subConfigValue("multiple",()=>this._debouncedRunValidators()),this.subConfigValue("imgOnly",()=>this._debouncedRunValidators()),this.subConfigValue("accept",()=>this._debouncedRunValidators()),this.subConfigValue("maxConcurrentRequests",t=>{this.$["*uploadQueue"].concurrency=Number(t)||1}),this.__initialUploadMetadata&&(this.$["*uploadMetadata"]=this.__initialUploadMetadata)}addFileFromUrl(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({externalUrl:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromUuid(t,{silent:e,fileName:r,source:n}={}){this.uploadCollection.add({uuid:t,fileName:r!=null?r:null,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API})}addFileFromObject(t,{silent:e,fileName:r,source:n,fullPath:o}={}){this.uploadCollection.add({file:t,isImage:se(t),mimeType:t.type,fileName:r!=null?r:t.name,fileSize:t.size,silentUpload:e!=null?e:!1,source:n!=null?n:Z.API,fullPath:o!=null?o:null})}addFiles(t){console.warn("`addFiles` method is deprecated. Please use `addFileFromObject`, `addFileFromUrl` or `addFileFromUuid` instead."),t.forEach(e=>{this.uploadCollection.add({file:e,isImage:se(e),mimeType:e.type,fileName:e.name,fileSize:e.size})})}uploadAll(){this.$["*uploadTrigger"]={}}openSystemDialog(t={}){var r;let e=Ot(Fi([(r=this.cfg.accept)!=null?r:"",...this.cfg.imgOnly?ie:[]]));this.cfg.accept&&this.cfg.imgOnly&&console.warn("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."),this.fileInput=document.createElement("input"),this.fileInput.type="file",this.fileInput.multiple=this.cfg.multiple,t.captureCamera?(this.fileInput.capture="",this.fileInput.accept=Ot(ie)):this.fileInput.accept=e,this.fileInput.dispatchEvent(new MouseEvent("click")),this.fileInput.onchange=()=>{[...this.fileInput.files].forEach(n=>this.addFileFromObject(n,{source:Z.LOCAL})),this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this.setOrAddState("*modalActive",!0),this.fileInput.value="",this.fileInput=null}}get sourceList(){let t=[];return this.cfg.sourceList&&(t=M(this.cfg.sourceList)),t}initFlow(t=!1){var e;if(this.uploadCollection.size>0&&!t)this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0);else if(((e=this.sourceList)==null?void 0:e.length)===1){let r=this.sourceList[0];r==="local"?(this.$["*currentActivity"]=g.activities.UPLOAD_LIST,this==null||this.openSystemDialog()):(Object.values(v.extSrcList).includes(r)?this.set$({"*currentActivityParams":{externalSourceType:r},"*currentActivity":g.activities.EXTERNAL}):this.$["*currentActivity"]=r,this.setOrAddState("*modalActive",!0))}else this.set$({"*currentActivity":g.activities.START_FROM}),this.setOrAddState("*modalActive",!0);this.emit(S.INIT_FLOW)}doneFlow(){this.set$({"*currentActivity":this.doneActivity,"*history":this.doneActivity?[this.doneActivity]:[]}),this.$["*currentActivity"]||this.setOrAddState("*modalActive",!1),this.emit(S.DONE_FLOW)}get uploadCollection(){return this.$["*uploadCollection"]}_validateFileType(t){let e=this.cfg.imgOnly,r=this.cfg.accept,n=Fi([...e?ie:[],r]);if(!n.length)return;let o=t.getValue("mimeType"),l=t.getValue("fileName");if(!o||!l)return;let a=Vi(o,n),c=qs(l,n);if(!a&&!c)return this.l10n("file-type-not-allowed")}_validateMaxSizeLimit(t){let e=this.cfg.maxLocalFileSizeBytes,r=t.getValue("fileSize");if(e&&r&&r>e)return this.l10n("files-max-size-limit-error",{maxFileSize:Gs(e)})}_validateMultipleLimit(t){let e=this.uploadCollection.items(),r=e.indexOf(t.uid),n=this.cfg.multiple?this.cfg.multipleMin:1,o=this.cfg.multiple?this.cfg.multipleMax:1;if(n&&e.length=o)return this.l10n("files-count-allowed",{count:o})}_validateIsImage(t){let e=this.cfg.imgOnly,r=t.getValue("isImage");if(!(!e||r)&&!(!t.getValue("fileInfo")&&t.getValue("externalUrl"))&&!(!t.getValue("fileInfo")&&!t.getValue("mimeType")))return this.l10n("images-only-accepted")}_runValidatorsForEntry(t){for(let e of this._validators){let r=e(t);if(r){t.setValue("validationErrorMsg",r);return}}t.setValue("validationErrorMsg",null)}_runValidators(){for(let t of this.uploadCollection.items())setTimeout(()=>{let e=this.uploadCollection.read(t);e&&this._runValidatorsForEntry(e)})}setInitialCrop(){let t=Pe(this.cfg.cropPreset);if(t){let[e]=t,r=this.uploadCollection.findItems(n=>{var o;return n.getValue("fileInfo")&&n.getValue("isImage")&&!((o=n.getValue("cdnUrlModifiers"))!=null&&o.includes("/crop/"))}).map(n=>this.uploadCollection.read(n));for(let n of r){let o=n.getValue("fileInfo"),{width:l,height:a}=o.imageInfo,c=e.width/e.height,u=Ps(l,a,c),d=P(`crop/${u.width}x${u.height}/${u.x},${u.y}`,"preview");n.setMultipleValues({cdnUrlModifiers:d,cdnUrl:O(n.getValue("cdnUrl"),d)}),this.uploadCollection.size===1&&this.cfg.useCloudImageEditor&&this.hasBlockInCtx(p=>p.activityType===g.activities.CLOUD_IMG_EDIT)&&(this.$["*focusedEntry"]=n,this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}}}async getMetadataFor(t){var r;let e=(r=this.cfg.metadata)!=null?r:this.$["*uploadMetadata"];if(typeof e=="function"){let n=this.getOutputItem(t);return await e(n)}return e}getUploadClientOptions(){return{store:this.cfg.store,publicKey:this.cfg.pubkey,baseCDN:this.cfg.cdnCname,baseURL:this.cfg.baseUrl,userAgent:Fs,integration:this.cfg.userAgentIntegration,secureSignature:this.cfg.secureSignature,secureExpire:this.cfg.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}}getOutputItem(t){var o,l;let e=$.getCtx(t).store,r=e.fileInfo||{name:e.fileName,originalFilename:e.fileName,size:e.fileSize,isImage:e.isImage,mimeType:e.mimeType};return{...r,file:e.file,externalUrl:e.externalUrl,cdnUrlModifiers:e.cdnUrlModifiers,cdnUrl:(l=(o=e.cdnUrl)!=null?o:r.cdnUrl)!=null?l:null,validationErrorMessage:e.validationErrorMsg,uploadError:e.uploadError,isUploaded:!!e.uuid&&!!e.fileInfo,isValid:!e.validationErrorMsg&&!e.uploadError,fullPath:e.fullPath,uploadProgress:e.uploadProgress}}getOutputData(t){return(t?this.uploadCollection.findItems(t):this.uploadCollection.items()).map(n=>this.getOutputItem(n))}};v.extSrcList=Object.freeze({FACEBOOK:"facebook",DROPBOX:"dropbox",GDRIVE:"gdrive",GPHOTOS:"gphotos",INSTAGRAM:"instagram",FLICKR:"flickr",VK:"vk",EVERNOTE:"evernote",BOX:"box",ONEDRIVE:"onedrive",HUDDLE:"huddle"});v.sourceTypes=Object.freeze({LOCAL:"local",URL:"url",CAMERA:"camera",DRAW:"draw",...v.extSrcList});var G={brightness:0,exposure:0,gamma:100,contrast:0,saturation:0,vibrance:0,warmth:0,enhance:0,filter:0,rotate:0};function co(s,i){if(typeof i=="number")return G[s]!==i?`${s}/${i}`:"";if(typeof i=="boolean")return i&&G[s]!==i?`${s}`:"";if(s==="filter"){if(!i||G[s]===i.amount)return"";let{name:t,amount:e}=i;return`${s}/${t}/${e}`}if(s==="crop"){if(!i)return"";let{dimensions:t,coords:e}=i;return`${s}/${t.join("x")}/${e.join(",")}`}return""}var Js=["enhance","brightness","exposure","gamma","contrast","saturation","vibrance","warmth","filter","mirror","flip","rotate","crop"];function Et(s){return Me(...Js.filter(i=>typeof s[i]!="undefined"&&s[i]!==null).map(i=>{let t=s[i];return co(i,t)}).filter(i=>!!i))}var Fe=Me("format/auto","progressive/yes"),mt=([s])=>typeof s!="undefined"?Number(s):void 0,Zs=()=>!0,ho=([s,i])=>({name:s,amount:typeof i!="undefined"?Number(i):100}),uo=([s,i])=>({dimensions:M(s,"x").map(Number),coords:M(i).map(Number)}),po={enhance:mt,brightness:mt,exposure:mt,gamma:mt,contrast:mt,saturation:mt,vibrance:mt,warmth:mt,filter:ho,mirror:Zs,flip:Zs,rotate:mt,crop:uo};function Qs(s){let i={};for(let t of s){let[e,...r]=t.split("/");if(!Js.includes(e))continue;let n=po[e],o=n(r);i[e]=o}return i}var N=Object.freeze({CROP:"crop",TUNING:"tuning",FILTERS:"filters"}),W=[N.CROP,N.TUNING,N.FILTERS],tr=["brightness","exposure","gamma","contrast","saturation","vibrance","warmth","enhance"],er=["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"],ir=["rotate","mirror","flip"],rt=Object.freeze({brightness:{zero:G.brightness,range:[-100,100],keypointsNumber:2},exposure:{zero:G.exposure,range:[-500,500],keypointsNumber:2},gamma:{zero:G.gamma,range:[0,1e3],keypointsNumber:2},contrast:{zero:G.contrast,range:[-100,500],keypointsNumber:2},saturation:{zero:G.saturation,range:[-100,500],keypointsNumber:1},vibrance:{zero:G.vibrance,range:[-100,500],keypointsNumber:1},warmth:{zero:G.warmth,range:[-100,100],keypointsNumber:1},enhance:{zero:G.enhance,range:[0,100],keypointsNumber:1},filter:{zero:G.filter,range:[0,100],keypointsNumber:1}});var fo="https://ucarecdn.com",mo="https://upload.uploadcare.com",go="https://social.uploadcare.com",xt={pubkey:"",multiple:!0,multipleMin:0,multipleMax:0,confirmUpload:!1,imgOnly:!1,accept:"",externalSourcesPreferredTypes:"",store:"auto",cameraMirror:!1,sourceList:"local, url, camera, dropbox, gdrive",cloudImageEditorTabs:Ot(W),maxLocalFileSizeBytes:0,thumbSize:76,showEmptyList:!1,useLocalImageEditor:!1,useCloudImageEditor:!0,removeCopyright:!1,cropPreset:"",modalScrollLock:!0,modalBackdropStrokes:!1,sourceListWrap:!0,remoteTabSessionKey:"",cdnCname:fo,baseUrl:mo,socialBaseUrl:go,secureSignature:"",secureExpire:"",secureDeliveryProxy:"",retryThrottledRequestMaxTimes:1,multipartMinFileSize:26214400,multipartChunkSize:5242880,maxConcurrentRequests:10,multipartMaxConcurrentRequests:4,multipartMaxAttempts:3,checkForUrlDuplicates:!1,saveUrlForRecurrentUploads:!1,groupOutput:!1,userAgentIntegration:"",metadata:null};var X=s=>String(s),nt=s=>{let i=Number(s);if(Number.isNaN(i))throw new Error(`Invalid number: "${s}"`);return i},k=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}"`)},_o=s=>s==="auto"?s:k(s),bo={pubkey:X,multiple:k,multipleMin:nt,multipleMax:nt,confirmUpload:k,imgOnly:k,accept:X,externalSourcesPreferredTypes:X,store:_o,cameraMirror:k,sourceList:X,maxLocalFileSizeBytes:nt,thumbSize:nt,showEmptyList:k,useLocalImageEditor:k,useCloudImageEditor:k,cloudImageEditorTabs:X,removeCopyright:k,cropPreset:X,modalScrollLock:k,modalBackdropStrokes:k,sourceListWrap:k,remoteTabSessionKey:X,cdnCname:X,baseUrl:X,socialBaseUrl:X,secureSignature:X,secureExpire:X,secureDeliveryProxy:X,retryThrottledRequestMaxTimes:nt,multipartMinFileSize:nt,multipartChunkSize:nt,maxConcurrentRequests:nt,multipartMaxConcurrentRequests:nt,multipartMaxAttempts:nt,checkForUrlDuplicates:k,saveUrlForRecurrentUploads:k,groupOutput:k,userAgentIntegration:X},sr=(s,i)=>{if(!(typeof i=="undefined"||i===null))try{return bo[s](i)}catch(t){return console.error(`Invalid value for config key "${s}".`,t),xt[s]}};var Ve=Object.keys(xt),yo=["metadata"],vo=s=>yo.includes(s),Be=Ve.filter(s=>!vo(s)),Co={...Object.fromEntries(Be.map(s=>[ut(s),s])),...Object.fromEntries(Be.map(s=>[s.toLowerCase(),s]))},wo={...Object.fromEntries(Ve.map(s=>[ut(s),H(s)])),...Object.fromEntries(Ve.map(s=>[s.toLowerCase(),H(s)]))},ze=class extends b{constructor(){super();h(this,"ctxOwner",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,...Object.fromEntries(Object.entries(xt).map(([t,e])=>[H(t),e]))},Object.assign(this,{test:"test"})}initCallback(){super.initCallback();let t=this;for(let e of Be)this.sub(H(e),r=>{r!==xt[e]&&(t[e]=r)},!1);for(let e of Ve){let r="__"+e;t[r]=t[e],Object.defineProperty(this,e,{set:n=>{if(t[r]=n,Be.includes(e)){let o=[...new Set([ut(e),e.toLowerCase()])];for(let l of o)typeof n=="undefined"||n===null?this.removeAttribute(l):this.setAttribute(l,n.toString())}this.$[H(e)]!==n&&(typeof n=="undefined"||n===null?this.$[H(e)]=xt[e]:this.$[H(e)]=n)},get:()=>this.$[H(e)]}),typeof t[e]!="undefined"&&t[e]!==null&&(t[e]=t[r])}}attributeChangedCallback(t,e,r){if(e===r)return;let n=Co[t],o=sr(n,r),l=o!=null?o:xt[n],a=this;a[n]=l}};ze.bindAttributes(wo);var To=ze;var ne=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,name:"",path:"",size:"24",viewBox:""})}initCallback(){super.initCallback(),this.sub("name",t=>{if(!t)return;let e=this.getCssData(`--icon-${t}`);e&&(this.$.path=e)}),this.sub("path",t=>{if(!t)return;t.trimStart().startsWith("<")?(this.setAttribute("raw",""),this.ref.svg.innerHTML=t):(this.removeAttribute("raw"),this.ref.svg.innerHTML=``)}),this.sub("size",t=>{this.$.viewBox=`0 0 ${t} ${t}`})}};ne.template=``;ne.bindAttributes({name:"name",size:"size"});var Eo="https://ucarecdn.com",Ut=Object.freeze({"dev-mode":{},pubkey:{},uuid:{},src:{},lazy:{default:1},intersection:{},breakpoints:{},"cdn-cname":{default:Eo},"proxy-cname":{},"secure-delivery-proxy":{},"hi-res-support":{default:1},"ultra-res-support":{},format:{default:"auto"},"cdn-operations":{},progressive:{},quality:{default:"smart"},"is-background-for":{}});var rr=s=>[...new Set(s)];var oe="--lr-img-",nr="unresolved",Ht=2,Wt=3,or=!window.location.host.trim()||window.location.host.includes(":")||window.location.hostname.includes("localhost"),ar=Object.create(null),lr;for(let s in Ut)ar[oe+s]=((lr=Ut[s])==null?void 0:lr.default)||"";var je=class extends Nt{constructor(){super(...arguments);h(this,"cssInit$",ar)}$$(t){return this.$[oe+t]}set$$(t){for(let e in t)this.$[oe+e]=t[e]}sub$$(t,e){this.sub(oe+t,r=>{r===null||r===""||e(r)})}_fmtAbs(t){return!t.includes("//")&&!or&&(t=new URL(t,document.baseURI).href),t}_getCdnModifiers(t=""){return P(t&&`resize/${t}`,this.$$("cdn-operations")||"",`format/${this.$$("format")||Ut.format.default}`,`quality/${this.$$("quality")||Ut.quality.default}`)}_getUrlBase(t=""){if(this.$$("src").startsWith("data:")||this.$$("src").startsWith("blob:"))return this.$$("src");if(or&&this.$$("src")&&!this.$$("src").includes("//"))return this._proxyUrl(this.$$("src"));let e=this._getCdnModifiers(t);if(this.$$("src").startsWith(this.$$("cdn-cname")))return O(this.$$("src"),e);if(this.$$("cdn-cname")&&this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("uuid"))return this._proxyUrl(O(Tt(this.$$("cdn-cname"),this.$$("uuid")),e));if(this.$$("proxy-cname"))return this._proxyUrl(O(this.$$("proxy-cname"),e,this._fmtAbs(this.$$("src"))));if(this.$$("pubkey"))return this._proxyUrl(O(`https://${this.$$("pubkey")}.ucr.io/`,e,this._fmtAbs(this.$$("src"))))}_proxyUrl(t){return this.$$("secure-delivery-proxy")?Jt(this.$$("secure-delivery-proxy"),{previewUrl:t},{transform:r=>window.encodeURIComponent(r)}):t}_getElSize(t,e=1,r=!0){let n=t.getBoundingClientRect(),o=e*Math.round(n.width),l=r?"":e*Math.round(n.height);return o||l?`${o||""}x${l||""}`:null}_setupEventProxy(t){let e=n=>{n.stopPropagation();let o=new Event(n.type,n);this.dispatchEvent(o)},r=["load","error"];for(let n of r)t.addEventListener(n,e)}get img(){return this._img||(this._img=new Image,this._setupEventProxy(this.img),this._img.setAttribute(nr,""),this.img.onload=()=>{this.img.removeAttribute(nr)},this.initAttributes(),this.appendChild(this._img)),this._img}get bgSelector(){return this.$$("is-background-for")}initAttributes(){[...this.attributes].forEach(t=>{Ut[t.name]||this.img.setAttribute(t.name,t.value)})}get breakpoints(){return this.$$("breakpoints")?rr(M(this.$$("breakpoints")).map(t=>Number(t))):null}renderBg(t){let e=new Set;this.breakpoints?this.breakpoints.forEach(n=>{e.add(`url("${this._getUrlBase(n+"x")}") ${n}w`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(n*Ht+"x")}") ${n*Ht}w`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(n*Wt+"x")}") ${n*Wt}w`)}):(e.add(`url("${this._getUrlBase(this._getElSize(t))}") 1x`),this.$$("hi-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Ht))}") ${Ht}x`),this.$$("ultra-res-support")&&e.add(`url("${this._getUrlBase(this._getElSize(t,Wt))}") ${Wt}x`));let r=`image-set(${[...e].join(", ")})`;t.style.setProperty("background-image",r),t.style.setProperty("background-image","-webkit-"+r)}getSrcset(){let t=new Set;return this.breakpoints?this.breakpoints.forEach(e=>{t.add(this._getUrlBase(e+"x")+` ${e}w`),this.$$("hi-res-support")&&t.add(this._getUrlBase(e*Ht+"x")+` ${e*Ht}w`),this.$$("ultra-res-support")&&t.add(this._getUrlBase(e*Wt+"x")+` ${e*Wt}w`)}):(t.add(this._getUrlBase(this._getElSize(this.img))+" 1x"),this.$$("hi-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,2))+" 2x"),this.$$("ultra-res-support")&&t.add(this._getUrlBase(this._getElSize(this.img,3))+" 3x")),[...t].join()}getSrc(){return this._getUrlBase()}init(){this.bgSelector?[...document.querySelectorAll(this.bgSelector)].forEach(t=>{this.$$("intersection")?this.initIntersection(t,()=>{this.renderBg(t)}):this.renderBg(t)}):this.$$("intersection")?this.initIntersection(this.img,()=>{this.img.srcset=this.getSrcset(),this.img.src=this.getSrc()}):(this.img.srcset=this.getSrcset(),this.img.src=this.getSrc())}initIntersection(t,e){let r={root:null,rootMargin:"0px"};this._isnObserver=new IntersectionObserver(n=>{n.forEach(o=>{o.isIntersecting&&(e(),this._isnObserver.unobserve(t))})},r),this._isnObserver.observe(t),this._observed||(this._observed=new Set),this._observed.add(t)}destroyCallback(){super.destroyCallback(),this._isnObserver&&(this._observed.forEach(t=>{this._isnObserver.unobserve(t)}),this._isnObserver=null)}static get observedAttributes(){return Object.keys(Ut)}attributeChangedCallback(t,e,r){window.setTimeout(()=>{this.$[oe+t]=r})}};var Bi=class extends je{initCallback(){super.initCallback(),this.sub$$("src",()=>{this.init()}),this.sub$$("uuid",()=>{this.init()}),this.sub$$("lazy",i=>{this.$$("is-background-for")||(this.img.loading=i?"lazy":"eager")})}};var le=class extends v{constructor(){super(),this.init$={...this.init$,"*simpleButtonText":"",withDropZone:!0,onClick:()=>{this.initFlow()}}}initCallback(){super.initCallback(),this.defineAccessor("dropzone",i=>{typeof i!="undefined"&&(this.$.withDropZone=k(i))}),this.subConfigValue("multiple",i=>{this.$["*simpleButtonText"]=i?this.l10n("upload-files"):this.l10n("upload-file")})}};le.template=``;le.bindAttributes({dropzone:null});var He=class extends g{constructor(){super(...arguments);h(this,"historyTracked",!0);h(this,"activityType","start-from")}initCallback(){super.initCallback(),this.registerActivity(this.activityType)}};He.template='
';function xo(s){return new Promise(i=>{typeof window.FileReader!="function"&&i(!1);try{let t=new FileReader;t.onerror=()=>{i(!0)};let e=r=>{r.type!=="loadend"&&t.abort(),i(!1)};t.onloadend=e,t.onprogress=e,t.readAsDataURL(s)}catch{i(!1)}})}function Ao(s,i){return new Promise(t=>{let e=0,r=[],n=l=>{l||(console.warn("Unexpectedly received empty content entry",{scope:"drag-and-drop"}),t(null)),l.isFile?(e++,l.file(a=>{e--;let c=new File([a],a.name,{type:a.type||i});r.push({type:"file",file:c,fullPath:l.fullPath}),e===0&&t(r)})):l.isDirectory&&o(l.createReader())},o=l=>{e++,l.readEntries(a=>{e--;for(let c of a)n(c);e===0&&t(r)})};n(s)})}function cr(s){let i=[],t=[];for(let e=0;e{a&&i.push(...a)}));continue}let o=r.getAsFile();o&&t.push(xo(o).then(l=>{l||i.push({type:"file",file:o})}))}else r.kind==="string"&&r.type.match("^text/uri-list")&&t.push(new Promise(n=>{r.getAsString(o=>{i.push({type:"url",url:o}),n(void 0)})}))}return Promise.all(t).then(()=>i)}var F={ACTIVE:0,INACTIVE:1,NEAR:2,OVER:3},hr=["focus"],$o=100,zi=new Map;function So(s,i){let t=Math.max(Math.min(s[0],i.x+i.width),i.x),e=Math.max(Math.min(s[1],i.y+i.height),i.y);return Math.sqrt((s[0]-t)*(s[0]-t)+(s[1]-e)*(s[1]-e))}function ji(s){let i=0,t=document.body,e=new Set,r=f=>e.add(f),n=F.INACTIVE,o=f=>{s.shouldIgnore()&&f!==F.INACTIVE||(n!==f&&e.forEach(_=>_(f)),n=f)},l=()=>i>0;r(f=>s.onChange(f));let a=()=>{i=0,o(F.INACTIVE)},c=()=>{i+=1,n===F.INACTIVE&&o(F.ACTIVE)},u=()=>{i-=1,l()||o(F.INACTIVE)},d=f=>{f.preventDefault(),i=0,o(F.INACTIVE)},p=f=>{if(s.shouldIgnore())return;l()||(i+=1);let _=[f.x,f.y],A=s.element.getBoundingClientRect(),E=Math.floor(So(_,A)),T=E<$o,w=f.composedPath().includes(s.element);zi.set(s.element,E);let B=Math.min(...zi.values())===E;w&&B?(f.preventDefault(),o(F.OVER)):o(T&&B?F.NEAR:F.ACTIVE)},m=async f=>{if(s.shouldIgnore())return;f.preventDefault();let _=await cr(f.dataTransfer);s.onItems(_),o(F.INACTIVE)};return t.addEventListener("drop",d),t.addEventListener("dragleave",u),t.addEventListener("dragenter",c),t.addEventListener("dragover",p),s.element.addEventListener("drop",m),hr.forEach(f=>{window.addEventListener(f,a)}),()=>{zi.delete(s.element),t.removeEventListener("drop",d),t.removeEventListener("dragleave",u),t.removeEventListener("dragenter",c),t.removeEventListener("dragover",p),s.element.removeEventListener("drop",m),hr.forEach(f=>{window.removeEventListener(f,a)})}}var ae=class extends v{constructor(){super(),this.init$={...this.init$,state:F.INACTIVE,withIcon:!1,isClickable:!1,isFullscreen:!1,isEnabled:!0,isVisible:!0,text:this.l10n("drop-files-here"),"lr-drop-area/targets":null}}isActive(){if(!this.$.isEnabled)return!1;let i=this.getBoundingClientRect(),t=i.width>0&&i.height>0,e=i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&i.right<=(window.innerWidth||document.documentElement.clientWidth),r=window.getComputedStyle(this),n=r.visibility!=="hidden"&&r.display!=="none";return t&&n&&e}initCallback(){super.initCallback(),this.$["lr-drop-area/targets"]||(this.$["lr-drop-area/targets"]=new Set),this.$["lr-drop-area/targets"].add(this),this.defineAccessor("disabled",t=>{this.set$({isEnabled:!k(t)})}),this.defineAccessor("clickable",t=>{this.set$({isClickable:k(t)})}),this.defineAccessor("with-icon",t=>{this.set$({withIcon:k(t)})}),this.defineAccessor("fullscreen",t=>{this.set$({isFullscreen:k(t)})}),this.defineAccessor("text",t=>{typeof t=="string"?this.set$({text:this.l10n(t)||t}):this.set$({text:this.l10n("drop-files-here")})}),this._destroyDropzone=ji({element:this,shouldIgnore:()=>this._shouldIgnore(),onChange:t=>{this.$.state=t},onItems:t=>{t.length&&(t.forEach(e=>{e.type==="url"?this.addFileFromUrl(e.url,{source:Z.DROP_AREA}):e.type==="file"&&this.addFileFromObject(e.file,{source:Z.DROP_AREA,fullPath:e.fullPath})}),this.uploadCollection.size&&(this.set$({"*currentActivity":g.activities.UPLOAD_LIST}),this.setOrAddState("*modalActive",!0)))}});let i=this.ref["content-wrapper"];i&&(this._destroyContentWrapperDropzone=ji({element:i,onChange:t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&i.setAttribute("drag-state",e)},onItems:()=>{},shouldIgnore:()=>this._shouldIgnore()})),this.sub("state",t=>{var r;let e=(r=Object.entries(F).find(([,n])=>n===t))==null?void 0:r[0].toLowerCase();e&&this.setAttribute("drag-state",e)}),this.subConfigValue("sourceList",t=>{let e=M(t);this.$.isEnabled=e.includes(v.sourceTypes.LOCAL),this.$.isVisible=this.$.isEnabled||!this.querySelector("[data-default-slot]")}),this.sub("isVisible",t=>{this.toggleAttribute("hidden",!t)}),this.sub("isClickable",t=>{this.toggleAttribute("clickable",t)}),this.$.isClickable&&(this._onAreaClicked=()=>{this.openSystemDialog()},this.addEventListener("click",this._onAreaClicked))}_shouldIgnore(){return!this.$.isEnabled||!this._couldHandleFiles()?!0:this.$.isFullscreen?[...this.$["lr-drop-area/targets"]].filter(e=>e!==this).filter(e=>e.isActive()).length>0:!1}_couldHandleFiles(){let i=this.cfg.multiple,t=this.cfg.multipleMax,e=this.uploadCollection.size;return!(i&&t&&e>=t||!i&&e>0)}destroyCallback(){var i,t,e,r;super.destroyCallback(),(t=(i=this.$["lr-drop-area/targets"])==null?void 0:i.remove)==null||t.call(i,this),(e=this._destroyDropzone)==null||e.call(this),(r=this._destroyContentWrapperDropzone)==null||r.call(this),this._onAreaClicked&&this.removeEventListener("click",this._onAreaClicked)}};ae.template=`
{{text}}
`;ae.bindAttributes({"with-icon":null,clickable:null,text:null,fullscreen:null,disabled:null});var Io="src-type-",ce=class extends v{constructor(){super(...arguments);h(this,"_registeredTypes",{});h(this,"init$",{...this.init$,iconName:"default"})}initTypes(){this.registerType({type:v.sourceTypes.LOCAL,onClick:()=>{this.openSystemDialog()}}),this.registerType({type:v.sourceTypes.URL,activity:g.activities.URL,textKey:"from-url"}),this.registerType({type:v.sourceTypes.CAMERA,activity:g.activities.CAMERA,onClick:()=>{var e=document.createElement("input").capture!==void 0;return e&&this.openSystemDialog({captureCamera:!0}),!e}}),this.registerType({type:"draw",activity:g.activities.DRAW,icon:"edit-draw"});for(let t of Object.values(v.extSrcList))this.registerType({type:t,activity:g.activities.EXTERNAL,activityParams:{externalSourceType:t}})}initCallback(){super.initCallback(),this.initTypes(),this.setAttribute("role","button"),this.defineAccessor("type",t=>{t&&this.applyType(t)})}registerType(t){this._registeredTypes[t.type]=t}getType(t){return this._registeredTypes[t]}applyType(t){let e=this._registeredTypes[t];if(!e){console.warn("Unsupported source type: "+t);return}let{textKey:r=t,icon:n=t,activity:o,onClick:l,activityParams:a={}}=e;this.applyL10nKey("src-type",`${Io}${r}`),this.$.iconName=n,this.onclick=c=>{(l?l(c):!!o)&&this.set$({"*currentActivityParams":a,"*currentActivity":o})}}};ce.template=`
`;ce.bindAttributes({type:null});var Hi=class extends b{initCallback(){super.initCallback(),this.subConfigValue("sourceList",i=>{let t=M(i),e="";t.forEach(r=>{e+=``}),this.cfg.sourceListWrap?this.innerHTML=e:this.outerHTML=e})}};function ur(s){let i=new Blob([s],{type:"image/svg+xml"});return URL.createObjectURL(i)}function dr(s="#fff",i="rgba(0, 0, 0, .1)"){return ur(``)}function he(s="hsl(209, 21%, 65%)",i=32,t=32){return ur(``)}function pr(s,i=40){if(s.type==="image/svg+xml")return URL.createObjectURL(s);let t=document.createElement("canvas"),e=t.getContext("2d"),r=new Image,n=new Promise((o,l)=>{r.onload=()=>{let a=r.height/r.width;a>1?(t.width=i,t.height=i*a):(t.height=i,t.width=i/a),e.fillStyle="rgb(240, 240, 240)",e.fillRect(0,0,t.width,t.height),e.drawImage(r,0,0,t.width,t.height),t.toBlob(c=>{if(!c){l();return}let u=URL.createObjectURL(c);o(u)})},r.onerror=a=>{l(a)}});return r.src=URL.createObjectURL(s),n}var V=Object.freeze({FINISHED:Symbol(0),FAILED:Symbol(1),UPLOADING:Symbol(2),IDLE:Symbol(3),LIMIT_OVERFLOW:Symbol(4)}),gt=class extends v{constructor(){super();h(this,"pauseRender",!0);h(this,"_entrySubs",new Set);h(this,"_entry",null);h(this,"_isIntersecting",!1);h(this,"_debouncedGenerateThumb",I(this._generateThumbnail.bind(this),100));h(this,"_debouncedCalculateState",I(this._calculateState.bind(this),100));h(this,"_renderedOnce",!1);this.init$={...this.init$,uid:"",itemName:"",errorText:"",thumbUrl:"",progressValue:0,progressVisible:!1,progressUnknown:!1,badgeIcon:"",isFinished:!1,isFailed:!1,isUploading:!1,isFocused:!1,isEditable:!1,isLimitOverflow:!1,state:V.IDLE,"*uploadTrigger":null,onEdit:()=>{this.set$({"*focusedEntry":this._entry}),this.hasBlockInCtx(t=>t.activityType===g.activities.DETAILS)?this.$["*currentActivity"]=g.activities.DETAILS:this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT},onRemove:()=>{let t=this._entry.getValue("uuid");if(t){let e=this.getOutputData(r=>r.getValue("uuid")===t);this.emit(S.REMOVE,e,{debounce:!0})}this.uploadCollection.remove(this.$.uid)},onUpload:()=>{this.upload()}}}_reset(){for(let t of this._entrySubs)t.remove();this._debouncedGenerateThumb.cancel(),this._debouncedCalculateState.cancel(),this._entrySubs=new Set,this._entry=null}_observerCallback(t){let[e]=t;this._isIntersecting=e.isIntersecting,e.isIntersecting&&!this._renderedOnce&&(this.render(),this._renderedOnce=!0),e.intersectionRatio===0?this._debouncedGenerateThumb.cancel():this._debouncedGenerateThumb()}_calculateState(){if(!this._entry)return;let t=this._entry,e=V.IDLE;t.getValue("uploadError")||t.getValue("validationErrorMsg")?e=V.FAILED:t.getValue("validationMultipleLimitMsg")?e=V.LIMIT_OVERFLOW:t.getValue("isUploading")?e=V.UPLOADING:t.getValue("fileInfo")&&(e=V.FINISHED),this.$.state=e}async _generateThumbnail(){var e;if(!this._entry)return;let t=this._entry;if(t.getValue("fileInfo")&&t.getValue("isImage")){let r=this.cfg.thumbSize,n=this.proxyUrl(O(Tt(this.cfg.cdnCname,this._entry.getValue("uuid")),P(t.getValue("cdnUrlModifiers"),`scale_crop/${r}x${r}/center`))),o=t.getValue("thumbUrl");o!==n&&(t.setValue("thumbUrl",n),o!=null&&o.startsWith("blob:")&&URL.revokeObjectURL(o));return}if(!t.getValue("thumbUrl"))if((e=t.getValue("file"))!=null&&e.type.includes("image"))try{let r=await pr(t.getValue("file"),this.cfg.thumbSize);t.setValue("thumbUrl",r)}catch{let n=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(n))}else{let r=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon");t.setValue("thumbUrl",he(r))}}_subEntry(t,e){let r=this._entry.subscribe(t,n=>{this.isConnected&&e(n)});this._entrySubs.add(r)}_handleEntryId(t){var r;this._reset();let e=(r=this.uploadCollection)==null?void 0:r.read(t);this._entry=e,e&&(this._subEntry("uploadProgress",n=>{this.$.progressValue=n}),this._subEntry("fileName",n=>{this.$.itemName=n||e.getValue("externalUrl")||this.l10n("file-no-name"),this._debouncedCalculateState()}),this._subEntry("externalUrl",n=>{this.$.itemName=e.getValue("fileName")||n||this.l10n("file-no-name")}),this._subEntry("uuid",n=>{this._debouncedCalculateState(),n&&this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("cdnUrlModifiers",()=>{this._isIntersecting&&this._debouncedGenerateThumb()}),this._subEntry("thumbUrl",n=>{this.$.thumbUrl=n?`url(${n})`:""}),this._subEntry("validationMultipleLimitMsg",()=>this._debouncedCalculateState()),this._subEntry("validationErrorMsg",()=>this._debouncedCalculateState()),this._subEntry("uploadError",()=>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",t=>{this._handleEntryId(t)}),this.sub("state",t=>{this._handleState(t)}),this.subConfigValue("useCloudImageEditor",()=>this._debouncedCalculateState()),this.onclick=()=>{gt.activeInstances.forEach(t=>{t===this?t.setAttribute("focused",""):t.removeAttribute("focused")})},this.$["*uploadTrigger"]=null,this.sub("*uploadTrigger",t=>{t&&setTimeout(()=>this.isConnected&&this.upload())}),gt.activeInstances.add(this)}_handleState(t){var e,r,n;this.set$({isFailed:t===V.FAILED,isLimitOverflow:t===V.LIMIT_OVERFLOW,isUploading:t===V.UPLOADING,isFinished:t===V.FINISHED,progressVisible:t===V.UPLOADING,isEditable:this.cfg.useCloudImageEditor&&((e=this._entry)==null?void 0:e.getValue("isImage"))&&((r=this._entry)==null?void 0:r.getValue("cdnUrl")),errorText:((n=this._entry.getValue("uploadError"))==null?void 0:n.message)||this._entry.getValue("validationErrorMsg")||this._entry.getValue("validationMultipleLimitMsg")}),t===V.FAILED||t===V.LIMIT_OVERFLOW?this.$.badgeIcon="badge-error":t===V.FINISHED&&(this.$.badgeIcon="badge-success"),t===V.UPLOADING?this.$.isFocused=!1:this.$.progressValue=0}destroyCallback(){super.destroyCallback(),gt.activeInstances.delete(this),this._reset()}connectedCallback(){super.connectedCallback(),this._observer=new window.IntersectionObserver(this._observerCallback.bind(this),{root:this.parentElement,rootMargin:"50% 0px 50% 0px",threshold:[0,1]}),this._observer.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),this._debouncedGenerateThumb.cancel(),(t=this._observer)==null||t.disconnect()}async upload(){var n,o,l;let t=this._entry;if(!this.uploadCollection.read(t.uid)||t.getValue("fileInfo")||t.getValue("isUploading")||t.getValue("uploadError")||t.getValue("validationErrorMsg")||t.getValue("validationMultipleLimitMsg"))return;let e=this.cfg.multiple?this.cfg.multipleMax:1;if(e&&this.uploadCollection.size>e)return;let r=this.getOutputData(a=>!a.getValue("fileInfo"));this.emit(S.UPLOAD_START,r,{debounce:!0}),this._debouncedCalculateState(),t.setValue("isUploading",!0),t.setValue("uploadError",null),t.setValue("validationErrorMsg",null),t.setValue("validationMultipleLimitMsg",null),!t.getValue("file")&&t.getValue("externalUrl")&&(this.$.progressUnknown=!0);try{let a=new AbortController;t.setValue("abortController",a);let c=async()=>{let d=this.getUploadClientOptions();return Ri(t.getValue("file")||t.getValue("externalUrl")||t.getValue("uuid"),{...d,fileName:t.getValue("fileName"),source:t.getValue("source"),onProgress:p=>{if(p.isComputable){let m=p.value*100;t.setValue("uploadProgress",m)}this.$.progressUnknown=!p.isComputable},signal:a.signal,metadata:await this.getMetadataFor(t.uid)})},u=await this.$["*uploadQueue"].add(c);t.setMultipleValues({fileInfo:u,isUploading:!1,fileName:u.originalFilename,fileSize:u.size,isImage:u.isImage,mimeType:(l=(o=(n=u.contentInfo)==null?void 0:n.mime)==null?void 0:o.mime)!=null?l:u.mimeType,uuid:u.uuid,cdnUrl:u.cdnUrl}),t===this._entry&&this._debouncedCalculateState()}catch(a){console.warn("Upload error",a),t.setMultipleValues({abortController:null,isUploading:!1,uploadProgress:0}),t===this._entry&&this._debouncedCalculateState(),a instanceof R?a.isCancel||t.setValue("uploadError",a):t.setValue("uploadError",new Error("Unexpected error"))}}};gt.template=`
{{itemName}}{{errorText}}
`;gt.activeInstances=new Set;var ue=class extends b{constructor(){super();h(this,"_handleBackdropClick",()=>{this._closeDialog()});h(this,"_closeDialog",()=>{this.setOrAddState("*modalActive",!1)});h(this,"_handleDialogClose",()=>{this._closeDialog()});h(this,"_handleDialogMouseDown",t=>{this._mouseDownTarget=t.target});h(this,"_handleDialogMouseUp",t=>{t.target===this.ref.dialog&&t.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(){if(super.initCallback(),typeof HTMLDialogElement=="function")this.ref.dialog.addEventListener("close",this._handleDialogClose),this.ref.dialog.addEventListener("mousedown",this._handleDialogMouseDown),this.ref.dialog.addEventListener("mouseup",this._handleDialogMouseUp);else{this.setAttribute("dialog-fallback","");let t=document.createElement("div");t.className="backdrop",this.appendChild(t),t.addEventListener("click",this._handleBackdropClick)}this.sub("*modalActive",t=>{this.$.isOpen!==t&&(this.$.isOpen=t),t&&this.cfg.modalScrollLock?document.body.style.overflow="hidden":document.body.style.overflow=""}),this.subConfigValue("modalBackdropStrokes",t=>{t?this.setAttribute("strokes",""):this.removeAttribute("strokes")}),this.sub("isOpen",t=>{t?this.show():this.hide()})}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)}};h(ue,"StateConsumerScope","modal");ue.template=``;var We=class{constructor(){h(this,"caption","");h(this,"text","");h(this,"iconName","");h(this,"isError",!1)}},Xe=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,iconName:"info",captionTxt:"Message caption",msgTxt:"Message...","*message":null,onClose:()=>{this.$["*message"]=null}})}initCallback(){super.initCallback(),this.sub("*message",t=>{t?(this.setAttribute("active",""),this.set$({captionTxt:t.caption||"",msgTxt:t.text||"",iconName:t.isError?"error":"info"}),t.isError?this.setAttribute("error",""):this.removeAttribute("error")):this.removeAttribute("active")})}};Xe.template=`
{{captionTxt}}
{{msgTxt}}
`;var qe=class extends v{constructor(){super();h(this,"historyTracked",!0);h(this,"activityType",g.activities.UPLOAD_LIST);h(this,"_debouncedHandleCollectionUpdate",I(()=>{this.isConnected&&(this._updateUploadsState(),this._updateCountLimitMessage(),!this.couldOpenActivity&&this.$["*currentActivity"]===this.activityType&&this.historyBack())},0));this.init$={...this.init$,doneBtnVisible:!1,doneBtnEnabled:!1,uploadBtnVisible:!1,addMoreBtnVisible:!1,addMoreBtnEnabled:!1,headerText:"",hasFiles:!1,onAdd:()=>{this.initFlow(!0)},onUpload:()=>{this.uploadAll(),this._updateUploadsState()},onDone:()=>{this.doneFlow()},onCancel:()=>{let t=this.getOutputData(e=>!!e.getValue("fileInfo"));this.emit(S.REMOVE,t,{debounce:!0}),this.uploadCollection.clearAll()}}}_validateFilesCount(){var u,d;let t=!!this.cfg.multiple,e=t?(u=this.cfg.multipleMin)!=null?u:0:1,r=t?(d=this.cfg.multipleMax)!=null?d:0:1,n=this.uploadCollection.size,o=e?nr:!1;return{passed:!o&&!l,tooFew:o,tooMany:l,min:e,max:r,exact:r===n}}_updateCountLimitMessage(){let t=this.uploadCollection.size,e=this._validateFilesCount();if(t&&!e.passed){let r=new We,n=e.tooFew?"files-count-limit-error-too-few":"files-count-limit-error-too-many";r.caption=this.l10n("files-count-limit-error-title"),r.text=this.l10n(n,{min:e.min,max:e.max,total:t}),r.isError=!0,this.set$({"*message":r})}else this.set$({"*message":null})}_updateUploadsState(){let t=this.uploadCollection.items(),r={total:t.length,succeed:0,uploading:0,failed:0,limitOverflow:0};for(let m of t){let f=this.uploadCollection.read(m);f.getValue("fileInfo")&&!f.getValue("validationErrorMsg")&&(r.succeed+=1),f.getValue("isUploading")&&(r.uploading+=1),(f.getValue("validationErrorMsg")||f.getValue("uploadError"))&&(r.failed+=1),f.getValue("validationMultipleLimitMsg")&&(r.limitOverflow+=1)}let{passed:n,tooMany:o,exact:l}=this._validateFilesCount(),a=r.failed===0&&r.limitOverflow===0,c=!1,u=!1,d=!1;r.total-r.succeed-r.uploading-r.failed>0&&n?c=!0:(u=!0,d=r.total===r.succeed&&n&&a),this.set$({doneBtnVisible:u,doneBtnEnabled:d,uploadBtnVisible:c,addMoreBtnEnabled:r.total===0||!o&&!l,addMoreBtnVisible:!l||this.cfg.multiple,headerText:this._getHeaderText(r)})}_getHeaderText(t){let e=r=>{let n=t[r];return this.l10n(`header-${r}`,{count:n})};return t.uploading>0?e("uploading"):t.failed>0?e("failed"):t.succeed>0?e("succeed"):e("total")}get couldOpenActivity(){return this.cfg.showEmptyList||this.uploadCollection.size>0}initCallback(){super.initCallback(),this.registerActivity(this.activityType),this.subConfigValue("multiple",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMin",this._debouncedHandleCollectionUpdate),this.subConfigValue("multipleMax",this._debouncedHandleCollectionUpdate),this.sub("*currentActivity",t=>{!this.couldOpenActivity&&t===this.activityType&&(this.$["*currentActivity"]=this.initActivity)}),this.uploadCollection.observeProperties(this._debouncedHandleCollectionUpdate),this.sub("*uploadList",t=>{this._debouncedHandleCollectionUpdate(),this.set$({hasFiles:t.length>0}),this.cfg.confirmUpload||this.add$({"*uploadTrigger":{}},!0)})}destroyCallback(){super.destroyCallback(),this.uploadCollection.unobserveProperties(this._debouncedHandleCollectionUpdate)}};qe.template=`{{headerText}}
`;var Ge=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.URL);h(this,"init$",{...this.init$,importDisabled:!0,onUpload:t=>{t.preventDefault();let e=this.ref.input.value;this.addFileFromUrl(e,{source:Z.URL_TAB}),this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()},onInput:t=>{let e=t.target.value;this.set$({importDisabled:!e})}})}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{this.ref.input.value="",this.ref.input.focus()}})}};Ge.template=`
`;var Wi=()=>typeof navigator.permissions!="undefined";var Ke=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.CAMERA);h(this,"_unsubPermissions",null);h(this,"init$",{...this.init$,video:null,videoTransformCss:null,shotBtnDisabled:!0,videoHidden:!0,messageHidden:!0,requestBtnHidden:Wi(),l10nMessage:null,originalErrorMessage:null,cameraSelectOptions:null,cameraSelectHidden:!0,onCameraSelectChange:t=>{this._selectedCameraId=t.target.value,this._capture()},onCancel:()=>{this.historyBack()},onShot:()=>{this._shot()},onRequestPermissions:()=>{this._capture()}});h(this,"_onActivate",()=>{Wi()&&this._subscribePermissions(),this._capture()});h(this,"_onDeactivate",()=>{this._unsubPermissions&&this._unsubPermissions(),this._stopCapture()});h(this,"_handlePermissionsChange",()=>{this._capture()});h(this,"_setPermissionsState",I(t=>{this.$.originalErrorMessage=null,this.classList.toggle("initialized",t==="granted"),t==="granted"?this.set$({videoHidden:!1,shotBtnDisabled:!1,messageHidden:!0}):t==="prompt"?(this.$.l10nMessage=this.l10n("camera-permissions-prompt"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture()):(this.$.l10nMessage=this.l10n("camera-permissions-denied"),this.set$({videoHidden:!0,shotBtnDisabled:!0,messageHidden:!1}),this._stopCapture())},300))}async _subscribePermissions(){try{(await navigator.permissions.query({name:"camera"})).addEventListener("change",this._handlePermissionsChange)}catch(t){console.log("Failed to use permissions API. Fallback to manual request mode.",t),this._capture()}}async _capture(){let t={video:{width:{ideal:1920},height:{ideal:1080},frameRate:{ideal:30}},audio:!1};this._selectedCameraId&&(t.video.deviceId={exact:this._selectedCameraId}),this._canvas=document.createElement("canvas"),this._ctx=this._canvas.getContext("2d");try{this._setPermissionsState("prompt");let e=await navigator.mediaDevices.getUserMedia(t);e.addEventListener("inactive",()=>{this._setPermissionsState("denied")}),this.$.video=e,this._capturing=!0,this._setPermissionsState("granted")}catch(e){this._setPermissionsState("denied"),this.$.originalErrorMessage=e.message}}_stopCapture(){var t;this._capturing&&((t=this.$.video)==null||t.getTracks()[0].stop(),this.$.video=null,this._capturing=!1)}_shot(){this._canvas.height=this.ref.video.videoHeight,this._canvas.width=this.ref.video.videoWidth,this._ctx.drawImage(this.ref.video,0,0);let t=Date.now(),e=`camera-${t}.png`;this._canvas.toBlob(r=>{let n=new File([r],e,{lastModified:t,type:"image/png"});this.addFileFromObject(n,{source:Z.CAMERA}),this.set$({"*currentActivity":g.activities.UPLOAD_LIST})})}async initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:this._onActivate,onDeactivate:this._onDeactivate}),this.subConfigValue("cameraMirror",t=>{this.$.videoTransformCss=t?"scaleX(-1)":null});try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(r=>r.kind==="videoinput").map((r,n)=>({text:r.label.trim()||`${this.l10n("caption-camera")} ${n+1}`,value:r.deviceId}));e.length>1&&(this.$.cameraSelectOptions=e,this.$.cameraSelectHidden=!1)}catch{}}};Ke.template=`
{{l10nMessage}}{{originalErrorMessage}}
`;var Xi=class extends v{constructor(){super(...arguments);h(this,"requireCtxName",!0)}initCallback(){this.$["*eventEmitter"].bindTarget(this)}},ko=Xi;var Ye=class extends v{constructor(){super(...arguments);h(this,"activityType",g.activities.DETAILS);h(this,"pauseRender",!0);h(this,"init$",{...this.init$,checkerboard:!1,fileSize:null,fileName:"",cdnUrl:"",errorTxt:"",cloudEditBtnHidden:!0,onNameInput:null,onBack:()=>{this.historyBack()},onRemove:()=>{this.uploadCollection.remove(this.entry.uid),this.historyBack()},onCloudEdit:()=>{this.entry.getValue("uuid")&&(this.$["*currentActivity"]=g.activities.CLOUD_IMG_EDIT)}})}showNonImageThumb(){let t=window.getComputedStyle(this).getPropertyValue("--clr-generic-file-icon"),e=he(t,108,108);this.ref.filePreview.setImageUrl(e),this.set$({checkerboard:!1})}initCallback(){super.initCallback(),this.render(),this.$.fileSize=this.l10n("file-size-unknown"),this.registerActivity(this.activityType,{onDeactivate:()=>{this.ref.filePreview.clear()}}),this.sub("*focusedEntry",t=>{if(!t)return;this._entrySubs?this._entrySubs.forEach(n=>{this._entrySubs.delete(n),n.remove()}):this._entrySubs=new Set,this.entry=t;let e=t.getValue("file");if(e){this._file=e;let n=se(this._file);n&&!t.getValue("cdnUrl")&&(this.ref.filePreview.setImageFile(this._file),this.set$({checkerboard:!0})),n||this.showNonImageThumb()}let r=(n,o)=>{this._entrySubs.add(this.entry.subscribe(n,o))};r("fileName",n=>{this.$.fileName=n,this.$.onNameInput=()=>{let o=this.ref.file_name_input.value;Object.defineProperty(this._file,"name",{writable:!0,value:o}),this.entry.setValue("fileName",o)}}),r("fileSize",n=>{this.$.fileSize=Number.isFinite(n)?this.fileSizeFmt(n):this.l10n("file-size-unknown")}),r("uploadError",n=>{this.$.errorTxt=n==null?void 0:n.message}),r("externalUrl",n=>{n&&(this.entry.getValue("uuid")||this.showNonImageThumb())}),r("cdnUrl",n=>{let o=this.cfg.useCloudImageEditor&&n&&this.entry.getValue("isImage");if(n&&this.ref.filePreview.clear(),this.set$({cdnUrl:n,cloudEditBtnHidden:!o}),n&&this.entry.getValue("isImage")){let l=O(n,P("format/auto","preview"));this.ref.filePreview.setImageUrl(this.proxyUrl(l))}})})}};Ye.template=`
{{fileSize}}
{{errorTxt}}
`;var qi=class{constructor(){h(this,"captionL10nStr","confirm-your-action");h(this,"messageL10Str","are-you-sure");h(this,"confirmL10nStr","yes");h(this,"denyL10nStr","no")}confirmAction(){console.log("Confirmed")}denyAction(){this.historyBack()}},Ze=class extends g{constructor(){super(...arguments);h(this,"activityType",g.activities.CONFIRMATION);h(this,"_defaults",new qi);h(this,"init$",{...this.init$,activityCaption:"",messageTxt:"",confirmBtnTxt:"",denyBtnTxt:"","*confirmation":null,onConfirm:this._defaults.confirmAction,onDeny:this._defaults.denyAction.bind(this)})}initCallback(){super.initCallback(),this.set$({messageTxt:this.l10n(this._defaults.messageL10Str),confirmBtnTxt:this.l10n(this._defaults.confirmL10nStr),denyBtnTxt:this.l10n(this._defaults.denyL10nStr)}),this.sub("*confirmation",t=>{t&&this.set$({"*currentActivity":g.activities.CONFIRMATION,activityCaption:this.l10n(t.captionL10nStr),messageTxt:this.l10n(t.messageL10Str),confirmBtnTxt:this.l10n(t.confirmL10nStr),denyBtnTxt:this.l10n(t.denyL10nStr),onDeny:()=>{t.denyAction()},onConfirm:()=>{t.confirmAction()}})})}};Ze.template=`{{activityCaption}}
{{messageTxt}}
`;var Je=class extends v{constructor(){super(...arguments);h(this,"init$",{...this.init$,visible:!1,unknown:!1,value:0,"*commonProgress":0})}initCallback(){super.initCallback(),this._unobserveCollection=this.uploadCollection.observeProperties(()=>{let t=this.uploadCollection.items().some(e=>this.uploadCollection.read(e).getValue("isUploading"));this.$.visible=t}),this.sub("visible",t=>{t?this.setAttribute("active",""):this.removeAttribute("active")}),this.sub("*commonProgress",t=>{this.$.value=t})}destroyCallback(){var t;super.destroyCallback(),(t=this._unobserveCollection)==null||t.call(this)}};Je.template=``;var Qe=class extends b{constructor(){super(...arguments);h(this,"_value",0);h(this,"_unknownMode",!1);h(this,"init$",{...this.init$,width:0,opacity:0})}initCallback(){super.initCallback(),this.defineAccessor("value",t=>{t!==void 0&&(this._value=t,this._unknownMode||this.style.setProperty("--l-width",this._value.toString()))}),this.defineAccessor("visible",t=>{this.ref.line.classList.toggle("progress--hidden",!t)}),this.defineAccessor("unknown",t=>{this._unknownMode=t,this.ref.line.classList.toggle("progress--unknown",t)})}};Qe.template='
';var K="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";var de=class extends b{constructor(){super();h(this,"init$",{...this.init$,checkerboard:!1,src:K})}initCallback(){super.initCallback(),this.sub("checkerboard",()=>{this.style.backgroundImage=this.hasAttribute("checkerboard")?`url(${dr()})`:"unset"})}destroyCallback(){super.destroyCallback(),URL.revokeObjectURL(this._lastObjectUrl)}setImage(t){this.$.src=t.src}setImageFile(t){let e=URL.createObjectURL(t);this.$.src=e,this._lastObjectUrl=e}setImageUrl(t){this.$.src=t}clear(){URL.revokeObjectURL(this._lastObjectUrl),this.$.src=K}};de.template='';de.bindAttributes({checkerboard:"checkerboard"});var fr="--cfg-ctx-name",L=class extends b{get cfgCssCtxName(){return this.getCssData(fr,!0)}get cfgCtxName(){var t;let i=((t=this.getAttribute("ctx-name"))==null?void 0:t.trim())||this.cfgCssCtxName||this.__cachedCfgCtxName;return this.__cachedCfgCtxName=i,i}connectedCallback(){var i;if(!this.connectedOnce){let t=(i=this.getAttribute("ctx-name"))==null?void 0:i.trim();t&&this.style.setProperty(fr,`'${t}'`)}super.connectedCallback()}parseCfgProp(i){return{...super.parseCfgProp(i),ctx:$.getCtx(this.cfgCtxName)}}};function mr(...s){return s.reduce((i,t)=>{if(typeof t=="string")return i[t]=!0,i;for(let e of Object.keys(t))i[e]=t[e];return i},{})}function D(...s){let i=mr(...s);return Object.keys(i).reduce((t,e)=>(i[e]&&t.push(e),t),[]).join(" ")}function gr(s,...i){let t=mr(...i);for(let e of Object.keys(t))s.classList.toggle(e,t[e])}var _r=s=>{if(!s)return W;let i=Ms(s).filter(t=>W.includes(t));return i.length===0?W:i};function br(s){return{"*originalUrl":null,"*faderEl":null,"*cropperEl":null,"*imgEl":null,"*imgContainerEl":null,"*networkProblems":!1,"*imageSize":null,"*editorTransformations":{},"*cropPresetList":[],"*tabList":W,entry:null,extension:null,editorMode:!1,modalCaption:"",isImage:!1,msg:"",src:K,fileType:"",showLoader:!1,uuid:null,cdnUrl:null,cropPreset:"",tabs:Ot(W),"presence.networkProblems":!1,"presence.modalCaption":!0,"presence.editorToolbar":!1,"presence.viewerToolbar":!0,"*on.retryNetwork":()=>{let i=s.querySelectorAll("img");for(let t of i){let e=t.src;t.src=K,t.src=e}s.$["*networkProblems"]=!1},"*on.apply":i=>{if(!i)return;let t=s.$["*originalUrl"],e=P(Et(i),"preview"),r=O(t,e),n={originalUrl:t,cdnUrlModifiers:e,cdnUrl:r,transformations:i};s.dispatchEvent(new CustomEvent("apply",{detail:n,bubbles:!0,composed:!0})),s.remove()},"*on.cancel":()=>{s.remove(),s.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0}))}}}var yr=`
Network error
{{fileType}}
{{msg}}
`;var ot=class extends L{constructor(){super();h(this,"_debouncedShowLoader",I(this._showLoader.bind(this),300));this.init$={...this.init$,...br(this)}}get ctxName(){return this.autoCtxName}_showLoader(t){this.$.showLoader=t}_waitForSize(){return new Promise((e,r)=>{let n=setTimeout(()=>{r(new Error("[cloud-image-editor] timeout waiting for non-zero container size"))},3e3),o=new ResizeObserver(([l])=>{l.contentRect.width>0&&l.contentRect.height>0&&(e(),clearTimeout(n),o.disconnect())});o.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(await this._waitForSize(),this.$["*tabId"]===N.CROP?this.$["*cropperEl"].deactivate({reset:!0}):this.$["*faderEl"].deactivate(),this.$["*editorTransformations"]={},this.$.cdnUrl){let t=zs(this.$.cdnUrl);this.$["*originalUrl"]=Tt(this.$.cdnUrl,t);let e=js(this.$.cdnUrl),r=Qs(e);this.$["*editorTransformations"]=r}else if(this.$.uuid)this.$["*originalUrl"]=Tt(this.cfg.cdnCname,this.$.uuid);else throw new Error("No UUID nor CDN URL provided");try{let t=O(this.$["*originalUrl"],P("json")),e=await fetch(t).then(o=>o.json()),{width:r,height:n}=e;this.$["*imageSize"]={width:r,height:n},this.$["*tabId"]===N.CROP?this.$["*cropperEl"].activate(this.$["*imageSize"]):this.$["*faderEl"].activate({url:this.$["*originalUrl"]})}catch(t){t&&console.error("Failed to load image info",t)}}async initEditor(){try{await this._waitForSize()}catch(t){this.isConnected&&console.error(t.message);return}this.ref["img-el"].addEventListener("load",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$.src!==K&&(this.$["*networkProblems"]=!1)}),this.ref["img-el"].addEventListener("error",()=>{this._imgLoading=!1,this._debouncedShowLoader(!1),this.$["*networkProblems"]=!0}),this.sub("src",t=>{let e=this.ref["img-el"];e.src!==t&&(this._imgLoading=!0,e.src=t||K)}),this.sub("cropPreset",t=>{this.$["*cropPresetList"]=Pe(t)}),this.sub("tabs",t=>{this.$["*tabList"]=_r(t)}),this.sub("*tabId",t=>{this.ref["img-el"].className=D("image",{image_hidden_to_cropper:t===N.CROP,image_hidden_effects:t!==N.CROP})}),this.classList.add("editor_ON"),this.sub("*networkProblems",t=>{this.$["presence.networkProblems"]=t,this.$["presence.modalCaption"]=!t}),this.sub("*editorTransformations",t=>{if(Object.keys(t).length===0)return;let e=this.$["*originalUrl"],r=P(Et(t),"preview"),n=O(e,r),o={originalUrl:e,cdnUrlModifiers:r,cdnUrl:n,transformations:t};this.dispatchEvent(new CustomEvent("change",{detail:o,bubbles:!0,composed:!0}))},!1),this.sub("uuid",t=>t&&this.updateImage()),this.sub("cdnUrl",t=>t&&this.updateImage())}};h(ot,"className","cloud-image-editor");ot.template=yr;ot.bindAttributes({uuid:"uuid","cdn-url":"cdnUrl","crop-preset":"cropPreset",tabs:"tabs"});var ti=class extends L{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(i){let t=this.$["*imageBox"];if(!t)return;if(i===""&&t.height<=y&&t.width<=y)return!0;let e=t.height<=y&&(i.includes("n")||i.includes("s")),r=t.width<=y&&(i.includes("e")||i.includes("w"));return e||r}_createBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i,o=this.ref["svg-el"],l=Y("mask",{id:"backdrop-mask"}),a=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"white"}),c=Y("rect",{x:t,y:e,width:r,height:n,fill:"black"});l.appendChild(a),l.appendChild(c);let u=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"var(--color-image-background)","fill-opacity":.85,mask:"url(#backdrop-mask)"});o.appendChild(u),o.appendChild(l),this._backdropMask=l,this._backdropMaskInner=c}_resizeBackdrop(){this._backdropMask&&(this._backdropMask.style.display="none",window.requestAnimationFrame(()=>{this._backdropMask&&(this._backdropMask.style.display="block")}))}_updateBackdrop(){let i=this.$["*cropBox"];if(!i)return;let{x:t,y:e,width:r,height:n}=i;this._backdropMaskInner&&kt(this._backdropMaskInner,{x:t,y:e,width:r,height:n})}_updateFrame(){let i=this.$["*cropBox"];if(!(!i||!this._frameGuides||!this._frameThumbs)){for(let t of Object.values(this._frameThumbs)){let{direction:e,pathNode:r,interactionNode:n,groupNode:o}=t,l=e==="",a=e.length===2,{x:c,y:u,width:d,height:p}=i;if(l){let f={x:c+d/3,y:u+p/3,width:d/3,height:p/3};kt(n,f)}else{let f=wt(Math.min(d,p)/(24*2+34)/2,0,1),{d:_,center:A}=a?$s(i,e,f):Ss(i,e,f),E=Math.max(Di*wt(Math.min(d,p)/Di/3,0,1),As);kt(n,{x:A[0]-E,y:A[1]-E,width:E*2,height:E*2}),kt(r,{d:_})}let m=this._shouldThumbBeDisabled(e);o.setAttribute("class",D("thumb",{"thumb--hidden":m,"thumb--visible":!m}))}kt(this._frameGuides,{x:i.x-1*.5,y:i.y-1*.5,width:i.width+1,height:i.height+1})}}_createThumbs(){let i={};for(let t=0;t<3;t++)for(let e=0;e<3;e++){let r=`${["n","","s"][t]}${["w","","e"][e]}`,n=Y("g");n.classList.add("thumb"),n.setAttribute("with-effects","");let o=Y("rect",{fill:"transparent"}),l=Y("path",{stroke:"currentColor",fill:"none","stroke-width":3});n.appendChild(l),n.appendChild(o),i[r]={direction:r,pathNode:l,interactionNode:o,groupNode:n},o.addEventListener("pointerdown",this._handlePointerDown.bind(this,r))}return i}_createGuides(){let i=Y("svg"),t=Y("rect",{x:0,y:0,width:"100%",height:"100%",fill:"none",stroke:"#000000","stroke-width":1,"stroke-opacity":.5});i.appendChild(t);for(let e=1;e<=2;e++){let r=Y("line",{x1:`${ee*e}%`,y1:"0%",x2:`${ee*e}%`,y2:"100%",stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}for(let e=1;e<=2;e++){let r=Y("line",{x1:"0%",y1:`${ee*e}%`,x2:"100%",y2:`${ee*e}%`,stroke:"#000000","stroke-width":1,"stroke-opacity":.3});i.appendChild(r)}return i.classList.add("guides","guides--semi-hidden"),i}_createFrame(){let i=this.ref["svg-el"],t=document.createDocumentFragment(),e=this._createGuides();t.appendChild(e);let r=this._createThumbs();for(let{groupNode:n}of Object.values(r))t.appendChild(n);i.appendChild(t),this._frameThumbs=r,this._frameGuides=e}_handlePointerDown(i,t){if(!this._frameThumbs)return;let e=this._frameThumbs[i];if(this._shouldThumbBeDisabled(i))return;let r=this.$["*cropBox"],{x:n,y:o}=this.ref["svg-el"].getBoundingClientRect(),l=t.x-n,a=t.y-o;this.$.dragging=!0,this._draggingThumb=e,this._dragStartPoint=[l,a],this._dragStartCrop={...r}}_handlePointerUp_(i){this._updateCursor(),this.$.dragging&&(i.stopPropagation(),i.preventDefault(),this.$.dragging=!1)}_handlePointerMove_(i){if(!this.$.dragging||!this._dragStartPoint||!this._draggingThumb)return;i.stopPropagation(),i.preventDefault();let t=this.ref["svg-el"],{x:e,y:r}=t.getBoundingClientRect(),n=i.x-e,o=i.y-r,l=n-this._dragStartPoint[0],a=o-this._dragStartPoint[1],{direction:c}=this._draggingThumb,u=this._calcCropBox(c,[l,a]);u&&(this.$["*cropBox"]=u)}_calcCropBox(i,t){var c,u;let[e,r]=t,n=this.$["*imageBox"],o=(c=this._dragStartCrop)!=null?c:this.$["*cropBox"],l=(u=this.$["*cropPresetList"])==null?void 0:u[0],a=l?l.width/l.height:void 0;if(i===""?o=ks({rect:o,delta:[e,r],imageBox:n}):o=Os({rect:o,delta:[e,r],direction:i,aspectRatio:a,imageBox:n}),!Object.values(o).every(d=>Number.isFinite(d)&&d>=0)){console.error("CropFrame is trying to create invalid rectangle",{payload:o});return}return Bt(jt(o),this.$["*imageBox"])}_handleSvgPointerMove_(i){if(!this._frameThumbs)return;let t=Object.values(this._frameThumbs).find(e=>{if(this._shouldThumbBeDisabled(e.direction))return!1;let n=e.interactionNode.getBoundingClientRect(),o={x:n.x,y:n.y,width:n.width,height:n.height};return Ls(o,[i.x,i.y])});this._hoverThumb=t,this._updateCursor()}_updateCursor(){let i=this._hoverThumb;this.ref["svg-el"].style.cursor=i?Is(i.direction):"initial"}_render(){this._updateBackdrop(),this._updateFrame()}toggleThumbs(i){this._frameThumbs&&Object.values(this._frameThumbs).map(({groupNode:t})=>t).forEach(t=>{t.setAttribute("class",D("thumb",{"thumb--hidden":!i,"thumb--visible":i}))})}initCallback(){super.initCallback(),this._createBackdrop(),this._createFrame(),this.sub("*imageBox",()=>{this._resizeBackdrop(),window.requestAnimationFrame(()=>{this._render()})}),this.sub("*cropBox",i=>{i&&(this._guidesHidden=i.height<=y||i.width<=y,window.requestAnimationFrame(()=>{this._render()}))}),this.sub("dragging",i=>{this._frameGuides&&this._frameGuides.setAttribute("class",D({"guides--hidden":this._guidesHidden,"guides--visible":!this._guidesHidden&&i,"guides--semi-hidden":!this._guidesHidden&&!i}))}),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)}};ti.template='';var _t=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,active:!1,title:"",icon:"","on.click":null})}initCallback(){super.initCallback(),this._titleEl=this.ref["title-el"],this._iconEl=this.ref["icon-el"],this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.sub("title",t=>{this._titleEl&&(this._titleEl.style.display=t?"block":"none")}),this.sub("active",t=>{this.className=D({active:t,not_active:!t})}),this.sub("on.click",t=>{this.onclick=t})}};_t.template=`
{{title}}
`;function Lo(s){let i=s+90;return i=i>=360?0:i,i}function Uo(s,i){return s==="rotate"?Lo(i):["mirror","flip"].includes(s)?!i:null}var pe=class extends _t{initCallback(){super.initCallback(),this.defineAccessor("operation",i=>{i&&(this._operation=i,this.$.icon=i)}),this.$["on.click"]=i=>{let t=this.$["*cropperEl"].getValue(this._operation),e=Uo(this._operation,t);this.$["*cropperEl"].setValue(this._operation,e)}}};var fe={FILTER:"filter",COLOR_OPERATION:"color_operation"},lt="original",ei=class extends L{constructor(){super(...arguments);h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,value:0,defaultValue:0,zero:0,"on.input":t=>{this.$["*faderEl"].set(t),this.$.value=t}})}setOperation(t,e){this._controlType=t==="filter"?fe.FILTER:fe.COLOR_OPERATION,this._operation=t,this._iconName=t,this._title=t.toUpperCase(),this._filter=e,this._initializeValues(),this.$["*faderEl"].activate({url:this.$["*originalUrl"],operation:this._operation,value:this._filter===lt?void 0:this.$.value,filter:this._filter===lt?void 0:this._filter,fromViewer:!1})}_initializeValues(){let{range:t,zero:e}=rt[this._operation],[r,n]=t;this.$.min=r,this.$.max=n,this.$.zero=e;let o=this.$["*editorTransformations"][this._operation];if(this._controlType===fe.FILTER){let l=n;if(o){let{name:a,amount:c}=o;l=a===this._filter?c:n}this.$.value=l,this.$.defaultValue=l}if(this._controlType===fe.COLOR_OPERATION){let l=typeof o!="undefined"?o:e;this.$.value=l,this.$.defaultValue=l}}apply(){let t;this._controlType===fe.FILTER?this._filter===lt?t=null:t={name:this._filter,amount:this.$.value}:t=this.$.value;let e={...this.$["*editorTransformations"],[this._operation]:t};this.$["*editorTransformations"]=e}cancel(){this.$["*faderEl"].deactivate({hide:!1})}initCallback(){super.initCallback(),this.sub("*originalUrl",t=>{this._originalUrl=t}),this.sub("value",t=>{let e=`${this._filter||this._operation} ${t}`;this.$["*operationTooltip"]=e})}};ei.template=``;function me(s){let i=new Image;return{promise:new Promise((r,n)=>{i.src=s,i.onload=r,i.onerror=n}),image:i,cancel:()=>{i.naturalWidth===0&&(i.src=K)}}}function ge(s){let i=[];for(let n of s){let o=me(n);i.push(o)}let t=i.map(n=>n.image);return{promise:Promise.allSettled(i.map(n=>n.promise)),images:t,cancel:()=>{i.forEach(n=>{n.cancel()})}}}var Xt=class extends _t{constructor(){super(...arguments);h(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,r=Math.ceil(e*t),n=e>=2?"lightest":"normal",o=100,l={...this.$["*editorTransformations"]};return l[this._operation]=this._filter!==lt?{name:this._filter,amount:o}:void 0,O(this._originalUrl,P(Fe,Et(l),`quality/${n}`,`scale_crop/${r}x${r}/center`))}_observerCallback(t,e){if(t[0].isIntersecting){let n=this.proxyUrl(this._previewSrc()),o=this.ref["preview-el"],{promise:l,cancel:a}=me(n);this._cancelPreload=a,l.catch(c=>{this.$["*networkProblems"]=!0,console.error("Failed to load image",{error:c})}).finally(()=>{o.style.backgroundImage=`url(${n})`,o.setAttribute("loaded",""),e.unobserve(this)})}else this._cancelPreload&&this._cancelPreload()}initCallback(){super.initCallback(),this.$["on.click"]=e=>{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===lt,this.$.icon=this.$.isOriginal?"original":"slider"}),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("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 r=this.ref["icon-el"];r.style.opacity=e?"1":"0";let n=this.ref["preview-el"];e?n.style.opacity="0":n.style.backgroundImage&&(n.style.opacity="1")}),this.sub("*networkProblems",e=>{if(!e){let r=this.proxyUrl(this._previewSrc()),n=this.ref["preview-el"];n.style.backgroundImage&&(n.style.backgroundImage="none",n.style.backgroundImage=`url(${r})`)}})}destroyCallback(){var t;super.destroyCallback(),(t=this._observer)==null||t.disconnect(),this._cancelPreload&&this._cancelPreload()}};Xt.template=`
`;var _e=class extends _t{constructor(){super(...arguments);h(this,"_operation","")}initCallback(){super.initCallback(),this.$["on.click"]=t=>{this.$["*sliderEl"].setOperation(this._operation),this.$["*showSlider"]=!0,this.$["*currentOperation"]=this._operation},this.defineAccessor("operation",t=>{t&&(this._operation=t,this.$.icon=t,this.$.title=this.l10n(t))}),this.sub("*editorTransformations",t=>{if(!this._operation)return;let{zero:e}=rt[this._operation],r=t[this._operation],n=typeof r!="undefined"?r!==e:!1;this.$.active=n})}};var vr=(s,i)=>{let t,e,r;return(...n)=>{t?(clearTimeout(e),e=setTimeout(()=>{Date.now()-r>=i&&(s(...n),r=Date.now())},Math.max(i-(Date.now()-r),0))):(s(...n),r=Date.now(),t=!0)}};function Cr(s,i){let t={};for(let e of i){let r=s[e];(s.hasOwnProperty(e)||r!==void 0)&&(t[e]=r)}return t}function qt(s,i,t){let r=window.devicePixelRatio,n=Math.min(Math.ceil(i*r),3e3),o=r>=2?"lightest":"normal";return O(s,P(Fe,Et(t),`quality/${o}`,`stretch/off/-/resize/${n}x`))}function Ro(s){return s?[({dimensions:t,coords:e})=>[...t,...e].every(r=>Number.isInteger(r)&&Number.isFinite(r)),({dimensions:t,coords:e})=>t.every(r=>r>0)&&e.every(r=>r>=0)].every(t=>t(s)):!0}var ii=class extends L{constructor(){super(),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=I(this._commit.bind(this),300),this._handleResizeThrottled=vr(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 i=this.$["*editorTransformations"],t=Cr(i,Object.keys(this.$["*operations"])),e={...this.$["*operations"],...t};this.$["*operations"]=e}_initCanvas(){let i=this.ref["canvas-el"],t=i.getContext("2d"),e=this.offsetWidth,r=this.offsetHeight,n=window.devicePixelRatio;i.style.width=`${e}px`,i.style.height=`${r}px`,i.width=e*n,i.height=r*n,t==null||t.scale(n,n),this._canvas=i,this._ctx=t}_alignImage(){if(!this._isActive||!this.$.image)return;let i=this.$.image,t=this.$["*padding"],e=this.$["*operations"],{rotate:r}=e,n={width:this.offsetWidth,height:this.offsetHeight},o=zt({width:i.naturalWidth,height:i.naturalHeight},r),l;if(o.width>n.width-t*2||o.height>n.height-t*2){let a=o.width/o.height,c=n.width/n.height;if(a>c){let u=n.width-t*2,d=u/a,p=0+t,m=t+(n.height-t*2)/2-d/2;l={x:p,y:m,width:u,height:d}}else{let u=n.height-t*2,d=u*a,p=t+(n.width-t*2)/2-d/2,m=0+t;l={x:p,y:m,width:d,height:u}}}else{let{width:a,height:c}=o,u=t+(n.width-t*2)/2-a/2,d=t+(n.height-t*2)/2-c/2;l={x:u,y:d,width:a,height:c}}this.$["*imageBox"]=jt(l)}_alignCrop(){var d;let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,n=this.$["*editorTransformations"].crop,{width:o,x:l,y:a}=this.$["*imageBox"];if(n){let{dimensions:[p,m],coords:[f,_]}=n,{width:A}=zt(this._imageSize,r),E=o/A;i=Bt(jt({x:l+f*E,y:a+_*E,width:p*E,height:m*E}),this.$["*imageBox"])}let c=(d=this.$["*cropPresetList"])==null?void 0:d[0],u=c?c.width/c.height:void 0;if(!Us(i,t)||u&&!Rs(i,u)){let p=t.width/t.height,m=t.width,f=t.height;u&&(p>u?m=Math.min(t.height*u,t.width):f=Math.min(t.width/u,t.height)),i={x:t.x+t.width/2-m/2,y:t.y+t.height/2-f/2,width:m,height:f}}this.$["*cropBox"]=Bt(jt(i),this.$["*imageBox"])}_drawImage(){let i=this._ctx;if(!i)return;let t=this.$.image,e=this.$["*imageBox"],r=this.$["*operations"],{mirror:n,flip:o,rotate:l}=r,a=zt({width:e.width,height:e.height},l);i.save(),i.translate(e.x+e.width/2,e.y+e.height/2),i.rotate(l*Math.PI*-1/180),i.scale(n?-1:1,o?-1:1),i.drawImage(t,-a.width/2,-a.height/2,a.width,a.height),i.restore()}_draw(){if(!this._isActive||!this.$.image||!this._canvas||!this._ctx)return;let i=this._canvas;this._ctx.clearRect(0,0,i.width,i.height),this._drawImage()}_animateIn({fromViewer:i}){this.$.image&&(this.ref["frame-el"].toggleThumbs(!0),this._transitionToImage(),setTimeout(()=>{this.className=D({active_from_viewer:i,active_from_editor:!i,inactive_to_editor:!1})}))}_getCropDimensions(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o}=t,{width:l,height:a}=zt(this._imageSize,r),{width:c,height:u}=i,d=n/l,p=o/a;return[wt(Math.round(c/d),1,l),wt(Math.round(u/p),1,a)]}_getCropTransformation(){let i=this.$["*cropBox"],t=this.$["*imageBox"],e=this.$["*operations"],{rotate:r}=e,{width:n,height:o,x:l,y:a}=t,{width:c,height:u}=zt(this._imageSize,r),{x:d,y:p}=i,m=n/c,f=o/u,_=this._getCropDimensions(),A={dimensions:_,coords:[wt(Math.round((d-l)/m),0,c-_[0]),wt(Math.round((p-a)/f),0,u-_[1])]};if(!Ro(A)){console.error("Cropper is trying to create invalid crop object",{payload:A});return}if(!(_[0]===c&&_[1]===u))return A}_commit(){if(!this.isConnected)return;let i=this.$["*operations"],{rotate:t,mirror:e,flip:r}=i,n=this._getCropTransformation(),l={...this.$["*editorTransformations"],crop:n,rotate:t,mirror:e,flip:r};this.$["*editorTransformations"]=l}setValue(i,t){console.log(`Apply cropper operation [${i}=${t}]`),this.$["*operations"]={...this.$["*operations"],[i]:t},this._isActive&&(this._alignImage(),this._alignCrop(),this._draw())}getValue(i){return this.$["*operations"][i]}async activate(i,{fromViewer:t}={}){if(!this._isActive){this._isActive=!0,this._imageSize=i,this.removeEventListener("transitionend",this._reset);try{this.$.image=await this._waitForImage(this.$["*originalUrl"],this.$["*editorTransformations"]),this._syncTransformations(),this._animateIn({fromViewer:t})}catch(e){console.error("Failed to activate cropper",{error:e})}this._observer=new ResizeObserver(([e])=>{e.contentRect.width>0&&e.contentRect.height>0&&this._isActive&&this.$.image&&this._handleResizeThrottled()}),this._observer.observe(this)}}deactivate({reset:i=!1}={}){var t;this._isActive&&(!i&&this._commit(),this._isActive=!1,this._transitionToCrop(),this.className=D({active_from_viewer:!1,active_from_editor:!1,inactive_to_editor:!0}),this.ref["frame-el"].toggleThumbs(!1),this.addEventListener("transitionend",this._reset,{once:!0}),(t=this._observer)==null||t.disconnect())}_transitionToCrop(){let i=this._getCropDimensions(),t=Math.min(this.offsetWidth,i[0])/this.$["*cropBox"].width,e=Math.min(this.offsetHeight,i[1])/this.$["*cropBox"].height,r=Math.min(t,e),n=this.$["*cropBox"].x+this.$["*cropBox"].width/2,o=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform=`scale(${r}) translate(${(this.offsetWidth/2-n)/r}px, ${(this.offsetHeight/2-o)/r}px)`,this.style.transformOrigin=`${n}px ${o}px`}_transitionToImage(){let i=this.$["*cropBox"].x+this.$["*cropBox"].width/2,t=this.$["*cropBox"].y+this.$["*cropBox"].height/2;this.style.transform="scale(1)",this.style.transformOrigin=`${i}px ${t}px`}_reset(){this._isActive||(this.$.image=null)}_waitForImage(i,t){let e=this.offsetWidth;t={...t,crop:void 0,rotate:void 0,flip:void 0,mirror:void 0};let r=this.proxyUrl(qt(i,e,t)),{promise:n,cancel:o,image:l}=me(r),a=this._handleImageLoading(r);return l.addEventListener("load",a,{once:!0}),l.addEventListener("error",a,{once:!0}),this._cancelPreload&&this._cancelPreload(),this._cancelPreload=o,n.then(()=>l).catch(c=>(console.error("Failed to load image",{error:c}),this.$["*networkProblems"]=!0,Promise.resolve(l)))}_handleImageLoading(i){let t="crop",e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}initCallback(){super.initCallback(),this.sub("*imageBox",()=>{this._draw()}),this.sub("*cropBox",()=>{this.$.image&&this._commitDebounced()}),this.sub("*cropPresetList",()=>{this._alignCrop()}),setTimeout(()=>{this.sub("*networkProblems",i=>{i||this._isActive&&this.activate(this._imageSize,{fromViewer:!1})})},0)}destroyCallback(){var i;super.destroyCallback(),(i=this._observer)==null||i.disconnect()}};ii.template=``;function Gi(s,i,t){let e=Array(t);t--;for(let r=t;r>=0;r--)e[r]=Math.ceil((r*i+(t-r)*s)/t);return e}function Po(s){return s.reduce((i,t,e)=>er<=i&&i<=n);return s.map(r=>{let n=Math.abs(e[0]-e[1]),o=Math.abs(i-e[0])/n;return e[0]===r?i>t?1:1-o:e[1]===r?i>=t?o:1:0})}function No(s,i){return s.map((t,e)=>tn-o)}var Ki=class extends L{constructor(){super(),this._isActive=!1,this._hidden=!0,this._addKeypointDebounced=I(this._addKeypoint.bind(this),600),this.classList.add("inactive_to_cropper")}_handleImageLoading(i){let t=this._operation,e=this.$["*loadingOperations"];return e.get(t)||e.set(t,new Map),e.get(t).get(i)||(e.set(t,e.get(t).set(i,!0)),this.$["*loadingOperations"]=e),()=>{var r;(r=e==null?void 0:e.get(t))!=null&&r.has(i)&&(e.get(t).delete(i),this.$["*loadingOperations"]=e)}}_flush(){window.cancelAnimationFrame(this._raf),this._raf=window.requestAnimationFrame(()=>{for(let i of this._keypoints){let{image:t}=i;t&&(t.style.opacity=i.opacity.toString(),t.style.zIndex=i.zIndex.toString())}})}_imageSrc({url:i=this._url,filter:t=this._filter,operation:e,value:r}={}){let n={...this._transformations};e&&(n[e]=t?{name:t,amount:r}:r);let o=this.offsetWidth;return this.proxyUrl(qt(i,o,n))}_constructKeypoint(i,t){return{src:this._imageSrc({operation:i,value:t}),image:null,opacity:0,zIndex:0,value:t}}_isSame(i,t){return this._operation===i&&this._filter===t}_addKeypoint(i,t,e){let r=()=>!this._isSame(i,t)||this._value!==e||!!this._keypoints.find(a=>a.value===e);if(r())return;let n=this._constructKeypoint(i,e),o=new Image;o.src=n.src;let l=this._handleImageLoading(n.src);o.addEventListener("load",l,{once:!0}),o.addEventListener("error",l,{once:!0}),n.image=o,o.classList.add("fader-image"),o.addEventListener("load",()=>{if(r())return;let a=this._keypoints,c=a.findIndex(d=>d.value>e),u=c{this.$["*networkProblems"]=!0},{once:!0})}set(i){i=typeof i=="string"?parseInt(i,10):i,this._update(this._operation,i),this._addKeypointDebounced(this._operation,this._filter,i)}_update(i,t){this._operation=i,this._value=t;let{zero:e}=rt[i],r=this._keypoints.map(l=>l.value),n=Mo(r,t,e),o=No(r,e);for(let[l,a]of Object.entries(this._keypoints))a.opacity=n[l],a.zIndex=o[l];this._flush()}_createPreviewImage(){let i=new Image;return i.classList.add("fader-image","fader-image--preview"),i.style.opacity="0",i}async _initNodes(){let i=document.createDocumentFragment();this._previewImage=this._previewImage||this._createPreviewImage(),!this.contains(this._previewImage)&&i.appendChild(this._previewImage);let t=document.createElement("div");i.appendChild(t);let e=this._keypoints.map(c=>c.src),{images:r,promise:n,cancel:o}=ge(e);r.forEach(c=>{let u=this._handleImageLoading(c.src);c.addEventListener("load",u),c.addEventListener("error",u)}),this._cancelLastImages=()=>{o(),this._cancelLastImages=void 0};let l=this._operation,a=this._filter;await n,this._isActive&&this._isSame(l,a)&&(this._container&&this._container.remove(),this._container=t,this._keypoints.forEach((c,u)=>{let d=r[u];d.classList.add("fader-image"),c.image=d,this._container.appendChild(d)}),this.appendChild(i),this._flush())}setTransformations(i){if(this._transformations=i,this._previewImage){let t=this._imageSrc(),e=this._handleImageLoading(t);this._previewImage.src=t,this._previewImage.addEventListener("load",e,{once:!0}),this._previewImage.addEventListener("error",e,{once:!0}),this._previewImage.style.opacity="1",this._previewImage.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}}preload({url:i,filter:t,operation:e,value:r}){this._cancelBatchPreload&&this._cancelBatchPreload();let o=wr(e,r).map(a=>this._imageSrc({url:i,filter:t,operation:e,value:a})),{cancel:l}=ge(o);this._cancelBatchPreload=l}_setOriginalSrc(i){let t=this._previewImage||this._createPreviewImage();if(!this.contains(t)&&this.appendChild(t),this._previewImage=t,t.src===i){t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1});return}t.style.opacity="0";let e=this._handleImageLoading(i);t.addEventListener("error",e,{once:!0}),t.src=i,t.addEventListener("load",()=>{e(),t&&(t.style.opacity="1",t.style.transform="scale(1)",this.className=D({active_from_viewer:this._fromViewer,active_from_cropper:!this._fromViewer,inactive_to_cropper:!1}))},{once:!0}),t.addEventListener("error",()=>{this.$["*networkProblems"]=!0},{once:!0})}activate({url:i,operation:t,value:e,filter:r,fromViewer:n}){if(this._isActive=!0,this._hidden=!1,this._url=i,this._operation=t||"initial",this._value=e,this._filter=r,this._fromViewer=n,typeof e!="number"&&!r){let l=this._imageSrc({operation:t,value:e});this._setOriginalSrc(l),this._container&&this._container.remove();return}this._keypoints=wr(t,e).map(l=>this._constructKeypoint(t,l)),this._update(t,e),this._initNodes()}deactivate({hide:i=!0}={}){this._isActive=!1,this._cancelLastImages&&this._cancelLastImages(),this._cancelBatchPreload&&this._cancelBatchPreload(),i&&!this._hidden?(this._hidden=!0,this._previewImage&&(this._previewImage.style.transform="scale(1)"),this.className=D({active_from_viewer:!1,active_from_cropper:!1,inactive_to_cropper:!0}),this.addEventListener("transitionend",()=>{this._container&&this._container.remove()},{once:!0})):this._container&&this._container.remove()}};var Do=1,si=class extends L{initCallback(){super.initCallback(),this.addEventListener("wheel",i=>{i.preventDefault();let{deltaY:t,deltaX:e}=i;Math.abs(e)>Do?this.scrollLeft+=e:this.scrollLeft+=t})}};si.template=" ";function Fo(s){return``}function Vo(s){return`
`}var ri=class extends L{constructor(){super();h(this,"_updateInfoTooltip",I(()=>{var o,l;let t=this.$["*editorTransformations"],e=this.$["*currentOperation"],r="",n=!1;if(this.$["*tabId"]===N.FILTERS)if(n=!0,this.$["*currentFilter"]&&((o=t==null?void 0:t.filter)==null?void 0:o.name)===this.$["*currentFilter"]){let a=((l=t==null?void 0:t.filter)==null?void 0:l.amount)||100;r=this.l10n(this.$["*currentFilter"])+" "+a}else r=this.l10n(lt);else if(this.$["*tabId"]===N.TUNING&&e){n=!0;let a=(t==null?void 0:t[e])||rt[e].zero;r=e+" "+a}n&&(this.$["*operationTooltip"]=r),this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",n)},0));this.init$={...this.init$,"*sliderEl":null,"*loadingOperations":new Map,"*showSlider":!1,"*currentFilter":lt,"*currentOperation":null,"*tabId":N.CROP,showLoader:!1,filters:er,colorOperations:tr,cropOperations:ir,"*operationTooltip":null,"l10n.cancel":this.l10n("cancel"),"l10n.apply":this.l10n("apply"),"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:"sub-toolbar--top-hidden",visible:"sub-toolbar--visible"},"presence.subBottomToolbarStyles":{hidden:"sub-toolbar--bottom-hidden",visible:"sub-toolbar--visible"},"presence.tabContentStyles":{hidden:"tab-content--hidden",visible:"tab-content--visible"},"presence.tabToggleStyles":{hidden:"tab-toggle--hidden",visible:"tab-toggle--visible"},"presence.tabTogglesStyles":{hidden:"tab-toggles--hidden",visible:"tab-toggles--visible"},"on.cancel":()=>{this._cancelPreload&&this._cancelPreload(),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":t=>{let e=t.currentTarget.getAttribute("data-id");e&&this._activateTab(e,{fromViewer:!1})}},this._debouncedShowLoader=I(this._showLoader.bind(this),500)}_onSliderClose(){this.$["*showSlider"]=!1,this.$["*tabId"]===N.TUNING&&this.ref["tooltip-el"].classList.toggle("info-tooltip_visible",!1)}_createOperationControl(t){let e=new _e;return e.operation=t,e}_createFilterControl(t){let e=new Xt;return e.filter=t,e}_createToggleControl(t){let e=new pe;return e.operation=t,e}_renderControlsList(t){let e=this.ref[`controls-list-${t}`],r=document.createDocumentFragment();t===N.CROP?this.$.cropOperations.forEach(n=>{let o=this._createToggleControl(n);r.appendChild(o)}):t===N.FILTERS?[lt,...this.$.filters].forEach(n=>{let o=this._createFilterControl(n);r.appendChild(o)}):t===N.TUNING&&this.$.colorOperations.forEach(n=>{let o=this._createOperationControl(n);r.appendChild(o)}),[...r.children].forEach((n,o)=>{o===r.childNodes.length-1&&n.classList.add("controls-list_last-item")}),e.innerHTML="",e.appendChild(r)}_activateTab(t,{fromViewer:e}){this.$["*tabId"]=t,t===N.CROP?(this.$["*faderEl"].deactivate(),this.$["*cropperEl"].activate(this.$["*imageSize"],{fromViewer:e})):(this.$["*faderEl"].activate({url:this.$["*originalUrl"],fromViewer:e}),this.$["*cropperEl"].deactivate());for(let r of W){let n=r===t,o=this.ref[`tab-toggle-${r}`];o.active=n,n?(this._renderControlsList(t),this._syncTabIndicator()):this._unmountTabControls(r),this.$[`presence.tabContent.${r}`]=n}}_unmountTabControls(t){let e=this.ref[`controls-list-${t}`];e&&(e.innerHTML="")}_syncTabIndicator(){let t=this.ref[`tab-toggle-${this.$["*tabId"]}`],e=this.ref["tabs-indicator"];e.style.transform=`translateX(${t.offsetLeft}px)`}_preloadEditedImage(){if(this.$["*imgContainerEl"]&&this.$["*originalUrl"]){let t=this.$["*imgContainerEl"].offsetWidth,e=this.proxyUrl(qt(this.$["*originalUrl"],t,this.$["*editorTransformations"]));this._cancelPreload&&this._cancelPreload();let{cancel:r}=ge([e]);this._cancelPreload=()=>{r(),this._cancelPreload=void 0}}}_showLoader(t){this.$.showLoader=t}initCallback(){super.initCallback(),this.$["*sliderEl"]=this.ref["slider-el"],this.sub("*imageSize",t=>{t&&setTimeout(()=>{this._activateTab(this.$["*tabId"],{fromViewer:!0})},0)}),this.sub("*editorTransformations",t=>{var r;let e=(r=t==null?void 0:t.filter)==null?void 0:r.name;this.$["*currentFilter"]!==e&&(this.$["*currentFilter"]=e)}),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",t=>{this._preloadEditedImage(),this.$["*faderEl"]&&this.$["*faderEl"].setTransformations(t)}),this.sub("*loadingOperations",t=>{let e=!1;for(let[,r]of t.entries()){if(e)break;for(let[,n]of r.entries())if(n){e=!0;break}}this._debouncedShowLoader(e)}),this.sub("*showSlider",t=>{this.$["presence.subToolbar"]=t,this.$["presence.mainToolbar"]=!t}),this.sub("*tabList",t=>{this.$["presence.tabToggles"]=t.length>1;for(let e of W){this.$[`presence.tabToggle.${e}`]=t.includes(e);let r=this.ref[`tab-toggle-${e}`];r.style.gridColumn=t.indexOf(e)+1}t.includes(this.$["*tabId"])||this._activateTab(t[0],{fromViewer:!1})}),this._updateInfoTooltip()}};ri.template=`
{{*operationTooltip}}
${W.map(Vo).join("")}
${W.map(Fo).join("")}
`;var be=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},this.defineAccessor("active",i=>{i?this.setAttribute("active",""):this.removeAttribute("active")})}_iconCss(){return D("icon",{icon_left:!this._iconReversed,icon_right:this._iconReversed,icon_hidden:this._iconHidden,icon_single:this._iconSingle})}initCallback(){super.initCallback(),this.sub("icon",i=>{this._iconSingle=!this.$.text,this._iconHidden=!i,this.$.iconCss=this._iconCss()}),this.sub("theme",i=>{i!=="custom"&&(this.className=i)}),this.sub("text",i=>{this._iconSingle=!1}),this.setAttribute("role","button"),this.tabIndex===-1&&(this.tabIndex=0),this.hasAttribute("theme")||this.setAttribute("theme","default")}set reverse(i){this.hasAttribute("reverse")?(this.style.flexDirection="row-reverse",this._iconReversed=!0):(this._iconReversed=!1,this.style.flexDirection=null)}};be.bindAttributes({text:"text",icon:"icon",reverse:"reverse",theme:"theme"});be.template=`
{{text}}
`;var ni=class extends b{constructor(){super(),this._active=!1,this._handleTransitionEndRight=()=>{let i=this.ref["line-el"];i.style.transition="initial",i.style.opacity="0",i.style.transform="translateX(-101%)",this._active&&this._start()}}initCallback(){super.initCallback(),this.defineAccessor("active",i=>{typeof i=="boolean"&&(i?this._start():this._stop())})}_start(){this._active=!0;let{width:i}=this.getBoundingClientRect(),t=this.ref["line-el"];t.style.transition="transform 1s",t.style.opacity="1",t.style.transform=`translateX(${i}px)`,t.addEventListener("transitionend",this._handleTransitionEndRight,{once:!0})}_stop(){this._active=!1}};ni.template=`
`;var oi={transition:"transition",visible:"visible",hidden:"hidden"},li=class extends b{constructor(){super(),this._visible=!1,this._visibleStyle=oi.visible,this._hiddenStyle=oi.hidden,this._externalTransitions=!1,this.defineAccessor("styles",i=>{i&&(this._externalTransitions=!0,this._visibleStyle=i.visible,this._hiddenStyle=i.hidden)}),this.defineAccessor("visible",i=>{typeof i=="boolean"&&(this._visible=i,this._handleVisible())})}_handleVisible(){this.style.visibility=this._visible?"inherit":"hidden",gr(this,{[oi.transition]:!this._externalTransitions,[this._visibleStyle]:this._visible,[this._hiddenStyle]:!this._visible}),this.setAttribute("aria-hidden",this._visible?"false":"true")}initCallback(){super.initCallback(),this.setAttribute("hidden",""),this._externalTransitions||this.classList.add(oi.transition),this._handleVisible(),setTimeout(()=>this.removeAttribute("hidden"),0)}};li.template=" ";var ai=class extends b{constructor(){super();h(this,"init$",{...this.init$,disabled:!1,min:0,max:100,onInput:null,onChange:null,defaultValue:null,"on.sliderInput":()=>{let t=parseInt(this.ref["input-el"].value,10);this._updateValue(t),this.$.onInput&&this.$.onInput(t)},"on.sliderChange":()=>{let t=parseInt(this.ref["input-el"].value,10);this.$.onChange&&this.$.onChange(t)}});this.setAttribute("with-effects","")}initCallback(){super.initCallback(),this.defineAccessor("disabled",e=>{this.$.disabled=e}),this.defineAccessor("min",e=>{this.$.min=e}),this.defineAccessor("max",e=>{this.$.max=e}),this.defineAccessor("defaultValue",e=>{this.$.defaultValue=e,this.ref["input-el"].value=e,this._updateValue(e)}),this.defineAccessor("zero",e=>{this._zero=e}),this.defineAccessor("onInput",e=>{e&&(this.$.onInput=e)}),this.defineAccessor("onChange",e=>{e&&(this.$.onChange=e)}),this._updateSteps(),this._observer=new ResizeObserver(()=>{this._updateSteps();let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)}),this._observer.observe(this),this._thumbSize=parseInt(window.getComputedStyle(this).getPropertyValue("--l-thumb-size"),10),setTimeout(()=>{let e=parseInt(this.ref["input-el"].value,10);this._updateValue(e)},0),this.sub("disabled",e=>{let r=this.ref["input-el"];e?r.setAttribute("disabled","disabled"):r.removeAttribute("disabled")});let t=this.ref["input-el"];t.addEventListener("focus",()=>{this.style.setProperty("--color-effect","var(--hover-color-rgb)")}),t.addEventListener("blur",()=>{this.style.setProperty("--color-effect","var(--idle-color-rgb)")})}_updateValue(t){this._updateZeroDot(t);let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(t-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this.ref["thumb-el"].style.transform=`translateX(${o}px)`})}_updateZeroDot(t){if(!this._zeroDotEl)return;t===this._zero?this._zeroDotEl.style.opacity="0":this._zeroDotEl.style.opacity="0.2";let{width:e}=this.getBoundingClientRect(),o=100/(this.$.max-this.$.min)*(this._zero-this.$.min)*(e-this._thumbSize)/100;window.requestAnimationFrame(()=>{this._zeroDotEl.style.transform=`translateX(${o}px)`})}_updateSteps(){let e=this.ref["steps-el"],{width:r}=e.getBoundingClientRect(),n=Math.ceil(r/2),o=Math.ceil(n/15)-2;if(this._stepsCount===o)return;let l=document.createDocumentFragment(),a=document.createElement("div"),c=document.createElement("div");a.className="minor-step",c.className="border-step",l.appendChild(c);for(let d=0;d
`;var Yi=class extends v{constructor(){super();h(this,"activityType",g.activities.CLOUD_IMG_EDIT);this.init$={...this.init$,cdnUrl:null}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>this.mountEditor(),onDeactivate:()=>this.unmountEditor()}),this.sub("*focusedEntry",t=>{t&&(this.entry=t,this.entry.subscribe("cdnUrl",e=>{e&&(this.$.cdnUrl=e)}))}),this.subConfigValue("cropPreset",t=>{this._instance&&this._instance.getAttribute("crop-preset")!==t&&this._instance.setAttribute("crop-preset",t)}),this.subConfigValue("cloudImageEditorTabs",t=>{this._instance&&this._instance.getAttribute("tabs")!==t&&this._instance.setAttribute("tabs",t)})}handleApply(t){if(!this.entry)return;let e=t.detail;this.entry.setMultipleValues({cdnUrl:e.cdnUrl,cdnUrlModifiers:e.cdnUrlModifiers}),this.historyBack()}handleCancel(){this.historyBack()}mountEditor(){let t=new ot,e=this.$.cdnUrl,r=this.cfg.cropPreset,n=this.cfg.cloudImageEditorTabs;t.setAttribute("ctx-name",this.ctxName),t.setAttribute("cdn-url",e),r&&t.setAttribute("crop-preset",r),n&&t.setAttribute("tabs",n),t.addEventListener("apply",o=>this.handleApply(o)),t.addEventListener("cancel",()=>this.handleCancel()),this.innerHTML="",this.appendChild(t),this._mounted=!0,this._instance=t}unmountEditor(){this._instance=void 0,this.innerHTML=""}};var Bo=function(s){return s.replace(/[\\-\\[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},Tr=function(s,i="i"){let t=s.split("*").map(Bo);return new RegExp("^"+t.join(".+")+"$",i)};var zo=s=>Object.keys(s).reduce((t,e)=>{let r=s[e],n=Object.keys(r).reduce((o,l)=>{let a=r[l];return o+`${l}: ${a};`},"");return t+`${e}{${n}}`},"");function Er({textColor:s,backgroundColor:i,linkColor:t,linkColorHover:e,shadeColor:r}){let n=`solid 1px ${r}`;return zo({body:{color:s,"background-color":i},".side-bar":{background:"inherit","border-right":n},".main-content":{background:"inherit"},".main-content-header":{background:"inherit"},".main-content-footer":{background:"inherit"},".list-table-row":{color:"inherit"},".list-table-row:hover":{background:r},".list-table-row .list-table-cell-a, .list-table-row .list-table-cell-b":{"border-top":n},".list-table-body .list-items":{"border-bottom":n},".bread-crumbs a":{color:t},".bread-crumbs a:hover":{color:e},".main-content.loading":{background:`${i} url(/static/images/loading_spinner.gif) center no-repeat`,"background-size":"25px 25px"},".list-icons-item":{"background-color":r},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a":{color:t},".source-gdrive .side-bar-menu a, .source-gphotos .side-bar-menu a:hover":{color:e},".side-bar-menu a":{color:t},".side-bar-menu a:hover":{color:e},".source-gdrive .side-bar-menu .current, .source-gdrive .side-bar-menu a:hover, .source-gphotos .side-bar-menu .current, .source-gphotos .side-bar-menu a:hover":{color:e},".source-vk .side-bar-menu a":{color:t},".source-vk .side-bar-menu a:hover":{color:e,background:"none"}})}var At={};window.addEventListener("message",s=>{let i;try{i=JSON.parse(s.data)}catch{return}if((i==null?void 0:i.type)in At){let t=At[i.type];for(let[e,r]of t)s.source===e&&r(i)}});var xr=function(s,i,t){s in At||(At[s]=[]),At[s].push([i,t])},Ar=function(s,i){s in At&&(At[s]=At[s].filter(t=>t[0]!==i))};function $r(s){let i=[];for(let[t,e]of Object.entries(s))e==null||typeof e=="string"&&e.length===0||i.push(`${t}=${encodeURIComponent(e)}`);return i.join("&")}var ci=class extends v{constructor(){super();h(this,"activityType",g.activities.EXTERNAL);h(this,"_iframe",null);h(this,"updateCssData",()=>{this.isActivityActive&&(this._inheritedUpdateCssData(),this.applyStyles())});h(this,"_inheritedUpdateCssData",this.updateCssData);this.init$={...this.init$,activityIcon:"",activityCaption:"",selectedList:[],counter:0,onDone:()=>{for(let t of this.$.selectedList){let e=this.extractUrlFromMessage(t),{filename:r}=t,{externalSourceType:n}=this.activityParams;this.addFileFromUrl(e,{fileName:r,source:n})}this.$["*currentActivity"]=g.activities.UPLOAD_LIST},onCancel:()=>{this.historyBack()}}}initCallback(){super.initCallback(),this.registerActivity(this.activityType,{onActivate:()=>{let{externalSourceType:t}=this.activityParams;this.set$({activityCaption:`${t==null?void 0:t[0].toUpperCase()}${t==null?void 0:t.slice(1)}`,activityIcon:t}),this.mountIframe()}}),this.sub("*currentActivity",t=>{t!==this.activityType&&this.unmountIframe()}),this.sub("selectedList",t=>{this.$.counter=t.length})}extractUrlFromMessage(t){if(t.alternatives){let e=M(this.cfg.externalSourcesPreferredTypes);for(let r of e){let n=Tr(r);for(let[o,l]of Object.entries(t.alternatives))if(n.test(o))return l}}return t.url}sendMessage(t){var e,r;(r=(e=this._iframe)==null?void 0:e.contentWindow)==null||r.postMessage(JSON.stringify(t),"*")}async handleFileSelected(t){this.$.selectedList=[...this.$.selectedList,t]}handleIframeLoad(){this.applyStyles()}getCssValue(t){return window.getComputedStyle(this).getPropertyValue(t).trim()}applyStyles(){let t={backgroundColor:this.getCssValue("--clr-background-light"),textColor:this.getCssValue("--clr-txt"),shadeColor:this.getCssValue("--clr-shade-lv1"),linkColor:"#157cfc",linkColorHover:"#3891ff"};this.sendMessage({type:"embed-css",style:Er(t)})}remoteUrl(){var l,a;let t=this.cfg.pubkey,e=(!1).toString(),{externalSourceType:r}=this.activityParams,n={lang:((a=(l=this.getCssData("--l10n-locale-name"))==null?void 0:l.split("-"))==null?void 0:a[0])||"en",public_key:t,images_only:e,pass_window_open:!1,session_key:this.cfg.remoteTabSessionKey},o=new URL(this.cfg.socialBaseUrl);return o.pathname=`/window3/${r}`,o.search=$r(n),o.toString()}mountIframe(){let t=Zt({tag:"iframe",attributes:{src:this.remoteUrl(),marginheight:0,marginwidth:0,frameborder:0,allowTransparency:!0}});t.addEventListener("load",this.handleIframeLoad.bind(this)),this.ref.iframeWrapper.innerHTML="",this.ref.iframeWrapper.appendChild(t),xr("file-selected",t.contentWindow,this.handleFileSelected.bind(this)),this._iframe=t,this.$.selectedList=[]}unmountIframe(){this._iframe&&Ar("file-selected",this._iframe.contentWindow),this.ref.iframeWrapper.innerHTML="",this._iframe=null,this.$.selectedList=[],this.$.counter=0}};ci.template=`
{{activityCaption}}
{{counter}}
`;var ye=class extends b{setCurrentTab(i){if(!i)return;[...this.ref.context.querySelectorAll("[tab-ctx]")].forEach(e=>{e.getAttribute("tab-ctx")===i?e.removeAttribute("hidden"):e.setAttribute("hidden","")});for(let e in this._tabMap)e===i?this._tabMap[e].setAttribute("current",""):this._tabMap[e].removeAttribute("current")}initCallback(){super.initCallback(),this._tabMap={},this.defineAccessor("tab-list",i=>{if(!i)return;M(i).forEach(e=>{let r=Zt({tag:"div",attributes:{class:"tab"},properties:{onclick:()=>{this.setCurrentTab(e)}}});r.textContent=this.l10n(e),this.ref.row.appendChild(r),this._tabMap[e]=r})}),this.defineAccessor("default",i=>{this.setCurrentTab(i)}),this.hasAttribute("default")||this.setCurrentTab(Object.keys(this._tabMap)[0])}};ye.bindAttributes({"tab-list":null,default:null});ye.template=`
`;var Gt=class extends v{constructor(){super();h(this,"processInnerHtml",!0);h(this,"requireCtxName",!0);this.init$={...this.init$,output:null}}get dict(){return Gt.dict}get validationInput(){return this._validationInputElement}initCallback(){if(super.initCallback(),this.hasAttribute(this.dict.FORM_INPUT_ATTR)){this._dynamicInputsContainer=document.createElement("div"),this.appendChild(this._dynamicInputsContainer);let t=document.createElement("input");t.type="text",t.name="__UPLOADCARE_VALIDATION_INPUT__",t.required=this.hasAttribute(this.dict.INPUT_REQUIRED),t.tabIndex=-1,yi(t,{opacity:0,height:0,width:0}),this.appendChild(t),this._validationInputElement=t}this.sub("output",t=>{var e,r;if(this.hasAttribute(this.dict.FIRE_EVENT_ATTR)&&this.dispatchEvent(new CustomEvent(this.dict.EVENT_NAME,{bubbles:!0,composed:!0,detail:{timestamp:Date.now(),ctxName:this.ctxName,data:t}})),this.hasAttribute(this.dict.FORM_INPUT_ATTR)&&this._dynamicInputsContainer){this._dynamicInputsContainer.innerHTML="";let n=[],o=[];Array.isArray(t)?(n=t.map(l=>l.cdnUrl),o=t):t!=null&&t.files&&(n=t.groupData?[t.groupData.cdnUrl]:[],o=t.files);for(let l of n){let a=document.createElement("input");a.type="hidden",a.name=this.getAttribute(this.dict.INPUT_NAME_ATTR)||this.ctxName,a.value=l!=null?l:"",this._dynamicInputsContainer.appendChild(a)}if(this._validationInputElement){this._validationInputElement.value=n.length?"__VALUE__":"";let l=o.find(d=>!d.isValid),a=(r=l==null?void 0:l.validationErrorMessage)!=null?r:(e=l==null?void 0:l.uploadError)==null?void 0:e.message,c=this.$["*message"];c=c!=null&&c.isError?`${c.caption}. ${c.text}`:void 0;let u=a!=null?a:c;u?this._validationInputElement.setCustomValidity(u):this._validationInputElement.setCustomValidity("")}}this.hasAttribute(this.dict.CONSOLE_ATTR)&&console.log(t)},!1),this.sub(this.dict.SRC_CTX_KEY,async t=>{if(!t||!t.length){this.$.output=null;return}if(this.cfg.groupOutput||this.hasAttribute(this.dict.GROUP_ATTR)){if(!t.every(l=>l.isUploaded&&l.isValid)){this.$.output={groupData:void 0,files:t};return}let r=this.getUploadClientOptions(),n=t.map(l=>l.uuid+(l.cdnUrlModifiers?`/${l.cdnUrlModifiers}`:"")),o=await Ts(n,r);this.$.output={groupData:o,files:t}}else this.$.output=t},!1)}};Gt.dict=Object.freeze({SRC_CTX_KEY:"*outputData",EVENT_NAME:"lr-data-output",FIRE_EVENT_ATTR:"use-event",CONSOLE_ATTR:"use-console",GROUP_ATTR:"use-group",FORM_INPUT_ATTR:"use-input",INPUT_NAME_ATTR:"input-name",INPUT_REQUIRED:"input-required"});var Zi=class extends g{};var hi=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,currentText:"",options:[],selectHtml:"",onSelect:t=>{var e;t.preventDefault(),t.stopPropagation(),this.value=this.ref.select.value,this.$.currentText=((e=this.$.options.find(r=>r.value==this.value))==null?void 0:e.text)||"",this.dispatchEvent(new Event("change"))}})}initCallback(){super.initCallback(),this.sub("options",t=>{var r;this.$.currentText=((r=t==null?void 0:t[0])==null?void 0:r.text)||"";let e="";t==null||t.forEach(n=>{e+=``}),this.$.selectHtml=e})}};hi.template=``;var q={PLAY:"play",PAUSE:"pause",FS_ON:"fullscreen-on",FS_OFF:"fullscreen-off",VOL_ON:"unmute",VOL_OFF:"mute",CAP_ON:"captions",CAP_OFF:"captions-off"},Sr={requestFullscreen:s=>{s.requestFullscreen?s.requestFullscreen():s.webkitRequestFullscreen&&s.webkitRequestFullscreen()},exitFullscreen:()=>{document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}},Q=class extends b{constructor(){super(...arguments);h(this,"init$",{...this.init$,src:"",ppIcon:q.PLAY,fsIcon:q.FS_ON,volIcon:q.VOL_ON,capIcon:q.CAP_OFF,totalTime:"00:00",currentTime:"00:00",progressCssWidth:"0",hasSubtitles:!1,volumeDisabled:!1,volumeValue:0,onPP:()=>{this.togglePlay()},onFs:()=>{this.toggleFullscreen()},onCap:()=>{this.toggleCaptions()},onMute:()=>{this.toggleSound()},onVolChange:t=>{let e=parseFloat(t.currentTarget.$.value);this.setVolume(e)},progressClicked:t=>{let e=this.progress.getBoundingClientRect();this._video.currentTime=this._video.duration*(t.offsetX/e.width)}})}togglePlay(){this._video.paused||this._video.ended?this._video.play():this._video.pause()}toggleFullscreen(){(document.fullscreenElement||document.webkitFullscreenElement)===this?Sr.exitFullscreen():Sr.requestFullscreen(this)}toggleCaptions(){this.$.capIcon===q.CAP_OFF?(this.$.capIcon=q.CAP_ON,this._video.textTracks[0].mode="showing",window.localStorage.setItem(Q.is+":captions","1")):(this.$.capIcon=q.CAP_OFF,this._video.textTracks[0].mode="hidden",window.localStorage.removeItem(Q.is+":captions"))}toggleSound(){this.$.volIcon===q.VOL_ON?(this.$.volIcon=q.VOL_OFF,this.$.volumeDisabled=!0,this._video.muted=!0):(this.$.volIcon=q.VOL_ON,this.$.volumeDisabled=!1,this._video.muted=!1)}setVolume(t){window.localStorage.setItem(Q.is+":volume",t);let e=t?t/100:0;this._video.volume=e}get progress(){return this.ref.progress}_getUrl(t){return t.includes("/")?t:`https://ucarecdn.com/${t}/`}_desc2attrs(t){let e=[];for(let r in t){let n=r==="src"?this._getUrl(t[r]):t[r];e.push(`${r}="${n}"`)}return e.join(" ")}_timeFmt(t){let e=new Date(Math.round(t)*1e3);return[e.getMinutes(),e.getSeconds()].map(r=>r<10?"0"+r:r).join(":")}_initTracks(){[...this._video.textTracks].forEach(t=>{t.mode="hidden"}),window.localStorage.getItem(Q.is+":captions")&&this.toggleCaptions()}_castAttributes(){let t=["autoplay","loop","muted"];[...this.attributes].forEach(e=>{t.includes(e.name)&&this._video.setAttribute(e.name,e.value)})}initCallback(){super.initCallback(),this._video=this.ref.video,this._castAttributes(),this._video.addEventListener("play",()=>{this.$.ppIcon=q.PAUSE,this.setAttribute("playback","")}),this._video.addEventListener("pause",()=>{this.$.ppIcon=q.PLAY,this.removeAttribute("playback")}),this.addEventListener("fullscreenchange",e=>{console.log(e),document.fullscreenElement===this?this.$.fsIcon=q.FS_OFF:this.$.fsIcon=q.FS_ON}),this.sub("src",e=>{if(!e)return;let r=this._getUrl(e);this._video.src=r}),this.sub("video",async e=>{if(!e)return;let r=await(await window.fetch(this._getUrl(e))).json();r.poster&&(this._video.poster=this._getUrl(r.poster));let n="";r==null||r.sources.forEach(o=>{n+=``}),r.tracks&&(r.tracks.forEach(o=>{n+=``}),this.$.hasSubtitles=!0),this._video.innerHTML+=n,this._initTracks(),console.log(r)}),this._video.addEventListener("loadedmetadata",e=>{this.$.currentTime=this._timeFmt(this._video.currentTime),this.$.totalTime=this._timeFmt(this._video.duration)}),this._video.addEventListener("timeupdate",e=>{let r=Math.round(100*(this._video.currentTime/this._video.duration));this.$.progressCssWidth=r+"%",this.$.currentTime=this._timeFmt(this._video.currentTime)});let t=window.localStorage.getItem(Q.is+":volume");if(t){let e=parseFloat(t);this.setVolume(e),this.$.volumeValue=e}}};Q.template=`
{{currentTime}} / {{totalTime}}
`;Q.bindAttributes({video:"video",src:"src"});var jo="css-src";function ui(s){return class extends s{constructor(){super(...arguments);h(this,"renderShadow",!0);h(this,"pauseRender",!0);h(this,"requireCtxName",!0)}shadowReadyCallback(){}initCallback(){super.initCallback(),this.setAttribute("hidden",""),Ae({element:this,attribute:jo,onSuccess:t=>{this.attachShadow({mode:"open"});let e=document.createElement("link");e.rel="stylesheet",e.type="text/css",e.href=t,e.onload=()=>{window.requestAnimationFrame(()=>{this.render(),window.setTimeout(()=>{this.removeAttribute("hidden"),this.shadowReadyCallback()})})},this.shadowRoot.prepend(e)},onTimeout:()=>{console.error("Attribute `css-src` is required and it is not set. See migration guide: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/")}})}}}var ve=class extends ui(b){};var di=class extends b{initCallback(){super.initCallback(),this.subConfigValue("removeCopyright",i=>{this.toggleAttribute("hidden",!!i)})}};h(di,"template",`Powered by Uploadcare`);var $t=class extends ve{constructor(){super(...arguments);h(this,"requireCtxName",!0);h(this,"init$",Ue(this));h(this,"_template",null)}static set template(t){this._template=t+""}static get template(){return this._template}};var pi=class extends $t{};pi.template=``;var fi=class extends $t{constructor(){super(...arguments);h(this,"pauseRender",!0)}shadowReadyCallback(){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"]=g.activities.UPLOAD_LIST:this.$["*currentActivity"]=t.initActivity||g.activities.START_FROM}),this.subConfigValue("sourceList",e=>{e!=="local"&&(this.cfg.sourceList="local")}),this.subConfigValue("confirmUpload",e=>{e!==!1&&(this.cfg.confirmUpload=!1)})}};fi.template=``;var mi=class extends $t{constructor(){super(),this.init$={...this.init$,couldCancel:!1,cancel:()=>{this.couldHistoryBack?this.$["*historyBack"]():this.couldShowList&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}}}get couldHistoryBack(){let i=this.$["*history"];return i.length>1&&i[i.length-1]!==g.activities.START_FROM}get couldShowList(){return this.cfg.showEmptyList||this.$["*uploadList"].length>0}shadowReadyCallback(){let i=this.ref.uBlock;this.sub("*currentActivity",t=>{t||(this.$["*currentActivity"]=i.initActivity||g.activities.START_FROM)}),this.sub("*uploadList",t=>{(t==null?void 0:t.length)>0&&this.$["*currentActivity"]===(i.initActivity||g.activities.START_FROM)&&(this.$["*currentActivity"]=g.activities.UPLOAD_LIST)}),this.sub("*history",()=>{this.$.couldCancel=this.couldHistoryBack||this.couldShowList})}};mi.template=``;var Ji=class extends ui(ot){shadowReadyCallback(){this.__shadowReady=!0,this.$["*faderEl"]=this.ref["fader-el"],this.$["*cropperEl"]=this.ref["cropper-el"],this.$["*imgContainerEl"]=this.ref["img-container-el"],this.initEditor()}async initEditor(){this.__shadowReady&&await super.initEditor()}};function Qi(s){for(let i in s){let t=[...i].reduce((e,r)=>(r.toUpperCase()===r&&(r="-"+r.toLowerCase()),e+=r),"");t.startsWith("-")&&(t=t.replace("-","")),t.startsWith("lr-")||(t="lr-"+t),s[i].reg&&s[i].reg(t)}}var ts="LR";async function Ho(s,i=!1){return new Promise((t,e)=>{if(typeof document!="object"){t(null);return}if(typeof window=="object"&&window[ts]){t(window[ts]);return}let r=document.createElement("script");r.async=!0,r.src=s,r.onerror=()=>{e()},r.onload=()=>{let n=window[ts];i&&Qi(n),t(n)},document.head.appendChild(r)})}export{g as ActivityBlock,Zi as ActivityHeader,Nt as BaseComponent,b as Block,Ke as CameraSource,Ji as CloudImageEditor,Yi as CloudImageEditorActivity,ot as CloudImageEditorBlock,To as Config,Ze as ConfirmationDialog,di as Copyright,ti as CropFrame,$ as Data,Gt as DataOutput,ae as DropArea,pe as EditorCropButtonControl,Xt as EditorFilterControl,ii as EditorImageCropper,Ki as EditorImageFader,_e as EditorOperationControl,si as EditorScroller,ei as EditorSlider,ri as EditorToolbar,ci as ExternalSource,gt as FileItem,de as FilePreview,mi as FileUploaderInline,fi as FileUploaderMinimal,pi as FileUploaderRegular,ne as Icon,Bi as Img,ni as LineLoaderUi,be as LrBtnUi,Xe as MessageBox,ue as Modal,Ns as PACKAGE_NAME,Ds as PACKAGE_VERSION,li as PresenceToggle,Qe as ProgressBar,Je as ProgressBarCommon,hi as Select,ve as ShadowWrapper,le as SimpleBtn,ai as SliderUi,ce as SourceBtn,Hi as SourceList,He as StartFrom,ye as Tabs,ko as UploadCtxProvider,Ye as UploadDetails,qe as UploadList,v as UploaderBlock,Ge as UrlSource,Q as Video,Ho as connectBlocksFrom,Qi as registerBlocks,ui as shadowed,ut as toKebabCase}; \ No newline at end of file