@astryxdesign/theme-neutral 0.2.0 → 0.3.0-canary.041a0ef

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.
@@ -4,6 +4,8 @@ import {
4
4
  ChevronDown,
5
5
  ChevronLeft,
6
6
  ChevronRight,
7
+ ChevronsLeft,
8
+ ChevronsRight,
7
9
  Check,
8
10
  CheckCircle,
9
11
  XCircle,
@@ -37,6 +39,8 @@ var neutralIconRegistry = {
37
39
  chevronDown: /* @__PURE__ */ jsx(ChevronDown, { ...iconProps }),
38
40
  chevronLeft: /* @__PURE__ */ jsx(ChevronLeft, { ...iconProps }),
39
41
  chevronRight: /* @__PURE__ */ jsx(ChevronRight, { ...iconProps }),
42
+ chevronsLeft: /* @__PURE__ */ jsx(ChevronsLeft, { ...iconProps }),
43
+ chevronsRight: /* @__PURE__ */ jsx(ChevronsRight, { ...iconProps }),
40
44
  check: /* @__PURE__ */ jsx(Check, { ...iconProps }),
41
45
  success: /* @__PURE__ */ jsx(CheckCircle, { ...iconProps }),
42
46
  error: /* @__PURE__ */ jsx(XCircle, { ...iconProps }),
@@ -1 +1 @@
1
- {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../src/icons.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AAoC1D,eAAO,MAAM,mBAAmB,EAAE,YA2BjC,CAAC"}
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../src/icons.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AAsC1D,eAAO,MAAM,mBAAmB,EAAE,YA6BjC,CAAC"}
package/dist/icons.js CHANGED
@@ -34,6 +34,8 @@ var neutralIconRegistry = {
34
34
  chevronDown: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronDown, { ...iconProps }),
35
35
  chevronLeft: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronLeft, { ...iconProps }),
36
36
  chevronRight: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronRight, { ...iconProps }),
37
+ chevronsLeft: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronsLeft, { ...iconProps }),
38
+ chevronsRight: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronsRight, { ...iconProps }),
37
39
  check: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Check, { ...iconProps }),
38
40
  success: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.CheckCircle, { ...iconProps }),
39
41
  error: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.XCircle, { ...iconProps }),
package/dist/icons.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  neutralIconRegistry
3
- } from "./chunk-TC7YR7RU.mjs";
3
+ } from "./chunk-5EOEL66W.mjs";
4
4
  export {
5
5
  neutralIconRegistry
6
6
  };
package/dist/neutral.d.ts CHANGED
@@ -2,7 +2,8 @@
2
2
  * @generated by `astryx theme build` — do not edit manually.
3
3
  * Source: src/neutralTheme.ts
4
4
  * Command: astryx theme build src/neutralTheme.ts --out dist/theme.css
5
- * Generated: 2026-07-30T20:44:04.788Z
5
+ * CLI: @astryxdesign/cli@0.3.0
6
+ * Core: @astryxdesign/core@0.3.0
6
7
  */
7
8
 
8
9
  /// <reference path="./neutral.variants.d.ts" />
package/dist/neutral.js CHANGED
@@ -2,7 +2,8 @@
2
2
  * @generated by `astryx theme build` — do not edit manually.
3
3
  * Source: src/neutralTheme.ts
4
4
  * Command: astryx theme build src/neutralTheme.ts --out dist/theme.css
5
- * Generated: 2026-07-30T20:44:04.787Z
5
+ * CLI: @astryxdesign/cli@0.3.0
6
+ * Core: @astryxdesign/core@0.3.0
6
7
  */
7
8
 
8
9
  import { neutralIconRegistry } from './icons';
@@ -109,7 +110,7 @@ export const neutralTheme = {
109
110
  "--color-overlay-hover": "light-dark(#0000000D, #FFFFFF0D)",
110
111
  "--color-overlay-pressed": "light-dark(#0000001A, #FFFFFF1A)",
111
112
  "--color-text-primary": "light-dark(#171717, #fafafa)",
112
- "--color-text-secondary": "light-dark(#737373, #a3a3a3)",
113
+ "--color-text-secondary": "light-dark(#525252, #a3a3a3)",
113
114
  "--color-text-disabled": "light-dark(#a3a3a3, #525252)",
114
115
  "--color-text-accent": "light-dark(#262626, #ebebeb)",
115
116
  "--color-on-dark": "#ffffff",
@@ -173,7 +174,7 @@ export const neutralTheme = {
173
174
  "--color-border-gray": "light-dark(#d4d4d4, #262626)",
174
175
  "--color-icon-gray": "light-dark(#525252, #a3a3a3)",
175
176
  "--color-text-gray": "light-dark(#262626, #e5e5e5)",
176
- "--radius-none": "0.25rem",
177
+ "--radius-none": "0px",
177
178
  "--radius-inner": "0.375rem",
178
179
  "--radius-element": "0.625rem",
179
180
  "--radius-container": "0.75rem",
@@ -2,7 +2,8 @@
2
2
  * @generated by `astryx theme build` — do not edit manually.
3
3
  * Source: src/neutralTheme.ts
4
4
  * Command: astryx theme build src/neutralTheme.ts --out dist/theme.css
5
- * Generated: 2026-07-30T20:44:04.787Z
5
+ * CLI: @astryxdesign/cli@0.3.0
6
+ * Core: @astryxdesign/core@0.3.0
6
7
  */
7
8
 
8
9
  // Generated by astryx theme build
@@ -1 +1 @@
1
- {"version":3,"file":"neutralTheme.d.ts","sourceRoot":"","sources":["../src/neutralTheme.ts"],"names":[],"mappings":"AA0DA,eAAO,MAAM,YAAY,iDA+jBvB,CAAC"}
1
+ {"version":3,"file":"neutralTheme.d.ts","sourceRoot":"","sources":["../src/neutralTheme.ts"],"names":[],"mappings":"AA0DA,eAAO,MAAM,YAAY,iDAqkBvB,CAAC"}
package/dist/source.js CHANGED
@@ -40,6 +40,8 @@ var neutralIconRegistry = {
40
40
  chevronDown: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronDown, { ...iconProps }),
41
41
  chevronLeft: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronLeft, { ...iconProps }),
42
42
  chevronRight: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronRight, { ...iconProps }),
43
+ chevronsLeft: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronsLeft, { ...iconProps }),
44
+ chevronsRight: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronsRight, { ...iconProps }),
43
45
  check: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Check, { ...iconProps }),
44
46
  success: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.CheckCircle, { ...iconProps }),
45
47
  error: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.XCircle, { ...iconProps }),
@@ -174,7 +176,10 @@ var neutralTheme = (0, import_theme.defineTheme)({
174
176
  "--color-overlay-pressed": ["#0000001A", "#FFFFFF1A"],
175
177
  // Text
176
178
  "--color-text-primary": ["#171717", "#fafafa"],
177
- "--color-text-secondary": ["#737373", "#a3a3a3"],
179
+ // Light secondary is neutral-600 (#525252), not 500 (#737373): 500 only
180
+ // reaches 4.19:1 on the T95 body (#f1f1f1), just under WCAG AA 4.5:1.
181
+ // 600 clears it (6.9:1 on body, 7.8:1 on card). Dark stays neutral-400.
182
+ "--color-text-secondary": ["#525252", "#a3a3a3"],
178
183
  "--color-text-disabled": ["#a3a3a3", "#525252"],
179
184
  "--color-text-accent": ["#262626", "#ebebeb"],
180
185
  "--color-on-dark": "#ffffff",
@@ -333,8 +338,11 @@ var neutralTheme = (0, import_theme.defineTheme)({
333
338
  "--color-text-gray": ["#262626", "#e5e5e5"],
334
339
  // =========================================================================
335
340
  // Radius — slightly larger than default (kept as-is)
341
+ // --radius-none and --radius-full are always fixed and must never be
342
+ // scaled by a theme (see defineTheme's radius config docs) — 0 and
343
+ // 9999px respectively, matching @astryxdesign/core's own defaults.
336
344
  // =========================================================================
337
- "--radius-none": "0.25rem",
345
+ "--radius-none": "0px",
338
346
  "--radius-inner": "0.375rem",
339
347
  "--radius-element": "0.625rem",
340
348
  "--radius-container": "0.75rem",
package/dist/source.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  neutralIconRegistry
3
- } from "./chunk-TC7YR7RU.mjs";
3
+ } from "./chunk-5EOEL66W.mjs";
4
4
 
5
5
  // src/neutralTheme.ts
6
6
  import { defineTheme, defineSyntaxTheme } from "@astryxdesign/core/theme";
@@ -113,7 +113,10 @@ var neutralTheme = defineTheme({
113
113
  "--color-overlay-pressed": ["#0000001A", "#FFFFFF1A"],
114
114
  // Text
115
115
  "--color-text-primary": ["#171717", "#fafafa"],
116
- "--color-text-secondary": ["#737373", "#a3a3a3"],
116
+ // Light secondary is neutral-600 (#525252), not 500 (#737373): 500 only
117
+ // reaches 4.19:1 on the T95 body (#f1f1f1), just under WCAG AA 4.5:1.
118
+ // 600 clears it (6.9:1 on body, 7.8:1 on card). Dark stays neutral-400.
119
+ "--color-text-secondary": ["#525252", "#a3a3a3"],
117
120
  "--color-text-disabled": ["#a3a3a3", "#525252"],
118
121
  "--color-text-accent": ["#262626", "#ebebeb"],
119
122
  "--color-on-dark": "#ffffff",
@@ -272,8 +275,11 @@ var neutralTheme = defineTheme({
272
275
  "--color-text-gray": ["#262626", "#e5e5e5"],
273
276
  // =========================================================================
274
277
  // Radius — slightly larger than default (kept as-is)
278
+ // --radius-none and --radius-full are always fixed and must never be
279
+ // scaled by a theme (see defineTheme's radius config docs) — 0 and
280
+ // 9999px respectively, matching @astryxdesign/core's own defaults.
275
281
  // =========================================================================
276
- "--radius-none": "0.25rem",
282
+ "--radius-none": "0px",
277
283
  "--radius-inner": "0.375rem",
278
284
  "--radius-element": "0.625rem",
279
285
  "--radius-container": "0.75rem",
package/dist/theme.css CHANGED
@@ -2,7 +2,8 @@
2
2
  * @generated by `astryx theme build` — do not edit manually.
3
3
  * Source: src/neutralTheme.ts
4
4
  * Command: astryx theme build src/neutralTheme.ts --out dist/theme.css
5
- * Generated: 2026-07-30T20:44:04.787Z
5
+ * CLI: @astryxdesign/cli@0.3.0
6
+ * Core: @astryxdesign/core@0.3.0
6
7
  */
7
8
 
8
9
  @layer reset {
@@ -175,7 +176,7 @@
175
176
  --color-overlay-hover: light-dark(#0000000D, #FFFFFF0D);
176
177
  --color-overlay-pressed: light-dark(#0000001A, #FFFFFF1A);
177
178
  --color-text-primary: light-dark(#171717, #fafafa);
178
- --color-text-secondary: light-dark(#737373, #a3a3a3);
179
+ --color-text-secondary: light-dark(#525252, #a3a3a3);
179
180
  --color-text-disabled: light-dark(#a3a3a3, #525252);
180
181
  --color-text-accent: light-dark(#262626, #ebebeb);
181
182
  --color-on-dark: #ffffff;
@@ -239,7 +240,7 @@
239
240
  --color-border-gray: light-dark(#d4d4d4, #262626);
240
241
  --color-icon-gray: light-dark(#525252, #a3a3a3);
241
242
  --color-text-gray: light-dark(#262626, #e5e5e5);
242
- --radius-none: 0.25rem;
243
+ --radius-none: 0px;
243
244
  --radius-inner: 0.375rem;
244
245
  --radius-element: 0.625rem;
245
246
  --radius-container: 0.75rem;
@@ -297,6 +298,24 @@
297
298
  line-height: var(--text-heading-6-leading);
298
299
  }
299
300
 
301
+ .astryx-heading.display-1 {
302
+ font-family: var(--font-family-heading);
303
+ font-size: var(--text-display-1-size);
304
+ line-height: var(--text-display-1-leading);
305
+ }
306
+
307
+ .astryx-heading.display-2 {
308
+ font-family: var(--font-family-heading);
309
+ font-size: var(--text-display-2-size);
310
+ line-height: var(--text-display-2-leading);
311
+ }
312
+
313
+ .astryx-heading.display-3 {
314
+ font-family: var(--font-family-heading);
315
+ font-size: var(--text-display-3-size);
316
+ line-height: var(--text-display-3-leading);
317
+ }
318
+
300
319
  .astryx-text.body {
301
320
  font-family: var(--font-family-body);
302
321
  font-size: var(--text-body-size);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@astryxdesign/theme-neutral",
3
- "version": "0.2.0",
3
+ "version": "0.3.0-canary.041a0ef",
4
4
  "displayName": "Neutral Theme",
5
5
  "private": false,
6
6
  "description": "Restrained warm grays. Minimal and quiet, so the content stays the focus.",
@@ -49,11 +49,11 @@
49
49
  "lucide-react": "^1.18.0"
50
50
  },
51
51
  "peerDependencies": {
52
- "@astryxdesign/core": "0.2.0",
52
+ "@astryxdesign/core": "0.3.0-canary.041a0ef",
53
53
  "react": ">=19"
54
54
  },
55
55
  "devDependencies": {
56
- "@astryxdesign/cli": "0.2.0"
56
+ "@astryxdesign/cli": "0.3.0-canary.041a0ef"
57
57
  },
58
58
  "module": "./dist/source.mjs",
59
59
  "scripts": {
package/src/icons.tsx CHANGED
@@ -18,6 +18,8 @@ import {
18
18
  ChevronDown,
19
19
  ChevronLeft,
20
20
  ChevronRight,
21
+ ChevronsLeft,
22
+ ChevronsRight,
21
23
  Check,
22
24
  CheckCircle,
23
25
  XCircle,
@@ -52,6 +54,8 @@ export const neutralIconRegistry: IconRegistry = {
52
54
  chevronDown: <ChevronDown {...iconProps} />,
53
55
  chevronLeft: <ChevronLeft {...iconProps} />,
54
56
  chevronRight: <ChevronRight {...iconProps} />,
57
+ chevronsLeft: <ChevronsLeft {...iconProps} />,
58
+ chevronsRight: <ChevronsRight {...iconProps} />,
55
59
  check: <Check {...iconProps} />,
56
60
  success: <CheckCircle {...iconProps} />,
57
61
  error: <XCircle {...iconProps} />,
@@ -144,7 +144,10 @@ export const neutralTheme = defineTheme({
144
144
 
145
145
  // Text
146
146
  '--color-text-primary': ['#171717', '#fafafa'],
147
- '--color-text-secondary': ['#737373', '#a3a3a3'],
147
+ // Light secondary is neutral-600 (#525252), not 500 (#737373): 500 only
148
+ // reaches 4.19:1 on the T95 body (#f1f1f1), just under WCAG AA 4.5:1.
149
+ // 600 clears it (6.9:1 on body, 7.8:1 on card). Dark stays neutral-400.
150
+ '--color-text-secondary': ['#525252', '#a3a3a3'],
148
151
  '--color-text-disabled': ['#a3a3a3', '#525252'],
149
152
  '--color-text-accent': ['#262626', '#ebebeb'],
150
153
  '--color-on-dark': '#ffffff',
@@ -320,8 +323,11 @@ export const neutralTheme = defineTheme({
320
323
 
321
324
  // =========================================================================
322
325
  // Radius — slightly larger than default (kept as-is)
326
+ // --radius-none and --radius-full are always fixed and must never be
327
+ // scaled by a theme (see defineTheme's radius config docs) — 0 and
328
+ // 9999px respectively, matching @astryxdesign/core's own defaults.
323
329
  // =========================================================================
324
- '--radius-none': '0.25rem',
330
+ '--radius-none': '0px',
325
331
  '--radius-inner': '0.375rem',
326
332
  '--radius-element': '0.625rem',
327
333
  '--radius-container': '0.75rem',