bitboss-ui 2.0.41 → 2.0.42

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 (140) hide show
  1. package/dist/index110.js +4 -4
  2. package/dist/index118.js +1 -1
  3. package/dist/index120.js +5 -5
  4. package/dist/index122.js +1 -1
  5. package/dist/index126.js +1 -1
  6. package/dist/index127.js +1 -1
  7. package/dist/index128.js +1 -1
  8. package/dist/index133.js +2 -2
  9. package/dist/index15.js +4 -4
  10. package/dist/index17.js +3 -3
  11. package/dist/index19.js +2 -2
  12. package/dist/index206.js +158 -3
  13. package/dist/index207.js +84 -41
  14. package/dist/index209.js +3 -7
  15. package/dist/index21.js +13 -13
  16. package/dist/index211.js +3 -126
  17. package/dist/index212.js +40 -280
  18. package/dist/index213.js +6 -125
  19. package/dist/index214.js +7 -19
  20. package/dist/index215.js +52 -15
  21. package/dist/index217.js +13 -2
  22. package/dist/index218.js +2 -2
  23. package/dist/index219.js +4 -20
  24. package/dist/index220.js +2 -53
  25. package/dist/index221.js +22 -0
  26. package/dist/index222.js +3 -12
  27. package/dist/index223.js +126 -5
  28. package/dist/index224.js +5 -369
  29. package/dist/index225.js +122 -16
  30. package/dist/index226.js +18 -26
  31. package/dist/index227.js +16 -3
  32. package/dist/index228.js +14 -247
  33. package/dist/index229.js +2 -52
  34. package/dist/index23.js +15 -15
  35. package/dist/index230.js +2 -44
  36. package/dist/index231.js +4 -4
  37. package/dist/index232.js +369 -49
  38. package/dist/index233.js +19 -4
  39. package/dist/index234.js +27 -3
  40. package/dist/index235.js +3 -158
  41. package/dist/index236.js +242 -77
  42. package/dist/index237.js +54 -0
  43. package/dist/index238.js +44 -2
  44. package/dist/index239.js +5 -4
  45. package/dist/index240.js +49 -2
  46. package/dist/index241.js +1 -1
  47. package/dist/index243.js +1 -1
  48. package/dist/index245.js +1 -1
  49. package/dist/index25.js +4 -4
  50. package/dist/index250.js +3 -431
  51. package/dist/index251.js +11 -88
  52. package/dist/index252.js +8 -5
  53. package/dist/index253.js +9 -2
  54. package/dist/index254.js +17 -2
  55. package/dist/index255.js +224 -2
  56. package/dist/index256.js +431 -2
  57. package/dist/index257.js +89 -2
  58. package/dist/index258.js +3 -126
  59. package/dist/index260.js +7 -3
  60. package/dist/index261.js +6 -0
  61. package/dist/index262.js +175 -6
  62. package/dist/index263.js +199 -21
  63. package/dist/index264.js +8 -0
  64. package/dist/index265.js +15 -199
  65. package/dist/index266.js +3 -2
  66. package/dist/index267.js +9 -2
  67. package/dist/index268.js +23 -2
  68. package/dist/index269.js +9 -2
  69. package/dist/index27.js +1 -1
  70. package/dist/index270.js +281 -2
  71. package/dist/index271.js +6 -2
  72. package/dist/index272.js +2 -28
  73. package/dist/index273.js +2 -22
  74. package/dist/index274.js +4 -0
  75. package/dist/index275.js +2 -436
  76. package/dist/index276.js +2 -127
  77. package/dist/index277.js +2 -224
  78. package/dist/index278.js +1 -5
  79. package/dist/index279.js +2 -16
  80. package/dist/index280.js +2 -9
  81. package/dist/index281.js +2 -3
  82. package/dist/index282.js +28 -12
  83. package/dist/index283.js +21 -8
  84. package/dist/index285.js +2 -17
  85. package/dist/index286.js +126 -3
  86. package/dist/index287.js +21 -8
  87. package/dist/index289.js +435 -3
  88. package/dist/index29.js +2 -2
  89. package/dist/index290.js +127 -3
  90. package/dist/index291.js +1 -1
  91. package/dist/index292.js +3 -211
  92. package/dist/index293.js +211 -2
  93. package/dist/index294.js +2 -66
  94. package/dist/index295.js +66 -5
  95. package/dist/index296.js +5 -7
  96. package/dist/index297.js +4 -18
  97. package/dist/index298.js +7 -34
  98. package/dist/index299.js +10 -6
  99. package/dist/index300.js +3 -4
  100. package/dist/index301.js +4 -8
  101. package/dist/index302.js +4 -4
  102. package/dist/index303.js +59 -4
  103. package/dist/index304.js +77 -57
  104. package/dist/index306.js +35 -79
  105. package/dist/index307.js +9 -0
  106. package/dist/index308.js +17 -45
  107. package/dist/index309.js +46 -10
  108. package/dist/index31.js +2 -2
  109. package/dist/index310.js +7 -2
  110. package/dist/index311.js +4 -0
  111. package/dist/index312.js +2 -2
  112. package/dist/index314.js +420 -43
  113. package/dist/index315.js +47 -2
  114. package/dist/index316.js +4 -0
  115. package/dist/index33.js +2 -2
  116. package/dist/index35.js +3 -3
  117. package/dist/index37.js +8 -8
  118. package/dist/index39.js +2 -2
  119. package/dist/index41.js +2 -2
  120. package/dist/index43.js +2 -2
  121. package/dist/index45.js +4 -4
  122. package/dist/index47.js +2 -2
  123. package/dist/index49.js +2 -2
  124. package/dist/index55.js +1 -1
  125. package/dist/index57.js +1 -1
  126. package/dist/index75.js +3 -3
  127. package/dist/index79.js +2 -2
  128. package/dist/index81.js +1 -1
  129. package/dist/index84.js +2 -2
  130. package/dist/index86.js +1 -1
  131. package/dist/index88.js +3 -3
  132. package/dist/style.css +1 -1
  133. package/package.json +1 -1
  134. package/dist/index208.js +0 -8
  135. package/dist/index216.js +0 -18
  136. package/dist/index259.js +0 -178
  137. package/dist/index284.js +0 -11
  138. package/dist/index288.js +0 -25
  139. package/dist/index305.js +0 -6
  140. package/dist/index313.js +0 -426
package/dist/index314.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 "./index315.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
  };
package/dist/index315.js CHANGED
@@ -1,4 +1,49 @@
1
- var e = { exports: {} };
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
+ };
2
44
  export {
3
- e as __module
45
+ y as approxEqual,
46
+ M as debounce,
47
+ D as memo,
48
+ T as notUndefined
4
49
  };
@@ -0,0 +1,4 @@
1
+ var e = { exports: {} };
2
+ export {
3
+ e as __module
4
+ };
package/dist/index33.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { defineComponent as L, ref as m, toRef as l, openBlock as E, createBlock as $, unref as p, withCtx as t, renderSlot as i, normalizeProps as f, guardReactiveProps as b, createVNode as B, mergeProps as v, createSlots as C } from "vue";
2
- import { useOptions as w } from "./index235.js";
2
+ import { useOptions as w } from "./index206.js";
3
3
  import q from "./index31.js";
4
4
  /* empty css */
5
- import z from "./index236.js";
5
+ import z from "./index207.js";
6
6
  /* empty css */
7
7
  const N = /* @__PURE__ */ L({
8
8
  __name: "BaseRadioGroup",
package/dist/index35.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as C, ref as g, computed as f, openBlock as l, createElementBlock as i, mergeProps as h, createElementVNode as r, renderSlot as p, Fragment as I, renderList as V, normalizeClass as B, toDisplayString as M } from "vue";
2
- import { booleanishToBoolean as D } from "./index240.js";
3
- import { identity as F } from "./index217.js";
4
- import { isCssColor as v } from "./index238.js";
2
+ import { booleanishToBoolean as D } from "./index220.js";
3
+ import { identity as F } from "./index229.js";
4
+ import { isCssColor as v } from "./index218.js";
5
5
  import { isNotNil as T } from "./index134.js";
6
6
  const $ = { class: "bb-base-rating__inner-container" }, q = { class: "bb-base-rating__label-text sr-only" }, x = ["id", "aria-describedby", "autofocus", "checked", "disabled", "name", "required", "value"], H = ["height", "width"], J = /* @__PURE__ */ C({
7
7
  __name: "BaseRating",
package/dist/index37.js CHANGED
@@ -6,23 +6,23 @@ import { useMobile as _e } from "./index9.js";
6
6
  import Re from "./index127.js";
7
7
  /* empty css */
8
8
  import { isNotNil as Je } from "./index134.js";
9
- import { last as Ye } from "./index218.js";
9
+ import { last as Ye } from "./index230.js";
10
10
  import { matchAnyKey as j } from "./index242.js";
11
- import { useFloating as je } from "./index211.js";
11
+ import { useFloating as je } from "./index223.js";
12
12
  import { useIntersectionObserver as Ge } from "./index132.js";
13
13
  import { useLogger as Xe } from "./index210.js";
14
- import { useOptions as Ze } from "./index235.js";
14
+ import { useOptions as Ze } from "./index206.js";
15
15
  import { wait as S } from "./index131.js";
16
- import { when as et } from "./index239.js";
16
+ import { when as et } from "./index219.js";
17
17
  import tt from "./index243.js";
18
18
  /* empty css */
19
19
  import ot from "./index245.js";
20
20
  /* empty css */
21
- import nt from "./index220.js";
21
+ import nt from "./index215.js";
22
22
  /* empty css */
23
- import lt from "./index222.js";
24
- import { waitFor as at } from "./index208.js";
25
- import { autoUpdate as it, flip as rt, offset as st, shift as ut } from "./index224.js";
23
+ import lt from "./index217.js";
24
+ import { waitFor as at } from "./index213.js";
25
+ import { autoUpdate as it, flip as rt, offset as st, shift as ut } from "./index232.js";
26
26
  const pt = { class: "bb-base-select__input-container" }, dt = ["id", "aria-controls", "aria-describedby", "aria-expanded", "autocomplete", "autofocus", "disabled", "inputmode", "placeholder", "readonly", "required", "onKeydown"], Nt = /* @__PURE__ */ Me({
27
27
  __name: "BaseSelect",
28
28
  props: {
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 "./index205.js";
3
3
  import { head as O } from "./index247.js";
4
- import { isCssColor as Y } from "./index238.js";
4
+ import { isCssColor as Y } from "./index218.js";
5
5
  import { isNil as P } from "./index129.js";
6
6
  import { isNotNil as ne } from "./index134.js";
7
7
  import { transposeValue as y } from "./index130.js";
8
- import { hash as J } from "./index227.js";
8
+ import { hash as J } from "./index235.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 q, createElementVNode as l, renderSlot as A } from "vue";
2
- import { isCssColor as b } from "./index238.js";
3
- import { when as F } from "./index239.js";
2
+ import { isCssColor as b } from "./index218.js";
3
+ import { when as F } from "./index219.js";
4
4
  const N = { class: "bb-base-switch-container" }, $ = /* @__PURE__ */ I({
5
5
  __name: "BaseSwitch",
6
6
  props: {
package/dist/index43.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { defineComponent as $, ref as p, toRef as l, openBlock as w, createBlock as B, unref as f, withCtx as i, renderSlot as s, normalizeProps as b, guardReactiveProps as h, createVNode as O, mergeProps as v, createSlots as z } from "vue";
2
- import { useOptions as F } from "./index235.js";
2
+ import { useOptions as F } from "./index206.js";
3
3
  import M from "./index41.js";
4
4
  /* empty css */
5
- import S from "./index236.js";
5
+ import S from "./index207.js";
6
6
  /* empty css */
7
7
  const I = /* @__PURE__ */ $({
8
8
  __name: "BaseSwitchGroup",
package/dist/index45.js CHANGED
@@ -4,15 +4,15 @@ import { defineComponent as Y, ref as r, computed as k, toRef as B, openBlock as
4
4
  import ue from "./index127.js";
5
5
  /* empty css */
6
6
  import { isNotNil as se } from "./index134.js";
7
- import { last as de } from "./index218.js";
8
- import { useOptions as pe } from "./index235.js";
7
+ import { last as de } from "./index230.js";
8
+ import { useOptions as pe } from "./index206.js";
9
9
  import ce from "./index243.js";
10
10
  /* empty css */
11
11
  import fe from "./index245.js";
12
12
  /* empty css */
13
- import me from "./index220.js";
13
+ import me from "./index215.js";
14
14
  /* empty css */
15
- import ve from "./index222.js";
15
+ import ve from "./index217.js";
16
16
  const ye = { class: "bb-base-tag__input-container" }, be = ["id", "aria-describedby", "autocomplete", "autofocus", "disabled", "placeholder", "readonly", "required", "onKeydown"], Ne = /* @__PURE__ */ Y({
17
17
  __name: "BaseTag",
18
18
  props: {
package/dist/index47.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as w, ref as g, computed as u, onMounted as y, watch as V, nextTick as k, openBlock as x, createBlock as B, normalizeClass as $, withCtx as r, renderSlot as t, createVNode as i, createElementVNode as C, mergeProps as T } from "vue";
2
- import v from "./index222.js";
3
- import E from "./index220.js";
2
+ import v from "./index217.js";
3
+ import E from "./index215.js";
4
4
  /* empty css */
5
5
  import G from "./index127.js";
6
6
  /* empty css */
package/dist/index49.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as m, computed as b, openBlock as c, createElementBlock as f, Fragment as y, createVNode as p, normalizeClass as h, withCtx as n, renderSlot as r, createElementVNode as l, mergeProps as g } from "vue";
2
- import B from "./index220.js";
2
+ import B from "./index215.js";
3
3
  /* empty css */
4
- import k from "./index222.js";
4
+ import k from "./index217.js";
5
5
  const w = ["id", "aria-describedby", "aria-invalid", "autocomplete", "autofocus", "disabled", "name", "placeholder", "readonly", "required", "type", "value"], V = /* @__PURE__ */ m({
6
6
  __name: "BaseTextInput",
7
7
  props: {