@imgly/plugin-ai-video-generation-web 1.76.0-rc.3 → 1.76.0
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/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.mjs
CHANGED
|
@@ -63,7 +63,7 @@ Consider updating all AI plugins to the same version for optimal compatibility.`
|
|
|
63
63
|
</symbol>
|
|
64
64
|
</svg>
|
|
65
65
|
`,So=Ao;function xo(e){return async(t,r,i)=>e.enable?(console.log(`[DRY RUN]: Requesting dummy AI generation for kind '${e.kind}' with inputs: `,JSON.stringify(t,void 0,2)),await qt(2e3),await Co(t,e,r)):i(t,r)}async function Co(e,t,r){switch(t.kind){case"image":return Eo(e,t,r);case"video":return $o(e,t,r);case"text":return Mo(e,t,r);case"audio":return To(e,t,r);default:throw new Error(`Unsupported output kind for creating dry run output: ${t.kind}`)}}async function Eo(e,t,{engine:r}){let i,n,o=e!=null&&typeof e=="object"&&"prompt"in e&&typeof e.prompt=="string"?e.prompt:"AI Generated Image",a=o.match(/(\d+)x(\d+)/);if(a!=null)i=parseInt(a[1],10),n=parseInt(a[2],10);else if(t.blockInputs!=null&&(i=t.blockInputs.image.width,n=t.blockInputs.image.height),t.blockIds!=null&&Array.isArray(t.blockIds)&&t.blockIds.length>0){let[s]=t.blockIds,c=await Ia(s,r),l=await ka(c,r);i=l.width,n=l.height}else i=512,n=512;return{kind:"image",url:`https://placehold.co/${i}x${n}/000000/FFF?text=${o.replace(" ","+").replace(`
|
|
66
|
-
`,"+")}`}}async function $o(e,t,r){return Promise.resolve({kind:"video",url:"https://storage.googleapis.com/gtv-videos-bucket/sample/ForBiggerBlazes.mp4"})}async function Mo(e,t,r){let i="";if(t.blockIds&&t.blockIds.length>0){let[a]=t.blockIds;r.engine.block.isValid(a)&&(i=r.engine.block.getString(a,"text/text"))}if(!i&&e!=null&&typeof e=="object"&&"prompt"in e&&typeof e.prompt=="string"){let a=e.prompt,s=a.match(/text:\s*"([^"]+)"/i)||a.match(/content:\s*"([^"]+)"/i)||a.match(/"([^"]+)"/);s&&s[1]&&(i=s[1])}let n=i.length||50,o="";if(e!=null&&typeof e=="object")if("language"in e&&typeof e.language=="string")o=ee(n,"translation");else if("type"in e&&typeof e.type=="string"){let a=e.type;o=ee(n,a)}else"customPrompt"in e?o=ee(n,"custom"):o=ee(n,"improved");else o=ee(n,"generated");return jo(o,r.abortSignal)}async function*jo(e,t){let r=Math.max(1,Math.ceil(e.length/20)),i=0;for(;i<e.length;){if(t?.aborted)return;let n=Math.min(i+r,e.length);yield{kind:"text",text:e.substring(0,n)},i=n,i<e.length&&await qt(100)}return{kind:"text",text:e}}function ee(e,t){let r="[DRY RUN - Dummy Text] ",i=r.length;if(e<=i)return r.substring(0,e);let n=e-i,o={translation:"Ceci est un texte fictif traduit qui maintient la longueur approximative.",professional:"Enhanced professional content with improved clarity and structure.",casual:"Relaxed, friendly text that keeps things simple and approachable.",formal:"Refined formal documentation that preserves original structure.",humorous:"Amusing content that brings lighthearted fun to the text.",improved:"Enhanced text that demonstrates better clarity and readability.",custom:"Customized content reflecting the requested modifications.",generated:"AI-generated content maintaining original length and structure."},a=o[t]||o.generated,s="";if(n<=a.length)s=a.substring(0,n);else{s=a;let c=[" Additional content continues with similar phrasing."," Further elaboration maintains the established tone."," Extended content preserves the original style."," Continued text follows the same pattern."],l=0;for(;s.length<n;){let u=c[l%c.length];if(s.length+u.length<=n)s+=u;else{s+=u.substring(0,n-s.length);break}l++}}return r+s}async function To(e,t,r){let i=3;if(e!=null&&typeof e=="object"){if("duration"in e&&typeof e.duration=="number")i=e.duration;else if("prompt"in e&&typeof e.prompt=="string"){let n=e.prompt.match(/(\d+)\s*(?:seconds?|secs?|s)\b/i);n&&(i=parseInt(n[1],10))}}return t.blockInputs?.audio?.duration&&(i=t.blockInputs.audio.duration),{kind:"audio",url:_o(220,i),duration:i,thumbnailUrl:void 0}}function _o(e,t){let r=Math.floor(44100*t),i=new Float32Array(r);for(let n=0;n<r;n++)i[n]=Math.sin(2*Math.PI*e*n/44100);return Lo(i,44100)}function Lo(e,t){let r=e.length,i=2,n=1,o=n*i,a=t*o,s=r*i,c=44+s,l=new ArrayBuffer(c),u=new DataView(l),d=(p,y)=>{for(let v=0;v<y.length;v++)u.setUint8(p+v,y.charCodeAt(v))};d(0,"RIFF"),u.setUint32(4,c-8,!0),d(8,"WAVE"),d(12,"fmt "),u.setUint32(16,16,!0),u.setUint16(20,1,!0),u.setUint16(22,n,!0),u.setUint32(24,t,!0),u.setUint32(28,a,!0),u.setUint16(32,o,!0),u.setUint16(34,16,!0),d(36,"data"),u.setUint32(40,s,!0);let f=44;for(let p=0;p<r;p++){let y=Math.max(-1,Math.min(1,e[p])),v=Math.round(y*32767);u.setInt16(f,v,!0),f+=2}let g=new Uint8Array(l),m="";for(let p=0;p<g.length;p++)m+=String.fromCharCode(g[p]);return`data:audio/wav;base64,${btoa(m)}`}async function qt(e){return new Promise(t=>{setTimeout(t,e)})}var Po=xo,No="USER_CANCEL";function Oo(e){return async(t,r)=>{if(r?.abortSignal?.aborted)return{status:"aborted"};let i=Ca([...e.provider.output.middleware??[],...r?.middlewares??[],$a({enable:r?.debug}),Po({enable:r?.dryRun,kind:e.provider.kind})]),n={prevented:!1},o={blockIds:r?.blockIds,abortSignal:r?.abortSignal,engine:e.engine,cesdk:e.cesdk,preventDefault:()=>{n.prevented=!0},defaultPrevented:()=>n.prevented};try{let{result:a}=await i(e.provider.output.generate)(t,o);return r?.abortSignal?.aborted?{status:"aborted",middlewareOptions:o}:a instanceof Error?{status:"error",message:a.message,middlewareOptions:o}:a==null?{status:"error",message:"No output generated",middlewareOptions:o}:_a(a)?{status:"success",type:"async",output:a,middlewareOptions:o}:{status:"success",type:"sync",output:a,middlewareOptions:o}}catch(a){return Be(a)?{status:"aborted",message:a.message,middlewareOptions:o}:a===No?{status:"aborted",message:a,middlewareOptions:o}:{status:"error",message:a instanceof Error?a.message:String(a),middlewareOptions:o}}}}var Do=Oo;async function zo(e,t,r,i){let n={...i,provider:t},o={provider:t,panelInput:t.input?.panel,options:{cesdk:r.cesdk,engine:r.cesdk.engine},config:n,providerConfig:t.configuration};if(await t.initialize?.({...r,engine:r.cesdk.engine}),t.input?.quickActions?.supported){let d=t.kind,f=ce.get();Object.keys(t.input.quickActions.supported).forEach(g=>{if(!f.getBy({id:g,type:"quick"})[0]){let m=`ly.img.plugin-ai-${d}-generation-web.quickAction.${g}`;r.cesdk.feature.enable(m,!0)}})}let a=wo(o),s=Io(o,a);o.options.historyAssetSourceId=a,o.options.historyAssetLibraryEntryId=s;let c=Do({provider:t,cesdk:r.cesdk,engine:r.cesdk.engine}),l=await bo(o,c);La(r.cesdk,"@imgly/plugin-ai-generation",So);let u={provider:t,panel:{builderRenderFunction:l},history:{assetSourceId:a,assetLibraryEntryId:s},generate:c};return xa.get().register(u),u}var Pe=zo;function Ro(e){let{kind:t,cesdk:r,historAssetSourceIds:i}=e,n=`ly.img.ai.${t}-generation.history`;if(r.engine.asset.findAllSources().includes(n))return n;let o=new Ar(n,r,i);return r.engine.asset.addSource(o),o.id}var Fo=Ro;function re(e,t){return[`ly.img.plugin-ai-${e}-generation-web.${t}`,`ly.img.plugin-ai-generation-web.${t}`,`ly.img.plugin-ai-generation-web.defaults.${t}`]}async function Vo(e,t,r,i){let{cesdk:n}=r;P(n,{en:{"ly.img.plugin-ai-generation-web.generate":"Generate","ly.img.plugin-ai-generation-web.defaults.fromType.label":"Input","ly.img.plugin-ai-generation-web.defaults.providerSelect.label":"Provider","ly.img.plugin-ai-generation-web.defaults.fromText.label":"Text","ly.img.plugin-ai-generation-web.defaults.fromImage.label":"Image","ly.img.plugin-ai-generation-web.schema.loading.label":"Loading\u2026","ly.img.plugin-ai-generation-web.schema.error.title":"Failed to load schema","ly.img.plugin-ai-generation-web.schema.error.retry":"Retry"}});let o,a=[];if(i.debug&&console.groupCollapsed(`Initializing ${e} generation providers`),Array.isArray(t)){let l=await Promise.all(t.map(u=>Pe(e,u,r,i)));a.push(...l),o=Bo({kind:e,prefix:e,providerInitializationResults:a,cesdk:n})}else{let l=await Promise.all(t.fromText.map(d=>Pe(e,d,r,i)));a.push(...l);let u=await Promise.all(t.fromImage.map(d=>Pe(e,d,r,i)));a.push(...u),o=Uo({kind:e,prefix:`ly.img.ai.${e}-generation`,initializedFromTextProviders:l,initializedFromImageProviders:u,cesdk:n})}i.debug&&console.groupEnd();let s=Fo({kind:e,cesdk:r.cesdk,historAssetSourceIds:a.map(l=>l.history?.assetSourceId).filter(Sa)}),c;return s!=null&&(c=s,r.cesdk.ui.addAssetLibraryEntry({id:c,sourceIds:[s],sortBy:{sortKey:"insertedAt",sortingOrder:"Descending"},canRemove:!0,gridItemHeight:"square",gridBackgroundType:"cover"})),{panel:{builderRenderFunction:o},history:{assetSourceId:s,assetLibraryEntryId:c},providerInitializationResults:a}}function Uo({kind:e,prefix:t,initializedFromTextProviders:r,initializedFromImageProviders:i,cesdk:n}){let o=r.length>0&&i.length>0;return a=>{let{builder:s,experimental:c,engine:l}=a,u=`ly.img.plugin-ai-${e}-generation-web.fromText`,d=n.feature.isEnabled(u,{engine:l}),f=`ly.img.plugin-ai-${e}-generation-web.fromImage`,g=n.feature.isEnabled(f,{engine:l}),m;d&&r.length>0&&(!g||i.length===0)?m="fromText":g&&i.length>0&&(!d||r.length===0)?m="fromImage":d&&g&&o&&(m="fromText");let p=c.global(`${t}.fromType`,m),y=[];p.value==="fromText"?y.push(...r):p.value==="fromImage"?y.push(...i):y.push(...r,...i);let v=r.map(({provider:A,panel:C})=>({id:A.id,label:Fe(A),builderRenderFunction:C?.builderRenderFunction})),I=i.map(({provider:A,panel:C})=>({id:A.id,label:Fe(A),builderRenderFunction:C?.builderRenderFunction})),S=a.experimental.global(`${t}.selectedProvider.fromText`,v[0]?.id),x=a.experimental.global(`${t}.selectedProvider.fromImage`,I[0]?.id),b=v.find(A=>A.id===S.value)??v[0],E=I.find(A=>A.id===x.value)??I[0],he=p.value==="fromText"?S:p.value==="fromImage"?x:void 0,D=p.value==="fromText"?b:p.value==="fromImage"?E:void 0,be=`ly.img.plugin-ai-${e}-generation-web.providerSelect`,$e=n.feature.isEnabled(be,{engine:l});if(!d&&!g){s.Section(`${t}.noInputWarning.section`,{children:()=>{s.Text(`${t}.noInputWarning.text`,{content:"No input types are enabled. Please enable at least one input type (text or image) via the Feature API."})}});return}let T=d&&g&&r.length>0&&i.length>0,h=o&&T,$=y.length>1&&$e;if((h||$)&&s.Section(`${t}.providerSelection.section`,{children:()=>{if(h&&s.ButtonGroup(`${t}.fromType.buttonGroup`,{inputLabel:re(e,"fromType.label"),children:()=>{d&&r.length>0&&s.Button(`${t}.fromType.buttonGroup.fromText`,{label:re(e,"fromText.label"),icon:p.value!=="fromText"&&kt(r,a)?"@imgly/LoadingSpinner":void 0,isActive:p.value==="fromText",onClick:()=>{p.setValue("fromText")}}),g&&i.length>0&&s.Button(`${t}.fromType.buttonGroup.fromImage`,{label:re(e,"fromImage.label"),icon:p.value!=="fromImage"&&kt(i,a)?"@imgly/LoadingSpinner":void 0,isActive:p.value==="fromImage",onClick:()=>{p.setValue("fromImage")}})}}),$){let A=p.value==="fromText"?v:p.value==="fromImage"?I:[...v,...I];he!=null&&D!=null&&s.Select(`${t}.providerSelect.select`,{inputLabel:re(e,"providerSelect.label"),values:A,value:D,setValue:C=>{he.setValue(C.id)}})}}}),y.length>1)D?.builderRenderFunction?.(a);else{let A=y[0];A&&A.panel?.builderRenderFunction?.(a)}}}function Bo({kind:e,prefix:t,providerInitializationResults:r,cesdk:i}){return n=>{let{builder:o,engine:a}=n;if(r.length===0)return;let s=`ly.img.plugin-ai-${e}-generation-web.providerSelect`;e==="audio"&&t&&(t.includes("speech")?s="ly.img.plugin-ai-audio-generation-web.speech.providerSelect":t.includes("sound")&&(s="ly.img.plugin-ai-audio-generation-web.sound.providerSelect"));let c=i.feature.isEnabled(s,{engine:a}),l=r.map(({provider:f,panel:g})=>({id:f.id,label:Fe(f),builderRenderFunction:g?.builderRenderFunction})),u=n.state(`${t}.selectedProvider`,l[0]?.id),d=l.find(f=>f.id===u.value)??l[0];r.length>1&&c&&u!=null&&d!=null&&o.Section(`${t}.providerSelection.section`,{children:()=>{o.Select(`${t}.providerSelect.select`,{inputLabel:re(e,"providerSelect.label"),values:l,value:d,setValue:f=>{u.setValue(f.id)}})}}),d?.builderRenderFunction?.(n)}}function kt(e,t){return e.length===0?!1:e.some(({provider:r})=>r.id==null?!1:t.experimental.global(qe(r.id),!1).value)}var Ht=Vo;var Go=typeof global=="object"&&global&&global.Object===Object&&global,lr=Go,qo=typeof self=="object"&&self&&self.Object===Object&&self,Ho=lr||qo||Function("return this")(),j=Ho,Qo=j.Symbol,Z=Qo,sr=Object.prototype,Zo=sr.hasOwnProperty,Ko=sr.toString,de=Z?Z.toStringTag:void 0;function Yo(e){var t=Zo.call(e,de),r=e[de];try{e[de]=void 0;var i=!0}catch{}var n=Ko.call(e);return i&&(t?e[de]=r:delete e[de]),n}var Wo=Yo,Jo=Object.prototype,Xo=Jo.toString;function el(e){return Xo.call(e)}var tl=el,rl="[object Null]",il="[object Undefined]",Qt=Z?Z.toStringTag:void 0;function nl(e){return e==null?e===void 0?il:rl:Qt&&Qt in Object(e)?Wo(e):tl(e)}var me=nl;function al(e){return e!=null&&typeof e=="object"}var Xe=al,vc=Array.isArray;function ol(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var ur=ol,ll="[object AsyncFunction]",sl="[object Function]",ul="[object GeneratorFunction]",cl="[object Proxy]";function dl(e){if(!ur(e))return!1;var t=me(e);return t==sl||t==ul||t==ll||t==cl}var gl=dl,pl=j["__core-js_shared__"],He=pl,Zt=function(){var e=/[^.]+$/.exec(He&&He.keys&&He.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function fl(e){return!!Zt&&Zt in e}var ml=fl,yl=Function.prototype,hl=yl.toString;function bl(e){if(e!=null){try{return hl.call(e)}catch{}try{return e+""}catch{}}return""}var R=bl,vl=/[\\^$.*+?()[\]{}|]/g,wl=/^\[object .+?Constructor\]$/,kl=Function.prototype,Il=Object.prototype,Al=kl.toString,Sl=Il.hasOwnProperty,xl=RegExp("^"+Al.call(Sl).replace(vl,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Cl(e){if(!ur(e)||ml(e))return!1;var t=gl(e)?xl:wl;return t.test(R(e))}var El=Cl;function $l(e,t){return e?.[t]}var Ml=$l;function jl(e,t){var r=Ml(e,t);return El(r)?r:void 0}var K=jl,Tl=K(j,"WeakMap"),Ze=Tl;function _l(e,t){return e===t||e!==e&&t!==t}var Ll=_l,Pl=9007199254740991;function Nl(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Pl}var Ol=Nl;var wc=Object.prototype;var Dl="[object Arguments]";function zl(e){return Xe(e)&&me(e)==Dl}var Kt=zl,cr=Object.prototype,Rl=cr.hasOwnProperty,Fl=cr.propertyIsEnumerable,kc=Kt(function(){return arguments}())?Kt:function(e){return Xe(e)&&Rl.call(e,"callee")&&!Fl.call(e,"callee")};var dr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Yt=dr&&typeof module=="object"&&module&&!module.nodeType&&module,Vl=Yt&&Yt.exports===dr,Wt=Vl?j.Buffer:void 0,Ic=Wt?Wt.isBuffer:void 0;var Ul="[object Arguments]",Bl="[object Array]",Gl="[object Boolean]",ql="[object Date]",Hl="[object Error]",Ql="[object Function]",Zl="[object Map]",Kl="[object Number]",Yl="[object Object]",Wl="[object RegExp]",Jl="[object Set]",Xl="[object String]",es="[object WeakMap]",ts="[object ArrayBuffer]",rs="[object DataView]",is="[object Float32Array]",ns="[object Float64Array]",as="[object Int8Array]",os="[object Int16Array]",ls="[object Int32Array]",ss="[object Uint8Array]",us="[object Uint8ClampedArray]",cs="[object Uint16Array]",ds="[object Uint32Array]",k={};k[is]=k[ns]=k[as]=k[os]=k[ls]=k[ss]=k[us]=k[cs]=k[ds]=!0;k[Ul]=k[Bl]=k[ts]=k[Gl]=k[rs]=k[ql]=k[Hl]=k[Ql]=k[Zl]=k[Kl]=k[Yl]=k[Wl]=k[Jl]=k[Xl]=k[es]=!1;function gs(e){return Xe(e)&&Ol(e.length)&&!!k[me(e)]}var ps=gs;function fs(e){return function(t){return e(t)}}var ms=fs,gr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ge=gr&&typeof module=="object"&&module&&!module.nodeType&&module,ys=ge&&ge.exports===gr,Qe=ys&&lr.process,hs=function(){try{var e=ge&&ge.require&&ge.require("util").types;return e||Qe&&Qe.binding&&Qe.binding("util")}catch{}}(),Jt=hs,Xt=Jt&&Jt.isTypedArray,Ac=Xt?ms(Xt):ps;var bs=Object.prototype,Sc=bs.hasOwnProperty;function vs(e,t){return function(r){return e(t(r))}}var ws=vs,xc=ws(Object.keys,Object);var ks=Object.prototype,Cc=ks.hasOwnProperty;var Is=K(Object,"create"),pe=Is;function As(){this.__data__=pe?pe(null):{},this.size=0}var Ss=As;function xs(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Cs=xs,Es="__lodash_hash_undefined__",$s=Object.prototype,Ms=$s.hasOwnProperty;function js(e){var t=this.__data__;if(pe){var r=t[e];return r===Es?void 0:r}return Ms.call(t,e)?t[e]:void 0}var Ts=js,_s=Object.prototype,Ls=_s.hasOwnProperty;function Ps(e){var t=this.__data__;return pe?t[e]!==void 0:Ls.call(t,e)}var Ns=Ps,Os="__lodash_hash_undefined__";function Ds(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=pe&&t===void 0?Os:t,this}var zs=Ds;function Y(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])}}Y.prototype.clear=Ss;Y.prototype.delete=Cs;Y.prototype.get=Ts;Y.prototype.has=Ns;Y.prototype.set=zs;var er=Y;function Rs(){this.__data__=[],this.size=0}var Fs=Rs;function Vs(e,t){for(var r=e.length;r--;)if(Ll(e[r][0],t))return r;return-1}var Ie=Vs,Us=Array.prototype,Bs=Us.splice;function Gs(e){var t=this.__data__,r=Ie(t,e);if(r<0)return!1;var i=t.length-1;return r==i?t.pop():Bs.call(t,r,1),--this.size,!0}var qs=Gs;function Hs(e){var t=this.__data__,r=Ie(t,e);return r<0?void 0:t[r][1]}var Qs=Hs;function Zs(e){return Ie(this.__data__,e)>-1}var Ks=Zs;function Ys(e,t){var r=this.__data__,i=Ie(r,e);return i<0?(++this.size,r.push([e,t])):r[i][1]=t,this}var Ws=Ys;function W(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])}}W.prototype.clear=Fs;W.prototype.delete=qs;W.prototype.get=Qs;W.prototype.has=Ks;W.prototype.set=Ws;var Ae=W,Js=K(j,"Map"),fe=Js;function Xs(){this.size=0,this.__data__={hash:new er,map:new(fe||Ae),string:new er}}var eu=Xs;function tu(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var ru=tu;function iu(e,t){var r=e.__data__;return ru(t)?r[typeof t=="string"?"string":"hash"]:r.map}var Se=iu;function nu(e){var t=Se(this,e).delete(e);return this.size-=t?1:0,t}var au=nu;function ou(e){return Se(this,e).get(e)}var lu=ou;function su(e){return Se(this,e).has(e)}var uu=su;function cu(e,t){var r=Se(this,e),i=r.size;return r.set(e,t),this.size+=r.size==i?0:1,this}var du=cu;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=eu;J.prototype.delete=au;J.prototype.get=lu;J.prototype.has=uu;J.prototype.set=du;var pr=J;function gu(){this.__data__=new Ae,this.size=0}var pu=gu;function fu(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var mu=fu;function yu(e){return this.__data__.get(e)}var hu=yu;function bu(e){return this.__data__.has(e)}var vu=bu,wu=200;function ku(e,t){var r=this.__data__;if(r instanceof Ae){var i=r.__data__;if(!fe||i.length<wu-1)return i.push([e,t]),this.size=++r.size,this;r=this.__data__=new pr(i)}return r.set(e,t),this.size=r.size,this}var Iu=ku;function ye(e){var t=this.__data__=new Ae(e);this.size=t.size}ye.prototype.clear=pu;ye.prototype.delete=mu;ye.prototype.get=hu;ye.prototype.has=vu;ye.prototype.set=Iu;var Au=Object.prototype,Ec=Au.propertyIsEnumerable;var Su=K(j,"DataView"),Ke=Su,xu=K(j,"Promise"),Ye=xu,Cu=K(j,"Set"),We=Cu,tr="[object Map]",Eu="[object Object]",rr="[object Promise]",ir="[object Set]",nr="[object WeakMap]",ar="[object DataView]",$u=R(Ke),Mu=R(fe),ju=R(Ye),Tu=R(We),_u=R(Ze),Q=me;(Ke&&Q(new Ke(new ArrayBuffer(1)))!=ar||fe&&Q(new fe)!=tr||Ye&&Q(Ye.resolve())!=rr||We&&Q(new We)!=ir||Ze&&Q(new Ze)!=nr)&&(Q=function(e){var t=me(e),r=t==Eu?e.constructor:void 0,i=r?R(r):"";if(i)switch(i){case $u:return ar;case Mu:return tr;case ju:return rr;case Tu:return ir;case _u:return nr}return t});var $c=j.Uint8Array;var Lu="__lodash_hash_undefined__";function Pu(e){return this.__data__.set(e,Lu),this}var Nu=Pu;function Ou(e){return this.__data__.has(e)}var Du=Ou;function Je(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new pr;++t<r;)this.add(e[t])}Je.prototype.add=Je.prototype.push=Nu;Je.prototype.has=Du;var or=Z?Z.prototype:void 0,Mc=or?or.valueOf:void 0;var zu=Object.prototype,jc=zu.hasOwnProperty;var Ru=Object.prototype,Tc=Ru.hasOwnProperty;var _c=new RegExp(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,"i"),Lc=new RegExp(/[A-Fa-f0-9]{1}/,"g"),Pc=new RegExp(/[A-Fa-f0-9]{2}/,"g");async function Fu(e,t){if(e.startsWith("buffer:")){let r=await t.editor.getMimeType(e),i=t.editor.getBufferLength(e),n=t.editor.getBufferData(e,0,i),o=new Uint8Array(n),a=new Blob([o],{type:r});return URL.createObjectURL(a)}else return e}async function xe(e,t,r){let i,n=t.block.getFill(e),o=t.block.getSourceSet(n,"fill/image/sourceSet"),[a]=o;if(a==null){if(i=t.block.getString(n,"fill/image/imageFileURI"),i==null)throw new Error("No image source/uri found")}else i=a.uri;if(r?.throwErrorIfSvg&&await t.editor.getMimeType(i)==="image/svg+xml")throw new Error("SVG images are not supported");return Fu(i,t)}function Vu(e){return e==null?[]:Array.isArray(e)?e:[e]}var et=Vu;function Uu(e){return e?.version?e.version.localeCompare("1.59.0",void 0,{numeric:!0,sensitivity:"base"})>=0&&typeof e.i18n?.translate=="function":!1}function Bu(e){return typeof e?.translate=="function"}function fr(e,t,r){return e&&Uu(e)&&Bu(e.i18n)?e.i18n.translate(t):r}var N="@imgly/plugin-ai-video-generation-web",Gu=["ly.img.createVideo","ly.img.animateBetweenImages"];var Ce="createVideo",mr=`ly.img.${Ce}`,qu=`ly.img.plugin-ai-video-generation-web.quickAction.${Ce}`,yr=`ly.img.plugin-ai-video-generation-web.defaults.quickAction.${Ce}`;function Hu(e,t){let r="ly.img.plugin-ai-video-generation-web",i=`quickAction.${Ce}`,n=t?`${i}.${t}`:i;return[`${r}.${e}.${n}`,`${r}.${n}`,`${r}.${e}.defaults.${n}`,`${r}.defaults.${n}`]}var Qu=({cesdk:e})=>(e.feature.enable("ly.img.plugin-ai-image-generation-web.quickAction.createVideo",!0),P(e,{en:{[`${yr}`]:"Create Video...",[`${yr}.description`]:"Create a video from the image"}}),{id:mr,type:"quick",kind:"image",label:`${qu}`,enable:Nt(),scopes:[],render:({builder:r,engine:i,close:n,providerId:o})=>{r.Button(`${mr}.button`,{label:Hu(o),icon:"@imgly/plugin-ai-generation/video",labelAlignment:"left",variant:"plain",onClick:async()=>{try{let[a]=i.block.findAllSelected(),s=await xe(a,i,{throwErrorIfSvg:!0});e.ui.openPanel("ly.img.ai.video-generation"),e.ui.experimental.setGlobalStateValue("ly.img.ai.video-generation.fromType","fromImage"),e.ui.experimental.setGlobalStateValue(`${o}.image_urls`,s),n()}catch(a){console.error("Error opening video generation panel:",a)}}})}}),hr=Qu;var Ee="animateBetweenImages",br=`ly.img.${Ee}`,Zu=`ly.img.plugin-ai-video-generation-web.quickAction.${Ee}`,vr=`ly.img.plugin-ai-video-generation-web.defaults.quickAction.${Ee}`;function Ku(e,t){let r="ly.img.plugin-ai-video-generation-web",i=`quickAction.${Ee}`,n=t?`${i}.${t}`:i;return[`${r}.${e}.${n}`,`${r}.${n}`,`${r}.${e}.defaults.${n}`,`${r}.defaults.${n}`]}var Yu=({cesdk:e})=>(e.feature.enable("ly.img.plugin-ai-image-generation-web.quickAction.animateBetweenImages",!0),P(e,{en:{[`${vr}`]:"Animate Between Images...",[`${vr}.description`]:"Create a video transitioning between two images"}}),{id:br,type:"quick",kind:"image",label:`${Zu}`,enable:r=>{let i=r.engine.block.findAllSelected();return i==null||i.length!==2?!1:i.every(n=>{if(r.engine.block.getType(n)!=="//ly.img.ubq/graphic"&&!r.engine.block.supportsFill(n))return!1;let o=r.engine.block.getFill(n);return!(r.engine.block.getType(o)!=="//ly.img.ubq/fill/image"||r.engine.block.getType(n)==="//ly.img.ubq/page")})},scopes:[],render:({builder:r,engine:i,close:n,providerId:o})=>{r.Button(`${br}.button`,{label:Ku(o),icon:"@imgly/plugin-ai-generation/video",labelAlignment:"left",variant:"plain",onClick:async()=>{try{let a=i.block.findAllSelected();if(a.length!==2)throw new Error("Exactly 2 images must be selected");let[s,c]=await Promise.all(a.map(u=>xe(u,i,{throwErrorIfSvg:!0}))),l="fal-ai/veo3.1/fast/first-last-frame-to-video";e.ui.experimental.setGlobalStateValue("ly.img.ai.video-generation.selectedProvider.fromImage",l),e.ui.experimental.setGlobalStateValue(`${l}.first_frame_url`,s),e.ui.experimental.setGlobalStateValue(`${l}.last_frame_url`,c),e.ui.experimental.setGlobalStateValue("ly.img.ai.video-generation.fromType","fromImage"),e.ui.openPanel("ly.img.ai.video-generation"),n()}catch(a){console.error("Error opening video generation panel:",a),e.ui.showNotification({type:"error",message:a.message||"Failed to open video generation panel. Please try again.",duration:"medium"})}}})}}),wr=Yu;var O="ly.img.ai.video-generation";function Wu(e){return{async initialize({cesdk:t}){if(t==null)return;Lt(t,N,"1.76.0-rc.3"),t.feature.enable("ly.img.plugin-ai-video-generation-web.fromText",!0),t.feature.enable("ly.img.plugin-ai-video-generation-web.fromImage",!0),t.feature.enable("ly.img.plugin-ai-video-generation-web.providerSelect",!0),t.feature.enable("ly.img.plugin-ai-video-generation-web.quickAction",!0),t.feature.enable("ly.img.plugin-ai-video-generation-web.quickAction.providerSelect",!0);let r=`${N}.action.label`;P(t,{en:{[`panel.${O}`]:"Video Generation",[`${O}.dock.label`]:"AI Video",[r]:"Generate Video","ly.img.ai.video.generation.hint":"Video generation may take up to a few minutes. This panel can be closed and you'll be notified when it's ready."}}),Ju(e);let n=ce.get().register({type:"plugin",sceneMode:"Video",id:N,pluginId:N,label:fr(t,r,"Generate Video"),labelKey:r,meta:{panelId:O},execute:()=>{t.ui.isPanelOpen(O)?t.ui.closePanel(O):t.ui.openPanel(O)}}),o=e.providers?.text2video??e.text2video,a=e.providers?.image2video??e.image2video,s=await Promise.all(et(o).map(d=>d({cesdk:t}))),c=await Promise.all(et(a).map(d=>d({cesdk:t})));if(!(s.length>0||c.length>0)){n();return}let u=await Ht("video",{fromText:s,fromImage:c},{cesdk:t},e);ce.get().register(hr({cesdk:t})),ce.get().register(wr({cesdk:t})),u.panel.builderRenderFunction!=null?(t.ui.registerPanel(O,u.panel.builderRenderFunction),Pt({cesdk:t,panelId:O})):n()}}}function Ju(e){e.debug&&(e.providers?.text2video!=null&&e.text2video!=null&&console.warn("[VideoGeneration]: Both `providers.text2video` and `text2video` configuration is provided. Since `text2video` is deprecated, only `providers.text2video` will be used."),e.providers?.image2video!=null&&e.image2video!=null&&console.warn("[VideoGeneration]: Both `providers.image2video` and `image2video` configuration is provided. Since `image2video` is deprecated, only `providers.image2video` will be used."))}var kr=Wu;var Xu=e=>({name:N,version:"1.76.0-rc.3",...kr(e)}),td=Xu;export{Gu as DEFAULT_VIDEO_QUICK_ACTION_ORDER,td as default};
|
|
66
|
+
`,"+")}`}}async function $o(e,t,r){return Promise.resolve({kind:"video",url:"https://storage.googleapis.com/gtv-videos-bucket/sample/ForBiggerBlazes.mp4"})}async function Mo(e,t,r){let i="";if(t.blockIds&&t.blockIds.length>0){let[a]=t.blockIds;r.engine.block.isValid(a)&&(i=r.engine.block.getString(a,"text/text"))}if(!i&&e!=null&&typeof e=="object"&&"prompt"in e&&typeof e.prompt=="string"){let a=e.prompt,s=a.match(/text:\s*"([^"]+)"/i)||a.match(/content:\s*"([^"]+)"/i)||a.match(/"([^"]+)"/);s&&s[1]&&(i=s[1])}let n=i.length||50,o="";if(e!=null&&typeof e=="object")if("language"in e&&typeof e.language=="string")o=ee(n,"translation");else if("type"in e&&typeof e.type=="string"){let a=e.type;o=ee(n,a)}else"customPrompt"in e?o=ee(n,"custom"):o=ee(n,"improved");else o=ee(n,"generated");return jo(o,r.abortSignal)}async function*jo(e,t){let r=Math.max(1,Math.ceil(e.length/20)),i=0;for(;i<e.length;){if(t?.aborted)return;let n=Math.min(i+r,e.length);yield{kind:"text",text:e.substring(0,n)},i=n,i<e.length&&await qt(100)}return{kind:"text",text:e}}function ee(e,t){let r="[DRY RUN - Dummy Text] ",i=r.length;if(e<=i)return r.substring(0,e);let n=e-i,o={translation:"Ceci est un texte fictif traduit qui maintient la longueur approximative.",professional:"Enhanced professional content with improved clarity and structure.",casual:"Relaxed, friendly text that keeps things simple and approachable.",formal:"Refined formal documentation that preserves original structure.",humorous:"Amusing content that brings lighthearted fun to the text.",improved:"Enhanced text that demonstrates better clarity and readability.",custom:"Customized content reflecting the requested modifications.",generated:"AI-generated content maintaining original length and structure."},a=o[t]||o.generated,s="";if(n<=a.length)s=a.substring(0,n);else{s=a;let c=[" Additional content continues with similar phrasing."," Further elaboration maintains the established tone."," Extended content preserves the original style."," Continued text follows the same pattern."],l=0;for(;s.length<n;){let u=c[l%c.length];if(s.length+u.length<=n)s+=u;else{s+=u.substring(0,n-s.length);break}l++}}return r+s}async function To(e,t,r){let i=3;if(e!=null&&typeof e=="object"){if("duration"in e&&typeof e.duration=="number")i=e.duration;else if("prompt"in e&&typeof e.prompt=="string"){let n=e.prompt.match(/(\d+)\s*(?:seconds?|secs?|s)\b/i);n&&(i=parseInt(n[1],10))}}return t.blockInputs?.audio?.duration&&(i=t.blockInputs.audio.duration),{kind:"audio",url:_o(220,i),duration:i,thumbnailUrl:void 0}}function _o(e,t){let r=Math.floor(44100*t),i=new Float32Array(r);for(let n=0;n<r;n++)i[n]=Math.sin(2*Math.PI*e*n/44100);return Lo(i,44100)}function Lo(e,t){let r=e.length,i=2,n=1,o=n*i,a=t*o,s=r*i,c=44+s,l=new ArrayBuffer(c),u=new DataView(l),d=(p,y)=>{for(let v=0;v<y.length;v++)u.setUint8(p+v,y.charCodeAt(v))};d(0,"RIFF"),u.setUint32(4,c-8,!0),d(8,"WAVE"),d(12,"fmt "),u.setUint32(16,16,!0),u.setUint16(20,1,!0),u.setUint16(22,n,!0),u.setUint32(24,t,!0),u.setUint32(28,a,!0),u.setUint16(32,o,!0),u.setUint16(34,16,!0),d(36,"data"),u.setUint32(40,s,!0);let f=44;for(let p=0;p<r;p++){let y=Math.max(-1,Math.min(1,e[p])),v=Math.round(y*32767);u.setInt16(f,v,!0),f+=2}let g=new Uint8Array(l),m="";for(let p=0;p<g.length;p++)m+=String.fromCharCode(g[p]);return`data:audio/wav;base64,${btoa(m)}`}async function qt(e){return new Promise(t=>{setTimeout(t,e)})}var Po=xo,No="USER_CANCEL";function Oo(e){return async(t,r)=>{if(r?.abortSignal?.aborted)return{status:"aborted"};let i=Ca([...e.provider.output.middleware??[],...r?.middlewares??[],$a({enable:r?.debug}),Po({enable:r?.dryRun,kind:e.provider.kind})]),n={prevented:!1},o={blockIds:r?.blockIds,abortSignal:r?.abortSignal,engine:e.engine,cesdk:e.cesdk,preventDefault:()=>{n.prevented=!0},defaultPrevented:()=>n.prevented};try{let{result:a}=await i(e.provider.output.generate)(t,o);return r?.abortSignal?.aborted?{status:"aborted",middlewareOptions:o}:a instanceof Error?{status:"error",message:a.message,middlewareOptions:o}:a==null?{status:"error",message:"No output generated",middlewareOptions:o}:_a(a)?{status:"success",type:"async",output:a,middlewareOptions:o}:{status:"success",type:"sync",output:a,middlewareOptions:o}}catch(a){return Be(a)?{status:"aborted",message:a.message,middlewareOptions:o}:a===No?{status:"aborted",message:a,middlewareOptions:o}:{status:"error",message:a instanceof Error?a.message:String(a),middlewareOptions:o}}}}var Do=Oo;async function zo(e,t,r,i){let n={...i,provider:t},o={provider:t,panelInput:t.input?.panel,options:{cesdk:r.cesdk,engine:r.cesdk.engine},config:n,providerConfig:t.configuration};if(await t.initialize?.({...r,engine:r.cesdk.engine}),t.input?.quickActions?.supported){let d=t.kind,f=ce.get();Object.keys(t.input.quickActions.supported).forEach(g=>{if(!f.getBy({id:g,type:"quick"})[0]){let m=`ly.img.plugin-ai-${d}-generation-web.quickAction.${g}`;r.cesdk.feature.enable(m,!0)}})}let a=wo(o),s=Io(o,a);o.options.historyAssetSourceId=a,o.options.historyAssetLibraryEntryId=s;let c=Do({provider:t,cesdk:r.cesdk,engine:r.cesdk.engine}),l=await bo(o,c);La(r.cesdk,"@imgly/plugin-ai-generation",So);let u={provider:t,panel:{builderRenderFunction:l},history:{assetSourceId:a,assetLibraryEntryId:s},generate:c};return xa.get().register(u),u}var Pe=zo;function Ro(e){let{kind:t,cesdk:r,historAssetSourceIds:i}=e,n=`ly.img.ai.${t}-generation.history`;if(r.engine.asset.findAllSources().includes(n))return n;let o=new Ar(n,r,i);return r.engine.asset.addSource(o),o.id}var Fo=Ro;function re(e,t){return[`ly.img.plugin-ai-${e}-generation-web.${t}`,`ly.img.plugin-ai-generation-web.${t}`,`ly.img.plugin-ai-generation-web.defaults.${t}`]}async function Vo(e,t,r,i){let{cesdk:n}=r;P(n,{en:{"ly.img.plugin-ai-generation-web.generate":"Generate","ly.img.plugin-ai-generation-web.defaults.fromType.label":"Input","ly.img.plugin-ai-generation-web.defaults.providerSelect.label":"Provider","ly.img.plugin-ai-generation-web.defaults.fromText.label":"Text","ly.img.plugin-ai-generation-web.defaults.fromImage.label":"Image","ly.img.plugin-ai-generation-web.schema.loading.label":"Loading\u2026","ly.img.plugin-ai-generation-web.schema.error.title":"Failed to load schema","ly.img.plugin-ai-generation-web.schema.error.retry":"Retry"}});let o,a=[];if(i.debug&&console.groupCollapsed(`Initializing ${e} generation providers`),Array.isArray(t)){let l=await Promise.all(t.map(u=>Pe(e,u,r,i)));a.push(...l),o=Bo({kind:e,prefix:e,providerInitializationResults:a,cesdk:n})}else{let l=await Promise.all(t.fromText.map(d=>Pe(e,d,r,i)));a.push(...l);let u=await Promise.all(t.fromImage.map(d=>Pe(e,d,r,i)));a.push(...u),o=Uo({kind:e,prefix:`ly.img.ai.${e}-generation`,initializedFromTextProviders:l,initializedFromImageProviders:u,cesdk:n})}i.debug&&console.groupEnd();let s=Fo({kind:e,cesdk:r.cesdk,historAssetSourceIds:a.map(l=>l.history?.assetSourceId).filter(Sa)}),c;return s!=null&&(c=s,r.cesdk.ui.addAssetLibraryEntry({id:c,sourceIds:[s],sortBy:{sortKey:"insertedAt",sortingOrder:"Descending"},canRemove:!0,gridItemHeight:"square",gridBackgroundType:"cover"})),{panel:{builderRenderFunction:o},history:{assetSourceId:s,assetLibraryEntryId:c},providerInitializationResults:a}}function Uo({kind:e,prefix:t,initializedFromTextProviders:r,initializedFromImageProviders:i,cesdk:n}){let o=r.length>0&&i.length>0;return a=>{let{builder:s,experimental:c,engine:l}=a,u=`ly.img.plugin-ai-${e}-generation-web.fromText`,d=n.feature.isEnabled(u,{engine:l}),f=`ly.img.plugin-ai-${e}-generation-web.fromImage`,g=n.feature.isEnabled(f,{engine:l}),m;d&&r.length>0&&(!g||i.length===0)?m="fromText":g&&i.length>0&&(!d||r.length===0)?m="fromImage":d&&g&&o&&(m="fromText");let p=c.global(`${t}.fromType`,m),y=[];p.value==="fromText"?y.push(...r):p.value==="fromImage"?y.push(...i):y.push(...r,...i);let v=r.map(({provider:A,panel:C})=>({id:A.id,label:Fe(A),builderRenderFunction:C?.builderRenderFunction})),I=i.map(({provider:A,panel:C})=>({id:A.id,label:Fe(A),builderRenderFunction:C?.builderRenderFunction})),S=a.experimental.global(`${t}.selectedProvider.fromText`,v[0]?.id),x=a.experimental.global(`${t}.selectedProvider.fromImage`,I[0]?.id),b=v.find(A=>A.id===S.value)??v[0],E=I.find(A=>A.id===x.value)??I[0],he=p.value==="fromText"?S:p.value==="fromImage"?x:void 0,D=p.value==="fromText"?b:p.value==="fromImage"?E:void 0,be=`ly.img.plugin-ai-${e}-generation-web.providerSelect`,$e=n.feature.isEnabled(be,{engine:l});if(!d&&!g){s.Section(`${t}.noInputWarning.section`,{children:()=>{s.Text(`${t}.noInputWarning.text`,{content:"No input types are enabled. Please enable at least one input type (text or image) via the Feature API."})}});return}let T=d&&g&&r.length>0&&i.length>0,h=o&&T,$=y.length>1&&$e;if((h||$)&&s.Section(`${t}.providerSelection.section`,{children:()=>{if(h&&s.ButtonGroup(`${t}.fromType.buttonGroup`,{inputLabel:re(e,"fromType.label"),children:()=>{d&&r.length>0&&s.Button(`${t}.fromType.buttonGroup.fromText`,{label:re(e,"fromText.label"),icon:p.value!=="fromText"&&kt(r,a)?"@imgly/LoadingSpinner":void 0,isActive:p.value==="fromText",onClick:()=>{p.setValue("fromText")}}),g&&i.length>0&&s.Button(`${t}.fromType.buttonGroup.fromImage`,{label:re(e,"fromImage.label"),icon:p.value!=="fromImage"&&kt(i,a)?"@imgly/LoadingSpinner":void 0,isActive:p.value==="fromImage",onClick:()=>{p.setValue("fromImage")}})}}),$){let A=p.value==="fromText"?v:p.value==="fromImage"?I:[...v,...I];he!=null&&D!=null&&s.Select(`${t}.providerSelect.select`,{inputLabel:re(e,"providerSelect.label"),values:A,value:D,setValue:C=>{he.setValue(C.id)}})}}}),y.length>1)D?.builderRenderFunction?.(a);else{let A=y[0];A&&A.panel?.builderRenderFunction?.(a)}}}function Bo({kind:e,prefix:t,providerInitializationResults:r,cesdk:i}){return n=>{let{builder:o,engine:a}=n;if(r.length===0)return;let s=`ly.img.plugin-ai-${e}-generation-web.providerSelect`;e==="audio"&&t&&(t.includes("speech")?s="ly.img.plugin-ai-audio-generation-web.speech.providerSelect":t.includes("sound")&&(s="ly.img.plugin-ai-audio-generation-web.sound.providerSelect"));let c=i.feature.isEnabled(s,{engine:a}),l=r.map(({provider:f,panel:g})=>({id:f.id,label:Fe(f),builderRenderFunction:g?.builderRenderFunction})),u=n.state(`${t}.selectedProvider`,l[0]?.id),d=l.find(f=>f.id===u.value)??l[0];r.length>1&&c&&u!=null&&d!=null&&o.Section(`${t}.providerSelection.section`,{children:()=>{o.Select(`${t}.providerSelect.select`,{inputLabel:re(e,"providerSelect.label"),values:l,value:d,setValue:f=>{u.setValue(f.id)}})}}),d?.builderRenderFunction?.(n)}}function kt(e,t){return e.length===0?!1:e.some(({provider:r})=>r.id==null?!1:t.experimental.global(qe(r.id),!1).value)}var Ht=Vo;var Go=typeof global=="object"&&global&&global.Object===Object&&global,lr=Go,qo=typeof self=="object"&&self&&self.Object===Object&&self,Ho=lr||qo||Function("return this")(),j=Ho,Qo=j.Symbol,Z=Qo,sr=Object.prototype,Zo=sr.hasOwnProperty,Ko=sr.toString,de=Z?Z.toStringTag:void 0;function Yo(e){var t=Zo.call(e,de),r=e[de];try{e[de]=void 0;var i=!0}catch{}var n=Ko.call(e);return i&&(t?e[de]=r:delete e[de]),n}var Wo=Yo,Jo=Object.prototype,Xo=Jo.toString;function el(e){return Xo.call(e)}var tl=el,rl="[object Null]",il="[object Undefined]",Qt=Z?Z.toStringTag:void 0;function nl(e){return e==null?e===void 0?il:rl:Qt&&Qt in Object(e)?Wo(e):tl(e)}var me=nl;function al(e){return e!=null&&typeof e=="object"}var Xe=al,vc=Array.isArray;function ol(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var ur=ol,ll="[object AsyncFunction]",sl="[object Function]",ul="[object GeneratorFunction]",cl="[object Proxy]";function dl(e){if(!ur(e))return!1;var t=me(e);return t==sl||t==ul||t==ll||t==cl}var gl=dl,pl=j["__core-js_shared__"],He=pl,Zt=function(){var e=/[^.]+$/.exec(He&&He.keys&&He.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function fl(e){return!!Zt&&Zt in e}var ml=fl,yl=Function.prototype,hl=yl.toString;function bl(e){if(e!=null){try{return hl.call(e)}catch{}try{return e+""}catch{}}return""}var R=bl,vl=/[\\^$.*+?()[\]{}|]/g,wl=/^\[object .+?Constructor\]$/,kl=Function.prototype,Il=Object.prototype,Al=kl.toString,Sl=Il.hasOwnProperty,xl=RegExp("^"+Al.call(Sl).replace(vl,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Cl(e){if(!ur(e)||ml(e))return!1;var t=gl(e)?xl:wl;return t.test(R(e))}var El=Cl;function $l(e,t){return e?.[t]}var Ml=$l;function jl(e,t){var r=Ml(e,t);return El(r)?r:void 0}var K=jl,Tl=K(j,"WeakMap"),Ze=Tl;function _l(e,t){return e===t||e!==e&&t!==t}var Ll=_l,Pl=9007199254740991;function Nl(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Pl}var Ol=Nl;var wc=Object.prototype;var Dl="[object Arguments]";function zl(e){return Xe(e)&&me(e)==Dl}var Kt=zl,cr=Object.prototype,Rl=cr.hasOwnProperty,Fl=cr.propertyIsEnumerable,kc=Kt(function(){return arguments}())?Kt:function(e){return Xe(e)&&Rl.call(e,"callee")&&!Fl.call(e,"callee")};var dr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Yt=dr&&typeof module=="object"&&module&&!module.nodeType&&module,Vl=Yt&&Yt.exports===dr,Wt=Vl?j.Buffer:void 0,Ic=Wt?Wt.isBuffer:void 0;var Ul="[object Arguments]",Bl="[object Array]",Gl="[object Boolean]",ql="[object Date]",Hl="[object Error]",Ql="[object Function]",Zl="[object Map]",Kl="[object Number]",Yl="[object Object]",Wl="[object RegExp]",Jl="[object Set]",Xl="[object String]",es="[object WeakMap]",ts="[object ArrayBuffer]",rs="[object DataView]",is="[object Float32Array]",ns="[object Float64Array]",as="[object Int8Array]",os="[object Int16Array]",ls="[object Int32Array]",ss="[object Uint8Array]",us="[object Uint8ClampedArray]",cs="[object Uint16Array]",ds="[object Uint32Array]",k={};k[is]=k[ns]=k[as]=k[os]=k[ls]=k[ss]=k[us]=k[cs]=k[ds]=!0;k[Ul]=k[Bl]=k[ts]=k[Gl]=k[rs]=k[ql]=k[Hl]=k[Ql]=k[Zl]=k[Kl]=k[Yl]=k[Wl]=k[Jl]=k[Xl]=k[es]=!1;function gs(e){return Xe(e)&&Ol(e.length)&&!!k[me(e)]}var ps=gs;function fs(e){return function(t){return e(t)}}var ms=fs,gr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ge=gr&&typeof module=="object"&&module&&!module.nodeType&&module,ys=ge&&ge.exports===gr,Qe=ys&&lr.process,hs=function(){try{var e=ge&&ge.require&&ge.require("util").types;return e||Qe&&Qe.binding&&Qe.binding("util")}catch{}}(),Jt=hs,Xt=Jt&&Jt.isTypedArray,Ac=Xt?ms(Xt):ps;var bs=Object.prototype,Sc=bs.hasOwnProperty;function vs(e,t){return function(r){return e(t(r))}}var ws=vs,xc=ws(Object.keys,Object);var ks=Object.prototype,Cc=ks.hasOwnProperty;var Is=K(Object,"create"),pe=Is;function As(){this.__data__=pe?pe(null):{},this.size=0}var Ss=As;function xs(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Cs=xs,Es="__lodash_hash_undefined__",$s=Object.prototype,Ms=$s.hasOwnProperty;function js(e){var t=this.__data__;if(pe){var r=t[e];return r===Es?void 0:r}return Ms.call(t,e)?t[e]:void 0}var Ts=js,_s=Object.prototype,Ls=_s.hasOwnProperty;function Ps(e){var t=this.__data__;return pe?t[e]!==void 0:Ls.call(t,e)}var Ns=Ps,Os="__lodash_hash_undefined__";function Ds(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=pe&&t===void 0?Os:t,this}var zs=Ds;function Y(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])}}Y.prototype.clear=Ss;Y.prototype.delete=Cs;Y.prototype.get=Ts;Y.prototype.has=Ns;Y.prototype.set=zs;var er=Y;function Rs(){this.__data__=[],this.size=0}var Fs=Rs;function Vs(e,t){for(var r=e.length;r--;)if(Ll(e[r][0],t))return r;return-1}var Ie=Vs,Us=Array.prototype,Bs=Us.splice;function Gs(e){var t=this.__data__,r=Ie(t,e);if(r<0)return!1;var i=t.length-1;return r==i?t.pop():Bs.call(t,r,1),--this.size,!0}var qs=Gs;function Hs(e){var t=this.__data__,r=Ie(t,e);return r<0?void 0:t[r][1]}var Qs=Hs;function Zs(e){return Ie(this.__data__,e)>-1}var Ks=Zs;function Ys(e,t){var r=this.__data__,i=Ie(r,e);return i<0?(++this.size,r.push([e,t])):r[i][1]=t,this}var Ws=Ys;function W(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])}}W.prototype.clear=Fs;W.prototype.delete=qs;W.prototype.get=Qs;W.prototype.has=Ks;W.prototype.set=Ws;var Ae=W,Js=K(j,"Map"),fe=Js;function Xs(){this.size=0,this.__data__={hash:new er,map:new(fe||Ae),string:new er}}var eu=Xs;function tu(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var ru=tu;function iu(e,t){var r=e.__data__;return ru(t)?r[typeof t=="string"?"string":"hash"]:r.map}var Se=iu;function nu(e){var t=Se(this,e).delete(e);return this.size-=t?1:0,t}var au=nu;function ou(e){return Se(this,e).get(e)}var lu=ou;function su(e){return Se(this,e).has(e)}var uu=su;function cu(e,t){var r=Se(this,e),i=r.size;return r.set(e,t),this.size+=r.size==i?0:1,this}var du=cu;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=eu;J.prototype.delete=au;J.prototype.get=lu;J.prototype.has=uu;J.prototype.set=du;var pr=J;function gu(){this.__data__=new Ae,this.size=0}var pu=gu;function fu(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var mu=fu;function yu(e){return this.__data__.get(e)}var hu=yu;function bu(e){return this.__data__.has(e)}var vu=bu,wu=200;function ku(e,t){var r=this.__data__;if(r instanceof Ae){var i=r.__data__;if(!fe||i.length<wu-1)return i.push([e,t]),this.size=++r.size,this;r=this.__data__=new pr(i)}return r.set(e,t),this.size=r.size,this}var Iu=ku;function ye(e){var t=this.__data__=new Ae(e);this.size=t.size}ye.prototype.clear=pu;ye.prototype.delete=mu;ye.prototype.get=hu;ye.prototype.has=vu;ye.prototype.set=Iu;var Au=Object.prototype,Ec=Au.propertyIsEnumerable;var Su=K(j,"DataView"),Ke=Su,xu=K(j,"Promise"),Ye=xu,Cu=K(j,"Set"),We=Cu,tr="[object Map]",Eu="[object Object]",rr="[object Promise]",ir="[object Set]",nr="[object WeakMap]",ar="[object DataView]",$u=R(Ke),Mu=R(fe),ju=R(Ye),Tu=R(We),_u=R(Ze),Q=me;(Ke&&Q(new Ke(new ArrayBuffer(1)))!=ar||fe&&Q(new fe)!=tr||Ye&&Q(Ye.resolve())!=rr||We&&Q(new We)!=ir||Ze&&Q(new Ze)!=nr)&&(Q=function(e){var t=me(e),r=t==Eu?e.constructor:void 0,i=r?R(r):"";if(i)switch(i){case $u:return ar;case Mu:return tr;case ju:return rr;case Tu:return ir;case _u:return nr}return t});var $c=j.Uint8Array;var Lu="__lodash_hash_undefined__";function Pu(e){return this.__data__.set(e,Lu),this}var Nu=Pu;function Ou(e){return this.__data__.has(e)}var Du=Ou;function Je(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new pr;++t<r;)this.add(e[t])}Je.prototype.add=Je.prototype.push=Nu;Je.prototype.has=Du;var or=Z?Z.prototype:void 0,Mc=or?or.valueOf:void 0;var zu=Object.prototype,jc=zu.hasOwnProperty;var Ru=Object.prototype,Tc=Ru.hasOwnProperty;var _c=new RegExp(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,"i"),Lc=new RegExp(/[A-Fa-f0-9]{1}/,"g"),Pc=new RegExp(/[A-Fa-f0-9]{2}/,"g");async function Fu(e,t){if(e.startsWith("buffer:")){let r=await t.editor.getMimeType(e),i=t.editor.getBufferLength(e),n=t.editor.getBufferData(e,0,i),o=new Uint8Array(n),a=new Blob([o],{type:r});return URL.createObjectURL(a)}else return e}async function xe(e,t,r){let i,n=t.block.getFill(e),o=t.block.getSourceSet(n,"fill/image/sourceSet"),[a]=o;if(a==null){if(i=t.block.getString(n,"fill/image/imageFileURI"),i==null)throw new Error("No image source/uri found")}else i=a.uri;if(r?.throwErrorIfSvg&&await t.editor.getMimeType(i)==="image/svg+xml")throw new Error("SVG images are not supported");return Fu(i,t)}function Vu(e){return e==null?[]:Array.isArray(e)?e:[e]}var et=Vu;function Uu(e){return e?.version?e.version.localeCompare("1.59.0",void 0,{numeric:!0,sensitivity:"base"})>=0&&typeof e.i18n?.translate=="function":!1}function Bu(e){return typeof e?.translate=="function"}function fr(e,t,r){return e&&Uu(e)&&Bu(e.i18n)?e.i18n.translate(t):r}var N="@imgly/plugin-ai-video-generation-web",Gu=["ly.img.createVideo","ly.img.animateBetweenImages"];var Ce="createVideo",mr=`ly.img.${Ce}`,qu=`ly.img.plugin-ai-video-generation-web.quickAction.${Ce}`,yr=`ly.img.plugin-ai-video-generation-web.defaults.quickAction.${Ce}`;function Hu(e,t){let r="ly.img.plugin-ai-video-generation-web",i=`quickAction.${Ce}`,n=t?`${i}.${t}`:i;return[`${r}.${e}.${n}`,`${r}.${n}`,`${r}.${e}.defaults.${n}`,`${r}.defaults.${n}`]}var Qu=({cesdk:e})=>(e.feature.enable("ly.img.plugin-ai-image-generation-web.quickAction.createVideo",!0),P(e,{en:{[`${yr}`]:"Create Video...",[`${yr}.description`]:"Create a video from the image"}}),{id:mr,type:"quick",kind:"image",label:`${qu}`,enable:Nt(),scopes:[],render:({builder:r,engine:i,close:n,providerId:o})=>{r.Button(`${mr}.button`,{label:Hu(o),icon:"@imgly/plugin-ai-generation/video",labelAlignment:"left",variant:"plain",onClick:async()=>{try{let[a]=i.block.findAllSelected(),s=await xe(a,i,{throwErrorIfSvg:!0});e.ui.openPanel("ly.img.ai.video-generation"),e.ui.experimental.setGlobalStateValue("ly.img.ai.video-generation.fromType","fromImage"),e.ui.experimental.setGlobalStateValue(`${o}.image_urls`,s),n()}catch(a){console.error("Error opening video generation panel:",a)}}})}}),hr=Qu;var Ee="animateBetweenImages",br=`ly.img.${Ee}`,Zu=`ly.img.plugin-ai-video-generation-web.quickAction.${Ee}`,vr=`ly.img.plugin-ai-video-generation-web.defaults.quickAction.${Ee}`;function Ku(e,t){let r="ly.img.plugin-ai-video-generation-web",i=`quickAction.${Ee}`,n=t?`${i}.${t}`:i;return[`${r}.${e}.${n}`,`${r}.${n}`,`${r}.${e}.defaults.${n}`,`${r}.defaults.${n}`]}var Yu=({cesdk:e})=>(e.feature.enable("ly.img.plugin-ai-image-generation-web.quickAction.animateBetweenImages",!0),P(e,{en:{[`${vr}`]:"Animate Between Images...",[`${vr}.description`]:"Create a video transitioning between two images"}}),{id:br,type:"quick",kind:"image",label:`${Zu}`,enable:r=>{let i=r.engine.block.findAllSelected();return i==null||i.length!==2?!1:i.every(n=>{if(r.engine.block.getType(n)!=="//ly.img.ubq/graphic"&&!r.engine.block.supportsFill(n))return!1;let o=r.engine.block.getFill(n);return!(r.engine.block.getType(o)!=="//ly.img.ubq/fill/image"||r.engine.block.getType(n)==="//ly.img.ubq/page")})},scopes:[],render:({builder:r,engine:i,close:n,providerId:o})=>{r.Button(`${br}.button`,{label:Ku(o),icon:"@imgly/plugin-ai-generation/video",labelAlignment:"left",variant:"plain",onClick:async()=>{try{let a=i.block.findAllSelected();if(a.length!==2)throw new Error("Exactly 2 images must be selected");let[s,c]=await Promise.all(a.map(u=>xe(u,i,{throwErrorIfSvg:!0}))),l="fal-ai/veo3.1/fast/first-last-frame-to-video";e.ui.experimental.setGlobalStateValue("ly.img.ai.video-generation.selectedProvider.fromImage",l),e.ui.experimental.setGlobalStateValue(`${l}.first_frame_url`,s),e.ui.experimental.setGlobalStateValue(`${l}.last_frame_url`,c),e.ui.experimental.setGlobalStateValue("ly.img.ai.video-generation.fromType","fromImage"),e.ui.openPanel("ly.img.ai.video-generation"),n()}catch(a){console.error("Error opening video generation panel:",a),e.ui.showNotification({type:"error",message:a.message||"Failed to open video generation panel. Please try again.",duration:"medium"})}}})}}),wr=Yu;var O="ly.img.ai.video-generation";function Wu(e){return{async initialize({cesdk:t}){if(t==null)return;Lt(t,N,"1.76.0"),t.feature.enable("ly.img.plugin-ai-video-generation-web.fromText",!0),t.feature.enable("ly.img.plugin-ai-video-generation-web.fromImage",!0),t.feature.enable("ly.img.plugin-ai-video-generation-web.providerSelect",!0),t.feature.enable("ly.img.plugin-ai-video-generation-web.quickAction",!0),t.feature.enable("ly.img.plugin-ai-video-generation-web.quickAction.providerSelect",!0);let r=`${N}.action.label`;P(t,{en:{[`panel.${O}`]:"Video Generation",[`${O}.dock.label`]:"AI Video",[r]:"Generate Video","ly.img.ai.video.generation.hint":"Video generation may take up to a few minutes. This panel can be closed and you'll be notified when it's ready."}}),Ju(e);let n=ce.get().register({type:"plugin",sceneMode:"Video",id:N,pluginId:N,label:fr(t,r,"Generate Video"),labelKey:r,meta:{panelId:O},execute:()=>{t.ui.isPanelOpen(O)?t.ui.closePanel(O):t.ui.openPanel(O)}}),o=e.providers?.text2video??e.text2video,a=e.providers?.image2video??e.image2video,s=await Promise.all(et(o).map(d=>d({cesdk:t}))),c=await Promise.all(et(a).map(d=>d({cesdk:t})));if(!(s.length>0||c.length>0)){n();return}let u=await Ht("video",{fromText:s,fromImage:c},{cesdk:t},e);ce.get().register(hr({cesdk:t})),ce.get().register(wr({cesdk:t})),u.panel.builderRenderFunction!=null?(t.ui.registerPanel(O,u.panel.builderRenderFunction),Pt({cesdk:t,panelId:O})):n()}}}function Ju(e){e.debug&&(e.providers?.text2video!=null&&e.text2video!=null&&console.warn("[VideoGeneration]: Both `providers.text2video` and `text2video` configuration is provided. Since `text2video` is deprecated, only `providers.text2video` will be used."),e.providers?.image2video!=null&&e.image2video!=null&&console.warn("[VideoGeneration]: Both `providers.image2video` and `image2video` configuration is provided. Since `image2video` is deprecated, only `providers.image2video` will be used."))}var kr=Wu;var Xu=e=>({name:N,version:"1.76.0",...kr(e)}),td=Xu;export{Gu as DEFAULT_VIDEO_QUICK_ACTION_ORDER,td as default};
|
|
67
67
|
/*! Bundled license information:
|
|
68
68
|
|
|
69
69
|
lodash-es/lodash.js:
|