bitboss-ui 2.1.95 → 2.1.97

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 (203) hide show
  1. package/dist/components/BaseSelect/BaseSelect.vue.d.ts +13 -0
  2. package/dist/components/BbSelect/BbSelect.vue.d.ts +16 -0
  3. package/dist/components/FlatListBox.vue.d.ts +56 -0
  4. package/dist/components/GroupedListBox.vue.d.ts +67 -0
  5. package/dist/components/ListBox.vue.d.ts +58 -16
  6. package/dist/composables/useListboxFocus.d.ts +19 -0
  7. package/dist/index.css +1 -1
  8. package/dist/index108.js +9 -9
  9. package/dist/index109.js +17 -10
  10. package/dist/index11.js +18 -18
  11. package/dist/index115.js +1 -1
  12. package/dist/index121.js +6 -7
  13. package/dist/index123.js +13 -13
  14. package/dist/index131.js +1 -1
  15. package/dist/index133.js +5 -5
  16. package/dist/index135.js +1 -1
  17. package/dist/index137.js +2 -2
  18. package/dist/index14.js +1 -1
  19. package/dist/index140.js +1 -1
  20. package/dist/index142.js +2 -2
  21. package/dist/index145.js +2 -2
  22. package/dist/index16.js +5 -5
  23. package/dist/index18.js +3 -3
  24. package/dist/index20.js +8 -8
  25. package/dist/index216.js +138 -2
  26. package/dist/index217.js +2 -138
  27. package/dist/index219.js +32 -4
  28. package/dist/index22.js +14 -14
  29. package/dist/index220.js +28 -8
  30. package/dist/index222.js +5 -2
  31. package/dist/index223.js +8 -2
  32. package/dist/index224.js +2 -7
  33. package/dist/index225.js +4 -2
  34. package/dist/index226.js +34 -7
  35. package/dist/index227.js +2 -5
  36. package/dist/index228.js +3 -5
  37. package/dist/index229.js +2 -5
  38. package/dist/index230.js +13 -5
  39. package/dist/index231.js +3 -3
  40. package/dist/index232.js +187 -5
  41. package/dist/index233.js +3 -8
  42. package/dist/index234.js +9 -268
  43. package/dist/index235.js +4 -52
  44. package/dist/index236.js +19 -51
  45. package/dist/index237.js +195 -26
  46. package/dist/index239.js +134 -12
  47. package/dist/index24.js +11 -11
  48. package/dist/index241.js +2 -17
  49. package/dist/index242.js +50 -105
  50. package/dist/index243.js +19 -0
  51. package/dist/index244.js +53 -47
  52. package/dist/index246.js +100 -3
  53. package/dist/index248.js +3 -3
  54. package/dist/index249.js +86 -10
  55. package/dist/index251.js +29 -4
  56. package/dist/index252.js +16 -5
  57. package/dist/index253.js +15 -4
  58. package/dist/index254.js +3 -9
  59. package/dist/index255.js +11 -28
  60. package/dist/index256.js +12 -15
  61. package/dist/index257.js +4 -12
  62. package/dist/index258.js +22 -52
  63. package/dist/index259.js +31 -11
  64. package/dist/index26.js +3 -3
  65. package/dist/index260.js +2 -13
  66. package/dist/index261.js +8 -2
  67. package/dist/index262.js +8 -66
  68. package/dist/index263.js +23 -33
  69. package/dist/index264.js +3 -28
  70. package/dist/index265.js +15 -0
  71. package/dist/index266.js +9 -188
  72. package/dist/index267.js +53 -3
  73. package/dist/index268.js +10 -3
  74. package/dist/index269.js +2 -32
  75. package/dist/index270.js +66 -7
  76. package/dist/index271.js +5 -5
  77. package/dist/index272.js +2 -5
  78. package/dist/index273.js +7 -5
  79. package/dist/index274.js +7 -20
  80. package/dist/index275.js +17 -134
  81. package/dist/index276.js +14 -0
  82. package/dist/index277.js +98 -80
  83. package/dist/index278.js +13 -0
  84. package/dist/index279.js +5 -15
  85. package/dist/index28.js +1 -1
  86. package/dist/index280.js +5 -9
  87. package/dist/index281.js +5 -23
  88. package/dist/index282.js +5 -23
  89. package/dist/index283.js +5 -8
  90. package/dist/index284.js +268 -4
  91. package/dist/index285.js +41 -190
  92. package/dist/index286.js +54 -0
  93. package/dist/index287.js +26 -28
  94. package/dist/index288.js +60 -7
  95. package/dist/index289.js +6 -17
  96. package/dist/index290.js +5 -12
  97. package/dist/index291.js +5 -229
  98. package/dist/index292.js +5 -3
  99. package/dist/index293.js +6 -11
  100. package/dist/index294.js +16 -6
  101. package/dist/index295.js +20 -15
  102. package/dist/index297.js +5 -0
  103. package/dist/index298.js +4 -3
  104. package/dist/index299.js +7 -280
  105. package/dist/index30.js +3 -3
  106. package/dist/index300.js +2 -2
  107. package/dist/index301.js +5 -16
  108. package/dist/index302.js +3 -2
  109. package/dist/index303.js +3 -16
  110. package/dist/index304.js +3 -2
  111. package/dist/index305.js +3 -27
  112. package/dist/index306.js +17 -2
  113. package/dist/index307.js +3 -2
  114. package/dist/index308.js +28 -2
  115. package/dist/index309.js +5 -2
  116. package/dist/index310.js +1 -1
  117. package/dist/index311.js +2 -28
  118. package/dist/index312.js +280 -2
  119. package/dist/index313.js +2 -3
  120. package/dist/index314.js +16 -2
  121. package/dist/index315.js +2 -4
  122. package/dist/index316.js +16 -17
  123. package/dist/index317.js +2 -3
  124. package/dist/index318.js +27 -3
  125. package/dist/index319.js +2 -125
  126. package/dist/index32.js +2 -2
  127. package/dist/index320.js +2 -2
  128. package/dist/index321.js +2 -15
  129. package/dist/index322.js +2 -2
  130. package/dist/index323.js +2 -19
  131. package/dist/index324.js +2 -2
  132. package/dist/index325.js +4 -3
  133. package/dist/index326.js +719 -3
  134. package/dist/index327.js +366 -5
  135. package/dist/index328.js +57 -2
  136. package/dist/index329.js +124 -3
  137. package/dist/index330.js +2 -5
  138. package/dist/index331.js +14 -5
  139. package/dist/index332.js +2 -2
  140. package/dist/index333.js +19 -58
  141. package/dist/index334.js +2 -58
  142. package/dist/index335.js +57 -718
  143. package/dist/index336.js +57 -365
  144. package/dist/index337.js +221 -50
  145. package/dist/index338.js +5 -6
  146. package/dist/index339.js +91 -17
  147. package/dist/index34.js +8 -8
  148. package/dist/index340.js +7 -8
  149. package/dist/index341.js +5 -14
  150. package/dist/index342.js +8 -5
  151. package/dist/index343.js +34 -6
  152. package/dist/index344.js +6 -35
  153. package/dist/index345.js +129 -6
  154. package/dist/index346.js +382 -113
  155. package/dist/index347.js +114 -378
  156. package/dist/index348.js +193 -8
  157. package/dist/index349.js +258 -6
  158. package/dist/index350.js +7 -8
  159. package/dist/index351.js +17 -226
  160. package/dist/index352.js +9 -22
  161. package/dist/index353.js +17 -0
  162. package/dist/index354.js +5 -134
  163. package/dist/index355.js +6 -46
  164. package/dist/index356.js +2 -93
  165. package/dist/index357.js +2 -441
  166. package/dist/index358.js +21 -127
  167. package/dist/index36.js +4 -4
  168. package/dist/index360.js +435 -44
  169. package/dist/index361.js +130 -0
  170. package/dist/index362.js +49 -0
  171. package/dist/index363.js +72 -0
  172. package/dist/{index359.js → index364.js} +1 -1
  173. package/dist/index365.js +52 -0
  174. package/dist/index38.js +252 -232
  175. package/dist/index40.js +7 -7
  176. package/dist/index42.js +2 -2
  177. package/dist/index44.js +8 -8
  178. package/dist/index46.js +6 -6
  179. package/dist/index50.js +2 -2
  180. package/dist/index54.js +1 -1
  181. package/dist/index56.js +1 -1
  182. package/dist/index58.js +2 -2
  183. package/dist/index62.js +5 -5
  184. package/dist/index68.js +1 -1
  185. package/dist/index81.js +6 -6
  186. package/dist/index83.js +1 -1
  187. package/dist/index85.js +2 -2
  188. package/dist/index87.js +3 -3
  189. package/dist/index89.js +1 -1
  190. package/dist/index92.js +3 -3
  191. package/dist/index94.js +2 -2
  192. package/dist/index96.js +5 -5
  193. package/dist/index98.js +1 -1
  194. package/dist/types/Option.d.ts +5 -0
  195. package/dist/utilities/functions/groupBy.d.ts +4 -2
  196. package/dist/utilities/functions/indexBy.d.ts +9 -2
  197. package/package.json +2 -2
  198. package/dist/index221.js +0 -4
  199. package/dist/index238.js +0 -62
  200. package/dist/index240.js +0 -53
  201. package/dist/index247.js +0 -4
  202. package/dist/index250.js +0 -5
  203. package/dist/index296.js +0 -9
package/dist/index348.js CHANGED
@@ -1,10 +1,195 @@
1
- function i(t) {
2
- if (t = t.replace(/^#/, ""), !/^([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})$/.test(t))
3
- throw new Error("Invalid hex code");
4
- t.length === 3 && (t = t.split("").map((n) => n + n).join(""));
5
- const r = parseInt(t.slice(0, 2), 16), s = parseInt(t.slice(2, 4), 16), o = parseInt(t.slice(4, 6), 16);
6
- return [r, s, o];
7
- }
1
+ import { defineComponent as K, useTemplateRef as $, computed as a, watch as v, ref as Q, createElementBlock as s, openBlock as i, withModifiers as U, normalizeStyle as b, normalizeClass as L, createElementVNode as p, renderSlot as r, createTextVNode as z, toDisplayString as f, unref as D, Fragment as W, renderList as X } from "vue";
2
+ import { isNil as E } from "./index260.js";
3
+ import { isNotNil as Z } from "./index146.js";
4
+ import { useVirtualizer as w } from "./index362.js";
5
+ import { hash as N } from "./index254.js";
6
+ import { useLocale as ee } from "./index230.js";
7
+ import { useListboxFocus as te } from "./index363.js";
8
+ import { indexBy as oe } from "./index295.js";
9
+ const le = { class: "bb-listbox__outer-container scrollbar-border" }, ne = {
10
+ ref: "inner",
11
+ class: "bb-listbox__inner-container",
12
+ tabindex: "-1"
13
+ }, ae = {
14
+ key: 0,
15
+ class: "bb-listbox__loading"
16
+ }, se = {
17
+ key: 1,
18
+ class: "bb-listbox__no-data"
19
+ }, ie = ["aria-selected", "data-index"], ue = { class: "autocomplete-option__label" }, xe = /* @__PURE__ */ K({
20
+ __name: "FlatListBox",
21
+ props: {
22
+ compact: { type: Boolean },
23
+ options: {},
24
+ open: { type: Boolean },
25
+ loading: { type: Boolean },
26
+ multiple: { type: Boolean },
27
+ transitionDuration: { default: 250 },
28
+ loadingText: {},
29
+ noDataText: {},
30
+ optionHeight: {}
31
+ },
32
+ emits: ["option:selected", "option:unselected"],
33
+ setup(F, { expose: M, emit: R }) {
34
+ const n = F, x = R, { t: h } = ee(), u = $("inner"), V = $("listbox"), g = a(() => n.optionHeight ? n.optionHeight : n.compact ? 32 : 40), c = w({
35
+ get count() {
36
+ return n.options.length;
37
+ },
38
+ getScrollElement: () => u.value ?? null,
39
+ estimateSize: () => g.value,
40
+ overscan: 5
41
+ }), y = a(() => c.value.getVirtualItems()), C = a(() => c.value.getTotalSize());
42
+ console.log(y.value);
43
+ const _ = a(
44
+ () => n.options.map((e, l) => ({
45
+ index: l,
46
+ text: e.text,
47
+ value: e.value,
48
+ valueHash: e.valueHash,
49
+ item: e.item,
50
+ selected: !!e.selected,
51
+ disabled: !!e.disabled,
52
+ focused: l === d.value
53
+ }))
54
+ ), o = a(() => oe(_.value, "index")), m = a(() => _.value.length > 0), {
55
+ focusedIndex: d,
56
+ focusNext: I,
57
+ focusPrevious: O,
58
+ focusFirst: P,
59
+ focusLast: Y,
60
+ focusFirstSelected: j,
61
+ focusLastSelected: q,
62
+ focusByHash: A,
63
+ blur: H,
64
+ getHighlighted: G
65
+ } = te(() => n.options, { disabled: () => !n.open });
66
+ v(d, (e) => {
67
+ u.value && Z(e) && c.value.scrollToIndex(e, {
68
+ align: "center",
69
+ behavior: "smooth"
70
+ });
71
+ });
72
+ const k = () => {
73
+ if (E(d.value) || !n.open) return;
74
+ const e = o.value[d.value];
75
+ e.disabled || (e.selected ? x("option:unselected", e) : x("option:selected", e));
76
+ }, B = Q(0), T = () => {
77
+ u.value && (B.value = u.value.scrollHeight);
78
+ }, J = (e) => {
79
+ if (e.preventDefault(), u.value && e.target instanceof HTMLElement && V.value) {
80
+ let l = e.target, t = l.dataset.index;
81
+ for (; E(t) && l.parentElement; )
82
+ l = l.parentElement, t = l.dataset.index;
83
+ if (t) {
84
+ const S = o.value[+t];
85
+ S && !S.disabled && (d.value = +t, k());
86
+ }
87
+ }
88
+ };
89
+ return v(
90
+ () => n.open,
91
+ () => {
92
+ T();
93
+ },
94
+ { flush: "post" }
95
+ ), v(
96
+ () => n.options,
97
+ (e, l) => {
98
+ N(e.map((t) => t.valueHash)) !== N(l.map((t) => t.valueHash)) && (c.value.calculateRange(), T(), H());
99
+ },
100
+ { flush: "post" }
101
+ ), M({
102
+ focusNext: I,
103
+ focusPrevious: O,
104
+ focusFirst: P,
105
+ focusFirstSelected: j,
106
+ focusLast: Y,
107
+ focusLastSelected: q,
108
+ blur: H,
109
+ confirmOption: k,
110
+ focusByHash: A,
111
+ getHighlighted: G
112
+ }), (e, l) => (i(), s("span", {
113
+ class: L(["bb-listbox", {
114
+ "bb-listbox--compact": e.compact,
115
+ "bb-listbox--loading": e.loading,
116
+ "bb-listbox--multiple": e.multiple,
117
+ "bb-listbox--no-data": !m.value,
118
+ "bb-listbox--open": e.open
119
+ }]),
120
+ style: b({
121
+ "--transition-duration": `${e.transitionDuration}ms`,
122
+ "--overlay-min-height": `${B.value}px`,
123
+ "--option-height": `${g.value}px`
124
+ }),
125
+ onClick: U(J, ["stop"])
126
+ }, [
127
+ p("span", le, [
128
+ p("span", ne, [
129
+ r(e.$slots, "options:prepend"),
130
+ e.loading && !m.value ? (i(), s("span", ae, [
131
+ r(e.$slots, "loading", {}, () => [
132
+ z(f(e.loadingText || D(h)("common.loadingText").value), 1)
133
+ ])
134
+ ])) : m.value ? (i(), s("span", {
135
+ key: 2,
136
+ role: "listbox",
137
+ ref: "listbox",
138
+ style: b({
139
+ height: `${C.value}px`
140
+ }),
141
+ tabindex: "-1"
142
+ }, [
143
+ (i(!0), s(W, null, X(y.value, (t) => (i(), s("span", {
144
+ key: o.value[t.index].valueHash,
145
+ "aria-selected": o.value[t.index].focused ? !0 : void 0,
146
+ class: L({
147
+ "bb-listbox__option autocomplete-option": !0,
148
+ "autocomplete-option--focused": o.value[t.index].focused,
149
+ "autocomplete-option--selected": o.value[t.index].selected,
150
+ "autocomplete-option--disabled": o.value[t.index].disabled
151
+ }),
152
+ "data-index": t.index,
153
+ role: "option",
154
+ style: b({
155
+ transform: `translateY(${t.start}px)`
156
+ })
157
+ }, [
158
+ r(e.$slots, "option", {
159
+ disabled: o.value[t.index].disabled,
160
+ focused: o.value[t.index].focused,
161
+ index: t.index,
162
+ item: o.value[t.index].item,
163
+ selected: o.value[t.index].selected,
164
+ text: o.value[t.index].text,
165
+ value: o.value[t.index].value
166
+ }, () => [
167
+ l[0] || (l[0] = p("svg", {
168
+ class: "autocomplete-option__checkbox",
169
+ role: "presentation",
170
+ viewBox: "276.411 158.834 114.971 114.97"
171
+ }, [
172
+ p("path", {
173
+ d: "M 297.574 224.786 L 318.309 243.134 L 371.568 189.232",
174
+ fill: "none",
175
+ "stroke-linecap": "round",
176
+ "stroke-width": "14px"
177
+ })
178
+ ], -1)),
179
+ p("span", ue, f(o.value[t.index].text), 1)
180
+ ])
181
+ ], 14, ie))), 128))
182
+ ], 4)) : (i(), s("span", se, [
183
+ r(e.$slots, "no-data", {}, () => [
184
+ z(f(e.noDataText || D(h)("common.noDataText").value), 1)
185
+ ])
186
+ ])),
187
+ r(e.$slots, "options:append")
188
+ ], 512)
189
+ ])
190
+ ], 6));
191
+ }
192
+ });
8
193
  export {
9
- i as hexToRgb
194
+ xe as default
10
195
  };
package/dist/index349.js CHANGED
@@ -1,8 +1,260 @@
1
- function l(c, f, r) {
2
- const t = c / 255, n = f / 255, o = r / 255, i = Math.max(t, n, o), a = Math.min(t, n, o), s = i - a;
3
- let e = 0;
4
- return s !== 0 && (i === t ? e = (n - o) / s % 6 : i === n ? e = (o - t) / s + 2 : i === o && (e = (t - n) / s + 4), e *= 60, e < 0 && (e += 360)), e;
5
- }
1
+ import { defineComponent as pe, useTemplateRef as q, computed as i, watch as L, ref as ve, createElementBlock as r, openBlock as c, withModifiers as be, normalizeStyle as O, normalizeClass as G, createElementVNode as v, renderSlot as h, createTextVNode as J, toDisplayString as x, unref as g, Fragment as P, renderList as Y } from "vue";
2
+ import { isNil as f } from "./index260.js";
3
+ import { useVirtualizer as he } from "./index362.js";
4
+ import { useLocale as me } from "./index230.js";
5
+ import { useListboxFocus as xe } from "./index363.js";
6
+ import { indexBy as E } from "./index295.js";
7
+ const ge = { class: "bb-listbox__outer-container scrollbar-border" }, fe = {
8
+ ref: "inner",
9
+ class: "bb-listbox__inner-container",
10
+ tabindex: "-1"
11
+ }, He = {
12
+ key: 0,
13
+ class: "bb-listbox__loading"
14
+ }, _e = {
15
+ key: 1,
16
+ class: "bb-listbox__no-data"
17
+ }, ye = ["aria-activedescendant", "aria-multiselectable"], Ie = ["aria-labelledby", "aria-disabled"], $e = ["id"], ke = { class: "bb-listbox__group-header-label" }, Be = ["aria-selected", "aria-setsize", "aria-posinset", "id", "data-index"], Me = { class: "autocomplete-option__label" }, Ee = /* @__PURE__ */ pe({
18
+ __name: "GroupedListBox",
19
+ props: {
20
+ compact: { type: Boolean },
21
+ groups: {},
22
+ headerHeight: {},
23
+ loading: { type: Boolean },
24
+ loadingText: {},
25
+ multiple: { type: Boolean },
26
+ noDataText: {},
27
+ open: { type: Boolean },
28
+ optionHeight: {},
29
+ transitionDuration: { default: 250 }
30
+ },
31
+ emits: ["option:selected", "option:unselected"],
32
+ setup(K, { expose: Q, emit: U }) {
33
+ const s = K, V = U, { t: F } = me(), b = q("inner"), W = q("listbox"), H = i(() => s.optionHeight ? s.optionHeight : s.compact ? 32 : 40), _ = i(() => s.headerHeight ? s.headerHeight : s.compact ? 24 : 32), X = i(() => {
34
+ let e = 0;
35
+ return s.groups.map((a, t) => {
36
+ const l = a.id, p = e, d = a.options.length, k = _.value + d * H.value, B = `group-header-${a.id}`, M = typeof a.data == "string" ? a.data : JSON.stringify(a.data), S = a.options.every((z) => z.disabled), D = a.data, T = a.options;
37
+ return e += d, {
38
+ offset: p,
39
+ length: d,
40
+ height: k,
41
+ id: l,
42
+ headerId: B,
43
+ label: M,
44
+ index: t,
45
+ allOptionsAreDisabled: S,
46
+ data: D,
47
+ options: T
48
+ };
49
+ });
50
+ }), n = i(
51
+ () => E(X.value, "index")
52
+ ), m = i(() => s.groups.flatMap(
53
+ (e, a) => e.options.map((t, l) => {
54
+ const p = t.valueHash, d = n.value[a].offset + l, k = e.id, B = !!t.selected, M = !!t.disabled, S = t.item, D = t.text, T = t.value, z = d === u.value;
55
+ return {
56
+ id: p,
57
+ globalIndex: d,
58
+ groupIndex: a,
59
+ groupId: k,
60
+ indexInGroup: l,
61
+ selected: B,
62
+ disabled: M,
63
+ item: S,
64
+ text: D,
65
+ value: T,
66
+ valueHash: t.valueHash,
67
+ focused: z
68
+ };
69
+ })
70
+ )), o = i(() => E(m.value, "id")), y = i(
71
+ () => E(m.value, "globalIndex")
72
+ ), N = (e) => `listbox-option-${e}`, Z = i(() => {
73
+ if (f(u.value)) return;
74
+ const e = y.value[u.value];
75
+ if (e)
76
+ return N(e.valueHash);
77
+ }), I = i(() => m.value.length > 0), w = (e) => _.value + s.groups[e].options.length * H.value, $ = he({
78
+ get count() {
79
+ return s.groups.length;
80
+ },
81
+ getScrollElement: () => b.value ?? null,
82
+ estimateSize: (e) => w(e),
83
+ overscan: 2
84
+ }), ee = i(() => $.value.getVirtualItems()), te = i(() => $.value.getTotalSize()), {
85
+ focusedIndex: u,
86
+ focusNext: ae,
87
+ focusPrevious: le,
88
+ focusFirst: se,
89
+ focusLast: oe,
90
+ focusFirstSelected: ne,
91
+ focusLastSelected: ie,
92
+ focusByHash: ue,
93
+ blur: A,
94
+ getHighlighted: de
95
+ } = xe(
96
+ i(() => m.value),
97
+ { disabled: () => !s.open }
98
+ ), re = () => {
99
+ if (!b.value || f(u.value)) return;
100
+ const e = b.value.querySelector(
101
+ `[data-index="${u.value}"]`
102
+ );
103
+ e && e.scrollIntoView({ block: "nearest", behavior: "smooth" });
104
+ };
105
+ L(u, () => {
106
+ re();
107
+ });
108
+ const C = () => {
109
+ if (f(u.value) || !s.open) return;
110
+ const e = y.value[u.value];
111
+ if (!e || e.disabled) return;
112
+ const a = {
113
+ text: e.text,
114
+ value: e.value,
115
+ item: e.item,
116
+ valueHash: e.valueHash,
117
+ selected: e.selected,
118
+ disabled: e.disabled
119
+ };
120
+ e.selected ? V("option:unselected", a) : V("option:selected", a);
121
+ }, R = ve(0), j = () => {
122
+ b.value && (R.value = b.value.scrollHeight);
123
+ }, ce = (e) => {
124
+ if (e.preventDefault(), b.value && e.target instanceof HTMLElement && W.value) {
125
+ let a = e.target, t = a.dataset.index;
126
+ for (; f(t) && a.parentElement; )
127
+ a = a.parentElement, t = a.dataset.index;
128
+ if (t) {
129
+ const l = y.value[+t];
130
+ l && !l.disabled && (u.value = +t, C());
131
+ }
132
+ }
133
+ };
134
+ return L(() => s.open, j, { flush: "post" }), L(
135
+ () => s.groups,
136
+ (e, a) => {
137
+ const t = e.flatMap((p) => p.options.map((d) => d.valueHash)).join(","), l = a.flatMap((p) => p.options.map((d) => d.valueHash)).join(",");
138
+ t !== l && ($.value.measure(), j(), A());
139
+ },
140
+ { flush: "post" }
141
+ ), Q({
142
+ focusNext: ae,
143
+ focusPrevious: le,
144
+ focusFirst: se,
145
+ focusFirstSelected: ne,
146
+ focusLast: oe,
147
+ focusLastSelected: ie,
148
+ blur: A,
149
+ confirmOption: C,
150
+ focusByHash: ue,
151
+ getHighlighted: de
152
+ }), (e, a) => (c(), r("span", {
153
+ class: G(["bb-listbox bb-listbox--grouped", {
154
+ "bb-listbox--compact": e.compact,
155
+ "bb-listbox--loading": e.loading,
156
+ "bb-listbox--multiple": e.multiple,
157
+ "bb-listbox--no-data": !I.value,
158
+ "bb-listbox--open": e.open
159
+ }]),
160
+ style: O({
161
+ "--transition-duration": `${e.transitionDuration}ms`,
162
+ "--overlay-min-height": `${R.value}px`,
163
+ "--option-height": `${H.value}px`,
164
+ "--group-header-height": `${_.value}px`
165
+ }),
166
+ onClick: be(ce, ["stop"])
167
+ }, [
168
+ v("span", ge, [
169
+ v("span", fe, [
170
+ h(e.$slots, "options:prepend"),
171
+ e.loading && !I.value ? (c(), r("span", He, [
172
+ h(e.$slots, "loading", {}, () => [
173
+ J(x(e.loadingText || g(F)("common.loadingText").value), 1)
174
+ ])
175
+ ])) : I.value ? (c(), r("span", {
176
+ key: 2,
177
+ role: "listbox",
178
+ ref: "listbox",
179
+ style: O({ height: `${te.value}px` }),
180
+ "aria-activedescendant": Z.value,
181
+ "aria-multiselectable": e.multiple ? !0 : void 0,
182
+ tabindex: "-1"
183
+ }, [
184
+ (c(!0), r(P, null, Y(ee.value, (t) => (c(), r("span", {
185
+ key: n.value[t.index].id,
186
+ style: O({ transform: `translateY(${t.start}px)` }),
187
+ role: "group",
188
+ "aria-labelledby": n.value[t.index].headerId,
189
+ "aria-disabled": n.value[t.index].allOptionsAreDisabled,
190
+ class: "bb-listbox__group"
191
+ }, [
192
+ v("span", {
193
+ class: "bb-listbox__group-header",
194
+ role: "presentation",
195
+ id: n.value[t.index].headerId
196
+ }, [
197
+ h(e.$slots, "group", {
198
+ text: n.value[t.index].label,
199
+ item: n.value[t.index].data,
200
+ index: t.index,
201
+ length: n.value[t.index].length,
202
+ disabled: n.value[t.index].allOptionsAreDisabled
203
+ }, () => [
204
+ v("span", ke, x(n.value[t.index].label), 1)
205
+ ])
206
+ ], 8, $e),
207
+ (c(!0), r(P, null, Y(n.value[t.index].options, (l) => (c(), r("span", {
208
+ key: l.valueHash,
209
+ "aria-selected": o.value[l.valueHash].selected ? !0 : void 0,
210
+ "aria-setsize": n.value[t.index].length,
211
+ "aria-posinset": o.value[l.valueHash].indexInGroup + 1,
212
+ id: N(l.valueHash),
213
+ class: G({
214
+ "bb-listbox__option autocomplete-option": !0,
215
+ "autocomplete-option--focused": g(u) === o.value[l.valueHash].globalIndex,
216
+ "autocomplete-option--selected": o.value[l.valueHash].selected,
217
+ "autocomplete-option--disabled": o.value[l.valueHash].disabled
218
+ }),
219
+ "data-index": o.value[l.valueHash].globalIndex,
220
+ role: "option"
221
+ }, [
222
+ h(e.$slots, "option", {
223
+ disabled: !!o.value[l.valueHash].disabled,
224
+ focused: g(u) === o.value[l.valueHash].globalIndex,
225
+ index: o.value[l.valueHash].globalIndex,
226
+ item: o.value[l.valueHash].item,
227
+ selected: !!o.value[l.valueHash].selected,
228
+ text: o.value[l.valueHash].text,
229
+ value: o.value[l.valueHash].value
230
+ }, () => [
231
+ a[0] || (a[0] = v("svg", {
232
+ class: "autocomplete-option__checkbox",
233
+ role: "presentation",
234
+ viewBox: "276.411 158.834 114.971 114.97"
235
+ }, [
236
+ v("path", {
237
+ d: "M 297.574 224.786 L 318.309 243.134 L 371.568 189.232",
238
+ fill: "none",
239
+ "stroke-linecap": "round",
240
+ "stroke-width": "14px"
241
+ })
242
+ ], -1)),
243
+ v("span", Me, x(o.value[l.valueHash].text), 1)
244
+ ])
245
+ ], 10, Be))), 128))
246
+ ], 12, Ie))), 128))
247
+ ], 12, ye)) : (c(), r("span", _e, [
248
+ h(e.$slots, "no-data", {}, () => [
249
+ J(x(e.noDataText || g(F)("common.noDataText").value), 1)
250
+ ])
251
+ ])),
252
+ h(e.$slots, "options:append")
253
+ ], 512)
254
+ ])
255
+ ], 6));
256
+ }
257
+ });
6
258
  export {
7
- l as getHueFromRGB
259
+ Ee as default
8
260
  };
package/dist/index350.js CHANGED
@@ -1,10 +1,9 @@
1
- const i = (r, s, a) => {
2
- const t = a / 100, c = s * Math.min(t, 1 - t) / 100, n = (h) => {
3
- const o = (h + r / 30) % 12, e = t - c * Math.max(Math.min(o - 3, 9 - o, 1), -1);
4
- return Math.round(255 * e).toString(16).padStart(2, "0");
5
- };
6
- return `#${n(0)}${n(8)}${n(4)}`;
7
- };
1
+ function c(n, e) {
2
+ const u = [];
3
+ for (let t = 0; t < n.length; t += e)
4
+ u.push(n.slice(t, t + e));
5
+ return u;
6
+ }
8
7
  export {
9
- i as hslToHex
8
+ c as chunk
10
9
  };