bitboss-ui 2.0.27 → 2.0.28

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.
Files changed (128) hide show
  1. package/dist/index106.js +4 -4
  2. package/dist/index114.js +1 -1
  3. package/dist/index116.js +5 -5
  4. package/dist/index118.js +1 -1
  5. package/dist/index122.js +1 -1
  6. package/dist/index123.js +1 -1
  7. package/dist/index124.js +1 -1
  8. package/dist/index129.js +1 -1
  9. package/dist/index13.js +1 -1
  10. package/dist/index15.js +3 -3
  11. package/dist/index17.js +2 -2
  12. package/dist/index19.js +14 -14
  13. package/dist/index200.js +8 -2
  14. package/dist/index201.js +3 -4
  15. package/dist/index202.js +3 -2
  16. package/dist/index203.js +33 -156
  17. package/dist/index204.js +5 -83
  18. package/dist/index205.js +9 -0
  19. package/dist/index206.js +43 -5
  20. package/dist/index208.js +13 -16
  21. package/dist/index209.js +280 -18
  22. package/dist/index21.js +15 -15
  23. package/dist/index210.js +13 -16
  24. package/dist/index211.js +13 -24
  25. package/dist/index212.js +19 -3
  26. package/dist/index213.js +19 -2
  27. package/dist/index214.js +27 -8
  28. package/dist/index215.js +3 -249
  29. package/dist/index216.js +2 -52
  30. package/dist/index217.js +241 -36
  31. package/dist/index218.js +52 -5
  32. package/dist/index219.js +30 -35
  33. package/dist/index220.js +5 -126
  34. package/dist/index221.js +49 -123
  35. package/dist/index222.js +126 -2
  36. package/dist/index223.js +122 -34
  37. package/dist/index224.js +2 -174
  38. package/dist/index225.js +174 -6
  39. package/dist/index226.js +4 -42
  40. package/dist/{index230.js → index227.js} +1 -1
  41. package/dist/index228.js +158 -13
  42. package/dist/index229.js +84 -5
  43. package/dist/index23.js +5 -5
  44. package/dist/index231.js +2 -3
  45. package/dist/index232.js +4 -7
  46. package/dist/index233.js +2 -3
  47. package/dist/index234.js +2 -10
  48. package/dist/index235.js +17 -2
  49. package/dist/index236.js +106 -2
  50. package/dist/index238.js +47 -53
  51. package/dist/index240.js +2 -100
  52. package/dist/index241.js +12 -0
  53. package/dist/index242.js +3 -2
  54. package/dist/index243.js +224 -6
  55. package/dist/index244.js +3 -16
  56. package/dist/index245.js +9 -3
  57. package/dist/index246.js +23 -9
  58. package/dist/index247.js +6 -23
  59. package/dist/index248.js +16 -9
  60. package/dist/index249.js +9 -4
  61. package/dist/index25.js +1 -1
  62. package/dist/index250.js +431 -3
  63. package/dist/index251.js +88 -11
  64. package/dist/index252.js +3 -9
  65. package/dist/index254.js +7 -17
  66. package/dist/index255.js +198 -279
  67. package/dist/index263.js +1 -1
  68. package/dist/index264.js +1 -1
  69. package/dist/index265.js +1 -1
  70. package/dist/index266.js +1 -1
  71. package/dist/index27.js +2 -2
  72. package/dist/index270.js +2 -7
  73. package/dist/index271.js +118 -423
  74. package/dist/index272.js +22 -89
  75. package/dist/index274.js +3 -126
  76. package/dist/index275.js +12 -3
  77. package/dist/index276.js +11 -0
  78. package/dist/index277.js +7 -20
  79. package/dist/index278.js +19 -0
  80. package/dist/index279.js +3 -199
  81. package/dist/index282.js +5 -224
  82. package/dist/index283.js +66 -2
  83. package/dist/index284.js +2 -66
  84. package/dist/index285.js +3 -5
  85. package/dist/index287.js +211 -3
  86. package/dist/index288.js +15 -211
  87. package/dist/index289.js +79 -4
  88. package/dist/index29.js +2 -2
  89. package/dist/index291.js +4 -59
  90. package/dist/index292.js +4 -79
  91. package/dist/index293.js +61 -0
  92. package/dist/index294.js +6 -14
  93. package/dist/index295.js +6 -6
  94. package/dist/index296.js +18 -6
  95. package/dist/index297.js +34 -18
  96. package/dist/index298.js +10 -34
  97. package/dist/index299.js +46 -10
  98. package/dist/index300.js +1 -1
  99. package/dist/index301.js +480 -47
  100. package/dist/index303.js +423 -0
  101. package/dist/index304.js +42 -416
  102. package/dist/index31.js +2 -2
  103. package/dist/index33.js +3 -3
  104. package/dist/index35.js +13 -13
  105. package/dist/index37.js +3 -3
  106. package/dist/index39.js +2 -2
  107. package/dist/index41.js +2 -2
  108. package/dist/index43.js +6 -6
  109. package/dist/index45.js +2 -2
  110. package/dist/index47.js +2 -2
  111. package/dist/index53.js +1 -1
  112. package/dist/index55.js +1 -1
  113. package/dist/index59.js +2 -2
  114. package/dist/index71.js +3 -3
  115. package/dist/index75.js +2 -2
  116. package/dist/index77.js +1 -1
  117. package/dist/index80.js +2 -2
  118. package/dist/index82.js +1 -1
  119. package/dist/index84.js +3 -3
  120. package/dist/style.css +1 -1
  121. package/package.json +1 -1
  122. package/dist/index207.js +0 -18
  123. package/dist/index237.js +0 -20
  124. package/dist/index253.js +0 -11
  125. package/dist/index273.js +0 -4
  126. package/dist/index290.js +0 -6
  127. package/dist/index302.js +0 -482
  128. package/dist/index306.js +0 -49
package/dist/index228.js CHANGED
@@ -1,15 +1,160 @@
1
- import { openBlock as t, createElementBlock as n, renderSlot as e } from "vue";
2
- /* empty css */
3
- import r from "./index270.js";
4
- const s = {}, c = { class: "bb-common-input-outer-container" };
5
- function p(o, a) {
6
- return t(), n("span", c, [
7
- e(o.$slots, "prepend-outer"),
8
- e(o.$slots, "default"),
9
- e(o.$slots, "append-outer")
10
- ]);
11
- }
12
- const i = /* @__PURE__ */ r(s, [["render", p]]);
1
+ import { ref as a, computed as r, onBeforeMount as Y, onBeforeUnmount as Z, watch as H, nextTick as N } from "vue";
2
+ import { last as _ } from "./index216.js";
3
+ import { useArray as Q } from "./index275.js";
4
+ import { uniqBy as $ } from "./index276.js";
5
+ import { useItemValue as ee } from "./index277.js";
6
+ import { useItemText as te } from "./index278.js";
7
+ import { hash as v } from "./index215.js";
8
+ import { isNotNil as q } from "./index130.js";
9
+ import { waitFor as le } from "./index204.js";
10
+ import { isNil as oe } from "./index125.js";
11
+ const he = (l) => {
12
+ const i = a(""), F = a(), u = (e) => {
13
+ F.value = e, l.emit("update:modelValue", e);
14
+ }, d = a([]), {
15
+ array: k,
16
+ add: E,
17
+ remove: P,
18
+ set: y
19
+ } = Q(), {
20
+ array: S,
21
+ add: j,
22
+ remove: J
23
+ } = Q(), { getItemText: L } = te(), { getItemValue: U } = ee(), O = (e) => {
24
+ const t = !!(l.disabled.value || e.disabled), o = L(e, l.itemText), n = U(e, l.itemValue);
25
+ if (n === void 0)
26
+ throw new Error(
27
+ 'The result of extracting "value" from option was undefined. Affected item is ' + JSON.stringify(e) + " please check itemValue property is correct."
28
+ );
29
+ const X = v(n);
30
+ return {
31
+ item: e,
32
+ text: o,
33
+ value: n,
34
+ valueHash: X,
35
+ disabled: t,
36
+ selected: !1
37
+ };
38
+ }, T = (e) => (e.selected = q(b.value[e.valueHash]), e), V = r(() => {
39
+ const e = [].concat(
40
+ d.value.map((t) => T(O(t))),
41
+ S.value.map(T),
42
+ k.value.map(T)
43
+ );
44
+ return $(e, (t) => t.valueHash);
45
+ }), z = (e) => {
46
+ l.multiple ? (u(l.modelValue.value.concat(e.value)), l.stash && E(e), l.resetQueryOnOptionSelected && s()) : (l.stash && y(e), u(e.value), N(() => s()));
47
+ }, G = async (e) => {
48
+ if (J((t) => t.valueHash !== e.valueHash), P((t) => t.valueHash !== e.valueHash), l.multiple) {
49
+ const t = { ...b.value };
50
+ delete t[e.valueHash], u(Object.values(t));
51
+ } else
52
+ u(null), await N(), s();
53
+ }, b = r(() => {
54
+ const e = {}, t = [].concat(l.modelValue.value);
55
+ for (let o = 0; o < t.length; o++) {
56
+ const n = t[o];
57
+ e[v(n)] = n;
58
+ }
59
+ return e;
60
+ }), g = async ({ prefill: e = !1 }) => {
61
+ let t = [];
62
+ if (Array.isArray(l.items.value))
63
+ t = l.items.value;
64
+ else if (typeof l.items.value == "function") {
65
+ const o = ++c.value;
66
+ try {
67
+ t = await l.items.value(
68
+ i.value,
69
+ e,
70
+ l.modelValue.value
71
+ ), o < c.value && (await le(() => o === c.value), t = d.value);
72
+ } catch (n) {
73
+ console.error(n);
74
+ }
75
+ c.value--;
76
+ }
77
+ d.value = t;
78
+ }, B = r(() => {
79
+ const e = {};
80
+ for (let t = 0; t < V.value.length; t++) {
81
+ const o = V.value[t], { valueHash: n } = o;
82
+ e[n] = o;
83
+ }
84
+ return {
85
+ get: (t) => e[v(t)]
86
+ };
87
+ }), f = r(() => [].concat(l.modelValue.value).reduce((e, t) => {
88
+ const o = B.value.get(t);
89
+ return o && e.push(o), e;
90
+ }, [])), C = (e) => q(B.value.get(e)), s = () => {
91
+ if (l.multiple) {
92
+ i.value = "";
93
+ return;
94
+ }
95
+ let e;
96
+ f.value && (e = _(f.value)), i.value = (e == null ? void 0 : e.text) || "";
97
+ }, K = () => {
98
+ const e = i.value.trim(), t = O(e);
99
+ j(t), s();
100
+ }, c = a(0), M = r(() => [].concat(l.modelValue.value).reduce(
101
+ (e, t) => (C(t) ? e.coherent.push(t) : e.incoherent.push(t), e),
102
+ { coherent: [], incoherent: [] }
103
+ )), A = r(() => l.multiple && !l.modelValue.value.length || !l.multiple && oe(l.modelValue.value) ? !0 : !M.value.incoherent.length), R = () => {
104
+ l.enforceCoherence && !A.value && (l.multiple ? u(M.value.coherent) : u(null));
105
+ }, p = a(!1), I = a(!1), m = async () => {
106
+ I.value = !0, await g({ prefill: !0 }), R(), s(), p.value = !0, I.value = !1;
107
+ };
108
+ Y(async () => {
109
+ l.prefill && (await m(), l.stash && y(...f.value));
110
+ });
111
+ let h;
112
+ const W = () => {
113
+ h && clearTimeout(h), h = setTimeout(async () => {
114
+ try {
115
+ await g({ prefill: !1 });
116
+ } catch (e) {
117
+ console.error(e);
118
+ }
119
+ }, l.queryDebounceTime);
120
+ };
121
+ Z(() => clearTimeout(h));
122
+ let x;
123
+ H(
124
+ () => l.modelValue.value,
125
+ () => {
126
+ A.value || (x && clearTimeout(x), x = setTimeout(async () => {
127
+ m();
128
+ }, l.modelValueDebounceTime));
129
+ }
130
+ );
131
+ let w;
132
+ const D = async (e, t) => {
133
+ v(t) !== v(e) && p.value && (w && clearTimeout(w), w = setTimeout(async () => {
134
+ await m();
135
+ }, l.depsDebounceTime));
136
+ };
137
+ return H(() => l.items.value, D), H(() => l.dependencies.value, D), {
138
+ addCurrentQueryToManualItems: K,
139
+ alignQueryToState: s,
140
+ getOptions: g,
141
+ hasPrefilled: p,
142
+ innerLoading: c,
143
+ isPrefilling: I,
144
+ manualItems: S,
145
+ options: V,
146
+ prefillItems: m,
147
+ query: i,
148
+ searchByQuery: W,
149
+ selectedOptions: f,
150
+ selectOption: z,
151
+ setStash: y,
152
+ unselectOption: G,
153
+ updateModelValue: u,
154
+ valueIsSelected: C,
155
+ internalItems: d
156
+ };
157
+ };
13
158
  export {
14
- i as default
159
+ he as useOptions
15
160
  };
package/dist/index229.js CHANGED
@@ -1,7 +1,86 @@
1
- import o from "./index277.js";
2
- /* empty css */
3
- import t from "./index270.js";
4
- const e = /* @__PURE__ */ t(o, [["__scopeId", "data-v-cb4d6ef0"]]);
1
+ import { defineComponent as b, openBlock as s, createElementBlock as n, normalizeClass as r, createElementVNode as l, renderSlot as t, createTextVNode as o, toDisplayString as d, createCommentVNode as h, Fragment as c, renderList as m } from "vue";
2
+ const p = { class: "bb-cr-container__container" }, u = {
3
+ key: 0,
4
+ class: "bb-cr-container__loading-container"
5
+ }, g = {
6
+ key: 1,
7
+ class: "bb-cr-container__no-data-container"
8
+ }, f = /* @__PURE__ */ b({
9
+ __name: "OptionsContainer",
10
+ props: {
11
+ direction: {},
12
+ hasErrors: { type: Boolean },
13
+ hideLabel: { type: Boolean },
14
+ loadingText: {},
15
+ loading: { type: Boolean },
16
+ noDataText: {},
17
+ options: {}
18
+ },
19
+ setup(k) {
20
+ return (a, y) => (s(), n("span", {
21
+ ref: "container",
22
+ class: r(["bb-cr-container", {
23
+ "bb-cr-container--errors": a.hasErrors,
24
+ "bb-cr-container--horizontal": a.direction === "horizontal",
25
+ "bb-cr-container--vertical": a.direction === "vertical"
26
+ }])
27
+ }, [
28
+ l("span", p, [
29
+ t(a.$slots, "prepend"),
30
+ !a.options.length && a.loading ? (s(), n("span", u, [
31
+ t(a.$slots, "loading", {}, () => [
32
+ o(d(a.loadingText), 1)
33
+ ])
34
+ ])) : a.options.length ? h("", !0) : (s(), n("span", g, [
35
+ t(a.$slots, "no-data", {}, () => [
36
+ o(d(a.noDataText), 1)
37
+ ])
38
+ ])),
39
+ (s(!0), n(c, null, m(a.options, (e, i) => (s(), n(c, {
40
+ key: (e == null ? void 0 : e.id) || i
41
+ }, [
42
+ t(a.$slots, "option:prepend", {
43
+ id: e.valueHash,
44
+ checked: !!e.selected,
45
+ disabled: !!e.disabled,
46
+ item: e.item,
47
+ text: e.text
48
+ }),
49
+ l("label", {
50
+ class: r(["bb-cr-container-option", { "bb-base-radio-selected": e.selected }])
51
+ }, [
52
+ t(a.$slots, "input", {
53
+ index: i,
54
+ option: e
55
+ }),
56
+ l("span", {
57
+ class: r({
58
+ "bb-cr-container-option__text": !0,
59
+ "sr-only": a.hideLabel
60
+ })
61
+ }, [
62
+ t(a.$slots, "label", {
63
+ checked: !!e.selected,
64
+ item: e.item,
65
+ text: e.text
66
+ }, () => [
67
+ o(d(e.text), 1)
68
+ ])
69
+ ], 2)
70
+ ], 2),
71
+ t(a.$slots, "option:append", {
72
+ id: e.valueHash,
73
+ checked: !!e.selected,
74
+ disabled: !!e.disabled,
75
+ item: e.item,
76
+ text: e.text
77
+ })
78
+ ], 64))), 128)),
79
+ t(a.$slots, "append")
80
+ ])
81
+ ], 2));
82
+ }
83
+ });
5
84
  export {
6
- e as default
85
+ f as default
7
86
  };
package/dist/index23.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import { defineComponent as ae, ref as o, getCurrentInstance as se, computed as m, nextTick as N, useAttrs as ne, onMounted as ie, onBeforeUnmount as F, watch as re, openBlock as _, createBlock as ue, Teleport as de, createElementVNode as a, mergeProps as G, createElementBlock as T, renderSlot as u, createTextVNode as ce, toDisplayString as P, createCommentVNode as z } from "vue";
2
- import { throttle as ve } from "./index231.js";
3
- import { useFocusTrap as fe } from "./index223.js";
2
+ import { throttle as ve } from "./index202.js";
3
+ import { useFocusTrap as fe } from "./index203.js";
4
4
  import { useId as K } from "./index8.js";
5
5
  import { wait as H } from "./index127.js";
6
- import { waitFor as be } from "./index225.js";
7
- import { useModalsState as k } from "./index232.js";
8
- import { useLogger as pe } from "./index214.js";
6
+ import { waitFor as be } from "./index204.js";
7
+ import { useModalsState as k } from "./index205.js";
8
+ import { useLogger as pe } from "./index200.js";
9
9
  const me = { class: "bb-base-dialog-close" }, ge = ["aria-label"], ye = /* @__PURE__ */ a("span", { class: "bb-base-dialog-close__icon" }, [
10
10
  /* @__PURE__ */ a("svg", {
11
11
  "aria-hidden": "true",
package/dist/index231.js CHANGED
@@ -1,5 +1,4 @@
1
- import t from "./index272.js";
2
- const r = t;
1
+ const s = (r) => !!r && !!r.match(/^(#|var\(--|(rgb|hsl)a?\()/);
3
2
  export {
4
- r as throttle
3
+ s as isCssColor
5
4
  };
package/dist/index232.js CHANGED
@@ -1,9 +1,6 @@
1
- import { ref as e } from "vue";
2
- const o = e(0), s = () => {
3
- o.value++;
4
- }, a = () => {
5
- o.value--;
6
- }, d = () => ({ openedModals: o, modalHasOpened: s, modalHasClosed: a });
1
+ import { curry as e } from "./index279.js";
2
+ const t = (n, o, r) => n(r) ? o(r) : r, s = e(t);
7
3
  export {
8
- d as useModalsState
4
+ t as baseWhen,
5
+ s as when
9
6
  };
package/dist/index233.js CHANGED
@@ -1,5 +1,4 @@
1
- import r from "./index282.js";
2
- const t = r;
1
+ const o = (e) => typeof e == "boolean" ? e : e === "true";
3
2
  export {
4
- t as deburr
3
+ o as booleanishToBoolean
5
4
  };
package/dist/index234.js CHANGED
@@ -1,12 +1,4 @@
1
- const o = (t, r) => {
2
- const e = {};
3
- for (const c in t)
4
- if (Object.prototype.hasOwnProperty.call(t, c)) {
5
- const n = t[c];
6
- r(n, c, t) && (e[c] = n);
7
- }
8
- return e;
9
- };
1
+ import f from "./index287.js";
10
2
  export {
11
- o as pickBy
3
+ f as default
12
4
  };
package/dist/index235.js CHANGED
@@ -1,5 +1,20 @@
1
- const o = () => {
1
+ import { isNil as c } from "./index125.js";
2
+ const a = (t, r) => {
3
+ if (!Object.prototype.hasOwnProperty.call(t, r))
4
+ throw new Error(
5
+ `Object ${JSON.stringify(t, null, 2)} has no property named "${r.toString()}"`
6
+ );
7
+ }, l = (t) => typeof t == "string" ? t.toLocaleLowerCase() : JSON.stringify(t).toLowerCase(), y = (t, r, s) => {
8
+ const i = s.toLocaleLowerCase();
9
+ for (let e = 0; e < r.length; e++) {
10
+ const n = r[e];
11
+ a(t, n);
12
+ const o = t[n];
13
+ if (c(o)) continue;
14
+ if (l(o).includes(i)) return !0;
15
+ }
16
+ return !1;
2
17
  };
3
18
  export {
4
- o as noop
19
+ y as matchAnyKey
5
20
  };
package/dist/index236.js CHANGED
@@ -1,4 +1,108 @@
1
- import f from "./index288.js";
1
+ import { defineComponent as y, ref as F, computed as H, watch as N, openBlock as p, createElementBlock as L, Fragment as S, renderList as V, createBlock as A, normalizeClass as O, withModifiers as P, withCtx as $, createTextVNode as z, toDisplayString as D } from "vue";
2
+ import { hash as d } from "./index215.js";
3
+ import { isNil as l } from "./index125.js";
4
+ import E from "./index120.js";
5
+ /* empty css */
6
+ const K = /* @__PURE__ */ y({
7
+ __name: "ChipsBox",
8
+ props: {
9
+ options: {}
10
+ },
11
+ emits: ["option:unselected"],
12
+ setup(f, { expose: v, emit: h }) {
13
+ const t = f, u = h, n = F(null), i = H(() => t.options.some((e) => !e.disabled)), a = (e = 1) => {
14
+ const s = l(n.value) ? -1 : n.value;
15
+ let o = (s + e) % t.options.length;
16
+ for (; t.options[o].disabled && o !== s; )
17
+ o = a(e + 1);
18
+ return o;
19
+ }, x = () => {
20
+ if (!i.value) return;
21
+ const e = a();
22
+ n.value = e;
23
+ }, c = (e = 1) => {
24
+ const s = l(n.value) ? 0 : n.value;
25
+ let o = (s - e + t.options.length) % t.options.length;
26
+ for (; t.options[o].disabled && o !== s; )
27
+ o = c(e + 1);
28
+ return o;
29
+ }, m = async () => {
30
+ if (!i.value) return;
31
+ const e = c();
32
+ n.value = e;
33
+ }, w = () => {
34
+ if (!i.value) return;
35
+ let e = 0;
36
+ for (; t.options[e].disabled; )
37
+ e++;
38
+ n.value = e;
39
+ }, b = () => {
40
+ if (!i.value) return;
41
+ let e = t.options.length - 1;
42
+ for (; t.options[e].disabled && e !== 0; )
43
+ e--;
44
+ n.value = e;
45
+ }, I = () => {
46
+ if (!i.value) return;
47
+ let e = 0;
48
+ for (; !t.options[e].selected && t.options.length !== e; )
49
+ e++;
50
+ n.value = e;
51
+ }, g = () => {
52
+ if (!i.value) return;
53
+ let e = t.options.length - 1;
54
+ for (; t.options[e].selected && e !== 0; )
55
+ e--;
56
+ n.value = e;
57
+ }, _ = (e) => {
58
+ if (!i.value) return;
59
+ const s = t.options.findIndex(
60
+ (o) => o.valueHash === e
61
+ );
62
+ s >= 0 && (n.value = s);
63
+ }, r = () => {
64
+ n.value = null;
65
+ }, k = () => {
66
+ if (l(n.value)) return;
67
+ const e = t.options[n.value];
68
+ e.selected && u("option:unselected", e);
69
+ }, C = () => l(n.value) ? void 0 : t.options[n.value];
70
+ return N(
71
+ () => t.options,
72
+ (e, s) => {
73
+ d(e) !== d(s) && r();
74
+ },
75
+ {
76
+ flush: "post"
77
+ }
78
+ ), v({
79
+ focusNext: x,
80
+ focusPrevious: m,
81
+ focusFirst: w,
82
+ focusFirstSelected: I,
83
+ focusLast: b,
84
+ focusLastSelected: g,
85
+ blur: r,
86
+ confirmOption: k,
87
+ focusByHash: _,
88
+ getHighlighted: C
89
+ }), (e, s) => (p(!0), L(S, null, V(e.options, (o, B) => (p(), A(E, {
90
+ key: o.valueHash,
91
+ class: O({
92
+ "bb-chipsbox-item": !0,
93
+ "bb-chipsbox-item--focused": B === n.value
94
+ }),
95
+ clearable: !0,
96
+ text: o.text,
97
+ "onClick:clear": P((M) => u("option:unselected", o), ["stop"])
98
+ }, {
99
+ default: $(() => [
100
+ z(D(o.text), 1)
101
+ ]),
102
+ _: 2
103
+ }, 1032, ["class", "text", "onClick:clear"]))), 128));
104
+ }
105
+ });
2
106
  export {
3
- f as default
107
+ K as default
4
108
  };
package/dist/index238.js CHANGED
@@ -1,108 +1,102 @@
1
- import { defineComponent as y, ref as F, computed as H, watch as N, openBlock as p, createElementBlock as L, Fragment as S, renderList as V, createBlock as A, normalizeClass as O, withModifiers as P, withCtx as $, createTextVNode as z, toDisplayString as D } from "vue";
2
- import { hash as d } from "./index212.js";
3
- import { isNil as l } from "./index125.js";
4
- import E from "./index120.js";
5
- /* empty css */
6
- const K = /* @__PURE__ */ y({
7
- __name: "ChipsBox",
1
+ import { defineComponent as F, ref as H, computed as L, watch as N, openBlock as d, createElementBlock as v, Fragment as S, renderList as A, normalizeClass as O, withModifiers as P, toDisplayString as V } from "vue";
2
+ import { hash as f } from "./index215.js";
3
+ import { isNil as i } from "./index125.js";
4
+ const z = ["text", "onClick:clear"], j = /* @__PURE__ */ F({
5
+ __name: "CommaBox",
8
6
  props: {
9
7
  options: {}
10
8
  },
11
9
  emits: ["option:unselected"],
12
- setup(f, { expose: v, emit: h }) {
13
- const t = f, u = h, n = F(null), i = H(() => t.options.some((e) => !e.disabled)), a = (e = 1) => {
14
- const s = l(n.value) ? -1 : n.value;
10
+ setup(m, { expose: h, emit: x }) {
11
+ const t = m, a = x, n = H(null), l = L(() => t.options.some((e) => !e.disabled)), u = (e = 1) => {
12
+ const s = i(n.value) ? -1 : n.value;
15
13
  let o = (s + e) % t.options.length;
16
14
  for (; t.options[o].disabled && o !== s; )
17
- o = a(e + 1);
15
+ o = u(e + 1);
18
16
  return o;
19
- }, x = () => {
20
- if (!i.value) return;
21
- const e = a();
17
+ }, b = () => {
18
+ if (!l.value) return;
19
+ const e = u();
22
20
  n.value = e;
23
21
  }, c = (e = 1) => {
24
- const s = l(n.value) ? 0 : n.value;
22
+ const s = i(n.value) ? 0 : n.value;
25
23
  let o = (s - e + t.options.length) % t.options.length;
26
24
  for (; t.options[o].disabled && o !== s; )
27
25
  o = c(e + 1);
28
26
  return o;
29
- }, m = async () => {
30
- if (!i.value) return;
27
+ }, w = async () => {
28
+ if (!l.value) return;
31
29
  const e = c();
32
30
  n.value = e;
33
- }, w = () => {
34
- if (!i.value) return;
31
+ }, I = () => {
32
+ if (!l.value) return;
35
33
  let e = 0;
36
34
  for (; t.options[e].disabled; )
37
35
  e++;
38
36
  n.value = e;
39
- }, b = () => {
40
- if (!i.value) return;
37
+ }, g = () => {
38
+ if (!l.value) return;
41
39
  let e = t.options.length - 1;
42
40
  for (; t.options[e].disabled && e !== 0; )
43
41
  e--;
44
42
  n.value = e;
45
- }, I = () => {
46
- if (!i.value) return;
43
+ }, k = () => {
44
+ if (!l.value) return;
47
45
  let e = 0;
48
46
  for (; !t.options[e].selected && t.options.length !== e; )
49
47
  e++;
50
48
  n.value = e;
51
- }, g = () => {
52
- if (!i.value) return;
49
+ }, _ = () => {
50
+ if (!l.value) return;
53
51
  let e = t.options.length - 1;
54
52
  for (; t.options[e].selected && e !== 0; )
55
53
  e--;
56
54
  n.value = e;
57
- }, _ = (e) => {
58
- if (!i.value) return;
55
+ }, C = (e) => {
56
+ if (!l.value) return;
59
57
  const s = t.options.findIndex(
60
58
  (o) => o.valueHash === e
61
59
  );
62
60
  s >= 0 && (n.value = s);
63
61
  }, r = () => {
64
62
  n.value = null;
65
- }, k = () => {
66
- if (l(n.value)) return;
63
+ }, y = () => {
64
+ if (!n.value) return;
67
65
  const e = t.options[n.value];
68
- e.selected && u("option:unselected", e);
69
- }, C = () => l(n.value) ? void 0 : t.options[n.value];
66
+ e.selected && a("option:unselected", e);
67
+ }, B = () => i(n.value) ? void 0 : t.options[n.value];
70
68
  return N(
71
69
  () => t.options,
72
70
  (e, s) => {
73
- d(e) !== d(s) && r();
71
+ f(e) !== f(s) && r();
74
72
  },
75
73
  {
76
74
  flush: "post"
77
75
  }
78
- ), v({
79
- focusNext: x,
80
- focusPrevious: m,
81
- focusFirst: w,
82
- focusFirstSelected: I,
83
- focusLast: b,
84
- focusLastSelected: g,
76
+ ), h({
77
+ focusNext: b,
78
+ focusPrevious: w,
79
+ focusFirst: I,
80
+ focusFirstSelected: k,
81
+ focusLast: g,
82
+ focusLastSelected: _,
85
83
  blur: r,
86
- confirmOption: k,
87
- focusByHash: _,
88
- getHighlighted: C
89
- }), (e, s) => (p(!0), L(S, null, V(e.options, (o, B) => (p(), A(E, {
84
+ confirmOption: y,
85
+ focusByHash: C,
86
+ getHighlighted: B
87
+ }), (e, s) => (d(!0), v(S, null, A(e.options, (o, p) => (d(), v("span", {
90
88
  key: o.valueHash,
91
89
  class: O({
92
- "bb-chipsbox-item": !0,
93
- "bb-chipsbox-item--focused": B === n.value
90
+ "bb-commabox-item": !0,
91
+ "bb-commabox-item--focused": p === n.value,
92
+ "bb-commabox-item--has-comma": p !== e.options.length - 1
94
93
  }),
95
94
  clearable: !0,
96
95
  text: o.text,
97
- "onClick:clear": P((M) => u("option:unselected", o), ["stop"])
98
- }, {
99
- default: $(() => [
100
- z(D(o.text), 1)
101
- ]),
102
- _: 2
103
- }, 1032, ["class", "text", "onClick:clear"]))), 128));
96
+ "onClick:clear": P((D) => a("option:unselected", o), ["stop"])
97
+ }, V(o.text), 43, z))), 128));
104
98
  }
105
99
  });
106
100
  export {
107
- K as default
101
+ j as default
108
102
  };