@imgly/plugin-perfectlyclear-web 1.78.0-rc.0 → 1.79.0-nightly.20260708
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.map +3 -3
- package/package.json +3 -3
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var pt=class{constructor(e,t){this.engine=e,this.key=t}hasData(e){return this.engine.block.isValid(e)&&this.engine.block.hasMetadata(e,this.key)}get(e){if(this.hasData(e))return JSON.parse(this.engine.block.getMetadata(e,this.key))}set(e,t){this.engine.block.setMetadata(e,this.key,JSON.stringify(t))}clear(e){this.engine.block.hasMetadata(e,this.key)&&this.engine.block.removeMetadata(e,this.key)}},ht=pt,mt=typeof global=="object"&&global&&global.Object===Object&&global,Be=mt,bt=typeof self=="object"&&self&&self.Object===Object&&self,vt=Be||bt||Function("return this")(),S=vt,yt=S.Symbol,k=yt,Me=Object.prototype,wt=Me.hasOwnProperty,It=Me.toString,M=k?k.toStringTag:void 0;function Ct(e){var t=wt.call(e,M),r=e[M];try{e[M]=void 0;var i=!0}catch{}var a=It.call(e);return i&&(t?e[M]=r:delete e[M]),a}var St=Ct,Et=Object.prototype,Pt=Et.toString;function At(e){return Pt.call(e)}var _t=At,Ft="[object Null]",Lt="[object Undefined]",be=k?k.toStringTag:void 0;function Rt(e){return e==null?e===void 0?Lt:Ft:be&&be in Object(e)?St(e):_t(e)}var z=Rt;function kt(e){return e!=null&&typeof e=="object"}var T=kt,Ot=Array.isArray,q=Ot;function Dt(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Ve=Dt,jt="[object AsyncFunction]",xt="[object Function]",Nt="[object GeneratorFunction]",Ut="[object Proxy]";function Bt(e){if(!Ve(e))return!1;var t=z(e);return t==xt||t==Nt||t==jt||t==Ut}var Te=Bt,Mt=S["__core-js_shared__"],ie=Mt,ve=function(){var e=/[^.]+$/.exec(ie&&ie.keys&&ie.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Vt(e){return!!ve&&ve in e}var Tt=Vt,Ht=Function.prototype,$t=Ht.toString;function zt(e){if(e!=null){try{return $t.call(e)}catch{}try{return e+""}catch{}}return""}var F=zt,Gt=/[\\^$.*+?()[\]{}|]/g,Zt=/^\[object .+?Constructor\]$/,Kt=Function.prototype,Wt=Object.prototype,qt=Kt.toString,Qt=Wt.hasOwnProperty,Yt=RegExp("^"+qt.call(Qt).replace(Gt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Jt(e){if(!Ve(e)||Tt(e))return!1;var t=Te(e)?Yt:Zt;return t.test(F(e))}var Xt=Jt;function er(e,t){return e?.[t]}var tr=er;function rr(e,t){var r=tr(e,t);return Xt(r)?r:void 0}var O=rr,ir=O(S,"WeakMap"),se=ir,nr=9007199254740991,ar=/^(?:0|[1-9]\d*)$/;function or(e,t){var r=typeof e;return t=t??nr,!!t&&(r=="number"||r!="symbol"&&ar.test(e))&&e>-1&&e%1==0&&e<t}var sr=or;function lr(e,t){return e===t||e!==e&&t!==t}var He=lr,cr=9007199254740991;function ur(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=cr}var $e=ur;function fr(e){return e!=null&&$e(e.length)&&!Te(e)}var gr=fr,dr=Object.prototype;function pr(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||dr;return e===r}var hr=pr;function mr(e,t){for(var r=-1,i=Array(e);++r<e;)i[r]=t(r);return i}var br=mr,vr="[object Arguments]";function yr(e){return T(e)&&z(e)==vr}var ye=yr,ze=Object.prototype,wr=ze.hasOwnProperty,Ir=ze.propertyIsEnumerable,Cr=ye(function(){return arguments}())?ye:function(e){return T(e)&&wr.call(e,"callee")&&!Ir.call(e,"callee")},Sr=Cr;function Er(){return!1}var Pr=Er,Ge=typeof exports=="object"&&exports&&!exports.nodeType&&exports,we=Ge&&typeof module=="object"&&module&&!module.nodeType&&module,Ar=we&&we.exports===Ge,Ie=Ar?S.Buffer:void 0,_r=Ie?Ie.isBuffer:void 0,Fr=_r||Pr,le=Fr,Lr="[object Arguments]",Rr="[object Array]",kr="[object Boolean]",Or="[object Date]",Dr="[object Error]",jr="[object Function]",xr="[object Map]",Nr="[object Number]",Ur="[object Object]",Br="[object RegExp]",Mr="[object Set]",Vr="[object String]",Tr="[object WeakMap]",Hr="[object ArrayBuffer]",$r="[object DataView]",zr="[object Float32Array]",Gr="[object Float64Array]",Zr="[object Int8Array]",Kr="[object Int16Array]",Wr="[object Int32Array]",qr="[object Uint8Array]",Qr="[object Uint8ClampedArray]",Yr="[object Uint16Array]",Jr="[object Uint32Array]",u={};u[zr]=u[Gr]=u[Zr]=u[Kr]=u[Wr]=u[qr]=u[Qr]=u[Yr]=u[Jr]=!0;u[Lr]=u[Rr]=u[Hr]=u[kr]=u[$r]=u[Or]=u[Dr]=u[jr]=u[xr]=u[Nr]=u[Ur]=u[Br]=u[Mr]=u[Vr]=u[Tr]=!1;function Xr(e){return T(e)&&$e(e.length)&&!!u[z(e)]}var ei=Xr;function ti(e){return function(t){return e(t)}}var ri=ti,Ze=typeof exports=="object"&&exports&&!exports.nodeType&&exports,V=Ze&&typeof module=="object"&&module&&!module.nodeType&&module,ii=V&&V.exports===Ze,ne=ii&&Be.process,ni=function(){try{var e=V&&V.require&&V.require("util").types;return e||ne&&ne.binding&&ne.binding("util")}catch{}}(),Ce=ni,Se=Ce&&Ce.isTypedArray,ai=Se?ri(Se):ei,Ke=ai,oi=Object.prototype,si=oi.hasOwnProperty;function li(e,t){var r=q(e),i=!r&&Sr(e),a=!r&&!i&&le(e),n=!r&&!i&&!a&&Ke(e),o=r||i||a||n,s=o?br(e.length,String):[],c=s.length;for(var l in e)(t||si.call(e,l))&&!(o&&(l=="length"||a&&(l=="offset"||l=="parent")||n&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||sr(l,c)))&&s.push(l);return s}var ci=li;function ui(e,t){return function(r){return e(t(r))}}var fi=ui,gi=fi(Object.keys,Object),di=gi,pi=Object.prototype,hi=pi.hasOwnProperty;function mi(e){if(!hr(e))return di(e);var t=[];for(var r in Object(e))hi.call(e,r)&&r!="constructor"&&t.push(r);return t}var bi=mi;function vi(e){return gr(e)?ci(e):bi(e)}var yi=vi,wi=O(Object,"create"),H=wi;function Ii(){this.__data__=H?H(null):{},this.size=0}var Ci=Ii;function Si(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Ei=Si,Pi="__lodash_hash_undefined__",Ai=Object.prototype,_i=Ai.hasOwnProperty;function Fi(e){var t=this.__data__;if(H){var r=t[e];return r===Pi?void 0:r}return _i.call(t,e)?t[e]:void 0}var Li=Fi,Ri=Object.prototype,ki=Ri.hasOwnProperty;function Oi(e){var t=this.__data__;return H?t[e]!==void 0:ki.call(t,e)}var Di=Oi,ji="__lodash_hash_undefined__";function xi(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=H&&t===void 0?ji:t,this}var Ni=xi;function D(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var i=e[t];this.set(i[0],i[1])}}D.prototype.clear=Ci;D.prototype.delete=Ei;D.prototype.get=Li;D.prototype.has=Di;D.prototype.set=Ni;var Ee=D;function Ui(){this.__data__=[],this.size=0}var Bi=Ui;function Mi(e,t){for(var r=e.length;r--;)if(He(e[r][0],t))return r;return-1}var Y=Mi,Vi=Array.prototype,Ti=Vi.splice;function Hi(e){var t=this.__data__,r=Y(t,e);if(r<0)return!1;var i=t.length-1;return r==i?t.pop():Ti.call(t,r,1),--this.size,!0}var $i=Hi;function zi(e){var t=this.__data__,r=Y(t,e);return r<0?void 0:t[r][1]}var Gi=zi;function Zi(e){return Y(this.__data__,e)>-1}var Ki=Zi;function Wi(e,t){var r=this.__data__,i=Y(r,e);return i<0?(++this.size,r.push([e,t])):r[i][1]=t,this}var qi=Wi;function j(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var i=e[t];this.set(i[0],i[1])}}j.prototype.clear=Bi;j.prototype.delete=$i;j.prototype.get=Gi;j.prototype.has=Ki;j.prototype.set=qi;var J=j,Qi=O(S,"Map"),$=Qi;function Yi(){this.size=0,this.__data__={hash:new Ee,map:new($||J),string:new Ee}}var Ji=Yi;function Xi(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var en=Xi;function tn(e,t){var r=e.__data__;return en(t)?r[typeof t=="string"?"string":"hash"]:r.map}var X=tn;function rn(e){var t=X(this,e).delete(e);return this.size-=t?1:0,t}var nn=rn;function an(e){return X(this,e).get(e)}var on=an;function sn(e){return X(this,e).has(e)}var ln=sn;function cn(e,t){var r=X(this,e),i=r.size;return r.set(e,t),this.size+=r.size==i?0:1,this}var un=cn;function x(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var i=e[t];this.set(i[0],i[1])}}x.prototype.clear=Ji;x.prototype.delete=nn;x.prototype.get=on;x.prototype.has=ln;x.prototype.set=un;var We=x;function fn(e,t){for(var r=-1,i=t.length,a=e.length;++r<i;)e[a+r]=t[r];return e}var gn=fn;function dn(){this.__data__=new J,this.size=0}var pn=dn;function hn(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var mn=hn;function bn(e){return this.__data__.get(e)}var vn=bn;function yn(e){return this.__data__.has(e)}var wn=yn,In=200;function Cn(e,t){var r=this.__data__;if(r instanceof J){var i=r.__data__;if(!$||i.length<In-1)return i.push([e,t]),this.size=++r.size,this;r=this.__data__=new We(i)}return r.set(e,t),this.size=r.size,this}var Sn=Cn;function N(e){var t=this.__data__=new J(e);this.size=t.size}N.prototype.clear=pn;N.prototype.delete=mn;N.prototype.get=vn;N.prototype.has=wn;N.prototype.set=Sn;var ae=N;function En(e,t){for(var r=-1,i=e==null?0:e.length,a=0,n=[];++r<i;){var o=e[r];t(o,r,e)&&(n[a++]=o)}return n}var Pn=En;function An(){return[]}var _n=An,Fn=Object.prototype,Ln=Fn.propertyIsEnumerable,Pe=Object.getOwnPropertySymbols,Rn=Pe?function(e){return e==null?[]:(e=Object(e),Pn(Pe(e),function(t){return Ln.call(e,t)}))}:_n,kn=Rn;function On(e,t,r){var i=t(e);return q(e)?i:gn(i,r(e))}var Dn=On;function jn(e){return Dn(e,yi,kn)}var Ae=jn,xn=O(S,"DataView"),ce=xn,Nn=O(S,"Promise"),ue=Nn,Un=O(S,"Set"),fe=Un,_e="[object Map]",Bn="[object Object]",Fe="[object Promise]",Le="[object Set]",Re="[object WeakMap]",ke="[object DataView]",Mn=F(ce),Vn=F($),Tn=F(ue),Hn=F(fe),$n=F(se),_=z;(ce&&_(new ce(new ArrayBuffer(1)))!=ke||$&&_(new $)!=_e||ue&&_(ue.resolve())!=Fe||fe&&_(new fe)!=Le||se&&_(new se)!=Re)&&(_=function(e){var t=z(e),r=t==Bn?e.constructor:void 0,i=r?F(r):"";if(i)switch(i){case Mn:return ke;case Vn:return _e;case Tn:return Fe;case Hn:return Le;case $n:return Re}return t});var Oe=_,zn=S.Uint8Array,De=zn,Gn="__lodash_hash_undefined__";function Zn(e){return this.__data__.set(e,Gn),this}var Kn=Zn;function Wn(e){return this.__data__.has(e)}var qn=Wn;function Q(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new We;++t<r;)this.add(e[t])}Q.prototype.add=Q.prototype.push=Kn;Q.prototype.has=qn;var Qn=Q;function Yn(e,t){for(var r=-1,i=e==null?0:e.length;++r<i;)if(t(e[r],r,e))return!0;return!1}var Jn=Yn;function Xn(e,t){return e.has(t)}var ea=Xn,ta=1,ra=2;function ia(e,t,r,i,a,n){var o=r&ta,s=e.length,c=t.length;if(s!=c&&!(o&&c>s))return!1;var l=n.get(e),f=n.get(t);if(l&&f)return l==t&&f==e;var d=-1,g=!0,v=r&ra?new Qn:void 0;for(n.set(e,t),n.set(t,e);++d<s;){var h=e[d],m=t[d];if(i)var y=o?i(m,h,d,t,e,n):i(h,m,d,e,t,n);if(y!==void 0){if(y)continue;g=!1;break}if(v){if(!Jn(t,function(w,I){if(!ea(v,I)&&(h===w||a(h,w,r,i,n)))return v.push(I)})){g=!1;break}}else if(!(h===m||a(h,m,r,i,n))){g=!1;break}}return n.delete(e),n.delete(t),g}var qe=ia;function na(e){var t=-1,r=Array(e.size);return e.forEach(function(i,a){r[++t]=[a,i]}),r}var aa=na;function oa(e){var t=-1,r=Array(e.size);return e.forEach(function(i){r[++t]=i}),r}var sa=oa,la=1,ca=2,ua="[object Boolean]",fa="[object Date]",ga="[object Error]",da="[object Map]",pa="[object Number]",ha="[object RegExp]",ma="[object Set]",ba="[object String]",va="[object Symbol]",ya="[object ArrayBuffer]",wa="[object DataView]",je=k?k.prototype:void 0,oe=je?je.valueOf:void 0;function Ia(e,t,r,i,a,n,o){switch(r){case wa:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case ya:return!(e.byteLength!=t.byteLength||!n(new De(e),new De(t)));case ua:case fa:case pa:return He(+e,+t);case ga:return e.name==t.name&&e.message==t.message;case ha:case ba:return e==t+"";case da:var s=aa;case ma:var c=i&la;if(s||(s=sa),e.size!=t.size&&!c)return!1;var l=o.get(e);if(l)return l==t;i|=ca,o.set(e,t);var f=qe(s(e),s(t),i,a,n,o);return o.delete(e),f;case va:if(oe)return oe.call(e)==oe.call(t)}return!1}var Ca=Ia,Sa=1,Ea=Object.prototype,Pa=Ea.hasOwnProperty;function Aa(e,t,r,i,a,n){var o=r&Sa,s=Ae(e),c=s.length,l=Ae(t),f=l.length;if(c!=f&&!o)return!1;for(var d=c;d--;){var g=s[d];if(!(o?g in t:Pa.call(t,g)))return!1}var v=n.get(e),h=n.get(t);if(v&&h)return v==t&&h==e;var m=!0;n.set(e,t),n.set(t,e);for(var y=o;++d<c;){g=s[d];var w=e[g],I=t[g];if(i)var U=o?i(I,w,g,t,e,n):i(w,I,g,e,t,n);if(!(U===void 0?w===I||a(w,I,r,i,n):U)){m=!1;break}y||(y=g=="constructor")}if(m&&!y){var A=e.constructor,C=t.constructor;A!=C&&"constructor"in e&&"constructor"in t&&!(typeof A=="function"&&A instanceof A&&typeof C=="function"&&C instanceof C)&&(m=!1)}return n.delete(e),n.delete(t),m}var _a=Aa,Fa=1,xe="[object Arguments]",Ne="[object Array]",W="[object Object]",La=Object.prototype,Ue=La.hasOwnProperty;function Ra(e,t,r,i,a,n){var o=q(e),s=q(t),c=o?Ne:Oe(e),l=s?Ne:Oe(t);c=c==xe?W:c,l=l==xe?W:l;var f=c==W,d=l==W,g=c==l;if(g&&le(e)){if(!le(t))return!1;o=!0,f=!1}if(g&&!f)return n||(n=new ae),o||Ke(e)?qe(e,t,r,i,a,n):Ca(e,t,c,r,i,a,n);if(!(r&Fa)){var v=f&&Ue.call(e,"__wrapped__"),h=d&&Ue.call(t,"__wrapped__");if(v||h){var m=v?e.value():e,y=h?t.value():t;return n||(n=new ae),a(m,y,r,i,n)}}return g?(n||(n=new ae),_a(e,t,r,i,a,n)):!1}var ka=Ra;function Qe(e,t,r,i,a){return e===t?!0:e==null||t==null||!T(e)&&!T(t)?e!==e&&t!==t:ka(e,t,r,i,Qe,a)}var Oa=Qe;function Da(e,t){return Oa(e,t)}var ja=Da,xa=class extends ht{get(e){return super.get(e)??{status:"IDLE"}}isDuplicate(e){if(!this.engine.block.isValid(e))return!1;let t=this.get(e);if(t.status==="IDLE"||t.status==="PENDING"||t.status==="ERROR"||!this.engine.block.hasFill(e))return!1;let r=this.engine.block.getFill(e);return!(t.blockId===e||t.fillId===r)}fixDuplicate(e){let t=this.engine.block.getFill(e),r=this.get(e);r.status==="IDLE"||r.status==="PENDING"||r.status==="ERROR"||(this.set(e,{...r,blockId:e,fillId:t}),r.status==="PROCESSING"&&(this.recoverInitialImageData(e),this.clear(e)))}isConsistent(e){if(!this.engine.block.isValid(e))return!1;let t=this.get(e);if(t.status==="IDLE"||t.status==="PENDING")return!0;if(!this.engine.block.hasFill(e))return!1;let r=this.engine.block.getFill(e);if(r==null||e!==t.blockId||r!==t.fillId)return!1;let i=this.engine.block.getSourceSet(r,"fill/image/sourceSet"),a=this.engine.block.getString(r,"fill/image/imageFileURI");if(i.length===0&&!a&&t.status==="PROCESSING")return!0;if(i?.length>0){let n=t.initialSourceSet;if(t.status!=="PROCESSED"&&!ja(i,n))return!1}else if(t.status!=="PROCESSED"&&a!==t.initialImageFileURI)return!1;return!0}recoverInitialImageData(e){if(!this.engine.block.hasFill(e))return;let t=this.get(e);if(t.status==="PENDING"||t.status==="IDLE")return;let r=t.initialSourceSet,i=t.initialImageFileURI,a=t.initialPreviewFileURI,n=this.getValidFill(e,t);n!=null&&(i&&this.engine.block.setString(n,"fill/image/imageFileURI",i),a&&this.engine.block.setString(n,"fill/image/previewFileURI",a),r.length>0&&this.engine.block.setSourceSet(n,"fill/image/sourceSet",r))}getValidFill(e,t){if(!this.engine.block.isValid(e)||!this.engine.block.hasFill(e)||e!==t.blockId)return;let r=this.engine.block.getFill(e);if(r===t.fillId)return r}},ee=xa;async function Na(e,t,r,i){let a=t.engine.block;if(!a.hasFill(e))throw new Error("Block does not support fill");let n=a.getFill(e),o=a.getSourceSet(n,"fill/image/sourceSet"),s=a.getString(n,"fill/image/imageFileURI"),c=a.getString(n,"fill/image/previewFileURI");try{t.engine.block.setState(n,{type:"Pending",progress:0});let l={...r.get(e),version:"0.0.0",initialSourceSet:o,initialImageFileURI:s,initialPreviewFileURI:c,blockId:e,fillId:n,status:"PROCESSING"};r.set(e,l);let f=await i.processFill(l);if(r.get(e).status!=="PROCESSING"||!r.isConsistent(e)||r.get(e).status!=="PROCESSING"||!r.isConsistent(e)||f==null)return;let d={version:"0.0.0",initialSourceSet:o,initialImageFileURI:s,initialPreviewFileURI:c,blockId:e,fillId:n,status:"PROCESSED"},g=i.commitProcessing(f,d);(g==null||g===e)&&r.set(e,d),t.engine.editor.addUndoStep()}catch(l){if(t.engine.block.isValid(e)&&(r.set(e,{version:"0.0.0",initialSourceSet:o,initialImageFileURI:s,initialPreviewFileURI:c,blockId:e,fillId:n,status:"ERROR"}),r.recoverInitialImageData(e)),l!=null&&typeof l=="object"&&"message"in l&&typeof l.message=="string"){let f=l.message==="signal timed out"?"Processing canceled due to timeout":l.message;t.ui.showNotification({type:"error",message:f})}console.log(l)}finally{t.engine.block.isValid(n)&&t.engine.block.setState(n,{type:"Ready"})}}var ge=Na;function Ye(e){return`${e}.fillProcessing.feature`}function Ua(e){return[`${e}.canvasMenu`,`${e}.fillProcessing.canvasMenu`]}function Ba(e){return[`${e}.dock`,`${e}.fillProcessing.dock`]}function Ma(e){return[`${e}.inspectorBar`,`${e}.fillProcessing.inspectorBar`]}function Va(e){return[`${e}.navigationBar`,`${e}.fillProcessing.navigationBar`]}function Ta(e){return[`${e}.canvasBar`,`${e}.fillProcessing.canvasBar`]}function Ha(e){return`plugin.${e}.fillProcessing.canvasMenu.button.label`}function $a(e){return`plugin.${e}.fillProcessing.dock.button.label`}function za(e){return`plugin.${e}.fillProcessing.inspectorBar.button.label`}function Ga(e){return`plugin.${e}.fillProcessing.navigationBar.button.label`}function Za(e){return`plugin.${e}.fillProcessing.canvasBar.button.label`}function Je(e,{pluginId:t,process:r}){let i=Ye(t),a=new ee(e.engine,t);return Ka(e,a,i),e.engine.event.subscribe([],async n=>{n.forEach(o=>{let s=o.block;if(!(!e.engine.block.isValid(s)||!a.hasData(s))){if(o.type==="Created")a.isDuplicate(s)&&a.fixDuplicate(s);else if(o.type==="Updated")switch(a.get(s).status){case"PENDING":{e.feature.isEnabled(i,{engine:e.engine})&&e.engine.block.isAllowedByScope(s,"fill/change")&&e.engine.block.getState(s).type!=="Pending"&&r(s,a);break}case"PROCESSING":case"PROCESSED":{a.isConsistent(s)||a.clear(s);break}default:}}})}),{featureId:i}}function Ka(e,t,r){e.feature.enable(r,({engine:i})=>{let a=i.block.findAllSelected();if(a.length!==1)return!1;let[n]=a;if(!e.engine.block.isVisible(n))return!1;if(e.engine.block.hasFill(n)){if(e.engine.block.getKind(n)==="sticker")return!1;let o=e.engine.block.getFill(n);if(e.engine.block.getType(o)!=="//ly.img.ubq/fill/image")return!1;let s=i.block.getString(o,"fill/image/imageFileURI");return i.block.getSourceSet(o,"fill/image/sourceSet").length>0||s!==""?!0:t.get(n).status==="PROCESSING"}return!1})}function Xe(e,t){let{pluginId:r,locations:i}=t,a=new ee(e.engine,r),n=Ha(r),o=Ua(r),s=o[0],c=$a(r),l=Ba(r),f=l[0],d=za(r),g=Ma(r),v=g[0],h=Ga(r),m=Va(r),y=m[0],w=Za(r),I=Ta(r),U=I[0],A=Ye(r);return i?.includes("inspectorBar")&&e.ui.setInspectorBarOrder([v,...e.ui.getInspectorBarOrder()]),i?.includes("navigationBar")&&e.ui.setNavigationBarOrder([y,...e.ui.getNavigationBarOrder()]),i?.includes("canvasBarTop")&&e.ui.setCanvasBarOrder([U,...e.ui.getCanvasBarOrder("top")],"top"),i?.includes("canvasBarBottom")&&e.ui.setCanvasBarOrder([U,...e.ui.getCanvasBarOrder("bottom")],"bottom"),i?.includes("canvasMenu")&&e.ui.setCanvasMenuOrder([s,...e.ui.getCanvasMenuOrder()]),i?.includes("dock")&&e.ui.setDockOrder([...e.ui.getDockOrder(),f]),e.ui.registerComponent(l,({builder:{Button:C},engine:B})=>{let[P]=B.block.findAllSelected(),b=!1,Z=!1,L;if(P==null&&(b=!0),!b&&!e.feature.isEnabled(A,{engine:B})&&(b=!0),!b&&!e.engine.block.isAllowedByScope(P,"fill/change")&&(b=!0),!b&&B.block.getState(P)?.type==="Pending"&&(b=!0),!b){let p=a.get(P);if(Z=p.status==="PROCESSING",b=p.status==="PENDING"||p.status==="PROCESSING",p.status==="PROCESSING"&&p.progress){let{current:K,total:re}=p.progress;L=K/re*100}}let R=`${f}.button`;C(R,{label:c,icon:t.icon,isLoading:Z,isDisabled:b,loadingProgress:L,onClick:()=>{let p=a.get(P);(p.status==="IDLE"||p.status==="ERROR"||p.status==="PROCESSED")&&a.set(P,{status:"PENDING"})}})}),[{componentIds:g,variant:"plain",label:d},{componentIds:m,variant:"regular",label:h},{componentIds:I,variant:"regular",label:w},{componentIds:o,variant:"plain",label:n}].forEach(({componentIds:C,label:B,variant:P})=>{let b=C[0];e.ui.registerComponent(C,({builder:{Button:Z},engine:L})=>{if(!e.feature.isEnabled(A,{engine:L}))return;let[R]=L.block.findAllSelected();if(!e.engine.block.isAllowedByScope(R,"fill/change"))return;let p=a.get(R),K=p.status==="PROCESSING",re=p.status==="PENDING"||p.status==="PROCESSING"||L.block.getState(R)?.type==="Pending",me;if(K&&p.progress){let{current:gt,total:dt}=p.progress;me=gt/dt*100}let ft=`${b}.button`;Z(ft,{icon:t.icon,label:B,variant:P,isLoading:K,isDisabled:re,loadingProgress:me,onClick:()=>{(p.status==="IDLE"||p.status==="ERROR"||p.status==="PROCESSED")&&a.set(R,{status:"PENDING"})}})})}),{canvasMenuComponentId:s,dockComponentId:f,translationsKeys:{inspectorBarLabel:d,navigationBarLabel:h,canvasBarLabel:w,canvasMenuLabel:n,dockLabel:c}}}var so=new RegExp(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,"i"),lo=new RegExp(/[A-Fa-f0-9]{1}/,"g"),co=new RegExp(/[A-Fa-f0-9]{2}/,"g");import{ActionRegistry as io}from"@imgly/plugin-ai-generation-web";var E="@imgly/plugin-perfectlyclear-web",et="https://cdn.img.ly/assets/plugins/plugin-perfectlyclear-web/v1/",tt="https://cert.perfectlyclear.photos/wasm_certificate/";var rt="@imgly/plugin-perfectlyclear",Wa=`
|
|
1
|
+
var ht=class{constructor(e,t){this.engine=e,this.key=t}hasData(e){return this.engine.block.isValid(e)&&this.engine.block.hasMetadata(e,this.key)}get(e){if(this.hasData(e))return JSON.parse(this.engine.block.getMetadata(e,this.key))}set(e,t){this.engine.block.setMetadata(e,this.key,JSON.stringify(t))}clear(e){this.engine.block.hasMetadata(e,this.key)&&this.engine.block.removeMetadata(e,this.key)}},pt=ht,mt=typeof global=="object"&&global&&global.Object===Object&&global,Be=mt,bt=typeof self=="object"&&self&&self.Object===Object&&self,vt=Be||bt||Function("return this")(),S=vt,yt=S.Symbol,O=yt,Me=Object.prototype,wt=Me.hasOwnProperty,It=Me.toString,M=O?O.toStringTag:void 0;function Ct(e){var t=wt.call(e,M),r=e[M];try{e[M]=void 0;var i=!0}catch{}var a=It.call(e);return i&&(t?e[M]=r:delete e[M]),a}var St=Ct,Et=Object.prototype,Pt=Et.toString;function At(e){return Pt.call(e)}var _t=At,Ft="[object Null]",Lt="[object Undefined]",be=O?O.toStringTag:void 0;function Rt(e){return e==null?e===void 0?Lt:Ft:be&&be in Object(e)?St(e):_t(e)}var z=Rt;function Ot(e){return e!=null&&typeof e=="object"}var T=Ot,kt=Array.isArray,q=kt;function xt(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Ve=xt,Dt="[object AsyncFunction]",jt="[object Function]",Nt="[object GeneratorFunction]",Ut="[object Proxy]";function Bt(e){if(!Ve(e))return!1;var t=z(e);return t==jt||t==Nt||t==Dt||t==Ut}var Te=Bt,Mt=S["__core-js_shared__"],ie=Mt,ve=function(){var e=/[^.]+$/.exec(ie&&ie.keys&&ie.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Vt(e){return!!ve&&ve in e}var Tt=Vt,Ht=Function.prototype,$t=Ht.toString;function zt(e){if(e!=null){try{return $t.call(e)}catch{}try{return e+""}catch{}}return""}var F=zt,Gt=/[\\^$.*+?()[\]{}|]/g,Zt=/^\[object .+?Constructor\]$/,Kt=Function.prototype,Wt=Object.prototype,qt=Kt.toString,Qt=Wt.hasOwnProperty,Yt=RegExp("^"+qt.call(Qt).replace(Gt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Jt(e){if(!Ve(e)||Tt(e))return!1;var t=Te(e)?Yt:Zt;return t.test(F(e))}var Xt=Jt;function er(e,t){return e?.[t]}var tr=er;function rr(e,t){var r=tr(e,t);return Xt(r)?r:void 0}var k=rr,ir=k(S,"WeakMap"),se=ir,nr=9007199254740991,ar=/^(?:0|[1-9]\d*)$/;function or(e,t){var r=typeof e;return t=t??nr,!!t&&(r=="number"||r!="symbol"&&ar.test(e))&&e>-1&&e%1==0&&e<t}var sr=or;function lr(e,t){return e===t||e!==e&&t!==t}var He=lr,cr=9007199254740991;function ur(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=cr}var $e=ur;function fr(e){return e!=null&&$e(e.length)&&!Te(e)}var gr=fr,dr=Object.prototype;function hr(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||dr;return e===r}var pr=hr;function mr(e,t){for(var r=-1,i=Array(e);++r<e;)i[r]=t(r);return i}var br=mr,vr="[object Arguments]";function yr(e){return T(e)&&z(e)==vr}var ye=yr,ze=Object.prototype,wr=ze.hasOwnProperty,Ir=ze.propertyIsEnumerable,Cr=ye(function(){return arguments}())?ye:function(e){return T(e)&&wr.call(e,"callee")&&!Ir.call(e,"callee")},Sr=Cr;function Er(){return!1}var Pr=Er,Ge=typeof exports=="object"&&exports&&!exports.nodeType&&exports,we=Ge&&typeof module=="object"&&module&&!module.nodeType&&module,Ar=we&&we.exports===Ge,Ie=Ar?S.Buffer:void 0,_r=Ie?Ie.isBuffer:void 0,Fr=_r||Pr,le=Fr,Lr="[object Arguments]",Rr="[object Array]",Or="[object Boolean]",kr="[object Date]",xr="[object Error]",Dr="[object Function]",jr="[object Map]",Nr="[object Number]",Ur="[object Object]",Br="[object RegExp]",Mr="[object Set]",Vr="[object String]",Tr="[object WeakMap]",Hr="[object ArrayBuffer]",$r="[object DataView]",zr="[object Float32Array]",Gr="[object Float64Array]",Zr="[object Int8Array]",Kr="[object Int16Array]",Wr="[object Int32Array]",qr="[object Uint8Array]",Qr="[object Uint8ClampedArray]",Yr="[object Uint16Array]",Jr="[object Uint32Array]",f={};f[zr]=f[Gr]=f[Zr]=f[Kr]=f[Wr]=f[qr]=f[Qr]=f[Yr]=f[Jr]=!0;f[Lr]=f[Rr]=f[Hr]=f[Or]=f[$r]=f[kr]=f[xr]=f[Dr]=f[jr]=f[Nr]=f[Ur]=f[Br]=f[Mr]=f[Vr]=f[Tr]=!1;function Xr(e){return T(e)&&$e(e.length)&&!!f[z(e)]}var ei=Xr;function ti(e){return function(t){return e(t)}}var ri=ti,Ze=typeof exports=="object"&&exports&&!exports.nodeType&&exports,V=Ze&&typeof module=="object"&&module&&!module.nodeType&&module,ii=V&&V.exports===Ze,ne=ii&&Be.process,ni=function(){try{var e=V&&V.require&&V.require("util").types;return e||ne&&ne.binding&&ne.binding("util")}catch{}}(),Ce=ni,Se=Ce&&Ce.isTypedArray,ai=Se?ri(Se):ei,Ke=ai,oi=Object.prototype,si=oi.hasOwnProperty;function li(e,t){var r=q(e),i=!r&&Sr(e),a=!r&&!i&&le(e),n=!r&&!i&&!a&&Ke(e),o=r||i||a||n,s=o?br(e.length,String):[],c=s.length;for(var l in e)(t||si.call(e,l))&&!(o&&(l=="length"||a&&(l=="offset"||l=="parent")||n&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||sr(l,c)))&&s.push(l);return s}var ci=li;function ui(e,t){return function(r){return e(t(r))}}var fi=ui,gi=fi(Object.keys,Object),di=gi,hi=Object.prototype,pi=hi.hasOwnProperty;function mi(e){if(!pr(e))return di(e);var t=[];for(var r in Object(e))pi.call(e,r)&&r!="constructor"&&t.push(r);return t}var bi=mi;function vi(e){return gr(e)?ci(e):bi(e)}var yi=vi,wi=k(Object,"create"),H=wi;function Ii(){this.__data__=H?H(null):{},this.size=0}var Ci=Ii;function Si(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Ei=Si,Pi="__lodash_hash_undefined__",Ai=Object.prototype,_i=Ai.hasOwnProperty;function Fi(e){var t=this.__data__;if(H){var r=t[e];return r===Pi?void 0:r}return _i.call(t,e)?t[e]:void 0}var Li=Fi,Ri=Object.prototype,Oi=Ri.hasOwnProperty;function ki(e){var t=this.__data__;return H?t[e]!==void 0:Oi.call(t,e)}var xi=ki,Di="__lodash_hash_undefined__";function ji(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=H&&t===void 0?Di:t,this}var Ni=ji;function x(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var i=e[t];this.set(i[0],i[1])}}x.prototype.clear=Ci;x.prototype.delete=Ei;x.prototype.get=Li;x.prototype.has=xi;x.prototype.set=Ni;var Ee=x;function Ui(){this.__data__=[],this.size=0}var Bi=Ui;function Mi(e,t){for(var r=e.length;r--;)if(He(e[r][0],t))return r;return-1}var Y=Mi,Vi=Array.prototype,Ti=Vi.splice;function Hi(e){var t=this.__data__,r=Y(t,e);if(r<0)return!1;var i=t.length-1;return r==i?t.pop():Ti.call(t,r,1),--this.size,!0}var $i=Hi;function zi(e){var t=this.__data__,r=Y(t,e);return r<0?void 0:t[r][1]}var Gi=zi;function Zi(e){return Y(this.__data__,e)>-1}var Ki=Zi;function Wi(e,t){var r=this.__data__,i=Y(r,e);return i<0?(++this.size,r.push([e,t])):r[i][1]=t,this}var qi=Wi;function D(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var i=e[t];this.set(i[0],i[1])}}D.prototype.clear=Bi;D.prototype.delete=$i;D.prototype.get=Gi;D.prototype.has=Ki;D.prototype.set=qi;var J=D,Qi=k(S,"Map"),$=Qi;function Yi(){this.size=0,this.__data__={hash:new Ee,map:new($||J),string:new Ee}}var Ji=Yi;function Xi(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var en=Xi;function tn(e,t){var r=e.__data__;return en(t)?r[typeof t=="string"?"string":"hash"]:r.map}var X=tn;function rn(e){var t=X(this,e).delete(e);return this.size-=t?1:0,t}var nn=rn;function an(e){return X(this,e).get(e)}var on=an;function sn(e){return X(this,e).has(e)}var ln=sn;function cn(e,t){var r=X(this,e),i=r.size;return r.set(e,t),this.size+=r.size==i?0:1,this}var un=cn;function j(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var i=e[t];this.set(i[0],i[1])}}j.prototype.clear=Ji;j.prototype.delete=nn;j.prototype.get=on;j.prototype.has=ln;j.prototype.set=un;var We=j;function fn(e,t){for(var r=-1,i=t.length,a=e.length;++r<i;)e[a+r]=t[r];return e}var gn=fn;function dn(){this.__data__=new J,this.size=0}var hn=dn;function pn(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var mn=pn;function bn(e){return this.__data__.get(e)}var vn=bn;function yn(e){return this.__data__.has(e)}var wn=yn,In=200;function Cn(e,t){var r=this.__data__;if(r instanceof J){var i=r.__data__;if(!$||i.length<In-1)return i.push([e,t]),this.size=++r.size,this;r=this.__data__=new We(i)}return r.set(e,t),this.size=r.size,this}var Sn=Cn;function N(e){var t=this.__data__=new J(e);this.size=t.size}N.prototype.clear=hn;N.prototype.delete=mn;N.prototype.get=vn;N.prototype.has=wn;N.prototype.set=Sn;var ae=N;function En(e,t){for(var r=-1,i=e==null?0:e.length,a=0,n=[];++r<i;){var o=e[r];t(o,r,e)&&(n[a++]=o)}return n}var Pn=En;function An(){return[]}var _n=An,Fn=Object.prototype,Ln=Fn.propertyIsEnumerable,Pe=Object.getOwnPropertySymbols,Rn=Pe?function(e){return e==null?[]:(e=Object(e),Pn(Pe(e),function(t){return Ln.call(e,t)}))}:_n,On=Rn;function kn(e,t,r){var i=t(e);return q(e)?i:gn(i,r(e))}var xn=kn;function Dn(e){return xn(e,yi,On)}var Ae=Dn,jn=k(S,"DataView"),ce=jn,Nn=k(S,"Promise"),ue=Nn,Un=k(S,"Set"),fe=Un,_e="[object Map]",Bn="[object Object]",Fe="[object Promise]",Le="[object Set]",Re="[object WeakMap]",Oe="[object DataView]",Mn=F(ce),Vn=F($),Tn=F(ue),Hn=F(fe),$n=F(se),_=z;(ce&&_(new ce(new ArrayBuffer(1)))!=Oe||$&&_(new $)!=_e||ue&&_(ue.resolve())!=Fe||fe&&_(new fe)!=Le||se&&_(new se)!=Re)&&(_=function(e){var t=z(e),r=t==Bn?e.constructor:void 0,i=r?F(r):"";if(i)switch(i){case Mn:return Oe;case Vn:return _e;case Tn:return Fe;case Hn:return Le;case $n:return Re}return t});var ke=_,zn=S.Uint8Array,xe=zn,Gn="__lodash_hash_undefined__";function Zn(e){return this.__data__.set(e,Gn),this}var Kn=Zn;function Wn(e){return this.__data__.has(e)}var qn=Wn;function Q(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new We;++t<r;)this.add(e[t])}Q.prototype.add=Q.prototype.push=Kn;Q.prototype.has=qn;var Qn=Q;function Yn(e,t){for(var r=-1,i=e==null?0:e.length;++r<i;)if(t(e[r],r,e))return!0;return!1}var Jn=Yn;function Xn(e,t){return e.has(t)}var ea=Xn,ta=1,ra=2;function ia(e,t,r,i,a,n){var o=r&ta,s=e.length,c=t.length;if(s!=c&&!(o&&c>s))return!1;var l=n.get(e),u=n.get(t);if(l&&u)return l==t&&u==e;var d=-1,g=!0,m=r&ra?new Qn:void 0;for(n.set(e,t),n.set(t,e);++d<s;){var p=e[d],b=t[d];if(i)var y=o?i(b,p,d,t,e,n):i(p,b,d,e,t,n);if(y!==void 0){if(y)continue;g=!1;break}if(m){if(!Jn(t,function(w,I){if(!ea(m,I)&&(p===w||a(p,w,r,i,n)))return m.push(I)})){g=!1;break}}else if(!(p===b||a(p,b,r,i,n))){g=!1;break}}return n.delete(e),n.delete(t),g}var qe=ia;function na(e){var t=-1,r=Array(e.size);return e.forEach(function(i,a){r[++t]=[a,i]}),r}var aa=na;function oa(e){var t=-1,r=Array(e.size);return e.forEach(function(i){r[++t]=i}),r}var sa=oa,la=1,ca=2,ua="[object Boolean]",fa="[object Date]",ga="[object Error]",da="[object Map]",ha="[object Number]",pa="[object RegExp]",ma="[object Set]",ba="[object String]",va="[object Symbol]",ya="[object ArrayBuffer]",wa="[object DataView]",De=O?O.prototype:void 0,oe=De?De.valueOf:void 0;function Ia(e,t,r,i,a,n,o){switch(r){case wa:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case ya:return!(e.byteLength!=t.byteLength||!n(new xe(e),new xe(t)));case ua:case fa:case ha:return He(+e,+t);case ga:return e.name==t.name&&e.message==t.message;case pa:case ba:return e==t+"";case da:var s=aa;case ma:var c=i&la;if(s||(s=sa),e.size!=t.size&&!c)return!1;var l=o.get(e);if(l)return l==t;i|=ca,o.set(e,t);var u=qe(s(e),s(t),i,a,n,o);return o.delete(e),u;case va:if(oe)return oe.call(e)==oe.call(t)}return!1}var Ca=Ia,Sa=1,Ea=Object.prototype,Pa=Ea.hasOwnProperty;function Aa(e,t,r,i,a,n){var o=r&Sa,s=Ae(e),c=s.length,l=Ae(t),u=l.length;if(c!=u&&!o)return!1;for(var d=c;d--;){var g=s[d];if(!(o?g in t:Pa.call(t,g)))return!1}var m=n.get(e),p=n.get(t);if(m&&p)return m==t&&p==e;var b=!0;n.set(e,t),n.set(t,e);for(var y=o;++d<c;){g=s[d];var w=e[g],I=t[g];if(i)var U=o?i(I,w,g,t,e,n):i(w,I,g,e,t,n);if(!(U===void 0?w===I||a(w,I,r,i,n):U)){b=!1;break}y||(y=g=="constructor")}if(b&&!y){var A=e.constructor,C=t.constructor;A!=C&&"constructor"in e&&"constructor"in t&&!(typeof A=="function"&&A instanceof A&&typeof C=="function"&&C instanceof C)&&(b=!1)}return n.delete(e),n.delete(t),b}var _a=Aa,Fa=1,je="[object Arguments]",Ne="[object Array]",W="[object Object]",La=Object.prototype,Ue=La.hasOwnProperty;function Ra(e,t,r,i,a,n){var o=q(e),s=q(t),c=o?Ne:ke(e),l=s?Ne:ke(t);c=c==je?W:c,l=l==je?W:l;var u=c==W,d=l==W,g=c==l;if(g&&le(e)){if(!le(t))return!1;o=!0,u=!1}if(g&&!u)return n||(n=new ae),o||Ke(e)?qe(e,t,r,i,a,n):Ca(e,t,c,r,i,a,n);if(!(r&Fa)){var m=u&&Ue.call(e,"__wrapped__"),p=d&&Ue.call(t,"__wrapped__");if(m||p){var b=m?e.value():e,y=p?t.value():t;return n||(n=new ae),a(b,y,r,i,n)}}return g?(n||(n=new ae),_a(e,t,r,i,a,n)):!1}var Oa=Ra;function Qe(e,t,r,i,a){return e===t?!0:e==null||t==null||!T(e)&&!T(t)?e!==e&&t!==t:Oa(e,t,r,i,Qe,a)}var ka=Qe;function xa(e,t){return ka(e,t)}var Da=xa,ja=class extends pt{get(e){return super.get(e)??{status:"IDLE"}}isDuplicate(e){if(!this.engine.block.isValid(e))return!1;let t=this.get(e);if(t.status==="IDLE"||t.status==="PENDING"||t.status==="ERROR"||!this.engine.block.hasFill(e))return!1;let r=this.engine.block.getFill(e);return!(t.blockId===e||t.fillId===r)}fixDuplicate(e){let t=this.engine.block.getFill(e),r=this.get(e);r.status==="IDLE"||r.status==="PENDING"||r.status==="ERROR"||(this.set(e,{...r,blockId:e,fillId:t}),r.status==="PROCESSING"&&(this.recoverInitialImageData(e),this.clear(e)))}isConsistent(e){if(!this.engine.block.isValid(e))return!1;let t=this.get(e);if(t.status==="IDLE"||t.status==="PENDING")return!0;if(!this.engine.block.hasFill(e))return!1;let r=this.engine.block.getFill(e);if(r==null||e!==t.blockId||r!==t.fillId)return!1;let i=this.engine.block.getSourceSet(r,"fill/image/sourceSet"),a=this.engine.block.getString(r,"fill/image/imageFileURI");if(i.length===0&&!a&&t.status==="PROCESSING")return!0;if(i?.length>0){let n=t.initialSourceSet;if(t.status!=="PROCESSED"&&!Da(i,n))return!1}else if(t.status!=="PROCESSED"&&a!==t.initialImageFileURI)return!1;return!0}recoverInitialImageData(e){if(!this.engine.block.hasFill(e))return;let t=this.get(e);if(t.status==="PENDING"||t.status==="IDLE")return;let r=t.initialSourceSet,i=t.initialImageFileURI,a=t.initialPreviewFileURI,n=this.getValidFill(e,t);n!=null&&(i&&this.engine.block.setString(n,"fill/image/imageFileURI",i),a&&this.engine.block.setString(n,"fill/image/previewFileURI",a),r.length>0&&this.engine.block.setSourceSet(n,"fill/image/sourceSet",r))}getValidFill(e,t){if(!this.engine.block.isValid(e)||!this.engine.block.hasFill(e)||e!==t.blockId)return;let r=this.engine.block.getFill(e);if(r===t.fillId)return r}},ee=ja;async function Na(e,t,r,i,a){let n=t.engine.block;if(!n.hasFill(e))throw new Error("Block does not support fill");let o=n.getFill(e),s=n.getSourceSet(o,"fill/image/sourceSet"),c=n.getString(o,"fill/image/imageFileURI"),l=n.getString(o,"fill/image/previewFileURI");try{t.engine.block.setState(o,{type:"Pending",progress:0});let u={...r.get(e),version:a,initialSourceSet:s,initialImageFileURI:c,initialPreviewFileURI:l,blockId:e,fillId:o,status:"PROCESSING"};r.set(e,u);let d=await i.processFill(u);if(r.get(e).status!=="PROCESSING"||!r.isConsistent(e)||r.get(e).status!=="PROCESSING"||!r.isConsistent(e)||d==null)return;let g={version:a,initialSourceSet:s,initialImageFileURI:c,initialPreviewFileURI:l,blockId:e,fillId:o,status:"PROCESSED"},m=i.commitProcessing(d,g);(m==null||m===e)&&r.set(e,g),t.engine.editor.addUndoStep()}catch(u){if(t.engine.block.isValid(e)&&(r.set(e,{version:a,initialSourceSet:s,initialImageFileURI:c,initialPreviewFileURI:l,blockId:e,fillId:o,status:"ERROR"}),r.recoverInitialImageData(e)),u!=null&&typeof u=="object"&&"message"in u&&typeof u.message=="string"){let d=u.message==="signal timed out"?"Processing canceled due to timeout":u.message;t.ui.showNotification({type:"error",message:d})}console.log(u)}finally{t.engine.block.isValid(o)&&t.engine.block.setState(o,{type:"Ready"})}}var ge=Na;function Ye(e){return`${e}.fillProcessing.feature`}function Ua(e){return[`${e}.canvasMenu`,`${e}.fillProcessing.canvasMenu`]}function Ba(e){return[`${e}.dock`,`${e}.fillProcessing.dock`]}function Ma(e){return[`${e}.inspectorBar`,`${e}.fillProcessing.inspectorBar`]}function Va(e){return[`${e}.navigationBar`,`${e}.fillProcessing.navigationBar`]}function Ta(e){return[`${e}.canvasBar`,`${e}.fillProcessing.canvasBar`]}function Ha(e){return`plugin.${e}.fillProcessing.canvasMenu.button.label`}function $a(e){return`plugin.${e}.fillProcessing.dock.button.label`}function za(e){return`plugin.${e}.fillProcessing.inspectorBar.button.label`}function Ga(e){return`plugin.${e}.fillProcessing.navigationBar.button.label`}function Za(e){return`plugin.${e}.fillProcessing.canvasBar.button.label`}function Je(e,{pluginId:t,process:r}){let i=Ye(t),a=new ee(e.engine,t);return Ka(e,a,i),e.engine.event.subscribe([],async n=>{n.forEach(o=>{let s=o.block;if(!(!e.engine.block.isValid(s)||!a.hasData(s))){if(o.type==="Created")a.isDuplicate(s)&&a.fixDuplicate(s);else if(o.type==="Updated")switch(a.get(s).status){case"PENDING":{e.feature.isEnabled(i,{engine:e.engine})&&e.engine.block.isAllowedByScope(s,"fill/change")&&e.engine.block.getState(s).type!=="Pending"&&r(s,a);break}case"PROCESSING":case"PROCESSED":{a.isConsistent(s)||a.clear(s);break}default:}}})}),{featureId:i}}function Ka(e,t,r){e.feature.enable(r,({engine:i})=>{let a=i.block.findAllSelected();if(a.length!==1)return!1;let[n]=a;if(!e.engine.block.isVisible(n))return!1;if(e.engine.block.hasFill(n)){if(e.engine.block.getKind(n)==="sticker")return!1;let o=e.engine.block.getFill(n);if(e.engine.block.getType(o)!=="//ly.img.ubq/fill/image")return!1;let s=i.block.getString(o,"fill/image/imageFileURI");return i.block.getSourceSet(o,"fill/image/sourceSet").length>0||s!==""?!0:t.get(n).status==="PROCESSING"}return!1})}function Xe(e,t){let{pluginId:r,locations:i}=t,a=new ee(e.engine,r),n=Ha(r),o=Ua(r),s=o[0],c=$a(r),l=Ba(r),u=l[0],d=za(r),g=Ma(r),m=g[0],p=Ga(r),b=Va(r),y=b[0],w=Za(r),I=Ta(r),U=I[0],A=Ye(r);return i?.includes("inspectorBar")&&e.ui.setInspectorBarOrder([m,...e.ui.getInspectorBarOrder()]),i?.includes("navigationBar")&&e.ui.setNavigationBarOrder([y,...e.ui.getNavigationBarOrder()]),i?.includes("canvasBarTop")&&e.ui.setCanvasBarOrder([U,...e.ui.getCanvasBarOrder("top")],"top"),i?.includes("canvasBarBottom")&&e.ui.setCanvasBarOrder([U,...e.ui.getCanvasBarOrder("bottom")],"bottom"),i?.includes("canvasMenu")&&e.ui.setCanvasMenuOrder([s,...e.ui.getCanvasMenuOrder()]),i?.includes("dock")&&e.ui.setDockOrder([...e.ui.getDockOrder(),u]),e.ui.registerComponent(l,({builder:{Button:C},engine:B})=>{let[P]=B.block.findAllSelected(),v=!1,Z=!1,L;if(P==null&&(v=!0),!v&&!e.feature.isEnabled(A,{engine:B})&&(v=!0),!v&&!e.engine.block.isAllowedByScope(P,"fill/change")&&(v=!0),!v&&B.block.getState(P)?.type==="Pending"&&(v=!0),!v){let h=a.get(P);if(Z=h.status==="PROCESSING",v=h.status==="PENDING"||h.status==="PROCESSING",h.status==="PROCESSING"&&h.progress){let{current:K,total:re}=h.progress;L=K/re*100}}let R=`${u}.button`;C(R,{label:c,icon:t.icon,isLoading:Z,isDisabled:v,loadingProgress:L,onClick:()=>{let h=a.get(P);(h.status==="IDLE"||h.status==="ERROR"||h.status==="PROCESSED")&&a.set(P,{status:"PENDING"})}})}),[{componentIds:g,variant:"plain",label:d},{componentIds:b,variant:"regular",label:p},{componentIds:I,variant:"regular",label:w},{componentIds:o,variant:"plain",label:n}].forEach(({componentIds:C,label:B,variant:P})=>{let v=C[0];e.ui.registerComponent(C,({builder:{Button:Z},engine:L})=>{if(!e.feature.isEnabled(A,{engine:L}))return;let[R]=L.block.findAllSelected();if(!e.engine.block.isAllowedByScope(R,"fill/change"))return;let h=a.get(R),K=h.status==="PROCESSING",re=h.status==="PENDING"||h.status==="PROCESSING"||L.block.getState(R)?.type==="Pending",me;if(K&&h.progress){let{current:gt,total:dt}=h.progress;me=gt/dt*100}let ft=`${v}.button`;Z(ft,{icon:t.icon,label:B,variant:P,isLoading:K,isDisabled:re,loadingProgress:me,onClick:()=>{(h.status==="IDLE"||h.status==="ERROR"||h.status==="PROCESSED")&&a.set(R,{status:"PENDING"})}})})}),{canvasMenuComponentId:s,dockComponentId:u,translationsKeys:{inspectorBarLabel:d,navigationBarLabel:p,canvasBarLabel:w,canvasMenuLabel:n,dockLabel:c}}}var so=new RegExp(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,"i"),lo=new RegExp(/[A-Fa-f0-9]{1}/,"g"),co=new RegExp(/[A-Fa-f0-9]{2}/,"g");import{ActionRegistry as io}from"@imgly/plugin-ai-generation-web";var E="@imgly/plugin-perfectlyclear-web",et="https://cdn.img.ly/assets/plugins/plugin-perfectlyclear-web/v1/",tt="https://cert.perfectlyclear.photos/wasm_certificate/";var rt="@imgly/plugin-perfectlyclear",Wa=`
|
|
2
2
|
<svg xmlns="http://www.w3.org/2000/svg">
|
|
3
3
|
<symbol id="@imgly/plugin-perfectlyclear/enhance" viewBox="0 0 24 24" fill="none">
|
|
4
4
|
<path d="M5.35545 2.06745C5.24149 1.72556 4.7579 1.72556 4.64394 2.06745L4.05898 3.82232C4.02166 3.93429 3.9338 4.02215 3.82184 4.05948L2.06694 4.64459C1.72506 4.75858 1.72509 5.24217 2.06699 5.3561L3.82179 5.9409C3.93378 5.97822 4.02166 6.06609 4.05899 6.17808L4.64394 7.93291C4.7579 8.2748 5.24149 8.2748 5.35545 7.93291L5.9404 6.17806C5.97773 6.06608 6.06559 5.97821 6.17757 5.94089L7.93242 5.35594C8.27431 5.24198 8.27431 4.75839 7.93242 4.64442L6.17757 4.05947C6.06559 4.02215 5.97773 3.93428 5.9404 3.8223L5.35545 2.06745Z" fill="currentColor"/>
|
|
@@ -6,7 +6,7 @@ var pt=class{constructor(e,t){this.engine=e,this.key=t}hasData(e){return this.en
|
|
|
6
6
|
<path d="M9.30058 7.82012C9.54712 7.1791 10.454 7.1791 10.7006 7.82012L12.3809 12.189C12.4571 12.3871 12.6136 12.5436 12.8117 12.6198L17.1806 14.3001C17.8216 14.5466 17.8216 15.4536 17.1806 15.7001L12.8117 17.3804C12.6136 17.4566 12.4571 17.6131 12.3809 17.8112L10.7006 22.1801C10.454 22.8211 9.54712 22.8211 9.30058 22.1801L7.62024 17.8112C7.54406 17.6131 7.38754 17.4566 7.18947 17.3804L2.82061 15.7001C2.17959 15.4536 2.17959 14.5466 2.82061 14.3001L7.18947 12.6198C7.38754 12.5436 7.54406 12.3871 7.62024 12.189L9.30058 7.82012Z" fill="currentColor"/>
|
|
7
7
|
</symbol>
|
|
8
8
|
</svg>
|
|
9
|
-
`,it=Wa;var qa="presets/sd.preset",nt="pfc_wasm_certificate",G=class{constructor(t){this.options=t;this.pfcModule=null;this.pfc=null;this.initialized=!1;this.initPromise=null}get baseURL(){let t=this.options.baseURL.endsWith("/")?this.options.baseURL:`${this.options.baseURL}/`;if(typeof location>"u")return t;try{return new URL(t,location.href).href}catch{return t}}async loadPfcModule(){if(this.pfcModule!=null)return this.pfcModule;let r=await import(/* @vite-ignore */ /* webpackIgnore: true */ `${this.baseURL}pfc.mjs`);return this.pfcModule=r,r}async init(){if(!this.initialized){if(this.initPromise!=null)return this.initPromise;this.initPromise=(async()=>{let t=await this.loadPfcModule(),r=this.options.cacheCertificate!==!1?Ya(nt):null,a={distDir:"./dist",modelsDir:`${this.baseURL}models`,clientAPIKey:this.options.apiKey,urlGetCertificate:this.options.certificateURL??tt,pfcWasmCertificate:r,pfcAiServerUrl:"",inference:t.InferenceOption.local,numWorkers:this.options.numWorkers??4,assetsBaseURL:this.baseURL,assetsBaseUrl:this.baseURL,workerProxyBase:"",pageHostname:this.options.pageHostname??(typeof location<"u"?location.hostname:void 0)},n=new t.Pfc,o=await n.init(a);this.pfc=n,this.options.cacheCertificate!==!1&&typeof o=="string"&&o.length>0&&Ja(nt,o),await this.loadPresets(),this.initialized=!0})();try{await this.initPromise}finally{this.initPromise=null}}}async loadPresets(){if(this.pfc==null)return;let t=`${this.baseURL}${qa}`,r=await fetch(t,{mode:"cors"});if(!r.ok)throw new Error(`Failed to fetch Perfectly Clear presets: ${r.status} ${t}`);await this.pfc.loadScenePresets(await r.text())}async enhance(t,{quality:r=.95}={}){if(this.initialized||await this.init(),this.pfcModule==null||this.pfc==null)throw new Error("ImageEnhancer: Perfectly Clear module failed to load");let i=await Qa(t),a=this.pfc.createImage(i);if(a==null)throw new Error("Failed to create Perfectly Clear image");try{let n=this.pfcModule.PFCFEATURE.CALC_ALL|this.pfcModule.PFCFEATURE.CALC_NOTINTCALC|this.pfcModule.PFCFEATURE.CALC_FAEHISPEED,o=this.pfcModule.PFCFEATURE.CALC_SCENE_DETECTION|this.pfcModule.PFCFEATURE.CALC_SKINTONE|this.pfcModule.PFCFEATURE.CALC_AICOLOR|this.pfcModule.PFCFEATURE.CALC_DYNAMIC;await this.pfc.createProfile(a,n,o);let s=this.pfc.createParam();if(s==null)throw new Error("Failed to create Perfectly Clear parameters");this.pfc.setParam(s,this.pfcModule.PFCPRESETID.PRESET_NONE),a.sceneId!==void 0&&this.pfc.readScenePreset(s,a.sceneId),await this.pfc.apply(a,s);let c=a.image.getImageData(),l=new OffscreenCanvas(i.width,i.height),
|
|
9
|
+
`,it=Wa;var qa="presets/sd.preset",nt="pfc_wasm_certificate",G=class{constructor(t){this.options=t;this.pfcModule=null;this.pfc=null;this.initialized=!1;this.initPromise=null}get baseURL(){let t=this.options.baseURL.endsWith("/")?this.options.baseURL:`${this.options.baseURL}/`;if(typeof location>"u")return t;try{return new URL(t,location.href).href}catch{return t}}async loadPfcModule(){if(this.pfcModule!=null)return this.pfcModule;let r=await import(/* @vite-ignore */ /* webpackIgnore: true */ `${this.baseURL}pfc.mjs`);return this.pfcModule=r,r}async init(){if(!this.initialized){if(this.initPromise!=null)return this.initPromise;this.initPromise=(async()=>{let t=await this.loadPfcModule(),r=this.options.cacheCertificate!==!1?Ya(nt):null,a={distDir:"./dist",modelsDir:`${this.baseURL}models`,clientAPIKey:this.options.apiKey,urlGetCertificate:this.options.certificateURL??tt,pfcWasmCertificate:r,pfcAiServerUrl:"",inference:t.InferenceOption.local,numWorkers:this.options.numWorkers??4,assetsBaseURL:this.baseURL,assetsBaseUrl:this.baseURL,workerProxyBase:"",pageHostname:this.options.pageHostname??(typeof location<"u"?location.hostname:void 0)},n=new t.Pfc,o=await n.init(a);this.pfc=n,this.options.cacheCertificate!==!1&&typeof o=="string"&&o.length>0&&Ja(nt,o),await this.loadPresets(),this.initialized=!0})();try{await this.initPromise}finally{this.initPromise=null}}}async loadPresets(){if(this.pfc==null)return;let t=`${this.baseURL}${qa}`,r=await fetch(t,{mode:"cors"});if(!r.ok)throw new Error(`Failed to fetch Perfectly Clear presets: ${r.status} ${t}`);await this.pfc.loadScenePresets(await r.text())}async enhance(t,{quality:r=.95}={}){if(this.initialized||await this.init(),this.pfcModule==null||this.pfc==null)throw new Error("ImageEnhancer: Perfectly Clear module failed to load");let i=await Qa(t),a=this.pfc.createImage(i);if(a==null)throw new Error("Failed to create Perfectly Clear image");try{let n=this.pfcModule.PFCFEATURE.CALC_ALL|this.pfcModule.PFCFEATURE.CALC_NOTINTCALC|this.pfcModule.PFCFEATURE.CALC_FAEHISPEED,o=this.pfcModule.PFCFEATURE.CALC_SCENE_DETECTION|this.pfcModule.PFCFEATURE.CALC_SKINTONE|this.pfcModule.PFCFEATURE.CALC_AICOLOR|this.pfcModule.PFCFEATURE.CALC_DYNAMIC;await this.pfc.createProfile(a,n,o);let s=this.pfc.createParam();if(s==null)throw new Error("Failed to create Perfectly Clear parameters");this.pfc.setParam(s,this.pfcModule.PFCPRESETID.PRESET_NONE),a.sceneId!==void 0&&this.pfc.readScenePreset(s,a.sceneId),await this.pfc.apply(a,s);let c=a.image.getImageData(),l=new OffscreenCanvas(i.width,i.height),u=l.getContext("2d");if(u==null)throw new Error("Failed to create OffscreenCanvas 2D context");let d=new ImageData(new Uint8ClampedArray(c),i.width,i.height);return u.putImageData(d,0,0),await l.convertToBlob({type:t.type||"image/jpeg",quality:r})}finally{await this.pfc.deleteImage(a)}}async terminate(){this.pfc?.workerPool!=null&&this.pfc.workerPool.terminate(),this.pfc=null,this.initialized=!1}};async function Qa(e){let t=await createImageBitmap(e),r=new OffscreenCanvas(t.width,t.height),i=r.getContext("2d");if(i==null)throw new Error("Failed to create OffscreenCanvas 2D context");return i.drawImage(t,0,0),i.getImageData(0,0,r.width,r.height)}function Ya(e){try{return typeof localStorage<"u"?localStorage.getItem(e):null}catch{return null}}function Ja(e,t){try{typeof localStorage<"u"&&localStorage.setItem(e,t)}catch{}}var at=1024;async function ot(e,t,r,i){return ge(e,t,r,{processFill:async a=>{let n=a.initialSourceSet,o=eo(n);if(o==null)throw new Error("No source found");let s=await lt(o.uri,t),c=await i.enhance(s),l=await ct(c,o.uri,t);return n.map(u=>({...u,uri:l}))},commitProcessing:(a,n)=>{let o=n.fillId;t.engine.block.setSourceSet(o,"fill/image/sourceSet",a);let s=[...a].sort((c,l)=>c.width*c.height-l.width*l.height)[0];s!=null&&t.engine.block.setString(o,"fill/image/previewFileURI",s.uri)}},"1.79.0-nightly.20260708")}async function st(e,t,r,i){return ge(e,t,r,{processFill:async a=>{let n=await lt(a.initialImageFileURI,t),o=await i.enhance(n);return ct(o,a.initialImageFileURI,t)},commitProcessing:(a,n)=>{let o=n.fillId;t.engine.block.setString(o,"fill/image/imageFileURI",a),t.engine.block.setString(o,"fill/image/previewFileURI","")}},"1.79.0-nightly.20260708")}async function lt(e,t){if(e.startsWith("buffer:")){let i=await t.engine.editor.getMimeType(e),a=t.engine.editor.getBufferLength(e),n=t.engine.editor.getBufferData(e,0,a);return new Blob([new Uint8Array(n)],{type:i})}let r=await fetch(e);if(!r.ok)throw new Error(`Failed to fetch image: ${r.status} ${e}`);return r.blob()}async function ct(e,t,r){let i=Xa(t)??"enhanced.jpg",n=(await r.unstable_upload(new File([e],i,{type:e.type}),()=>{})).meta?.uri;if(n==null)throw new Error("Could not upload enhanced image");return n}function Xa(e){try{let r=new URL(e).pathname.split("/"),i=r[r.length-1];return i&&i.trim()!==""?i:void 0}catch{let t=e.split("/"),r=t[t.length-1];return r&&r.trim()!==""?r:void 0}}function eo(e){if(e.length===0)return;let t=e.filter(r=>r.width>=at&&r.height>=at);return t.length>0?t.sort((r,i)=>r.width*r.height-i.width*i.height)[0]:[...e].sort((r,i)=>i.width*i.height-r.width*r.height)[0]}import{enableQuickActionForImageFill as to,setDefaultTranslations as ro}from"@imgly/plugin-ai-generation-web";var he="ly.img.perfectlyClear.enhanceImage",ut="ly.img.plugin-perfectlyclear-web.quickAction.enhanceImage",de="ly.img.plugin-perfectlyclear-web.defaults.quickAction.enhanceImage";function te({cesdk:e,onTriggerStandalone:t}){return e.feature.enable("ly.img.plugin-ai-image-generation-web.quickAction.perfectlyClear.enhanceImage",!0),ro(e,{en:{[`${de}`]:"Enhance Image",[`${de}.description`]:"Automatically enhance the image with Perfectly Clear."}}),{id:he,type:"quick",kind:"image",label:ut,enable:to(),scopes:["fill/change"],render:({builder:r,engine:i,generate:a,close:n})=>{r.Button(`${he}.button`,{label:[ut,de],icon:"@imgly/plugin-perfectlyclear/enhance",labelAlignment:"left",variant:"plain",onClick:async()=>{try{let[o]=i.block.findAllSelected();if(o==null)return;if(t!=null){t(o),n();return}let s=i.block.getFill(o),c=i.block.getString(s,"fill/image/imageFileURI")||i.block.getSourceSet(s,"fill/image/sourceSet")[0]?.uri||"";if(c==="")throw new Error("No image URI found on selected block");await a({uri:c}),n()}catch(o){console.error("Perfectly Clear enhancement failed:",o),e.ui.showNotification({type:"error",message:o.message||"Failed to enhance image. Please try again.",duration:"medium"})}}})}}}function pe(e){if(typeof e.apiKey!="string"||e.apiKey.length===0)throw new Error(`${E}: 'apiKey' is required. Obtain an API key from Perfectly Clear and pass it via the plugin configuration.`);return{initialize({cesdk:t}){if(t==null)return;let r=new G({apiKey:e.apiKey,baseURL:e.baseURL??et,certificateURL:e.certificateURL,numWorkers:e.numWorkers,cacheCertificate:e.cacheCertificate,pageHostname:e.pageHostname});t.ui.addIconSet(rt,it),Je(t,{pluginId:E,process:(n,o)=>{no(t,n,o,r)}});let{translationsKeys:i}=Xe(t,{pluginId:E,icon:"@imgly/plugin-perfectlyclear/enhance"});t.setTranslations({en:{[i.inspectorBarLabel]:"Enhance",[i.navigationBarLabel]:"Enhance",[i.canvasBarLabel]:"Enhance",[i.canvasMenuLabel]:"Enhance",[i.dockLabel]:"Enhance"}}),io.get().register(te({cesdk:t,onTriggerStandalone:n=>{ao(t,n)}}))}}}async function no(e,t,r,i){let a=e.engine.block;if(!a.hasFill(t))throw new Error("Block does not support fill");let n=a.getFill(t),o=a.getSourceSet(n,"fill/image/sourceSet"),s=a.getString(n,"fill/image/imageFileURI");if(o.length===0&&s==="")throw new Error("No source or image file URI found");o.length>0?await ot(t,e,r,i):await st(t,e,r,i)}function ao(e,t){let r=new ee(e.engine,E),i=r.get(t);(i.status==="IDLE"||i.status==="ERROR"||i.status==="PROCESSED")&&r.set(t,{status:"PENDING"})}var oo=e=>({name:E,version:"1.79.0-nightly.20260708",...pe(e)}),xo=oo;export{he as ENHANCE_IMAGE_ACTION_ID,G as ImageEnhancer,E as PLUGIN_ID,te as createEnhanceImageQuickAction,xo as default};
|
|
10
10
|
/*! Bundled license information:
|
|
11
11
|
|
|
12
12
|
lodash-es/lodash.js:
|