@rettangoli/ui 0.1.2-rc16 → 0.1.2-rc18

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.
@@ -916,7 +916,7 @@ var rettangoli=(()=>{var Qr=Object.defineProperty;var V=(e,t)=>{for(var r in t)Q
916
916
  min-width: 200px;
917
917
  max-width: 400px;
918
918
  }
919
- `))}constructor(){super(),e.initializeStyleSheet(),this.shadow=this.attachShadow({mode:"open"}),this.shadow.adoptedStyleSheets=[e.styleSheet],this._popoverOverlay=document.createElement("div"),this._popoverOverlay.className="popover-overlay",this.shadow.appendChild(this._popoverOverlay),this._popoverOverlay.addEventListener("click",()=>{this.dispatchEvent(new CustomEvent("close",{detail:{}}))}),this._popoverOverlay.addEventListener("contextmenu",t=>{t.preventDefault(),this.dispatchEvent(new CustomEvent("close",{detail:{}}))}),this._popoverContainer=document.createElement("div"),this._popoverContainer.className="popover-container",this.shadow.appendChild(this._popoverContainer),this._slotElement=null,this._isOpen=!1,this._handleEscKey=this._handleEscKey.bind(this)}static get observedAttributes(){return["open","x","y","placement"]}connectedCallback(){this.hasAttribute("open")&&this._show()}disconnectedCallback(){this._removeGlobalListeners()}attributeChangedCallback(t,r,s){t==="open"?s!==null&&!this._isOpen?this._show():s===null&&this._isOpen&&this._hide():(t==="x"||t==="y"||t==="placement")&&this._isOpen&&this._updatePosition()}_show(){this._isOpen||(this._slotElement||(this._slotElement=document.createElement("slot"),this._slotElement.setAttribute("name","content"),this._popoverContainer.appendChild(this._slotElement)),this._isOpen=!0,this._updatePosition(),this._addGlobalListeners())}_hide(){this._isOpen&&(this._isOpen=!1,this._slotElement&&(this._popoverContainer.removeChild(this._slotElement),this._slotElement=null),this._removeGlobalListeners())}_updatePosition(){let t=parseFloat(this.getAttribute("x")||"0"),r=parseFloat(this.getAttribute("y")||"0"),s=this.getAttribute("placement")||"bottom-start";this.removeAttribute("positioned"),requestAnimationFrame(()=>{let i=this._popoverContainer.getBoundingClientRect(),{left:n,top:o}=this._calculatePosition(t,r,i.width,i.height,s);this._popoverContainer.style.left=`${n}px`,this._popoverContainer.style.top=`${o}px`,requestAnimationFrame(()=>{this.setAttribute("positioned","")})})}_calculatePosition(t,r,s,i,n){let a=t,l=r;switch(n){case"top":a=t-s/2,l=r-i-8;break;case"top-start":a=t,l=r-i-8;break;case"top-end":a=t-s,l=r-i-8;break;case"right":a=t+8,l=r-i/2;break;case"right-start":a=t+8,l=r;break;case"right-end":a=t+8,l=r-i;break;case"bottom":a=t-s/2,l=r+8;break;case"bottom-start":a=t,l=r+8;break;case"bottom-end":a=t-s,l=r+8;break;case"left":a=t-s-8,l=r-i/2;break;case"left-start":a=t-s-8,l=r;break;case"left-end":a=t-s-8,l=r-i;break}let p=8;return a=Math.max(p,Math.min(a,window.innerWidth-s-p)),l=Math.max(p,Math.min(l,window.innerHeight-i-p)),{left:a,top:l}}_addGlobalListeners(){setTimeout(()=>{document.addEventListener("keydown",this._handleEscKey)},0)}_removeGlobalListeners(){document.removeEventListener("keydown",this._handleEscKey)}_handleEscKey(t){t.key==="Escape"&&this.dispatchEvent(new CustomEvent("close",{detail:{}}))}get popover(){return this._popoverContainer}},Zt=({render:e,html:t})=>qe;var Je={};V(Je,{handleClickItem:()=>ps});var ps=(e,t)=>{let{dispatchEvent:r}=t,s=e.currentTarget.dataset.id;r(new CustomEvent("item-click",{detail:{id:s}}))};var Ge={};V(Ge,{INITIAL_STATE:()=>cs,toViewData:()=>us});var cs=Object.freeze({}),ds=["id","class","style","slot"],hs=e=>Object.entries(e).filter(([t])=>!ds.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),us=({props:e,attrs:t})=>{let r=hs(t),s=e.items||[],i=e.separator||"breadcrumb-arrow",n=[];return s.forEach((o,a)=>{n.push(o),a<s.length-1&&n.push({isSeparator:!0})}),{containerAttrString:r,items:n,separator:i}};var er={elementName:"rtgl-breadcrumb",viewDataSchema:{type:"object",properties:{containerAttrString:{type:"string"},items:{type:"array",items:{type:"object",properties:{label:{type:"string"},id:{type:"string"}}}},separator:{type:"string"}}},propsSchema:{type:"object",properties:{items:{type:"array",items:{type:"object",properties:{label:{type:"string"},id:{type:"string"}}}},separator:{type:"string",default:"breadcrumb-arrow"}}},refs:{"item-*":{eventListeners:{click:{handler:"handleClickItem"}}}},events:{"item-click":{type:"object",properties:{item:{type:"object",properties:{label:{type:"string"},id:{type:"string"}}},index:{type:"number"}}}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h av=c g=md p=sm ${containerAttrString}",value:{type:9,items:[{type:7,itemVar:"item",indexVar:null,iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:"$if item.isSeparator",value:{type:6,conditions:[{type:1,path:"item.isSeparator"},{type:1,path:"item.id"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-svg wh=16 svg=${separator} c=mu-fg",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-svg wh=16 svg=",{type:1,path:"separator"}," c=mu-fg"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#item-${item.id} data-id=${item.id} cur=p",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=mu-fg",value:{type:1,path:"item.label"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#item-",{type:1,path:"item.id"}," data-id=",{type:1,path:"item.id"}," cur=p"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=mu-fg",value:{type:1,path:"item.label"}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}}],fast:!1},parsedKey:{type:2,parts:["rtgl-view d=h av=c g=md p=sm ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var Ye={};V(Ye,{handleClickMenuItem:()=>ms,handleClosePopover:()=>fs});var fs=(e,t)=>{let{dispatchEvent:r}=t;r(new CustomEvent("close"))},ms=(e,t)=>{let{dispatchEvent:r}=t,s=parseInt(e.currentTarget.id.replace("option-","")),i=t.props.items[s];r(new CustomEvent("click-item",{detail:{index:s,item:i}}))};var Xe={};V(Xe,{INITIAL_STATE:()=>ys,toViewData:()=>gs});var ys=Object.freeze({}),gs=({props:e,attrs:t})=>({items:e.items||[],open:!!t.open,x:t.x,y:t.y,placement:t.placement});var tr={elementName:"rtgl-dropdown-menu",viewDataSchema:{type:"object"},propsSchema:{type:"object",properties:{items:{type:"array",items:{type:"object",properties:{label:{type:"string"},type:{type:"string",enum:["label","item","separator"]}}}}}},attrsSchema:{type:"object",properties:{open:{type:"string"},x:{type:"string"},y:{type:"string"},placement:{type:"string"}}},refs:{popover:{eventListeners:{close:{handler:"handleClosePopover"}}},"option-*":{eventListeners:{click:{handler:"handleClickMenuItem"}}}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-popover#popover ?open=${open} x=${x} y=${y} placement=${placement}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view wh=300 g=xs slot=content bgc=background br=md",value:{type:9,items:[{type:7,itemVar:"item",indexVar:"i",iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:"$if item.type == 'label'",value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"item.type"},right:{type:0,value:"label"}},{type:4,op:0,left:{type:1,path:"item.type"},right:{type:0,value:"item"}},{type:4,op:0,left:{type:1,path:"item.type"},right:{type:0,value:"separator"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f ph=lg pv=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=mu-fg",value:{type:1,path:"item.label"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#option-${i} w=f h-bgc=ac ph=lg pv=md cur=p br=md bgc=mu",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"item.label"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#option-",{type:1,path:"i"}," w=f h-bgc=ac ph=lg pv=md cur=p br=md bgc=mu"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f h=1 ph=lg mv=md bgc=bo",value:{type:0,value:null}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}}],fast:!1}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-popover#popover ?open=",{type:1,path:"open"}," x=",{type:1,path:"x"}," y=",{type:1,path:"y"}," placement=",{type:1,path:"placement"}]}}],fast:!1}],fast:!1}};var Qe={};V(Qe,{handleActionClick:()=>ws,handleBeforeMount:()=>vs,handleColorPickerChange:()=>ks,handleImageClick:()=>$s,handleInputChange:()=>xs,handleOnUpdate:()=>bs,handlePopoverInputChange:()=>_s,handleSelectChange:()=>Ss,handleSliderChange:()=>Es,handleSliderInputChange:()=>As,handleWaveformClick:()=>Cs});var vs=e=>{let{store:t,props:r}=e;t.setFormValues(r.defaultValues)},bs=(e,t)=>{let{oldAttrs:r,newAttrs:s}=e,{store:i,props:n,render:o}=t;r?.key!==s?.key&&(i.setFormValues(n.defaultValues),o())},le=(e,t,r,s)=>{s(new CustomEvent("form-change",{detail:{name:e,fieldValue:t,formValues:r}}))},ws=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("action-","");s(new CustomEvent("action-click",{detail:{actionId:i,formValues:r.selectFormValues()}}))},xs=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("input-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},_s=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("popover-input-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},Ss=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("select-","");i&&e.detail.selectedValue!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.selectedValue}),le(i,e.detail.selectedValue,r.selectFormValues(),s))},ks=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("colorpicker-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},Es=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("slider-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},As=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("slider-input-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},$s=(e,t)=>{let{dispatchEvent:r}=t,s=e.currentTarget.id.replace("image-","");r(new CustomEvent("extra-event",{detail:{name:s}}))},Cs=(e,t)=>{let{dispatchEvent:r}=t,s=e.currentTarget.id.replace("waveform-","");r(new CustomEvent("extra-event",{detail:{name:s}}))};var Ze={};V(Ze,{INITIAL_STATE:()=>Is,selectFormValues:()=>Vs,selectState:()=>Ns,setFormFieldValue:()=>js,setFormValues:()=>Ps,toViewData:()=>Ls});var Is=Object.freeze({formValues:{}}),Ts=["id","class","style","slot"],Os=e=>Object.entries(e).filter(([t])=>!Ts.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),Ls=({state:e,props:t,attrs:r})=>{let s=Os(r),i=structuredClone(t.form.fields||[]),n=t.defaultValues||{},o=t.fieldResources||{};return i.forEach(a=>{if(a.defaultValue=n[a.name],a.inputType==="image"){let l=o[a.name]?.src;a.imageSrc=l&&l.trim()?l:null,a.placeholderText=a.placeholder||"No Image"}if(a.inputType==="waveform"){let l=o[a.name]?.waveformData;a.waveformData=l||null,a.placeholderText=a.placeholder||"No Waveform"}}),{containerAttrString:s,title:t.form?.title||"",description:t?.form?.description||"",fields:i,actions:t?.form?.actions||{buttons:[]},formValues:e.formValues,fieldResources:o}},Ns=({state:e})=>e,Vs=({state:e})=>e.formValues,Ps=(e,t)=>{e.formValues=t||{}},js=(e,{name:t,value:r})=>{e.formValues[t]=r};var rr={elementName:"rtgl-form",viewDataSchema:{type:"object"},propsSchema:{type:"object",properties:{defaultValues:{type:"object"},form:{type:"object",properties:{title:{type:"string"},description:{type:"string"},fields:{type:"array",items:{anyOf:[{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"inputText"},placeholder:{type:"string"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"select"},placeholder:{type:"string"},options:{type:"array",items:{type:"object",properties:{id:{type:"string"},label:{type:"string"},value:{type:"any"}},required:["id","label","value"]}}},required:["name","label","inputType","options"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"colorPicker"},value:{type:"string"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"slider"},min:{type:"number"},max:{type:"number"},step:{type:"number"},value:{type:"number"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"slider-input"},min:{type:"number"},max:{type:"number"},step:{type:"number"},value:{type:"number"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"image"},width:{type:"number"},height:{type:"number"},placeholder:{type:"string"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"waveform"},width:{type:"number"},height:{type:"number"},placeholder:{type:"string"}},required:["name","label","inputType"],additionalProperties:!1}]}},actions:{type:"object",properties:{buttons:{type:"array",items:{type:"object",properties:{id:{type:"string"},content:{type:"string"}},required:["id","content"]}}}}}},fieldResources:{type:"object"}}},refs:{"action-*":{eventListeners:{click:{handler:"handleActionClick"}}},"input-*":{eventListeners:{"input-change":{handler:"handleInputChange"}}},"select-*":{eventListeners:{"select-change":{handler:"handleSelectChange"}}},"colorpicker-*":{eventListeners:{"colorpicker-change":{handler:"handleColorPickerChange"}}},"slider-*":{eventListeners:{"slider-change":{handler:"handleSliderChange"}}},"slider-input-*":{eventListeners:{"slider-input-value-change":{handler:"handleSliderInputChange"}}},"image-*":{eventListeners:{click:{handler:"handleImageClick"}}},"waveform-*":{eventListeners:{click:{handler:"handleWaveformClick"}}},"popover-input-*":{eventListeners:{"input-change":{handler:"handlePopoverInputChange"}}}},events:{"form-change":{},"extra-event":{}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f h=f p=md g=lg ${containerAttrString}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view g=sm w=f",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"title"}}],fast:!0},{type:8,properties:[{key:"rtgl-text c=mu-fg",value:{type:1,path:"description"}}],fast:!0}],fast:!0}}],fast:!0},{type:8,properties:[{key:"rtgl-view g=lg w=f",value:{type:9,items:[{type:7,itemVar:"field",indexVar:"i",iterable:{type:1,path:"fields"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-view g=md w=f",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view g=sm",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"field.label"}}],fast:!0},{type:8,properties:[{key:"rtgl-text s=sm c=mu-fg",value:{type:1,path:"field.description"}}],fast:!0}],fast:!0}}],fast:!0},{type:8,properties:[{key:'$if field.inputType == "read-only-text"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"read-only-text"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm",value:{type:1,path:"field.defaultValue"}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "inputText"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"inputText"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-input#input-${field.name} w=f placeholder=${field.placeholder} value=${field.defaultValue}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-input#input-",{type:1,path:"field.name"}," w=f placeholder=",{type:1,path:"field.placeholder"}," value=",{type:1,path:"field.defaultValue"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "popover-input"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"popover-input"}}],bodies:[{type:9,items:[{type:8,properties:[{key:'rtgl-popover-input#popover-input-${field.name} label="${field.label}" .defaultValue=fields[${i}].defaultValue',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-popover-input#popover-input-",{type:1,path:"field.name"},' label="',{type:1,path:"field.label"},'" .defaultValue=fields[',{type:1,path:"i"},"].defaultValue"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "select"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"select"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-select#select-${field.name} w=f .options=fields[${i}].options .placeholder=fields[${i}].placeholder .selectedValue=fields[${i}].defaultValue",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-select#select-",{type:1,path:"field.name"}," w=f .options=fields[",{type:1,path:"i"},"].options .placeholder=fields[",{type:1,path:"i"},"].placeholder .selectedValue=fields[",{type:1,path:"i"},"].defaultValue"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "colorPicker"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"colorPicker"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-color-picker#colorpicker-${field.name} value=${field.defaultValue}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-color-picker#colorpicker-",{type:1,path:"field.name"}," value=",{type:1,path:"field.defaultValue"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "slider"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"slider"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-slider#slider-${field.name} w=f min=${field.min} max=${field.max} step=${field.step} value=${field.defaultValue}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-slider#slider-",{type:1,path:"field.name"}," w=f min=",{type:1,path:"field.min"}," max=",{type:1,path:"field.max"}," step=",{type:1,path:"field.step"}," value=",{type:1,path:"field.defaultValue"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "slider-input"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"slider-input"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-slider-input#slider-input-${field.name} w=f min=${field.min} max=${field.max} step=${field.step} defaultValue=${field.defaultValue}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-slider-input#slider-input-",{type:1,path:"field.name"}," w=f min=",{type:1,path:"field.min"}," max=",{type:1,path:"field.max"}," step=",{type:1,path:"field.step"}," defaultValue=",{type:1,path:"field.defaultValue"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "image" && field.imageSrc',value:{type:6,conditions:[{type:4,op:6,left:{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"image"}},right:{type:1,path:"field.imageSrc"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-image#image-${field.name} src=${field.imageSrc} w=${field.width} h=${field.height} cur=p",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image#image-",{type:1,path:"field.name"}," src=",{type:1,path:"field.imageSrc"}," w=",{type:1,path:"field.width"}," h=",{type:1,path:"field.height"}," cur=p"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "image" && !field.imageSrc',value:{type:6,conditions:[{type:4,op:6,left:{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"image"}},right:{type:5,op:0,operand:{type:1,path:"field.imageSrc"}}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view#image-${field.name} w=${field.width} h=${field.height} bc=ac bw=sm ah=c av=c cur=p p=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text c=mu-fg ta=c",value:{type:1,path:"field.placeholderText"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#image-",{type:1,path:"field.name"}," w=",{type:1,path:"field.width"}," h=",{type:1,path:"field.height"}," bc=ac bw=sm ah=c av=c cur=p p=md"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "waveform" && field.waveformData',value:{type:6,conditions:[{type:4,op:6,left:{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"waveform"}},right:{type:1,path:"field.waveformData"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-waveform#waveform-${field.name} .waveformData=fields[${i}].waveformData w=${field.width} h=${field.height}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-waveform#waveform-",{type:1,path:"field.name"}," .waveformData=fields[",{type:1,path:"i"},"].waveformData w=",{type:1,path:"field.width"}," h=",{type:1,path:"field.height"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "waveform" && !field.waveformData',value:{type:6,conditions:[{type:4,op:6,left:{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"waveform"}},right:{type:5,op:0,operand:{type:1,path:"field.waveformData"}}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view#waveform-${field.name} w=${field.width} h=${field.height} bc=ac bw=sm ah=c av=c cur=p p=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text c=mu-fg ta=c",value:{type:1,path:"field.placeholderText"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#waveform-",{type:1,path:"field.name"}," w=",{type:1,path:"field.width"}," h=",{type:1,path:"field.height"}," bc=ac bw=sm ah=c av=c cur=p p=md"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1}}],fast:!1},{type:8,properties:[{key:"rtgl-view g=sm w=f",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h ah=e g=sm w=f",value:{type:9,items:[{type:7,itemVar:"button",indexVar:"i",iterable:{type:1,path:"actions.buttons"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-button#action-${button.id}",value:{type:1,path:"button.content"},parsedKey:{type:2,parts:["rtgl-button#action-",{type:1,path:"button.id"}]}}],fast:!0}],fast:!0}}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view w=f h=f p=md g=lg ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var et={};V(et,{handleClickStart:()=>Rs});var Rs=(e,t)=>{let{dispatchEvent:r,store:s}=t;console.log("handle click start",s.selectPath()),r(new CustomEvent("clickStart",{detail:{path:s.selectPath()}}))};var tt={};V(tt,{INITIAL_STATE:()=>Ds,selectPath:()=>zs,setState:()=>Ks,toViewData:()=>Bs});var Ds=Object.freeze({}),Ms=["id","class","style","slot"],Ws=e=>Object.entries(e).filter(([t])=>!Ms.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),Bs=({state:e,props:t,attrs:r})=>{console.log("attrs",{attrs:r,entries:Object.entries(r)});let s=r.start?JSON.parse(decodeURIComponent(r.start)):t.start;return{containerAttrString:Ws(r),start:s||{label:"",image:{src:"",width:32,height:32,alt:""}}}},zs=({props:e})=>e.start.path,Ks=e=>{};var sr={elementName:"rtgl-navbar",viewDataSchema:{type:"object",properties:{containerAttrString:{type:"string"},start:{type:"object",properties:{label:{type:"string"},href:{type:"string"},image:{type:"object",properties:{src:{type:"string"}}},hasImage:{type:"boolean"},hasHref:{type:"boolean"}}}}},propsSchema:{type:"object",properties:{start:{type:"object",properties:{label:{type:"string"},href:{type:"string"},image:{type:"object",properties:{src:{type:"string"}}}}}}},refs:{start:{eventListeners:{click:{handler:"handleClickStart"}}}},events:{clickStart:{type:"object",properties:{path:{type:"string"}}}},anchors:[[{"rtgl-text s=lg":"${start.label}"},{"$if start.image && start.image.src":[{"rtgl-image w=${start.image.width} h=${start.image.height} src=${start.image.src} alt=${start.image.alt}":null}]}]],template:{type:9,items:[{type:8,properties:[{key:"rtgl-view bgc=bg d=h h=48 av=c w=f ${containerAttrString}",value:{type:9,items:[{type:8,properties:[{key:"$if start.href",value:{type:6,conditions:[{type:1,path:"start.href"},{type:1,path:"start.path"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"a href=${start.href}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h av=c g=lg g=md",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"start.label"}}],fast:!0},{type:8,properties:[{key:"$if start.image && start.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"start.image"},right:{type:1,path:"start.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-image w=${start.image.width} h=${start.image.height} src=${start.image.src} alt=${start.image.alt}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"start.image.width"}," h=",{type:1,path:"start.image.height"}," src=",{type:1,path:"start.image.src"}," alt=",{type:1,path:"start.image.alt"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],fast:!1}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["a href=",{type:1,path:"start.href"}]}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view#start d=h av=c g=lg g=md cur=p",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"start.label"}}],fast:!0},{type:8,properties:[{key:"$if start.image && start.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"start.image"},right:{type:1,path:"start.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-image w=${start.image.width} h=${start.image.height} src=${start.image.src} alt=${start.image.alt}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"start.image.width"}," h=",{type:1,path:"start.image.height"}," src=",{type:1,path:"start.image.src"}," alt=",{type:1,path:"start.image.alt"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],fast:!1}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h av=c g=lg g=md",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"start.label"}}],fast:!0},{type:8,properties:[{key:"$if start.image && start.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"start.image"},right:{type:1,path:"start.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-image w=${start.image.width} h=${start.image.height} src=${start.image.src} alt=${start.image.alt}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"start.image.width"}," h=",{type:1,path:"start.image.height"}," src=",{type:1,path:"start.image.src"}," alt=",{type:1,path:"start.image.alt"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],fast:!1}}],fast:!1}],fast:!1}],id:null}}],fast:!1},{type:8,properties:[{key:"rtgl-view flex=1",value:{type:0,value:null}}],fast:!0},{type:8,properties:[{key:"rtgl-view d=h av=c g=lg",value:{type:9,items:[{type:8,properties:[{key:"slot name=right",value:{type:0,value:null}}],fast:!0}],fast:!0}}],fast:!0}],fast:!1},parsedKey:{type:2,parts:["rtgl-view bgc=bg d=h h=48 av=c w=f ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var rt={};V(rt,{handleBeforeMount:()=>Hs});var ir=(e,t)=>{let{store:r,render:s}=t,i,n=-1/0;e.forEach(o=>{let a=o.getBoundingClientRect();a.top<=20&&a.top>n&&(n=a.top,i=o.id)}),i&&i!==r.selectCurrentId()&&(r.setCurrentId(i),s())},Fs=(e,t)=>{let{store:r,render:s}=t,i=e.querySelectorAll("rtgl-text[id]"),n=Array.from(i),o=n.map(l=>({id:l.id,href:`#${l.id}`,title:l.textContent}));r.setItems(o),ir(n,t),s();let a=ir.bind(void 0,n,t);return e.addEventListener("scroll",a,{passive:!0}),()=>{e.removeEventListener("scroll",a)}},Hs=e=>{let{attrs:t}=e;requestAnimationFrame(()=>{let r=document.getElementById(t["target-id"]),s=Fs(r,e);return()=>{s()}})};var st={};V(st,{INITIAL_STATE:()=>Us,selectCurrentId:()=>Gs,selectState:()=>Js,setContentContainer:()=>Qs,setCurrentId:()=>Xs,setItems:()=>Ys,toViewData:()=>qs});var Us=Object.freeze({items:[],currentId:null,contentContainer:null}),qs=({state:e})=>({items:e.items.map(t=>({...t,c:t.id===e.currentId?"fg":"mu-fg"})),currentId:e.currentId}),Js=({state:e})=>e,Gs=({state:e})=>e.currentId,Ys=(e,t)=>{e.items=t},Xs=(e,t)=>{e.currentId=t},Qs=(e,t)=>{e.contentContainer=t};var nr={elementName:"rtgl-page-outline",viewDataSchema:{type:"object",properties:{items:{type:"array",items:{type:"object",properties:{slug:{type:"string"},title:{type:"string"}}}},selectedSlug:{type:"string",nullable:!0}}},propsSchema:{type:"object",properties:{}},refs:{},events:{onItemClick:{type:"object"}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view h=f w=272",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f g=sm mt=xl",value:{type:9,items:[{type:7,itemVar:"item",indexVar:"i",iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-view pv=xs av=c href=${item.href}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=${item.c} h-c=fg",value:{type:1,path:"item.title"},parsedKey:{type:2,parts:["rtgl-text s=sm c=",{type:1,path:"item.c"}," h-c=fg"]}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view pv=xs av=c href=",{type:1,path:"item.href"}]}}],fast:!0}],fast:!0}}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1}],fast:!1}};var it={};V(it,{handleBeforeMount:()=>Zs,handleInputChange:()=>si,handleInputKeydown:()=>ni,handleOnUpdate:()=>ei,handlePopoverClose:()=>ri,handleSubmitClick:()=>ii,handleTextClick:()=>ti});var Zs=e=>{let{store:t,props:r}=e;(r.value!==void 0||r.defaultValue!==void 0)&&t.setValue(r.value||r.defaultValue||"")},ei=(e,t)=>{let{oldProps:r,newProps:s}=e,{store:i,props:n,render:o}=t;r.defaultValue!==s.defaultValue&&i.setValue(n.defaultValue||""),o()},ti=(e,t)=>{let{store:r,render:s,getRefIds:i,attrs:n}=t,o=r.selectValue();r.setTempValue(o),r.openPopover({position:{x:e.currentTarget.getBoundingClientRect().left,y:e.currentTarget.getBoundingClientRect().bottom}});let{input:a}=i();a.elm.value=o,s(),n["auto-focus"]&&setTimeout(()=>{a.elm.focus()},50)},ri=(e,t)=>{let{store:r,render:s}=t;r.closePopover(),s()},si=(e,t)=>{let{store:r,render:s,dispatchEvent:i}=t,n=e.detail.value;r.setTempValue(n),i(new CustomEvent("temp-input-change",{detail:{value:n},bubbles:!0})),s()},ii=(e,t)=>{let{store:r,render:s,dispatchEvent:i,getRefIds:n}=t,{input:o}=n(),a=o.elm.value;r.setValue(a),r.closePopover(),i(new CustomEvent("input-change",{detail:{value:a},bubbles:!0})),s()},ni=(e,t)=>{let{store:r,render:s,dispatchEvent:i,getRefIds:n}=t;if(e.key==="Enter"){let{input:o}=n(),a=o.elm.value;r.closePopover(),i(new CustomEvent("input-change",{detail:{value:a},bubbles:!0})),s()}else e.key==="Escape"&&(r.closePopover(),s())};var nt={};V(nt,{INITIAL_STATE:()=>ai,closePopover:()=>ci,openPopover:()=>pi,selectValue:()=>hi,setTempValue:()=>li,setValue:()=>di,toViewData:()=>oi});var ai=Object.freeze({isOpen:!1,position:{x:0,y:0},value:"",tempValue:""}),oi=({attrs:e,state:t,props:r})=>{let s=t.value||"-";return{isOpen:t.isOpen,position:t.position,value:s??"-",tempValue:t.tempValue,placeholder:r.placeholder??"",label:e.label}},li=(e,t)=>{e.tempValue=t},pi=(e,t)=>{let{position:r}=t;e.position=r,e.isOpen=!0,e.hasUnsavedChanges=!1},ci=e=>{e.isOpen=!1,e.tempValue=""},di=(e,t)=>{e.value=t},hi=({state:e})=>e.value;var ar={elementName:"rtgl-popover-input",viewDataSchema:{type:"object"},attrsSchema:{type:"object",properties:{"auto-focus":{type:"boolean"}}},propsSchema:{type:"object",properties:{value:{type:"string"},defaultValue:{type:"string"},placeholder:{type:"string"},onChange:{type:"function"}}},refs:{"text-display":{eventListeners:{click:{handler:"handleTextClick"}}},popover:{eventListeners:{close:{handler:"handlePopoverClose"}}},input:{eventListeners:{"input-change":{handler:"handleInputChange"},keydown:{handler:"handleInputKeydown"}}},submit:{eventListeners:{click:{handler:"handleSubmitClick"}}}},events:{"input-change":{}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view#text-display w=f cur=p",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"value"}}],fast:!0}],fast:!0}}],fast:!0},{type:8,properties:[{key:"rtgl-popover#popover ?open=${isOpen} x=${position.x} y=${position.y}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view g=md w=240 slot=content bgc=background br=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"label"}}],fast:!0},{type:8,properties:[{key:"rtgl-input#input w=f placeholder=${placeholder}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-input#input w=f placeholder=",{type:1,path:"placeholder"}]}}],fast:!0},{type:8,properties:[{key:"rtgl-view w=f ah=e",value:{type:9,items:[{type:8,properties:[{key:"rtgl-button#submit",value:{type:0,value:"Submit"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-popover#popover ?open=",{type:1,path:"isOpen"}," x=",{type:1,path:"position.x"}," y=",{type:1,path:"position.y"}]}}],fast:!0}],fast:!0}};var at={};V(at,{handleBeforeMount:()=>ui,handleButtonClick:()=>fi,handleClickOptionsPopoverOverlay:()=>mi,handleOptionClick:()=>yi});var ui=e=>{let{store:t,props:r,render:s}=e;if(r.selectedValue!==null&&r.selectedValue!==void 0&&r.options){let i=r.options.find(n=>n.value===r.selectedValue);i&&(t.updateSelectOption(i),s())}},fi=(e,t)=>{let{store:r,render:s,getRefIds:i}=t;r.openOptionsPopover({position:{y:e.clientY,x:e.clientX}}),s()},mi=(e,t)=>{let{store:r,render:s}=t;r.closeOptionsPopover(),s()},yi=(e,t)=>{let{render:r,dispatchEvent:s,props:i,store:n}=t,o=e.currentTarget.id.replace("option-",""),a=i.options[o];n.updateSelectOption(a),i.onChange&&typeof i.onChange=="function"&&i.onChange(a.value),s(new CustomEvent("option-selected",{detail:{value:a.value,label:a.label},bubbles:!0})),s(new CustomEvent("select-change",{detail:{selectedValue:a.value},bubbles:!0})),r()};var ot={};V(ot,{INITIAL_STATE:()=>gi,closeOptionsPopover:()=>xi,openOptionsPopover:()=>wi,selectState:()=>bi,toViewData:()=>vi,updateSelectOption:()=>_i});var gi=Object.freeze({isOpen:!1,position:{x:0,y:0},selectedValue:null,selectedLabel:null}),vi=({state:e,props:t})=>{let r=t.placeholder||"Select an option",s=e.selectedValue!==null?e.selectedValue:t.selectedValue;if(s!=null&&t.options){let n=t.options.find(o=>o.value===s);n&&(r=n.label)}else e.selectedLabel&&(r=e.selectedLabel);let i=(t.options||[]).map(n=>({...n,isSelected:n.value===s,bgc:n.value===s?"mu":""}));return{isOpen:e.isOpen,position:e.position,options:i,selectedValue:s,selectedLabel:r,placeholder:t.placeholder||"Select an option"}},bi=({state:e})=>e,wi=(e,t)=>{let{position:r}=t;e.position=r,e.isOpen=!0},xi=e=>{e.isOpen=!1},_i=(e,t)=>{e.selectedValue=t.value,e.selectedLabel=t.label,e.isOpen=!1};var or={elementName:"rtgl-select",viewDataSchema:{type:"object"},propsSchema:{type:"object",properties:{options:{type:"array",items:{type:"object",properties:{id:{type:"string"},label:{type:"string"},value:{type:"any"}}}},selectedValue:{type:"any"},placeholder:{type:"string"},onChange:{type:"function"}}},refs:{"select-button":{eventListeners:{click:{handler:"handleButtonClick"}}},popover:{eventListeners:{close:{handler:"handleClickOptionsPopoverOverlay"}}},"option-*":{eventListeners:{click:{handler:"handleOptionClick"}}}},events:{},template:{type:9,items:[{type:8,properties:[{key:"rtgl-button#select-button v=ol",value:{type:9,items:[{type:1,path:"selectedLabel"}],fast:!0}}],fast:!0},{type:8,properties:[{key:"rtgl-popover#popover ?open=${isOpen} x=${position.x} y=${position.y}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view wh=300 g=xs slot=content bgc=background br=md sv=true",value:{type:9,items:[{type:7,itemVar:"option",indexVar:"i",iterable:{type:1,path:"options"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-view#option-${i} w=f h-bgc=ac ph=lg pv=md cur=p br=md bgc=${option.bgc}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"option.label"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#option-",{type:1,path:"i"}," w=f h-bgc=ac ph=lg pv=md cur=p br=md bgc=",{type:1,path:"option.bgc"}]}}],fast:!0}],fast:!0}}],fast:!1}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-popover#popover ?open=",{type:1,path:"isOpen"}," x=",{type:1,path:"position.x"}," y=",{type:1,path:"position.y"}]}}],fast:!1}],fast:!1}};var lt={};V(lt,{handleHeaderClick:()=>Si,handleItemClick:()=>ki});var Si=(e,t)=>{let{store:r,dispatchEvent:s}=t,i,n=r.selectHeader();e.currentTarget.id==="header-label"?i=n.labelPath:e.currentTarget.id==="header-image"?i=n.image.path:e.currentTarget.id==="header"&&(i=n.path),s(new CustomEvent("headerClick",{detail:{path:i},bubbles:!0,composed:!0}))},ki=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("item-",""),n=r.selectItem(i);s(new CustomEvent("itemClick",{detail:{item:n},bubbles:!0,composed:!0}))};var ct={};V(ct,{INITIAL_STATE:()=>Ei,selectActiveItem:()=>Ti,selectHeader:()=>Ii,selectItem:()=>Oi,setState:()=>Li,toViewData:()=>Ci});var Ei=Object.freeze({}),Ai=["id","class","style","slot"],$i=e=>Object.entries(e).filter(([t])=>!Ai.includes(t)).map(([t,r])=>`${t}=${r}`).join(" ");function pt(e,t=null){let r=[];for(let s of e){let i=s.id||s.href||s.path,n=t===i;if(r.push({id:i,title:s.title,href:s.href,type:s.type||"item",icon:s.icon,hrefAttr:s.href?`href=${s.href}`:"",isSelected:n,itemBgc:n?"ac":"bg",itemHoverBgc:n?"ac":"mu"}),s.items&&Array.isArray(s.items))for(let o of s.items){let a=o.id||o.href||o.path,l=t===a;r.push({id:a,title:o.title,href:o.href,type:o.type||"item",icon:o.icon,hrefAttr:o.href?`href=${o.href}`:"",isSelected:l,itemBgc:l?"ac":"bg",itemHoverBgc:l?"ac":"mu"})}}return r}var Ci=({state:e,props:t,attrs:r})=>{let s=r.header?JSON.parse(decodeURIComponent(r.header)):t.header,i=r.items?JSON.parse(decodeURIComponent(r.items)):t.items,n=r.selectedItemId||t.selectedItemId,o=$i(r),a=r.mode||"full",l=s||{label:"",path:"",image:{src:"",alt:"",width:0,height:0}},p=i?pt(i,n):[],h=a==="full"?272:64,d=a==="full"?"fs":"c",m=a==="full"?"fs":"c",v=a==="full"?"lg":"sm",c=a==="full"?"md":"sm",u=a==="shrunk-lg"?48:40,f=a==="shrunk-lg"?28:20,y=a==="shrunk-lg"?"md":"sm",b=a==="full",w=a==="full",x=a==="full"?"fs":"c",k=a==="full"?"":`ah=${m}`,_=a==="full"?"f":u;return{containerAttrString:o,mode:a,header:l,items:p,sidebarWidth:h,headerAlign:d,itemAlign:m,headerPadding:v,itemPadding:c,itemHeight:u,iconSize:f,firstLetterSize:y,showLabels:b,showGroupLabels:w,itemContentAlign:x,itemAlignAttr:k,itemWidth:_,headerWidth:_,selectedItemId:n,ah:a==="shrunk-lg"||a==="shrunk-md"?"c":""}},Ii=({state:e,props:t,attrs:r})=>r.header?JSON.parse(decodeURIComponent(r.header)):t.header,Ti=({state:e,props:t})=>(t.items?pt(t.items):[]).find(s=>s.active),Oi=({state:e,props:t,attrs:r},s)=>{let i=r.items?JSON.parse(decodeURIComponent(r.items)):t.items;return(i?pt(i):[]).find(o=>o.id===s)},Li=e=>{};var lr={elementName:"rtgl-sidebar",viewDataSchema:{type:"object",properties:{containerAttrString:{type:"string"},mode:{type:"string",enum:["full","shrunk","shrunk-lg"],default:"full"},sidebarWidth:{type:"number"},headerAlign:{type:"string"},itemAlign:{type:"string"},headerPadding:{type:"string"},itemPadding:{type:"string"},itemHeight:{type:"number"},iconSize:{type:"number"},firstLetterSize:{type:"string"},showLabels:{type:"boolean"},showGroupLabels:{type:"boolean"},itemContentAlign:{type:"string"},itemAlignAttr:{type:"string"},itemWidth:{type:"string"},headerWidth:{type:"string"},selectedItemId:{type:"string"},header:{type:"object",properties:{label:{type:"string"},href:{type:"string"},image:{type:"object",properties:{src:{type:"string"},width:{type:"number"},height:{type:"number"},alt:{type:"string"}}}}},items:{type:"array",items:{type:"object",properties:{title:{type:"string"},slug:{type:"string"},type:{type:"string"},active:{type:"boolean"},icon:{type:"string"}}}}}},propsSchema:{type:"object",properties:{selectedItemId:{type:"string"},header:{type:"object",properties:{label:{type:"string"},href:{type:"string"},image:{type:"object",properties:{src:{type:"string"},width:{type:"number"},height:{type:"number"},alt:{type:"string"}}}}},items:{type:"array",items:{type:"object",properties:{title:{type:"string"},slug:{type:"string"},type:{type:"string"},items:{type:"array"}}}}}},refs:{"header-image":{eventListeners:{click:{handler:"handleHeaderClick"}}},"header-label":{eventListeners:{click:{handler:"handleHeaderClick"}}},header:{eventListeners:{click:{handler:"handleHeaderClick"}}},"item-*":{eventListeners:{click:{handler:"handleItemClick"}}}},events:{headerClick:{type:"object",properties:{path:{type:"string"}}}},anchors:[[{"$if header.image && header.image.src":[{"$if header.image.href":[{"a href=${header.image.href}":[{'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"':null}]}],"$elif header.image.path":[{"rtgl-view#header-image cur=p":[{'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"':null}]}],$else:[{'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"':null}]}]},{"$if header.label && showLabels":[{"$if header.labelHref":[{"rtgl-text href=${header.labelHref} s=lg":"${header.label}"}],"$elif header.labelPath":[{"rtgl-view#header-label cur=p":[{"rtgl-text s=lg":"${header.label}"}]}],$else:[{"rtgl-text s=lg":"${header.label}"}]}]}]],template:{type:9,items:[{type:8,properties:[{key:"rtgl-view h=f w=${sidebarWidth} bwr=xs ah=${ah} ${containerAttrString}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view ph=${headerPadding} pv=lg",value:{type:9,items:[{type:8,properties:[{key:"$if header.href",value:{type:6,conditions:[{type:1,path:"header.href"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view href=${header.href} d=h av=c ah=${headerAlign} g=lg w=${headerWidth}",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"$if header.image && header.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"header.image"},right:{type:1,path:"header.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"$if header.image.href",value:{type:6,conditions:[{type:1,path:"header.image.href"},{type:1,path:"header.image.path"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"a href=${header.image.href}",value:{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["a href=",{type:1,path:"header.image.href"}]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header-image cur=p",value:{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1},{type:8,properties:[{key:"$if header.label && showLabels",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"header.label"},right:{type:1,path:"showLabels"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"$if header.labelHref",value:{type:6,conditions:[{type:1,path:"header.labelHref"},{type:1,path:"header.labelPath"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-text href=${header.labelHref} s=lg",value:{type:1,path:"header.label"},parsedKey:{type:2,parts:["rtgl-text href=",{type:1,path:"header.labelHref"}," s=lg"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header-label cur=p",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"header.label"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"header.label"}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view href=",{type:1,path:"header.href"}," d=h av=c ah=",{type:1,path:"headerAlign"}," g=lg w=",{type:1,path:"headerWidth"}]}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header d=h av=c ah=${headerAlign} g=lg w=${headerWidth} cur=p",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"$if header.image && header.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"header.image"},right:{type:1,path:"header.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"$if header.image.href",value:{type:6,conditions:[{type:1,path:"header.image.href"},{type:1,path:"header.image.path"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"a href=${header.image.href}",value:{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["a href=",{type:1,path:"header.image.href"}]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header-image cur=p",value:{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1},{type:8,properties:[{key:"$if header.label && showLabels",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"header.label"},right:{type:1,path:"showLabels"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"$if header.labelHref",value:{type:6,conditions:[{type:1,path:"header.labelHref"},{type:1,path:"header.labelPath"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-text href=${header.labelHref} s=lg",value:{type:1,path:"header.label"},parsedKey:{type:2,parts:["rtgl-text href=",{type:1,path:"header.labelHref"}," s=lg"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header-label cur=p",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"header.label"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"header.label"}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view#header d=h av=c ah=",{type:1,path:"headerAlign"}," g=lg w=",{type:1,path:"headerWidth"}," cur=p"]}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view ph=",{type:1,path:"headerPadding"}," pv=lg"]}}],fast:!1},{type:8,properties:[{key:"rtgl-view w=f ph=${headerPadding} pb=lg g=xs ah=${ah}",value:{type:9,items:[{type:7,itemVar:"item",indexVar:"i",iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:'$if item.type == "groupLabel"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"item.type"},right:{type:0,value:"groupLabel"}},null],bodies:[{type:9,items:[{type:8,properties:[{key:"$if showGroupLabels",value:{type:6,conditions:[{type:1,path:"showGroupLabels"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view mt=md h=32 av=c ph=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=xs c=mu-fg",value:{type:1,path:"item.title"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view mt=md h=1 bgc=mu-bg",value:{type:0,value:null}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view#item-${item.id} ${item.hrefAttr} h=${itemHeight} av=c ${itemAlignAttr} ph=${itemPadding} w=${itemWidth} h-bgc=${item.itemHoverBgc} br=lg bgc=${item.itemBgc} cur=p",value:{type:9,items:[{type:8,properties:[{key:"$if item.icon",value:{type:6,conditions:[{type:1,path:"item.icon"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"$if showLabels",value:{type:6,conditions:[{type:1,path:"showLabels"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h ah=${itemContentAlign} g=sm",value:{type:9,items:[{type:8,properties:[{key:"rtgl-svg wh=16 svg=${item.icon} c=fg",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-svg wh=16 svg=",{type:1,path:"item.icon"}," c=fg"]}}],fast:!0},{type:8,properties:[{key:"rtgl-text s=sm",value:{type:1,path:"item.title"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view d=h ah=",{type:1,path:"itemContentAlign"}," g=sm"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-svg wh=${iconSize} svg=${item.icon} c=fg",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-svg wh=",{type:1,path:"iconSize"}," svg=",{type:1,path:"item.icon"}," c=fg"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"$if showLabels",value:{type:6,conditions:[{type:1,path:"showLabels"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm",value:{type:1,path:"item.title"}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view wh=${iconSize} br=f bgc=mu av=c ah=c",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=${firstLetterSize} c=fg",value:{type:1,path:"item.title.charAt(0).toUpperCase()"},parsedKey:{type:2,parts:["rtgl-text s=",{type:1,path:"firstLetterSize"}," c=fg"]}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view wh=",{type:1,path:"iconSize"}," br=f bgc=mu av=c ah=c"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view#item-",{type:1,path:"item.id"}," ",{type:1,path:"item.hrefAttr"}," h=",{type:1,path:"itemHeight"}," av=c ",{type:1,path:"itemAlignAttr"}," ph=",{type:1,path:"itemPadding"}," w=",{type:1,path:"itemWidth"}," h-bgc=",{type:1,path:"item.itemHoverBgc"}," br=lg bgc=",{type:1,path:"item.itemBgc"}," cur=p"]}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1}}],fast:!1},parsedKey:{type:2,parts:["rtgl-view w=f ph=",{type:1,path:"headerPadding"}," pb=lg g=xs ah=",{type:1,path:"ah"}]}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view h=f w=",{type:1,path:"sidebarWidth"}," bwr=xs ah=",{type:1,path:"ah"}," ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var dt={};V(dt,{handleBeforeMount:()=>Ni,handleValueChange:()=>Vi});var Ni=e=>{let{store:t,attrs:r}=e;t.setValue(r.defaultValue||0)},Vi=(e,t)=>{let{store:r,render:s,dispatchEvent:i}=t,n=Number(e.detail.value);r.setValue(n),s(),i(new CustomEvent("slider-input-value-change",{detail:{value:n},bubbles:!0}))};var ht={};V(ht,{INITIAL_STATE:()=>Pi,setValue:()=>Ri,toViewData:()=>ji});var Pi=Object.freeze({value:0}),ji=({state:e,attrs:t})=>({value:e.value,w:t.w||"",min:t.min||0,max:t.max||100,step:t.step||1}),Ri=(e,t)=>{e.value=t};var pr={elementName:"rtgl-slider-input",viewDataSchema:{type:"object"},attrsSchema:{type:"object",properties:{defaultValue:{type:"string",default:"0"},w:{type:"string",default:""},min:{type:"string",default:"0"},max:{type:"string",default:"100"},step:{type:"string",default:"1"}}},refs:{input:{eventListeners:{"input-change":{handler:"handleValueChange"}}},slider:{eventListeners:{"slider-change":{handler:"handleValueChange"}}}},events:{"form-change":{}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h av=c g=md w=${w}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-slider#slider w=f type=range min=${min} max=${max} step=${step} value=${value}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-slider#slider w=f type=range min=",{type:1,path:"min"}," max=",{type:1,path:"max"}," step=",{type:1,path:"step"}," value=",{type:1,path:"value"}]}}],fast:!0},{type:8,properties:[{key:"rtgl-view w=84",value:{type:9,items:[{type:8,properties:[{key:"rtgl-input#input w=f type=number min=${min} max=${max} step=${step} value=${value}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-input#input w=f type=number min=",{type:1,path:"min"}," max=",{type:1,path:"max"}," step=",{type:1,path:"step"}," value=",{type:1,path:"value"}]}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view d=h av=c g=md w=",{type:1,path:"w"}]}}],fast:!0}],fast:!0}};var ut={};V(ut,{handleBeforeMount:()=>Di,handleHeaderClick:()=>Wi,handleRowClick:()=>Mi});var Di=e=>{},Mi=(e,t)=>{let{dispatchEvent:r,props:s}=t,i=parseInt(e.currentTarget.id.replace("row-","")),n=s.data?.rows?.[i];n&&r(new CustomEvent("row-click",{detail:{rowIndex:i,rowData:n}}))},Wi=(e,t)=>{let{store:r,render:s,dispatchEvent:i}=t,n=e.currentTarget.id.replace("header-",""),o=r.selectSortInfo(),a="asc";o.column===n&&(o.direction==="asc"?a="desc":o.direction==="desc"&&(a=null)),a?r.setSortColumn({column:n,direction:a}):r.clearSort(),s(),i(new CustomEvent("header-click",{detail:{column:n,direction:a,sortInfo:a?{column:n,direction:a}:null}}))};var ft={};V(ft,{INITIAL_STATE:()=>Bi,clearSort:()=>Gi,selectSortInfo:()=>qi,selectState:()=>Ui,setSortColumn:()=>Ji,toViewData:()=>Hi});var Bi=Object.freeze({sortColumn:null,sortDirection:null}),zi=["id","class","style","slot"],Ki=e=>Object.entries(e).filter(([t])=>!zi.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),Fi=(e,t)=>{let r=t.split("."),s=e;for(let i of r){if(s==null)return null;s=s[i]}return s},Hi=({state:e,props:t,attrs:r})=>{let s=Ki(r),i=t.data||{columns:[],rows:[]},n=i.rows.map((o,a)=>{let l=i.columns.map(p=>{let h=Fi(o,p.key);return{key:p.key,value:h!=null?String(h):""}});return{index:a,cells:l}});return{containerAttrString:s,columns:i.columns||[],rows:n||[]}},Ui=({state:e})=>e,qi=({state:e})=>({column:e.sortColumn,direction:e.sortDirection}),Ji=(e,{column:t,direction:r})=>{e.sortColumn=t,e.sortDirection=r},Gi=e=>{e.sortColumn=null,e.sortDirection=null};var cr={elementName:"rtgl-table",viewDataSchema:{type:"object",properties:{columns:{type:"array"},rows:{type:"array"},containerAttrString:{type:"string"}}},propsSchema:{type:"object",properties:{data:{type:"object",properties:{columns:{type:"array",items:{type:"object",properties:{key:{type:"string"},label:{type:"string"}}}},rows:{type:"array",items:{type:"object"}}}},responsive:{type:"boolean",default:!0}}},refs:{"row-*":{eventListeners:{click:{handler:"handleRowClick"}}},"header-*":{eventListeners:{click:{handler:"handleHeaderClick"}}}},events:{},styles:{table:{width:"100%","border-collapse":"collapse","border-spacing":0},thead:{"border-bottom":"2px solid var(--border)"},th:{padding:"12px","text-align":"left","font-weight":500,color:"var(--foreground)","background-color":"var(--muted)",cursor:"pointer",position:"sticky",top:0,"z-index":1},"tbody tr":{"border-bottom":"1px solid var(--border)"},"tbody tr:last-child":{"border-bottom":"none"},td:{padding:"12px",color:"var(--foreground)"},".table-container":{width:"100%",height:"100%",overflow:"auto"},".empty-state":{"text-align":"center",padding:"24px",color:"var(--muted-foreground)"}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view.table-container ${containerAttrString}",value:{type:9,items:[{type:8,properties:[{key:"$if rows.length > 0",value:{type:6,conditions:[{type:4,op:2,left:{type:1,path:"rows.length"},right:{type:0,value:0}},null],bodies:[{type:9,items:[{type:8,properties:[{key:"table",value:{type:9,items:[{type:8,properties:[{key:"thead",value:{type:9,items:[{type:8,properties:[{key:"tr",value:{type:9,items:[{type:7,itemVar:"column",indexVar:"i",iterable:{type:1,path:"columns"},body:{type:9,items:[{type:8,properties:[{key:"th#header-${column.key}",value:{type:1,path:"column.label"},parsedKey:{type:2,parts:["th#header-",{type:1,path:"column.key"}]}}],fast:!0}],fast:!0}}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1},{type:8,properties:[{key:"tbody",value:{type:9,items:[{type:7,itemVar:"row",indexVar:"rowIndex",iterable:{type:1,path:"rows"},body:{type:9,items:[{type:8,properties:[{key:"tr#row-${row.index}",value:{type:9,items:[{type:7,itemVar:"cell",indexVar:"cellIndex",iterable:{type:1,path:"row.cells"},body:{type:9,items:[{type:8,properties:[{key:"td",value:{type:1,path:"cell.value"}}],fast:!0}],fast:!0}}],fast:!1},parsedKey:{type:2,parts:["tr#row-",{type:1,path:"row.index"}]}}],fast:!1}],fast:!1}}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view.empty-state w=f p=xl",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text c=mu-fg",value:{type:0,value:"No data available"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view.table-container ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var mt={};V(mt,{handleClickItem:()=>Yi});var Yi=(e,t)=>{let{dispatchEvent:r}=t,s=e.currentTarget.dataset.id;r(new CustomEvent("item-click",{detail:{id:s}}))};var yt={};V(yt,{INITIAL_STATE:()=>Xi,toViewData:()=>en});var Xi=Object.freeze({}),Qi=["id","class","style","slot"],Zi=e=>Object.entries(e).filter(([t])=>!Qi.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),en=({state:e,props:t,attrs:r})=>{let s=Zi(r),i=t.items||[],n=r["selected-tab"],o=i.map(a=>({...a,isSelected:a.id===n,bgColor:a.id===n?"ac":"",borderColor:a.id===n?"":"tr",textColor:a.id===n?"":"mu-fg"}));return{containerAttrString:s,items:o,selectedTab:n}};var dr={elementName:"rtgl-tabs",viewDataSchema:{type:"object",properties:{containerAttrString:{type:"string"},items:{type:"array",items:{type:"object",properties:{label:{type:"string"},id:{type:"string"},isSelected:{type:"boolean"},bgColor:{type:"string"},textColor:{type:"string"},borderColor:{type:"string"}}}},selectedTab:{type:"string"}}},propsSchema:{type:"object",properties:{items:{type:"array",items:{type:"object",properties:{label:{type:"string"},id:{type:"string"}}}}}},attrsSchema:{type:"object",properties:{"selected-tab":{type:"string"}}},refs:{"tab-*":{eventListeners:{click:{handler:"handleClickItem"}}}},events:{"item-click":{type:"object",properties:{id:{type:"string"}}}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h g=sm bgc=mu p=sm br=lg ${containerAttrString}",value:{type:9,items:[{type:7,itemVar:"item",indexVar:null,iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-view#tab-${item.id} data-id=${item.id} cur=p bgc=${item.bgColor} bw=xs bc=${item.borderColor} pv=md ph=lg br=lg",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=${item.textColor}",value:{type:1,path:"item.label"},parsedKey:{type:2,parts:["rtgl-text s=sm c=",{type:1,path:"item.textColor"}]}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#tab-",{type:1,path:"item.id"}," data-id=",{type:1,path:"item.id"}," cur=p bgc=",{type:1,path:"item.bgColor"}," bw=xs bc=",{type:1,path:"item.borderColor"}," pv=md ph=lg br=lg"]}}],fast:!0}],fast:!0}}],fast:!1},parsedKey:{type:2,parts:["rtgl-view d=h g=sm bgc=mu p=sm br=lg ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var gt={};V(gt,{handleAfterMount:()=>tn,handleOnUpdate:()=>rn});var tn=async e=>{let{props:t,store:r,render:s,getRefIds:i}=e,{waveformData:n}=t;r.setWaveformData(n),s();let o=i().canvas?.elm;o&&hr(n,o)},rn=async(e,t)=>{let{store:r,render:s,getRefIds:i,props:n}=t,{waveformData:o}=n;r.setWaveformData(o),s();let a=i().canvas?.elm;a&&hr(o,a)};async function hr(e,t){let r=t.getContext("2d"),s=t.getBoundingClientRect(),i=s.width,n=s.height;t.width=i,t.height=n;let o=t.width,a=t.height;if(r.clearRect(0,0,o,a),r.fillStyle="#1a1a1a",r.fillRect(0,0,o,a),!e||!e.data)return;let l=e.data,p=a/2,h=r.createLinearGradient(0,0,0,a);h.addColorStop(0,"#404040"),h.addColorStop(.5,"#A1A1A1"),h.addColorStop(1,"#404040");let d=Math.max(1,o/l.length),m=.2;for(let v=0;v<l.length;v++){let u=l[v]*(a*.85),f=v*d,y=p-u/2;r.fillStyle=h,r.fillRect(f,y,Math.max(1,d*(1-m)),u)}r.strokeStyle="rgba(255, 255, 255, 0.1)",r.lineWidth=1,r.beginPath(),r.moveTo(0,p),r.lineTo(o,p),r.stroke(),r.shadowBlur=10,r.shadowColor="#2196F3"}var vt={};V(vt,{INITIAL_STATE:()=>sn,setWaveformData:()=>nn,toViewData:()=>an});var sn=Object.freeze({waveformData:null}),nn=(e,t)=>{e.waveformData=t},an=({state:e,attrs:t,props:r})=>({isLoading:r.isLoading,w:t.w||"250",h:t.h||"150",waveformData:r.waveformData});var ur={elementName:"rtgl-waveform",attrsSchema:{type:"object",properties:{w:{type:"string",description:"Width of the waveform visualizer",default:"250"},h:{type:"string",description:"Height of the waveform visualizer",default:"150"}}},propsSchema:{type:"object",properties:{waveformData:{type:"object",description:"File ID of the waveform data in object storage"},isLoading:{type:"boolean",description:"Whether the waveform data is currently being loaded"}}},refs:{canvas:{selector:"canvas"}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f h=f pos=rel w=${w} h=${h}",value:{type:9,items:[{type:8,properties:[{key:"$if isLoading",value:{type:6,conditions:[{type:1,path:"isLoading"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f h=f av=c ah=c",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text c=mu-fg",value:{type:0,value:"..."}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:'canvas#canvas style="width:100%; height:100%;"',value:{type:0,value:null}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view w=f h=f pos=rel w=",{type:1,path:"w"}," h=",{type:1,path:"h"}]}}],fast:!1}],fast:!1}};var br=Symbol.for("immer-nothing"),fr=Symbol.for("immer-draftable"),K=Symbol.for("immer-state");function J(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var pe=Object.getPrototypeOf;function ce(e){return!!e&&!!e[K]}function re(e){return e?wr(e)||Array.isArray(e)||!!e[fr]||!!e.constructor?.[fr]||Ae(e)||$e(e):!1}var on=Object.prototype.constructor.toString();function wr(e){if(!e||typeof e!="object")return!1;let t=pe(e);if(t===null)return!0;let r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return r===Object?!0:typeof r=="function"&&Function.toString.call(r)===on}function _e(e,t){Ee(e)===0?Reflect.ownKeys(e).forEach(r=>{t(r,e[r],e)}):e.forEach((r,s)=>t(s,r,e))}function Ee(e){let t=e[K];return t?t.type_:Array.isArray(e)?1:Ae(e)?2:$e(e)?3:0}function xt(e,t){return Ee(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function xr(e,t,r){let s=Ee(e);s===2?e.set(t,r):s===3?e.add(r):e[t]=r}function ln(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Ae(e){return e instanceof Map}function $e(e){return e instanceof Set}function te(e){return e.copy_||e.base_}function _t(e,t){if(Ae(e))return new Map(e);if($e(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);let r=wr(e);if(t===!0||t==="class_only"&&!r){let s=Object.getOwnPropertyDescriptors(e);delete s[K];let i=Reflect.ownKeys(s);for(let n=0;n<i.length;n++){let o=i[n],a=s[o];a.writable===!1&&(a.writable=!0,a.configurable=!0),(a.get||a.set)&&(s[o]={configurable:!0,writable:!0,enumerable:a.enumerable,value:e[o]})}return Object.create(pe(e),s)}else{let s=pe(e);if(s!==null&&r)return{...e};let i=Object.create(s);return Object.assign(i,e)}}function $t(e,t=!1){return Ce(e)||ce(e)||!re(e)||(Ee(e)>1&&(e.set=e.add=e.clear=e.delete=pn),Object.freeze(e),t&&Object.entries(e).forEach(([r,s])=>$t(s,!0))),e}function pn(){J(2)}function Ce(e){return Object.isFrozen(e)}var cn={};function se(e){let t=cn[e];return t||J(0,e),t}var ye;function _r(){return ye}function dn(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function mr(e,t){t&&(se("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function St(e){kt(e),e.drafts_.forEach(hn),e.drafts_=null}function kt(e){e===ye&&(ye=e.parent_)}function yr(e){return ye=dn(ye,e)}function hn(e){let t=e[K];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function gr(e,t){t.unfinalizedDrafts_=t.drafts_.length;let r=t.drafts_[0];return e!==void 0&&e!==r?(r[K].modified_&&(St(t),J(4)),re(e)&&(e=Se(t,e),t.parent_||ke(t,e)),t.patches_&&se("Patches").generateReplacementPatches_(r[K].base_,e,t.patches_,t.inversePatches_)):e=Se(t,r,[]),St(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==br?e:void 0}function Se(e,t,r){if(Ce(t))return t;let s=t[K];if(!s)return _e(t,(i,n)=>vr(e,s,t,i,n,r)),t;if(s.scope_!==e)return t;if(!s.modified_)return ke(e,s.base_,!0),s.base_;if(!s.finalized_){s.finalized_=!0,s.scope_.unfinalizedDrafts_--;let i=s.copy_,n=i,o=!1;s.type_===3&&(n=new Set(i),i.clear(),o=!0),_e(n,(a,l)=>vr(e,s,i,a,l,r,o)),ke(e,i,!1),r&&e.patches_&&se("Patches").generatePatches_(s,r,e.patches_,e.inversePatches_)}return s.copy_}function vr(e,t,r,s,i,n,o){if(ce(i)){let a=n&&t&&t.type_!==3&&!xt(t.assigned_,s)?n.concat(s):void 0,l=Se(e,i,a);if(xr(r,s,l),ce(l))e.canAutoFreeze_=!1;else return}else o&&r.add(i);if(re(i)&&!Ce(i)){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1)return;Se(e,i),(!t||!t.scope_.parent_)&&typeof s!="symbol"&&Object.prototype.propertyIsEnumerable.call(r,s)&&ke(e,i)}}function ke(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&$t(t,r)}function un(e,t){let r=Array.isArray(e),s={type_:r?1:0,scope_:t?t.scope_:_r(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1},i=s,n=Ct;r&&(i=[s],n=ge);let{revoke:o,proxy:a}=Proxy.revocable(i,n);return s.draft_=a,s.revoke_=o,a}var Ct={get(e,t){if(t===K)return e;let r=te(e);if(!xt(r,t))return fn(e,r,t);let s=r[t];return e.finalized_||!re(s)?s:s===bt(e.base_,t)?(wt(e),e.copy_[t]=At(s,e)):s},has(e,t){return t in te(e)},ownKeys(e){return Reflect.ownKeys(te(e))},set(e,t,r){let s=Sr(te(e),t);if(s?.set)return s.set.call(e.draft_,r),!0;if(!e.modified_){let i=bt(te(e),t),n=i?.[K];if(n&&n.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if(ln(r,i)&&(r!==void 0||xt(e.base_,t)))return!0;wt(e),Et(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_[t]=!0),!0},deleteProperty(e,t){return bt(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,wt(e),Et(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let r=te(e),s=Reflect.getOwnPropertyDescriptor(r,t);return s&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:s.enumerable,value:r[t]}},defineProperty(){J(11)},getPrototypeOf(e){return pe(e.base_)},setPrototypeOf(){J(12)}},ge={};_e(Ct,(e,t)=>{ge[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});ge.deleteProperty=function(e,t){return ge.set.call(this,e,t,void 0)};ge.set=function(e,t,r){return Ct.set.call(this,e[0],t,r,e[0])};function bt(e,t){let r=e[K];return(r?te(r):e)[t]}function fn(e,t,r){let s=Sr(t,r);return s?"value"in s?s.value:s.get?.call(e.draft_):void 0}function Sr(e,t){if(!(t in e))return;let r=pe(e);for(;r;){let s=Object.getOwnPropertyDescriptor(r,t);if(s)return s;r=pe(r)}}function Et(e){e.modified_||(e.modified_=!0,e.parent_&&Et(e.parent_))}function wt(e){e.copy_||(e.copy_=_t(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var mn=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.produce=(t,r,s)=>{if(typeof t=="function"&&typeof r!="function"){let n=r;r=t;let o=this;return function(l=n,...p){return o.produce(l,h=>r.call(this,h,...p))}}typeof r!="function"&&J(6),s!==void 0&&typeof s!="function"&&J(7);let i;if(re(t)){let n=yr(this),o=At(t,void 0),a=!0;try{i=r(o),a=!1}finally{a?St(n):kt(n)}return mr(n,s),gr(i,n)}else if(!t||typeof t!="object"){if(i=r(t),i===void 0&&(i=t),i===br&&(i=void 0),this.autoFreeze_&&$t(i,!0),s){let n=[],o=[];se("Patches").generateReplacementPatches_(t,i,n,o),s(n,o)}return i}else J(1,t)},this.produceWithPatches=(t,r)=>{if(typeof t=="function")return(o,...a)=>this.produceWithPatches(o,l=>t(l,...a));let s,i;return[this.produce(t,r,(o,a)=>{s=o,i=a}),s,i]},typeof e?.autoFreeze=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy)}createDraft(e){re(e)||J(8),ce(e)&&(e=yn(e));let t=yr(this),r=At(e,void 0);return r[K].isManual_=!0,kt(t),r}finishDraft(e,t){let r=e&&e[K];(!r||!r.isManual_)&&J(9);let{scope_:s}=r;return mr(s,t),gr(void 0,s)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){let i=t[r];if(i.path.length===0&&i.op==="replace"){e=i.value;break}}r>-1&&(t=t.slice(r+1));let s=se("Patches").applyPatches_;return ce(e)?s(e,t):this.produce(e,i=>s(i,t))}};function At(e,t){let r=Ae(e)?se("MapSet").proxyMap_(e,t):$e(e)?se("MapSet").proxySet_(e,t):un(e,t);return(t?t.scope_:_r()).drafts_.push(r),r}function yn(e){return ce(e)||J(10,e),kr(e)}function kr(e){if(!re(e)||Ce(e))return e;let t=e[K],r;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=_t(e,t.scope_.immer_.useStrictShallowCopy_)}else r=_t(e,!0);return _e(r,(s,i)=>{xr(r,s,kr(i))}),t&&(t.finalized_=!1),r}var F=new mn,Er=F.produce,Zo=F.produceWithPatches.bind(F),el=F.setAutoFreeze.bind(F),tl=F.setUseStrictShallowCopy.bind(F),rl=F.applyPatches.bind(F),sl=F.createDraft.bind(F),il=F.finishDraft.bind(F);var g={LITERAL:0,VARIABLE:1,INTERPOLATION:2,FUNCTION:3,BINARY:4,UNARY:5,CONDITIONAL:6,LOOP:7,OBJECT:8,ARRAY:9},H={EQ:0,NEQ:1,GT:2,LT:3,GTE:4,LTE:5,AND:6,OR:7,IN:8},Ie={NOT:0};var de=class extends Error{constructor(t){super(`Render Error: ${t}`),this.name="JemplRenderError"}};var Ar=(e,t)=>{if(t===null)return new de(`Cannot iterate over null value at '$for ${e}'`);if(t===void 0)return new de(`Cannot iterate over undefined value at '$for ${e}'`);let r=typeof t;return new de(`Cannot iterate over non-array value (got: ${r}) at '$for ${e}'`)},$r=(e,t)=>{let r=t&&Object.keys(t).length>0?Object.keys(t).join(", "):"no custom functions provided";return new de(`Unknown function '${e}' (${r})`)};var gn=(e,t,r={})=>I(e,r,t,{}),I=(e,t,r,s)=>{if(e.var&&!e.type)return M(e.var,r,s);if(e.type===g.LITERAL)return e.value;if(e.type===g.VARIABLE)return M(e.path,r,s);if(e.type===g.INTERPOLATION)return vn(e.parts,t,r,s);switch(e.type){case g.FUNCTION:return Cr(e,t,r,s);case g.BINARY:return Ir(e,t,r,s);case g.UNARY:return Tr(e,t,r,s);case g.CONDITIONAL:return wn(e,t,r,s);case g.LOOP:return En(e,t,r,s);case g.OBJECT:return $n(e,t,r,s);case g.ARRAY:return Cn(e,t,r,s);default:throw new Error(`Unknown node type: ${e.type}`)}},ee=new Map,M=(e,t,r)=>{if(!e)return;if(e in r)return r[e];let s=ee.get(e);s||(s=e.split("."),ee.set(e,s));let i=t;for(let n=0;n<s.length;n++){let o=s[n];if(o in r){i=r[o];continue}if(i==null)return;i=i[o]}return i},vn=(e,t,r,s)=>{let i=[];for(let n of e)if(typeof n=="string")i.push(n);else{let o=I(n,t,r,s);i.push(o!=null?String(o):"")}return i.join("")},Cr=(e,t,r,s)=>{let i=t[e.name];if(!i)throw $r(e.name,t);let n=e.args.map(o=>I(o,t,r,s));return i(...n)},Te=(e,t,r,s)=>{if(e.var&&!e.type)return M(e.var,r,s);switch(e.type){case g.VARIABLE:return M(e.path,r,s);case g.LITERAL:return e.value;case g.BINARY:return Ir(e,t,r,s);case g.UNARY:return Tr(e,t,r,s);case g.FUNCTION:return Cr(e,t,r,s);default:return I(e,t,r,s)}},Ir=(e,t,r,s)=>{if(e.op===H.AND||e.op===H.OR){let o=Te(e.left,t,r,s),a=Te(e.right,t,r,s);switch(e.op){case H.AND:return o&&a;case H.OR:return o||a}}let i=I(e.left,t,r,s),n=I(e.right,t,r,s);switch(e.op){case H.EQ:return i==n;case H.NEQ:return i!=n;case H.GT:return i>n;case H.LT:return i<n;case H.GTE:return i>=n;case H.LTE:return i<=n;case H.IN:return Array.isArray(n)?n.includes(i):!1;default:throw new Error(`Unknown binary operator: ${e.op}`)}},Tr=(e,t,r,s)=>{let i=e.op===Ie.NOT?Te(e.operand,t,r,s):I(e.operand,t,r,s);switch(e.op){case Ie.NOT:return!i;default:throw new Error(`Unknown unary operator: ${e.op}`)}},bn=(e,t,r,s)=>{if(e.conditions.length===2&&e.conditions[1]===null){let i=e.conditions[0];if(i.type===g.VARIABLE)if(M(i.path,r,s)){let o=e.bodies[0];if(o.type===g.OBJECT&&o.properties.length<=5){let a={};for(let l of o.properties){let p=l.parsedKey?I(l.parsedKey,t,r,s):l.key,h=l.value;if(h.type===g.LITERAL)a[p]=h.value;else if(h.type===g.VARIABLE)a[p]=M(h.path,r,s);else if(h.type===g.INTERPOLATION){let d=[];for(let m of h.parts)if(typeof m=="string")d.push(m);else if(m.type===g.VARIABLE){let v=M(m.path,r,s);d.push(v!=null?String(v):"")}else{let v=I(m,t,r,s);d.push(v!=null?String(v):"")}a[p]=d.join("")}else a[p]=I(h,t,r,s)}return a}}else{let o=e.bodies[1];if(o.type===g.OBJECT&&o.properties.length<=5){let a={};for(let l of o.properties){let p=l.parsedKey?I(l.parsedKey,t,r,s):l.key,h=l.value;if(h.type===g.LITERAL)a[p]=h.value;else if(h.type===g.VARIABLE)a[p]=M(h.path,r,s);else if(h.type===g.INTERPOLATION){let d=[];for(let m of h.parts)if(typeof m=="string")d.push(m);else if(m.type===g.VARIABLE){let v=M(m.path,r,s);d.push(v!=null?String(v):"")}else{let v=I(m,t,r,s);d.push(v!=null?String(v):"")}a[p]=d.join("")}else a[p]=I(h,t,r,s)}return a}}}return null},wn=(e,t,r,s)=>{let i=bn(e,t,r,s);if(i!==null)return i;for(let n=0;n<e.conditions.length;n++){let o=e.conditions[n];if(o===null||Te(o,t,r,s))return I(e.bodies[n],t,r,s)}return Or},xn=(e,t)=>{let r=e.body,s=e.itemVar;if(r.type===g.CONDITIONAL&&r.conditions.length===1&&r.conditions[0].type===g.VARIABLE){let i=r.conditions[0].path,n=r.bodies[0];if(i.startsWith(s+".")){let o=i.substring(s.length+1);if(n.type===g.OBJECT&&n.properties.length<=5){for(let l of n.properties)if(l.parsedKey)return null;let a=[];for(let l=0;l<t.length;l++){let p=t[l];if(p[o]){let h={};for(let d of n.properties){let m=d.key,v=d.value;if(v.type===g.LITERAL)h[m]=v.value;else if(v.type===g.VARIABLE){let c=v.path;if(c===s)h[m]=p;else if(c.startsWith(s+".")){let u=c.substring(s.length+1);h[m]=p[u]}else return null}else if(v.type===g.INTERPOLATION){let c=[],u=!0;for(let f of v.parts)if(typeof f=="string")c.push(f);else if(f.type===g.VARIABLE){let y=f.path;if(y===s)c.push(p!=null?String(p):"");else if(y.startsWith(s+".")){let b=y.substring(s.length+1),w=p[b];c.push(w!=null?String(w):"")}else{u=!1;break}}else{u=!1;break}if(!u)return null;h[m]=c.join("")}else return null}a.push(h)}}return a}}}return null},_n=(e,t)=>{let r=e.body,s=e.itemVar,i=xn(e,t);if(i!==null)return i;if(r.type===g.OBJECT&&r.properties.length<=5){for(let a of r.properties)if(a.parsedKey)return null;let n=[],o=!0;for(let a of r.properties){let l=a.key,p=a.value;if(p.type===g.LITERAL)n.push({key:l,type:"literal",value:p.value});else if(p.type===g.VARIABLE){let h=p.path;if(h===s)n.push({key:l,type:"item"});else if(h.startsWith(s+".")){let d=h.substring(s.length+1);if(!d.includes("."))n.push({key:l,type:"prop",prop:d});else{o=!1;break}}else{o=!1;break}}else if(p.type===g.INTERPOLATION&&p.parts.length===1){let h=p.parts[0];if(h.type===g.VARIABLE){let d=h.path;if(d===s)n.push({key:l,type:"item_string"});else if(d.startsWith(s+".")){let m=d.substring(s.length+1);if(!m.includes("."))n.push({key:l,type:"prop_string",prop:m});else{o=!1;break}}else{o=!1;break}}else{o=!1;break}}else{o=!1;break}}if(o){let a=new Array(t.length);if(n.length===3&&n[0].type==="prop"&&n[0].key==="id"&&n[1].type==="prop_string"&&n[1].key==="title"&&n[2].type==="prop"&&n[2].key==="completed")for(let l=0;l<t.length;l++){let p=t[l];a[l]={id:p.id,title:p.title!=null?String(p.title):"",completed:p.completed}}else for(let l=0;l<t.length;l++){let p=t[l],h={};for(let d of n)if(d.type==="literal")h[d.key]=d.value;else if(d.type==="item")h[d.key]=p;else if(d.type==="prop")h[d.key]=p[d.prop];else if(d.type==="item_string")h[d.key]=p!=null?String(p):"";else if(d.type==="prop_string"){let m=p[d.prop];h[d.key]=m!=null?String(m):""}a[l]=h}return a}}return null},Sn=(e,t,r,s,i)=>{let n=[],o=e.body;if(o.type===g.OBJECT&&o.fast!==!1){let a=e.itemVar,l=e.indexVar;for(let p=0;p<i.length;p++){let h=i[p],d={},m={...s,[a]:h,...l&&{[l]:p}};for(let v of o.properties){let c=v.parsedKey?I(v.parsedKey,t,r,m):v.key,u=v.value;if(u.type===g.LITERAL)d[c]=u.value;else if(u.type===g.VARIABLE){let f=u.path;if(f===a)d[c]=h;else if(f===l)d[c]=p;else if(f.startsWith(a+".")){let y=f.substring(a.length+1);if(!y.includes("."))d[c]=h[y];else{let b=ee.get(y)||(ee.set(y,y.split(".")),ee.get(y)),w=h;for(let x of b){if(w==null){w=void 0;break}w=w[x]}d[c]=w}}else d[c]=M(f,r,{...s,[a]:h,...l&&{[l]:p}})}else if(u.type===g.INTERPOLATION){let f=[];for(let y of u.parts)if(typeof y=="string")f.push(y);else if(y.type===g.VARIABLE){let b=y.path,w;if(b===a)w=h;else if(b===l)w=p;else if(b.startsWith(a+".")){let x=b.substring(a.length+1);if(!x.includes("."))w=h[x];else{let k=ee.get(x)||(ee.set(x,x.split(".")),ee.get(x)),_=h;for(let $ of k){if(_==null){_=void 0;break}_=_[$]}w=_}}else w=M(b,r,{...s,[a]:h,...l&&{[l]:p}});f.push(w!=null?String(w):"")}else{let b={...s,[a]:h,...l&&{[l]:p}},w=I(y,t,r,b);f.push(w!=null?String(w):"")}d[c]=f.join("")}else{let f={...s,[a]:h,...l&&{[l]:p}};d[c]=I(u,t,r,f)}}n.push(d)}return n}return null},kn=(e,t,r)=>{let s=e.body;if(s.type===g.OBJECT&&s.properties.length===1&&s.properties[0].key==="$if item.visible"){let n=s.properties[0].value;if(n.type===g.CONDITIONAL&&n.conditions.length===1&&n.conditions[0].type===g.VARIABLE&&n.conditions[0].path==="item.visible"){let o=n.bodies[0];if(o.type===g.OBJECT&&o.properties.length===2){let a=o.properties[0],l=o.properties[1];if(a.key==="id"&&a.value.type===g.VARIABLE&&a.value.path==="item.id"&&l.key==="$if item.highlighted"&&l.value.type===g.CONDITIONAL){let p=[];for(let h=0;h<t.length;h++){let d=t[h];if(d.visible){let m={id:d.id};d.highlighted?(m.highlight=!0,m.message=`This item is highlighted: ${d.name}`):(m.highlight=!1,m.message=d.name),p.push(m)}}return p}}}}return null},En=(e,t,r,s)=>{let i=I(e.iterable,t,r,s);if(!Array.isArray(i)){let a=`${e.itemVar}${e.indexVar?`, ${e.indexVar}`:""} in ${e.iterable.path}`;throw Ar(a,i)}if(!e.indexVar){let a=kn(e,i,e.itemVar);if(a!==null)return a}if(!e.indexVar){let a=_n(e,i);if(a!==null)return a}let n=Sn(e,t,r,s,i);if(n!==null)return n;let o=[];for(let a=0;a<i.length;a++){let l=e.indexVar?{...s,[e.itemVar]:i[a],[e.indexVar]:a}:{...s,[e.itemVar]:i[a]},p=I(e.body,t,r,l);Array.isArray(p)&&p.length===1?o.push(p[0]):o.push(p)}return o},An=(e,t,r,s)=>{if(e.properties.length===1){let i=e.properties[0],n=i.parsedKey?I(i.parsedKey,t,r,s):i.key,o=i.value;if(o.type===g.OBJECT&&o.properties.length<=10){let a={},l={},p=!0;for(let h of o.properties){let d=h.parsedKey?I(h.parsedKey,t,r,s):h.key,m=h.value;if(m.type===g.LITERAL)l[d]=m.value;else if(m.type===g.VARIABLE)l[d]=M(m.path,r,s);else if(m.type===g.INTERPOLATION){let v=[];for(let c of m.parts)if(typeof c=="string")v.push(c);else if(c.type===g.VARIABLE){let u=M(c.path,r,s);v.push(u!=null?String(u):"")}else{p=!1;break}if(!p)break;l[d]=v.join("")}else if(m.type===g.OBJECT&&m.properties.length<=5){let v={};for(let c of m.properties){let u=c.key,f=c.value;if(f.type===g.LITERAL)v[u]=f.value;else if(f.type===g.VARIABLE)v[u]=M(f.path,r,s);else if(f.type===g.INTERPOLATION){let y=[];for(let b of f.parts)if(typeof b=="string")y.push(b);else if(b.type===g.VARIABLE){let w=M(b.path,r,s);y.push(w!=null?String(w):"")}else{p=!1;break}if(!p)break;v[u]=y.join("")}else{p=!1;break}}if(!p)break;l[d]=v}else{p=!1;break}}if(p)return a[n]=l,a}}return null},$n=(e,t,r,s)=>{let i=An(e,t,r,s);if(i!==null)return i;if(e.fast){let l={};for(let p of e.properties){let h=p.parsedKey?I(p.parsedKey,t,r,s):p.key,d=p.value;if(d.type===g.LITERAL)l[h]=d.value;else if(d.type===g.VARIABLE)l[h]=M(d.path,r,s);else if(d.type===g.INTERPOLATION){let m=[];for(let v of d.parts)if(typeof v=="string")m.push(v);else if(v.type===g.VARIABLE){let c=M(v.path,r,s);m.push(c!=null?String(c):"")}else{let c=I(v,t,r,s);m.push(c!=null?String(c):"")}l[h]=m.join("")}else l[h]=I(d,t,r,s)}return l}let n={},o=null,a=!1;for(let l of e.properties)if(!l.key.startsWith("$if ")&&!l.key.match(/^\$if\s+\w+.*:?$/)&&!l.key.startsWith("$elif")&&!l.key.startsWith("$else")&&!l.key.startsWith("$for ")){a=!0;break}for(let l of e.properties)if(l.key.startsWith("$if ")||l.key.match(/^\$if\s+\w+.*:?$/)){let p=I(l.value,t,r,s);if(!a&&p!==null&&p!==void 0)return Array.isArray(p)&&p.length===1?p[0]:p;typeof p=="object"&&p!==null&&!Array.isArray(p)&&Object.assign(n,p)}else if(!l.key.startsWith("$for ")){let p=l.value;if(p&&p.type===g.OBJECT&&p.properties){let h=p.properties.find(d=>d.key.startsWith("$for "));if(h){let d=I(h.value,t,r,s);d!==void 0&&(n[l.key]=d)}else{let d=I(l.value,t,r,s);d!==void 0&&(n[l.key]=d)}}else{let h=l.parsedKey?I(l.parsedKey,t,r,s):l.key,d=I(l.value,t,r,s);d!==void 0&&(n[h]=d)}}return n},Or={},Cn=(e,t,r,s)=>{let i=[];for(let n of e.items)if(n.type===g.LOOP){let o=I(n,t,r,s);i.push(o)}else{let o=I(n,t,r,s);o!==Or&&i.push(o)}return i},Oe=gn;var Le=e=>Array.isArray(e)?e.reduce((t,r)=>{if(Array.isArray(r))t.push(...Le(r));else{if(r&&typeof r=="object"){let s=Object.entries(r);if(s.length>0){let[i,n]=s[0];Array.isArray(n)&&(r={[i]:Le(n)})}}t.push(r)}return t},[]):e;var Lr=(e,t)=>{if(!t)return e;let r=[],s="",i=!1,n=null;for(let o=0;o<t.length;o++){let a=t[o];if(!i&&a===".")s&&(r.push(s),s="");else if(!i&&a==="[")s&&(r.push(s),s=""),i=!0;else if(i&&a==="]"){if(s){if(s.startsWith('"')&&s.endsWith('"')||s.startsWith("'")&&s.endsWith("'"))r.push(s.slice(1,-1));else{let l=Number(s);r.push(isNaN(l)?s:l)}s=""}i=!1,n=null}else i&&(a==='"'||a==="'")&&(n?a===n&&(n=null):n=a),s+=a}return s&&r.push(s),r.reduce((o,a)=>o&&o[a],e)},Nr=({h:e,template:t,viewData:r,refs:s,handlers:i})=>{let n=Oe(t,r,{}),o=Le(n),a=Ln({h:e,items:o,refs:s,handlers:i,viewData:r});return e("div",{style:{display:"contents"}},a)},Ln=({h:e,items:t,refs:r={},handlers:s={},viewData:i={}})=>{if(!Array.isArray(t))return console.error("Input to createVirtualDom must be an array."),[e("div",{},[])];function n(o,a=""){return o.map((l,p)=>{if(typeof l=="string"||typeof l=="number")return String(l);if(typeof l!="object"||l===null)return console.warn("Skipping invalid item in DOM structure:",l),null;let h=Object.entries(l);if(h.length===0)return null;let[d,m]=h[0];if(!isNaN(Number(d)))return Array.isArray(m)?n(m,`${a}.${d}`):typeof m=="object"&&m!==null&&Object.entries(m).length>0?n([m],`${a}.${d}`):String(m);h.length>1&&console.warn("Item has multiple keys, processing only the first:",d);let v,c,u=d.indexOf(" ");u===-1?(v=d,c=""):(v=d.substring(0,u),c=d.substring(u+1).trim());let f=v.split(/[.#]/)[0],y=f.includes("-"),b={},w={};if(c){let A=/(\S+?)=(?:\"([^\"]*)\"|\'([^\']*)\'|([^\s]+))/g,S,N=new Set;for(;(S=A.exec(c))!==null;)if(N.add(S[1]),S[1].startsWith(".")){let U=S[1].substring(1),fe=S[4];w[U]=Lr(i,fe)}else if(S[1].startsWith("?")){let U=S[1].substring(1),fe=S[2]||S[3]||S[4],be;fe==="true"?be=!0:fe==="false"?be=!1:be=Lr(i,fe),be&&(b[U]="")}else b[S[1]]=S[2]||S[3]||S[4];let j=c,D=[],G,Pe=/(\S+?)=(?:\"([^\"]*)\"|\'([^\']*)\'|([^\s]+))/g;for(;(G=Pe.exec(c))!==null;)D.push(G[0]);D.forEach(U=>{j=j.replace(U," ")});let je=/\b(\S+?)(?=\s|$)/g,R;for(;(R=je.exec(j))!==null;){let U=R[1];!N.has(U)&&!U.startsWith(".")&&!U.includes("=")&&(b[U]="")}}let x=v.match(/#([^.#\s]+)/);x&&!Object.prototype.hasOwnProperty.call(b,"id")&&(b.id=x[1]);let k=null;b.id?k=b.id:y&&(k=f);let _=Object.create(null),$=null;if(y)$=f;else{let A=v.match(/\.([^.#]+)/g);A&&A.forEach(N=>{let j=N.substring(1);_[j]=!0});let S=v.match(/#([^.#\s]+)/);S&&($=S[1])}let E;typeof m=="string"||typeof m=="number"?E=String(m):Array.isArray(m)?E=n(m,`${a}.${d}`):E=[],$&&!y&&(b.id=$);let T=Object.create(null);if(k&&r){let A=[];if(Object.keys(r).forEach(S=>{if(S.includes("*")){let N="^"+S.replace(/[.*+?^${}()|[\\\]\\]/g,"\\$&").replace(/\\\*/g,".*")+"$";try{new RegExp(N).test(k)&&A.push(S)}catch(j){console.warn(`[Parser] Invalid regex pattern created from refKey '${S}': ${N}`,j)}}else k===S&&A.push(S)}),A.length>0){A.sort((N,j)=>{let D=!N.includes("*"),G=!j.includes("*");return D&&!G?-1:!D&&G?1:j.length-N.length});let S=A[0];if(r[S]&&r[S].eventListeners){let N=r[S].eventListeners;Object.entries(N).forEach(([j,D])=>{D.handler&&s[D.handler]?T[j]=G=>{s[D.handler](G)}:D.handler&&console.warn(`[Parser] Handler '${D.handler}' for refKey '${S}' (matching elementId '${k}') is referenced but not found in available handlers.`)})}}}let L={};if(k)L.key=k;else if(v){let A=a?`${a}.${p}`:String(p);if(L.key=`${v}-${A}`,Object.keys(w).length>0){let S=JSON.stringify(w).substring(0,50);L.key+=`-${S}`}}Object.keys(b).length>0&&(L.attrs=b),Object.keys(_).length>0&&(L.class=_),Object.keys(T).length>0&&(L.on=T),Object.keys(w).length>0&&(L.props=w),y&&(L.hook={update:(A,S)=>{let N=A.data?.props||{},j=S.data?.props||{},D=A.data?.attrs||{},G=S.data?.attrs||{},Pe=JSON.stringify(N)!==JSON.stringify(j),je=JSON.stringify(D)!==JSON.stringify(G);if(Pe||je){let R=S.elm;R&&R.render&&typeof R.render=="function"&&(R.setAttribute("isDirty","true"),requestAnimationFrame(()=>{if(R.render(),R.removeAttribute("isDirty"),R.handlers&&R.handlers.handleOnUpdate){let U={...R.deps||{},store:R.store,render:R.render.bind(R),handlers:R.handlers,dispatchEvent:R.dispatchEvent.bind(R),refIds:R.refIds||{},getRefIds:()=>R.refIds||{}};R.handlers.handleOnUpdate({oldProps:N,newProps:j,oldAttrs:D,newAttrs:G},U)}}))}}});try{return e(f,L,E)}catch(A){return console.error("Error creating virtual node:",A,{tagName:f,snabbdomData:L,childrenOrText:E}),e("div",{},["Error creating element"])}}).filter(Boolean)}return n(t)};var Nn=(e,t)=>{if(!t||typeof t!="object")return"";let r="",s=n=>Object.entries(n).map(([o,a])=>` ${o}: ${a};`).join(`
919
+ `))}constructor(){super(),e.initializeStyleSheet(),this.shadow=this.attachShadow({mode:"open"}),this.shadow.adoptedStyleSheets=[e.styleSheet],this._popoverOverlay=document.createElement("div"),this._popoverOverlay.className="popover-overlay",this.shadow.appendChild(this._popoverOverlay),this._popoverOverlay.addEventListener("click",()=>{this.dispatchEvent(new CustomEvent("close",{detail:{}}))}),this._popoverOverlay.addEventListener("contextmenu",t=>{t.preventDefault(),this.dispatchEvent(new CustomEvent("close",{detail:{}}))}),this._popoverContainer=document.createElement("div"),this._popoverContainer.className="popover-container",this.shadow.appendChild(this._popoverContainer),this._slotElement=null,this._isOpen=!1,this._handleEscKey=this._handleEscKey.bind(this)}static get observedAttributes(){return["open","x","y","placement"]}connectedCallback(){this.hasAttribute("open")&&this._show()}disconnectedCallback(){this._removeGlobalListeners()}attributeChangedCallback(t,r,s){t==="open"?s!==null&&!this._isOpen?this._show():s===null&&this._isOpen&&this._hide():(t==="x"||t==="y"||t==="placement")&&this._isOpen&&this._updatePosition()}_show(){this._isOpen||(this._slotElement||(this._slotElement=document.createElement("slot"),this._slotElement.setAttribute("name","content"),this._popoverContainer.appendChild(this._slotElement)),this._isOpen=!0,this._updatePosition(),this._addGlobalListeners())}_hide(){this._isOpen&&(this._isOpen=!1,this._slotElement&&(this._popoverContainer.removeChild(this._slotElement),this._slotElement=null),this._removeGlobalListeners())}_updatePosition(){let t=parseFloat(this.getAttribute("x")||"0"),r=parseFloat(this.getAttribute("y")||"0"),s=this.getAttribute("placement")||"bottom-start";this.removeAttribute("positioned"),requestAnimationFrame(()=>{let i=this._popoverContainer.getBoundingClientRect(),{left:n,top:o}=this._calculatePosition(t,r,i.width,i.height,s);this._popoverContainer.style.left=`${n}px`,this._popoverContainer.style.top=`${o}px`,requestAnimationFrame(()=>{this.setAttribute("positioned","")})})}_calculatePosition(t,r,s,i,n){let a=t,l=r;switch(n){case"top":a=t-s/2,l=r-i-8;break;case"top-start":a=t,l=r-i-8;break;case"top-end":a=t-s,l=r-i-8;break;case"right":a=t+8,l=r-i/2;break;case"right-start":a=t+8,l=r;break;case"right-end":a=t+8,l=r-i;break;case"bottom":a=t-s/2,l=r+8;break;case"bottom-start":a=t,l=r+8;break;case"bottom-end":a=t-s,l=r+8;break;case"left":a=t-s-8,l=r-i/2;break;case"left-start":a=t-s-8,l=r;break;case"left-end":a=t-s-8,l=r-i;break}let p=8;return a=Math.max(p,Math.min(a,window.innerWidth-s-p)),l=Math.max(p,Math.min(l,window.innerHeight-i-p)),{left:a,top:l}}_addGlobalListeners(){setTimeout(()=>{document.addEventListener("keydown",this._handleEscKey)},0)}_removeGlobalListeners(){document.removeEventListener("keydown",this._handleEscKey)}_handleEscKey(t){t.key==="Escape"&&this.dispatchEvent(new CustomEvent("close",{detail:{}}))}get popover(){return this._popoverContainer}},Zt=({render:e,html:t})=>qe;var Je={};V(Je,{handleClickItem:()=>ps});var ps=(e,t)=>{let{dispatchEvent:r}=t,s=e.currentTarget.dataset.id;r(new CustomEvent("item-click",{detail:{id:s}}))};var Ge={};V(Ge,{INITIAL_STATE:()=>cs,toViewData:()=>us});var cs=Object.freeze({}),ds=["id","class","style","slot"],hs=e=>Object.entries(e).filter(([t])=>!ds.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),us=({props:e,attrs:t})=>{let r=hs(t),s=e.items||[],i=e.separator||"breadcrumb-arrow",n=[];return s.forEach((o,a)=>{n.push(o),a<s.length-1&&n.push({isSeparator:!0})}),{containerAttrString:r,items:n,separator:i}};var er={elementName:"rtgl-breadcrumb",viewDataSchema:{type:"object",properties:{containerAttrString:{type:"string"},items:{type:"array",items:{type:"object",properties:{label:{type:"string"},id:{type:"string"}}}},separator:{type:"string"}}},propsSchema:{type:"object",properties:{items:{type:"array",items:{type:"object",properties:{label:{type:"string"},id:{type:"string"}}}},separator:{type:"string",default:"breadcrumb-arrow"}}},refs:{"item-*":{eventListeners:{click:{handler:"handleClickItem"}}}},events:{"item-click":{type:"object",properties:{item:{type:"object",properties:{label:{type:"string"},id:{type:"string"}}},index:{type:"number"}}}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h av=c g=md p=sm ${containerAttrString}",value:{type:9,items:[{type:7,itemVar:"item",indexVar:null,iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:"$if item.isSeparator",value:{type:6,conditions:[{type:1,path:"item.isSeparator"},{type:1,path:"item.id"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-svg wh=16 svg=${separator} c=mu-fg",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-svg wh=16 svg=",{type:1,path:"separator"}," c=mu-fg"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#item-${item.id} data-id=${item.id} cur=p",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=mu-fg",value:{type:1,path:"item.label"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#item-",{type:1,path:"item.id"}," data-id=",{type:1,path:"item.id"}," cur=p"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=mu-fg",value:{type:1,path:"item.label"}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}}],fast:!1},parsedKey:{type:2,parts:["rtgl-view d=h av=c g=md p=sm ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var Ye={};V(Ye,{handleClickMenuItem:()=>ms,handleClosePopover:()=>fs});var fs=(e,t)=>{let{dispatchEvent:r}=t;r(new CustomEvent("close"))},ms=(e,t)=>{let{dispatchEvent:r}=t,s=parseInt(e.currentTarget.id.replace("option-","")),i=t.props.items[s];r(new CustomEvent("click-item",{detail:{index:s,item:i}}))};var Xe={};V(Xe,{INITIAL_STATE:()=>ys,toViewData:()=>gs});var ys=Object.freeze({}),gs=({props:e,attrs:t})=>({items:e.items||[],open:!!t.open,x:t.x,y:t.y,placement:t.placement});var tr={elementName:"rtgl-dropdown-menu",viewDataSchema:{type:"object"},propsSchema:{type:"object",properties:{items:{type:"array",items:{type:"object",properties:{label:{type:"string"},type:{type:"string",enum:["label","item","separator"]}}}}}},attrsSchema:{type:"object",properties:{open:{type:"string"},x:{type:"string"},y:{type:"string"},placement:{type:"string"}}},refs:{popover:{eventListeners:{close:{handler:"handleClosePopover"}}},"option-*":{eventListeners:{click:{handler:"handleClickMenuItem"}}}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-popover#popover ?open=${open} x=${x} y=${y} placement=${placement}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view wh=300 g=xs slot=content bgc=background br=md",value:{type:9,items:[{type:7,itemVar:"item",indexVar:"i",iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:"$if item.type == 'label'",value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"item.type"},right:{type:0,value:"label"}},{type:4,op:0,left:{type:1,path:"item.type"},right:{type:0,value:"item"}},{type:4,op:0,left:{type:1,path:"item.type"},right:{type:0,value:"separator"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f ph=lg pv=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=mu-fg",value:{type:1,path:"item.label"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#option-${i} w=f h-bgc=ac ph=lg pv=md cur=p br=md bgc=mu",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"item.label"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#option-",{type:1,path:"i"}," w=f h-bgc=ac ph=lg pv=md cur=p br=md bgc=mu"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f h=1 ph=lg mv=md bgc=bo",value:{type:0,value:null}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}}],fast:!1}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-popover#popover ?open=",{type:1,path:"open"}," x=",{type:1,path:"x"}," y=",{type:1,path:"y"}," placement=",{type:1,path:"placement"}]}}],fast:!1}],fast:!1}};var Qe={};V(Qe,{handleActionClick:()=>ws,handleBeforeMount:()=>vs,handleColorPickerChange:()=>ks,handleImageClick:()=>$s,handleInputChange:()=>xs,handleOnUpdate:()=>bs,handlePopoverInputChange:()=>_s,handleSelectChange:()=>Ss,handleSliderChange:()=>Es,handleSliderInputChange:()=>As,handleWaveformClick:()=>Cs});var vs=e=>{let{store:t,props:r}=e;t.setFormValues(r.defaultValues)},bs=(e,t)=>{let{oldAttrs:r,newAttrs:s}=e,{store:i,props:n,render:o}=t;r?.key!==s?.key&&(i.setFormValues(n.defaultValues),o())},le=(e,t,r,s)=>{s(new CustomEvent("form-change",{detail:{name:e,fieldValue:t,formValues:r}}))},ws=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("action-","");s(new CustomEvent("action-click",{detail:{actionId:i,formValues:r.selectFormValues()}}))},xs=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("input-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},_s=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("popover-input-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},Ss=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("select-","");i&&e.detail.selectedValue!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.selectedValue}),le(i,e.detail.selectedValue,r.selectFormValues(),s))},ks=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("colorpicker-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},Es=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("slider-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},As=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("slider-input-","");i&&e.detail.value!==void 0&&(r.setFormFieldValue({name:i,value:e.detail.value}),le(i,e.detail.value,r.selectFormValues(),s))},$s=(e,t)=>{e.type==="contextmenu"&&e.preventDefault();let{dispatchEvent:r}=t,s=e.currentTarget.id.replace("image-","");r(new CustomEvent("extra-event",{detail:{name:s,x:e.clientX,y:e.clientY,trigger:e.type}}))},Cs=(e,t)=>{e.type==="contextmenu"&&e.preventDefault();let{dispatchEvent:r}=t,s=e.currentTarget.id.replace("waveform-","");r(new CustomEvent("extra-event",{detail:{name:s,x:e.clientX,y:e.clientY,trigger:e.type}}))};var Ze={};V(Ze,{INITIAL_STATE:()=>Is,selectFormValues:()=>Vs,selectState:()=>Ns,setFormFieldValue:()=>js,setFormValues:()=>Ps,toViewData:()=>Ls});var Is=Object.freeze({formValues:{}}),Ts=["id","class","style","slot"],Os=e=>Object.entries(e).filter(([t])=>!Ts.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),Ls=({state:e,props:t,attrs:r})=>{let s=Os(r),i=structuredClone(t.form.fields||[]),n=t.defaultValues||{},o=t.fieldResources||{};return i.forEach(a=>{if(a.defaultValue=n[a.name],a.inputType==="image"){let l=o[a.name]?.src;a.imageSrc=l&&l.trim()?l:null,a.placeholderText=a.placeholder||"No Image"}if(a.inputType==="waveform"){let l=o[a.name]?.waveformData;a.waveformData=l||null,a.placeholderText=a.placeholder||"No Waveform"}}),{containerAttrString:s,title:t.form?.title||"",description:t?.form?.description||"",fields:i,actions:t?.form?.actions||{buttons:[]},formValues:e.formValues,fieldResources:o}},Ns=({state:e})=>e,Vs=({state:e})=>e.formValues,Ps=(e,t)=>{e.formValues=t||{}},js=(e,{name:t,value:r})=>{e.formValues[t]=r};var rr={elementName:"rtgl-form",viewDataSchema:{type:"object"},propsSchema:{type:"object",properties:{defaultValues:{type:"object"},form:{type:"object",properties:{title:{type:"string"},description:{type:"string"},fields:{type:"array",items:{anyOf:[{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"inputText"},placeholder:{type:"string"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"select"},placeholder:{type:"string"},options:{type:"array",items:{type:"object",properties:{id:{type:"string"},label:{type:"string"},value:{type:"any"}},required:["id","label","value"]}}},required:["name","label","inputType","options"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"colorPicker"},value:{type:"string"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"slider"},min:{type:"number"},max:{type:"number"},step:{type:"number"},value:{type:"number"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"slider-input"},min:{type:"number"},max:{type:"number"},step:{type:"number"},value:{type:"number"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"image"},width:{type:"number"},height:{type:"number"},placeholder:{type:"string"}},required:["name","label","inputType"],additionalProperties:!1},{type:"object",properties:{name:{type:"string"},label:{type:"string"},description:{type:"string"},inputType:{const:"waveform"},width:{type:"number"},height:{type:"number"},placeholder:{type:"string"}},required:["name","label","inputType"],additionalProperties:!1}]}},actions:{type:"object",properties:{buttons:{type:"array",items:{type:"object",properties:{id:{type:"string"},content:{type:"string"}},required:["id","content"]}}}}}},fieldResources:{type:"object"}}},refs:{"action-*":{eventListeners:{click:{handler:"handleActionClick"}}},"input-*":{eventListeners:{"input-change":{handler:"handleInputChange"}}},"select-*":{eventListeners:{"select-change":{handler:"handleSelectChange"}}},"colorpicker-*":{eventListeners:{"colorpicker-change":{handler:"handleColorPickerChange"}}},"slider-*":{eventListeners:{"slider-change":{handler:"handleSliderChange"}}},"slider-input-*":{eventListeners:{"slider-input-value-change":{handler:"handleSliderInputChange"}}},"image-*":{eventListeners:{click:{handler:"handleImageClick"},contextmenu:{handler:"handleImageClick"}}},"waveform-*":{eventListeners:{click:{handler:"handleWaveformClick"},contextmenu:{handler:"handleWaveformClick"}}},"popover-input-*":{eventListeners:{"input-change":{handler:"handlePopoverInputChange"}}}},events:{"form-change":{},"extra-event":{}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f h=f p=md g=lg ${containerAttrString}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view g=sm w=f",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"title"}}],fast:!0},{type:8,properties:[{key:"rtgl-text c=mu-fg",value:{type:1,path:"description"}}],fast:!0}],fast:!0}}],fast:!0},{type:8,properties:[{key:"rtgl-view g=lg w=f",value:{type:9,items:[{type:7,itemVar:"field",indexVar:"i",iterable:{type:1,path:"fields"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-view g=md w=f",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view g=sm",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"field.label"}}],fast:!0},{type:8,properties:[{key:"rtgl-text s=sm c=mu-fg",value:{type:1,path:"field.description"}}],fast:!0}],fast:!0}}],fast:!0},{type:8,properties:[{key:'$if field.inputType == "read-only-text"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"read-only-text"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm",value:{type:1,path:"field.defaultValue"}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "inputText"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"inputText"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-input#input-${field.name} w=f placeholder=${field.placeholder} value=${field.defaultValue}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-input#input-",{type:1,path:"field.name"}," w=f placeholder=",{type:1,path:"field.placeholder"}," value=",{type:1,path:"field.defaultValue"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "popover-input"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"popover-input"}}],bodies:[{type:9,items:[{type:8,properties:[{key:'rtgl-popover-input#popover-input-${field.name} label="${field.label}" .defaultValue=fields[${i}].defaultValue',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-popover-input#popover-input-",{type:1,path:"field.name"},' label="',{type:1,path:"field.label"},'" .defaultValue=fields[',{type:1,path:"i"},"].defaultValue"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "select"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"select"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-select#select-${field.name} w=f .options=fields[${i}].options .placeholder=fields[${i}].placeholder .selectedValue=fields[${i}].defaultValue",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-select#select-",{type:1,path:"field.name"}," w=f .options=fields[",{type:1,path:"i"},"].options .placeholder=fields[",{type:1,path:"i"},"].placeholder .selectedValue=fields[",{type:1,path:"i"},"].defaultValue"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "colorPicker"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"colorPicker"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-color-picker#colorpicker-${field.name} value=${field.defaultValue}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-color-picker#colorpicker-",{type:1,path:"field.name"}," value=",{type:1,path:"field.defaultValue"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "slider"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"slider"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-slider#slider-${field.name} w=f min=${field.min} max=${field.max} step=${field.step} value=${field.defaultValue}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-slider#slider-",{type:1,path:"field.name"}," w=f min=",{type:1,path:"field.min"}," max=",{type:1,path:"field.max"}," step=",{type:1,path:"field.step"}," value=",{type:1,path:"field.defaultValue"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "slider-input"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"slider-input"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-slider-input#slider-input-${field.name} w=f min=${field.min} max=${field.max} step=${field.step} defaultValue=${field.defaultValue}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-slider-input#slider-input-",{type:1,path:"field.name"}," w=f min=",{type:1,path:"field.min"}," max=",{type:1,path:"field.max"}," step=",{type:1,path:"field.step"}," defaultValue=",{type:1,path:"field.defaultValue"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "image" && field.imageSrc',value:{type:6,conditions:[{type:4,op:6,left:{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"image"}},right:{type:1,path:"field.imageSrc"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-image#image-${field.name} src=${field.imageSrc} w=${field.width} h=${field.height} cur=p",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image#image-",{type:1,path:"field.name"}," src=",{type:1,path:"field.imageSrc"}," w=",{type:1,path:"field.width"}," h=",{type:1,path:"field.height"}," cur=p"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "image" && !field.imageSrc',value:{type:6,conditions:[{type:4,op:6,left:{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"image"}},right:{type:5,op:0,operand:{type:1,path:"field.imageSrc"}}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view#image-${field.name} w=${field.width} h=${field.height} bc=ac bw=sm ah=c av=c cur=p p=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text c=mu-fg ta=c",value:{type:1,path:"field.placeholderText"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#image-",{type:1,path:"field.name"}," w=",{type:1,path:"field.width"}," h=",{type:1,path:"field.height"}," bc=ac bw=sm ah=c av=c cur=p p=md"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "waveform" && field.waveformData',value:{type:6,conditions:[{type:4,op:6,left:{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"waveform"}},right:{type:1,path:"field.waveformData"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-waveform#waveform-${field.name} .waveformData=fields[${i}].waveformData w=${field.width} h=${field.height} cur=p",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-waveform#waveform-",{type:1,path:"field.name"}," .waveformData=fields[",{type:1,path:"i"},"].waveformData w=",{type:1,path:"field.width"}," h=",{type:1,path:"field.height"}," cur=p"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1},{type:8,properties:[{key:'$if field.inputType == "waveform" && !field.waveformData',value:{type:6,conditions:[{type:4,op:6,left:{type:4,op:0,left:{type:1,path:"field.inputType"},right:{type:0,value:"waveform"}},right:{type:5,op:0,operand:{type:1,path:"field.waveformData"}}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view#waveform-${field.name} w=${field.width} h=${field.height} bc=ac bw=sm ah=c av=c cur=p p=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text c=mu-fg ta=c",value:{type:1,path:"field.placeholderText"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#waveform-",{type:1,path:"field.name"}," w=",{type:1,path:"field.width"}," h=",{type:1,path:"field.height"}," bc=ac bw=sm ah=c av=c cur=p p=md"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1}}],fast:!1},{type:8,properties:[{key:"rtgl-view g=sm w=f",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h ah=e g=sm w=f",value:{type:9,items:[{type:7,itemVar:"button",indexVar:"i",iterable:{type:1,path:"actions.buttons"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-button#action-${button.id}",value:{type:1,path:"button.content"},parsedKey:{type:2,parts:["rtgl-button#action-",{type:1,path:"button.id"}]}}],fast:!0}],fast:!0}}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view w=f h=f p=md g=lg ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var et={};V(et,{handleClickStart:()=>Rs});var Rs=(e,t)=>{let{dispatchEvent:r,store:s}=t;console.log("handle click start",s.selectPath()),r(new CustomEvent("clickStart",{detail:{path:s.selectPath()}}))};var tt={};V(tt,{INITIAL_STATE:()=>Ds,selectPath:()=>zs,setState:()=>Ks,toViewData:()=>Bs});var Ds=Object.freeze({}),Ms=["id","class","style","slot"],Ws=e=>Object.entries(e).filter(([t])=>!Ms.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),Bs=({state:e,props:t,attrs:r})=>{console.log("attrs",{attrs:r,entries:Object.entries(r)});let s=r.start?JSON.parse(decodeURIComponent(r.start)):t.start;return{containerAttrString:Ws(r),start:s||{label:"",image:{src:"",width:32,height:32,alt:""}}}},zs=({props:e})=>e.start.path,Ks=e=>{};var sr={elementName:"rtgl-navbar",viewDataSchema:{type:"object",properties:{containerAttrString:{type:"string"},start:{type:"object",properties:{label:{type:"string"},href:{type:"string"},image:{type:"object",properties:{src:{type:"string"}}},hasImage:{type:"boolean"},hasHref:{type:"boolean"}}}}},propsSchema:{type:"object",properties:{start:{type:"object",properties:{label:{type:"string"},href:{type:"string"},image:{type:"object",properties:{src:{type:"string"}}}}}}},refs:{start:{eventListeners:{click:{handler:"handleClickStart"}}}},events:{clickStart:{type:"object",properties:{path:{type:"string"}}}},anchors:[[{"rtgl-text s=lg":"${start.label}"},{"$if start.image && start.image.src":[{"rtgl-image w=${start.image.width} h=${start.image.height} src=${start.image.src} alt=${start.image.alt}":null}]}]],template:{type:9,items:[{type:8,properties:[{key:"rtgl-view bgc=bg d=h h=48 av=c w=f ${containerAttrString}",value:{type:9,items:[{type:8,properties:[{key:"$if start.href",value:{type:6,conditions:[{type:1,path:"start.href"},{type:1,path:"start.path"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"a href=${start.href}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h av=c g=lg g=md",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"start.label"}}],fast:!0},{type:8,properties:[{key:"$if start.image && start.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"start.image"},right:{type:1,path:"start.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-image w=${start.image.width} h=${start.image.height} src=${start.image.src} alt=${start.image.alt}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"start.image.width"}," h=",{type:1,path:"start.image.height"}," src=",{type:1,path:"start.image.src"}," alt=",{type:1,path:"start.image.alt"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],fast:!1}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["a href=",{type:1,path:"start.href"}]}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view#start d=h av=c g=lg g=md cur=p",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"start.label"}}],fast:!0},{type:8,properties:[{key:"$if start.image && start.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"start.image"},right:{type:1,path:"start.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-image w=${start.image.width} h=${start.image.height} src=${start.image.src} alt=${start.image.alt}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"start.image.width"}," h=",{type:1,path:"start.image.height"}," src=",{type:1,path:"start.image.src"}," alt=",{type:1,path:"start.image.alt"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],fast:!1}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h av=c g=lg g=md",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"start.label"}}],fast:!0},{type:8,properties:[{key:"$if start.image && start.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"start.image"},right:{type:1,path:"start.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-image w=${start.image.width} h=${start.image.height} src=${start.image.src} alt=${start.image.alt}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"start.image.width"}," h=",{type:1,path:"start.image.height"}," src=",{type:1,path:"start.image.src"}," alt=",{type:1,path:"start.image.alt"}]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],fast:!1}}],fast:!1}],fast:!1}],id:null}}],fast:!1},{type:8,properties:[{key:"rtgl-view flex=1",value:{type:0,value:null}}],fast:!0},{type:8,properties:[{key:"rtgl-view d=h av=c g=lg",value:{type:9,items:[{type:8,properties:[{key:"slot name=right",value:{type:0,value:null}}],fast:!0}],fast:!0}}],fast:!0}],fast:!1},parsedKey:{type:2,parts:["rtgl-view bgc=bg d=h h=48 av=c w=f ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var rt={};V(rt,{handleBeforeMount:()=>Hs});var ir=(e,t)=>{let{store:r,render:s}=t,i,n=-1/0;e.forEach(o=>{let a=o.getBoundingClientRect();a.top<=20&&a.top>n&&(n=a.top,i=o.id)}),i&&i!==r.selectCurrentId()&&(r.setCurrentId(i),s())},Fs=(e,t)=>{let{store:r,render:s}=t,i=e.querySelectorAll("rtgl-text[id]"),n=Array.from(i),o=n.map(l=>({id:l.id,href:`#${l.id}`,title:l.textContent}));r.setItems(o),ir(n,t),s();let a=ir.bind(void 0,n,t);return e.addEventListener("scroll",a,{passive:!0}),()=>{e.removeEventListener("scroll",a)}},Hs=e=>{let{attrs:t}=e;requestAnimationFrame(()=>{let r=document.getElementById(t["target-id"]),s=Fs(r,e);return()=>{s()}})};var st={};V(st,{INITIAL_STATE:()=>Us,selectCurrentId:()=>Gs,selectState:()=>Js,setContentContainer:()=>Qs,setCurrentId:()=>Xs,setItems:()=>Ys,toViewData:()=>qs});var Us=Object.freeze({items:[],currentId:null,contentContainer:null}),qs=({state:e})=>({items:e.items.map(t=>({...t,c:t.id===e.currentId?"fg":"mu-fg"})),currentId:e.currentId}),Js=({state:e})=>e,Gs=({state:e})=>e.currentId,Ys=(e,t)=>{e.items=t},Xs=(e,t)=>{e.currentId=t},Qs=(e,t)=>{e.contentContainer=t};var nr={elementName:"rtgl-page-outline",viewDataSchema:{type:"object",properties:{items:{type:"array",items:{type:"object",properties:{slug:{type:"string"},title:{type:"string"}}}},selectedSlug:{type:"string",nullable:!0}}},propsSchema:{type:"object",properties:{}},refs:{},events:{onItemClick:{type:"object"}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view h=f w=272",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f g=sm mt=xl",value:{type:9,items:[{type:7,itemVar:"item",indexVar:"i",iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-view pv=xs av=c href=${item.href}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=${item.c} h-c=fg",value:{type:1,path:"item.title"},parsedKey:{type:2,parts:["rtgl-text s=sm c=",{type:1,path:"item.c"}," h-c=fg"]}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view pv=xs av=c href=",{type:1,path:"item.href"}]}}],fast:!0}],fast:!0}}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1}],fast:!1}};var it={};V(it,{handleBeforeMount:()=>Zs,handleInputChange:()=>si,handleInputKeydown:()=>ni,handleOnUpdate:()=>ei,handlePopoverClose:()=>ri,handleSubmitClick:()=>ii,handleTextClick:()=>ti});var Zs=e=>{let{store:t,props:r}=e;(r.value!==void 0||r.defaultValue!==void 0)&&t.setValue(r.value||r.defaultValue||"")},ei=(e,t)=>{let{oldProps:r,newProps:s}=e,{store:i,props:n,render:o}=t;r.defaultValue!==s.defaultValue&&i.setValue(n.defaultValue||""),o()},ti=(e,t)=>{let{store:r,render:s,getRefIds:i,attrs:n}=t,o=r.selectValue();r.setTempValue(o),r.openPopover({position:{x:e.currentTarget.getBoundingClientRect().left,y:e.currentTarget.getBoundingClientRect().bottom}});let{input:a}=i();a.elm.value=o,s(),n["auto-focus"]&&setTimeout(()=>{a.elm.focus()},50)},ri=(e,t)=>{let{store:r,render:s}=t;r.closePopover(),s()},si=(e,t)=>{let{store:r,render:s,dispatchEvent:i}=t,n=e.detail.value;r.setTempValue(n),i(new CustomEvent("temp-input-change",{detail:{value:n},bubbles:!0})),s()},ii=(e,t)=>{let{store:r,render:s,dispatchEvent:i,getRefIds:n}=t,{input:o}=n(),a=o.elm.value;r.setValue(a),r.closePopover(),i(new CustomEvent("input-change",{detail:{value:a},bubbles:!0})),s()},ni=(e,t)=>{let{store:r,render:s,dispatchEvent:i,getRefIds:n}=t;if(e.key==="Enter"){let{input:o}=n(),a=o.elm.value;r.closePopover(),i(new CustomEvent("input-change",{detail:{value:a},bubbles:!0})),s()}else e.key==="Escape"&&(r.closePopover(),s())};var nt={};V(nt,{INITIAL_STATE:()=>ai,closePopover:()=>ci,openPopover:()=>pi,selectValue:()=>hi,setTempValue:()=>li,setValue:()=>di,toViewData:()=>oi});var ai=Object.freeze({isOpen:!1,position:{x:0,y:0},value:"",tempValue:""}),oi=({attrs:e,state:t,props:r})=>{let s=t.value||"-";return{isOpen:t.isOpen,position:t.position,value:s??"-",tempValue:t.tempValue,placeholder:r.placeholder??"",label:e.label}},li=(e,t)=>{e.tempValue=t},pi=(e,t)=>{let{position:r}=t;e.position=r,e.isOpen=!0,e.hasUnsavedChanges=!1},ci=e=>{e.isOpen=!1,e.tempValue=""},di=(e,t)=>{e.value=t},hi=({state:e})=>e.value;var ar={elementName:"rtgl-popover-input",viewDataSchema:{type:"object"},attrsSchema:{type:"object",properties:{"auto-focus":{type:"boolean"}}},propsSchema:{type:"object",properties:{value:{type:"string"},defaultValue:{type:"string"},placeholder:{type:"string"},onChange:{type:"function"}}},refs:{"text-display":{eventListeners:{click:{handler:"handleTextClick"}}},popover:{eventListeners:{close:{handler:"handlePopoverClose"}}},input:{eventListeners:{"input-change":{handler:"handleInputChange"},keydown:{handler:"handleInputKeydown"}}},submit:{eventListeners:{click:{handler:"handleSubmitClick"}}}},events:{"input-change":{}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view#text-display w=f cur=p",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"value"}}],fast:!0}],fast:!0}}],fast:!0},{type:8,properties:[{key:"rtgl-popover#popover ?open=${isOpen} x=${position.x} y=${position.y}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view g=md w=240 slot=content bgc=background br=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"label"}}],fast:!0},{type:8,properties:[{key:"rtgl-input#input w=f placeholder=${placeholder}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-input#input w=f placeholder=",{type:1,path:"placeholder"}]}}],fast:!0},{type:8,properties:[{key:"rtgl-view w=f ah=e",value:{type:9,items:[{type:8,properties:[{key:"rtgl-button#submit",value:{type:0,value:"Submit"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-popover#popover ?open=",{type:1,path:"isOpen"}," x=",{type:1,path:"position.x"}," y=",{type:1,path:"position.y"}]}}],fast:!0}],fast:!0}};var at={};V(at,{handleBeforeMount:()=>ui,handleButtonClick:()=>fi,handleClickOptionsPopoverOverlay:()=>mi,handleOptionClick:()=>yi});var ui=e=>{let{store:t,props:r,render:s}=e;if(r.selectedValue!==null&&r.selectedValue!==void 0&&r.options){let i=r.options.find(n=>n.value===r.selectedValue);i&&(t.updateSelectOption(i),s())}},fi=(e,t)=>{let{store:r,render:s,getRefIds:i}=t;r.openOptionsPopover({position:{y:e.clientY,x:e.clientX}}),s()},mi=(e,t)=>{let{store:r,render:s}=t;r.closeOptionsPopover(),s()},yi=(e,t)=>{let{render:r,dispatchEvent:s,props:i,store:n}=t,o=e.currentTarget.id.replace("option-",""),a=i.options[o];n.updateSelectOption(a),i.onChange&&typeof i.onChange=="function"&&i.onChange(a.value),s(new CustomEvent("option-selected",{detail:{value:a.value,label:a.label},bubbles:!0})),s(new CustomEvent("select-change",{detail:{selectedValue:a.value},bubbles:!0})),r()};var ot={};V(ot,{INITIAL_STATE:()=>gi,closeOptionsPopover:()=>xi,openOptionsPopover:()=>wi,selectState:()=>bi,toViewData:()=>vi,updateSelectOption:()=>_i});var gi=Object.freeze({isOpen:!1,position:{x:0,y:0},selectedValue:null,selectedLabel:null}),vi=({state:e,props:t})=>{let r=t.placeholder||"Select an option",s=e.selectedValue!==null?e.selectedValue:t.selectedValue;if(s!=null&&t.options){let n=t.options.find(o=>o.value===s);n&&(r=n.label)}else e.selectedLabel&&(r=e.selectedLabel);let i=(t.options||[]).map(n=>({...n,isSelected:n.value===s,bgc:n.value===s?"mu":""}));return{isOpen:e.isOpen,position:e.position,options:i,selectedValue:s,selectedLabel:r,placeholder:t.placeholder||"Select an option"}},bi=({state:e})=>e,wi=(e,t)=>{let{position:r}=t;e.position=r,e.isOpen=!0},xi=e=>{e.isOpen=!1},_i=(e,t)=>{e.selectedValue=t.value,e.selectedLabel=t.label,e.isOpen=!1};var or={elementName:"rtgl-select",viewDataSchema:{type:"object"},propsSchema:{type:"object",properties:{options:{type:"array",items:{type:"object",properties:{id:{type:"string"},label:{type:"string"},value:{type:"any"}}}},selectedValue:{type:"any"},placeholder:{type:"string"},onChange:{type:"function"}}},refs:{"select-button":{eventListeners:{click:{handler:"handleButtonClick"}}},popover:{eventListeners:{close:{handler:"handleClickOptionsPopoverOverlay"}}},"option-*":{eventListeners:{click:{handler:"handleOptionClick"}}}},events:{},template:{type:9,items:[{type:8,properties:[{key:"rtgl-button#select-button v=ol",value:{type:9,items:[{type:1,path:"selectedLabel"}],fast:!0}}],fast:!0},{type:8,properties:[{key:"rtgl-popover#popover ?open=${isOpen} x=${position.x} y=${position.y}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view wh=300 g=xs slot=content bgc=background br=md sv=true",value:{type:9,items:[{type:7,itemVar:"option",indexVar:"i",iterable:{type:1,path:"options"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-view#option-${i} w=f h-bgc=ac ph=lg pv=md cur=p br=md bgc=${option.bgc}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text",value:{type:1,path:"option.label"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#option-",{type:1,path:"i"}," w=f h-bgc=ac ph=lg pv=md cur=p br=md bgc=",{type:1,path:"option.bgc"}]}}],fast:!0}],fast:!0}}],fast:!1}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-popover#popover ?open=",{type:1,path:"isOpen"}," x=",{type:1,path:"position.x"}," y=",{type:1,path:"position.y"}]}}],fast:!1}],fast:!1}};var lt={};V(lt,{handleHeaderClick:()=>Si,handleItemClick:()=>ki});var Si=(e,t)=>{let{store:r,dispatchEvent:s}=t,i,n=r.selectHeader();e.currentTarget.id==="header-label"?i=n.labelPath:e.currentTarget.id==="header-image"?i=n.image.path:e.currentTarget.id==="header"&&(i=n.path),s(new CustomEvent("headerClick",{detail:{path:i},bubbles:!0,composed:!0}))},ki=(e,t)=>{let{store:r,dispatchEvent:s}=t,i=e.currentTarget.id.replace("item-",""),n=r.selectItem(i);s(new CustomEvent("itemClick",{detail:{item:n},bubbles:!0,composed:!0}))};var ct={};V(ct,{INITIAL_STATE:()=>Ei,selectActiveItem:()=>Ti,selectHeader:()=>Ii,selectItem:()=>Oi,setState:()=>Li,toViewData:()=>Ci});var Ei=Object.freeze({}),Ai=["id","class","style","slot"],$i=e=>Object.entries(e).filter(([t])=>!Ai.includes(t)).map(([t,r])=>`${t}=${r}`).join(" ");function pt(e,t=null){let r=[];for(let s of e){let i=s.id||s.href||s.path,n=t===i;if(r.push({id:i,title:s.title,href:s.href,type:s.type||"item",icon:s.icon,hrefAttr:s.href?`href=${s.href}`:"",isSelected:n,itemBgc:n?"ac":"bg",itemHoverBgc:n?"ac":"mu"}),s.items&&Array.isArray(s.items))for(let o of s.items){let a=o.id||o.href||o.path,l=t===a;r.push({id:a,title:o.title,href:o.href,type:o.type||"item",icon:o.icon,hrefAttr:o.href?`href=${o.href}`:"",isSelected:l,itemBgc:l?"ac":"bg",itemHoverBgc:l?"ac":"mu"})}}return r}var Ci=({state:e,props:t,attrs:r})=>{let s=r.header?JSON.parse(decodeURIComponent(r.header)):t.header,i=r.items?JSON.parse(decodeURIComponent(r.items)):t.items,n=r.selectedItemId||t.selectedItemId,o=$i(r),a=r.mode||"full",l=s||{label:"",path:"",image:{src:"",alt:"",width:0,height:0}},p=i?pt(i,n):[],h=a==="full"?272:64,d=a==="full"?"fs":"c",m=a==="full"?"fs":"c",v=a==="full"?"lg":"sm",c=a==="full"?"md":"sm",u=a==="shrunk-lg"?48:40,f=a==="shrunk-lg"?28:20,y=a==="shrunk-lg"?"md":"sm",b=a==="full",w=a==="full",x=a==="full"?"fs":"c",k=a==="full"?"":`ah=${m}`,_=a==="full"?"f":u;return{containerAttrString:o,mode:a,header:l,items:p,sidebarWidth:h,headerAlign:d,itemAlign:m,headerPadding:v,itemPadding:c,itemHeight:u,iconSize:f,firstLetterSize:y,showLabels:b,showGroupLabels:w,itemContentAlign:x,itemAlignAttr:k,itemWidth:_,headerWidth:_,selectedItemId:n,ah:a==="shrunk-lg"||a==="shrunk-md"?"c":""}},Ii=({state:e,props:t,attrs:r})=>r.header?JSON.parse(decodeURIComponent(r.header)):t.header,Ti=({state:e,props:t})=>(t.items?pt(t.items):[]).find(s=>s.active),Oi=({state:e,props:t,attrs:r},s)=>{let i=r.items?JSON.parse(decodeURIComponent(r.items)):t.items;return(i?pt(i):[]).find(o=>o.id===s)},Li=e=>{};var lr={elementName:"rtgl-sidebar",viewDataSchema:{type:"object",properties:{containerAttrString:{type:"string"},mode:{type:"string",enum:["full","shrunk","shrunk-lg"],default:"full"},sidebarWidth:{type:"number"},headerAlign:{type:"string"},itemAlign:{type:"string"},headerPadding:{type:"string"},itemPadding:{type:"string"},itemHeight:{type:"number"},iconSize:{type:"number"},firstLetterSize:{type:"string"},showLabels:{type:"boolean"},showGroupLabels:{type:"boolean"},itemContentAlign:{type:"string"},itemAlignAttr:{type:"string"},itemWidth:{type:"string"},headerWidth:{type:"string"},selectedItemId:{type:"string"},header:{type:"object",properties:{label:{type:"string"},href:{type:"string"},image:{type:"object",properties:{src:{type:"string"},width:{type:"number"},height:{type:"number"},alt:{type:"string"}}}}},items:{type:"array",items:{type:"object",properties:{title:{type:"string"},slug:{type:"string"},type:{type:"string"},active:{type:"boolean"},icon:{type:"string"}}}}}},propsSchema:{type:"object",properties:{selectedItemId:{type:"string"},header:{type:"object",properties:{label:{type:"string"},href:{type:"string"},image:{type:"object",properties:{src:{type:"string"},width:{type:"number"},height:{type:"number"},alt:{type:"string"}}}}},items:{type:"array",items:{type:"object",properties:{title:{type:"string"},slug:{type:"string"},type:{type:"string"},items:{type:"array"}}}}}},refs:{"header-image":{eventListeners:{click:{handler:"handleHeaderClick"}}},"header-label":{eventListeners:{click:{handler:"handleHeaderClick"}}},header:{eventListeners:{click:{handler:"handleHeaderClick"}}},"item-*":{eventListeners:{click:{handler:"handleItemClick"}}}},events:{headerClick:{type:"object",properties:{path:{type:"string"}}}},anchors:[[{"$if header.image && header.image.src":[{"$if header.image.href":[{"a href=${header.image.href}":[{'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"':null}]}],"$elif header.image.path":[{"rtgl-view#header-image cur=p":[{'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"':null}]}],$else:[{'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"':null}]}]},{"$if header.label && showLabels":[{"$if header.labelHref":[{"rtgl-text href=${header.labelHref} s=lg":"${header.label}"}],"$elif header.labelPath":[{"rtgl-view#header-label cur=p":[{"rtgl-text s=lg":"${header.label}"}]}],$else:[{"rtgl-text s=lg":"${header.label}"}]}]}]],template:{type:9,items:[{type:8,properties:[{key:"rtgl-view h=f w=${sidebarWidth} bwr=xs ah=${ah} ${containerAttrString}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-view ph=${headerPadding} pv=lg",value:{type:9,items:[{type:8,properties:[{key:"$if header.href",value:{type:6,conditions:[{type:1,path:"header.href"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view href=${header.href} d=h av=c ah=${headerAlign} g=lg w=${headerWidth}",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"$if header.image && header.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"header.image"},right:{type:1,path:"header.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"$if header.image.href",value:{type:6,conditions:[{type:1,path:"header.image.href"},{type:1,path:"header.image.path"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"a href=${header.image.href}",value:{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["a href=",{type:1,path:"header.image.href"}]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header-image cur=p",value:{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1},{type:8,properties:[{key:"$if header.label && showLabels",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"header.label"},right:{type:1,path:"showLabels"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"$if header.labelHref",value:{type:6,conditions:[{type:1,path:"header.labelHref"},{type:1,path:"header.labelPath"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-text href=${header.labelHref} s=lg",value:{type:1,path:"header.label"},parsedKey:{type:2,parts:["rtgl-text href=",{type:1,path:"header.labelHref"}," s=lg"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header-label cur=p",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"header.label"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"header.label"}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view href=",{type:1,path:"header.href"}," d=h av=c ah=",{type:1,path:"headerAlign"}," g=lg w=",{type:1,path:"headerWidth"}]}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header d=h av=c ah=${headerAlign} g=lg w=${headerWidth} cur=p",value:{type:9,items:[{type:9,items:[{type:8,properties:[{key:"$if header.image && header.image.src",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"header.image"},right:{type:1,path:"header.image.src"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"$if header.image.href",value:{type:6,conditions:[{type:1,path:"header.image.href"},{type:1,path:"header.image.path"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"a href=${header.image.href}",value:{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["a href=",{type:1,path:"header.image.href"}]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header-image cur=p",value:{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:'rtgl-image w=${header.image.width} h=${header.image.height} src=${header.image.src} alt="${header.image.alt}"',value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-image w=",{type:1,path:"header.image.width"}," h=",{type:1,path:"header.image.height"}," src=",{type:1,path:"header.image.src"},' alt="',{type:1,path:"header.image.alt"},'"']}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1},{type:8,properties:[{key:"$if header.label && showLabels",value:{type:6,conditions:[{type:4,op:6,left:{type:1,path:"header.label"},right:{type:1,path:"showLabels"}}],bodies:[{type:9,items:[{type:8,properties:[{key:"$if header.labelHref",value:{type:6,conditions:[{type:1,path:"header.labelHref"},{type:1,path:"header.labelPath"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-text href=${header.labelHref} s=lg",value:{type:1,path:"header.label"},parsedKey:{type:2,parts:["rtgl-text href=",{type:1,path:"header.labelHref"}," s=lg"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view#header-label cur=p",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"header.label"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-text s=lg",value:{type:1,path:"header.label"}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view#header d=h av=c ah=",{type:1,path:"headerAlign"}," g=lg w=",{type:1,path:"headerWidth"}," cur=p"]}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view ph=",{type:1,path:"headerPadding"}," pv=lg"]}}],fast:!1},{type:8,properties:[{key:"rtgl-view w=f ph=${headerPadding} pb=lg g=xs ah=${ah}",value:{type:9,items:[{type:7,itemVar:"item",indexVar:"i",iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:'$if item.type == "groupLabel"',value:{type:6,conditions:[{type:4,op:0,left:{type:1,path:"item.type"},right:{type:0,value:"groupLabel"}},null],bodies:[{type:9,items:[{type:8,properties:[{key:"$if showGroupLabels",value:{type:6,conditions:[{type:1,path:"showGroupLabels"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view mt=md h=32 av=c ph=md",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=xs c=mu-fg",value:{type:1,path:"item.title"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view mt=md h=1 bgc=mu-bg",value:{type:0,value:null}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view#item-${item.id} ${item.hrefAttr} h=${itemHeight} av=c ${itemAlignAttr} ph=${itemPadding} w=${itemWidth} h-bgc=${item.itemHoverBgc} br=lg bgc=${item.itemBgc} cur=p",value:{type:9,items:[{type:8,properties:[{key:"$if item.icon",value:{type:6,conditions:[{type:1,path:"item.icon"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"$if showLabels",value:{type:6,conditions:[{type:1,path:"showLabels"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h ah=${itemContentAlign} g=sm",value:{type:9,items:[{type:8,properties:[{key:"rtgl-svg wh=16 svg=${item.icon} c=fg",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-svg wh=16 svg=",{type:1,path:"item.icon"}," c=fg"]}}],fast:!0},{type:8,properties:[{key:"rtgl-text s=sm",value:{type:1,path:"item.title"}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view d=h ah=",{type:1,path:"itemContentAlign"}," g=sm"]}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-svg wh=${iconSize} svg=${item.icon} c=fg",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-svg wh=",{type:1,path:"iconSize"}," svg=",{type:1,path:"item.icon"}," c=fg"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"$if showLabels",value:{type:6,conditions:[{type:1,path:"showLabels"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm",value:{type:1,path:"item.title"}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:"rtgl-view wh=${iconSize} br=f bgc=mu av=c ah=c",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=${firstLetterSize} c=fg",value:{type:1,path:"item.title.charAt(0).toUpperCase()"},parsedKey:{type:2,parts:["rtgl-text s=",{type:1,path:"firstLetterSize"}," c=fg"]}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view wh=",{type:1,path:"iconSize"}," br=f bgc=mu av=c ah=c"]}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view#item-",{type:1,path:"item.id"}," ",{type:1,path:"item.hrefAttr"}," h=",{type:1,path:"itemHeight"}," av=c ",{type:1,path:"itemAlignAttr"}," ph=",{type:1,path:"itemPadding"}," w=",{type:1,path:"itemWidth"}," h-bgc=",{type:1,path:"item.itemHoverBgc"}," br=lg bgc=",{type:1,path:"item.itemBgc"}," cur=p"]}}],fast:!1}],fast:!1}],id:null}}],fast:!1}],fast:!1}}],fast:!1},parsedKey:{type:2,parts:["rtgl-view w=f ph=",{type:1,path:"headerPadding"}," pb=lg g=xs ah=",{type:1,path:"ah"}]}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view h=f w=",{type:1,path:"sidebarWidth"}," bwr=xs ah=",{type:1,path:"ah"}," ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var dt={};V(dt,{handleBeforeMount:()=>Ni,handleValueChange:()=>Vi});var Ni=e=>{let{store:t,attrs:r}=e;t.setValue(r.defaultValue||0)},Vi=(e,t)=>{let{store:r,render:s,dispatchEvent:i}=t,n=Number(e.detail.value);r.setValue(n),s(),i(new CustomEvent("slider-input-value-change",{detail:{value:n},bubbles:!0}))};var ht={};V(ht,{INITIAL_STATE:()=>Pi,setValue:()=>Ri,toViewData:()=>ji});var Pi=Object.freeze({value:0}),ji=({state:e,attrs:t})=>({value:e.value,w:t.w||"",min:t.min||0,max:t.max||100,step:t.step||1}),Ri=(e,t)=>{e.value=t};var pr={elementName:"rtgl-slider-input",viewDataSchema:{type:"object"},attrsSchema:{type:"object",properties:{defaultValue:{type:"string",default:"0"},w:{type:"string",default:""},min:{type:"string",default:"0"},max:{type:"string",default:"100"},step:{type:"string",default:"1"}}},refs:{input:{eventListeners:{"input-change":{handler:"handleValueChange"}}},slider:{eventListeners:{"slider-change":{handler:"handleValueChange"}}}},events:{"form-change":{}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h av=c g=md w=${w}",value:{type:9,items:[{type:8,properties:[{key:"rtgl-slider#slider w=f type=range min=${min} max=${max} step=${step} value=${value}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-slider#slider w=f type=range min=",{type:1,path:"min"}," max=",{type:1,path:"max"}," step=",{type:1,path:"step"}," value=",{type:1,path:"value"}]}}],fast:!0},{type:8,properties:[{key:"rtgl-view w=84",value:{type:9,items:[{type:8,properties:[{key:"rtgl-input#input w=f type=number min=${min} max=${max} step=${step} value=${value}",value:{type:0,value:null},parsedKey:{type:2,parts:["rtgl-input#input w=f type=number min=",{type:1,path:"min"}," max=",{type:1,path:"max"}," step=",{type:1,path:"step"}," value=",{type:1,path:"value"}]}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view d=h av=c g=md w=",{type:1,path:"w"}]}}],fast:!0}],fast:!0}};var ut={};V(ut,{handleBeforeMount:()=>Di,handleHeaderClick:()=>Wi,handleRowClick:()=>Mi});var Di=e=>{},Mi=(e,t)=>{let{dispatchEvent:r,props:s}=t,i=parseInt(e.currentTarget.id.replace("row-","")),n=s.data?.rows?.[i];n&&r(new CustomEvent("row-click",{detail:{rowIndex:i,rowData:n}}))},Wi=(e,t)=>{let{store:r,render:s,dispatchEvent:i}=t,n=e.currentTarget.id.replace("header-",""),o=r.selectSortInfo(),a="asc";o.column===n&&(o.direction==="asc"?a="desc":o.direction==="desc"&&(a=null)),a?r.setSortColumn({column:n,direction:a}):r.clearSort(),s(),i(new CustomEvent("header-click",{detail:{column:n,direction:a,sortInfo:a?{column:n,direction:a}:null}}))};var ft={};V(ft,{INITIAL_STATE:()=>Bi,clearSort:()=>Gi,selectSortInfo:()=>qi,selectState:()=>Ui,setSortColumn:()=>Ji,toViewData:()=>Hi});var Bi=Object.freeze({sortColumn:null,sortDirection:null}),zi=["id","class","style","slot"],Ki=e=>Object.entries(e).filter(([t])=>!zi.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),Fi=(e,t)=>{let r=t.split("."),s=e;for(let i of r){if(s==null)return null;s=s[i]}return s},Hi=({state:e,props:t,attrs:r})=>{let s=Ki(r),i=t.data||{columns:[],rows:[]},n=i.rows.map((o,a)=>{let l=i.columns.map(p=>{let h=Fi(o,p.key);return{key:p.key,value:h!=null?String(h):""}});return{index:a,cells:l}});return{containerAttrString:s,columns:i.columns||[],rows:n||[]}},Ui=({state:e})=>e,qi=({state:e})=>({column:e.sortColumn,direction:e.sortDirection}),Ji=(e,{column:t,direction:r})=>{e.sortColumn=t,e.sortDirection=r},Gi=e=>{e.sortColumn=null,e.sortDirection=null};var cr={elementName:"rtgl-table",viewDataSchema:{type:"object",properties:{columns:{type:"array"},rows:{type:"array"},containerAttrString:{type:"string"}}},propsSchema:{type:"object",properties:{data:{type:"object",properties:{columns:{type:"array",items:{type:"object",properties:{key:{type:"string"},label:{type:"string"}}}},rows:{type:"array",items:{type:"object"}}}},responsive:{type:"boolean",default:!0}}},refs:{"row-*":{eventListeners:{click:{handler:"handleRowClick"}}},"header-*":{eventListeners:{click:{handler:"handleHeaderClick"}}}},events:{},styles:{table:{width:"100%","border-collapse":"collapse","border-spacing":0},thead:{"border-bottom":"2px solid var(--border)"},th:{padding:"12px","text-align":"left","font-weight":500,color:"var(--foreground)","background-color":"var(--muted)",cursor:"pointer",position:"sticky",top:0,"z-index":1},"tbody tr":{"border-bottom":"1px solid var(--border)"},"tbody tr:last-child":{"border-bottom":"none"},td:{padding:"12px",color:"var(--foreground)"},".table-container":{width:"100%",height:"100%",overflow:"auto"},".empty-state":{"text-align":"center",padding:"24px",color:"var(--muted-foreground)"}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view.table-container ${containerAttrString}",value:{type:9,items:[{type:8,properties:[{key:"$if rows.length > 0",value:{type:6,conditions:[{type:4,op:2,left:{type:1,path:"rows.length"},right:{type:0,value:0}},null],bodies:[{type:9,items:[{type:8,properties:[{key:"table",value:{type:9,items:[{type:8,properties:[{key:"thead",value:{type:9,items:[{type:8,properties:[{key:"tr",value:{type:9,items:[{type:7,itemVar:"column",indexVar:"i",iterable:{type:1,path:"columns"},body:{type:9,items:[{type:8,properties:[{key:"th#header-${column.key}",value:{type:1,path:"column.label"},parsedKey:{type:2,parts:["th#header-",{type:1,path:"column.key"}]}}],fast:!0}],fast:!0}}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1},{type:8,properties:[{key:"tbody",value:{type:9,items:[{type:7,itemVar:"row",indexVar:"rowIndex",iterable:{type:1,path:"rows"},body:{type:9,items:[{type:8,properties:[{key:"tr#row-${row.index}",value:{type:9,items:[{type:7,itemVar:"cell",indexVar:"cellIndex",iterable:{type:1,path:"row.cells"},body:{type:9,items:[{type:8,properties:[{key:"td",value:{type:1,path:"cell.value"}}],fast:!0}],fast:!0}}],fast:!1},parsedKey:{type:2,parts:["tr#row-",{type:1,path:"row.index"}]}}],fast:!1}],fast:!1}}],fast:!1}}],fast:!1}],fast:!1}}],fast:!1}],fast:!1},{type:9,items:[{type:8,properties:[{key:"rtgl-view.empty-state w=f p=xl",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text c=mu-fg",value:{type:0,value:"No data available"}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view.table-container ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var mt={};V(mt,{handleClickItem:()=>Yi});var Yi=(e,t)=>{let{dispatchEvent:r}=t,s=e.currentTarget.dataset.id;r(new CustomEvent("item-click",{detail:{id:s}}))};var yt={};V(yt,{INITIAL_STATE:()=>Xi,toViewData:()=>en});var Xi=Object.freeze({}),Qi=["id","class","style","slot"],Zi=e=>Object.entries(e).filter(([t])=>!Qi.includes(t)).map(([t,r])=>`${t}=${r}`).join(" "),en=({state:e,props:t,attrs:r})=>{let s=Zi(r),i=t.items||[],n=r["selected-tab"],o=i.map(a=>({...a,isSelected:a.id===n,bgColor:a.id===n?"ac":"",borderColor:a.id===n?"":"tr",textColor:a.id===n?"":"mu-fg"}));return{containerAttrString:s,items:o,selectedTab:n}};var dr={elementName:"rtgl-tabs",viewDataSchema:{type:"object",properties:{containerAttrString:{type:"string"},items:{type:"array",items:{type:"object",properties:{label:{type:"string"},id:{type:"string"},isSelected:{type:"boolean"},bgColor:{type:"string"},textColor:{type:"string"},borderColor:{type:"string"}}}},selectedTab:{type:"string"}}},propsSchema:{type:"object",properties:{items:{type:"array",items:{type:"object",properties:{label:{type:"string"},id:{type:"string"}}}}}},attrsSchema:{type:"object",properties:{"selected-tab":{type:"string"}}},refs:{"tab-*":{eventListeners:{click:{handler:"handleClickItem"}}}},events:{"item-click":{type:"object",properties:{id:{type:"string"}}}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view d=h g=sm bgc=mu p=sm br=lg ${containerAttrString}",value:{type:9,items:[{type:7,itemVar:"item",indexVar:null,iterable:{type:1,path:"items"},body:{type:9,items:[{type:8,properties:[{key:"rtgl-view#tab-${item.id} data-id=${item.id} cur=p bgc=${item.bgColor} bw=xs bc=${item.borderColor} pv=md ph=lg br=lg",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text s=sm c=${item.textColor}",value:{type:1,path:"item.label"},parsedKey:{type:2,parts:["rtgl-text s=sm c=",{type:1,path:"item.textColor"}]}}],fast:!0}],fast:!0},parsedKey:{type:2,parts:["rtgl-view#tab-",{type:1,path:"item.id"}," data-id=",{type:1,path:"item.id"}," cur=p bgc=",{type:1,path:"item.bgColor"}," bw=xs bc=",{type:1,path:"item.borderColor"}," pv=md ph=lg br=lg"]}}],fast:!0}],fast:!0}}],fast:!1},parsedKey:{type:2,parts:["rtgl-view d=h g=sm bgc=mu p=sm br=lg ",{type:1,path:"containerAttrString"}]}}],fast:!1}],fast:!1}};var gt={};V(gt,{handleAfterMount:()=>tn,handleOnUpdate:()=>rn});var tn=async e=>{let{props:t,store:r,render:s,getRefIds:i}=e,{waveformData:n}=t;r.setWaveformData(n),s();let o=i().canvas?.elm;o&&hr(n,o)},rn=async(e,t)=>{let{store:r,render:s,getRefIds:i,props:n}=t,{waveformData:o}=n;r.setWaveformData(o),s();let a=i().canvas?.elm;a&&hr(o,a)};async function hr(e,t){let r=t.getContext("2d"),s=t.getBoundingClientRect(),i=s.width,n=s.height;t.width=i,t.height=n;let o=t.width,a=t.height;if(r.clearRect(0,0,o,a),r.fillStyle="#1a1a1a",r.fillRect(0,0,o,a),!e||!e.data)return;let l=e.data,p=a/2,h=r.createLinearGradient(0,0,0,a);h.addColorStop(0,"#404040"),h.addColorStop(.5,"#A1A1A1"),h.addColorStop(1,"#404040");let d=Math.max(1,o/l.length),m=.2;for(let v=0;v<l.length;v++){let u=l[v]*(a*.85),f=v*d,y=p-u/2;r.fillStyle=h,r.fillRect(f,y,Math.max(1,d*(1-m)),u)}r.strokeStyle="rgba(255, 255, 255, 0.1)",r.lineWidth=1,r.beginPath(),r.moveTo(0,p),r.lineTo(o,p),r.stroke(),r.shadowBlur=10,r.shadowColor="#2196F3"}var vt={};V(vt,{INITIAL_STATE:()=>sn,setWaveformData:()=>nn,toViewData:()=>an});var sn=Object.freeze({waveformData:null}),nn=(e,t)=>{e.waveformData=t},an=({state:e,attrs:t,props:r})=>({isLoading:r.isLoading,w:t.w||"250",h:t.h||"150",cur:t.cur,waveformData:r.waveformData});var ur={elementName:"rtgl-waveform",attrsSchema:{type:"object",properties:{w:{type:"string",description:"Width of the waveform visualizer",default:"250"},h:{type:"string",description:"Height of the waveform visualizer",default:"150"},cur:{type:"string",description:"cursor"}}},propsSchema:{type:"object",properties:{waveformData:{type:"object",description:"File ID of the waveform data in object storage"},isLoading:{type:"boolean",description:"Whether the waveform data is currently being loaded"}}},refs:{canvas:{selector:"canvas"}},template:{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f h=f pos=rel w=${w} h=${h} cur=${cur}",value:{type:9,items:[{type:8,properties:[{key:"$if isLoading",value:{type:6,conditions:[{type:1,path:"isLoading"},null],bodies:[{type:9,items:[{type:8,properties:[{key:"rtgl-view w=f h=f av=c ah=c",value:{type:9,items:[{type:8,properties:[{key:"rtgl-text c=mu-fg",value:{type:0,value:"..."}}],fast:!0}],fast:!0}}],fast:!0}],fast:!0},{type:9,items:[{type:8,properties:[{key:'canvas#canvas style="width:100%; height:100%;"',value:{type:0,value:null}}],fast:!0}],fast:!0}],id:null}}],fast:!1}],fast:!1},parsedKey:{type:2,parts:["rtgl-view w=f h=f pos=rel w=",{type:1,path:"w"}," h=",{type:1,path:"h"}," cur=",{type:1,path:"cur"}]}}],fast:!1}],fast:!1}};var br=Symbol.for("immer-nothing"),fr=Symbol.for("immer-draftable"),K=Symbol.for("immer-state");function J(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var pe=Object.getPrototypeOf;function ce(e){return!!e&&!!e[K]}function re(e){return e?wr(e)||Array.isArray(e)||!!e[fr]||!!e.constructor?.[fr]||Ae(e)||$e(e):!1}var on=Object.prototype.constructor.toString();function wr(e){if(!e||typeof e!="object")return!1;let t=pe(e);if(t===null)return!0;let r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return r===Object?!0:typeof r=="function"&&Function.toString.call(r)===on}function _e(e,t){Ee(e)===0?Reflect.ownKeys(e).forEach(r=>{t(r,e[r],e)}):e.forEach((r,s)=>t(s,r,e))}function Ee(e){let t=e[K];return t?t.type_:Array.isArray(e)?1:Ae(e)?2:$e(e)?3:0}function xt(e,t){return Ee(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function xr(e,t,r){let s=Ee(e);s===2?e.set(t,r):s===3?e.add(r):e[t]=r}function ln(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Ae(e){return e instanceof Map}function $e(e){return e instanceof Set}function te(e){return e.copy_||e.base_}function _t(e,t){if(Ae(e))return new Map(e);if($e(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);let r=wr(e);if(t===!0||t==="class_only"&&!r){let s=Object.getOwnPropertyDescriptors(e);delete s[K];let i=Reflect.ownKeys(s);for(let n=0;n<i.length;n++){let o=i[n],a=s[o];a.writable===!1&&(a.writable=!0,a.configurable=!0),(a.get||a.set)&&(s[o]={configurable:!0,writable:!0,enumerable:a.enumerable,value:e[o]})}return Object.create(pe(e),s)}else{let s=pe(e);if(s!==null&&r)return{...e};let i=Object.create(s);return Object.assign(i,e)}}function $t(e,t=!1){return Ce(e)||ce(e)||!re(e)||(Ee(e)>1&&(e.set=e.add=e.clear=e.delete=pn),Object.freeze(e),t&&Object.entries(e).forEach(([r,s])=>$t(s,!0))),e}function pn(){J(2)}function Ce(e){return Object.isFrozen(e)}var cn={};function se(e){let t=cn[e];return t||J(0,e),t}var ye;function _r(){return ye}function dn(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function mr(e,t){t&&(se("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function St(e){kt(e),e.drafts_.forEach(hn),e.drafts_=null}function kt(e){e===ye&&(ye=e.parent_)}function yr(e){return ye=dn(ye,e)}function hn(e){let t=e[K];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function gr(e,t){t.unfinalizedDrafts_=t.drafts_.length;let r=t.drafts_[0];return e!==void 0&&e!==r?(r[K].modified_&&(St(t),J(4)),re(e)&&(e=Se(t,e),t.parent_||ke(t,e)),t.patches_&&se("Patches").generateReplacementPatches_(r[K].base_,e,t.patches_,t.inversePatches_)):e=Se(t,r,[]),St(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==br?e:void 0}function Se(e,t,r){if(Ce(t))return t;let s=t[K];if(!s)return _e(t,(i,n)=>vr(e,s,t,i,n,r)),t;if(s.scope_!==e)return t;if(!s.modified_)return ke(e,s.base_,!0),s.base_;if(!s.finalized_){s.finalized_=!0,s.scope_.unfinalizedDrafts_--;let i=s.copy_,n=i,o=!1;s.type_===3&&(n=new Set(i),i.clear(),o=!0),_e(n,(a,l)=>vr(e,s,i,a,l,r,o)),ke(e,i,!1),r&&e.patches_&&se("Patches").generatePatches_(s,r,e.patches_,e.inversePatches_)}return s.copy_}function vr(e,t,r,s,i,n,o){if(ce(i)){let a=n&&t&&t.type_!==3&&!xt(t.assigned_,s)?n.concat(s):void 0,l=Se(e,i,a);if(xr(r,s,l),ce(l))e.canAutoFreeze_=!1;else return}else o&&r.add(i);if(re(i)&&!Ce(i)){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1)return;Se(e,i),(!t||!t.scope_.parent_)&&typeof s!="symbol"&&Object.prototype.propertyIsEnumerable.call(r,s)&&ke(e,i)}}function ke(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&$t(t,r)}function un(e,t){let r=Array.isArray(e),s={type_:r?1:0,scope_:t?t.scope_:_r(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1},i=s,n=Ct;r&&(i=[s],n=ge);let{revoke:o,proxy:a}=Proxy.revocable(i,n);return s.draft_=a,s.revoke_=o,a}var Ct={get(e,t){if(t===K)return e;let r=te(e);if(!xt(r,t))return fn(e,r,t);let s=r[t];return e.finalized_||!re(s)?s:s===bt(e.base_,t)?(wt(e),e.copy_[t]=At(s,e)):s},has(e,t){return t in te(e)},ownKeys(e){return Reflect.ownKeys(te(e))},set(e,t,r){let s=Sr(te(e),t);if(s?.set)return s.set.call(e.draft_,r),!0;if(!e.modified_){let i=bt(te(e),t),n=i?.[K];if(n&&n.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if(ln(r,i)&&(r!==void 0||xt(e.base_,t)))return!0;wt(e),Et(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_[t]=!0),!0},deleteProperty(e,t){return bt(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,wt(e),Et(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let r=te(e),s=Reflect.getOwnPropertyDescriptor(r,t);return s&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:s.enumerable,value:r[t]}},defineProperty(){J(11)},getPrototypeOf(e){return pe(e.base_)},setPrototypeOf(){J(12)}},ge={};_e(Ct,(e,t)=>{ge[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});ge.deleteProperty=function(e,t){return ge.set.call(this,e,t,void 0)};ge.set=function(e,t,r){return Ct.set.call(this,e[0],t,r,e[0])};function bt(e,t){let r=e[K];return(r?te(r):e)[t]}function fn(e,t,r){let s=Sr(t,r);return s?"value"in s?s.value:s.get?.call(e.draft_):void 0}function Sr(e,t){if(!(t in e))return;let r=pe(e);for(;r;){let s=Object.getOwnPropertyDescriptor(r,t);if(s)return s;r=pe(r)}}function Et(e){e.modified_||(e.modified_=!0,e.parent_&&Et(e.parent_))}function wt(e){e.copy_||(e.copy_=_t(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var mn=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.produce=(t,r,s)=>{if(typeof t=="function"&&typeof r!="function"){let n=r;r=t;let o=this;return function(l=n,...p){return o.produce(l,h=>r.call(this,h,...p))}}typeof r!="function"&&J(6),s!==void 0&&typeof s!="function"&&J(7);let i;if(re(t)){let n=yr(this),o=At(t,void 0),a=!0;try{i=r(o),a=!1}finally{a?St(n):kt(n)}return mr(n,s),gr(i,n)}else if(!t||typeof t!="object"){if(i=r(t),i===void 0&&(i=t),i===br&&(i=void 0),this.autoFreeze_&&$t(i,!0),s){let n=[],o=[];se("Patches").generateReplacementPatches_(t,i,n,o),s(n,o)}return i}else J(1,t)},this.produceWithPatches=(t,r)=>{if(typeof t=="function")return(o,...a)=>this.produceWithPatches(o,l=>t(l,...a));let s,i;return[this.produce(t,r,(o,a)=>{s=o,i=a}),s,i]},typeof e?.autoFreeze=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy)}createDraft(e){re(e)||J(8),ce(e)&&(e=yn(e));let t=yr(this),r=At(e,void 0);return r[K].isManual_=!0,kt(t),r}finishDraft(e,t){let r=e&&e[K];(!r||!r.isManual_)&&J(9);let{scope_:s}=r;return mr(s,t),gr(void 0,s)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){let i=t[r];if(i.path.length===0&&i.op==="replace"){e=i.value;break}}r>-1&&(t=t.slice(r+1));let s=se("Patches").applyPatches_;return ce(e)?s(e,t):this.produce(e,i=>s(i,t))}};function At(e,t){let r=Ae(e)?se("MapSet").proxyMap_(e,t):$e(e)?se("MapSet").proxySet_(e,t):un(e,t);return(t?t.scope_:_r()).drafts_.push(r),r}function yn(e){return ce(e)||J(10,e),kr(e)}function kr(e){if(!re(e)||Ce(e))return e;let t=e[K],r;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=_t(e,t.scope_.immer_.useStrictShallowCopy_)}else r=_t(e,!0);return _e(r,(s,i)=>{xr(r,s,kr(i))}),t&&(t.finalized_=!1),r}var F=new mn,Er=F.produce,Zo=F.produceWithPatches.bind(F),el=F.setAutoFreeze.bind(F),tl=F.setUseStrictShallowCopy.bind(F),rl=F.applyPatches.bind(F),sl=F.createDraft.bind(F),il=F.finishDraft.bind(F);var g={LITERAL:0,VARIABLE:1,INTERPOLATION:2,FUNCTION:3,BINARY:4,UNARY:5,CONDITIONAL:6,LOOP:7,OBJECT:8,ARRAY:9},H={EQ:0,NEQ:1,GT:2,LT:3,GTE:4,LTE:5,AND:6,OR:7,IN:8},Ie={NOT:0};var de=class extends Error{constructor(t){super(`Render Error: ${t}`),this.name="JemplRenderError"}};var Ar=(e,t)=>{if(t===null)return new de(`Cannot iterate over null value at '$for ${e}'`);if(t===void 0)return new de(`Cannot iterate over undefined value at '$for ${e}'`);let r=typeof t;return new de(`Cannot iterate over non-array value (got: ${r}) at '$for ${e}'`)},$r=(e,t)=>{let r=t&&Object.keys(t).length>0?Object.keys(t).join(", "):"no custom functions provided";return new de(`Unknown function '${e}' (${r})`)};var gn=(e,t,r={})=>I(e,r,t,{}),I=(e,t,r,s)=>{if(e.var&&!e.type)return M(e.var,r,s);if(e.type===g.LITERAL)return e.value;if(e.type===g.VARIABLE)return M(e.path,r,s);if(e.type===g.INTERPOLATION)return vn(e.parts,t,r,s);switch(e.type){case g.FUNCTION:return Cr(e,t,r,s);case g.BINARY:return Ir(e,t,r,s);case g.UNARY:return Tr(e,t,r,s);case g.CONDITIONAL:return wn(e,t,r,s);case g.LOOP:return En(e,t,r,s);case g.OBJECT:return $n(e,t,r,s);case g.ARRAY:return Cn(e,t,r,s);default:throw new Error(`Unknown node type: ${e.type}`)}},ee=new Map,M=(e,t,r)=>{if(!e)return;if(e in r)return r[e];let s=ee.get(e);s||(s=e.split("."),ee.set(e,s));let i=t;for(let n=0;n<s.length;n++){let o=s[n];if(o in r){i=r[o];continue}if(i==null)return;i=i[o]}return i},vn=(e,t,r,s)=>{let i=[];for(let n of e)if(typeof n=="string")i.push(n);else{let o=I(n,t,r,s);i.push(o!=null?String(o):"")}return i.join("")},Cr=(e,t,r,s)=>{let i=t[e.name];if(!i)throw $r(e.name,t);let n=e.args.map(o=>I(o,t,r,s));return i(...n)},Te=(e,t,r,s)=>{if(e.var&&!e.type)return M(e.var,r,s);switch(e.type){case g.VARIABLE:return M(e.path,r,s);case g.LITERAL:return e.value;case g.BINARY:return Ir(e,t,r,s);case g.UNARY:return Tr(e,t,r,s);case g.FUNCTION:return Cr(e,t,r,s);default:return I(e,t,r,s)}},Ir=(e,t,r,s)=>{if(e.op===H.AND||e.op===H.OR){let o=Te(e.left,t,r,s),a=Te(e.right,t,r,s);switch(e.op){case H.AND:return o&&a;case H.OR:return o||a}}let i=I(e.left,t,r,s),n=I(e.right,t,r,s);switch(e.op){case H.EQ:return i==n;case H.NEQ:return i!=n;case H.GT:return i>n;case H.LT:return i<n;case H.GTE:return i>=n;case H.LTE:return i<=n;case H.IN:return Array.isArray(n)?n.includes(i):!1;default:throw new Error(`Unknown binary operator: ${e.op}`)}},Tr=(e,t,r,s)=>{let i=e.op===Ie.NOT?Te(e.operand,t,r,s):I(e.operand,t,r,s);switch(e.op){case Ie.NOT:return!i;default:throw new Error(`Unknown unary operator: ${e.op}`)}},bn=(e,t,r,s)=>{if(e.conditions.length===2&&e.conditions[1]===null){let i=e.conditions[0];if(i.type===g.VARIABLE)if(M(i.path,r,s)){let o=e.bodies[0];if(o.type===g.OBJECT&&o.properties.length<=5){let a={};for(let l of o.properties){let p=l.parsedKey?I(l.parsedKey,t,r,s):l.key,h=l.value;if(h.type===g.LITERAL)a[p]=h.value;else if(h.type===g.VARIABLE)a[p]=M(h.path,r,s);else if(h.type===g.INTERPOLATION){let d=[];for(let m of h.parts)if(typeof m=="string")d.push(m);else if(m.type===g.VARIABLE){let v=M(m.path,r,s);d.push(v!=null?String(v):"")}else{let v=I(m,t,r,s);d.push(v!=null?String(v):"")}a[p]=d.join("")}else a[p]=I(h,t,r,s)}return a}}else{let o=e.bodies[1];if(o.type===g.OBJECT&&o.properties.length<=5){let a={};for(let l of o.properties){let p=l.parsedKey?I(l.parsedKey,t,r,s):l.key,h=l.value;if(h.type===g.LITERAL)a[p]=h.value;else if(h.type===g.VARIABLE)a[p]=M(h.path,r,s);else if(h.type===g.INTERPOLATION){let d=[];for(let m of h.parts)if(typeof m=="string")d.push(m);else if(m.type===g.VARIABLE){let v=M(m.path,r,s);d.push(v!=null?String(v):"")}else{let v=I(m,t,r,s);d.push(v!=null?String(v):"")}a[p]=d.join("")}else a[p]=I(h,t,r,s)}return a}}}return null},wn=(e,t,r,s)=>{let i=bn(e,t,r,s);if(i!==null)return i;for(let n=0;n<e.conditions.length;n++){let o=e.conditions[n];if(o===null||Te(o,t,r,s))return I(e.bodies[n],t,r,s)}return Or},xn=(e,t)=>{let r=e.body,s=e.itemVar;if(r.type===g.CONDITIONAL&&r.conditions.length===1&&r.conditions[0].type===g.VARIABLE){let i=r.conditions[0].path,n=r.bodies[0];if(i.startsWith(s+".")){let o=i.substring(s.length+1);if(n.type===g.OBJECT&&n.properties.length<=5){for(let l of n.properties)if(l.parsedKey)return null;let a=[];for(let l=0;l<t.length;l++){let p=t[l];if(p[o]){let h={};for(let d of n.properties){let m=d.key,v=d.value;if(v.type===g.LITERAL)h[m]=v.value;else if(v.type===g.VARIABLE){let c=v.path;if(c===s)h[m]=p;else if(c.startsWith(s+".")){let u=c.substring(s.length+1);h[m]=p[u]}else return null}else if(v.type===g.INTERPOLATION){let c=[],u=!0;for(let f of v.parts)if(typeof f=="string")c.push(f);else if(f.type===g.VARIABLE){let y=f.path;if(y===s)c.push(p!=null?String(p):"");else if(y.startsWith(s+".")){let b=y.substring(s.length+1),w=p[b];c.push(w!=null?String(w):"")}else{u=!1;break}}else{u=!1;break}if(!u)return null;h[m]=c.join("")}else return null}a.push(h)}}return a}}}return null},_n=(e,t)=>{let r=e.body,s=e.itemVar,i=xn(e,t);if(i!==null)return i;if(r.type===g.OBJECT&&r.properties.length<=5){for(let a of r.properties)if(a.parsedKey)return null;let n=[],o=!0;for(let a of r.properties){let l=a.key,p=a.value;if(p.type===g.LITERAL)n.push({key:l,type:"literal",value:p.value});else if(p.type===g.VARIABLE){let h=p.path;if(h===s)n.push({key:l,type:"item"});else if(h.startsWith(s+".")){let d=h.substring(s.length+1);if(!d.includes("."))n.push({key:l,type:"prop",prop:d});else{o=!1;break}}else{o=!1;break}}else if(p.type===g.INTERPOLATION&&p.parts.length===1){let h=p.parts[0];if(h.type===g.VARIABLE){let d=h.path;if(d===s)n.push({key:l,type:"item_string"});else if(d.startsWith(s+".")){let m=d.substring(s.length+1);if(!m.includes("."))n.push({key:l,type:"prop_string",prop:m});else{o=!1;break}}else{o=!1;break}}else{o=!1;break}}else{o=!1;break}}if(o){let a=new Array(t.length);if(n.length===3&&n[0].type==="prop"&&n[0].key==="id"&&n[1].type==="prop_string"&&n[1].key==="title"&&n[2].type==="prop"&&n[2].key==="completed")for(let l=0;l<t.length;l++){let p=t[l];a[l]={id:p.id,title:p.title!=null?String(p.title):"",completed:p.completed}}else for(let l=0;l<t.length;l++){let p=t[l],h={};for(let d of n)if(d.type==="literal")h[d.key]=d.value;else if(d.type==="item")h[d.key]=p;else if(d.type==="prop")h[d.key]=p[d.prop];else if(d.type==="item_string")h[d.key]=p!=null?String(p):"";else if(d.type==="prop_string"){let m=p[d.prop];h[d.key]=m!=null?String(m):""}a[l]=h}return a}}return null},Sn=(e,t,r,s,i)=>{let n=[],o=e.body;if(o.type===g.OBJECT&&o.fast!==!1){let a=e.itemVar,l=e.indexVar;for(let p=0;p<i.length;p++){let h=i[p],d={},m={...s,[a]:h,...l&&{[l]:p}};for(let v of o.properties){let c=v.parsedKey?I(v.parsedKey,t,r,m):v.key,u=v.value;if(u.type===g.LITERAL)d[c]=u.value;else if(u.type===g.VARIABLE){let f=u.path;if(f===a)d[c]=h;else if(f===l)d[c]=p;else if(f.startsWith(a+".")){let y=f.substring(a.length+1);if(!y.includes("."))d[c]=h[y];else{let b=ee.get(y)||(ee.set(y,y.split(".")),ee.get(y)),w=h;for(let x of b){if(w==null){w=void 0;break}w=w[x]}d[c]=w}}else d[c]=M(f,r,{...s,[a]:h,...l&&{[l]:p}})}else if(u.type===g.INTERPOLATION){let f=[];for(let y of u.parts)if(typeof y=="string")f.push(y);else if(y.type===g.VARIABLE){let b=y.path,w;if(b===a)w=h;else if(b===l)w=p;else if(b.startsWith(a+".")){let x=b.substring(a.length+1);if(!x.includes("."))w=h[x];else{let k=ee.get(x)||(ee.set(x,x.split(".")),ee.get(x)),_=h;for(let $ of k){if(_==null){_=void 0;break}_=_[$]}w=_}}else w=M(b,r,{...s,[a]:h,...l&&{[l]:p}});f.push(w!=null?String(w):"")}else{let b={...s,[a]:h,...l&&{[l]:p}},w=I(y,t,r,b);f.push(w!=null?String(w):"")}d[c]=f.join("")}else{let f={...s,[a]:h,...l&&{[l]:p}};d[c]=I(u,t,r,f)}}n.push(d)}return n}return null},kn=(e,t,r)=>{let s=e.body;if(s.type===g.OBJECT&&s.properties.length===1&&s.properties[0].key==="$if item.visible"){let n=s.properties[0].value;if(n.type===g.CONDITIONAL&&n.conditions.length===1&&n.conditions[0].type===g.VARIABLE&&n.conditions[0].path==="item.visible"){let o=n.bodies[0];if(o.type===g.OBJECT&&o.properties.length===2){let a=o.properties[0],l=o.properties[1];if(a.key==="id"&&a.value.type===g.VARIABLE&&a.value.path==="item.id"&&l.key==="$if item.highlighted"&&l.value.type===g.CONDITIONAL){let p=[];for(let h=0;h<t.length;h++){let d=t[h];if(d.visible){let m={id:d.id};d.highlighted?(m.highlight=!0,m.message=`This item is highlighted: ${d.name}`):(m.highlight=!1,m.message=d.name),p.push(m)}}return p}}}}return null},En=(e,t,r,s)=>{let i=I(e.iterable,t,r,s);if(!Array.isArray(i)){let a=`${e.itemVar}${e.indexVar?`, ${e.indexVar}`:""} in ${e.iterable.path}`;throw Ar(a,i)}if(!e.indexVar){let a=kn(e,i,e.itemVar);if(a!==null)return a}if(!e.indexVar){let a=_n(e,i);if(a!==null)return a}let n=Sn(e,t,r,s,i);if(n!==null)return n;let o=[];for(let a=0;a<i.length;a++){let l=e.indexVar?{...s,[e.itemVar]:i[a],[e.indexVar]:a}:{...s,[e.itemVar]:i[a]},p=I(e.body,t,r,l);Array.isArray(p)&&p.length===1?o.push(p[0]):o.push(p)}return o},An=(e,t,r,s)=>{if(e.properties.length===1){let i=e.properties[0],n=i.parsedKey?I(i.parsedKey,t,r,s):i.key,o=i.value;if(o.type===g.OBJECT&&o.properties.length<=10){let a={},l={},p=!0;for(let h of o.properties){let d=h.parsedKey?I(h.parsedKey,t,r,s):h.key,m=h.value;if(m.type===g.LITERAL)l[d]=m.value;else if(m.type===g.VARIABLE)l[d]=M(m.path,r,s);else if(m.type===g.INTERPOLATION){let v=[];for(let c of m.parts)if(typeof c=="string")v.push(c);else if(c.type===g.VARIABLE){let u=M(c.path,r,s);v.push(u!=null?String(u):"")}else{p=!1;break}if(!p)break;l[d]=v.join("")}else if(m.type===g.OBJECT&&m.properties.length<=5){let v={};for(let c of m.properties){let u=c.key,f=c.value;if(f.type===g.LITERAL)v[u]=f.value;else if(f.type===g.VARIABLE)v[u]=M(f.path,r,s);else if(f.type===g.INTERPOLATION){let y=[];for(let b of f.parts)if(typeof b=="string")y.push(b);else if(b.type===g.VARIABLE){let w=M(b.path,r,s);y.push(w!=null?String(w):"")}else{p=!1;break}if(!p)break;v[u]=y.join("")}else{p=!1;break}}if(!p)break;l[d]=v}else{p=!1;break}}if(p)return a[n]=l,a}}return null},$n=(e,t,r,s)=>{let i=An(e,t,r,s);if(i!==null)return i;if(e.fast){let l={};for(let p of e.properties){let h=p.parsedKey?I(p.parsedKey,t,r,s):p.key,d=p.value;if(d.type===g.LITERAL)l[h]=d.value;else if(d.type===g.VARIABLE)l[h]=M(d.path,r,s);else if(d.type===g.INTERPOLATION){let m=[];for(let v of d.parts)if(typeof v=="string")m.push(v);else if(v.type===g.VARIABLE){let c=M(v.path,r,s);m.push(c!=null?String(c):"")}else{let c=I(v,t,r,s);m.push(c!=null?String(c):"")}l[h]=m.join("")}else l[h]=I(d,t,r,s)}return l}let n={},o=null,a=!1;for(let l of e.properties)if(!l.key.startsWith("$if ")&&!l.key.match(/^\$if\s+\w+.*:?$/)&&!l.key.startsWith("$elif")&&!l.key.startsWith("$else")&&!l.key.startsWith("$for ")){a=!0;break}for(let l of e.properties)if(l.key.startsWith("$if ")||l.key.match(/^\$if\s+\w+.*:?$/)){let p=I(l.value,t,r,s);if(!a&&p!==null&&p!==void 0)return Array.isArray(p)&&p.length===1?p[0]:p;typeof p=="object"&&p!==null&&!Array.isArray(p)&&Object.assign(n,p)}else if(!l.key.startsWith("$for ")){let p=l.value;if(p&&p.type===g.OBJECT&&p.properties){let h=p.properties.find(d=>d.key.startsWith("$for "));if(h){let d=I(h.value,t,r,s);d!==void 0&&(n[l.key]=d)}else{let d=I(l.value,t,r,s);d!==void 0&&(n[l.key]=d)}}else{let h=l.parsedKey?I(l.parsedKey,t,r,s):l.key,d=I(l.value,t,r,s);d!==void 0&&(n[h]=d)}}return n},Or={},Cn=(e,t,r,s)=>{let i=[];for(let n of e.items)if(n.type===g.LOOP){let o=I(n,t,r,s);i.push(o)}else{let o=I(n,t,r,s);o!==Or&&i.push(o)}return i},Oe=gn;var Le=e=>Array.isArray(e)?e.reduce((t,r)=>{if(Array.isArray(r))t.push(...Le(r));else{if(r&&typeof r=="object"){let s=Object.entries(r);if(s.length>0){let[i,n]=s[0];Array.isArray(n)&&(r={[i]:Le(n)})}}t.push(r)}return t},[]):e;var Lr=(e,t)=>{if(!t)return e;let r=[],s="",i=!1,n=null;for(let o=0;o<t.length;o++){let a=t[o];if(!i&&a===".")s&&(r.push(s),s="");else if(!i&&a==="[")s&&(r.push(s),s=""),i=!0;else if(i&&a==="]"){if(s){if(s.startsWith('"')&&s.endsWith('"')||s.startsWith("'")&&s.endsWith("'"))r.push(s.slice(1,-1));else{let l=Number(s);r.push(isNaN(l)?s:l)}s=""}i=!1,n=null}else i&&(a==='"'||a==="'")&&(n?a===n&&(n=null):n=a),s+=a}return s&&r.push(s),r.reduce((o,a)=>o&&o[a],e)},Nr=({h:e,template:t,viewData:r,refs:s,handlers:i})=>{let n=Oe(t,r,{}),o=Le(n),a=Ln({h:e,items:o,refs:s,handlers:i,viewData:r});return e("div",{style:{display:"contents"}},a)},Ln=({h:e,items:t,refs:r={},handlers:s={},viewData:i={}})=>{if(!Array.isArray(t))return console.error("Input to createVirtualDom must be an array."),[e("div",{},[])];function n(o,a=""){return o.map((l,p)=>{if(typeof l=="string"||typeof l=="number")return String(l);if(typeof l!="object"||l===null)return console.warn("Skipping invalid item in DOM structure:",l),null;let h=Object.entries(l);if(h.length===0)return null;let[d,m]=h[0];if(!isNaN(Number(d)))return Array.isArray(m)?n(m,`${a}.${d}`):typeof m=="object"&&m!==null&&Object.entries(m).length>0?n([m],`${a}.${d}`):String(m);h.length>1&&console.warn("Item has multiple keys, processing only the first:",d);let v,c,u=d.indexOf(" ");u===-1?(v=d,c=""):(v=d.substring(0,u),c=d.substring(u+1).trim());let f=v.split(/[.#]/)[0],y=f.includes("-"),b={},w={};if(c){let A=/(\S+?)=(?:\"([^\"]*)\"|\'([^\']*)\'|([^\s]+))/g,S,N=new Set;for(;(S=A.exec(c))!==null;)if(N.add(S[1]),S[1].startsWith(".")){let U=S[1].substring(1),fe=S[4];w[U]=Lr(i,fe)}else if(S[1].startsWith("?")){let U=S[1].substring(1),fe=S[2]||S[3]||S[4],be;fe==="true"?be=!0:fe==="false"?be=!1:be=Lr(i,fe),be&&(b[U]="")}else b[S[1]]=S[2]||S[3]||S[4];let j=c,D=[],G,Pe=/(\S+?)=(?:\"([^\"]*)\"|\'([^\']*)\'|([^\s]+))/g;for(;(G=Pe.exec(c))!==null;)D.push(G[0]);D.forEach(U=>{j=j.replace(U," ")});let je=/\b(\S+?)(?=\s|$)/g,R;for(;(R=je.exec(j))!==null;){let U=R[1];!N.has(U)&&!U.startsWith(".")&&!U.includes("=")&&(b[U]="")}}let x=v.match(/#([^.#\s]+)/);x&&!Object.prototype.hasOwnProperty.call(b,"id")&&(b.id=x[1]);let k=null;b.id?k=b.id:y&&(k=f);let _=Object.create(null),$=null;if(y)$=f;else{let A=v.match(/\.([^.#]+)/g);A&&A.forEach(N=>{let j=N.substring(1);_[j]=!0});let S=v.match(/#([^.#\s]+)/);S&&($=S[1])}let E;typeof m=="string"||typeof m=="number"?E=String(m):Array.isArray(m)?E=n(m,`${a}.${d}`):E=[],$&&!y&&(b.id=$);let T=Object.create(null);if(k&&r){let A=[];if(Object.keys(r).forEach(S=>{if(S.includes("*")){let N="^"+S.replace(/[.*+?^${}()|[\\\]\\]/g,"\\$&").replace(/\\\*/g,".*")+"$";try{new RegExp(N).test(k)&&A.push(S)}catch(j){console.warn(`[Parser] Invalid regex pattern created from refKey '${S}': ${N}`,j)}}else k===S&&A.push(S)}),A.length>0){A.sort((N,j)=>{let D=!N.includes("*"),G=!j.includes("*");return D&&!G?-1:!D&&G?1:j.length-N.length});let S=A[0];if(r[S]&&r[S].eventListeners){let N=r[S].eventListeners;Object.entries(N).forEach(([j,D])=>{D.handler&&s[D.handler]?T[j]=G=>{s[D.handler](G)}:D.handler&&console.warn(`[Parser] Handler '${D.handler}' for refKey '${S}' (matching elementId '${k}') is referenced but not found in available handlers.`)})}}}let L={};if(k)L.key=k;else if(v){let A=a?`${a}.${p}`:String(p);if(L.key=`${v}-${A}`,Object.keys(w).length>0){let S=JSON.stringify(w).substring(0,50);L.key+=`-${S}`}}Object.keys(b).length>0&&(L.attrs=b),Object.keys(_).length>0&&(L.class=_),Object.keys(T).length>0&&(L.on=T),Object.keys(w).length>0&&(L.props=w),y&&(L.hook={update:(A,S)=>{let N=A.data?.props||{},j=S.data?.props||{},D=A.data?.attrs||{},G=S.data?.attrs||{},Pe=JSON.stringify(N)!==JSON.stringify(j),je=JSON.stringify(D)!==JSON.stringify(G);if(Pe||je){let R=S.elm;R&&R.render&&typeof R.render=="function"&&(R.setAttribute("isDirty","true"),requestAnimationFrame(()=>{if(R.render(),R.removeAttribute("isDirty"),R.handlers&&R.handlers.handleOnUpdate){let U={...R.deps||{},store:R.store,render:R.render.bind(R),handlers:R.handlers,dispatchEvent:R.dispatchEvent.bind(R),refIds:R.refIds||{},getRefIds:()=>R.refIds||{}};R.handlers.handleOnUpdate({oldProps:N,newProps:j,oldAttrs:D,newAttrs:G},U)}}))}}});try{return e(f,L,E)}catch(A){return console.error("Error creating virtual node:",A,{tagName:f,snabbdomData:L,childrenOrText:E}),e("div",{},["Error creating element"])}}).filter(Boolean)}return n(t)};var Nn=(e,t)=>{if(!t||typeof t!="object")return"";let r="",s=n=>Object.entries(n).map(([o,a])=>` ${o}: ${a};`).join(`
920
920
  `),i=(n,o)=>{if(typeof o!="object"||o===null)return"";if(n.startsWith("@")){let a=Object.entries(o).map(([l,p])=>{let h=s(p);return` ${l} {
921
921
  ${h.split(`
922
922
  `).map(d=>d?` ${d}`:"").join(`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rettangoli/ui",
3
- "version": "0.1.2-rc16",
3
+ "version": "0.1.2-rc18",
4
4
  "description": "A UI component library for building web interfaces.",
5
5
  "main": "dist/rettangoli-esm.min.js",
6
6
  "type": "module",
@@ -115,24 +115,36 @@ export const handleSliderInputChange = (e, deps) => {
115
115
  };
116
116
 
117
117
  export const handleImageClick = (e, deps) => {
118
+ if (e.type === "contextmenu") {
119
+ e.preventDefault();
120
+ }
118
121
  const { dispatchEvent } = deps;
119
122
  const name = e.currentTarget.id.replace("image-", "");
120
123
  dispatchEvent(
121
124
  new CustomEvent("extra-event", {
122
125
  detail: {
123
- name: name
126
+ name: name,
127
+ x: e.clientX,
128
+ y: e.clientY,
129
+ trigger: e.type
124
130
  },
125
131
  }),
126
132
  );
127
133
  };
128
134
 
129
135
  export const handleWaveformClick = (e, deps) => {
136
+ if (e.type === "contextmenu") {
137
+ e.preventDefault();
138
+ }
130
139
  const { dispatchEvent } = deps;
131
140
  const name = e.currentTarget.id.replace("waveform-", "");
132
141
  dispatchEvent(
133
142
  new CustomEvent("extra-event", {
134
143
  detail: {
135
- name: name
144
+ name: name,
145
+ x: e.clientX,
146
+ y: e.clientY,
147
+ trigger: e.type
136
148
  },
137
149
  }),
138
150
  );
@@ -221,10 +221,14 @@ refs:
221
221
  eventListeners:
222
222
  click:
223
223
  handler: handleImageClick
224
+ contextmenu:
225
+ handler: handleImageClick
224
226
  waveform-*:
225
227
  eventListeners:
226
228
  click:
227
229
  handler: handleWaveformClick
230
+ contextmenu:
231
+ handler: handleWaveformClick
228
232
  popover-input-*:
229
233
  eventListeners:
230
234
  input-change:
@@ -265,7 +269,7 @@ template:
265
269
  - rtgl-view#image-${field.name} w=${field.width} h=${field.height} bc=ac bw=sm ah=c av=c cur=p p=md:
266
270
  - rtgl-text c=mu-fg ta=c: ${field.placeholderText}
267
271
  - $if field.inputType == "waveform" && field.waveformData:
268
- - rtgl-waveform#waveform-${field.name} .waveformData=fields[${i}].waveformData w=${field.width} h=${field.height}:
272
+ - rtgl-waveform#waveform-${field.name} .waveformData=fields[${i}].waveformData w=${field.width} h=${field.height} cur=p:
269
273
  - $if field.inputType == "waveform" && !field.waveformData:
270
274
  - rtgl-view#waveform-${field.name} w=${field.width} h=${field.height} bc=ac bw=sm ah=c av=c cur=p p=md:
271
275
  - rtgl-text c=mu-fg ta=c: ${field.placeholderText}
@@ -11,6 +11,7 @@ export const toViewData = ({ state, attrs, props }) => {
11
11
  isLoading: props.isLoading,
12
12
  w: attrs.w || "250",
13
13
  h: attrs.h || "150",
14
+ cur: attrs.cur,
14
15
  waveformData: props.waveformData,
15
16
  };
16
17
  };
@@ -11,6 +11,9 @@ attrsSchema:
11
11
  type: string
12
12
  description: Height of the waveform visualizer
13
13
  default: '150'
14
+ cur:
15
+ type: string
16
+ description: cursor
14
17
 
15
18
  propsSchema:
16
19
  type: object
@@ -27,7 +30,7 @@ refs:
27
30
  selector: canvas
28
31
 
29
32
  template:
30
- - rtgl-view w=f h=f pos=rel w=${w} h=${h}:
33
+ - rtgl-view w=f h=f pos=rel w=${w} h=${h} cur=${cur}:
31
34
  - $if isLoading:
32
35
  - rtgl-view w=f h=f av=c ah=c:
33
36
  - rtgl-text c=mu-fg: ...