@hirobius/design-system 0.13.1 → 0.15.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 (95) hide show
  1. package/README.md +49 -6
  2. package/dist/chunks/TokenDisplayContext-B3gxyQN7.js +1 -0
  3. package/dist/chunks/form-DnGRy27o.js +1 -0
  4. package/dist/contexts.js +63 -60
  5. package/dist/form.js +1 -0
  6. package/dist/hirobius-ui.js +4092 -3389
  7. package/dist/manifest.js +7 -7
  8. package/dist/scroll.js +1 -0
  9. package/dist/styles.css +1 -1
  10. package/dist/tokens.css +1 -1
  11. package/dist/types/src/app/components/activity-feed.d.ts +6 -0
  12. package/dist/types/src/app/components/alert.d.ts +1 -1
  13. package/dist/types/src/app/components/asset-img.d.ts +1 -1
  14. package/dist/types/src/app/components/avatar.d.ts +1 -0
  15. package/dist/types/src/app/components/badge.d.ts +1 -0
  16. package/dist/types/src/app/components/bleed.d.ts +1 -1
  17. package/dist/types/src/app/components/box.d.ts +2 -2
  18. package/dist/types/src/app/components/breadcrumb.d.ts +1 -0
  19. package/dist/types/src/app/components/button.d.ts +1 -0
  20. package/dist/types/src/app/components/callout.d.ts +1 -0
  21. package/dist/types/src/app/components/card.d.ts +10 -5
  22. package/dist/types/src/app/components/center.d.ts +1 -1
  23. package/dist/types/src/app/components/checkbox.d.ts +2 -2
  24. package/dist/types/src/app/components/cinematic-link.d.ts +1 -2
  25. package/dist/types/src/app/components/cluster.d.ts +1 -1
  26. package/dist/types/src/app/components/code-block.d.ts +2 -1
  27. package/dist/types/src/app/components/combobox.d.ts +1 -0
  28. package/dist/types/src/app/components/container.d.ts +1 -1
  29. package/dist/types/src/app/components/cover.d.ts +1 -1
  30. package/dist/types/src/app/components/dialog.d.ts +5 -0
  31. package/dist/types/src/app/components/disclosure.d.ts +2 -1
  32. package/dist/types/src/app/components/divider.d.ts +4 -0
  33. package/dist/types/src/app/components/doc-link-card.d.ts +1 -1
  34. package/dist/types/src/app/components/empty-state.d.ts +1 -0
  35. package/dist/types/src/app/components/error-boundary.d.ts +1 -1
  36. package/dist/types/src/app/components/error-pattern.d.ts +1 -2
  37. package/dist/types/src/app/components/field.d.ts +1 -0
  38. package/dist/types/src/app/components/form.d.ts +7 -1
  39. package/dist/types/src/app/components/frame.d.ts +1 -1
  40. package/dist/types/src/app/components/grid.d.ts +2 -2
  41. package/dist/types/src/app/components/heading-stack.d.ts +1 -1
  42. package/dist/types/src/app/components/icon-button.d.ts +3 -4
  43. package/dist/types/src/app/components/icon.d.ts +1 -1
  44. package/dist/types/src/app/components/image-lightbox.d.ts +1 -2
  45. package/dist/types/src/app/components/inline-code.d.ts +4 -1
  46. package/dist/types/src/app/components/inline-link.d.ts +2 -2
  47. package/dist/types/src/app/components/input.d.ts +1 -0
  48. package/dist/types/src/app/components/menu.d.ts +1 -0
  49. package/dist/types/src/app/components/nav-group.d.ts +3 -3
  50. package/dist/types/src/app/components/nav-item.d.ts +2 -2
  51. package/dist/types/src/app/components/page.d.ts +1 -1
  52. package/dist/types/src/app/components/pagination.d.ts +1 -0
  53. package/dist/types/src/app/components/pin.d.ts +1 -2
  54. package/dist/types/src/app/components/popover.d.ts +1 -0
  55. package/dist/types/src/app/components/progress.d.ts +1 -0
  56. package/dist/types/src/app/components/radio.d.ts +2 -2
  57. package/dist/types/src/app/components/reveal.d.ts +1 -2
  58. package/dist/types/src/app/components/segmented-control.d.ts +1 -1
  59. package/dist/types/src/app/components/sidebar.d.ts +1 -1
  60. package/dist/types/src/app/components/skeleton.d.ts +1 -0
  61. package/dist/types/src/app/components/slider.d.ts +2 -2
  62. package/dist/types/src/app/components/spinner.d.ts +1 -0
  63. package/dist/types/src/app/components/stack.d.ts +2 -2
  64. package/dist/types/src/app/components/stat.d.ts +1 -0
  65. package/dist/types/src/app/components/status-list-item.d.ts +1 -0
  66. package/dist/types/src/app/components/status-tile.d.ts +1 -0
  67. package/dist/types/src/app/components/stepper-field.d.ts +1 -2
  68. package/dist/types/src/app/components/surface.d.ts +2 -2
  69. package/dist/types/src/app/components/switcher.d.ts +1 -1
  70. package/dist/types/src/app/components/table.d.ts +1 -0
  71. package/dist/types/src/app/components/tabs.d.ts +6 -0
  72. package/dist/types/src/app/components/tag.d.ts +1 -0
  73. package/dist/types/src/app/components/textarea.d.ts +1 -0
  74. package/dist/types/src/app/components/toast.d.ts +1 -0
  75. package/dist/types/src/app/components/toggle.d.ts +2 -2
  76. package/dist/types/src/app/components/token.d.ts +1 -1
  77. package/dist/types/src/app/context/TenantContext.d.ts +19 -5
  78. package/dist/types/src/app/context/index.d.ts +7 -7
  79. package/dist/types/src/app/design-system/generated-token-refs.d.ts +1 -1
  80. package/dist/types/src/app/design-system/generated-token-values.d.ts +1 -1
  81. package/dist/types/src/app/design-system/theme.d.ts +1 -1
  82. package/dist/types/src/app/design-system/tokens.d.ts +2 -2
  83. package/dist/types/src/app/hooks/useHdsMotion.d.ts +1 -1
  84. package/dist/types/src/app/layouts/CaseStudyLayout.d.ts +2 -3
  85. package/dist/types/src/app/layouts/HdsSystemDocLayout.d.ts +1 -1
  86. package/dist/types/src/app/lib/hds-search.d.ts +1 -1
  87. package/dist/types/src/brand/index.d.ts +1 -1
  88. package/dist/types/src/form/index.d.ts +3 -3
  89. package/dist/types/src/index.d.ts +116 -116
  90. package/dist/types/src/lib/env.d.ts +31 -0
  91. package/dist/types/src/lib/manifest-entry.d.ts +1 -1
  92. package/dist/types/src/scroll/index.d.ts +2 -2
  93. package/hirobius.tokens.json +3 -3
  94. package/package.json +9 -6
  95. package/public/hds-manifest.json +785 -92
@@ -1,114 +1,114 @@
1
- export * from './app/components/alert';
2
- export * from './app/components/asset-img';
3
- export * from './app/components/avatar';
4
- export * from './app/components/badge';
5
- export * from './app/components/box';
6
- export * from './app/components/button';
7
- export * from './app/components/callout';
8
- export * from './app/components/field';
9
- export * from './app/components/stat';
10
- export * from './app/components/status-list-item';
11
- export * from './app/components/card';
12
- export * from './app/components/cinematic-link';
13
- export * from './app/components/code-block';
14
- export * from './app/components/component-instance-matrix';
15
- export * from './app/components/container';
16
- export * from './app/components/dialog';
17
- export * from './app/components/divider';
18
- export * from './app/components/menu';
19
- export * from './app/components/popover';
20
- export * from './app/components/hds-tooltip';
21
- export * from './app/components/doc-link-card';
22
- export * from './app/components/grid';
23
- export * from './app/components/heading-stack';
24
- export * from './app/components/history-card';
25
- export * from './app/components/icon';
26
- export * from './app/components/inline-code';
27
- export * from './app/components/inline-link';
28
- export * from './app/components/input';
29
- export * from './app/components/textarea';
30
- export * from './app/components/checkbox';
31
- export * from './app/components/radio';
32
- export * from './app/components/slider';
33
- export * from './app/components/toggle';
34
- export * from './app/components/nav-item';
35
- export * from './app/components/progress';
36
- export * from './app/components/skeleton';
37
- export * from './app/components/spinner';
38
- export * from './app/components/segmented-control';
39
- export * from './app/components/stack';
40
- export * from './app/components/surface';
41
- export * from './app/components/table';
42
- export * from './app/components/tag';
43
- export * from './app/components/text';
44
- export * from './app/components/token';
45
- export * from './app/components/kbd';
46
- export * from './app/components/status-dot';
47
- export * from './app/components/timestamp';
48
- export * from './app/components/blockquote';
49
- export * from './app/components/visually-hidden';
50
- export * from './app/components/avatar-group';
51
- export * from './app/components/button-group';
52
- export * from './app/components/input-group';
53
- export * from './app/components/circular-progress';
54
- export * from './app/components/toggle-button';
55
- export * from './app/components/aspect-ratio';
56
- export * from './app/components/alert-dialog';
57
- export * from './app/components/hover-card';
58
- export * from './app/components/context-menu';
59
- export * from './app/components/side-nav';
60
- export * from './app/components/command-palette';
61
- export * from './app/components/image-lightbox';
62
- export * from './app/components/metadata-list';
63
- export * from './app/components/overflow-list';
64
- export * from './app/components/top-nav';
65
- export * from './app/components/app-shell';
66
- export * from './app/components/selectable-card';
67
- export * from './app/components/tokenizer';
68
- export * from './app/components/file-input';
69
- export * from './app/components/multi-selector';
70
- export * from './app/components/toolbar';
71
- export * from './app/components/tree-list';
72
- export * from './app/components/stepper';
73
- export * from './app/components/carousel';
74
- export * from './app/components/calendar';
75
- export * from './app/components/time-input';
76
- export * from './app/components/date-input';
77
- export * from './app/components/date-range-input';
78
- export * from './app/components/date-time-input';
79
- export * from './app/components/cluster';
80
- export * from './app/components/center';
81
- export * from './app/components/sidebar';
82
- export * from './app/components/switcher';
83
- export * from './app/components/cover';
84
- export * from './app/components/frame';
85
- export * from './app/components/bleed';
86
- export * from './app/components/reveal';
87
- export * from './app/components/pin';
88
- export * from './app/components/page';
89
- export * from './app/components/empty-state';
90
- export * from './app/components/error-boundary';
91
- export * from './app/components/not-found-pattern';
92
- export * from './app/components/tabs';
93
- export * from './app/components/tile-grid';
94
- export * from './app/components/status-tile';
95
- export * from './app/components/activity-feed';
96
- export * from './app/components/breadcrumb';
97
- export * from './app/components/combobox';
98
- export * from './app/components/disclosure';
99
- export * from './app/components/form';
100
- export * from './app/components/foundation-swatch';
101
- export * from './app/components/icon-button';
102
- export * from './app/components/nav-group';
103
- export * from './app/components/pagination';
104
- export * from './app/components/sketch';
105
- export * from './app/components/stepper-field';
106
- export * from './app/components/text-lockup';
107
- export * from './app/components/toast';
108
- export * from './app/layouts/CaseStudyLayout';
109
- export * from './app/components/error-pattern';
110
- export * from './app/layouts/HdsSystemDocLayout';
111
- export { default as hds } from './app/design-system/tokens';
1
+ export * from './app/components/alert.js';
2
+ export * from './app/components/asset-img.js';
3
+ export * from './app/components/avatar.js';
4
+ export * from './app/components/badge.js';
5
+ export * from './app/components/box.js';
6
+ export * from './app/components/button.js';
7
+ export * from './app/components/callout.js';
8
+ export * from './app/components/field.js';
9
+ export * from './app/components/stat.js';
10
+ export * from './app/components/status-list-item.js';
11
+ export * from './app/components/card.js';
12
+ export * from './app/components/cinematic-link.js';
13
+ export * from './app/components/code-block.js';
14
+ export * from './app/components/component-instance-matrix.js';
15
+ export * from './app/components/container.js';
16
+ export * from './app/components/dialog.js';
17
+ export * from './app/components/divider.js';
18
+ export * from './app/components/menu.js';
19
+ export * from './app/components/popover.js';
20
+ export * from './app/components/hds-tooltip.js';
21
+ export * from './app/components/doc-link-card.js';
22
+ export * from './app/components/grid.js';
23
+ export * from './app/components/heading-stack.js';
24
+ export * from './app/components/history-card.js';
25
+ export * from './app/components/icon.js';
26
+ export * from './app/components/inline-code.js';
27
+ export * from './app/components/inline-link.js';
28
+ export * from './app/components/input.js';
29
+ export * from './app/components/textarea.js';
30
+ export * from './app/components/checkbox.js';
31
+ export * from './app/components/radio.js';
32
+ export * from './app/components/slider.js';
33
+ export * from './app/components/toggle.js';
34
+ export * from './app/components/nav-item.js';
35
+ export * from './app/components/progress.js';
36
+ export * from './app/components/skeleton.js';
37
+ export * from './app/components/spinner.js';
38
+ export * from './app/components/segmented-control.js';
39
+ export * from './app/components/stack.js';
40
+ export * from './app/components/surface.js';
41
+ export * from './app/components/table.js';
42
+ export * from './app/components/tag.js';
43
+ export * from './app/components/text.js';
44
+ export * from './app/components/token.js';
45
+ export * from './app/components/kbd.js';
46
+ export * from './app/components/status-dot.js';
47
+ export * from './app/components/timestamp.js';
48
+ export * from './app/components/blockquote.js';
49
+ export * from './app/components/visually-hidden.js';
50
+ export * from './app/components/avatar-group.js';
51
+ export * from './app/components/button-group.js';
52
+ export * from './app/components/input-group.js';
53
+ export * from './app/components/circular-progress.js';
54
+ export * from './app/components/toggle-button.js';
55
+ export * from './app/components/aspect-ratio.js';
56
+ export * from './app/components/alert-dialog.js';
57
+ export * from './app/components/hover-card.js';
58
+ export * from './app/components/context-menu.js';
59
+ export * from './app/components/side-nav.js';
60
+ export * from './app/components/command-palette.js';
61
+ export * from './app/components/image-lightbox.js';
62
+ export * from './app/components/metadata-list.js';
63
+ export * from './app/components/overflow-list.js';
64
+ export * from './app/components/top-nav.js';
65
+ export * from './app/components/app-shell.js';
66
+ export * from './app/components/selectable-card.js';
67
+ export * from './app/components/tokenizer.js';
68
+ export * from './app/components/file-input.js';
69
+ export * from './app/components/multi-selector.js';
70
+ export * from './app/components/toolbar.js';
71
+ export * from './app/components/tree-list.js';
72
+ export * from './app/components/stepper.js';
73
+ export * from './app/components/carousel.js';
74
+ export * from './app/components/calendar.js';
75
+ export * from './app/components/time-input.js';
76
+ export * from './app/components/date-input.js';
77
+ export * from './app/components/date-range-input.js';
78
+ export * from './app/components/date-time-input.js';
79
+ export * from './app/components/cluster.js';
80
+ export * from './app/components/center.js';
81
+ export * from './app/components/sidebar.js';
82
+ export * from './app/components/switcher.js';
83
+ export * from './app/components/cover.js';
84
+ export * from './app/components/frame.js';
85
+ export * from './app/components/bleed.js';
86
+ export * from './app/components/reveal.js';
87
+ export * from './app/components/pin.js';
88
+ export * from './app/components/page.js';
89
+ export * from './app/components/empty-state.js';
90
+ export * from './app/components/error-boundary.js';
91
+ export * from './app/components/not-found-pattern.js';
92
+ export * from './app/components/tabs.js';
93
+ export * from './app/components/tile-grid.js';
94
+ export * from './app/components/status-tile.js';
95
+ export * from './app/components/activity-feed.js';
96
+ export * from './app/components/breadcrumb.js';
97
+ export * from './app/components/combobox.js';
98
+ export * from './app/components/disclosure.js';
99
+ export * from './app/components/form.js';
100
+ export * from './app/components/foundation-swatch.js';
101
+ export * from './app/components/icon-button.js';
102
+ export * from './app/components/nav-group.js';
103
+ export * from './app/components/pagination.js';
104
+ export * from './app/components/sketch.js';
105
+ export * from './app/components/stepper-field.js';
106
+ export * from './app/components/text-lockup.js';
107
+ export * from './app/components/toast.js';
108
+ export * from './app/layouts/CaseStudyLayout.js';
109
+ export * from './app/components/error-pattern.js';
110
+ export * from './app/layouts/HdsSystemDocLayout.js';
111
+ export { default as hds } from './app/design-system/tokens.js';
112
112
  /** Raw DTCG design tokens (the contents of `hirobius.tokens.json`). */
113
113
  export declare const tokens: {
114
114
  $schema: string;
@@ -2554,8 +2554,8 @@ export declare const tokens: {
2554
2554
  };
2555
2555
  };
2556
2556
  };
2557
- export { cn } from './lib/utils';
2558
- export { HdsThemeProvider, useHdsTheme } from './app/context/hds-theme';
2559
- export type { HdsTheme, HdsDensity, HdsThemeValue, HdsThemeProviderProps, } from './app/context/hds-theme';
2560
- export { HdsRouterProvider, useHdsRouter } from './app/context/RouterContext';
2561
- export type { HdsRouterAdapter, HdsRouterProviderProps, HdsLinkComponent, HdsLinkProps, HdsNavigateOptions, } from './app/context/RouterContext';
2557
+ export { cn } from './lib/utils.js';
2558
+ export { HdsThemeProvider, useHdsTheme } from './app/context/hds-theme.js';
2559
+ export type { HdsTheme, HdsDensity, HdsThemeValue, HdsThemeProviderProps, } from './app/context/hds-theme.js';
2560
+ export { HdsRouterProvider, useHdsRouter } from './app/context/RouterContext.js';
2561
+ export type { HdsRouterAdapter, HdsRouterProviderProps, HdsLinkComponent, HdsLinkProps, HdsNavigateOptions, } from './app/context/RouterContext.js';
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Build-environment checks that survive being published.
3
+ *
4
+ * Shipped library code must never read `import.meta.env`. Vite's library build
5
+ * evaluates it at HDS's build time, not the consumer's, so `import.meta.env.DEV`
6
+ * bakes to `false` and `.PROD` to `true` inside `dist/` — turning every guard
7
+ * written against them into a constant for everyone who installs the package.
8
+ *
9
+ * `process.env.NODE_ENV` is the replacement because consumer bundlers
10
+ * substitute that exact member expression at THEIR build time, which is the
11
+ * moment that actually knows the answer. Vite, webpack, Next and esbuild all do
12
+ * it by default; plain Rollup needs `@rollup/plugin-replace` configured, so this
13
+ * is a convention rather than a guarantee, and the fallback below is what makes
14
+ * it safe when nobody substituted anything.
15
+ *
16
+ * READ THE SHAPE BEFORE CHANGING IT. The substitution replaces the member
17
+ * expression and nothing around it, so wrapping the read in `typeof process !==
18
+ * 'undefined' && ...` leaves a runtime check that a browser bundle always fails,
19
+ * inverting the answer in a production build. The bare read inside a `try` is
20
+ * substituted cleanly and the `catch` covers the one runtime that has no
21
+ * `process` at all: native ESM in a browser with no bundler. That runtime is
22
+ * always a real page, never a dev build, so it resolves to production and gets
23
+ * no warnings. Measured output and the reasoning live in `env.test.ts`, which
24
+ * fails if this shape is undone.
25
+ *
26
+ * Guarded by `src/lib/env.test.ts` and `tests/no-shipped-import-meta-env.test.ts`.
27
+ */
28
+ /** True when the CONSUMER built for production, or when there is no build at all. */
29
+ export declare function isProduction(): boolean;
30
+ /** True outside a consumer production build — the gate for dev-only warnings. */
31
+ export declare function isDevelopment(): boolean;
@@ -1,3 +1,3 @@
1
- import type { SystemManifest } from '../app/data/manifest-types';
1
+ import type { SystemManifest } from '../app/data/manifest-types.js';
2
2
  declare const manifest: SystemManifest;
3
3
  export default manifest;
@@ -11,6 +11,6 @@
11
11
  * - `useScrollProgress` — Motion-based 0→1 scroll progress for a target element
12
12
  * (no new dependency; works with or without `SmoothScroll`).
13
13
  */
14
- export { SmoothScroll, type SmoothScrollProps, type SmoothScrollOptions } from './smooth-scroll';
15
- export { useScrollProgress, type UseScrollProgressOptions, type ScrollOffset, } from './use-scroll-progress';
14
+ export { SmoothScroll, type SmoothScrollProps, type SmoothScrollOptions } from './smooth-scroll.js';
15
+ export { useScrollProgress, type UseScrollProgressOptions, type ScrollOffset, } from './use-scroll-progress.js';
16
16
  export { useLenis } from 'lenis/react';
@@ -213,7 +213,7 @@
213
213
  "$value": "#2a1659",
214
214
  "$description": "Specific value within the lilac range at a defined lightness step."
215
215
  },
216
- "$description": "Discrete values within the lilac range at defined lightness steps. Mirrors the blue ramp's stop set; available to downstream brand overlays."
216
+ "$description": "Lilac ramp at fixed lightness steps. Mirrors the blue ramp's stops; available to brand overlays."
217
217
  },
218
218
  "amber": {
219
219
  "50": {
@@ -1180,7 +1180,7 @@
1180
1180
  },
1181
1181
  "onAccent": {
1182
1182
  "$value": "{primitive.color.neutral.white}",
1183
- "$description": "Text/icon color on accent fills. Flips to a dark neutral in dark mode, where the accent fill is a light neutral.",
1183
+ "$description": "Text/icon color on accent fills. Flips to a dark neutral in dark mode, where accent fills are light.",
1184
1184
  "$extensions": {
1185
1185
  "com.figma.variables": {
1186
1186
  "modes": {
@@ -1853,7 +1853,7 @@
1853
1853
  "action": {
1854
1854
  "$type": "dimension",
1855
1855
  "$value": "{primitive.radius.8}",
1856
- "$description": "The shape knob. Corner radius for interactive action elements (buttons, inputs, badges, alerts, segmented items). Tailwind's rounded-md resolves to exactly this value via --role-radius; containers are one step above it at rounded-lg. Override role.radius in a tenant overlay to reshape the whole system from one value."
1856
+ "$description": "Corner radius for action elements (buttons, inputs, badges); Tailwind rounded-md resolves here. Override role.radius to reshape the system."
1857
1857
  }
1858
1858
  },
1859
1859
  "borderWidth": {
package/package.json CHANGED
@@ -19,7 +19,7 @@
19
19
  },
20
20
  "license": "SEE LICENSE IN NOTICE.md",
21
21
  "private": false,
22
- "version": "0.13.1",
22
+ "version": "0.15.0",
23
23
  "engines": {
24
24
  "node": ">=20",
25
25
  "pnpm": ">=8"
@@ -239,7 +239,7 @@
239
239
  "audit:sidecar": "node scripts/generate-security-posture.mjs",
240
240
  "audit:style-dictionary": "bash scripts/poc/style-dictionary-poc/run.sh",
241
241
  "build:lib": "vite build -c vite.config.lib.ts && pnpm build:types && node scripts/build-vars-css.mjs && node scripts/embed-fonts.mjs && node scripts/build-styles-css.mjs && node scripts/build-static-css.mjs",
242
- "build:types": "tsc -p tsconfig.dts.json && node scripts/strip-dts-side-effects.mjs",
242
+ "build:types": "tsc -p tsconfig.dts.json && node scripts/strip-dts-side-effects.mjs && node scripts/add-dts-extensions.mjs",
243
243
  "catalog": "node scripts/generate-visual-catalog.mjs",
244
244
  "changelog:generate": "node scripts/generate-changelog.mjs",
245
245
  "changeset": "changeset",
@@ -316,11 +316,11 @@
316
316
  "figma:connect:generate": "node scripts/generate-code-connect.mjs",
317
317
  "figma:connect:parse": "figma connect parse --exit-on-unreadable-files --skip-update-check",
318
318
  "figma:links": "node scripts/figma-links.mjs",
319
+ "figma:disposition": "node scripts/figma-disposition.mjs",
319
320
  "figma:model": "node scripts/build-figma-model.mjs",
320
321
  "figma:native-import": "node scripts/build-figma-native-import.mjs",
321
322
  "figma:push": "node scripts/figma-push.mjs",
322
323
  "figma:snapshot": "node scripts/figma-snapshot.mjs",
323
- "guardrail:firing-stats": "node scripts/refresh-firing-stats.mjs",
324
324
  "harvest:design-md": "node scripts/harvest-design-md.mjs",
325
325
  "heal": "node scripts/self-heal.mjs",
326
326
  "heal:smoke": "node scripts/self-heal.mjs --smoke",
@@ -333,13 +333,13 @@
333
333
  "manifest:generate": "node scripts/generate-manifest.mjs && node scripts/generate-component-api.mjs && node scripts/enrich-manifest.mjs",
334
334
  "manifest:project": "node scripts/generate-manifest-projection.mjs",
335
335
  "prebuild:lib": "node scripts/generate-component-api.mjs",
336
- "pretest": "node scripts/validate-manifest.mjs && node scripts/check-manifest-drift.mjs && node scripts/check-manifest-schema-semver.mjs && node scripts/audit-component-integrity.mjs --completeness && node scripts/check-source-canon.mjs && node scripts/check-binding-drift.mjs && node scripts/check-registry.mjs && node scripts/check-tenant-tokens.mjs && knip --no-exit-code",
336
+ "pretest": "node scripts/validate-manifest.mjs && node scripts/check-manifest-drift.mjs && node scripts/check-manifest-schema-semver.mjs && node scripts/audit-component-integrity.mjs --completeness && node scripts/check-source-canon.mjs && node scripts/check-binding-drift.mjs && node scripts/check-registry.mjs && node scripts/check-tenant-tokens.mjs && node scripts/check-props-exports.mjs && knip --no-exit-code",
337
337
  "promote": "node scripts/promote.mjs",
338
338
  "hds:new": "node scripts/scaffold-component.mjs",
339
339
  "scaffold:component": "node scripts/scaffold-component.mjs",
340
340
  "scaffold:tenant": "node scripts/scaffold-tenant.mjs",
341
341
  "size-limit": "size-limit --config .size-limit.cjs",
342
- "smoke:consumer": "node scripts/smoke-consumer.mjs",
342
+ "smoke:consumer": "node scripts/smoke-consumer.mjs && node scripts/check-published-types.mjs && node scripts/check-rsc-directives.mjs",
343
343
  "sync": "node scripts/build-tokens.mjs && node scripts/audit-tokens.mjs --forbidden && node scripts/build-handoff.mjs && node scripts/build-design-md.mjs && node scripts/build-figma-variables.mjs",
344
344
  "sync:health": "node scripts/generate-manifest.mjs && node scripts/generate-component-api.mjs && node scripts/enrich-manifest.mjs && node scripts/build-tokens.mjs && node scripts/audit-tokens.mjs --report-only && node scripts/build-design-md.mjs",
345
345
  "test": "vitest run --passWithNoTests",
@@ -368,6 +368,9 @@
368
368
  "prebuild-storybook": "node scripts/generate-component-api.mjs",
369
369
  "prestorybook": "node scripts/generate-component-api.mjs",
370
370
  "pretypecheck": "node scripts/audit-tokens.mjs --report-only",
371
- "preview:build": "vite build --config preview/vite.config.mjs"
371
+ "preview:build": "vite build --config preview/vite.config.mjs",
372
+ "figma:inventory": "node scripts/figma-inventory.mjs",
373
+ "check:figma-coverage": "node scripts/check-figma-coverage.mjs",
374
+ "guardrail:sweep": "node scripts/guardrail-sweep.mjs"
372
375
  }
373
376
  }