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/styles.css CHANGED
@@ -1 +1 @@
1
- *,*:before,*:after{box-sizing:border-box;margin:0;padding:0}ul[role=list],ol[role=list]{list-style:none}body{min-height:100vh;text-rendering:optimizeSpeed;line-height:1.5}img,picture{max-width:100%;display:block}@media (prefers-reduced-motion: reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--bkb: 8px;--bkzi: 1;--bkzio: 2;--bk-transition-base: .18s ease;--bk-width-default: fit-content;--bk-height-default: fit-content;--bkwf: 100%;--bkhf: 100%;--bkxb: var(--bkb);--bkxw: var(--bk-width-default);--bkxh: var(--bk-height-default);--bkxcl: var(--bk-box-color-line-theme, hsla(300, 60%, 40%, .6));--bkxcf: var(--bk-box-color-flat-theme, hsla(260, 100%, 70%, .2));--bkxci: var(--bk-box-color-text-theme, hsla(300, 60%, 40%, .9));--bkkw: var(--bkwf);--bkkh: var(--bk-height-default);--bkkcl: var(--bk-stack-color-line-theme, hsla(330, 60%, 40%, .6));--bkkcf: var(--bk-stack-color-flat-theme, hsla(0, 100%, 70%, .2));--bkkci: var(--bk-stack-color-text-theme, hsla(330, 60%, 40%, .9));--bkbw: 100%;--bkbh: 100%;--bkrt: 0;--bkrh: 1px;--bkbcl: var(--bk-baseline-color-line-theme, hsla(240, 60%, 40%, .15));--bkbcf: var(--bk-baseline-color-flat-theme, hsla(230, 100%, 70%, .2));--bkgw: 100vw;--bkgh: 100vh;--bkgg: var(--bkb);--bkgj: center;--bkgt: auto;--bkgpb: 0;--bkgpi: 0;--bkgcl: var(--bk-guide-color-line-theme, hsla(240, 60%, 40%, .15));--bkgcp: var(--bk-guide-color-pattern-theme, hsla(230, 100%, 70%, .2));--bkgca: var(--bk-guide-color-auto-theme, hsla(200, 100%, 70%, .15));--bkgcf: var(--bk-guide-color-fixed-theme, hsla(200, 100%, 70%, .15));--bklw: var(--bk-width-default);--bklh: var(--bk-height-default);--bklcl: var(--bk-layout-color-line-theme, hsla(330, 60%, 40%, .6));--bklcf: var(--bk-layout-color-flat-theme, hsla(0, 100%, 70%, .2));--bklci: var(--bk-layout-color-text-theme, hsla(330, 60%, 40%, .9));--bklgtc: repeat(auto-fill, minmax(100px, 1fr));--bklgtr: auto;--bklg: 0;--bklcg: 0;--bklrg: 0;--bklji: stretch;--bklai: stretch;--bkljc: start;--bklac: start;--bkpw: var(--bk-width-default);--bkph: var(--bk-height-default);--bkpc: var(--bk-padder-color-theme, hsla(270, 60%, 40%, .6));--bksw: var(--bkwf);--bksh: var(--bkhf);--bkscl: var(--bk-spacer-color-line-theme, hsla(270, 60%, 40%, .6));--bkscf: var(--bk-spacer-color-flat-theme, hsla(230, 100%, 70%, .2));--bksct: var(--bk-spacer-color-text-theme, hsla(270, 60%, 40%, 1))}.guide{--bkgcl: var(--bk-guide-color-line-theme, hsla(240, 60%, 40%, .15));--bkgcp: var(--bk-guide-color-pattern-theme, hsla(230, 100%, 70%, .2));--bkgca: var(--bk-guide-color-auto-theme, hsla(200, 100%, 70%, .15));--bkgcf: var(--bk-guide-color-fixed-theme, hsla(200, 100%, 70%, .15))}.baseline{--bkbcl: var(--bk-baseline-color-line-theme, hsla(240, 60%, 40%, .15));--bkbcf: var(--bk-baseline-color-flat-theme, hsla(230, 100%, 70%, .2))}.box{--bkxcl: var(--bk-box-color-line-theme, hsla(300, 60%, 40%, .6));--bkxcf: var(--bk-box-color-flat-theme, hsla(260, 100%, 70%, .2));--bkxci: var(--bk-box-color-text-theme, hsla(300, 60%, 40%, .9))}.stack{--bkkcl: var(--bk-stack-color-line-theme, hsla(330, 60%, 40%, .6));--bkkcf: var(--bk-stack-color-flat-theme, hsla(0, 100%, 70%, .2));--bkkci: var(--bk-stack-color-text-theme, hsla(330, 60%, 40%, .9))}.layout{--bklcl: var(--bk-layout-color-line-theme, hsla(330, 60%, 40%, .6));--bklcf: var(--bk-layout-color-flat-theme, hsla(0, 100%, 70%, .2));--bklci: var(--bk-layout-color-text-theme, hsla(330, 60%, 40%, .9))}.box{position:relative;width:var(--bkxw);height:var(--bkxh)}.v:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bkxcl);pointer-events:none;z-index:var(--bkzi)}.gde{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;padding:var(--bkgpb) var(--bkgpi)}.line{left:-.5px}.cols{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;column-gap:var(--bkgg);grid-template-rows:1fr;grid-template-columns:var(--bkgt);justify-content:var(--bkgj);width:var(--bkwf);height:var(--bkhf);overflow:hidden}.col{min-width:0;width:var(--bkwf);height:var(--bkhf)}.col[data-variant=line]{width:1px;background-color:var(--bkgcl)}.col[data-variant=pattern]{background-color:var(--bkgcp)}.col[data-variant=auto]{background-color:var(--bkgca);overflow:hidden}.col[data-variant=fixed]{background-color:var(--bkgcf)}.ssr{box-sizing:border-box;display:grid;position:relative;z-index:1;pointer-events:none;min-height:100px}.pad{position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto 1fr auto;width:var(--bkpw, auto);height:var(--bkph, auto)}.v:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bkpc, var(--bk-padder-color-theme));pointer-events:none;z-index:var(--bkzi)}.spr{position:relative;box-sizing:border-box;width:var(--bksw, 100%);height:var(--bksh, auto);flex-shrink:0;display:block;margin:0;padding:0}.line:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bkscl, hsla(270, 60%, 40%, .6));z-index:calc(var(--bkzi, 1))}.flat{background-color:var(--bkscf, hsla(230, 100%, 70%, .2))}.stk{display:flex;position:relative;width:var(--bkkw);height:var(--bkkh)}.stk .line:after{border:none}.v:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bkkcl, hsla(330, 60%, 40%, .6));pointer-events:none;z-index:var(--bkzio, 2)}.flat{background-color:var(--bkkcf, hsla(0, 100%, 70%, .2))}.lay{display:grid;position:relative;box-sizing:border-box;width:var(--bklw, var(--bk-width-default, auto));height:var(--bklh, var(--bk-height-default, auto));grid-template-columns:var( --bklgtc, repeat(auto-fill, minmax(100px, 1fr)) );grid-template-rows:var(--bklgtr, auto);gap:var(--bklg, 0);column-gap:var(--bklcg, 0);row-gap:var(--bklrg, 0);justify-items:var(--bklji, stretch);align-items:var(--bklai, stretch);justify-content:var(--bkljc, start);align-content:var(--bklac, start)}.lay .line:after,.stk .line:after{border:none}.v:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bklcl, var(--bk-layout-color-line-theme, hsla(330, 60%, 40%, .6)));pointer-events:none;z-index:var(--bkzio, 2)}.bas{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:var(--bkbw);height:var(--bkbh);overflow:hidden}.row{left:0;right:0;position:absolute;top:var(--bkrt);height:var(--bkrh);background-color:var(--bkbc)}.ssr{box-sizing:border-box;display:grid;position:relative;z-index:1;pointer-events:none}.v{opacity:1;visibility:visible;transition:opacity var(--bk-transition-base),visibility 0ms linear}.h{opacity:0;visibility:hidden;transition:opacity var(--bk-transition-base),visibility 0ms linear .18s}:root{--bk-color-black-primary: 0, 0%, 10%;--bk-color-black-secondary: 0, 10%, 30%;--bk-color-white-primary: 0, 100%, 90%;--bk-color-white-secondary: 0, 0%, 90%;--bk-color-pink-primary: 300, 60%, 40%;--bk-color-pink-secondary: 260, 100%, 70%;--bk-color-purple-primary: 270, 60%, 40%;--bk-color-purple-secondary: 230, 100%, 70%;--bk-color-blue-primary: 240, 60%, 40%;--bk-color-blue-secondary: 200, 100%, 70%;--bk-color-cyan-primary: 200, 60%, 40%;--bk-color-cyan-secondary: 160, 100%, 70%;--bk-color-green-primary: 160, 60%, 40%;--bk-color-green-secondary: 110, 100%, 70%;--bk-color-yellow-primary: 30, 60%, 40%;--bk-color-yellow-secondary: 70, 100%, 70%;--bk-color-orange-primary: 10, 60%, 40%;--bk-color-orange-secondary: 30, 100%, 70%;--bk-color-red-primary: 330, 60%, 40%;--bk-color-red-secondary: 0, 100%, 70%;--bk-guide-color-line-theme: hsla(var(--bk-color-blue-primary), .15);--bk-guide-color-pattern-theme: hsla(var(--bk-color-purple-secondary), .2);--bk-guide-color-auto-theme: hsla(var(--bk-color-blue-secondary), .15);--bk-guide-color-fixed-theme: hsla(var(--bk-color-blue-secondary), .15);--bk-baseline-color-line-theme: hsla(var(--bk-color-blue-primary), .15);--bk-baseline-color-flat-theme: hsla(var(--bk-color-purple-secondary), .2);--bk-spacer-color-line-theme: hsla(var(--bk-color-purple-primary), .6);--bk-spacer-color-flat-theme: hsla(var(--bk-color-purple-secondary), .2);--bk-spacer-color-text-theme: hsla(var(--bk-color-purple-primary), 1);--bk-box-color-line-theme: hsla(var(--bk-color-pink-primary), .6);--bk-box-color-flat-theme: hsla(var(--bk-color-pink-secondary), .2);--bk-box-color-text-theme: hsla(var(--bk-color-pink-primary), .9);--bk-stack-color-line-theme: hsla(var(--bk-color-red-primary), .6);--bk-stack-color-flat-theme: hsla(var(--bk-color-red-secondary), .2);--bk-stack-color-text-theme: hsla(var(--bk-color-red-primary), .9);--bk-layout-color-line-theme: hsla(var(--bk-color-red-primary), .6);--bk-layout-color-flat-theme: hsla(var(--bk-color-red-secondary), .2);--bk-layout-color-text-theme: hsla(var(--bk-color-red-primary), .9);--bk-padder-color-theme: hsla(var(--bk-color-purple-primary), .6)}@media (prefers-color-scheme: dark){:root{--bk-color-black-primary: 0, 10%, 30%;--bk-color-black-secondary: 0, 0%, 10%;--bk-color-white-primary: 0, 0%, 90%;--bk-color-white-secondary: 0, 100%, 90%;--bk-color-pink-primary: 260, 100%, 70%;--bk-color-pink-secondary: 300, 60%, 40%;--bk-color-purple-primary: 230, 100%, 70%;--bk-color-purple-secondary: 270, 60%, 40%;--bk-color-blue-primary: 200, 100%, 70%;--bk-color-blue-secondary: 240, 60%, 40%;--bk-color-cyan-primary: 160, 100%, 70%;--bk-color-cyan-secondary: 200, 60%, 40%;--bk-color-green-primary: 110, 100%, 70%;--bk-color-green-secondary: 160, 60%, 40%;--bk-color-yellow-primary: 70, 100%, 70%;--bk-color-yellow-secondary: 30, 60%, 40%;--bk-color-orange-primary: 30, 100%, 70%;--bk-color-orange-secondary: 10, 60%, 40%;--bk-color-red-primary: 0, 100%, 70%;--bk-color-red-secondary: 330, 60%, 40%;--bk-baseline-color-line-theme: hsla(var(--bk-color-white-primary), .1);--bk-baseline-color-flat-theme: hsla(var(--bk-color-white-secondary), .2);--bk-box-color-line-theme: hsla(var(--bk-color-pink-primary), .6);--bk-box-color-flat-theme: hsla(var(--bk-color-pink-secondary), .3);--bk-box-color-text-theme: hsla(var(--bk-color-pink-primary), .9);--bk-guide-color-line-theme: hsla(var(--bk-color-white-primary), .1);--bk-guide-color-pattern-theme: hsla(var(--bk-color-purple-secondary), .25);--bk-guide-color-auto-theme: hsla(var(--bk-color-blue-secondary), .2);--bk-guide-color-fixed-theme: hsla(var(--bk-color-blue-secondary), .2);--bk-stack-color-line-theme: hsla(var(--bk-color-red-primary), .6);--bk-stack-color-flat-theme: hsla(var(--bk-color-red-secondary), .3);--bk-stack-color-text-theme: hsla(var(--bk-color-red-primary), .9);--bk-layout-color-line-theme: hsla(var(--bk-color-red-primary), .6);--bk-layout-color-flat-theme: hsla(var(--bk-color-red-secondary), .3);--bk-layout-color-text-theme: hsla(var(--bk-color-red-primary), .9);--bk-spacer-color-line-theme: hsla(var(--bk-color-purple-primary), .7);--bk-spacer-color-flat-theme: hsla(var(--bk-color-purple-secondary), .3);--bk-spacer-color-text-theme: hsla(var(--bk-color-purple-primary), 1)}}.spr_zbcF6{position:relative;box-sizing:border-box;width:var(--bksw, 100%);height:var(--bksh, auto);flex-shrink:0;display:block;margin:0;padding:0}.line_qHW69:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bkscl, hsla(270, 60%, 40%, .6));z-index:calc(var(--bkzi, 1))}.flat_gqixr{background-color:var(--bkscf, hsla(230, 100%, 70%, .2))}.pad_w2-sL{position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto 1fr auto;width:var(--bkpw, auto);height:var(--bkph, auto)}.lay_Ew8za .line_ESlzk:after,.stk_7SJoE .line_ESlzk:after{border:none}.v_lhGBy:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bkpc, var(--bk-padder-color-theme));pointer-events:none;z-index:var(--bkzi)}.lay_5cMu5{display:grid;position:relative;box-sizing:border-box;width:var(--bklw, var(--bk-width-default, auto));height:var(--bklh, var(--bk-height-default, auto));grid-template-columns:var( --bklgtc, repeat(auto-fill, minmax(100px, 1fr)) );grid-template-rows:var(--bklgtr, auto);gap:var(--bklg, 0);column-gap:var(--bklcg, 0);row-gap:var(--bklrg, 0);justify-items:var(--bklji, stretch);align-items:var(--bklai, stretch);justify-content:var(--bkljc, start);align-content:var(--bklac, start)}.lay_5cMu5 .line_j2f8-:after,.stk_3Spwo .line_j2f8-:after{border:none}.v_dprVE:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bklcl, var(--bk-layout-color-line-theme, hsla(330, 60%, 40%, .6)));pointer-events:none;z-index:var(--bkzio, 2)}.box_rDCRX{position:relative;width:var(--bkxw);height:var(--bkxh)}.v_0MMHD:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bkxcl);pointer-events:none;z-index:var(--bkzi)}.stk_l-58l{display:flex;position:relative;width:var(--bkkw);height:var(--bkkh)}.stk_l-58l .line_THMgb:after{border:none}.v_-k3qw:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--bkkcl, hsla(330, 60%, 40%, .6));pointer-events:none;z-index:var(--bkzio, 2)}.flat_j15hF{background-color:var(--bkkcf, hsla(0, 100%, 70%, .2))}.gde_-Naxo{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;padding:var(--bkgpb) var(--bkgpi)}.line_-VS-e{left:-.5px}.cols_8lD6D{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;column-gap:var(--bkgg);grid-template-rows:1fr;grid-template-columns:var(--bkgt);justify-content:var(--bkgj);width:var(--bkwf);height:var(--bkhf);overflow:hidden}.col_rlbsL{min-width:0;width:var(--bkwf);height:var(--bkhf)}.col_rlbsL[data-variant=line]{width:1px;background-color:var(--bkgcl)}.col_rlbsL[data-variant=pattern]{background-color:var(--bkgcp)}.col_rlbsL[data-variant=auto]{background-color:var(--bkgca);overflow:hidden}.col_rlbsL[data-variant=fixed]{background-color:var(--bkgcf)}.ssr_VGvpO{box-sizing:border-box;display:grid;position:relative;z-index:1;pointer-events:none;min-height:100px}.bas_e-SXr{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:var(--bkbw);height:var(--bkbh);overflow:hidden}.row_q-FZb{left:0;right:0;position:absolute;top:var(--bkrt);height:var(--bkrh);background-color:var(--bkbc)}.ssr_W1N5g{box-sizing:border-box;display:grid;position:relative;z-index:1;pointer-events:none}
1
+ :root{--bk-base:8px;--bk-zi:1;--bk-zio:2;--bk-transition-base:.18s ease;--bk-width-default:fit-content;--bk-height-default:fit-content;--bk-wf:100%;--bk-hf:100%;--bkbx-b:var(--bk-base);--bkbx-w:var(--bk-width-default);--bkbx-h:var(--bk-height-default);--bkbx-cl:var(--bk-box-color-line-theme,#a329a399);--bkbx-cf:var(--bk-box-color-flat-theme,#96f3);--bkbx-ct:var(--bk-box-color-text-theme,#a329a3e6);--bkbl-w:100%;--bkbl-h:100%;--bkbl-rt:0;--bkbl-rh:1px;--bkbl-cl:var(--bk-baseline-color-line-theme,#2929a326);--bkbl-cf:var(--bk-baseline-color-flat-theme,#667fff33);--bkgd-w:100vw;--bkgd-h:100vh;--bkgd-g:var(--bk-base);--bkgd-j:center;--bkgd-t:auto;--bkgd-pb:0;--bkgd-pi:0;--bkgd-cl:var(--bk-guide-color-line-theme,#2929a326);--bkgd-cp:var(--bk-guide-color-pattern-theme,#667fff33);--bkgd-ca:var(--bk-guide-color-auto-theme,#66ccff26);--bkgd-cf:var(--bk-guide-color-fixed-theme,#66ccff26);--bkpd-w:var(--bk-width-default);--bkpd-h:var(--bk-height-default);--bkpd-c:var(--bk-padder-color-theme,#6629a399);--bksp-w:var(--bk-wf);--bksp-h:var(--bk-hf);--bksp-cl:var(--bk-spacer-color-line-theme,#6629a399);--bksp-cf:var(--bk-spacer-color-flat-theme,#667fff33);--bksp-ct:var(--bk-spacer-color-text-theme,#6629a3)}.bas_4Emvv{pointer-events:none;width:var(--bkbl-w);height:var(--bkbl-h);contain:layout style paint;position:absolute;inset:0;overflow:hidden}.v_lNfeX{opacity:1;visibility:visible;transition:opacity var(--bk-transition-base), visibility 0s linear}.h_PbNDU{opacity:0;visibility:hidden;transition:opacity var(--bk-transition-base), visibility 0s linear .18s}.row_J1Wva{left:0;right:0;top:var(--bkbl-rt);height:var(--bkbl-rh);background-color:var(--bkbl-c);position:absolute}.ssr_PQAP-{box-sizing:border-box;z-index:1;pointer-events:none}.gde_4PKz3{box-sizing:border-box;width:var(--bkgd-w,100%);height:var(--bkgd-h,100%);max-width:var(--bkgd-mw,none);pointer-events:none;padding:var(--bkgd-pb,0) var(--bkgd-pi,0);margin-inline:auto;position:absolute;inset:0}.v_yAvN0{opacity:1;visibility:visible;transition:opacity var(--bk-transition-base), visibility 0s linear}.h_XcWcy{opacity:0;visibility:hidden;transition:opacity var(--bk-transition-base), visibility 0s linear .18s}.line_UaLjW{left:-.5px}.cols_ibtT4{column-gap:var(--bkgd-g);grid-template-rows:1fr;grid-template-columns:var(--bkgd-t);justify-content:var(--bkgd-j);width:var(--bk-wf);height:var(--bk-hf);contain:layout style paint;display:grid;position:absolute;inset:0;overflow:hidden}.col_QPSDI{min-width:0;width:var(--bk-wf);height:var(--bk-hf)}.col_QPSDI[data-variant=line]{background-color:var(--bkgd-cl);width:1px}.cols_ibtT4[data-variant=line]{background-image:repeating-linear-gradient(to right, var(--bkgd-line-color,var(--bkgd-cl)) 0 1px, transparent 1px var(--bkgd-line-period,1px));display:block}.col_QPSDI[data-variant=pattern]{background-color:var(--bkgd-cp)}.col_QPSDI[data-variant=auto]{background-color:var(--bkgd-ca);overflow:hidden}.col_QPSDI[data-variant=fixed]{background-color:var(--bkgd-cf)}.ssr_4UN4k{box-sizing:border-box;z-index:1;pointer-events:none}.spr_syfhf{box-sizing:border-box;width:var(--bksp-w,100%);height:var(--bksp-h,auto);flex-shrink:0;margin:0;padding:0;display:block;position:relative}.line_nzGsp:after{content:"";border:1px solid var(--bksp-cl,#6629a399);z-index:calc(var(--bk-zi,1));position:absolute;inset:0}.flat_XJWHt{background-color:var(--bksp-cf,#667fff33)}.indicator_inw1x{color:var(--bksp-ct,#6629a3)}.pad_NizuS{width:var(--bkpd-w,auto);height:var(--bkpd-h,auto);text-box-trim:trim-both;text-box-edge:ex alphabetic;grid-template-rows:auto 1fr auto;grid-template-columns:auto 1fr auto;display:grid;position:relative}.content_xFX0U{text-box-trim:trim-both;text-box-edge:ex alphabetic}.v_dowAz:after{content:"";border:1px solid var(--bkpd-c,var(--bk-padder-color-theme));pointer-events:none;z-index:var(--bk-zi);position:absolute;inset:0}.box_sPqFs{width:var(--bkbx-w);height:var(--bkbx-h);text-box-trim:trim-both;text-box-edge:ex alphabetic;position:relative}.v_ZrZ5j:after{content:"";border:1px solid var(--bkbx-cl);pointer-events:none;z-index:var(--bk-zi);position:absolute;inset:0}
@@ -56,12 +56,4 @@
56
56
  --bk-guide-color-pattern-theme: hsla(var(--bk-color-purple-secondary), 0.25);
57
57
  --bk-guide-color-auto-theme: hsla(var(--bk-color-blue-secondary), 0.2);
58
58
  --bk-guide-color-fixed-theme: hsla(var(--bk-color-blue-secondary), 0.2);
59
-
60
- --bk-stack-color-line-theme: hsla(var(--bk-color-red-primary), 0.6);
61
- --bk-stack-color-flat-theme: hsla(var(--bk-color-red-secondary), 0.3);
62
- --bk-stack-color-text-theme: hsla(var(--bk-color-red-primary), 0.9);
63
-
64
- --bk-layout-color-line-theme: hsla(var(--bk-color-red-primary), 0.6);
65
- --bk-layout-color-flat-theme: hsla(var(--bk-color-red-secondary), 0.3);
66
- --bk-layout-color-text-theme: hsla(var(--bk-color-red-primary), 0.9);
67
59
  }
@@ -67,16 +67,6 @@
67
67
  --bk-box-color-flat-theme: hsla(var(--bk-color-pink-secondary), 0.2);
68
68
  --bk-box-color-text-theme: hsla(var(--bk-color-pink-primary), 0.9);
69
69
 
70
- /* Stack Component Theme */
71
- --bk-stack-color-line-theme: hsla(var(--bk-color-red-primary), 0.6);
72
- --bk-stack-color-flat-theme: hsla(var(--bk-color-red-secondary), 0.2);
73
- --bk-stack-color-text-theme: hsla(var(--bk-color-red-primary), 0.9);
74
-
75
- /* Layout Component Theme */
76
- --bk-layout-color-line-theme: hsla(var(--bk-color-red-primary), 0.6);
77
- --bk-layout-color-flat-theme: hsla(var(--bk-color-red-secondary), 0.2);
78
- --bk-layout-color-text-theme: hsla(var(--bk-color-red-primary), 0.9);
79
-
80
70
  /* Padder Component Theme */
81
71
  --bk-padder-color-theme: hsla(var(--bk-color-purple-primary), 0.6);
82
72
  }
@@ -7,7 +7,7 @@
7
7
  * To create a custom theme:
8
8
  * 1. Copy this file
9
9
  * 2. Fill in your custom values
10
- * 3. Import it in your application after the core styles
10
+ * 3. Import it in your application after the component styles
11
11
  */
12
12
 
13
13
  :root {
@@ -67,16 +67,6 @@
67
67
  --bk-box-color-flat-theme: ;
68
68
  --bk-box-color-text-theme: ;
69
69
 
70
- /* Stack Component Theme */
71
- --bk-stack-color-line-theme: ;
72
- --bk-stack-color-flat-theme: ;
73
- --bk-stack-color-text-theme: ;
74
-
75
- /* Layout Component Theme */
76
- --bk-layout-color-line-theme: ;
77
- --bk-layout-color-flat-theme: ;
78
- --bk-layout-color-text-theme: ;
79
-
80
70
  /* Padder Component Theme */
81
71
  --bk-padder-color-theme: ;
82
72
  }
package/dist/theme.css CHANGED
@@ -66,16 +66,6 @@
66
66
  --bk-box-color-flat-theme: hsla(var(--bk-color-pink-secondary), 0.2);
67
67
  --bk-box-color-text-theme: hsla(var(--bk-color-pink-primary), 0.9);
68
68
 
69
- /* Stack Component Theme */
70
- --bk-stack-color-line-theme: hsla(var(--bk-color-red-primary), 0.6);
71
- --bk-stack-color-flat-theme: hsla(var(--bk-color-red-secondary), 0.2);
72
- --bk-stack-color-text-theme: hsla(var(--bk-color-red-primary), 0.9);
73
-
74
- /* Layout Component Theme */
75
- --bk-layout-color-line-theme: hsla(var(--bk-color-red-primary), 0.6);
76
- --bk-layout-color-flat-theme: hsla(var(--bk-color-red-secondary), 0.2);
77
- --bk-layout-color-text-theme: hsla(var(--bk-color-red-primary), 0.9);
78
-
79
69
  /* Padder Component Theme */
80
70
  --bk-padder-color-theme: hsla(var(--bk-color-purple-primary), 0.6);
81
71
  }
@@ -123,18 +113,13 @@
123
113
  --bk-box-color-text-theme: hsla(var(--bk-color-pink-primary), 0.9);
124
114
 
125
115
  --bk-guide-color-line-theme: hsla(var(--bk-color-white-primary), 0.1);
126
- --bk-guide-color-pattern-theme: hsla(var(--bk-color-purple-secondary), 0.25);
116
+ --bk-guide-color-pattern-theme: hsla(
117
+ var(--bk-color-purple-secondary),
118
+ 0.25
119
+ );
127
120
  --bk-guide-color-auto-theme: hsla(var(--bk-color-blue-secondary), 0.2);
128
121
  --bk-guide-color-fixed-theme: hsla(var(--bk-color-blue-secondary), 0.2);
129
122
 
130
- --bk-stack-color-line-theme: hsla(var(--bk-color-red-primary), 0.6);
131
- --bk-stack-color-flat-theme: hsla(var(--bk-color-red-secondary), 0.3);
132
- --bk-stack-color-text-theme: hsla(var(--bk-color-red-primary), 0.9);
133
-
134
- --bk-layout-color-line-theme: hsla(var(--bk-color-red-primary), 0.6);
135
- --bk-layout-color-flat-theme: hsla(var(--bk-color-red-secondary), 0.3);
136
- --bk-layout-color-text-theme: hsla(var(--bk-color-red-primary), 0.9);
137
-
138
123
  --bk-spacer-color-line-theme: hsla(var(--bk-color-purple-primary), 0.7);
139
124
  --bk-spacer-color-flat-theme: hsla(var(--bk-color-purple-secondary), 0.3);
140
125
  --bk-spacer-color-text-theme: hsla(var(--bk-color-purple-primary), 1);
package/package.json CHANGED
@@ -1,24 +1,52 @@
1
1
  {
2
2
  "scripts": {
3
- "build": "vite build && bun run build:type && bun run build:combine-css",
4
- "build:type": "tsc -p tsconfig.build.json",
5
- "build:combine-css": "node scripts/combine-css.js",
3
+ "build": "vite build && bun run build:guide && bun run build:remix && bun run emit:declarations && bun run bundle:declarations && bun run build:css && bun run verify:artifacts",
4
+ "build:guide": "vite build --config vite.guide.config.ts",
5
+ "build:remix": "vite build --config vite.remix.config.ts && vite build --config vite.remix-server.config.ts",
6
+ "emit:declarations": "tsc -p tsconfig.build.json",
7
+ "bundle:declarations": "rollup -c rollup.declarations.config.mjs",
8
+ "build:css": "node scripts/combine-css.js",
9
+ "verify:artifacts": "node scripts/verify-artifacts.js",
6
10
  "changeset": "changeset",
7
- "dev": "vite",
8
- "format": "prettier --write \"src/**/*.{ts,tsx,css}\"",
9
- "lint": "eslint src --fix",
10
- "prepare": "bun run build && bun run build:type",
11
- "prepublishOnly": "bun run build && bun run build:type",
11
+ "dev": "vite --config tests/browser/vite.config.ts",
12
+ "format": "prettier --write \"packages/**/*.{ts,tsx,css}\"",
13
+ "lint": "eslint packages --fix",
14
+ "lint:check": "eslint packages",
15
+ "prepack": "bun run build",
16
+ "prepublishOnly": "bun run build",
12
17
  "release": "changeset publish",
13
18
  "test": "vitest",
19
+ "test:browser": "playwright test",
20
+ "test:browser:repeat": "node scripts/repeat-browser-gate.js",
21
+ "test:integration:remix": "node scripts/test-remix-package.js",
22
+ "test:react-core": "vitest run --exclude \"tests/remix/**\"",
23
+ "test:remix": "vitest run tests/remix",
24
+ "test:unit": "vitest run",
14
25
  "test:coverage": "vitest run --coverage",
15
26
  "typecheck": "tsc --noEmit",
27
+ "verify:integration": "bun run typecheck && bun run lint:check && bun run test:react-core && bun run test:unit && bun run build && bun run test:integration:remix && bun run test:browser:repeat",
16
28
  "version": "changeset version"
17
29
  },
30
+ "packageManager": "bun@1.3.12",
18
31
  "peerDependencies": {
32
+ "remix": "3.0.0-rc.2",
19
33
  "react": "^19.0.0",
20
34
  "react-dom": "^19.0.0",
21
- "typescript": "^5.8.2"
35
+ "typescript": "^5.8.2 || ^6.0.0 || ^7.0.2"
36
+ },
37
+ "peerDependenciesMeta": {
38
+ "react": {
39
+ "optional": true
40
+ },
41
+ "react-dom": {
42
+ "optional": true
43
+ },
44
+ "remix": {
45
+ "optional": true
46
+ },
47
+ "typescript": {
48
+ "optional": true
49
+ }
22
50
  },
23
51
  "main": "dist/index.cjs",
24
52
  "engines": {
@@ -27,15 +55,12 @@
27
55
  "keywords": [
28
56
  "react",
29
57
  "grid",
30
- "layout",
31
58
  "typescript",
32
59
  "baseline",
33
60
  "guide",
34
61
  "box",
35
- "layout",
36
62
  "typography",
37
63
  "spacing",
38
- "stack",
39
64
  "padding",
40
65
  "debug",
41
66
  "dev-tool",
@@ -47,36 +72,45 @@
47
72
  "url": "git+https://github.com/dnvt/baseline-kit.git"
48
73
  },
49
74
  "devDependencies": {
50
- "@changesets/cli": "^2.28.1",
51
- "@eslint/js": "^9.21.0",
52
- "@testing-library/jest-dom": "^6.6.3",
53
- "@testing-library/react": "^16.2.0",
54
- "@types/node": "^22.13.9",
55
- "@types/react": "^19.0.10",
56
- "@types/react-dom": "^19.0.4",
57
- "@typescript-eslint/eslint-plugin": "^8.26.0",
58
- "@typescript-eslint/parser": "^8.26.0",
59
- "@vitejs/plugin-react-swc": "^3.8.0",
60
- "@vitest/coverage-v8": "^3.0.8",
61
- "autoprefixer": "^10.4.20",
62
- "cssnano": "^7.0.6",
63
- "eslint": "^9.0.0",
64
- "eslint-config-prettier": "^10.1.1",
65
- "eslint-plugin-prettier": "^5.2.3",
66
- "eslint-plugin-react": "^7.37.4",
67
- "eslint-plugin-react-hooks": "^5.2.0",
68
- "jsdom": "^26.0.0",
69
- "prettier": "^3.5.3",
70
- "rollup": "^4.34.9",
71
- "rollup-plugin-dts": "^6.1.1",
72
- "rollup-plugin-visualizer": "^5.14.0",
73
- "vite": "6.2.1",
74
- "vite-plugin-static-copy": "^2.3.0",
75
- "vitest": "3.0.8"
75
+ "@changesets/cli": "^3.0.3",
76
+ "@testing-library/jest-dom": "^7.0.1",
77
+ "@testing-library/react": "^16.3.3",
78
+ "@typescript/typescript6": "^6.0.2",
79
+ "@playwright/test": "1.63.0",
80
+ "@types/node": "^22.20.3",
81
+ "@types/react": "^19.3.0",
82
+ "@types/react-dom": "^19.3.0",
83
+ "@typescript-eslint/eslint-plugin": "^8.70.0",
84
+ "@typescript-eslint/parser": "^8.70.0",
85
+ "@vitejs/plugin-react-swc": "^4.3.3",
86
+ "@vitest/coverage-v8": "^5.0.1",
87
+ "eslint": "^10.10.0",
88
+ "eslint-plugin-prettier": "^5.5.6",
89
+ "eslint-plugin-react": "^7.37.5",
90
+ "eslint-plugin-react-hooks": "^7.1.1",
91
+ "jsdom": "^30.0.1",
92
+ "prettier": "^3.9.7",
93
+ "react": "^19.3.0",
94
+ "react-dom": "^19.3.0",
95
+ "remix": "3.0.0-rc.2",
96
+ "rollup": "^4.63.3",
97
+ "rollup-plugin-dts": "^6.5.1",
98
+ "rollup-plugin-visualizer": "^7.1.1",
99
+ "typescript": "^7.0.2",
100
+ "vite": "^8.3.0",
101
+ "vite-plugin-static-copy": "^4.1.1",
102
+ "vitest": "^5.0.1"
76
103
  },
77
104
  "name": "baseline-kit",
78
- "version": "3.0.2",
105
+ "version": "5.1.0",
79
106
  "type": "module",
107
+ "workspaces": [
108
+ ".",
109
+ "packages/*"
110
+ ],
111
+ "overrides": {
112
+ "esbuild": "0.28.2"
113
+ },
80
114
  "homepage": "https://github.com/dnvt/baseline-kit#readme",
81
115
  "types": "dist/index.d.ts",
82
116
  "exports": {
@@ -86,11 +120,58 @@
86
120
  "require": "./dist/index.cjs",
87
121
  "default": "./dist/index.mjs"
88
122
  },
123
+ "./guide": {
124
+ "types": "./dist/guide.d.ts",
125
+ "import": "./dist/guide.mjs",
126
+ "require": "./dist/guide.cjs",
127
+ "default": "./dist/guide.mjs"
128
+ },
129
+ "./core": {
130
+ "types": "./dist/core.d.ts",
131
+ "import": "./dist/core.mjs",
132
+ "require": "./dist/core.cjs",
133
+ "default": "./dist/core.mjs"
134
+ },
135
+ "./remix": {
136
+ "types": "./dist/remix.d.ts",
137
+ "import": "./dist/remix.mjs",
138
+ "default": "./dist/remix.mjs"
139
+ },
140
+ "./remix/server": {
141
+ "types": "./dist/remix-server.d.ts",
142
+ "node": "./dist/remix-server.mjs",
143
+ "default": "./dist/remix-server.mjs"
144
+ },
145
+ "./styles/remix": {
146
+ "import": "./dist/remix.css",
147
+ "require": "./dist/remix.css",
148
+ "default": "./dist/remix.css"
149
+ },
89
150
  "./styles": {
90
151
  "import": "./dist/styles.css",
91
152
  "require": "./dist/styles.css",
92
153
  "default": "./dist/styles.css"
93
154
  },
155
+ "./styles/guide": {
156
+ "import": "./dist/guide.css",
157
+ "require": "./dist/guide.css",
158
+ "default": "./dist/guide.css"
159
+ },
160
+ "./styles/full": {
161
+ "import": "./dist/baseline-kit.css",
162
+ "require": "./dist/baseline-kit.css",
163
+ "default": "./dist/baseline-kit.css"
164
+ },
165
+ "./styles/reset": {
166
+ "import": "./dist/reset.css",
167
+ "require": "./dist/reset.css",
168
+ "default": "./dist/reset.css"
169
+ },
170
+ "./reset": {
171
+ "import": "./dist/reset.css",
172
+ "require": "./dist/reset.css",
173
+ "default": "./dist/reset.css"
174
+ },
94
175
  "./theme": {
95
176
  "import": "./dist/theme.css",
96
177
  "require": "./dist/theme.css",
@@ -117,6 +198,8 @@
117
198
  "default": "./dist/baseline-kit.css"
118
199
  },
119
200
  "./dist/styles.css": "./dist/styles.css",
201
+ "./dist/guide.css": "./dist/guide.css",
202
+ "./dist/reset.css": "./dist/reset.css",
120
203
  "./dist/theme.css": "./dist/theme.css",
121
204
  "./dist/theme/default.css": "./dist/theme/default.css",
122
205
  "./dist/theme/dark.css": "./dist/theme/dark.css",
@@ -125,13 +208,23 @@
125
208
  "./package.json": "./package.json"
126
209
  },
127
210
  "files": [
128
- "dist",
211
+ "dist/*.mjs",
212
+ "dist/*.cjs",
213
+ "dist/*.js",
214
+ "dist/*.map",
215
+ "dist/*.d.ts",
216
+ "dist/*.css",
217
+ "dist/theme",
129
218
  "LICENSE",
130
- "README.md"
219
+ "README.md",
220
+ "CHANGELOG.md"
131
221
  ],
132
222
  "style": "dist/styles.css",
133
223
  "sideEffects": [
134
224
  "dist/styles.css",
225
+ "dist/remix.css",
226
+ "dist/guide.css",
227
+ "dist/reset.css",
135
228
  "dist/theme.css",
136
229
  "dist/theme/default.css",
137
230
  "dist/theme/dark.css",
@@ -147,9 +240,5 @@
147
240
  "access": "public"
148
241
  },
149
242
  "author": "Francois Denavaut",
150
- "description": "Baseline Kit is a lightweight development tool for visualizing and debugging grid systems and spacing in React applications. It provides configurable overlays for both column-based and baseline grids, flexible spacing components, and theme-aware configuration—all optimized for performance and built with TypeScript.",
151
- "dependencies": {
152
- "esbuild": "^0.25.0",
153
- "postcss-preset-env": "^10.1.5"
154
- }
243
+ "description": "React 19 baseline and column-grid overlays, spacing primitives, themeable debug visuals, and a React-free Remix 3 adapter."
155
244
  }