webim-adapter 2.4.4 → 2.6.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.
@@ -97,7 +97,7 @@ Error generating stack: `+e.message+`
97
97
  `),waves:[`void main(){`,` vec2 uv = gl_FragCoord.xy / u_res;`,` float t = u_time * 0.5;`,` float y = uv.y * u_scale;`,` float w = sin((uv.x * 6.0) + t) * 0.08 + sin((uv.x * 11.0) - (t * 1.3)) * 0.05;`,` float band = smoothstep(0.0, 1.0, y + w + (u_mouse.y * 0.1));`,` vec3 col = mix(u_a, u_b, band);`,` col += u_c * (0.12 * smoothstep(0.02, 0.0, abs(y + w - 0.5)));`,` gl_FragColor = vec4(col, 1.0);`,`}`].join(`
98
98
  `),plasma:[`void main(){`,` vec2 uv = gl_FragCoord.xy / u_res;`,` vec2 p = (uv - 0.5) * u_scale * 3.0 + u_mouse * 0.3;`,` float t = u_time * 0.2;`,` float n = fbm(p + vec2(fbm(p + t), fbm(p - t)));`,` vec3 col = mix(u_a, u_b, smoothstep(0.25, 0.75, n));`,` col = mix(col, u_c, smoothstep(0.6, 0.95, n));`,` gl_FragColor = vec4(col, 1.0);`,`}`].join(`
99
99
  `),grid:[`void main(){`,` vec2 uv = gl_FragCoord.xy / u_res;`,` vec2 sp = (gl_FragCoord.xy - 0.5 * u_res) / min(u_res.x, u_res.y);`,` float t = u_time * 0.15;`,` vec2 g = sp * (8.0 * u_scale);`,` g.y += t;`,` vec2 f = abs(fract(g) - 0.5);`,` float line = smoothstep(0.48, 0.5, max(f.x, f.y));`,` float glow = 1.0 - smoothstep(0.0, 0.9, length(sp - u_mouse * 0.4));`,` vec3 col = mix(u_a, u_b, line);`,` col += u_c * glow * 0.35;`,` gl_FragColor = vec4(col, 1.0);`,`}`].join(`
100
- `)};function rs(e,t){let n=/^#?([0-9a-f]{6})$/i.exec(String(e??``).trim());if(!n)return t;let r=parseInt(n[1],16);return[(r>>16&255)/255,(r>>8&255)/255,(r&255)/255]}function is(e,t,n){let r=e.createShader(t);if(e.shaderSource(r,n),e.compileShader(r),!e.getShaderParameter(r,e.COMPILE_STATUS)){let t=e.getShaderInfoLog(r);throw e.deleteShader(r),Error(t||`Shader failed to compile`)}return r}function as({preset:e,code:t,colorA:n,colorB:r,colorC:i,speed:a,scale:o,height:s,interactive:c,style:u,nodeRef:d,inert:f}){let p=(0,l.useRef)(null),m=(0,l.useRef)(null),h=(0,l.useRef)(null),[g,_]=(0,l.useState)(``);(0,l.useEffect)(()=>()=>{let e=h.current;h.current=null,e?.getExtension(`WEBGL_lose_context`)?.loseContext()},[]);let v=typeof t==`string`&&t.trim()?t:ns[e]??ns.gradient,y=String(n??``),b=String(r??``),x=String(i??``),S=Yo(a,100),C=Math.max(.05,Yo(o,100));return(0,l.useEffect)(()=>{let e=p.current,t=m.current;if(!e||!t)return;let n=h.current??=e.getContext(`webgl`,{antialias:!0,alpha:!0,premultipliedAlpha:!1});if(!n){_(`WebGL is not available in this browser`);return}let r=null;try{let e=is(n,n.VERTEX_SHADER,es),t=is(n,n.FRAGMENT_SHADER,ts+v);if(r=n.createProgram(),n.attachShader(r,e),n.attachShader(r,t),n.linkProgram(r),!n.getProgramParameter(r,n.LINK_STATUS))throw Error(n.getProgramInfoLog(r)||`Link failed`);_(``)}catch(e){_(e?.message||`Shader failed to compile`);return}n.useProgram(r);let i=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,i),n.bufferData(n.ARRAY_BUFFER,new Float32Array([-1,-1,3,-1,-1,3]),n.STATIC_DRAW);let a=n.getAttribLocation(r,`p`);n.enableVertexAttribArray(a),n.vertexAttribPointer(a,2,n.FLOAT,!1,0,0);let o=e=>n.getUniformLocation(r,e),s={res:o(`u_res`),time:o(`u_time`),mouse:o(`u_mouse`),a:o(`u_a`),b:o(`u_b`),c:o(`u_c`),scale:o(`u_scale`)},l={x:0,y:0},u=t=>{let n=e.getBoundingClientRect();!n.width||!n.height||(l.x=((t.clientX-n.left)/n.width-.5)*2,l.y=(.5-(t.clientY-n.top)/n.height)*2)};c!==!1&&t.addEventListener(`pointermove`,u);let d=()=>{let r=Go(),i=Math.max(1,Math.round(t.clientWidth*r)),a=Math.max(1,Math.round(t.clientHeight*r));(e.width!==i||e.height!==a)&&(e.width=i,e.height=a,n.viewport(0,0,i,a))},f=typeof ResizeObserver>`u`?null:new ResizeObserver(d);f?.observe(t),d();let g=Wo(),w={a:rs(y,[.35,.4,.95]),b:rs(b,[.05,.06,.16]),c:rs(x,[.95,.35,.6])},T={};return T.stop=Ko(t,(t,r)=>{d(),n.uniform2f(s.res,e.width,e.height),n.uniform1f(s.time,(g?0:r)*S),n.uniform2f(s.mouse,l.x,l.y),n.uniform3fv(s.a,w.a),n.uniform3fv(s.b,w.b),n.uniform3fv(s.c,w.c),n.uniform1f(s.scale,C),n.drawArrays(n.TRIANGLES,0,3),g&&T.stop?.()}),()=>{T.stop?.(),f?.disconnect(),t.removeEventListener(`pointermove`,u),n.deleteProgram(r),n.deleteBuffer(i)}},[v,y,b,x,S,C,c]),(0,V.jsxs)(`div`,{ref:e=>{m.current=e,typeof d==`function`&&d(e)},style:{position:`relative`,minHeight:Jo(s,320),overflow:`hidden`,...k(u)},children:[(0,V.jsx)(`canvas`,{ref:p,style:{display:`block`,width:`100%`,height:`100%`,position:`absolute`,inset:0}}),g&&f?(0,V.jsx)(`div`,{style:{position:`absolute`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,padding:12,background:`rgba(15,23,42,.75)`,..._e,color:`#fecaca`,fontSize:11,whiteSpace:`pre-wrap`,overflow:`auto`},children:g}):null]})}function os(e,t){let n=new e.Scene,r=new e.BoxGeometry;r.deleteAttribute(`uv`);let i=new e.Mesh(r,new e.MeshBasicMaterial({side:e.BackSide,color:6710886}));i.scale.setScalar(12),n.add(i);let a=(t,i,a,o,s,c,l,u)=>{let d=new e.Mesh(r,new e.MeshBasicMaterial);d.material.color.setHex(t),d.material.color.multiplyScalar(i),d.position.set(a,o,s),d.scale.set(c,l,u),n.add(d)};a(16777215,4,0,6,0,10,.5,10),a(16777215,1.4,-6,1,2,.4,6,6),a(16777215,1,6,1,-2,.4,6,6);let o=new e.PMREMGenerator(t),s=o.fromScene(n,.04);return o.dispose(),r.dispose(),n.traverse(e=>e.material?.dispose?.()),s.texture}var ss=new Map;function cs(e){if(ss.has(e))return ss.get(e);let t=Ho(`loaders/GLTFLoader.js`).then(t=>new Promise((n,r)=>{new t.GLTFLoader().load(e,e=>n(e.scene),void 0,r)})).catch(t=>{throw ss.delete(e),t});return ss.set(e,t),t}function ls(e,t){let n=new e.Box3().setFromObject(t);if(n.isEmpty())return t;let r=n.getSize(new e.Vector3),i=n.getCenter(new e.Vector3),a=Math.max(r.x,r.y,r.z)||1,o=new e.Group;return t.position.sub(i),t.scale.multiplyScalar(1/a),t.position.multiplyScalar(1/a),o.add(t),o}var us={box:e=>new e.BoxGeometry(1,1,1,1,1,1),sphere:e=>new e.SphereGeometry(.62,48,32),torus:e=>new e.TorusGeometry(.5,.2,24,64),knot:e=>new e.TorusKnotGeometry(.44,.15,128,24),cone:e=>new e.ConeGeometry(.55,1.1,48),cylinder:e=>new e.CylinderGeometry(.45,.45,1.1,48),plane:e=>new e.PlaneGeometry(1.4,1.4),capsule:e=>new e.CapsuleGeometry(.35,.6,8,32)},ds=(e,t)=>Number.isFinite(Number(e))?Number(e):t;function fs({objects:e,background:t,cameraDistance:n,fov:r,autoRotate:i,spinSpeed:a,controls:o,ground:s,height:c,style:u,nodeRef:d,inert:f}){let p=(0,l.useRef)(null),[m,h]=(0,l.useState)(!1),g=Array.isArray(e)?e.filter(e=>e&&typeof e==`object`):[],_=JSON.stringify(g),v=i!==!1&&!Wo(),y=o!==!1&&!f;return(0,l.useEffect)(()=>{let e=p.current;if(!e)return;let i=!0,o=null;return Vo().then(c=>{if(!i||!e)return;let l=new c.WebGLRenderer({antialias:!0,alpha:!t});l.setPixelRatio(Go()),l.shadowMap.enabled=s!==!1,l.shadowMap.type=c.PCFSoftShadowMap,l.outputColorSpace=c.SRGBColorSpace,l.toneMapping=c.ACESFilmicToneMapping,l.domElement.style.display=`block`,l.domElement.style.width=`100%`,l.domElement.style.height=`100%`,e.appendChild(l.domElement);let u=new c.Scene;t&&(u.background=new c.Color(t)),u.environment=os(c,l);let d=new c.PerspectiveCamera(ds(r,45),1,.1,400),f=qo(d,l.domElement,{distance:ds(n,5),enableZoom:y}),p=new c.DirectionalLight(16777215,2.2);p.position.set(4,7,5),p.castShadow=s!==!1,p.shadow.mapSize.set(1024,1024),p.shadow.camera.near=.5,p.shadow.camera.far=30,u.add(p,new c.AmbientLight(16777215,.35));let m=[],h=new c.Group,_=(e,t)=>{let n=ds(t.scale,1);e.position.set(ds(t.x,0),ds(t.y,0),ds(t.z,0)),e.rotation.set(Xo(t.rx),Xo(t.ry),Xo(t.rz)),e.scale.setScalar(n>0?n:1),e.userData.spin=Xo(t.spin)};for(let e of g){if(e.shape===`model`){if(!Zo(e.src))continue;let t=new c.Group;_(t,e),h.add(t),cs(e.src).then(e=>{if(!i)return;let n=ls(c,e.clone(!0));n.traverse(e=>{e.isMesh&&(e.castShadow=!0,e.receiveShadow=!0)}),t.add(n)},()=>{});continue}let t=(us[e.shape]??us.box)(c),n=new c.MeshStandardMaterial({color:/^#?[0-9a-f]{6}$/i.test(String(e.color??``))?e.color:`#6366f1`,metalness:Math.min(1,Math.max(0,Yo(e.metalness,10))),roughness:Math.min(1,Math.max(0,Yo(e.roughness,35))),transparent:Yo(e.opacity,100)<1,opacity:Math.min(1,Math.max(0,Yo(e.opacity,100))),flatShading:e.flat===!0,wireframe:e.wireframe===!0,side:e.shape===`plane`?c.DoubleSide:c.FrontSide}),r=new c.Mesh(t,n);_(r,e),r.castShadow=!0,r.receiveShadow=!0,h.add(r),m.push(t,n)}u.add(h);let b=null;if(s!==!1){let e=new c.ShadowMaterial({opacity:.22}),t=new c.PlaneGeometry(60,60);b=new c.Mesh(t,e),b.rotation.x=-Math.PI/2,b.position.y=ds(s===!0?0:s,-.85),b.receiveShadow=!0,u.add(b),m.push(t,e)}let x=()=>{let t=Math.max(1,e.clientWidth),n=Math.max(1,e.clientHeight);l.setSize(t,n,!1),d.aspect=t/n,d.updateProjectionMatrix()},S=typeof ResizeObserver>`u`?null:new ResizeObserver(x);S?.observe(e),x();let C=Xo(Number.isFinite(Number(a))?a:20),w=Ko(e,e=>{f.autoSpin(v?C:0,e),f.update();for(let t of h.children)t.userData.spin&&(t.rotation.y+=t.userData.spin*e);l.render(u,d)});o=()=>{w(),S?.disconnect(),f.dispose();for(let e of m)e.dispose?.();u.environment?.dispose?.(),l.dispose(),l.domElement.remove()}},()=>{i&&h(!0)}),()=>{i=!1,o?.()}},[_,t,n,r,v,a,y,s]),m&&f?(0,V.jsx)(Qo,{nodeRef:d,style:u,height:c,label:`3D Scene`,note:`The 3D engine could not be loaded. Check the connection and try again.`}):(0,V.jsx)(`div`,{ref:e=>{p.current=e,typeof d==`function`&&d(e)},style:{minHeight:Jo(c,380),height:Jo(c,380),overflow:`hidden`,touchAction:y?`pan-y`:void 0,...k(u)}})}function ps({code:e,height:t,background:n,style:r,nodeRef:i,inert:a}){let o=(0,l.useRef)(null),[s,c]=(0,l.useState)(``);return(0,l.useEffect)(()=>{let t=o.current;if(a||!t||typeof e!=`string`||!e.trim())return;let r=!0,i=null;return Vo().then(a=>{if(!r||!t)return;let o=new a.WebGLRenderer({antialias:!0,alpha:!n});o.setPixelRatio(Go()),o.outputColorSpace=a.SRGBColorSpace,o.domElement.style.display=`block`,o.domElement.style.width=`100%`,o.domElement.style.height=`100%`,t.appendChild(o.domElement);let s=new a.Scene;n&&(s.background=new a.Color(n));let l=new a.PerspectiveCamera(45,1,.1,1e3);l.position.set(0,1.2,4);let u=null;try{u=Function(`ctx`,`"use strict";\n${e}`)({THREE:a,scene:s,camera:l,renderer:o,canvas:o.domElement,host:t})}catch(e){c(e?.message||String(e))}let d=()=>{let e=Math.max(1,t.clientWidth),n=Math.max(1,t.clientHeight);o.setSize(e,n,!1),l.aspect=e/n,l.updateProjectionMatrix()},f=typeof ResizeObserver>`u`?null:new ResizeObserver(d);f?.observe(t),d();let p=!1,m=Ko(t,(e,t)=>{if(!p&&typeof u?.frame==`function`)try{u.frame(e,t)}catch(e){p=!0,c(e?.message||String(e))}o.render(s,l)});i=()=>{m(),f?.disconnect();try{u?.dispose?.()}catch{}o.dispose(),o.domElement.remove()}}),()=>{r=!1,i?.()}},[e,a,n]),a?(0,V.jsx)(Qo,{nodeRef:i,style:r,height:t,label:`three.js`,note:typeof e==`string`&&e.trim()?`Custom scene code runs in Preview and on the published page.`:`Open the code editor in the Settings panel to write your scene.`}):(0,V.jsx)(`div`,{ref:e=>{o.current=e,typeof i==`function`&&i(e)},style:{minHeight:Jo(t,380),height:Jo(t,380),overflow:`hidden`,position:`relative`,touchAction:`pan-y`,...k(r)},children:s?(0,V.jsx)(`div`,{style:{position:`absolute`,left:8,top:8,right:8,padding:`6px 8px`,borderRadius:6,background:`rgba(127,29,29,.85)`,..._e,color:`#fee2e2`,fontSize:11},children:s}):null})}var ms={ModelViewerBlock:$o,ShaderBlock:as,SceneBlock:fs,ThreeCanvasBlock:ps},hs=`2.44.0`,gs=`https://cdn.jsdelivr.net/npm`,_s=`${gs}/@rive-app/canvas@${hs}/+esm`,vs=`${gs}/@rive-app/canvas@${hs}/rive.wasm`,ys=e=>import(e),bs=null;function xs(){return typeof window>`u`?new Promise(()=>{}):bs||(bs=ys(_s).then(e=>{let t=e?.default??e;return t?.RuntimeLoader?.setWasmUrl&&t.RuntimeLoader.setWasmUrl(vs),t}).catch(e=>{throw bs=null,e}),bs)}var Ss=new Map,Cs={56:`number`,58:`trigger`,59:`boolean`},ws=new Set;function Ts(e,t){if(!e||!t)return;let n=(Array.isArray(t.artboards)?t.artboards:[]).map(e=>({name:String(e?.name??``),animations:(Array.isArray(e?.animations)?e.animations:[]).map(String),stateMachines:(Array.isArray(e?.stateMachines)?e.stateMachines:[]).map(e=>({name:String(e?.name??``),inputs:(Array.isArray(e?.inputs)?e.inputs:[]).map(e=>({name:String(e?.name??``),type:Cs[e?.type]??`unknown`}))}))}));Ss.set(e,{artboards:n}),ws.forEach(t=>t(e))}var Es=(e,t)=>Number.isFinite(Number(e))&&Number(e)>0?Number(e):t,Ds=[`contain`,`cover`,`fill`,`fitWidth`,`fitHeight`,`scaleDown`,`none`,`layout`],Os=[`center`,`topLeft`,`topCenter`,`topRight`,`centerLeft`,`centerRight`,`bottomLeft`,`bottomCenter`,`bottomRight`],ks=()=>typeof window<`u`&&!!window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches,As=131;function js(e,t,n,r){if(!e||!t||!n)return;let i=[];try{i=e.stateMachineInputs(t)??[]}catch{return}let a=i.find(e=>e?.name===n);a&&(a.type===58?r&&a.fire():a.type===59?a.value=!!r:a.type===56&&(a.value=+!!r))}function Ms({src:e,poster:t,alt:n,height:r,bg:i,artboard:a,mode:o=`stateMachine`,stateMachine:s,animation:c,fit:u=`contain`,alignment:d=`center`,autoplay:f=!0,hoverInput:p,clickInput:m,style:h,nodeRef:g,inert:_}){let v=(0,l.useRef)(null),y=(0,l.useRef)(null),b=(0,l.useRef)(null),x=(0,l.useRef)(``),[S,C]=(0,l.useState)(!1),[w,T]=(0,l.useState)(!1);(0,l.useEffect)(()=>{let t=y.current,n=v.current;if(C(!1),T(!1),!e||!t)return;let r=!0,i=null,l=null,p=null;return xs().then(m=>{if(!r)return;let h=o!==`animation`,g=f!==!1&&!ks();try{i=new m.Rive({src:e,canvas:t,artboard:a||void 0,stateMachines:h&&s?s:void 0,animations:!h&&c?c:void 0,autoplay:g,layout:new m.Layout({fit:Ds.includes(u)?u:`contain`,alignment:Os.includes(d)?d:`center`}),shouldDisableRiveListeners:!!_,isTouchScrollEnabled:!0,onLoad:()=>{if(!r)return;i.resizeDrawingSurfaceToCanvas();let t=i.contents;if(Ts(e,t),h){let e=((t?.artboards??[]).find(e=>e.name===(a||i.activeArtboard))??t?.artboards?.[0])?.stateMachines?.[0]?.name??``;if(x.current=s||e,!s&&e)try{i.play(e),g||i.pause(e)}catch{}}C(!0)},onLoadError:()=>r&&T(!0)})}catch{T(!0);return}b.current=i,n&&(n.rive=i),i.on(m.EventType.RiveEvent,e=>{let t=e?.data;_||t?.type!==As||!t?.url||(t.target===`_self`?window.location.assign(t.url):window.open(t.url,t.target||`_blank`,`noopener`))}),n&&typeof ResizeObserver<`u`&&(l=new ResizeObserver(()=>i?.resizeDrawingSurfaceToCanvas()),l.observe(n)),n&&typeof IntersectionObserver<`u`&&(p=new IntersectionObserver(([e])=>{i&&(e?.isIntersecting?i.startRendering?.():i.stopRendering?.())}),p.observe(n))},()=>r&&T(!0)),()=>{r=!1,l?.disconnect(),p?.disconnect(),n&&n.rive===i&&delete n.rive,b.current=null,x.current=``;try{i?.cleanup()}catch{}}},[e,a,o,s,c,u,d,f,_]);let E=!_&&S,D=(e,t)=>E&&js(b.current,x.current,e,t),O={position:`relative`,display:`block`,width:`100%`,height:Es(r,360),backgroundColor:i||`transparent`,overflow:`hidden`,...k(h)};return e?(0,V.jsxs)(`div`,{ref:e=>{v.current=e,typeof g==`function`&&g(e)},style:O,onMouseEnter:p?()=>D(p,!0):void 0,onMouseLeave:p?()=>D(p,!1):void 0,onClick:m?()=>D(m,!0):void 0,children:[(0,V.jsx)(`canvas`,{ref:y,...H(`canvas`),role:`img`,"aria-label":n||`Animation`,style:{position:`absolute`,inset:0,width:`100%`,height:`100%`,display:`block`}}),t&&(!S||w)?(0,V.jsx)(`img`,{...H(`poster`),src:t,alt:n||``,style:{position:`absolute`,inset:0,width:`100%`,height:`100%`,objectFit:`contain`,pointerEvents:`none`}}):null]}):_?(0,V.jsxs)(`div`,{ref:g,style:{...O,display:`flex`,alignItems:`center`,justifyContent:`center`,flexDirection:`column`,gap:6,border:`1px dashed rgba(148,163,184,.55)`,borderRadius:10,background:`rgba(148,163,184,.08)`,..._e,color:`rgba(100,116,139,.95)`,fontSize:13,textAlign:`center`,padding:16},children:[(0,V.jsx)(`strong`,{style:{fontSize:14},children:`Rive`}),(0,V.jsx)(`span`,{children:`Pick a .riv file in the Settings panel.`})]}):null}var Ns={RiveBlock:Ms},Ps=new Map;function Fs(e){if(Ps.has(e))return Ps.get(e);let t=URL.createObjectURL(new Blob([e],{type:`text/javascript`})),n=import(t).finally(()=>URL.revokeObjectURL(t));return Ps.set(e,n),n}function Is(e){let t=e&&typeof e==`object`?e.builder_plugins:null,n=t&&typeof t==`object`?t.plugins:null;return n&&typeof n==`object`?n:{}}async function Ls(e,t){let n=await Fs(e);return(Array.isArray(n?.default?.blocks)?n.default.blocks:[]).find(e=>e?.id===t&&typeof e.mount==`function`)??null}var Rs={padding:`10px 12px`,border:`1px dashed rgba(148, 163, 184, 0.5)`,borderRadius:8,fontSize:12,opacity:.6};function zs({pluginId:e,blockId:t,props:n,style:r,nodeRef:i}){let a=(0,l.useContext)(bt),o=Is(a?.settings)[e],s=(0,l.useRef)(null),c=(0,l.useRef)(null),u={tenant:a?.tenant??``,apiUrl:a?.apiUrl??`/api`,locale:a?.locale??``,settings:a?.settings??null},d=(0,l.useRef)(u);d.current=u;let f=JSON.stringify(n??{});return(0,l.useEffect)(()=>{let e=s.current;if(!o?.code||!e)return;let n=!0;return Ls(o.code,t).then(e=>{if(!(!n||!e||!s.current)){c.current=e;try{e.mount(s.current,JSON.parse(f),d.current)}catch{c.current=null}}}).catch(()=>{}),()=>{n=!1;let t=c.current;c.current=null;try{t?.unmount?.(e)}catch{}e&&(e.innerHTML=``)}},[o?.code,t]),(0,l.useEffect)(()=>{let e=c.current,t=s.current;if(!(!e||!t))try{e.update?e.update(t,JSON.parse(f),d.current):(e.unmount?.(t),t.innerHTML=``,e.mount(t,JSON.parse(f),d.current))}catch{}},[f]),o?(0,V.jsx)(`div`,{ref:i,style:k(r),children:(0,V.jsx)(`div`,{ref:s})}):(0,V.jsxs)(`div`,{ref:i,style:{...Rs,...k(r)},children:[`Plugin “`,e,`” is not installed`]})}var Bs={...W,...Mo,...ms,...Ns,PluginBlock:zs};function Vs(e,t,n,r=new Set,i=void 0){let a=t[e];if(!a||a.hidden)return null;let o=a.type?.resolvedName,s=i?.mapProps?i.mapProps(a.props??{},o):a.props??{};if(o===`ComponentInstance`){let t=a.props?.componentId,o=n?.[t];if(!o?.template||r.has(t))return null;let s=new Set(r).add(t);return(0,V.jsx)(l.Fragment,{children:Vs(o.template.rootId,o.template.nodes,n,s,i)},e)}let c=Bs[o];if(!c)return null;let u=(a.nodes??[]).map(e=>Vs(e,t,n,r,i)).filter(Boolean),d=Object.entries(a.linkedNodes??{}),f=d.length?Object.fromEntries(d.map(([e,a])=>[e,Vs(a,t,n,r,i)])):void 0,p=(0,V.jsx)(c,{...s,...o===`CollectionList`?{templateId:a.linkedNodes?.card,renderTemplate:a.linkedNodes?.card?e=>Vs(a.linkedNodes.card,t,n,r,{...i,mapProps:i?.mapProps?(t,n)=>i.mapProps(e(t,n),n):e}):void 0}:null,linked:f,nodeRef:t=>{t&&(t.setAttribute(`data-wb`,e),re(t,s),ne(t,i?.events===!1?[]:s.events))},children:u.length?u:void 0},e),m=s.when&&s.when!==`always`?(0,V.jsx)(zi,{when:s.when,children:p},e):p;return Array.isArray(s.showWhen?.rules)&&s.showWhen.rules.length?(0,V.jsx)(jt,{showWhen:s.showWhen,children:m},e):m}var Hs=e=>Object.entries(e).map(([e,t])=>`${e}: ${t};`).join(` `),Us=e=>`.webim-page[data-webim-mode="light"] { ${Object.entries(Te(e.light)).map(([e,t])=>`${e}: ${t} !important;`).join(` `)} }
101
- .webim-page[data-webim-mode="dark"] { ${Object.entries(Te(e.dark)).map(([e,t])=>`${e}: ${t} !important;`).join(` `)} }`;function Ws({blocks:e,theme:t,components:n,mode:r=`auto`,style:i,custom:a,animations:o,tenant:s,apiUrl:c,datasets:u,locale:d,direction:f,settings:p,siteUser:m,param:g}){let _=a?.js?.trim();if((0,l.useEffect)(()=>{if(!_)return;let e=document.createElement(`script`);return e.text=_,document.body.appendChild(e),()=>e.remove()},[_]),!e?.ROOT)return null;let y={lang:d||void 0,dir:Re(f,d)},b=`.webim-page, .webim-page *, .webim-page *::before, .webim-page *::after { box-sizing: border-box; }
102
- `+he,x={minHeight:`100%`,display:`flex`,flexDirection:`column`},S=Vs(`ROOT`,e,n),C=(0,l.useMemo)(()=>({render:(t,r)=>Vs(t,e,n,void 0,{mapProps:r})}),[e,n]),w=me(e,n),E=pe(e,n),D=a?.css?.trim(),O=T(o),k=B(t),A=[k.font,k.headingFont].filter(e=>typeof e==`string`&&e.trim()&&e!==`inherit`&&!Se[e]),j=[...new Set([...v(e,n),...A])].map(e=>(0,V.jsx)(`link`,{rel:`stylesheet`,precedence:`default`,href:h(e)},e)),M=Us(k);return r===`auto`?(0,V.jsx)(bt.Provider,{value:{tenant:s||``,apiUrl:c||`/api`,locale:d||``,settings:p??null,param:g||``},children:(0,V.jsx)(Ri,{initialUser:m,children:(0,V.jsx)(xt.Provider,{value:u??null,children:(0,V.jsx)(Tt.Provider,{value:C,children:(0,V.jsxs)(`div`,{...y,className:`webim-page`,style:{...x,...Ee(t),...i},children:[(0,V.jsx)(`style`,{children:`.webim-page { ${Hs(Te(k.light))} }
103
- @media (prefers-color-scheme: dark) { .webim-page { ${Hs(Te(k.dark))} } }`}),(0,V.jsx)(`style`,{children:M}),j,(0,V.jsx)(`style`,{children:b}),w&&(0,V.jsx)(`style`,{children:w}),E&&(0,V.jsx)(`style`,{children:E}),D&&(0,V.jsx)(`style`,{children:D}),S]})})})})}):(0,V.jsx)(bt.Provider,{value:{tenant:s||``,apiUrl:c||`/api`,locale:d||``,settings:p??null,param:g||``},children:(0,V.jsx)(Ri,{initialUser:m,children:(0,V.jsx)(xt.Provider,{value:u??null,children:(0,V.jsx)(Tt.Provider,{value:C,children:(0,V.jsxs)(`div`,{...y,className:`webim-page`,style:{...x,...ke(t,r),...i},children:[j,(0,V.jsx)(`style`,{children:M}),(0,V.jsx)(`style`,{children:b}),w&&(0,V.jsx)(`style`,{children:w}),E&&(0,V.jsx)(`style`,{children:E}),O&&(0,V.jsx)(`style`,{children:O}),O&&(0,V.jsx)(`style`,{children:O}),D&&(0,V.jsx)(`style`,{children:D}),S]})})})})})}function Gs({bundle:e,mode:t=`auto`,style:n}){return e?.blocks?.ROOT?(0,V.jsx)(Ws,{blocks:e.blocks,theme:e.theme,components:e.components,custom:e.custom,animations:e.animations,tenant:e.tenant,apiUrl:e.apiUrl,datasets:e.datasets,locale:e.locale,direction:e.direction,settings:e.settings,param:e.param,mode:je(t,e.scheme),style:n}):null}function Ks({apiUrl:e,tenant:t,slug:n,locale:r,preview:i,token:a,mode:o=`auto`,style:s,fallback:c=null,errorFallback:u=null,onLoad:d,onError:f}){let[p,m]=(0,l.useState)({status:`loading`}),h=(0,l.useRef)({onLoad:d,onError:f});return h.current={onLoad:d,onError:f},(0,l.useEffect)(()=>{let o=!0;return m({status:`loading`}),Pe({apiUrl:e,tenant:t,slug:n,locale:r,preview:i,token:a}).then(e=>{o&&(m({status:`ready`,bundle:e}),h.current.onLoad?.(e))}).catch(e=>{o&&(m({status:`error`,error:e}),h.current.onError?.(e))}),()=>{o=!1}},[e,t,n,r,i,a]),p.status===`loading`?c:p.status===`error`?typeof u==`function`?u(p.error):u:(0,V.jsx)(Gs,{bundle:p.bundle,mode:o,style:s})}function qs(e,t={}){let n=(0,u.createRoot)(e);return n.render((0,V.jsx)(Ks,{apiUrl:t.apiUrl||t.api,tenant:t.tenant,slug:t.slug,locale:t.locale||void 0,token:t.token||void 0,mode:t.mode||`auto`,onError:e=>console.error(`[webim-embed]`,t.slug,e)})),n}function Js(e=document){for(let t of e.querySelectorAll(`[data-webim-page]:not([data-webim-mounted])`))t.setAttribute(`data-webim-mounted`,``),qs(t,t.dataset)}var Ys=document.currentScript,Xs=()=>{if(Js(),Ys?.dataset.slug){let e=document.createElement(`div`);e.setAttribute(`data-webim-mounted`,``),Ys.parentElement&&Ys.parentElement!==document.head?Ys.insertAdjacentElement(`beforebegin`,e):document.body.appendChild(e),qs(e,Ys.dataset)}};document.readyState===`loading`?document.addEventListener(`DOMContentLoaded`,Xs,{once:!0}):Xs(),window.WebimEmbed={mount:qs,scan:Js}})();
100
+ `)};function rs(e,t){let n=/^#?([0-9a-f]{6})$/i.exec(String(e??``).trim());if(!n)return t;let r=parseInt(n[1],16);return[(r>>16&255)/255,(r>>8&255)/255,(r&255)/255]}function is(e,t,n){let r=e.createShader(t);if(e.shaderSource(r,n),e.compileShader(r),!e.getShaderParameter(r,e.COMPILE_STATUS)){let t=e.getShaderInfoLog(r);throw e.deleteShader(r),Error(t||`Shader failed to compile`)}return r}function as({preset:e,code:t,colorA:n,colorB:r,colorC:i,speed:a,scale:o,height:s,interactive:c,style:u,nodeRef:d,inert:f}){let p=(0,l.useRef)(null),m=(0,l.useRef)(null),h=(0,l.useRef)(null),[g,_]=(0,l.useState)(``);(0,l.useEffect)(()=>()=>{let e=h.current;h.current=null,e?.getExtension(`WEBGL_lose_context`)?.loseContext()},[]);let v=typeof t==`string`&&t.trim()?t:ns[e]??ns.gradient,y=String(n??``),b=String(r??``),x=String(i??``),S=Yo(a,100),C=Math.max(.05,Yo(o,100));return(0,l.useEffect)(()=>{let e=p.current,t=m.current;if(!e||!t)return;let n=h.current??=e.getContext(`webgl`,{antialias:!0,alpha:!0,premultipliedAlpha:!1});if(!n){_(`WebGL is not available in this browser`);return}let r=null;try{let e=is(n,n.VERTEX_SHADER,es),t=is(n,n.FRAGMENT_SHADER,ts+v);if(r=n.createProgram(),n.attachShader(r,e),n.attachShader(r,t),n.linkProgram(r),!n.getProgramParameter(r,n.LINK_STATUS))throw Error(n.getProgramInfoLog(r)||`Link failed`);_(``)}catch(e){_(e?.message||`Shader failed to compile`);return}n.useProgram(r);let i=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,i),n.bufferData(n.ARRAY_BUFFER,new Float32Array([-1,-1,3,-1,-1,3]),n.STATIC_DRAW);let a=n.getAttribLocation(r,`p`);n.enableVertexAttribArray(a),n.vertexAttribPointer(a,2,n.FLOAT,!1,0,0);let o=e=>n.getUniformLocation(r,e),s={res:o(`u_res`),time:o(`u_time`),mouse:o(`u_mouse`),a:o(`u_a`),b:o(`u_b`),c:o(`u_c`),scale:o(`u_scale`)},l={x:0,y:0},u=t=>{let n=e.getBoundingClientRect();!n.width||!n.height||(l.x=((t.clientX-n.left)/n.width-.5)*2,l.y=(.5-(t.clientY-n.top)/n.height)*2)};c!==!1&&t.addEventListener(`pointermove`,u);let d=()=>{let r=Go(),i=Math.max(1,Math.round(t.clientWidth*r)),a=Math.max(1,Math.round(t.clientHeight*r));(e.width!==i||e.height!==a)&&(e.width=i,e.height=a,n.viewport(0,0,i,a))},f=typeof ResizeObserver>`u`?null:new ResizeObserver(d);f?.observe(t),d();let g=Wo(),w={a:rs(y,[.35,.4,.95]),b:rs(b,[.05,.06,.16]),c:rs(x,[.95,.35,.6])},T={};return T.stop=Ko(t,(t,r)=>{d(),n.uniform2f(s.res,e.width,e.height),n.uniform1f(s.time,(g?0:r)*S),n.uniform2f(s.mouse,l.x,l.y),n.uniform3fv(s.a,w.a),n.uniform3fv(s.b,w.b),n.uniform3fv(s.c,w.c),n.uniform1f(s.scale,C),n.drawArrays(n.TRIANGLES,0,3),g&&T.stop?.()}),()=>{T.stop?.(),f?.disconnect(),t.removeEventListener(`pointermove`,u),n.deleteProgram(r),n.deleteBuffer(i)}},[v,y,b,x,S,C,c]),(0,V.jsxs)(`div`,{ref:e=>{m.current=e,typeof d==`function`&&d(e)},style:{position:`relative`,minHeight:Jo(s,320),overflow:`hidden`,...k(u)},children:[(0,V.jsx)(`canvas`,{ref:p,style:{display:`block`,width:`100%`,height:`100%`,position:`absolute`,inset:0}}),g&&f?(0,V.jsx)(`div`,{style:{position:`absolute`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,padding:12,background:`rgba(15,23,42,.75)`,..._e,color:`#fecaca`,fontSize:11,whiteSpace:`pre-wrap`,overflow:`auto`},children:g}):null]})}function os(e,t){let n=new e.Scene,r=new e.BoxGeometry;r.deleteAttribute(`uv`);let i=new e.Mesh(r,new e.MeshBasicMaterial({side:e.BackSide,color:6710886}));i.scale.setScalar(12),n.add(i);let a=(t,i,a,o,s,c,l,u)=>{let d=new e.Mesh(r,new e.MeshBasicMaterial);d.material.color.setHex(t),d.material.color.multiplyScalar(i),d.position.set(a,o,s),d.scale.set(c,l,u),n.add(d)};a(16777215,4,0,6,0,10,.5,10),a(16777215,1.4,-6,1,2,.4,6,6),a(16777215,1,6,1,-2,.4,6,6);let o=new e.PMREMGenerator(t),s=o.fromScene(n,.04);return o.dispose(),r.dispose(),n.traverse(e=>e.material?.dispose?.()),s.texture}var ss=new Map;function cs(e){if(ss.has(e))return ss.get(e);let t=Ho(`loaders/GLTFLoader.js`).then(t=>new Promise((n,r)=>{new t.GLTFLoader().load(e,e=>n(e.scene),void 0,r)})).catch(t=>{throw ss.delete(e),t});return ss.set(e,t),t}function ls(e,t){let n=new e.Box3().setFromObject(t);if(n.isEmpty())return t;let r=n.getSize(new e.Vector3),i=n.getCenter(new e.Vector3),a=Math.max(r.x,r.y,r.z)||1,o=new e.Group;return t.position.sub(i),t.scale.multiplyScalar(1/a),t.position.multiplyScalar(1/a),o.add(t),o}var us={box:e=>new e.BoxGeometry(1,1,1,1,1,1),sphere:e=>new e.SphereGeometry(.62,48,32),torus:e=>new e.TorusGeometry(.5,.2,24,64),knot:e=>new e.TorusKnotGeometry(.44,.15,128,24),cone:e=>new e.ConeGeometry(.55,1.1,48),cylinder:e=>new e.CylinderGeometry(.45,.45,1.1,48),plane:e=>new e.PlaneGeometry(1.4,1.4),capsule:e=>new e.CapsuleGeometry(.35,.6,8,32)},ds=(e,t)=>Number.isFinite(Number(e))?Number(e):t;function fs({objects:e,background:t,cameraDistance:n,fov:r,autoRotate:i,spinSpeed:a,controls:o,ground:s,height:c,style:u,nodeRef:d,inert:f}){let p=(0,l.useRef)(null),[m,h]=(0,l.useState)(!1),g=Array.isArray(e)?e.filter(e=>e&&typeof e==`object`):[],_=JSON.stringify(g),v=i!==!1&&!Wo(),y=o!==!1&&!f;return(0,l.useEffect)(()=>{let e=p.current;if(!e)return;let i=!0,o=null;return Vo().then(c=>{if(!i||!e)return;let l=new c.WebGLRenderer({antialias:!0,alpha:!t});l.setPixelRatio(Go()),l.shadowMap.enabled=s!==!1,l.shadowMap.type=c.PCFSoftShadowMap,l.outputColorSpace=c.SRGBColorSpace,l.toneMapping=c.ACESFilmicToneMapping,l.domElement.style.display=`block`,l.domElement.style.width=`100%`,l.domElement.style.height=`100%`,e.appendChild(l.domElement);let u=new c.Scene;t&&(u.background=new c.Color(t)),u.environment=os(c,l);let d=new c.PerspectiveCamera(ds(r,45),1,.1,400),f=qo(d,l.domElement,{distance:ds(n,5),enableZoom:y}),p=new c.DirectionalLight(16777215,2.2);p.position.set(4,7,5),p.castShadow=s!==!1,p.shadow.mapSize.set(1024,1024),p.shadow.camera.near=.5,p.shadow.camera.far=30,u.add(p,new c.AmbientLight(16777215,.35));let m=[],h=new c.Group,_=(e,t)=>{let n=ds(t.scale,1);e.position.set(ds(t.x,0),ds(t.y,0),ds(t.z,0)),e.rotation.set(Xo(t.rx),Xo(t.ry),Xo(t.rz)),e.scale.setScalar(n>0?n:1),e.userData.spin=Xo(t.spin)};for(let e of g){if(e.shape===`model`){if(!Zo(e.src))continue;let t=new c.Group;_(t,e),h.add(t),cs(e.src).then(e=>{if(!i)return;let n=ls(c,e.clone(!0));n.traverse(e=>{e.isMesh&&(e.castShadow=!0,e.receiveShadow=!0)}),t.add(n)},()=>{});continue}let t=(us[e.shape]??us.box)(c),n=new c.MeshStandardMaterial({color:/^#?[0-9a-f]{6}$/i.test(String(e.color??``))?e.color:`#6366f1`,metalness:Math.min(1,Math.max(0,Yo(e.metalness,10))),roughness:Math.min(1,Math.max(0,Yo(e.roughness,35))),transparent:Yo(e.opacity,100)<1,opacity:Math.min(1,Math.max(0,Yo(e.opacity,100))),flatShading:e.flat===!0,wireframe:e.wireframe===!0,side:e.shape===`plane`?c.DoubleSide:c.FrontSide}),r=new c.Mesh(t,n);_(r,e),r.castShadow=!0,r.receiveShadow=!0,h.add(r),m.push(t,n)}u.add(h);let b=null;if(s!==!1){let e=new c.ShadowMaterial({opacity:.22}),t=new c.PlaneGeometry(60,60);b=new c.Mesh(t,e),b.rotation.x=-Math.PI/2,b.position.y=ds(s===!0?0:s,-.85),b.receiveShadow=!0,u.add(b),m.push(t,e)}let x=()=>{let t=Math.max(1,e.clientWidth),n=Math.max(1,e.clientHeight);l.setSize(t,n,!1),d.aspect=t/n,d.updateProjectionMatrix()},S=typeof ResizeObserver>`u`?null:new ResizeObserver(x);S?.observe(e),x();let C=Xo(Number.isFinite(Number(a))?a:20),w=Ko(e,e=>{f.autoSpin(v?C:0,e),f.update();for(let t of h.children)t.userData.spin&&(t.rotation.y+=t.userData.spin*e);l.render(u,d)});o=()=>{w(),S?.disconnect(),f.dispose();for(let e of m)e.dispose?.();u.environment?.dispose?.(),l.dispose(),l.domElement.remove()}},()=>{i&&h(!0)}),()=>{i=!1,o?.()}},[_,t,n,r,v,a,y,s]),m&&f?(0,V.jsx)(Qo,{nodeRef:d,style:u,height:c,label:`3D Scene`,note:`The 3D engine could not be loaded. Check the connection and try again.`}):(0,V.jsx)(`div`,{ref:e=>{p.current=e,typeof d==`function`&&d(e)},style:{minHeight:Jo(c,380),height:Jo(c,380),overflow:`hidden`,touchAction:y?`pan-y`:void 0,...k(u)}})}function ps({code:e,height:t,background:n,style:r,nodeRef:i,inert:a}){let o=(0,l.useRef)(null),[s,c]=(0,l.useState)(``);return(0,l.useEffect)(()=>{let t=o.current;if(a||!t||typeof e!=`string`||!e.trim())return;let r=!0,i=null;return Vo().then(a=>{if(!r||!t)return;let o=new a.WebGLRenderer({antialias:!0,alpha:!n});o.setPixelRatio(Go()),o.outputColorSpace=a.SRGBColorSpace,o.domElement.style.display=`block`,o.domElement.style.width=`100%`,o.domElement.style.height=`100%`,t.appendChild(o.domElement);let s=new a.Scene;n&&(s.background=new a.Color(n));let l=new a.PerspectiveCamera(45,1,.1,1e3);l.position.set(0,1.2,4);let u=null;try{u=Function(`ctx`,`"use strict";\n${e}`)({THREE:a,scene:s,camera:l,renderer:o,canvas:o.domElement,host:t})}catch(e){c(e?.message||String(e))}let d=()=>{let e=Math.max(1,t.clientWidth),n=Math.max(1,t.clientHeight);o.setSize(e,n,!1),l.aspect=e/n,l.updateProjectionMatrix()},f=typeof ResizeObserver>`u`?null:new ResizeObserver(d);f?.observe(t),d();let p=!1,m=Ko(t,(e,t)=>{if(!p&&typeof u?.frame==`function`)try{u.frame(e,t)}catch(e){p=!0,c(e?.message||String(e))}o.render(s,l)});i=()=>{m(),f?.disconnect();try{u?.dispose?.()}catch{}o.dispose(),o.domElement.remove()}}),()=>{r=!1,i?.()}},[e,a,n]),a?(0,V.jsx)(Qo,{nodeRef:i,style:r,height:t,label:`three.js`,note:typeof e==`string`&&e.trim()?`Custom scene code runs in Preview and on the published page.`:`Open the code editor in the Settings panel to write your scene.`}):(0,V.jsx)(`div`,{ref:e=>{o.current=e,typeof i==`function`&&i(e)},style:{minHeight:Jo(t,380),height:Jo(t,380),overflow:`hidden`,position:`relative`,touchAction:`pan-y`,...k(r)},children:s?(0,V.jsx)(`div`,{style:{position:`absolute`,left:8,top:8,right:8,padding:`6px 8px`,borderRadius:6,background:`rgba(127,29,29,.85)`,..._e,color:`#fee2e2`,fontSize:11},children:s}):null})}var ms={ModelViewerBlock:$o,ShaderBlock:as,SceneBlock:fs,ThreeCanvasBlock:ps},hs=`2.44.0`,gs=`https://cdn.jsdelivr.net/npm`,_s=`${gs}/@rive-app/canvas@${hs}/+esm`,vs=`${gs}/@rive-app/canvas@${hs}/rive.wasm`,ys=e=>import(e),bs=null;function xs(){return typeof window>`u`?new Promise(()=>{}):bs||(bs=ys(_s).then(e=>{let t=e?.default??e;return t?.RuntimeLoader?.setWasmUrl&&t.RuntimeLoader.setWasmUrl(vs),t}).catch(e=>{throw bs=null,e}),bs)}var Ss=new Map,Cs={56:`number`,58:`trigger`,59:`boolean`},ws=new Set;function Ts(e,t){if(!e||!t)return;let n=(Array.isArray(t.artboards)?t.artboards:[]).map(e=>({name:String(e?.name??``),animations:(Array.isArray(e?.animations)?e.animations:[]).map(String),stateMachines:(Array.isArray(e?.stateMachines)?e.stateMachines:[]).map(e=>({name:String(e?.name??``),inputs:(Array.isArray(e?.inputs)?e.inputs:[]).map(e=>({name:String(e?.name??``),type:Cs[e?.type]??`unknown`}))}))}));Ss.set(e,{artboards:n}),ws.forEach(t=>t(e))}var Es=(e,t)=>Number.isFinite(Number(e))&&Number(e)>0?Number(e):t,Ds=[`contain`,`cover`,`fill`,`fitWidth`,`fitHeight`,`scaleDown`,`none`,`layout`],Os=[`center`,`topLeft`,`topCenter`,`topRight`,`centerLeft`,`centerRight`,`bottomLeft`,`bottomCenter`,`bottomRight`],ks=()=>typeof window<`u`&&!!window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches,As=131;function js(e,t,n,r){if(!e||!t||!n)return;let i=[];try{i=e.stateMachineInputs(t)??[]}catch{return}let a=i.find(e=>e?.name===n);a&&(a.type===58?r&&a.fire():a.type===59?a.value=!!r:a.type===56&&(a.value=+!!r))}function Ms({src:e,poster:t,alt:n,height:r,bg:i,artboard:a,mode:o=`stateMachine`,stateMachine:s,animation:c,fit:u=`contain`,alignment:d=`center`,autoplay:f=!0,hoverInput:p,clickInput:m,style:h,nodeRef:g,inert:_}){let v=(0,l.useRef)(null),y=(0,l.useRef)(null),b=(0,l.useRef)(null),x=(0,l.useRef)(``),[S,C]=(0,l.useState)(!1),[w,T]=(0,l.useState)(!1);(0,l.useEffect)(()=>{let t=y.current,n=v.current;if(C(!1),T(!1),!e||!t)return;let r=!0,i=null,l=null,p=null;return xs().then(m=>{if(!r)return;let h=o!==`animation`,g=f!==!1&&!ks();try{i=new m.Rive({src:e,canvas:t,artboard:a||void 0,stateMachines:h&&s?s:void 0,animations:!h&&c?c:void 0,autoplay:g,layout:new m.Layout({fit:Ds.includes(u)?u:`contain`,alignment:Os.includes(d)?d:`center`}),shouldDisableRiveListeners:!!_,isTouchScrollEnabled:!0,onLoad:()=>{if(!r)return;i.resizeDrawingSurfaceToCanvas();let t=i.contents;if(Ts(e,t),h){let e=((t?.artboards??[]).find(e=>e.name===(a||i.activeArtboard))??t?.artboards?.[0])?.stateMachines?.[0]?.name??``;if(x.current=s||e,!s&&e)try{i.play(e),g||i.pause(e)}catch{}}C(!0)},onLoadError:()=>r&&T(!0)})}catch{T(!0);return}b.current=i,n&&(n.rive=i),i.on(m.EventType.RiveEvent,e=>{let t=e?.data;_||t?.type!==As||!t?.url||(t.target===`_self`?window.location.assign(t.url):window.open(t.url,t.target||`_blank`,`noopener`))}),n&&typeof ResizeObserver<`u`&&(l=new ResizeObserver(()=>i?.resizeDrawingSurfaceToCanvas()),l.observe(n)),n&&typeof IntersectionObserver<`u`&&(p=new IntersectionObserver(([e])=>{i&&(e?.isIntersecting?i.startRendering?.():i.stopRendering?.())}),p.observe(n))},()=>r&&T(!0)),()=>{r=!1,l?.disconnect(),p?.disconnect(),n&&n.rive===i&&delete n.rive,b.current=null,x.current=``;try{i?.cleanup()}catch{}}},[e,a,o,s,c,u,d,f,_]);let E=!_&&S,D=(e,t)=>E&&js(b.current,x.current,e,t),O={position:`relative`,display:`block`,width:`100%`,height:Es(r,360),backgroundColor:i||`transparent`,overflow:`hidden`,...k(h)};return e?(0,V.jsxs)(`div`,{ref:e=>{v.current=e,typeof g==`function`&&g(e)},style:O,onMouseEnter:p?()=>D(p,!0):void 0,onMouseLeave:p?()=>D(p,!1):void 0,onClick:m?()=>D(m,!0):void 0,children:[(0,V.jsx)(`canvas`,{ref:y,...H(`canvas`),role:`img`,"aria-label":n||`Animation`,style:{position:`absolute`,inset:0,width:`100%`,height:`100%`,display:`block`}}),t&&(!S||w)?(0,V.jsx)(`img`,{...H(`poster`),src:t,alt:n||``,style:{position:`absolute`,inset:0,width:`100%`,height:`100%`,objectFit:`contain`,pointerEvents:`none`}}):null]}):_?(0,V.jsxs)(`div`,{ref:g,style:{...O,display:`flex`,alignItems:`center`,justifyContent:`center`,flexDirection:`column`,gap:6,border:`1px dashed rgba(148,163,184,.55)`,borderRadius:10,background:`rgba(148,163,184,.08)`,..._e,color:`rgba(100,116,139,.95)`,fontSize:13,textAlign:`center`,padding:16},children:[(0,V.jsx)(`strong`,{style:{fontSize:14},children:`Rive`}),(0,V.jsx)(`span`,{children:`Pick a .riv file in the Settings panel.`})]}):null}var Ns={RiveBlock:Ms},Ps=new Map;function Fs(e){if(Ps.has(e))return Ps.get(e);let t=URL.createObjectURL(new Blob([e],{type:`text/javascript`})),n=import(t).finally(()=>URL.revokeObjectURL(t));return Ps.set(e,n),n}function Is(e){let t=e&&typeof e==`object`?e.builder_plugins:null,n=t&&typeof t==`object`?t.plugins:null;return n&&typeof n==`object`?n:{}}async function Ls(e,t){let n=await Fs(e);return(Array.isArray(n?.default?.blocks)?n.default.blocks:[]).find(e=>e?.id===t&&typeof e.mount==`function`)??null}var Rs={padding:`10px 12px`,border:`1px dashed rgba(148, 163, 184, 0.5)`,borderRadius:8,fontSize:12,opacity:.6};function zs({pluginId:e,blockId:t,props:n,style:r,nodeRef:i}){let a=(0,l.useContext)(bt),o=Is(a?.settings)[e],s=(0,l.useRef)(null),c=(0,l.useRef)(null),u={tenant:a?.tenant??``,apiUrl:a?.apiUrl??`/api`,locale:a?.locale??``,settings:a?.settings??null},d=(0,l.useRef)(u);d.current=u;let f=JSON.stringify(n??{});return(0,l.useEffect)(()=>{let e=s.current;if(!o?.code||!e)return;let n=!0;return Ls(o.code,t).then(e=>{if(!(!n||!e||!s.current)){c.current=e;try{e.mount(s.current,JSON.parse(f),d.current)}catch{c.current=null}}}).catch(()=>{}),()=>{n=!1;let t=c.current;c.current=null;try{t?.unmount?.(e)}catch{}e&&(e.innerHTML=``)}},[o?.code,t]),(0,l.useEffect)(()=>{let e=c.current,t=s.current;if(!(!e||!t))try{e.update?e.update(t,JSON.parse(f),d.current):(e.unmount?.(t),t.innerHTML=``,e.mount(t,JSON.parse(f),d.current))}catch{}},[f]),o?(0,V.jsx)(`div`,{ref:i,style:k(r),children:(0,V.jsx)(`div`,{ref:s})}):(0,V.jsxs)(`div`,{ref:i,style:{...Rs,...k(r)},children:[`Plugin “`,e,`” is not installed`]})}function Bs(e,t){let n={"data-wb":e};t.htmlId&&(n.id=t.htmlId);let r=N(t.classNames);r.length&&(n[`data-wb-class`]=r.join(` `));for(let e of Array.isArray(t.attributes)?t.attributes:[]){let t=String(e?.name??``).trim();M(t)&&(n[t===`tabindex`?`tabIndex`:t]=e.value??``)}return{attrs:n,classes:r}}function Vs({View:e,markup:t,...n}){let r=e(n);if(!(0,l.isValidElement)(r)||typeof r.type!=`string`)return r;let i=[r.props.className,...t.classes].filter(Boolean).join(` `);return(0,l.cloneElement)(r,{...t.attrs,...i?{className:i}:{}})}var Hs={...W,...Mo,...ms,...Ns,PluginBlock:zs};function Us(e,t,n,r=new Set,i=void 0){let a=t[e];if(!a||a.hidden)return null;let o=a.type?.resolvedName,s=i?.mapProps?i.mapProps(a.props??{},o):a.props??{};if(o===`ComponentInstance`){let t=a.props?.componentId,o=n?.[t];if(!o?.template||r.has(t))return null;let s=new Set(r).add(t);return(0,V.jsx)(l.Fragment,{children:Us(o.template.rootId,o.template.nodes,n,s,i)},e)}let c=Hs[o];if(!c)return null;let u=(a.nodes??[]).map(e=>Us(e,t,n,r,i)).filter(Boolean),d=Object.entries(a.linkedNodes??{}),f=d.length?Object.fromEntries(d.map(([e,a])=>[e,Us(a,t,n,r,i)])):void 0,p=(0,V.jsx)(typeof c==`function`?Vs:c,{...typeof c==`function`?{View:c,markup:Bs(e,s)}:null,...s,...o===`CollectionList`?{templateId:a.linkedNodes?.card,renderTemplate:a.linkedNodes?.card?e=>Us(a.linkedNodes.card,t,n,r,{...i,mapProps:i?.mapProps?(t,n)=>i.mapProps(e(t,n),n):e}):void 0}:null,linked:f,nodeRef:t=>{t&&(t.setAttribute(`data-wb`,e),re(t,s),ne(t,i?.events===!1?[]:s.events))},children:u.length?u:void 0},e),m=s.when&&s.when!==`always`?(0,V.jsx)(zi,{when:s.when,children:p},e):p;return Array.isArray(s.showWhen?.rules)&&s.showWhen.rules.length?(0,V.jsx)(jt,{showWhen:s.showWhen,children:m},e):m}var Ws=e=>Object.entries(e).map(([e,t])=>`${e}: ${t};`).join(` `),Gs=e=>`.webim-page[data-webim-mode="light"] { ${Object.entries(Te(e.light)).map(([e,t])=>`${e}: ${t} !important;`).join(` `)} }
101
+ .webim-page[data-webim-mode="dark"] { ${Object.entries(Te(e.dark)).map(([e,t])=>`${e}: ${t} !important;`).join(` `)} }`;function Ks({blocks:e,theme:t,components:n,mode:r=`auto`,style:i,custom:a,animations:o,tenant:s,apiUrl:c,datasets:u,locale:d,direction:f,settings:p,siteUser:m,param:g}){let _=a?.js?.trim();if((0,l.useEffect)(()=>{if(!_)return;let e=document.createElement(`script`);return e.text=_,document.body.appendChild(e),()=>e.remove()},[_]),!e?.ROOT)return null;let y={lang:d||void 0,dir:Re(f,d)},b=`.webim-page, .webim-page *, .webim-page *::before, .webim-page *::after { box-sizing: border-box; }
102
+ `+he,x={minHeight:`100%`,display:`flex`,flexDirection:`column`},S=Us(`ROOT`,e,n),C=(0,l.useMemo)(()=>({render:(t,r)=>Us(t,e,n,void 0,{mapProps:r})}),[e,n]),w=me(e,n),E=pe(e,n),D=a?.css?.trim(),O=T(o),k=B(t),A=[k.font,k.headingFont].filter(e=>typeof e==`string`&&e.trim()&&e!==`inherit`&&!Se[e]),j=[...new Set([...v(e,n),...A])].map(e=>(0,V.jsx)(`link`,{rel:`stylesheet`,precedence:`default`,href:h(e)},e)),M=Gs(k);return r===`auto`?(0,V.jsx)(bt.Provider,{value:{tenant:s||``,apiUrl:c||`/api`,locale:d||``,settings:p??null,param:g||``},children:(0,V.jsx)(Ri,{initialUser:m,children:(0,V.jsx)(xt.Provider,{value:u??null,children:(0,V.jsx)(Tt.Provider,{value:C,children:(0,V.jsxs)(`div`,{...y,className:`webim-page`,style:{...x,...Ee(t),...i},children:[(0,V.jsx)(`style`,{children:`.webim-page { ${Ws(Te(k.light))} }
103
+ @media (prefers-color-scheme: dark) { .webim-page { ${Ws(Te(k.dark))} } }`}),(0,V.jsx)(`style`,{children:M}),j,(0,V.jsx)(`style`,{children:b}),w&&(0,V.jsx)(`style`,{children:w}),E&&(0,V.jsx)(`style`,{children:E}),D&&(0,V.jsx)(`style`,{children:D}),S]})})})})}):(0,V.jsx)(bt.Provider,{value:{tenant:s||``,apiUrl:c||`/api`,locale:d||``,settings:p??null,param:g||``},children:(0,V.jsx)(Ri,{initialUser:m,children:(0,V.jsx)(xt.Provider,{value:u??null,children:(0,V.jsx)(Tt.Provider,{value:C,children:(0,V.jsxs)(`div`,{...y,className:`webim-page`,style:{...x,...ke(t,r),...i},children:[j,(0,V.jsx)(`style`,{children:M}),(0,V.jsx)(`style`,{children:b}),w&&(0,V.jsx)(`style`,{children:w}),E&&(0,V.jsx)(`style`,{children:E}),O&&(0,V.jsx)(`style`,{children:O}),O&&(0,V.jsx)(`style`,{children:O}),D&&(0,V.jsx)(`style`,{children:D}),S]})})})})})}function qs({bundle:e,mode:t=`auto`,style:n}){return e?.blocks?.ROOT?(0,V.jsx)(Ks,{blocks:e.blocks,theme:e.theme,components:e.components,custom:e.custom,animations:e.animations,tenant:e.tenant,apiUrl:e.apiUrl,datasets:e.datasets,locale:e.locale,direction:e.direction,settings:e.settings,param:e.param,mode:je(t,e.scheme),style:n}):null}function Js({apiUrl:e,tenant:t,slug:n,locale:r,preview:i,token:a,mode:o=`auto`,style:s,fallback:c=null,errorFallback:u=null,onLoad:d,onError:f}){let[p,m]=(0,l.useState)({status:`loading`}),h=(0,l.useRef)({onLoad:d,onError:f});return h.current={onLoad:d,onError:f},(0,l.useEffect)(()=>{let o=!0;return m({status:`loading`}),Pe({apiUrl:e,tenant:t,slug:n,locale:r,preview:i,token:a}).then(e=>{o&&(m({status:`ready`,bundle:e}),h.current.onLoad?.(e))}).catch(e=>{o&&(m({status:`error`,error:e}),h.current.onError?.(e))}),()=>{o=!1}},[e,t,n,r,i,a]),p.status===`loading`?c:p.status===`error`?typeof u==`function`?u(p.error):u:(0,V.jsx)(qs,{bundle:p.bundle,mode:o,style:s})}function Ys(e,t={}){let n=(0,u.createRoot)(e);return n.render((0,V.jsx)(Js,{apiUrl:t.apiUrl||t.api,tenant:t.tenant,slug:t.slug,locale:t.locale||void 0,token:t.token||void 0,mode:t.mode||`auto`,onError:e=>console.error(`[webim-embed]`,t.slug,e)})),n}function Xs(e=document){for(let t of e.querySelectorAll(`[data-webim-page]:not([data-webim-mounted])`))t.setAttribute(`data-webim-mounted`,``),Ys(t,t.dataset)}var Zs=document.currentScript,Qs=()=>{if(Xs(),Zs?.dataset.slug){let e=document.createElement(`div`);e.setAttribute(`data-webim-mounted`,``),Zs.parentElement&&Zs.parentElement!==document.head?Zs.insertAdjacentElement(`beforebegin`,e):document.body.appendChild(e),Ys(e,Zs.dataset)}};document.readyState===`loading`?document.addEventListener(`DOMContentLoaded`,Qs,{once:!0}):Qs(),window.WebimEmbed={mount:Ys,scan:Xs}})();