baseline-kit 3.0.2 → 5.1.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 (79) hide show
  1. package/CHANGELOG.md +235 -0
  2. package/README.md +226 -334
  3. package/dist/baseline-kit.css +7 -22
  4. package/dist/core.cjs +1 -0
  5. package/dist/core.d.ts +354 -0
  6. package/dist/core.mjs +2 -0
  7. package/dist/guide.cjs +2 -0
  8. package/dist/guide.cjs.map +1 -0
  9. package/dist/guide.css +2 -0
  10. package/dist/guide.d.ts +146 -0
  11. package/dist/guide.mjs +586 -0
  12. package/dist/guide.mjs.map +1 -0
  13. package/dist/index.cjs +2 -2
  14. package/dist/index.cjs.map +1 -1
  15. package/dist/index.d.ts +204 -30
  16. package/dist/index.mjs +620 -1747
  17. package/dist/index.mjs.map +1 -1
  18. package/dist/remix-server.d.ts +8 -0
  19. package/dist/remix-server.mjs +15 -0
  20. package/dist/remix-server.mjs.map +1 -0
  21. package/dist/remix.css +2 -0
  22. package/dist/remix.d.ts +177 -0
  23. package/dist/remix.mjs +989 -0
  24. package/dist/remix.mjs.map +1 -0
  25. package/dist/reset.css +43 -0
  26. package/dist/src-C-1u5WNS.cjs +2 -0
  27. package/dist/src-C-1u5WNS.cjs.map +1 -0
  28. package/dist/src-C3TICsw6.js +547 -0
  29. package/dist/src-C3TICsw6.js.map +1 -0
  30. package/dist/styles.css +1 -1
  31. package/dist/theme/dark.css +0 -8
  32. package/dist/theme/default.css +0 -10
  33. package/dist/theme/tokens.css +1 -11
  34. package/dist/theme.css +4 -19
  35. package/package.json +135 -46
  36. package/dist/README.md +0 -446
  37. package/dist/components/Baseline/Baseline.d.ts +0 -48
  38. package/dist/components/Baseline/index.d.ts +0 -6
  39. package/dist/components/Box/Box.d.ts +0 -73
  40. package/dist/components/Box/index.d.ts +0 -6
  41. package/dist/components/Config/Config.d.ts +0 -179
  42. package/dist/components/Config/defaults.d.ts +0 -25
  43. package/dist/components/Config/index.d.ts +0 -11
  44. package/dist/components/Guide/Guide.d.ts +0 -70
  45. package/dist/components/Guide/index.d.ts +0 -6
  46. package/dist/components/Guide/types.d.ts +0 -144
  47. package/dist/components/Guide/validation.d.ts +0 -82
  48. package/dist/components/Layout/Layout.d.ts +0 -73
  49. package/dist/components/Layout/index.d.ts +0 -10
  50. package/dist/components/Padder/Padder.d.ts +0 -67
  51. package/dist/components/Padder/index.d.ts +0 -10
  52. package/dist/components/Spacer/Spacer.d.ts +0 -48
  53. package/dist/components/Spacer/index.d.ts +0 -10
  54. package/dist/components/Stack/Stack.d.ts +0 -84
  55. package/dist/components/Stack/index.d.ts +0 -10
  56. package/dist/components/index.d.ts +0 -16
  57. package/dist/components/styles/index.d.ts +0 -11
  58. package/dist/components/types.d.ts +0 -102
  59. package/dist/hooks/index.d.ts +0 -11
  60. package/dist/hooks/useBaseline.d.ts +0 -55
  61. package/dist/hooks/useConfig.d.ts +0 -41
  62. package/dist/hooks/useDebug.d.ts +0 -49
  63. package/dist/hooks/useGuide.d.ts +0 -61
  64. package/dist/hooks/useIsClient.d.ts +0 -6
  65. package/dist/hooks/useMeasure.d.ts +0 -35
  66. package/dist/hooks/useVirtual.d.ts +0 -60
  67. package/dist/styles.d.ts +0 -6
  68. package/dist/theme.d.ts +0 -6
  69. package/dist/utils/convert.d.ts +0 -24
  70. package/dist/utils/grid.d.ts +0 -22
  71. package/dist/utils/index.d.ts +0 -15
  72. package/dist/utils/math.d.ts +0 -48
  73. package/dist/utils/merge.d.ts +0 -117
  74. package/dist/utils/normalize.d.ts +0 -30
  75. package/dist/utils/padding.d.ts +0 -11
  76. package/dist/utils/parse.d.ts +0 -18
  77. package/dist/utils/snapping.d.ts +0 -28
  78. package/dist/utils/ssr.d.ts +0 -26
  79. package/dist/utils/timing.d.ts +0 -45
package/dist/guide.mjs ADDED
@@ -0,0 +1,586 @@
1
+ import * as e from "react";
2
+ import { useEffect as t, useMemo as n, useState as r } from "react";
3
+ import { Fragment as i, jsx as a, jsxs as o } from "react/jsx-runtime";
4
+ //#region packages/core/src/config/defaults.ts
5
+ var s = {
6
+ base: 8,
7
+ baseline: {
8
+ variant: "line",
9
+ debugging: "hidden",
10
+ colors: {
11
+ line: "var(--bk-baseline-color-line-theme, hsla(240, 60%, 40%, 0.15))",
12
+ flat: "var(--bk-baseline-color-flat-theme, hsla(230, 100%, 70%, 0.2))"
13
+ }
14
+ },
15
+ guide: {
16
+ variant: "line",
17
+ debugging: "hidden",
18
+ colors: {
19
+ line: "var(--bk-guide-color-line-theme, hsla(240, 60%, 40%, 0.15))",
20
+ pattern: "var(--bk-guide-color-pattern-theme, hsla(230, 100%, 70%, 0.2))",
21
+ auto: "var(--bk-guide-color-auto-theme, hsla(200, 100%, 70%, 0.15))",
22
+ fixed: "var(--bk-guide-color-fixed-theme, hsla(200, 100%, 70%, 0.15))"
23
+ }
24
+ },
25
+ spacer: {
26
+ variant: "line",
27
+ debugging: "hidden",
28
+ colors: {
29
+ line: "var(--bk-spacer-color-line-theme, hsla(270, 60%, 40%, 0.6))",
30
+ flat: "var(--bk-spacer-color-flat-theme, hsla(230, 100%, 70%, 0.2))",
31
+ text: "var(--bk-spacer-color-text-theme, hsla(270, 60%, 40%, 1))"
32
+ }
33
+ },
34
+ box: {
35
+ debugging: "hidden",
36
+ colors: {
37
+ line: "var(--bk-box-color-line-theme, hsla(300, 60%, 40%, 0.6))",
38
+ flat: "var(--bk-box-color-flat-theme, hsla(260, 100%, 70%, 0.2))",
39
+ text: "var(--bk-box-color-text-theme, hsla(300, 60%, 40%, 0.9))"
40
+ }
41
+ },
42
+ padder: {
43
+ debugging: "hidden",
44
+ color: "var(--bk-padder-color-theme, hsla(270, 60%, 40%, 0.6))"
45
+ }
46
+ }, c = [
47
+ "baseline",
48
+ "guide",
49
+ "spacer",
50
+ "box",
51
+ "padder"
52
+ ], l = (e) => {
53
+ let { parentConfig: t, base: n } = e, r = {};
54
+ for (let n of c) {
55
+ let i = e[n], a = t[n], o = {
56
+ ...a,
57
+ ...i
58
+ };
59
+ i && "colors" in i && i.colors && "colors" in a && (o.colors = {
60
+ ...a.colors,
61
+ ...i.colors
62
+ }), r[n] = o;
63
+ }
64
+ return {
65
+ base: n ?? t.base,
66
+ ...r
67
+ };
68
+ }, u = (e) => {
69
+ let { base: t, baseline: n, guide: r, spacer: i, box: a, padder: o } = e;
70
+ return {
71
+ "--bk-base": `${t}px`,
72
+ "--bkbl-cl": n.colors.line,
73
+ "--bkbl-cf": n.colors.flat,
74
+ "--bkgd-cl": r.colors.line,
75
+ "--bkgd-cp": r.colors.pattern,
76
+ "--bkgd-ca": r.colors.auto,
77
+ "--bkgd-cf": r.colors.fixed,
78
+ "--bksp-cl": i.colors.line,
79
+ "--bksp-cf": i.colors.flat,
80
+ "--bksp-ct": i.colors.text,
81
+ "--bkbx-cl": a.colors.line,
82
+ "--bkbx-cf": a.colors.flat,
83
+ "--bkbx-ct": a.colors.text,
84
+ "--bkpd-c": o.color
85
+ };
86
+ }, d = "__baseline_kit_config_context__", f = globalThis, p = f[d] ?? (f[d] = e.createContext(s));
87
+ p.displayName = "ConfigContext";
88
+ var m = () => e.use(p);
89
+ function h({ children: t, base: n, baseline: r, guide: i, spacer: o, box: s, padder: c }) {
90
+ let u = m(), d = e.useMemo(() => l({
91
+ parentConfig: u,
92
+ base: n,
93
+ baseline: r,
94
+ guide: i,
95
+ spacer: o,
96
+ box: s,
97
+ padder: c
98
+ }), [
99
+ u,
100
+ n,
101
+ r,
102
+ i,
103
+ o,
104
+ s,
105
+ c
106
+ ]);
107
+ return /* @__PURE__ */ a(p, {
108
+ value: d,
109
+ children: t
110
+ });
111
+ }
112
+ //#endregion
113
+ //#region packages/core/src/utils/parse.ts
114
+ function g(e) {
115
+ let t = e.trim().match(/^([+-]?[\d.]+)([a-zA-Z%]+)$/);
116
+ return t ? {
117
+ value: parseFloat(t[1]),
118
+ unit: t[2]
119
+ } : null;
120
+ }
121
+ function _(e, t) {
122
+ return e === void 0 && t !== void 0 ? `${t}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 ?? "";
123
+ }
124
+ //#endregion
125
+ //#region packages/core/src/utils/convert.ts
126
+ var v = {
127
+ parentSize: 0,
128
+ viewportWidth: 1920,
129
+ viewportHeight: 1080,
130
+ rootFontSize: 16,
131
+ parentFontSize: 16
132
+ }, y = {
133
+ px: 1,
134
+ in: 96,
135
+ cm: 37.8,
136
+ mm: 3.78,
137
+ pt: 1.33,
138
+ pc: 16
139
+ }, b = {
140
+ em: (e) => e.parentFontSize,
141
+ rem: (e) => e.rootFontSize,
142
+ vh: (e) => e.viewportHeight / 100,
143
+ vw: (e) => e.viewportWidth / 100,
144
+ vmin: (e) => Math.min(e.viewportWidth, e.viewportHeight) / 100,
145
+ vmax: (e) => Math.max(e.viewportWidth, e.viewportHeight) / 100,
146
+ "%": (e) => e.parentSize / 100
147
+ };
148
+ function x(e, t) {
149
+ if (typeof e == "number") return e;
150
+ if (typeof e != "string") return null;
151
+ let n = g(e);
152
+ if (!n) return null;
153
+ let { value: r, unit: i } = n;
154
+ if (i in y) return r * y[i];
155
+ if (i === "auto") return null;
156
+ let a = b[i];
157
+ return a ? r * a({
158
+ ...v,
159
+ ...t
160
+ }) : null;
161
+ }
162
+ //#endregion
163
+ //#region packages/core/src/utils/math.ts
164
+ function S(e, t, n) {
165
+ return Math.min(Math.max(e, t), n);
166
+ }
167
+ //#endregion
168
+ //#region packages/core/src/utils/normalize.ts
169
+ function C(e, t = {}) {
170
+ let { base: n = 8, round: r = !0, clamp: i, context: a } = t;
171
+ if (e === "auto") return n;
172
+ let o = null;
173
+ if (typeof e == "number" ? o = e : typeof e == "string" && (o = x(e, a) ?? n), o === null && (o = n), n <= 0) return o;
174
+ let s = r ? Math.round(o / n) * n : o;
175
+ return i === void 0 ? s : S(s, i.min ?? -Infinity, i.max ?? Infinity);
176
+ }
177
+ //#endregion
178
+ //#region packages/core/src/utils/merge.ts
179
+ var w = (...e) => e.filter(Boolean).join(" ").trim();
180
+ function T(e, t) {
181
+ let n = e ?? t;
182
+ return {
183
+ isShown: n === "visible",
184
+ isHidden: n === "hidden",
185
+ isNone: n === "none",
186
+ debugging: n
187
+ };
188
+ }
189
+ function E(e, t, n) {
190
+ let r = typeof e == "string" ? e : e.key, i = typeof e == "string" ? t : e.value, a = typeof e == "string" ? n : e.defaultStyles, o = typeof e == "object" ? e.skipDimensions : void 0;
191
+ return o && (o.fitContent?.includes(r) && i === "fit-content" || o.auto?.includes(r) && i === "auto" || o.fullSize?.includes(r) && (i === "100%" || i === "100vh" || i === "100vw")) || i === a[r] ? {} : { [r]: i };
192
+ }
193
+ //#endregion
194
+ //#region packages/core/src/validation/guide.ts
195
+ var D = /^\d*\.?\d+(?:fr|px|%|em|rem|vh|vw|vmin|vmax|pt|pc|in|cm|mm)$/, O = (e) => typeof e == "number" ? Number.isFinite(e) && e >= 0 : typeof e == "string" ? e === "auto" || e === "100%" || D.test(e) : !1, k = (e) => Array.isArray(e) && e.length > 0 && e.every(O), A = {
196
+ template: "none",
197
+ columnsCount: 0,
198
+ calculatedGap: 0,
199
+ isValid: !1
200
+ };
201
+ function j(e, t, n) {
202
+ let r = t.variant ?? "line", i = t.base ?? 8, a = C(t.gap ?? 0, {
203
+ base: i,
204
+ context: n
205
+ });
206
+ if (!e) return A;
207
+ switch (r) {
208
+ case "line": {
209
+ let t = a === 0 ? 0 : a - 1, n = t + 1, r = t === 0 ? Math.max(1, Math.floor(e) + 1) : Math.max(1, Math.floor((e + 1) / n) + 1);
210
+ return {
211
+ template: `repeat(${r}, 1px)`,
212
+ columnsCount: r,
213
+ calculatedGap: a > 0 ? a - 1 : a,
214
+ isValid: !0
215
+ };
216
+ }
217
+ case "pattern": {
218
+ if (!t.columns || !Array.isArray(t.columns) || !k(t.columns)) return A;
219
+ let e = t.columns.map((e) => typeof e == "number" ? `${e}px` : e);
220
+ return e.some((e) => e === "0" || e === "0px") ? A : {
221
+ template: e.join(" "),
222
+ columnsCount: e.length,
223
+ calculatedGap: a,
224
+ isValid: !0
225
+ };
226
+ }
227
+ case "fixed": {
228
+ let e = typeof t.columns == "number" ? t.columns : 0;
229
+ return e < 1 ? A : {
230
+ template: `repeat(${e}, ${t.columnWidth ? _(t.columnWidth) : "1fr"})`,
231
+ columnsCount: e,
232
+ calculatedGap: a,
233
+ isValid: !0
234
+ };
235
+ }
236
+ case "auto": {
237
+ let r = t.columnWidth ?? "auto";
238
+ if (r === "auto") return {
239
+ template: "repeat(auto-fill, minmax(0, 1fr))",
240
+ columnsCount: 1,
241
+ calculatedGap: a,
242
+ isValid: !0
243
+ };
244
+ let i = typeof r == "number" ? `${r}px` : r.toString(), o = x(i, n) ?? 0, s = o > 0 ? Math.max(1, Math.floor((e + a) / (o + a))) : 1;
245
+ return {
246
+ template: `repeat(auto-fill, ${i})`,
247
+ columnsCount: s,
248
+ calculatedGap: a,
249
+ isValid: !0
250
+ };
251
+ }
252
+ default: {
253
+ let t = Math.max(1, Math.floor(e / (a + 1)) + 1);
254
+ return {
255
+ template: `repeat(${t}, 1px)`,
256
+ columnsCount: t,
257
+ calculatedGap: a,
258
+ isValid: !0
259
+ };
260
+ }
261
+ }
262
+ }
263
+ //#endregion
264
+ //#region packages/core/src/descriptors/guide.ts
265
+ function M({ variant: e, base: t, gap: n, columns: r, columnWidth: i }) {
266
+ switch (e) {
267
+ case "line": return {
268
+ variant: "line",
269
+ gap: n,
270
+ base: t
271
+ };
272
+ case "pattern":
273
+ if (r && Array.isArray(r)) return {
274
+ variant: "pattern",
275
+ columns: r,
276
+ gap: n,
277
+ base: t
278
+ };
279
+ break;
280
+ case "fixed": if (r !== void 0) {
281
+ let e = typeof r == "number" ? r : parseInt(String(r), 10);
282
+ return {
283
+ variant: "fixed",
284
+ columns: isNaN(e) ? 12 : e,
285
+ columnWidth: i || "60px",
286
+ gap: n,
287
+ base: t
288
+ };
289
+ }
290
+ }
291
+ return {
292
+ variant: "auto",
293
+ columnWidth: i || "1fr",
294
+ gap: n,
295
+ base: t
296
+ };
297
+ }
298
+ var N = (e, t) => ({
299
+ "--bkgd-w": "100%",
300
+ "--bkgd-h": "100%",
301
+ "--bkgd-mw": "none",
302
+ "--bkgd-cw": "60px",
303
+ "--bkgd-gw": "24px",
304
+ "--bkgd-n": "12",
305
+ "--bkgd-b": `${e}px`,
306
+ "--bkgd-cl": t,
307
+ "--bkgd-g": "0"
308
+ });
309
+ function P(e) {
310
+ let { base: t, colors: n, variant: r, align: i, width: a, height: o, columnWidth: s, maxWidth: c, color: l, template: u, columnsCount: d, calculatedGap: f, isVisible: p } = e, m = N(t, n.line), h = {
311
+ "--bkgd-cl": l ?? n.line,
312
+ "--bkgd-cp": l ?? n.pattern,
313
+ "--bkgd-ca": l ?? n.auto,
314
+ "--bkgd-cf": l ?? n.fixed,
315
+ "--bkgd-w": _(a ?? "100%"),
316
+ "--bkgd-h": _(o ?? "100%"),
317
+ ...E({
318
+ key: "--bkgd-mw",
319
+ value: _(c || "none"),
320
+ defaultStyles: m
321
+ }),
322
+ ...E({
323
+ key: "--bkgd-cw",
324
+ value: _(s || "60px"),
325
+ defaultStyles: m
326
+ }),
327
+ ...E({
328
+ key: "--bkgd-n",
329
+ value: `${d}`,
330
+ defaultStyles: m
331
+ }),
332
+ ...E({
333
+ key: "--bkgd-b",
334
+ value: "0",
335
+ defaultStyles: m
336
+ }),
337
+ ...E({
338
+ key: "--bkgd-cl",
339
+ value: l ?? n.line,
340
+ defaultStyles: m
341
+ }),
342
+ ...E({
343
+ key: "--bkgd-g",
344
+ value: `${f}px`,
345
+ defaultStyles: m
346
+ }),
347
+ ...E({
348
+ key: "--bkgd-j",
349
+ value: i || "center",
350
+ defaultStyles: m
351
+ }),
352
+ ...u && u !== "none" ? { "--bkgd-t": u } : {}
353
+ }, g = l ?? (r && r in n ? n[r] : void 0) ?? n.line, v = r === "line", y = ["gde", p ? "v" : "h"];
354
+ return v && y.push("line"), v && (h["--bkgd-line-color"] = "var(--bkgd-cl)", h["--bkgd-line-period"] = `${f + 1}px`), {
355
+ containerStyle: h,
356
+ columnColor: g,
357
+ columnsCount: d,
358
+ calculatedGap: f,
359
+ template: u,
360
+ isVisible: p,
361
+ isLineVariant: v,
362
+ classTokens: y
363
+ };
364
+ }
365
+ //#endregion
366
+ //#region packages/react/src/hooks/useConfig.ts
367
+ function F(e) {
368
+ let t = m();
369
+ return n(() => Object.assign({ base: t.base }, t[e]), [t, e]);
370
+ }
371
+ //#endregion
372
+ //#region packages/react/src/hooks/useDebug.ts
373
+ function I(e, t) {
374
+ return n(() => T(e, t), [e, t]);
375
+ }
376
+ //#endregion
377
+ //#region packages/dom/src/timing.ts
378
+ var L = (e) => {
379
+ let t = null, n = null;
380
+ return [(...r) => {
381
+ n = r, t !== null && cancelAnimationFrame(t), t = requestAnimationFrame(() => {
382
+ e(...n), t = null, n = null;
383
+ });
384
+ }, () => {
385
+ t !== null && (cancelAnimationFrame(t), t = null, n = null);
386
+ }];
387
+ };
388
+ //#endregion
389
+ //#region packages/dom/src/measure.ts
390
+ function R(e, t) {
391
+ let n = {
392
+ width: 0,
393
+ height: 0
394
+ }, r = () => {
395
+ try {
396
+ let r = e.getBoundingClientRect(), i = {
397
+ width: Math.round(r.width),
398
+ height: Math.round(r.height)
399
+ };
400
+ (i.width !== n.width || i.height !== n.height) && (n = i, t(i));
401
+ } catch {}
402
+ }, [i, a] = L(r);
403
+ r();
404
+ let o = new ResizeObserver(i);
405
+ return o.observe(e), {
406
+ refresh: i,
407
+ disconnect() {
408
+ o.disconnect(), a();
409
+ }
410
+ };
411
+ }
412
+ //#endregion
413
+ //#region packages/react/src/hooks/useMeasure.ts
414
+ var z = {
415
+ width: 0,
416
+ height: 0
417
+ };
418
+ function B(t) {
419
+ let [n, r] = e.useState(z), i = e.useRef(null);
420
+ e.useLayoutEffect(() => {
421
+ if (typeof window > "u" || !t.current) return;
422
+ let e = R(t.current, (e) => {
423
+ r((t) => t.width === e.width && t.height === e.height ? t : e);
424
+ });
425
+ return i.current = e, () => {
426
+ e.disconnect(), i.current = null;
427
+ };
428
+ }, [t]);
429
+ let a = e.useCallback(() => {
430
+ i.current?.refresh();
431
+ }, []);
432
+ return {
433
+ ...n,
434
+ refresh: a
435
+ };
436
+ }
437
+ //#endregion
438
+ //#region packages/dom/src/viewport.ts
439
+ function V() {
440
+ return typeof window > "u" ? {} : {
441
+ viewportWidth: window.innerWidth,
442
+ viewportHeight: window.innerHeight
443
+ };
444
+ }
445
+ //#endregion
446
+ //#region packages/react/src/hooks/useGuide.ts
447
+ function H(t, n) {
448
+ let { width: r } = B(t);
449
+ return e.useMemo(() => j(r, n, V()), [n, r]);
450
+ }
451
+ //#endregion
452
+ //#region packages/react/src/hooks/useIsClient.ts
453
+ function U() {
454
+ let [e, n] = r(!1);
455
+ return t(() => {
456
+ n(!0);
457
+ }, []), e;
458
+ }
459
+ //#endregion
460
+ //#region packages/react/src/utils/ssr.tsx
461
+ function W({ children: e, fallback: t = null }) {
462
+ return U() ? /* @__PURE__ */ a(i, { children: e }) : /* @__PURE__ */ a(i, { children: t });
463
+ }
464
+ //#endregion
465
+ //#region packages/react/src/utils/merge.ts
466
+ function G(...e) {
467
+ return Object.assign({}, ...e.filter(Boolean));
468
+ }
469
+ var K = {
470
+ gde: "gde_4PKz3",
471
+ v: "v_yAvN0",
472
+ h: "h_XcWcy",
473
+ line: "line_UaLjW",
474
+ cols: "cols_ibtT4",
475
+ col: "col_QPSDI",
476
+ ssr: "ssr_4UN4k"
477
+ }, q = e.memo(function({ className: e, debugging: t, style: n, variant: r, align: i = "center", gap: o, height: s, width: c, columns: l, columnWidth: u, maxWidth: d, color: f, children: p, ssrMode: m = !1, ...h }) {
478
+ let g = F("guide"), _ = r ?? g.variant, v = typeof o == "number" ? o : 0, { isShown: y } = I(t, g.debugging);
479
+ if (!y) return /* @__PURE__ */ a("div", {
480
+ className: w(K.gde, K.h, e),
481
+ style: n,
482
+ "data-testid": "guide",
483
+ "data-variant": _,
484
+ "aria-hidden": "true",
485
+ ...h,
486
+ children: p
487
+ });
488
+ let b = /* @__PURE__ */ a("div", {
489
+ className: w(K.gde, K.h, K.ssr, e),
490
+ style: {
491
+ width: c ?? "100%",
492
+ height: s ?? "100%",
493
+ maxWidth: d ?? "none",
494
+ ...n
495
+ },
496
+ "data-testid": "guide",
497
+ "data-variant": _,
498
+ "aria-hidden": "true",
499
+ children: p
500
+ });
501
+ return m ? b : /* @__PURE__ */ a(W, {
502
+ fallback: b,
503
+ children: /* @__PURE__ */ a(J, {
504
+ className: e,
505
+ debugging: t,
506
+ style: n,
507
+ variant: _,
508
+ align: i,
509
+ gap: v,
510
+ height: s,
511
+ width: c,
512
+ columns: l,
513
+ columnWidth: u,
514
+ maxWidth: d,
515
+ color: f,
516
+ ...h,
517
+ children: p
518
+ })
519
+ });
520
+ }), J = e.memo(function({ className: t, debugging: n, style: r, variant: i, align: s = "center", gap: c, height: l, width: u, columns: d, columnWidth: f, maxWidth: p, color: m, children: h, ...g }) {
521
+ let _ = F("guide"), { isShown: v } = I(n, _.debugging), y = e.useRef(null);
522
+ B(y);
523
+ let b = i ?? _.variant, x = typeof c == "number" ? c : 0, { template: S, columnsCount: C, calculatedGap: T } = H(y, e.useMemo(() => M({
524
+ variant: b,
525
+ base: _.base,
526
+ gap: x,
527
+ columns: d,
528
+ columnWidth: f
529
+ }), [
530
+ b,
531
+ _.base,
532
+ x,
533
+ d,
534
+ f
535
+ ])), E = e.useMemo(() => P({
536
+ base: _.base,
537
+ colors: _.colors,
538
+ variant: b,
539
+ align: s || "center",
540
+ width: u,
541
+ height: l,
542
+ columnWidth: f,
543
+ maxWidth: p,
544
+ color: m,
545
+ template: S,
546
+ columnsCount: C,
547
+ calculatedGap: T,
548
+ isVisible: v
549
+ }), [
550
+ _.base,
551
+ _.colors,
552
+ b,
553
+ s,
554
+ u,
555
+ l,
556
+ f,
557
+ p,
558
+ m,
559
+ S,
560
+ C,
561
+ T,
562
+ v
563
+ ]), D = e.useMemo(() => G(E.containerStyle, r), [E.containerStyle, r]);
564
+ return /* @__PURE__ */ o("div", {
565
+ ref: y,
566
+ "data-testid": "guide",
567
+ "aria-hidden": "true",
568
+ className: w(...E.classTokens.map((e) => K[e]), t),
569
+ "data-variant": i,
570
+ style: D,
571
+ ...g,
572
+ children: [v && /* @__PURE__ */ a("div", {
573
+ className: K.cols,
574
+ "data-variant": i,
575
+ children: !E.isLineVariant && Array.from({ length: E.columnsCount }, (e, t) => /* @__PURE__ */ a("div", {
576
+ className: K.col,
577
+ "data-column-index": t,
578
+ "data-variant": i
579
+ }, t))
580
+ }), h]
581
+ });
582
+ });
583
+ //#endregion
584
+ export { h as Config, q as Guide, u as createCSSVariables, l as mergeConfig };
585
+
586
+ //# sourceMappingURL=guide.mjs.map