@shtabapp/ui-kit 1.54.0 → 1.56.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 +17 -0
- package/dist/{SCard-BZ2TUqpd.cjs → SCard-DKZYyR5b.cjs} +1 -1
- package/dist/{SCard-BPYqNqDs.js → SCard-DgGxjBUV.js} +1 -1
- package/dist/{SCheckbox-CU6nzXrI.js → SCheckbox-BMkOc5cn.js} +7 -8
- package/dist/SCheckbox-DnnC5mOH.cjs +1 -0
- package/dist/{SColorPicker-DUTOeRA_.cjs → SColorPicker-Cucd749L.cjs} +1 -1
- package/dist/{SColorPicker-BhJiFjkD.js → SColorPicker-PI3xoFtS.js} +1 -1
- package/dist/{SInlineInput-6LglCWSn.cjs → SInlineInput-D3vCX4QA.cjs} +1 -1
- package/dist/{SInlineInput-DHq5BNPn.js → SInlineInput-DO_glYxP.js} +1 -1
- package/dist/{SInput-ug89CYt3.js → SInput-C-_R5pug.js} +1 -1
- package/dist/{SInput-DJL9QOIG.cjs → SInput-Cw8pt9Sr.cjs} +1 -1
- package/dist/SLabel-DLKfepRW.cjs +1 -0
- package/dist/SLabel-FHHPlcKq.js +59 -0
- package/dist/SList-D9SztBPD.cjs +1 -0
- package/dist/SList-DhjYsx7q.js +548 -0
- package/dist/SListItem-3IpjaE9h.cjs +1 -0
- package/dist/{SListItem-DJ8uSadf.js → SListItem-BYMbFs2A.js} +19 -19
- package/dist/{SRadio-C1CfSeb_.js → SRadio-D6_Pd6XX.js} +7 -8
- package/dist/SRadio-DRo_GU5A.cjs +1 -0
- package/dist/{SSelect-Cwlr2ruO.js → SSelect-8RPurgr-.js} +134 -148
- package/dist/SSelect-BVs3lWQ9.cjs +1 -0
- package/dist/STextarea-Cz7Frk82.cjs +1 -0
- package/dist/STextarea-SwVygHwh.js +148 -0
- package/dist/{SToggle-CSz9gHYO.js → SToggle-BtKNq9ZX.js} +6 -7
- package/dist/SToggle-FrWtwY4F.cjs +1 -0
- package/dist/components/SCheckbox/SCheckbox.vue.d.ts.map +1 -1
- package/dist/components/SLabel/SLabel.vue.d.ts +3 -3
- package/dist/components/SLabel/SLabel.vue.d.ts.map +1 -1
- package/dist/components/SList/SList.types.d.ts +2 -0
- package/dist/components/SList/SList.types.d.ts.map +1 -1
- package/dist/components/SList/SList.vue.d.ts.map +1 -1
- package/dist/components/SListItem/SListItem.vue.d.ts.map +1 -1
- package/dist/components/SRadio/SRadio.vue.d.ts.map +1 -1
- package/dist/components/SSelect/SSelect.vue.d.ts.map +1 -1
- package/dist/components/STextarea/STextarea.types.d.ts +6 -0
- package/dist/components/STextarea/STextarea.types.d.ts.map +1 -1
- package/dist/components/STextarea/STextarea.vue.d.ts.map +1 -1
- package/dist/components/SToggle/SToggle.vue.d.ts.map +1 -1
- package/dist/composables/useFlatTreeList.d.ts +8 -1
- package/dist/composables/useFlatTreeList.d.ts.map +1 -1
- package/dist/entries/card.cjs +1 -1
- package/dist/entries/card.js +1 -1
- package/dist/entries/checkbox.cjs +1 -1
- package/dist/entries/checkbox.js +1 -1
- package/dist/entries/color-picker.cjs +1 -1
- package/dist/entries/color-picker.js +1 -1
- package/dist/entries/inline-input.cjs +1 -1
- package/dist/entries/inline-input.js +1 -1
- package/dist/entries/input.cjs +1 -1
- package/dist/entries/input.js +1 -1
- package/dist/entries/label.cjs +1 -1
- package/dist/entries/label.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/radio.cjs +1 -1
- package/dist/entries/radio.js +1 -1
- package/dist/entries/select.cjs +1 -1
- package/dist/entries/select.js +1 -1
- package/dist/entries/textarea.cjs +1 -1
- package/dist/entries/textarea.js +1 -1
- package/dist/entries/toggle.cjs +1 -1
- package/dist/entries/toggle.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +12 -12
- package/dist/uikit-components.css +1 -1
- package/package.json +3 -3
- package/dist/SCheckbox-BAPXAjnl.cjs +0 -1
- package/dist/SLabel-CTiOAAOu.cjs +0 -1
- package/dist/SLabel-yzcX4qp5.js +0 -55
- package/dist/SList-BESqVnlh.js +0 -514
- package/dist/SList-qQ7B5u8o.cjs +0 -1
- package/dist/SListItem-DBGDVeoJ.cjs +0 -1
- package/dist/SRadio-xfAIUC2I.cjs +0 -1
- package/dist/SSelect-BEvgscGV.cjs +0 -1
- package/dist/STextarea-ASdLqfpC.js +0 -118
- package/dist/STextarea-BJWrc9t1.cjs +0 -1
- package/dist/SToggle-CXl6RWi1.cjs +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
## [@shtabapp/ui-kit-v1.56.0](https://gitlab.com/mstikharev/shtab-ui-kit/compare/@shtabapp/ui-kit@1.55.0...@shtabapp/ui-kit@1.56.0) (2026-07-29)
|
|
2
|
+
|
|
3
|
+
### Features
|
|
4
|
+
|
|
5
|
+
- **components:** slabel hint slot and stextarea auto-grow ([d1c5ce0](https://gitlab.com/mstikharev/shtab-ui-kit/commit/d1c5ce07dec602c6edadb08dad3449ce68f27f54))
|
|
6
|
+
|
|
7
|
+
### Bug Fixes
|
|
8
|
+
|
|
9
|
+
- **components:** slot checks in controls must not be cached computeds ([fd3365f](https://gitlab.com/mstikharev/shtab-ui-kit/commit/fd3365fb2664fa0d191db0e0684e127a44cb4ec8))
|
|
10
|
+
- **components:** slot presence checks must not be cached computeds ([a8490ac](https://gitlab.com/mstikharev/shtab-ui-kit/commit/a8490ac6ee3cb61c3d98c92424532743350d5594))
|
|
11
|
+
|
|
12
|
+
## [@shtabapp/ui-kit-v1.55.0](https://gitlab.com/mstikharev/shtab-ui-kit/compare/@shtabapp/ui-kit@1.54.0...@shtabapp/ui-kit@1.55.0) (2026-07-29)
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- slist selected-on-top grouping with divider row ([056cb0b](https://gitlab.com/mstikharev/shtab-ui-kit/commit/056cb0bf5b89b9e478c7f8c8f78d5dea100eb509))
|
|
17
|
+
|
|
1
18
|
## [@shtabapp/ui-kit-v1.54.0](https://gitlab.com/mstikharev/shtab-ui-kit/compare/@shtabapp/ui-kit@1.53.0...@shtabapp/ui-kit@1.54.0) (2026-07-29)
|
|
2
19
|
|
|
3
20
|
### Features
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./useLink-1LLWpdDZ.cjs"),t=require("./SCheckbox-
|
|
1
|
+
const e=require("./useLink-1LLWpdDZ.cjs"),t=require("./SCheckbox-DnnC5mOH.cjs");let n=require("vue"),r=require("@shtabapp/ui-kit-primitives");var i=function(e){return e.CARD=`card`,e.LIST=`list`,e}({}),a={key:0,class:`s-ui-card__content s-ui-card__content--skeleton`},o={class:`s-ui-card__content`},s={class:`s-ui-card__icon`,"aria-hidden":`true`},c={class:`s-ui-card__text`},l={key:0,class:`s-ui-card__title s-ui-typography-heading-h6-semibold`},u={key:1,class:`s-ui-card__subtitle s-ui-typography-body-12-regular`},d={key:0,class:`s-ui-card__meta s-ui-typography-label-12-medium`},f={key:0,class:`s-ui-card__selected-indicator`,"aria-hidden":`true`,inert:``},p=(0,n.defineComponent)({inheritAttrs:!1,__name:`SCard`,props:(0,n.mergeModels)({layout:{default:()=>i.CARD},title:{},subtitle:{},icon:{default:`page`},selectable:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},skeleton:{type:Boolean,default:!1},link:{},exact:{type:Boolean,default:!1},replace:{type:Boolean,default:!1}},{selected:{type:Boolean,default:!1},selectedModifiers:{}}),emits:(0,n.mergeModels)([`click`,`keydown`],[`update:selected`]),setup(p,{emit:m}){let h=(0,n.useModel)(p,`selected`),g=m,_=(0,n.useSlots)(),v=(0,n.useAttrs)(),y=e.t(()=>p.link,()=>p.exact,()=>p.replace),b=y.linkPresentation,x=(0,n.computed)(()=>p.disabled||p.skeleton),S=y.isLink,C=(0,n.computed)(()=>b.value.mode===`none`?`div`:b.value.rootTag),w=(0,n.computed)(()=>{if(x.value)return-1;if(!S.value)return 0}),T=(0,n.computed)(()=>({"aria-busy":p.skeleton?!0:void 0,"aria-disabled":x.value?!0:void 0,"aria-pressed":p.selectable&&!x.value&&!S.value&&h.value?!0:void 0,role:x.value||S.value?void 0:`button`,tabindex:w.value,...e.n(b.value,{replace:p.replace})})),E=(0,n.computed)(()=>({...T.value,...v})),D=(0,n.computed)(()=>p.selectable&&!x.value),O=(0,n.computed)(()=>p.layout===i.LIST?r.ESSkeletonType.S_CARD_LIST:r.ESSkeletonType.S_CARD),k=(0,n.computed)(()=>[`s-ui-card--layout-${p.layout}`,{"s-ui-card--selected":h.value,"s-ui-card--selectable":p.selectable,"s-ui-card--disabled":p.disabled,"s-ui-card--skeleton":p.skeleton,"s-ui-card--link":S.value,"s-ui-card--with-subtitle":!!(p.subtitle||_.subtitle)}]),A=e=>{if(x.value){e.preventDefault();return}if(y.isRouterLink.value){g(`click`,e);return}p.selectable&&(h.value=!h.value),g(`click`,e)},j=[`Enter`,` `,`Spacebar`],M=[`Enter`,` `],N=e=>{if(!x.value){if(g(`keydown`,e),y.isRouterLink.value&&j.includes(e.key)){e.preventDefault(),y.navigate();return}S.value||M.includes(e.key)&&(e.preventDefault(),e.currentTarget instanceof HTMLElement&&e.currentTarget.click())}};return(e,i)=>((0,n.openBlock)(),(0,n.createBlock)((0,n.resolveDynamicComponent)(C.value),(0,n.mergeProps)({class:[`s-ui-card`,k.value]},E.value,{onClick:A,onKeydown:N}),{default:(0,n.withCtx)(()=>[p.skeleton?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,a,[(0,n.createVNode)((0,n.unref)(r.SSkeleton),{class:`s-ui-card__skeleton`,type:O.value},null,8,[`type`])])):((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:1},[(0,n.createElementVNode)(`div`,o,[(0,n.createElementVNode)(`span`,s,[(0,n.renderSlot)(e.$slots,`icon`,{},()=>[(0,n.createVNode)((0,n.unref)(r.SIcon),{name:p.icon,size:16},null,8,[`name`])])]),(0,n.createElementVNode)(`span`,c,[p.title||_.title?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,l,[(0,n.renderSlot)(e.$slots,`title`,{},()=>[(0,n.createTextVNode)((0,n.toDisplayString)(p.title),1)])])):(0,n.createCommentVNode)(``,!0),p.subtitle||_.subtitle?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,u,[(0,n.renderSlot)(e.$slots,`subtitle`,{},()=>[(0,n.createTextVNode)((0,n.toDisplayString)(p.subtitle),1)])])):(0,n.createCommentVNode)(``,!0)]),_.meta?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,d,[(0,n.renderSlot)(e.$slots,`meta`)])):(0,n.createCommentVNode)(``,!0)]),D.value?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,f,[(0,n.renderSlot)(e.$slots,`selected-indicator`,{},()=>[(0,n.createVNode)((0,n.unref)(t.t),{"model-value":h.value,size:(0,n.unref)(t.i).EXTRA_SMALL},null,8,[`model-value`,`size`])])])):(0,n.createCommentVNode)(``,!0)],64))]),_:3},16,[`class`]))}});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return p}});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as e, t } from "./useLink-Com5VhOk.js";
|
|
2
|
-
import { i as n, t as r } from "./SCheckbox-
|
|
2
|
+
import { i as n, t as r } from "./SCheckbox-BMkOc5cn.js";
|
|
3
3
|
import { Fragment as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createTextVNode as u, createVNode as d, defineComponent as f, mergeModels as p, mergeProps as m, openBlock as h, renderSlot as g, resolveDynamicComponent as _, toDisplayString as v, unref as y, useAttrs as b, useModel as x, useSlots as S, withCtx as C } from "vue";
|
|
4
4
|
import { ESSkeletonType as w, SIcon as T, SSkeleton as E } from "@shtabapp/ui-kit-primitives";
|
|
5
5
|
//#region src/components/SCard/SCard.types.ts
|
|
@@ -57,22 +57,21 @@ var v = /* @__PURE__ */ function(e) {
|
|
|
57
57
|
immediate: !0,
|
|
58
58
|
flush: "post"
|
|
59
59
|
});
|
|
60
|
-
let j = e(() =>
|
|
60
|
+
let j = e(() => k.value && !a.indeterminate), M = e(() => [
|
|
61
61
|
`s-ui-checkbox--size-${a.size}`,
|
|
62
62
|
`s-ui-checkbox--color-${a.color}`,
|
|
63
63
|
{
|
|
64
64
|
"s-ui-checkbox--checked": k.value,
|
|
65
65
|
"s-ui-checkbox--indeterminate": a.indeterminate,
|
|
66
66
|
"s-ui-checkbox--disabled": a.disabled,
|
|
67
|
-
"s-ui-checkbox--label-left": a.labelPlacement === b.LEFT
|
|
68
|
-
"s-ui-checkbox--control-only": !j.value
|
|
67
|
+
"s-ui-checkbox--label-left": a.labelPlacement === b.LEFT
|
|
69
68
|
}
|
|
70
|
-
]),
|
|
69
|
+
]), N = (e) => {
|
|
71
70
|
if (!(e.target instanceof HTMLInputElement)) return;
|
|
72
71
|
let t = e.target.checked;
|
|
73
72
|
A(), y("change", t);
|
|
74
73
|
};
|
|
75
|
-
return (e, o) => (c(), r("label", { class: s(["s-ui-checkbox",
|
|
74
|
+
return (e, o) => (c(), r("label", { class: s(["s-ui-checkbox", [M.value, { "s-ui-checkbox--control-only": !u(D).default && !u(D).description }]]) }, [
|
|
76
75
|
g(i("input", {
|
|
77
76
|
ref_key: "checkboxInputRef",
|
|
78
77
|
ref: O,
|
|
@@ -82,9 +81,9 @@ var v = /* @__PURE__ */ function(e) {
|
|
|
82
81
|
disabled: a.disabled,
|
|
83
82
|
name: a.name,
|
|
84
83
|
value: a.value,
|
|
85
|
-
onChange:
|
|
84
|
+
onChange: N
|
|
86
85
|
}, null, 40, x), [[m, v.value]]),
|
|
87
|
-
i("span", S, [
|
|
86
|
+
i("span", S, [j.value ? (c(), t(u(_), {
|
|
88
87
|
key: 0,
|
|
89
88
|
class: "s-ui-checkbox__icon",
|
|
90
89
|
name: "checkMini",
|
|
@@ -95,7 +94,7 @@ var v = /* @__PURE__ */ function(e) {
|
|
|
95
94
|
name: "minusMini",
|
|
96
95
|
size: E
|
|
97
96
|
})) : n("", !0)]),
|
|
98
|
-
|
|
97
|
+
u(D).default || u(D).description ? (c(), r("span", C, [u(D).default ? (c(), r("span", w, [l(e.$slots, "default")])) : n("", !0), u(D).description ? (c(), r("span", T, [l(e.$slots, "description")])) : n("", !0)])) : n("", !0)
|
|
99
98
|
], 2));
|
|
100
99
|
}
|
|
101
100
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
let e=require("vue"),t=require("@shtabapp/ui-kit-primitives");var n=function(e){return e.EXTRA_SMALL=`extra-small`,e.SMALL=`small`,e}({}),r=function(e){return e.MAIN=`main`,e.SUCCESS=`success`,e}({}),i=function(e){return e.LEFT=`left`,e.RIGHT=`right`,e}({}),a=[`disabled`,`name`,`value`],o={class:`s-ui-checkbox__control`},s={key:0,class:`s-ui-checkbox__content`},c={key:0,class:`s-ui-checkbox__label s-ui-typography-label-14-medium`},l={key:1,class:`s-ui-checkbox__description s-ui-typography-body-12-regular`},u=16,d=(0,e.defineComponent)({__name:`SCheckbox`,props:(0,e.mergeModels)({color:{default:()=>r.MAIN},disabled:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},labelPlacement:{default:()=>i.RIGHT},name:{},size:{default:()=>n.EXTRA_SMALL},value:{}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:(0,e.mergeModels)([`change`],[`update:modelValue`]),setup(n,{emit:r}){let d=(0,e.useModel)(n,`modelValue`),f=r,p=(0,e.useSlots)(),m=(0,e.useTemplateRef)(`checkboxInputRef`),h=(0,e.computed)(()=>d.value),g=()=>{let e=m.value;e&&(e.indeterminate=n.indeterminate)};(0,e.watch)([m,()=>n.indeterminate,h],g,{immediate:!0,flush:`post`});let _=(0,e.computed)(()=>h.value&&!n.indeterminate),v=(0,e.computed)(()=>[`s-ui-checkbox--size-${n.size}`,`s-ui-checkbox--color-${n.color}`,{"s-ui-checkbox--checked":h.value,"s-ui-checkbox--indeterminate":n.indeterminate,"s-ui-checkbox--disabled":n.disabled,"s-ui-checkbox--label-left":n.labelPlacement===i.LEFT}]),y=e=>{if(!(e.target instanceof HTMLInputElement))return;let t=e.target.checked;g(),f(`change`,t)};return(r,i)=>((0,e.openBlock)(),(0,e.createElementBlock)(`label`,{class:(0,e.normalizeClass)([`s-ui-checkbox`,[v.value,{"s-ui-checkbox--control-only":!(0,e.unref)(p).default&&!(0,e.unref)(p).description}]])},[(0,e.withDirectives)((0,e.createElementVNode)(`input`,{ref_key:`checkboxInputRef`,ref:m,"onUpdate:modelValue":i[0]||=e=>d.value=e,type:`checkbox`,class:`s-ui-checkbox__input`,disabled:n.disabled,name:n.name,value:n.value,onChange:y},null,40,a),[[e.vModelCheckbox,d.value]]),(0,e.createElementVNode)(`span`,o,[_.value?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(t.SIcon),{key:0,class:`s-ui-checkbox__icon`,name:`checkMini`,size:u})):n.indeterminate?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(t.SIcon),{key:1,class:`s-ui-checkbox__icon`,name:`minusMini`,size:u})):(0,e.createCommentVNode)(``,!0)]),(0,e.unref)(p).default||(0,e.unref)(p).description?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,s,[(0,e.unref)(p).default?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,c,[(0,e.renderSlot)(r.$slots,`default`)])):(0,e.createCommentVNode)(``,!0),(0,e.unref)(p).description?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,l,[(0,e.renderSlot)(r.$slots,`description`)])):(0,e.createCommentVNode)(``,!0)])):(0,e.createCommentVNode)(``,!0)],2))}});Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return d}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./contrastSurfaceTextColor-BRjRzXyZ.cjs"),t=require("./SColorPalette-CqfVzhda.cjs"),n=require("./colorValue-Dda7fKd3.cjs"),r=require("./SButton.types-UKroD-ev.cjs"),i=require("./SButton-C-z_q5CG.cjs"),a=require("./useFloatingOverlay-B1UCUYQQ.cjs"),o=require("./SDropdown-_QUOP-rw.cjs"),s=require("./SSelect-BEvgscGV.cjs");let c=require("vue"),l=require("@shtabapp/ui-kit-primitives"),u=require("@vueuse/core");var d=e=>Math.max(0,Math.min(255,Math.round(e))),f=e=>{let t=e%360;return t<0?t+360:t},p=e=>Math.max(0,Math.min(100,Math.round(e))),m=e=>{let t=e.slice(1);if(t.length===3){let e=t[0],n=t[1],r=t[2];return!e||!n||!r?void 0:`${e}${e}${n}${n}${r}${r}`}if(t.length===6||t.length===8)return t.slice(0,6)},h=e=>{let t=m(e);if(!t)return;let n=Number.parseInt(t.slice(0,2),16),r=Number.parseInt(t.slice(2,4),16),i=Number.parseInt(t.slice(4,6),16);if(!(Number.isNaN(n)||Number.isNaN(r)||Number.isNaN(i)))return{first:n,second:r,third:i}},g=e=>{let t=d(e.first),n=d(e.second),r=d(e.third);return`#${t.toString(16).padStart(2,`0`).toUpperCase()}${n.toString(16).padStart(2,`0`).toUpperCase()}${r.toString(16).padStart(2,`0`).toUpperCase()}`},_=e=>{let t=h(e);if(!t)return;let n=t.first/255,r=t.second/255,i=t.third/255,a=Math.max(n,r,i),o=Math.min(n,r,i),s=a-o,c=0,l=(a+o)/2;s!==0&&(c=a===n?((r-i)/s+(r<i?6:0))*60:a===r?((i-n)/s+2)*60:((n-r)/s+4)*60);let u=0;return s!==0&&(u=l>.5?s/(2-a-o):s/(a+o)),{first:Math.round(c),second:Math.round(u*100),third:Math.round(l*100)}},v=e=>{let t=f(e.first),n=p(e.second)/100,r=p(e.third)/100,i=e=>{let i=(t+e)/30;return d((r-n*Math.min(r,1-r)*Math.max(-1,Math.min(i%2-1,1)))*255)};return g({first:i(0),second:i(8),third:i(4)})},y=t=>{let n=t.toUpperCase(),r=n.startsWith(`#`)?n.slice(1):n;if(!/^[0-9A-F]{3}$/.test(r)&&!/^[0-9A-F]{6}$/.test(r))return;let i=`#${r}`;if(e.n(i))return g(h(i)??{first:0,second:0,third:0})},b=e=>e.slice(1).toUpperCase(),x=e=>{let t=e.first/255,n=e.second/255,r=e.third/255,i=Math.max(t,n,r),a=i-Math.min(t,n,r),o=0;a!==0&&(o=i===t?(n-r)/a%6:i===n?(r-t)/a+2:(t-n)/a+4,o=Math.round(o*60),o<0&&(o+=360));let s=i===0?0:a/i;return{hue:o,saturation:s,value:i}},S=e=>{let t=e.value*e.saturation,n=e.hue/60,r=t*(1-Math.abs(n%2-1)),i=e.value-t,a=0,o=0,s=0;return n>=0&&n<1?(a=t,o=r):n>=1&&n<2?(a=r,o=t):n>=2&&n<3?(o=t,s=r):n>=3&&n<4?(o=r,s=t):n>=4&&n<5?(a=r,s=t):(a=t,s=r),{first:d((a+i)*255),second:d((o+i)*255),third:d((s+i)*255)}},C=e=>{let t=h(e);if(t)return x(t)},w=e=>g(S(e)),T=[t.o.HEX,t.o.RGB,t.o.HSL],E={[t.o.HEX]:`Hex`,[t.o.RGB]:`RGB`,[t.o.HSL]:`HSL`},D=e=>{let t=getComputedStyle(e).backgroundColor.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)/);if(!t)return;let n=Number.parseInt(t[1]??`0`,10),r=Number.parseInt(t[2]??`0`,10),i=Number.parseInt(t[3]??`0`,10);return`#${n.toString(16).padStart(2,`0`).toUpperCase()}${r.toString(16).padStart(2,`0`).toUpperCase()}${i.toString(16).padStart(2,`0`).toUpperCase()}`},O=(t,r)=>{if(n.n(t)&&e.n(t))return t;if(r)return D(r)},k=(e,n)=>n===t.o.HEX?b(e):n===t.o.RGB?h(e)??{first:0,second:0,third:0}:_(e)??{first:0,second:0,third:0},A=e=>{let t=Number.parseInt(e,10);if(!Number.isNaN(t))return t},j=(e,n)=>{if(e===t.o.HEX)return typeof n==`string`?y(n):void 0;if(typeof n==`string`)return;if(e===t.o.RGB){let e=g({first:A(String(n.first))??0,second:A(String(n.second))??0,third:A(String(n.third))??0});return h(e)?e:void 0}let r=v({first:A(String(n.first))??0,second:A(String(n.second))??0,third:A(String(n.third))??0});if(r&&_(r))return r},M=17,N=`#000000`,P=e=>e??N,F=({modelValue:e,getEditableHex:t,saturationAreaRef:n,hueSliderRef:r,disabled:i,readonly:a})=>{let o=C(P(t()))??{hue:0,saturation:0,value:0},s=(0,c.ref)(o.hue),l=(0,c.ref)(o.saturation),d=(0,c.ref)(o.value),f=(0,c.ref)(!1),p=(0,c.ref)(!1),m=(0,c.ref)(!1),h=(0,c.shallowRef)(null),g=(0,c.shallowRef)(null),_=(0,c.computed)(()=>w({hue:s.value,saturation:l.value,value:d.value})),v=(0,c.computed)(()=>w({hue:s.value,saturation:1,value:1})),y=e=>{s.value=Math.max(0,Math.min(360,e))},b=(e,t)=>{l.value=Math.max(0,Math.min(1,e)),d.value=Math.max(0,Math.min(1,t))},x=e=>{let t=C(P(e));t&&(f.value=!0,t.saturation>0&&(s.value=t.hue),l.value=t.saturation,d.value=t.value,f.value=!1)},S=()=>{let e=t();e&&e.toUpperCase()!==_.value.toUpperCase()&&x(e)},T=()=>{let n=_.value;t()?.toUpperCase()!==n.toUpperCase()&&(f.value=!0,e.value=n,f.value=!1)};(0,c.watch)([s,l,d],()=>{f.value||T()}),(0,c.watch)(e,()=>{f.value||S()}),(0,c.onMounted)(()=>{(0,c.nextTick)(()=>{E(),D(),S()})});let E=()=>{h.value=n.value?.getBoundingClientRect()??null},D=()=>{g.value=r.value?.getBoundingClientRect()??null},O=(0,c.computed)(()=>{let e=h.value;return e?{transform:`translate3d(calc(${l.value*e.width}px - 50%), calc(${(1-d.value)*e.height}px - 50%), 0)`}:{}}),k=(0,c.computed)(()=>{let e=g.value;return e?{transform:`translate3d(-50%, calc(${s.value/360*e.height}px - 50%), 0)`}:{}}),A=()=>!i.value&&!a.value,j=e=>{let t=h.value;if(!t)return;let n=Math.max(0,Math.min(e.clientX-t.left,t.width)),r=Math.max(0,Math.min(e.clientY-t.top,t.height));b(n/t.width,1-r/t.height)},M=e=>{let t=g.value;t&&y(Math.max(0,Math.min(e.clientY-t.top,t.height))/t.height*360)},N=e=>{A()&&(E(),p.value=!0,j(e),e.currentTarget instanceof HTMLElement&&e.currentTarget.setPointerCapture(e.pointerId))},F=e=>{A()&&(D(),m.value=!0,M(e),e.currentTarget instanceof HTMLElement&&e.currentTarget.setPointerCapture(e.pointerId))},I=()=>{p.value=!1},L=()=>{m.value=!1};return(0,u.useEventListener)(n,`pointermove`,e=>{p.value&&j(e)}),(0,u.useEventListener)(n,`pointerup`,I),(0,u.useEventListener)(n,`pointercancel`,I),(0,u.useEventListener)(n,`lostpointercapture`,I),(0,u.useEventListener)(r,`pointermove`,e=>{m.value&&M(e)}),(0,u.useEventListener)(r,`pointerup`,L),(0,u.useEventListener)(r,`pointercancel`,L),(0,u.useEventListener)(r,`lostpointercapture`,L),{hexColor:_,hueBackground:v,saturationPointerStyle:O,huePointerStyle:k,handleSaturationPointerDown:N,handleHuePointerDown:F,syncFromModelValue:S}},I=e=>{if(!e)return null;let t=e.$el;if(!(t instanceof HTMLElement))return null;let n=t.querySelector(`.s-ui-color-swatch__fill`);return n instanceof HTMLElement?n:null},L={class:`s-ui-color-area__canvas-row`},R=[`aria-label`],z=[`aria-label`,`aria-disabled`],B=(0,c.defineComponent)({__name:`SColorArea`,props:(0,c.mergeModels)({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=(0,c.useModel)(e,`modelValue`),{t:r}=(0,l.useUiKitI18n)(),i=(0,c.useTemplateRef)(`colorResolutionSwatchRef`),a=(0,c.useTemplateRef)(`saturationAreaRef`),o=(0,c.useTemplateRef)(`hueSliderRef`),s=()=>O(t.value,I(i.value)),u=(0,c.computed)(()=>n.a(t.value)),{hexColor:d,hueBackground:f,saturationPointerStyle:p,huePointerStyle:m,handleSaturationPointerDown:h,handleHuePointerDown:g}=F({modelValue:t,getEditableHex:s,saturationAreaRef:a,hueSliderRef:o,disabled:(0,c.toRef)(()=>e.disabled),readonly:(0,c.toRef)(()=>e.readonly)});return(t,n)=>((0,c.openBlock)(),(0,c.createElementBlock)(`div`,(0,c.mergeProps)({class:[`s-ui-color-area`,{"s-ui-color-area--disabled":e.disabled,"s-ui-color-area--readonly":e.readonly}]},t.$attrs),[(0,c.createVNode)((0,c.unref)(l.SColorSwatch),{ref_key:`colorResolutionSwatchRef`,ref:i,class:`s-ui-color-area__color-resolution`,color:u.value,size:(0,c.unref)(l.ESColorSwatchSize).SIZE_24,tabindex:`-1`,"aria-hidden":`true`},null,8,[`color`,`size`]),(0,c.createElementVNode)(`div`,L,[(0,c.createElementVNode)(`div`,{ref_key:`saturationAreaRef`,ref:a,class:`s-ui-color-area__canvas`,role:`img`,"aria-label":(0,c.unref)(r)(`colorArea.saturationBrightness`),style:(0,c.normalizeStyle)({"--s-ui-color-area-hue":(0,c.unref)(f)}),onPointerdown:n[0]||=(...e)=>(0,c.unref)(h)&&(0,c.unref)(h)(...e)},[(0,c.createElementVNode)(`div`,{class:`s-ui-color-area__canvas-pointer`,style:(0,c.normalizeStyle)({...(0,c.unref)(p),backgroundColor:(0,c.unref)(d)})},null,4)],44,R),(0,c.createElementVNode)(`div`,{ref_key:`hueSliderRef`,ref:o,class:`s-ui-color-area__hue`,role:`slider`,"aria-label":(0,c.unref)(r)(`colorArea.hue`),"aria-valuemin":`0`,"aria-valuemax":`360`,"aria-disabled":e.disabled||e.readonly,onPointerdown:n[1]||=(...e)=>(0,c.unref)(g)&&(0,c.unref)(g)(...e)},[(0,c.createElementVNode)(`div`,{class:`s-ui-color-area__hue-pointer`,style:(0,c.normalizeStyle)({...(0,c.unref)(m),backgroundColor:(0,c.unref)(f)})},null,4)],40,z)])],16))}}),V={class:`s-ui-color-values__left`},H={class:`s-ui-color-values__format`},U={class:`s-ui-color-values__value-group`},W={class:`s-ui-color-values__inputs`},G={key:0,class:`s-ui-color-values__input-wrap`},K=[`disabled`,`readonly`,`aria-label`],q={class:`s-ui-color-values__input-wrap`},J=[`disabled`,`readonly`,`aria-label`],Y={class:`s-ui-color-values__input-wrap`},X=[`disabled`,`readonly`,`aria-label`],Z={class:`s-ui-color-values__input-wrap`},Q=[`disabled`,`readonly`,`aria-label`],$=(0,c.defineComponent)({__name:`SColorValues`,props:(0,c.mergeModels)({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},formats:{default:()=>T}},{modelValue:{required:!0},modelModifiers:{},format:{default:t.o.HEX},formatModifiers:{}}),emits:(0,c.mergeModels)([`formatDropdownOpen`,`formatDropdownClose`],[`update:modelValue`,`update:format`]),setup(e,{emit:a}){let{t:o}=(0,l.useUiKitI18n)(),u=(0,c.useModel)(e,`modelValue`),d=(0,c.useModel)(e,`format`),f=a,p=(0,c.useTemplateRef)(`previewSwatchRef`),m=(0,c.ref)(``),h=(0,c.ref)(`0`),g=(0,c.ref)(`0`),_=(0,c.ref)(`0`),v=(0,c.computed)(()=>(e.formats.length>0?e.formats:T).map(e=>({value:e,label:E[e]}))),y=(0,c.computed)(()=>n.a(u.value)),b=(0,c.computed)(()=>O(u.value,I(p.value))),x=(0,c.computed)(()=>d.value===t.o.RGB?o(`colorValues.redChannel`):o(`colorValues.hueChannel`)),S=(0,c.computed)(()=>d.value===t.o.RGB?o(`colorValues.greenChannel`):o(`colorValues.saturationChannel`)),C=(0,c.computed)(()=>d.value===t.o.RGB?o(`colorValues.blueChannel`):o(`colorValues.lightnessChannel`)),w=()=>{let e=b.value;if(!e)return;let n=k(e,d.value);if(d.value===t.o.HEX&&typeof n==`string`){m.value=n;return}typeof n==`object`&&(h.value=String(n.first),g.value=String(n.second),_.value=String(n.third))};(0,c.watch)([u,d,b],()=>{w()}),(0,c.onMounted)(()=>{(0,c.nextTick)(()=>{w()})});let D=()=>{if(e.disabled||e.readonly)return;if(d.value===t.o.HEX){let e=j(t.o.HEX,m.value);e&&(u.value=e),w();return}let n=j(d.value,{first:Number.parseInt(h.value,10),second:Number.parseInt(g.value,10),third:Number.parseInt(_.value,10)});n&&(u.value=n),w()},A=e=>{e.key===`Enter`&&(e.preventDefault(),D())};return(n,a)=>((0,c.openBlock)(),(0,c.createElementBlock)(`div`,(0,c.mergeProps)({class:[`s-ui-color-values`,{"s-ui-color-values--disabled":e.disabled,"s-ui-color-values--readonly":e.readonly}]},n.$attrs),[(0,c.createElementVNode)(`div`,V,[(0,c.createVNode)((0,c.unref)(l.SColorSwatch),{ref_key:`previewSwatchRef`,ref:p,class:`s-ui-color-values__preview`,color:y.value,size:(0,c.unref)(l.ESColorSwatchSize).SIZE_32,disabled:e.disabled,tabindex:`-1`,"aria-hidden":`true`},null,8,[`color`,`size`,`disabled`]),(0,c.createElementVNode)(`div`,H,[(0,c.createVNode)((0,c.unref)(s.t),{modelValue:d.value,"onUpdate:modelValue":a[0]||=e=>d.value=e,class:`s-ui-color-values__format-select`,options:v.value,disabled:e.disabled,readonly:e.readonly,bordered:!0,clearable:!1,"close-on-select":!0,"fit-viewport":!1,"aria-label":(0,c.unref)(o)(`colorValues.format`),onOpen:a[1]||=e=>f(`formatDropdownOpen`),onClose:a[2]||=e=>f(`formatDropdownClose`)},null,8,[`modelValue`,`options`,`disabled`,`readonly`,`aria-label`])])]),(0,c.createElementVNode)(`div`,U,[(0,c.createVNode)((0,c.unref)(i.t),{class:`s-ui-color-values__pipette`,appearance:(0,c.unref)(r.t).BARE,variant:(0,c.unref)(r.r).NEUTRAL,size:(0,c.unref)(r.n).SMALL,icon:`pipette`,"aria-label":(0,c.unref)(o)(`colorValues.pickColor`),"aria-disabled":`true`,disabled:e.disabled,tabindex:`-1`},null,8,[`appearance`,`variant`,`size`,`aria-label`,`disabled`]),a[9]||=(0,c.createElementVNode)(`span`,{class:`s-ui-color-values__separator`,"aria-hidden":`true`},null,-1),(0,c.createElementVNode)(`div`,W,[d.value===(0,c.unref)(t.o).HEX?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,G,[(0,c.withDirectives)((0,c.createElementVNode)(`input`,{"onUpdate:modelValue":a[3]||=e=>m.value=e,class:`s-ui-color-values__input s-ui-typography-body-14-regular`,type:`text`,inputmode:`text`,spellcheck:`false`,disabled:e.disabled,readonly:e.readonly,"aria-label":(0,c.unref)(o)(`colorValues.hexValue`),onBlur:D,onKeydown:A},null,40,K),[[c.vModelText,m.value]])])):((0,c.openBlock)(),(0,c.createElementBlock)(c.Fragment,{key:1},[(0,c.createElementVNode)(`div`,q,[(0,c.withDirectives)((0,c.createElementVNode)(`input`,{"onUpdate:modelValue":a[4]||=e=>h.value=e,class:`s-ui-color-values__input s-ui-typography-body-14-regular`,type:`text`,inputmode:`numeric`,spellcheck:`false`,disabled:e.disabled,readonly:e.readonly,"aria-label":x.value,onBlur:D,onKeydown:A},null,40,J),[[c.vModelText,h.value]])]),a[7]||=(0,c.createElementVNode)(`span`,{class:`s-ui-color-values__separator`,"aria-hidden":`true`},null,-1),(0,c.createElementVNode)(`div`,Y,[(0,c.withDirectives)((0,c.createElementVNode)(`input`,{"onUpdate:modelValue":a[5]||=e=>g.value=e,class:`s-ui-color-values__input s-ui-typography-body-14-regular`,type:`text`,inputmode:`numeric`,spellcheck:`false`,disabled:e.disabled,readonly:e.readonly,"aria-label":S.value,onBlur:D,onKeydown:A},null,40,X),[[c.vModelText,g.value]])]),a[8]||=(0,c.createElementVNode)(`span`,{class:`s-ui-color-values__separator`,"aria-hidden":`true`},null,-1),(0,c.createElementVNode)(`div`,Z,[(0,c.withDirectives)((0,c.createElementVNode)(`input`,{"onUpdate:modelValue":a[6]||=e=>_.value=e,class:`s-ui-color-values__input s-ui-typography-body-14-regular`,type:`text`,inputmode:`numeric`,spellcheck:`false`,disabled:e.disabled,readonly:e.readonly,"aria-label":C.value,onBlur:D,onKeydown:A},null,40,Q),[[c.vModelText,_.value]])])],64))])])],16))}}),ee={class:`s-ui-color-picker__section`},te={class:`s-ui-color-picker__label`},ne={class:`s-ui-color-picker__section`},re={class:`s-ui-color-picker__label`},ie={class:`s-ui-color-picker__custom-editor`},ae={class:`s-ui-color-picker__custom-actions`},oe=(0,c.defineComponent)({__name:`SColorPicker`,props:(0,c.mergeModels)({disabled:{type:Boolean,default:!1},recommendedColors:{},recentColors:{default:()=>[]}},{modelValue:{},modelModifiers:{}}),emits:(0,c.mergeModels)([`select`,`customEditorOpen`,`customEditorClose`,`formatDropdownOpen`,`formatDropdownClose`],[`update:modelValue`]),setup(e,{emit:n}){let u=(0,c.useModel)(e,`modelValue`),d=n,{t:f}=(0,l.useUiKitI18n)(),p=(0,c.ref)(!1),m=(0,c.ref)(`#526DE3`),h=(0,c.ref)(t.o.HEX),g=(0,c.computed)(()=>e.recommendedColors&&e.recommendedColors.length>0?e.recommendedColors:t.r),_=(0,c.computed)(()=>e.recentColors.length<=17?e.recentColors:e.recentColors.slice(0,17)),v=()=>{if(u.value){m.value=u.value;return}m.value=`#526DE3`},y=e=>{d(`select`,e)},b=()=>{u.value=m.value,d(`select`,m.value),p.value=!1},x=()=>{p.value=!1};return(0,c.watch)(p,(e,t)=>{if(e&&!t){v(),d(`customEditorOpen`);return}!e&&t&&d(`customEditorClose`)}),(n,v)=>((0,c.openBlock)(),(0,c.createBlock)((0,c.unref)(s.r),(0,c.mergeProps)({width:336},n.$attrs),{default:(0,c.withCtx)(()=>[(0,c.createElementVNode)(`div`,{class:(0,c.normalizeClass)([`s-ui-color-picker`,{"s-ui-color-picker--disabled":e.disabled}])},[(0,c.createElementVNode)(`section`,ee,[(0,c.createElementVNode)(`span`,te,(0,c.toDisplayString)((0,c.unref)(f)(`colorPicker.recommendedColors`)),1),(0,c.createVNode)((0,c.unref)(t.t),{modelValue:u.value,"onUpdate:modelValue":v[0]||=e=>u.value=e,class:`s-ui-color-picker__palette`,layout:(0,c.unref)(t.n).GRID,colors:g.value,size:(0,c.unref)(l.ESColorSwatchSize).SIZE_32,disabled:e.disabled,onSelect:y},null,8,[`modelValue`,`layout`,`colors`,`size`,`disabled`])]),(0,c.createElementVNode)(`section`,ne,[(0,c.createElementVNode)(`span`,re,(0,c.toDisplayString)((0,c.unref)(f)(`colorPicker.recentColors`)),1),(0,c.createVNode)((0,c.unref)(t.t),{modelValue:u.value,"onUpdate:modelValue":v[7]||=e=>u.value=e,class:`s-ui-color-picker__palette`,layout:(0,c.unref)(t.n).ROW,colors:_.value,size:(0,c.unref)(l.ESColorSwatchSize).SIZE_32,disabled:e.disabled,onSelect:y},{append:(0,c.withCtx)(()=>[(0,c.createVNode)((0,c.unref)(o.t),{modelValue:p.value,"onUpdate:modelValue":v[6]||=e=>p.value=e,placement:(0,c.unref)(a.i).RIGHT_START,offset:8,shift:!0,flip:!0,disabled:e.disabled,"dismiss-on-click-outside":!0,"dismiss-on-escape":!0},{trigger:(0,c.withCtx)(({toggle:t,triggerProps:n})=>[(0,c.createVNode)((0,c.unref)(i.t),(0,c.mergeProps)(n,{class:`s-ui-color-picker__add-button`,appearance:(0,c.unref)(r.t).OUTLINED,variant:(0,c.unref)(r.r).NEUTRAL,size:(0,c.unref)(r.n).SMALL,icon:`plus`,"aria-label":(0,c.unref)(f)(`colorPicker.addCustomColor`),disabled:e.disabled,onClick:t}),null,16,[`appearance`,`variant`,`size`,`aria-label`,`disabled`,`onClick`])]),content:(0,c.withCtx)(()=>[(0,c.createVNode)((0,c.unref)(s.r),{width:320},{footer:(0,c.withCtx)(()=>[(0,c.createElementVNode)(`div`,ae,[(0,c.createVNode)((0,c.unref)(i.t),{class:`s-ui-color-picker__save-button`,appearance:(0,c.unref)(r.t).MAJOR,variant:(0,c.unref)(r.r).MAIN,size:(0,c.unref)(r.n).SMALL,disabled:e.disabled,onClick:b},{default:(0,c.withCtx)(()=>[(0,c.createTextVNode)((0,c.toDisplayString)((0,c.unref)(f)(`colorPicker.save`)),1)]),_:1},8,[`appearance`,`variant`,`size`,`disabled`]),(0,c.createVNode)((0,c.unref)(i.t),{class:`s-ui-color-picker__cancel-button`,appearance:(0,c.unref)(r.t).MINOR,variant:(0,c.unref)(r.r).NEUTRAL,size:(0,c.unref)(r.n).SMALL,disabled:e.disabled,onClick:x},{default:(0,c.withCtx)(()=>[(0,c.createTextVNode)((0,c.toDisplayString)((0,c.unref)(f)(`colorPicker.cancel`)),1)]),_:1},8,[`appearance`,`variant`,`size`,`disabled`])])]),default:(0,c.withCtx)(()=>[(0,c.createElementVNode)(`div`,ie,[(0,c.createVNode)(B,{modelValue:m.value,"onUpdate:modelValue":v[1]||=e=>m.value=e,disabled:e.disabled},null,8,[`modelValue`,`disabled`]),(0,c.createVNode)($,{modelValue:m.value,"onUpdate:modelValue":v[2]||=e=>m.value=e,format:h.value,"onUpdate:format":v[3]||=e=>h.value=e,disabled:e.disabled,onFormatDropdownOpen:v[4]||=e=>d(`formatDropdownOpen`),onFormatDropdownClose:v[5]||=e=>d(`formatDropdownClose`)},null,8,[`modelValue`,`format`,`disabled`])])]),_:1})]),_:1},8,[`modelValue`,`placement`,`disabled`])]),_:1},8,[`modelValue`,`layout`,`colors`,`size`,`disabled`])])],2)]),_:1},16))}});Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return oe}});
|
|
1
|
+
const e=require("./contrastSurfaceTextColor-BRjRzXyZ.cjs"),t=require("./SColorPalette-CqfVzhda.cjs"),n=require("./colorValue-Dda7fKd3.cjs"),r=require("./SButton.types-UKroD-ev.cjs"),i=require("./SButton-C-z_q5CG.cjs"),a=require("./useFloatingOverlay-B1UCUYQQ.cjs"),o=require("./SDropdown-_QUOP-rw.cjs"),s=require("./SSelect-BVs3lWQ9.cjs");let c=require("vue"),l=require("@shtabapp/ui-kit-primitives"),u=require("@vueuse/core");var d=e=>Math.max(0,Math.min(255,Math.round(e))),f=e=>{let t=e%360;return t<0?t+360:t},p=e=>Math.max(0,Math.min(100,Math.round(e))),m=e=>{let t=e.slice(1);if(t.length===3){let e=t[0],n=t[1],r=t[2];return!e||!n||!r?void 0:`${e}${e}${n}${n}${r}${r}`}if(t.length===6||t.length===8)return t.slice(0,6)},h=e=>{let t=m(e);if(!t)return;let n=Number.parseInt(t.slice(0,2),16),r=Number.parseInt(t.slice(2,4),16),i=Number.parseInt(t.slice(4,6),16);if(!(Number.isNaN(n)||Number.isNaN(r)||Number.isNaN(i)))return{first:n,second:r,third:i}},g=e=>{let t=d(e.first),n=d(e.second),r=d(e.third);return`#${t.toString(16).padStart(2,`0`).toUpperCase()}${n.toString(16).padStart(2,`0`).toUpperCase()}${r.toString(16).padStart(2,`0`).toUpperCase()}`},_=e=>{let t=h(e);if(!t)return;let n=t.first/255,r=t.second/255,i=t.third/255,a=Math.max(n,r,i),o=Math.min(n,r,i),s=a-o,c=0,l=(a+o)/2;s!==0&&(c=a===n?((r-i)/s+(r<i?6:0))*60:a===r?((i-n)/s+2)*60:((n-r)/s+4)*60);let u=0;return s!==0&&(u=l>.5?s/(2-a-o):s/(a+o)),{first:Math.round(c),second:Math.round(u*100),third:Math.round(l*100)}},v=e=>{let t=f(e.first),n=p(e.second)/100,r=p(e.third)/100,i=e=>{let i=(t+e)/30;return d((r-n*Math.min(r,1-r)*Math.max(-1,Math.min(i%2-1,1)))*255)};return g({first:i(0),second:i(8),third:i(4)})},y=t=>{let n=t.toUpperCase(),r=n.startsWith(`#`)?n.slice(1):n;if(!/^[0-9A-F]{3}$/.test(r)&&!/^[0-9A-F]{6}$/.test(r))return;let i=`#${r}`;if(e.n(i))return g(h(i)??{first:0,second:0,third:0})},b=e=>e.slice(1).toUpperCase(),x=e=>{let t=e.first/255,n=e.second/255,r=e.third/255,i=Math.max(t,n,r),a=i-Math.min(t,n,r),o=0;a!==0&&(o=i===t?(n-r)/a%6:i===n?(r-t)/a+2:(t-n)/a+4,o=Math.round(o*60),o<0&&(o+=360));let s=i===0?0:a/i;return{hue:o,saturation:s,value:i}},S=e=>{let t=e.value*e.saturation,n=e.hue/60,r=t*(1-Math.abs(n%2-1)),i=e.value-t,a=0,o=0,s=0;return n>=0&&n<1?(a=t,o=r):n>=1&&n<2?(a=r,o=t):n>=2&&n<3?(o=t,s=r):n>=3&&n<4?(o=r,s=t):n>=4&&n<5?(a=r,s=t):(a=t,s=r),{first:d((a+i)*255),second:d((o+i)*255),third:d((s+i)*255)}},C=e=>{let t=h(e);if(t)return x(t)},w=e=>g(S(e)),T=[t.o.HEX,t.o.RGB,t.o.HSL],E={[t.o.HEX]:`Hex`,[t.o.RGB]:`RGB`,[t.o.HSL]:`HSL`},D=e=>{let t=getComputedStyle(e).backgroundColor.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)/);if(!t)return;let n=Number.parseInt(t[1]??`0`,10),r=Number.parseInt(t[2]??`0`,10),i=Number.parseInt(t[3]??`0`,10);return`#${n.toString(16).padStart(2,`0`).toUpperCase()}${r.toString(16).padStart(2,`0`).toUpperCase()}${i.toString(16).padStart(2,`0`).toUpperCase()}`},O=(t,r)=>{if(n.n(t)&&e.n(t))return t;if(r)return D(r)},k=(e,n)=>n===t.o.HEX?b(e):n===t.o.RGB?h(e)??{first:0,second:0,third:0}:_(e)??{first:0,second:0,third:0},A=e=>{let t=Number.parseInt(e,10);if(!Number.isNaN(t))return t},j=(e,n)=>{if(e===t.o.HEX)return typeof n==`string`?y(n):void 0;if(typeof n==`string`)return;if(e===t.o.RGB){let e=g({first:A(String(n.first))??0,second:A(String(n.second))??0,third:A(String(n.third))??0});return h(e)?e:void 0}let r=v({first:A(String(n.first))??0,second:A(String(n.second))??0,third:A(String(n.third))??0});if(r&&_(r))return r},M=17,N=`#000000`,P=e=>e??N,F=({modelValue:e,getEditableHex:t,saturationAreaRef:n,hueSliderRef:r,disabled:i,readonly:a})=>{let o=C(P(t()))??{hue:0,saturation:0,value:0},s=(0,c.ref)(o.hue),l=(0,c.ref)(o.saturation),d=(0,c.ref)(o.value),f=(0,c.ref)(!1),p=(0,c.ref)(!1),m=(0,c.ref)(!1),h=(0,c.shallowRef)(null),g=(0,c.shallowRef)(null),_=(0,c.computed)(()=>w({hue:s.value,saturation:l.value,value:d.value})),v=(0,c.computed)(()=>w({hue:s.value,saturation:1,value:1})),y=e=>{s.value=Math.max(0,Math.min(360,e))},b=(e,t)=>{l.value=Math.max(0,Math.min(1,e)),d.value=Math.max(0,Math.min(1,t))},x=e=>{let t=C(P(e));t&&(f.value=!0,t.saturation>0&&(s.value=t.hue),l.value=t.saturation,d.value=t.value,f.value=!1)},S=()=>{let e=t();e&&e.toUpperCase()!==_.value.toUpperCase()&&x(e)},T=()=>{let n=_.value;t()?.toUpperCase()!==n.toUpperCase()&&(f.value=!0,e.value=n,f.value=!1)};(0,c.watch)([s,l,d],()=>{f.value||T()}),(0,c.watch)(e,()=>{f.value||S()}),(0,c.onMounted)(()=>{(0,c.nextTick)(()=>{E(),D(),S()})});let E=()=>{h.value=n.value?.getBoundingClientRect()??null},D=()=>{g.value=r.value?.getBoundingClientRect()??null},O=(0,c.computed)(()=>{let e=h.value;return e?{transform:`translate3d(calc(${l.value*e.width}px - 50%), calc(${(1-d.value)*e.height}px - 50%), 0)`}:{}}),k=(0,c.computed)(()=>{let e=g.value;return e?{transform:`translate3d(-50%, calc(${s.value/360*e.height}px - 50%), 0)`}:{}}),A=()=>!i.value&&!a.value,j=e=>{let t=h.value;if(!t)return;let n=Math.max(0,Math.min(e.clientX-t.left,t.width)),r=Math.max(0,Math.min(e.clientY-t.top,t.height));b(n/t.width,1-r/t.height)},M=e=>{let t=g.value;t&&y(Math.max(0,Math.min(e.clientY-t.top,t.height))/t.height*360)},N=e=>{A()&&(E(),p.value=!0,j(e),e.currentTarget instanceof HTMLElement&&e.currentTarget.setPointerCapture(e.pointerId))},F=e=>{A()&&(D(),m.value=!0,M(e),e.currentTarget instanceof HTMLElement&&e.currentTarget.setPointerCapture(e.pointerId))},I=()=>{p.value=!1},L=()=>{m.value=!1};return(0,u.useEventListener)(n,`pointermove`,e=>{p.value&&j(e)}),(0,u.useEventListener)(n,`pointerup`,I),(0,u.useEventListener)(n,`pointercancel`,I),(0,u.useEventListener)(n,`lostpointercapture`,I),(0,u.useEventListener)(r,`pointermove`,e=>{m.value&&M(e)}),(0,u.useEventListener)(r,`pointerup`,L),(0,u.useEventListener)(r,`pointercancel`,L),(0,u.useEventListener)(r,`lostpointercapture`,L),{hexColor:_,hueBackground:v,saturationPointerStyle:O,huePointerStyle:k,handleSaturationPointerDown:N,handleHuePointerDown:F,syncFromModelValue:S}},I=e=>{if(!e)return null;let t=e.$el;if(!(t instanceof HTMLElement))return null;let n=t.querySelector(`.s-ui-color-swatch__fill`);return n instanceof HTMLElement?n:null},L={class:`s-ui-color-area__canvas-row`},R=[`aria-label`],z=[`aria-label`,`aria-disabled`],B=(0,c.defineComponent)({__name:`SColorArea`,props:(0,c.mergeModels)({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=(0,c.useModel)(e,`modelValue`),{t:r}=(0,l.useUiKitI18n)(),i=(0,c.useTemplateRef)(`colorResolutionSwatchRef`),a=(0,c.useTemplateRef)(`saturationAreaRef`),o=(0,c.useTemplateRef)(`hueSliderRef`),s=()=>O(t.value,I(i.value)),u=(0,c.computed)(()=>n.a(t.value)),{hexColor:d,hueBackground:f,saturationPointerStyle:p,huePointerStyle:m,handleSaturationPointerDown:h,handleHuePointerDown:g}=F({modelValue:t,getEditableHex:s,saturationAreaRef:a,hueSliderRef:o,disabled:(0,c.toRef)(()=>e.disabled),readonly:(0,c.toRef)(()=>e.readonly)});return(t,n)=>((0,c.openBlock)(),(0,c.createElementBlock)(`div`,(0,c.mergeProps)({class:[`s-ui-color-area`,{"s-ui-color-area--disabled":e.disabled,"s-ui-color-area--readonly":e.readonly}]},t.$attrs),[(0,c.createVNode)((0,c.unref)(l.SColorSwatch),{ref_key:`colorResolutionSwatchRef`,ref:i,class:`s-ui-color-area__color-resolution`,color:u.value,size:(0,c.unref)(l.ESColorSwatchSize).SIZE_24,tabindex:`-1`,"aria-hidden":`true`},null,8,[`color`,`size`]),(0,c.createElementVNode)(`div`,L,[(0,c.createElementVNode)(`div`,{ref_key:`saturationAreaRef`,ref:a,class:`s-ui-color-area__canvas`,role:`img`,"aria-label":(0,c.unref)(r)(`colorArea.saturationBrightness`),style:(0,c.normalizeStyle)({"--s-ui-color-area-hue":(0,c.unref)(f)}),onPointerdown:n[0]||=(...e)=>(0,c.unref)(h)&&(0,c.unref)(h)(...e)},[(0,c.createElementVNode)(`div`,{class:`s-ui-color-area__canvas-pointer`,style:(0,c.normalizeStyle)({...(0,c.unref)(p),backgroundColor:(0,c.unref)(d)})},null,4)],44,R),(0,c.createElementVNode)(`div`,{ref_key:`hueSliderRef`,ref:o,class:`s-ui-color-area__hue`,role:`slider`,"aria-label":(0,c.unref)(r)(`colorArea.hue`),"aria-valuemin":`0`,"aria-valuemax":`360`,"aria-disabled":e.disabled||e.readonly,onPointerdown:n[1]||=(...e)=>(0,c.unref)(g)&&(0,c.unref)(g)(...e)},[(0,c.createElementVNode)(`div`,{class:`s-ui-color-area__hue-pointer`,style:(0,c.normalizeStyle)({...(0,c.unref)(m),backgroundColor:(0,c.unref)(f)})},null,4)],40,z)])],16))}}),V={class:`s-ui-color-values__left`},H={class:`s-ui-color-values__format`},U={class:`s-ui-color-values__value-group`},W={class:`s-ui-color-values__inputs`},G={key:0,class:`s-ui-color-values__input-wrap`},K=[`disabled`,`readonly`,`aria-label`],q={class:`s-ui-color-values__input-wrap`},J=[`disabled`,`readonly`,`aria-label`],Y={class:`s-ui-color-values__input-wrap`},X=[`disabled`,`readonly`,`aria-label`],Z={class:`s-ui-color-values__input-wrap`},Q=[`disabled`,`readonly`,`aria-label`],$=(0,c.defineComponent)({__name:`SColorValues`,props:(0,c.mergeModels)({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},formats:{default:()=>T}},{modelValue:{required:!0},modelModifiers:{},format:{default:t.o.HEX},formatModifiers:{}}),emits:(0,c.mergeModels)([`formatDropdownOpen`,`formatDropdownClose`],[`update:modelValue`,`update:format`]),setup(e,{emit:a}){let{t:o}=(0,l.useUiKitI18n)(),u=(0,c.useModel)(e,`modelValue`),d=(0,c.useModel)(e,`format`),f=a,p=(0,c.useTemplateRef)(`previewSwatchRef`),m=(0,c.ref)(``),h=(0,c.ref)(`0`),g=(0,c.ref)(`0`),_=(0,c.ref)(`0`),v=(0,c.computed)(()=>(e.formats.length>0?e.formats:T).map(e=>({value:e,label:E[e]}))),y=(0,c.computed)(()=>n.a(u.value)),b=(0,c.computed)(()=>O(u.value,I(p.value))),x=(0,c.computed)(()=>d.value===t.o.RGB?o(`colorValues.redChannel`):o(`colorValues.hueChannel`)),S=(0,c.computed)(()=>d.value===t.o.RGB?o(`colorValues.greenChannel`):o(`colorValues.saturationChannel`)),C=(0,c.computed)(()=>d.value===t.o.RGB?o(`colorValues.blueChannel`):o(`colorValues.lightnessChannel`)),w=()=>{let e=b.value;if(!e)return;let n=k(e,d.value);if(d.value===t.o.HEX&&typeof n==`string`){m.value=n;return}typeof n==`object`&&(h.value=String(n.first),g.value=String(n.second),_.value=String(n.third))};(0,c.watch)([u,d,b],()=>{w()}),(0,c.onMounted)(()=>{(0,c.nextTick)(()=>{w()})});let D=()=>{if(e.disabled||e.readonly)return;if(d.value===t.o.HEX){let e=j(t.o.HEX,m.value);e&&(u.value=e),w();return}let n=j(d.value,{first:Number.parseInt(h.value,10),second:Number.parseInt(g.value,10),third:Number.parseInt(_.value,10)});n&&(u.value=n),w()},A=e=>{e.key===`Enter`&&(e.preventDefault(),D())};return(n,a)=>((0,c.openBlock)(),(0,c.createElementBlock)(`div`,(0,c.mergeProps)({class:[`s-ui-color-values`,{"s-ui-color-values--disabled":e.disabled,"s-ui-color-values--readonly":e.readonly}]},n.$attrs),[(0,c.createElementVNode)(`div`,V,[(0,c.createVNode)((0,c.unref)(l.SColorSwatch),{ref_key:`previewSwatchRef`,ref:p,class:`s-ui-color-values__preview`,color:y.value,size:(0,c.unref)(l.ESColorSwatchSize).SIZE_32,disabled:e.disabled,tabindex:`-1`,"aria-hidden":`true`},null,8,[`color`,`size`,`disabled`]),(0,c.createElementVNode)(`div`,H,[(0,c.createVNode)((0,c.unref)(s.t),{modelValue:d.value,"onUpdate:modelValue":a[0]||=e=>d.value=e,class:`s-ui-color-values__format-select`,options:v.value,disabled:e.disabled,readonly:e.readonly,bordered:!0,clearable:!1,"close-on-select":!0,"fit-viewport":!1,"aria-label":(0,c.unref)(o)(`colorValues.format`),onOpen:a[1]||=e=>f(`formatDropdownOpen`),onClose:a[2]||=e=>f(`formatDropdownClose`)},null,8,[`modelValue`,`options`,`disabled`,`readonly`,`aria-label`])])]),(0,c.createElementVNode)(`div`,U,[(0,c.createVNode)((0,c.unref)(i.t),{class:`s-ui-color-values__pipette`,appearance:(0,c.unref)(r.t).BARE,variant:(0,c.unref)(r.r).NEUTRAL,size:(0,c.unref)(r.n).SMALL,icon:`pipette`,"aria-label":(0,c.unref)(o)(`colorValues.pickColor`),"aria-disabled":`true`,disabled:e.disabled,tabindex:`-1`},null,8,[`appearance`,`variant`,`size`,`aria-label`,`disabled`]),a[9]||=(0,c.createElementVNode)(`span`,{class:`s-ui-color-values__separator`,"aria-hidden":`true`},null,-1),(0,c.createElementVNode)(`div`,W,[d.value===(0,c.unref)(t.o).HEX?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,G,[(0,c.withDirectives)((0,c.createElementVNode)(`input`,{"onUpdate:modelValue":a[3]||=e=>m.value=e,class:`s-ui-color-values__input s-ui-typography-body-14-regular`,type:`text`,inputmode:`text`,spellcheck:`false`,disabled:e.disabled,readonly:e.readonly,"aria-label":(0,c.unref)(o)(`colorValues.hexValue`),onBlur:D,onKeydown:A},null,40,K),[[c.vModelText,m.value]])])):((0,c.openBlock)(),(0,c.createElementBlock)(c.Fragment,{key:1},[(0,c.createElementVNode)(`div`,q,[(0,c.withDirectives)((0,c.createElementVNode)(`input`,{"onUpdate:modelValue":a[4]||=e=>h.value=e,class:`s-ui-color-values__input s-ui-typography-body-14-regular`,type:`text`,inputmode:`numeric`,spellcheck:`false`,disabled:e.disabled,readonly:e.readonly,"aria-label":x.value,onBlur:D,onKeydown:A},null,40,J),[[c.vModelText,h.value]])]),a[7]||=(0,c.createElementVNode)(`span`,{class:`s-ui-color-values__separator`,"aria-hidden":`true`},null,-1),(0,c.createElementVNode)(`div`,Y,[(0,c.withDirectives)((0,c.createElementVNode)(`input`,{"onUpdate:modelValue":a[5]||=e=>g.value=e,class:`s-ui-color-values__input s-ui-typography-body-14-regular`,type:`text`,inputmode:`numeric`,spellcheck:`false`,disabled:e.disabled,readonly:e.readonly,"aria-label":S.value,onBlur:D,onKeydown:A},null,40,X),[[c.vModelText,g.value]])]),a[8]||=(0,c.createElementVNode)(`span`,{class:`s-ui-color-values__separator`,"aria-hidden":`true`},null,-1),(0,c.createElementVNode)(`div`,Z,[(0,c.withDirectives)((0,c.createElementVNode)(`input`,{"onUpdate:modelValue":a[6]||=e=>_.value=e,class:`s-ui-color-values__input s-ui-typography-body-14-regular`,type:`text`,inputmode:`numeric`,spellcheck:`false`,disabled:e.disabled,readonly:e.readonly,"aria-label":C.value,onBlur:D,onKeydown:A},null,40,Q),[[c.vModelText,_.value]])])],64))])])],16))}}),ee={class:`s-ui-color-picker__section`},te={class:`s-ui-color-picker__label`},ne={class:`s-ui-color-picker__section`},re={class:`s-ui-color-picker__label`},ie={class:`s-ui-color-picker__custom-editor`},ae={class:`s-ui-color-picker__custom-actions`},oe=(0,c.defineComponent)({__name:`SColorPicker`,props:(0,c.mergeModels)({disabled:{type:Boolean,default:!1},recommendedColors:{},recentColors:{default:()=>[]}},{modelValue:{},modelModifiers:{}}),emits:(0,c.mergeModels)([`select`,`customEditorOpen`,`customEditorClose`,`formatDropdownOpen`,`formatDropdownClose`],[`update:modelValue`]),setup(e,{emit:n}){let u=(0,c.useModel)(e,`modelValue`),d=n,{t:f}=(0,l.useUiKitI18n)(),p=(0,c.ref)(!1),m=(0,c.ref)(`#526DE3`),h=(0,c.ref)(t.o.HEX),g=(0,c.computed)(()=>e.recommendedColors&&e.recommendedColors.length>0?e.recommendedColors:t.r),_=(0,c.computed)(()=>e.recentColors.length<=17?e.recentColors:e.recentColors.slice(0,17)),v=()=>{if(u.value){m.value=u.value;return}m.value=`#526DE3`},y=e=>{d(`select`,e)},b=()=>{u.value=m.value,d(`select`,m.value),p.value=!1},x=()=>{p.value=!1};return(0,c.watch)(p,(e,t)=>{if(e&&!t){v(),d(`customEditorOpen`);return}!e&&t&&d(`customEditorClose`)}),(n,v)=>((0,c.openBlock)(),(0,c.createBlock)((0,c.unref)(s.r),(0,c.mergeProps)({width:336},n.$attrs),{default:(0,c.withCtx)(()=>[(0,c.createElementVNode)(`div`,{class:(0,c.normalizeClass)([`s-ui-color-picker`,{"s-ui-color-picker--disabled":e.disabled}])},[(0,c.createElementVNode)(`section`,ee,[(0,c.createElementVNode)(`span`,te,(0,c.toDisplayString)((0,c.unref)(f)(`colorPicker.recommendedColors`)),1),(0,c.createVNode)((0,c.unref)(t.t),{modelValue:u.value,"onUpdate:modelValue":v[0]||=e=>u.value=e,class:`s-ui-color-picker__palette`,layout:(0,c.unref)(t.n).GRID,colors:g.value,size:(0,c.unref)(l.ESColorSwatchSize).SIZE_32,disabled:e.disabled,onSelect:y},null,8,[`modelValue`,`layout`,`colors`,`size`,`disabled`])]),(0,c.createElementVNode)(`section`,ne,[(0,c.createElementVNode)(`span`,re,(0,c.toDisplayString)((0,c.unref)(f)(`colorPicker.recentColors`)),1),(0,c.createVNode)((0,c.unref)(t.t),{modelValue:u.value,"onUpdate:modelValue":v[7]||=e=>u.value=e,class:`s-ui-color-picker__palette`,layout:(0,c.unref)(t.n).ROW,colors:_.value,size:(0,c.unref)(l.ESColorSwatchSize).SIZE_32,disabled:e.disabled,onSelect:y},{append:(0,c.withCtx)(()=>[(0,c.createVNode)((0,c.unref)(o.t),{modelValue:p.value,"onUpdate:modelValue":v[6]||=e=>p.value=e,placement:(0,c.unref)(a.i).RIGHT_START,offset:8,shift:!0,flip:!0,disabled:e.disabled,"dismiss-on-click-outside":!0,"dismiss-on-escape":!0},{trigger:(0,c.withCtx)(({toggle:t,triggerProps:n})=>[(0,c.createVNode)((0,c.unref)(i.t),(0,c.mergeProps)(n,{class:`s-ui-color-picker__add-button`,appearance:(0,c.unref)(r.t).OUTLINED,variant:(0,c.unref)(r.r).NEUTRAL,size:(0,c.unref)(r.n).SMALL,icon:`plus`,"aria-label":(0,c.unref)(f)(`colorPicker.addCustomColor`),disabled:e.disabled,onClick:t}),null,16,[`appearance`,`variant`,`size`,`aria-label`,`disabled`,`onClick`])]),content:(0,c.withCtx)(()=>[(0,c.createVNode)((0,c.unref)(s.r),{width:320},{footer:(0,c.withCtx)(()=>[(0,c.createElementVNode)(`div`,ae,[(0,c.createVNode)((0,c.unref)(i.t),{class:`s-ui-color-picker__save-button`,appearance:(0,c.unref)(r.t).MAJOR,variant:(0,c.unref)(r.r).MAIN,size:(0,c.unref)(r.n).SMALL,disabled:e.disabled,onClick:b},{default:(0,c.withCtx)(()=>[(0,c.createTextVNode)((0,c.toDisplayString)((0,c.unref)(f)(`colorPicker.save`)),1)]),_:1},8,[`appearance`,`variant`,`size`,`disabled`]),(0,c.createVNode)((0,c.unref)(i.t),{class:`s-ui-color-picker__cancel-button`,appearance:(0,c.unref)(r.t).MINOR,variant:(0,c.unref)(r.r).NEUTRAL,size:(0,c.unref)(r.n).SMALL,disabled:e.disabled,onClick:x},{default:(0,c.withCtx)(()=>[(0,c.createTextVNode)((0,c.toDisplayString)((0,c.unref)(f)(`colorPicker.cancel`)),1)]),_:1},8,[`appearance`,`variant`,`size`,`disabled`])])]),default:(0,c.withCtx)(()=>[(0,c.createElementVNode)(`div`,ie,[(0,c.createVNode)(B,{modelValue:m.value,"onUpdate:modelValue":v[1]||=e=>m.value=e,disabled:e.disabled},null,8,[`modelValue`,`disabled`]),(0,c.createVNode)($,{modelValue:m.value,"onUpdate:modelValue":v[2]||=e=>m.value=e,format:h.value,"onUpdate:format":v[3]||=e=>h.value=e,disabled:e.disabled,onFormatDropdownOpen:v[4]||=e=>d(`formatDropdownOpen`),onFormatDropdownClose:v[5]||=e=>d(`formatDropdownClose`)},null,8,[`modelValue`,`format`,`disabled`])])]),_:1})]),_:1},8,[`modelValue`,`placement`,`disabled`])]),_:1},8,[`modelValue`,`layout`,`colors`,`size`,`disabled`])])],2)]),_:1},16))}});Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return oe}});
|
|
@@ -5,7 +5,7 @@ import { n as s, r as c, t as l } from "./SButton.types-CpdHQtyx.js";
|
|
|
5
5
|
import { t as u } from "./SButton-DnU_XZ1C.js";
|
|
6
6
|
import { i as d } from "./useFloatingOverlay-QcumEYEq.js";
|
|
7
7
|
import { t as f } from "./SDropdown-CTQ5Qlez.js";
|
|
8
|
-
import { r as p, t as m } from "./SSelect-
|
|
8
|
+
import { r as p, t as m } from "./SSelect-8RPurgr-.js";
|
|
9
9
|
import { Fragment as h, computed as g, createBlock as _, createElementBlock as v, createElementVNode as y, createTextVNode as b, createVNode as x, defineComponent as S, mergeModels as C, mergeProps as w, nextTick as T, normalizeClass as E, normalizeStyle as D, onMounted as O, openBlock as k, ref as A, shallowRef as j, toDisplayString as M, toRef as N, unref as P, useModel as F, useTemplateRef as I, vModelText as L, watch as R, withCtx as z, withDirectives as B } from "vue";
|
|
10
10
|
import { ESColorSwatchSize as V, SColorSwatch as ee, useUiKitI18n as H } from "@shtabapp/ui-kit-primitives";
|
|
11
11
|
import { useEventListener as U } from "@vueuse/core";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./SInlineMessage-gjkMiE-W.cjs"),t=require("./SLabel-CTiOAAOu.cjs");let n=require("vue"),r=require("@vueuse/core");var i=function(e){return e.FILLED=`filled`,e.BARE=`bare`,e}({}),a=RegExp(``,`g`),o=/[\r\n]+/g,s=/\s+/g,c=typeof global==`object`&&global&&global.Object===Object&&global,l=typeof self==`object`&&self&&self.Object===Object&&self,u=c||l||Function(`return this`)(),d=u.Symbol,f=Object.prototype,p=f.hasOwnProperty,m=f.toString,h=d?d.toStringTag:void 0;function g(e){var t=p.call(e,h),n=e[h];try{e[h]=void 0;var r=!0}catch{}var i=m.call(e);return r&&(t?e[h]=n:delete e[h]),i}var _=Object.prototype.toString;function v(e){return _.call(e)}var y=`[object Null]`,b=`[object Undefined]`,x=d?d.toStringTag:void 0;function S(e){return e==null?e===void 0?b:y:x&&x in Object(e)?g(e):v(e)}function C(e){return typeof e==`object`&&!!e}var w=`[object Symbol]`;function T(e){return typeof e==`symbol`||C(e)&&S(e)==w}var E=/\s/;function D(e){for(var t=e.length;t--&&E.test(e.charAt(t)););return t}var O=/^\s+/;function k(e){return e&&e.slice(0,D(e)+1).replace(O,``)}function A(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var j=NaN,M=/^[-+]0x[0-9a-f]+$/i,N=/^0b[01]+$/i,P=/^0o[0-7]+$/i,F=parseInt;function I(e){if(typeof e==`number`)return e;if(T(e))return j;if(A(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=A(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=k(e);var n=N.test(e);return n||P.test(e)?F(e.slice(2),n?2:8):M.test(e)?j:+e}var L=function(){return u.Date.now()},R=`Expected a function`,z=Math.max,B=Math.min;function V(e,t,n){var r,i,a,o,s,c,l=0,u=!1,d=!1,f=!0;if(typeof e!=`function`)throw TypeError(R);t=I(t)||0,A(n)&&(u=!!n.leading,d=`maxWait`in n,a=d?z(I(n.maxWait)||0,t):a,f=`trailing`in n?!!n.trailing:f);function p(t){var n=r,a=i;return r=i=void 0,l=t,o=e.apply(a,n),o}function m(e){return l=e,s=setTimeout(_,t),u?p(e):o}function h(e){var n=e-c,r=e-l,i=t-n;return d?B(i,a-r):i}function g(e){var n=e-c,r=e-l;return c===void 0||n>=t||n<0||d&&r>=a}function _(){var e=L();if(g(e))return v(e);s=setTimeout(_,h(e))}function v(e){return s=void 0,f&&r?p(e):(r=i=void 0,o)}function y(){s!==void 0&&clearTimeout(s),l=0,r=c=i=s=void 0}function b(){return s===void 0?o:v(L())}function x(){var e=L(),n=g(e);if(r=arguments,i=this,c=e,n){if(s===void 0)return m(c);if(d)return clearTimeout(s),s=setTimeout(_,t),p(c)}return s===void 0&&(s=setTimeout(_,t)),o}return x.cancel=y,x.flush=b,x}var H=(e,t={})=>{let r=(0,n.ref)([]),i=(0,n.ref)([]),a=(0,n.ref)(!1),{capacity:o=20,debounceDelay:s=500,autoCommit:c=!0}=t,l=()=>{i.value=[]},u=e=>r.value[r.value.length-1]?.content===e,d=()=>{r.value.length>o&&(r.value=r.value.slice(-o))},f=(0,n.ref)(!1),p=(e,t,n)=>{a.value||u(e)||(l(),r.value.push({content:e,timestamp:Date.now(),cursorPosition:t,meta:n}),d())},m=V((e,t,n)=>{p(e,t,n)},s),h=()=>{p(e.value||``,0,{type:`init`})};e.value!==void 0&&h();let g=null;return c&&(g=(0,n.watch)(e,(e,t)=>{if(!(a.value||e===t)){if(f.value){f.value=!1;return}m(e,e.length,{type:`auto`})}},{flush:`post`})),(0,n.onBeforeUnmount)(()=>{m.cancel(),g&&=(g(),null)}),{history:r,redoStack:i,canUndo:(0,n.computed)(()=>r.value.length>1),canRedo:(0,n.computed)(()=>i.value.length>0),undo:()=>{if(r.value.length<2)return;m.cancel(),f.value=!0;let t=r.value.pop();if(!t)return;i.value.unshift(t);let n=r.value[r.value.length-1];if(n)return e.value=n.content,{content:n.content,cursorPosition:n.cursorPosition}},redo:()=>{if(i.value.length===0)return;m.cancel(),f.value=!0;let t=i.value.shift();if(t)return r.value.push(t),e.value=t.content,{content:t.content,cursorPosition:t.cursorPosition}},commit:p,commitDebounced:m,clear:()=>{m.cancel(),r.value=[],i.value=[]},pause:()=>{m.cancel(),a.value=!0},resume:()=>{a.value=!1,h()}}},U=e=>{let t=(e,t)=>e===t||e instanceof Node&&t.contains(e),r=()=>{let t=window.getSelection();if(!t?.rangeCount||!e.value||!e.value.contains(t.anchorNode))return 0;let n=t.getRangeAt(0),r=n.cloneRange();return r.selectNodeContents(e.value),r.setEnd(n.endContainer,n.endOffset),r.toString().length},i=async(r,i=!1)=>{if(i&&await(0,n.nextTick)(),!e.value)return;let a=e.value,o=document.activeElement;if(!t(o,a))return;let s=window.getSelection();if(!s)return;let c=a.textContent||``,l=Math.max(0,Math.min(r,c.length)),u=0,d=[a],f=null,p=0;for(;d.length>0;){let e=d.pop();if(e.nodeType===Node.TEXT_NODE){let t=e.textContent?.length||0;if(u+t>=l){f=e,p=l-u;break}u+=t}else{let t=e.childNodes;for(let e=t.length-1;e>=0;e--){let n=t[e];n&&d.push(n)}}}let m=document.createRange();if(f)try{m.setStart(f,p),m.collapse(!0)}catch(e){console.warn(`Cursor positioning failed:`,e),m.selectNodeContents(a),m.collapse(!1)}else m.selectNodeContents(a),m.collapse(!1);s.removeAllRanges(),s.addRange(m)},a=()=>i(1/0),o=()=>i(0),s=(e,t)=>{let n=document.createRange();return n.selectNodeContents(e),n.collapse(!1),t.compareBoundaryPoints(Range.END_TO_END,n)===0},c=e=>{e.scrollLeft=e.scrollWidth-e.clientWidth};return{getCursorOffset:r,setCursorOffset:i,setCursorToEnd:a,setCursorToStart:o,scrollCaretIntoView:()=>{let t=e.value;if(!t)return;let n=window.getSelection();if(!n?.rangeCount||!n.isCollapsed||!n.anchorNode||!t.contains(n.anchorNode))return;let r=n.getRangeAt(0),i=r.getClientRects(),a=i.length>0?i[i.length-1]:r.getBoundingClientRect();if((!a||a.width===0&&a.height===0&&a.left===0&&a.right===0)&&s(t,r)){c(t);return}if(!a)return;let o=t.getBoundingClientRect();a.right>o.right?t.scrollLeft+=a.right-o.right:a.left<o.left&&(t.scrollLeft-=o.left-a.left)}}},W=(e,t={})=>{let i=(0,n.computed)(()=>(0,n.toValue)(t).multiline??!1),c=(0,n.computed)(()=>{let e=(0,n.toValue)(t).maxLength;if(!(typeof e!=`number`||!Number.isFinite(e)||e<=0))return e}),l=(0,n.ref)(null),u=(0,n.ref)(!0),d=(0,n.ref)(!1),f=(0,n.ref)(!1),{setCursorToEnd:p,getCursorOffset:m,setCursorOffset:h,scrollCaretIntoView:g}=U(l),{undo:_,redo:v,commit:y,commitDebounced:b}=H(e,{autoCommit:!1}),x=null,S=!1,C=e=>{let t=l.value;if(!t)return!1;let n=t.closest(`.s-ui-inline-input`);return n instanceof Element&&e instanceof Node&&n.contains(e)},w=()=>S?(S=!1,l.value?.blur(),!0):!1;(0,r.useEventListener)(document,`mousedown`,e=>{let t=l.value;t&&(S=!C(e.target),S&&document.activeElement===t&&t.blur())},{capture:!0});let T=()=>{i.value||g()};(0,r.useEventListener)(document,`selectionchange`,()=>{if(!(i.value||!l.value)&&document.activeElement===l.value){if(x!==null){l.value.scrollLeft=x,x=null;return}g()}});let E=e=>{let t=e.replace(a,``);return i.value||(t=t.replace(o,` `)),t},D=e=>E(e).length===0,O=e=>c.value===void 0||e.length<=c.value?e:e.slice(0,c.value),k=()=>{let e=l.value,t=window.getSelection();return!e||!t?.rangeCount||!t.anchorNode||!e.contains(t.anchorNode)?0:E(t.toString()).length},A=()=>{if(c.value===void 0||!l.value)return 1/0;let e=E(l.value.textContent||``).length,t=k();return Math.max(0,c.value-e+t)},j=e=>c.value===void 0||e.key.length!==1||e.ctrlKey||e.metaKey||e.altKey?!1:A()<=0,M=()=>{if(!l.value)return{changed:!1,content:``,cursor:0};(l.value.textContent||``)===``&&(l.value.textContent=``,p());let t=l.value.textContent||``,n=E(t),r=O(n),i=n!==r;i&&(l.value.textContent=r.length>0?r:``),u.value=r.length===0;let a=e.value!==r;a&&(e.value=r);let o=m();return t.startsWith(``)&&o>0&&--o,i&&(o=Math.min(o,r.length),h(o)),{changed:a||i,content:r,cursor:o}},N=()=>{d.value=!0;let{changed:e,content:t,cursor:r}=M();e&&b(t,r,{type:`input`}),(0,n.nextTick)(()=>{T(),d.value=!1})},P=()=>{w()||l.value&&(E(l.value.textContent||``)||(l.value.textContent!==``&&(l.value.textContent=``),p()))},F=()=>{l.value&&(u.value=D(l.value.textContent||``))},I=async e=>{e.preventDefault();let t=e.clipboardData?.getData(`text/plain`)||``,r=A();if(r<=0)return;t.length>r&&(t=t.slice(0,r)),i.value||(t=t.replace(o,` `));let a=t.trim().replace(s,` `);if(!a)return;let c=window.getSelection();if(!c||!c.rangeCount)return;d.value=!0;let l=c.getRangeAt(0);l.deleteContents();let u=document.createTextNode(a);l.insertNode(u),l.setStartAfter(u),l.setEndAfter(u),c.removeAllRanges(),c.addRange(l);let{changed:f,content:p,cursor:m}=M();f&&y(p,m,{type:`paste`}),i.value||await h(m),await(0,n.nextTick)(),T(),d.value=!1},L=e=>{let t=e.ctrlKey||e.metaKey,r=e.shiftKey;if(j(e)){e.preventDefault();return}if(!i.value&&(e.key===`Enter`||e.key===`NumpadEnter`)){e.preventDefault();return}if(!i.value&&t&&e.code===`KeyA`&&l.value){x=l.value.scrollLeft;return}if(t&&e.code===`KeyZ`){e.preventDefault(),f.value=!0;let t=r?v():_();t?(0,n.nextTick)(()=>{h(t.cursorPosition??t.content.length),(0,n.nextTick)(T),f.value=!1}):f.value=!1}},R=()=>{l.value&&document.activeElement!==l.value&&l.value.focus()},z=()=>{if(!l.value||i.value)return;d.value=!0;let t=O(E(l.value.innerText||l.value.textContent||``));e.value=t,l.value.textContent=t.length>0?t:``,u.value=t.length===0,(0,n.nextTick)(()=>{d.value=!1})};(0,n.watch)(i,(e,t)=>{e||!t||z()});let B=()=>{!l.value||e.value===void 0||(d.value=!0,M(),(0,n.nextTick)(()=>{d.value=!1}))};(0,n.watch)(c,(e,t)=>{e===void 0||t!==void 0&&e>=t||B()});let V=async t=>{if(d.value||!l.value)return;let r=O(t),i=l.value.textContent||``;(E(i)!==r||r===``&&i!==``)&&(l.value.textContent=r===``?``:r,u.value=r===``,r!==t&&(d.value=!0,e.value=r,(0,n.nextTick)(()=>{d.value=!1})),document.activeElement===l.value&&!f.value&&(await(0,n.nextTick)(),p()))};return(0,n.onMounted)(async()=>{await(0,n.nextTick)(),V(e.value)}),(0,n.watch)(l,t=>{t&&V(e.value)}),(0,n.watch)(e,e=>{V(e)}),{editableRef:l,isPlaceholderVisible:u,handleInput:N,handleFocus:P,handleBlur:F,handlePaste:I,handleKeydown:L,handleWrapperClick:R}},G={key:1,class:`s-ui-inline-input--messages`},K=(0,n.defineComponent)({__name:`SInlineInput`,props:(0,n.mergeModels)({label:{},labelProps:{},id:{},appearance:{default:()=>i.FILLED},tag:{default:`div`},multiline:{type:Boolean,default:!1},maxlength:{},placeholder:{default:``},helpMessages:{},errorMessages:{},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},spellcheck:{type:Boolean,default:!1}},{modelValue:{default:``},modelModifiers:{}}),emits:(0,n.mergeModels)([`blur`],[`update:modelValue`]),setup(r,{expose:i,emit:a}){let o=a,{editableRef:s,isPlaceholderVisible:c,handleInput:l,handleFocus:u,handleBlur:d,handlePaste:f,handleKeydown:p,handleWrapperClick:m}=W((0,n.useModel)(r,`modelValue`),()=>({multiline:r.multiline,maxLength:r.maxlength})),h=e=>e?typeof e==`string`?e.length?[e]:[]:e.filter(e=>e.length):[],g=(0,n.computed)(()=>h(r.helpMessages)),_=(0,n.computed)(()=>g.value.length>0),v=(0,n.computed)(()=>h(r.errorMessages)),y=(0,n.computed)(()=>v.value.length>0),b=(0,n.useId)(),x=(0,n.computed)(()=>r.id?r.id:b),S=(0,n.computed)(()=>!r.disabled&&!r.readonly),C=(0,n.computed)(()=>({"s-ui-inline-input--content-empty":c.value,"s-ui-inline-input--content-multiline":r.multiline})),w=(0,n.computed)(()=>({[`s-ui-inline-input--wrapper-appearance-${r.appearance}`]:!0,"s-ui-inline-input--wrapper-error":y.value,"s-ui-inline-input--wrapper-readonly":r.readonly,"s-ui-inline-input--wrapper-disabled":r.disabled})),T=()=>{d(),o(`blur`)},E=e=>{S.value&&e.target===e.currentTarget&&m()};return i({focus:()=>{if(!S.value)return;let e=s.value;if(e&&(e.focus(),e.innerText.length>0)){let t=document.createRange(),n=window.getSelection();t.selectNodeContents(e),t.collapse(!1),n?.removeAllRanges(),n?.addRange(t)}}}),(i,a)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,(0,n.mergeProps)({class:`s-ui-inline-input`},i.$attrs),[r.label||i.$slots.label?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),(0,n.mergeProps)({key:0},r.labelProps,{"html-for":x.value}),{default:(0,n.withCtx)(()=>[(0,n.renderSlot)(i.$slots,`label`,{},()=>[(0,n.createTextVNode)((0,n.toDisplayString)(r.label),1)])]),_:3},16,[`html-for`])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`div`,{class:(0,n.normalizeClass)([`s-ui-inline-input--wrapper`,w.value]),onClick:E},[i.$slots.default?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:`s-ui-inline-input--slot`,onClick:a[0]||=(0,n.withModifiers)(()=>{},[`stop`])},[(0,n.renderSlot)(i.$slots,`default`)])):(0,n.createCommentVNode)(``,!0),((0,n.openBlock)(),(0,n.createBlock)((0,n.resolveDynamicComponent)(r.tag),{ref_key:`editableRef`,ref:s,class:(0,n.normalizeClass)([`s-ui-inline-input--content`,C.value]),role:`textbox`,id:x.value,contenteditable:S.value,spellcheck:r.spellcheck,"data-placeholder":r.placeholder,"aria-placeholder":r.placeholder,"aria-readonly":r.readonly?!0:void 0,"aria-disabled":r.disabled?!0:void 0,"aria-multiline":r.multiline?!0:void 0,onInput:(0,n.unref)(l),onFocus:(0,n.unref)(u),onBlur:T,onKeydown:(0,n.unref)(p),onPaste:(0,n.unref)(f)},null,40,[`id`,`class`,`contenteditable`,`spellcheck`,`data-placeholder`,`aria-placeholder`,`aria-readonly`,`aria-disabled`,`aria-multiline`,`onInput`,`onFocus`,`onKeydown`,`onPaste`]))],2),_.value||y.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,G,[(0,n.renderSlot)(i.$slots,`message`,{},()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(g.value,(t,r)=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(e.t),{key:`help-${r}`,message:t},null,8,[`message`]))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(v.value,(t,r)=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(e.t),{key:`error-${r}`,message:t,"validation-status":(0,n.unref)(e.n).ERROR},null,8,[`message`,`validation-status`]))),128))])])):(0,n.createCommentVNode)(``,!0)],16))}});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return K}});
|
|
1
|
+
const e=require("./SInlineMessage-gjkMiE-W.cjs"),t=require("./SLabel-DLKfepRW.cjs");let n=require("vue"),r=require("@vueuse/core");var i=function(e){return e.FILLED=`filled`,e.BARE=`bare`,e}({}),a=RegExp(``,`g`),o=/[\r\n]+/g,s=/\s+/g,c=typeof global==`object`&&global&&global.Object===Object&&global,l=typeof self==`object`&&self&&self.Object===Object&&self,u=c||l||Function(`return this`)(),d=u.Symbol,f=Object.prototype,p=f.hasOwnProperty,m=f.toString,h=d?d.toStringTag:void 0;function g(e){var t=p.call(e,h),n=e[h];try{e[h]=void 0;var r=!0}catch{}var i=m.call(e);return r&&(t?e[h]=n:delete e[h]),i}var _=Object.prototype.toString;function v(e){return _.call(e)}var y=`[object Null]`,b=`[object Undefined]`,x=d?d.toStringTag:void 0;function S(e){return e==null?e===void 0?b:y:x&&x in Object(e)?g(e):v(e)}function C(e){return typeof e==`object`&&!!e}var w=`[object Symbol]`;function T(e){return typeof e==`symbol`||C(e)&&S(e)==w}var E=/\s/;function D(e){for(var t=e.length;t--&&E.test(e.charAt(t)););return t}var O=/^\s+/;function k(e){return e&&e.slice(0,D(e)+1).replace(O,``)}function A(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var j=NaN,M=/^[-+]0x[0-9a-f]+$/i,N=/^0b[01]+$/i,P=/^0o[0-7]+$/i,F=parseInt;function I(e){if(typeof e==`number`)return e;if(T(e))return j;if(A(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=A(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=k(e);var n=N.test(e);return n||P.test(e)?F(e.slice(2),n?2:8):M.test(e)?j:+e}var L=function(){return u.Date.now()},R=`Expected a function`,z=Math.max,B=Math.min;function V(e,t,n){var r,i,a,o,s,c,l=0,u=!1,d=!1,f=!0;if(typeof e!=`function`)throw TypeError(R);t=I(t)||0,A(n)&&(u=!!n.leading,d=`maxWait`in n,a=d?z(I(n.maxWait)||0,t):a,f=`trailing`in n?!!n.trailing:f);function p(t){var n=r,a=i;return r=i=void 0,l=t,o=e.apply(a,n),o}function m(e){return l=e,s=setTimeout(_,t),u?p(e):o}function h(e){var n=e-c,r=e-l,i=t-n;return d?B(i,a-r):i}function g(e){var n=e-c,r=e-l;return c===void 0||n>=t||n<0||d&&r>=a}function _(){var e=L();if(g(e))return v(e);s=setTimeout(_,h(e))}function v(e){return s=void 0,f&&r?p(e):(r=i=void 0,o)}function y(){s!==void 0&&clearTimeout(s),l=0,r=c=i=s=void 0}function b(){return s===void 0?o:v(L())}function x(){var e=L(),n=g(e);if(r=arguments,i=this,c=e,n){if(s===void 0)return m(c);if(d)return clearTimeout(s),s=setTimeout(_,t),p(c)}return s===void 0&&(s=setTimeout(_,t)),o}return x.cancel=y,x.flush=b,x}var H=(e,t={})=>{let r=(0,n.ref)([]),i=(0,n.ref)([]),a=(0,n.ref)(!1),{capacity:o=20,debounceDelay:s=500,autoCommit:c=!0}=t,l=()=>{i.value=[]},u=e=>r.value[r.value.length-1]?.content===e,d=()=>{r.value.length>o&&(r.value=r.value.slice(-o))},f=(0,n.ref)(!1),p=(e,t,n)=>{a.value||u(e)||(l(),r.value.push({content:e,timestamp:Date.now(),cursorPosition:t,meta:n}),d())},m=V((e,t,n)=>{p(e,t,n)},s),h=()=>{p(e.value||``,0,{type:`init`})};e.value!==void 0&&h();let g=null;return c&&(g=(0,n.watch)(e,(e,t)=>{if(!(a.value||e===t)){if(f.value){f.value=!1;return}m(e,e.length,{type:`auto`})}},{flush:`post`})),(0,n.onBeforeUnmount)(()=>{m.cancel(),g&&=(g(),null)}),{history:r,redoStack:i,canUndo:(0,n.computed)(()=>r.value.length>1),canRedo:(0,n.computed)(()=>i.value.length>0),undo:()=>{if(r.value.length<2)return;m.cancel(),f.value=!0;let t=r.value.pop();if(!t)return;i.value.unshift(t);let n=r.value[r.value.length-1];if(n)return e.value=n.content,{content:n.content,cursorPosition:n.cursorPosition}},redo:()=>{if(i.value.length===0)return;m.cancel(),f.value=!0;let t=i.value.shift();if(t)return r.value.push(t),e.value=t.content,{content:t.content,cursorPosition:t.cursorPosition}},commit:p,commitDebounced:m,clear:()=>{m.cancel(),r.value=[],i.value=[]},pause:()=>{m.cancel(),a.value=!0},resume:()=>{a.value=!1,h()}}},U=e=>{let t=(e,t)=>e===t||e instanceof Node&&t.contains(e),r=()=>{let t=window.getSelection();if(!t?.rangeCount||!e.value||!e.value.contains(t.anchorNode))return 0;let n=t.getRangeAt(0),r=n.cloneRange();return r.selectNodeContents(e.value),r.setEnd(n.endContainer,n.endOffset),r.toString().length},i=async(r,i=!1)=>{if(i&&await(0,n.nextTick)(),!e.value)return;let a=e.value,o=document.activeElement;if(!t(o,a))return;let s=window.getSelection();if(!s)return;let c=a.textContent||``,l=Math.max(0,Math.min(r,c.length)),u=0,d=[a],f=null,p=0;for(;d.length>0;){let e=d.pop();if(e.nodeType===Node.TEXT_NODE){let t=e.textContent?.length||0;if(u+t>=l){f=e,p=l-u;break}u+=t}else{let t=e.childNodes;for(let e=t.length-1;e>=0;e--){let n=t[e];n&&d.push(n)}}}let m=document.createRange();if(f)try{m.setStart(f,p),m.collapse(!0)}catch(e){console.warn(`Cursor positioning failed:`,e),m.selectNodeContents(a),m.collapse(!1)}else m.selectNodeContents(a),m.collapse(!1);s.removeAllRanges(),s.addRange(m)},a=()=>i(1/0),o=()=>i(0),s=(e,t)=>{let n=document.createRange();return n.selectNodeContents(e),n.collapse(!1),t.compareBoundaryPoints(Range.END_TO_END,n)===0},c=e=>{e.scrollLeft=e.scrollWidth-e.clientWidth};return{getCursorOffset:r,setCursorOffset:i,setCursorToEnd:a,setCursorToStart:o,scrollCaretIntoView:()=>{let t=e.value;if(!t)return;let n=window.getSelection();if(!n?.rangeCount||!n.isCollapsed||!n.anchorNode||!t.contains(n.anchorNode))return;let r=n.getRangeAt(0),i=r.getClientRects(),a=i.length>0?i[i.length-1]:r.getBoundingClientRect();if((!a||a.width===0&&a.height===0&&a.left===0&&a.right===0)&&s(t,r)){c(t);return}if(!a)return;let o=t.getBoundingClientRect();a.right>o.right?t.scrollLeft+=a.right-o.right:a.left<o.left&&(t.scrollLeft-=o.left-a.left)}}},W=(e,t={})=>{let i=(0,n.computed)(()=>(0,n.toValue)(t).multiline??!1),c=(0,n.computed)(()=>{let e=(0,n.toValue)(t).maxLength;if(!(typeof e!=`number`||!Number.isFinite(e)||e<=0))return e}),l=(0,n.ref)(null),u=(0,n.ref)(!0),d=(0,n.ref)(!1),f=(0,n.ref)(!1),{setCursorToEnd:p,getCursorOffset:m,setCursorOffset:h,scrollCaretIntoView:g}=U(l),{undo:_,redo:v,commit:y,commitDebounced:b}=H(e,{autoCommit:!1}),x=null,S=!1,C=e=>{let t=l.value;if(!t)return!1;let n=t.closest(`.s-ui-inline-input`);return n instanceof Element&&e instanceof Node&&n.contains(e)},w=()=>S?(S=!1,l.value?.blur(),!0):!1;(0,r.useEventListener)(document,`mousedown`,e=>{let t=l.value;t&&(S=!C(e.target),S&&document.activeElement===t&&t.blur())},{capture:!0});let T=()=>{i.value||g()};(0,r.useEventListener)(document,`selectionchange`,()=>{if(!(i.value||!l.value)&&document.activeElement===l.value){if(x!==null){l.value.scrollLeft=x,x=null;return}g()}});let E=e=>{let t=e.replace(a,``);return i.value||(t=t.replace(o,` `)),t},D=e=>E(e).length===0,O=e=>c.value===void 0||e.length<=c.value?e:e.slice(0,c.value),k=()=>{let e=l.value,t=window.getSelection();return!e||!t?.rangeCount||!t.anchorNode||!e.contains(t.anchorNode)?0:E(t.toString()).length},A=()=>{if(c.value===void 0||!l.value)return 1/0;let e=E(l.value.textContent||``).length,t=k();return Math.max(0,c.value-e+t)},j=e=>c.value===void 0||e.key.length!==1||e.ctrlKey||e.metaKey||e.altKey?!1:A()<=0,M=()=>{if(!l.value)return{changed:!1,content:``,cursor:0};(l.value.textContent||``)===``&&(l.value.textContent=``,p());let t=l.value.textContent||``,n=E(t),r=O(n),i=n!==r;i&&(l.value.textContent=r.length>0?r:``),u.value=r.length===0;let a=e.value!==r;a&&(e.value=r);let o=m();return t.startsWith(``)&&o>0&&--o,i&&(o=Math.min(o,r.length),h(o)),{changed:a||i,content:r,cursor:o}},N=()=>{d.value=!0;let{changed:e,content:t,cursor:r}=M();e&&b(t,r,{type:`input`}),(0,n.nextTick)(()=>{T(),d.value=!1})},P=()=>{w()||l.value&&(E(l.value.textContent||``)||(l.value.textContent!==``&&(l.value.textContent=``),p()))},F=()=>{l.value&&(u.value=D(l.value.textContent||``))},I=async e=>{e.preventDefault();let t=e.clipboardData?.getData(`text/plain`)||``,r=A();if(r<=0)return;t.length>r&&(t=t.slice(0,r)),i.value||(t=t.replace(o,` `));let a=t.trim().replace(s,` `);if(!a)return;let c=window.getSelection();if(!c||!c.rangeCount)return;d.value=!0;let l=c.getRangeAt(0);l.deleteContents();let u=document.createTextNode(a);l.insertNode(u),l.setStartAfter(u),l.setEndAfter(u),c.removeAllRanges(),c.addRange(l);let{changed:f,content:p,cursor:m}=M();f&&y(p,m,{type:`paste`}),i.value||await h(m),await(0,n.nextTick)(),T(),d.value=!1},L=e=>{let t=e.ctrlKey||e.metaKey,r=e.shiftKey;if(j(e)){e.preventDefault();return}if(!i.value&&(e.key===`Enter`||e.key===`NumpadEnter`)){e.preventDefault();return}if(!i.value&&t&&e.code===`KeyA`&&l.value){x=l.value.scrollLeft;return}if(t&&e.code===`KeyZ`){e.preventDefault(),f.value=!0;let t=r?v():_();t?(0,n.nextTick)(()=>{h(t.cursorPosition??t.content.length),(0,n.nextTick)(T),f.value=!1}):f.value=!1}},R=()=>{l.value&&document.activeElement!==l.value&&l.value.focus()},z=()=>{if(!l.value||i.value)return;d.value=!0;let t=O(E(l.value.innerText||l.value.textContent||``));e.value=t,l.value.textContent=t.length>0?t:``,u.value=t.length===0,(0,n.nextTick)(()=>{d.value=!1})};(0,n.watch)(i,(e,t)=>{e||!t||z()});let B=()=>{!l.value||e.value===void 0||(d.value=!0,M(),(0,n.nextTick)(()=>{d.value=!1}))};(0,n.watch)(c,(e,t)=>{e===void 0||t!==void 0&&e>=t||B()});let V=async t=>{if(d.value||!l.value)return;let r=O(t),i=l.value.textContent||``;(E(i)!==r||r===``&&i!==``)&&(l.value.textContent=r===``?``:r,u.value=r===``,r!==t&&(d.value=!0,e.value=r,(0,n.nextTick)(()=>{d.value=!1})),document.activeElement===l.value&&!f.value&&(await(0,n.nextTick)(),p()))};return(0,n.onMounted)(async()=>{await(0,n.nextTick)(),V(e.value)}),(0,n.watch)(l,t=>{t&&V(e.value)}),(0,n.watch)(e,e=>{V(e)}),{editableRef:l,isPlaceholderVisible:u,handleInput:N,handleFocus:P,handleBlur:F,handlePaste:I,handleKeydown:L,handleWrapperClick:R}},G={key:1,class:`s-ui-inline-input--messages`},K=(0,n.defineComponent)({__name:`SInlineInput`,props:(0,n.mergeModels)({label:{},labelProps:{},id:{},appearance:{default:()=>i.FILLED},tag:{default:`div`},multiline:{type:Boolean,default:!1},maxlength:{},placeholder:{default:``},helpMessages:{},errorMessages:{},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},spellcheck:{type:Boolean,default:!1}},{modelValue:{default:``},modelModifiers:{}}),emits:(0,n.mergeModels)([`blur`],[`update:modelValue`]),setup(r,{expose:i,emit:a}){let o=a,{editableRef:s,isPlaceholderVisible:c,handleInput:l,handleFocus:u,handleBlur:d,handlePaste:f,handleKeydown:p,handleWrapperClick:m}=W((0,n.useModel)(r,`modelValue`),()=>({multiline:r.multiline,maxLength:r.maxlength})),h=e=>e?typeof e==`string`?e.length?[e]:[]:e.filter(e=>e.length):[],g=(0,n.computed)(()=>h(r.helpMessages)),_=(0,n.computed)(()=>g.value.length>0),v=(0,n.computed)(()=>h(r.errorMessages)),y=(0,n.computed)(()=>v.value.length>0),b=(0,n.useId)(),x=(0,n.computed)(()=>r.id?r.id:b),S=(0,n.computed)(()=>!r.disabled&&!r.readonly),C=(0,n.computed)(()=>({"s-ui-inline-input--content-empty":c.value,"s-ui-inline-input--content-multiline":r.multiline})),w=(0,n.computed)(()=>({[`s-ui-inline-input--wrapper-appearance-${r.appearance}`]:!0,"s-ui-inline-input--wrapper-error":y.value,"s-ui-inline-input--wrapper-readonly":r.readonly,"s-ui-inline-input--wrapper-disabled":r.disabled})),T=()=>{d(),o(`blur`)},E=e=>{S.value&&e.target===e.currentTarget&&m()};return i({focus:()=>{if(!S.value)return;let e=s.value;if(e&&(e.focus(),e.innerText.length>0)){let t=document.createRange(),n=window.getSelection();t.selectNodeContents(e),t.collapse(!1),n?.removeAllRanges(),n?.addRange(t)}}}),(i,a)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,(0,n.mergeProps)({class:`s-ui-inline-input`},i.$attrs),[r.label||i.$slots.label?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),(0,n.mergeProps)({key:0},r.labelProps,{"html-for":x.value}),{default:(0,n.withCtx)(()=>[(0,n.renderSlot)(i.$slots,`label`,{},()=>[(0,n.createTextVNode)((0,n.toDisplayString)(r.label),1)])]),_:3},16,[`html-for`])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`div`,{class:(0,n.normalizeClass)([`s-ui-inline-input--wrapper`,w.value]),onClick:E},[i.$slots.default?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:`s-ui-inline-input--slot`,onClick:a[0]||=(0,n.withModifiers)(()=>{},[`stop`])},[(0,n.renderSlot)(i.$slots,`default`)])):(0,n.createCommentVNode)(``,!0),((0,n.openBlock)(),(0,n.createBlock)((0,n.resolveDynamicComponent)(r.tag),{ref_key:`editableRef`,ref:s,class:(0,n.normalizeClass)([`s-ui-inline-input--content`,C.value]),role:`textbox`,id:x.value,contenteditable:S.value,spellcheck:r.spellcheck,"data-placeholder":r.placeholder,"aria-placeholder":r.placeholder,"aria-readonly":r.readonly?!0:void 0,"aria-disabled":r.disabled?!0:void 0,"aria-multiline":r.multiline?!0:void 0,onInput:(0,n.unref)(l),onFocus:(0,n.unref)(u),onBlur:T,onKeydown:(0,n.unref)(p),onPaste:(0,n.unref)(f)},null,40,[`id`,`class`,`contenteditable`,`spellcheck`,`data-placeholder`,`aria-placeholder`,`aria-readonly`,`aria-disabled`,`aria-multiline`,`onInput`,`onFocus`,`onKeydown`,`onPaste`]))],2),_.value||y.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,G,[(0,n.renderSlot)(i.$slots,`message`,{},()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(g.value,(t,r)=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(e.t),{key:`help-${r}`,message:t},null,8,[`message`]))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(v.value,(t,r)=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(e.t),{key:`error-${r}`,message:t,"validation-status":(0,n.unref)(e.n).ERROR},null,8,[`message`,`validation-status`]))),128))])])):(0,n.createCommentVNode)(``,!0)],16))}});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return K}});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as e, t } from "./SInlineMessage-Dirk5RwO.js";
|
|
2
|
-
import { t as n } from "./SLabel-
|
|
2
|
+
import { t as n } from "./SLabel-FHHPlcKq.js";
|
|
3
3
|
import { Fragment as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createTextVNode as l, defineComponent as u, mergeModels as d, mergeProps as f, nextTick as p, normalizeClass as m, onBeforeUnmount as h, onMounted as g, openBlock as _, ref as v, renderList as y, renderSlot as b, resolveDynamicComponent as x, toDisplayString as S, toValue as C, unref as w, useId as T, useModel as E, watch as D, withCtx as O, withModifiers as k } from "vue";
|
|
4
4
|
import { useEventListener as A } from "@vueuse/core";
|
|
5
5
|
//#region src/components/SInlineInput/SInlineInput.types.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { n as e, r as t, t as n } from "./SButton.types-CpdHQtyx.js";
|
|
2
2
|
import { t as r } from "./SButton-DnU_XZ1C.js";
|
|
3
3
|
import { n as ee, t as i } from "./SInlineMessage-Dirk5RwO.js";
|
|
4
|
-
import { t as te } from "./SLabel-
|
|
4
|
+
import { t as te } from "./SLabel-FHHPlcKq.js";
|
|
5
5
|
import { n as a, t as o } from "./useFieldMessages-Cb06My1W.js";
|
|
6
6
|
import { Fragment as s, computed as c, createBlock as l, createCommentVNode as u, createElementBlock as d, createElementVNode as f, createTextVNode as p, createVNode as m, defineComponent as h, mergeModels as g, mergeProps as _, normalizeClass as v, openBlock as y, renderList as b, renderSlot as x, toDisplayString as S, unref as C, useAttrs as w, useId as ne, useModel as re, useSlots as ie, useTemplateRef as T, vModelDynamic as ae, withCtx as oe, withDirectives as se, withModifiers as ce } from "vue";
|
|
7
7
|
import { SIcon as le, useUiKitI18n as ue } from "@shtabapp/ui-kit-primitives";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./SButton.types-UKroD-ev.cjs"),t=require("./SButton-C-z_q5CG.cjs"),n=require("./SInlineMessage-gjkMiE-W.cjs"),r=require("./SLabel-
|
|
1
|
+
const e=require("./SButton.types-UKroD-ev.cjs"),t=require("./SButton-C-z_q5CG.cjs"),n=require("./SInlineMessage-gjkMiE-W.cjs"),r=require("./SLabel-DLKfepRW.cjs"),i=require("./useFieldMessages-CzjU0ajM.cjs");let a=require("vue"),o=require("@shtabapp/ui-kit-primitives");var s=function(e){return e.NONE=`none`,e.HORIZONTAL=`horizontal`,e.VERTICAL=`vertical`,e}({}),c=[`inert`,`aria-disabled`],l={key:0,class:`s-ui-input__prepend`},u={class:`s-ui-input__row`},d={key:0,class:`s-ui-input__prefix`},f=[`id`,`type`,`name`,`placeholder`,`disabled`,`readonly`,`autocomplete`],p={key:0,class:`s-ui-input__inline`},m={key:1,class:`s-ui-input__clear`},h={key:2,class:`s-ui-input__action`},g={key:1,class:`s-ui-input__messages`},_=16,v=(0,a.defineComponent)({inheritAttrs:!1,__name:`SInput`,props:(0,a.mergeModels)({label:{},labelProps:{},placeholder:{},helpMessages:{},errorMessages:{},bordered:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},hasValue:{type:Boolean},focused:{type:Boolean,default:!1},iconLeft:{},iconRight:{},customize:{default:()=>s.NONE},name:{},type:{default:`text`},id:{},autocomplete:{}},{modelValue:{default:``},modelModifiers:{}}),emits:(0,a.mergeModels)([`clear`,`focus`,`blur`],[`update:modelValue`]),setup(v,{expose:y,emit:b}){let x=(0,a.useModel)(v,`modelValue`),{t:S}=(0,o.useUiKitI18n)(),C=b,w=(0,a.useAttrs)(),T=(0,a.useSlots)(),E=(0,a.useId)(),D=(0,a.useTemplateRef)(`fieldElementRef`),O=(0,a.useTemplateRef)(`inputElementRef`),{isFocused:k,handleFocus:A,handleFocusOut:j}=i.n({isDisabled:()=>v.disabled,blurField:()=>X(),emitFocus:e=>C(`focus`,e),emitBlur:e=>C(`blur`,e)}),{normalizedHelpMessages:M,normalizedErrorMessages:N,hasErrorMessages:P,hasHelpMessages:F}=i.t(()=>v.helpMessages,()=>v.errorMessages),I=(0,a.computed)(()=>v.id?v.id:E),L=(0,a.computed)(()=>!!(v.label||T.label)),R=(0,a.computed)(()=>!!(v.iconLeft||T.prefix)),z=(0,a.computed)(()=>v.customize===s.VERTICAL&&!!T.prepend),B=(0,a.computed)(()=>v.customize===s.HORIZONTAL&&!!T.prepend),V=(0,a.computed)(()=>!v.clearable||v.disabled||v.readonly?!1:G.value),H=(0,a.computed)(()=>{if(!k.value)return-1}),U=(0,a.computed)(()=>!!(v.iconRight||T.action)),W=(0,a.computed)(()=>!!T.message||F.value||P.value),G=(0,a.computed)(()=>v.hasValue===void 0?x.value.length>0:v.hasValue),K=(0,a.computed)(()=>({"s-ui-input--disabled":v.disabled,"s-ui-input--readonly":v.readonly})),q=(0,a.computed)(()=>[{"s-ui-input__field--bordered":v.bordered,"s-ui-input__field--borderless":!v.bordered,"s-ui-input__field--disabled":v.disabled,"s-ui-input__field--readonly":v.readonly,"s-ui-input__field--error":P.value,"s-ui-input__field--filled":G.value,"s-ui-input__field--vertical":v.customize===s.VERTICAL,"s-ui-input__field--focused":k.value||v.focused}]),J=e=>{let t=D.value;t&&t.querySelector(`.s-ui-input__control, .s-ui-select__control, .s-ui-select__search-input, [tabindex]:not([tabindex="-1"])`)?.focus(e)},Y=e=>{if(T.control){J(e);return}O.value?.focus(e)},X=()=>{if(T.control){let e=document.activeElement;e instanceof HTMLElement&&D.value?.contains(e)&&e.blur();return}O.value?.blur()},Z=e=>{v.disabled||v.readonly||e.target instanceof HTMLElement&&(e.target.closest(`.s-ui-input__prepend, .s-ui-input__inline, .s-ui-input__clear, .s-ui-input__action`)||Y())},Q=()=>{x.value=``,C(`clear`),Y()};return y({blur:X,focus:Y,fieldElementRef:D,inputElementRef:O}),(i,y)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:(0,a.normalizeClass)([`s-ui-input`,K.value])},[L.value?((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(r.t),(0,a.mergeProps)({key:0},v.labelProps,{"html-for":I.value}),{default:(0,a.withCtx)(()=>[(0,a.renderSlot)(i.$slots,`label`,{},()=>[(0,a.createTextVNode)((0,a.toDisplayString)(v.label),1)])]),_:3},16,[`html-for`])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`div`,{ref_key:`fieldElementRef`,ref:D,class:(0,a.normalizeClass)([`s-ui-input__field`,q.value]),inert:v.disabled?!0:void 0,"aria-disabled":v.disabled?!0:void 0,onClick:y[2]||=e=>Z(e),onFocusout:y[3]||=(...e)=>(0,a.unref)(j)&&(0,a.unref)(j)(...e)},[z.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,l,[(0,a.renderSlot)(i.$slots,`prepend`,{disabled:v.disabled})])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`div`,u,[R.value?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,d,[(0,a.renderSlot)(i.$slots,`prefix`,{disabled:v.disabled},()=>[v.iconLeft?((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(o.SIcon),{key:0,name:v.iconLeft,size:_},null,8,[`name`])):(0,a.createCommentVNode)(``,!0)])])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`div`,{class:(0,a.normalizeClass)([`s-ui-input__control-wrap`,{"s-ui-input__control-wrap--horizontal":v.customize===(0,a.unref)(s).HORIZONTAL}])},[(0,a.renderSlot)(i.$slots,`control`,{disabled:v.disabled},()=>[(0,a.withDirectives)((0,a.createElementVNode)(`input`,(0,a.mergeProps)({id:I.value,ref_key:`inputElementRef`,ref:O,"onUpdate:modelValue":y[0]||=e=>x.value=e,class:`s-ui-input__control s-ui-typography-body-14-regular`,type:v.type,name:v.name,placeholder:v.placeholder,disabled:v.disabled,readonly:v.readonly,autocomplete:v.autocomplete},(0,a.unref)(w),{onFocus:y[1]||=(...e)=>(0,a.unref)(A)&&(0,a.unref)(A)(...e)}),null,16,f),[[a.vModelDynamic,x.value]])]),B.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,p,[(0,a.renderSlot)(i.$slots,`prepend`,{disabled:v.disabled})])):(0,a.createCommentVNode)(``,!0)],2),V.value?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,m,[(0,a.createVNode)((0,a.unref)(t.t),{appearance:(0,a.unref)(e.t).BARE,variant:(0,a.unref)(e.r).NEUTRAL,size:(0,a.unref)(e.n).SMALL,icon:`closeMini`,"aria-label":(0,a.unref)(S)(`input.clear`),tabindex:H.value,onClick:(0,a.withModifiers)(Q,[`stop`])},null,8,[`appearance`,`variant`,`size`,`aria-label`,`tabindex`])])):(0,a.createCommentVNode)(``,!0),U.value?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,h,[(0,a.renderSlot)(i.$slots,`action`,{disabled:v.disabled},()=>[v.iconRight?((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(t.t),{key:0,appearance:(0,a.unref)(e.t).BARE,variant:(0,a.unref)(e.r).NEUTRAL,size:(0,a.unref)(e.n).SMALL,disabled:v.disabled,icon:v.iconRight,tabindex:-1},null,8,[`appearance`,`variant`,`size`,`disabled`,`icon`])):(0,a.createCommentVNode)(``,!0)])])):(0,a.createCommentVNode)(``,!0)])],42,c),W.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,g,[(0,a.renderSlot)(i.$slots,`message`,{},()=>[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)((0,a.unref)(M),(e,t)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(n.t),{key:`help-${t}`,message:e},null,8,[`message`]))),128)),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)((0,a.unref)(N),(e,t)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(n.t),{key:`error-${t}`,message:e,"validation-status":(0,a.unref)(n.n).ERROR},null,8,[`message`,`validation-status`]))),128))])])):(0,a.createCommentVNode)(``,!0)],2))}});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return v}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
let e=require("vue"),t=require("@shtabapp/ui-kit-primitives");var n=function(e){return e.EXTRA_SMALL=`extra-small`,e.SMALL=`small`,e.MEDIUM=`medium`,e}({}),r=function(e){return e.NEUTRAL=`neutral`,e.MAIN=`main`,e.ERROR=`error`,e.SUCCESS=`success`,e}({}),i={key:0,class:`s-ui-label__icon s-ui-label__icon_left`},a={class:`s-ui-label__text`},o={key:1,class:`s-ui-label__hint`},s={key:2,class:`s-ui-label__icon s-ui-label__icon_right`},c=16,l=(0,e.defineComponent)({__name:`SLabel`,props:{text:{},size:{default:()=>n.MEDIUM},variant:{default:()=>r.NEUTRAL},required:{type:Boolean,default:!1},iconLeft:{},iconRight:{},htmlFor:{}},setup(r){let l=(0,e.useSlots)(),u=(0,e.computed)(()=>r.htmlFor?`label`:`span`),d=(0,e.computed)(()=>[`s-ui-label--size-${r.size}`,`s-ui-label--variant-${r.variant}`]),f=(0,e.computed)(()=>r.size===n.EXTRA_SMALL?`s-ui-typography-label-10-medium`:r.size===n.SMALL?`s-ui-typography-label-12-medium`:`s-ui-typography-label-14-medium`),p=(0,e.computed)(()=>{if(r.size===n.SMALL||r.size===n.EXTRA_SMALL)return`s-ui-typography-label-14-medium`});return(n,m)=>((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(u.value),{class:(0,e.normalizeClass)([`s-ui-label`,d.value]),for:r.htmlFor},{default:(0,e.withCtx)(()=>[r.iconLeft?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,i,[(0,e.createVNode)((0,e.unref)(t.SIcon),{name:r.iconLeft,size:c},null,8,[`name`])])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,{class:(0,e.normalizeClass)([`s-ui-label__body`,f.value])},[(0,e.createElementVNode)(`span`,a,[(0,e.renderSlot)(n.$slots,`default`,{},()=>[(0,e.createTextVNode)((0,e.toDisplayString)(r.text),1)])]),r.required?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,{key:0,class:(0,e.normalizeClass)([`s-ui-label__required`,p.value])},` * `,2)):(0,e.createCommentVNode)(``,!0)],2),(0,e.unref)(l).hint?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,o,[(0,e.renderSlot)(n.$slots,`hint`)])):(0,e.createCommentVNode)(``,!0),r.iconRight?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,s,[(0,e.createVNode)((0,e.unref)(t.SIcon),{name:r.iconRight,size:c},null,8,[`name`])])):(0,e.createCommentVNode)(``,!0)]),_:3},8,[`class`,`for`]))}});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return l}});
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { computed as e, createBlock as t, createCommentVNode as n, createElementBlock as r, createElementVNode as i, createTextVNode as a, createVNode as o, defineComponent as s, normalizeClass as c, openBlock as l, renderSlot as u, resolveDynamicComponent as d, toDisplayString as f, unref as p, useSlots as m, withCtx as h } from "vue";
|
|
2
|
+
import { SIcon as g } from "@shtabapp/ui-kit-primitives";
|
|
3
|
+
//#region src/components/SLabel/SLabel.types.ts
|
|
4
|
+
var _ = /* @__PURE__ */ function(e) {
|
|
5
|
+
return e.EXTRA_SMALL = "extra-small", e.SMALL = "small", e.MEDIUM = "medium", e;
|
|
6
|
+
}({}), v = /* @__PURE__ */ function(e) {
|
|
7
|
+
return e.NEUTRAL = "neutral", e.MAIN = "main", e.ERROR = "error", e.SUCCESS = "success", e;
|
|
8
|
+
}({}), y = {
|
|
9
|
+
key: 0,
|
|
10
|
+
class: "s-ui-label__icon s-ui-label__icon_left"
|
|
11
|
+
}, b = { class: "s-ui-label__text" }, x = {
|
|
12
|
+
key: 1,
|
|
13
|
+
class: "s-ui-label__hint"
|
|
14
|
+
}, S = {
|
|
15
|
+
key: 2,
|
|
16
|
+
class: "s-ui-label__icon s-ui-label__icon_right"
|
|
17
|
+
}, C = 16, w = /* @__PURE__ */ s({
|
|
18
|
+
__name: "SLabel",
|
|
19
|
+
props: {
|
|
20
|
+
text: {},
|
|
21
|
+
size: { default: () => _.MEDIUM },
|
|
22
|
+
variant: { default: () => v.NEUTRAL },
|
|
23
|
+
required: {
|
|
24
|
+
type: Boolean,
|
|
25
|
+
default: !1
|
|
26
|
+
},
|
|
27
|
+
iconLeft: {},
|
|
28
|
+
iconRight: {},
|
|
29
|
+
htmlFor: {}
|
|
30
|
+
},
|
|
31
|
+
setup(s) {
|
|
32
|
+
let v = m(), w = e(() => s.htmlFor ? "label" : "span"), T = e(() => [`s-ui-label--size-${s.size}`, `s-ui-label--variant-${s.variant}`]), E = e(() => s.size === _.EXTRA_SMALL ? "s-ui-typography-label-10-medium" : s.size === _.SMALL ? "s-ui-typography-label-12-medium" : "s-ui-typography-label-14-medium"), D = e(() => {
|
|
33
|
+
if (s.size === _.SMALL || s.size === _.EXTRA_SMALL) return "s-ui-typography-label-14-medium";
|
|
34
|
+
});
|
|
35
|
+
return (e, m) => (l(), t(d(w.value), {
|
|
36
|
+
class: c(["s-ui-label", T.value]),
|
|
37
|
+
for: s.htmlFor
|
|
38
|
+
}, {
|
|
39
|
+
default: h(() => [
|
|
40
|
+
s.iconLeft ? (l(), r("span", y, [o(p(g), {
|
|
41
|
+
name: s.iconLeft,
|
|
42
|
+
size: C
|
|
43
|
+
}, null, 8, ["name"])])) : n("", !0),
|
|
44
|
+
i("span", { class: c(["s-ui-label__body", E.value]) }, [i("span", b, [u(e.$slots, "default", {}, () => [a(f(s.text), 1)])]), s.required ? (l(), r("span", {
|
|
45
|
+
key: 0,
|
|
46
|
+
class: c(["s-ui-label__required", D.value])
|
|
47
|
+
}, " * ", 2)) : n("", !0)], 2),
|
|
48
|
+
p(v).hint ? (l(), r("span", x, [u(e.$slots, "hint")])) : n("", !0),
|
|
49
|
+
s.iconRight ? (l(), r("span", S, [o(p(g), {
|
|
50
|
+
name: s.iconRight,
|
|
51
|
+
size: C
|
|
52
|
+
}, null, 8, ["name"])])) : n("", !0)
|
|
53
|
+
]),
|
|
54
|
+
_: 3
|
|
55
|
+
}, 8, ["class", "for"]));
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
//#endregion
|
|
59
|
+
export { _ as n, v as r, w as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./useSelectionGroup-TaektE-I.cjs"),t=require("./SListItem-3IpjaE9h.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)=>{if(!t)return!1;let n=e[t];return typeof n==`boolean`?n:!1},l=`__s-ui-load-more:`,u=e=>`${l}${e}`,d=`__s-ui-list-divider__`,f=()=>Object.create(null),p=e=>e===void 0?new Set:typeof e==`string`?new Set([e]):new Set(e),m=(e,t,n,r)=>{s(e,n).forEach(e=>{let i=o(e,t);i&&r.add(i),m(e,t,n,r)})},h=(e,t,n,r)=>{for(let i of e){if(o(i,n)===t)return i;let e=h(s(i,r),t,n,r);if(e)return e}},g=(e,t,n,r,i,a,l,d)=>{e.forEach(e=>{let f=o(e,t);if(!f)return;let p=s(e,n),m=p.length>0,h=r.includes(f);l.push({key:f,item:e,depth:i,flatIndex:l.length,hasChildren:m,expanded:h,parentKey:a}),m&&h&&g(p,t,n,r,i+1,f,l,d),m&&h&&c(e,d)&&l.push({key:u(f),item:e,depth:i+1,flatIndex:l.length,hasChildren:!1,expanded:!1,parentKey:f,loadMoreForKey:f})})},_=(e,t,n,r)=>{let i=p(r);if(i.size===0)return;let a=[],c=[];for(let r of e){if(s(r,n).length>0)return;i.has(o(r,t))?a.push(r):c.push(r)}if(!(a.length===0||c.length===0))return{selectedItems:a,restItems:c}},v=({items:e,childrenKey:t,itemKey:r,expanded:i,hasMoreChildrenKey:a,selectedOnTop:o,selectedKeys:s})=>({flatRows:(0,n.computed)(()=>{let c=[],l=(0,n.toValue)(e),u=(0,n.toValue)(t),p=(0,n.toValue)(r),m=(0,n.toValue)(a),h=(0,n.toValue)(o)?_(l,p,u,(0,n.toValue)(s)):void 0;return h?(g(h.selectedItems,p,u,i.value,0,void 0,c,m),c.push({key:d,item:f(),depth:0,flatIndex:c.length,hasChildren:!1,expanded:!1,divider:!0}),g(h.restItems,p,u,i.value,0,void 0,c,m),c):(g(l,p,u,i.value,0,void 0,c,m),c)}),toggleExpanded:a=>{let o=(0,n.toValue)(e),s=(0,n.toValue)(t),c=(0,n.toValue)(r),l=new Set(i.value);if(l.has(a)){l.delete(a);let e=h(o,a,c,s);if(e){let t=new Set;m(e,c,s,t),t.forEach(e=>{l.delete(e)})}}else l.add(a);i.value=[...l]},isExpanded:e=>i.value.includes(e)}),y=(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`}),b=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}({}),x=b.TWO_X_SMALL,ee={[b.NONE]:`var(--s-ui-space-gap-none)`,[b.TWO_X_SMALL]:`var(--s-ui-space-gap-2x-small)`,[b.X_SMALL]:`var(--s-ui-space-gap-x-small)`,[b.SMALL]:`var(--s-ui-space-gap-small)`,[b.MEDIUM]:`var(--s-ui-space-gap-medium)`,[b.X_MEDIUM]:`var(--s-ui-space-gap-x-medium)`,[b.LARGE]:`var(--s-ui-space-gap-large)`,[b.X_LARGE]:`var(--s-ui-space-gap-x-large)`,[b.TWO_X_LARGE]:`var(--s-ui-space-gap-2x-large)`},te={[b.NONE]:0,[b.TWO_X_SMALL]:2,[b.X_SMALL]:4,[b.SMALL]:8,[b.MEDIUM]:12,[b.X_MEDIUM]:16,[b.LARGE]:20,[b.X_LARGE]:24,[b.TWO_X_LARGE]:32},ne=(e,t)=>`s-ui-list-option-${e}-${t}`,S=(e,t)=>{let n=e[t];if(typeof n==`string`)return n},C=(e,t)=>{let n=e[t];return typeof n==`boolean`?n:!1},w=e=>e in r.ESIconName,T=(e,t)=>{let n=e[t];if(typeof n==`string`&&n.length>0&&w(n))return n},E=(e,t)=>typeof t==`string`&&t?t:Array.isArray(t)&&t[0]?t[0]:e,re=e=>e.some(e=>e.hasChildren||e.parentKey),D=(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},O=(e,t)=>e.hasChildren&&e.expanded?{type:`collapse`,rowKey:t}:e.parentKey?{type:`select`,rowKey:e.parentKey}:null,k=(e,t,n)=>{let r=n.find(e=>e.key===t);return r?e===`ArrowRight`?D(r,t,n):O(r,t):null},A=(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},ie=(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 A(n,r+a,a,i.depth)},ae=[`role`,`aria-multiselectable`],oe=[`aria-multiselectable`,`aria-activedescendant`,`tabindex`],se=[`data-index`],j={key:0,class:`s-ui-list__divider`,role:`separator`},M={key:0,class:`s-ui-list__divider`,role:`separator`},ce={key:2,class:`s-ui-list__static`},N=(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:()=>x},estimateItemSize:{default:36},overscan:{default:5},endReachedDistance:{default:0},canLoadMore:{type:Function},height:{default:320},maxHeight:{},revealRight:{type:Boolean,default:!1},expandOnClick:{type:Boolean,default:!1},selectedOnTop:{type:Boolean,default:!1},hasMoreChildrenKey:{},loadingMoreChildrenKeys:{default:()=>[]}},{modelValue:{},modelModifiers:{},selected:{},selectedModifiers:{},expanded:{default:()=>[]},expandedModifiers:{}}),emits:(0,n.mergeModels)([`endReached`,`loadMoreChildren`],[`update:modelValue`,`update:selected`,`update:expanded`]),setup(i,{expose:o,emit:s}){let c=(0,n.useModel)(i,`modelValue`),l=(0,n.useModel)(i,`selected`),u=(0,n.useModel)(i,`expanded`),d=s,f=(0,n.useSlots)(),p=(0,n.useId)(),m=(0,n.useTemplateRef)(`scrollElementRef`),h=(0,n.useTemplateRef)(`listRootElementRef`),g=(0,n.computed)(()=>te[i.gap]),_=(0,n.computed)(()=>i.items!==void 0),b=(0,n.computed)(()=>_.value?i.virtual===void 0?!0:i.virtual:!1),{flatRows:x,toggleExpanded:w}=v({items:()=>i.items??[],childrenKey:()=>i.childrenKey,itemKey:()=>i.itemKey,expanded:u,hasMoreChildrenKey:()=>i.hasMoreChildrenKey,selectedOnTop:()=>i.selectedOnTop,selectedKeys:()=>l.value}),{t:D}=(0,r.useUiKitI18n)(),O=(0,n.computed)(()=>new Set(i.loadingMoreChildrenKeys)),A=(0,n.computed)(()=>D(`list.loadMore`)),N=e=>e.loadMoreForKey?O.value.has(e.loadMoreForKey):!1,P=(e,t)=>{O.value.has(e)||d(`loadMoreChildren`,{key:e,item:t})},F=e=>{e.loadMoreForKey&&P(e.loadMoreForKey,e.item)},I=e=>({parentKey:e.loadMoreForKey??``,parentItem:e.item,depth:e.depth,loading:N(e),loadMore:()=>{F(e)}}),L=(0,a.useVirtualizer)((0,n.computed)(()=>({count:x.value.length,getScrollElement:()=>m.value,estimateSize:()=>i.estimateItemSize,gap:g.value,overscan:i.overscan}))),R=(0,n.computed)(()=>{if(_.value)return x.value.reduce((e,t)=>(t.divider||e.push(t.key),e),[])}),z=(0,n.computed)(()=>{let e=new Set;for(let t of x.value)!t.loadMoreForKey&&C(t.item,i.disabledKey)&&e.add(t.key);return e}),B=async e=>{if(!b.value)return;let t=x.value.findIndex(t=>t.key===e);t!==-1&&(L.value.scrollToIndex(t,{align:`auto`}),await new Promise(e=>{requestAnimationFrame(()=>{e()})}),await(0,n.nextTick)())},V=e=>ne(p,e),H=e.o({modelValue:()=>l.value,onUpdateModelValue:e=>{l.value=e},mode:()=>i.selectionMode,mandatory:()=>i.mandatory,orientation:()=>e.r.VERTICAL,enableTabNavigation:!0,focusMode:()=>b.value?e.t.ACTIVE_DESCENDANT:e.t.DOM,orderedValues:R,isValueDisabled:e=>z.value.has(e),onBeforeFocusItem:async e=>{await B(e)},onFocusGroup:()=>{m.value?.focus()}}),U=(0,n.computed)(()=>_.value&&re(x.value)),W=()=>{if(b.value){m.value?.focus();return}h.value?.focus()},G=()=>{H.focusedValue.value=void 0,c.value=void 0;let e=document.activeElement;e instanceof HTMLElement&&e!==m.value&&e.blur(),W()},K=async e=>{b.value&&await B(e)},le=async e=>{if(G(),e.type===`expand`||e.type===`collapse`){w(e.rowKey),H.select(e.rowKey,!1),await K(e.rowKey);return}H.select(e.rowKey,!1),await K(e.rowKey)},ue=async(e,t)=>{if(!U.value||e.key!==`ArrowUp`&&e.key!==`ArrowDown`)return!1;let n=E(t,l.value),r=ie(e.key,n,x.value);return r?(e.preventDefault(),G(),H.select(r,!1),await K(r),!0):!1},de=async(e,t)=>{if(!U.value||e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)return!1;let n=E(t,l.value),r=k(e.key,n,x.value);return r?(e.preventDefault(),await le(r),!0):!1},q=()=>{if(c.value)return c.value;let e=E(``,l.value);if(e)return e;let t=R.value;if(t){for(let e of t)if(!z.value.has(e))return e}},fe=()=>q(),pe=async e=>{let t=fe();t&&await J(e,t)},me=[`Enter`,` `,`Spacebar`],he=(e,t)=>{if(!me.includes(e.key))return!1;let n=x.value.find(e=>e.key===t);return n?.loadMoreForKey?(e.preventDefault(),P(n.loadMoreForKey,n.item),!0):!1},J=async(e,t)=>{he(e,t)||await ue(e,t)||await de(e,t)||(await H.handleItemKeydown(e,t),c.value=H.focusedValue.value,!H.focusedValue.value&&!b.value&&W())},ge=async e=>{let t=q();t&&await J(e,t)},_e=async e=>{if(b.value||e.target!==h.value)return;let t=q();t&&await J(e,t)},ve=async()=>{let e=q();if(!e){W();return}await H.focusItem(e,!1)};(0,n.provide)(t.r,{mode:()=>i.selectionMode,isSelected:H.isSelected,selectItem:H.toggle,registerItem:H.registerItem,getItemTabIndex:H.getItemTabIndex,getGroupTabIndex:H.getGroupTabIndex,handleItemKeydown:J,activeKey:()=>c.value,setActiveKey:e=>{c.value=e},isExpanded:e=>u.value.includes(e),toggleExpanded:e=>{if(_.value){w(e);return}let t=new Set(u.value);t.has(e)?t.delete(e):t.add(e),u.value=[...t]},revealRight:()=>i.revealRight,expandOnClick:()=>i.expandOnClick,getItemOptionId:e=>{if(b.value)return V(e)},usesActiveDescendantNavigation:()=>b.value,handlesTreeKeyboardNavigation:()=>_.value});let ye=(0,n.computed)(()=>L.value.getVirtualItems()),be=(0,n.computed)(()=>ye.value.flatMap(e=>{let t=x.value[e.index];return t?[{virtualRow:e,flatRow:t}]:[]})),xe=(0,n.computed)(()=>L.value.getTotalSize()),Se=(0,n.computed)(()=>({height:`${xe.value}px`,position:`relative`,width:`100%`})),Y=(0,n.computed)(()=>{let e={};return typeof i.height==`number`?e.height=`${i.height}px`:i.height&&(e.height=i.height),i.maxHeight&&(typeof i.maxHeight==`number`?e.maxHeight=`${i.maxHeight}px`:e.maxHeight=i.maxHeight),e}),Ce=(0,n.computed)(()=>({"s-ui-list--virtual":b.value,"s-ui-list--static":!b.value})),we=(0,n.computed)(()=>({"--s-ui-list-gap":ee[i.gap]})),X=(0,n.computed)(()=>({"s-ui-list__scroll--flat":_.value&&!b.value})),Z=(0,n.computed)(()=>{if(i.selectionMode===e.n.MULTIPLE)return!0}),Te=(0,n.computed)(()=>{if(!b.value)return`listbox`}),Ee=(0,n.computed)(()=>{if(!b.value)return Z.value}),De=(0,n.computed)(()=>{if(b.value)return H.getGroupTabIndex()}),Oe=(0,n.computed)(()=>c.value?c.value:E(``,l.value)),ke=(0,n.computed)(()=>{if(!b.value)return;let e=Oe.value;if(e)return V(e)});y(()=>m.value,{distance:()=>i.endReachedDistance,canLoadMore:()=>i.canLoadMore?i.canLoadMore():!0,onEndReached:()=>{d(`endReached`,{direction:`bottom`})}});let Ae=e=>({position:`absolute`,top:0,left:0,width:`100%`,transform:`translateY(${e.start}px)`}),je=e=>{e instanceof HTMLElement&&L.value.measureElement(e)},Q=e=>{let t=e.item,n={rowKey:e.key,depth:e.depth,expandable:e.hasChildren,expanded:e.expanded,selected:H.isSelected(e.key),active:c.value===e.key,disabled:C(t,i.disabledKey),title:S(t,i.titleKey),subtitle:S(t,i.subtitleKey),iconLeft:T(t,i.iconLeftKey),revealRight:i.revealRight};return i.itemProps?{...n,...i.itemProps(t,e)}:n},$=e=>({...e,revealRight:i.revealRight,toggleExpanded:()=>{w(e.key)}});return o({focusNavigation:ve,handleKeyboardNavigation:ge}),(e,i)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`listRootElementRef`,ref:h,class:(0,n.normalizeClass)([`s-ui-list`,Ce.value]),style:(0,n.normalizeStyle)(we.value),role:Te.value,"aria-multiselectable":Ee.value,tabindex:`-1`,onKeydown:_e},[_.value&&b.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,ref_key:`scrollElementRef`,ref:m,class:(0,n.normalizeClass)([`s-ui-list__scroll`,X.value]),style:(0,n.normalizeStyle)(Y.value),role:`listbox`,"aria-multiselectable":Z.value,"aria-activedescendant":ke.value,tabindex:De.value,onKeydown:pe},[(0,n.createElementVNode)(`div`,{class:`s-ui-list__virtual-panel`,style:(0,n.normalizeStyle)(Se.value)},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(be.value,i=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:i.virtualRow.index,class:`s-ui-list__virtual-row`,"data-index":i.virtualRow.index,ref_for:!0,ref:je,style:(0,n.normalizeStyle)(Ae(i.virtualRow))},[i.flatRow.divider?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,j)):i.flatRow.loadMoreForKey?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:1},[(0,n.unref)(f).loadMore?(0,n.renderSlot)(e.$slots,`loadMore`,(0,n.mergeProps)({key:0,ref_for:!0},I(i.flatRow))):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),{key:1,"row-key":i.flatRow.key,depth:i.flatRow.depth,tiny:``,title:A.value,onClick:e=>F(i.flatRow)},(0,n.createSlots)({_:2},[N(i.flatRow)?{name:`icon-left`,fn:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(r.SSpinner),{size:16})]),key:`0`}:void 0]),1032,[`row-key`,`depth`,`title`,`onClick`]))],64)):((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:2},[(0,n.unref)(f).item?(0,n.renderSlot)(e.$slots,`item`,(0,n.mergeProps)({key:0,ref_for:!0},$(i.flatRow))):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),(0,n.mergeProps)({key:1,ref_for:!0},Q(i.flatRow)),null,16))],64))],12,se))),128))],4)],46,oe)):_.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:1,ref_key:`scrollElementRef`,ref:m,class:(0,n.normalizeClass)([`s-ui-list__scroll`,X.value]),style:(0,n.normalizeStyle)(Y.value)},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)((0,n.unref)(x),i=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:i.key},[i.divider?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,M)):i.loadMoreForKey?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:1},[(0,n.unref)(f).loadMore?(0,n.renderSlot)(e.$slots,`loadMore`,(0,n.mergeProps)({key:0,ref_for:!0},I(i))):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),{key:1,"row-key":i.key,depth:i.depth,tiny:``,title:A.value,onClick:e=>F(i)},(0,n.createSlots)({_:2},[N(i)?{name:`icon-left`,fn:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(r.SSpinner),{size:16})]),key:`0`}:void 0]),1032,[`row-key`,`depth`,`title`,`onClick`]))],64)):((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:2},[(0,n.unref)(f).item?(0,n.renderSlot)(e.$slots,`item`,(0,n.mergeProps)({key:0,ref_for:!0},$(i))):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(t.t),(0,n.mergeProps)({key:1,ref_for:!0},Q(i)),null,16))],64))],64))),128))],6)):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,ce,[(0,n.renderSlot)(e.$slots,`default`)]))],46,ae))}});Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return N}});
|