@imgly/plugin-vectorizer-web 0.1.0-rc.1 → 0.1.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.mjs +1 -1
  2. package/package.json +2 -2
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- var $t=class{constructor(t,e){this.cesdk=t,this.key=e}hasData(t){return this.cesdk.engine.block.isValid(t)&&this.cesdk.engine.block.hasMetadata(t,this.key)}get(t){if(this.hasData(t))return JSON.parse(this.cesdk.engine.block.getMetadata(t,this.key))}set(t,e){this.cesdk.engine.block.setMetadata(t,this.key,JSON.stringify(e))}clear(t){this.cesdk.engine.block.hasMetadata(t,this.key)&&this.cesdk.engine.block.removeMetadata(t,this.key)}},qt=$t,Kt=typeof global=="object"&&global&&global.Object===Object&&global,kt=Kt,Wt=typeof self=="object"&&self&&self.Object===Object&&self,Xt=kt||Wt||Function("return this")(),_=Xt,Yt=_.Symbol,j=Yt,St=Object.prototype,Jt=St.hasOwnProperty,Ht=St.toString,F=j?j.toStringTag:void 0;function Qt(t){var e=Jt.call(t,F),r=t[F];try{t[F]=void 0;var n=!0}catch{}var o=Ht.call(t);return n&&(e?t[F]=r:delete t[F]),o}var Zt=Qt,te=Object.prototype,ee=te.toString;function re(t){return ee.call(t)}var ne=re,ie="[object Null]",oe="[object Undefined]",tt=j?j.toStringTag:void 0;function ae(t){return t==null?t===void 0?oe:ie:tt&&tt in Object(t)?Zt(t):ne(t)}var A=ae;function se(t){return t!=null&&typeof t=="object"}var C=se,le=Array.isArray,M=le;function ce(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var jt=ce,ue="[object AsyncFunction]",fe="[object Function]",ge="[object GeneratorFunction]",pe="[object Proxy]";function ve(t){if(!jt(t))return!1;var e=A(t);return e==fe||e==ge||e==ue||e==pe}var It=ve,he=_["__core-js_shared__"],$=he,et=function(){var t=/[^.]+$/.exec($&&$.keys&&$.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function be(t){return!!et&&et in t}var de=be,ye=Function.prototype,_e=ye.toString;function me(t){if(t!=null){try{return _e.call(t)}catch{}try{return t+""}catch{}}return""}var S=me,ke=/[\\^$.*+?()[\]{}|]/g,Se=/^\[object .+?Constructor\]$/,je=Function.prototype,Ie=Object.prototype,Pe=je.toString,Oe=Ie.hasOwnProperty,we=RegExp("^"+Pe.call(Oe).replace(ke,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ee(t){if(!jt(t)||de(t))return!1;var e=It(t)?we:Se;return e.test(S(t))}var Fe=Ee;function Re(t,e){return t?.[e]}var Ce=Re;function De(t,e){var r=Ce(t,e);return Fe(r)?r:void 0}var I=De,ze=I(_,"WeakMap"),X=ze,Ae=9007199254740991,Ne=/^(?:0|[1-9]\d*)$/;function Ue(t,e){var r=typeof t;return e=e??Ae,!!e&&(r=="number"||r!="symbol"&&Ne.test(t))&&t>-1&&t%1==0&&t<e}var Ve=Ue;function Me(t,e){return t===e||t!==t&&e!==e}var Pt=Me,xe=9007199254740991;function Ge(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=xe}var Ot=Ge;function Be(t){return t!=null&&Ot(t.length)&&!It(t)}var Le=Be,Te=Object.prototype;function $e(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||Te;return t===r}var qe=$e;function Ke(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}var We=Ke,Xe="[object Arguments]";function Ye(t){return C(t)&&A(t)==Xe}var rt=Ye,wt=Object.prototype,Je=wt.hasOwnProperty,He=wt.propertyIsEnumerable,Qe=rt(function(){return arguments}())?rt:function(t){return C(t)&&Je.call(t,"callee")&&!He.call(t,"callee")},Ze=Qe;function tr(){return!1}var er=tr,Et=typeof exports=="object"&&exports&&!exports.nodeType&&exports,nt=Et&&typeof module=="object"&&module&&!module.nodeType&&module,rr=nt&&nt.exports===Et,it=rr?_.Buffer:void 0,nr=it?it.isBuffer:void 0,ir=nr||er,Y=ir,or="[object Arguments]",ar="[object Array]",sr="[object Boolean]",lr="[object Date]",cr="[object Error]",ur="[object Function]",fr="[object Map]",gr="[object Number]",pr="[object Object]",vr="[object RegExp]",hr="[object Set]",br="[object String]",dr="[object WeakMap]",yr="[object ArrayBuffer]",_r="[object DataView]",mr="[object Float32Array]",kr="[object Float64Array]",Sr="[object Int8Array]",jr="[object Int16Array]",Ir="[object Int32Array]",Pr="[object Uint8Array]",Or="[object Uint8ClampedArray]",wr="[object Uint16Array]",Er="[object Uint32Array]",p={};p[mr]=p[kr]=p[Sr]=p[jr]=p[Ir]=p[Pr]=p[Or]=p[wr]=p[Er]=!0;p[or]=p[ar]=p[yr]=p[sr]=p[_r]=p[lr]=p[cr]=p[ur]=p[fr]=p[gr]=p[pr]=p[vr]=p[hr]=p[br]=p[dr]=!1;function Fr(t){return C(t)&&Ot(t.length)&&!!p[A(t)]}var Rr=Fr;function Cr(t){return function(e){return t(e)}}var Dr=Cr,Ft=typeof exports=="object"&&exports&&!exports.nodeType&&exports,R=Ft&&typeof module=="object"&&module&&!module.nodeType&&module,zr=R&&R.exports===Ft,q=zr&&kt.process,Ar=function(){try{var t=R&&R.require&&R.require("util").types;return t||q&&q.binding&&q.binding("util")}catch{}}(),ot=Ar,at=ot&&ot.isTypedArray,Nr=at?Dr(at):Rr,Rt=Nr,Ur=Object.prototype,Vr=Ur.hasOwnProperty;function Mr(t,e){var r=M(t),n=!r&&Ze(t),o=!r&&!n&&Y(t),i=!r&&!n&&!o&&Rt(t),s=r||n||o||i,l=s?We(t.length,String):[],f=l.length;for(var a in t)(e||Vr.call(t,a))&&!(s&&(a=="length"||o&&(a=="offset"||a=="parent")||i&&(a=="buffer"||a=="byteLength"||a=="byteOffset")||Ve(a,f)))&&l.push(a);return l}var xr=Mr;function Gr(t,e){return function(r){return t(e(r))}}var Br=Gr,Lr=Br(Object.keys,Object),Tr=Lr,$r=Object.prototype,qr=$r.hasOwnProperty;function Kr(t){if(!qe(t))return Tr(t);var e=[];for(var r in Object(t))qr.call(t,r)&&r!="constructor"&&e.push(r);return e}var Wr=Kr;function Xr(t){return Le(t)?xr(t):Wr(t)}var Yr=Xr,Jr=I(Object,"create"),D=Jr;function Hr(){this.__data__=D?D(null):{},this.size=0}var Qr=Hr;function Zr(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var tn=Zr,en="__lodash_hash_undefined__",rn=Object.prototype,nn=rn.hasOwnProperty;function on(t){var e=this.__data__;if(D){var r=e[t];return r===en?void 0:r}return nn.call(e,t)?e[t]:void 0}var an=on,sn=Object.prototype,ln=sn.hasOwnProperty;function cn(t){var e=this.__data__;return D?e[t]!==void 0:ln.call(e,t)}var un=cn,fn="__lodash_hash_undefined__";function gn(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=D&&e===void 0?fn:e,this}var pn=gn;function P(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}P.prototype.clear=Qr;P.prototype.delete=tn;P.prototype.get=an;P.prototype.has=un;P.prototype.set=pn;var st=P;function vn(){this.__data__=[],this.size=0}var hn=vn;function bn(t,e){for(var r=t.length;r--;)if(Pt(t[r][0],e))return r;return-1}var G=bn,dn=Array.prototype,yn=dn.splice;function _n(t){var e=this.__data__,r=G(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():yn.call(e,r,1),--this.size,!0}var mn=_n;function kn(t){var e=this.__data__,r=G(e,t);return r<0?void 0:e[r][1]}var Sn=kn;function jn(t){return G(this.__data__,t)>-1}var In=jn;function Pn(t,e){var r=this.__data__,n=G(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var On=Pn;function O(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}O.prototype.clear=hn;O.prototype.delete=mn;O.prototype.get=Sn;O.prototype.has=In;O.prototype.set=On;var B=O,wn=I(_,"Map"),z=wn;function En(){this.size=0,this.__data__={hash:new st,map:new(z||B),string:new st}}var Fn=En;function Rn(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var Cn=Rn;function Dn(t,e){var r=t.__data__;return Cn(e)?r[typeof e=="string"?"string":"hash"]:r.map}var L=Dn;function zn(t){var e=L(this,t).delete(t);return this.size-=e?1:0,e}var An=zn;function Nn(t){return L(this,t).get(t)}var Un=Nn;function Vn(t){return L(this,t).has(t)}var Mn=Vn;function xn(t,e){var r=L(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}var Gn=xn;function w(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}w.prototype.clear=Fn;w.prototype.delete=An;w.prototype.get=Un;w.prototype.has=Mn;w.prototype.set=Gn;var Ct=w;function Bn(t,e){for(var r=-1,n=e.length,o=t.length;++r<n;)t[o+r]=e[r];return t}var Ln=Bn;function Tn(){this.__data__=new B,this.size=0}var $n=Tn;function qn(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var Kn=qn;function Wn(t){return this.__data__.get(t)}var Xn=Wn;function Yn(t){return this.__data__.has(t)}var Jn=Yn,Hn=200;function Qn(t,e){var r=this.__data__;if(r instanceof B){var n=r.__data__;if(!z||n.length<Hn-1)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new Ct(n)}return r.set(t,e),this.size=r.size,this}var Zn=Qn;function E(t){var e=this.__data__=new B(t);this.size=e.size}E.prototype.clear=$n;E.prototype.delete=Kn;E.prototype.get=Xn;E.prototype.has=Jn;E.prototype.set=Zn;var K=E;function ti(t,e){for(var r=-1,n=t==null?0:t.length,o=0,i=[];++r<n;){var s=t[r];e(s,r,t)&&(i[o++]=s)}return i}var ei=ti;function ri(){return[]}var ni=ri,ii=Object.prototype,oi=ii.propertyIsEnumerable,lt=Object.getOwnPropertySymbols,ai=lt?function(t){return t==null?[]:(t=Object(t),ei(lt(t),function(e){return oi.call(t,e)}))}:ni,si=ai;function li(t,e,r){var n=e(t);return M(t)?n:Ln(n,r(t))}var ci=li;function ui(t){return ci(t,Yr,si)}var ct=ui,fi=I(_,"DataView"),J=fi,gi=I(_,"Promise"),H=gi,pi=I(_,"Set"),Q=pi,ut="[object Map]",vi="[object Object]",ft="[object Promise]",gt="[object Set]",pt="[object WeakMap]",vt="[object DataView]",hi=S(J),bi=S(z),di=S(H),yi=S(Q),_i=S(X),k=A;(J&&k(new J(new ArrayBuffer(1)))!=vt||z&&k(new z)!=ut||H&&k(H.resolve())!=ft||Q&&k(new Q)!=gt||X&&k(new X)!=pt)&&(k=function(t){var e=A(t),r=e==vi?t.constructor:void 0,n=r?S(r):"";if(n)switch(n){case hi:return vt;case bi:return ut;case di:return ft;case yi:return gt;case _i:return pt}return e});var ht=k,mi=_.Uint8Array,bt=mi,ki="__lodash_hash_undefined__";function Si(t){return this.__data__.set(t,ki),this}var ji=Si;function Ii(t){return this.__data__.has(t)}var Pi=Ii;function x(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new Ct;++e<r;)this.add(t[e])}x.prototype.add=x.prototype.push=ji;x.prototype.has=Pi;var Oi=x;function wi(t,e){for(var r=-1,n=t==null?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}var Ei=wi;function Fi(t,e){return t.has(e)}var Ri=Fi,Ci=1,Di=2;function zi(t,e,r,n,o,i){var s=r&Ci,l=t.length,f=e.length;if(l!=f&&!(s&&f>l))return!1;var a=i.get(t),c=i.get(e);if(a&&c)return a==e&&c==t;var u=-1,g=!0,h=r&Di?new Oi:void 0;for(i.set(t,e),i.set(e,t);++u<l;){var v=t[u],b=e[u];if(n)var d=s?n(b,v,u,e,t,i):n(v,b,u,t,e,i);if(d!==void 0){if(d)continue;g=!1;break}if(h){if(!Ei(e,function(y,m){if(!Ri(h,m)&&(v===y||o(v,y,r,n,i)))return h.push(m)})){g=!1;break}}else if(!(v===b||o(v,b,r,n,i))){g=!1;break}}return i.delete(t),i.delete(e),g}var Dt=zi;function Ai(t){var e=-1,r=Array(t.size);return t.forEach(function(n,o){r[++e]=[o,n]}),r}var Ni=Ai;function Ui(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}var Vi=Ui,Mi=1,xi=2,Gi="[object Boolean]",Bi="[object Date]",Li="[object Error]",Ti="[object Map]",$i="[object Number]",qi="[object RegExp]",Ki="[object Set]",Wi="[object String]",Xi="[object Symbol]",Yi="[object ArrayBuffer]",Ji="[object DataView]",dt=j?j.prototype:void 0,W=dt?dt.valueOf:void 0;function Hi(t,e,r,n,o,i,s){switch(r){case Ji:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case Yi:return!(t.byteLength!=e.byteLength||!i(new bt(t),new bt(e)));case Gi:case Bi:case $i:return Pt(+t,+e);case Li:return t.name==e.name&&t.message==e.message;case qi:case Wi:return t==e+"";case Ti:var l=Ni;case Ki:var f=n&Mi;if(l||(l=Vi),t.size!=e.size&&!f)return!1;var a=s.get(t);if(a)return a==e;n|=xi,s.set(t,e);var c=Dt(l(t),l(e),n,o,i,s);return s.delete(t),c;case Xi:if(W)return W.call(t)==W.call(e)}return!1}var Qi=Hi,Zi=1,to=Object.prototype,eo=to.hasOwnProperty;function ro(t,e,r,n,o,i){var s=r&Zi,l=ct(t),f=l.length,a=ct(e),c=a.length;if(f!=c&&!s)return!1;for(var u=f;u--;){var g=l[u];if(!(s?g in e:eo.call(e,g)))return!1}var h=i.get(t),v=i.get(e);if(h&&v)return h==e&&v==t;var b=!0;i.set(t,e),i.set(e,t);for(var d=s;++u<f;){g=l[u];var y=t[g],m=e[g];if(n)var Z=s?n(m,y,g,e,t,i):n(y,m,g,t,e,i);if(!(Z===void 0?y===m||o(y,m,r,n,i):Z)){b=!1;break}d||(d=g=="constructor")}if(b&&!d){var N=t.constructor,U=e.constructor;N!=U&&"constructor"in t&&"constructor"in e&&!(typeof N=="function"&&N instanceof N&&typeof U=="function"&&U instanceof U)&&(b=!1)}return i.delete(t),i.delete(e),b}var no=ro,io=1,yt="[object Arguments]",_t="[object Array]",V="[object Object]",oo=Object.prototype,mt=oo.hasOwnProperty;function ao(t,e,r,n,o,i){var s=M(t),l=M(e),f=s?_t:ht(t),a=l?_t:ht(e);f=f==yt?V:f,a=a==yt?V:a;var c=f==V,u=a==V,g=f==a;if(g&&Y(t)){if(!Y(e))return!1;s=!0,c=!1}if(g&&!c)return i||(i=new K),s||Rt(t)?Dt(t,e,r,n,o,i):Qi(t,e,f,r,n,o,i);if(!(r&io)){var h=c&&mt.call(t,"__wrapped__"),v=u&&mt.call(e,"__wrapped__");if(h||v){var b=h?t.value():t,d=v?e.value():e;return i||(i=new K),o(b,d,r,n,i)}}return g?(i||(i=new K),no(t,e,r,n,o,i)):!1}var so=ao;function zt(t,e,r,n,o){return t===e?!0:t==null||e==null||!C(t)&&!C(e)?t!==t&&e!==e:so(t,e,r,n,zt,o)}var lo=zt;function co(t,e){return lo(t,e)}var uo=co,fo=class extends qt{get(t){return super.get(t)??{status:"IDLE"}}isDuplicate(t){if(!this.cesdk.engine.block.isValid(t))return!1;let e=this.get(t);if(e.status==="IDLE"||e.status==="PENDING"||e.status==="ERROR"||!this.cesdk.engine.block.hasFill(t))return!1;let r=this.cesdk.engine.block.getFill(t);return!(e.blockId===t||e.fillId===r)}fixDuplicate(t){let e=this.cesdk.engine.block.getFill(t),r=this.get(t);r.status==="IDLE"||r.status==="PENDING"||r.status==="ERROR"||(this.set(t,{...r,blockId:t,fillId:e}),r.status==="PROCESSING"&&(this.recoverInitialImageData(t),this.clear(t)))}isConsistent(t){if(!this.cesdk.engine.block.isValid(t))return!1;let e=this.get(t);if(e.status==="IDLE"||e.status==="PENDING")return!0;if(!this.cesdk.engine.block.hasFill(t))return!1;let r=this.cesdk.engine.block.getFill(t);if(r==null||t!==e.blockId||r!==e.fillId)return!1;let n=this.cesdk.engine.block.getSourceSet(r,"fill/image/sourceSet"),o=this.cesdk.engine.block.getString(r,"fill/image/imageFileURI");if(n.length===0&&!o&&e.status==="PROCESSING")return!0;if(n?.length>0){let i=e.initialSourceSet;if(e.status!=="PROCESSED"&&!uo(n,i))return!1}else if(e.status!=="PROCESSED"&&o!==e.initialImageFileURI)return!1;return!0}recoverInitialImageData(t){if(!this.cesdk.engine.block.hasFill(t))return;let e=this.get(t);if(e.status==="PENDING"||e.status==="IDLE")return;let r=e.initialSourceSet,n=e.initialImageFileURI,o=e.initialPreviewFileURI,i=this.getValidFill(t,e);i!=null&&(n&&this.cesdk.engine.block.setString(i,"fill/image/imageFileURI",n),o&&this.cesdk.engine.block.setString(i,"fill/image/previewFileURI",o),r.length>0&&this.cesdk.engine.block.setSourceSet(i,"fill/image/sourceSet",r))}getValidFill(t,e){if(!this.cesdk.engine.block.isValid(t)||!this.cesdk.engine.block.hasFill(t)||t!==e.blockId)return;let r=this.cesdk.engine.block.getFill(t);if(r===e.fillId)return r}},At=fo;async function go(t,e,r,n){let o=e.engine.block;if(!o.hasFill(t))throw new Error("Block does not support fill");let i=o.getFill(t),s=o.getSourceSet(i,"fill/image/sourceSet"),l=o.getString(i,"fill/image/imageFileURI"),f=o.getString(i,"fill/image/previewFileURI");try{e.engine.block.setState(i,{type:"Pending",progress:0});let a={...r.get(t),version:"0.0.0",initialSourceSet:s,initialImageFileURI:l,initialPreviewFileURI:f,blockId:t,fillId:i,status:"PROCESSING"};r.set(t,a);let c=await n.processFill(a);if(r.get(t).status!=="PROCESSING"||!r.isConsistent(t)||r.get(t).status!=="PROCESSING"||!r.isConsistent(t)||c==null)return;let u={version:"0.0.0",initialSourceSet:s,initialImageFileURI:l,initialPreviewFileURI:f,blockId:t,fillId:i,status:"PROCESSED"},g=n.commitProcessing(c,u);(g==null||g===t)&&r.set(t,u),e.engine.editor.addUndoStep()}catch(a){if(e.engine.block.isValid(t)&&(r.set(t,{version:"0.0.0",initialSourceSet:s,initialImageFileURI:l,initialPreviewFileURI:f,blockId:t,fillId:i,status:"ERROR"}),r.recoverInitialImageData(t)),a!=null&&typeof a=="object"&&"message"in a&&typeof a.message=="string"){let c=a.message==="signal timed out"?"Processing canceled due to timeout":a.message;e.ui.showNotification({type:"error",message:c})}console.log(a)}finally{e.engine.block.isValid(i)&&e.engine.block.setState(i,{type:"Ready"})}}var Nt=go;function Ut(t){return`${t}.fillProcessing.feature`}function po(t){return`${t}.fillProcessing.canvasMenu`}function vo(t){return`plugin.${t}.fillProcessing.canvasMenu.button.label`}function Vt(t,{pluginId:e,process:r}){let n=Ut(e),o=new At(t,e);return ho(t,o,n),t.engine.event.subscribe([],async i=>{i.forEach(s=>{let l=s.block;if(!(!t.engine.block.isValid(l)||!o.hasData(l))){if(s.type==="Created")o.isDuplicate(l)&&o.fixDuplicate(l);else if(s.type==="Updated")switch(o.get(l).status){case"PENDING":{t.feature.unstable_isEnabled(n,{engine:t.engine})&&t.engine.block.isAllowedByScope(l,"fill/change")&&t.engine.block.getState(l).type!=="Pending"&&r(l,o);break}case"PROCESSING":case"PROCESSED":{o.isConsistent(l)||o.clear(l);break}default:}}})}),{featureId:n}}function ho(t,e,r){t.feature.unstable_enable(r,({engine:n})=>{let o=n.block.findAllSelected();if(o.length!==1)return!1;let[i]=o;if(!t.engine.block.isVisible(i))return!1;if(t.engine.block.hasFill(i)){if(t.engine.block.getKind(i)==="sticker")return!1;let s=t.engine.block.getFill(i);if(t.engine.block.getType(s)!=="//ly.img.ubq/fill/image")return!1;let l=n.block.getString(s,"fill/image/imageFileURI");return n.block.getSourceSet(s,"fill/image/sourceSet").length>0||l!==""?!0:e.get(i).status==="PROCESSING"}return!1})}function Mt(t,e){let{pluginId:r,locations:n}=e,o=new At(t,r),i=po(r),s=vo(r),l=Ut(r);return n?.includes("canvasMenu")&&t.ui.unstable_setCanvasMenuOrder([i,...t.ui.unstable_getCanvasMenuOrder()]),t.ui.unstable_registerComponent(i,({builder:{Button:f},engine:a})=>{if(!t.feature.unstable_isEnabled(l,{engine:a}))return;let[c]=a.block.findAllSelected();if(!t.engine.block.isAllowedByScope(c,"fill/change"))return;let u=o.get(c),g=u.status==="PROCESSING",h=u.status==="PENDING"||u.status==="PROCESSING"||a.block.getState(c)?.type==="Pending",v;if(g&&u.progress){let{current:d,total:y}=u.progress;v=d/y*100}let b=`${i}.button`;f(b,{label:s,icon:e.icon,isLoading:g,isDisabled:h,loadingProgress:v,onClick:()=>{(u.status==="IDLE"||u.status==="ERROR"||u.status==="PROCESSED")&&o.set(c,{status:"PENDING"})}})}),{canvasMenuComponentId:i,translationsKeys:{canvasMenuLabel:s}}}import*as Bt from"@imgly/vectorizer";var bo=(t,e)=>e.map(n=>yo(t,n)),yo=(t,e)=>{let r=e.shape.path,n=e.fill.color,o=t.block.create("//ly.img.ubq/graphic");t.block.setKind(o,"shape");let i=t.block.createShape("//ly.img.ubq/shape/vector_path");t.block.setShape(o,i),t.block.setString(i,"vector_path/path",r),t.block.setFloat(i,"vector_path/width",e.transform.width),t.block.setFloat(i,"vector_path/height",e.transform.height);let s=t.block.createFill("color");return t.block.setColor(s,"fill/color/value",{r:n[0],g:n[1],b:n[2],a:n[3]}),t.block.setFill(o,s),t.block.setFloat(o,"width",e.transform.width),t.block.setFloat(o,"height",e.transform.height),t.block.setPositionX(o,e.transform.x),t.block.setPositionY(o,e.transform.y),o},xt=bo;function _o(t,e,r){let n=r.engine,o=xt(n,e),i=n.block.getRotation(t),s=n.block.getPositionX(t),l=n.block.getPositionY(t),f=n.block.isSelected(t);switch(n.block.getType(t)){case"//ly.img.ubq/page":{let a=t,c=n.block.group(o);n.block.appendChild(a,c);let u=n.block.getFrameWidth(t)/n.block.getFrameWidth(c);n.block.setPositionX(c,s),n.block.setPositionY(c,l),n.block.setRotation(c,i),n.block.scale(c,u),n.block.setFillEnabled(a,!1),n.block.setSelected(c,f);break}case"//ly.img.ubq/graphic":default:{let a=n.block.getParent(t),c=n.block.group(o);n.block.appendChild(a,c);let u=n.block.getFrameWidth(t)/n.block.getFrameWidth(c);return n.block.setPositionX(c,s),n.block.setPositionY(c,l),n.block.setRotation(c,i),n.block.scale(c,u),n.block.destroy(t),n.block.setSelected(c,f),c}}}var Gt=_o;var mo=500;async function Lt(t,e,r){Nt(e,t,r,{async processFill(n){let o=n.initialSourceSet,i=n.initialImageFileURI,s=o.length>0?o[0].uri:i,l={signal:AbortSignal.timeout(3e4),options:{drop_transparent:!1}},f=await So(s),a=new Bt.SvgConverter(l);await a.convert(f);let c=JSON.parse(a.to_json());if(c.length<mo)return a.dispose(),c;{let u=a.to_svg(),g=new Blob([u],{type:"image/svg+xml"}),h=await ko(g,i,t);return a.dispose(),h}},commitProcessing(n,o){if(typeof n=="string"){let i=o.fillId;t.engine.block.setString(i,"fill/image/imageFileURI",n),t.engine.block.setSourceSet(i,"fill/image/sourceSet",[]),t.engine.block.setString(i,"fill/image/previewFileURI","")}else return Gt(e,n,t)}})}async function ko(t,e,r){let o=new URL(e).pathname.split("/"),i=o[o.length-1],l=(await r.unstable_upload(new File([t],i,{type:t.type}),()=>{})).meta?.uri;if(l==null)throw new Error("Could not upload processed fill");return l}async function So(t){return fetch(t).then(e=>e.blob())}var T="@imgly/plugin-vectorizer-web",Tt=(t={})=>({initialize(){},update(){},initializeUserInterface({cesdk:e}){Vt(e,{pluginId:T,process:(n,o)=>{Lt(e,n,o)}});let{translationsKeys:r}=Mt(e,{pluginId:T,icon:"@imgly/icons/Vectorize",locations:t.ui?.locations});e.setTranslations({en:{[r.canvasMenuLabel]:"Vectorizer"}})}});var jo=t=>({name:T,version:"0.1.0-rc.1",...Tt(t)}),Vo=jo;export{Vo as default};
1
+ var $t=class{constructor(t,e){this.cesdk=t,this.key=e}hasData(t){return this.cesdk.engine.block.isValid(t)&&this.cesdk.engine.block.hasMetadata(t,this.key)}get(t){if(this.hasData(t))return JSON.parse(this.cesdk.engine.block.getMetadata(t,this.key))}set(t,e){this.cesdk.engine.block.setMetadata(t,this.key,JSON.stringify(e))}clear(t){this.cesdk.engine.block.hasMetadata(t,this.key)&&this.cesdk.engine.block.removeMetadata(t,this.key)}},qt=$t,Kt=typeof global=="object"&&global&&global.Object===Object&&global,kt=Kt,Wt=typeof self=="object"&&self&&self.Object===Object&&self,Xt=kt||Wt||Function("return this")(),_=Xt,Yt=_.Symbol,j=Yt,St=Object.prototype,Jt=St.hasOwnProperty,Ht=St.toString,F=j?j.toStringTag:void 0;function Qt(t){var e=Jt.call(t,F),r=t[F];try{t[F]=void 0;var n=!0}catch{}var o=Ht.call(t);return n&&(e?t[F]=r:delete t[F]),o}var Zt=Qt,te=Object.prototype,ee=te.toString;function re(t){return ee.call(t)}var ne=re,ie="[object Null]",oe="[object Undefined]",tt=j?j.toStringTag:void 0;function ae(t){return t==null?t===void 0?oe:ie:tt&&tt in Object(t)?Zt(t):ne(t)}var A=ae;function se(t){return t!=null&&typeof t=="object"}var C=se,le=Array.isArray,M=le;function ce(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var jt=ce,ue="[object AsyncFunction]",fe="[object Function]",ge="[object GeneratorFunction]",pe="[object Proxy]";function ve(t){if(!jt(t))return!1;var e=A(t);return e==fe||e==ge||e==ue||e==pe}var It=ve,he=_["__core-js_shared__"],$=he,et=function(){var t=/[^.]+$/.exec($&&$.keys&&$.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function be(t){return!!et&&et in t}var de=be,ye=Function.prototype,_e=ye.toString;function me(t){if(t!=null){try{return _e.call(t)}catch{}try{return t+""}catch{}}return""}var S=me,ke=/[\\^$.*+?()[\]{}|]/g,Se=/^\[object .+?Constructor\]$/,je=Function.prototype,Ie=Object.prototype,Pe=je.toString,Oe=Ie.hasOwnProperty,we=RegExp("^"+Pe.call(Oe).replace(ke,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ee(t){if(!jt(t)||de(t))return!1;var e=It(t)?we:Se;return e.test(S(t))}var Fe=Ee;function Re(t,e){return t?.[e]}var Ce=Re;function De(t,e){var r=Ce(t,e);return Fe(r)?r:void 0}var I=De,ze=I(_,"WeakMap"),X=ze,Ae=9007199254740991,Ne=/^(?:0|[1-9]\d*)$/;function Ue(t,e){var r=typeof t;return e=e??Ae,!!e&&(r=="number"||r!="symbol"&&Ne.test(t))&&t>-1&&t%1==0&&t<e}var Ve=Ue;function Me(t,e){return t===e||t!==t&&e!==e}var Pt=Me,xe=9007199254740991;function Ge(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=xe}var Ot=Ge;function Be(t){return t!=null&&Ot(t.length)&&!It(t)}var Le=Be,Te=Object.prototype;function $e(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||Te;return t===r}var qe=$e;function Ke(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}var We=Ke,Xe="[object Arguments]";function Ye(t){return C(t)&&A(t)==Xe}var rt=Ye,wt=Object.prototype,Je=wt.hasOwnProperty,He=wt.propertyIsEnumerable,Qe=rt(function(){return arguments}())?rt:function(t){return C(t)&&Je.call(t,"callee")&&!He.call(t,"callee")},Ze=Qe;function tr(){return!1}var er=tr,Et=typeof exports=="object"&&exports&&!exports.nodeType&&exports,nt=Et&&typeof module=="object"&&module&&!module.nodeType&&module,rr=nt&&nt.exports===Et,it=rr?_.Buffer:void 0,nr=it?it.isBuffer:void 0,ir=nr||er,Y=ir,or="[object Arguments]",ar="[object Array]",sr="[object Boolean]",lr="[object Date]",cr="[object Error]",ur="[object Function]",fr="[object Map]",gr="[object Number]",pr="[object Object]",vr="[object RegExp]",hr="[object Set]",br="[object String]",dr="[object WeakMap]",yr="[object ArrayBuffer]",_r="[object DataView]",mr="[object Float32Array]",kr="[object Float64Array]",Sr="[object Int8Array]",jr="[object Int16Array]",Ir="[object Int32Array]",Pr="[object Uint8Array]",Or="[object Uint8ClampedArray]",wr="[object Uint16Array]",Er="[object Uint32Array]",p={};p[mr]=p[kr]=p[Sr]=p[jr]=p[Ir]=p[Pr]=p[Or]=p[wr]=p[Er]=!0;p[or]=p[ar]=p[yr]=p[sr]=p[_r]=p[lr]=p[cr]=p[ur]=p[fr]=p[gr]=p[pr]=p[vr]=p[hr]=p[br]=p[dr]=!1;function Fr(t){return C(t)&&Ot(t.length)&&!!p[A(t)]}var Rr=Fr;function Cr(t){return function(e){return t(e)}}var Dr=Cr,Ft=typeof exports=="object"&&exports&&!exports.nodeType&&exports,R=Ft&&typeof module=="object"&&module&&!module.nodeType&&module,zr=R&&R.exports===Ft,q=zr&&kt.process,Ar=function(){try{var t=R&&R.require&&R.require("util").types;return t||q&&q.binding&&q.binding("util")}catch{}}(),ot=Ar,at=ot&&ot.isTypedArray,Nr=at?Dr(at):Rr,Rt=Nr,Ur=Object.prototype,Vr=Ur.hasOwnProperty;function Mr(t,e){var r=M(t),n=!r&&Ze(t),o=!r&&!n&&Y(t),i=!r&&!n&&!o&&Rt(t),s=r||n||o||i,l=s?We(t.length,String):[],f=l.length;for(var a in t)(e||Vr.call(t,a))&&!(s&&(a=="length"||o&&(a=="offset"||a=="parent")||i&&(a=="buffer"||a=="byteLength"||a=="byteOffset")||Ve(a,f)))&&l.push(a);return l}var xr=Mr;function Gr(t,e){return function(r){return t(e(r))}}var Br=Gr,Lr=Br(Object.keys,Object),Tr=Lr,$r=Object.prototype,qr=$r.hasOwnProperty;function Kr(t){if(!qe(t))return Tr(t);var e=[];for(var r in Object(t))qr.call(t,r)&&r!="constructor"&&e.push(r);return e}var Wr=Kr;function Xr(t){return Le(t)?xr(t):Wr(t)}var Yr=Xr,Jr=I(Object,"create"),D=Jr;function Hr(){this.__data__=D?D(null):{},this.size=0}var Qr=Hr;function Zr(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var tn=Zr,en="__lodash_hash_undefined__",rn=Object.prototype,nn=rn.hasOwnProperty;function on(t){var e=this.__data__;if(D){var r=e[t];return r===en?void 0:r}return nn.call(e,t)?e[t]:void 0}var an=on,sn=Object.prototype,ln=sn.hasOwnProperty;function cn(t){var e=this.__data__;return D?e[t]!==void 0:ln.call(e,t)}var un=cn,fn="__lodash_hash_undefined__";function gn(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=D&&e===void 0?fn:e,this}var pn=gn;function P(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}P.prototype.clear=Qr;P.prototype.delete=tn;P.prototype.get=an;P.prototype.has=un;P.prototype.set=pn;var st=P;function vn(){this.__data__=[],this.size=0}var hn=vn;function bn(t,e){for(var r=t.length;r--;)if(Pt(t[r][0],e))return r;return-1}var G=bn,dn=Array.prototype,yn=dn.splice;function _n(t){var e=this.__data__,r=G(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():yn.call(e,r,1),--this.size,!0}var mn=_n;function kn(t){var e=this.__data__,r=G(e,t);return r<0?void 0:e[r][1]}var Sn=kn;function jn(t){return G(this.__data__,t)>-1}var In=jn;function Pn(t,e){var r=this.__data__,n=G(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var On=Pn;function O(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}O.prototype.clear=hn;O.prototype.delete=mn;O.prototype.get=Sn;O.prototype.has=In;O.prototype.set=On;var B=O,wn=I(_,"Map"),z=wn;function En(){this.size=0,this.__data__={hash:new st,map:new(z||B),string:new st}}var Fn=En;function Rn(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var Cn=Rn;function Dn(t,e){var r=t.__data__;return Cn(e)?r[typeof e=="string"?"string":"hash"]:r.map}var L=Dn;function zn(t){var e=L(this,t).delete(t);return this.size-=e?1:0,e}var An=zn;function Nn(t){return L(this,t).get(t)}var Un=Nn;function Vn(t){return L(this,t).has(t)}var Mn=Vn;function xn(t,e){var r=L(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}var Gn=xn;function w(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}w.prototype.clear=Fn;w.prototype.delete=An;w.prototype.get=Un;w.prototype.has=Mn;w.prototype.set=Gn;var Ct=w;function Bn(t,e){for(var r=-1,n=e.length,o=t.length;++r<n;)t[o+r]=e[r];return t}var Ln=Bn;function Tn(){this.__data__=new B,this.size=0}var $n=Tn;function qn(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var Kn=qn;function Wn(t){return this.__data__.get(t)}var Xn=Wn;function Yn(t){return this.__data__.has(t)}var Jn=Yn,Hn=200;function Qn(t,e){var r=this.__data__;if(r instanceof B){var n=r.__data__;if(!z||n.length<Hn-1)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new Ct(n)}return r.set(t,e),this.size=r.size,this}var Zn=Qn;function E(t){var e=this.__data__=new B(t);this.size=e.size}E.prototype.clear=$n;E.prototype.delete=Kn;E.prototype.get=Xn;E.prototype.has=Jn;E.prototype.set=Zn;var K=E;function ti(t,e){for(var r=-1,n=t==null?0:t.length,o=0,i=[];++r<n;){var s=t[r];e(s,r,t)&&(i[o++]=s)}return i}var ei=ti;function ri(){return[]}var ni=ri,ii=Object.prototype,oi=ii.propertyIsEnumerable,lt=Object.getOwnPropertySymbols,ai=lt?function(t){return t==null?[]:(t=Object(t),ei(lt(t),function(e){return oi.call(t,e)}))}:ni,si=ai;function li(t,e,r){var n=e(t);return M(t)?n:Ln(n,r(t))}var ci=li;function ui(t){return ci(t,Yr,si)}var ct=ui,fi=I(_,"DataView"),J=fi,gi=I(_,"Promise"),H=gi,pi=I(_,"Set"),Q=pi,ut="[object Map]",vi="[object Object]",ft="[object Promise]",gt="[object Set]",pt="[object WeakMap]",vt="[object DataView]",hi=S(J),bi=S(z),di=S(H),yi=S(Q),_i=S(X),k=A;(J&&k(new J(new ArrayBuffer(1)))!=vt||z&&k(new z)!=ut||H&&k(H.resolve())!=ft||Q&&k(new Q)!=gt||X&&k(new X)!=pt)&&(k=function(t){var e=A(t),r=e==vi?t.constructor:void 0,n=r?S(r):"";if(n)switch(n){case hi:return vt;case bi:return ut;case di:return ft;case yi:return gt;case _i:return pt}return e});var ht=k,mi=_.Uint8Array,bt=mi,ki="__lodash_hash_undefined__";function Si(t){return this.__data__.set(t,ki),this}var ji=Si;function Ii(t){return this.__data__.has(t)}var Pi=Ii;function x(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new Ct;++e<r;)this.add(t[e])}x.prototype.add=x.prototype.push=ji;x.prototype.has=Pi;var Oi=x;function wi(t,e){for(var r=-1,n=t==null?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}var Ei=wi;function Fi(t,e){return t.has(e)}var Ri=Fi,Ci=1,Di=2;function zi(t,e,r,n,o,i){var s=r&Ci,l=t.length,f=e.length;if(l!=f&&!(s&&f>l))return!1;var a=i.get(t),c=i.get(e);if(a&&c)return a==e&&c==t;var u=-1,g=!0,h=r&Di?new Oi:void 0;for(i.set(t,e),i.set(e,t);++u<l;){var v=t[u],b=e[u];if(n)var d=s?n(b,v,u,e,t,i):n(v,b,u,t,e,i);if(d!==void 0){if(d)continue;g=!1;break}if(h){if(!Ei(e,function(y,m){if(!Ri(h,m)&&(v===y||o(v,y,r,n,i)))return h.push(m)})){g=!1;break}}else if(!(v===b||o(v,b,r,n,i))){g=!1;break}}return i.delete(t),i.delete(e),g}var Dt=zi;function Ai(t){var e=-1,r=Array(t.size);return t.forEach(function(n,o){r[++e]=[o,n]}),r}var Ni=Ai;function Ui(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}var Vi=Ui,Mi=1,xi=2,Gi="[object Boolean]",Bi="[object Date]",Li="[object Error]",Ti="[object Map]",$i="[object Number]",qi="[object RegExp]",Ki="[object Set]",Wi="[object String]",Xi="[object Symbol]",Yi="[object ArrayBuffer]",Ji="[object DataView]",dt=j?j.prototype:void 0,W=dt?dt.valueOf:void 0;function Hi(t,e,r,n,o,i,s){switch(r){case Ji:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case Yi:return!(t.byteLength!=e.byteLength||!i(new bt(t),new bt(e)));case Gi:case Bi:case $i:return Pt(+t,+e);case Li:return t.name==e.name&&t.message==e.message;case qi:case Wi:return t==e+"";case Ti:var l=Ni;case Ki:var f=n&Mi;if(l||(l=Vi),t.size!=e.size&&!f)return!1;var a=s.get(t);if(a)return a==e;n|=xi,s.set(t,e);var c=Dt(l(t),l(e),n,o,i,s);return s.delete(t),c;case Xi:if(W)return W.call(t)==W.call(e)}return!1}var Qi=Hi,Zi=1,to=Object.prototype,eo=to.hasOwnProperty;function ro(t,e,r,n,o,i){var s=r&Zi,l=ct(t),f=l.length,a=ct(e),c=a.length;if(f!=c&&!s)return!1;for(var u=f;u--;){var g=l[u];if(!(s?g in e:eo.call(e,g)))return!1}var h=i.get(t),v=i.get(e);if(h&&v)return h==e&&v==t;var b=!0;i.set(t,e),i.set(e,t);for(var d=s;++u<f;){g=l[u];var y=t[g],m=e[g];if(n)var Z=s?n(m,y,g,e,t,i):n(y,m,g,t,e,i);if(!(Z===void 0?y===m||o(y,m,r,n,i):Z)){b=!1;break}d||(d=g=="constructor")}if(b&&!d){var N=t.constructor,U=e.constructor;N!=U&&"constructor"in t&&"constructor"in e&&!(typeof N=="function"&&N instanceof N&&typeof U=="function"&&U instanceof U)&&(b=!1)}return i.delete(t),i.delete(e),b}var no=ro,io=1,yt="[object Arguments]",_t="[object Array]",V="[object Object]",oo=Object.prototype,mt=oo.hasOwnProperty;function ao(t,e,r,n,o,i){var s=M(t),l=M(e),f=s?_t:ht(t),a=l?_t:ht(e);f=f==yt?V:f,a=a==yt?V:a;var c=f==V,u=a==V,g=f==a;if(g&&Y(t)){if(!Y(e))return!1;s=!0,c=!1}if(g&&!c)return i||(i=new K),s||Rt(t)?Dt(t,e,r,n,o,i):Qi(t,e,f,r,n,o,i);if(!(r&io)){var h=c&&mt.call(t,"__wrapped__"),v=u&&mt.call(e,"__wrapped__");if(h||v){var b=h?t.value():t,d=v?e.value():e;return i||(i=new K),o(b,d,r,n,i)}}return g?(i||(i=new K),no(t,e,r,n,o,i)):!1}var so=ao;function zt(t,e,r,n,o){return t===e?!0:t==null||e==null||!C(t)&&!C(e)?t!==t&&e!==e:so(t,e,r,n,zt,o)}var lo=zt;function co(t,e){return lo(t,e)}var uo=co,fo=class extends qt{get(t){return super.get(t)??{status:"IDLE"}}isDuplicate(t){if(!this.cesdk.engine.block.isValid(t))return!1;let e=this.get(t);if(e.status==="IDLE"||e.status==="PENDING"||e.status==="ERROR"||!this.cesdk.engine.block.hasFill(t))return!1;let r=this.cesdk.engine.block.getFill(t);return!(e.blockId===t||e.fillId===r)}fixDuplicate(t){let e=this.cesdk.engine.block.getFill(t),r=this.get(t);r.status==="IDLE"||r.status==="PENDING"||r.status==="ERROR"||(this.set(t,{...r,blockId:t,fillId:e}),r.status==="PROCESSING"&&(this.recoverInitialImageData(t),this.clear(t)))}isConsistent(t){if(!this.cesdk.engine.block.isValid(t))return!1;let e=this.get(t);if(e.status==="IDLE"||e.status==="PENDING")return!0;if(!this.cesdk.engine.block.hasFill(t))return!1;let r=this.cesdk.engine.block.getFill(t);if(r==null||t!==e.blockId||r!==e.fillId)return!1;let n=this.cesdk.engine.block.getSourceSet(r,"fill/image/sourceSet"),o=this.cesdk.engine.block.getString(r,"fill/image/imageFileURI");if(n.length===0&&!o&&e.status==="PROCESSING")return!0;if(n?.length>0){let i=e.initialSourceSet;if(e.status!=="PROCESSED"&&!uo(n,i))return!1}else if(e.status!=="PROCESSED"&&o!==e.initialImageFileURI)return!1;return!0}recoverInitialImageData(t){if(!this.cesdk.engine.block.hasFill(t))return;let e=this.get(t);if(e.status==="PENDING"||e.status==="IDLE")return;let r=e.initialSourceSet,n=e.initialImageFileURI,o=e.initialPreviewFileURI,i=this.getValidFill(t,e);i!=null&&(n&&this.cesdk.engine.block.setString(i,"fill/image/imageFileURI",n),o&&this.cesdk.engine.block.setString(i,"fill/image/previewFileURI",o),r.length>0&&this.cesdk.engine.block.setSourceSet(i,"fill/image/sourceSet",r))}getValidFill(t,e){if(!this.cesdk.engine.block.isValid(t)||!this.cesdk.engine.block.hasFill(t)||t!==e.blockId)return;let r=this.cesdk.engine.block.getFill(t);if(r===e.fillId)return r}},At=fo;async function go(t,e,r,n){let o=e.engine.block;if(!o.hasFill(t))throw new Error("Block does not support fill");let i=o.getFill(t),s=o.getSourceSet(i,"fill/image/sourceSet"),l=o.getString(i,"fill/image/imageFileURI"),f=o.getString(i,"fill/image/previewFileURI");try{e.engine.block.setState(i,{type:"Pending",progress:0});let a={...r.get(t),version:"0.0.0",initialSourceSet:s,initialImageFileURI:l,initialPreviewFileURI:f,blockId:t,fillId:i,status:"PROCESSING"};r.set(t,a);let c=await n.processFill(a);if(r.get(t).status!=="PROCESSING"||!r.isConsistent(t)||r.get(t).status!=="PROCESSING"||!r.isConsistent(t)||c==null)return;let u={version:"0.0.0",initialSourceSet:s,initialImageFileURI:l,initialPreviewFileURI:f,blockId:t,fillId:i,status:"PROCESSED"},g=n.commitProcessing(c,u);(g==null||g===t)&&r.set(t,u),e.engine.editor.addUndoStep()}catch(a){if(e.engine.block.isValid(t)&&(r.set(t,{version:"0.0.0",initialSourceSet:s,initialImageFileURI:l,initialPreviewFileURI:f,blockId:t,fillId:i,status:"ERROR"}),r.recoverInitialImageData(t)),a!=null&&typeof a=="object"&&"message"in a&&typeof a.message=="string"){let c=a.message==="signal timed out"?"Processing canceled due to timeout":a.message;e.ui.showNotification({type:"error",message:c})}console.log(a)}finally{e.engine.block.isValid(i)&&e.engine.block.setState(i,{type:"Ready"})}}var Nt=go;function Ut(t){return`${t}.fillProcessing.feature`}function po(t){return`${t}.fillProcessing.canvasMenu`}function vo(t){return`plugin.${t}.fillProcessing.canvasMenu.button.label`}function Vt(t,{pluginId:e,process:r}){let n=Ut(e),o=new At(t,e);return ho(t,o,n),t.engine.event.subscribe([],async i=>{i.forEach(s=>{let l=s.block;if(!(!t.engine.block.isValid(l)||!o.hasData(l))){if(s.type==="Created")o.isDuplicate(l)&&o.fixDuplicate(l);else if(s.type==="Updated")switch(o.get(l).status){case"PENDING":{t.feature.unstable_isEnabled(n,{engine:t.engine})&&t.engine.block.isAllowedByScope(l,"fill/change")&&t.engine.block.getState(l).type!=="Pending"&&r(l,o);break}case"PROCESSING":case"PROCESSED":{o.isConsistent(l)||o.clear(l);break}default:}}})}),{featureId:n}}function ho(t,e,r){t.feature.unstable_enable(r,({engine:n})=>{let o=n.block.findAllSelected();if(o.length!==1)return!1;let[i]=o;if(!t.engine.block.isVisible(i))return!1;if(t.engine.block.hasFill(i)){if(t.engine.block.getKind(i)==="sticker")return!1;let s=t.engine.block.getFill(i);if(t.engine.block.getType(s)!=="//ly.img.ubq/fill/image")return!1;let l=n.block.getString(s,"fill/image/imageFileURI");return n.block.getSourceSet(s,"fill/image/sourceSet").length>0||l!==""?!0:e.get(i).status==="PROCESSING"}return!1})}function Mt(t,e){let{pluginId:r,locations:n}=e,o=new At(t,r),i=po(r),s=vo(r),l=Ut(r);return n?.includes("canvasMenu")&&t.ui.unstable_setCanvasMenuOrder([i,...t.ui.unstable_getCanvasMenuOrder()]),t.ui.unstable_registerComponent(i,({builder:{Button:f},engine:a})=>{if(!t.feature.unstable_isEnabled(l,{engine:a}))return;let[c]=a.block.findAllSelected();if(!t.engine.block.isAllowedByScope(c,"fill/change"))return;let u=o.get(c),g=u.status==="PROCESSING",h=u.status==="PENDING"||u.status==="PROCESSING"||a.block.getState(c)?.type==="Pending",v;if(g&&u.progress){let{current:d,total:y}=u.progress;v=d/y*100}let b=`${i}.button`;f(b,{label:s,icon:e.icon,isLoading:g,isDisabled:h,loadingProgress:v,onClick:()=>{(u.status==="IDLE"||u.status==="ERROR"||u.status==="PROCESSED")&&o.set(c,{status:"PENDING"})}})}),{canvasMenuComponentId:i,translationsKeys:{canvasMenuLabel:s}}}import*as Bt from"@imgly/vectorizer";var bo=(t,e)=>e.map(n=>yo(t,n)),yo=(t,e)=>{let r=e.shape.path,n=e.fill.color,o=t.block.create("//ly.img.ubq/graphic");t.block.setKind(o,"shape");let i=t.block.createShape("//ly.img.ubq/shape/vector_path");t.block.setShape(o,i),t.block.setString(i,"vector_path/path",r),t.block.setFloat(i,"vector_path/width",e.transform.width),t.block.setFloat(i,"vector_path/height",e.transform.height);let s=t.block.createFill("color");return t.block.setColor(s,"fill/color/value",{r:n[0],g:n[1],b:n[2],a:n[3]}),t.block.setFill(o,s),t.block.setFloat(o,"width",e.transform.width),t.block.setFloat(o,"height",e.transform.height),t.block.setPositionX(o,e.transform.x),t.block.setPositionY(o,e.transform.y),o},xt=bo;function _o(t,e,r){let n=r.engine,o=xt(n,e),i=n.block.getRotation(t),s=n.block.getPositionX(t),l=n.block.getPositionY(t),f=n.block.isSelected(t);switch(n.block.getType(t)){case"//ly.img.ubq/page":{let a=t,c=n.block.group(o);n.block.appendChild(a,c);let u=n.block.getFrameWidth(t)/n.block.getFrameWidth(c);n.block.setPositionX(c,s),n.block.setPositionY(c,l),n.block.setRotation(c,i),n.block.scale(c,u),n.block.setFillEnabled(a,!1),n.block.setSelected(c,f);break}case"//ly.img.ubq/graphic":default:{let a=n.block.getParent(t),c=n.block.group(o);n.block.appendChild(a,c);let u=n.block.getFrameWidth(t)/n.block.getFrameWidth(c);return n.block.setPositionX(c,s),n.block.setPositionY(c,l),n.block.setRotation(c,i),n.block.scale(c,u),n.block.destroy(t),n.block.setSelected(c,f),c}}}var Gt=_o;var mo=500;async function Lt(t,e,r){Nt(e,t,r,{async processFill(n){let o=n.initialSourceSet,i=n.initialImageFileURI,s=o.length>0?o[0].uri:i,l={signal:AbortSignal.timeout(3e4),options:{drop_transparent:!1}},f=await So(s),a=new Bt.SvgConverter(l);await a.convert(f);let c=JSON.parse(a.to_json());if(c.length<mo)return a.dispose(),c;{let u=a.to_svg(),g=new Blob([u],{type:"image/svg+xml"}),h=await ko(g,i,t);return a.dispose(),h}},commitProcessing(n,o){if(typeof n=="string"){let i=o.fillId;t.engine.block.setString(i,"fill/image/imageFileURI",n),t.engine.block.setSourceSet(i,"fill/image/sourceSet",[]),t.engine.block.setString(i,"fill/image/previewFileURI","")}else return Gt(e,n,t)}})}async function ko(t,e,r){let o=new URL(e).pathname.split("/"),i=o[o.length-1],l=(await r.unstable_upload(new File([t],i,{type:t.type}),()=>{})).meta?.uri;if(l==null)throw new Error("Could not upload processed fill");return l}async function So(t){return fetch(t).then(e=>e.blob())}var T="@imgly/plugin-vectorizer-web",Tt=(t={})=>({initialize(){},update(){},initializeUserInterface({cesdk:e}){Vt(e,{pluginId:T,process:(n,o)=>{Lt(e,n,o)}});let{translationsKeys:r}=Mt(e,{pluginId:T,icon:"@imgly/icons/Vectorize",locations:t.ui?.locations});e.setTranslations({en:{[r.canvasMenuLabel]:"Vectorizer"}})}});var jo=t=>({name:T,version:"0.1.0-rc.2",...Tt(t)}),Vo=jo;export{Vo as default};
2
2
  /*! Bundled license information:
3
3
 
4
4
  lodash-es/lodash.js:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@imgly/plugin-vectorizer-web",
3
- "version": "0.1.0-rc.1",
3
+ "version": "0.1.0-rc.2",
4
4
  "description": "Vectorizer plugin for the CE.SDK editor",
5
5
  "keywords": [
6
6
  "CE.SDK",
@@ -66,6 +66,6 @@
66
66
  "@cesdk/cesdk-js": "~1.21.0"
67
67
  },
68
68
  "dependencies": {
69
- "@imgly/vectorizer": "0.1.0-rc12"
69
+ "@imgly/vectorizer": "0.1.0-rc13"
70
70
  }
71
71
  }