bitboss-ui 2.0.127 → 2.0.128

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 (159) hide show
  1. package/dist/index100.js +9 -9
  2. package/dist/index111.js +11 -11
  3. package/dist/index119.js +2 -2
  4. package/dist/index121.js +6 -6
  5. package/dist/index123.js +1 -1
  6. package/dist/index125.js +1 -1
  7. package/dist/index127.js +1 -1
  8. package/dist/index128.js +1 -1
  9. package/dist/index129.js +1 -1
  10. package/dist/index13.js +2 -2
  11. package/dist/index133.js +2 -2
  12. package/dist/index15.js +5 -5
  13. package/dist/index17.js +3 -3
  14. package/dist/index19.js +8 -8
  15. package/dist/index207.js +8 -281
  16. package/dist/index208.js +3 -125
  17. package/dist/index209.js +86 -16
  18. package/dist/index21.js +16 -16
  19. package/dist/index211.js +28 -18
  20. package/dist/index212.js +16 -14
  21. package/dist/index213.js +51 -2
  22. package/dist/index214.js +15 -2
  23. package/dist/index215.js +11 -40
  24. package/dist/index216.js +16 -13
  25. package/dist/index217.js +63 -18
  26. package/dist/index219.js +13 -94
  27. package/dist/index220.js +22 -0
  28. package/dist/index221.js +4 -65
  29. package/dist/index222.js +15 -0
  30. package/dist/index223.js +2 -13
  31. package/dist/index224.js +4 -2
  32. package/dist/index225.js +2 -4
  33. package/dist/index226.js +3 -8
  34. package/dist/index227.js +3 -3
  35. package/dist/index228.js +41 -3
  36. package/dist/index229.js +6 -7
  37. package/dist/index23.js +16 -16
  38. package/dist/index230.js +7 -15
  39. package/dist/index231.js +15 -3
  40. package/dist/index232.js +5 -19
  41. package/dist/index233.js +13 -24
  42. package/dist/index234.js +14 -248
  43. package/dist/index235.js +19 -52
  44. package/dist/index236.js +15 -44
  45. package/dist/index237.js +19 -5
  46. package/dist/index238.js +26 -59
  47. package/dist/index239.js +2 -2
  48. package/dist/index240.js +250 -4
  49. package/dist/index241.js +52 -2
  50. package/dist/index242.js +38 -80
  51. package/dist/index243.js +7 -0
  52. package/dist/index244.js +60 -29
  53. package/dist/index245.js +2 -17
  54. package/dist/index246.js +2 -51
  55. package/dist/index247.js +2 -15
  56. package/dist/index248.js +125 -12
  57. package/dist/index249.js +94 -16
  58. package/dist/index25.js +7 -7
  59. package/dist/index251.js +2 -126
  60. package/dist/index252.js +17 -105
  61. package/dist/index253.js +128 -0
  62. package/dist/index254.js +53 -47
  63. package/dist/index256.js +100 -12
  64. package/dist/index258.js +11 -368
  65. package/dist/index259.js +228 -2
  66. package/dist/index260.js +369 -2
  67. package/dist/index263.js +28 -6
  68. package/dist/index264.js +3 -16
  69. package/dist/index265.js +17 -9
  70. package/dist/index266.js +8 -8
  71. package/dist/index267.js +3 -23
  72. package/dist/index269.js +7 -2
  73. package/dist/index27.js +1 -1
  74. package/dist/index270.js +176 -2
  75. package/dist/index271.js +7 -2
  76. package/dist/index272.js +11 -2
  77. package/dist/index273.js +6 -2
  78. package/dist/index274.js +16 -2
  79. package/dist/index275.js +3 -430
  80. package/dist/index276.js +6 -173
  81. package/dist/index277.js +23 -3
  82. package/dist/index278.js +9 -3
  83. package/dist/index279.js +10 -0
  84. package/dist/index280.js +224 -7
  85. package/dist/index281.js +430 -6
  86. package/dist/index282.js +2 -11
  87. package/dist/index283.js +85 -24
  88. package/dist/index284.js +281 -2
  89. package/dist/index285.js +5 -88
  90. package/dist/index286.js +2 -200
  91. package/dist/index287.js +2 -9
  92. package/dist/index288.js +2 -8
  93. package/dist/index289.js +2 -4
  94. package/dist/index29.js +2 -2
  95. package/dist/index290.js +2 -224
  96. package/dist/index291.js +2 -3
  97. package/dist/index292.js +2 -17
  98. package/dist/index293.js +2 -2
  99. package/dist/index294.js +2 -2
  100. package/dist/index295.js +1 -1
  101. package/dist/index296.js +1 -1
  102. package/dist/index297.js +21 -1
  103. package/dist/index299.js +199 -21
  104. package/dist/index300.js +4 -0
  105. package/dist/index301.js +3 -126
  106. package/dist/index302.js +126 -3
  107. package/dist/index304.js +3 -2
  108. package/dist/index305.js +2 -436
  109. package/dist/index306.js +5 -127
  110. package/dist/index307.js +436 -3
  111. package/dist/index308.js +127 -3
  112. package/dist/index309.js +65 -56
  113. package/dist/index31.js +2 -2
  114. package/dist/index310.js +2 -480
  115. package/dist/index311.js +5 -5
  116. package/dist/index312.js +8 -2
  117. package/dist/index313.js +3 -4
  118. package/dist/index314.js +3 -8
  119. package/dist/index315.js +3 -67
  120. package/dist/index316.js +57 -52
  121. package/dist/index317.js +28 -28
  122. package/dist/index318.js +52 -32
  123. package/dist/index319.js +28 -21
  124. package/dist/index320.js +25 -3
  125. package/dist/index323.js +6 -46
  126. package/dist/index324.js +480 -7
  127. package/dist/index325.js +47 -2
  128. package/dist/index326.js +4 -0
  129. package/dist/index33.js +8 -8
  130. package/dist/index330.js +420 -43
  131. package/dist/index331.js +49 -0
  132. package/dist/index35.js +4 -4
  133. package/dist/index37.js +22 -22
  134. package/dist/index39.js +4 -4
  135. package/dist/index41.js +2 -2
  136. package/dist/index43.js +8 -8
  137. package/dist/index45.js +8 -8
  138. package/dist/index47.js +2 -2
  139. package/dist/index49.js +2 -2
  140. package/dist/index53.js +1 -1
  141. package/dist/index55.js +1 -1
  142. package/dist/index57.js +2 -2
  143. package/dist/index61.js +1 -1
  144. package/dist/index75.js +3 -3
  145. package/dist/index77.js +1 -1
  146. package/dist/index79.js +2 -2
  147. package/dist/index81.js +1 -1
  148. package/dist/index84.js +4 -4
  149. package/dist/index86.js +2 -2
  150. package/dist/index88.js +4 -4
  151. package/dist/style.css +1 -1
  152. package/package.json +1 -1
  153. package/dist/index210.js +0 -18
  154. package/dist/index218.js +0 -8
  155. package/dist/index250.js +0 -20
  156. package/dist/index257.js +0 -230
  157. package/dist/index268.js +0 -8
  158. package/dist/index298.js +0 -4
  159. package/dist/index328.js +0 -426
package/dist/index330.js CHANGED
@@ -1,49 +1,426 @@
1
- function D(n, l, e) {
2
- let i = e.initialDeps ?? [], t;
3
- return () => {
4
- var r, c, h, m;
5
- let f;
6
- e.key && ((r = e.debug) != null && r.call(e)) && (f = Date.now());
7
- const o = n();
8
- if (!(o.length !== i.length || o.some((a, u) => i[u] !== a)))
9
- return t;
10
- i = o;
11
- let g;
12
- if (e.key && ((c = e.debug) != null && c.call(e)) && (g = Date.now()), t = l(...o), e.key && ((h = e.debug) != null && h.call(e))) {
13
- const a = Math.round((Date.now() - f) * 100) / 100, u = Math.round((Date.now() - g) * 100) / 100, w = u / 16, s = (d, b) => {
14
- for (d = String(d); d.length < b; )
15
- d = " " + d;
16
- return d;
17
- };
18
- console.info(
19
- `%c⏱ ${s(u, 5)} /${s(a, 5)} ms`,
20
- `
21
- font-size: .6rem;
22
- font-weight: bold;
23
- color: hsl(${Math.max(
24
- 0,
25
- Math.min(120 - 120 * w, 120)
26
- )}deg 100% 31%);`,
27
- e == null ? void 0 : e.key
28
- );
1
+ import { debounce as I, memo as u, notUndefined as f, approxEqual as O } from "./index331.js";
2
+ const z = (r) => r, M = (r) => {
3
+ const h = Math.max(r.startIndex - r.overscan, 0), e = Math.min(r.endIndex + r.overscan, r.count - 1), s = [];
4
+ for (let t = h; t <= e; t++)
5
+ s.push(t);
6
+ return s;
7
+ }, R = (r, h) => {
8
+ const e = r.scrollElement;
9
+ if (!e)
10
+ return;
11
+ const s = r.targetWindow;
12
+ if (!s)
13
+ return;
14
+ const t = (n) => {
15
+ const { width: o, height: l } = n;
16
+ h({ width: Math.round(o), height: Math.round(l) });
17
+ };
18
+ if (t(e.getBoundingClientRect()), !s.ResizeObserver)
19
+ return () => {
20
+ };
21
+ const i = new s.ResizeObserver((n) => {
22
+ const o = n[0];
23
+ if (o != null && o.borderBoxSize) {
24
+ const l = o.borderBoxSize[0];
25
+ if (l) {
26
+ t({ width: l.inlineSize, height: l.blockSize });
27
+ return;
28
+ }
29
29
  }
30
- return (m = e == null ? void 0 : e.onChange) == null || m.call(e, t), t;
30
+ t(e.getBoundingClientRect());
31
+ });
32
+ return i.observe(e, { box: "border-box" }), () => {
33
+ i.unobserve(e);
31
34
  };
32
- }
33
- function T(n, l) {
34
- if (n === void 0)
35
- throw new Error("Unexpected undefined");
36
- return n;
37
- }
38
- const y = (n, l) => Math.abs(n - l) < 1, M = (n, l, e) => {
39
- let i;
40
- return function(...t) {
41
- n.clearTimeout(i), i = n.setTimeout(() => l.apply(this, t), e);
35
+ }, v = {
36
+ passive: !0
37
+ }, y = typeof window > "u" ? !0 : "onscrollend" in window, _ = (r, h) => {
38
+ const e = r.scrollElement;
39
+ if (!e)
40
+ return;
41
+ const s = r.targetWindow;
42
+ if (!s)
43
+ return;
44
+ let t = 0;
45
+ const i = y ? () => {
46
+ } : I(
47
+ s,
48
+ () => {
49
+ h(t, !1);
50
+ },
51
+ r.options.isScrollingResetDelay
52
+ ), n = (c) => () => {
53
+ const { horizontal: a, isRtl: d } = r.options;
54
+ t = a ? e.scrollLeft * (d && -1 || 1) : e.scrollTop, i(), h(t, c);
55
+ }, o = n(!0), l = n(!1);
56
+ return l(), e.addEventListener("scroll", o, v), e.addEventListener("scrollend", l, v), () => {
57
+ e.removeEventListener("scroll", o), e.removeEventListener("scrollend", l);
42
58
  };
59
+ }, w = (r, h, e) => {
60
+ if (h != null && h.borderBoxSize) {
61
+ const s = h.borderBoxSize[0];
62
+ if (s)
63
+ return Math.round(
64
+ s[e.options.horizontal ? "inlineSize" : "blockSize"]
65
+ );
66
+ }
67
+ return Math.round(
68
+ r.getBoundingClientRect()[e.options.horizontal ? "width" : "height"]
69
+ );
70
+ }, D = (r, {
71
+ adjustments: h = 0,
72
+ behavior: e
73
+ }, s) => {
74
+ var t, i;
75
+ const n = r + h;
76
+ (i = (t = s.scrollElement) == null ? void 0 : t.scrollTo) == null || i.call(t, {
77
+ [s.options.horizontal ? "left" : "top"]: n,
78
+ behavior: e
79
+ });
43
80
  };
81
+ class N {
82
+ constructor(h) {
83
+ this.unsubs = [], this.scrollElement = null, this.targetWindow = null, this.isScrolling = !1, this.scrollToIndexTimeoutId = null, this.measurementsCache = [], this.itemSizeCache = /* @__PURE__ */ new Map(), this.pendingMeasuredCacheIndexes = [], this.scrollRect = null, this.scrollOffset = null, this.scrollDirection = null, this.scrollAdjustments = 0, this.elementsCache = /* @__PURE__ */ new Map(), this.observer = /* @__PURE__ */ (() => {
84
+ let e = null;
85
+ const s = () => e || (!this.targetWindow || !this.targetWindow.ResizeObserver ? null : e = new this.targetWindow.ResizeObserver((t) => {
86
+ t.forEach((i) => {
87
+ this._measureElement(i.target, i);
88
+ });
89
+ }));
90
+ return {
91
+ disconnect: () => {
92
+ var t;
93
+ (t = s()) == null || t.disconnect(), e = null;
94
+ },
95
+ observe: (t) => {
96
+ var i;
97
+ return (i = s()) == null ? void 0 : i.observe(t, { box: "border-box" });
98
+ },
99
+ unobserve: (t) => {
100
+ var i;
101
+ return (i = s()) == null ? void 0 : i.unobserve(t);
102
+ }
103
+ };
104
+ })(), this.range = null, this.setOptions = (e) => {
105
+ Object.entries(e).forEach(([s, t]) => {
106
+ typeof t > "u" && delete e[s];
107
+ }), this.options = {
108
+ debug: !1,
109
+ initialOffset: 0,
110
+ overscan: 1,
111
+ paddingStart: 0,
112
+ paddingEnd: 0,
113
+ scrollPaddingStart: 0,
114
+ scrollPaddingEnd: 0,
115
+ horizontal: !1,
116
+ getItemKey: z,
117
+ rangeExtractor: M,
118
+ onChange: () => {
119
+ },
120
+ measureElement: w,
121
+ initialRect: { width: 0, height: 0 },
122
+ scrollMargin: 0,
123
+ gap: 0,
124
+ indexAttribute: "data-index",
125
+ initialMeasurementsCache: [],
126
+ lanes: 1,
127
+ isScrollingResetDelay: 150,
128
+ enabled: !0,
129
+ isRtl: !1,
130
+ ...e
131
+ };
132
+ }, this.notify = (e) => {
133
+ var s, t;
134
+ (t = (s = this.options).onChange) == null || t.call(s, this, e);
135
+ }, this.maybeNotify = u(
136
+ () => (this.calculateRange(), [
137
+ this.isScrolling,
138
+ this.range ? this.range.startIndex : null,
139
+ this.range ? this.range.endIndex : null
140
+ ]),
141
+ (e) => {
142
+ this.notify(e);
143
+ },
144
+ {
145
+ key: process.env.NODE_ENV !== "production" && "maybeNotify",
146
+ debug: () => this.options.debug,
147
+ initialDeps: [
148
+ this.isScrolling,
149
+ this.range ? this.range.startIndex : null,
150
+ this.range ? this.range.endIndex : null
151
+ ]
152
+ }
153
+ ), this.cleanup = () => {
154
+ this.unsubs.filter(Boolean).forEach((e) => e()), this.unsubs = [], this.observer.disconnect(), this.scrollElement = null, this.targetWindow = null;
155
+ }, this._didMount = () => () => {
156
+ this.cleanup();
157
+ }, this._willUpdate = () => {
158
+ var e;
159
+ const s = this.options.enabled ? this.options.getScrollElement() : null;
160
+ if (this.scrollElement !== s) {
161
+ if (this.cleanup(), !s) {
162
+ this.maybeNotify();
163
+ return;
164
+ }
165
+ this.scrollElement = s, this.scrollElement && "ownerDocument" in this.scrollElement ? this.targetWindow = this.scrollElement.ownerDocument.defaultView : this.targetWindow = ((e = this.scrollElement) == null ? void 0 : e.window) ?? null, this.elementsCache.forEach((t) => {
166
+ this.observer.observe(t);
167
+ }), this._scrollToOffset(this.getScrollOffset(), {
168
+ adjustments: void 0,
169
+ behavior: void 0
170
+ }), this.unsubs.push(
171
+ this.options.observeElementRect(this, (t) => {
172
+ this.scrollRect = t, this.maybeNotify();
173
+ })
174
+ ), this.unsubs.push(
175
+ this.options.observeElementOffset(this, (t, i) => {
176
+ this.scrollAdjustments = 0, this.scrollDirection = i ? this.getScrollOffset() < t ? "forward" : "backward" : null, this.scrollOffset = t, this.isScrolling = i, this.maybeNotify();
177
+ })
178
+ );
179
+ }
180
+ }, this.getSize = () => this.options.enabled ? (this.scrollRect = this.scrollRect ?? this.options.initialRect, this.scrollRect[this.options.horizontal ? "width" : "height"]) : (this.scrollRect = null, 0), this.getScrollOffset = () => this.options.enabled ? (this.scrollOffset = this.scrollOffset ?? (typeof this.options.initialOffset == "function" ? this.options.initialOffset() : this.options.initialOffset), this.scrollOffset) : (this.scrollOffset = null, 0), this.getFurthestMeasurement = (e, s) => {
181
+ const t = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
182
+ for (let n = s - 1; n >= 0; n--) {
183
+ const o = e[n];
184
+ if (t.has(o.lane))
185
+ continue;
186
+ const l = i.get(
187
+ o.lane
188
+ );
189
+ if (l == null || o.end > l.end ? i.set(o.lane, o) : o.end < l.end && t.set(o.lane, !0), t.size === this.options.lanes)
190
+ break;
191
+ }
192
+ return i.size === this.options.lanes ? Array.from(i.values()).sort((n, o) => n.end === o.end ? n.index - o.index : n.end - o.end)[0] : void 0;
193
+ }, this.getMeasurementOptions = u(
194
+ () => [
195
+ this.options.count,
196
+ this.options.paddingStart,
197
+ this.options.scrollMargin,
198
+ this.options.getItemKey,
199
+ this.options.enabled
200
+ ],
201
+ (e, s, t, i, n) => (this.pendingMeasuredCacheIndexes = [], {
202
+ count: e,
203
+ paddingStart: s,
204
+ scrollMargin: t,
205
+ getItemKey: i,
206
+ enabled: n
207
+ }),
208
+ {
209
+ key: !1
210
+ }
211
+ ), this.getMeasurements = u(
212
+ () => [this.getMeasurementOptions(), this.itemSizeCache],
213
+ ({ count: e, paddingStart: s, scrollMargin: t, getItemKey: i, enabled: n }, o) => {
214
+ if (!n)
215
+ return this.measurementsCache = [], this.itemSizeCache.clear(), [];
216
+ this.measurementsCache.length === 0 && (this.measurementsCache = this.options.initialMeasurementsCache, this.measurementsCache.forEach((a) => {
217
+ this.itemSizeCache.set(a.key, a.size);
218
+ }));
219
+ const l = this.pendingMeasuredCacheIndexes.length > 0 ? Math.min(...this.pendingMeasuredCacheIndexes) : 0;
220
+ this.pendingMeasuredCacheIndexes = [];
221
+ const c = this.measurementsCache.slice(0, l);
222
+ for (let a = l; a < e; a++) {
223
+ const d = i(a), m = this.options.lanes === 1 ? c[a - 1] : this.getFurthestMeasurement(c, a), g = m ? m.end + this.options.gap : s + t, p = o.get(d), b = typeof p == "number" ? p : this.options.estimateSize(a), x = g + b, S = m ? m.lane : a % this.options.lanes;
224
+ c[a] = {
225
+ index: a,
226
+ start: g,
227
+ size: b,
228
+ end: x,
229
+ key: d,
230
+ lane: S
231
+ };
232
+ }
233
+ return this.measurementsCache = c, c;
234
+ },
235
+ {
236
+ key: process.env.NODE_ENV !== "production" && "getMeasurements",
237
+ debug: () => this.options.debug
238
+ }
239
+ ), this.calculateRange = u(
240
+ () => [this.getMeasurements(), this.getSize(), this.getScrollOffset()],
241
+ (e, s, t) => this.range = e.length > 0 && s > 0 ? C({
242
+ measurements: e,
243
+ outerSize: s,
244
+ scrollOffset: t
245
+ }) : null,
246
+ {
247
+ key: process.env.NODE_ENV !== "production" && "calculateRange",
248
+ debug: () => this.options.debug
249
+ }
250
+ ), this.getIndexes = u(
251
+ () => [
252
+ this.options.rangeExtractor,
253
+ this.calculateRange(),
254
+ this.options.overscan,
255
+ this.options.count
256
+ ],
257
+ (e, s, t, i) => s === null ? [] : e({
258
+ startIndex: s.startIndex,
259
+ endIndex: s.endIndex,
260
+ overscan: t,
261
+ count: i
262
+ }),
263
+ {
264
+ key: process.env.NODE_ENV !== "production" && "getIndexes",
265
+ debug: () => this.options.debug
266
+ }
267
+ ), this.indexFromElement = (e) => {
268
+ const s = this.options.indexAttribute, t = e.getAttribute(s);
269
+ return t ? parseInt(t, 10) : (console.warn(
270
+ `Missing attribute name '${s}={index}' on measured element.`
271
+ ), -1);
272
+ }, this._measureElement = (e, s) => {
273
+ const t = this.indexFromElement(e), i = this.measurementsCache[t];
274
+ if (!i)
275
+ return;
276
+ const n = i.key, o = this.elementsCache.get(n);
277
+ o !== e && (o && this.observer.unobserve(o), this.observer.observe(e), this.elementsCache.set(n, e)), e.isConnected && this.resizeItem(t, this.options.measureElement(e, s, this));
278
+ }, this.resizeItem = (e, s) => {
279
+ const t = this.measurementsCache[e];
280
+ if (!t)
281
+ return;
282
+ const i = this.itemSizeCache.get(t.key) ?? t.size, n = s - i;
283
+ n !== 0 && ((this.shouldAdjustScrollPositionOnItemSizeChange !== void 0 ? this.shouldAdjustScrollPositionOnItemSizeChange(t, n, this) : t.start < this.getScrollOffset() + this.scrollAdjustments) && (process.env.NODE_ENV !== "production" && this.options.debug && console.info("correction", n), this._scrollToOffset(this.getScrollOffset(), {
284
+ adjustments: this.scrollAdjustments += n,
285
+ behavior: void 0
286
+ })), this.pendingMeasuredCacheIndexes.push(t.index), this.itemSizeCache = new Map(this.itemSizeCache.set(t.key, s)), this.notify(!1));
287
+ }, this.measureElement = (e) => {
288
+ if (!e) {
289
+ this.elementsCache.forEach((s, t) => {
290
+ s.isConnected || (this.observer.unobserve(s), this.elementsCache.delete(t));
291
+ });
292
+ return;
293
+ }
294
+ this._measureElement(e, void 0);
295
+ }, this.getVirtualItems = u(
296
+ () => [this.getIndexes(), this.getMeasurements()],
297
+ (e, s) => {
298
+ const t = [];
299
+ for (let i = 0, n = e.length; i < n; i++) {
300
+ const o = e[i], l = s[o];
301
+ t.push(l);
302
+ }
303
+ return t;
304
+ },
305
+ {
306
+ key: process.env.NODE_ENV !== "production" && "getVirtualItems",
307
+ debug: () => this.options.debug
308
+ }
309
+ ), this.getVirtualItemForOffset = (e) => {
310
+ const s = this.getMeasurements();
311
+ if (s.length !== 0)
312
+ return f(
313
+ s[E(
314
+ 0,
315
+ s.length - 1,
316
+ (t) => f(s[t]).start,
317
+ e
318
+ )]
319
+ );
320
+ }, this.getOffsetForAlignment = (e, s) => {
321
+ const t = this.getSize(), i = this.getScrollOffset();
322
+ s === "auto" && (e <= i ? s = "start" : e >= i + t ? s = "end" : s = "start"), s === "start" ? e = e : s === "end" ? e = e - t : s === "center" && (e = e - t / 2);
323
+ const n = this.options.horizontal ? "scrollWidth" : "scrollHeight", l = (this.scrollElement ? "document" in this.scrollElement ? this.scrollElement.document.documentElement[n] : this.scrollElement[n] : 0) - t;
324
+ return Math.max(Math.min(l, e), 0);
325
+ }, this.getOffsetForIndex = (e, s = "auto") => {
326
+ e = Math.max(0, Math.min(e, this.options.count - 1));
327
+ const t = this.measurementsCache[e];
328
+ if (!t)
329
+ return;
330
+ const i = this.getSize(), n = this.getScrollOffset();
331
+ if (s === "auto")
332
+ if (t.end >= n + i - this.options.scrollPaddingEnd)
333
+ s = "end";
334
+ else if (t.start <= n + this.options.scrollPaddingStart)
335
+ s = "start";
336
+ else
337
+ return [n, s];
338
+ const o = s === "end" ? t.end + this.options.scrollPaddingEnd : t.start - this.options.scrollPaddingStart;
339
+ return [this.getOffsetForAlignment(o, s), s];
340
+ }, this.isDynamicMode = () => this.elementsCache.size > 0, this.cancelScrollToIndex = () => {
341
+ this.scrollToIndexTimeoutId !== null && this.targetWindow && (this.targetWindow.clearTimeout(this.scrollToIndexTimeoutId), this.scrollToIndexTimeoutId = null);
342
+ }, this.scrollToOffset = (e, { align: s = "start", behavior: t } = {}) => {
343
+ this.cancelScrollToIndex(), t === "smooth" && this.isDynamicMode() && console.warn(
344
+ "The `smooth` scroll behavior is not fully supported with dynamic size."
345
+ ), this._scrollToOffset(this.getOffsetForAlignment(e, s), {
346
+ adjustments: void 0,
347
+ behavior: t
348
+ });
349
+ }, this.scrollToIndex = (e, { align: s = "auto", behavior: t } = {}) => {
350
+ e = Math.max(0, Math.min(e, this.options.count - 1)), this.cancelScrollToIndex(), t === "smooth" && this.isDynamicMode() && console.warn(
351
+ "The `smooth` scroll behavior is not fully supported with dynamic size."
352
+ );
353
+ const i = this.getOffsetForIndex(e, s);
354
+ if (!i) return;
355
+ const [n, o] = i;
356
+ this._scrollToOffset(n, { adjustments: void 0, behavior: t }), t !== "smooth" && this.isDynamicMode() && this.targetWindow && (this.scrollToIndexTimeoutId = this.targetWindow.setTimeout(() => {
357
+ if (this.scrollToIndexTimeoutId = null, this.elementsCache.has(
358
+ this.options.getItemKey(e)
359
+ )) {
360
+ const [c] = f(
361
+ this.getOffsetForIndex(e, o)
362
+ );
363
+ O(c, this.getScrollOffset()) || this.scrollToIndex(e, { align: o, behavior: t });
364
+ } else
365
+ this.scrollToIndex(e, { align: o, behavior: t });
366
+ }));
367
+ }, this.scrollBy = (e, { behavior: s } = {}) => {
368
+ this.cancelScrollToIndex(), s === "smooth" && this.isDynamicMode() && console.warn(
369
+ "The `smooth` scroll behavior is not fully supported with dynamic size."
370
+ ), this._scrollToOffset(this.getScrollOffset() + e, {
371
+ adjustments: void 0,
372
+ behavior: s
373
+ });
374
+ }, this.getTotalSize = () => {
375
+ var e;
376
+ const s = this.getMeasurements();
377
+ let t;
378
+ return s.length === 0 ? t = this.options.paddingStart : t = this.options.lanes === 1 ? ((e = s[s.length - 1]) == null ? void 0 : e.end) ?? 0 : Math.max(
379
+ ...s.slice(-this.options.lanes).map((i) => i.end)
380
+ ), t - this.options.scrollMargin + this.options.paddingEnd;
381
+ }, this._scrollToOffset = (e, {
382
+ adjustments: s,
383
+ behavior: t
384
+ }) => {
385
+ this.options.scrollToFn(e, { behavior: t, adjustments: s }, this);
386
+ }, this.measure = () => {
387
+ this.itemSizeCache = /* @__PURE__ */ new Map(), this.notify(!1);
388
+ }, this.setOptions(h);
389
+ }
390
+ }
391
+ const E = (r, h, e, s) => {
392
+ for (; r <= h; ) {
393
+ const t = (r + h) / 2 | 0, i = e(t);
394
+ if (i < s)
395
+ r = t + 1;
396
+ else if (i > s)
397
+ h = t - 1;
398
+ else
399
+ return t;
400
+ }
401
+ return r > 0 ? r - 1 : 0;
402
+ };
403
+ function C({
404
+ measurements: r,
405
+ outerSize: h,
406
+ scrollOffset: e
407
+ }) {
408
+ const s = r.length - 1, i = E(0, s, (o) => r[o].start, e);
409
+ let n = i;
410
+ for (; n < s && r[n].end < e + h; )
411
+ n++;
412
+ return { startIndex: i, endIndex: n };
413
+ }
44
414
  export {
45
- y as approxEqual,
46
- M as debounce,
47
- D as memo,
48
- T as notUndefined
415
+ N as Virtualizer,
416
+ O as approxEqual,
417
+ I as debounce,
418
+ z as defaultKeyExtractor,
419
+ M as defaultRangeExtractor,
420
+ D as elementScroll,
421
+ w as measureElement,
422
+ u as memo,
423
+ f as notUndefined,
424
+ _ as observeElementOffset,
425
+ R as observeElementRect
49
426
  };
@@ -0,0 +1,49 @@
1
+ function D(n, l, e) {
2
+ let i = e.initialDeps ?? [], t;
3
+ return () => {
4
+ var r, c, h, m;
5
+ let f;
6
+ e.key && ((r = e.debug) != null && r.call(e)) && (f = Date.now());
7
+ const o = n();
8
+ if (!(o.length !== i.length || o.some((a, u) => i[u] !== a)))
9
+ return t;
10
+ i = o;
11
+ let g;
12
+ if (e.key && ((c = e.debug) != null && c.call(e)) && (g = Date.now()), t = l(...o), e.key && ((h = e.debug) != null && h.call(e))) {
13
+ const a = Math.round((Date.now() - f) * 100) / 100, u = Math.round((Date.now() - g) * 100) / 100, w = u / 16, s = (d, b) => {
14
+ for (d = String(d); d.length < b; )
15
+ d = " " + d;
16
+ return d;
17
+ };
18
+ console.info(
19
+ `%c⏱ ${s(u, 5)} /${s(a, 5)} ms`,
20
+ `
21
+ font-size: .6rem;
22
+ font-weight: bold;
23
+ color: hsl(${Math.max(
24
+ 0,
25
+ Math.min(120 - 120 * w, 120)
26
+ )}deg 100% 31%);`,
27
+ e == null ? void 0 : e.key
28
+ );
29
+ }
30
+ return (m = e == null ? void 0 : e.onChange) == null || m.call(e, t), t;
31
+ };
32
+ }
33
+ function T(n, l) {
34
+ if (n === void 0)
35
+ throw new Error("Unexpected undefined");
36
+ return n;
37
+ }
38
+ const y = (n, l) => Math.abs(n - l) < 1, M = (n, l, e) => {
39
+ let i;
40
+ return function(...t) {
41
+ n.clearTimeout(i), i = n.setTimeout(() => l.apply(this, t), e);
42
+ };
43
+ };
44
+ export {
45
+ y as approxEqual,
46
+ M as debounce,
47
+ D as memo,
48
+ T as notUndefined
49
+ };
package/dist/index35.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import { defineComponent as I, ref as v, computed as f, openBlock as l, createElementBlock as r, mergeProps as h, createElementVNode as i, renderSlot as p, Fragment as V, renderList as M, normalizeClass as D, toDisplayString as F, unref as y } from "vue";
2
- import { booleanishToBoolean as T } from "./index241.js";
3
- import { identity as $ } from "./index213.js";
4
- import { isCssColor as k } from "./index239.js";
2
+ import { booleanishToBoolean as T } from "./index225.js";
3
+ import { identity as $ } from "./index245.js";
4
+ import { isCssColor as k } from "./index223.js";
5
5
  import { isNotNil as q } from "./index134.js";
6
- import { useLocale as x } from "./index216.js";
6
+ import { useLocale as x } from "./index222.js";
7
7
  const H = { class: "bb-base-rating__inner-container" }, S = { class: "bb-base-rating__label-text sr-only" }, N = ["id", "aria-describedby", "autofocus", "checked", "disabled", "name", "required", "value"], j = ["height", "width"], W = /* @__PURE__ */ I({
8
8
  __name: "BaseRating",
9
9
  props: {
package/dist/index37.js CHANGED
@@ -5,33 +5,33 @@ import { useId as Ye } from "./index8.js";
5
5
  import { useMobile as Ze } from "./index9.js";
6
6
  import et from "./index128.js";
7
7
  /* empty css */
8
- import { last as tt } from "./index214.js";
9
- import { matchAnyKey as ae } from "./index250.js";
10
- import { useFloating as lt } from "./index251.js";
8
+ import { last as tt } from "./index239.js";
9
+ import { matchAnyKey as ae } from "./index252.js";
10
+ import { useFloating as lt } from "./index253.js";
11
11
  import { useIntersectionObserver as at } from "./index132.js";
12
12
  import { wait as E } from "./index130.js";
13
- import { when as ot } from "./index240.js";
14
- import nt from "./index252.js";
13
+ import { when as ot } from "./index224.js";
14
+ import nt from "./index254.js";
15
15
  /* empty css */
16
- import it from "./index254.js";
16
+ import it from "./index256.js";
17
17
  /* empty css */
18
- import ut from "./index221.js";
18
+ import ut from "./index217.js";
19
19
  /* empty css */
20
- import rt from "./index223.js";
21
- import { waitFor as st } from "./index218.js";
22
- import dt from "./index230.js";
23
- import { useItemsGetter as pt } from "./index244.js";
24
- import { usePrefill as ct } from "./index249.js";
25
- import { useArray as mt } from "./index256.js";
26
- import { useBaseOptions as ft } from "./index246.js";
27
- import { useIndexById as oe } from "./index245.js";
28
- import { useCoherence as vt } from "./index247.js";
29
- import { hash as yt } from "./index227.js";
30
- import { useHashedWatcher as ne } from "./index248.js";
31
- import { useLocale as ht } from "./index216.js";
32
- import { isEmpty as bt } from "./index224.js";
33
- import gt from "./index257.js";
34
- import { autoUpdate as wt, flip as Bt, offset as Vt, shift as It } from "./index258.js";
20
+ import rt from "./index219.js";
21
+ import { waitFor as st } from "./index229.js";
22
+ import dt from "./index231.js";
23
+ import { useItemsGetter as pt } from "./index211.js";
24
+ import { usePrefill as ct } from "./index216.js";
25
+ import { useArray as mt } from "./index258.js";
26
+ import { useBaseOptions as ft } from "./index213.js";
27
+ import { useIndexById as oe } from "./index212.js";
28
+ import { useCoherence as vt } from "./index214.js";
29
+ import { hash as yt } from "./index208.js";
30
+ import { useHashedWatcher as ne } from "./index215.js";
31
+ import { useLocale as ht } from "./index222.js";
32
+ import { isEmpty as bt } from "./index251.js";
33
+ import gt from "./index259.js";
34
+ import { autoUpdate as wt, flip as Bt, offset as Vt, shift as It } from "./index260.js";
35
35
  const kt = { class: "bb-base-select__input-container" }, St = {
36
36
  key: 1,
37
37
  class: "bb-base-select__max-reached"
package/dist/index39.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import { defineComponent as U, ref as d, computed as h, onMounted as W, watch as Z, openBlock as g, createElementBlock as w, mergeProps as T, renderSlot as f, createElementVNode as c, Fragment as ee, renderList as ae, createCommentVNode as H, normalizeProps as re, guardReactiveProps as te, unref as b, normalizeClass as F, normalizeStyle as I } from "vue";
2
2
  import { clamp as le } from "./index206.js";
3
- import { head as O } from "./index259.js";
4
- import { isCssColor as Y } from "./index239.js";
5
- import { isNil as P } from "./index260.js";
3
+ import { head as O } from "./index246.js";
4
+ import { isCssColor as Y } from "./index223.js";
5
+ import { isNil as P } from "./index247.js";
6
6
  import { isNotNil as ne } from "./index134.js";
7
7
  import { transposeValue as y } from "./index131.js";
8
- import { hash as J } from "./index227.js";
8
+ import { hash as J } from "./index208.js";
9
9
  const oe = { class: "bb-base-slider__slider-container" }, ie = {
10
10
  key: 0,
11
11
  class: "bb-base-slider__ticks-container"
package/dist/index41.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as I, ref as f, computed as n, watch as S, openBlock as h, createElementBlock as y, normalizeProps as r, guardReactiveProps as d, mergeProps as V, createCommentVNode as A, createElementVNode as l, renderSlot as F } from "vue";
2
- import { isCssColor as b } from "./index239.js";
3
- import { when as N } from "./index240.js";
2
+ import { isCssColor as b } from "./index223.js";
3
+ import { when as N } from "./index224.js";
4
4
  const x = { class: "bb-base-switch-container" }, $ = /* @__PURE__ */ I({
5
5
  __name: "BaseSwitch",
6
6
  props: {
package/dist/index43.js CHANGED
@@ -1,15 +1,15 @@
1
1
  import { defineComponent as j, ref as k, toRef as d, openBlock as z, createBlock as G, unref as B, withCtx as s, renderSlot as l, normalizeProps as h, guardReactiveProps as v, createVNode as R, mergeProps as w, createSlots as W } from "vue";
2
2
  import K from "./index41.js";
3
3
  /* empty css */
4
- import N from "./index242.js";
4
+ import N from "./index209.js";
5
5
  /* empty css */
6
- import { useItemsGetter as U } from "./index244.js";
7
- import { useIndexById as T } from "./index245.js";
8
- import { useBaseOptions as q } from "./index246.js";
9
- import { useCoherence as J } from "./index247.js";
10
- import { hash as Q } from "./index227.js";
11
- import { useHashedWatcher as E } from "./index248.js";
12
- import { usePrefill as X } from "./index249.js";
6
+ import { useItemsGetter as U } from "./index211.js";
7
+ import { useIndexById as T } from "./index212.js";
8
+ import { useBaseOptions as q } from "./index213.js";
9
+ import { useCoherence as J } from "./index214.js";
10
+ import { hash as Q } from "./index208.js";
11
+ import { useHashedWatcher as E } from "./index215.js";
12
+ import { usePrefill as X } from "./index216.js";
13
13
  const ue = /* @__PURE__ */ j({
14
14
  __name: "BaseSwitchGroup",
15
15
  props: {
package/dist/index45.js CHANGED
@@ -3,17 +3,17 @@ import { defineComponent as Q, ref as u, computed as f, toRef as E, watch as Z,
3
3
  /* empty css */
4
4
  import ae from "./index128.js";
5
5
  /* empty css */
6
- import { last as le } from "./index214.js";
7
- import { useBaseOptions as ne } from "./index246.js";
8
- import { useIndexById as re } from "./index245.js";
9
- import ie from "./index252.js";
6
+ import { last as le } from "./index239.js";
7
+ import { useBaseOptions as ne } from "./index213.js";
8
+ import { useIndexById as re } from "./index212.js";
9
+ import ie from "./index254.js";
10
10
  /* empty css */
11
- import ue from "./index254.js";
11
+ import ue from "./index256.js";
12
12
  /* empty css */
13
- import se from "./index221.js";
13
+ import se from "./index217.js";
14
14
  /* empty css */
15
- import de from "./index223.js";
16
- import { isEmpty as pe } from "./index224.js";
15
+ import de from "./index219.js";
16
+ import { isEmpty as pe } from "./index251.js";
17
17
  const ce = { class: "bb-base-tag__input-container" }, me = ["id", "aria-describedby", "autocomplete", "autofocus", "disabled", "placeholder", "readonly", "required", "onKeydown"], Le = /* @__PURE__ */ Q({
18
18
  __name: "BaseTag",
19
19
  props: {