baseline-kit 2.1.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +141 -9
  2. package/dist/README.md +141 -9
  3. package/dist/baseline-kit.css +151 -0
  4. package/dist/components/Baseline/Baseline.d.ts +0 -23
  5. package/dist/components/Box/Box.d.ts +14 -24
  6. package/dist/components/Config/Config.d.ts +25 -25
  7. package/dist/components/Config/defaults.d.ts +2 -2
  8. package/dist/components/Config/index.d.ts +1 -1
  9. package/dist/components/Guide/Guide.d.ts +2 -16
  10. package/dist/components/Guide/index.d.ts +0 -6
  11. package/dist/components/Guide/types.d.ts +1 -1
  12. package/dist/components/Layout/Layout.d.ts +0 -10
  13. package/dist/components/Padder/Padder.d.ts +8 -19
  14. package/dist/components/Spacer/Spacer.d.ts +0 -4
  15. package/dist/components/Stack/Stack.d.ts +2 -11
  16. package/dist/components/index.d.ts +4 -3
  17. package/dist/components/styles/index.d.ts +11 -0
  18. package/dist/components/types.d.ts +2 -2
  19. package/dist/hooks/useConfig.d.ts +3 -3
  20. package/dist/hooks/useIsClient.d.ts +6 -0
  21. package/dist/index.cjs +1 -31
  22. package/dist/index.cjs.map +1 -1
  23. package/dist/index.d.ts +25 -3
  24. package/dist/index.mjs +1454 -1848
  25. package/dist/index.mjs.map +1 -1
  26. package/dist/styles.css +1 -1
  27. package/dist/styles.d.ts +6 -0
  28. package/dist/theme/dark.css +67 -0
  29. package/dist/theme/default.css +82 -0
  30. package/dist/theme/tokens.css +82 -0
  31. package/dist/theme.css +116 -114
  32. package/dist/theme.d.ts +6 -0
  33. package/dist/utils/convert.d.ts +0 -17
  34. package/dist/utils/math.d.ts +0 -37
  35. package/dist/utils/normalize.d.ts +0 -35
  36. package/dist/utils/parse.d.ts +0 -29
  37. package/dist/utils/ssr.d.ts +0 -7
  38. package/package.json +51 -20
package/dist/index.mjs CHANGED
@@ -1,900 +1,6 @@
1
- import * as c from "react";
2
- import at, { useMemo as ke, useCallback as Ee, useState as it, useLayoutEffect as Ke } from "react";
3
- var ge = { exports: {} }, de = {};
4
- /**
5
- * @license React
6
- * react-jsx-runtime.production.js
7
- *
8
- * Copyright (c) Meta Platforms, Inc. and affiliates.
9
- *
10
- * This source code is licensed under the MIT license found in the
11
- * LICENSE file in the root directory of this source tree.
12
- */
13
- var Pe;
14
- function lt() {
15
- if (Pe) return de;
16
- Pe = 1;
17
- var e = Symbol.for("react.transitional.element"), n = Symbol.for("react.fragment");
18
- function o(r, s, a) {
19
- var i = null;
20
- if (a !== void 0 && (i = "" + a), s.key !== void 0 && (i = "" + s.key), "key" in s) {
21
- a = {};
22
- for (var l in s)
23
- l !== "key" && (a[l] = s[l]);
24
- } else a = s;
25
- return s = a.ref, {
26
- $$typeof: e,
27
- type: r,
28
- key: i,
29
- ref: s !== void 0 ? s : null,
30
- props: a
31
- };
32
- }
33
- return de.Fragment = n, de.jsx = o, de.jsxs = o, de;
34
- }
35
- var be = {};
36
- /**
37
- * @license React
38
- * react-jsx-runtime.development.js
39
- *
40
- * Copyright (c) Meta Platforms, Inc. and affiliates.
41
- *
42
- * This source code is licensed under the MIT license found in the
43
- * LICENSE file in the root directory of this source tree.
44
- */
45
- var Ye;
46
- function ct() {
47
- return Ye || (Ye = 1, process.env.NODE_ENV !== "production" && function() {
48
- function e(t) {
49
- if (t == null) return null;
50
- if (typeof t == "function")
51
- return t.$$typeof === J ? null : t.displayName || t.name || null;
52
- if (typeof t == "string") return t;
53
- switch (t) {
54
- case G:
55
- return "Fragment";
56
- case I:
57
- return "Portal";
58
- case M:
59
- return "Profiler";
60
- case p:
61
- return "StrictMode";
62
- case z:
63
- return "Suspense";
64
- case y:
65
- return "SuspenseList";
66
- }
67
- if (typeof t == "object")
68
- switch (typeof t.tag == "number" && console.error(
69
- "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
70
- ), t.$$typeof) {
71
- case E:
72
- return (t.displayName || "Context") + ".Provider";
73
- case D:
74
- return (t._context.displayName || "Context") + ".Consumer";
75
- case L:
76
- var f = t.render;
77
- return t = t.displayName, t || (t = f.displayName || f.name || "", t = t !== "" ? "ForwardRef(" + t + ")" : "ForwardRef"), t;
78
- case B:
79
- return f = t.displayName || null, f !== null ? f : e(t.type) || "Memo";
80
- case W:
81
- f = t._payload, t = t._init;
82
- try {
83
- return e(t(f));
84
- } catch {
85
- }
86
- }
87
- return null;
88
- }
89
- function n(t) {
90
- return "" + t;
91
- }
92
- function o(t) {
93
- try {
94
- n(t);
95
- var f = !1;
96
- } catch {
97
- f = !0;
98
- }
99
- if (f) {
100
- f = console;
101
- var d = f.error, C = typeof Symbol == "function" && Symbol.toStringTag && t[Symbol.toStringTag] || t.constructor.name || "Object";
102
- return d.call(
103
- f,
104
- "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
105
- C
106
- ), n(t);
107
- }
108
- }
109
- function r() {
110
- }
111
- function s() {
112
- if (X === 0) {
113
- Ae = console.log, $e = console.info, Ne = console.warn, Ve = console.error, Ge = console.group, De = console.groupCollapsed, We = console.groupEnd;
114
- var t = {
115
- configurable: !0,
116
- enumerable: !0,
117
- value: r,
118
- writable: !0
119
- };
120
- Object.defineProperties(console, {
121
- info: t,
122
- log: t,
123
- warn: t,
124
- error: t,
125
- group: t,
126
- groupCollapsed: t,
127
- groupEnd: t
128
- });
129
- }
130
- X++;
131
- }
132
- function a() {
133
- if (X--, X === 0) {
134
- var t = { configurable: !0, enumerable: !0, writable: !0 };
135
- Object.defineProperties(console, {
136
- log: P({}, t, { value: Ae }),
137
- info: P({}, t, { value: $e }),
138
- warn: P({}, t, { value: Ne }),
139
- error: P({}, t, { value: Ve }),
140
- group: P({}, t, { value: Ge }),
141
- groupCollapsed: P({}, t, { value: De }),
142
- groupEnd: P({}, t, { value: We })
143
- });
144
- }
145
- 0 > X && console.error(
146
- "disabledDepth fell below zero. This is a bug in React. Please file an issue."
147
- );
148
- }
149
- function i(t) {
150
- if (ye === void 0)
151
- try {
152
- throw Error();
153
- } catch (d) {
154
- var f = d.stack.trim().match(/\n( *(at )?)/);
155
- ye = f && f[1] || "", He = -1 < d.stack.indexOf(`
156
- at`) ? " (<anonymous>)" : -1 < d.stack.indexOf("@") ? "@unknown:0:0" : "";
157
- }
158
- return `
159
- ` + ye + t + He;
160
- }
161
- function l(t, f) {
162
- if (!t || xe) return "";
163
- var d = Se.get(t);
164
- if (d !== void 0) return d;
165
- xe = !0, d = Error.prepareStackTrace, Error.prepareStackTrace = void 0;
166
- var C = null;
167
- C = _.H, _.H = null, s();
168
- try {
169
- var Y = {
170
- DetermineComponentFrameRoot: function() {
171
- try {
172
- if (f) {
173
- var te = function() {
174
- throw Error();
175
- };
176
- if (Object.defineProperty(te.prototype, "props", {
177
- set: function() {
178
- throw Error();
179
- }
180
- }), typeof Reflect == "object" && Reflect.construct) {
181
- try {
182
- Reflect.construct(te, []);
183
- } catch (ee) {
184
- var me = ee;
185
- }
186
- Reflect.construct(t, [], te);
187
- } else {
188
- try {
189
- te.call();
190
- } catch (ee) {
191
- me = ee;
192
- }
193
- t.call(te.prototype);
194
- }
195
- } else {
196
- try {
197
- throw Error();
198
- } catch (ee) {
199
- me = ee;
200
- }
201
- (te = t()) && typeof te.catch == "function" && te.catch(function() {
202
- });
203
- }
204
- } catch (ee) {
205
- if (ee && me && typeof ee.stack == "string")
206
- return [ee.stack, me.stack];
207
- }
208
- return [null, null];
209
- }
210
- };
211
- Y.DetermineComponentFrameRoot.displayName = "DetermineComponentFrameRoot";
212
- var N = Object.getOwnPropertyDescriptor(
213
- Y.DetermineComponentFrameRoot,
214
- "name"
215
- );
216
- N && N.configurable && Object.defineProperty(
217
- Y.DetermineComponentFrameRoot,
218
- "name",
219
- { value: "DetermineComponentFrameRoot" }
220
- );
221
- var v = Y.DetermineComponentFrameRoot(), Q = v[0], ce = v[1];
222
- if (Q && ce) {
223
- var F = Q.split(`
224
- `), ae = ce.split(`
225
- `);
226
- for (v = N = 0; N < F.length && !F[N].includes(
227
- "DetermineComponentFrameRoot"
228
- ); )
229
- N++;
230
- for (; v < ae.length && !ae[v].includes(
231
- "DetermineComponentFrameRoot"
232
- ); )
233
- v++;
234
- if (N === F.length || v === ae.length)
235
- for (N = F.length - 1, v = ae.length - 1; 1 <= N && 0 <= v && F[N] !== ae[v]; )
236
- v--;
237
- for (; 1 <= N && 0 <= v; N--, v--)
238
- if (F[N] !== ae[v]) {
239
- if (N !== 1 || v !== 1)
240
- do
241
- if (N--, v--, 0 > v || F[N] !== ae[v]) {
242
- var fe = `
243
- ` + F[N].replace(
244
- " at new ",
245
- " at "
246
- );
247
- return t.displayName && fe.includes("<anonymous>") && (fe = fe.replace("<anonymous>", t.displayName)), typeof t == "function" && Se.set(t, fe), fe;
248
- }
249
- while (1 <= N && 0 <= v);
250
- break;
251
- }
252
- }
253
- } finally {
254
- xe = !1, _.H = C, a(), Error.prepareStackTrace = d;
255
- }
256
- return F = (F = t ? t.displayName || t.name : "") ? i(F) : "", typeof t == "function" && Se.set(t, F), F;
257
- }
258
- function u(t) {
259
- if (t == null) return "";
260
- if (typeof t == "function") {
261
- var f = t.prototype;
262
- return l(
263
- t,
264
- !(!f || !f.isReactComponent)
265
- );
266
- }
267
- if (typeof t == "string") return i(t);
268
- switch (t) {
269
- case z:
270
- return i("Suspense");
271
- case y:
272
- return i("SuspenseList");
273
- }
274
- if (typeof t == "object")
275
- switch (t.$$typeof) {
276
- case L:
277
- return t = l(t.render, !1), t;
278
- case B:
279
- return u(t.type);
280
- case W:
281
- f = t._payload, t = t._init;
282
- try {
283
- return u(t(f));
284
- } catch {
285
- }
286
- }
287
- return "";
288
- }
289
- function m() {
290
- var t = _.A;
291
- return t === null ? null : t.getOwner();
292
- }
293
- function k(t) {
294
- if (U.call(t, "key")) {
295
- var f = Object.getOwnPropertyDescriptor(t, "key").get;
296
- if (f && f.isReactWarning) return !1;
297
- }
298
- return t.key !== void 0;
299
- }
300
- function b(t, f) {
301
- function d() {
302
- Ie || (Ie = !0, console.error(
303
- "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
304
- f
305
- ));
306
- }
307
- d.isReactWarning = !0, Object.defineProperty(t, "key", {
308
- get: d,
309
- configurable: !0
310
- });
311
- }
312
- function O() {
313
- var t = e(this.type);
314
- return ze[t] || (ze[t] = !0, console.error(
315
- "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
316
- )), t = this.props.ref, t !== void 0 ? t : null;
317
- }
318
- function x(t, f, d, C, Y, N) {
319
- return d = N.ref, t = {
320
- $$typeof: R,
321
- type: t,
322
- key: f,
323
- props: N,
324
- _owner: Y
325
- }, (d !== void 0 ? d : null) !== null ? Object.defineProperty(t, "ref", {
326
- enumerable: !1,
327
- get: O
328
- }) : Object.defineProperty(t, "ref", { enumerable: !1, value: null }), t._store = {}, Object.defineProperty(t._store, "validated", {
329
- configurable: !1,
330
- enumerable: !1,
331
- writable: !0,
332
- value: 0
333
- }), Object.defineProperty(t, "_debugInfo", {
334
- configurable: !1,
335
- enumerable: !1,
336
- writable: !0,
337
- value: null
338
- }), Object.freeze && (Object.freeze(t.props), Object.freeze(t)), t;
339
- }
340
- function h(t, f, d, C, Y, N) {
341
- if (typeof t == "string" || typeof t == "function" || t === G || t === M || t === p || t === z || t === y || t === A || typeof t == "object" && t !== null && (t.$$typeof === W || t.$$typeof === B || t.$$typeof === E || t.$$typeof === D || t.$$typeof === L || t.$$typeof === Z || t.getModuleId !== void 0)) {
342
- var v = f.children;
343
- if (v !== void 0)
344
- if (C)
345
- if (q(v)) {
346
- for (C = 0; C < v.length; C++)
347
- j(v[C], t);
348
- Object.freeze && Object.freeze(v);
349
- } else
350
- console.error(
351
- "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
352
- );
353
- else j(v, t);
354
- } else
355
- v = "", (t === void 0 || typeof t == "object" && t !== null && Object.keys(t).length === 0) && (v += " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports."), t === null ? C = "null" : q(t) ? C = "array" : t !== void 0 && t.$$typeof === R ? (C = "<" + (e(t.type) || "Unknown") + " />", v = " Did you accidentally export a JSX literal instead of a component?") : C = typeof t, console.error(
356
- "React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",
357
- C,
358
- v
359
- );
360
- if (U.call(f, "key")) {
361
- v = e(t);
362
- var Q = Object.keys(f).filter(function(F) {
363
- return F !== "key";
364
- });
365
- C = 0 < Q.length ? "{key: someKey, " + Q.join(": ..., ") + ": ...}" : "{key: someKey}", Be[v + C] || (Q = 0 < Q.length ? "{" + Q.join(": ..., ") + ": ...}" : "{}", console.error(
366
- `A props object containing a "key" prop is being spread into JSX:
367
- let props = %s;
368
- <%s {...props} />
369
- React keys must be passed directly to JSX without using spread:
370
- let props = %s;
371
- <%s key={someKey} {...props} />`,
372
- C,
373
- v,
374
- Q,
375
- v
376
- ), Be[v + C] = !0);
377
- }
378
- if (v = null, d !== void 0 && (o(d), v = "" + d), k(f) && (o(f.key), v = "" + f.key), "key" in f) {
379
- d = {};
380
- for (var ce in f)
381
- ce !== "key" && (d[ce] = f[ce]);
382
- } else d = f;
383
- return v && b(
384
- d,
385
- typeof t == "function" ? t.displayName || t.name || "Unknown" : t
386
- ), x(t, v, N, Y, m(), d);
387
- }
388
- function j(t, f) {
389
- if (typeof t == "object" && t && t.$$typeof !== st) {
390
- if (q(t))
391
- for (var d = 0; d < t.length; d++) {
392
- var C = t[d];
393
- T(C) && g(C, f);
394
- }
395
- else if (T(t))
396
- t._store && (t._store.validated = 1);
397
- else if (t === null || typeof t != "object" ? d = null : (d = K && t[K] || t["@@iterator"], d = typeof d == "function" ? d : null), typeof d == "function" && d !== t.entries && (d = d.call(t), d !== t))
398
- for (; !(t = d.next()).done; )
399
- T(t.value) && g(t.value, f);
400
- }
401
- }
402
- function T(t) {
403
- return typeof t == "object" && t !== null && t.$$typeof === R;
404
- }
405
- function g(t, f) {
406
- if (t._store && !t._store.validated && t.key == null && (t._store.validated = 1, f = V(f), !Le[f])) {
407
- Le[f] = !0;
408
- var d = "";
409
- t && t._owner != null && t._owner !== m() && (d = null, typeof t._owner.tag == "number" ? d = e(t._owner.type) : typeof t._owner.name == "string" && (d = t._owner.name), d = " It was passed a child from " + d + ".");
410
- var C = _.getCurrentStack;
411
- _.getCurrentStack = function() {
412
- var Y = u(t.type);
413
- return C && (Y += C() || ""), Y;
414
- }, console.error(
415
- 'Each child in a list should have a unique "key" prop.%s%s See https://react.dev/link/warning-keys for more information.',
416
- f,
417
- d
418
- ), _.getCurrentStack = C;
419
- }
420
- }
421
- function V(t) {
422
- var f = "", d = m();
423
- return d && (d = e(d.type)) && (f = `
424
-
425
- Check the render method of \`` + d + "`."), f || (t = e(t)) && (f = `
426
-
427
- Check the top-level render call using <` + t + ">."), f;
428
- }
429
- var $ = at, R = Symbol.for("react.transitional.element"), I = Symbol.for("react.portal"), G = Symbol.for("react.fragment"), p = Symbol.for("react.strict_mode"), M = Symbol.for("react.profiler"), D = Symbol.for("react.consumer"), E = Symbol.for("react.context"), L = Symbol.for("react.forward_ref"), z = Symbol.for("react.suspense"), y = Symbol.for("react.suspense_list"), B = Symbol.for("react.memo"), W = Symbol.for("react.lazy"), A = Symbol.for("react.offscreen"), K = Symbol.iterator, J = Symbol.for("react.client.reference"), _ = $.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, U = Object.prototype.hasOwnProperty, P = Object.assign, Z = Symbol.for("react.client.reference"), q = Array.isArray, X = 0, Ae, $e, Ne, Ve, Ge, De, We;
430
- r.__reactDisabledLog = !0;
431
- var ye, He, xe = !1, Se = new (typeof WeakMap == "function" ? WeakMap : Map)(), st = Symbol.for("react.client.reference"), Ie, ze = {}, Be = {}, Le = {};
432
- be.Fragment = G, be.jsx = function(t, f, d, C, Y) {
433
- return h(t, f, d, !1, C, Y);
434
- }, be.jsxs = function(t, f, d, C, Y) {
435
- return h(t, f, d, !0, C, Y);
436
- };
437
- }()), be;
438
- }
439
- var Fe;
440
- function ut() {
441
- return Fe || (Fe = 1, process.env.NODE_ENV === "production" ? ge.exports = lt() : ge.exports = ct()), ge.exports;
442
- }
443
- var S = ut();
444
- function ft(e) {
445
- const n = e.trim().match(/^([+-]?[\d.]+)([a-zA-Z%]+)$/);
446
- if (!n) return null;
447
- const o = parseFloat(n[1]), r = n[2];
448
- return { value: o, unit: r };
449
- }
450
- function H(e, n) {
451
- return e === void 0 && n !== void 0 ? `${n}px` : e === "auto" || typeof e == "string" && /^(auto|100%|0|.*(fr|vh|vw|vmin|vmax|rem))$/.test(e) ? String(e) : typeof e == "number" ? `${e}px` : e ?? "";
452
- }
453
- const dt = {
454
- parentSize: 0,
455
- viewportWidth: typeof window < "u" ? window.innerWidth : 1920,
456
- viewportHeight: typeof window < "u" ? window.innerHeight : 1080,
457
- rootFontSize: 16,
458
- parentFontSize: 16
459
- }, Ce = {
460
- px: 1,
461
- in: 96,
462
- // 1in = 96px
463
- cm: 37.8,
464
- // 1cm = 37.8px
465
- mm: 3.78,
466
- // 1mm = 3.78px
467
- pt: 1.33,
468
- // 1pt = 1.33px
469
- pc: 16
470
- // 1pc = 16px
471
- }, Qe = ["em", "rem", "vh", "vw", "vmin", "vmax", "%"];
472
- function _e(e, n) {
473
- if (typeof e == "number") return e;
474
- if (typeof e != "string") return null;
475
- const o = ft(e);
476
- if (!o) return null;
477
- const { value: r, unit: s } = o;
478
- if (s in Ce)
479
- return r * Ce[s];
480
- if (s === "auto") return null;
481
- if (Qe.includes(s)) {
482
- const a = { ...dt, ...n };
483
- switch (s) {
484
- case "em":
485
- return r * a.parentFontSize;
486
- case "rem":
487
- return r * a.rootFontSize;
488
- case "vh":
489
- return r / 100 * a.viewportHeight;
490
- case "vw":
491
- return r / 100 * a.viewportWidth;
492
- case "vmin":
493
- return r / 100 * Math.min(a.viewportWidth, a.viewportHeight);
494
- case "vmax":
495
- return r / 100 * Math.max(a.viewportWidth, a.viewportHeight);
496
- case "%":
497
- return r / 100 * a.parentSize;
498
- default:
499
- return null;
500
- }
501
- }
502
- return null;
503
- }
504
- function yn(e, n, o) {
505
- const r = (o == null ? void 0 : o.round) ?? !0, s = e === void 0 ? 0 : typeof e == "number" ? e : _e(e) ?? 0;
506
- return `${(r ? Math.round(s) : s) % n}px`;
507
- }
508
- function bt(e, n, o) {
509
- return Math.min(Math.max(e, n), o);
510
- }
511
- function xn(e, n = 0) {
512
- if (n >= 0)
513
- return Number((Math.round(e * 10 ** n) / 10 ** n).toFixed(n));
514
- {
515
- const o = 10 ** Math.abs(n);
516
- return Math.round(e / o) * o;
517
- }
518
- }
519
- function mt(e) {
520
- const { height: n, top: o, bottom: r, base: s } = e, a = (n ?? 0) - (o + r);
521
- return Math.max(1, Math.floor(a / s));
522
- }
523
- function Re(e, n = {}) {
524
- const {
525
- base: o = 8,
526
- round: r = !0,
527
- clamp: s,
528
- suppressWarnings: a = !1
529
- } = n;
530
- if (e === "auto") return o;
531
- let i = null;
532
- if (typeof e == "number")
533
- i = e;
534
- else if (typeof e == "string") {
535
- const m = _e(e);
536
- m === null ? (a || console.error(
537
- `Failed to convert "${e}" to pixels. Falling back to base ${o}.`
538
- ), i = o) : i = m;
539
- }
540
- i === null && (i = o);
541
- const l = r ? Math.round(i / o) * o : i, u = s !== void 0 ? bt(
542
- l,
543
- s.min ?? -1 / 0,
544
- s.max ?? 1 / 0
545
- ) : l;
546
- return !a && u !== i && console.warn(`Normalized ${i} to ${u} to match base ${o}px.`), u;
547
- }
548
- function et(e, n, o) {
549
- if (!e || e[0] === void 0 && e[1] === void 0)
550
- return n;
551
- const r = e[0] !== void 0 ? Re(e[0], o) : n[0], s = e[1] !== void 0 ? Re(e[1], o) : n[1];
552
- return [r, s];
553
- }
554
- function ie(e) {
555
- if ("padding" in e && e.padding != null)
556
- return gt(e.padding);
557
- const n = "block" in e && e.block != null ? ht(e.block) : { top: 0, bottom: 0 }, o = "inline" in e && e.inline != null ? kt(e.inline) : { left: 0, right: 0 };
558
- return {
559
- top: n.top,
560
- right: o.right,
561
- bottom: n.bottom,
562
- left: o.left
563
- };
564
- }
565
- function gt(e) {
566
- if (typeof e == "number")
567
- return { top: e, right: e, bottom: e, left: e };
568
- if (Array.isArray(e)) {
569
- if (e.length === 2) {
570
- const [n, o] = e;
571
- return { top: n, right: o, bottom: n, left: o };
572
- }
573
- if (e.length >= 4) {
574
- const [n, o, r, s] = e;
575
- return {
576
- top: n ?? 0,
577
- right: o ?? 0,
578
- bottom: r ?? 0,
579
- left: s ?? 0
580
- };
581
- }
582
- }
583
- if (typeof e == "object" && !Array.isArray(e)) {
584
- const n = e.top ?? 0, o = e.bottom ?? 0, r = e.left ?? 0, s = e.right ?? 0;
585
- return { top: n, right: s, bottom: o, left: r };
586
- }
587
- return { top: 0, right: 0, bottom: 0, left: 0 };
588
- }
589
- function ht(e) {
590
- if (typeof e == "number")
591
- return { top: e, bottom: e };
592
- if (Array.isArray(e)) {
593
- const [n, o] = e;
594
- return {
595
- top: n ?? 0,
596
- bottom: o ?? 0
597
- };
598
- }
599
- return typeof e == "object" ? {
600
- top: e.start ?? 0,
601
- bottom: e.end ?? 0
602
- } : { top: 0, bottom: 0 };
603
- }
604
- function kt(e) {
605
- if (typeof e == "number")
606
- return { left: e, right: e };
607
- if (Array.isArray(e)) {
608
- const [n, o] = e;
609
- return {
610
- left: n ?? 0,
611
- right: o ?? 0
612
- };
613
- }
614
- return typeof e == "object" ? {
615
- left: e.start ?? 0,
616
- right: e.end ?? 0
617
- } : { left: 0, right: 0 };
618
- }
619
- function vt(e, n, o, r) {
620
- const s = ie({ padding: o });
621
- if (r === "none")
622
- return s;
623
- if (r === "height") {
624
- const a = e % n;
625
- a !== 0 && (s.bottom += n - a);
626
- }
627
- if (r === "clamp") {
628
- s.top = s.top % n;
629
- const a = e % n;
630
- a !== 0 && (s.bottom += n - a), s.bottom = s.bottom % n;
631
- }
632
- return s;
633
- }
634
- const pt = (e, n, o) => {
635
- const r = {};
636
- return e !== void 0 ? (r.gridColumn = `span ${e}`, r.gridRow = `span ${e}`) : (n !== void 0 && (r.gridColumn = `span ${n}`), o !== void 0 && (r.gridRow = `span ${o}`)), r;
637
- }, ne = (...e) => e.filter(Boolean).join(" ").trim(), oe = (...e) => Object.assign({}, ...e.filter((n) => n !== void 0));
638
- function yt(e, n) {
639
- if (e)
640
- if (typeof e == "function")
641
- e(n);
642
- else
643
- try {
644
- Object.assign(e, { current: n });
645
- } catch (o) {
646
- console.error("Error assigning ref:", o);
647
- }
648
- }
649
- function tt(...e) {
650
- return (n) => {
651
- e.forEach((o) => {
652
- yt(o, n);
653
- });
654
- };
655
- }
656
- function w(e, n, o) {
657
- var l, u, m;
658
- const r = typeof e == "string" ? e : e.key, s = typeof e == "string" ? n : e.value, a = typeof e == "string" ? o : e.defaultStyles, i = typeof e == "object" ? e.skipDimensions : void 0;
659
- if (i) {
660
- if ((l = i.fitContent) != null && l.includes(r) && s === "fit-content")
661
- return {};
662
- if ((u = i.auto) != null && u.includes(r) && s === "auto")
663
- return {};
664
- if ((m = i.fullSize) != null && m.includes(r) && (s === "100%" || s === "100vh" || s === "100vw"))
665
- return {};
666
- }
667
- return s !== a[r] ? { [r]: s } : {};
668
- }
669
- const Sn = (e, n) => {
670
- let o = null;
671
- const r = () => {
672
- o && (clearTimeout(o), o = null);
673
- };
674
- return [(...a) => {
675
- r(), o = setTimeout(() => e(...a), n);
676
- }, r];
677
- }, nt = (e) => {
678
- let n = null, o = null;
679
- return (...s) => {
680
- o = s, n !== null && cancelAnimationFrame(n), n = requestAnimationFrame(() => {
681
- e(...o), n = null, o = null;
682
- });
683
- };
684
- }, ot = typeof window > "u", xt = {
685
- width: 1024,
686
- height: 768
687
- };
688
- function wn(e, n) {
689
- if (ot)
690
- return n;
691
- try {
692
- return e();
693
- } catch {
694
- return n;
695
- }
696
- }
697
- function re(e, n, o) {
698
- return !e || ot ? n : o;
699
- }
700
- function ve(e) {
701
- const [n, o] = c.useState({ width: 0, height: 0 }), r = c.useCallback(() => {
702
- if (e.current)
703
- try {
704
- const a = e.current.getBoundingClientRect(), i = {
705
- width: a ? Math.round(a.width) : 0,
706
- height: a ? Math.round(a.height) : 0
707
- };
708
- o(
709
- (l) => l.width === i.width && l.height === i.height ? l : i
710
- );
711
- } catch {
712
- o({ width: 0, height: 0 });
713
- }
714
- }, [e]), s = c.useMemo(() => nt(r), [r]);
715
- return c.useLayoutEffect(() => {
716
- r();
717
- }, [r]), c.useLayoutEffect(() => {
718
- if (!e.current) return;
719
- const a = new ResizeObserver(() => {
720
- s();
721
- });
722
- return a.observe(e.current), () => {
723
- a.disconnect();
724
- };
725
- }, [e, s]), { ...n, refresh: s };
726
- }
727
- function St({
728
- totalLines: e,
729
- lineHeight: n,
730
- containerRef: o,
731
- buffer: r = 0
732
- }) {
733
- const s = ke(
734
- () => typeof r == "number" ? r : parseInt(r, 10) || 0,
735
- [r]
736
- ), a = Ee(() => {
737
- const k = o.current;
738
- if (!k) return { start: 0, end: e };
739
- if (k.closest(".block"))
740
- return { start: 0, end: e };
741
- const O = k.getBoundingClientRect().top + window.scrollY, x = Math.max(0, window.scrollY - O - s), h = x + window.innerHeight + s * 2, j = Math.max(0, Math.floor(x / n)), T = Math.min(e, Math.ceil(h / n));
742
- return { start: j, end: T };
743
- }, [e, n, o, s]), [i, l] = it(a);
744
- wt(["scroll", "resize"], () => {
745
- m();
746
- });
747
- const u = Ee(() => {
748
- l((k) => {
749
- const b = a();
750
- return k.start !== b.start || k.end !== b.end ? b : k;
751
- });
752
- }, [a]), m = ke(() => nt(u), [u]);
753
- return Ke(() => {
754
- const k = o.current;
755
- if (!k) return;
756
- const b = new IntersectionObserver(m, { threshold: 0 });
757
- return b.observe(k), m(), () => {
758
- b.disconnect();
759
- };
760
- }, [o, a, m]), i;
761
- }
762
- function wt(e, n) {
763
- const o = Ee(n, [n]);
764
- Ke(() => {
765
- const r = () => o();
766
- return e.forEach((s) => window.addEventListener(s, r)), () => e.forEach((s) => window.removeEventListener(s, r));
767
- }, [e, o]);
768
- }
769
- function pe(e, {
770
- base: n = 8,
771
- snapping: o = "none",
772
- spacing: r = {},
773
- warnOnMisalignment: s = !1
774
- } = {}) {
775
- if (n < 1)
776
- throw new Error("Base must be >= 1 for baseline alignment.");
777
- const { height: a } = ve(e), i = c.useRef(!1), l = c.useRef(!1);
778
- return c.useMemo(() => {
779
- const u = ie({ padding: r }), m = a % n === 0;
780
- if (!m && s && process.env.NODE_ENV === "development" && (l.current || (console.warn(
781
- `[useBaseline] Element height (${a}px) is not aligned with base (${n}px).`
782
- ), l.current = !0)), o === "none")
783
- return { padding: u, isAligned: m, height: a };
784
- if (i.current)
785
- return { padding: u, isAligned: m, height: a };
786
- const k = vt(a, n, u, o);
787
- return i.current = !0, { padding: k, isAligned: m, height: a };
788
- }, [n, o, r, s, a]);
789
- }
790
- function Et(e, n) {
791
- const { width: o } = ve(e), r = c.useRef(!1);
792
- return c.useMemo(() => {
793
- const s = n.variant ?? "line", a = n.base ?? 8, i = Re(n.gap ?? 0, { base: a });
794
- if (!o)
795
- return {
796
- template: "none",
797
- columnsCount: 0,
798
- calculatedGap: 0,
799
- isValid: !1
800
- };
801
- try {
802
- switch (s) {
803
- case "line": {
804
- const l = Math.max(1, Math.floor(o / (i + 1)) + 1);
805
- return {
806
- template: `repeat(${l}, 1px)`,
807
- columnsCount: l,
808
- calculatedGap: i,
809
- isValid: !0
810
- };
811
- }
812
- case "pattern": {
813
- if (!bn(n.columns))
814
- throw new Error('Invalid "pattern" columns array');
815
- const l = n.columns.map((u) => typeof u == "number" ? `${u}px` : u);
816
- return l.some((u) => u === "0" || u === "0px") ? {
817
- template: "none",
818
- columnsCount: 0,
819
- calculatedGap: 0,
820
- isValid: !1
821
- } : {
822
- template: l.join(" "),
823
- columnsCount: l.length,
824
- calculatedGap: i,
825
- isValid: !0
826
- };
827
- }
828
- case "fixed": {
829
- const l = typeof n.columns == "number" ? n.columns : 0;
830
- if (l < 1)
831
- throw new Error(`Invalid columns count: ${l}`);
832
- const u = n.columnWidth ? H(n.columnWidth) : "1fr";
833
- return {
834
- template: `repeat(${l}, ${u})`,
835
- columnsCount: l,
836
- calculatedGap: i,
837
- isValid: !0
838
- };
839
- }
840
- case "auto": {
841
- const l = n.columnWidth ?? "auto";
842
- if (l === "auto")
843
- return {
844
- template: "repeat(auto-fit, minmax(0, 1fr))",
845
- columnsCount: 1,
846
- calculatedGap: i,
847
- isValid: !0
848
- };
849
- const u = typeof l == "number" ? `${l}px` : l.toString(), m = _e(u) ?? 0, k = m > 0 ? Math.max(1, Math.floor((o + i) / (m + i))) : 1;
850
- return {
851
- template: `repeat(auto-fit, minmax(${u}, 1fr))`,
852
- columnsCount: k,
853
- calculatedGap: i,
854
- isValid: !0
855
- };
856
- }
857
- default: {
858
- r.current || (console.warn(
859
- `[useGuide] Unknown variant "${s}". Falling back to "line".`
860
- ), r.current = !0);
861
- const l = Math.max(1, Math.floor(o / (i + 1)) + 1);
862
- return {
863
- template: `repeat(${l}, 1px)`,
864
- columnsCount: l,
865
- calculatedGap: i,
866
- isValid: !0
867
- };
868
- }
869
- }
870
- } catch (l) {
871
- return console.warn("Error in useGuide:", l), {
872
- template: "none",
873
- columnsCount: 0,
874
- calculatedGap: 0,
875
- isValid: !1
876
- };
877
- }
878
- }, [n, o]);
879
- }
880
- function se(e) {
881
- const n = rt();
882
- return ke(() => Object.assign(
883
- { base: n.base },
884
- n[e]
885
- ), [n, e]);
886
- }
887
- function le(e, n) {
888
- return ke(() => {
889
- const o = e ?? n;
890
- return {
891
- isShown: o === "visible",
892
- isHidden: o === "hidden",
893
- isNone: o === "none",
894
- debugging: o
895
- };
896
- }, [e, n]);
897
- }
1
+ import { jsx as y, Fragment as K, jsxs as Z } from "react/jsx-runtime";
2
+ import * as l from "react";
3
+ import { useState as mt, useEffect as St, useMemo as Q, useCallback as ot, useLayoutEffect as ht } from "react";
898
4
  const Ct = {
899
5
  /** Color for single-line guides */
900
6
  line: "var(--bk-guide-color-line-theme)",
@@ -904,47 +10,47 @@ const Ct = {
904
10
  auto: "var(--bk-guide-color-auto-theme)",
905
11
  /** Color for fixed-column guides */
906
12
  fixed: "var(--bk-guide-color-fixed-theme)"
907
- }, Rt = {
13
+ }, Mt = {
908
14
  /** Color for line variant */
909
15
  line: "var(--bk-baseline-color-line-theme)",
910
16
  /** Color for flat/block variant */
911
17
  flat: "var(--bk-baseline-color-flat-theme)"
912
- }, _t = {
18
+ }, $t = {
913
19
  /** Color for line-style spacers */
914
20
  line: "var(--bk-spacer-color-line-theme)",
915
21
  /** Color for flat/block spacers */
916
22
  flat: "var(--bk-spacer-color-flat-theme)",
917
23
  /** Color for measurement indicators */
918
24
  text: "var(--bk-spacer-color-text-theme)"
919
- }, jt = {
25
+ }, Rt = {
920
26
  /** Border color for debug outline */
921
27
  line: "var(--bk-box-color-line-theme)",
922
28
  /** Background color for debug mode */
923
29
  flat: "var(--bk-box-color-flat-theme)",
924
30
  /** Color for measurement indicators */
925
31
  text: "var(--bk-box-color-text-theme)"
926
- }, Mt = {
32
+ }, Et = {
927
33
  /** Border color for debug outline */
928
34
  line: "var(--bk-stack-color-line-theme)",
929
35
  /** Background color for debug mode */
930
36
  flat: "var(--bk-stack-color-flat-theme)",
931
37
  /** Color for measurement indicators */
932
38
  text: "var(--bk-stack-color-text-theme)"
933
- }, Ot = {
39
+ }, Vt = {
934
40
  /** Border color for debug outline */
935
41
  line: "var(--bk-layout-color-line-theme)",
936
42
  /** Background color for debug mode */
937
43
  flat: "var(--bk-layout-color-flat-theme)",
938
44
  /** Color for measurement indicators */
939
45
  text: "var(--bk-layout-color-text-theme)"
940
- }, Tt = "var(--bk-padder-color-theme)", At = {
46
+ }, Gt = "var(--bk-padder-color-theme)", Ot = {
941
47
  /** Base unit for spacing calculations (in pixels) */
942
48
  base: 8,
943
49
  /** Baseline grid configuration */
944
50
  baseline: {
945
51
  variant: "line",
946
52
  debugging: "hidden",
947
- colors: Rt
53
+ colors: Mt
948
54
  },
949
55
  /** Guide overlay configuration */
950
56
  guide: {
@@ -956,1202 +62,1702 @@ const Ct = {
956
62
  spacer: {
957
63
  variant: "line",
958
64
  debugging: "hidden",
959
- colors: _t
65
+ colors: $t
960
66
  },
961
67
  /** Box component configuration */
962
68
  box: {
963
69
  debugging: "hidden",
964
- colors: jt
70
+ colors: Rt
965
71
  },
966
72
  /** Stack/Flex component configuration */
967
73
  stack: {
968
74
  debugging: "hidden",
969
- colors: Mt
75
+ colors: Et
970
76
  },
971
77
  /** Layout component configuration */
972
78
  layout: {
973
79
  debugging: "hidden",
974
- colors: Ot
80
+ colors: Vt
975
81
  },
976
82
  /** Padder component configuration */
977
83
  padder: {
978
84
  debugging: "hidden",
979
- color: Tt
85
+ color: Gt
980
86
  }
981
- }, je = c.createContext(At);
982
- je.displayName = "ConfigContext";
983
- const rt = () => c.use(je), En = (e) => {
87
+ }, rt = l.createContext(Ot);
88
+ rt.displayName = "ConfigContext";
89
+ const gt = () => l.use(rt), Dt = (t) => {
984
90
  const {
91
+ parentConfig: e,
985
92
  base: n,
986
- baseline: o,
987
- guide: r,
988
- stack: s,
989
- spacer: a,
990
- layout: i,
991
- box: l,
992
- padder: u
93
+ baseline: s,
94
+ guide: o,
95
+ spacer: r,
96
+ box: i,
97
+ stack: a,
98
+ layout: c,
99
+ padder: d
100
+ } = t;
101
+ return {
102
+ base: n ?? e.base,
103
+ baseline: { ...e.baseline, ...s },
104
+ guide: { ...e.guide, ...o },
105
+ spacer: { ...e.spacer, ...r },
106
+ box: { ...e.box, ...i },
107
+ stack: { ...e.stack, ...a },
108
+ layout: { ...e.layout, ...c },
109
+ padder: { ...e.padder, ...d }
110
+ };
111
+ };
112
+ function it({
113
+ children: t,
114
+ base: e,
115
+ stack: n,
116
+ baseline: s,
117
+ guide: o,
118
+ layout: r,
119
+ spacer: i,
120
+ box: a,
121
+ padder: c
122
+ }) {
123
+ const d = gt(), f = l.useMemo(() => Dt({
124
+ parentConfig: d,
125
+ base: e,
126
+ baseline: s,
127
+ guide: o,
128
+ spacer: i,
129
+ box: a,
130
+ stack: n,
131
+ layout: r,
132
+ padder: c
133
+ }), [d, e, s, o, i, a, n, r, c]);
134
+ return /* @__PURE__ */ y(rt, { value: f, children: t });
135
+ }
136
+ function _t(t) {
137
+ const e = t.trim().match(/^([+-]?[\d.]+)([a-zA-Z%]+)$/);
138
+ if (!e) return null;
139
+ const n = parseFloat(e[1]), s = e[2];
140
+ return { value: n, unit: s };
141
+ }
142
+ function O(t, e) {
143
+ return t === void 0 && e !== void 0 ? `${e}px` : t === "auto" || typeof t == "string" && /^(auto|100%|0|.*(fr|vh|vw|vmin|vmax|rem))$/.test(t) ? String(t) : typeof t == "number" ? `${t}px` : t ?? "";
144
+ }
145
+ const At = {
146
+ parentSize: 0,
147
+ viewportWidth: typeof window < "u" ? window.innerWidth : 1920,
148
+ viewportHeight: typeof window < "u" ? window.innerHeight : 1080,
149
+ rootFontSize: 16,
150
+ parentFontSize: 16
151
+ }, lt = {
152
+ px: 1,
153
+ in: 96,
154
+ // 1in = 96px
155
+ cm: 37.8,
156
+ // 1cm = 37.8px
157
+ mm: 3.78,
158
+ // 1mm = 3.78px
159
+ pt: 1.33,
160
+ // 1pt = 1.33px
161
+ pc: 16
162
+ // 1pc = 16px
163
+ }, It = [
164
+ "em",
165
+ "rem",
166
+ "vh",
167
+ "vw",
168
+ "vmin",
169
+ "vmax",
170
+ "%"
171
+ ];
172
+ function pt(t, e) {
173
+ if (typeof t == "number") return t;
174
+ if (typeof t != "string") return null;
175
+ const n = _t(t);
176
+ if (!n) return null;
177
+ const { value: s, unit: o } = n;
178
+ if (o in lt)
179
+ return s * lt[o];
180
+ if (o === "auto") return null;
181
+ if (It.includes(o)) {
182
+ const r = { ...At, ...e };
183
+ switch (o) {
184
+ case "em":
185
+ return s * r.parentFontSize;
186
+ case "rem":
187
+ return s * r.rootFontSize;
188
+ case "vh":
189
+ return s / 100 * r.viewportHeight;
190
+ case "vw":
191
+ return s / 100 * r.viewportWidth;
192
+ case "vmin":
193
+ return s / 100 * Math.min(r.viewportWidth, r.viewportHeight);
194
+ case "vmax":
195
+ return s / 100 * Math.max(r.viewportWidth, r.viewportHeight);
196
+ case "%":
197
+ return s / 100 * r.parentSize;
198
+ default:
199
+ return null;
200
+ }
201
+ }
202
+ return null;
203
+ }
204
+ function Lt(t, e, n) {
205
+ return Math.min(Math.max(t, e), n);
206
+ }
207
+ function Nt(t) {
208
+ const { height: e, top: n, bottom: s, base: o } = t, r = (e ?? 0) - (n + s);
209
+ return Math.max(1, Math.floor(r / o));
210
+ }
211
+ function st(t, e = {}) {
212
+ const {
213
+ base: n = 8,
214
+ round: s = !0,
215
+ clamp: o,
216
+ suppressWarnings: r = !1
993
217
  } = e;
218
+ if (t === "auto") return n;
219
+ let i = null;
220
+ if (typeof t == "number")
221
+ i = t;
222
+ else if (typeof t == "string") {
223
+ const d = pt(t);
224
+ d === null ? (r || console.error(
225
+ `Failed to convert "${t}" to pixels. Falling back to base ${n}.`
226
+ ), i = n) : i = d;
227
+ }
228
+ i === null && (i = n);
229
+ const a = s ? Math.round(i / n) * n : i, c = o !== void 0 ? Lt(
230
+ a,
231
+ o.min ?? -1 / 0,
232
+ o.max ?? 1 / 0
233
+ ) : a;
234
+ return !r && c !== i && console.warn(`Normalized ${i} to ${c} to match base ${n}px.`), c;
235
+ }
236
+ function kt(t, e, n) {
237
+ if (!t || t[0] === void 0 && t[1] === void 0)
238
+ return e;
239
+ const s = t[0] !== void 0 ? st(t[0], n) : e[0], o = t[1] !== void 0 ? st(t[1], n) : e[1];
240
+ return [s, o];
241
+ }
242
+ function Y(t) {
243
+ if ("padding" in t && t.padding != null)
244
+ return Bt(t.padding);
245
+ const e = "block" in t && t.block != null ? Wt(t.block) : { top: 0, bottom: 0 }, n = "inline" in t && t.inline != null ? zt(t.inline) : { left: 0, right: 0 };
994
246
  return {
995
- "--bkb": `${n}px`,
996
- // Baseline Colors
997
- "--bkbcl": o.colors.line,
998
- "--bkbcf": o.colors.flat,
999
- // Guide Colors
1000
- "--bkgcl": r.colors.line,
1001
- "--bkgcp": r.colors.pattern,
1002
- "--bkgca": r.colors.auto,
1003
- "--bkgcf": r.colors.fixed,
1004
- // Spacer Colors
1005
- "--bkscl": a.colors.line,
1006
- "--bkscf": a.colors.flat,
1007
- "--bksci": a.colors.text,
1008
- // Box Colors
1009
- "--bkxcl": l.colors.line,
1010
- "--bkxcf": l.colors.flat,
1011
- "--bkxci": l.colors.text,
1012
- // Flex Colors
1013
- "--bkkcl": s.colors.line,
1014
- "--bkkcf": s.colors.flat,
1015
- "--bkkci": s.colors.text,
1016
- // Layout Colors
1017
- "--bklcl": i.colors.line,
1018
- "--bklcf": i.colors.flat,
1019
- "--bklci": i.colors.text,
1020
- // Padder Color
1021
- "--bkpc": u.color
247
+ top: e.top,
248
+ right: n.right,
249
+ bottom: e.bottom,
250
+ left: n.left
251
+ };
252
+ }
253
+ function Bt(t) {
254
+ if (typeof t == "number")
255
+ return { top: t, right: t, bottom: t, left: t };
256
+ if (Array.isArray(t)) {
257
+ if (t.length === 2) {
258
+ const [e, n] = t;
259
+ return { top: e, right: n, bottom: e, left: n };
260
+ }
261
+ if (t.length >= 4) {
262
+ const [e, n, s, o] = t;
263
+ return {
264
+ top: e ?? 0,
265
+ right: n ?? 0,
266
+ bottom: s ?? 0,
267
+ left: o ?? 0
268
+ };
269
+ }
270
+ }
271
+ if (typeof t == "object" && !Array.isArray(t)) {
272
+ const e = t.top ?? 0, n = t.bottom ?? 0, s = t.left ?? 0, o = t.right ?? 0;
273
+ return { top: e, right: o, bottom: n, left: s };
274
+ }
275
+ return { top: 0, right: 0, bottom: 0, left: 0 };
276
+ }
277
+ function Wt(t) {
278
+ if (typeof t == "number")
279
+ return { top: t, bottom: t };
280
+ if (Array.isArray(t)) {
281
+ const [e, n] = t;
282
+ return {
283
+ top: e ?? 0,
284
+ bottom: n ?? 0
285
+ };
286
+ }
287
+ return typeof t == "object" ? {
288
+ top: t.start ?? 0,
289
+ bottom: t.end ?? 0
290
+ } : { top: 0, bottom: 0 };
291
+ }
292
+ function zt(t) {
293
+ if (typeof t == "number")
294
+ return { left: t, right: t };
295
+ if (Array.isArray(t)) {
296
+ const [e, n] = t;
297
+ return {
298
+ left: e ?? 0,
299
+ right: n ?? 0
300
+ };
301
+ }
302
+ return typeof t == "object" ? {
303
+ left: t.start ?? 0,
304
+ right: t.end ?? 0
305
+ } : { left: 0, right: 0 };
306
+ }
307
+ function Ht(t, e, n, s) {
308
+ const o = Y({ padding: n });
309
+ if (s === "none")
310
+ return o;
311
+ if (s === "height") {
312
+ const r = t % e;
313
+ r !== 0 && (o.bottom += e - r);
314
+ }
315
+ if (s === "clamp") {
316
+ o.top = o.top % e;
317
+ const r = t % e;
318
+ r !== 0 && (o.bottom += e - r), o.bottom = o.bottom % e;
319
+ }
320
+ return o;
321
+ }
322
+ const Tt = (t, e, n) => {
323
+ const s = {};
324
+ return t !== void 0 ? (s.gridColumn = `span ${t}`, s.gridRow = `span ${t}`) : (e !== void 0 && (s.gridColumn = `span ${e}`), n !== void 0 && (s.gridRow = `span ${n}`)), s;
325
+ }, z = (...t) => t.filter(Boolean).join(" ").trim(), q = (...t) => Object.assign(
326
+ {},
327
+ ...t.filter((e) => e !== void 0)
328
+ );
329
+ function Ft(t, e) {
330
+ if (t)
331
+ if (typeof t == "function")
332
+ t(e);
333
+ else
334
+ try {
335
+ Object.assign(t, { current: e });
336
+ } catch (n) {
337
+ console.error("Error assigning ref:", n);
338
+ }
339
+ }
340
+ function yt(...t) {
341
+ return (e) => {
342
+ t.forEach((n) => {
343
+ Ft(n, e);
344
+ });
1022
345
  };
1023
- }, $t = (e) => {
1024
- const {
1025
- parentConfig: n,
1026
- base: o,
1027
- baseline: r,
1028
- guide: s,
1029
- spacer: a,
1030
- box: i,
1031
- stack: l,
1032
- layout: u,
1033
- padder: m
1034
- } = e;
1035
- return {
1036
- base: o ?? n.base,
1037
- baseline: { ...n.baseline, ...r },
1038
- guide: { ...n.guide, ...s },
1039
- spacer: { ...n.spacer, ...a },
1040
- box: { ...n.box, ...i },
1041
- stack: { ...n.stack, ...l },
1042
- layout: { ...n.layout, ...u },
1043
- padder: { ...n.padder, ...m }
346
+ }
347
+ function k(t, e, n) {
348
+ var a, c, d;
349
+ const s = typeof t == "string" ? t : t.key, o = typeof t == "string" ? e : t.value, r = typeof t == "string" ? n : t.defaultStyles, i = typeof t == "object" ? t.skipDimensions : void 0;
350
+ if (i) {
351
+ if ((a = i.fitContent) != null && a.includes(s) && o === "fit-content")
352
+ return {};
353
+ if ((c = i.auto) != null && c.includes(s) && o === "auto")
354
+ return {};
355
+ if ((d = i.fullSize) != null && d.includes(s) && (o === "100%" || o === "100vh" || o === "100vw"))
356
+ return {};
357
+ }
358
+ return o !== r[s] ? { [s]: o } : {};
359
+ }
360
+ const vt = (t) => {
361
+ let e = null, n = null;
362
+ return (...o) => {
363
+ n = o, e !== null && cancelAnimationFrame(e), e = requestAnimationFrame(() => {
364
+ t(...n), e = null, n = null;
365
+ });
1044
366
  };
1045
367
  };
1046
- function Me({
1047
- children: e,
1048
- base: n,
1049
- stack: o,
1050
- baseline: r,
1051
- guide: s,
1052
- layout: a,
1053
- spacer: i,
1054
- box: l,
1055
- padder: u
368
+ function jt() {
369
+ const [t, e] = mt(!1);
370
+ return St(() => {
371
+ e(!0);
372
+ }, []), t;
373
+ }
374
+ const xt = typeof window > "u";
375
+ function Be(t, e) {
376
+ if (xt)
377
+ return e;
378
+ try {
379
+ return t();
380
+ } catch {
381
+ return e;
382
+ }
383
+ }
384
+ function J(t, e, n) {
385
+ return !t || xt ? e : n;
386
+ }
387
+ function wt({ children: t, fallback: e = null }) {
388
+ return jt() ? /* @__PURE__ */ y(K, { children: t }) : /* @__PURE__ */ y(K, { children: e });
389
+ }
390
+ function P(t) {
391
+ const [e, n] = l.useState({ width: 0, height: 0 }), s = l.useCallback(() => {
392
+ if (t.current)
393
+ try {
394
+ const r = t.current.getBoundingClientRect(), i = {
395
+ width: r ? Math.round(r.width) : 0,
396
+ height: r ? Math.round(r.height) : 0
397
+ };
398
+ n(
399
+ (a) => a.width === i.width && a.height === i.height ? a : i
400
+ );
401
+ } catch {
402
+ n({ width: 0, height: 0 });
403
+ }
404
+ }, [t]), o = l.useMemo(() => vt(s), [s]);
405
+ return l.useLayoutEffect(() => {
406
+ typeof window > "u" || s();
407
+ }, [s]), l.useLayoutEffect(() => {
408
+ if (typeof window > "u" || !t.current) return;
409
+ const r = new ResizeObserver(() => {
410
+ o();
411
+ });
412
+ return r.observe(t.current), () => {
413
+ r.disconnect();
414
+ };
415
+ }, [t, o]), { ...e, refresh: o };
416
+ }
417
+ function Ut({
418
+ totalLines: t,
419
+ lineHeight: e,
420
+ containerRef: n,
421
+ buffer: s = 0
1056
422
  }) {
1057
- const m = rt(), k = c.useMemo(() => $t({
1058
- parentConfig: m,
1059
- base: n,
1060
- baseline: r,
1061
- guide: s,
1062
- spacer: i,
1063
- box: l,
1064
- stack: o,
1065
- layout: a,
1066
- padder: u
1067
- }), [
1068
- m,
1069
- n,
1070
- r,
1071
- s,
1072
- i,
1073
- l,
1074
- o,
1075
- a,
1076
- u
1077
- ]);
1078
- return /* @__PURE__ */ S.jsx(je, { value: k, children: e });
423
+ const o = Q(
424
+ () => typeof s == "number" ? s : parseInt(s, 10) || 0,
425
+ [s]
426
+ ), r = ot(() => {
427
+ const f = n.current;
428
+ if (!f) return { start: 0, end: t };
429
+ if (f.closest(".block"))
430
+ return { start: 0, end: t };
431
+ const M = f.getBoundingClientRect().top + window.scrollY, v = Math.max(0, window.scrollY - M - o), b = v + window.innerHeight + o * 2, w = Math.max(0, Math.floor(v / e)), g = Math.min(t, Math.ceil(b / e));
432
+ return { start: w, end: g };
433
+ }, [t, e, n, o]), [i, a] = mt(r);
434
+ qt(["scroll", "resize"], () => {
435
+ d();
436
+ });
437
+ const c = ot(() => {
438
+ a((f) => {
439
+ const u = r();
440
+ return f.start !== u.start || f.end !== u.end ? u : f;
441
+ });
442
+ }, [r]), d = Q(
443
+ () => vt(c),
444
+ [c]
445
+ );
446
+ return ht(() => {
447
+ const f = n.current;
448
+ if (!f) return;
449
+ const u = new IntersectionObserver(d, {
450
+ threshold: 0
451
+ });
452
+ return u.observe(f), d(), () => {
453
+ u.disconnect();
454
+ };
455
+ }, [n, r, d]), i;
456
+ }
457
+ function qt(t, e) {
458
+ const n = ot(e, [e]);
459
+ ht(() => {
460
+ const s = () => n();
461
+ return t.forEach((o) => window.addEventListener(o, s)), () => t.forEach((o) => window.removeEventListener(o, s));
462
+ }, [t, n]);
463
+ }
464
+ function tt(t, {
465
+ base: e = 8,
466
+ snapping: n = "none",
467
+ spacing: s = {},
468
+ warnOnMisalignment: o = !1
469
+ } = {}) {
470
+ if (e < 1)
471
+ throw new Error("Base must be >= 1 for baseline alignment.");
472
+ const { height: r } = P(t), i = l.useRef(!1), a = l.useRef(!1);
473
+ return l.useMemo(() => {
474
+ const c = Y({ padding: s }), d = r % e === 0;
475
+ if (!d && o && process.env.NODE_ENV === "development" && (a.current || (console.warn(
476
+ `[useBaseline] Element height (${r}px) is not aligned with base (${e}px).`
477
+ ), a.current = !0)), n === "none")
478
+ return { padding: c, isAligned: d, height: r };
479
+ if (i.current)
480
+ return { padding: c, isAligned: d, height: r };
481
+ const f = Ht(
482
+ r,
483
+ e,
484
+ c,
485
+ n
486
+ );
487
+ return i.current = !0, { padding: f, isAligned: d, height: r };
488
+ }, [e, n, s, o, r]);
1079
489
  }
1080
- const Nt = "spr_zbcF6", Vt = "line_qHW69", Gt = "flat_gqixr", Ue = {
1081
- spr: Nt,
1082
- line: Vt,
1083
- flat: Gt
1084
- }, Dt = (e, n, o, r) => ({
490
+ const Xt = "spr_zbcF6", Yt = "line_qHW69", Zt = "flat_gqixr", ct = {
491
+ spr: Xt,
492
+ line: Yt,
493
+ flat: Zt
494
+ }, Kt = (t, e, n, s) => ({
1085
495
  "--bksw": "100%",
1086
496
  "--bksh": "100%",
1087
- "--bksb": `${e}px`,
1088
- "--bksci": n,
1089
- "--bkscl": r,
1090
- "--bkscf": o
1091
- }), Wt = (e, n, o, r) => {
1092
- if (!e || !n) return null;
1093
- const s = typeof o == "number" ? o : 0, a = typeof r == "number" ? r : 0;
1094
- return /* @__PURE__ */ S.jsxs(S.Fragment, { children: [
1095
- a !== 0 && /* @__PURE__ */ S.jsx("span", { children: n(a, "height") }, "height"),
1096
- s !== 0 && /* @__PURE__ */ S.jsx("span", { children: n(s, "width") }, "width")
497
+ "--bksb": `${t}px`,
498
+ "--bksct": e,
499
+ "--bkscf": n,
500
+ "--bkscl": s
501
+ }), Jt = (t, e, n, s) => {
502
+ if (!t || !e) return null;
503
+ const o = typeof n == "number" ? n : 0, r = typeof s == "number" ? s : 0;
504
+ return /* @__PURE__ */ Z(K, { children: [
505
+ r !== 0 && /* @__PURE__ */ y("span", { children: e(r, "height") }, "height"),
506
+ o !== 0 && /* @__PURE__ */ y("span", { children: e(o, "width") }, "width")
1097
507
  ] });
1098
- }, Ht = c.memo(function({
1099
- height: n,
1100
- width: o,
1101
- indicatorNode: r,
1102
- debugging: s,
1103
- variant: a,
508
+ }, Qt = l.memo(function({
509
+ height: e,
510
+ width: n,
511
+ indicatorNode: s,
512
+ debugging: o,
513
+ variant: r,
1104
514
  base: i,
1105
- color: l,
1106
- className: u,
1107
- style: m,
1108
- children: k,
1109
- ssrMode: b = !1,
1110
- ...O
515
+ color: a,
516
+ className: c,
517
+ style: d,
518
+ children: f,
519
+ ssrMode: u = !1,
520
+ ...M
1111
521
  }) {
1112
- const x = c.useRef(null), h = se("spacer"), { isShown: j } = le(s, h.debugging), T = a ?? h.variant, g = i ?? h.base, [V, $] = c.useState(!1);
1113
- c.useEffect(() => {
1114
- $(!0);
522
+ const v = l.useRef(null), b = T("spacer"), { isShown: w } = j(o, b.debugging), g = r ?? b.variant, h = i ?? b.base, [D, S] = l.useState(!1);
523
+ l.useEffect(() => {
524
+ S(!0);
1115
525
  }, []);
1116
- const [R, I] = c.useMemo(() => et(
1117
- [o, n],
1118
- [0, 0],
1119
- { base: g, suppressWarnings: !0 }
1120
- ), [o, n, g]), G = re(
1121
- V && !b,
526
+ const [x, $] = l.useMemo(() => kt([n, e], [0, 0], {
527
+ base: h,
528
+ suppressWarnings: !0
529
+ }), [n, e, h]), I = J(
530
+ D && !u,
1122
531
  !1,
1123
532
  // Don't show measurements during SSR
1124
- j && r !== void 0
1125
- ), p = c.useMemo(() => G ? Wt(
1126
- j,
1127
- r,
1128
- R,
1129
- I
1130
- ) : null, [G, j, r, R, I]), M = c.useMemo(
1131
- () => Dt(
1132
- g,
1133
- h.colors.text,
1134
- h.colors.flat,
1135
- h.colors.line
533
+ w && s !== void 0
534
+ ), m = l.useMemo(() => I ? Jt(w, s, x, $) : null, [I, w, s, x, $]), G = l.useMemo(
535
+ () => Kt(
536
+ h,
537
+ b.colors.text,
538
+ b.colors.flat,
539
+ b.colors.line
1136
540
  ),
1137
- [g, h.colors]
1138
- ), D = c.useMemo(() => {
1139
- const E = H(I || "100%"), L = H(R || "100%"), z = `${g}px`, y = ["--bksw", "--bksh"], B = {
1140
- ...w({
541
+ [h, b.colors]
542
+ ), A = l.useMemo(() => {
543
+ const p = O($ || "100%"), B = O(x || "100%"), _ = `${h}px`, V = ["--bksw", "--bksh"], L = {
544
+ ...k({
1141
545
  key: "--bksh",
1142
- value: E,
1143
- defaultStyles: M,
1144
- skipDimensions: { fullSize: y }
546
+ value: p,
547
+ defaultStyles: G,
548
+ skipDimensions: { fullSize: V }
1145
549
  }),
1146
- ...w({
550
+ ...k({
1147
551
  key: "--bksw",
1148
- value: L,
1149
- defaultStyles: M,
1150
- skipDimensions: { fullSize: y }
552
+ value: B,
553
+ defaultStyles: G,
554
+ skipDimensions: { fullSize: V }
1151
555
  }),
1152
556
  // Explicitly set --bksb to ensure it is always applied
1153
- "--bksb": z,
1154
- ...w({
1155
- key: "--bksci",
1156
- value: l ?? h.colors.text,
1157
- defaultStyles: M
557
+ "--bksb": _,
558
+ ...k({
559
+ key: "--bksct",
560
+ value: a ?? b.colors.text,
561
+ defaultStyles: G
1158
562
  }),
1159
- ...w({
563
+ ...k({
1160
564
  key: "--bkscl",
1161
- value: l ?? h.colors.line,
1162
- defaultStyles: M
565
+ value: a ?? b.colors.line,
566
+ defaultStyles: G
1163
567
  }),
1164
- ...w({
568
+ ...k({
1165
569
  key: "--bkscf",
1166
- value: l ?? h.colors.flat,
1167
- defaultStyles: M
570
+ value: a ?? b.colors.flat,
571
+ defaultStyles: G
1168
572
  })
1169
573
  };
1170
- return oe(B, m);
574
+ return q(L, d);
1171
575
  }, [
1172
- R,
1173
- I,
1174
- l,
1175
- g,
1176
- h.colors,
1177
- M,
1178
- m
576
+ x,
577
+ $,
578
+ a,
579
+ h,
580
+ b.colors,
581
+ G,
582
+ d
1179
583
  ]);
1180
- return /* @__PURE__ */ S.jsxs(
584
+ return /* @__PURE__ */ Z(
1181
585
  "div",
1182
586
  {
1183
- ref: x,
587
+ ref: v,
1184
588
  "data-testid": "spacer",
1185
- className: ne(Ue.spr, j && Ue[T], u),
1186
- "data-variant": T,
1187
- style: D,
1188
- ...O,
589
+ className: z(
590
+ ct.spr,
591
+ w && ct[g],
592
+ c
593
+ ),
594
+ "data-variant": g,
595
+ "data-height": typeof $ == "number" ? `${$}px` : $,
596
+ style: A,
597
+ ...M,
1189
598
  children: [
1190
- p,
1191
- k
599
+ m,
600
+ f
1192
601
  ]
1193
602
  }
1194
603
  );
1195
- }), It = "pad_w2-sL", zt = "v_lhGBy", we = {
1196
- pad: It,
1197
- v: zt
1198
- }, Bt = (e, n, o, r) => {
1199
- const s = {};
1200
- return e !== "fit-content" && (s["--bkpw"] = H(e || "fit-content")), n !== "fit-content" && (s["--bkph"] = H(n || "fit-content")), o !== 8 && (s["--bkpb"] = `${o}px`), r !== "var(--bk-padder-color-theme)" && (s["--bkpc"] = r), s;
1201
- }, Lt = (e, n) => {
1202
- const { top: o, right: r, bottom: s, left: a } = n, i = {};
1203
- return e || ((o > 0 || s > 0) && (i.paddingBlock = `${o}px ${s}px`), (a > 0 || r > 0) && (i.paddingInline = `${a}px ${r}px`)), i;
1204
- }, Pt = (e, n, o) => {
1205
- const r = e || "line", s = n || "none", a = (i, l) => /* @__PURE__ */ S.jsx(
1206
- Ht,
604
+ }), Pt = "pad_w2-sL", te = "v_lhGBy", nt = {
605
+ pad: Pt,
606
+ v: te
607
+ }, ee = (t, e, n, s) => {
608
+ const o = {};
609
+ return t !== "fit-content" && (o["--bkpw"] = O(t || "fit-content")), e !== "fit-content" && (o["--bkph"] = O(e || "fit-content")), o["--bkpb"] = `${n}px`, o["--bkpc"] = s, o;
610
+ }, ne = (t, e) => {
611
+ const { top: n, right: s, bottom: o, left: r } = e, i = {};
612
+ return t || ((n > 0 || o > 0) && (i.paddingBlock = `${n}px ${o}px`), (r > 0 || s > 0) && (i.paddingInline = `${r}px ${s}px`)), i;
613
+ }, oe = (t, e, n) => {
614
+ const s = t || "line", o = e || "none", r = (i, a) => /* @__PURE__ */ y(
615
+ Qt,
1207
616
  {
1208
- variant: r,
1209
- debugging: l === 0 || i === 0 ? "none" : s,
1210
- indicatorNode: o,
1211
- height: l !== "100%" ? l : void 0,
617
+ variant: s,
618
+ debugging: a === 0 || i === 0 ? "none" : o,
619
+ indicatorNode: n,
620
+ height: a !== "100%" ? a : void 0,
1212
621
  width: i !== "100%" ? i : void 0
1213
622
  }
1214
623
  );
1215
- return a.displayName = "PadderSpacer", a;
1216
- }, Oe = c.memo(
1217
- c.forwardRef(function({
1218
- children: n,
1219
- className: o,
1220
- debugging: r,
1221
- height: s,
1222
- indicatorNode: a,
624
+ return r.displayName = "PadderSpacer", r;
625
+ }, at = l.memo(
626
+ l.forwardRef(function({
627
+ children: e,
628
+ className: n,
629
+ debugging: s,
630
+ height: o,
631
+ indicatorNode: r,
1223
632
  style: i,
1224
- width: l,
1225
- ssrMode: u = !1,
1226
- ...m
1227
- }, k) {
1228
- const b = se("padder"), { variant: O } = se("spacer"), x = c.useMemo(
1229
- () => ie(m),
1230
- [m]
1231
- ), { isShown: h, isNone: j, debugging: T } = le(
1232
- r,
1233
- b.debugging
1234
- ), g = !j, [V, $] = c.useState(!1);
1235
- c.useEffect(() => {
1236
- $(!0);
633
+ width: a,
634
+ ssrMode: c = !1,
635
+ ...d
636
+ }, f) {
637
+ const u = T("padder"), { variant: M } = T("spacer"), v = l.useMemo(
638
+ () => Y(d),
639
+ [d]
640
+ ), { isShown: b, isNone: w, debugging: g } = j(
641
+ s,
642
+ u.debugging
643
+ ), h = !w, [D, S] = l.useState(!1);
644
+ l.useEffect(() => {
645
+ S(!0);
1237
646
  }, []);
1238
- const R = c.useRef(null), I = pe(R, {
1239
- base: b.base,
647
+ const x = l.useRef(null), $ = tt(x, {
648
+ base: u.base,
1240
649
  snapping: "height",
1241
- spacing: x,
1242
- warnOnMisalignment: !j
1243
- }), G = {
650
+ spacing: v,
651
+ warnOnMisalignment: !w
652
+ }), I = {
1244
653
  padding: {
1245
- top: x.top || 0,
1246
- right: x.right || 0,
1247
- bottom: x.bottom || 0,
1248
- left: x.left || 0
654
+ top: v.top || 0,
655
+ right: v.right || 0,
656
+ bottom: v.bottom || 0,
657
+ left: v.left || 0
1249
658
  }
1250
- }, { padding: p } = re(
1251
- V && !u,
1252
- G,
1253
- I
1254
- ), M = tt(k, R), D = c.useMemo(() => {
1255
- const L = Bt(
1256
- l,
1257
- s,
1258
- b.base,
1259
- b.color
1260
- ), z = Lt(
1261
- g,
1262
- { top: p.top, right: p.right, bottom: p.bottom, left: p.left }
1263
- );
1264
- return oe(
1265
- { ...L, ...z },
659
+ }, { padding: m } = J(
660
+ D && !c,
661
+ I,
662
+ $
663
+ ), G = yt(f, x), A = l.useMemo(() => {
664
+ const B = ee(
665
+ a,
666
+ o,
667
+ u.base,
668
+ u.color
669
+ ), _ = ne(h, {
670
+ top: m.top,
671
+ right: m.right,
672
+ bottom: m.bottom,
673
+ left: m.left
674
+ });
675
+ return q(
676
+ { ...B, ..._ },
1266
677
  i
1267
678
  );
1268
679
  }, [
1269
- l,
1270
- s,
1271
- b.base,
1272
- b.color,
1273
- g,
1274
- p.top,
1275
- p.right,
1276
- p.bottom,
1277
- p.left,
680
+ a,
681
+ o,
682
+ u.base,
683
+ u.color,
684
+ h,
685
+ m.top,
686
+ m.right,
687
+ m.bottom,
688
+ m.left,
1278
689
  i
1279
- ]), E = c.useMemo(
1280
- () => Pt(O, T, a),
1281
- [O, T, a]
690
+ ]), p = l.useMemo(
691
+ () => oe(M, g, r),
692
+ [M, g, r]
1282
693
  );
1283
- return g ? /* @__PURE__ */ S.jsxs(
694
+ return h ? /* @__PURE__ */ Z(
1284
695
  "div",
1285
696
  {
1286
- ref: M,
697
+ ref: G,
1287
698
  "data-testid": "padder",
1288
- className: ne(we.pad, h && we.v, o),
1289
- style: D,
699
+ className: z(nt.pad, b && nt.v, n),
700
+ style: A,
1290
701
  children: [
1291
- /* @__PURE__ */ S.jsxs(S.Fragment, { children: [
1292
- p.top >= 0 && /* @__PURE__ */ S.jsx("div", { style: { gridColumn: "1 / -1" }, children: E("100%", p.top) }),
1293
- p.left >= 0 && /* @__PURE__ */ S.jsx("div", { style: { gridRow: "2 / 3" }, children: E(p.left, "100%") })
702
+ /* @__PURE__ */ Z(K, { children: [
703
+ m.top >= 0 && /* @__PURE__ */ y("div", { style: { gridColumn: "1 / -1" }, children: p("100%", m.top) }),
704
+ m.left >= 0 && /* @__PURE__ */ y("div", { style: { gridRow: "2 / 3" }, children: p(m.left, "100%") })
1294
705
  ] }),
1295
- /* @__PURE__ */ S.jsx("div", { style: { gridRow: "2 / 3", gridColumn: "2 / 3" }, children: n }),
1296
- /* @__PURE__ */ S.jsxs(S.Fragment, { children: [
1297
- p.right >= 0 && /* @__PURE__ */ S.jsx("div", { style: { gridRow: "2 / 3" }, children: E(p.right, "100%") }),
1298
- p.bottom >= 0 && /* @__PURE__ */ S.jsx("div", { style: { gridColumn: "1 / -1" }, children: E("100%", p.bottom) })
706
+ /* @__PURE__ */ y("div", { style: { gridRow: "2 / 3", gridColumn: "2 / 3" }, children: e }),
707
+ /* @__PURE__ */ Z(K, { children: [
708
+ m.right >= 0 && /* @__PURE__ */ y("div", { style: { gridRow: "2 / 3" }, children: p(m.right, "100%") }),
709
+ m.bottom >= 0 && /* @__PURE__ */ y("div", { style: { gridColumn: "1 / -1" }, children: p("100%", m.bottom) })
1299
710
  ] })
1300
711
  ]
1301
712
  }
1302
- ) : /* @__PURE__ */ S.jsx(
713
+ ) : /* @__PURE__ */ y(
1303
714
  "div",
1304
715
  {
1305
- ref: M,
716
+ ref: G,
1306
717
  "data-testid": "padder",
1307
- className: ne(we.pad, o),
1308
- style: D,
1309
- children: n
718
+ className: z(nt.pad, n),
719
+ style: A,
720
+ children: e
1310
721
  }
1311
722
  );
1312
723
  })
1313
- ), Yt = "lay_5cMu5", Ft = "v_dprVE", qe = {
1314
- lay: Yt,
1315
- v: Ft
1316
- }, Ut = (e) => ({
724
+ ), se = "lay_5cMu5", re = "v_dprVE", ut = {
725
+ lay: se,
726
+ v: re
727
+ }, ie = (t) => ({
1317
728
  "--bklw": "auto",
1318
729
  "--bklh": "auto",
1319
- "--bklcl": e.line,
1320
- "--bklcf": e.flat,
1321
- "--bklci": e.text
1322
- }), Xe = (e) => typeof e == "number" ? `repeat(${e}, 1fr)` : typeof e == "string" ? e : Array.isArray(e) ? e.map((n) => typeof n == "number" ? `${n}px` : n).join(" ") : "repeat(auto-fit, minmax(100px, 1fr))", qt = (e, n, o) => {
1323
- const r = {};
1324
- return e !== void 0 && (r.gap = H(e)), n !== void 0 && (r.rowGap = H(n)), o !== void 0 && (r.columnGap = H(o)), r;
1325
- }, Cn = c.memo(function({
1326
- alignContent: n,
1327
- alignItems: o,
1328
- children: r,
1329
- className: s,
1330
- columns: a = "repeat(auto-fit, minmax(100px, 1fr))",
730
+ "--bklcl": t.line,
731
+ "--bklcf": t.flat,
732
+ "--bklci": t.text
733
+ }), dt = (t) => typeof t == "number" ? `repeat(${t}, 1fr)` : typeof t == "string" ? t : Array.isArray(t) ? t.map((e) => typeof e == "number" ? `${e}px` : e).join(" ") : "repeat(auto-fill, minmax(100px, 1fr))", ae = (t, e, n) => {
734
+ const s = {};
735
+ return t !== void 0 && (s.gap = O(t)), e !== void 0 && (s.rowGap = O(e)), n !== void 0 && (s.columnGap = O(n)), s;
736
+ }, We = l.memo(function({
737
+ alignContent: e,
738
+ alignItems: n,
739
+ children: s,
740
+ className: o,
741
+ columns: r = "repeat(auto-fill, minmax(100px, 1fr))",
1331
742
  columnGap: i,
1332
- debugging: l,
1333
- gap: u,
1334
- height: m,
1335
- indicatorNode: k,
1336
- justifyContent: b,
1337
- justifyItems: O,
1338
- rowGap: x,
1339
- rows: h,
1340
- style: j,
1341
- variant: T,
1342
- width: g,
1343
- ssrMode: V = !1,
1344
- ...$
743
+ debugging: a,
744
+ gap: c,
745
+ height: d,
746
+ indicatorNode: f,
747
+ justifyContent: u,
748
+ justifyItems: M,
749
+ rowGap: v,
750
+ rows: b,
751
+ style: w,
752
+ variant: g,
753
+ width: h,
754
+ ssrMode: D = !1,
755
+ ...S
1345
756
  }) {
1346
- const R = se("layout"), { isShown: I, debugging: G } = le(l, R.debugging), [p, M] = c.useState(!1);
1347
- c.useEffect(() => {
1348
- M(!0);
757
+ const x = T("layout"), { isShown: $, debugging: I } = j(a, x.debugging), [m, G] = l.useState(!1);
758
+ l.useEffect(() => {
759
+ G(!0);
1349
760
  }, []);
1350
- const D = c.useRef(null), E = c.useMemo(
1351
- () => ie($),
1352
- [$]
1353
- ), L = pe(D, {
1354
- base: R.base,
761
+ const A = l.useRef(null), p = l.useMemo(
762
+ () => Y(S),
763
+ [S]
764
+ ), B = tt(A, {
765
+ base: x.base,
1355
766
  snapping: "height",
1356
- spacing: E,
767
+ spacing: p,
1357
768
  warnOnMisalignment: !0
1358
- }), z = {
769
+ }), _ = {
1359
770
  padding: {
1360
- top: E.top || 0,
1361
- right: E.right || 0,
1362
- bottom: E.bottom || 0,
1363
- left: E.left || 0
771
+ top: p.top || 0,
772
+ right: p.right || 0,
773
+ bottom: p.bottom || 0,
774
+ left: p.left || 0
1364
775
  }
1365
- }, { padding: y } = re(
1366
- p && !V,
1367
- z,
1368
- L
1369
- ), B = c.useMemo(
1370
- () => Xe(a),
1371
- [a]
1372
- ), W = c.useMemo(
1373
- () => h ? Xe(h) : "auto",
1374
- [h]
1375
- ), A = c.useMemo(
1376
- () => Ut(R.colors),
1377
- [R.colors]
1378
- ), K = c.useMemo(
1379
- () => qt(u, x, i),
1380
- [u, x, i]
1381
- ), J = c.useMemo(() => {
1382
- const _ = H(g || "auto"), U = H(m || "auto"), P = ["--bklw", "--bklh"];
1383
- return oe(
776
+ }, { padding: V } = J(
777
+ m && !D,
778
+ _,
779
+ B
780
+ ), L = l.useMemo(
781
+ () => dt(r),
782
+ [r]
783
+ ), C = l.useMemo(
784
+ () => b ? dt(b) : "auto",
785
+ [b]
786
+ ), E = l.useMemo(
787
+ () => ie(x.colors),
788
+ [x.colors]
789
+ ), R = l.useMemo(
790
+ () => ae(c, v, i),
791
+ [c, v, i]
792
+ ), N = l.useMemo(() => {
793
+ const W = O(h || "auto"), X = O(d || "auto"), U = ["--bklw", "--bklh"];
794
+ return q(
1384
795
  {
1385
796
  // Theme overrides
1386
- ...w({
797
+ ...k({
1387
798
  key: "--bklw",
1388
- value: _,
1389
- defaultStyles: A,
1390
- skipDimensions: { auto: P }
799
+ value: W,
800
+ defaultStyles: E,
801
+ skipDimensions: { auto: U }
1391
802
  }),
1392
- ...w({
803
+ ...k({
1393
804
  key: "--bklh",
1394
- value: U,
1395
- defaultStyles: A,
1396
- skipDimensions: { auto: P }
805
+ value: X,
806
+ defaultStyles: E,
807
+ skipDimensions: { auto: U }
1397
808
  }),
1398
- ...w({
809
+ ...k({
1399
810
  key: "--bklcl",
1400
- value: R.colors.line,
1401
- defaultStyles: A
811
+ value: x.colors.line,
812
+ defaultStyles: E
1402
813
  }),
1403
- ...w({
814
+ ...k({
1404
815
  key: "--bklcf",
1405
- value: R.colors.flat,
1406
- defaultStyles: A
816
+ value: x.colors.flat,
817
+ defaultStyles: E
1407
818
  }),
1408
- ...w({
819
+ ...k({
1409
820
  key: "--bklci",
1410
- value: R.colors.text,
1411
- defaultStyles: A
821
+ value: x.colors.text,
822
+ defaultStyles: E
1412
823
  }),
1413
824
  // Grid properties - only inject if different from defaults
1414
- ...B !== "repeat(auto-fit, minmax(100px, 1fr))" && { "--bklgtc": B },
1415
- ...W !== "auto" && { "--bklgtr": W },
1416
- ...O && { "--bklji": O },
1417
- ...o && { "--bklai": o },
1418
- ...b && { "--bkljc": b },
1419
- ...n && { "--bklac": n },
825
+ ...L !== "repeat(auto-fill, minmax(100px, 1fr))" && {
826
+ "--bklgtc": L
827
+ },
828
+ ...C !== "auto" && { "--bklgtr": C },
829
+ ...M && { "--bklji": M },
830
+ ...n && { "--bklai": n },
831
+ ...u && { "--bkljc": u },
832
+ ...e && { "--bklac": e },
1420
833
  // Include gap styles
1421
- ...K
834
+ ...R
1422
835
  },
1423
- j
836
+ w
1424
837
  );
1425
838
  }, [
1426
- B,
1427
- W,
1428
- O,
1429
- o,
1430
- b,
839
+ L,
840
+ C,
841
+ M,
1431
842
  n,
1432
- g,
1433
- m,
1434
- R.colors,
1435
- A,
1436
- j,
1437
- K
843
+ u,
844
+ e,
845
+ h,
846
+ d,
847
+ x.colors,
848
+ E,
849
+ w,
850
+ R
1438
851
  ]);
1439
- return /* @__PURE__ */ S.jsx(
1440
- Me,
852
+ return /* @__PURE__ */ y(it, { spacer: { variant: g ?? "line" }, children: /* @__PURE__ */ y(
853
+ at,
1441
854
  {
1442
- spacer: { variant: T ?? "line" },
1443
- children: /* @__PURE__ */ S.jsx(
1444
- Oe,
855
+ ref: A,
856
+ className: $ ? ut.v : "",
857
+ block: [V.top, V.bottom],
858
+ ...f ? { indicatorNode: f } : {},
859
+ inline: [V.left, V.right],
860
+ debugging: I,
861
+ width: h,
862
+ height: d,
863
+ ssrMode: D,
864
+ children: /* @__PURE__ */ y(
865
+ "div",
1445
866
  {
1446
- ref: D,
1447
- className: I ? qe.v : "",
1448
- block: [y.top, y.bottom],
1449
- ...k ? { indicatorNode: k } : {},
1450
- inline: [y.left, y.right],
1451
- debugging: G,
1452
- width: g,
1453
- height: m,
1454
- ssrMode: V,
1455
- children: /* @__PURE__ */ S.jsx(
1456
- "div",
1457
- {
1458
- "data-testid": "layout",
1459
- className: ne(s, qe.lay),
1460
- style: J,
1461
- ...$ && Object.keys($).length > 0 ? Object.fromEntries(
1462
- Object.entries($).filter(([_]) => _ !== "ssrMode")
1463
- ) : {},
1464
- children: r
1465
- }
1466
- )
867
+ "data-testid": "layout",
868
+ className: z(o, ut.lay),
869
+ style: N,
870
+ ...S && Object.keys(S).length > 0 ? Object.fromEntries(
871
+ Object.entries(S).filter(
872
+ ([W]) => W !== "ssrMode"
873
+ )
874
+ ) : {},
875
+ children: s
1467
876
  }
1468
877
  )
1469
878
  }
1470
- );
1471
- }), Xt = "box_rDCRX", Jt = "v_0MMHD", Je = {
1472
- box: Xt,
1473
- v: Jt
1474
- }, Zt = (e, n) => ({
1475
- "--bkxw": "fit-content",
1476
- "--bkxh": "fit-content",
1477
- "--bkxb": `${e}px`,
1478
- "--bkxcl": n
1479
- }), Kt = ({
1480
- width: e,
1481
- height: n,
1482
- base: o,
1483
- lineColor: r,
1484
- defaultStyles: s
879
+ ) });
880
+ }), le = "box_rDCRX", ce = "v_0MMHD", ft = {
881
+ box: le,
882
+ v: ce
883
+ }, ue = (t, e) => ({
884
+ "--bkboxw": "auto",
885
+ "--bkboxh": "auto",
886
+ "--bkboxc": e,
887
+ "--bkboxb": `${t}px`
888
+ }), de = ({
889
+ width: t,
890
+ height: e,
891
+ base: n,
892
+ lineColor: s,
893
+ defaultStyles: o
1485
894
  }) => {
1486
- const a = H(e || "fit-content"), i = H(n || "fit-content"), l = ["--bkxw", "--bkxh"];
895
+ const r = O(t || "fit-content"), i = O(e || "fit-content"), a = ["--bkboxw", "--bkboxh"];
1487
896
  return {
1488
- ...w({
1489
- key: "--bkxw",
1490
- value: a,
1491
- defaultStyles: s,
1492
- skipDimensions: { fitContent: l }
897
+ ...k({
898
+ key: "--bkboxw",
899
+ value: r,
900
+ defaultStyles: o,
901
+ skipDimensions: { fitContent: a }
1493
902
  }),
1494
- ...w({
1495
- key: "--bkxh",
903
+ ...k({
904
+ key: "--bkboxh",
1496
905
  value: i,
1497
- defaultStyles: s,
1498
- skipDimensions: { fitContent: l }
906
+ defaultStyles: o,
907
+ skipDimensions: { fitContent: a }
1499
908
  }),
1500
- ...w({
1501
- key: "--bkxb",
1502
- value: `${o}px`,
1503
- defaultStyles: s
909
+ ...k({
910
+ key: "--bkboxb",
911
+ value: `${n}px`,
912
+ defaultStyles: o
1504
913
  }),
1505
- ...w({
1506
- key: "--bkxcl",
1507
- value: r,
1508
- defaultStyles: s
914
+ ...k({
915
+ key: "--bkboxc",
916
+ value: s,
917
+ defaultStyles: o
1509
918
  })
1510
919
  };
1511
- }, Rn = c.memo(
1512
- c.forwardRef(function({
1513
- children: n,
1514
- snapping: o = "clamp",
1515
- debugging: r,
1516
- className: s,
1517
- colSpan: a,
920
+ }, ze = l.memo(
921
+ l.forwardRef(function({
922
+ children: e,
923
+ snapping: n = "clamp",
924
+ debugging: s,
925
+ className: o,
926
+ colSpan: r,
1518
927
  rowSpan: i,
1519
- span: l,
1520
- width: u,
1521
- height: m,
1522
- style: k,
1523
- ssrMode: b = !1,
1524
- ...O
1525
- }, x) {
1526
- const h = se("box"), { isShown: j, debugging: T } = le(r, h.debugging), [g, V] = c.useState(!1);
1527
- c.useEffect(() => {
1528
- V(!0);
928
+ span: a,
929
+ width: c,
930
+ height: d,
931
+ style: f,
932
+ ssrMode: u = !1,
933
+ ...M
934
+ }, v) {
935
+ const b = T("box"), { isShown: w, debugging: g } = j(s, b.debugging), [h, D] = l.useState(!1);
936
+ l.useEffect(() => {
937
+ D(!0);
1529
938
  }, []);
1530
- const $ = c.useRef(null), { top: R, bottom: I, left: G, right: p } = ie(O), M = pe($, {
1531
- base: h.base,
1532
- snapping: o,
1533
- spacing: { top: R, bottom: I, left: G, right: p },
1534
- warnOnMisalignment: T !== "none"
1535
- }), D = {
939
+ const S = l.useRef(null), { top: x, bottom: $, left: I, right: m } = Y(M), G = tt(S, {
940
+ base: b.base,
941
+ snapping: n,
942
+ spacing: { top: x, bottom: $, left: I, right: m },
943
+ warnOnMisalignment: g !== "none"
944
+ }), A = {
1536
945
  padding: {
1537
- top: R || 0,
1538
- right: p || 0,
1539
- bottom: I || 0,
1540
- left: G || 0
946
+ top: x || 0,
947
+ right: m || 0,
948
+ bottom: $ || 0,
949
+ left: I || 0
1541
950
  }
1542
- }, { padding: E } = re(
1543
- g && !b,
1544
- D,
1545
- M
1546
- ), L = c.useMemo(
1547
- () => pt(l, a, i),
1548
- [a, i, l]
1549
- ), z = c.useMemo(
1550
- () => Zt(h.base, h.colors.line),
1551
- [h.base, h.colors.line]
1552
- ), y = c.useMemo(
1553
- () => {
1554
- const B = Kt({
1555
- width: u,
1556
- height: m,
1557
- base: h.base,
1558
- lineColor: h.colors.line,
1559
- defaultStyles: z
1560
- });
1561
- return oe(B, k);
1562
- },
1563
- [h.base, h.colors.line, u, m, z, k]
1564
- );
1565
- return /* @__PURE__ */ S.jsx(
951
+ }, { padding: p } = J(
952
+ h && !u,
953
+ A,
954
+ G
955
+ ), B = l.useMemo(
956
+ () => Tt(a, r, i),
957
+ [r, i, a]
958
+ ), _ = l.useMemo(
959
+ () => ue(b.base, b.colors.line),
960
+ [b.base, b.colors.line]
961
+ ), V = l.useMemo(() => {
962
+ const L = de({
963
+ width: c,
964
+ height: d,
965
+ base: b.base,
966
+ lineColor: b.colors.line,
967
+ defaultStyles: _
968
+ });
969
+ return q(L, f);
970
+ }, [
971
+ b.base,
972
+ b.colors.line,
973
+ c,
974
+ d,
975
+ _,
976
+ f
977
+ ]);
978
+ return /* @__PURE__ */ y(
1566
979
  "div",
1567
980
  {
1568
- ref: tt(x, $),
981
+ ref: yt(v, S),
1569
982
  "data-testid": "box",
1570
- className: ne(Je.box, j && Je.v, s),
1571
- style: oe(y, L),
1572
- children: /* @__PURE__ */ S.jsx(
1573
- Me,
983
+ className: z(ft.box, w && ft.v, o),
984
+ style: q(V, B),
985
+ children: /* @__PURE__ */ y(it, { base: 1, spacer: { variant: "flat" }, children: /* @__PURE__ */ y(
986
+ at,
1574
987
  {
1575
- base: 1,
1576
- spacer: { variant: "flat" },
1577
- children: /* @__PURE__ */ S.jsx(
1578
- Oe,
1579
- {
1580
- block: [E.top, E.bottom],
1581
- inline: [E.left, E.right],
1582
- width: "fit-content",
1583
- height: m,
1584
- debugging: T,
1585
- ssrMode: b,
1586
- children: n
1587
- }
1588
- )
988
+ block: [p.top, p.bottom],
989
+ inline: [p.left, p.right],
990
+ width: "fit-content",
991
+ height: d,
992
+ debugging: g,
993
+ ssrMode: u,
994
+ children: e
1589
995
  }
1590
- )
996
+ ) })
1591
997
  }
1592
998
  );
1593
999
  })
1594
- ), Qt = "stk_l-58l", en = "v_-k3qw", Ze = {
1595
- stk: Qt,
1596
- v: en
1597
- }, tn = {
1000
+ ), fe = "stk_l-58l", be = "v_-k3qw", bt = {
1001
+ stk: fe,
1002
+ v: be
1003
+ }, me = {
1598
1004
  x: "row",
1599
1005
  y: "column",
1600
1006
  "-x": "row-reverse",
1601
1007
  "-y": "column-reverse"
1602
- }, nn = (e) => ({
1008
+ }, he = (t) => ({
1603
1009
  "--bkkw": "auto",
1604
1010
  "--bkkh": "auto",
1605
- "--bkkcl": e.line,
1606
- "--bkkcf": e.flat,
1607
- "--bkkci": e.text
1608
- }), on = (e, n, o) => ({
1609
- rowGap: o !== void 0 ? o : e,
1610
- columnGap: o !== void 0 ? o : n
1611
- }), _n = c.memo(function({
1612
- align: n = "flex-start",
1613
- children: o,
1614
- className: r,
1615
- columnGap: s,
1616
- debugging: a,
1011
+ "--bkkcl": t.line,
1012
+ "--bkkcf": t.flat,
1013
+ "--bkkci": t.text
1014
+ }), ge = (t, e, n) => ({
1015
+ rowGap: n !== void 0 ? n : t,
1016
+ columnGap: n !== void 0 ? n : e
1017
+ }), He = l.memo(function({
1018
+ align: e = "flex-start",
1019
+ children: n,
1020
+ className: s,
1021
+ columnGap: o,
1022
+ debugging: r,
1617
1023
  direction: i = "row",
1618
- gap: l,
1619
- height: u,
1620
- indicatorNode: m,
1621
- justify: k = "flex-start",
1622
- rowGap: b,
1623
- style: O,
1624
- variant: x,
1625
- width: h,
1626
- ssrMode: j = !1,
1627
- ...T
1024
+ gap: a,
1025
+ height: c,
1026
+ indicatorNode: d,
1027
+ justify: f = "flex-start",
1028
+ rowGap: u,
1029
+ style: M,
1030
+ variant: v,
1031
+ width: b,
1032
+ ssrMode: w = !1,
1033
+ ...g
1628
1034
  }) {
1629
- const g = se("stack"), { isShown: V, debugging: $ } = le(a, g.debugging), [R, I] = c.useState(!1);
1630
- c.useEffect(() => {
1631
- I(!0);
1035
+ const h = T("stack"), { isShown: D, debugging: S } = j(r, h.debugging), [x, $] = l.useState(!1);
1036
+ l.useEffect(() => {
1037
+ $(!0);
1632
1038
  }, []);
1633
- const G = c.useRef(null), { top: p, right: M, bottom: D, left: E } = ie({
1634
- ...T
1635
- }), L = pe(G, {
1636
- base: g.base,
1039
+ const I = l.useRef(null), { top: m, right: G, bottom: A, left: p } = Y({
1040
+ ...g
1041
+ }), B = tt(I, {
1042
+ base: h.base,
1637
1043
  snapping: "height",
1638
- spacing: { top: p, right: M, bottom: D, left: E },
1639
- warnOnMisalignment: $ !== "none"
1640
- }), z = {
1044
+ spacing: { top: m, right: G, bottom: A, left: p },
1045
+ warnOnMisalignment: S !== "none"
1046
+ }), _ = {
1641
1047
  padding: {
1642
- top: p || 0,
1643
- right: M || 0,
1644
- bottom: D || 0,
1645
- left: E || 0
1048
+ top: m || 0,
1049
+ right: G || 0,
1050
+ bottom: A || 0,
1051
+ left: p || 0
1646
1052
  }
1647
- }, { padding: y } = re(
1648
- R && !j,
1649
- z,
1650
- L
1651
- ), B = c.useMemo(() => {
1652
- const J = b !== void 0 ? Number(b) : void 0, _ = s !== void 0 ? Number(s) : void 0, U = l !== void 0 ? Number(l) : void 0;
1653
- return on(J, _, U);
1654
- }, [b, s, l]), W = c.useMemo(
1655
- () => nn(g.colors),
1656
- [g.colors]
1657
- ), A = c.useMemo(() => {
1658
- const J = H(h || "auto"), _ = H(u || "auto"), U = tn[i] || i, P = ["--bkkw", "--bkkh"], Z = {
1659
- ...w({
1053
+ }, { padding: V } = J(
1054
+ x && !w,
1055
+ _,
1056
+ B
1057
+ ), L = l.useMemo(() => {
1058
+ const N = u !== void 0 ? Number(u) : void 0, W = o !== void 0 ? Number(o) : void 0, X = a !== void 0 ? Number(a) : void 0;
1059
+ return ge(
1060
+ N,
1061
+ W,
1062
+ X
1063
+ );
1064
+ }, [u, o, a]), C = l.useMemo(
1065
+ () => he(h.colors),
1066
+ [h.colors]
1067
+ ), E = l.useMemo(() => {
1068
+ const N = O(b || "auto"), W = O(c || "auto"), X = me[i] || i, U = ["--bkkw", "--bkkh"], et = {
1069
+ ...k({
1660
1070
  key: "--bkkw",
1661
- value: J,
1662
- defaultStyles: W,
1663
- skipDimensions: { auto: P }
1071
+ value: N,
1072
+ defaultStyles: C,
1073
+ skipDimensions: { auto: U }
1664
1074
  }),
1665
- ...w({
1075
+ ...k({
1666
1076
  key: "--bkkh",
1667
- value: _,
1668
- defaultStyles: W,
1669
- skipDimensions: { auto: P }
1077
+ value: W,
1078
+ defaultStyles: C,
1079
+ skipDimensions: { auto: U }
1670
1080
  }),
1671
- ...w({
1081
+ ...k({
1672
1082
  key: "--bkkcl",
1673
- value: g.colors.line,
1674
- defaultStyles: W
1083
+ value: h.colors.line,
1084
+ defaultStyles: C
1675
1085
  }),
1676
- ...w({
1086
+ ...k({
1677
1087
  key: "--bkkcf",
1678
- value: g.colors.flat,
1679
- defaultStyles: W
1088
+ value: h.colors.flat,
1089
+ defaultStyles: C
1680
1090
  }),
1681
- ...w({
1091
+ ...k({
1682
1092
  key: "--bkkci",
1683
- value: g.colors.text,
1684
- defaultStyles: W
1093
+ value: h.colors.text,
1094
+ defaultStyles: C
1685
1095
  })
1686
1096
  };
1687
- return oe({
1688
- flexDirection: U,
1689
- justifyContent: k,
1690
- alignItems: n,
1691
- width: h,
1692
- height: u
1693
- }, B, Z, O);
1097
+ return q({
1098
+ flexDirection: X,
1099
+ justifyContent: f,
1100
+ alignItems: e,
1101
+ width: b,
1102
+ height: c
1103
+ }, L, et, M);
1694
1104
  }, [
1695
1105
  i,
1696
- k,
1697
- n,
1698
- h,
1699
- u,
1700
- g.colors.line,
1701
- g.colors.flat,
1702
- g.colors.text,
1703
- W,
1704
- B,
1705
- O
1706
- ]), K = $ === "none" ? {
1707
- ...A,
1708
- paddingBlock: `${y.top}px ${y.bottom}px`,
1709
- paddingInline: `${y.left}px ${y.right}px`
1710
- } : A;
1711
- return /* @__PURE__ */ S.jsx(
1712
- Me,
1106
+ f,
1107
+ e,
1108
+ b,
1109
+ c,
1110
+ h.colors.line,
1111
+ h.colors.flat,
1112
+ h.colors.text,
1113
+ C,
1114
+ L,
1115
+ M
1116
+ ]), R = S === "none" ? {
1117
+ ...E,
1118
+ paddingBlock: `${V.top}px ${V.bottom}px`,
1119
+ paddingInline: `${V.left}px ${V.right}px`
1120
+ } : E;
1121
+ return /* @__PURE__ */ y(it, { spacer: { variant: v ?? "line" }, children: /* @__PURE__ */ y(
1122
+ at,
1713
1123
  {
1714
- spacer: { variant: x ?? "line" },
1715
- children: /* @__PURE__ */ S.jsx(
1716
- Oe,
1124
+ ref: I,
1125
+ block: [V.top, V.bottom],
1126
+ inline: [V.left, V.right],
1127
+ debugging: S,
1128
+ indicatorNode: d,
1129
+ width: b,
1130
+ height: c,
1131
+ ssrMode: w,
1132
+ children: /* @__PURE__ */ y(
1133
+ "div",
1717
1134
  {
1718
- ref: G,
1719
- className: V ? Ze.v : "",
1720
- block: [y.top, y.bottom],
1721
- inline: [y.left, y.right],
1722
- debugging: $,
1723
- indicatorNode: m,
1724
- width: h,
1725
- height: u,
1726
- ssrMode: j,
1727
- children: /* @__PURE__ */ S.jsx(
1728
- "div",
1729
- {
1730
- "data-testid": "stack",
1731
- className: ne(r, Ze.stk),
1732
- style: K,
1733
- ...T,
1734
- children: o
1735
- }
1736
- )
1135
+ "data-testid": "stack",
1136
+ className: z(s, bt.stk, D && bt.v),
1137
+ style: R,
1138
+ ...g,
1139
+ children: n
1737
1140
  }
1738
1141
  )
1739
1142
  }
1740
- );
1741
- }), rn = "gde_-Naxo", sn = "line_-VS-e", an = "cols_8lD6D", ln = "col_rlbsL", ue = {
1742
- gde: rn,
1743
- line: sn,
1744
- cols: an,
1745
- col: ln
1746
- }, cn = (e) => {
1747
- const { variant: n, base: o, gap: r, columns: s, columnWidth: a } = e;
1143
+ ) });
1144
+ }), pe = "gde_-Naxo", ke = "line_-VS-e", ye = "cols_8lD6D", ve = "col_rlbsL", xe = "ssr_VGvpO", H = {
1145
+ gde: pe,
1146
+ line: ke,
1147
+ cols: ye,
1148
+ col: ve,
1149
+ ssr: xe
1150
+ }, we = (t) => {
1151
+ const { variant: e, base: n, gap: s, columns: o, columnWidth: r } = t;
1152
+ switch (e) {
1153
+ case "line":
1154
+ return {
1155
+ variant: "line",
1156
+ gap: s,
1157
+ base: n
1158
+ };
1159
+ case "pattern":
1160
+ if (o && Array.isArray(o))
1161
+ return {
1162
+ variant: "pattern",
1163
+ columns: o,
1164
+ gap: s,
1165
+ base: n
1166
+ };
1167
+ break;
1168
+ case "fixed":
1169
+ if (o !== void 0) {
1170
+ const i = typeof o == "number" ? o : parseInt(String(o), 10);
1171
+ return {
1172
+ variant: "fixed",
1173
+ columns: isNaN(i) ? 12 : i,
1174
+ columnWidth: r || "60px",
1175
+ gap: s,
1176
+ base: n
1177
+ };
1178
+ }
1179
+ break;
1180
+ }
1748
1181
  return {
1749
- line: {
1750
- variant: "line",
1751
- gap: r - 1,
1752
- base: o
1753
- },
1754
- auto: a ? {
1755
- variant: "auto",
1756
- columnWidth: a,
1757
- gap: r,
1758
- base: o
1759
- } : null,
1760
- pattern: Array.isArray(s) ? {
1761
- variant: "pattern",
1762
- columns: s,
1763
- gap: r,
1764
- base: o
1765
- } : null,
1766
- fixed: typeof s == "number" ? {
1767
- variant: "fixed",
1768
- columns: s,
1769
- columnWidth: a,
1770
- gap: r,
1771
- base: o
1772
- } : null
1773
- }[n] ?? {
1774
- variant: "line",
1775
- gap: r - 1,
1776
- base: o
1182
+ variant: "auto",
1183
+ columnWidth: r || "1fr",
1184
+ gap: s,
1185
+ base: n
1777
1186
  };
1778
- }, un = (e, n) => ({
1187
+ }, Se = (t, e) => ({
1779
1188
  "--bkgw": "auto",
1780
1189
  "--bkgh": "auto",
1781
1190
  "--bkgmw": "none",
1782
1191
  "--bkgcw": "60px",
1783
1192
  "--bkggw": "24px",
1784
1193
  "--bkgc": "12",
1785
- "--bkgb": `${e}px`,
1786
- "--bkgcl": n
1787
- }), jn = c.memo(function({
1788
- className: n,
1789
- debugging: o,
1790
- style: r,
1791
- variant: s,
1792
- align: a = "start",
1194
+ "--bkgb": `${t}px`,
1195
+ "--bkgcl": e,
1196
+ "--bkgg": "0"
1197
+ }), Te = l.memo(function({
1198
+ className: e,
1199
+ debugging: n,
1200
+ style: s,
1201
+ variant: o,
1202
+ align: r = "center",
1793
1203
  gap: i,
1794
- height: l,
1795
- width: u,
1796
- columns: m,
1797
- columnWidth: k,
1798
- gutterWidth: b,
1799
- maxWidth: O,
1800
- color: x,
1801
- children: h,
1802
- ssrMode: j = !1,
1803
- ...T
1204
+ height: a,
1205
+ width: c,
1206
+ columns: d,
1207
+ columnWidth: f,
1208
+ maxWidth: u,
1209
+ color: M,
1210
+ children: v,
1211
+ ssrMode: b = !1,
1212
+ ...w
1804
1213
  }) {
1805
- const g = se("guide"), V = s ?? g.variant, $ = typeof i == "number" ? i : g.base, [R, I] = c.useState(!1);
1806
- c.useEffect(() => {
1807
- I(!0);
1808
- }, []);
1809
- const G = c.useRef(null), p = ve(G), M = re(
1810
- R && !j,
1811
- { width: 1024, height: 768, refresh: () => {
1812
- } },
1813
- p
1814
- ), { width: D, height: E } = M, { isShown: L } = le(o, g.debugging), z = c.useMemo(() => cn({
1815
- variant: V,
1816
- base: g.base,
1817
- gap: $,
1818
- columns: m,
1819
- columnWidth: k
1820
- }), [V, g.base, $, m, k]), {
1821
- template: y,
1822
- columnsCount: B,
1823
- calculatedGap: W
1824
- } = Et(G, z), A = c.useMemo(
1825
- () => un(g.base, g.colors.line),
1214
+ const g = T("guide"), h = o ?? g.variant, D = typeof i == "number" ? i : 0, { isShown: S } = j(n, g.debugging);
1215
+ if (!S)
1216
+ return /* @__PURE__ */ y(
1217
+ "div",
1218
+ {
1219
+ className: z(H.g, H.h, e),
1220
+ style: s,
1221
+ "data-testid": "guide",
1222
+ "data-variant": h,
1223
+ ...w,
1224
+ children: v
1225
+ }
1226
+ );
1227
+ const x = /* @__PURE__ */ y(
1228
+ "div",
1229
+ {
1230
+ className: z(H.g, H.h, H.ssr, e),
1231
+ style: {
1232
+ width: c || "100%",
1233
+ height: a || "100%",
1234
+ maxWidth: u || "none",
1235
+ ...s
1236
+ },
1237
+ "data-testid": "guide",
1238
+ "data-variant": h,
1239
+ children: v
1240
+ }
1241
+ );
1242
+ return /* @__PURE__ */ y(wt, { fallback: x, children: /* @__PURE__ */ y(
1243
+ Ce,
1244
+ {
1245
+ className: e,
1246
+ debugging: n,
1247
+ style: s,
1248
+ variant: h,
1249
+ align: r,
1250
+ gap: D,
1251
+ height: a,
1252
+ width: c,
1253
+ columns: d,
1254
+ columnWidth: f,
1255
+ maxWidth: u,
1256
+ color: M,
1257
+ ssrMode: b,
1258
+ ...w,
1259
+ children: v
1260
+ }
1261
+ ) });
1262
+ }), Ce = l.memo(function({
1263
+ className: e,
1264
+ debugging: n,
1265
+ style: s,
1266
+ variant: o,
1267
+ align: r = "center",
1268
+ gap: i,
1269
+ height: a,
1270
+ width: c,
1271
+ columns: d,
1272
+ columnWidth: f,
1273
+ maxWidth: u,
1274
+ color: M,
1275
+ children: v,
1276
+ ssrMode: b = !1,
1277
+ ...w
1278
+ }) {
1279
+ const g = T("guide"), { isShown: h } = j(n, g.debugging), D = l.useRef(null), {
1280
+ width: S,
1281
+ height: x,
1282
+ refresh: $
1283
+ // Keep the refresh function available for dynamic updates
1284
+ } = P(D);
1285
+ l.useEffect(() => {
1286
+ const R = () => {
1287
+ $();
1288
+ };
1289
+ return window.addEventListener("resize", R), () => {
1290
+ window.removeEventListener("resize", R);
1291
+ };
1292
+ }, [$]);
1293
+ const I = l.useMemo(() => {
1294
+ const R = o, N = typeof i == "number" ? i : 0;
1295
+ return we({
1296
+ variant: R,
1297
+ base: g.base,
1298
+ gap: N,
1299
+ columns: d,
1300
+ columnWidth: f
1301
+ });
1302
+ }, [o, g.base, i, d, f]), { template: m, columnsCount: G, calculatedGap: A } = Ee(
1303
+ D,
1304
+ I
1305
+ ), p = l.useMemo(
1306
+ () => Se(g.base, g.colors.line),
1826
1307
  [g.base, g.colors.line]
1827
- ), K = c.useMemo(() => {
1828
- const J = H(u || D || "auto"), _ = H(l || E || "auto"), U = H(O || "none"), P = H(k || "60px"), Z = H(b || "24px"), q = ["--bkgw", "--bkgh"], X = {
1829
- ...w({
1308
+ ), B = l.useMemo(() => {
1309
+ const R = O(c || S || "auto"), N = O(a || x || "auto"), W = O(u || "none"), X = O(f || "60px"), U = ["--bkgw", "--bkgh"], et = {
1310
+ ...k({
1830
1311
  key: "--bkgw",
1831
- value: J,
1832
- defaultStyles: A,
1833
- skipDimensions: { auto: q }
1312
+ value: R,
1313
+ defaultStyles: p,
1314
+ skipDimensions: { auto: U }
1834
1315
  }),
1835
- ...w({
1316
+ ...k({
1836
1317
  key: "--bkgh",
1837
- value: _,
1838
- defaultStyles: A,
1839
- skipDimensions: { auto: q }
1318
+ value: N,
1319
+ defaultStyles: p,
1320
+ skipDimensions: { auto: U }
1840
1321
  }),
1841
- ...w({
1322
+ ...k({
1842
1323
  key: "--bkgmw",
1843
- value: U,
1844
- defaultStyles: A
1324
+ value: W,
1325
+ defaultStyles: p
1845
1326
  }),
1846
- ...w({
1327
+ ...k({
1847
1328
  key: "--bkgcw",
1848
- value: P,
1849
- defaultStyles: A
1850
- }),
1851
- ...w({
1852
- key: "--bkggw",
1853
- value: Z,
1854
- defaultStyles: A
1329
+ value: X,
1330
+ defaultStyles: p
1855
1331
  }),
1856
- ...w({
1332
+ ...k({
1857
1333
  key: "--bkgc",
1858
- value: `${B}`,
1859
- defaultStyles: A
1334
+ value: `${G}`,
1335
+ defaultStyles: p
1860
1336
  }),
1861
- ...w({
1337
+ ...k({
1862
1338
  key: "--bkgb",
1863
- value: `${g.base}px`,
1864
- defaultStyles: A
1339
+ value: "0",
1340
+ defaultStyles: p
1865
1341
  }),
1866
- ...w({
1342
+ ...k({
1867
1343
  key: "--bkgcl",
1868
- value: x ?? g.colors.line,
1869
- defaultStyles: A
1344
+ value: M ?? g.colors.line,
1345
+ defaultStyles: p
1346
+ }),
1347
+ ...k({
1348
+ key: "--bkgg",
1349
+ value: `${A}px`,
1350
+ defaultStyles: p
1351
+ }),
1352
+ ...k({
1353
+ key: "--bkgj",
1354
+ value: r || "center",
1355
+ defaultStyles: p
1870
1356
  }),
1871
- // Add the CSS variables expected by tests
1872
- "--bkgg": `${W}px`,
1873
- ...y && y !== "none" ? { "--bkgt": y } : {},
1357
+ ...m && m !== "none" ? { "--bkgt": m } : {},
1874
1358
  // Add grid template if available
1875
- ...y && y !== "none" ? { gridTemplateColumns: y } : {},
1876
- // Add gap if calculated
1877
- ...W ? { gap: `${W}px` } : {},
1878
- // Add justifyContent based on align
1879
- justifyContent: a
1359
+ ...m && m !== "none" ? { gridTemplateColumns: m } : {}
1880
1360
  };
1881
- return oe(X, r);
1361
+ return q(et, s);
1882
1362
  }, [
1363
+ c,
1364
+ a,
1883
1365
  u,
1884
- l,
1885
- O,
1886
- k,
1887
- b,
1888
- B,
1366
+ f,
1367
+ G,
1368
+ M,
1369
+ m,
1370
+ A,
1371
+ S,
1889
1372
  x,
1890
- y,
1891
- W,
1892
- D,
1893
- E,
1894
- g.base,
1895
1373
  g.colors.line,
1896
- A,
1897
- r,
1898
- a
1899
- ]);
1900
- return /* @__PURE__ */ S.jsxs(
1374
+ p,
1375
+ s,
1376
+ r
1377
+ ]), _ = () => {
1378
+ const R = typeof i == "number" ? i : 0, N = R === 0 ? 0 : R - 1, W = N + 1;
1379
+ return { finalGap: N, actualGapWithLine: W };
1380
+ }, { finalGap: V, actualGapWithLine: L } = _(), C = typeof c == "number" ? c : S || 1024;
1381
+ let E;
1382
+ return V === 0 ? E = Math.floor(C) + 1 : o === "line" ? E = Math.max(
1383
+ 1,
1384
+ Math.floor((C + 1) / L) + 1
1385
+ ) : E = Math.max(
1386
+ 1,
1387
+ Math.floor(C / L) + 1
1388
+ ), /* @__PURE__ */ Z(
1901
1389
  "div",
1902
1390
  {
1903
- ref: G,
1391
+ ref: D,
1904
1392
  "data-testid": "guide",
1905
- className: ne(
1906
- ue.gde,
1907
- n,
1908
- L ? ue.v : ue.h,
1909
- V === "line" && ue.line
1393
+ className: z(
1394
+ H.gde,
1395
+ e,
1396
+ h ? H.v : H.h,
1397
+ o === "line" && H.line
1910
1398
  ),
1911
- "data-variant": V,
1912
- style: K,
1913
- ...T,
1399
+ "data-variant": o,
1400
+ style: B,
1401
+ ...w,
1914
1402
  children: [
1915
- L && /* @__PURE__ */ S.jsx("div", { className: ue.cols, "data-variant": V, children: Array.from({ length: B }, (J, _) => {
1916
- const U = g.colors[V] ?? g.colors.line;
1917
- return /* @__PURE__ */ S.jsx(
1403
+ h && /* @__PURE__ */ y("div", { className: H.cols, "data-variant": o, children: Array.from({ length: E }, (R, N) => {
1404
+ const W = g.colors[o] ?? g.colors.line;
1405
+ return /* @__PURE__ */ y(
1918
1406
  "div",
1919
1407
  {
1920
- className: ue.col,
1921
- "data-column-index": _,
1922
- "data-variant": V,
1923
- style: { backgroundColor: U }
1408
+ className: H.col,
1409
+ "data-column-index": N,
1410
+ "data-variant": o,
1411
+ style: { backgroundColor: W }
1924
1412
  },
1925
- _
1413
+ N
1926
1414
  );
1927
1415
  }) }),
1928
- h
1416
+ v
1929
1417
  ]
1930
1418
  }
1931
1419
  );
1932
- }), fn = /^\d*\.?\d+(?:fr|px|%|em|rem|vh|vw|vmin|vmax|pt|pc|in|cm|mm)$/, dn = (e) => typeof e == "number" ? Number.isFinite(e) && e >= 0 : typeof e != "string" ? !1 : e === "auto" || e === "100%" || fn.test(e), bn = (e) => Array.isArray(e) && e.length > 0 && e.every(dn), Mn = (e) => {
1933
- const n = [...Object.keys(Ce), ...Qe];
1934
- return typeof e == "number" || typeof e == "string" && n.some((o) => e.endsWith(o));
1935
- }, On = (e) => typeof e == "string" && vn.includes(e), Te = (e) => typeof e == "object" && e !== null, Tn = (e) => Te(e) && e.variant === "line", An = (e) => Te(e) && "columns" in e && !("variant" in e), $n = (e) => Te(e) && "columnWidth" in e && !("variant" in e) && !("columns" in e), mn = "bas_e-SXr", gn = "row_q-FZb", he = {
1936
- bas: mn,
1937
- row: gn
1938
- }, hn = (e, n, o) => ({
1420
+ }), Me = /^\d*\.?\d+(?:fr|px|%|em|rem|vh|vw|vmin|vmax|pt|pc|in|cm|mm)$/, $e = (t) => typeof t == "number" ? Number.isFinite(t) && t >= 0 : typeof t != "string" ? !1 : t === "auto" || t === "100%" || Me.test(t), Re = (t) => Array.isArray(t) && t.length > 0 && t.every($e);
1421
+ function Ee(t, e) {
1422
+ const { width: n } = P(t), s = l.useRef(!1);
1423
+ return l.useMemo(() => {
1424
+ const o = e.variant ?? "line", r = e.base ?? 8, i = st(e.gap ?? 0, { base: r });
1425
+ if (!n)
1426
+ return {
1427
+ template: "none",
1428
+ columnsCount: 0,
1429
+ calculatedGap: 0,
1430
+ isValid: !1
1431
+ };
1432
+ try {
1433
+ switch (o) {
1434
+ case "line": {
1435
+ const a = i === 0 ? 0 : i - 1, c = a + 1;
1436
+ let d;
1437
+ return a === 0 ? d = Math.max(1, Math.floor(n) + 1) : d = Math.max(
1438
+ 1,
1439
+ Math.floor((n + 1) / c) + 1
1440
+ ), {
1441
+ template: `repeat(${d}, 1px)`,
1442
+ columnsCount: d,
1443
+ calculatedGap: i > 0 ? i - 1 : i,
1444
+ isValid: !0
1445
+ };
1446
+ }
1447
+ case "pattern": {
1448
+ if (!e.columns || !Array.isArray(e.columns))
1449
+ throw new Error("Missing or invalid pattern columns");
1450
+ if (!Re(e.columns))
1451
+ throw new Error('Invalid "pattern" columns array');
1452
+ const a = e.columns.map(
1453
+ (c) => typeof c == "number" ? `${c}px` : c
1454
+ );
1455
+ return a.some((c) => c === "0" || c === "0px") ? {
1456
+ template: "none",
1457
+ columnsCount: 0,
1458
+ calculatedGap: 0,
1459
+ isValid: !1
1460
+ } : {
1461
+ template: a.join(" "),
1462
+ columnsCount: a.length,
1463
+ calculatedGap: i,
1464
+ isValid: !0
1465
+ };
1466
+ }
1467
+ case "fixed": {
1468
+ const a = typeof e.columns == "number" ? e.columns : 0;
1469
+ if (a < 1)
1470
+ throw new Error(`Invalid columns count: ${a}`);
1471
+ const c = e.columnWidth ? O(e.columnWidth) : "1fr";
1472
+ return {
1473
+ template: `repeat(${a}, ${c})`,
1474
+ columnsCount: a,
1475
+ calculatedGap: i,
1476
+ isValid: !0
1477
+ };
1478
+ }
1479
+ case "auto": {
1480
+ const a = e.columnWidth ?? "auto";
1481
+ if (a === "auto")
1482
+ return {
1483
+ template: "repeat(auto-fill, minmax(0, 1fr))",
1484
+ columnsCount: 1,
1485
+ calculatedGap: i,
1486
+ isValid: !0
1487
+ };
1488
+ const c = typeof a == "number" ? `${a}px` : a.toString(), d = pt(c) ?? 0, f = d > 0 ? Math.max(1, Math.floor((n + i) / (d + i))) : 1;
1489
+ return {
1490
+ template: `repeat(auto-fill, ${c})`,
1491
+ columnsCount: f,
1492
+ calculatedGap: i,
1493
+ isValid: !0
1494
+ };
1495
+ }
1496
+ default: {
1497
+ s.current || (console.warn(
1498
+ `[useGuide] Unknown variant "${o}". Falling back to "line".`
1499
+ ), s.current = !0);
1500
+ const a = Math.max(1, Math.floor(n / (i + 1)) + 1);
1501
+ return {
1502
+ template: `repeat(${a}, 1px)`,
1503
+ columnsCount: a,
1504
+ calculatedGap: i,
1505
+ isValid: !0
1506
+ };
1507
+ }
1508
+ }
1509
+ } catch (a) {
1510
+ return console.warn("Error in useGuide:", a), {
1511
+ template: "none",
1512
+ columnsCount: 0,
1513
+ calculatedGap: 0,
1514
+ isValid: !1
1515
+ };
1516
+ }
1517
+ }, [e, n]);
1518
+ }
1519
+ function T(t) {
1520
+ const e = gt();
1521
+ return Q(() => Object.assign(
1522
+ { base: e.base },
1523
+ e[t]
1524
+ ), [e, t]);
1525
+ }
1526
+ function j(t, e) {
1527
+ return Q(() => {
1528
+ const n = t ?? e;
1529
+ return {
1530
+ isShown: n === "visible",
1531
+ isHidden: n === "hidden",
1532
+ isNone: n === "none",
1533
+ debugging: n
1534
+ };
1535
+ }, [t, e]);
1536
+ }
1537
+ const Ve = "bas_e-SXr", Ge = "row_q-FZb", Oe = "ssr_W1N5g", F = {
1538
+ bas: Ve,
1539
+ row: Ge,
1540
+ ssr: Oe
1541
+ }, De = (t, e, n) => ({
1939
1542
  "--bkbw": "100%",
1940
1543
  "--bkbh": "100%",
1941
- "--bkbb": `${e}px`,
1942
- "--bkbcl": n,
1943
- "--bkbcf": o
1944
- }), kn = (e) => {
1945
- const { index: n, base: o, variant: r, chosenColor: s, lineColor: a, flatColor: i } = e;
1544
+ "--bkbb": `${t}px`,
1545
+ "--bkbcl": e,
1546
+ "--bkbcf": n
1547
+ }), _e = (t) => {
1548
+ const { index: e, base: n, variant: s, chosenColor: o, lineColor: r, flatColor: i } = t;
1946
1549
  return {
1947
- "--bkrt": n === 0 ? "0px" : `${n * o}px`,
1948
- "--bkrh": r === "line" ? "1px" : `${o}px`,
1949
- "--bkbc": s || (r === "line" ? a : i)
1550
+ "--bkrt": e === 0 ? "0px" : `${e * n}px`,
1551
+ "--bkrh": s === "line" ? "1px" : `${n}px`,
1552
+ "--bkbc": o || (s === "line" ? r : i)
1950
1553
  };
1951
- }, Nn = c.memo(function({
1952
- className: n,
1953
- debugging: o,
1954
- style: r,
1955
- variant: s,
1956
- height: a,
1554
+ }, Ae = l.memo(function({
1555
+ className: e,
1556
+ debugging: n,
1557
+ style: s,
1558
+ variant: o,
1559
+ height: r,
1957
1560
  width: i,
1958
- base: l,
1959
- color: u,
1960
- ssrMode: m = !1,
1961
- ...k
1561
+ base: a,
1562
+ color: c,
1563
+ ssrMode: d = !1,
1564
+ ...f
1962
1565
  }) {
1963
- const b = se("baseline"), O = s ?? b.variant, x = l ?? b.base, { isShown: h } = le(o, b.debugging), j = c.useRef(null), [T, g] = c.useState(!1), V = ve(j);
1964
- c.useEffect(() => {
1965
- g(!0);
1966
- }, []);
1967
- const $ = re(
1968
- T,
1969
- xt,
1970
- V
1971
- ), { width: R, height: I } = $, [G, p] = c.useMemo(() => et(
1972
- [i, a],
1973
- [R, I]
1974
- ), [i, a, R, I]), { top: M, right: D, bottom: E, left: L } = c.useMemo(
1975
- () => ie(k),
1976
- [k]
1977
- ), z = c.useMemo(() => {
1978
- const Z = [M, D, E, L].map((q) => q ? `${q}px` : "0").join(" ");
1979
- return Z !== "0 0 0 0" ? Z : void 0;
1980
- }, [M, D, E, L]), y = c.useMemo(() => mt({
1981
- height: p,
1982
- top: M,
1983
- bottom: E,
1984
- base: x
1985
- }), [p, M, E, x]), B = St({
1986
- totalLines: y,
1987
- lineHeight: x,
1988
- containerRef: j,
1566
+ const u = T("baseline"), { isShown: M } = j(n, u.debugging), v = l.useRef(null), {
1567
+ width: b,
1568
+ height: w,
1569
+ refresh: g
1570
+ } = P(v);
1571
+ l.useEffect(() => {
1572
+ const C = () => {
1573
+ g();
1574
+ };
1575
+ return window.addEventListener("resize", C), () => {
1576
+ window.removeEventListener("resize", C);
1577
+ };
1578
+ }, [g]);
1579
+ const [h, D] = l.useMemo(() => kt(
1580
+ [i, r],
1581
+ [b, w]
1582
+ ), [i, r, b, w]), { top: S, right: x, bottom: $, left: I } = l.useMemo(
1583
+ () => Y(f),
1584
+ [f]
1585
+ ), m = l.useMemo(() => {
1586
+ const C = [S, x, $, I].map((E) => E ? `${E}px` : "0").join(" ");
1587
+ return C !== "0 0 0 0" ? C : void 0;
1588
+ }, [S, x, $, I]), G = l.useMemo(() => {
1589
+ const C = a || u.base;
1590
+ return Nt({
1591
+ height: D,
1592
+ top: S,
1593
+ bottom: $,
1594
+ base: C
1595
+ });
1596
+ }, [D, S, $, a, u.base]), { start: A, end: p } = Ut({
1597
+ totalLines: G,
1598
+ lineHeight: a || u.base,
1599
+ containerRef: v,
1989
1600
  buffer: 160
1990
- }), W = {
1991
- start: 0,
1992
- end: Math.min(10, y)
1993
- }, { start: A, end: K } = re(
1994
- T && !m,
1995
- W,
1996
- B
1997
- ), J = u || (O === "line" ? b.colors.line : b.colors.flat), _ = c.useMemo(
1998
- () => hn(
1999
- x,
2000
- b.colors.line,
2001
- b.colors.flat
1601
+ }), B = c || (o === "line" ? u.colors.line : u.colors.flat), _ = l.useMemo(
1602
+ () => De(
1603
+ a || u.base,
1604
+ u.colors.line,
1605
+ u.colors.flat
2002
1606
  ),
2003
- [x, b.colors.line, b.colors.flat]
2004
- ), U = c.useMemo(() => {
2005
- const Z = H(i || "100%"), q = H(a || "100%"), X = ["--bkbw", "--bkbh"];
2006
- return oe(
1607
+ [a, u.colors.line, u.colors.flat, u.base]
1608
+ ), V = l.useMemo(() => {
1609
+ const C = O(i || "100%"), E = O(r || "100%"), R = ["--bkbw", "--bkbh"];
1610
+ return q(
2007
1611
  {
2008
- ...w({
1612
+ ...k({
2009
1613
  key: "--bkbw",
2010
- value: Z,
1614
+ value: C,
2011
1615
  defaultStyles: _,
2012
- skipDimensions: { fullSize: X }
1616
+ skipDimensions: { fullSize: R }
2013
1617
  }),
2014
- ...w({
1618
+ ...k({
2015
1619
  key: "--bkbh",
2016
- value: q,
1620
+ value: E,
2017
1621
  defaultStyles: _,
2018
- skipDimensions: { fullSize: X }
1622
+ skipDimensions: { fullSize: R }
2019
1623
  }),
2020
- ...w({
1624
+ ...k({
2021
1625
  key: "--bkbb",
2022
- value: `${x}px`,
1626
+ value: `${a}px`,
2023
1627
  defaultStyles: _
2024
1628
  }),
2025
- ...w({
1629
+ ...k({
2026
1630
  key: "--bkbcl",
2027
- value: u || b.colors.line,
1631
+ value: c || u.colors.line,
2028
1632
  defaultStyles: _
2029
1633
  }),
2030
- ...w({
1634
+ ...k({
2031
1635
  key: "--bkbcf",
2032
- value: u || b.colors.flat,
1636
+ value: c || u.colors.flat,
2033
1637
  defaultStyles: _
2034
1638
  }),
2035
- ...z && { padding: z }
1639
+ ...m && { padding: m }
2036
1640
  },
2037
- r
1641
+ s
2038
1642
  );
2039
1643
  }, [
2040
1644
  i,
1645
+ r,
2041
1646
  a,
2042
- x,
2043
- u,
2044
- b.colors.line,
2045
- b.colors.flat,
2046
- z,
1647
+ c,
1648
+ u.colors.line,
1649
+ u.colors.flat,
1650
+ m,
2047
1651
  _,
2048
- r
2049
- ]), P = c.useCallback(
2050
- (Z) => kn({
2051
- index: Z,
2052
- base: x,
2053
- variant: O,
2054
- chosenColor: J,
2055
- lineColor: b.colors.line,
2056
- flatColor: b.colors.flat
2057
- }),
2058
- [x, O, J, b.colors.line, b.colors.flat]
1652
+ s
1653
+ ]), L = l.useCallback(
1654
+ (C) => {
1655
+ const E = o, R = a || u.base;
1656
+ return _e({
1657
+ index: C,
1658
+ base: R,
1659
+ variant: E,
1660
+ chosenColor: B,
1661
+ lineColor: u.colors.line,
1662
+ flatColor: u.colors.flat
1663
+ });
1664
+ },
1665
+ [
1666
+ a,
1667
+ o,
1668
+ B,
1669
+ u.colors.line,
1670
+ u.colors.flat,
1671
+ u.base
1672
+ ]
2059
1673
  );
2060
- return /* @__PURE__ */ S.jsx(
1674
+ return /* @__PURE__ */ y(
2061
1675
  "div",
2062
1676
  {
2063
- ref: j,
1677
+ ref: v,
2064
1678
  "data-testid": "baseline",
2065
- className: ne(
2066
- he.bas,
2067
- h ? he.v : he.h,
2068
- n
1679
+ className: z(
1680
+ F.bas,
1681
+ M ? F.v : F.h,
1682
+ e
2069
1683
  ),
2070
- style: U,
2071
- ...k,
2072
- children: h && Array.from({ length: K - A }, (Z, q) => {
2073
- const X = q + A;
2074
- return /* @__PURE__ */ S.jsx(
1684
+ style: V,
1685
+ ...f,
1686
+ children: M && Array.from({ length: p - A }, (C, E) => {
1687
+ const R = E + A;
1688
+ return /* @__PURE__ */ y(
2075
1689
  "div",
2076
1690
  {
2077
- className: he.row,
2078
- "data-row-index": X,
2079
- style: P(X)
1691
+ className: F.row,
1692
+ "data-row-index": R,
1693
+ style: L(R)
2080
1694
  },
2081
- X
1695
+ R
2082
1696
  );
2083
1697
  })
2084
1698
  }
2085
1699
  );
2086
- }), vn = ["start", "center", "end"], Vn = ["line", "flat"];
1700
+ }), Fe = l.memo(function({
1701
+ className: e,
1702
+ debugging: n,
1703
+ style: s,
1704
+ variant: o,
1705
+ height: r,
1706
+ width: i,
1707
+ base: a,
1708
+ color: c,
1709
+ ssrMode: d = !1,
1710
+ ...f
1711
+ }) {
1712
+ const u = T("baseline"), M = o ?? u.variant, v = a ?? u.base, { isShown: b } = j(n, u.debugging);
1713
+ if (!b)
1714
+ return /* @__PURE__ */ y(
1715
+ "div",
1716
+ {
1717
+ className: z(F.b, F.h, e),
1718
+ style: s,
1719
+ "data-testid": "baseline",
1720
+ ...f
1721
+ }
1722
+ );
1723
+ const w = /* @__PURE__ */ y(
1724
+ "div",
1725
+ {
1726
+ className: z(F.b, F.h, F.ssr, e),
1727
+ style: {
1728
+ width: i || "100%",
1729
+ height: r || "100%",
1730
+ ...s
1731
+ },
1732
+ "data-testid": "baseline"
1733
+ }
1734
+ );
1735
+ return /* @__PURE__ */ y(wt, { fallback: w, children: /* @__PURE__ */ y(
1736
+ Ae,
1737
+ {
1738
+ className: e,
1739
+ debugging: n,
1740
+ style: s,
1741
+ variant: M,
1742
+ height: r,
1743
+ width: i,
1744
+ base: v,
1745
+ color: c,
1746
+ ssrMode: d,
1747
+ ...f
1748
+ }
1749
+ ) });
1750
+ });
2087
1751
  export {
2088
- Ce as ABSOLUTE_UNIT_CONVERSIONS,
2089
- Nn as Baseline,
2090
- Rn as Box,
2091
- Me as Config,
2092
- At as DEFAULT_CONFIG,
2093
- tn as DIRECTION_AXIS,
2094
- vn as GRID_ALIGNMENTS,
2095
- jn as Guide,
2096
- Cn as Layout,
2097
- Vn as PADD_VARIANTS,
2098
- Oe as Padder,
2099
- Qe as RELATIVE_UNITS,
2100
- xt as SSR_DIMENSIONS,
2101
- Ht as Spacer,
2102
- _n as Stack,
2103
- mt as calculateRowCount,
2104
- vt as calculateSnappedSpacing,
2105
- bt as clamp,
2106
- _e as convertValue,
2107
- kn as createBaselineRowStyle,
2108
- Kt as createBoxCustomStyles,
2109
- En as createCSSVariables,
2110
- hn as createDefaultBaselineStyles,
2111
- Zt as createDefaultBoxStyles,
2112
- un as createDefaultGuideStyles,
2113
- Ut as createDefaultLayoutStyles,
2114
- Dt as createDefaultSpacerStyles,
2115
- nn as createDefaultStackStyles,
2116
- Lt as createDirectPaddingStyles,
2117
- cn as createGridConfig,
2118
- qt as createGridGapStyles,
2119
- pt as createGridSpanStyles,
2120
- Bt as createPadderContainerStyles,
2121
- Pt as createRenderSpacerFn,
2122
- on as createStackGapStyles,
2123
- w as createStyleOverride,
2124
- Sn as debounce,
2125
- H as formatValue,
2126
- Wt as generateMeasurements,
2127
- Xe as getGridTemplate,
2128
- re as hydratedValue,
2129
- $n as isAutoCalculatedGuide,
2130
- On as isGuideAlignment,
2131
- An as isGuideColumnConfig,
2132
- Tn as isGuideLineConfig,
2133
- Mn as isGuideValue,
2134
- ot as isSSR,
2135
- dn as isValidGuideColumnValue,
2136
- bn as isValidGuidePattern,
2137
- ne as mergeClasses,
2138
- $t as mergeConfig,
2139
- tt as mergeRefs,
2140
- oe as mergeStyles,
2141
- yn as moduloize,
2142
- Re as normalizeValue,
2143
- et as normalizeValuePair,
2144
- ie as parsePadding,
2145
- ft as parseUnit,
2146
- nt as rafThrottle,
2147
- xn as round,
2148
- wn as safeClientValue,
2149
- pe as useBaseline,
2150
- se as useConfig,
2151
- le as useDebug,
2152
- rt as useDefaultConfig,
2153
- Et as useGuide,
2154
- ve as useMeasure,
2155
- St as useVirtual
1752
+ Fe as Baseline,
1753
+ ze as Box,
1754
+ it as Config,
1755
+ Te as Guide,
1756
+ We as Layout,
1757
+ at as Padder,
1758
+ Qt as Spacer,
1759
+ He as Stack,
1760
+ xt as isSSR,
1761
+ Be as safeClientValue
2156
1762
  };
2157
1763
  //# sourceMappingURL=index.mjs.map