@shtabapp/ui-kit 1.29.0 → 1.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/dist/SAvatar-BS9Lu2eL.js +249 -0
- package/dist/SAvatar-BXABKIV0.cjs +1 -0
- package/dist/{SAvatarGroup-Cc4sBQjA.cjs → SAvatarGroup-CMa9KhUZ.cjs} +1 -1
- package/dist/{SAvatarGroup-Buja-Gw9.js → SAvatarGroup-wkXHy_tK.js} +1 -1
- package/dist/SBadge-BDxQJh6c.js +83 -0
- package/dist/SBadge-d1GOPFP-.cjs +1 -0
- package/dist/SButton-C-z_q5CG.cjs +1 -0
- package/dist/SButton-DnU_XZ1C.js +223 -0
- package/dist/{SInput-Bno-hQ-b.cjs → SInput-DYS84eMS.cjs} +1 -1
- package/dist/{SInput-W2257ZAC.js → SInput-iNlzBX5m.js} +1 -1
- package/dist/{SList-Do2C2gPW.cjs → SList-CU2Sy9Md.cjs} +1 -1
- package/dist/{SList-d6s0V3x2.js → SList-C_S9ej45.js} +1 -1
- package/dist/{SListItem-BAWj5_pk.js → SListItem-BD7wvCNe.js} +11 -11
- package/dist/{SListItem-4OTUkahk.cjs → SListItem-BDkldLVt.cjs} +1 -1
- package/dist/{SSelect-IoCVyA74.cjs → SSelect-CTxBjl2J.cjs} +1 -1
- package/dist/{SSelect-DXlWQVj8.js → SSelect-MzZwivEY.js} +70 -70
- package/dist/{STabs-DLFs7km7.cjs → STabs-C6QQnCZd.cjs} +1 -1
- package/dist/{STabs-Cfv9NIJe.js → STabs-Ce7tHq8T.js} +10 -10
- package/dist/{STag-ZPesEPB4.js → STag-CYoj7L-p.js} +8 -8
- package/dist/{STag-DlVk53Cn.cjs → STag-DVrSWByQ.cjs} +1 -1
- package/dist/{STagGroup-C3-hAyGi.js → STagGroup-B2-_OG3R.js} +1 -1
- package/dist/{STagGroup-C4qL3p57.cjs → STagGroup-BMyuxfVX.cjs} +1 -1
- package/dist/components/SAvatar/SAvatar.types.d.ts +2 -0
- package/dist/components/SAvatar/SAvatar.types.d.ts.map +1 -1
- package/dist/components/SAvatar/SAvatar.vue.d.ts.map +1 -1
- package/dist/components/SAvatar/utils/useAvatarBadge.d.ts +13 -0
- package/dist/components/SAvatar/utils/useAvatarBadge.d.ts.map +1 -0
- package/dist/components/SBadge/SBadge.types.d.ts +15 -0
- package/dist/components/SBadge/SBadge.types.d.ts.map +1 -1
- package/dist/components/SBadge/SBadge.vue.d.ts.map +1 -1
- package/dist/components/SBadge/index.d.ts +1 -1
- package/dist/components/SBadge/index.d.ts.map +1 -1
- package/dist/components/SButton/SButton.types.d.ts +7 -0
- package/dist/components/SButton/SButton.types.d.ts.map +1 -1
- package/dist/components/SButton/SButton.vue.d.ts.map +1 -1
- package/dist/components/SButton/utils/useButtonBadge.d.ts +21 -0
- package/dist/components/SButton/utils/useButtonBadge.d.ts.map +1 -0
- package/dist/components/SList/utils/resolveListItemFields.d.ts +1 -1
- package/dist/components/SList/utils/resolveListItemFields.d.ts.map +1 -1
- package/dist/entries/avatar-group.cjs +1 -1
- package/dist/entries/avatar-group.js +1 -1
- package/dist/entries/avatar.cjs +1 -1
- package/dist/entries/avatar.js +1 -1
- package/dist/entries/badge.cjs +1 -1
- package/dist/entries/badge.js +1 -1
- package/dist/entries/button.cjs +1 -1
- package/dist/entries/button.js +1 -1
- package/dist/entries/input.cjs +1 -1
- package/dist/entries/input.js +1 -1
- package/dist/entries/list-item.cjs +1 -1
- package/dist/entries/list-item.js +1 -1
- package/dist/entries/list.cjs +1 -1
- package/dist/entries/list.js +1 -1
- package/dist/entries/select.cjs +1 -1
- package/dist/entries/select.js +1 -1
- package/dist/entries/tabs.cjs +1 -1
- package/dist/entries/tabs.js +1 -1
- package/dist/entries/tag-group.cjs +1 -1
- package/dist/entries/tag-group.js +2 -2
- package/dist/entries/tag.cjs +1 -1
- package/dist/entries/tag.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +24 -24
- package/dist/uikit-components.css +1 -1
- package/package.json +2 -2
- package/dist/SAvatar-CRq0LG8U.cjs +0 -1
- package/dist/SAvatar-kB6E-fX6.js +0 -187
- package/dist/SBadge-BQFJFZtw.cjs +0 -1
- package/dist/SBadge-CcCknHTw.js +0 -43
- package/dist/SButton-CHxE2l-X.cjs +0 -1
- package/dist/SButton-D5yFE3W2.js +0 -156
- package/dist/components/SAvatar/SAvatarBadge.vue.d.ts +0 -5
- package/dist/components/SAvatar/SAvatarBadge.vue.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./useSelectionGroup-TaektE-I.cjs"),t=require("./SListItem-4OTUkahk.cjs");let n=require("vue"),r=require("@shtabapp/ui-kit-primitives"),i=require("@vueuse/core"),a=require("@tanstack/vue-virtual");var o=(e,t)=>{if(typeof t==`function`)return t(e);let n=e[t];return typeof n==`string`?n:typeof n==`number`?String(n):``},s=(e,t)=>{let n=e[t];return Array.isArray(n)?n.filter(e=>typeof e==`object`&&!!e):[]},c=(e,t,n,r)=>{s(e,n).forEach(e=>{let i=o(e,t);i&&r.add(i),c(e,t,n,r)})},l=(e,t,n,r)=>{for(let i of e){if(o(i,n)===t)return i;let e=l(s(i,r),t,n,r);if(e)return e}},u=(e,t,n,r,i,a,c)=>{e.forEach(e=>{let l=o(e,t);if(!l)return;let d=s(e,n),f=d.length>0,p=r.includes(l);c.push({key:l,item:e,depth:i,flatIndex:c.length,hasChildren:f,expanded:p,parentKey:a}),f&&p&&u(d,t,n,r,i+1,l,c)})},d=({items:e,childrenKey:t,itemKey:r,expanded:i})=>({flatRows:(0,n.computed)(()=>{let a=[],o=(0,n.toValue)(e),s=(0,n.toValue)(t);return u(o,(0,n.toValue)(r),s,i.value,0,void 0,a),a}),toggleExpanded:a=>{let o=(0,n.toValue)(e),s=(0,n.toValue)(t),u=(0,n.toValue)(r),d=new Set(i.value);if(d.has(a)){d.delete(a);let e=l(o,a,u,s);if(e){let t=new Set;c(e,u,s,t),t.forEach(e=>{d.delete(e)})}}else d.add(a);i.value=[...d]},isExpanded:e=>i.value.includes(e)}),f=(e,t)=>(0,i.useInfiniteScroll)(e,()=>{t.onEndReached()},{distance:(0,n.toValue)(t.distance),canLoadMore:()=>t.canLoadMore===void 0?!0:(0,n.toValue)(t.canLoadMore),direction:`bottom`}),p=function(e){return e.NONE=`none`,e.TWO_X_SMALL=`2x-small`,e.X_SMALL=`x-small`,e.SMALL=`small`,e.MEDIUM=`medium`,e.X_MEDIUM=`x-medium`,e.LARGE=`large`,e.X_LARGE=`x-large`,e.TWO_X_LARGE=`2x-large`,e}({}),m=p.TWO_X_SMALL,ee={[p.NONE]:`var(--s-ui-space-gap-none)`,[p.TWO_X_SMALL]:`var(--s-ui-space-gap-2x-small)`,[p.X_SMALL]:`var(--s-ui-space-gap-x-small)`,[p.SMALL]:`var(--s-ui-space-gap-small)`,[p.MEDIUM]:`var(--s-ui-space-gap-medium)`,[p.X_MEDIUM]:`var(--s-ui-space-gap-x-medium)`,[p.LARGE]:`var(--s-ui-space-gap-large)`,[p.X_LARGE]:`var(--s-ui-space-gap-x-large)`,[p.TWO_X_LARGE]:`var(--s-ui-space-gap-2x-large)`},h={[p.NONE]:0,[p.TWO_X_SMALL]:2,[p.X_SMALL]:4,[p.SMALL]:8,[p.MEDIUM]:12,[p.X_MEDIUM]:16,[p.LARGE]:20,[p.X_LARGE]:24,[p.TWO_X_LARGE]:32},te=(e,t)=>`s-ui-list-option-${e}-${t}`,g=(e,t)=>{let n=e[t];if(typeof n==`string`)return n},_=(e,t)=>{let n=e[t];return typeof n==`boolean`?n:!1},v=e=>e in r.ESIconName,y=(e,t)=>{let n=e[t];if(typeof n==`string`&&n.length>0&&v(n))return n},b=(e,t)=>typeof t==`string`&&t?t:Array.isArray(t)&&t[0]?t[0]:e,x=e=>e.some(e=>e.hasChildren||e.parentKey),S=(e,t,n)=>{if(!e.hasChildren)return null;if(!e.expanded)return{type:`expand`,rowKey:t};let r=n.find(e=>e.parentKey===t);return r?{type:`select`,rowKey:r.key}:null},C=(e,t)=>e.hasChildren&&e.expanded?{type:`collapse`,rowKey:t}:e.parentKey?{type:`select`,rowKey:e.parentKey}:null,w=(e,t,n)=>{let r=n.find(e=>e.key===t);return r?e===`ArrowRight`?S(r,t,n):C(r,t):null},T=(e,t,n,r)=>{for(let i=t;i>=0&&i<e.length;i+=n){let t=e[i];if(t&&t.depth<=r)return t.key}return null},ne=(e,t,n)=>{let r=n.findIndex(e=>e.key===t);if(r===-1)return null;let i=n[r];if(!i)return null;let a=e===`ArrowDown`?1:-1;return T(n,r+a,a,i.depth)},re=[`role`,`aria-multiselectable`],ie=[`aria-multiselectable`,`aria-activedescendant`,`tabindex`],ae=[`data-index`],E={key:2,class:`s-ui-list__static`},D=(0,n.defineComponent)({__name:`SList`,props:(0,n.mergeModels)({items:{},itemKey:{type:[String,Function],default:`id`},childrenKey:{default:`children`},titleKey:{default:`title`},subtitleKey:{default:`subtitle`},iconLeftKey:{default:`iconLeft`},disabledKey:{default:`disabled`},itemProps:{type:Function},selectionMode:{default:()=>e.n.NONE},mandatory:{type:Boolean,default:!1},virtual:{type:Boolean},gap:{default:()=>m},estimateItemSize:{default:36},overscan:{default:5},endReachedDistance:{default:0},canLoadMore:{type:Function},height:{default:320},maxHeight:{},revealRight:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{},selected:{},selectedModifiers:{},expanded:{default:()=>[]},expandedModifiers:{}}),emits:(0,n.mergeModels)([`endReached`],[`update:modelValue`,`update:selected`,`update:expanded`]),setup(r,{expose:i,emit:o}){let s=(0,n.useModel)(r,`modelValue`),c=(0,n.useModel)(r,`selected`),l=(0,n.useModel)(r,`expanded`),u=o,p=(0,n.useSlots)(),m=(0,n.useId)(),v=(0,n.useTemplateRef)(`scrollElementRef`),S=(0,n.useTemplateRef)(`listRootElementRef`),C=(0,n.computed)(()=>h[r.gap]),T=(0,n.computed)(()=>r.items!==void 0),D=(0,n.computed)(()=>T.value?r.virtual===void 0?!0:r.virtual:!1),{flatRows:O,toggleExpanded:k}=d({items:()=>r.items??[],childrenKey:()=>r.childrenKey,itemKey:()=>r.itemKey,expanded:l}),A=(0,a.useVirtualizer)((0,n.computed)(()=>({count:O.value.length,getScrollElement:()=>v.value,estimateSize:()=>r.estimateItemSize,gap:C.value,overscan:r.overscan}))),j=(0,n.computed)(()=>{if(T.value)return O.value.map(e=>e.key)}),M=(0,n.computed)(()=>{let e=new Set;for(let t of O.value)_(t.item,r.disabledKey)&&e.add(t.key);return e}),N=async e=>{if(!D.value)return;let t=O.value.findIndex(t=>t.key===e);t!==-1&&(A.value.scrollToIndex(t,{align:`auto`}),await new Promise(e=>{requestAnimationFrame(()=>{e()})}),await(0,n.nextTick)())},P=e=>te(m,e),F=e.o({modelValue:()=>c.value,onUpdateModelValue:e=>{c.value=e},mode:()=>r.selectionMode,mandatory:()=>r.mandatory,orientation:()=>e.r.VERTICAL,enableTabNavigation:!0,focusMode:()=>D.value?e.t.ACTIVE_DESCENDANT:e.t.DOM,orderedValues:j,isValueDisabled:e=>M.value.has(e),onBeforeFocusItem:async e=>{await N(e)},onFocusGroup:()=>{v.value?.focus()}}),I=(0,n.computed)(()=>T.value&&x(O.value)),L=()=>{if(D.value){v.value?.focus();return}S.value?.focus()},R=()=>{F.focusedValue.value=void 0,s.value=void 0;let e=document.activeElement;e instanceof HTMLElement&&e!==v.value&&e.blur(),L()},z=async e=>{D.value&&await N(e)},B=async e=>{if(R(),e.type===`expand`||e.type===`collapse`){k(e.rowKey),F.select(e.rowKey,!1),await z(e.rowKey);return}F.select(e.rowKey,!1),await z(e.rowKey)},V=async(e,t)=>{if(!I.value||e.key!==`ArrowUp`&&e.key!==`ArrowDown`)return!1;let n=b(t,c.value),r=ne(e.key,n,O.value);return r?(e.preventDefault(),R(),F.select(r,!1),await z(r),!0):!1},H=async(e,t)=>{if(!I.value||e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)return!1;let n=b(t,c.value),r=w(e.key,n,O.value);return r?(e.preventDefault(),await B(r),!0):!1},U=()=>{if(s.value)return s.value;let e=b(``,c.value);if(e)return e;let t=j.value;if(t){for(let e of t)if(!M.value.has(e))return e}},W=()=>U(),G=async e=>{let t=W();t&&await K(e,t)},K=async(e,t)=>{await V(e,t)||await H(e,t)||(await F.handleItemKeydown(e,t),s.value=F.focusedValue.value,!F.focusedValue.value&&!D.value&&L())},q=async e=>{let t=U();t&&await K(e,t)},oe=async e=>{if(D.value||e.target!==S.value)return;let t=U();t&&await K(e,t)},se=async()=>{let e=U();if(!e){L();return}await F.focusItem(e,!1)};(0,n.provide)(t.r,{mode:()=>r.selectionMode,isSelected:F.isSelected,selectItem:F.toggle,registerItem:F.registerItem,getItemTabIndex:F.getItemTabIndex,getGroupTabIndex:F.getGroupTabIndex,handleItemKeydown:K,activeKey:()=>s.value,setActiveKey:e=>{s.value=e},isExpanded:e=>l.value.includes(e),toggleExpanded:e=>{if(T.value){k(e);return}let t=new Set(l.value);t.has(e)?t.delete(e):t.add(e),l.value=[...t]},revealRight:()=>r.revealRight,getItemOptionId:e=>{if(D.value)return P(e)},usesActiveDescendantNavigation:()=>D.value});let ce=(0,n.computed)(()=>A.value.getVirtualItems()),le=(0,n.computed)(()=>ce.value.flatMap(e=>{let t=O.value[e.index];return t?[{virtualRow:e,flatRow:t}]:[]})),ue=(0,n.computed)(()=>A.value.getTotalSize()),de=(0,n.computed)(()=>({height:`${ue.value}px`,position:`relative`,width:`100%`})),J=(0,n.computed)(()=>{let e={};return typeof r.height==`number`?e.height=`${r.height}px`:r.height&&(e.height=r.height),r.maxHeight&&(typeof r.maxHeight==`number`?e.maxHeight=`${r.maxHeight}px`:e.maxHeight=r.maxHeight),e}),fe=(0,n.computed)(()=>({"s-ui-list--virtual":D.value,"s-ui-list--static":!D.value})),pe=(0,n.computed)(()=>({"--s-ui-list-gap":ee[r.gap]})),Y=(0,n.computed)(()=>({"s-ui-list__scroll--flat":T.value&&!D.value})),X=(0,n.computed)(()=>{if(r.selectionMode===e.n.MULTIPLE)return!0}),me=(0,n.computed)(()=>{if(!D.value)return`listbox`}),he=(0,n.computed)(()=>{if(!D.value)return X.value}),Z=(0,n.computed)(()=>{if(D.value)return F.getGroupTabIndex()}),ge=(0,n.computed)(()=>s.value?s.value:b(``,c.value)),_e=(0,n.computed)(()=>{if(!D.value)return;let e=ge.value;if(e)return P(e)});f(()=>v.value,{distance:()=>r.endReachedDistance,canLoadMore:()=>r.canLoadMore?r.canLoadMore():!0,onEndReached:()=>{u(`endReached`,{direction:`bottom`})}});let ve=e=>({position:`absolute`,top:0,left:0,width:`100%`,transform:`translateY(${e.start}px)`}),ye=e=>{e instanceof HTMLElement&&A.value.measureElement(e)},Q=e=>{let t=e.item,n={rowKey:e.key,depth:e.depth,expandable:e.hasChildren,expanded:e.expanded,selected:F.isSelected(e.key),active:s.value===e.key,disabled:_(t,r.disabledKey),title:g(t,r.titleKey),subtitle:g(t,r.subtitleKey),iconLeft:y(t,r.iconLeftKey),revealRight:r.revealRight};return r.itemProps?{...n,...r.itemProps(t,e)}:n},$=e=>({...e,revealRight:r.revealRight,toggleExpanded:()=>{k(e.key)}});return i({focusNavigation:se,handleKeyboardNavigation:q}),(e,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`listRootElementRef`,ref:S,class:(0,n.normalizeClass)([`s-ui-list`,fe.value]),style:(0,n.normalizeStyle)(pe.value),role:me.value,"aria-multiselectable":he.value,tabindex:`-1`,onKeydown:oe},[T.value&&D.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,ref_key:`scrollElementRef`,ref:v,class:(0,n.normalizeClass)([`s-ui-list__scroll`,Y.value]),style:(0,n.normalizeStyle)(J.value),role:`listbox`,"aria-multiselectable":X.value,"aria-activedescendant":_e.value,tabindex:Z.value,onKeydown:G},[(0,n.createElementVNode)(`div`,{class:`s-ui-list__virtual-panel`,style:(0,n.normalizeStyle)(de.value)},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(le.value,r=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:r.virtualRow.index,class:`s-ui-list__virtual-row`,"data-index":r.virtualRow.index,ref_for:!0,ref:ye,style:(0,n.normalizeStyle)(ve(r.virtualRow))},[(0,n.unref)(p).item?(0,n.renderSlot)(e.$slots,`item`,(0,n.mergeProps)({key:0,ref_for:!0},$(r.flatRow))):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),(0,n.mergeProps)({key:1,ref_for:!0},Q(r.flatRow)),null,16))],12,ae))),128))],4)],46,ie)):T.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:1,ref_key:`scrollElementRef`,ref:v,class:(0,n.normalizeClass)([`s-ui-list__scroll`,Y.value]),style:(0,n.normalizeStyle)(J.value)},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)((0,n.unref)(O),r=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:r.key},[(0,n.unref)(p).item?(0,n.renderSlot)(e.$slots,`item`,(0,n.mergeProps)({key:0,ref_for:!0},$(r))):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),(0,n.mergeProps)({key:1,ref_for:!0},Q(r)),null,16))],64))),128))],6)):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,E,[(0,n.renderSlot)(e.$slots,`default`)]))],46,re))}});Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return D}});
|
|
1
|
+
const e=require("./useSelectionGroup-TaektE-I.cjs"),t=require("./SListItem-BDkldLVt.cjs");let n=require("vue"),r=require("@shtabapp/ui-kit-primitives"),i=require("@vueuse/core"),a=require("@tanstack/vue-virtual");var o=(e,t)=>{if(typeof t==`function`)return t(e);let n=e[t];return typeof n==`string`?n:typeof n==`number`?String(n):``},s=(e,t)=>{let n=e[t];return Array.isArray(n)?n.filter(e=>typeof e==`object`&&!!e):[]},c=(e,t,n,r)=>{s(e,n).forEach(e=>{let i=o(e,t);i&&r.add(i),c(e,t,n,r)})},l=(e,t,n,r)=>{for(let i of e){if(o(i,n)===t)return i;let e=l(s(i,r),t,n,r);if(e)return e}},u=(e,t,n,r,i,a,c)=>{e.forEach(e=>{let l=o(e,t);if(!l)return;let d=s(e,n),f=d.length>0,p=r.includes(l);c.push({key:l,item:e,depth:i,flatIndex:c.length,hasChildren:f,expanded:p,parentKey:a}),f&&p&&u(d,t,n,r,i+1,l,c)})},d=({items:e,childrenKey:t,itemKey:r,expanded:i})=>({flatRows:(0,n.computed)(()=>{let a=[],o=(0,n.toValue)(e),s=(0,n.toValue)(t);return u(o,(0,n.toValue)(r),s,i.value,0,void 0,a),a}),toggleExpanded:a=>{let o=(0,n.toValue)(e),s=(0,n.toValue)(t),u=(0,n.toValue)(r),d=new Set(i.value);if(d.has(a)){d.delete(a);let e=l(o,a,u,s);if(e){let t=new Set;c(e,u,s,t),t.forEach(e=>{d.delete(e)})}}else d.add(a);i.value=[...d]},isExpanded:e=>i.value.includes(e)}),f=(e,t)=>(0,i.useInfiniteScroll)(e,()=>{t.onEndReached()},{distance:(0,n.toValue)(t.distance),canLoadMore:()=>t.canLoadMore===void 0?!0:(0,n.toValue)(t.canLoadMore),direction:`bottom`}),p=function(e){return e.NONE=`none`,e.TWO_X_SMALL=`2x-small`,e.X_SMALL=`x-small`,e.SMALL=`small`,e.MEDIUM=`medium`,e.X_MEDIUM=`x-medium`,e.LARGE=`large`,e.X_LARGE=`x-large`,e.TWO_X_LARGE=`2x-large`,e}({}),m=p.TWO_X_SMALL,ee={[p.NONE]:`var(--s-ui-space-gap-none)`,[p.TWO_X_SMALL]:`var(--s-ui-space-gap-2x-small)`,[p.X_SMALL]:`var(--s-ui-space-gap-x-small)`,[p.SMALL]:`var(--s-ui-space-gap-small)`,[p.MEDIUM]:`var(--s-ui-space-gap-medium)`,[p.X_MEDIUM]:`var(--s-ui-space-gap-x-medium)`,[p.LARGE]:`var(--s-ui-space-gap-large)`,[p.X_LARGE]:`var(--s-ui-space-gap-x-large)`,[p.TWO_X_LARGE]:`var(--s-ui-space-gap-2x-large)`},h={[p.NONE]:0,[p.TWO_X_SMALL]:2,[p.X_SMALL]:4,[p.SMALL]:8,[p.MEDIUM]:12,[p.X_MEDIUM]:16,[p.LARGE]:20,[p.X_LARGE]:24,[p.TWO_X_LARGE]:32},te=(e,t)=>`s-ui-list-option-${e}-${t}`,g=(e,t)=>{let n=e[t];if(typeof n==`string`)return n},_=(e,t)=>{let n=e[t];return typeof n==`boolean`?n:!1},v=e=>e in r.ESIconName,y=(e,t)=>{let n=e[t];if(typeof n==`string`&&n.length>0&&v(n))return n},b=(e,t)=>typeof t==`string`&&t?t:Array.isArray(t)&&t[0]?t[0]:e,x=e=>e.some(e=>e.hasChildren||e.parentKey),S=(e,t,n)=>{if(!e.hasChildren)return null;if(!e.expanded)return{type:`expand`,rowKey:t};let r=n.find(e=>e.parentKey===t);return r?{type:`select`,rowKey:r.key}:null},C=(e,t)=>e.hasChildren&&e.expanded?{type:`collapse`,rowKey:t}:e.parentKey?{type:`select`,rowKey:e.parentKey}:null,w=(e,t,n)=>{let r=n.find(e=>e.key===t);return r?e===`ArrowRight`?S(r,t,n):C(r,t):null},T=(e,t,n,r)=>{for(let i=t;i>=0&&i<e.length;i+=n){let t=e[i];if(t&&t.depth<=r)return t.key}return null},ne=(e,t,n)=>{let r=n.findIndex(e=>e.key===t);if(r===-1)return null;let i=n[r];if(!i)return null;let a=e===`ArrowDown`?1:-1;return T(n,r+a,a,i.depth)},re=[`role`,`aria-multiselectable`],ie=[`aria-multiselectable`,`aria-activedescendant`,`tabindex`],ae=[`data-index`],E={key:2,class:`s-ui-list__static`},D=(0,n.defineComponent)({__name:`SList`,props:(0,n.mergeModels)({items:{},itemKey:{type:[String,Function],default:`id`},childrenKey:{default:`children`},titleKey:{default:`title`},subtitleKey:{default:`subtitle`},iconLeftKey:{default:`iconLeft`},disabledKey:{default:`disabled`},itemProps:{type:Function},selectionMode:{default:()=>e.n.NONE},mandatory:{type:Boolean,default:!1},virtual:{type:Boolean},gap:{default:()=>m},estimateItemSize:{default:36},overscan:{default:5},endReachedDistance:{default:0},canLoadMore:{type:Function},height:{default:320},maxHeight:{},revealRight:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{},selected:{},selectedModifiers:{},expanded:{default:()=>[]},expandedModifiers:{}}),emits:(0,n.mergeModels)([`endReached`],[`update:modelValue`,`update:selected`,`update:expanded`]),setup(r,{expose:i,emit:o}){let s=(0,n.useModel)(r,`modelValue`),c=(0,n.useModel)(r,`selected`),l=(0,n.useModel)(r,`expanded`),u=o,p=(0,n.useSlots)(),m=(0,n.useId)(),v=(0,n.useTemplateRef)(`scrollElementRef`),S=(0,n.useTemplateRef)(`listRootElementRef`),C=(0,n.computed)(()=>h[r.gap]),T=(0,n.computed)(()=>r.items!==void 0),D=(0,n.computed)(()=>T.value?r.virtual===void 0?!0:r.virtual:!1),{flatRows:O,toggleExpanded:k}=d({items:()=>r.items??[],childrenKey:()=>r.childrenKey,itemKey:()=>r.itemKey,expanded:l}),A=(0,a.useVirtualizer)((0,n.computed)(()=>({count:O.value.length,getScrollElement:()=>v.value,estimateSize:()=>r.estimateItemSize,gap:C.value,overscan:r.overscan}))),j=(0,n.computed)(()=>{if(T.value)return O.value.map(e=>e.key)}),M=(0,n.computed)(()=>{let e=new Set;for(let t of O.value)_(t.item,r.disabledKey)&&e.add(t.key);return e}),N=async e=>{if(!D.value)return;let t=O.value.findIndex(t=>t.key===e);t!==-1&&(A.value.scrollToIndex(t,{align:`auto`}),await new Promise(e=>{requestAnimationFrame(()=>{e()})}),await(0,n.nextTick)())},P=e=>te(m,e),F=e.o({modelValue:()=>c.value,onUpdateModelValue:e=>{c.value=e},mode:()=>r.selectionMode,mandatory:()=>r.mandatory,orientation:()=>e.r.VERTICAL,enableTabNavigation:!0,focusMode:()=>D.value?e.t.ACTIVE_DESCENDANT:e.t.DOM,orderedValues:j,isValueDisabled:e=>M.value.has(e),onBeforeFocusItem:async e=>{await N(e)},onFocusGroup:()=>{v.value?.focus()}}),I=(0,n.computed)(()=>T.value&&x(O.value)),L=()=>{if(D.value){v.value?.focus();return}S.value?.focus()},R=()=>{F.focusedValue.value=void 0,s.value=void 0;let e=document.activeElement;e instanceof HTMLElement&&e!==v.value&&e.blur(),L()},z=async e=>{D.value&&await N(e)},B=async e=>{if(R(),e.type===`expand`||e.type===`collapse`){k(e.rowKey),F.select(e.rowKey,!1),await z(e.rowKey);return}F.select(e.rowKey,!1),await z(e.rowKey)},V=async(e,t)=>{if(!I.value||e.key!==`ArrowUp`&&e.key!==`ArrowDown`)return!1;let n=b(t,c.value),r=ne(e.key,n,O.value);return r?(e.preventDefault(),R(),F.select(r,!1),await z(r),!0):!1},H=async(e,t)=>{if(!I.value||e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)return!1;let n=b(t,c.value),r=w(e.key,n,O.value);return r?(e.preventDefault(),await B(r),!0):!1},U=()=>{if(s.value)return s.value;let e=b(``,c.value);if(e)return e;let t=j.value;if(t){for(let e of t)if(!M.value.has(e))return e}},W=()=>U(),G=async e=>{let t=W();t&&await K(e,t)},K=async(e,t)=>{await V(e,t)||await H(e,t)||(await F.handleItemKeydown(e,t),s.value=F.focusedValue.value,!F.focusedValue.value&&!D.value&&L())},q=async e=>{let t=U();t&&await K(e,t)},oe=async e=>{if(D.value||e.target!==S.value)return;let t=U();t&&await K(e,t)},se=async()=>{let e=U();if(!e){L();return}await F.focusItem(e,!1)};(0,n.provide)(t.r,{mode:()=>r.selectionMode,isSelected:F.isSelected,selectItem:F.toggle,registerItem:F.registerItem,getItemTabIndex:F.getItemTabIndex,getGroupTabIndex:F.getGroupTabIndex,handleItemKeydown:K,activeKey:()=>s.value,setActiveKey:e=>{s.value=e},isExpanded:e=>l.value.includes(e),toggleExpanded:e=>{if(T.value){k(e);return}let t=new Set(l.value);t.has(e)?t.delete(e):t.add(e),l.value=[...t]},revealRight:()=>r.revealRight,getItemOptionId:e=>{if(D.value)return P(e)},usesActiveDescendantNavigation:()=>D.value});let ce=(0,n.computed)(()=>A.value.getVirtualItems()),le=(0,n.computed)(()=>ce.value.flatMap(e=>{let t=O.value[e.index];return t?[{virtualRow:e,flatRow:t}]:[]})),ue=(0,n.computed)(()=>A.value.getTotalSize()),de=(0,n.computed)(()=>({height:`${ue.value}px`,position:`relative`,width:`100%`})),J=(0,n.computed)(()=>{let e={};return typeof r.height==`number`?e.height=`${r.height}px`:r.height&&(e.height=r.height),r.maxHeight&&(typeof r.maxHeight==`number`?e.maxHeight=`${r.maxHeight}px`:e.maxHeight=r.maxHeight),e}),fe=(0,n.computed)(()=>({"s-ui-list--virtual":D.value,"s-ui-list--static":!D.value})),pe=(0,n.computed)(()=>({"--s-ui-list-gap":ee[r.gap]})),Y=(0,n.computed)(()=>({"s-ui-list__scroll--flat":T.value&&!D.value})),X=(0,n.computed)(()=>{if(r.selectionMode===e.n.MULTIPLE)return!0}),me=(0,n.computed)(()=>{if(!D.value)return`listbox`}),he=(0,n.computed)(()=>{if(!D.value)return X.value}),Z=(0,n.computed)(()=>{if(D.value)return F.getGroupTabIndex()}),ge=(0,n.computed)(()=>s.value?s.value:b(``,c.value)),_e=(0,n.computed)(()=>{if(!D.value)return;let e=ge.value;if(e)return P(e)});f(()=>v.value,{distance:()=>r.endReachedDistance,canLoadMore:()=>r.canLoadMore?r.canLoadMore():!0,onEndReached:()=>{u(`endReached`,{direction:`bottom`})}});let ve=e=>({position:`absolute`,top:0,left:0,width:`100%`,transform:`translateY(${e.start}px)`}),ye=e=>{e instanceof HTMLElement&&A.value.measureElement(e)},Q=e=>{let t=e.item,n={rowKey:e.key,depth:e.depth,expandable:e.hasChildren,expanded:e.expanded,selected:F.isSelected(e.key),active:s.value===e.key,disabled:_(t,r.disabledKey),title:g(t,r.titleKey),subtitle:g(t,r.subtitleKey),iconLeft:y(t,r.iconLeftKey),revealRight:r.revealRight};return r.itemProps?{...n,...r.itemProps(t,e)}:n},$=e=>({...e,revealRight:r.revealRight,toggleExpanded:()=>{k(e.key)}});return i({focusNavigation:se,handleKeyboardNavigation:q}),(e,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`listRootElementRef`,ref:S,class:(0,n.normalizeClass)([`s-ui-list`,fe.value]),style:(0,n.normalizeStyle)(pe.value),role:me.value,"aria-multiselectable":he.value,tabindex:`-1`,onKeydown:oe},[T.value&&D.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,ref_key:`scrollElementRef`,ref:v,class:(0,n.normalizeClass)([`s-ui-list__scroll`,Y.value]),style:(0,n.normalizeStyle)(J.value),role:`listbox`,"aria-multiselectable":X.value,"aria-activedescendant":_e.value,tabindex:Z.value,onKeydown:G},[(0,n.createElementVNode)(`div`,{class:`s-ui-list__virtual-panel`,style:(0,n.normalizeStyle)(de.value)},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(le.value,r=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:r.virtualRow.index,class:`s-ui-list__virtual-row`,"data-index":r.virtualRow.index,ref_for:!0,ref:ye,style:(0,n.normalizeStyle)(ve(r.virtualRow))},[(0,n.unref)(p).item?(0,n.renderSlot)(e.$slots,`item`,(0,n.mergeProps)({key:0,ref_for:!0},$(r.flatRow))):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),(0,n.mergeProps)({key:1,ref_for:!0},Q(r.flatRow)),null,16))],12,ae))),128))],4)],46,ie)):T.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:1,ref_key:`scrollElementRef`,ref:v,class:(0,n.normalizeClass)([`s-ui-list__scroll`,Y.value]),style:(0,n.normalizeStyle)(J.value)},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)((0,n.unref)(O),r=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:r.key},[(0,n.unref)(p).item?(0,n.renderSlot)(e.$slots,`item`,(0,n.mergeProps)({key:0,ref_for:!0},$(r))):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),(0,n.mergeProps)({key:1,ref_for:!0},Q(r)),null,16))],64))),128))],6)):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,E,[(0,n.renderSlot)(e.$slots,`default`)]))],46,re))}});Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return D}});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as e, o as t, r as n, t as r } from "./useSelectionGroup-cKj38lEN.js";
|
|
2
|
-
import { r as i, t as a } from "./SListItem-
|
|
2
|
+
import { r as i, t as a } from "./SListItem-BD7wvCNe.js";
|
|
3
3
|
import { Fragment as o, computed as s, createBlock as c, createElementBlock as l, createElementVNode as u, defineComponent as d, mergeModels as f, mergeProps as p, nextTick as ee, normalizeClass as m, normalizeStyle as h, openBlock as g, provide as te, renderList as ne, renderSlot as _, toValue as v, unref as y, useId as re, useModel as b, useSlots as ie, useTemplateRef as x } from "vue";
|
|
4
4
|
import { ESIconName as S } from "@shtabapp/ui-kit-primitives";
|
|
5
5
|
import { useInfiniteScroll as C } from "@vueuse/core";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as e, r as t, t as n } from "./SButton.types-CpdHQtyx.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { t as r } from "./SButton-DnU_XZ1C.js";
|
|
3
|
+
import { n as i } from "./useSelectLink-DClG5hGA.js";
|
|
4
4
|
import { Fragment as a, computed as o, createBlock as s, createCommentVNode as c, createElementBlock as l, createElementVNode as u, createTextVNode as d, defineComponent as f, guardReactiveProps as p, inject as m, normalizeClass as h, normalizeProps as g, normalizeStyle as ee, openBlock as _, renderSlot as v, toDisplayString as y, unref as b, useSlots as x, useTemplateRef as S, withModifiers as C } from "vue";
|
|
5
5
|
import { ESSkeletonType as w, SIcon as T, SSkeleton as E } from "@shtabapp/ui-kit-primitives";
|
|
6
6
|
//#region src/components/SList/utils/context.ts
|
|
@@ -90,7 +90,7 @@ var D = Symbol("sListInjectionKey"), O = /* @__PURE__ */ function(e) {
|
|
|
90
90
|
let W = U, G = o(() => ({
|
|
91
91
|
disabled: f.disabled,
|
|
92
92
|
readonly: f.readonly
|
|
93
|
-
})), K = x(), q = S("listItemElementRef"), J = m(D, null), Y =
|
|
93
|
+
})), K = x(), q = S("listItemElementRef"), J = m(D, null), Y = i({
|
|
94
94
|
group: () => J,
|
|
95
95
|
value: () => f.rowKey,
|
|
96
96
|
el: () => q.value,
|
|
@@ -123,7 +123,7 @@ var D = Symbol("sListInjectionKey"), O = /* @__PURE__ */ function(e) {
|
|
|
123
123
|
}, ue = (e) => {
|
|
124
124
|
f.disabled || f.readonly || f.loading || (Y.isInGroup.value && Y.handleKeydown(e), W("keydown", e));
|
|
125
125
|
};
|
|
126
|
-
return O({ listItemElementRef: q }), (
|
|
126
|
+
return O({ listItemElementRef: q }), (i, o) => (_(), l("div", {
|
|
127
127
|
ref_key: "listItemElementRef",
|
|
128
128
|
ref: q,
|
|
129
129
|
id: ie.value,
|
|
@@ -142,7 +142,7 @@ var D = Symbol("sListInjectionKey"), O = /* @__PURE__ */ function(e) {
|
|
|
142
142
|
key: 0,
|
|
143
143
|
type: b(w).S_LIST_ITEM
|
|
144
144
|
}, null, 8, ["type"])) : (_(), l(a, { key: 1 }, [
|
|
145
|
-
f.expandable || f.depth || b(K).level ? (_(), l("div", A, [v(
|
|
145
|
+
f.expandable || f.depth || b(K).level ? (_(), l("div", A, [v(i.$slots, "level", {}, () => [f.expandable ? (_(), s(b(r), {
|
|
146
146
|
key: 0,
|
|
147
147
|
class: h(["s-ui-list-item__expand", { "s-ui-list-item__expand--expanded": Z.value }]),
|
|
148
148
|
appearance: b(n).BARE,
|
|
@@ -162,18 +162,18 @@ var D = Symbol("sListInjectionKey"), O = /* @__PURE__ */ function(e) {
|
|
|
162
162
|
"aria-label"
|
|
163
163
|
])) : c("", !0)])])) : c("", !0),
|
|
164
164
|
u("div", j, [
|
|
165
|
-
f.iconLeft || b(K)["icon-left"] ? (_(), l("div", M, [v(
|
|
165
|
+
f.iconLeft || b(K)["icon-left"] ? (_(), l("div", M, [v(i.$slots, "icon-left", {}, () => [f.iconLeft ? (_(), s(b(T), {
|
|
166
166
|
key: 0,
|
|
167
167
|
name: f.iconLeft,
|
|
168
168
|
size: H
|
|
169
169
|
}, null, 8, ["name"])) : c("", !0)])])) : c("", !0),
|
|
170
|
-
u("div", N, [f.title || b(K).title ? (_(), l("span", P, [v(
|
|
171
|
-
b(K)["title-action"] ? (_(), l("div", I, [v(
|
|
170
|
+
u("div", N, [f.title || b(K).title ? (_(), l("span", P, [v(i.$slots, "title", {}, () => [d(y(f.title), 1)])])) : c("", !0), f.subtitle || b(K).subtitle ? (_(), l("span", F, [v(i.$slots, "subtitle", {}, () => [d(y(f.subtitle), 1)])])) : c("", !0)]),
|
|
171
|
+
b(K)["title-action"] ? (_(), l("div", I, [v(i.$slots, "title-action", g(p(G.value)))])) : c("", !0)
|
|
172
172
|
]),
|
|
173
173
|
X.value ? (_(), l("div", L, [u("div", R, [u("div", z, [
|
|
174
|
-
b(K).trailing ? (_(), l("div", B, [v(
|
|
175
|
-
v(
|
|
176
|
-
b(K)["action-end"] ? (_(), l("div", V, [v(
|
|
174
|
+
b(K).trailing ? (_(), l("div", B, [v(i.$slots, "trailing", g(p(G.value)))])) : c("", !0),
|
|
175
|
+
v(i.$slots, "right", g(p(G.value))),
|
|
176
|
+
b(K)["action-end"] ? (_(), l("div", V, [v(i.$slots, "action-end", g(p(G.value)))])) : c("", !0)
|
|
177
177
|
])])])) : c("", !0)
|
|
178
178
|
], 64))], 46, k));
|
|
179
179
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./SButton.types-UKroD-ev.cjs"),t=require("./
|
|
1
|
+
const e=require("./SButton.types-UKroD-ev.cjs"),t=require("./SButton-C-z_q5CG.cjs"),n=require("./useSelectLink-DDdMmsJB.cjs");let r=require("vue"),i=require("@shtabapp/ui-kit-primitives");var a=Symbol(`sListInjectionKey`),o=function(e){return e.NEUTRAL=`neutral`,e.MAIN=`main`,e.ERROR=`error`,e}({}),s=[`id`,`tabindex`,`aria-selected`,`aria-disabled`,`aria-readonly`,`aria-busy`,`aria-expanded`],c={key:0,class:`s-ui-list-item__level`},l={class:`s-ui-list-item__body`},u={key:0,class:`s-ui-list-item__icon-left`},d={class:`s-ui-list-item__text`},f={key:0,class:`s-ui-list-item__title s-ui-typography-label-14-medium`},p={key:1,class:`s-ui-list-item__subtitle s-ui-typography-body-12-regular`},m={key:1,class:`s-ui-list-item__title-action`},h={key:1,class:`s-ui-list-item__actions`},g={class:`s-ui-list-item__actions-reveal`},_={class:`s-ui-list-item__actions-inner`},v={key:0,class:`s-ui-list-item__trailing`},y={key:1,class:`s-ui-list-item__action-end`},b=16,x=`.s-ui-list-item__expand, .s-ui-list-item__title-action, .s-ui-list-item__actions`,S=(0,r.defineComponent)({__name:`SListItem`,props:{depth:{default:0},expandable:{type:Boolean,default:!1},expanded:{type:Boolean,default:!1},variant:{default:()=>o.NEUTRAL},tiny:{type:Boolean,default:!1},selected:{type:Boolean,default:!1},active:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},title:{},subtitle:{},iconLeft:{},rowKey:{},revealRight:{type:Boolean}},emits:[`click`,`toggleExpand`,`keydown`],setup(o,{expose:S,emit:C}){let w=C,T=(0,r.computed)(()=>({disabled:o.disabled,readonly:o.readonly})),E=(0,r.useSlots)(),D=(0,r.useTemplateRef)(`listItemElementRef`),O=(0,r.inject)(a,null),k=n.n({group:()=>O,value:()=>o.rowKey,el:()=>D.value,disabled:()=>o.disabled||o.loading,interactive:()=>!o.readonly&&!o.loading}),A=(0,r.computed)(()=>!!(E.trailing||E.right||E[`action-end`])),j=(0,r.computed)(()=>O&&o.rowKey?O.isExpanded(o.rowKey):o.expanded),M=(0,r.computed)(()=>k.isInGroup.value?k.isActive.value:o.selected),N=(0,r.computed)(()=>O&&o.rowKey?O.activeKey()===o.rowKey:o.active),P=(0,r.computed)(()=>o.revealRight===void 0?O?O.revealRight():!1:o.revealRight),F=(0,r.computed)(()=>{if(!(!O||!o.rowKey))return O.getItemOptionId(o.rowKey)}),I=(0,r.computed)(()=>{if(O?.usesActiveDescendantNavigation())return-1;if(!(o.disabled||o.readonly||o.loading))return k.tabIndex.value===void 0?0:k.tabIndex.value}),L=(0,r.computed)(()=>({"--s-ui-list-item-depth":String(o.depth)})),R=(0,r.computed)(()=>[`s-ui-list-item--variant-${o.variant}`,{"s-ui-list-item--tiny":o.tiny,"s-ui-list-item--selected":M.value,"s-ui-list-item--active":N.value,"s-ui-list-item--disabled":o.disabled,"s-ui-list-item--readonly":o.readonly,"s-ui-list-item--loading":o.loading,"s-ui-list-item--expandable":o.expandable,"s-ui-list-item--reveal-right":P.value}]),z=()=>{if(!(o.disabled||o.readonly||o.loading)){if(O&&o.rowKey){O.toggleExpanded(o.rowKey);return}w(`toggleExpand`)}},B=e=>e.target instanceof Element&&!!e.target.closest(x),V=e=>{o.disabled||o.readonly||o.loading||B(e)||(O&&o.rowKey&&O.setActiveKey(o.rowKey),k.isInGroup.value&&k.handleClick(),w(`click`,e))},H=e=>{o.disabled||o.readonly||o.loading||(k.isInGroup.value&&k.handleKeydown(e),w(`keydown`,e))};return S({listItemElementRef:D}),(n,a)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{ref_key:`listItemElementRef`,ref:D,id:F.value,class:(0,r.normalizeClass)([`s-ui-list-item`,R.value]),style:(0,r.normalizeStyle)(L.value),tabindex:I.value,role:`option`,"aria-selected":M.value?!0:void 0,"aria-disabled":o.disabled||o.loading?!0:void 0,"aria-readonly":o.readonly?!0:void 0,"aria-busy":o.loading?!0:void 0,"aria-expanded":o.expandable&&!o.loading?j.value:void 0,onClick:V,onKeydown:H},[o.loading?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.SSkeleton),{key:0,type:(0,r.unref)(i.ESSkeletonType).S_LIST_ITEM},null,8,[`type`])):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[o.expandable||o.depth||(0,r.unref)(E).level?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,c,[(0,r.renderSlot)(n.$slots,`level`,{},()=>[o.expandable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(t.t),{key:0,class:(0,r.normalizeClass)([`s-ui-list-item__expand`,{"s-ui-list-item__expand--expanded":j.value}]),appearance:(0,r.unref)(e.t).BARE,variant:(0,r.unref)(e.r).NEUTRAL,size:(0,r.unref)(e.n).SMALL,icon:`chevronMiniRight`,disabled:o.disabled||o.readonly,tabindex:-1,"aria-label":j.value?`Collapse`:`Expand`,onClick:(0,r.withModifiers)(z,[`stop`])},null,8,[`class`,`appearance`,`variant`,`size`,`disabled`,`aria-label`])):(0,r.createCommentVNode)(``,!0)])])):(0,r.createCommentVNode)(``,!0),(0,r.createElementVNode)(`div`,l,[o.iconLeft||(0,r.unref)(E)[`icon-left`]?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,u,[(0,r.renderSlot)(n.$slots,`icon-left`,{},()=>[o.iconLeft?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.SIcon),{key:0,name:o.iconLeft,size:b},null,8,[`name`])):(0,r.createCommentVNode)(``,!0)])])):(0,r.createCommentVNode)(``,!0),(0,r.createElementVNode)(`div`,d,[o.title||(0,r.unref)(E).title?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,f,[(0,r.renderSlot)(n.$slots,`title`,{},()=>[(0,r.createTextVNode)((0,r.toDisplayString)(o.title),1)])])):(0,r.createCommentVNode)(``,!0),o.subtitle||(0,r.unref)(E).subtitle?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,p,[(0,r.renderSlot)(n.$slots,`subtitle`,{},()=>[(0,r.createTextVNode)((0,r.toDisplayString)(o.subtitle),1)])])):(0,r.createCommentVNode)(``,!0)]),(0,r.unref)(E)[`title-action`]?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,m,[(0,r.renderSlot)(n.$slots,`title-action`,(0,r.normalizeProps)((0,r.guardReactiveProps)(T.value)))])):(0,r.createCommentVNode)(``,!0)]),A.value?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,h,[(0,r.createElementVNode)(`div`,g,[(0,r.createElementVNode)(`div`,_,[(0,r.unref)(E).trailing?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,v,[(0,r.renderSlot)(n.$slots,`trailing`,(0,r.normalizeProps)((0,r.guardReactiveProps)(T.value)))])):(0,r.createCommentVNode)(``,!0),(0,r.renderSlot)(n.$slots,`right`,(0,r.normalizeProps)((0,r.guardReactiveProps)(T.value))),(0,r.unref)(E)[`action-end`]?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,y,[(0,r.renderSlot)(n.$slots,`action-end`,(0,r.normalizeProps)((0,r.guardReactiveProps)(T.value)))])):(0,r.createCommentVNode)(``,!0)])])])):(0,r.createCommentVNode)(``,!0)],64))],46,s))}});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return S}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./SButton.types-UKroD-ev.cjs"),t=require("./useSelectionGroup-TaektE-I.cjs"),n=require("./SButton-CHxE2l-X.cjs"),r=require("./SInput-Bno-hQ-b.cjs"),i=require("./SDropdown-B6b7IDjp.cjs"),a=require("./SList-Do2C2gPW.cjs"),o=require("./SListItem-4OTUkahk.cjs");let s=require("vue"),c=require("@shtabapp/ui-kit-primitives");var l=({listItemScope:e,itemTitle:t,itemSubtitle:n,itemDisabled:r,itemIconLeft:i,listActiveKey:o,isOptionSelected:s})=>{let c=e.item;return{rowKey:e.key,title:a.i(c,t),subtitle:a.i(c,n),disabled:a.n(c,r),iconLeft:a.r(c,i),selected:s,active:o===e.key,revealRight:e.revealRight,tiny:!0}},u=e=>typeof e==`string`||typeof e==`number`,d=(e,t)=>{let n=e[t];if(u(n))return n},f=e=>typeof e==`string`?e:String(e),p=e=>e==null?!1:typeof e==`string`?e.length>0:!0,m=(e,t,n)=>t.find(t=>f(d(t,n)??``)===e),h=e=>typeof e==`object`&&!!e,g=(e,t,n)=>{let r=m(e,t,n);if(r)return d(r,n)},_=function(e){return e.INPUT=`input`,e.CONTENT=`content`,e}({}),v=(e,t,n)=>{if(!e)return!0;let r=e.toLocaleLowerCase(),i=a.i(t,n.itemTitle)?.toLocaleLowerCase()??``,o=f(d(t,n.itemValue)??``).toLocaleLowerCase();return i.includes(r)||o.includes(r)},y=(e,t,n,r)=>{let i=r??((e,t)=>v(e,t,n));return t?e.filter(e=>i(t,e)):[...e]},b=e=>typeof e==`string`&&p(e),x=e=>typeof e==`number`&&p(e),S=(e,t,n)=>{if(t){if(!h(e))return;let t=d(e,n);return b(t)||x(t)?t:void 0}let r=typeof e==`string`||typeof e==`number`?e:void 0;if(b(r)||x(r))return r},C=(e,t,n)=>e?(Array.isArray(e)?e:[e]).flatMap(e=>{let r=S(e,t,n);return p(r)?[r]:[]}):[],w=(e,t)=>{if(b(t)){e.value=t;return}if(x(t)){e.value=t;return}e.value=void 0},T=(e,t,n)=>t.flatMap(t=>{let r=f(t),i=e.find(e=>f(d(e,n)??``)===r);return i?[i]:[]}),E=({modelValue:e,options:n,itemFields:r,multiple:i,returnObject:o,searchable:c,filterOption:l,isDropdownOpen:u,searchQuery:h})=>{let v=(0,s.computed)(()=>(0,s.toValue)(i)),b=(0,s.computed)(()=>(0,s.toValue)(o)),x=(0,s.computed)(()=>(0,s.toValue)(c)===_.INPUT),S=(0,s.computed)(()=>(0,s.toValue)(c)===_.CONTENT),E=(0,s.computed)(()=>!!(0,s.toValue)(c)),D=(0,s.computed)(()=>{let t=(0,s.toValue)(r);return C(e.value,b.value,t.itemValue)}),O=(0,s.computed)(()=>{let e=(0,s.toValue)(n),t=(0,s.toValue)(r);return y(e,E.value?h.value:``,t,(0,s.toValue)(l))}),k=(0,s.computed)(()=>v.value?t.n.MULTIPLE:t.n.SINGLE),A=(t,n,r)=>{if(b.value){e.value=T(n,t,r);return}e.value=t},ee=(t,n,r)=>{if(!t){e.value=void 0;return}if(b.value){e.value=m(t,n,r)??void 0;return}w(e,g(t,n,r))},te=(0,s.computed)({get:()=>{if(v.value)return D.value.map(e=>f(e));let e=D.value[0];if(p(e))return f(e)},set:e=>{let t=(0,s.toValue)(n),i=(0,s.toValue)(r);if(v.value){A((Array.isArray(e)?e:[]).map(e=>g(e,t,i.itemValue)).filter(e=>p(e)),t,i.itemValue);return}ee(typeof e==`string`?e:void 0,t,i.itemValue)}}),ne=(0,s.computed)(()=>D.value.length>0),j=(e,t,n)=>{let r=f(t);return e.find(e=>f(d(e,n)??``)===r)},M=(0,s.computed)(()=>{let e=D.value[0];if(!p(e))return``;let t=(0,s.toValue)(r),i=j((0,s.toValue)(n),e,t.itemValue);return i?a.i(i,t.itemTitle)??``:f(e)}),N=(0,s.computed)(()=>{let e=(0,s.toValue)(n),t=(0,s.toValue)(r);return D.value.map(n=>{let r=j(e,n,t.itemValue);return r?a.i(r,t.itemTitle)??``:f(n)})}),re=(0,s.computed)(()=>N.value.join(`, `)),ie=(0,s.computed)(()=>v.value?D.value.length===0:!M.value),P=(0,s.computed)(()=>x.value&&(u.value||v.value)),F=()=>{h.value=``};return(0,s.watch)(u,e=>{e||F()}),(0,s.watch)(()=>(0,s.toValue)(c),()=>{F()}),{searchQuery:h,selectedValues:D,filteredOptions:O,listSelectionMode:k,listSelectedModel:te,hasSelectedValues:ne,singleDisplayLabel:M,multipleDisplayLabels:N,multipleDisplayText:re,showPlaceholder:ie,showInputSearchField:P,isSearchableMode:E,isSearchableInputMode:x,isSearchableContentMode:S,isMultipleMode:v,isReturnObjectMode:b,clearSelection:()=>{e.value=void 0,F()},removeSelectedValue:e=>{let t=f(e);A(D.value.filter(e=>f(e)!==t),(0,s.toValue)(n),(0,s.toValue)(r).itemValue)},resetSearchQuery:F,formatSelectListKey:f,resolveValueFromListKey:e=>g(e,(0,s.toValue)(n),(0,s.toValue)(r).itemValue)}},D={key:0,class:`s-ui-select__panel-search`},O={key:1,class:`s-ui-select__empty s-ui-typography-body-14-regular`},k={key:1,class:`s-ui-select__panel-footer`},A=[`id`,`aria-expanded`,`aria-controls`,`aria-disabled`,`aria-readonly`,`aria-autocomplete`,`tabindex`],ee={key:0,class:`s-ui-select__value`},te={key:1,class:`s-ui-select__placeholder`},ne={key:1,class:`s-ui-select__placeholder`},j={key:2,class:`s-ui-select__value`},M={key:3,class:`s-ui-select__value-suffix`},N=[`name`,`placeholder`,`disabled`,`readonly`],re=20,ie=20,P=(0,s.defineComponent)({inheritAttrs:!1,__name:`SSelect`,props:(0,s.mergeModels)({options:{},itemValue:{default:`value`},itemTitle:{default:`label`},itemSubtitle:{default:`subtitle`},itemId:{},itemDisabled:{default:`disabled`},itemIconLeft:{default:`iconLeft`},multiple:{type:Boolean,default:!1},returnObject:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},closableOptions:{type:Boolean,default:!1},searchable:{type:[String,Boolean],default:!1},closeOnSelect:{type:Boolean,default:!0},listHeight:{default:320},searchPlaceholder:{default:`Search`},filterOption:{type:Function},label:{},labelProps:{},placeholder:{},helpMessages:{},errorMessages:{},bordered:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},iconLeft:{},customize:{default:()=>r.n.NONE},name:{},id:{}},{modelValue:{},modelModifiers:{},searchQuery:{default:``},searchQueryModifiers:{}}),emits:(0,s.mergeModels)([`clear`,`focus`,`blur`,`open`,`close`],[`update:modelValue`,`update:searchQuery`]),setup(t,{expose:u,emit:d}){let f=(0,s.useModel)(t,`modelValue`),m=(0,s.useModel)(t,`searchQuery`),h=d,g=(0,s.useSlots)(),_=(0,s.useId)(),v=(0,s.useId)(),y=(0,s.useTemplateRef)(`triggerInputRef`),b=(0,s.ref)(``),x=(0,s.useTemplateRef)(`searchInputElementRef`),S=(0,s.useTemplateRef)(`panelSearchInputElementRef`),C=(0,s.useTemplateRef)(`listElementRef`),w=(0,s.ref)(),T=(0,s.ref)(!1),P=(0,s.ref)(!1),F=(0,s.computed)(()=>t.itemId??t.itemValue),ae=(0,s.computed)(()=>({itemValue:t.itemValue,itemTitle:t.itemTitle,itemSubtitle:t.itemSubtitle,itemId:F.value})),{selectedValues:I,filteredOptions:L,listSelectionMode:oe,listSelectedModel:R,hasSelectedValues:z,singleDisplayLabel:B,multipleDisplayLabels:se,multipleDisplayText:V,showPlaceholder:H,showInputSearchField:U,isSearchableMode:ce,isSearchableInputMode:W,isSearchableContentMode:G,isMultipleMode:K,clearSelection:le,removeSelectedValue:q,resolveValueFromListKey:ue,formatSelectListKey:J}=E({modelValue:f,options:()=>t.options,itemFields:()=>ae.value,multiple:()=>t.multiple,returnObject:()=>t.returnObject,searchable:()=>t.searchable,filterOption:()=>t.filterOption,isDropdownOpen:T,searchQuery:m}),de=(0,s.computed)(()=>!!g[`value-suffix`]),fe=(0,s.computed)(()=>({disabled:t.disabled,displayLabel:B.value})),Y=(0,s.computed)(()=>L.value.length>ie),pe=(0,s.computed)(()=>G.value||Y.value?t.listHeight:`auto`),me=(0,s.computed)(()=>({"s-ui-select__panel--searchable-content":G.value})),he=(0,s.computed)(()=>{if(!(G.value||Y.value))return t.listHeight}),ge=(0,s.computed)(()=>I.value.map(e=>J(e))),_e=e=>ge.value.includes(e),ve=()=>({tiny:!0}),ye=e=>l({listItemScope:e,itemTitle:t.itemTitle,itemSubtitle:t.itemSubtitle,itemDisabled:t.itemDisabled,itemIconLeft:t.itemIconLeft,listActiveKey:w.value,isOptionSelected:_e(e.key)}),be=e=>{let t=ue(e);if(p(t)){if(K.value){q(t);return}f.value=void 0}},xe=(0,s.computed)(()=>{if(G.value)return typeof t.listHeight==`number`?{maxHeight:`${t.listHeight}px`}:{maxHeight:t.listHeight}}),Se=(0,s.computed)(()=>t.id??_),Ce=(0,s.computed)(()=>v),we=(0,s.computed)(()=>y.value?.fieldElementRef??null),Te=(0,s.computed)(()=>({labels:se.value,values:I.value,displayText:V.value,disabled:t.disabled||t.readonly,removeValue:q})),Ee=(0,s.computed)(()=>{if(!t.disabled&&(t.readonly&&!W.value||!W.value))return 0}),De=(0,s.computed)(()=>({"s-ui-select--disabled":t.disabled,"s-ui-select--readonly":t.readonly,"s-ui-select--multiple":K.value,"s-ui-select--open":T.value})),Oe=()=>{if(G.value){S.value?.focus();return}x.value?.focus()},ke=async()=>{await(0,s.nextTick)(),S.value?.focus()},Ae=async()=>{await(0,s.nextTick)(),await C.value?.focusNavigation()},X=async()=>{if(!(t.disabled||t.readonly)&&!T.value){if(T.value=!0,h(`open`),G.value){await ke();return}if(W.value){await(0,s.nextTick)(),x.value?.focus();return}await Ae()}},je=async()=>{t.disabled||t.readonly||T.value||await X()};(0,s.watch)(m,async e=>{W.value&&(t.disabled||t.readonly||e&&(T.value||await X()))});let Z=()=>{T.value&&(T.value=!1,w.value=void 0,h(`close`))},Q=()=>{!t.closeOnSelect||K.value||Z()};(0,s.watch)(f,(e,n)=>{!t.closeOnSelect||K.value||!T.value||!e||e===n||Z()});let Me=e=>{T.value&&e.target instanceof Element&&e.target.closest(`.s-ui-list-item`)&&Q()},Ne=async e=>{e.key!==`Enter`&&e.key!==` `&&e.key!==`Spacebar`||T.value&&(await(0,s.nextTick)(),Q())},$=async()=>{if(T.value){Z();return}await X()},Pe=async e=>{if(!(t.disabled||t.readonly)&&e.target instanceof HTMLElement){if(e.target.closest(`.s-ui-select__search-input`)){T.value||await X();return}await $()}},Fe=async e=>e.key!==`ArrowDown`&&e.key!==`ArrowUp`?!1:(e.preventDefault(),e.stopPropagation(),T.value||await X(),await Ae(),await C.value?.handleKeyboardNavigation(e),!0),Ie=e=>{let t=ue(e);if(t){if(K.value){I.value.some(t=>J(t)===e)?q(t):R.value=[...I.value.map(e=>J(e)),e];return}R.value=e,Q()}},Le=async e=>{if(!(t.disabled||t.readonly)&&!await Fe(e)){if(e.key===`Escape`){e.preventDefault(),Z();return}if(e.key===`Enter`||e.key===` `){if(e.preventDefault(),T.value&&w.value){Ie(w.value);return}await $()}}},Re=async e=>{if(e.key===`Escape`){e.preventDefault(),Z();return}await Fe(e)},ze=Re,Be=e=>{t.disabled||(P.value||h(`focus`,e),P.value=!0)},Ve=e=>{if(!(e.currentTarget instanceof HTMLElement))return;let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||(P.value=!1,h(`blur`,e))},He=()=>{le(),h(`clear`)};return u({open:X,close:Z,toggle:$,focusSearchInput:Oe}),(l,u)=>((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{class:(0,s.normalizeClass)([`s-ui-select`,De.value])},[(0,s.createVNode)((0,s.unref)(i.t),{modelValue:T.value,"onUpdate:modelValue":u[4]||=e=>T.value=e,reference:we.value,disabled:t.disabled,"match-reference-width":!0,"fit-viewport":!0,"content-id":Ce.value,"dismiss-on-click-outside":!0,"dismiss-on-escape":!0},{content:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`div`,{class:(0,s.normalizeClass)([`s-ui-select__panel`,me.value])},[(0,s.unref)(G)?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,D,[(0,s.createVNode)((0,s.unref)(r.t),{ref_key:`panelSearchInputElementRef`,ref:S,modelValue:m.value,"onUpdate:modelValue":u[0]||=e=>m.value=e,placeholder:t.searchPlaceholder,disabled:t.disabled,clearable:!1,"icon-left":`search`,onClick:u[1]||=(0,s.withModifiers)(()=>{},[`stop`]),onKeydown:(0,s.unref)(ze)},null,8,[`modelValue`,`placeholder`,`disabled`,`onKeydown`])])):(0,s.createCommentVNode)(``,!0),(0,s.createElementVNode)(`div`,{class:`s-ui-select__panel-body`,style:(0,s.normalizeStyle)(xe.value),onClick:Me,onKeydown:Ne},[(0,s.unref)(L).length>0?((0,s.openBlock)(),(0,s.createBlock)((0,s.unref)(a.t),{key:0,ref_key:`listElementRef`,ref:C,modelValue:w.value,"onUpdate:modelValue":u[2]||=e=>w.value=e,selected:(0,s.unref)(R),"onUpdate:selected":u[3]||=e=>(0,s.isRef)(R)?R.value=e:null,items:(0,s.unref)(L),"item-key":F.value,"title-key":t.itemTitle,"subtitle-key":t.itemSubtitle,"icon-left-key":t.itemIconLeft,"disabled-key":t.itemDisabled,"selection-mode":(0,s.unref)(oe),mandatory:!t.multiple,height:pe.value,"max-height":he.value,virtual:Y.value,"item-props":ve},(0,s.createSlots)({_:2},[(0,s.unref)(g).option?{name:`item`,fn:(0,s.withCtx)(e=>[(0,s.renderSlot)(l.$slots,`option`,(0,s.normalizeProps)((0,s.guardReactiveProps)(e)))]),key:`0`}:t.closableOptions?{name:`item`,fn:(0,s.withCtx)(t=>[(0,s.createVNode)((0,s.unref)(o.t),(0,s.normalizeProps)((0,s.guardReactiveProps)(ye(t))),(0,s.createSlots)({_:2},[_e(t.key)?{name:`right`,fn:(0,s.withCtx)(r=>[(0,s.createVNode)((0,s.unref)(n.t),{appearance:(0,s.unref)(e.t).BARE,variant:(0,s.unref)(e.r).NEUTRAL,size:(0,s.unref)(e.n).SMALL,icon:`closeMini`,disabled:r.disabled||r.readonly,tabindex:-1,onClick:(0,s.withModifiers)(e=>be(t.key),[`stop`])},null,8,[`appearance`,`variant`,`size`,`disabled`,`onClick`])]),key:`0`}:void 0]),1040)]),key:`1`}:void 0]),1032,[`modelValue`,`selected`,`items`,`item-key`,`title-key`,`subtitle-key`,`icon-left-key`,`disabled-key`,`selection-mode`,`mandatory`,`height`,`max-height`,`virtual`])):((0,s.openBlock)(),(0,s.createElementBlock)(`div`,O,[(0,s.renderSlot)(l.$slots,`empty`,{},()=>[u[8]||=(0,s.createTextVNode)(`No options`,-1)])]))],36),(0,s.unref)(g)[`panel-footer`]?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,k,[(0,s.renderSlot)(l.$slots,`panel-footer`)])):(0,s.createCommentVNode)(``,!0)],2)]),_:3},8,[`modelValue`,`reference`,`disabled`,`content-id`]),(0,s.createVNode)((0,s.unref)(r.t),{ref_key:`triggerInputRef`,ref:y,modelValue:b.value,"onUpdate:modelValue":u[7]||=e=>b.value=e,label:t.label,"label-props":t.labelProps,placeholder:t.placeholder,"help-messages":t.helpMessages,"error-messages":t.errorMessages,bordered:t.bordered,disabled:t.disabled,readonly:t.readonly,clearable:t.clearable,"has-value":(0,s.unref)(z),focused:P.value||T.value,"icon-left":t.iconLeft,customize:t.customize,name:t.name,id:Se.value,onClear:He,onFocus:Be,onBlur:Ve},(0,s.createSlots)({control:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`div`,{id:Se.value,class:(0,s.normalizeClass)([`s-ui-select__control s-ui-typography-body-14-regular`,{"s-ui-select__control--multiple":(0,s.unref)(K),"s-ui-select__control--empty":(0,s.unref)(K)&&!(0,s.unref)(z)&&!(0,s.unref)(U),"s-ui-select__control--with-value-suffix":de.value&&!(0,s.unref)(K)&&!(0,s.unref)(U)&&!(0,s.unref)(H)}]),role:`combobox`,"aria-expanded":T.value,"aria-controls":Ce.value,"aria-haspopup":`listbox`,"aria-disabled":t.disabled?!0:void 0,"aria-readonly":t.readonly?!0:void 0,"aria-autocomplete":(0,s.unref)(ce)?`list`:void 0,tabindex:Ee.value,onClick:Pe,onKeydown:Le},[(0,s.unref)(K)?(0,s.renderSlot)(l.$slots,`selection`,(0,s.normalizeProps)((0,s.mergeProps)({key:0},Te.value)),()=>[(0,s.unref)(V)?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,ee,(0,s.toDisplayString)((0,s.unref)(V)),1)):(0,s.unref)(H)&&!(0,s.unref)(U)?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,te,(0,s.toDisplayString)(t.placeholder),1)):(0,s.createCommentVNode)(``,!0)]):(0,s.unref)(H)&&!(0,s.unref)(U)?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,ne,(0,s.toDisplayString)(t.placeholder),1)):(0,s.unref)(U)?(0,s.createCommentVNode)(``,!0):((0,s.openBlock)(),(0,s.createElementBlock)(`span`,j,(0,s.toDisplayString)((0,s.unref)(B)),1)),de.value&&!(0,s.unref)(K)&&!(0,s.unref)(U)&&!(0,s.unref)(H)?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,M,[(0,s.renderSlot)(l.$slots,`value-suffix`,(0,s.normalizeProps)((0,s.guardReactiveProps)(fe.value)))])):(0,s.createCommentVNode)(``,!0),(0,s.unref)(U)?(0,s.withDirectives)(((0,s.openBlock)(),(0,s.createElementBlock)(`input`,{key:4,ref_key:`searchInputElementRef`,ref:x,"onUpdate:modelValue":u[5]||=e=>m.value=e,class:`s-ui-select__search-input`,type:`text`,name:t.name,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readonly,autocomplete:`off`,onClick:u[6]||=(0,s.withModifiers)(()=>{},[`stop`]),onFocus:je,onKeydown:Re},null,40,N)),[[s.vModelText,m.value]]):(0,s.createCommentVNode)(``,!0)],42,A)]),action:(0,s.withCtx)(()=>[(0,s.createVNode)((0,s.unref)(c.SIcon),{name:`chevronMiniDown`,size:re,class:`s-ui-select__chevron`})]),_:2},[(0,s.unref)(g).label?{name:`label`,fn:(0,s.withCtx)(()=>[(0,s.renderSlot)(l.$slots,`label`)]),key:`0`}:void 0,(0,s.unref)(g).prefix?{name:`prefix`,fn:(0,s.withCtx)(e=>[(0,s.renderSlot)(l.$slots,`prefix`,(0,s.normalizeProps)((0,s.guardReactiveProps)(e)))]),key:`1`}:void 0,(0,s.unref)(g).prepend?{name:`prepend`,fn:(0,s.withCtx)(e=>[(0,s.renderSlot)(l.$slots,`prepend`,(0,s.normalizeProps)((0,s.guardReactiveProps)(e)))]),key:`2`}:void 0,(0,s.unref)(g).message?{name:`message`,fn:(0,s.withCtx)(()=>[(0,s.renderSlot)(l.$slots,`message`)]),key:`3`}:void 0]),1032,[`modelValue`,`label`,`label-props`,`placeholder`,`help-messages`,`error-messages`,`bordered`,`disabled`,`readonly`,`clearable`,`has-value`,`focused`,`icon-left`,`customize`,`name`,`id`])],2))}});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return P}});
|
|
1
|
+
const e=require("./SButton.types-UKroD-ev.cjs"),t=require("./SButton-C-z_q5CG.cjs"),n=require("./useSelectionGroup-TaektE-I.cjs"),r=require("./SInput-DYS84eMS.cjs"),i=require("./SDropdown-B6b7IDjp.cjs"),a=require("./SList-CU2Sy9Md.cjs"),o=require("./SListItem-BDkldLVt.cjs");let s=require("vue"),c=require("@shtabapp/ui-kit-primitives");var l=({listItemScope:e,itemTitle:t,itemSubtitle:n,itemDisabled:r,itemIconLeft:i,listActiveKey:o,isOptionSelected:s})=>{let c=e.item;return{rowKey:e.key,title:a.i(c,t),subtitle:a.i(c,n),disabled:a.n(c,r),iconLeft:a.r(c,i),selected:s,active:o===e.key,revealRight:e.revealRight,tiny:!0}},u=e=>typeof e==`string`||typeof e==`number`,d=(e,t)=>{let n=e[t];if(u(n))return n},f=e=>typeof e==`string`?e:String(e),p=e=>e==null?!1:typeof e==`string`?e.length>0:!0,m=(e,t,n)=>t.find(t=>f(d(t,n)??``)===e),h=e=>typeof e==`object`&&!!e,g=(e,t,n)=>{let r=m(e,t,n);if(r)return d(r,n)},_=function(e){return e.INPUT=`input`,e.CONTENT=`content`,e}({}),v=(e,t,n)=>{if(!e)return!0;let r=e.toLocaleLowerCase(),i=a.i(t,n.itemTitle)?.toLocaleLowerCase()??``,o=f(d(t,n.itemValue)??``).toLocaleLowerCase();return i.includes(r)||o.includes(r)},y=(e,t,n,r)=>{let i=r??((e,t)=>v(e,t,n));return t?e.filter(e=>i(t,e)):[...e]},b=e=>typeof e==`string`&&p(e),x=e=>typeof e==`number`&&p(e),S=(e,t,n)=>{if(t){if(!h(e))return;let t=d(e,n);return b(t)||x(t)?t:void 0}let r=typeof e==`string`||typeof e==`number`?e:void 0;if(b(r)||x(r))return r},C=(e,t,n)=>e?(Array.isArray(e)?e:[e]).flatMap(e=>{let r=S(e,t,n);return p(r)?[r]:[]}):[],w=(e,t)=>{if(b(t)){e.value=t;return}if(x(t)){e.value=t;return}e.value=void 0},T=(e,t,n)=>t.flatMap(t=>{let r=f(t),i=e.find(e=>f(d(e,n)??``)===r);return i?[i]:[]}),E=({modelValue:e,options:t,itemFields:r,multiple:i,returnObject:o,searchable:c,filterOption:l,isDropdownOpen:u,searchQuery:h})=>{let v=(0,s.computed)(()=>(0,s.toValue)(i)),b=(0,s.computed)(()=>(0,s.toValue)(o)),x=(0,s.computed)(()=>(0,s.toValue)(c)===_.INPUT),S=(0,s.computed)(()=>(0,s.toValue)(c)===_.CONTENT),E=(0,s.computed)(()=>!!(0,s.toValue)(c)),D=(0,s.computed)(()=>{let t=(0,s.toValue)(r);return C(e.value,b.value,t.itemValue)}),O=(0,s.computed)(()=>{let e=(0,s.toValue)(t),n=(0,s.toValue)(r);return y(e,E.value?h.value:``,n,(0,s.toValue)(l))}),k=(0,s.computed)(()=>v.value?n.n.MULTIPLE:n.n.SINGLE),A=(t,n,r)=>{if(b.value){e.value=T(n,t,r);return}e.value=t},ee=(t,n,r)=>{if(!t){e.value=void 0;return}if(b.value){e.value=m(t,n,r)??void 0;return}w(e,g(t,n,r))},te=(0,s.computed)({get:()=>{if(v.value)return D.value.map(e=>f(e));let e=D.value[0];if(p(e))return f(e)},set:e=>{let n=(0,s.toValue)(t),i=(0,s.toValue)(r);if(v.value){A((Array.isArray(e)?e:[]).map(e=>g(e,n,i.itemValue)).filter(e=>p(e)),n,i.itemValue);return}ee(typeof e==`string`?e:void 0,n,i.itemValue)}}),ne=(0,s.computed)(()=>D.value.length>0),j=(e,t,n)=>{let r=f(t);return e.find(e=>f(d(e,n)??``)===r)},M=(0,s.computed)(()=>{let e=D.value[0];if(!p(e))return``;let n=(0,s.toValue)(r),i=j((0,s.toValue)(t),e,n.itemValue);return i?a.i(i,n.itemTitle)??``:f(e)}),N=(0,s.computed)(()=>{let e=(0,s.toValue)(t),n=(0,s.toValue)(r);return D.value.map(t=>{let r=j(e,t,n.itemValue);return r?a.i(r,n.itemTitle)??``:f(t)})}),re=(0,s.computed)(()=>N.value.join(`, `)),ie=(0,s.computed)(()=>v.value?D.value.length===0:!M.value),P=(0,s.computed)(()=>x.value&&(u.value||v.value)),F=()=>{h.value=``};return(0,s.watch)(u,e=>{e||F()}),(0,s.watch)(()=>(0,s.toValue)(c),()=>{F()}),{searchQuery:h,selectedValues:D,filteredOptions:O,listSelectionMode:k,listSelectedModel:te,hasSelectedValues:ne,singleDisplayLabel:M,multipleDisplayLabels:N,multipleDisplayText:re,showPlaceholder:ie,showInputSearchField:P,isSearchableMode:E,isSearchableInputMode:x,isSearchableContentMode:S,isMultipleMode:v,isReturnObjectMode:b,clearSelection:()=>{e.value=void 0,F()},removeSelectedValue:e=>{let n=f(e);A(D.value.filter(e=>f(e)!==n),(0,s.toValue)(t),(0,s.toValue)(r).itemValue)},resetSearchQuery:F,formatSelectListKey:f,resolveValueFromListKey:e=>g(e,(0,s.toValue)(t),(0,s.toValue)(r).itemValue)}},D={key:0,class:`s-ui-select__panel-search`},O={key:1,class:`s-ui-select__empty s-ui-typography-body-14-regular`},k={key:1,class:`s-ui-select__panel-footer`},A=[`id`,`aria-expanded`,`aria-controls`,`aria-disabled`,`aria-readonly`,`aria-autocomplete`,`tabindex`],ee={key:0,class:`s-ui-select__value`},te={key:1,class:`s-ui-select__placeholder`},ne={key:1,class:`s-ui-select__placeholder`},j={key:2,class:`s-ui-select__value`},M={key:3,class:`s-ui-select__value-suffix`},N=[`name`,`placeholder`,`disabled`,`readonly`],re=20,ie=20,P=(0,s.defineComponent)({inheritAttrs:!1,__name:`SSelect`,props:(0,s.mergeModels)({options:{},itemValue:{default:`value`},itemTitle:{default:`label`},itemSubtitle:{default:`subtitle`},itemId:{},itemDisabled:{default:`disabled`},itemIconLeft:{default:`iconLeft`},multiple:{type:Boolean,default:!1},returnObject:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},closableOptions:{type:Boolean,default:!1},searchable:{type:[String,Boolean],default:!1},closeOnSelect:{type:Boolean,default:!0},listHeight:{default:320},searchPlaceholder:{default:`Search`},filterOption:{type:Function},label:{},labelProps:{},placeholder:{},helpMessages:{},errorMessages:{},bordered:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},iconLeft:{},customize:{default:()=>r.n.NONE},name:{},id:{}},{modelValue:{},modelModifiers:{},searchQuery:{default:``},searchQueryModifiers:{}}),emits:(0,s.mergeModels)([`clear`,`focus`,`blur`,`open`,`close`],[`update:modelValue`,`update:searchQuery`]),setup(n,{expose:u,emit:d}){let f=(0,s.useModel)(n,`modelValue`),m=(0,s.useModel)(n,`searchQuery`),h=d,g=(0,s.useSlots)(),_=(0,s.useId)(),v=(0,s.useId)(),y=(0,s.useTemplateRef)(`triggerInputRef`),b=(0,s.ref)(``),x=(0,s.useTemplateRef)(`searchInputElementRef`),S=(0,s.useTemplateRef)(`panelSearchInputElementRef`),C=(0,s.useTemplateRef)(`listElementRef`),w=(0,s.ref)(),T=(0,s.ref)(!1),P=(0,s.ref)(!1),F=(0,s.computed)(()=>n.itemId??n.itemValue),ae=(0,s.computed)(()=>({itemValue:n.itemValue,itemTitle:n.itemTitle,itemSubtitle:n.itemSubtitle,itemId:F.value})),{selectedValues:I,filteredOptions:L,listSelectionMode:oe,listSelectedModel:R,hasSelectedValues:z,singleDisplayLabel:B,multipleDisplayLabels:se,multipleDisplayText:V,showPlaceholder:H,showInputSearchField:U,isSearchableMode:ce,isSearchableInputMode:W,isSearchableContentMode:G,isMultipleMode:K,clearSelection:le,removeSelectedValue:q,resolveValueFromListKey:ue,formatSelectListKey:J}=E({modelValue:f,options:()=>n.options,itemFields:()=>ae.value,multiple:()=>n.multiple,returnObject:()=>n.returnObject,searchable:()=>n.searchable,filterOption:()=>n.filterOption,isDropdownOpen:T,searchQuery:m}),de=(0,s.computed)(()=>!!g[`value-suffix`]),fe=(0,s.computed)(()=>({disabled:n.disabled,displayLabel:B.value})),Y=(0,s.computed)(()=>L.value.length>ie),pe=(0,s.computed)(()=>G.value||Y.value?n.listHeight:`auto`),me=(0,s.computed)(()=>({"s-ui-select__panel--searchable-content":G.value})),he=(0,s.computed)(()=>{if(!(G.value||Y.value))return n.listHeight}),ge=(0,s.computed)(()=>I.value.map(e=>J(e))),_e=e=>ge.value.includes(e),ve=()=>({tiny:!0}),ye=e=>l({listItemScope:e,itemTitle:n.itemTitle,itemSubtitle:n.itemSubtitle,itemDisabled:n.itemDisabled,itemIconLeft:n.itemIconLeft,listActiveKey:w.value,isOptionSelected:_e(e.key)}),be=e=>{let t=ue(e);if(p(t)){if(K.value){q(t);return}f.value=void 0}},xe=(0,s.computed)(()=>{if(G.value)return typeof n.listHeight==`number`?{maxHeight:`${n.listHeight}px`}:{maxHeight:n.listHeight}}),Se=(0,s.computed)(()=>n.id??_),Ce=(0,s.computed)(()=>v),we=(0,s.computed)(()=>y.value?.fieldElementRef??null),Te=(0,s.computed)(()=>({labels:se.value,values:I.value,displayText:V.value,disabled:n.disabled||n.readonly,removeValue:q})),Ee=(0,s.computed)(()=>{if(!n.disabled&&(n.readonly&&!W.value||!W.value))return 0}),De=(0,s.computed)(()=>({"s-ui-select--disabled":n.disabled,"s-ui-select--readonly":n.readonly,"s-ui-select--multiple":K.value,"s-ui-select--open":T.value})),Oe=()=>{if(G.value){S.value?.focus();return}x.value?.focus()},ke=async()=>{await(0,s.nextTick)(),S.value?.focus()},Ae=async()=>{await(0,s.nextTick)(),await C.value?.focusNavigation()},X=async()=>{if(!(n.disabled||n.readonly)&&!T.value){if(T.value=!0,h(`open`),G.value){await ke();return}if(W.value){await(0,s.nextTick)(),x.value?.focus();return}await Ae()}},je=async()=>{n.disabled||n.readonly||T.value||await X()};(0,s.watch)(m,async e=>{W.value&&(n.disabled||n.readonly||e&&(T.value||await X()))});let Z=()=>{T.value&&(T.value=!1,w.value=void 0,h(`close`))},Q=()=>{!n.closeOnSelect||K.value||Z()};(0,s.watch)(f,(e,t)=>{!n.closeOnSelect||K.value||!T.value||!e||e===t||Z()});let Me=e=>{T.value&&e.target instanceof Element&&e.target.closest(`.s-ui-list-item`)&&Q()},Ne=async e=>{e.key!==`Enter`&&e.key!==` `&&e.key!==`Spacebar`||T.value&&(await(0,s.nextTick)(),Q())},$=async()=>{if(T.value){Z();return}await X()},Pe=async e=>{if(!(n.disabled||n.readonly)&&e.target instanceof HTMLElement){if(e.target.closest(`.s-ui-select__search-input`)){T.value||await X();return}await $()}},Fe=async e=>e.key!==`ArrowDown`&&e.key!==`ArrowUp`?!1:(e.preventDefault(),e.stopPropagation(),T.value||await X(),await Ae(),await C.value?.handleKeyboardNavigation(e),!0),Ie=e=>{let t=ue(e);if(t){if(K.value){I.value.some(t=>J(t)===e)?q(t):R.value=[...I.value.map(e=>J(e)),e];return}R.value=e,Q()}},Le=async e=>{if(!(n.disabled||n.readonly)&&!await Fe(e)){if(e.key===`Escape`){e.preventDefault(),Z();return}if(e.key===`Enter`||e.key===` `){if(e.preventDefault(),T.value&&w.value){Ie(w.value);return}await $()}}},Re=async e=>{if(e.key===`Escape`){e.preventDefault(),Z();return}await Fe(e)},ze=Re,Be=e=>{n.disabled||(P.value||h(`focus`,e),P.value=!0)},Ve=e=>{if(!(e.currentTarget instanceof HTMLElement))return;let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||(P.value=!1,h(`blur`,e))},He=()=>{le(),h(`clear`)};return u({open:X,close:Z,toggle:$,focusSearchInput:Oe}),(l,u)=>((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{class:(0,s.normalizeClass)([`s-ui-select`,De.value])},[(0,s.createVNode)((0,s.unref)(i.t),{modelValue:T.value,"onUpdate:modelValue":u[4]||=e=>T.value=e,reference:we.value,disabled:n.disabled,"match-reference-width":!0,"fit-viewport":!0,"content-id":Ce.value,"dismiss-on-click-outside":!0,"dismiss-on-escape":!0},{content:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`div`,{class:(0,s.normalizeClass)([`s-ui-select__panel`,me.value])},[(0,s.unref)(G)?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,D,[(0,s.createVNode)((0,s.unref)(r.t),{ref_key:`panelSearchInputElementRef`,ref:S,modelValue:m.value,"onUpdate:modelValue":u[0]||=e=>m.value=e,placeholder:n.searchPlaceholder,disabled:n.disabled,clearable:!1,"icon-left":`search`,onClick:u[1]||=(0,s.withModifiers)(()=>{},[`stop`]),onKeydown:(0,s.unref)(ze)},null,8,[`modelValue`,`placeholder`,`disabled`,`onKeydown`])])):(0,s.createCommentVNode)(``,!0),(0,s.createElementVNode)(`div`,{class:`s-ui-select__panel-body`,style:(0,s.normalizeStyle)(xe.value),onClick:Me,onKeydown:Ne},[(0,s.unref)(L).length>0?((0,s.openBlock)(),(0,s.createBlock)((0,s.unref)(a.t),{key:0,ref_key:`listElementRef`,ref:C,modelValue:w.value,"onUpdate:modelValue":u[2]||=e=>w.value=e,selected:(0,s.unref)(R),"onUpdate:selected":u[3]||=e=>(0,s.isRef)(R)?R.value=e:null,items:(0,s.unref)(L),"item-key":F.value,"title-key":n.itemTitle,"subtitle-key":n.itemSubtitle,"icon-left-key":n.itemIconLeft,"disabled-key":n.itemDisabled,"selection-mode":(0,s.unref)(oe),mandatory:!n.multiple,height:pe.value,"max-height":he.value,virtual:Y.value,"item-props":ve},(0,s.createSlots)({_:2},[(0,s.unref)(g).option?{name:`item`,fn:(0,s.withCtx)(e=>[(0,s.renderSlot)(l.$slots,`option`,(0,s.normalizeProps)((0,s.guardReactiveProps)(e)))]),key:`0`}:n.closableOptions?{name:`item`,fn:(0,s.withCtx)(n=>[(0,s.createVNode)((0,s.unref)(o.t),(0,s.normalizeProps)((0,s.guardReactiveProps)(ye(n))),(0,s.createSlots)({_:2},[_e(n.key)?{name:`right`,fn:(0,s.withCtx)(r=>[(0,s.createVNode)((0,s.unref)(t.t),{appearance:(0,s.unref)(e.t).BARE,variant:(0,s.unref)(e.r).NEUTRAL,size:(0,s.unref)(e.n).SMALL,icon:`closeMini`,disabled:r.disabled||r.readonly,tabindex:-1,onClick:(0,s.withModifiers)(e=>be(n.key),[`stop`])},null,8,[`appearance`,`variant`,`size`,`disabled`,`onClick`])]),key:`0`}:void 0]),1040)]),key:`1`}:void 0]),1032,[`modelValue`,`selected`,`items`,`item-key`,`title-key`,`subtitle-key`,`icon-left-key`,`disabled-key`,`selection-mode`,`mandatory`,`height`,`max-height`,`virtual`])):((0,s.openBlock)(),(0,s.createElementBlock)(`div`,O,[(0,s.renderSlot)(l.$slots,`empty`,{},()=>[u[8]||=(0,s.createTextVNode)(`No options`,-1)])]))],36),(0,s.unref)(g)[`panel-footer`]?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,k,[(0,s.renderSlot)(l.$slots,`panel-footer`)])):(0,s.createCommentVNode)(``,!0)],2)]),_:3},8,[`modelValue`,`reference`,`disabled`,`content-id`]),(0,s.createVNode)((0,s.unref)(r.t),{ref_key:`triggerInputRef`,ref:y,modelValue:b.value,"onUpdate:modelValue":u[7]||=e=>b.value=e,label:n.label,"label-props":n.labelProps,placeholder:n.placeholder,"help-messages":n.helpMessages,"error-messages":n.errorMessages,bordered:n.bordered,disabled:n.disabled,readonly:n.readonly,clearable:n.clearable,"has-value":(0,s.unref)(z),focused:P.value||T.value,"icon-left":n.iconLeft,customize:n.customize,name:n.name,id:Se.value,onClear:He,onFocus:Be,onBlur:Ve},(0,s.createSlots)({control:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`div`,{id:Se.value,class:(0,s.normalizeClass)([`s-ui-select__control s-ui-typography-body-14-regular`,{"s-ui-select__control--multiple":(0,s.unref)(K),"s-ui-select__control--empty":(0,s.unref)(K)&&!(0,s.unref)(z)&&!(0,s.unref)(U),"s-ui-select__control--with-value-suffix":de.value&&!(0,s.unref)(K)&&!(0,s.unref)(U)&&!(0,s.unref)(H)}]),role:`combobox`,"aria-expanded":T.value,"aria-controls":Ce.value,"aria-haspopup":`listbox`,"aria-disabled":n.disabled?!0:void 0,"aria-readonly":n.readonly?!0:void 0,"aria-autocomplete":(0,s.unref)(ce)?`list`:void 0,tabindex:Ee.value,onClick:Pe,onKeydown:Le},[(0,s.unref)(K)?(0,s.renderSlot)(l.$slots,`selection`,(0,s.normalizeProps)((0,s.mergeProps)({key:0},Te.value)),()=>[(0,s.unref)(V)?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,ee,(0,s.toDisplayString)((0,s.unref)(V)),1)):(0,s.unref)(H)&&!(0,s.unref)(U)?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,te,(0,s.toDisplayString)(n.placeholder),1)):(0,s.createCommentVNode)(``,!0)]):(0,s.unref)(H)&&!(0,s.unref)(U)?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,ne,(0,s.toDisplayString)(n.placeholder),1)):(0,s.unref)(U)?(0,s.createCommentVNode)(``,!0):((0,s.openBlock)(),(0,s.createElementBlock)(`span`,j,(0,s.toDisplayString)((0,s.unref)(B)),1)),de.value&&!(0,s.unref)(K)&&!(0,s.unref)(U)&&!(0,s.unref)(H)?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,M,[(0,s.renderSlot)(l.$slots,`value-suffix`,(0,s.normalizeProps)((0,s.guardReactiveProps)(fe.value)))])):(0,s.createCommentVNode)(``,!0),(0,s.unref)(U)?(0,s.withDirectives)(((0,s.openBlock)(),(0,s.createElementBlock)(`input`,{key:4,ref_key:`searchInputElementRef`,ref:x,"onUpdate:modelValue":u[5]||=e=>m.value=e,class:`s-ui-select__search-input`,type:`text`,name:n.name,placeholder:n.placeholder,disabled:n.disabled,readonly:n.readonly,autocomplete:`off`,onClick:u[6]||=(0,s.withModifiers)(()=>{},[`stop`]),onFocus:je,onKeydown:Re},null,40,N)),[[s.vModelText,m.value]]):(0,s.createCommentVNode)(``,!0)],42,A)]),action:(0,s.withCtx)(()=>[(0,s.createVNode)((0,s.unref)(c.SIcon),{name:`chevronMiniDown`,size:re,class:`s-ui-select__chevron`})]),_:2},[(0,s.unref)(g).label?{name:`label`,fn:(0,s.withCtx)(()=>[(0,s.renderSlot)(l.$slots,`label`)]),key:`0`}:void 0,(0,s.unref)(g).prefix?{name:`prefix`,fn:(0,s.withCtx)(e=>[(0,s.renderSlot)(l.$slots,`prefix`,(0,s.normalizeProps)((0,s.guardReactiveProps)(e)))]),key:`1`}:void 0,(0,s.unref)(g).prepend?{name:`prepend`,fn:(0,s.withCtx)(e=>[(0,s.renderSlot)(l.$slots,`prepend`,(0,s.normalizeProps)((0,s.guardReactiveProps)(e)))]),key:`2`}:void 0,(0,s.unref)(g).message?{name:`message`,fn:(0,s.withCtx)(()=>[(0,s.renderSlot)(l.$slots,`message`)]),key:`3`}:void 0]),1032,[`modelValue`,`label`,`label-props`,`placeholder`,`help-messages`,`error-messages`,`bordered`,`disabled`,`readonly`,`clearable`,`has-value`,`focused`,`icon-left`,`customize`,`name`,`id`])],2))}});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return P}});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { n as e, r as t, t as n } from "./SButton.types-CpdHQtyx.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { n as a, t as o } from "./SInput-
|
|
2
|
+
import { t as r } from "./SButton-DnU_XZ1C.js";
|
|
3
|
+
import { n as i } from "./useSelectionGroup-cKj38lEN.js";
|
|
4
|
+
import { n as a, t as o } from "./SInput-iNlzBX5m.js";
|
|
5
5
|
import { t as s } from "./SDropdown-Cv729__Y.js";
|
|
6
|
-
import { i as c, n as l, r as u, t as d } from "./SList-
|
|
7
|
-
import { t as f } from "./SListItem-
|
|
6
|
+
import { i as c, n as l, r as u, t as d } from "./SList-C_S9ej45.js";
|
|
7
|
+
import { t as f } from "./SListItem-BD7wvCNe.js";
|
|
8
8
|
import { computed as p, createBlock as ee, createCommentVNode as m, createElementBlock as h, createElementVNode as g, createSlots as _, createTextVNode as te, createVNode as v, defineComponent as y, guardReactiveProps as b, isRef as ne, mergeModels as x, mergeProps as re, nextTick as S, normalizeClass as C, normalizeProps as w, normalizeStyle as ie, openBlock as T, ref as E, renderSlot as D, toDisplayString as O, toValue as k, unref as A, useId as ae, useModel as oe, useSlots as se, useTemplateRef as ce, vModelText as le, watch as j, withCtx as M, withDirectives as ue, withModifiers as de } from "vue";
|
|
9
9
|
import { SIcon as fe } from "@shtabapp/ui-kit-primitives";
|
|
10
10
|
//#region src/components/SSelect/utils/buildSelectListItemProps.ts
|
|
@@ -60,14 +60,14 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
60
60
|
}, K = (e, t, n) => t.flatMap((t) => {
|
|
61
61
|
let r = P(t), i = e.find((e) => P(N(e, n) ?? "") === r);
|
|
62
62
|
return i ? [i] : [];
|
|
63
|
-
}), ge = ({ modelValue: e, options: t, itemFields: n, multiple:
|
|
64
|
-
let d = p(() => k(
|
|
63
|
+
}), ge = ({ modelValue: e, options: t, itemFields: n, multiple: r, returnObject: a, searchable: o, filterOption: s, isDropdownOpen: l, searchQuery: u }) => {
|
|
64
|
+
let d = p(() => k(r)), f = p(() => k(a)), ee = p(() => k(o) === z.INPUT), m = p(() => k(o) === z.CONTENT), h = p(() => !!k(o)), g = p(() => {
|
|
65
65
|
let t = k(n);
|
|
66
66
|
return G(e.value, f.value, t.itemValue);
|
|
67
67
|
}), _ = p(() => {
|
|
68
68
|
let e = k(t), r = k(n);
|
|
69
69
|
return V(e, h.value ? u.value : "", r, k(s));
|
|
70
|
-
}), te = p(() => d.value ?
|
|
70
|
+
}), te = p(() => d.value ? i.MULTIPLE : i.SINGLE), v = (t, n, r) => {
|
|
71
71
|
if (f.value) {
|
|
72
72
|
e.value = K(n, t, r);
|
|
73
73
|
return;
|
|
@@ -255,33 +255,33 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
255
255
|
"open",
|
|
256
256
|
"close"
|
|
257
257
|
], ["update:modelValue", "update:searchQuery"]),
|
|
258
|
-
setup(
|
|
259
|
-
let l = oe(
|
|
260
|
-
itemValue:
|
|
261
|
-
itemTitle:
|
|
262
|
-
itemSubtitle:
|
|
258
|
+
setup(i, { expose: a, emit: c }) {
|
|
259
|
+
let l = oe(i, "modelValue"), u = oe(i, "searchQuery"), y = c, x = se(), k = ae(), me = ae(), N = ce("triggerInputRef"), P = E(""), I = ce("searchInputElementRef"), L = ce("panelSearchInputElementRef"), R = ce("listElementRef"), z = E(), B = E(!1), V = E(!1), H = p(() => i.itemId ?? i.itemValue), U = p(() => ({
|
|
260
|
+
itemValue: i.itemValue,
|
|
261
|
+
itemTitle: i.itemTitle,
|
|
262
|
+
itemSubtitle: i.itemSubtitle,
|
|
263
263
|
itemId: H.value
|
|
264
264
|
})), { selectedValues: W, filteredOptions: G, listSelectionMode: he, listSelectedModel: K, hasSelectedValues: ke, singleDisplayLabel: Ae, multipleDisplayLabels: je, multipleDisplayText: Me, showPlaceholder: q, showInputSearchField: J, isSearchableMode: Ne, isSearchableInputMode: Y, isSearchableContentMode: X, isMultipleMode: Z, clearSelection: Pe, removeSelectedValue: Fe, resolveValueFromListKey: Ie, formatSelectListKey: Le } = ge({
|
|
265
265
|
modelValue: l,
|
|
266
|
-
options: () =>
|
|
266
|
+
options: () => i.options,
|
|
267
267
|
itemFields: () => U.value,
|
|
268
|
-
multiple: () =>
|
|
269
|
-
returnObject: () =>
|
|
270
|
-
searchable: () =>
|
|
271
|
-
filterOption: () =>
|
|
268
|
+
multiple: () => i.multiple,
|
|
269
|
+
returnObject: () => i.returnObject,
|
|
270
|
+
searchable: () => i.searchable,
|
|
271
|
+
filterOption: () => i.filterOption,
|
|
272
272
|
isDropdownOpen: B,
|
|
273
273
|
searchQuery: u
|
|
274
274
|
}), Re = p(() => !!x["value-suffix"]), ze = p(() => ({
|
|
275
|
-
disabled:
|
|
275
|
+
disabled: i.disabled,
|
|
276
276
|
displayLabel: Ae.value
|
|
277
|
-
})), Be = p(() => G.value.length > Oe), Ve = p(() => X.value || Be.value ?
|
|
278
|
-
if (!(X.value || Be.value)) return
|
|
277
|
+
})), Be = p(() => G.value.length > Oe), Ve = p(() => X.value || Be.value ? i.listHeight : "auto"), He = p(() => ({ "s-ui-select__panel--searchable-content": X.value })), Ue = p(() => {
|
|
278
|
+
if (!(X.value || Be.value)) return i.listHeight;
|
|
279
279
|
}), We = p(() => W.value.map((e) => Le(e))), Ge = (e) => We.value.includes(e), Ke = () => ({ tiny: !0 }), qe = (e) => pe({
|
|
280
280
|
listItemScope: e,
|
|
281
|
-
itemTitle:
|
|
282
|
-
itemSubtitle:
|
|
283
|
-
itemDisabled:
|
|
284
|
-
itemIconLeft:
|
|
281
|
+
itemTitle: i.itemTitle,
|
|
282
|
+
itemSubtitle: i.itemSubtitle,
|
|
283
|
+
itemDisabled: i.itemDisabled,
|
|
284
|
+
itemIconLeft: i.itemIconLeft,
|
|
285
285
|
listActiveKey: z.value,
|
|
286
286
|
isOptionSelected: Ge(e.key)
|
|
287
287
|
}), Je = (e) => {
|
|
@@ -294,18 +294,18 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
294
294
|
l.value = void 0;
|
|
295
295
|
}
|
|
296
296
|
}, Ye = p(() => {
|
|
297
|
-
if (X.value) return typeof
|
|
298
|
-
}), Xe = p(() =>
|
|
297
|
+
if (X.value) return typeof i.listHeight == "number" ? { maxHeight: `${i.listHeight}px` } : { maxHeight: i.listHeight };
|
|
298
|
+
}), Xe = p(() => i.id ?? k), Ze = p(() => me), Qe = p(() => N.value?.fieldElementRef ?? null), $e = p(() => ({
|
|
299
299
|
labels: je.value,
|
|
300
300
|
values: W.value,
|
|
301
301
|
displayText: Me.value,
|
|
302
|
-
disabled:
|
|
302
|
+
disabled: i.disabled || i.readonly,
|
|
303
303
|
removeValue: Fe
|
|
304
304
|
})), et = p(() => {
|
|
305
|
-
if (!
|
|
305
|
+
if (!i.disabled && (i.readonly && !Y.value || !Y.value)) return 0;
|
|
306
306
|
}), tt = p(() => ({
|
|
307
|
-
"s-ui-select--disabled":
|
|
308
|
-
"s-ui-select--readonly":
|
|
307
|
+
"s-ui-select--disabled": i.disabled,
|
|
308
|
+
"s-ui-select--readonly": i.readonly,
|
|
309
309
|
"s-ui-select--multiple": Z.value,
|
|
310
310
|
"s-ui-select--open": B.value
|
|
311
311
|
})), nt = () => {
|
|
@@ -319,7 +319,7 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
319
319
|
}, it = async () => {
|
|
320
320
|
await S(), await R.value?.focusNavigation();
|
|
321
321
|
}, Q = async () => {
|
|
322
|
-
if (!(
|
|
322
|
+
if (!(i.disabled || i.readonly) && !B.value) {
|
|
323
323
|
if (B.value = !0, y("open"), X.value) {
|
|
324
324
|
await rt();
|
|
325
325
|
return;
|
|
@@ -331,18 +331,18 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
331
331
|
await it();
|
|
332
332
|
}
|
|
333
333
|
}, at = async () => {
|
|
334
|
-
|
|
334
|
+
i.disabled || i.readonly || B.value || await Q();
|
|
335
335
|
};
|
|
336
336
|
j(u, async (e) => {
|
|
337
|
-
Y.value && (
|
|
337
|
+
Y.value && (i.disabled || i.readonly || e && (B.value || await Q()));
|
|
338
338
|
});
|
|
339
339
|
let $ = () => {
|
|
340
340
|
B.value && (B.value = !1, z.value = void 0, y("close"));
|
|
341
341
|
}, ot = () => {
|
|
342
|
-
!
|
|
342
|
+
!i.closeOnSelect || Z.value || $();
|
|
343
343
|
};
|
|
344
344
|
j(l, (e, t) => {
|
|
345
|
-
!
|
|
345
|
+
!i.closeOnSelect || Z.value || !B.value || !e || e === t || $();
|
|
346
346
|
});
|
|
347
347
|
let st = (e) => {
|
|
348
348
|
B.value && e.target instanceof Element && e.target.closest(".s-ui-list-item") && ot();
|
|
@@ -355,7 +355,7 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
355
355
|
}
|
|
356
356
|
await Q();
|
|
357
357
|
}, ut = async (e) => {
|
|
358
|
-
if (!(
|
|
358
|
+
if (!(i.disabled || i.readonly) && e.target instanceof HTMLElement) {
|
|
359
359
|
if (e.target.closest(".s-ui-select__search-input")) {
|
|
360
360
|
B.value || await Q();
|
|
361
361
|
return;
|
|
@@ -372,7 +372,7 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
372
372
|
K.value = e, ot();
|
|
373
373
|
}
|
|
374
374
|
}, pt = async (e) => {
|
|
375
|
-
if (!(
|
|
375
|
+
if (!(i.disabled || i.readonly) && !await dt(e)) {
|
|
376
376
|
if (e.key === "Escape") {
|
|
377
377
|
e.preventDefault(), $();
|
|
378
378
|
return;
|
|
@@ -392,7 +392,7 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
392
392
|
}
|
|
393
393
|
await dt(e);
|
|
394
394
|
}, ht = mt, gt = (e) => {
|
|
395
|
-
|
|
395
|
+
i.disabled || (V.value || y("focus", e), V.value = !0);
|
|
396
396
|
}, _t = (e) => {
|
|
397
397
|
if (!(e.currentTarget instanceof HTMLElement)) return;
|
|
398
398
|
let t = e.relatedTarget;
|
|
@@ -409,7 +409,7 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
409
409
|
modelValue: B.value,
|
|
410
410
|
"onUpdate:modelValue": c[4] ||= (e) => B.value = e,
|
|
411
411
|
reference: Qe.value,
|
|
412
|
-
disabled:
|
|
412
|
+
disabled: i.disabled,
|
|
413
413
|
"match-reference-width": !0,
|
|
414
414
|
"fit-viewport": !0,
|
|
415
415
|
"content-id": Ze.value,
|
|
@@ -422,8 +422,8 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
422
422
|
ref: L,
|
|
423
423
|
modelValue: u.value,
|
|
424
424
|
"onUpdate:modelValue": c[0] ||= (e) => u.value = e,
|
|
425
|
-
placeholder:
|
|
426
|
-
disabled:
|
|
425
|
+
placeholder: i.searchPlaceholder,
|
|
426
|
+
disabled: i.disabled,
|
|
427
427
|
clearable: !1,
|
|
428
428
|
"icon-left": "search",
|
|
429
429
|
onClick: c[1] ||= de(() => {}, ["stop"]),
|
|
@@ -449,12 +449,12 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
449
449
|
"onUpdate:selected": c[3] ||= (e) => ne(K) ? K.value = e : null,
|
|
450
450
|
items: A(G),
|
|
451
451
|
"item-key": H.value,
|
|
452
|
-
"title-key":
|
|
453
|
-
"subtitle-key":
|
|
454
|
-
"icon-left-key":
|
|
455
|
-
"disabled-key":
|
|
452
|
+
"title-key": i.itemTitle,
|
|
453
|
+
"subtitle-key": i.itemSubtitle,
|
|
454
|
+
"icon-left-key": i.itemIconLeft,
|
|
455
|
+
"disabled-key": i.itemDisabled,
|
|
456
456
|
"selection-mode": A(he),
|
|
457
|
-
mandatory: !
|
|
457
|
+
mandatory: !i.multiple,
|
|
458
458
|
height: Ve.value,
|
|
459
459
|
"max-height": Ue.value,
|
|
460
460
|
virtual: Be.value,
|
|
@@ -463,18 +463,18 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
463
463
|
name: "item",
|
|
464
464
|
fn: M((e) => [D(a.$slots, "option", w(b(e)))]),
|
|
465
465
|
key: "0"
|
|
466
|
-
} :
|
|
466
|
+
} : i.closableOptions ? {
|
|
467
467
|
name: "item",
|
|
468
|
-
fn: M((
|
|
468
|
+
fn: M((i) => [v(A(f), w(b(qe(i))), _({ _: 2 }, [Ge(i.key) ? {
|
|
469
469
|
name: "right",
|
|
470
|
-
fn: M((a) => [v(A(
|
|
470
|
+
fn: M((a) => [v(A(r), {
|
|
471
471
|
appearance: A(n).BARE,
|
|
472
472
|
variant: A(t).NEUTRAL,
|
|
473
473
|
size: A(e).SMALL,
|
|
474
474
|
icon: "closeMini",
|
|
475
475
|
disabled: a.disabled || a.readonly,
|
|
476
476
|
tabindex: -1,
|
|
477
|
-
onClick: de((e) => Je(
|
|
477
|
+
onClick: de((e) => Je(i.key), ["stop"])
|
|
478
478
|
}, null, 8, [
|
|
479
479
|
"appearance",
|
|
480
480
|
"variant",
|
|
@@ -513,20 +513,20 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
513
513
|
ref: N,
|
|
514
514
|
modelValue: P.value,
|
|
515
515
|
"onUpdate:modelValue": c[7] ||= (e) => P.value = e,
|
|
516
|
-
label:
|
|
517
|
-
"label-props":
|
|
518
|
-
placeholder:
|
|
519
|
-
"help-messages":
|
|
520
|
-
"error-messages":
|
|
521
|
-
bordered:
|
|
522
|
-
disabled:
|
|
523
|
-
readonly:
|
|
524
|
-
clearable:
|
|
516
|
+
label: i.label,
|
|
517
|
+
"label-props": i.labelProps,
|
|
518
|
+
placeholder: i.placeholder,
|
|
519
|
+
"help-messages": i.helpMessages,
|
|
520
|
+
"error-messages": i.errorMessages,
|
|
521
|
+
bordered: i.bordered,
|
|
522
|
+
disabled: i.disabled,
|
|
523
|
+
readonly: i.readonly,
|
|
524
|
+
clearable: i.clearable,
|
|
525
525
|
"has-value": A(ke),
|
|
526
526
|
focused: V.value || B.value,
|
|
527
|
-
"icon-left":
|
|
528
|
-
customize:
|
|
529
|
-
name:
|
|
527
|
+
"icon-left": i.iconLeft,
|
|
528
|
+
customize: i.customize,
|
|
529
|
+
name: i.name,
|
|
530
530
|
id: Xe.value,
|
|
531
531
|
onClear: vt,
|
|
532
532
|
onFocus: gt,
|
|
@@ -543,14 +543,14 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
543
543
|
"aria-expanded": B.value,
|
|
544
544
|
"aria-controls": Ze.value,
|
|
545
545
|
"aria-haspopup": "listbox",
|
|
546
|
-
"aria-disabled":
|
|
547
|
-
"aria-readonly":
|
|
546
|
+
"aria-disabled": i.disabled ? !0 : void 0,
|
|
547
|
+
"aria-readonly": i.readonly ? !0 : void 0,
|
|
548
548
|
"aria-autocomplete": A(Ne) ? "list" : void 0,
|
|
549
549
|
tabindex: et.value,
|
|
550
550
|
onClick: ut,
|
|
551
551
|
onKeydown: pt
|
|
552
552
|
}, [
|
|
553
|
-
A(Z) ? D(a.$slots, "selection", w(re({ key: 0 }, $e.value)), () => [A(Me) ? (T(), h("span", xe, O(A(Me)), 1)) : A(q) && !A(J) ? (T(), h("span", Se, O(
|
|
553
|
+
A(Z) ? D(a.$slots, "selection", w(re({ key: 0 }, $e.value)), () => [A(Me) ? (T(), h("span", xe, O(A(Me)), 1)) : A(q) && !A(J) ? (T(), h("span", Se, O(i.placeholder), 1)) : m("", !0)]) : A(q) && !A(J) ? (T(), h("span", Ce, O(i.placeholder), 1)) : A(J) ? m("", !0) : (T(), h("span", we, O(A(Ae)), 1)),
|
|
554
554
|
Re.value && !A(Z) && !A(J) && !A(q) ? (T(), h("div", Te, [D(a.$slots, "value-suffix", w(b(ze.value)))])) : m("", !0),
|
|
555
555
|
A(J) ? ue((T(), h("input", {
|
|
556
556
|
key: 4,
|
|
@@ -559,10 +559,10 @@ var pe = ({ listItemScope: e, itemTitle: t, itemSubtitle: n, itemDisabled: r, it
|
|
|
559
559
|
"onUpdate:modelValue": c[5] ||= (e) => u.value = e,
|
|
560
560
|
class: "s-ui-select__search-input",
|
|
561
561
|
type: "text",
|
|
562
|
-
name:
|
|
563
|
-
placeholder:
|
|
564
|
-
disabled:
|
|
565
|
-
readonly:
|
|
562
|
+
name: i.name,
|
|
563
|
+
placeholder: i.placeholder,
|
|
564
|
+
disabled: i.disabled,
|
|
565
|
+
readonly: i.readonly,
|
|
566
566
|
autocomplete: "off",
|
|
567
567
|
onClick: c[6] ||= de(() => {}, ["stop"]),
|
|
568
568
|
onFocus: at,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./SButton.types-UKroD-ev.cjs"),t=require("./
|
|
1
|
+
const e=require("./SButton.types-UKroD-ev.cjs"),t=require("./SButton-C-z_q5CG.cjs"),n=require("./useSelectionGroup-TaektE-I.cjs"),r=require("./STab-C8RXx0lW.cjs");let i=require("vue"),a=require("@vueuse/core");var o=`.s-ui-tab[aria-selected="true"]`,s=({trackEl:e,selectedValue:t,enabled:n})=>{let r=(0,i.ref)({offsetX:0,width:0,isBilling:!1}),s=()=>{if(!(0,i.toValue)(n)){r.value={offsetX:0,width:0,isBilling:!1};return}let t=(0,i.toValue)(e);if(!t){r.value={offsetX:0,width:0,isBilling:!1};return}let a=t.querySelector(o);if(!(a instanceof HTMLElement)){r.value={offsetX:0,width:0,isBilling:!1};return}let s=t.getBoundingClientRect(),c=a.getBoundingClientRect();r.value={offsetX:c.left-s.left,width:c.width,isBilling:a.classList.contains(`s-ui-tab--billing`)}};return(0,a.useResizeObserver)(e,()=>{s()}),(0,i.watch)(()=>(0,i.toValue)(t),async()=>{await(0,i.nextTick)(),s()},{immediate:!0}),{indicatorStyle:(0,i.computed)(()=>{let{offsetX:e,width:t}=r.value;return t?{opacity:`1`,width:`${t}px`,transform:`translateX(${e}px)`}:{opacity:`0`}}),indicatorIsBilling:(0,i.computed)(()=>r.value.isBilling)}},c=[`aria-disabled`],l={class:`s-ui-tabs__body`},u=(0,i.defineComponent)({__name:`STabs`,props:(0,i.mergeModels)({appearance:{default:()=>r.n.PRIMARY},size:{default:()=>r.r.LARGE},disabled:{type:Boolean,default:!1},mandatory:{type:Boolean,default:!0},addable:{type:Boolean,default:!1},loop:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:(0,i.mergeModels)([`add`],[`update:modelValue`]),setup(o,{emit:u}){let d=(0,i.useModel)(o,`modelValue`),f=u,p=(0,i.useTemplateRef)(`tabsBodyRef`),m=(0,i.useTemplateRef)(`tabsTrackRef`),{arrivedState:h}=(0,a.useScroll)(p,{throttle:100,offset:{right:1}}),g=n.o({modelValue:()=>d.value,onUpdateModelValue:e=>{n.i(e)&&(d.value=e)},mode:n.n.SINGLE,mandatory:()=>o.mandatory,orientation:n.r.HORIZONTAL,loop:()=>o.loop});(0,i.provide)(r.i,{mode:()=>n.n.SINGLE,isSelected:g.isSelected,selectItem:g.toggle,registerItem:g.registerItem,getItemTabIndex:g.getItemTabIndex,getGroupTabIndex:g.getGroupTabIndex,handleItemKeydown:g.handleItemKeydown,appearance:()=>o.appearance,size:()=>o.size,disabled:()=>o.disabled});let _=(0,i.computed)(()=>o.appearance===r.n.PRIMARY),{indicatorStyle:v,indicatorIsBilling:y}=s({trackEl:()=>m.value,selectedValue:()=>d.value,enabled:_}),b=(0,i.computed)(()=>o.addable&&!h.right),x=(0,i.computed)(()=>[`s-ui-tabs--appearance-${o.appearance}`,`s-ui-tabs--size-${o.size}`,o.addable?`s-ui-tabs--addable`:void 0]),S=()=>{o.disabled||f(`add`)};return(n,r)=>((0,i.openBlock)(),(0,i.createElementBlock)(`div`,{class:(0,i.normalizeClass)([`s-ui-tabs`,x.value]),role:`tablist`,"aria-orientation":`horizontal`,"aria-disabled":o.disabled?!0:void 0},[(0,i.createElementVNode)(`div`,l,[(0,i.createElementVNode)(`div`,{ref_key:`tabsBodyRef`,ref:p,class:`s-ui-tabs__scroll`},[(0,i.createElementVNode)(`div`,{ref_key:`tabsTrackRef`,ref:m,class:`s-ui-tabs__track`},[_.value?((0,i.openBlock)(),(0,i.createElementBlock)(`span`,{key:0,class:(0,i.normalizeClass)([`s-ui-tabs__indicator`,{"s-ui-tabs__indicator--billing":(0,i.unref)(y)}]),style:(0,i.normalizeStyle)((0,i.unref)(v)),"aria-hidden":`true`},null,6)):(0,i.createCommentVNode)(``,!0),(0,i.renderSlot)(n.$slots,`default`)],512)],512),o.addable?((0,i.openBlock)(),(0,i.createElementBlock)(`span`,{key:0,class:(0,i.normalizeClass)([`s-ui-tabs__fade`,{"s-ui-tabs__fade--visible":b.value}]),"aria-hidden":`true`},null,2)):(0,i.createCommentVNode)(``,!0)]),o.addable?(0,i.renderSlot)(n.$slots,`add`,{key:0},()=>[(0,i.createVNode)((0,i.unref)(t.t),{class:`s-ui-tabs__add`,icon:`plus`,appearance:(0,i.unref)(e.t).BARE,variant:(0,i.unref)(e.r).NEUTRAL,size:(0,i.unref)(e.n).SMALL,disabled:o.disabled,onClick:S},null,8,[`appearance`,`variant`,`size`,`disabled`])]):(0,i.createCommentVNode)(``,!0)],10,c))}});Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return u}});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as e, r as t, t as n } from "./SButton.types-CpdHQtyx.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { t as r } from "./SButton-DnU_XZ1C.js";
|
|
3
|
+
import { i, n as a, o, r as s } from "./useSelectionGroup-cKj38lEN.js";
|
|
4
4
|
import { i as c, n as l, r as u } from "./STab-DXGKWtFI.js";
|
|
5
5
|
import { computed as d, createCommentVNode as f, createElementBlock as p, createElementVNode as m, createVNode as h, defineComponent as g, mergeModels as _, nextTick as v, normalizeClass as y, normalizeStyle as b, openBlock as x, provide as S, ref as C, renderSlot as w, toValue as T, unref as E, useModel as D, useTemplateRef as O, watch as k } from "vue";
|
|
6
6
|
import { useResizeObserver as A, useScroll as j } from "@vueuse/core";
|
|
@@ -89,18 +89,18 @@ var M = ".s-ui-tab[aria-selected=\"true\"]", N = ({ trackEl: e, selectedValue: t
|
|
|
89
89
|
let _ = D(u, "modelValue"), v = g, C = O("tabsBodyRef"), T = O("tabsTrackRef"), { arrivedState: k } = j(C, {
|
|
90
90
|
throttle: 100,
|
|
91
91
|
offset: { right: 1 }
|
|
92
|
-
}), A =
|
|
92
|
+
}), A = o({
|
|
93
93
|
modelValue: () => _.value,
|
|
94
94
|
onUpdateModelValue: (e) => {
|
|
95
|
-
|
|
95
|
+
i(e) && (_.value = e);
|
|
96
96
|
},
|
|
97
|
-
mode:
|
|
97
|
+
mode: a.SINGLE,
|
|
98
98
|
mandatory: () => u.mandatory,
|
|
99
|
-
orientation:
|
|
99
|
+
orientation: s.HORIZONTAL,
|
|
100
100
|
loop: () => u.loop
|
|
101
101
|
});
|
|
102
102
|
S(c, {
|
|
103
|
-
mode: () =>
|
|
103
|
+
mode: () => a.SINGLE,
|
|
104
104
|
isSelected: A.isSelected,
|
|
105
105
|
selectItem: A.toggle,
|
|
106
106
|
registerItem: A.registerItem,
|
|
@@ -122,7 +122,7 @@ var M = ".s-ui-tab[aria-selected=\"true\"]", N = ({ trackEl: e, selectedValue: t
|
|
|
122
122
|
]), B = () => {
|
|
123
123
|
u.disabled || v("add");
|
|
124
124
|
};
|
|
125
|
-
return (
|
|
125
|
+
return (i, a) => (x(), p("div", {
|
|
126
126
|
class: y(["s-ui-tabs", z.value]),
|
|
127
127
|
role: "tablist",
|
|
128
128
|
"aria-orientation": "horizontal",
|
|
@@ -140,11 +140,11 @@ var M = ".s-ui-tab[aria-selected=\"true\"]", N = ({ trackEl: e, selectedValue: t
|
|
|
140
140
|
class: y(["s-ui-tabs__indicator", { "s-ui-tabs__indicator--billing": E(L) }]),
|
|
141
141
|
style: b(E(I)),
|
|
142
142
|
"aria-hidden": "true"
|
|
143
|
-
}, null, 6)) : f("", !0), w(
|
|
143
|
+
}, null, 6)) : f("", !0), w(i.$slots, "default")], 512)], 512), u.addable ? (x(), p("span", {
|
|
144
144
|
key: 0,
|
|
145
145
|
class: y(["s-ui-tabs__fade", { "s-ui-tabs__fade--visible": R.value }]),
|
|
146
146
|
"aria-hidden": "true"
|
|
147
|
-
}, null, 2)) : f("", !0)]), u.addable ? w(
|
|
147
|
+
}, null, 2)) : f("", !0)]), u.addable ? w(i.$slots, "add", { key: 0 }, () => [h(E(r), {
|
|
148
148
|
class: "s-ui-tabs__add",
|
|
149
149
|
icon: "plus",
|
|
150
150
|
appearance: E(n).BARE,
|