galaxy-charts 0.0.73 → 0.0.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/galaxy-charts.js +439 -442
- package/dist/galaxy-charts.umd.cjs +1 -1
- package/package.json +1 -1
|
@@ -1978,4 +1978,4 @@ ${t}
|
|
|
1978
1978
|
border-top: 1px solid var(--n-tab-border-color);
|
|
1979
1979
|
`),x("tabs-pad",`
|
|
1980
1980
|
border-top: 1px solid var(--n-tab-border-color);
|
|
1981
|
-
`)])])])]),T0=Object.assign(Object.assign({},Ce.props),{value:[String,Number],defaultValue:[String,Number],trigger:{type:String,default:"click"},type:{type:String,default:"bar"},closable:Boolean,justifyContent:String,size:{type:String,default:"medium"},placement:{type:String,default:"top"},tabStyle:[String,Object],tabClass:String,addTabStyle:[String,Object],addTabClass:String,barWidth:Number,paneClass:String,paneStyle:[String,Object],paneWrapperClass:String,paneWrapperStyle:[String,Object],addable:[Boolean,Object],tabsPadding:{type:Number,default:0},animated:Boolean,onBeforeLeave:Function,onAdd:Function,"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onClose:[Function,Array],labelSize:String,activeName:[String,Number],onActiveNameChange:[Function,Array]}),z0=r.defineComponent({name:"Tabs",props:T0,setup(e,{slots:t}){var n,o,i,a;process.env.NODE_ENV!=="production"&&r.watchEffect(()=>{e.labelSize!==void 0&&Qe("tabs","`label-size` is deprecated, please use `size` instead."),e.activeName!==void 0&&Qe("tabs","`active-name` is deprecated, please use `value` instead."),e.onActiveNameChange!==void 0&&Qe("tabs","`on-active-name-change` is deprecated, please use `on-update:value` instead.")});const{mergedClsPrefixRef:s,inlineThemeDisabled:l}=Je(e),d=Ce("Tabs","-tabs",k0,f0,e,s),c=r.ref(null),f=r.ref(null),u=r.ref(null),p=r.ref(null),m=r.ref(null),h=r.ref(null),y=r.ref(!0),w=r.ref(!0),g=Tr(e,["labelSize","size"]),z=Tr(e,["activeName","value"]),F=r.ref((o=(n=z.value)!==null&&n!==void 0?n:e.defaultValue)!==null&&o!==void 0?o:t.default?(a=(i=_n(t.default())[0])===null||i===void 0?void 0:i.props)===null||a===void 0?void 0:a.name:null),$=Ct(z,F),k={id:0},M=r.computed(()=>{if(!(!e.justifyContent||e.type==="card"))return{display:"flex",justifyContent:e.justifyContent}});r.watch($,()=>{k.id=0,q(),G()});function b(){var B;const{value:A}=$;return A===null?null:(B=c.value)===null||B===void 0?void 0:B.querySelector(`[data-name="${A}"]`)}function S(B){if(e.type==="card")return;const{value:A}=f;if(!A)return;const K=A.style.opacity==="0";if(B){const T=`${s.value}-tabs-bar--disabled`,{barWidth:C,placement:E}=e;if(B.dataset.disabled==="true"?A.classList.add(T):A.classList.remove(T),["top","bottom"].includes(E)){if(D(["top","maxHeight","height"]),typeof C=="number"&&B.offsetWidth>=C){const re=Math.floor((B.offsetWidth-C)/2)+B.offsetLeft;A.style.left=`${re}px`,A.style.maxWidth=`${C}px`}else A.style.left=`${B.offsetLeft}px`,A.style.maxWidth=`${B.offsetWidth}px`;A.style.width="8192px",K&&(A.style.transition="none"),A.offsetWidth,K&&(A.style.transition="",A.style.opacity="1")}else{if(D(["left","maxWidth","width"]),typeof C=="number"&&B.offsetHeight>=C){const re=Math.floor((B.offsetHeight-C)/2)+B.offsetTop;A.style.top=`${re}px`,A.style.maxHeight=`${C}px`}else A.style.top=`${B.offsetTop}px`,A.style.maxHeight=`${B.offsetHeight}px`;A.style.height="8192px",K&&(A.style.transition="none"),A.offsetHeight,K&&(A.style.transition="",A.style.opacity="1")}}}function _(){if(e.type==="card")return;const{value:B}=f;B&&(B.style.opacity="0")}function D(B){const{value:A}=f;if(A)for(const K of B)A.style[K]=""}function q(){if(e.type==="card")return;const B=b();B?S(B):_()}function G(){var B;const A=(B=m.value)===null||B===void 0?void 0:B.$el;if(!A)return;const K=b();if(!K)return;const{scrollLeft:T,offsetWidth:C}=A,{offsetLeft:E,offsetWidth:re}=K;T>E?A.scrollTo({top:0,left:E,behavior:"smooth"}):E+re>T+C&&A.scrollTo({top:0,left:E+re-C,behavior:"smooth"})}const O=r.ref(null);let W=0,L=null;function Z(B){const A=O.value;if(A){W=B.getBoundingClientRect().height;const K=`${W}px`,T=()=>{A.style.height=K,A.style.maxHeight=K};L?(T(),L(),L=null):L=T}}function Y(B){const A=O.value;if(A){const K=B.getBoundingClientRect().height,T=()=>{document.body.offsetHeight,A.style.maxHeight=`${K}px`,A.style.height=`${Math.max(W,K)}px`};L?(L(),L=null,T()):L=T}}function ie(){const B=O.value;if(B){B.style.maxHeight="",B.style.height="";const{paneWrapperStyle:A}=e;if(typeof A=="string")B.style.cssText=A;else if(A){const{maxHeight:K,height:T}=A;K!==void 0&&(B.style.maxHeight=K),T!==void 0&&(B.style.height=T)}}}const oe={value:[]},te=r.ref("next");function ce(B){const A=$.value;let K="next";for(const T of oe.value){if(T===A)break;if(T===B){K="prev";break}}te.value=K,j(B)}function j(B){const{onActiveNameChange:A,onUpdateValue:K,"onUpdate:value":T}=e;A&&pe(A,B),K&&pe(K,B),T&&pe(T,B),F.value=B}function ee(B){const{onClose:A}=e;A&&pe(A,B)}function fe(){const{value:B}=f;if(!B)return;const A="transition-disabled";B.classList.add(A),q(),B.classList.remove(A)}const ye=r.ref(null);function ae({transitionDisabled:B}){const A=c.value;if(!A)return;B&&A.classList.add("transition-disabled");const K=b();K&&ye.value&&(ye.value.style.width=`${K.offsetWidth}px`,ye.value.style.height=`${K.offsetHeight}px`,ye.value.style.transform=`translateX(${K.offsetLeft-ot(getComputedStyle(A).paddingLeft)}px)`,B&&ye.value.offsetWidth),B&&A.classList.remove("transition-disabled")}r.watch([$],()=>{e.type==="segment"&&r.nextTick(()=>{ae({transitionDisabled:!1})})}),r.onMounted(()=>{e.type==="segment"&&ae({transitionDisabled:!0})});let $e=0;function we(B){var A;if(B.contentRect.width===0&&B.contentRect.height===0||$e===B.contentRect.width)return;$e=B.contentRect.width;const{type:K}=e;if((K==="line"||K==="bar")&&fe(),K!=="segment"){const{placement:T}=e;De((T==="top"||T==="bottom"?(A=m.value)===null||A===void 0?void 0:A.$el:h.value)||null)}}const se=di(we,64);r.watch([()=>e.justifyContent,()=>e.size],()=>{r.nextTick(()=>{const{type:B}=e;(B==="line"||B==="bar")&&fe()})});const Re=r.ref(!1);function Ee(B){var A;const{target:K,contentRect:{width:T,height:C}}=B,E=K.parentElement.parentElement.offsetWidth,re=K.parentElement.parentElement.offsetHeight,{placement:xe}=e;if(!Re.value)xe==="top"||xe==="bottom"?E<T&&(Re.value=!0):re<C&&(Re.value=!0);else{const{value:Se}=p;if(!Se)return;xe==="top"||xe==="bottom"?E-T>Se.$el.offsetWidth&&(Re.value=!1):re-C>Se.$el.offsetHeight&&(Re.value=!1)}De(((A=m.value)===null||A===void 0?void 0:A.$el)||null)}const Ne=di(Ee,64);function Fe(){const{onAdd:B}=e;B&&B(),r.nextTick(()=>{const A=b(),{value:K}=m;!A||!K||K.scrollTo({left:A.offsetLeft,top:0,behavior:"smooth"})})}function De(B){if(!B)return;const{placement:A}=e;if(A==="top"||A==="bottom"){const{scrollLeft:K,scrollWidth:T,offsetWidth:C}=B;y.value=K<=0,w.value=K+C>=T}else{const{scrollTop:K,scrollHeight:T,offsetHeight:C}=B;y.value=K<=0,w.value=K+C>=T}}const Ge=di(B=>{De(B.target)},64);r.provide(Pi,{triggerRef:r.toRef(e,"trigger"),tabStyleRef:r.toRef(e,"tabStyle"),tabClassRef:r.toRef(e,"tabClass"),addTabStyleRef:r.toRef(e,"addTabStyle"),addTabClassRef:r.toRef(e,"addTabClass"),paneClassRef:r.toRef(e,"paneClass"),paneStyleRef:r.toRef(e,"paneStyle"),mergedClsPrefixRef:s,typeRef:r.toRef(e,"type"),closableRef:r.toRef(e,"closable"),valueRef:$,tabChangeIdRef:k,onBeforeLeaveRef:r.toRef(e,"onBeforeLeave"),activateTab:ce,handleClose:ee,handleAdd:Fe}),ca(()=>{q(),G()}),r.watchEffect(()=>{const{value:B}=u;if(!B)return;const{value:A}=s,K=`${A}-tabs-nav-scroll-wrapper--shadow-start`,T=`${A}-tabs-nav-scroll-wrapper--shadow-end`;y.value?B.classList.remove(K):B.classList.add(K),w.value?B.classList.remove(T):B.classList.add(T)});const Te={syncBarPosition:()=>{q()}},X=()=>{ae({transitionDisabled:!0})},I=r.computed(()=>{const{value:B}=g,{type:A}=e,K={card:"Card",bar:"Bar",line:"Line",segment:"Segment"}[A],T=`${B}${K}`,{self:{barColor:C,closeIconColor:E,closeIconColorHover:re,closeIconColorPressed:xe,tabColor:Se,tabBorderColor:We,paneTextColor:Ie,tabFontWeight:Be,tabBorderRadius:qe,tabFontWeightActive:st,colorSegment:Ye,fontWeightStrong:at,tabColorSegment:v,closeSize:H,closeIconSize:J,closeColorHover:le,closeColorPressed:de,closeBorderRadius:ue,[Q("panePadding",B)]:he,[Q("tabPadding",T)]:me,[Q("tabPaddingVertical",T)]:ze,[Q("tabGap",T)]:rt,[Q("tabGap",`${T}Vertical`)]:Rt,[Q("tabTextColor",A)]:wn,[Q("tabTextColorActive",A)]:Jt,[Q("tabTextColorHover",A)]:Qt,[Q("tabTextColorDisabled",A)]:pr,[Q("tabFontSize",B)]:br},common:{cubicBezierEaseInOut:Vn}}=d.value;return{"--n-bezier":Vn,"--n-color-segment":Ye,"--n-bar-color":C,"--n-tab-font-size":br,"--n-tab-text-color":wn,"--n-tab-text-color-active":Jt,"--n-tab-text-color-disabled":pr,"--n-tab-text-color-hover":Qt,"--n-pane-text-color":Ie,"--n-tab-border-color":We,"--n-tab-border-radius":qe,"--n-close-size":H,"--n-close-icon-size":J,"--n-close-color-hover":le,"--n-close-color-pressed":de,"--n-close-border-radius":ue,"--n-close-icon-color":E,"--n-close-icon-color-hover":re,"--n-close-icon-color-pressed":xe,"--n-tab-color":Se,"--n-tab-font-weight":Be,"--n-tab-font-weight-active":st,"--n-tab-padding":me,"--n-tab-padding-vertical":ze,"--n-tab-gap":rt,"--n-tab-gap-vertical":Rt,"--n-pane-padding-left":dt(he,"left"),"--n-pane-padding-right":dt(he,"right"),"--n-pane-padding-top":dt(he,"top"),"--n-pane-padding-bottom":dt(he,"bottom"),"--n-font-weight-strong":at,"--n-tab-color-segment":v}}),ne=l?tt("tabs",r.computed(()=>`${g.value[0]}${e.type[0]}`),I,e):void 0;return Object.assign({mergedClsPrefix:s,mergedValue:$,renderedNames:new Set,segmentCapsuleElRef:ye,tabsPaneWrapperRef:O,tabsElRef:c,barElRef:f,addTabInstRef:p,xScrollInstRef:m,scrollWrapperElRef:u,addTabFixed:Re,tabWrapperStyle:M,handleNavResize:se,mergedSize:g,handleScroll:Ge,handleTabsResize:Ne,cssVars:l?void 0:I,themeClass:ne==null?void 0:ne.themeClass,animationDirection:te,renderNameListRef:oe,yScrollElRef:h,handleSegmentResize:X,onAnimationBeforeLeave:Z,onAnimationEnter:Y,onAnimationAfterEnter:ie,onRender:ne==null?void 0:ne.onRender},Te)},render(){const{mergedClsPrefix:e,type:t,placement:n,addTabFixed:o,addable:i,mergedSize:a,renderNameListRef:s,onRender:l,paneWrapperClass:d,paneWrapperStyle:c,$slots:{default:f,prefix:u,suffix:p}}=this;l==null||l();const m=f?_n(f()).filter(k=>k.type.__TAB_PANE__===!0):[],h=f?_n(f()).filter(k=>k.type.__TAB__===!0):[],y=!h.length,w=t==="card",g=t==="segment",z=!w&&!g&&this.justifyContent;s.value=[];const F=()=>{const k=r.h("div",{style:this.tabWrapperStyle,class:`${e}-tabs-wrapper`},z?null:r.h("div",{class:`${e}-tabs-scroll-padding`,style:n==="top"||n==="bottom"?{width:`${this.tabsPadding}px`}:{height:`${this.tabsPadding}px`}}),y?m.map((M,b)=>(s.value.push(M.props.name),Ei(r.h(Ri,Object.assign({},M.props,{internalCreatedByPane:!0,internalLeftPadded:b!==0&&(!z||z==="center"||z==="start"||z==="end")}),M.children?{default:M.children.tab}:void 0)))):h.map((M,b)=>(s.value.push(M.props.name),Ei(b!==0&&!z?Ws(M):M))),!o&&i&&w?Ns(i,(y?m.length:h.length)!==0):null,z?null:r.h("div",{class:`${e}-tabs-scroll-padding`,style:{width:`${this.tabsPadding}px`}}));return r.h("div",{ref:"tabsElRef",class:`${e}-tabs-nav-scroll-content`},w&&i?r.h(Gt,{onResize:this.handleTabsResize},{default:()=>k}):k,w?r.h("div",{class:`${e}-tabs-pad`}):null,w?null:r.h("div",{ref:"barElRef",class:`${e}-tabs-bar`}))},$=g?"top":n;return r.h("div",{class:[`${e}-tabs`,this.themeClass,`${e}-tabs--${t}-type`,`${e}-tabs--${a}-size`,z&&`${e}-tabs--flex`,`${e}-tabs--${$}`],style:this.cssVars},r.h("div",{class:[`${e}-tabs-nav--${t}-type`,`${e}-tabs-nav--${$}`,`${e}-tabs-nav`]},Ae(u,k=>k&&r.h("div",{class:`${e}-tabs-nav__prefix`},k)),g?r.h(Gt,{onResize:this.handleSegmentResize},{default:()=>r.h("div",{class:`${e}-tabs-rail`,ref:"tabsElRef"},r.h("div",{class:`${e}-tabs-capsule`,ref:"segmentCapsuleElRef"},r.h("div",{class:`${e}-tabs-wrapper`},r.h("div",{class:`${e}-tabs-tab`}))),y?m.map((k,M)=>(s.value.push(k.props.name),r.h(Ri,Object.assign({},k.props,{internalCreatedByPane:!0,internalLeftPadded:M!==0}),k.children?{default:k.children.tab}:void 0))):h.map((k,M)=>(s.value.push(k.props.name),M===0?k:Ws(k))))}):r.h(Gt,{onResize:this.handleNavResize},{default:()=>r.h("div",{class:`${e}-tabs-nav-scroll-wrapper`,ref:"scrollWrapperElRef"},["top","bottom"].includes($)?r.h(Ic,{ref:"xScrollInstRef",onScroll:this.handleScroll},{default:F}):r.h("div",{class:`${e}-tabs-nav-y-scroll`,onScroll:this.handleScroll,ref:"yScrollElRef"},F()))}),o&&i&&w?Ns(i,!0):null,Ae(p,k=>k&&r.h("div",{class:`${e}-tabs-nav__suffix`},k))),y&&(this.animated&&($==="top"||$==="bottom")?r.h("div",{ref:"tabsPaneWrapperRef",style:c,class:[`${e}-tabs-pane-wrapper`,d]},Hs(m,this.mergedValue,this.renderedNames,this.onAnimationBeforeLeave,this.onAnimationEnter,this.onAnimationAfterEnter,this.animationDirection)):Hs(m,this.mergedValue,this.renderedNames)))}});function Hs(e,t,n,o,i,a,s){const l=[];return e.forEach(d=>{const{name:c,displayDirective:f,"display-directive":u}=d.props,p=h=>f===h||u===h,m=t===c;if(d.key!==void 0&&(d.key=c),m||p("show")||p("show:lazy")&&n.has(c)){n.has(c)||n.add(c);const h=!p("if");l.push(h?r.withDirectives(d,[[r.vShow,m]]):d)}}),s?r.h(r.TransitionGroup,{name:`${s}-transition`,onBeforeLeave:o,onEnter:i,onAfterEnter:a},{default:()=>l}):l}function Ns(e,t){return r.h(Ri,{ref:"addTabInstRef",key:"__addable",name:"__addable",internalCreatedByPane:!0,internalAddable:!0,internalLeftPadded:t,disabled:typeof e=="object"&&e.disabled})}function Ws(e){const t=r.cloneVNode(e);return t.props?t.props.internalLeftPadded=!0:t.props={internalLeftPadded:!0},t}function Ei(e){return Array.isArray(e.dynamicProps)?e.dynamicProps.includes("internalLeftPadded")||e.dynamicProps.push("internalLeftPadded"):e.dynamicProps=["internalLeftPadded"],e}async function js(e,t,n){try{const{data:o}=await tn().POST("/api/visualizations",{type:e,title:t,config:n});return o.id}catch(o){$n(o)}}async function P0(e,t,n,o){try{if(t)await Us(t,n,o);else return await js(e,n,o)}catch(i){$n(i)}}async function Us(e,t,n){try{await tn().PUT(`/api/visualizations/${e}`,{title:t,config:n})}catch(o){$n(o)}}function fr(e){return String(e).toLowerCase()==="true"}async function R0(e,t={}){const n=hr(e.settings,t.settings),o=e.specs,i=_0(e.tracks,t.tracks);return{plugin:e,settings:n,specs:o,tracks:i}}function E0(e,t){let n=t??e.value;return["float","integer"].includes(e.type)?n=Number(n):e.type==="boolean"&&(n=fr(n)),n}function B0(e,t={}){var i,a,s;const n=t,o=(i=e.test_param)==null?void 0:i.name;if(!o)console.error(`Test parameter has no name: ${e.name}.`);else{const l=n[o]??((a=e.test_param)==null?void 0:a.value);for(const d of e.cases||[])d.value===l&&(n[o]=l,(s=d.inputs)!=null&&s.length&&hr(d.inputs,n))}return n}function hr(e,t){const n=t||{};return e==null||e.forEach(o=>{o.type==="conditional"?n[o.name]=B0(o,n[o.name]):n[o.name]=E0(o,n[o.name])}),n}function _0(e,t){const n=t||[];return e&&(n.length===0&&n.push({}),n.forEach((o,i)=>{n[i]=hr(e,o)})),n}const M0={key:2,class:"border border-dotted border-green-600 rounded mt-2 p-2"},F0=r.defineComponent({__name:"InputConditional",props:r.mergeModels({datasetId:{},input:{}},{value:{},valueModifiers:{}}),emits:r.mergeModels(["update:value"],["update:value"]),setup(e,{emit:t}){const n=e,o=t;if(!n.input.test_param)throw`The conditional '${n.input.name}' is missing a test parameter.`;if(!n.input.cases||n.input.cases.length===0)throw`The conditional '${n.input.name}' is missing a cases.`;const i=r.ref(n.input.test_param),a=i.value.name;a||console.error(`Test parameter has no name: ${n.input.name}.`);const s=r.useModel(e,"value");(!s.value||!(a in s.value))&&console.error(`Test parameter of conditional not available: ${n.input.name}.`,s.value);const l=r.ref(p()),d=r.computed(()=>{const h={};if(n.input.cases&&n.input.cases.length>0)for(const y of n.input.cases)h[y.value]=hr(y.inputs),h[y.value][a]=y.value;return h}),c=r.computed(()=>{const h={};if(n.input.cases&&n.input.cases.length>0)for(const y of n.input.cases)h[y.value]=y.inputs;return h}),f=r.computed(()=>c.value[l.value]),u=r.computed({get(){return l.value==="true"},set(h){l.value=String(h)}});function p(){return s.value&&s.value[a]}function m(h){let y={...d.value[l.value]};if(h){const w={};f.value.forEach(g=>{w[g.name]=h[g.name]}),y={...y,...h}}o("update:value",y)}return r.watch(()=>s.value,()=>{l.value=p()}),r.watch(()=>l.value,()=>{m()}),(h,y)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[i.value.type==="boolean"?(r.openBlock(),r.createBlock(r.unref(Ds),{key:0,value:u.value,"onUpdate:value":y[0]||(y[0]=w=>u.value=w)},null,8,["value"])):(r.openBlock(),r.createBlock(r.unref(ao),{key:1,value:l.value,"onUpdate:value":y[1]||(y[1]=w=>l.value=w),options:i.value.data},null,8,["value","options"])),f.value?(r.openBlock(),r.createElementBlock("div",M0,[r.createVNode(Bi,{"dataset-id":h.datasetId,inputs:f.value,values:s.value,"onUpdate:values":m},null,8,["dataset-id","inputs","values"])])):r.createCommentVNode("",!0)],64))}}),lo=r.ref({});function Gs(){async function e(t){return lo.value[t]||(lo.value[t]=tn().GET(`/api/datasets/${t}`).catch(n=>{throw delete lo.value[t],n})),await lo.value[t]}return{getDataset:e}}const I0={key:0},A0={key:0,class:"text-red-600 mb-1"},O0={key:1},Ks=100,D0=r.defineComponent({__name:"InputData",props:r.mergeModels({datasetId:{},extension:{},optional:{type:Boolean}},{value:{},valueModifiers:{}}),emits:["update:value"],setup(e){const{getDataset:t}=Gs(),n=e,o=r.ref([]),i=r.useModel(e,"value"),a=r.ref(!1),s=r.ref(null);async function l(u){if(n.datasetId){a.value=!0;try{const{data:p}=await t(n.datasetId),m=p.history_id,h="v=dev&order=hid&q=deleted&qv=false&q=visible&qv=true&",y=n.extension?`q=extension-eq&qv=${n.extension}&`:"",w=u?`q=name-contains&qv=${u}&`:"",{data:g}=await tn().GET(`/api/histories/${m}/contents?${h}${y}${w}limit=${Ks}`);if(g&&g.length>0){const z=g.map(F=>({label:`${F.hid}: ${F.name}`,value:{id:F.id,hid:F.hid,name:F.name}}));g.length>=Ks&&z.push({label:"...filter for more",value:null,disabled:!0}),n.optional&&z.unshift({label:"-- Clear Selection --",value:null}),o.value=z}}catch(p){console.log(p)}finally{a.value=!1}}else console.debug("Data selector disabled, since `datasetId` is unavailable.")}function d(){i.value=s.value}function c(u){return r.h("div",{class:"my-1 whitespace-normal break-all"},[r.h(mt,{class:"size-3 mr-1"},{default:()=>r.h(Ui)}),u.label])}function f({option:u}){return r.h("div",{class:"z-[1] whitespace-nowrap text-ellipsis overflow-hidden"},u.label)}return r.watch(()=>i.value,()=>{var u;s.value=((u=i.value)==null?void 0:u.name)||null},{immediate:!0}),l(),(u,p)=>u.datasetId?(r.openBlock(),r.createElementBlock("div",I0,[!u.optional&&!i.value?(r.openBlock(),r.createElementBlock("div",A0,[r.createVNode(r.unref(mt),{class:"size-3 mr-1"},{default:r.withCtx(()=>[r.createVNode(r.unref(ji))]),_:1}),p[1]||(p[1]=r.createElementVNode("span",null,"Please select a dataset.",-1))])):r.createCommentVNode("",!0),r.createVNode(r.unref(ao),{value:s.value,"onUpdate:value":[p[0]||(p[0]=m=>s.value=m),d],filterable:"",placeholder:"Select a Dataset",loading:a.value,"render-label":c,"render-tag":f,options:o.value,onSearch:l},null,8,["value","loading","options"])])):(r.openBlock(),r.createElementBlock("div",O0,"Selection deferred."))}});function V0(e,t,n,o){const i=[];t&&i.push({label:"Column: Default",value:"auto"});const a=e.metadata_column_types;for(const s in a)(o&&["int","float"].includes(a[s])||n&&a[s]==="str"||!o&&!n)&&i.push({label:"Column: "+(parseInt(s)+1),value:s});return i}const L0=r.defineComponent({__name:"InputDataColumn",props:r.mergeModels({datasetId:{},isAuto:{type:Boolean},isText:{type:Boolean},isNumber:{type:Boolean}},{value:{},valueModifiers:{}}),emits:["update:value"],setup(e){const{getDataset:t}=Gs(),n=e,o=r.ref([]),i=r.useModel(e,"value");async function a(){if(n.datasetId)try{const{data:l}=await t(n.datasetId),d=V0(l,n.isAuto,n.isText,n.isNumber);o.value=d,s()}catch(l){console.debug(l)}else console.debug("Data column selector disabled, since `datasetId` is unavailable.")}function s(){o.value.length>0&&i.value===null&&(i.value=o.value[0].value)}return a(),r.watch(()=>i.value,()=>s()),(l,d)=>l.datasetId?(r.openBlock(),r.createBlock(r.unref(ao),{key:0,value:i.value,"onUpdate:value":d[0]||(d[0]=c=>i.value=c),options:o.value},null,8,["value","options"])):(r.openBlock(),r.createBlock(r.unref(On),{key:1,value:i.value,"onUpdate:value":d[1]||(d[1]=c=>i.value=c)},null,8,["value"]))}}),H0={class:"select-none"},N0={class:"font-bold mb-1"},W0={key:0,class:"text-xs mb-1"},j0={key:5},qs=.01,Bi=r.defineComponent({__name:"InputForm",props:{datasetId:{},inputs:{},values:{}},emits:["update:values"],setup(e,{emit:t}){const n=e,o=t,i=r.ref(a());function a(){const l={...n.values};return n.inputs.forEach(d=>{l[d.name]===void 0&&(l[d.name]=null)}),l}function s(){o("update:values",i.value)}return r.watch(()=>n.values,()=>{i.value=a()}),(l,d)=>(r.openBlock(),r.createElementBlock("div",H0,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.inputs,(c,f)=>(r.openBlock(),r.createElementBlock("div",{key:f,class:r.normalizeClass(f<l.inputs.length-1?"pb-2":"")},[r.createElementVNode("div",N0,r.toDisplayString(c.label||c.name),1),c.help?(r.openBlock(),r.createElementBlock("div",W0,r.toDisplayString(c.help),1)):r.createCommentVNode("",!0),r.createElementVNode("div",null,[c.type==="boolean"?(r.openBlock(),r.createBlock(r.unref(Ds),{key:0,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s]},null,8,["value","onUpdate:value"])):c.type==="color"?(r.openBlock(),r.createBlock(r.unref(Wv),{key:1,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],modes:["hex"],"show-alpha":!1},null,8,["value","onUpdate:value"])):c.type==="conditional"?(r.openBlock(),r.createBlock(F0,{key:2,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],"dataset-id":l.datasetId,input:c},null,8,["value","onUpdate:value","dataset-id","input"])):c.type==="data"?(r.openBlock(),r.createBlock(D0,{key:3,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],"dataset-id":l.datasetId,extension:c.extension,optional:r.unref(fr)(c.optional)},null,8,["value","onUpdate:value","dataset-id","extension","optional"])):c.type==="data_column"?(r.openBlock(),r.createBlock(L0,{key:4,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],"dataset-id":l.datasetId,"is-auto":r.unref(fr)(c.is_auto),"is-text":r.unref(fr)(c.is_text),"is-number":r.unref(fr)(c.is_number)},null,8,["value","onUpdate:value","dataset-id","is-auto","is-text","is-number"])):["float","integer"].includes(c.type)?(r.openBlock(),r.createElementBlock("div",j0,[c.min!==void 0&&c.max!==void 0?(r.openBlock(),r.createBlock(r.unref(w0),{key:0,class:"mb-2",value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],min:Number(c.min),max:Number(c.max),step:c.type==="float"?qs:1},null,8,["value","onUpdate:value","min","max","step"])):r.createCommentVNode("",!0),r.createVNode(r.unref(m0),{value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],size:"small",min:Number(c.min),max:Number(c.max),step:c.type==="float"?qs:1},null,8,["value","onUpdate:value","min","max","step"])])):c.type==="select"?(r.openBlock(),r.createBlock(r.unref(ao),{key:6,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],options:c.data},null,8,["value","onUpdate:value","options"])):c.type==="textarea"?(r.openBlock(),r.createBlock(r.unref(On),{key:7,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],rows:Number(c.rows),type:"textarea"},null,8,["value","onUpdate:value","rows"])):(r.openBlock(),r.createBlock(r.unref(On),{key:8,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,d[0]||(d[0]=u=>s())]},null,8,["value","onUpdate:value"]))])],2))),128))]))}}),U0={class:"border border-dotted border-green-600 rounded p-2"},G0={class:"mx-1"},K0=r.defineComponent({__name:"InputRepeats",props:{datasetId:{},inputs:{},valuesArray:{}},emits:["update:values-array"],setup(e,{emit:t}){const n=e,o=t,i=r.computed(()=>hr(n.inputs));function a(){const d=[...n.valuesArray];d.unshift(i.value),o("update:values-array",d)}function s(d){const c=[...n.valuesArray];c.splice(d,1),o("update:values-array",c)}function l(d,c){const f=[...n.valuesArray];f[d]={...c},o("update:values-array",f)}return(d,c)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createVNode(r.unref(Pt),{size:"tiny",type:"primary",onClick:a},{default:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(Ui))]),_:1}),c[0]||(c[0]=r.createElementVNode("span",{class:"mx-1"},"Add New Track",-1))]),_:1}),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.valuesArray,(f,u)=>(r.openBlock(),r.createElementBlock("div",{key:u,class:"py-2"},[r.createElementVNode("div",U0,[r.createVNode(Bi,{"dataset-id":d.datasetId,inputs:d.inputs,values:f,"onUpdate:values":p=>l(u,p)},null,8,["dataset-id","inputs","values","onUpdate:values"]),r.createVNode(r.unref(Pt),{class:"w-full mt-2","data-description":"remove repeat block",disabled:d.valuesArray.length<=1,size:"tiny",type:"primary",onClick:p=>s(u)},{default:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(id))]),_:1}),r.createElementVNode("span",G0,"Remove Track "+r.toDisplayString(d.valuesArray.length-u),1)]),_:2},1032,["disabled","onClick"])])]))),128))],64))}}),q0=2e3,X0=r.defineComponent({__name:"AlertNotify",props:{message:{},messageType:{default:"info"}},emits:["timeout"],setup(e,{emit:t}){const n=e,o=t;let i=null;return r.watch(()=>n.message,()=>{i&&clearTimeout(i),i=setTimeout(()=>o("timeout"),q0)}),(a,s)=>a.message?(r.openBlock(),r.createBlock(r.unref(ks),{key:0,type:a.messageType},{default:r.withCtx(()=>[r.createTextVNode(r.toDisplayString(a.message),1)]),_:1},8,["type"])):r.createCommentVNode("",!0)}}),Y0={class:"text-xs"},Z0=r.defineComponent({__name:"ApiStatus",setup(e){const t=r.ref("...");async function n(){try{const{data:o}=await tn().GET("/api/version");t.value=o.version_major}catch{console.log("Unable to connect to Galaxy. Verify Galaxy is running and refer to docs."),t.value=""}}return n(),(o,i)=>t.value?(r.openBlock(),r.createBlock(r.unref(cr),{key:0,class:"mx-1",trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(mt),{class:"mx-1"},{default:r.withCtx(()=>[r.createVNode(r.unref(ed),{class:"text-green-600"})]),_:1})]),default:r.withCtx(()=>[r.createElementVNode("span",Y0,"Connected to Galaxy Version "+r.toDisplayString(t.value)+".",1)]),_:1})):(r.openBlock(),r.createBlock(r.unref(cr),{key:1,class:"mx-1",trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(mt),{class:"mx-1"},{default:r.withCtx(()=>[r.createVNode(r.unref(ji),{class:"text-red-600"})]),_:1})]),default:r.withCtx(()=>[i[0]||(i[0]=r.createElementVNode("span",{class:"text-xs"},"Galaxy is not accessible!",-1))]),_:1}))}}),J0=(e,t)=>{const n=e.__vccOpts||e;for(const[o,i]of t)n[o]=i;return n},Q0={},ex={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 100 100",class:"size-14"};function tx(e,t){return r.openBlock(),r.createElementBlock("svg",ex,t[0]||(t[0]=[r.createElementVNode("circle",{cx:"50",cy:"50",r:"45",stroke:"#E30A17","stroke-width":"5"},null,-1),r.createElementVNode("path",{d:"M 50,5 A 45,45 0 0,1 95,50 L 50,50 Z",fill:"#E30A17"},null,-1)]))}const nx=J0(Q0,[["render",tx]]),rx={class:"overflow-auto select-none bg-white z-10 p-2"},ox={key:0,class:"flex"},ix={class:"flex-1 font-thin text-lg mt-1"},ax={class:"bg-sky-50 text-sky-900 rounded my-2 p-2"},lx={class:"flex"},sx={class:"flex justify-center center-items"},dx={class:"m-2"},cx=["src"],ux={class:"overflow-hidden break-words p-1"},fx={class:"font-bold"},hx=["innerHTML"],px=r.defineComponent({__name:"SidePanel",props:{datasetId:{},datasetUrl:{},description:{},logoUrl:{},html:{},name:{},settingInputs:{},settingValues:{},trackInputs:{},trackValues:{},visualizationId:{},visualizationTitle:{}},emits:["update:tracks","update:settings","update:visualization-id","update:visualization-title","toggle"],setup(e,{emit:t}){const n=e,o=t,i=r.ref(""),a=r.ref("info"),s=r.computed(()=>n.settingInputs.length===0||n.trackInputs.length===0);async function l(){try{if(n.visualizationId)await Us(n.visualizationId,n.visualizationTitle,{dataset_id:n.datasetId,settings:n.settingValues,tracks:n.trackValues}),i.value="Successfully saved.",a.value="success";else{const u=await js(n.name,n.visualizationTitle,{dataset_id:n.datasetId,settings:n.settingValues,tracks:n.trackValues});u?(i.value="Successfully created.",a.value="success",o("update:visualization-id",u)):(i.value="Something went wrong.",a.value="error")}}catch(u){i.value=Di(u),a.value="error"}}function d(u){o("update:settings",u)}function c(u){o("update:tracks",u)}function f(u){o("update:visualization-title",u)}return(u,p)=>(r.openBlock(),r.createElementBlock("div",rx,[u.datasetUrl?(r.openBlock(),r.createElementBlock("div",ox,[r.createElementVNode("div",ix,[p[2]||(p[2]=r.createElementVNode("span",null,"Charts",-1)),r.createVNode(Z0)]),r.createElementVNode("div",null,[u.datasetId?(r.openBlock(),r.createBlock(r.unref(cr),{key:0,trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(Pt),{strong:"",secondary:"",circle:"",class:"bg-sky-100 mr-2","data-description":"sidepanel save button",onClick:l},{icon:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(rd))]),_:1})]),_:1})]),default:r.withCtx(()=>[p[3]||(p[3]=r.createElementVNode("span",{class:"text-xs"},"Save",-1))]),_:1})):r.createCommentVNode("",!0),r.createVNode(r.unref(cr),{trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(Pt),{strong:"",secondary:"",circle:"",class:"bg-sky-100",onClick:p[0]||(p[0]=m=>o("toggle"))},{icon:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(nd))]),_:1})]),_:1})]),default:r.withCtx(()=>[p[4]||(p[4]=r.createElementVNode("span",{class:"text-xs"},"Collapse",-1))]),_:1})])])):r.createCommentVNode("",!0),r.createVNode(X0,{message:i.value,"message-type":a.value,onTimeout:p[1]||(p[1]=m=>i.value=""),class:"mt-2"},null,8,["message","message-type"]),r.createElementVNode("div",ax,[r.createElementVNode("div",lx,[r.createElementVNode("div",sx,[r.createElementVNode("div",dx,[n.logoUrl?(r.openBlock(),r.createElementBlock("img",{key:0,src:n.logoUrl,class:"min-w-14 max-w-14 object-contain"},null,8,cx)):(r.openBlock(),r.createBlock(nx,{key:1}))])]),r.createElementVNode("div",ux,[r.createElementVNode("span",fx,r.toDisplayString(u.html),1),r.createElementVNode("div",{class:"text-xs",innerHTML:u.description},null,8,hx)])])]),r.createElementVNode("div",null,[p[5]||(p[5]=r.createElementVNode("div",{class:"font-bold"},"Title",-1)),p[6]||(p[6]=r.createElementVNode("div",{class:"text-xs py-1"},"Specify a visualization title.",-1)),r.createVNode(r.unref(On),{value:u.visualizationTitle,onInput:f},null,8,["value"])]),r.createVNode(r.unref(z0),{type:"line",animated:"",class:"mt-2","pane-wrapper-class":"!overflow-visible","tab-class":s.value?"!hidden":""},{default:r.withCtx(()=>[u.trackInputs.length>0?(r.openBlock(),r.createBlock(r.unref(Ls),{key:0,name:"tracks"},{tab:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(od))]),_:1}),p[7]||(p[7]=r.createElementVNode("span",{class:"mx-1"},"Tracks",-1))]),default:r.withCtx(()=>[r.createVNode(K0,{"dataset-id":u.datasetId,inputs:u.trackInputs,"values-array":u.trackValues,"onUpdate:valuesArray":c},null,8,["dataset-id","inputs","values-array"])]),_:1})):r.createCommentVNode("",!0),u.settingInputs.length>0?(r.openBlock(),r.createBlock(r.unref(Ls),{key:1,name:"settings"},{tab:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(Js))]),_:1}),p[8]||(p[8]=r.createElementVNode("span",{class:"mx-1"},"Settings",-1))]),default:r.withCtx(()=>[r.createVNode(Bi,{"dataset-id":u.datasetId,inputs:u.settingInputs,values:u.settingValues,"onUpdate:values":d},null,8,["dataset-id","inputs","values"])]),_:1})):r.createCommentVNode("",!0)]),_:1},8,["tab-class"])]))}});function bx(e,t="app"){if(e===void 0){const l=document.getElementById(t);if(l)e=JSON.parse((l==null?void 0:l.dataset.incoming)||"{}");else throw new Error(`Container element '${t}' not found.`)}const n=(e==null?void 0:e.root)??"/",o=(e==null?void 0:e.visualization_config)??{},i=(e==null?void 0:e.visualization_id)??null,a=(e==null?void 0:e.visualization_plugin)??{},s=(e==null?void 0:e.visualization_title)??"Unnamed Visualization";return{root:n,visualizationConfig:o,visualizationId:i,visualizationPlugin:a,visualizationTitle:s}}const gx={key:1,class:"m-2"},mx={key:0,class:"relative max-w-full h-screen overflow-hidden"},vx=r.defineComponent({__name:"GalaxyCharts",props:{container:{},credentials:{},incoming:{}},setup(e){const t=e,{root:n,visualizationConfig:o,visualizationId:i,visualizationPlugin:a,visualizationTitle:s}=bx(t.incoming,t.container),l=r.ref(!0),d=r.ref(""),c=r.ref(""),f=r.ref(""),u=r.ref(!0),p=r.ref(""),m=r.ref(""),h=r.ref([]),y=r.ref({}),w=r.ref({}),g=r.ref([]),z=r.ref([]),F=r.ref(i),$=r.ref(s),k=Hi();k.setCredentials(t.credentials||"include"),k.setRoot(n||"/"),R0(a,o).then(({plugin:oe,settings:te,specs:ce,tracks:j})=>{d.value=oe.description||"",f.value=oe.html||"",u.value=!1,p.value=oe.logo||"",m.value=oe.name||"",h.value=oe.settings||[],y.value=te,w.value=ce||{},g.value=oe.tracks||[],z.value=j});const M=r.computed(()=>o.dataset_id||""),b=r.computed(()=>M.value?(console.debug(`GalaxyCharts: Built dataset url from dataset id: ${M.value}.`),Ys(n,M.value)):""),S=r.computed(()=>p.value&&`${n}${p.value}`),_=r.computed(()=>h.value.length===0&&g.value.length===0);async function D(){l.value=!l.value,await r.nextTick(),window?window.dispatchEvent(new Event("resize")):console.warn("window unavailable.")}function q(){try{window.postMessage({container:t.container,from:"galaxy-visualization",visualization_config:JSON.parse(JSON.stringify(G())),visualization_id:F.value,visualization_title:$.value},"*")}catch(oe){c.value=`Failed to postMessage: ${oe}`}}function G(){return{dataset_id:M.value,settings:y.value,tracks:z.value}}function O(oe){y.value={...oe},q()}function W(oe){z.value=[...oe],q()}function L(oe){F.value=oe,q()}function Z(oe){$.value=oe,q()}async function Y(oe){ie(oe);try{const te=await P0(m.value,F.value,$.value,G());te&&L(te)}catch(te){c.value=`Failed to save: ${te}`}}function ie(oe){O({...y.value,...oe})}return(oe,te)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[c.value?(r.openBlock(),r.createBlock(r.unref(ks),{key:0,type:"error",class:"m-2"},{default:r.withCtx(()=>[r.createTextVNode(r.toDisplayString(c.value),1)]),_:1})):r.createCommentVNode("",!0),u.value?(r.openBlock(),r.createElementBlock("div",gx,[r.createElementVNode("span",null,[r.createVNode(r.unref(Qs),{class:"animate-spin size-4 inline mx-1"})]),te[0]||(te[0]=r.createElementVNode("span",{class:"text-xs"},"Please wait...",-1))])):(r.openBlock(),r.createElementBlock("div",{key:2,class:r.normalizeClass(["grid h-screen",{"grid-cols-[1fr_17rem]":!l.value&&!_.value&&b.value}])},[b.value?(r.openBlock(),r.createElementBlock("div",mx,[r.renderSlot(oe.$slots,"default",{datasetId:M.value,datasetUrl:b.value,root:r.unref(n),settings:y.value,specs:w.value,tracks:z.value,save:Y,update:ie})])):r.createCommentVNode("",!0),l.value&&!_.value&&b.value?(r.openBlock(),r.createBlock(r.unref(cr),{key:1,trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(Pt),{strong:"",secondary:"",circle:"",class:"bg-sky-100 m-2 absolute right-0",onClick:D},{icon:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(td))]),_:1})]),_:1})]),default:r.withCtx(()=>[te[1]||(te[1]=r.createElementVNode("span",{class:"text-xs"},"Expand",-1))]),_:1})):r.createCommentVNode("",!0),r.withDirectives(r.createVNode(px,{"dataset-id":M.value,"dataset-url":b.value,description:d.value,html:f.value,"logo-url":S.value,name:m.value,"setting-inputs":h.value,"setting-values":y.value,"track-inputs":g.value,"track-values":z.value,"visualization-id":F.value,"visualization-title":$.value,"onUpdate:settings":O,"onUpdate:tracks":W,"onUpdate:visualizationId":L,"onUpdate:visualizationTitle":Z,onToggle:D},null,8,["dataset-id","dataset-url","description","html","logo-url","name","setting-inputs","setting-values","track-inputs","track-values","visualization-id","visualization-title"]),[[r.vShow,!l.value&&!_.value||!b.value]])],2))],64))}});je.GalaxyApi=tn,je.GalaxyCharts=vx,je.useColumnsStore=Zs,Object.defineProperty(je,Symbol.toStringTag,{value:"Module"})});
|
|
1981
|
+
`)])])])]),T0=Object.assign(Object.assign({},Ce.props),{value:[String,Number],defaultValue:[String,Number],trigger:{type:String,default:"click"},type:{type:String,default:"bar"},closable:Boolean,justifyContent:String,size:{type:String,default:"medium"},placement:{type:String,default:"top"},tabStyle:[String,Object],tabClass:String,addTabStyle:[String,Object],addTabClass:String,barWidth:Number,paneClass:String,paneStyle:[String,Object],paneWrapperClass:String,paneWrapperStyle:[String,Object],addable:[Boolean,Object],tabsPadding:{type:Number,default:0},animated:Boolean,onBeforeLeave:Function,onAdd:Function,"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onClose:[Function,Array],labelSize:String,activeName:[String,Number],onActiveNameChange:[Function,Array]}),z0=r.defineComponent({name:"Tabs",props:T0,setup(e,{slots:t}){var n,o,i,a;process.env.NODE_ENV!=="production"&&r.watchEffect(()=>{e.labelSize!==void 0&&Qe("tabs","`label-size` is deprecated, please use `size` instead."),e.activeName!==void 0&&Qe("tabs","`active-name` is deprecated, please use `value` instead."),e.onActiveNameChange!==void 0&&Qe("tabs","`on-active-name-change` is deprecated, please use `on-update:value` instead.")});const{mergedClsPrefixRef:s,inlineThemeDisabled:l}=Je(e),d=Ce("Tabs","-tabs",k0,f0,e,s),c=r.ref(null),f=r.ref(null),u=r.ref(null),p=r.ref(null),m=r.ref(null),h=r.ref(null),y=r.ref(!0),w=r.ref(!0),g=Tr(e,["labelSize","size"]),z=Tr(e,["activeName","value"]),F=r.ref((o=(n=z.value)!==null&&n!==void 0?n:e.defaultValue)!==null&&o!==void 0?o:t.default?(a=(i=_n(t.default())[0])===null||i===void 0?void 0:i.props)===null||a===void 0?void 0:a.name:null),$=Ct(z,F),k={id:0},M=r.computed(()=>{if(!(!e.justifyContent||e.type==="card"))return{display:"flex",justifyContent:e.justifyContent}});r.watch($,()=>{k.id=0,q(),G()});function b(){var B;const{value:A}=$;return A===null?null:(B=c.value)===null||B===void 0?void 0:B.querySelector(`[data-name="${A}"]`)}function S(B){if(e.type==="card")return;const{value:A}=f;if(!A)return;const K=A.style.opacity==="0";if(B){const T=`${s.value}-tabs-bar--disabled`,{barWidth:C,placement:E}=e;if(B.dataset.disabled==="true"?A.classList.add(T):A.classList.remove(T),["top","bottom"].includes(E)){if(D(["top","maxHeight","height"]),typeof C=="number"&&B.offsetWidth>=C){const re=Math.floor((B.offsetWidth-C)/2)+B.offsetLeft;A.style.left=`${re}px`,A.style.maxWidth=`${C}px`}else A.style.left=`${B.offsetLeft}px`,A.style.maxWidth=`${B.offsetWidth}px`;A.style.width="8192px",K&&(A.style.transition="none"),A.offsetWidth,K&&(A.style.transition="",A.style.opacity="1")}else{if(D(["left","maxWidth","width"]),typeof C=="number"&&B.offsetHeight>=C){const re=Math.floor((B.offsetHeight-C)/2)+B.offsetTop;A.style.top=`${re}px`,A.style.maxHeight=`${C}px`}else A.style.top=`${B.offsetTop}px`,A.style.maxHeight=`${B.offsetHeight}px`;A.style.height="8192px",K&&(A.style.transition="none"),A.offsetHeight,K&&(A.style.transition="",A.style.opacity="1")}}}function _(){if(e.type==="card")return;const{value:B}=f;B&&(B.style.opacity="0")}function D(B){const{value:A}=f;if(A)for(const K of B)A.style[K]=""}function q(){if(e.type==="card")return;const B=b();B?S(B):_()}function G(){var B;const A=(B=m.value)===null||B===void 0?void 0:B.$el;if(!A)return;const K=b();if(!K)return;const{scrollLeft:T,offsetWidth:C}=A,{offsetLeft:E,offsetWidth:re}=K;T>E?A.scrollTo({top:0,left:E,behavior:"smooth"}):E+re>T+C&&A.scrollTo({top:0,left:E+re-C,behavior:"smooth"})}const O=r.ref(null);let W=0,L=null;function Z(B){const A=O.value;if(A){W=B.getBoundingClientRect().height;const K=`${W}px`,T=()=>{A.style.height=K,A.style.maxHeight=K};L?(T(),L(),L=null):L=T}}function Y(B){const A=O.value;if(A){const K=B.getBoundingClientRect().height,T=()=>{document.body.offsetHeight,A.style.maxHeight=`${K}px`,A.style.height=`${Math.max(W,K)}px`};L?(L(),L=null,T()):L=T}}function ie(){const B=O.value;if(B){B.style.maxHeight="",B.style.height="";const{paneWrapperStyle:A}=e;if(typeof A=="string")B.style.cssText=A;else if(A){const{maxHeight:K,height:T}=A;K!==void 0&&(B.style.maxHeight=K),T!==void 0&&(B.style.height=T)}}}const oe={value:[]},te=r.ref("next");function ce(B){const A=$.value;let K="next";for(const T of oe.value){if(T===A)break;if(T===B){K="prev";break}}te.value=K,j(B)}function j(B){const{onActiveNameChange:A,onUpdateValue:K,"onUpdate:value":T}=e;A&&pe(A,B),K&&pe(K,B),T&&pe(T,B),F.value=B}function ee(B){const{onClose:A}=e;A&&pe(A,B)}function fe(){const{value:B}=f;if(!B)return;const A="transition-disabled";B.classList.add(A),q(),B.classList.remove(A)}const ye=r.ref(null);function ae({transitionDisabled:B}){const A=c.value;if(!A)return;B&&A.classList.add("transition-disabled");const K=b();K&&ye.value&&(ye.value.style.width=`${K.offsetWidth}px`,ye.value.style.height=`${K.offsetHeight}px`,ye.value.style.transform=`translateX(${K.offsetLeft-ot(getComputedStyle(A).paddingLeft)}px)`,B&&ye.value.offsetWidth),B&&A.classList.remove("transition-disabled")}r.watch([$],()=>{e.type==="segment"&&r.nextTick(()=>{ae({transitionDisabled:!1})})}),r.onMounted(()=>{e.type==="segment"&&ae({transitionDisabled:!0})});let $e=0;function we(B){var A;if(B.contentRect.width===0&&B.contentRect.height===0||$e===B.contentRect.width)return;$e=B.contentRect.width;const{type:K}=e;if((K==="line"||K==="bar")&&fe(),K!=="segment"){const{placement:T}=e;De((T==="top"||T==="bottom"?(A=m.value)===null||A===void 0?void 0:A.$el:h.value)||null)}}const se=di(we,64);r.watch([()=>e.justifyContent,()=>e.size],()=>{r.nextTick(()=>{const{type:B}=e;(B==="line"||B==="bar")&&fe()})});const Re=r.ref(!1);function Ee(B){var A;const{target:K,contentRect:{width:T,height:C}}=B,E=K.parentElement.parentElement.offsetWidth,re=K.parentElement.parentElement.offsetHeight,{placement:xe}=e;if(!Re.value)xe==="top"||xe==="bottom"?E<T&&(Re.value=!0):re<C&&(Re.value=!0);else{const{value:Se}=p;if(!Se)return;xe==="top"||xe==="bottom"?E-T>Se.$el.offsetWidth&&(Re.value=!1):re-C>Se.$el.offsetHeight&&(Re.value=!1)}De(((A=m.value)===null||A===void 0?void 0:A.$el)||null)}const Ne=di(Ee,64);function Fe(){const{onAdd:B}=e;B&&B(),r.nextTick(()=>{const A=b(),{value:K}=m;!A||!K||K.scrollTo({left:A.offsetLeft,top:0,behavior:"smooth"})})}function De(B){if(!B)return;const{placement:A}=e;if(A==="top"||A==="bottom"){const{scrollLeft:K,scrollWidth:T,offsetWidth:C}=B;y.value=K<=0,w.value=K+C>=T}else{const{scrollTop:K,scrollHeight:T,offsetHeight:C}=B;y.value=K<=0,w.value=K+C>=T}}const Ge=di(B=>{De(B.target)},64);r.provide(Pi,{triggerRef:r.toRef(e,"trigger"),tabStyleRef:r.toRef(e,"tabStyle"),tabClassRef:r.toRef(e,"tabClass"),addTabStyleRef:r.toRef(e,"addTabStyle"),addTabClassRef:r.toRef(e,"addTabClass"),paneClassRef:r.toRef(e,"paneClass"),paneStyleRef:r.toRef(e,"paneStyle"),mergedClsPrefixRef:s,typeRef:r.toRef(e,"type"),closableRef:r.toRef(e,"closable"),valueRef:$,tabChangeIdRef:k,onBeforeLeaveRef:r.toRef(e,"onBeforeLeave"),activateTab:ce,handleClose:ee,handleAdd:Fe}),ca(()=>{q(),G()}),r.watchEffect(()=>{const{value:B}=u;if(!B)return;const{value:A}=s,K=`${A}-tabs-nav-scroll-wrapper--shadow-start`,T=`${A}-tabs-nav-scroll-wrapper--shadow-end`;y.value?B.classList.remove(K):B.classList.add(K),w.value?B.classList.remove(T):B.classList.add(T)});const Te={syncBarPosition:()=>{q()}},X=()=>{ae({transitionDisabled:!0})},I=r.computed(()=>{const{value:B}=g,{type:A}=e,K={card:"Card",bar:"Bar",line:"Line",segment:"Segment"}[A],T=`${B}${K}`,{self:{barColor:C,closeIconColor:E,closeIconColorHover:re,closeIconColorPressed:xe,tabColor:Se,tabBorderColor:We,paneTextColor:Ie,tabFontWeight:Be,tabBorderRadius:qe,tabFontWeightActive:st,colorSegment:Ye,fontWeightStrong:at,tabColorSegment:v,closeSize:H,closeIconSize:J,closeColorHover:le,closeColorPressed:de,closeBorderRadius:ue,[Q("panePadding",B)]:he,[Q("tabPadding",T)]:me,[Q("tabPaddingVertical",T)]:ze,[Q("tabGap",T)]:rt,[Q("tabGap",`${T}Vertical`)]:Rt,[Q("tabTextColor",A)]:wn,[Q("tabTextColorActive",A)]:Jt,[Q("tabTextColorHover",A)]:Qt,[Q("tabTextColorDisabled",A)]:pr,[Q("tabFontSize",B)]:br},common:{cubicBezierEaseInOut:Vn}}=d.value;return{"--n-bezier":Vn,"--n-color-segment":Ye,"--n-bar-color":C,"--n-tab-font-size":br,"--n-tab-text-color":wn,"--n-tab-text-color-active":Jt,"--n-tab-text-color-disabled":pr,"--n-tab-text-color-hover":Qt,"--n-pane-text-color":Ie,"--n-tab-border-color":We,"--n-tab-border-radius":qe,"--n-close-size":H,"--n-close-icon-size":J,"--n-close-color-hover":le,"--n-close-color-pressed":de,"--n-close-border-radius":ue,"--n-close-icon-color":E,"--n-close-icon-color-hover":re,"--n-close-icon-color-pressed":xe,"--n-tab-color":Se,"--n-tab-font-weight":Be,"--n-tab-font-weight-active":st,"--n-tab-padding":me,"--n-tab-padding-vertical":ze,"--n-tab-gap":rt,"--n-tab-gap-vertical":Rt,"--n-pane-padding-left":dt(he,"left"),"--n-pane-padding-right":dt(he,"right"),"--n-pane-padding-top":dt(he,"top"),"--n-pane-padding-bottom":dt(he,"bottom"),"--n-font-weight-strong":at,"--n-tab-color-segment":v}}),ne=l?tt("tabs",r.computed(()=>`${g.value[0]}${e.type[0]}`),I,e):void 0;return Object.assign({mergedClsPrefix:s,mergedValue:$,renderedNames:new Set,segmentCapsuleElRef:ye,tabsPaneWrapperRef:O,tabsElRef:c,barElRef:f,addTabInstRef:p,xScrollInstRef:m,scrollWrapperElRef:u,addTabFixed:Re,tabWrapperStyle:M,handleNavResize:se,mergedSize:g,handleScroll:Ge,handleTabsResize:Ne,cssVars:l?void 0:I,themeClass:ne==null?void 0:ne.themeClass,animationDirection:te,renderNameListRef:oe,yScrollElRef:h,handleSegmentResize:X,onAnimationBeforeLeave:Z,onAnimationEnter:Y,onAnimationAfterEnter:ie,onRender:ne==null?void 0:ne.onRender},Te)},render(){const{mergedClsPrefix:e,type:t,placement:n,addTabFixed:o,addable:i,mergedSize:a,renderNameListRef:s,onRender:l,paneWrapperClass:d,paneWrapperStyle:c,$slots:{default:f,prefix:u,suffix:p}}=this;l==null||l();const m=f?_n(f()).filter(k=>k.type.__TAB_PANE__===!0):[],h=f?_n(f()).filter(k=>k.type.__TAB__===!0):[],y=!h.length,w=t==="card",g=t==="segment",z=!w&&!g&&this.justifyContent;s.value=[];const F=()=>{const k=r.h("div",{style:this.tabWrapperStyle,class:`${e}-tabs-wrapper`},z?null:r.h("div",{class:`${e}-tabs-scroll-padding`,style:n==="top"||n==="bottom"?{width:`${this.tabsPadding}px`}:{height:`${this.tabsPadding}px`}}),y?m.map((M,b)=>(s.value.push(M.props.name),Ei(r.h(Ri,Object.assign({},M.props,{internalCreatedByPane:!0,internalLeftPadded:b!==0&&(!z||z==="center"||z==="start"||z==="end")}),M.children?{default:M.children.tab}:void 0)))):h.map((M,b)=>(s.value.push(M.props.name),Ei(b!==0&&!z?Ws(M):M))),!o&&i&&w?Ns(i,(y?m.length:h.length)!==0):null,z?null:r.h("div",{class:`${e}-tabs-scroll-padding`,style:{width:`${this.tabsPadding}px`}}));return r.h("div",{ref:"tabsElRef",class:`${e}-tabs-nav-scroll-content`},w&&i?r.h(Gt,{onResize:this.handleTabsResize},{default:()=>k}):k,w?r.h("div",{class:`${e}-tabs-pad`}):null,w?null:r.h("div",{ref:"barElRef",class:`${e}-tabs-bar`}))},$=g?"top":n;return r.h("div",{class:[`${e}-tabs`,this.themeClass,`${e}-tabs--${t}-type`,`${e}-tabs--${a}-size`,z&&`${e}-tabs--flex`,`${e}-tabs--${$}`],style:this.cssVars},r.h("div",{class:[`${e}-tabs-nav--${t}-type`,`${e}-tabs-nav--${$}`,`${e}-tabs-nav`]},Ae(u,k=>k&&r.h("div",{class:`${e}-tabs-nav__prefix`},k)),g?r.h(Gt,{onResize:this.handleSegmentResize},{default:()=>r.h("div",{class:`${e}-tabs-rail`,ref:"tabsElRef"},r.h("div",{class:`${e}-tabs-capsule`,ref:"segmentCapsuleElRef"},r.h("div",{class:`${e}-tabs-wrapper`},r.h("div",{class:`${e}-tabs-tab`}))),y?m.map((k,M)=>(s.value.push(k.props.name),r.h(Ri,Object.assign({},k.props,{internalCreatedByPane:!0,internalLeftPadded:M!==0}),k.children?{default:k.children.tab}:void 0))):h.map((k,M)=>(s.value.push(k.props.name),M===0?k:Ws(k))))}):r.h(Gt,{onResize:this.handleNavResize},{default:()=>r.h("div",{class:`${e}-tabs-nav-scroll-wrapper`,ref:"scrollWrapperElRef"},["top","bottom"].includes($)?r.h(Ic,{ref:"xScrollInstRef",onScroll:this.handleScroll},{default:F}):r.h("div",{class:`${e}-tabs-nav-y-scroll`,onScroll:this.handleScroll,ref:"yScrollElRef"},F()))}),o&&i&&w?Ns(i,!0):null,Ae(p,k=>k&&r.h("div",{class:`${e}-tabs-nav__suffix`},k))),y&&(this.animated&&($==="top"||$==="bottom")?r.h("div",{ref:"tabsPaneWrapperRef",style:c,class:[`${e}-tabs-pane-wrapper`,d]},Hs(m,this.mergedValue,this.renderedNames,this.onAnimationBeforeLeave,this.onAnimationEnter,this.onAnimationAfterEnter,this.animationDirection)):Hs(m,this.mergedValue,this.renderedNames)))}});function Hs(e,t,n,o,i,a,s){const l=[];return e.forEach(d=>{const{name:c,displayDirective:f,"display-directive":u}=d.props,p=h=>f===h||u===h,m=t===c;if(d.key!==void 0&&(d.key=c),m||p("show")||p("show:lazy")&&n.has(c)){n.has(c)||n.add(c);const h=!p("if");l.push(h?r.withDirectives(d,[[r.vShow,m]]):d)}}),s?r.h(r.TransitionGroup,{name:`${s}-transition`,onBeforeLeave:o,onEnter:i,onAfterEnter:a},{default:()=>l}):l}function Ns(e,t){return r.h(Ri,{ref:"addTabInstRef",key:"__addable",name:"__addable",internalCreatedByPane:!0,internalAddable:!0,internalLeftPadded:t,disabled:typeof e=="object"&&e.disabled})}function Ws(e){const t=r.cloneVNode(e);return t.props?t.props.internalLeftPadded=!0:t.props={internalLeftPadded:!0},t}function Ei(e){return Array.isArray(e.dynamicProps)?e.dynamicProps.includes("internalLeftPadded")||e.dynamicProps.push("internalLeftPadded"):e.dynamicProps=["internalLeftPadded"],e}async function js(e,t,n){try{const{data:o}=await tn().POST("/api/visualizations",{type:e,title:t,config:n});return o.id}catch(o){$n(o)}}async function P0(e,t,n,o){try{if(t)await Us(t,n,o);else return await js(e,n,o)}catch(i){$n(i)}}async function Us(e,t,n){try{await tn().PUT(`/api/visualizations/${e}`,{title:t,config:n})}catch(o){$n(o)}}function fr(e){return String(e).toLowerCase()==="true"}async function R0(e,t={}){const n=hr(e.settings,t.settings),o=e.specs,i=_0(e.tracks,t.tracks);return{plugin:e,settings:n,specs:o,tracks:i}}function E0(e,t){let n=t??e.value;return["float","integer"].includes(e.type)?n=Number(n):e.type==="boolean"&&(n=fr(n)),n}function B0(e,t={}){var i,a,s;const n=t,o=(i=e.test_param)==null?void 0:i.name;if(!o)console.error(`Test parameter has no name: ${e.name}.`);else{const l=n[o]??((a=e.test_param)==null?void 0:a.value);for(const d of e.cases||[])d.value===l&&(n[o]=l,(s=d.inputs)!=null&&s.length&&hr(d.inputs,n))}return n}function hr(e,t){const n=t||{};return e==null||e.forEach(o=>{o.type==="conditional"?n[o.name]=B0(o,n[o.name]):n[o.name]=E0(o,n[o.name])}),n}function _0(e,t){const n=t||[];return e&&(n.length===0&&n.push({}),n.forEach((o,i)=>{n[i]=hr(e,o)})),n}const M0={key:2,class:"border border-dotted border-green-600 rounded mt-2 p-2"},F0=r.defineComponent({__name:"InputConditional",props:r.mergeModels({datasetId:{},input:{}},{value:{},valueModifiers:{}}),emits:r.mergeModels(["update:value"],["update:value"]),setup(e,{emit:t}){const n=e,o=t;if(!n.input.test_param)throw`The conditional '${n.input.name}' is missing a test parameter.`;if(!n.input.cases||n.input.cases.length===0)throw`The conditional '${n.input.name}' is missing a cases.`;const i=r.ref(n.input.test_param),a=i.value.name;a||console.error(`Test parameter has no name: ${n.input.name}.`);const s=r.useModel(e,"value");(!s.value||!(a in s.value))&&console.error(`Test parameter of conditional not available: ${n.input.name}.`,s.value);const l=r.ref(p()),d=r.computed(()=>{const h={};if(n.input.cases&&n.input.cases.length>0)for(const y of n.input.cases)h[y.value]=hr(y.inputs),h[y.value][a]=y.value;return h}),c=r.computed(()=>{const h={};if(n.input.cases&&n.input.cases.length>0)for(const y of n.input.cases)h[y.value]=y.inputs;return h}),f=r.computed(()=>c.value[l.value]),u=r.computed({get(){return l.value==="true"},set(h){l.value=String(h)}});function p(){return s.value&&s.value[a]}function m(h){let y={...d.value[l.value]};if(h){const w={};f.value.forEach(g=>{w[g.name]=h[g.name]}),y={...y,...h}}o("update:value",y)}return r.watch(()=>s.value,()=>{l.value=p()}),r.watch(()=>l.value,()=>{m()}),(h,y)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[i.value.type==="boolean"?(r.openBlock(),r.createBlock(r.unref(Ds),{key:0,value:u.value,"onUpdate:value":y[0]||(y[0]=w=>u.value=w)},null,8,["value"])):(r.openBlock(),r.createBlock(r.unref(ao),{key:1,value:l.value,"onUpdate:value":y[1]||(y[1]=w=>l.value=w),options:i.value.data},null,8,["value","options"])),f.value?(r.openBlock(),r.createElementBlock("div",M0,[r.createVNode(Bi,{"dataset-id":h.datasetId,inputs:f.value,values:s.value,"onUpdate:values":m},null,8,["dataset-id","inputs","values"])])):r.createCommentVNode("",!0)],64))}}),lo=r.ref({});function Gs(){async function e(t){return lo.value[t]||(lo.value[t]=tn().GET(`/api/datasets/${t}`).catch(n=>{throw delete lo.value[t],n})),await lo.value[t]}return{getDataset:e}}const I0={key:0},A0={key:0,class:"text-red-600 mb-1"},O0={key:1},Ks=100,D0=r.defineComponent({__name:"InputData",props:r.mergeModels({datasetId:{},extension:{},optional:{type:Boolean}},{value:{},valueModifiers:{}}),emits:["update:value"],setup(e){const{getDataset:t}=Gs(),n=e,o=r.ref([]),i=r.useModel(e,"value"),a=r.ref(!1),s=r.ref(null);async function l(u){if(n.datasetId){a.value=!0;try{const{data:p}=await t(n.datasetId),m=p.history_id,h="v=dev&order=hid&q=deleted&qv=false&q=visible&qv=true&",y=n.extension?`q=extension-eq&qv=${n.extension}&`:"",w=u?`q=name-contains&qv=${u}&`:"",{data:g}=await tn().GET(`/api/histories/${m}/contents?${h}${y}${w}limit=${Ks}`);if(g&&g.length>0){const z=g.map(F=>({label:`${F.hid}: ${F.name}`,value:{id:F.id,hid:F.hid,name:F.name}}));g.length>=Ks&&z.push({label:"...filter for more",value:null,disabled:!0}),n.optional&&z.unshift({label:"-- Clear Selection --",value:null}),o.value=z}}catch(p){console.log(p)}finally{a.value=!1}}else console.debug("Data selector disabled, since `datasetId` is unavailable.")}function d(u){i.value=u}function c(u){return r.h("div",{class:"my-1 whitespace-normal break-all"},[r.h(mt,{class:"size-3 mr-1"},{default:()=>r.h(Ui)}),u.label])}function f({option:u}){return r.h("div",{class:"z-[1] whitespace-nowrap text-ellipsis overflow-hidden"},u.label)}return r.watch(()=>i.value,()=>{var u;s.value=((u=i.value)==null?void 0:u.name)||null},{immediate:!0}),l(),(u,p)=>u.datasetId?(r.openBlock(),r.createElementBlock("div",I0,[!u.optional&&!i.value?(r.openBlock(),r.createElementBlock("div",A0,[r.createVNode(r.unref(mt),{class:"size-3 mr-1"},{default:r.withCtx(()=>[r.createVNode(r.unref(ji))]),_:1}),p[0]||(p[0]=r.createElementVNode("span",null,"Please select a dataset.",-1))])):r.createCommentVNode("",!0),r.createVNode(r.unref(ao),{filterable:"",placeholder:"Select a Dataset",loading:a.value,"render-label":c,"render-tag":f,options:o.value,value:s.value,onSearch:l,"onUpdate:value":d},null,8,["loading","options","value"])])):(r.openBlock(),r.createElementBlock("div",O0,"Selection deferred."))}});function V0(e,t,n,o){const i=[];t&&i.push({label:"Column: Default",value:"auto"});const a=e.metadata_column_types;for(const s in a)(o&&["int","float"].includes(a[s])||n&&a[s]==="str"||!o&&!n)&&i.push({label:"Column: "+(parseInt(s)+1),value:s});return i}const L0=r.defineComponent({__name:"InputDataColumn",props:r.mergeModels({datasetId:{},isAuto:{type:Boolean},isText:{type:Boolean},isNumber:{type:Boolean}},{value:{},valueModifiers:{}}),emits:["update:value"],setup(e){const{getDataset:t}=Gs(),n=e,o=r.ref([]),i=r.useModel(e,"value");async function a(){if(n.datasetId)try{const{data:l}=await t(n.datasetId),d=V0(l,n.isAuto,n.isText,n.isNumber);o.value=d,s()}catch(l){console.debug(l)}else console.debug("Data column selector disabled, since `datasetId` is unavailable.")}function s(){o.value.length>0&&i.value===null&&(i.value=o.value[0].value)}return a(),r.watch(()=>i.value,()=>s()),(l,d)=>l.datasetId?(r.openBlock(),r.createBlock(r.unref(ao),{key:0,value:i.value,"onUpdate:value":d[0]||(d[0]=c=>i.value=c),options:o.value},null,8,["value","options"])):(r.openBlock(),r.createBlock(r.unref(On),{key:1,value:i.value,"onUpdate:value":d[1]||(d[1]=c=>i.value=c)},null,8,["value"]))}}),H0={class:"select-none"},N0={class:"font-bold mb-1"},W0={key:0,class:"text-xs mb-1"},j0={key:5},qs=.01,Bi=r.defineComponent({__name:"InputForm",props:{datasetId:{},inputs:{},values:{}},emits:["update:values"],setup(e,{emit:t}){const n=e,o=t,i=r.ref(a());function a(){const l={...n.values};return n.inputs.forEach(d=>{l[d.name]===void 0&&(l[d.name]=null)}),l}function s(){o("update:values",i.value)}return r.watch(()=>n.values,()=>{i.value=a()}),(l,d)=>(r.openBlock(),r.createElementBlock("div",H0,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.inputs,(c,f)=>(r.openBlock(),r.createElementBlock("div",{key:f,class:r.normalizeClass(f<l.inputs.length-1?"pb-2":"")},[r.createElementVNode("div",N0,r.toDisplayString(c.label||c.name),1),c.help?(r.openBlock(),r.createElementBlock("div",W0,r.toDisplayString(c.help),1)):r.createCommentVNode("",!0),r.createElementVNode("div",null,[c.type==="boolean"?(r.openBlock(),r.createBlock(r.unref(Ds),{key:0,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s]},null,8,["value","onUpdate:value"])):c.type==="color"?(r.openBlock(),r.createBlock(r.unref(Wv),{key:1,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],modes:["hex"],"show-alpha":!1},null,8,["value","onUpdate:value"])):c.type==="conditional"?(r.openBlock(),r.createBlock(F0,{key:2,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],"dataset-id":l.datasetId,input:c},null,8,["value","onUpdate:value","dataset-id","input"])):c.type==="data"?(r.openBlock(),r.createBlock(D0,{key:3,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],"dataset-id":l.datasetId,extension:c.extension,optional:r.unref(fr)(c.optional)},null,8,["value","onUpdate:value","dataset-id","extension","optional"])):c.type==="data_column"?(r.openBlock(),r.createBlock(L0,{key:4,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],"dataset-id":l.datasetId,"is-auto":r.unref(fr)(c.is_auto),"is-text":r.unref(fr)(c.is_text),"is-number":r.unref(fr)(c.is_number)},null,8,["value","onUpdate:value","dataset-id","is-auto","is-text","is-number"])):["float","integer"].includes(c.type)?(r.openBlock(),r.createElementBlock("div",j0,[c.min!==void 0&&c.max!==void 0?(r.openBlock(),r.createBlock(r.unref(w0),{key:0,class:"mb-2",value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],min:Number(c.min),max:Number(c.max),step:c.type==="float"?qs:1},null,8,["value","onUpdate:value","min","max","step"])):r.createCommentVNode("",!0),r.createVNode(r.unref(m0),{value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],size:"small",min:Number(c.min),max:Number(c.max),step:c.type==="float"?qs:1},null,8,["value","onUpdate:value","min","max","step"])])):c.type==="select"?(r.openBlock(),r.createBlock(r.unref(ao),{key:6,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],options:c.data},null,8,["value","onUpdate:value","options"])):c.type==="textarea"?(r.openBlock(),r.createBlock(r.unref(On),{key:7,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,s],rows:Number(c.rows),type:"textarea"},null,8,["value","onUpdate:value","rows"])):(r.openBlock(),r.createBlock(r.unref(On),{key:8,value:i.value[c.name],"onUpdate:value":[u=>i.value[c.name]=u,d[0]||(d[0]=u=>s())]},null,8,["value","onUpdate:value"]))])],2))),128))]))}}),U0={class:"border border-dotted border-green-600 rounded p-2"},G0={class:"mx-1"},K0=r.defineComponent({__name:"InputRepeats",props:{datasetId:{},inputs:{},valuesArray:{}},emits:["update:values-array"],setup(e,{emit:t}){const n=e,o=t,i=r.computed(()=>hr(n.inputs));function a(){const d=[...n.valuesArray];d.unshift(i.value),o("update:values-array",d)}function s(d){const c=[...n.valuesArray];c.splice(d,1),o("update:values-array",c)}function l(d,c){const f=[...n.valuesArray];f[d]={...c},o("update:values-array",f)}return(d,c)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createVNode(r.unref(Pt),{size:"tiny",type:"primary",onClick:a},{default:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(Ui))]),_:1}),c[0]||(c[0]=r.createElementVNode("span",{class:"mx-1"},"Add New Track",-1))]),_:1}),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.valuesArray,(f,u)=>(r.openBlock(),r.createElementBlock("div",{key:u,class:"py-2"},[r.createElementVNode("div",U0,[r.createVNode(Bi,{"dataset-id":d.datasetId,inputs:d.inputs,values:f,"onUpdate:values":p=>l(u,p)},null,8,["dataset-id","inputs","values","onUpdate:values"]),r.createVNode(r.unref(Pt),{class:"w-full mt-2","data-description":"remove repeat block",disabled:d.valuesArray.length<=1,size:"tiny",type:"primary",onClick:p=>s(u)},{default:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(id))]),_:1}),r.createElementVNode("span",G0,"Remove Track "+r.toDisplayString(d.valuesArray.length-u),1)]),_:2},1032,["disabled","onClick"])])]))),128))],64))}}),q0=2e3,X0=r.defineComponent({__name:"AlertNotify",props:{message:{},messageType:{default:"info"}},emits:["timeout"],setup(e,{emit:t}){const n=e,o=t;let i=null;return r.watch(()=>n.message,()=>{i&&clearTimeout(i),i=setTimeout(()=>o("timeout"),q0)}),(a,s)=>a.message?(r.openBlock(),r.createBlock(r.unref(ks),{key:0,type:a.messageType},{default:r.withCtx(()=>[r.createTextVNode(r.toDisplayString(a.message),1)]),_:1},8,["type"])):r.createCommentVNode("",!0)}}),Y0={class:"text-xs"},Z0=r.defineComponent({__name:"ApiStatus",setup(e){const t=r.ref("...");async function n(){try{const{data:o}=await tn().GET("/api/version");t.value=o.version_major}catch{console.log("Unable to connect to Galaxy. Verify Galaxy is running and refer to docs."),t.value=""}}return n(),(o,i)=>t.value?(r.openBlock(),r.createBlock(r.unref(cr),{key:0,class:"mx-1",trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(mt),{class:"mx-1"},{default:r.withCtx(()=>[r.createVNode(r.unref(ed),{class:"text-green-600"})]),_:1})]),default:r.withCtx(()=>[r.createElementVNode("span",Y0,"Connected to Galaxy Version "+r.toDisplayString(t.value)+".",1)]),_:1})):(r.openBlock(),r.createBlock(r.unref(cr),{key:1,class:"mx-1",trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(mt),{class:"mx-1"},{default:r.withCtx(()=>[r.createVNode(r.unref(ji),{class:"text-red-600"})]),_:1})]),default:r.withCtx(()=>[i[0]||(i[0]=r.createElementVNode("span",{class:"text-xs"},"Galaxy is not accessible!",-1))]),_:1}))}}),J0=(e,t)=>{const n=e.__vccOpts||e;for(const[o,i]of t)n[o]=i;return n},Q0={},ex={xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 100 100",class:"size-14"};function tx(e,t){return r.openBlock(),r.createElementBlock("svg",ex,t[0]||(t[0]=[r.createElementVNode("circle",{cx:"50",cy:"50",r:"45",stroke:"#E30A17","stroke-width":"5"},null,-1),r.createElementVNode("path",{d:"M 50,5 A 45,45 0 0,1 95,50 L 50,50 Z",fill:"#E30A17"},null,-1)]))}const nx=J0(Q0,[["render",tx]]),rx={class:"overflow-auto select-none bg-white z-10 p-2"},ox={key:0,class:"flex"},ix={class:"flex-1 font-thin text-lg mt-1"},ax={class:"bg-sky-50 text-sky-900 rounded my-2 p-2"},lx={class:"flex"},sx={class:"flex justify-center center-items"},dx={class:"m-2"},cx=["src"],ux={class:"overflow-hidden break-words p-1"},fx={class:"font-bold"},hx=["innerHTML"],px=r.defineComponent({__name:"SidePanel",props:{datasetId:{},datasetUrl:{},description:{},logoUrl:{},html:{},name:{},settingInputs:{},settingValues:{},trackInputs:{},trackValues:{},visualizationId:{},visualizationTitle:{}},emits:["update:tracks","update:settings","update:visualization-id","update:visualization-title","toggle"],setup(e,{emit:t}){const n=e,o=t,i=r.ref(""),a=r.ref("info"),s=r.computed(()=>n.settingInputs.length===0||n.trackInputs.length===0);async function l(){try{if(n.visualizationId)await Us(n.visualizationId,n.visualizationTitle,{dataset_id:n.datasetId,settings:n.settingValues,tracks:n.trackValues}),i.value="Successfully saved.",a.value="success";else{const u=await js(n.name,n.visualizationTitle,{dataset_id:n.datasetId,settings:n.settingValues,tracks:n.trackValues});u?(i.value="Successfully created.",a.value="success",o("update:visualization-id",u)):(i.value="Something went wrong.",a.value="error")}}catch(u){i.value=Di(u),a.value="error"}}function d(u){o("update:settings",u)}function c(u){o("update:tracks",u)}function f(u){o("update:visualization-title",u)}return(u,p)=>(r.openBlock(),r.createElementBlock("div",rx,[u.datasetUrl?(r.openBlock(),r.createElementBlock("div",ox,[r.createElementVNode("div",ix,[p[2]||(p[2]=r.createElementVNode("span",null,"Charts",-1)),r.createVNode(Z0)]),r.createElementVNode("div",null,[u.datasetId?(r.openBlock(),r.createBlock(r.unref(cr),{key:0,trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(Pt),{strong:"",secondary:"",circle:"",class:"bg-sky-100 mr-2","data-description":"sidepanel save button",onClick:l},{icon:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(rd))]),_:1})]),_:1})]),default:r.withCtx(()=>[p[3]||(p[3]=r.createElementVNode("span",{class:"text-xs"},"Save",-1))]),_:1})):r.createCommentVNode("",!0),r.createVNode(r.unref(cr),{trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(Pt),{strong:"",secondary:"",circle:"",class:"bg-sky-100",onClick:p[0]||(p[0]=m=>o("toggle"))},{icon:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(nd))]),_:1})]),_:1})]),default:r.withCtx(()=>[p[4]||(p[4]=r.createElementVNode("span",{class:"text-xs"},"Collapse",-1))]),_:1})])])):r.createCommentVNode("",!0),r.createVNode(X0,{message:i.value,"message-type":a.value,onTimeout:p[1]||(p[1]=m=>i.value=""),class:"mt-2"},null,8,["message","message-type"]),r.createElementVNode("div",ax,[r.createElementVNode("div",lx,[r.createElementVNode("div",sx,[r.createElementVNode("div",dx,[n.logoUrl?(r.openBlock(),r.createElementBlock("img",{key:0,src:n.logoUrl,class:"min-w-14 max-w-14 object-contain"},null,8,cx)):(r.openBlock(),r.createBlock(nx,{key:1}))])]),r.createElementVNode("div",ux,[r.createElementVNode("span",fx,r.toDisplayString(u.html),1),r.createElementVNode("div",{class:"text-xs",innerHTML:u.description},null,8,hx)])])]),r.createElementVNode("div",null,[p[5]||(p[5]=r.createElementVNode("div",{class:"font-bold"},"Title",-1)),p[6]||(p[6]=r.createElementVNode("div",{class:"text-xs py-1"},"Specify a visualization title.",-1)),r.createVNode(r.unref(On),{value:u.visualizationTitle,onInput:f},null,8,["value"])]),r.createVNode(r.unref(z0),{type:"line",animated:"",class:"mt-2","pane-wrapper-class":"!overflow-visible","tab-class":s.value?"!hidden":""},{default:r.withCtx(()=>[u.trackInputs.length>0?(r.openBlock(),r.createBlock(r.unref(Ls),{key:0,name:"tracks"},{tab:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(od))]),_:1}),p[7]||(p[7]=r.createElementVNode("span",{class:"mx-1"},"Tracks",-1))]),default:r.withCtx(()=>[r.createVNode(K0,{"dataset-id":u.datasetId,inputs:u.trackInputs,"values-array":u.trackValues,"onUpdate:valuesArray":c},null,8,["dataset-id","inputs","values-array"])]),_:1})):r.createCommentVNode("",!0),u.settingInputs.length>0?(r.openBlock(),r.createBlock(r.unref(Ls),{key:1,name:"settings"},{tab:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(Js))]),_:1}),p[8]||(p[8]=r.createElementVNode("span",{class:"mx-1"},"Settings",-1))]),default:r.withCtx(()=>[r.createVNode(Bi,{"dataset-id":u.datasetId,inputs:u.settingInputs,values:u.settingValues,"onUpdate:values":d},null,8,["dataset-id","inputs","values"])]),_:1})):r.createCommentVNode("",!0)]),_:1},8,["tab-class"])]))}});function bx(e,t="app"){if(e===void 0){const l=document.getElementById(t);if(l)e=JSON.parse((l==null?void 0:l.dataset.incoming)||"{}");else throw new Error(`Container element '${t}' not found.`)}const n=(e==null?void 0:e.root)??"/",o=(e==null?void 0:e.visualization_config)??{},i=(e==null?void 0:e.visualization_id)??null,a=(e==null?void 0:e.visualization_plugin)??{},s=(e==null?void 0:e.visualization_title)??"Unnamed Visualization";return{root:n,visualizationConfig:o,visualizationId:i,visualizationPlugin:a,visualizationTitle:s}}const gx={key:1,class:"m-2"},mx={key:0,class:"relative max-w-full h-screen overflow-hidden"},vx=r.defineComponent({__name:"GalaxyCharts",props:{container:{},credentials:{},incoming:{}},setup(e){const t=e,{root:n,visualizationConfig:o,visualizationId:i,visualizationPlugin:a,visualizationTitle:s}=bx(t.incoming,t.container),l=r.ref(!0),d=r.ref(""),c=r.ref(""),f=r.ref(""),u=r.ref(!0),p=r.ref(""),m=r.ref(""),h=r.ref([]),y=r.ref({}),w=r.ref({}),g=r.ref([]),z=r.ref([]),F=r.ref(i),$=r.ref(s),k=Hi();k.setCredentials(t.credentials||"include"),k.setRoot(n||"/"),R0(a,o).then(({plugin:oe,settings:te,specs:ce,tracks:j})=>{d.value=oe.description||"",f.value=oe.html||"",u.value=!1,p.value=oe.logo||"",m.value=oe.name||"",h.value=oe.settings||[],y.value=te,w.value=ce||{},g.value=oe.tracks||[],z.value=j});const M=r.computed(()=>o.dataset_id||""),b=r.computed(()=>M.value?(console.debug(`GalaxyCharts: Built dataset url from dataset id: ${M.value}.`),Ys(n,M.value)):""),S=r.computed(()=>p.value&&`${n}${p.value}`),_=r.computed(()=>h.value.length===0&&g.value.length===0);async function D(){l.value=!l.value,await r.nextTick(),window?window.dispatchEvent(new Event("resize")):console.warn("window unavailable.")}function q(){try{window.postMessage({container:t.container,from:"galaxy-visualization",visualization_config:JSON.parse(JSON.stringify(G())),visualization_id:F.value,visualization_title:$.value},"*")}catch(oe){c.value=`Failed to postMessage: ${oe}`}}function G(){return{dataset_id:M.value,settings:y.value,tracks:z.value}}function O(oe){y.value={...oe},q()}function W(oe){z.value=[...oe],q()}function L(oe){F.value=oe,q()}function Z(oe){$.value=oe,q()}async function Y(oe){ie(oe);try{const te=await P0(m.value,F.value,$.value,G());te&&L(te)}catch(te){c.value=`Failed to save: ${te}`}}function ie(oe){O({...y.value,...oe})}return(oe,te)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[c.value?(r.openBlock(),r.createBlock(r.unref(ks),{key:0,type:"error",class:"m-2"},{default:r.withCtx(()=>[r.createTextVNode(r.toDisplayString(c.value),1)]),_:1})):r.createCommentVNode("",!0),u.value?(r.openBlock(),r.createElementBlock("div",gx,[r.createElementVNode("span",null,[r.createVNode(r.unref(Qs),{class:"animate-spin size-4 inline mx-1"})]),te[0]||(te[0]=r.createElementVNode("span",{class:"text-xs"},"Please wait...",-1))])):(r.openBlock(),r.createElementBlock("div",{key:2,class:r.normalizeClass(["grid h-screen",{"grid-cols-[1fr_17rem]":!l.value&&!_.value&&b.value}])},[b.value?(r.openBlock(),r.createElementBlock("div",mx,[r.renderSlot(oe.$slots,"default",{datasetId:M.value,datasetUrl:b.value,root:r.unref(n),settings:y.value,specs:w.value,tracks:z.value,save:Y,update:ie})])):r.createCommentVNode("",!0),l.value&&!_.value&&b.value?(r.openBlock(),r.createBlock(r.unref(cr),{key:1,trigger:"hover",to:!1},{trigger:r.withCtx(()=>[r.createVNode(r.unref(Pt),{strong:"",secondary:"",circle:"",class:"bg-sky-100 m-2 absolute right-0",onClick:D},{icon:r.withCtx(()=>[r.createVNode(r.unref(mt),null,{default:r.withCtx(()=>[r.createVNode(r.unref(td))]),_:1})]),_:1})]),default:r.withCtx(()=>[te[1]||(te[1]=r.createElementVNode("span",{class:"text-xs"},"Expand",-1))]),_:1})):r.createCommentVNode("",!0),r.withDirectives(r.createVNode(px,{"dataset-id":M.value,"dataset-url":b.value,description:d.value,html:f.value,"logo-url":S.value,name:m.value,"setting-inputs":h.value,"setting-values":y.value,"track-inputs":g.value,"track-values":z.value,"visualization-id":F.value,"visualization-title":$.value,"onUpdate:settings":O,"onUpdate:tracks":W,"onUpdate:visualizationId":L,"onUpdate:visualizationTitle":Z,onToggle:D},null,8,["dataset-id","dataset-url","description","html","logo-url","name","setting-inputs","setting-values","track-inputs","track-values","visualization-id","visualization-title"]),[[r.vShow,!l.value&&!_.value||!b.value]])],2))],64))}});je.GalaxyApi=tn,je.GalaxyCharts=vx,je.useColumnsStore=Zs,Object.defineProperty(je,Symbol.toStringTag,{value:"Module"})});
|