@maelstrom-futurism/core 0.9.0 → 0.9.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Box.d.ts","sourceRoot":"","sources":["../../lib/components/Box.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAmB,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE7D,MAAM,MAAM,QAAQ,GAAG;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB,GAAG,UAAU,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AAEhD,QAAA,MAAM,GAAG,GAAI,OAAO,QAAQ,KAAG,SAe9B,CAAC;AAEF,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"Box.d.ts","sourceRoot":"","sources":["../../lib/components/Box.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElD,OAAO,EAAmB,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE7D,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,GAAG,UAAU,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AAEhD,QAAA,MAAM,GAAG,GAAI,OAAO,QAAQ,KAAG,SAa9B,CAAC;AAEF,eAAe,GAAG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ContentBox.d.ts","sourceRoot":"","sources":["../../lib/components/ContentBox.tsx"],"names":[],"mappings":"AAEA,OAAY,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,KAAK,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE7E,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAA;AA0CD,QAAA,MAAM,UAAU,GAAI,oDAMjB,eAAe,KAAG,SAUpB,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ContentBox.d.ts","sourceRoot":"","sources":["../../lib/components/ContentBox.tsx"],"names":[],"mappings":"AAEA,OAAY,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,KAAK,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE7E,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAyCF,QAAA,MAAM,UAAU,GAAI,oDAMjB,eAAe,KAAG,SASpB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Pill.d.ts","sourceRoot":"","sources":["../../lib/components/Pill.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAqB,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGrE,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;AAE7E,MAAM,WAAW,SAAU,SAAQ,cAAc,CAAC,eAAe,CAAC;IAC9D,GAAG,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;IAC5C,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;CACvB;AAaD,QAAA,MAAM,IAAI,GAAI,0CAA2D,SAAS,KAAG,SA+BpF,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Pill.d.ts","sourceRoot":"","sources":["../../lib/components/Pill.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAqB,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;AAE7E,MAAM,WAAW,SAAU,SAAQ,cAAc,CAAC,eAAe,CAAC;IAChE,GAAG,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;IAC5C,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;CACrB;AAaD,QAAA,MAAM,IAAI,GAAI,0CAA2D,SAAS,KAAG,SA8BpF,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../lib/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,SAAS;IACjB,GAAG,IAAA;IACH,MAAM,IAAA;IACN,IAAI,IAAA;CACP;AAED,oBAAY,iBAAiB;IACzB,KAAK,IAAA;IACL,SAAS,IAAA;IACT,IAAI,IAAA;IACJ,SAAS,IAAA;IACT,KAAK,IAAA;IACL,SAAS,IAAA;IACT,IAAI,IAAA;IACJ,SAAS,IAAA;CACZ"}
1
+ {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../lib/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,SAAS;IACnB,GAAG,IAAA;IACH,MAAM,IAAA;IACN,IAAI,IAAA;CACL;AAED,oBAAY,iBAAiB;IAC3B,KAAK,IAAA;IACL,SAAS,IAAA;IACT,IAAI,IAAA;IACJ,SAAS,IAAA;IACT,KAAK,IAAA;IACL,SAAS,IAAA;IACT,IAAI,IAAA;IACJ,SAAS,IAAA;CACV"}
package/dist/index.js CHANGED
@@ -1,28 +1,26 @@
1
- import{c as A,j as B,a as Q,G as E}from"./@emotion-DDqJX_w5.mjs";import{createContext as M,useContext as g}from"react";var I=/* @__PURE__ */(A=>(A[A.LOW=0]="LOW",A[A.MEDIUM=1]="MEDIUM",A[A.HIGH=2]="HIGH",A))(I||{}),C=/* @__PURE__ */(A=>(A[A.NORTH=0]="NORTH",A[A.NORTHEAST=1]="NORTHEAST",A[A.EAST=2]="EAST",A[A.SOUTHEAST=3]="SOUTHEAST",A[A.SOUTH=4]="SOUTH",A[A.SOUTHWEST=5]="SOUTHWEST",A[A.WEST=6]="WEST",A[A.NORTHWEST=7]="NORTHWEST",A))(C||{});const w={base:"16px",sm:"0.707em",normal:"1em",md:"1.414em",lg:"2em",xl:"2.827em",xxl:"4em"},Y=["0","4","8","16","24","32","40","48","64"],F={xs:"0px",sm:"576px",md:"992px",lg:"1200px"},U={bottom:"-1000",low:"-100",sunk:"-10",normal:"0",raised:"10",high:"100",top:"1000"},D={input:"8px",button:"16px",card:"24px",pill:"9999px"};class N{colors;sizes={...w};breakpoints={...F};space=[...Y];heights={...U};borderRadius=D.card;inputRadius=D.input;buttonRadius=D.button;pillRadius=D.pill;size(A){return this.sizes[A]}color=A=>this.colors[A];bp=A=>this.breakpoints[A];height=A=>this.heights[A];constructor(A){this.colors=A.colorSet}}const R={nordDark:{background:"#242933",borderMuted:"#303744",border:"#2e3440",content:"#2e3440",textColor:"#eceff4",linkColor:"#88c0d0",primary:"#5e81ac",secondary:"#81a1c1",alert:"#bf616a",warning:"#ebcb8b",success:"#a3be8c",info:"#5e81ac"},nordLight:{background:"#eceff4",borderMuted:"#303744",border:"#2e3440",content:"#eceff4",textColor:"#242933",linkColor:"#88c0d0",primary:"#5e81ac",secondary:"#81a1c1",alert:"#bf616a",warning:"#ebcb8b",success:"#a3be8c",info:"#5e81ac"}},G=(A,B)=>{const Q=B?.colors?{...R[A],...B.colors}:R[A],E=new N({colorSet:Q});if(B?.radii){const{input:A,button:Q,card:M,pill:g}=B.radii;void 0!==A&&(E.inputRadius=A),void 0!==Q&&(E.buttonRadius=Q),void 0!==M&&(E.borderRadius=M),void 0!==g&&(E.pillRadius=g)}return B?.sizes&&(E.sizes={...w,...B.sizes}),E},j="cubic-bezier(.65, .05, .36, 1)",c=M(G("nordDark")),J=()=>g(c),z=({theme:M,children:g})=>{const I=M,C="#242933"===I.color("background"),w=C?"#d8dee9":"#3b4252",Y=C?"#3b4252":"#e5e9f0",F=C?"#434c5e":"#d8dee9",U=A`
1
+ import{c as A,j as B,a as Q,G as E}from"./@emotion-DDqJX_w5.mjs";import{createContext as M,useState as g,useEffect as I,useContext as C}from"react";var w=/* @__PURE__ */(A=>(A[A.LOW=0]="LOW",A[A.MEDIUM=1]="MEDIUM",A[A.HIGH=2]="HIGH",A))(w||{}),Y=/* @__PURE__ */(A=>(A[A.NORTH=0]="NORTH",A[A.NORTHEAST=1]="NORTHEAST",A[A.EAST=2]="EAST",A[A.SOUTHEAST=3]="SOUTHEAST",A[A.SOUTH=4]="SOUTH",A[A.SOUTHWEST=5]="SOUTHWEST",A[A.WEST=6]="WEST",A[A.NORTHWEST=7]="NORTHWEST",A))(Y||{});const F={base:"16px",sm:"0.707em",normal:"1em",md:"1.414em",lg:"2em",xl:"2.827em",xxl:"4em"},U=["0","4","8","16","24","32","40","48","64"],D={xs:"0px",sm:"576px",md:"992px",lg:"1200px"},N={bottom:"-1000",low:"-100",sunk:"-10",normal:"0",raised:"10",high:"100",top:"1000"},R={input:"8px",button:"16px",card:"24px",pill:"9999px"},G={tight:"1.2",normal:"1.5",relaxed:"1.6"},j={tight:"-0.01em",normal:"0",wide:"0.04em",display:"0.06em"},c={thin:"1px",medium:"2px",thick:"3px"},J={sans:'"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif',display:'"Silkscreen", "Poppins", system-ui, sans-serif',mono:'"JetBrainsMono", ui-monospace, "SF Mono", Menlo, monospace'};class z{colors;sizes={...F};breakpoints={...D};space=[...U];heights={...N};borderRadius=R.card;inputRadius=R.input;buttonRadius=R.button;pillRadius=R.pill;durations={fast:"100ms",normal:"200ms",slow:"300ms",ripple:"1000ms"};lineHeights={...G};letterSpacings={...j};borderWidths={...c};fonts={...J};navbarHeight="60px";buttonSizes={xs:{padding:"2px 4px",fontSize:"12px"},sm:{padding:"5px 10px",fontSize:"14px"},md:{padding:"10px 20px",fontSize:"16px"},lg:{padding:"20px 30px",fontSize:"18px"},xl:{padding:"30px 40px",fontSize:"20px"}};customColors={};size(A){return this.sizes[A]}color=A=>this.colors[A];custom=A=>this.customColors[A]??"";bp=A=>this.breakpoints[A];height=A=>this.heights[A];constructor(A){this.colors=A.colorSet}}const T={nordDark:{background:"#242933",borderMuted:"#303744",border:"#2e3440",content:"#2e3440",surfaceHover:"#3b4252",surfacePress:"#434c5e",textColor:"#eceff4",linkColor:"#88c0d0",primary:"#5e81ac",secondary:"#81a1c1",accent:"#5e81ac",focus:"#5e81ac",active:"#5e81ac",alert:"#bf616a",warning:"#ebcb8b",success:"#a3be8c",info:"#5e81ac"},nordLight:{background:"#eceff4",borderMuted:"#303744",border:"#2e3440",content:"#eceff4",surfaceHover:"#e5e9f0",surfacePress:"#d8dee9",textColor:"#242933",linkColor:"#88c0d0",primary:"#5e81ac",secondary:"#81a1c1",accent:"#5e81ac",focus:"#5e81ac",active:"#5e81ac",alert:"#bf616a",warning:"#ebcb8b",success:"#a3be8c",info:"#5e81ac"}},h=(A,B)=>{const Q=B?.colors?{...T[A],...B.colors}:T[A],E=new z({colorSet:Q});if(B?.radii){const{input:A,button:Q,card:M,pill:g}=B.radii;void 0!==A&&(E.inputRadius=A),void 0!==Q&&(E.buttonRadius=Q),void 0!==M&&(E.borderRadius=M),void 0!==g&&(E.pillRadius=g)}if(B?.sizes&&(E.sizes={...F,...B.sizes}),B?.durations&&(E.durations={...E.durations,...B.durations}),B?.lineHeights&&(E.lineHeights={...E.lineHeights,...B.lineHeights}),B?.letterSpacings&&(E.letterSpacings={...E.letterSpacings,...B.letterSpacings}),B?.borderWidths&&(E.borderWidths={...E.borderWidths,...B.borderWidths}),B?.fonts&&(E.fonts={...E.fonts,...B.fonts}),void 0!==B?.components?.navbar?.height&&(E.navbarHeight=B.components.navbar.height),B?.components?.button?.sizes){const A=B.components.button.sizes;for(const B of["xs","sm","md","lg","xl"])A[B]&&(E.buttonSizes[B]={...E.buttonSizes[B],...A[B]})}return B?.customColors&&(E.customColors=B.customColors),E},i="cubic-bezier(.65, .05, .36, 1)",V=M(h("nordLight")),H=()=>C(V),k=({theme:M,darkTheme:C,colorScheme:w="auto",children:Y})=>{const[F,U]=g("light"),[D,N]=g(!1);I(()=>{if(!C)return void U("light");if("auto"!==w)return void U(w);const A=window.matchMedia("(prefers-color-scheme: dark)"),B=A=>N(A.matches);return A.addEventListener("change",B),U(A.matches?"dark":"light"),()=>A.removeEventListener("change",B)},[C,w]);const R="dark"===F?C:M,G=A`
2
2
  :root {
3
3
  /* Semantic colors */
4
- --mf-background: ${I.color("background")};
5
- --mf-content: ${I.color("content")};
6
- --mf-border: ${I.color("border")};
7
- --mf-border-muted: ${I.color("borderMuted")};
8
- --mf-text: ${I.color("textColor")};
9
- --mf-text-muted: ${I.color("textColor")}80;
10
- --mf-link: ${I.color("linkColor")};
11
- --mf-primary: ${I.color("primary")};
12
- --mf-secondary: ${I.color("secondary")};
13
- --mf-alert: ${I.color("alert")};
14
- --mf-warning: ${I.color("warning")};
15
- --mf-success: ${I.color("success")};
16
- --mf-info: ${I.color("info")};
4
+ --mf-background: ${R.color("background")};
5
+ --mf-content: ${R.color("content")};
6
+ --mf-border: ${R.color("border")};
7
+ --mf-border-muted: ${R.color("borderMuted")};
8
+ --mf-text: ${R.color("textColor")};
9
+ --mf-text-muted: ${R.color("textColor")}80;
10
+ --mf-link: ${R.color("linkColor")};
11
+ --mf-primary: ${R.color("primary")};
12
+ --mf-secondary: ${R.color("secondary")};
13
+ --mf-accent: ${R.color("accent")};
14
+ --mf-focus: ${R.color("focus")};
15
+ ${Object.entries(R.customColors).map(([A,B])=>`--mf-color-${A}: ${B};`).join("\n ")}
16
+ --mf-active: ${R.color("active")};
17
+ --mf-alert: ${R.color("alert")};
18
+ --mf-warning: ${R.color("warning")};
19
+ --mf-success: ${R.color("success")};
20
+ --mf-info: ${R.color("info")};
17
21
 
18
- /* Convenience surface / foreground scale */
19
- --mf-fg-1: ${I.color("textColor")};
20
- --mf-fg-2: ${w};
21
- --mf-fg-3: ${I.color("textColor")}99;
22
- --mf-bg-0: ${I.color("background")};
23
- --mf-bg-1: ${I.color("content")};
24
- --mf-bg-2: ${Y};
25
- --mf-bg-3: ${F};
22
+ --mf-surface-hover: ${R.color("surfaceHover")};
23
+ --mf-surface-press: ${R.color("surfacePress")};
26
24
 
27
25
  /* Raw Nord palette */
28
26
  --nord-polar-0: #2e3440;
@@ -43,51 +41,94 @@ import{c as A,j as B,a as Q,G as E}from"./@emotion-DDqJX_w5.mjs";import{createCo
43
41
  --nord-aurora-purple: #b48ead;
44
42
 
45
43
  /* Type families */
46
- --mf-font-sans: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
47
- --mf-font-display: "Silkscreen", "Poppins", system-ui, sans-serif;
48
- --mf-font-mono: "JetBrainsMono", ui-monospace, "SF Mono", Menlo, monospace;
44
+ --mf-font-sans: ${R.fonts.sans};
45
+ --mf-font-display: ${R.fonts.display};
46
+ --mf-font-mono: ${R.fonts.mono};
49
47
 
50
48
  /* Type scale */
51
- --mf-size-base: ${I.sizes.base};
52
- --mf-size-sm: ${I.sizes.sm};
53
- --mf-size-normal: ${I.sizes.normal};
54
- --mf-size-md: ${I.sizes.md};
55
- --mf-size-lg: ${I.sizes.lg};
56
- --mf-size-xl: ${I.sizes.xl};
57
- --mf-size-xxl: ${I.sizes.xxl};
49
+ --mf-size-base: ${R.sizes.base};
50
+ --mf-size-sm: ${R.sizes.sm};
51
+ --mf-size-normal: ${R.sizes.normal};
52
+ --mf-size-md: ${R.sizes.md};
53
+ --mf-size-lg: ${R.sizes.lg};
54
+ --mf-size-xl: ${R.sizes.xl};
55
+ --mf-size-xxl: ${R.sizes.xxl};
58
56
 
59
57
  /* Spacing scale */
60
- --mf-space-0: ${I.space[0]}px;
61
- --mf-space-1: ${I.space[1]}px;
62
- --mf-space-2: ${I.space[2]}px;
63
- --mf-space-3: ${I.space[3]}px;
64
- --mf-space-4: ${I.space[4]}px;
65
- --mf-space-5: ${I.space[5]}px;
66
- --mf-space-6: ${I.space[6]}px;
67
- --mf-space-7: ${I.space[7]}px;
68
- --mf-space-8: ${I.space[8]}px;
58
+ --mf-space-0: ${R.space[0]}px;
59
+ --mf-space-1: ${R.space[1]}px;
60
+ --mf-space-2: ${R.space[2]}px;
61
+ --mf-space-3: ${R.space[3]}px;
62
+ --mf-space-4: ${R.space[4]}px;
63
+ --mf-space-5: ${R.space[5]}px;
64
+ --mf-space-6: ${R.space[6]}px;
65
+ --mf-space-7: ${R.space[7]}px;
66
+ --mf-space-8: ${R.space[8]}px;
67
+
68
+ /* Component dimensions */
69
+ --mf-navbar-height: ${R.navbarHeight};
70
+ --mf-button-xs-padding: ${R.buttonSizes.xs.padding};
71
+ --mf-button-xs-font-size: ${R.buttonSizes.xs.fontSize};
72
+ --mf-button-sm-padding: ${R.buttonSizes.sm.padding};
73
+ --mf-button-sm-font-size: ${R.buttonSizes.sm.fontSize};
74
+ --mf-button-md-padding: ${R.buttonSizes.md.padding};
75
+ --mf-button-md-font-size: ${R.buttonSizes.md.fontSize};
76
+ --mf-button-lg-padding: ${R.buttonSizes.lg.padding};
77
+ --mf-button-lg-font-size: ${R.buttonSizes.lg.fontSize};
78
+ --mf-button-xl-padding: ${R.buttonSizes.xl.padding};
79
+ --mf-button-xl-font-size: ${R.buttonSizes.xl.fontSize};
80
+
81
+ /* Border widths */
82
+ --mf-border-width-thin: ${R.borderWidths.thin};
83
+ --mf-border-width-medium: ${R.borderWidths.medium};
84
+ --mf-border-width-thick: ${R.borderWidths.thick};
69
85
 
70
86
  /* Radii */
71
- --mf-radius-input: ${I.inputRadius};
72
- --mf-radius-button: ${I.buttonRadius};
73
- --mf-radius-card: ${I.borderRadius};
74
- --mf-radius-pill: ${I.pillRadius};
87
+ --mf-radius-input: ${R.inputRadius};
88
+ --mf-radius-button: ${R.buttonRadius};
89
+ --mf-radius-card: ${R.borderRadius};
90
+ --mf-radius-pill: ${R.pillRadius};
75
91
 
76
92
  /* Z-index scale */
77
- --mf-z-bottom: ${I.heights.bottom};
78
- --mf-z-low: ${I.heights.low};
79
- --mf-z-sunk: ${I.heights.sunk};
80
- --mf-z-normal: ${I.heights.normal};
81
- --mf-z-raised: ${I.heights.raised};
82
- --mf-z-high: ${I.heights.high};
83
- --mf-z-top: ${I.heights.top};
93
+ --mf-z-bottom: ${R.heights.bottom};
94
+ --mf-z-low: ${R.heights.low};
95
+ --mf-z-sunk: ${R.heights.sunk};
96
+ --mf-z-normal: ${R.heights.normal};
97
+ --mf-z-raised: ${R.heights.raised};
98
+ --mf-z-high: ${R.heights.high};
99
+ --mf-z-top: ${R.heights.top};
100
+
101
+ /* Line heights */
102
+ --mf-lh-tight: ${R.lineHeights.tight};
103
+ --mf-lh-normal: ${R.lineHeights.normal};
104
+ --mf-lh-relaxed: ${R.lineHeights.relaxed};
105
+
106
+ /* Letter spacings */
107
+ --mf-ls-tight: ${R.letterSpacings.tight};
108
+ --mf-ls-normal: ${R.letterSpacings.normal};
109
+ --mf-ls-wide: ${R.letterSpacings.wide};
110
+ --mf-ls-display: ${R.letterSpacings.display};
84
111
 
85
112
  /* Motion */
86
- --mf-ease: ${j};
87
- --mf-dur-fast: 100ms;
88
- --mf-dur-normal: 200ms;
89
- --mf-dur-slow: 300ms;
90
- --mf-dur-ripple: 1000ms;
113
+ --mf-ease: ${i};
114
+ --mf-dur-fast: ${R.durations.fast};
115
+ --mf-dur-normal: ${R.durations.normal};
116
+ --mf-dur-slow: ${R.durations.slow};
117
+ --mf-dur-ripple: ${R.durations.ripple};
118
+ }
119
+
120
+ @media (prefers-reduced-motion: reduce) {
121
+ :root {
122
+ --mf-dur-fast: 1ms;
123
+ --mf-dur-normal: 1ms;
124
+ --mf-dur-slow: 1ms;
125
+ --mf-dur-ripple: 1ms;
126
+ }
127
+ }
128
+
129
+ *:focus-visible {
130
+ outline: 2px solid var(--mf-focus);
131
+ outline-offset: 2px;
91
132
  }
92
133
 
93
134
  html {
@@ -144,27 +185,27 @@ import{c as A,j as B,a as Q,G as E}from"./@emotion-DDqJX_w5.mjs";import{createCo
144
185
  }
145
186
  body {
146
187
  margin: 0;
147
- color: ${I.color("textColor")};
148
- background-color: ${I.color("background")};
188
+ color: ${R.color("textColor")};
189
+ background-color: ${R.color("background")};
149
190
  font-family: Poppins;
150
- font-size: ${I.size("base")};
191
+ font-size: ${R.size("base")};
151
192
  font-weight: 400;
152
- line-height: 1.5;
193
+ line-height: var(--mf-lh-normal);
153
194
  }
154
195
 
155
196
  h1, h2, h3, h4, h5, h6 {
156
- margin: ${I.space[1]}px 0;
197
+ margin: ${R.space[1]}px 0;
157
198
  font-family: var(--mf-font-sans);
158
199
  font-weight: 500;
159
- line-height: 1.2;
160
- letter-spacing: -0.01em;
200
+ line-height: var(--mf-lh-tight);
201
+ letter-spacing: var(--mf-ls-tight);
161
202
  }
162
- h1 { font-size: ${I.sizes.xxl}; }
163
- h2 { font-size: ${I.sizes.xl}; }
164
- h3 { font-size: ${I.sizes.lg}; }
165
- h4 { font-size: ${I.sizes.md}; }
166
- h5 { font-size: ${I.sizes.normal}; text-transform: uppercase; letter-spacing: 0.06em; }
167
- h6 { font-size: ${I.sizes.sm}; text-transform: uppercase; letter-spacing: 0.08em; }
203
+ h1 { font-size: ${R.sizes.xxl}; }
204
+ h2 { font-size: ${R.sizes.xl}; }
205
+ h3 { font-size: ${R.sizes.lg}; }
206
+ h4 { font-size: ${R.sizes.md}; }
207
+ h5 { font-size: ${R.sizes.normal}; text-transform: uppercase; letter-spacing: var(--mf-ls-display); }
208
+ h6 { font-size: ${R.sizes.sm}; text-transform: uppercase; letter-spacing: var(--mf-ls-display); }
168
209
 
169
210
  p {
170
211
  margin: 0 0 16px;
@@ -172,9 +213,9 @@ import{c as A,j as B,a as Q,G as E}from"./@emotion-DDqJX_w5.mjs";import{createCo
172
213
  }
173
214
 
174
215
  a {
175
- color: ${I.color("linkColor")};
216
+ color: ${R.color("linkColor")};
176
217
  text-decoration: none;
177
- transition: color 100ms ${j};
218
+ transition: color var(--mf-dur-fast) ${i};
178
219
  }
179
220
  a:hover {
180
221
  text-decoration: underline;
@@ -187,6 +228,10 @@ import{c as A,j as B,a as Q,G as E}from"./@emotion-DDqJX_w5.mjs";import{createCo
187
228
  code {
188
229
  padding: 1px 6px;
189
230
  border-radius: 6px;
231
+
232
+ &.language-jsx {
233
+ padding: 0;
234
+ }
190
235
  }
191
236
 
192
237
  form {
@@ -196,7 +241,7 @@ import{c as A,j as B,a as Q,G as E}from"./@emotion-DDqJX_w5.mjs";import{createCo
196
241
  .mf-display, .mf-pixel {
197
242
  font-family: "Silkscreen", "Poppins", system-ui, sans-serif;
198
243
  font-weight: 400;
199
- letter-spacing: 0.04em;
244
+ letter-spacing: var(--mf-ls-wide);
200
245
  text-transform: uppercase;
201
246
  }
202
247
 
@@ -205,60 +250,59 @@ import{c as A,j as B,a as Q,G as E}from"./@emotion-DDqJX_w5.mjs";import{createCo
205
250
  }
206
251
 
207
252
  .mf-text-muted {
208
- color: ${I.color("textColor")}80;
253
+ color: ${R.color("textColor")}80;
209
254
  }
210
255
  `;/* @__PURE__ */
211
- return B(c.Provider,{value:I,children:[
212
- /* @__PURE__ */Q(E,{styles:U}),g]})},T={bg:"background",w:"width",h:"height",m:"margin",p:"padding"},h=B=>{const E=J(),M=(A=>{const B={};for(const[Q,E]of Object.entries(A))B[T[Q]||Q]=E;return B})(B),{css:g,children:I,...C}=B,w=A`
213
- width: ${M.width||"100%"};
214
- ${M.height&&`height: ${M.height};`}
215
- ${M.margin&&`margin: ${M.margin};`}
216
- ${M.background&&`background: ${M.background};`}
217
- ${M.border&&`border: ${M.border};`}
218
- border-radius: ${E.borderRadius};
256
+ return B(V.Provider,{value:R,children:[
257
+ /* @__PURE__ */Q(E,{styles:G}),Y]})},W={bg:"background",w:"width",h:"height",m:"margin",p:"padding"},S=B=>{const E=(A=>{const B={};for(const[Q,E]of Object.entries(A))B[Q in W?W[Q]:Q]=E;return B})(B),{css:M,children:g,...I}=B,C=A`
258
+ width: ${E.width||"100%"};
259
+ ${E.height&&`height: ${E.height};`}
260
+ ${E.margin&&`margin: ${E.margin};`}
261
+ ${E.background&&`background: ${E.background};`}
262
+ ${E.border&&`border: ${E.border};`}
263
+ border-radius: var(--mf-radius-card);
219
264
  `;/* @__PURE__ */
220
- return Q("div",{css:[w,g],...C,children:I})},V=({background:B,border:E,children:M,variant:g,...I})=>{const C=((B,Q,E,M)=>{if(Q||E)return A`
221
- background-color: ${Q||B.color("content")};
222
- border: ${E||B.color("secondary")};
223
- `;switch(M){case"alert":case"error":return A`
224
- background-color: ${B.color("alert")};
225
- border: solid 1px ${B.color("secondary")};
265
+ return Q("div",{css:[C,M],...I,children:g})},y=({background:B,border:E,children:M,variant:g,...I})=>{const C=((B,Q,E)=>{if(B||Q)return A`
266
+ background-color: ${B||"var(--mf-content)"};
267
+ border: ${Q||"var(--mf-border)"};
268
+ `;switch(E){case"alert":case"error":return A`
269
+ background-color: color-mix(in srgb, var(--mf-alert) 40%, transparent);
270
+ border: solid 1px var(--mf-alert);
226
271
  `;case"warning":return A`
227
- color: black;
228
- background-color: ${B.color("warning")};
229
- border: solid 1px ${B.color("secondary")};
272
+ background-color: color-mix(in srgb, var(--mf-warning) 40%, transparent);
273
+ border: solid 1px var(--mf-warning);
230
274
  `;case"info":return A`
231
- background-color: ${B.color("info")};
232
- border: solid 1px ${B.color("secondary")};
275
+ background-color: color-mix(in srgb, var(--mf-info) 40%, transparent);
276
+ border: solid 1px var(--mf-info);
233
277
  `;case"success":return A`
234
- background-color: ${B.color("success")};
235
- border: solid 1px ${B.color("secondary")};
278
+ background-color: color-mix(in srgb, var(--mf-success) 40%, transparent);
279
+ border: solid 1px var(--mf-success);
236
280
  `;default:return A`
237
- background-color: ${Q||B.color("content")};
238
- border: ${E||B.color("secondary")};
239
- `}})(J(),B,E,g),w=A`
281
+ background-color: ${B||"var(--mf-content)"};
282
+ border: ${Q||"var(--mf-content)"};
283
+ `}})(B,E,g),w=A`
240
284
  padding: 0.75rem;
241
285
  margin-bottom: 0.25rem;
242
286
  `;/* @__PURE__ */
243
- return Q(h,{css:[C,w],...I,children:M})},i=({variant:E="info",dot:M=!1,children:g,css:I,...C})=>{const w=J(),Y=((A,B)=>({success:B.color("success"),warning:B.color("warning"),alert:B.color("alert"),info:B.color("linkColor"),muted:`${B.color("textColor")}80`}[A]))(E,w),F=A`
287
+ return Q(S,{css:[C,w],...I,children:M})},x=({variant:E="info",dot:M=!1,children:g,css:I,...C})=>{const w=(A=>({success:"var(--mf-success)",warning:"var(--mf-warning)",alert:"var(--mf-alert)",info:"var(--mf-info)",muted:"var(--mf-text-muted)"}[A]))(E),Y=A`
244
288
  display: inline-flex;
245
289
  align-items: center;
246
290
  gap: 6px;
247
- border-radius: ${w.pillRadius};
291
+ border-radius: var(--mf-radius-pill);
248
292
  padding: 2px 10px;
249
293
  font-size: 12px;
250
294
  font-weight: 500;
251
- border: 1px solid ${Y};
295
+ border: 1px solid ${w};
252
296
  background: transparent;
253
- color: ${Y};
254
- `,U=A`
297
+ color: ${w};
298
+ `,F=A`
255
299
  width: 6px;
256
300
  height: 6px;
257
301
  border-radius: 50%;
258
302
  background: currentColor;
259
303
  flex-shrink: 0;
260
304
  `;/* @__PURE__ */
261
- return B("span",{css:[F,I],...C,children:[M&&/* @__PURE__ */Q("span",{css:U,"aria-hidden":"true"}),g]})},H=A=>/* @__PURE__ */B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 192 192",shapeRendering:"crispEdges",role:"img","aria-label":"Maelstrom-Futurism mark",...A,children:[
305
+ return B("span",{css:[Y,I],...C,children:[M&&/* @__PURE__ */Q("span",{css:F,"aria-hidden":"true"}),g]})},l=A=>/* @__PURE__ */B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 192 192",shapeRendering:"crispEdges",role:"img","aria-label":"Maelstrom-Futurism mark",...A,children:[
262
306
  /* @__PURE__ */Q("title",{children:"Maelstrom-Futurism"}),
263
307
  /* @__PURE__ */Q("rect",{x:"114",y:"120",width:"6",height:"6",fill:"currentColor",fillOpacity:"0.55"}),
264
308
  /* @__PURE__ */Q("rect",{x:"108",y:"114",width:"6",height:"6",fill:"currentColor",fillOpacity:"0.47"}),
@@ -543,7 +587,7 @@ return B("span",{css:[F,I],...C,children:[M&&/* @__PURE__ */Q("span",{css:U,"ari
543
587
  /* @__PURE__ */Q("rect",{x:"60",y:"162",width:"6",height:"6",fill:"currentColor",fillOpacity:"0.54"}),
544
588
  /* @__PURE__ */Q("rect",{x:"36",y:"150",width:"6",height:"6",fill:"currentColor",fillOpacity:"1.00"}),
545
589
  /* @__PURE__ */Q("rect",{x:"30",y:"144",width:"6",height:"6",fill:"currentColor",fillOpacity:"1.00"}),
546
- /* @__PURE__ */Q("rect",{x:"30",y:"138",width:"6",height:"6",fill:"currentColor",fillOpacity:"1.00"})]}),k=A=>/* @__PURE__ */B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 192 192",shapeRendering:"crispEdges",role:"img","aria-label":"Maelstrom-Futurism mark (flat)",...A,children:[
590
+ /* @__PURE__ */Q("rect",{x:"30",y:"138",width:"6",height:"6",fill:"currentColor",fillOpacity:"1.00"})]}),s=A=>/* @__PURE__ */B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 192 192",shapeRendering:"crispEdges",role:"img","aria-label":"Maelstrom-Futurism mark (flat)",...A,children:[
547
591
  /* @__PURE__ */Q("title",{children:"Maelstrom-Futurism"}),
548
592
  /* @__PURE__ */Q("rect",{x:"114",y:"120",width:"6",height:"6",fill:"currentColor"}),
549
593
  /* @__PURE__ */Q("rect",{x:"108",y:"114",width:"6",height:"6",fill:"currentColor"}),
@@ -828,4 +872,4 @@ return B("span",{css:[F,I],...C,children:[M&&/* @__PURE__ */Q("span",{css:U,"ari
828
872
  /* @__PURE__ */Q("rect",{x:"60",y:"162",width:"6",height:"6",fill:"currentColor"}),
829
873
  /* @__PURE__ */Q("rect",{x:"36",y:"150",width:"6",height:"6",fill:"currentColor"}),
830
874
  /* @__PURE__ */Q("rect",{x:"30",y:"144",width:"6",height:"6",fill:"currentColor"}),
831
- /* @__PURE__ */Q("rect",{x:"30",y:"138",width:"6",height:"6",fill:"currentColor"})]}),W=A=>A.charAt(0).toUpperCase()+A.slice(1),S=A=>A.toLowerCase().split(" ").map((A,B)=>["a","an","to","the","of"].includes(A)&&B>0?A:W(A)).join(" "),y=A=>A&&"[object Function]"===Object.prototype.toString.call(A),x=A=>"string"==typeof A||A instanceof String,l=(A,B)=>{let Q=0;return(...E)=>{clearTimeout(Q),Q=setTimeout(()=>A(...E),B)}};export{F as BREAKPOINTS,h as Box,C as CardinalDirection,V as ContentBox,j as EASE_FUNCTION,U as HEIGHTS,I as Intensity,H as LogoMark,k as LogoMarkFlat,i as Pill,D as RADII,w as SIZES,Y as SPACES,N as Theme,z as ThemeProvider,W as capitalize,G as createTheme,l as debounce,y as isFunction,x as isString,S as titleCase,J as useTheme};
875
+ /* @__PURE__ */Q("rect",{x:"30",y:"138",width:"6",height:"6",fill:"currentColor"})]}),P=A=>A.charAt(0).toUpperCase()+A.slice(1),o=A=>A.toLowerCase().split(" ").map((A,B)=>["a","an","to","the","of"].includes(A)&&B>0?A:P(A)).join(" "),L=A=>A&&"[object Function]"===Object.prototype.toString.call(A),Z=A=>"string"==typeof A||A instanceof String,X=(A,B)=>{let Q;return(...E)=>{clearTimeout(Q),Q=setTimeout(()=>A(...E),B)}};export{c as BORDER_WIDTHS,D as BREAKPOINTS,S as Box,Y as CardinalDirection,y as ContentBox,i as EASE_FUNCTION,J as FONTS,N as HEIGHTS,w as Intensity,j as LETTER_SPACINGS,G as LINE_HEIGHTS,l as LogoMark,s as LogoMarkFlat,x as Pill,R as RADII,F as SIZES,U as SPACES,z as Theme,k as ThemeProvider,P as capitalize,h as createTheme,X as debounce,L as isFunction,Z as isString,o as titleCase,H as useTheme};
@@ -4,10 +4,15 @@ export interface ColorSet {
4
4
  borderMuted: string;
5
5
  border: string;
6
6
  content: string;
7
+ surfaceHover: string;
8
+ surfacePress: string;
7
9
  textColor: string;
8
10
  linkColor: string;
9
11
  primary: string;
10
12
  secondary: string;
13
+ accent: string;
14
+ focus: string;
15
+ active: string;
11
16
  alert: string;
12
17
  warning: string;
13
18
  success: string;
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../lib/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEvD,MAAM,WAAW,QAAQ;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,oBAAoB,CAAC,EAAE,SAAS,CAAC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,eAAe,CAAC,EAAE,iBAAiB,CAAC;CACvC"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../lib/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEvD,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,oBAAoB,CAAC,EAAE,SAAS,CAAC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,eAAe,CAAC,EAAE,iBAAiB,CAAC;CACrC"}
@@ -13,5 +13,5 @@ export interface BaseStyles {
13
13
  h?: string;
14
14
  height?: string;
15
15
  }
16
- export declare const constructStyles: (styles: BaseStyles) => any;
16
+ export declare const constructStyles: (styles: BaseStyles) => Partial<BaseStyles>;
17
17
  //# sourceMappingURL=styleSystem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styleSystem.d.ts","sourceRoot":"","sources":["../lib/styleSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAkClD,MAAM,WAAW,UAAU;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;IAC5C,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAUD,eAAO,MAAM,eAAe,GAAI,QAAQ,UAAU,QAYjD,CAAC"}
1
+ {"version":3,"file":"styleSystem.d.ts","sourceRoot":"","sources":["../lib/styleSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAkClD,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;IAC5C,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAUD,eAAO,MAAM,eAAe,GAAI,QAAQ,UAAU,wBAajD,CAAC"}
@@ -3,8 +3,10 @@ import { default as Theme } from './theme';
3
3
  export declare const useTheme: () => Theme;
4
4
  interface ThemeProviderProps {
5
5
  theme: Theme;
6
+ darkTheme?: Theme;
7
+ colorScheme?: 'light' | 'dark' | 'auto';
6
8
  children: ReactNode;
7
9
  }
8
- export declare const ThemeProvider: ({ theme, children }: ThemeProviderProps) => ReactNode;
10
+ export declare const ThemeProvider: ({ theme, darkTheme, colorScheme, children }: ThemeProviderProps) => ReactNode;
9
11
  export {};
10
12
  //# sourceMappingURL=ThemeProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeProvider.d.ts","sourceRoot":"","sources":["../../lib/themes/ThemeProvider.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAA6B,MAAM,OAAO,CAAC;AASpE,OAAO,KAAK,MAAM,SAAS,CAAC;AAK5B,eAAO,MAAM,QAAQ,aAAiC,CAAC;AAEvD,UAAU,kBAAkB;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED,eAAO,MAAM,aAAa,GAAI,qBAAqB,kBAAkB,KAAG,SAiOvE,CAAC"}
1
+ {"version":3,"file":"ThemeProvider.d.ts","sourceRoot":"","sources":["../../lib/themes/ThemeProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkD,MAAM,OAAO,CAAC;AASlF,OAAO,KAAK,MAAM,SAAS,CAAC;AAK5B,eAAO,MAAM,QAAQ,aAAiC,CAAC;AAEvD,UAAU,kBAAkB;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IACxC,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,GAAI,6CAAsD,kBAAkB,KAAG,SAkSxG,CAAC"}
@@ -18,6 +18,45 @@ export interface ThemeOverrides {
18
18
  xl?: string;
19
19
  xxl?: string;
20
20
  };
21
+ durations?: {
22
+ fast?: string;
23
+ normal?: string;
24
+ slow?: string;
25
+ ripple?: string;
26
+ };
27
+ lineHeights?: {
28
+ tight?: string;
29
+ normal?: string;
30
+ relaxed?: string;
31
+ };
32
+ letterSpacings?: {
33
+ tight?: string;
34
+ normal?: string;
35
+ wide?: string;
36
+ display?: string;
37
+ };
38
+ borderWidths?: {
39
+ thin?: string;
40
+ medium?: string;
41
+ thick?: string;
42
+ };
43
+ fonts?: {
44
+ sans?: string;
45
+ display?: string;
46
+ mono?: string;
47
+ };
48
+ components?: {
49
+ navbar?: {
50
+ height?: string;
51
+ };
52
+ button?: {
53
+ sizes?: Partial<Record<'xs' | 'sm' | 'md' | 'lg' | 'xl', {
54
+ padding?: string;
55
+ fontSize?: string;
56
+ }>>;
57
+ };
58
+ };
59
+ customColors?: Record<string, string>;
21
60
  }
22
61
  export declare const createTheme: (colorSetName: ColorSetName, overrides?: ThemeOverrides) => Theme;
23
62
  //# sourceMappingURL=createTheme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createTheme.d.ts","sourceRoot":"","sources":["../../lib/themes/createTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,WAAW,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE;QACJ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,KAAK,CAAC,EAAE;QACJ,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,GAAG,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACL;AA4CD,eAAO,MAAM,WAAW,GAAI,cAAc,YAAY,EAAE,YAAY,cAAc,KAAG,KAoBpF,CAAC"}
1
+ {"version":3,"file":"createTheme.d.ts","sourceRoot":"","sources":["../../lib/themes/createTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,WAAW,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,KAAK,CAAC,EAAE;QACN,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,SAAS,CAAC,EAAE;QACV,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,WAAW,CAAC,EAAE;QACZ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,cAAc,CAAC,EAAE;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,YAAY,CAAC,EAAE;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE;QACN,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,UAAU,CAAC,EAAE;QACX,MAAM,CAAC,EAAE;YACP,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,MAAM,CAAC,EAAE;YACP,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE;gBAAE,OAAO,CAAC,EAAE,MAAM,CAAC;gBAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;aAAE,CAAC,CAAC,CAAC;SACpG,CAAC;KACH,CAAC;IACF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAsDD,eAAO,MAAM,WAAW,GAAI,cAAc,YAAY,EAAE,YAAY,cAAc,KAAG,KAyDpF,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { ColorSet, ThemeInterface } from '../interfaces';
2
2
  import { SIZES } from '../tokens';
3
- export type ColorMode = "Light" | "Dark" | "User";
3
+ export type ColorMode = 'Light' | 'Dark' | 'User';
4
4
  declare class Theme {
5
5
  readonly colors: ColorSet;
6
6
  sizes: Record<keyof typeof SIZES, string>;
@@ -24,8 +24,42 @@ declare class Theme {
24
24
  inputRadius: string;
25
25
  buttonRadius: string;
26
26
  pillRadius: string;
27
+ durations: {
28
+ fast: string;
29
+ normal: string;
30
+ slow: string;
31
+ ripple: string;
32
+ };
33
+ lineHeights: {
34
+ tight: string;
35
+ normal: string;
36
+ relaxed: string;
37
+ };
38
+ letterSpacings: {
39
+ tight: string;
40
+ normal: string;
41
+ wide: string;
42
+ display: string;
43
+ };
44
+ borderWidths: {
45
+ thin: string;
46
+ medium: string;
47
+ thick: string;
48
+ };
49
+ fonts: {
50
+ sans: string;
51
+ display: string;
52
+ mono: string;
53
+ };
54
+ navbarHeight: string;
55
+ buttonSizes: Record<'xs' | 'sm' | 'md' | 'lg' | 'xl', {
56
+ padding: string;
57
+ fontSize: string;
58
+ }>;
59
+ customColors: Record<string, string>;
27
60
  size(name: string): string;
28
61
  color: (name: keyof typeof this.colors) => string;
62
+ custom: (name: string) => string;
29
63
  bp: (name: keyof typeof this.breakpoints) => string;
30
64
  height: (name: string) => string;
31
65
  constructor(themeConfig: ThemeInterface);
@@ -1 +1 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../lib/themes/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,KAAK,EAAuC,MAAM,WAAW,CAAC;AAEvE,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAElD,cAAM,KAAK;IACT,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAE1B,KAAK,EAAE,MAAM,CAAC,MAAM,OAAO,KAAK,EAAE,MAAM,CAAC,CAAgB;IAEzD,WAAW;;;;;MAAsB;IAEjC,KAAK,gEAAe;IAEpB,OAAO;;;;;;;;MAAkB;IAEzB,YAAY,EAAE,MAAM,CAAc;IAClC,WAAW,EAAE,MAAM,CAAgB;IACnC,YAAY,EAAE,MAAM,CAAgB;IACpC,UAAU,EAAE,MAAM,CAAgB;IAElC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI1B,KAAK,GAAI,MAAM,MAAM,OAAO,IAAI,CAAC,MAAM,KAAG,MAAM,CAAsB;IACtE,EAAE,GAAI,MAAM,MAAM,OAAO,IAAI,CAAC,WAAW,KAAG,MAAM,CAA2B;IAC7E,MAAM,GAAI,MAAM,MAAM,KAAG,MAAM,CAAoD;gBAEvE,WAAW,EAAE,cAAc;CAGxC;AAED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../lib/themes/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,KAAK,EAA4F,MAAM,WAAW,CAAC;AAE5H,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAElD,cAAM,KAAK;IACT,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAE1B,KAAK,EAAE,MAAM,CAAC,MAAM,OAAO,KAAK,EAAE,MAAM,CAAC,CAAgB;IAEzD,WAAW;;;;;MAAsB;IAEjC,KAAK,gEAAe;IAEpB,OAAO;;;;;;;;MAAkB;IAEzB,YAAY,EAAE,MAAM,CAAc;IAClC,WAAW,EAAE,MAAM,CAAe;IAClC,YAAY,EAAE,MAAM,CAAgB;IACpC,UAAU,EAAE,MAAM,CAAc;IAEhC,SAAS;;;;;MAKP;IAEF,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAuB;IAEtF,cAAc,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAA0B;IAE1G,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAwB;IAErF,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAgB;IAEtE,YAAY,EAAE,MAAM,CAAU;IAE9B,WAAW,EAAE,MAAM,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAM1F;IAEF,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IAE1C,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI1B,KAAK,GAAI,MAAM,MAAM,OAAO,IAAI,CAAC,MAAM,KAAG,MAAM,CAAsB;IACtE,MAAM,GAAI,MAAM,MAAM,KAAG,MAAM,CAAkC;IACjE,EAAE,GAAI,MAAM,MAAM,OAAO,IAAI,CAAC,WAAW,KAAG,MAAM,CAA2B;IAC7E,MAAM,GAAI,MAAM,MAAM,KAAG,MAAM,CAAoD;gBAEvE,WAAW,EAAE,cAAc;CAGxC;AAED,eAAe,KAAK,CAAC"}
package/dist/tokens.d.ts CHANGED
@@ -29,4 +29,25 @@ export declare const RADII: {
29
29
  readonly card: "24px";
30
30
  readonly pill: "9999px";
31
31
  };
32
+ export declare const LINE_HEIGHTS: {
33
+ readonly tight: "1.2";
34
+ readonly normal: "1.5";
35
+ readonly relaxed: "1.6";
36
+ };
37
+ export declare const LETTER_SPACINGS: {
38
+ readonly tight: "-0.01em";
39
+ readonly normal: "0";
40
+ readonly wide: "0.04em";
41
+ readonly display: "0.06em";
42
+ };
43
+ export declare const BORDER_WIDTHS: {
44
+ readonly thin: "1px";
45
+ readonly medium: "2px";
46
+ readonly thick: "3px";
47
+ };
48
+ export declare const FONTS: {
49
+ readonly sans: "\"Poppins\", system-ui, -apple-system, \"Segoe UI\", sans-serif";
50
+ readonly display: "\"Silkscreen\", \"Poppins\", system-ui, sans-serif";
51
+ readonly mono: "\"JetBrainsMono\", ui-monospace, \"SF Mono\", Menlo, monospace";
52
+ };
32
53
  //# sourceMappingURL=tokens.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../lib/tokens.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK;;;;;;;;CAQR,CAAC;AAEX,eAAO,MAAM,MAAM,8DAA+D,CAAC;AAEnF,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,OAAO;;;;;;;;CAQV,CAAC;AAEX,eAAO,MAAM,KAAK;;;;;CAKR,CAAC"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../lib/tokens.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK;;;;;;;;CAQR,CAAC;AAEX,eAAO,MAAM,MAAM,8DAA+D,CAAC;AAEnF,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,OAAO;;;;;;;;CAQV,CAAC;AAEX,eAAO,MAAM,KAAK;;;;;CAKR,CAAC;AAEX,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;CAKlB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX,eAAO,MAAM,KAAK;;;;CAIR,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const debounce: <F extends (...args: any) => any>(func: F, waitFor: number) => (...args: Parameters<F>) => ReturnType<F>;
1
+ export declare const debounce: <F extends (...args: never[]) => unknown>(func: F, waitFor: number) => ((...args: Parameters<F>) => void);
2
2
  //# sourceMappingURL=debounce.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../lib/utils/debounce.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,EACpD,MAAM,CAAC,EACP,SAAS,MAAM,KASK,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAC/D,CAAA"}
1
+ {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../lib/utils/debounce.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EAC9D,MAAM,CAAC,EACP,SAAS,MAAM,KACd,CAAC,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAOnC,CAAC"}
@@ -1,3 +1,3 @@
1
- export declare const isFunction: (analysisTarget: any) => any;
2
- export declare const isString: (analysisTarget: any) => analysisTarget is string | String;
1
+ export declare const isFunction: (analysisTarget: unknown) => unknown;
2
+ export declare const isString: (analysisTarget: unknown) => analysisTarget is string | String;
3
3
  //# sourceMappingURL=typeof.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typeof.d.ts","sourceRoot":"","sources":["../../lib/utils/typeof.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,GAAI,gBAAgB,GAAG,QAC8C,CAAC;AAE7F,eAAO,MAAM,QAAQ,GAAI,gBAAgB,GAAG,sCAC8B,CAAC"}
1
+ {"version":3,"file":"typeof.d.ts","sourceRoot":"","sources":["../../lib/utils/typeof.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,GAAI,gBAAgB,OAAO,YACwC,CAAC;AAE3F,eAAO,MAAM,QAAQ,GAAI,gBAAgB,OAAO,sCACwB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maelstrom-futurism/core",
3
- "version": "0.9.0",
3
+ "version": "0.9.2",
4
4
  "description": "Core package for shared resources in Maelstrom Futurism",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -10,6 +10,8 @@
10
10
  "scripts": {
11
11
  "build": "vite build",
12
12
  "clean": "rm -Rf ./dist",
13
+ "lint": "eslint .",
14
+ "lint:fix": "eslint --fix .",
13
15
  "test": "vitest run --coverage",
14
16
  "test:dev": "vitest",
15
17
  "copy-files": "cp -r ./lib/styles/*.css ./lib/fonts ./dist",
@@ -29,5 +31,5 @@
29
31
  "url": "https://github.com/DawsonG/maelstrom-futurism/issues"
30
32
  },
31
33
  "homepage": "https://github.com/DawsonG/maelstrom-futurism#readme",
32
- "gitHead": "5034af01ee5ea4d23abc4b678e0c66c73bae417a"
34
+ "gitHead": "839026702c7b52490406b7ac80860b4877805658"
33
35
  }