@stachelock/ui 0.1.3 → 0.1.4
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/{CalendarHeader.vue_vue_type_script_setup_true_lang-B3KQTxfD.js → CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js} +2 -2
- package/dist/{CalendarHeader.vue_vue_type_script_setup_true_lang-B3KQTxfD.js.map → CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js.map} +1 -1
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-2dJNxQUF.js +1300 -0
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-2dJNxQUF.js.map +1 -0
- package/dist/{DashboardLayout.vue_vue_type_script_setup_true_lang-CClxYrOW.js → DashboardLayout.vue_vue_type_script_setup_true_lang-VeZhdPhj.js} +38 -37
- package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-VeZhdPhj.js.map +1 -0
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BpfPAZiT.js +217 -0
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BpfPAZiT.js.map +1 -0
- package/dist/{DynamicFormField.vue_vue_type_script_setup_true_lang-qAwVNm--.js → DynamicFormField.vue_vue_type_script_setup_true_lang-DvT03FIS.js} +40 -24
- package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-DvT03FIS.js.map +1 -0
- package/dist/EventCard.vue_vue_type_script_setup_true_lang-YV1lfgUY.js +157 -0
- package/dist/EventCard.vue_vue_type_script_setup_true_lang-YV1lfgUY.js.map +1 -0
- package/dist/EventsList.vue_vue_type_script_setup_true_lang-Cn_WOpZi.js +103 -0
- package/dist/EventsList.vue_vue_type_script_setup_true_lang-Cn_WOpZi.js.map +1 -0
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js +522 -0
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js.map +1 -0
- package/dist/{SidebarLayout.vue_vue_type_script_setup_true_lang-CQIW5dy_.js → SidebarLayout.vue_vue_type_script_setup_true_lang-J1nfUTdM.js} +28 -27
- package/dist/{SidebarLayout.vue_vue_type_script_setup_true_lang-CQIW5dy_.js.map → SidebarLayout.vue_vue_type_script_setup_true_lang-J1nfUTdM.js.map} +1 -1
- package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js +273 -0
- package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js.map +1 -0
- package/dist/{TagifyInput.vue_vue_type_script_setup_true_lang-RHqhKoK5.js → TagifyInput.vue_vue_type_script_setup_true_lang-DRR6jt_8.js} +60 -50
- package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-DRR6jt_8.js.map +1 -0
- package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-quGuN9v4.js +82 -0
- package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-quGuN9v4.js.map +1 -0
- package/dist/{UiModal.vue_vue_type_script_setup_true_lang-CMk62qeq.js → UiModal.vue_vue_type_script_setup_true_lang-SAo39zpS.js} +21 -20
- package/dist/{UiModal.vue_vue_type_script_setup_true_lang-CMk62qeq.js.map → UiModal.vue_vue_type_script_setup_true_lang-SAo39zpS.js.map} +1 -1
- package/dist/XMarkIcon-C4wILUsz.js +40 -0
- package/dist/XMarkIcon-C4wILUsz.js.map +1 -0
- package/dist/calculate-active-index-CksdUwZY.js +87 -0
- package/dist/calculate-active-index-CksdUwZY.js.map +1 -0
- package/dist/calendars/CalendarDashboard.js +2 -2
- package/dist/calendars/CalendarHeader.js +1 -1
- package/dist/calendars/EventCard.js +1 -1
- package/dist/calendars/EventsList.js +1 -1
- package/dist/components/Breadcrumb.js +1 -1
- package/dist/components/Modal.js +1 -1
- package/dist/components/RadialProgressBar.d.ts +2 -2
- package/dist/components/RadialProgressBar.js +1 -1
- package/dist/description-CBd3BJ9O.js +30 -0
- package/dist/description-CBd3BJ9O.js.map +1 -0
- package/dist/dialog-U1KNiPzc.js +493 -0
- package/dist/dialog-U1KNiPzc.js.map +1 -0
- package/dist/form-DQKuKVqJ.js +51 -0
- package/dist/form-DQKuKVqJ.js.map +1 -0
- package/dist/forms/DynamicForm.js +1 -1
- package/dist/forms/DynamicFormField.js +1 -1
- package/dist/forms/FormFieldWrapper.js +71 -42
- package/dist/forms/FormFieldWrapper.js.map +1 -1
- package/dist/index.js +307 -242
- package/dist/index.js.map +1 -1
- package/dist/inputs/ComboboxInput.js +1 -1
- package/dist/inputs/SelectInput.js +1 -1
- package/dist/inputs/SwitchInput.js +1 -1
- package/dist/inputs/TagifyInput.js +1 -1
- package/dist/keyboard-DJD8TwH4.js +113 -0
- package/dist/keyboard-DJD8TwH4.js.map +1 -0
- package/dist/layouts/DashboardLayout.js +1 -1
- package/dist/layouts/SidebarLayout.js +1 -1
- package/dist/open-closed-DgcU-HDT.js +179 -0
- package/dist/open-closed-DgcU-HDT.js.map +1 -0
- package/dist/src/components/layouts/DashboardLayout.d.ts.map +1 -1
- package/dist/src/components/layouts/SidebarLayout.d.ts.map +1 -1
- package/dist/transition-CuxxW9dY.js +209 -0
- package/dist/transition-CuxxW9dY.js.map +1 -0
- package/package.json +1 -1
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-DoJHjJsA.js +0 -304
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-DoJHjJsA.js.map +0 -1
- package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-CClxYrOW.js.map +0 -1
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BKhcXkNG.js +0 -201
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BKhcXkNG.js.map +0 -1
- package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-qAwVNm--.js.map +0 -1
- package/dist/EventCard.vue_vue_type_script_setup_true_lang-B3TP-mWX.js +0 -75
- package/dist/EventCard.vue_vue_type_script_setup_true_lang-B3TP-mWX.js.map +0 -1
- package/dist/EventsList.vue_vue_type_script_setup_true_lang-Cpc9A9Ev.js +0 -89
- package/dist/EventsList.vue_vue_type_script_setup_true_lang-Cpc9A9Ev.js.map +0 -1
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BguP8xMU.js +0 -242
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BguP8xMU.js.map +0 -1
- package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-BagTQ6M0.js +0 -197
- package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-BagTQ6M0.js.map +0 -1
- package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-RHqhKoK5.js.map +0 -1
- package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-CMH47CoK.js +0 -68
- package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-CMH47CoK.js.map +0 -1
- package/dist/UiRadialProgressBar.vue_vue_type_script_setup_true_lang-BGCBJa2S.js +0 -72
- package/dist/UiRadialProgressBar.vue_vue_type_script_setup_true_lang-BGCBJa2S.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js","sources":["../node_modules/@headlessui/vue/dist/utils/get-text-value.js","../node_modules/@headlessui/vue/dist/hooks/use-text-value.js","../node_modules/@headlessui/vue/dist/components/listbox/listbox.js","../src/components/inputs/SelectInput.vue"],"sourcesContent":["let a=/([\\u2700-\\u27BF]|[\\uE000-\\uF8FF]|\\uD83C[\\uDC00-\\uDFFF]|\\uD83D[\\uDC00-\\uDFFF]|[\\u2011-\\u26FF]|\\uD83E[\\uDD10-\\uDDFF])/g;function o(e){var r,i;let n=(r=e.innerText)!=null?r:\"\",t=e.cloneNode(!0);if(!(t instanceof HTMLElement))return n;let u=!1;for(let f of t.querySelectorAll('[hidden],[aria-hidden],[role=\"img\"]'))f.remove(),u=!0;let l=u?(i=t.innerText)!=null?i:\"\":n;return a.test(l)&&(l=l.replace(a,\"\")),l}function g(e){let n=e.getAttribute(\"aria-label\");if(typeof n==\"string\")return n.trim();let t=e.getAttribute(\"aria-labelledby\");if(t){let u=t.split(\" \").map(l=>{let r=document.getElementById(l);if(r){let i=r.getAttribute(\"aria-label\");return typeof i==\"string\"?i.trim():o(r).trim()}return null}).filter(Boolean);if(u.length>0)return u.join(\", \")}return o(e).trim()}export{g as getTextValue};\n","import{ref as n}from\"vue\";import{dom as o}from'../utils/dom.js';import{getTextValue as i}from'../utils/get-text-value.js';function p(a){let t=n(\"\"),r=n(\"\");return()=>{let e=o(a);if(!e)return\"\";let l=e.innerText;if(t.value===l)return r.value;let u=i(e).trim().toLowerCase();return t.value=l,r.value=u,u}}export{p as useTextValue};\n","import{computed as x,defineComponent as E,Fragment as z,h as N,inject as _,nextTick as V,onMounted as K,onUnmounted as q,provide as W,ref as T,toRaw as R,watch as H,watchEffect as G}from\"vue\";import{useControllable as J}from'../../hooks/use-controllable.js';import{useId as F}from'../../hooks/use-id.js';import{useOutsideClick as X}from'../../hooks/use-outside-click.js';import{useResolveButtonType as Y}from'../../hooks/use-resolve-button-type.js';import{useTextValue as Z}from'../../hooks/use-text-value.js';import{useTrackedPointer as ee}from'../../hooks/use-tracked-pointer.js';import{Features as te,Hidden as oe}from'../../internal/hidden.js';import{State as B,useOpenClosed as ae,useOpenClosedProvider as ie}from'../../internal/open-closed.js';import{Keys as c}from'../../keyboard.js';import{calculateActiveIndex as ne,Focus as g}from'../../utils/calculate-active-index.js';import{dom as S}from'../../utils/dom.js';import{FocusableMode as le,isFocusableElement as ue,sortByDomNode as re}from'../../utils/focus-management.js';import{objectToFormEntries as se}from'../../utils/form.js';import{match as P}from'../../utils/match.js';import{compact as de,Features as U,omit as fe,render as j}from'../../utils/render.js';function pe(o,b){return o===b}var ce=(r=>(r[r.Open=0]=\"Open\",r[r.Closed=1]=\"Closed\",r))(ce||{}),ve=(r=>(r[r.Single=0]=\"Single\",r[r.Multi=1]=\"Multi\",r))(ve||{}),be=(r=>(r[r.Pointer=0]=\"Pointer\",r[r.Other=1]=\"Other\",r))(be||{});function me(o){requestAnimationFrame(()=>requestAnimationFrame(o))}let $=Symbol(\"ListboxContext\");function A(o){let b=_($,null);if(b===null){let r=new Error(`<${o} /> is missing a parent <Listbox /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,A),r}return b}let Ie=E({name:\"Listbox\",emits:{\"update:modelValue\":o=>!0},props:{as:{type:[Object,String],default:\"template\"},disabled:{type:[Boolean],default:!1},by:{type:[String,Function],default:()=>pe},horizontal:{type:[Boolean],default:!1},modelValue:{type:[Object,String,Number,Boolean],default:void 0},defaultValue:{type:[Object,String,Number,Boolean],default:void 0},form:{type:String,optional:!0},name:{type:String,optional:!0},multiple:{type:[Boolean],default:!1}},inheritAttrs:!1,setup(o,{slots:b,attrs:r,emit:w}){let n=T(1),e=T(null),f=T(null),v=T(null),s=T([]),m=T(\"\"),p=T(null),a=T(1);function u(t=i=>i){let i=p.value!==null?s.value[p.value]:null,l=re(t(s.value.slice()),O=>S(O.dataRef.domRef)),d=i?l.indexOf(i):null;return d===-1&&(d=null),{options:l,activeOptionIndex:d}}let D=x(()=>o.multiple?1:0),[y,L]=J(x(()=>o.modelValue),t=>w(\"update:modelValue\",t),x(()=>o.defaultValue)),M=x(()=>y.value===void 0?P(D.value,{[1]:[],[0]:void 0}):y.value),k={listboxState:n,value:M,mode:D,compare(t,i){if(typeof o.by==\"string\"){let l=o.by;return(t==null?void 0:t[l])===(i==null?void 0:i[l])}return o.by(t,i)},orientation:x(()=>o.horizontal?\"horizontal\":\"vertical\"),labelRef:e,buttonRef:f,optionsRef:v,disabled:x(()=>o.disabled),options:s,searchQuery:m,activeOptionIndex:p,activationTrigger:a,closeListbox(){o.disabled||n.value!==1&&(n.value=1,p.value=null)},openListbox(){o.disabled||n.value!==0&&(n.value=0)},goToOption(t,i,l){if(o.disabled||n.value===1)return;let d=u(),O=ne(t===g.Specific?{focus:g.Specific,id:i}:{focus:t},{resolveItems:()=>d.options,resolveActiveIndex:()=>d.activeOptionIndex,resolveId:h=>h.id,resolveDisabled:h=>h.dataRef.disabled});m.value=\"\",p.value=O,a.value=l!=null?l:1,s.value=d.options},search(t){if(o.disabled||n.value===1)return;let l=m.value!==\"\"?0:1;m.value+=t.toLowerCase();let O=(p.value!==null?s.value.slice(p.value+l).concat(s.value.slice(0,p.value+l)):s.value).find(I=>I.dataRef.textValue.startsWith(m.value)&&!I.dataRef.disabled),h=O?s.value.indexOf(O):-1;h===-1||h===p.value||(p.value=h,a.value=1)},clearSearch(){o.disabled||n.value!==1&&m.value!==\"\"&&(m.value=\"\")},registerOption(t,i){let l=u(d=>[...d,{id:t,dataRef:i}]);s.value=l.options,p.value=l.activeOptionIndex},unregisterOption(t){let i=u(l=>{let d=l.findIndex(O=>O.id===t);return d!==-1&&l.splice(d,1),l});s.value=i.options,p.value=i.activeOptionIndex,a.value=1},theirOnChange(t){o.disabled||L(t)},select(t){o.disabled||L(P(D.value,{[0]:()=>t,[1]:()=>{let i=R(k.value.value).slice(),l=R(t),d=i.findIndex(O=>k.compare(l,R(O)));return d===-1?i.push(l):i.splice(d,1),i}}))}};X([f,v],(t,i)=>{var l;k.closeListbox(),ue(i,le.Loose)||(t.preventDefault(),(l=S(f))==null||l.focus())},x(()=>n.value===0)),W($,k),ie(x(()=>P(n.value,{[0]:B.Open,[1]:B.Closed})));let C=x(()=>{var t;return(t=S(f))==null?void 0:t.closest(\"form\")});return K(()=>{H([C],()=>{if(!C.value||o.defaultValue===void 0)return;function t(){k.theirOnChange(o.defaultValue)}return C.value.addEventListener(\"reset\",t),()=>{var i;(i=C.value)==null||i.removeEventListener(\"reset\",t)}},{immediate:!0})}),()=>{let{name:t,modelValue:i,disabled:l,form:d,...O}=o,h={open:n.value===0,disabled:l,value:M.value};return N(z,[...t!=null&&M.value!=null?se({[t]:M.value}).map(([I,Q])=>N(oe,de({features:te.Hidden,key:I,as:\"input\",type:\"hidden\",hidden:!0,readOnly:!0,form:d,disabled:l,name:I,value:Q}))):[],j({ourProps:{},theirProps:{...r,...fe(O,[\"defaultValue\",\"onUpdate:modelValue\",\"horizontal\",\"multiple\",\"by\"])},slot:h,slots:b,attrs:r,name:\"Listbox\"})])}}}),Ee=E({name:\"ListboxLabel\",props:{as:{type:[Object,String],default:\"label\"},id:{type:String,default:null}},setup(o,{attrs:b,slots:r}){var f;let w=(f=o.id)!=null?f:`headlessui-listbox-label-${F()}`,n=A(\"ListboxLabel\");function e(){var v;(v=S(n.buttonRef))==null||v.focus({preventScroll:!0})}return()=>{let v={open:n.listboxState.value===0,disabled:n.disabled.value},{...s}=o,m={id:w,ref:n.labelRef,onClick:e};return j({ourProps:m,theirProps:s,slot:v,attrs:b,slots:r,name:\"ListboxLabel\"})}}}),je=E({name:\"ListboxButton\",props:{as:{type:[Object,String],default:\"button\"},id:{type:String,default:null}},setup(o,{attrs:b,slots:r,expose:w}){var p;let n=(p=o.id)!=null?p:`headlessui-listbox-button-${F()}`,e=A(\"ListboxButton\");w({el:e.buttonRef,$el:e.buttonRef});function f(a){switch(a.key){case c.Space:case c.Enter:case c.ArrowDown:a.preventDefault(),e.openListbox(),V(()=>{var u;(u=S(e.optionsRef))==null||u.focus({preventScroll:!0}),e.value.value||e.goToOption(g.First)});break;case c.ArrowUp:a.preventDefault(),e.openListbox(),V(()=>{var u;(u=S(e.optionsRef))==null||u.focus({preventScroll:!0}),e.value.value||e.goToOption(g.Last)});break}}function v(a){switch(a.key){case c.Space:a.preventDefault();break}}function s(a){e.disabled.value||(e.listboxState.value===0?(e.closeListbox(),V(()=>{var u;return(u=S(e.buttonRef))==null?void 0:u.focus({preventScroll:!0})})):(a.preventDefault(),e.openListbox(),me(()=>{var u;return(u=S(e.optionsRef))==null?void 0:u.focus({preventScroll:!0})})))}let m=Y(x(()=>({as:o.as,type:b.type})),e.buttonRef);return()=>{var y,L;let a={open:e.listboxState.value===0,disabled:e.disabled.value,value:e.value.value},{...u}=o,D={ref:e.buttonRef,id:n,type:m.value,\"aria-haspopup\":\"listbox\",\"aria-controls\":(y=S(e.optionsRef))==null?void 0:y.id,\"aria-expanded\":e.listboxState.value===0,\"aria-labelledby\":e.labelRef.value?[(L=S(e.labelRef))==null?void 0:L.id,n].join(\" \"):void 0,disabled:e.disabled.value===!0?!0:void 0,onKeydown:f,onKeyup:v,onClick:s};return j({ourProps:D,theirProps:u,slot:a,attrs:b,slots:r,name:\"ListboxButton\"})}}}),Ae=E({name:\"ListboxOptions\",props:{as:{type:[Object,String],default:\"ul\"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null}},setup(o,{attrs:b,slots:r,expose:w}){var p;let n=(p=o.id)!=null?p:`headlessui-listbox-options-${F()}`,e=A(\"ListboxOptions\"),f=T(null);w({el:e.optionsRef,$el:e.optionsRef});function v(a){switch(f.value&&clearTimeout(f.value),a.key){case c.Space:if(e.searchQuery.value!==\"\")return a.preventDefault(),a.stopPropagation(),e.search(a.key);case c.Enter:if(a.preventDefault(),a.stopPropagation(),e.activeOptionIndex.value!==null){let u=e.options.value[e.activeOptionIndex.value];e.select(u.dataRef.value)}e.mode.value===0&&(e.closeListbox(),V(()=>{var u;return(u=S(e.buttonRef))==null?void 0:u.focus({preventScroll:!0})}));break;case P(e.orientation.value,{vertical:c.ArrowDown,horizontal:c.ArrowRight}):return a.preventDefault(),a.stopPropagation(),e.goToOption(g.Next);case P(e.orientation.value,{vertical:c.ArrowUp,horizontal:c.ArrowLeft}):return a.preventDefault(),a.stopPropagation(),e.goToOption(g.Previous);case c.Home:case c.PageUp:return a.preventDefault(),a.stopPropagation(),e.goToOption(g.First);case c.End:case c.PageDown:return a.preventDefault(),a.stopPropagation(),e.goToOption(g.Last);case c.Escape:a.preventDefault(),a.stopPropagation(),e.closeListbox(),V(()=>{var u;return(u=S(e.buttonRef))==null?void 0:u.focus({preventScroll:!0})});break;case c.Tab:a.preventDefault(),a.stopPropagation();break;default:a.key.length===1&&(e.search(a.key),f.value=setTimeout(()=>e.clearSearch(),350));break}}let s=ae(),m=x(()=>s!==null?(s.value&B.Open)===B.Open:e.listboxState.value===0);return()=>{var y,L;let a={open:e.listboxState.value===0},{...u}=o,D={\"aria-activedescendant\":e.activeOptionIndex.value===null||(y=e.options.value[e.activeOptionIndex.value])==null?void 0:y.id,\"aria-multiselectable\":e.mode.value===1?!0:void 0,\"aria-labelledby\":(L=S(e.buttonRef))==null?void 0:L.id,\"aria-orientation\":e.orientation.value,id:n,onKeydown:v,role:\"listbox\",tabIndex:0,ref:e.optionsRef};return j({ourProps:D,theirProps:u,slot:a,attrs:b,slots:r,features:U.RenderStrategy|U.Static,visible:m.value,name:\"ListboxOptions\"})}}}),Fe=E({name:\"ListboxOption\",props:{as:{type:[Object,String],default:\"li\"},value:{type:[Object,String,Number,Boolean]},disabled:{type:Boolean,default:!1},id:{type:String,default:null}},setup(o,{slots:b,attrs:r,expose:w}){var C;let n=(C=o.id)!=null?C:`headlessui-listbox-option-${F()}`,e=A(\"ListboxOption\"),f=T(null);w({el:f,$el:f});let v=x(()=>e.activeOptionIndex.value!==null?e.options.value[e.activeOptionIndex.value].id===n:!1),s=x(()=>P(e.mode.value,{[0]:()=>e.compare(R(e.value.value),R(o.value)),[1]:()=>R(e.value.value).some(t=>e.compare(R(t),R(o.value)))})),m=x(()=>P(e.mode.value,{[1]:()=>{var i;let t=R(e.value.value);return((i=e.options.value.find(l=>t.some(d=>e.compare(R(d),R(l.dataRef.value)))))==null?void 0:i.id)===n},[0]:()=>s.value})),p=Z(f),a=x(()=>({disabled:o.disabled,value:o.value,get textValue(){return p()},domRef:f}));K(()=>e.registerOption(n,a)),q(()=>e.unregisterOption(n)),K(()=>{H([e.listboxState,s],()=>{e.listboxState.value===0&&s.value&&P(e.mode.value,{[1]:()=>{m.value&&e.goToOption(g.Specific,n)},[0]:()=>{e.goToOption(g.Specific,n)}})},{immediate:!0})}),G(()=>{e.listboxState.value===0&&v.value&&e.activationTrigger.value!==0&&V(()=>{var t,i;return(i=(t=S(f))==null?void 0:t.scrollIntoView)==null?void 0:i.call(t,{block:\"nearest\"})})});function u(t){if(o.disabled)return t.preventDefault();e.select(o.value),e.mode.value===0&&(e.closeListbox(),V(()=>{var i;return(i=S(e.buttonRef))==null?void 0:i.focus({preventScroll:!0})}))}function D(){if(o.disabled)return e.goToOption(g.Nothing);e.goToOption(g.Specific,n)}let y=ee();function L(t){y.update(t)}function M(t){y.wasMoved(t)&&(o.disabled||v.value||e.goToOption(g.Specific,n,0))}function k(t){y.wasMoved(t)&&(o.disabled||v.value&&e.goToOption(g.Nothing))}return()=>{let{disabled:t}=o,i={active:v.value,selected:s.value,disabled:t},{value:l,disabled:d,...O}=o,h={id:n,ref:f,role:\"option\",tabIndex:t===!0?void 0:-1,\"aria-disabled\":t===!0?!0:void 0,\"aria-selected\":s.value,disabled:void 0,onClick:u,onFocus:D,onPointerenter:L,onMouseenter:L,onPointermove:M,onMousemove:M,onPointerleave:k,onMouseleave:k};return j({ourProps:h,theirProps:O,slot:i,attrs:r,slots:b,name:\"ListboxOption\"})}}});export{Ie as Listbox,je as ListboxButton,Ee as ListboxLabel,Fe as ListboxOption,Ae as ListboxOptions};\n","<template>\n <div class=\"sl-w-full\">\n <FormFieldWrapper\n :id=\"id\"\n :name=\"name\"\n :label=\"label\"\n :disabled=\"disabled\"\n :optional=\"!rules\"\n :tertiary-label=\"tertiaryLabel\"\n :box-shadow=\"boxShadow\"\n :error-message=\"errorMessage\"\n :success-message=\"successMessage\"\n :is-valid=\"meta.valid\"\n :is-touched=\"meta.touched\"\n >\n <Listbox\n v-model=\"selectedValue\"\n :disabled=\"disabled\"\n :multiple=\"multiple\"\n @update:model-value=\"handleChange\"\n >\n <div class=\"sl-relative\">\n <ListboxButton\n :id=\"id\"\n :class=\"[\n selectClasses,\n buttonClass\n ]\"\n >\n <span class=\"sl-flex sl-items-center sl-gap-2\">\n <!-- Selected item icon -->\n <component\n v-if=\"selectedIcon\"\n :is=\"selectedIcon\"\n class=\"sl-h-4 sl-w-4 sl-flex-shrink-0\"\n aria-hidden=\"true\"\n />\n \n <!-- Selected value display -->\n <span\n v-if=\"displayValue\"\n class=\"sl-block sl-truncate sl-text-left\"\n >\n {{ displayValue }}\n </span>\n <span\n v-else\n class=\"sl-block sl-truncate sl-text-left sl-text-gray-500\"\n >\n {{ placeholder || 'Select an option' }}\n </span>\n </span>\n \n <span class=\"sl-pointer-events-none sl-absolute sl-inset-y-0 sl-right-0 sl-flex sl-items-center sl-pr-2\">\n <ChevronUpDownIcon\n class=\"sl-h-5 sl-w-5 sl-text-gray-400\"\n aria-hidden=\"true\"\n />\n </span>\n </ListboxButton>\n\n <transition\n leave-active-class=\"sl-transition sl-duration-100 sl-ease-in\"\n leave-from-class=\"sl-opacity-100\"\n leave-to-class=\"sl-opacity-0\"\n >\n <ListboxOptions\n class=\"sl-absolute sl-z-10 sl-mt-1 sl-max-h-56 sl-w-full sl-overflow-auto sl-rounded-md sl-bg-white sl-py-1 sl-text-base sl-shadow-lg sl-ring-1 sl-ring-black sl-ring-opacity-5 focus:sl-outline-none sm:sl-text-sm\"\n >\n <!-- Show All option for multiple select -->\n <li\n v-if=\"multiple && showAll\"\n role=\"button\"\n tabindex=\"0\"\n @mousedown.prevent\n @click.prevent.stop=\"toggleSelectAll\"\n :class=\"[\n 'sl-relative sl-cursor-pointer sl-select-none sl-py-2 sl-pl-3 sl-pr-9',\n 'hover:sl-bg-stachelock-600 hover:sl-text-white',\n ]\"\n >\n <span class=\"sl-block sl-truncate sl-font-medium\">\n {{ isAllSelected ? 'Unselect All' : 'Select All' }}\n </span>\n </li>\n\n <!-- Regular options -->\n <ListboxOption\n v-for=\"item in items\"\n :key=\"getItemKey(item)\"\n :value=\"item\"\n as=\"template\"\n :disabled=\"item.disabled\"\n v-slot=\"{ active, selected }\"\n >\n <li\n :class=\"[\n 'sl-relative sl-cursor-default sl-select-none sl-py-2 sl-pl-3 sl-pr-9',\n active ? 'sl-bg-stachelock-600 sl-text-white' : 'sl-text-gray-900',\n item.disabled ? 'sl-opacity-50 sl-cursor-not-allowed' : ''\n ]\"\n >\n <div class=\"sl-flex sl-items-center sl-gap-2\">\n <!-- Item icon -->\n <component\n v-if=\"item.icon\"\n :is=\"item.icon\"\n class=\"sl-h-4 sl-w-4 sl-flex-shrink-0\"\n :class=\"active ? 'sl-text-white' : 'sl-text-gray-400'\"\n aria-hidden=\"true\"\n />\n \n <span\n :class=\"[\n 'sl-block sl-truncate',\n selected ? 'sl-font-medium' : 'sl-font-normal'\n ]\"\n >\n {{ getItemText(item) }}\n </span>\n </div>\n\n <span\n v-if=\"selected\"\n class=\"sl-absolute sl-inset-y-0 sl-right-0 sl-flex sl-items-center sl-pr-4\"\n >\n <CheckIcon class=\"sl-h-5 sl-w-5\" aria-hidden=\"true\" />\n </span>\n </li>\n </ListboxOption>\n </ListboxOptions>\n </transition>\n </div>\n </Listbox>\n \n <template #success-message>\n <span v-if=\"successMessage\">{{ successMessage }}</span>\n </template>\n </FormFieldWrapper>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, watch } from 'vue'\nimport {\n Listbox,\n ListboxButton,\n ListboxOption,\n ListboxOptions,\n} from '@headlessui/vue'\nimport { CheckIcon, ChevronUpDownIcon } from '@heroicons/vue/20/solid'\nimport { useField } from 'vee-validate'\nimport FormFieldWrapper from '../forms/FormFieldWrapper.vue'\nimport type { ValidationRule } from '../../types/form'\nimport { generateId } from '../../utils/id'\n\ninterface SelectItem {\n [key: string]: any\n icon?: any\n disabled?: boolean\n}\n\ninterface Props {\n name: string\n items: SelectItem[]\n label?: string\n placeholder?: string\n disabled?: boolean\n rules?: ValidationRule\n validateOnMount?: boolean\n successMessage?: string\n tertiaryLabel?: string\n buttonClass?: string\n multiple?: boolean\n showAll?: boolean\n itemKey?: string\n itemText?: string\n modelValue?: any\n boxShadow?: boolean\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n itemKey: 'id',\n itemText: 'name',\n multiple: false,\n showAll: false,\n boxShadow: false\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: any]\n}>()\n\nconst id = generateId(props.name)\n\n// Use vee-validate for form validation\nconst { value, errorMessage, handleChange: handleValidation, meta, setTouched } = useField(\n () => props.name,\n props.rules,\n {\n validateOnMount: props.validateOnMount,\n initialValue: props.modelValue\n }\n)\n\nconst selectedValue = ref<any>(\n props.multiple\n ? (Array.isArray(props.modelValue) ? props.modelValue : [])\n : props.modelValue\n)\n\n// Watch for external changes\nwatch(\n () => props.modelValue,\n (newValue) => {\n if (props.multiple) {\n const coerced = Array.isArray(newValue) ? newValue : []\n if (coerced !== selectedValue.value) {\n selectedValue.value = coerced\n value.value = coerced\n }\n } else {\n if (newValue !== selectedValue.value) {\n selectedValue.value = newValue\n value.value = newValue\n }\n }\n },\n { immediate: true }\n)\n\nwatch(\n selectedValue,\n (newValue) => {\n emit('update:modelValue', newValue)\n }\n)\n\nconst selectClasses = computed(() => {\n const baseClasses = [\n 'sl-relative',\n 'sl-w-full',\n 'sl-cursor-default',\n 'sl-rounded-md',\n 'sl-bg-white',\n 'sl-py-2',\n 'sl-pl-3',\n 'sl-pr-10',\n 'sl-text-left',\n 'sl-border',\n 'sl-text-sm',\n 'focus:sl-outline-none',\n 'focus:sl-ring-2',\n 'focus:sl-ring-stachelock-500',\n 'focus:sl-border-stachelock-500',\n 'sl-transition-all',\n 'sl-duration-200'\n ]\n\n if (props.disabled) {\n baseClasses.push(\n 'sl-bg-gray-50',\n 'sl-text-gray-500',\n 'sl-cursor-not-allowed',\n 'sl-border-gray-200'\n )\n } else if (errorMessage.value) {\n baseClasses.push(\n 'sl-border-red-300',\n 'focus:sl-ring-red-500',\n 'focus:sl-border-red-500'\n )\n } else if (meta.valid && meta.touched) {\n baseClasses.push(\n 'sl-border-green-300',\n 'focus:sl-ring-green-500',\n 'focus:sl-border-green-500'\n )\n } else {\n baseClasses.push(\n 'sl-border-gray-300',\n 'hover:sl-border-gray-400'\n )\n }\n\n return baseClasses.join(' ')\n})\n\nconst getItemKey = (item: SelectItem): any => {\n return item[props.itemKey]\n}\n\nconst getItemText = (item: SelectItem): string => {\n return item[props.itemText] || item.toString()\n}\n\nconst displayValue = computed(() => {\n if (!selectedValue.value) return ''\n \n if (props.multiple && Array.isArray(selectedValue.value)) {\n if (selectedValue.value.length === 0) return ''\n if (selectedValue.value.length === 1) {\n return getItemText(selectedValue.value[0])\n }\n return `${selectedValue.value.length} items selected`\n }\n \n return getItemText(selectedValue.value)\n})\n\nconst selectedIcon = computed(() => {\n if (!selectedValue.value) return null\n \n if (props.multiple && Array.isArray(selectedValue.value)) {\n return selectedValue.value.length === 1 ? selectedValue.value[0].icon : null\n }\n \n return selectedValue.value.icon\n})\n\nconst allItems = computed(() => {\n return props.items.filter(item => !item.disabled)\n})\n\nconst handleChange = (value: any) => {\n selectedValue.value = value\n setTouched(true)\n handleValidation(value)\n}\n\nconst isAllSelected = computed(() => {\n if (!props.multiple || !Array.isArray(selectedValue.value)) return false\n const selectable = allItems.value\n if (selectable.length === 0) return false\n return selectable.every(item => (selectedValue.value as any[]).includes(item))\n})\n\nconst toggleSelectAll = () => {\n if (!props.multiple) return\n if (isAllSelected.value) {\n selectedValue.value = []\n } else {\n selectedValue.value = [...allItems.value]\n }\n handleValidation(selectedValue.value)\n}\n</script>\n\n\n"],"names":["a","o","e","r","i","n","t","u","l","g","p","pe","b","ce","ve","be","me","$","A","_","Ie","E","w","T","f","v","s","re","O","S","D","x","y","L","J","M","P","k","ne","h","I","R","X","ue","le","W","ie","B","K","H","N","z","se","Q","oe","de","te","j","fe","F","je","c","V","m","Y","Ae","ae","U","Fe","C","Z","q","G","ee","props","__props","emit","__emit","id","generateId","value","errorMessage","handleValidation","meta","setTouched","useField","selectedValue","ref","watch","newValue","coerced","selectClasses","computed","baseClasses","getItemKey","item","getItemText","displayValue","selectedIcon","allItems","handleChange","isAllSelected","selectable","toggleSelectAll","_openBlock","_createElementBlock","_hoisted_1","_createVNode","FormFieldWrapper","_unref","name","label","disabled","rules","tertiaryLabel","boxShadow","successMessage","Listbox","$event","multiple","_createElementVNode","_hoisted_2","ListboxButton","_normalizeClass","buttonClass","_hoisted_3","_createBlock","_resolveDynamicComponent","_hoisted_4","_toDisplayString","_hoisted_5","placeholder","_hoisted_6","ChevronUpDownIcon","_Transition","ListboxOptions","showAll","_hoisted_7","_Fragment","_renderList","items","ListboxOption","active","selected","_hoisted_8","_hoisted_9","CheckIcon"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
1
|
+
import { defineComponent as m, ref as g, createElementBlock as u, openBlock as v, createVNode as a, createElementVNode as s, unref as o, withCtx as i, renderSlot as t, normalizeClass as d } from "vue";
|
|
2
|
+
import { r as h, a as b } from "./XMarkIcon-C4wILUsz.js";
|
|
3
|
+
import { S as y, h as f } from "./transition-CuxxW9dY.js";
|
|
4
|
+
import { Y as _, G as w } from "./dialog-U1KNiPzc.js";
|
|
5
|
+
const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }, S = { class: "sl-absolute sl-left-full sl-top-0 sl-flex sl-w-16 sl-justify-center sl-pt-5" }, C = { class: "sl-flex sl-grow sl-flex-col sl-gap-y-5 sl-bg-stachelock-600 sl-px-6 sl-pb-2 sl-ring-1 sl-ring-white/10" }, z = { class: "sl-flex sl-h-16 sl-shrink-0 sl-items-center" }, W = { class: "sl-flex sl-flex-1 sl-flex-col" }, B = {
|
|
5
6
|
role: "list",
|
|
6
7
|
class: "-sl-mx-2 sl-flex-1 sl-space-y-1"
|
|
7
|
-
}, L = { class: "sl-mt-auto" }, j = { class: "sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6" },
|
|
8
|
+
}, L = { class: "sl-mt-auto" }, j = { class: "sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6" }, E = { class: "sl-mt-8 sl-flex sl-flex-col sl-justify-between sl-h-full" }, G = { class: "sl-absolute sl-bottom-4 sl-left-0 sl-right-0 sl-px-6" }, N = { class: "sl-sticky sl-top-0 sl-z-40 sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-gap-x-4 sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-shadow-sm sm:sl-gap-x-6 sm:sl-px-6 lg:sl-px-8" }, O = { class: "sl-flex sl-flex-1 sl-gap-x-4 sm:sl-self-stretch lg:sl-gap-x-6" }, V = { class: "sl-relative sl-flex sl-flex-1" }, Y = { class: "sl-flex sl-items-center sl-gap-x-4 lg:sl-gap-x-6" }, q = { class: "sl-px-4 sm:sl-px-6 lg:sl-px-8 sl-py-6" }, I = /* @__PURE__ */ m({
|
|
8
9
|
__name: "SidebarLayout",
|
|
9
10
|
props: {
|
|
10
11
|
isWideSidebar: {
|
|
@@ -13,24 +14,24 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
13
14
|
}
|
|
14
15
|
},
|
|
15
16
|
setup(n) {
|
|
16
|
-
const r =
|
|
17
|
+
const r = g(!1), c = () => {
|
|
17
18
|
r.value = !1;
|
|
18
19
|
}, p = () => {
|
|
19
20
|
r.value = !0;
|
|
20
21
|
};
|
|
21
22
|
return (e, l) => (v(), u("div", k, [
|
|
22
|
-
o(
|
|
23
|
+
a(o(y), {
|
|
23
24
|
as: "template",
|
|
24
25
|
show: r.value
|
|
25
26
|
}, {
|
|
26
27
|
default: i(() => [
|
|
27
|
-
o(
|
|
28
|
+
a(o(_), {
|
|
28
29
|
as: "div",
|
|
29
30
|
class: "sl-relative sl-z-50 lg:sl-hidden",
|
|
30
31
|
onClose: c
|
|
31
32
|
}, {
|
|
32
33
|
default: i(() => [
|
|
33
|
-
o(
|
|
34
|
+
a(o(f), {
|
|
34
35
|
as: "template",
|
|
35
36
|
enter: "sl-transition-opacity sl-ease-linear sl-duration-300",
|
|
36
37
|
"enter-from": "sl-opacity-0",
|
|
@@ -46,7 +47,7 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
46
47
|
__: [2]
|
|
47
48
|
}),
|
|
48
49
|
s("div", $, [
|
|
49
|
-
o(
|
|
50
|
+
a(o(f), {
|
|
50
51
|
as: "template",
|
|
51
52
|
enter: "sl-transition sl-ease-in-out sl-duration-300 sl-transform",
|
|
52
53
|
"enter-from": "-sl-translate-x-full",
|
|
@@ -56,9 +57,9 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
56
57
|
"leave-to": "-sl-translate-x-full"
|
|
57
58
|
}, {
|
|
58
59
|
default: i(() => [
|
|
59
|
-
o(
|
|
60
|
+
a(o(w), { class: "sl-relative sl-mr-16 sl-flex sl-w-full sl-max-w-xs sl-flex-1" }, {
|
|
60
61
|
default: i(() => [
|
|
61
|
-
o(
|
|
62
|
+
a(o(f), {
|
|
62
63
|
as: "template",
|
|
63
64
|
enter: "sl-ease-in-out sl-duration-300",
|
|
64
65
|
"enter-from": "sl-opacity-0",
|
|
@@ -68,14 +69,14 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
68
69
|
"leave-to": "sl-opacity-0"
|
|
69
70
|
}, {
|
|
70
71
|
default: i(() => [
|
|
71
|
-
s("div",
|
|
72
|
+
s("div", S, [
|
|
72
73
|
s("button", {
|
|
73
74
|
type: "button",
|
|
74
75
|
class: "-sl-m-2.5 sl-p-2.5",
|
|
75
76
|
onClick: l[0] || (l[0] = (x) => c())
|
|
76
77
|
}, [
|
|
77
78
|
l[3] || (l[3] = s("span", { class: "sl-sr-only" }, "Close sidebar", -1)),
|
|
78
|
-
o(
|
|
79
|
+
a(o(h), {
|
|
79
80
|
class: "sl-h-6 sl-w-6 sl-text-stachelock-050",
|
|
80
81
|
"aria-hidden": "true"
|
|
81
82
|
})
|
|
@@ -84,14 +85,14 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
84
85
|
]),
|
|
85
86
|
_: 1
|
|
86
87
|
}),
|
|
87
|
-
s("div",
|
|
88
|
+
s("div", C, [
|
|
88
89
|
s("div", z, [
|
|
89
90
|
t(e.$slots, "logo", {}, () => [
|
|
90
91
|
l[4] || (l[4] = s("div", { class: "sl-text-stachelock-050 sl-font-semibold sl-text-lg" }, "Logo", -1))
|
|
91
92
|
])
|
|
92
93
|
]),
|
|
93
|
-
s("nav",
|
|
94
|
-
s("ul",
|
|
94
|
+
s("nav", W, [
|
|
95
|
+
s("ul", B, [
|
|
95
96
|
t(e.$slots, "navigation")
|
|
96
97
|
])
|
|
97
98
|
]),
|
|
@@ -120,14 +121,14 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
120
121
|
l[5] || (l[5] = s("div", { class: "sl-text-stachelock-050 sl-font-semibold sl-text-lg" }, "Logo", -1))
|
|
121
122
|
])
|
|
122
123
|
]),
|
|
123
|
-
s("nav",
|
|
124
|
+
s("nav", E, [
|
|
124
125
|
s("ul", {
|
|
125
126
|
role: "list",
|
|
126
127
|
class: d(n.isWideSidebar ? "sl-flex sl-flex-col sl-items-start sl-mx-4 sl-space-y-1" : "sl-flex sl-flex-col sl-items-center sl-space-y-1")
|
|
127
128
|
}, [
|
|
128
129
|
t(e.$slots, "navigation")
|
|
129
130
|
], 2),
|
|
130
|
-
s("div",
|
|
131
|
+
s("div", G, [
|
|
131
132
|
t(e.$slots, "sidebar-footer")
|
|
132
133
|
])
|
|
133
134
|
])
|
|
@@ -135,14 +136,14 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
135
136
|
s("div", {
|
|
136
137
|
class: d(["lg:sl-pl-20", n.isWideSidebar ? "lg:sl-pl-72" : "lg:sl-pl-20"])
|
|
137
138
|
}, [
|
|
138
|
-
s("div",
|
|
139
|
+
s("div", N, [
|
|
139
140
|
s("button", {
|
|
140
141
|
type: "button",
|
|
141
142
|
class: "-sl-m-2.5 sl-p-2.5 sl-text-gray-700 lg:sl-hidden",
|
|
142
143
|
onClick: l[1] || (l[1] = (x) => p())
|
|
143
144
|
}, [
|
|
144
145
|
l[6] || (l[6] = s("span", { class: "sl-sr-only" }, "Open sidebar", -1)),
|
|
145
|
-
o(
|
|
146
|
+
a(o(b), {
|
|
146
147
|
class: "sl-h-6 sl-w-6",
|
|
147
148
|
"aria-hidden": "true"
|
|
148
149
|
})
|
|
@@ -151,16 +152,16 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
151
152
|
class: "sl-h-6 sl-w-px sl-bg-gray-900/10 lg:sl-hidden",
|
|
152
153
|
"aria-hidden": "true"
|
|
153
154
|
}, null, -1)),
|
|
154
|
-
s("div",
|
|
155
|
-
s("div",
|
|
155
|
+
s("div", O, [
|
|
156
|
+
s("div", V, [
|
|
156
157
|
t(e.$slots, "header-content")
|
|
157
158
|
]),
|
|
158
|
-
s("div",
|
|
159
|
+
s("div", Y, [
|
|
159
160
|
t(e.$slots, "header-right")
|
|
160
161
|
])
|
|
161
162
|
])
|
|
162
163
|
]),
|
|
163
|
-
s("main",
|
|
164
|
+
s("main", q, [
|
|
164
165
|
t(e.$slots, "main")
|
|
165
166
|
])
|
|
166
167
|
], 2)
|
|
@@ -168,6 +169,6 @@ const k = { class: "sl-relative" }, $ = { class: "sl-fixed sl-inset-0 sl-flex" }
|
|
|
168
169
|
}
|
|
169
170
|
});
|
|
170
171
|
export {
|
|
171
|
-
|
|
172
|
+
I as _
|
|
172
173
|
};
|
|
173
|
-
//# sourceMappingURL=SidebarLayout.vue_vue_type_script_setup_true_lang-
|
|
174
|
+
//# sourceMappingURL=SidebarLayout.vue_vue_type_script_setup_true_lang-J1nfUTdM.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SidebarLayout.vue_vue_type_script_setup_true_lang-
|
|
1
|
+
{"version":3,"file":"SidebarLayout.vue_vue_type_script_setup_true_lang-J1nfUTdM.js","sources":["../src/components/layouts/SidebarLayout.vue"],"sourcesContent":["<template>\n <div class=\"sl-relative\">\n <!-- Mobile sidebar overlay -->\n <TransitionRoot as=\"template\" :show=\"sidebarOpen\">\n <Dialog as=\"div\" class=\"sl-relative sl-z-50 lg:sl-hidden\" @close=\"closeSidebar\">\n <TransitionChild as=\"template\" enter=\"sl-transition-opacity sl-ease-linear sl-duration-300\"\n enter-from=\"sl-opacity-0\" enter-to=\"sl-opacity-100\"\n leave=\"sl-transition-opacity sl-ease-linear sl-duration-300\" leave-from=\"sl-opacity-100\"\n leave-to=\"sl-opacity-0\">\n <div class=\"sl-fixed sl-inset-0 sl-bg-gray-900/80\" />\n </TransitionChild>\n\n <div class=\"sl-fixed sl-inset-0 sl-flex\">\n <TransitionChild as=\"template\" enter=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\"\n enter-from=\"-sl-translate-x-full\" enter-to=\"sl-translate-x-0\"\n leave=\"sl-transition sl-ease-in-out sl-duration-300 sl-transform\" leave-from=\"sl-translate-x-0\"\n leave-to=\"-sl-translate-x-full\">\n <DialogPanel class=\"sl-relative sl-mr-16 sl-flex sl-w-full sl-max-w-xs sl-flex-1\">\n <TransitionChild as=\"template\" enter=\"sl-ease-in-out sl-duration-300\" enter-from=\"sl-opacity-0\"\n enter-to=\"sl-opacity-100\" leave=\"sl-ease-in-out sl-duration-300\" leave-from=\"sl-opacity-100\"\n leave-to=\"sl-opacity-0\">\n <div class=\"sl-absolute sl-left-full sl-top-0 sl-flex sl-w-16 sl-justify-center sl-pt-5\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5\" @click=\"closeSidebar()\">\n <span class=\"sl-sr-only\">Close sidebar</span>\n <XMarkIcon class=\"sl-h-6 sl-w-6 sl-text-stachelock-050\" aria-hidden=\"true\" />\n </button>\n </div>\n </TransitionChild>\n\n <div\n class=\"sl-flex sl-grow sl-flex-col sl-gap-y-5 sl-bg-stachelock-600 sl-px-6 sl-pb-2 sl-ring-1 sl-ring-white/10\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center\">\n <slot name=\"logo\">\n <div class=\"sl-text-stachelock-050 sl-font-semibold sl-text-lg\">Logo</div>\n </slot>\n </div>\n <nav class=\"sl-flex sl-flex-1 sl-flex-col\">\n <ul role=\"list\" class=\"-sl-mx-2 sl-flex-1 sl-space-y-1\">\n <slot name=\"navigation\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n </nav>\n <div class=\"sl-mt-auto\">\n <slot name=\"sidebar-footer\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </div>\n </DialogPanel>\n </TransitionChild>\n </div>\n </Dialog>\n </TransitionRoot>\n\n <!-- Desktop sidebar -->\n <div\n class=\"sl-hidden lg:sl-fixed lg:sl-inset-y-0 lg:sl-left-0 lg:sl-z-50 lg:sl-block lg:sl-pb-4 sl-pt-4 lg:sl-bg-stachelock-600\"\n :class=\"isWideSidebar ? 'lg:sl-w-72' : 'lg:sl-w-20'\">\n <div class=\"sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-px-6\">\n <slot name=\"logo\">\n <div class=\"sl-text-stachelock-050 sl-font-semibold sl-text-lg\">Logo</div>\n </slot>\n </div>\n <nav class=\"sl-mt-8 sl-flex sl-flex-col sl-justify-between sl-h-full\">\n <ul role=\"list\"\n :class=\"isWideSidebar ? 'sl-flex sl-flex-col sl-items-start sl-mx-4 sl-space-y-1' : 'sl-flex sl-flex-col sl-items-center sl-space-y-1'\">\n <slot name=\"navigation\">\n <!-- Default navigation slot -->\n </slot>\n </ul>\n <div class=\"sl-absolute sl-bottom-4 sl-left-0 sl-right-0 sl-px-6\">\n <slot name=\"sidebar-footer\">\n <!-- Sidebar footer content -->\n </slot>\n </div>\n </nav>\n </div>\n\n <!-- Main content area -->\n <div :class=\"['lg:sl-pl-20', isWideSidebar ? 'lg:sl-pl-72' : 'lg:sl-pl-20']\">\n <!-- Header -->\n <div\n class=\"sl-sticky sl-top-0 sl-z-40 sl-flex sl-h-16 sl-shrink-0 sl-items-center sl-gap-x-4 sl-border-b sl-border-gray-200 sl-bg-white sl-px-4 sl-shadow-sm sm:sl-gap-x-6 sm:sl-px-6 lg:sl-px-8\">\n <button type=\"button\" class=\"-sl-m-2.5 sl-p-2.5 sl-text-gray-700 lg:sl-hidden\" @click=\"openSidebar()\">\n <span class=\"sl-sr-only\">Open sidebar</span>\n <Bars3Icon class=\"sl-h-6 sl-w-6\" aria-hidden=\"true\" />\n </button>\n\n <!-- Separator -->\n <div class=\"sl-h-6 sl-w-px sl-bg-gray-900/10 lg:sl-hidden\" aria-hidden=\"true\" />\n\n <div class=\"sl-flex sl-flex-1 sl-gap-x-4 sm:sl-self-stretch lg:sl-gap-x-6\">\n <div class=\"sl-relative sl-flex sl-flex-1\">\n <slot name=\"header-content\">\n <!-- Header content -->\n </slot>\n </div>\n <div class=\"sl-flex sl-items-center sl-gap-x-4 lg:sl-gap-x-6\">\n <slot name=\"header-right\">\n <!-- Header right content (notifications, profile, etc.) -->\n </slot>\n </div>\n </div>\n </div>\n\n <!-- Main content -->\n <main class=\"sl-px-4 sm:sl-px-6 lg:sl-px-8 sl-py-6\">\n <slot name=\"main\">\n <!-- Main content slot -->\n </slot>\n </main>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { Dialog, DialogPanel, TransitionChild, TransitionRoot } from '@headlessui/vue';\nimport { Bars3Icon, XMarkIcon } from '@heroicons/vue/24/outline';\n\ndefineProps({\n isWideSidebar: {\n type: Boolean,\n default: false\n }\n});\n\nconst sidebarOpen = ref(false);\n\nconst closeSidebar = () => {\n sidebarOpen.value = false;\n};\n\nconst openSidebar = () => {\n sidebarOpen.value = true;\n};\n</script>\n\n<style scoped></style>\n"],"names":["sidebarOpen","ref","closeSidebar","openSidebar","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_unref","TransitionRoot","Dialog","TransitionChild","_cache","_createElementVNode","_hoisted_2","DialogPanel","_hoisted_3","XMarkIcon","_hoisted_4","_hoisted_5","_renderSlot","_ctx","_hoisted_6","_hoisted_7","_hoisted_8","_normalizeClass","__props","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","Bars3Icon","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16"],"mappings":"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"}
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
import { ref as C, computed as g, provide as N, defineComponent as B, onMounted as R, onUnmounted as Q, unref as h, inject as A, watch as G, h as O, Fragment as X, createElementBlock as u, openBlock as d, createVNode as j, withCtx as H, createElementVNode as T, createCommentVNode as w, toDisplayString as S, normalizeClass as $, withKeys as K, withModifiers as P } from "vue";
|
|
2
|
+
import { useField as Z } from "vee-validate";
|
|
3
|
+
import { g as _ } from "./id-DafBB_QF.js";
|
|
4
|
+
import ee from "./forms/FormFieldWrapper.js";
|
|
5
|
+
import { d as le, s as te, p as se } from "./form-DQKuKVqJ.js";
|
|
6
|
+
import { i as U, A as x, o as ae, f as oe, E as re, u as ne, T as ie, b as I } from "./keyboard-DJD8TwH4.js";
|
|
7
|
+
import { k as ue } from "./description-CBd3BJ9O.js";
|
|
8
|
+
let z = Symbol("LabelContext");
|
|
9
|
+
function W() {
|
|
10
|
+
let t = A(z, null);
|
|
11
|
+
if (t === null) {
|
|
12
|
+
let n = new Error("You used a <Label /> component, but it is not inside a parent.");
|
|
13
|
+
throw Error.captureStackTrace && Error.captureStackTrace(n, W), n;
|
|
14
|
+
}
|
|
15
|
+
return t;
|
|
16
|
+
}
|
|
17
|
+
function de({ slot: t = {}, name: n = "Label", props: p = {} } = {}) {
|
|
18
|
+
let l = C([]);
|
|
19
|
+
function i(a) {
|
|
20
|
+
return l.value.push(a), () => {
|
|
21
|
+
let o = l.value.indexOf(a);
|
|
22
|
+
o !== -1 && l.value.splice(o, 1);
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
return N(z, { register: i, slot: t, name: n, props: p }), g(() => l.value.length > 0 ? l.value.join(" ") : void 0);
|
|
26
|
+
}
|
|
27
|
+
B({ name: "Label", props: { as: { type: [Object, String], default: "label" }, passive: { type: [Boolean], default: !1 }, id: { type: String, default: null } }, setup(t, { slots: n, attrs: p }) {
|
|
28
|
+
var l;
|
|
29
|
+
let i = (l = t.id) != null ? l : `headlessui-label-${U()}`, a = W();
|
|
30
|
+
return R(() => Q(a.register(i))), () => {
|
|
31
|
+
let { name: o = "Label", slot: c = {}, props: m = {} } = a, { passive: v, ...y } = t, b = { ...Object.entries(m).reduce((s, [V, k]) => Object.assign(s, { [V]: h(k) }), {}), id: i };
|
|
32
|
+
return v && (delete b.onClick, delete b.htmlFor, delete y.onClick), x({ ourProps: b, theirProps: y, slot: c, attrs: p, slots: n, name: o });
|
|
33
|
+
};
|
|
34
|
+
} });
|
|
35
|
+
let Y = Symbol("GroupContext");
|
|
36
|
+
B({ name: "SwitchGroup", props: { as: { type: [Object, String], default: "template" } }, setup(t, { slots: n, attrs: p }) {
|
|
37
|
+
let l = C(null), i = de({ name: "SwitchLabel", props: { htmlFor: g(() => {
|
|
38
|
+
var o;
|
|
39
|
+
return (o = l.value) == null ? void 0 : o.id;
|
|
40
|
+
}), onClick(o) {
|
|
41
|
+
l.value && (o.currentTarget.tagName === "LABEL" && o.preventDefault(), l.value.click(), l.value.focus({ preventScroll: !0 }));
|
|
42
|
+
} } }), a = ue({ name: "SwitchDescription" });
|
|
43
|
+
return N(Y, { switchRef: l, labelledby: i, describedby: a }), () => x({ theirProps: t, ourProps: {}, slot: {}, slots: n, attrs: p, name: "SwitchGroup" });
|
|
44
|
+
} });
|
|
45
|
+
let pe = B({ name: "Switch", emits: { "update:modelValue": (t) => !0 }, props: { as: { type: [Object, String], default: "button" }, modelValue: { type: Boolean, default: void 0 }, defaultChecked: { type: Boolean, optional: !0 }, form: { type: String, optional: !0 }, name: { type: String, optional: !0 }, value: { type: String, optional: !0 }, id: { type: String, default: null }, disabled: { type: Boolean, default: !1 }, tabIndex: { type: Number, default: 0 } }, inheritAttrs: !1, setup(t, { emit: n, attrs: p, slots: l, expose: i }) {
|
|
46
|
+
var a;
|
|
47
|
+
let o = (a = t.id) != null ? a : `headlessui-switch-${U()}`, c = A(Y, null), [m, v] = le(g(() => t.modelValue), (e) => n("update:modelValue", e), g(() => t.defaultChecked));
|
|
48
|
+
function y() {
|
|
49
|
+
v(!m.value);
|
|
50
|
+
}
|
|
51
|
+
let b = C(null), s = c === null ? b : c.switchRef, V = te(g(() => ({ as: t.as, type: p.type })), s);
|
|
52
|
+
i({ el: s, $el: s });
|
|
53
|
+
function k(e) {
|
|
54
|
+
e.preventDefault(), y();
|
|
55
|
+
}
|
|
56
|
+
function M(e) {
|
|
57
|
+
e.key === I.Space ? (e.preventDefault(), y()) : e.key === I.Enter && se(e.currentTarget);
|
|
58
|
+
}
|
|
59
|
+
function E(e) {
|
|
60
|
+
e.preventDefault();
|
|
61
|
+
}
|
|
62
|
+
let f = g(() => {
|
|
63
|
+
var e, r;
|
|
64
|
+
return (r = (e = ae(s)) == null ? void 0 : e.closest) == null ? void 0 : r.call(e, "form");
|
|
65
|
+
});
|
|
66
|
+
return R(() => {
|
|
67
|
+
G([f], () => {
|
|
68
|
+
if (!f.value || t.defaultChecked === void 0) return;
|
|
69
|
+
function e() {
|
|
70
|
+
v(t.defaultChecked);
|
|
71
|
+
}
|
|
72
|
+
return f.value.addEventListener("reset", e), () => {
|
|
73
|
+
var r;
|
|
74
|
+
(r = f.value) == null || r.removeEventListener("reset", e);
|
|
75
|
+
};
|
|
76
|
+
}, { immediate: !0 });
|
|
77
|
+
}), () => {
|
|
78
|
+
let { name: e, value: r, form: L, tabIndex: F, ...D } = t, q = { checked: m.value }, J = { id: o, ref: s, role: "switch", type: V.value, tabIndex: F === -1 ? 0 : F, "aria-checked": m.value, "aria-labelledby": c?.labelledby.value, "aria-describedby": c?.describedby.value, onClick: k, onKeyup: M, onKeypress: E };
|
|
79
|
+
return O(X, [e != null && m.value != null ? O(oe, re({ features: ne.Hidden, as: "input", type: "checkbox", hidden: !0, readOnly: !0, checked: m.value, form: L, disabled: D.disabled, name: e, value: r })) : null, x({ ourProps: J, theirProps: { ...p, ...ie(D, ["modelValue", "defaultChecked"]) }, slot: q, attrs: p, slots: l, name: "Switch" })]);
|
|
80
|
+
};
|
|
81
|
+
} });
|
|
82
|
+
const ce = { class: "sl-w-full" }, me = { class: "sl-flex sl-items-center sl-justify-between sl-gap-4" }, fe = {
|
|
83
|
+
key: 0,
|
|
84
|
+
class: "sl-flex-1"
|
|
85
|
+
}, be = ["for"], he = ["innerHTML"], ve = { key: 1 }, ye = { class: "sl-sr-only" }, ge = {
|
|
86
|
+
key: 1,
|
|
87
|
+
class: "sl-ml-3 sl-text-sm"
|
|
88
|
+
}, ke = {
|
|
89
|
+
key: 0,
|
|
90
|
+
class: "sl-font-medium sl-text-gray-800"
|
|
91
|
+
}, we = {
|
|
92
|
+
key: 1,
|
|
93
|
+
class: "sl-text-gray-500"
|
|
94
|
+
}, Se = {
|
|
95
|
+
key: 2,
|
|
96
|
+
class: "sl-flex-1"
|
|
97
|
+
}, Ve = {
|
|
98
|
+
key: 0,
|
|
99
|
+
class: "sl-mt-1 sl-text-sm sl-text-gray-600"
|
|
100
|
+
}, Ce = ["innerHTML"], Fe = /* @__PURE__ */ B({
|
|
101
|
+
__name: "SwitchInput",
|
|
102
|
+
props: {
|
|
103
|
+
name: {},
|
|
104
|
+
modelValue: { type: Boolean },
|
|
105
|
+
label: {},
|
|
106
|
+
description: {},
|
|
107
|
+
disabled: { type: Boolean },
|
|
108
|
+
immediate: { type: Boolean, default: !1 },
|
|
109
|
+
boxShadow: { type: Boolean, default: !1 },
|
|
110
|
+
defaultValue: { type: Boolean, default: !1 },
|
|
111
|
+
hideMainLabel: { type: Boolean, default: !1 },
|
|
112
|
+
textTrue: {},
|
|
113
|
+
textFalse: {},
|
|
114
|
+
rules: {},
|
|
115
|
+
validateOnMount: { type: Boolean },
|
|
116
|
+
successMessage: {},
|
|
117
|
+
tertiaryLabel: {},
|
|
118
|
+
isDescriptionHtml: { type: Boolean, default: !1 },
|
|
119
|
+
showErrors: { type: Boolean, default: !1 },
|
|
120
|
+
layout: { default: "stacked" }
|
|
121
|
+
},
|
|
122
|
+
emits: ["update:modelValue", "blur", "focus"],
|
|
123
|
+
setup(t, { expose: n, emit: p }) {
|
|
124
|
+
const l = t, i = p, a = C(), o = _(`sl-${l.name}`), { value: c, errorMessage: m, handleChange: v, handleBlur: y, meta: b } = Z(
|
|
125
|
+
() => l.name,
|
|
126
|
+
l.rules,
|
|
127
|
+
{
|
|
128
|
+
type: "checkbox",
|
|
129
|
+
validateOnMount: l.validateOnMount,
|
|
130
|
+
initialValue: l.modelValue ?? l.defaultValue,
|
|
131
|
+
syncVModel: !0
|
|
132
|
+
}
|
|
133
|
+
), s = C(l.modelValue ?? l.defaultValue);
|
|
134
|
+
G(
|
|
135
|
+
() => l.modelValue,
|
|
136
|
+
(e) => {
|
|
137
|
+
if (e !== void 0 && e !== s.value) {
|
|
138
|
+
const r = !!e;
|
|
139
|
+
s.value = r, c.value = r;
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
{ immediate: !0 }
|
|
143
|
+
);
|
|
144
|
+
const V = g(() => {
|
|
145
|
+
const e = [
|
|
146
|
+
"sl-relative",
|
|
147
|
+
"sl-inline-flex",
|
|
148
|
+
"sl-items-center",
|
|
149
|
+
"sl-h-6",
|
|
150
|
+
"sl-w-11",
|
|
151
|
+
"sl-flex-shrink-0",
|
|
152
|
+
"sl-cursor-pointer",
|
|
153
|
+
"sl-rounded-full",
|
|
154
|
+
"sl-border-2",
|
|
155
|
+
"sl-border-transparent",
|
|
156
|
+
"sl-transition-colors",
|
|
157
|
+
"sl-duration-200",
|
|
158
|
+
"sl-ease-in-out",
|
|
159
|
+
"focus:sl-outline-none",
|
|
160
|
+
"focus:sl-ring-2",
|
|
161
|
+
"focus:sl-ring-stachelock-600",
|
|
162
|
+
"focus:sl-ring-offset-2"
|
|
163
|
+
];
|
|
164
|
+
return l.disabled && e.push(
|
|
165
|
+
"sl-cursor-not-allowed",
|
|
166
|
+
"sl-opacity-50"
|
|
167
|
+
), s.value ? e.push("sl-bg-stachelock-600") : e.push("sl-bg-gray-200"), e.join(" ");
|
|
168
|
+
}), k = (e) => {
|
|
169
|
+
l.disabled || (s.value = e, l.immediate && v(e), i("update:modelValue", e));
|
|
170
|
+
}, M = (e) => {
|
|
171
|
+
l.immediate || v(s.value), y(e), i("blur", e);
|
|
172
|
+
}, E = (e) => {
|
|
173
|
+
i("focus", e);
|
|
174
|
+
}, f = () => {
|
|
175
|
+
l.disabled || k(!s.value);
|
|
176
|
+
};
|
|
177
|
+
return n({
|
|
178
|
+
toggle: f,
|
|
179
|
+
value: s,
|
|
180
|
+
focus: () => {
|
|
181
|
+
(a.value?.$el ?? a.value)?.focus?.();
|
|
182
|
+
},
|
|
183
|
+
blur: () => {
|
|
184
|
+
(a.value?.$el ?? a.value)?.blur?.();
|
|
185
|
+
},
|
|
186
|
+
switchRef: a
|
|
187
|
+
}), (e, r) => (d(), u("div", ce, [
|
|
188
|
+
j(ee, {
|
|
189
|
+
id: h(o),
|
|
190
|
+
name: e.name,
|
|
191
|
+
label: e.layout === "stacked" && !e.hideMainLabel ? e.label : "",
|
|
192
|
+
disabled: e.disabled,
|
|
193
|
+
optional: !e.rules,
|
|
194
|
+
"tertiary-label": e.tertiaryLabel,
|
|
195
|
+
"box-shadow": e.boxShadow,
|
|
196
|
+
"error-message": h(m),
|
|
197
|
+
"success-message": e.successMessage,
|
|
198
|
+
"is-valid": h(b).valid,
|
|
199
|
+
"is-touched": h(b).touched,
|
|
200
|
+
"show-errors": e.showErrors
|
|
201
|
+
}, {
|
|
202
|
+
default: H(() => [
|
|
203
|
+
T("div", me, [
|
|
204
|
+
e.layout === "inline" ? (d(), u("div", fe, [
|
|
205
|
+
e.label && !e.hideMainLabel ? (d(), u("label", {
|
|
206
|
+
key: 0,
|
|
207
|
+
for: h(o),
|
|
208
|
+
class: "sl-block sl-text-sm sl-font-medium sl-text-gray-900 sl-cursor-pointer"
|
|
209
|
+
}, S(e.label), 9, be)) : w("", !0),
|
|
210
|
+
e.description ? (d(), u("div", {
|
|
211
|
+
key: 1,
|
|
212
|
+
class: $(["sl-mt-1 sl-text-sm sl-text-gray-600", { "sl-cursor-pointer": !e.disabled }]),
|
|
213
|
+
onClick: r[0] || (r[0] = (L) => !e.disabled && f())
|
|
214
|
+
}, [
|
|
215
|
+
e.isDescriptionHtml ? (d(), u("div", {
|
|
216
|
+
key: 0,
|
|
217
|
+
innerHTML: e.description
|
|
218
|
+
}, null, 8, he)) : (d(), u("span", ve, S(e.description), 1))
|
|
219
|
+
], 2)) : w("", !0)
|
|
220
|
+
])) : w("", !0),
|
|
221
|
+
j(h(pe), {
|
|
222
|
+
id: h(o),
|
|
223
|
+
ref_key: "switchRef",
|
|
224
|
+
ref: a,
|
|
225
|
+
modelValue: s.value,
|
|
226
|
+
"onUpdate:modelValue": [
|
|
227
|
+
r[1] || (r[1] = (L) => s.value = L),
|
|
228
|
+
k
|
|
229
|
+
],
|
|
230
|
+
disabled: e.disabled,
|
|
231
|
+
class: $([
|
|
232
|
+
V.value,
|
|
233
|
+
{ "sl-shadow-md": e.boxShadow }
|
|
234
|
+
]),
|
|
235
|
+
onFocus: E,
|
|
236
|
+
onBlur: M,
|
|
237
|
+
onKeydown: [
|
|
238
|
+
K(P(f, ["prevent"]), ["space"]),
|
|
239
|
+
K(P(f, ["prevent"]), ["enter"])
|
|
240
|
+
]
|
|
241
|
+
}, {
|
|
242
|
+
default: H(() => [
|
|
243
|
+
T("span", ye, S(e.label), 1),
|
|
244
|
+
T("span", {
|
|
245
|
+
class: $([
|
|
246
|
+
s.value ? "sl-translate-x-5" : "sl-translate-x-0",
|
|
247
|
+
"sl-pointer-events-none sl-inline-block sl-h-5 sl-w-5 sl-transform sl-rounded-full sl-bg-white sl-shadow sl-ring-0 sl-transition sl-duration-200 sl-ease-in-out sl-relative"
|
|
248
|
+
])
|
|
249
|
+
}, null, 2)
|
|
250
|
+
]),
|
|
251
|
+
_: 1
|
|
252
|
+
}, 8, ["id", "modelValue", "disabled", "class", "onKeydown"]),
|
|
253
|
+
e.textTrue || e.textFalse ? (d(), u("span", ge, [
|
|
254
|
+
s.value && e.textTrue ? (d(), u("span", ke, S(e.textTrue), 1)) : !s.value && e.textFalse ? (d(), u("span", we, S(e.textFalse), 1)) : w("", !0)
|
|
255
|
+
])) : w("", !0),
|
|
256
|
+
e.description && e.layout === "stacked" ? (d(), u("div", Se, [
|
|
257
|
+
e.isDescriptionHtml ? (d(), u("p", {
|
|
258
|
+
key: 1,
|
|
259
|
+
class: "sl-mt-1 sl-text-sm sl-text-gray-600",
|
|
260
|
+
innerHTML: e.description
|
|
261
|
+
}, null, 8, Ce)) : (d(), u("p", Ve, S(e.description), 1))
|
|
262
|
+
])) : w("", !0)
|
|
263
|
+
])
|
|
264
|
+
]),
|
|
265
|
+
_: 1
|
|
266
|
+
}, 8, ["id", "name", "label", "disabled", "optional", "tertiary-label", "box-shadow", "error-message", "success-message", "is-valid", "is-touched", "show-errors"])
|
|
267
|
+
]));
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
export {
|
|
271
|
+
Fe as _
|
|
272
|
+
};
|
|
273
|
+
//# sourceMappingURL=SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js.map
|