basalt-ui 1.32.0 → 1.33.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 (145) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/MIGRATING.md +228 -20
  3. package/agent/rules/basalt-mantine.md +2 -2
  4. package/agent/rules/basalt-state.md +2 -2
  5. package/agent/rules/basalt-tokens.md +1 -1
  6. package/configs/oxlint-plugin.js +160 -89
  7. package/configs/oxlint-plugin.test.ts +273 -10
  8. package/configs/oxlint.json +2 -2
  9. package/dist/agent/coalesce.d.ts.map +1 -1
  10. package/dist/agent/coalesce.js +1 -2
  11. package/dist/agent/merge.d.ts.map +1 -1
  12. package/dist/agent/merge.js +1 -2
  13. package/dist/agent-chat/relative-time.d.ts +9 -0
  14. package/dist/agent-chat/relative-time.d.ts.map +1 -1
  15. package/dist/agent-chat/relative-time.js +1 -2
  16. package/dist/agent-chat/thread-message.d.ts.map +1 -1
  17. package/dist/agent-chat/thread-message.js +1 -2
  18. package/dist/charts/kinds/BandStrip.d.ts.map +1 -1
  19. package/dist/charts/kinds/BandStrip.js +3 -3
  20. package/dist/charts/kinds/Bars.d.ts.map +1 -1
  21. package/dist/charts/kinds/Bars.js +1 -2
  22. package/dist/charts/kinds/StackedArea.d.ts.map +1 -1
  23. package/dist/charts/kinds/StackedArea.js +1 -2
  24. package/dist/charts/primitives/legend-disclosure.d.ts.map +1 -1
  25. package/dist/cli/audit-allows.d.ts +1 -1
  26. package/dist/cli/audit-allows.d.ts.map +1 -1
  27. package/dist/cli/audit-allows.js +4 -4
  28. package/dist/cli/check-theme.d.ts.map +1 -1
  29. package/dist/cli/check-theme.js +1 -2
  30. package/dist/cli/config.d.ts +197 -0
  31. package/dist/cli/config.d.ts.map +1 -0
  32. package/dist/cli/config.js +20 -0
  33. package/dist/cli/doctor.js +1 -1
  34. package/dist/cli/guard-hook.d.ts.map +1 -1
  35. package/dist/cli/guard-hook.js +2 -8
  36. package/dist/cli/index.d.ts +2 -196
  37. package/dist/cli/index.d.ts.map +1 -1
  38. package/dist/cli/index.js +1 -18
  39. package/dist/commands/define-commands.d.ts.map +1 -1
  40. package/dist/commands/define-commands.js +2 -2
  41. package/dist/commands/define-overlays.d.ts.map +1 -1
  42. package/dist/commands/define-overlays.js +1 -2
  43. package/dist/common/index.d.ts +0 -1
  44. package/dist/common/index.d.ts.map +1 -1
  45. package/dist/common/index.js +0 -2
  46. package/dist/common/validate.d.ts +2 -2
  47. package/dist/common/validate.d.ts.map +1 -1
  48. package/dist/common/validate.js +2 -3
  49. package/dist/content/article-card.d.ts.map +1 -1
  50. package/dist/content/article-card.js +4 -1
  51. package/dist/controls/enum-filter.d.ts.map +1 -1
  52. package/dist/controls/enum-filter.js +3 -13
  53. package/dist/controls/filter-pill.d.ts +8 -0
  54. package/dist/controls/filter-pill.d.ts.map +1 -1
  55. package/dist/controls/filter-pill.js +15 -0
  56. package/dist/controls/multi-select-filter.d.ts.map +1 -1
  57. package/dist/controls/multi-select-filter.js +3 -13
  58. package/dist/controls/number-filter.d.ts +3 -0
  59. package/dist/controls/number-filter.d.ts.map +1 -1
  60. package/dist/controls/number-filter.js +12 -4
  61. package/dist/controls/range-filter.d.ts.map +1 -1
  62. package/dist/controls/range-filter.js +1 -2
  63. package/dist/data/data-table.d.ts +9 -2
  64. package/dist/data/data-table.d.ts.map +1 -1
  65. package/dist/data/data-table.js +2 -3
  66. package/dist/forms/form-layout.d.ts +6 -1
  67. package/dist/forms/form-layout.d.ts.map +1 -1
  68. package/dist/forms/form-layout.module.css +3 -0
  69. package/dist/guard/index.d.ts +18 -4
  70. package/dist/guard/index.d.ts.map +1 -1
  71. package/dist/guard/index.js +67 -31
  72. package/dist/guard/types.d.ts +3 -3
  73. package/dist/guard/types.d.ts.map +1 -1
  74. package/dist/guard/vx-names.d.ts +3 -0
  75. package/dist/guard/vx-names.d.ts.map +1 -0
  76. package/dist/guard/vx-names.js +257 -0
  77. package/dist/notifications/mount-guard.d.ts.map +1 -1
  78. package/dist/notifications/mount-guard.js +1 -2
  79. package/dist/provider/index.d.ts.map +1 -1
  80. package/dist/provider/index.js +2 -3
  81. package/dist/provider/lab-theme.d.ts +5 -4
  82. package/dist/provider/lab-theme.d.ts.map +1 -1
  83. package/dist/provider/lab-theme.js +1 -3
  84. package/dist/router-tanstack/search-store.d.ts +18 -0
  85. package/dist/router-tanstack/search-store.d.ts.map +1 -1
  86. package/dist/router-tanstack/search-store.js +33 -1
  87. package/dist/shell/mobile-nav-model.d.ts.map +1 -1
  88. package/dist/shell/mobile-nav-model.js +3 -4
  89. package/dist/shell/page-bar.d.ts +24 -0
  90. package/dist/shell/page-bar.d.ts.map +1 -1
  91. package/dist/shell/page-bar.js +1 -2
  92. package/dist/surfaces.d.ts +1 -1
  93. package/dist/surfaces.d.ts.map +1 -1
  94. package/dist/surfaces.js +2 -0
  95. package/dist/tokens/index.d.ts +2 -0
  96. package/dist/tokens/index.d.ts.map +1 -1
  97. package/dist/tokens/index.js +10 -0
  98. package/dist/tokens/size-classes.d.ts +13 -0
  99. package/dist/tokens/size-classes.d.ts.map +1 -1
  100. package/dist/tokens/size-classes.js +8 -0
  101. package/llms.txt +2 -2
  102. package/package.json +1 -1
  103. package/src/agent/coalesce.ts +1 -2
  104. package/src/agent/merge.ts +1 -2
  105. package/src/agent-chat/relative-time.ts +1 -2
  106. package/src/agent-chat/thread-message.tsx +2 -3
  107. package/src/charts/kinds/BandStrip.tsx +7 -3
  108. package/src/charts/kinds/Bars.tsx +1 -2
  109. package/src/charts/kinds/StackedArea.tsx +4 -2
  110. package/src/charts/primitives/legend-disclosure.tsx +1 -0
  111. package/src/cli/audit-allows.ts +10 -9
  112. package/src/cli/check-theme.ts +1 -2
  113. package/src/cli/config.ts +209 -0
  114. package/src/cli/doctor.ts +2 -2
  115. package/src/cli/guard-hook.ts +2 -8
  116. package/src/cli/index.ts +2 -206
  117. package/src/commands/define-commands.ts +2 -2
  118. package/src/commands/define-overlays.ts +1 -2
  119. package/src/common/index.ts +0 -1
  120. package/src/common/validate.ts +4 -5
  121. package/src/content/article-card.tsx +1 -0
  122. package/src/controls/enum-filter.tsx +3 -13
  123. package/src/controls/filter-pill.tsx +20 -0
  124. package/src/controls/multi-select-filter.tsx +3 -13
  125. package/src/controls/number-filter.tsx +24 -3
  126. package/src/controls/range-filter.tsx +1 -2
  127. package/src/data/data-table.tsx +11 -5
  128. package/src/forms/form-layout.module.css +3 -0
  129. package/src/forms/form-layout.tsx +6 -1
  130. package/src/guard/index.ts +151 -62
  131. package/src/guard/types.ts +3 -2
  132. package/src/guard/vx-names.ts +257 -0
  133. package/src/notifications/mount-guard.ts +1 -2
  134. package/src/provider/index.tsx +2 -3
  135. package/src/provider/lab-theme.ts +28 -21
  136. package/src/router-tanstack/search-store.ts +73 -1
  137. package/src/shell/mobile-nav-model.ts +3 -5
  138. package/src/shell/page-bar.tsx +25 -4
  139. package/src/surfaces.ts +2 -0
  140. package/src/tokens/index.ts +10 -0
  141. package/src/tokens/size-classes.ts +14 -0
  142. package/dist/common/is-dev.d.ts +0 -3
  143. package/dist/common/is-dev.d.ts.map +0 -1
  144. package/dist/common/is-dev.js +0 -6
  145. package/src/common/is-dev.ts +0 -4
@@ -8,15 +8,14 @@ import {
8
8
  unmatchedExemptPatterns
9
9
  } from "../guard/index.js";
10
10
  import { auditAllows } from "./audit-allows.js";
11
+ import { DEFAULT_ROOTS, resolveRoots } from "./config.js";
11
12
  import {
12
13
  conflictingProfileFlags,
13
14
  declaredProfile,
14
- DEFAULT_ROOTS,
15
15
  hasBasaltKey,
16
16
  readBasaltConfig,
17
17
  resolveExemptRules,
18
18
  resolveProjectDir,
19
- resolveRoots,
20
19
  scannableFiles,
21
20
  SERIES_MODULE_HINT_RE,
22
21
  waiverHintFor
@@ -0,0 +1,197 @@
1
+ import type { GuardKind, GuardSeverity } from '../guard/index.js';
2
+ /** Shape of the optional `"basalt"` key in a consumer's package.json. */
3
+ export type BasaltConfig = {
4
+ /** Source roots to scan. Default: `['src']`. Set explicitly for a monorepo layout. */
5
+ roots?: string[];
6
+ /** Files exempt from the scan (they ARE the palette source). Default: argo's exempt set. */
7
+ exempt?: string[];
8
+ /**
9
+ * Declares this package a tokens-only consumer: it uses the `--vx-*` layer and no Mantine. Turns
10
+ * off every guard kind whose remedy is a Mantine component, a Mantine prop or the React theme
11
+ * factory, leaving the color and typography kinds live. Default: `'mantine'`.
12
+ *
13
+ * Deliberately not inferred from a missing `@mantine/core`: silencing 17 rules (the live count is
14
+ * `TOKENS_ONLY_DISABLED_KINDS.size`, which the check-theme banner prints) is a decision, and
15
+ * a repo that keeps Mantine in a workspace package would otherwise switch off half its own guard
16
+ * without saying so. `basalt-ui doctor` detects the shape and tells you to set this.
17
+ */
18
+ profile?: 'mantine' | 'tokens-only';
19
+ /**
20
+ * Extra files to scan, named individually and relative to this package — for a design surface
21
+ * that lives outside every root and outside the `index.html` / `public/` conventions the walker
22
+ * already derives. Also the ONLY way a `.json` is ever scanned: the guard understands JSON as
23
+ * markup, but a consumer repo's JSON is overwhelmingly config, fixtures and lockfiles, so
24
+ * blanket-scanning it is a false-positive generator rather than a guard.
25
+ *
26
+ * @example
27
+ * { include: ['app/manifest.json', 'emails/template.html'] }
28
+ */
29
+ include?: string[];
30
+ /** Named spacing-scale steps (px) flagged when used as a raw spacing prop. Default: 10/12/16/20/32. */
31
+ spacingSteps?: number[];
32
+ /** Per-kind severity override — `'warn'` reports without failing, `'error'` fails the build.
33
+ * See `GuardSeverity` in ../guard/types for the grace-minor doctrine behind it. */
34
+ severity?: Partial<Record<GuardKind, GuardSeverity>>;
35
+ /** Off-identity Mantine accent families forbidden as chrome accents. Default: argo's set. */
36
+ forbiddenAccents?: string[];
37
+ /** Earned accent hue recorded in DESIGN.md `{{ACCENT_HUE}}`. Default: `blue`. */
38
+ accentHue?: string;
39
+ /**
40
+ * Flag any numeric radius prop literal (radius={6}) — use the radius token scale instead.
41
+ * Default: `true` (ON). Set `false` to disable the `raw-radius` check (e.g. a repo that DEFINES
42
+ * the radius primitives).
43
+ */
44
+ rawRadius?: boolean;
45
+ /**
46
+ * Flag ad-hoc inline surface styling (`border`/`borderRadius`/`boxShadow` literals in a `style={{}}`)
47
+ * that bypasses the radius-token + `VX.surface.*` + `VX.shadowCard` system. Default: `true` (ON).
48
+ * Set `false` to disable the `raw-surface` check.
49
+ */
50
+ rawSurface?: boolean;
51
+ /**
52
+ * Flag `withBorder` on a `Card` / `Paper`. Card depth is `--vx-shadow-card` — a whisper shadow
53
+ * with the 1px ring baked into the SAME value — so `withBorder` draws a SECOND, real border over
54
+ * that ring and the card reads heavy/boxed (docs/DESIGN-SPEC.md doctrine inversion #1).
55
+ * `withBorder={false}` and `<Card.Section withBorder>` (a section divider) both pass.
56
+ * Default: `true` (ON). Set `false` to disable the `card-with-border` check.
57
+ */
58
+ cardWithBorder?: boolean;
59
+ /**
60
+ * Flag references to a raw Mantine ramp step used for surface color
61
+ * (`var(--mantine-color-gray-N)` / `var(--mantine-color-dark-N)`) — these bypass the basalt
62
+ * surface tokens. Default: `true` (ON). Set `false` to disable the `off-system-surface-var` check.
63
+ */
64
+ offSystemSurfaceVar?: boolean;
65
+ /**
66
+ * Flag a SHADE-PINNED Mantine color — `c="yellow.7"`, `bg="blue.4"`,
67
+ * `var(--mantine-color-red-6)`. A pinned step is one fixed swatch in BOTH color schemes, so it
68
+ * cannot stay legible in either; route a verdict color through `VX.status.*` / `--vx-status-*`,
69
+ * or drop the index (`c="red"`) and let the theme resolve the shade per scheme. `gray-*`/`dark-*`
70
+ * in `var()` form belong to `off-system-surface-var` instead. Default: `true` (ON). Set `false`
71
+ * to disable the `mantine-shade-index` check.
72
+ */
73
+ mantineShadeIndex?: boolean;
74
+ /**
75
+ * Flag raw lowercase JSX layout/surface elements (`div`/`span`/`section`/…) carrying an inline
76
+ * `style={{}}` with a layout/surface property — steer to a Mantine layout primitive
77
+ * (`Box`/`Flex`/`Grid`/`Stack`/`Group`/`SimpleGrid`/`Paper`). Default: `true` (ON). Set `false`
78
+ * to disable the `raw-html-layout` check.
79
+ */
80
+ rawHtmlLayout?: boolean;
81
+ /**
82
+ * Flag spacing/sizing literals inside an inline `style={{}}` (`padding`/`margin`/`gap`/…) — the
83
+ * `raw-spacing` check only catches the Mantine prop syntax. Default: `true` (ON). Set `false` to
84
+ * disable the `inline-spacing` check.
85
+ */
86
+ inlineSpacing?: boolean;
87
+ /**
88
+ * Flag `display: 'flex' | 'grid' | 'inline-flex' | 'inline-grid'` in an inline `style={{}}` —
89
+ * steer to `<Flex>`/`<Grid>`/`<Group>`. Default: `true` (ON). Set `false` to disable the
90
+ * `inline-display` check.
91
+ */
92
+ inlineDisplay?: boolean;
93
+ /**
94
+ * Flag raw `<AxisLeft>` / `<AxisBottom>` / `<AxisRight>` visx JSX inside chart files (a path
95
+ * containing `/charts/`) — these bypass the `AxisLeftNumeric` / `AxisBottomDate` /
96
+ * `AxisRightNumeric` primitives that carry the theme tokens + smart ticks. The legitimate wrapper
97
+ * (`Axes.tsx`, which IS the primitive) is exempt. Default: `true` (ON). Set `false` to disable the
98
+ * `raw-visx-axis` check.
99
+ */
100
+ rawVisxAxis?: boolean;
101
+ /**
102
+ * Flag a hardcoded duration/spring/ease literal inline in a `transition={{...}}` prop — route it
103
+ * through `MOTION_DURATION` / `MOTION_SPRING` / `MOTION_EASE_STANDARD` instead. Default: `true`
104
+ * (ON). Set `false` to disable the `raw-motion-value` check.
105
+ */
106
+ rawMotionValue?: boolean;
107
+ /**
108
+ * Flag a chart entry-point JSX tag (`MultiLine`/`Bars`/`Donut`/`DualPanel`/`Heatmap`/`ZonedLine`/
109
+ * `StackedArea`/`LineSparkline`/`BarSparkline`) missing an `ariaLabel` prop. Default: `true`
110
+ * (ON). Set `false` to disable the `chart-missing-aria-label` check.
111
+ */
112
+ chartMissingAriaLabel?: boolean;
113
+ /**
114
+ * Flag a raw lowercase `<input>`/`<select>`/`<textarea>` JSX element — it bypasses the entire
115
+ * theme, not just the iOS font-size floor. Use the Mantine equivalents (`TextInput`,
116
+ * `NumberInput`, `Select`, `Textarea`, …) instead. Default: `true` (ON). Set `false` to disable
117
+ * the `raw-form-control` check.
118
+ */
119
+ rawFormControl?: boolean;
120
+ /**
121
+ * Flag a `fontSize`/`font-size` literal below 16 inside a `style={{…}}` on a raw form control,
122
+ * or a Mantine `styles={{ input: {…} }}` per-part style — the `styles.css` iOS floor is
123
+ * `!important`, so the override is dead code. Default: `true` (ON). Set `false` to disable the
124
+ * `sub-16-input-font` check.
125
+ */
126
+ sub16InputFont?: boolean;
127
+ /**
128
+ * Path of the consumer's guard-exempt series file, for DESIGN.md `{{SERIES_MODULE_PATH}}`.
129
+ * Default: `<first basalt.root>/lib/series.ts` — see `resolveSeriesModulePath`.
130
+ */
131
+ seriesModulePath?: string;
132
+ /**
133
+ * Per-rule, per-path exemptions — complements whole-file `exempt` (which skips ALL rules for a
134
+ * file) and the hardcoded per-kind `appliesTo` scoping (e.g. `raw-visx-axis` → chart files
135
+ * only). Each value is a list of patterns matched against a finding's relative path. A pattern
136
+ * may be a whole path segment (`'agent'` matches `src/agent/x.tsx`, not `src/agenting.ts`), a
137
+ * relative path (`'public/site.webmanifest'`), a directory prefix, or a glob — `*` stops at `/`,
138
+ * `**` does not, and a slash-free glob also matches the basename, so `'*.module.css'` works.
139
+ * A trailing `/` is stripped. An entry that suppresses nothing is reported, and
140
+ * `check-theme --audit-allows` exits 1 on it. Default: `{}` (no exemptions).
141
+ *
142
+ * Two forms per kind. The bare array is paths only. The object form adds the REASON, which is
143
+ * the half a `theme-allow` carries and this key could not: JSON has no comments, so a
144
+ * `.webmanifest` / `.json` finding's only escape is this key, and it was un-reviewable by
145
+ * construction — the rationale ended up in a CLAUDE.md paragraph nobody reads next to the diff.
146
+ * `check-theme --audit-allows` prints the reason (or names its absence) beside what the entry
147
+ * still suppresses. The array form stays supported and unchanged; nothing here is required.
148
+ *
149
+ * @example
150
+ * { exemptRules: { 'inline-display': ['agent'] } } // inline-display never fires under src/agent/**
151
+ * @example
152
+ * { exemptRules: { 'raw-hex': { paths: ['site.webmanifest'],
153
+ * reason: 'a PWA manifest theme_color MUST be a literal hex — JSON cannot reference a CSS var' } } }
154
+ */
155
+ exemptRules?: Partial<Record<GuardKind, ExemptRuleEntry>>;
156
+ /**
157
+ * Declares an intentional `ai` package major-version skew across workspace packages, exempting
158
+ * `doctor`'s `ai-major-parity` hard check. The value IS the reason — a bare `true` is rejected,
159
+ * because the whole point of this key is that the pairing is written down, not just switched off.
160
+ * A written declaration is the pin `basalt/ai-sdk-major`'s own comment notes is otherwise missing.
161
+ *
162
+ * Semantics: absent (or present but not a non-empty string) → the skew still hard-fails exactly as
163
+ * without this key. A non-empty string with a skew present → `doctor` passes, echoing both the
164
+ * skew and this reason. A non-empty string with NO skew present → `doctor` warns that the
165
+ * exemption is stale and can be deleted (an exemption nobody re-checks is how a real, later skew
166
+ * slips through unnoticed).
167
+ *
168
+ * @example
169
+ * // apps/api streams on ai@5; apps/dashboard parses on ai@7; a producer-side TransformStream
170
+ * // neutralizes the one enum value that differs between the two majors.
171
+ * { aiMajorSkewReason: 'apps/api pinned to ai@5, apps/dashboard on ai@7 — the skew is neutralized '
172
+ * + 'by a producer-side TransformStream in apps/api/src/stream-transform.ts' }
173
+ */
174
+ aiMajorSkewReason?: string;
175
+ };
176
+ /**
177
+ * One `basalt.exemptRules` value: the historical bare path list, or the same list with the reason
178
+ * it exists. See `BasaltConfig.exemptRules`.
179
+ */
180
+ export type ExemptRuleEntry = string[] | {
181
+ paths: string[];
182
+ reason: string;
183
+ };
184
+ /** The paths half of an exemption entry, whichever form it was written in. */
185
+ export declare function exemptRulePaths(entry: ExemptRuleEntry | undefined): string[];
186
+ /** The recorded reason for an exemption entry, or null for the bare-array form. */
187
+ export declare function exemptRuleReason(entry: ExemptRuleEntry | undefined): string | null;
188
+ export declare const DEFAULT_ROOT = "src";
189
+ export declare const DEFAULT_ROOTS: string[];
190
+ /**
191
+ * The configured source roots, or the built-in default. The ONE resolution every roots-derived seed
192
+ * reads — an empty `roots: []` falls back rather than resolving to nothing, because a bare `??`
193
+ * would let `[]` through and render an empty oxfmt glob into the seeded CI, reproducing the exact
194
+ * "matches zero files" break this derivation exists to prevent.
195
+ */
196
+ export declare function resolveRoots(cfg: BasaltConfig): string[];
197
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExD,yEAAyE;AACzE,MAAM,MAAM,YAAY,GAAG;IACzB,sFAAsF;IACtF,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,4FAA4F;IAC5F,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,aAAa,CAAA;IACnC;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,uGAAuG;IACvG,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB;wFACoF;IACpF,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,CAAA;IACpD,6FAA6F;IAC7F,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,CAAA;IACzD;;;;;;;;;;;;;;;;;OAiBG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,EAAE,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5E,8EAA8E;AAC9E,wBAAgB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,SAAS,GAAG,MAAM,EAAE,CAG5E;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGlF;AAED,eAAO,MAAM,YAAY,QAAQ,CAAA;AACjC,eAAO,MAAM,aAAa,UAAiB,CAAA;AAE3C;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,EAAE,CAExD"}
@@ -0,0 +1,20 @@
1
+ function exemptRulePaths(entry) {
2
+ if (entry === void 0) return [];
3
+ return Array.isArray(entry) ? entry : entry.paths;
4
+ }
5
+ function exemptRuleReason(entry) {
6
+ if (entry === void 0 || Array.isArray(entry)) return null;
7
+ return entry.reason.trim().length > 0 ? entry.reason.trim() : null;
8
+ }
9
+ const DEFAULT_ROOT = "src";
10
+ const DEFAULT_ROOTS = [DEFAULT_ROOT];
11
+ function resolveRoots(cfg) {
12
+ return cfg.roots?.length ? cfg.roots : DEFAULT_ROOTS;
13
+ }
14
+ export {
15
+ DEFAULT_ROOT,
16
+ DEFAULT_ROOTS,
17
+ exemptRulePaths,
18
+ exemptRuleReason,
19
+ resolveRoots
20
+ };
@@ -14,10 +14,10 @@ import {
14
14
  readIfExists,
15
15
  readManifest,
16
16
  resolveProjectDir,
17
- resolveRoots,
18
17
  scannableFiles,
19
18
  shippedAssetPath
20
19
  } from "./index.js";
20
+ import { resolveRoots } from "./config.js";
21
21
  import { findManifestAbove, parentInstallAdvice } from "./sync.js";
22
22
  function majorOf(range) {
23
23
  if (typeof range !== "string") return null;
@@ -1 +1 @@
1
- {"version":3,"file":"guard-hook.d.ts","sourceRoot":"","sources":["../../src/cli/guard-hook.ts"],"names":[],"mappings":"AAmBA;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwF5E"}
1
+ {"version":3,"file":"guard-hook.d.ts","sourceRoot":"","sources":["../../src/cli/guard-hook.ts"],"names":[],"mappings":"AAaA;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwF5E"}
@@ -1,14 +1,8 @@
1
1
  import { isAbsolute, relative, resolve } from "node:path";
2
2
  import { DEFAULT_GUARD_CONFIG } from "../guard/index.js";
3
3
  import { evaluateGuardHook } from "../guard/guard-hook.js";
4
- import {
5
- DEFAULT_ROOTS,
6
- SKIP,
7
- declaredProfile,
8
- defaultExempt,
9
- readBasaltConfig,
10
- resolveExemptRules
11
- } from "./index.js";
4
+ import { SKIP, declaredProfile, defaultExempt, readBasaltConfig, resolveExemptRules } from "./index.js";
5
+ import { DEFAULT_ROOTS } from "./config.js";
12
6
  async function guardHook(cwd = process.cwd()) {
13
7
  let raw;
14
8
  try {
@@ -1,4 +1,4 @@
1
- import type { GuardConfig, GuardKind, GuardSeverity } from '../guard/index.js';
1
+ import type { GuardConfig } from '../guard/index.js';
2
2
  import { RULE_NAMES, SKILL_NAMES } from '../surfaces.js';
3
3
  import { checkTheme } from './check-theme.js';
4
4
  import { doctor } from './doctor.js';
@@ -6,207 +6,13 @@ import { guardHook } from './guard-hook.js';
6
6
  import { init } from './init.js';
7
7
  import { sync } from './sync.js';
8
8
  import { fontsCss, normalizeColorFunctions, tokensCss } from './tokens-css.js';
9
- /** Shape of the optional `"basalt"` key in a consumer's package.json. */
10
- export type BasaltConfig = {
11
- /** Source roots to scan. Default: `['src']`. Set explicitly for a monorepo layout. */
12
- roots?: string[];
13
- /** Files exempt from the scan (they ARE the palette source). Default: argo's exempt set. */
14
- exempt?: string[];
15
- /**
16
- * Declares this package a tokens-only consumer: it uses the `--vx-*` layer and no Mantine. Turns
17
- * off every guard kind whose remedy is a Mantine component, a Mantine prop or the React theme
18
- * factory, leaving the color and typography kinds live. Default: `'mantine'`.
19
- *
20
- * Deliberately not inferred from a missing `@mantine/core`: silencing 17 rules (the live count is
21
- * `TOKENS_ONLY_DISABLED_KINDS.size`, which the check-theme banner prints) is a decision, and
22
- * a repo that keeps Mantine in a workspace package would otherwise switch off half its own guard
23
- * without saying so. `basalt-ui doctor` detects the shape and tells you to set this.
24
- */
25
- profile?: 'mantine' | 'tokens-only';
26
- /**
27
- * Extra files to scan, named individually and relative to this package — for a design surface
28
- * that lives outside every root and outside the `index.html` / `public/` conventions the walker
29
- * already derives. Also the ONLY way a `.json` is ever scanned: the guard understands JSON as
30
- * markup, but a consumer repo's JSON is overwhelmingly config, fixtures and lockfiles, so
31
- * blanket-scanning it is a false-positive generator rather than a guard.
32
- *
33
- * @example
34
- * { include: ['app/manifest.json', 'emails/template.html'] }
35
- */
36
- include?: string[];
37
- /** Named spacing-scale steps (px) flagged when used as a raw spacing prop. Default: 10/12/16/20/32. */
38
- spacingSteps?: number[];
39
- /** Per-kind severity override — `'warn'` reports without failing, `'error'` fails the build.
40
- * See `GuardSeverity` in ../guard/types for the grace-minor doctrine behind it. */
41
- severity?: Partial<Record<GuardKind, GuardSeverity>>;
42
- /** Off-identity Mantine accent families forbidden as chrome accents. Default: argo's set. */
43
- forbiddenAccents?: string[];
44
- /** Earned accent hue recorded in DESIGN.md `{{ACCENT_HUE}}`. Default: `blue`. */
45
- accentHue?: string;
46
- /**
47
- * Flag any numeric radius prop literal (radius={6}) — use the radius token scale instead.
48
- * Default: `true` (ON). Set `false` to disable the `raw-radius` check (e.g. a repo that DEFINES
49
- * the radius primitives).
50
- */
51
- rawRadius?: boolean;
52
- /**
53
- * Flag ad-hoc inline surface styling (`border`/`borderRadius`/`boxShadow` literals in a `style={{}}`)
54
- * that bypasses the radius-token + `VX.surface.*` + `VX.shadowCard` system. Default: `true` (ON).
55
- * Set `false` to disable the `raw-surface` check.
56
- */
57
- rawSurface?: boolean;
58
- /**
59
- * Flag `withBorder` on a `Card` / `Paper`. Card depth is `--vx-shadow-card` — a whisper shadow
60
- * with the 1px ring baked into the SAME value — so `withBorder` draws a SECOND, real border over
61
- * that ring and the card reads heavy/boxed (docs/DESIGN-SPEC.md doctrine inversion #1).
62
- * `withBorder={false}` and `<Card.Section withBorder>` (a section divider) both pass.
63
- * Default: `true` (ON). Set `false` to disable the `card-with-border` check.
64
- */
65
- cardWithBorder?: boolean;
66
- /**
67
- * Flag references to a raw Mantine ramp step used for surface color
68
- * (`var(--mantine-color-gray-N)` / `var(--mantine-color-dark-N)`) — these bypass the basalt
69
- * surface tokens. Default: `true` (ON). Set `false` to disable the `off-system-surface-var` check.
70
- */
71
- offSystemSurfaceVar?: boolean;
72
- /**
73
- * Flag a SHADE-PINNED Mantine color — `c="yellow.7"`, `bg="blue.4"`,
74
- * `var(--mantine-color-red-6)`. A pinned step is one fixed swatch in BOTH color schemes, so it
75
- * cannot stay legible in either; route a verdict color through `VX.status.*` / `--vx-status-*`,
76
- * or drop the index (`c="red"`) and let the theme resolve the shade per scheme. `gray-*`/`dark-*`
77
- * in `var()` form belong to `off-system-surface-var` instead. Default: `true` (ON). Set `false`
78
- * to disable the `mantine-shade-index` check.
79
- */
80
- mantineShadeIndex?: boolean;
81
- /**
82
- * Flag raw lowercase JSX layout/surface elements (`div`/`span`/`section`/…) carrying an inline
83
- * `style={{}}` with a layout/surface property — steer to a Mantine layout primitive
84
- * (`Box`/`Flex`/`Grid`/`Stack`/`Group`/`SimpleGrid`/`Paper`). Default: `true` (ON). Set `false`
85
- * to disable the `raw-html-layout` check.
86
- */
87
- rawHtmlLayout?: boolean;
88
- /**
89
- * Flag spacing/sizing literals inside an inline `style={{}}` (`padding`/`margin`/`gap`/…) — the
90
- * `raw-spacing` check only catches the Mantine prop syntax. Default: `true` (ON). Set `false` to
91
- * disable the `inline-spacing` check.
92
- */
93
- inlineSpacing?: boolean;
94
- /**
95
- * Flag `display: 'flex' | 'grid' | 'inline-flex' | 'inline-grid'` in an inline `style={{}}` —
96
- * steer to `<Flex>`/`<Grid>`/`<Group>`. Default: `true` (ON). Set `false` to disable the
97
- * `inline-display` check.
98
- */
99
- inlineDisplay?: boolean;
100
- /**
101
- * Flag raw `<AxisLeft>` / `<AxisBottom>` / `<AxisRight>` visx JSX inside chart files (a path
102
- * containing `/charts/`) — these bypass the `AxisLeftNumeric` / `AxisBottomDate` /
103
- * `AxisRightNumeric` primitives that carry the theme tokens + smart ticks. The legitimate wrapper
104
- * (`Axes.tsx`, which IS the primitive) is exempt. Default: `true` (ON). Set `false` to disable the
105
- * `raw-visx-axis` check.
106
- */
107
- rawVisxAxis?: boolean;
108
- /**
109
- * Flag a hardcoded duration/spring/ease literal inline in a `transition={{...}}` prop — route it
110
- * through `MOTION_DURATION` / `MOTION_SPRING` / `MOTION_EASE_STANDARD` instead. Default: `true`
111
- * (ON). Set `false` to disable the `raw-motion-value` check.
112
- */
113
- rawMotionValue?: boolean;
114
- /**
115
- * Flag a chart entry-point JSX tag (`MultiLine`/`Bars`/`Donut`/`DualPanel`/`Heatmap`/`ZonedLine`/
116
- * `StackedArea`/`LineSparkline`/`BarSparkline`) missing an `ariaLabel` prop. Default: `true`
117
- * (ON). Set `false` to disable the `chart-missing-aria-label` check.
118
- */
119
- chartMissingAriaLabel?: boolean;
120
- /**
121
- * Flag a raw lowercase `<input>`/`<select>`/`<textarea>` JSX element — it bypasses the entire
122
- * theme, not just the iOS font-size floor. Use the Mantine equivalents (`TextInput`,
123
- * `NumberInput`, `Select`, `Textarea`, …) instead. Default: `true` (ON). Set `false` to disable
124
- * the `raw-form-control` check.
125
- */
126
- rawFormControl?: boolean;
127
- /**
128
- * Flag a `fontSize`/`font-size` literal below 16 inside a `style={{…}}` on a raw form control,
129
- * or a Mantine `styles={{ input: {…} }}` per-part style — the `styles.css` iOS floor is
130
- * `!important`, so the override is dead code. Default: `true` (ON). Set `false` to disable the
131
- * `sub-16-input-font` check.
132
- */
133
- sub16InputFont?: boolean;
134
- /**
135
- * Path of the consumer's guard-exempt series file, for DESIGN.md `{{SERIES_MODULE_PATH}}`.
136
- * Default: `<first basalt.root>/lib/series.ts` — see `resolveSeriesModulePath`.
137
- */
138
- seriesModulePath?: string;
139
- /**
140
- * Per-rule, per-path exemptions — complements whole-file `exempt` (which skips ALL rules for a
141
- * file) and the hardcoded per-kind `appliesTo` scoping (e.g. `raw-visx-axis` → chart files
142
- * only). Each value is a list of patterns matched against a finding's relative path. A pattern
143
- * may be a whole path segment (`'agent'` matches `src/agent/x.tsx`, not `src/agenting.ts`), a
144
- * relative path (`'public/site.webmanifest'`), a directory prefix, or a glob — `*` stops at `/`,
145
- * `**` does not, and a slash-free glob also matches the basename, so `'*.module.css'` works.
146
- * A trailing `/` is stripped. An entry that suppresses nothing is reported, and
147
- * `check-theme --audit-allows` exits 1 on it. Default: `{}` (no exemptions).
148
- *
149
- * Two forms per kind. The bare array is paths only. The object form adds the REASON, which is
150
- * the half a `theme-allow` carries and this key could not: JSON has no comments, so a
151
- * `.webmanifest` / `.json` finding's only escape is this key, and it was un-reviewable by
152
- * construction — the rationale ended up in a CLAUDE.md paragraph nobody reads next to the diff.
153
- * `check-theme --audit-allows` prints the reason (or names its absence) beside what the entry
154
- * still suppresses. The array form stays supported and unchanged; nothing here is required.
155
- *
156
- * @example
157
- * { exemptRules: { 'inline-display': ['agent'] } } // inline-display never fires under src/agent/**
158
- * @example
159
- * { exemptRules: { 'raw-hex': { paths: ['site.webmanifest'],
160
- * reason: 'a PWA manifest theme_color MUST be a literal hex — JSON cannot reference a CSS var' } } }
161
- */
162
- exemptRules?: Partial<Record<GuardKind, ExemptRuleEntry>>;
163
- /**
164
- * Declares an intentional `ai` package major-version skew across workspace packages, exempting
165
- * `doctor`'s `ai-major-parity` hard check. The value IS the reason — a bare `true` is rejected,
166
- * because the whole point of this key is that the pairing is written down, not just switched off.
167
- * A written declaration is the pin `basalt/ai-sdk-major`'s own comment notes is otherwise missing.
168
- *
169
- * Semantics: absent (or present but not a non-empty string) → the skew still hard-fails exactly as
170
- * without this key. A non-empty string with a skew present → `doctor` passes, echoing both the
171
- * skew and this reason. A non-empty string with NO skew present → `doctor` warns that the
172
- * exemption is stale and can be deleted (an exemption nobody re-checks is how a real, later skew
173
- * slips through unnoticed).
174
- *
175
- * @example
176
- * // apps/api streams on ai@5; apps/dashboard parses on ai@7; a producer-side TransformStream
177
- * // neutralizes the one enum value that differs between the two majors.
178
- * { aiMajorSkewReason: 'apps/api pinned to ai@5, apps/dashboard on ai@7 — the skew is neutralized '
179
- * + 'by a producer-side TransformStream in apps/api/src/stream-transform.ts' }
180
- */
181
- aiMajorSkewReason?: string;
182
- };
183
- /**
184
- * One `basalt.exemptRules` value: the historical bare path list, or the same list with the reason
185
- * it exists. See `BasaltConfig.exemptRules`.
186
- */
187
- export type ExemptRuleEntry = string[] | {
188
- paths: string[];
189
- reason: string;
190
- };
191
- /** The paths half of an exemption entry, whichever form it was written in. */
192
- export declare function exemptRulePaths(entry: ExemptRuleEntry | undefined): string[];
193
- /** The recorded reason for an exemption entry, or null for the bare-array form. */
194
- export declare function exemptRuleReason(entry: ExemptRuleEntry | undefined): string | null;
9
+ import type { BasaltConfig } from './config.js';
195
10
  /**
196
11
  * The guard-shaped `exemptRules` — paths only. The reason the object form carries never reaches
197
12
  * the guard: it is accountability for a human reading a diff and for `--audit-allows`, and giving
198
13
  * the scan a second shape to understand would only be a way for the two to disagree.
199
14
  */
200
15
  export declare function resolveExemptRules(cfg: BasaltConfig): GuardConfig['exemptRules'];
201
- export declare const DEFAULT_ROOT = "src";
202
- export declare const DEFAULT_ROOTS: string[];
203
- /**
204
- * The configured source roots, or the built-in default. The ONE resolution every roots-derived seed
205
- * reads — an empty `roots: []` falls back rather than resolving to nothing, because a bare `??`
206
- * would let `[]` through and render an empty oxfmt glob into the seeded CI, reproducing the exact
207
- * "matches zero files" break this derivation exists to prevent.
208
- */
209
- export declare function resolveRoots(cfg: BasaltConfig): string[];
210
16
  /**
211
17
  * Default scan exemption — a bare consumer's only palette source is its series module (the doctrine
212
18
  * directs every consumer to put raw hex series colors there). Shares `resolveSeriesModulePath` with
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -21,14 +21,7 @@ import { COMMAND_OPTIONS, USAGE, unknownFlag } from "./help.js";
21
21
  import { init } from "./init.js";
22
22
  import { sync } from "./sync.js";
23
23
  import { fontsCss, normalizeColorFunctions, tokensCss } from "./tokens-css.js";
24
- function exemptRulePaths(entry) {
25
- if (entry === void 0) return [];
26
- return Array.isArray(entry) ? entry : entry.paths;
27
- }
28
- function exemptRuleReason(entry) {
29
- if (entry === void 0 || Array.isArray(entry)) return null;
30
- return entry.reason.trim().length > 0 ? entry.reason.trim() : null;
31
- }
24
+ import { DEFAULT_ROOT, exemptRulePaths, resolveRoots } from "./config.js";
32
25
  function resolveExemptRules(cfg) {
33
26
  if (cfg.exemptRules === void 0) return DEFAULT_GUARD_CONFIG.exemptRules;
34
27
  const out = {};
@@ -37,11 +30,6 @@ function resolveExemptRules(cfg) {
37
30
  }
38
31
  return out;
39
32
  }
40
- const DEFAULT_ROOT = "src";
41
- const DEFAULT_ROOTS = [DEFAULT_ROOT];
42
- function resolveRoots(cfg) {
43
- return cfg.roots?.length ? cfg.roots : DEFAULT_ROOTS;
44
- }
45
33
  function resolveSeriesModulePath(cfg) {
46
34
  if (cfg.seriesModulePath !== void 0) return cfg.seriesModulePath;
47
35
  const [firstRoot = DEFAULT_ROOT] = resolveRoots(cfg);
@@ -907,8 +895,6 @@ function run(argv, cwd = process.cwd()) {
907
895
  }
908
896
  }
909
897
  export {
910
- DEFAULT_ROOT,
911
- DEFAULT_ROOTS,
912
898
  MANIFEST_PATH,
913
899
  ROOT_PLACEMENT,
914
900
  RULE_NAMES,
@@ -924,8 +910,6 @@ export {
924
910
  defaultExempt,
925
911
  diffSummary,
926
912
  doctor,
927
- exemptRulePaths,
928
- exemptRuleReason,
929
913
  findBasaltInstall,
930
914
  findRepoRoot,
931
915
  fontsCss,
@@ -956,7 +940,6 @@ export {
956
940
  resolvePeerFlags,
957
941
  resolvePlacement,
958
942
  resolveProjectDir,
959
- resolveRoots,
960
943
  retiredManagedDests,
961
944
  rootsNotices,
962
945
  run,
@@ -1 +1 @@
1
- {"version":3,"file":"define-commands.d.ts","sourceRoot":"","sources":["../../src/commands/define-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAKvC;;;;;;;GAOG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wFAAwF;IACxF,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;CACnB,CAAA;AAID;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAA;IACb,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+EAA+E;IAC/E,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,OAAO,CAAA;IACpB,yCAAyC;IACzC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,iBAAiB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACvD,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAIhD,wEAAwE;AACxE,KAAK,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;AAE5C;;;;;;;;;;GAUG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,QAAQ,EAAE,MAAM,CAAC,CAAA;AAcvD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAAC,KAAK,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAGrE;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAEnD;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAOvF;AAED,mGAAmG;AACnG,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,UAAU,CAAC,CAExD"}
1
+ {"version":3,"file":"define-commands.d.ts","sourceRoot":"","sources":["../../src/commands/define-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAIvC;;;;;;;GAOG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wFAAwF;IACxF,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;CACnB,CAAA;AAID;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAA;IACb,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+EAA+E;IAC/E,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,OAAO,CAAA;IACpB,yCAAyC;IACzC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,iBAAiB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACvD,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAIhD,wEAAwE;AACxE,KAAK,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;AAE5C;;;;;;;;;;GAUG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,QAAQ,EAAE,MAAM,CAAC,CAAA;AAcvD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAAC,KAAK,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAGrE;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAEnD;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAQvF;AAED,mGAAmG;AACnG,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,UAAU,CAAC,CAExD"}
@@ -1,4 +1,3 @@
1
- import { isDev } from "../common/is-dev.js";
2
1
  let activeCommands = {};
3
2
  function defineCommands(spec) {
4
3
  activeCommands = spec;
@@ -10,7 +9,8 @@ function defineCommand(cmd) {
10
9
  function runCommand(id, ctx) {
11
10
  const cmd = activeCommands[id];
12
11
  if (cmd === void 0) {
13
- if (isDev()) console.warn(`[basalt] runCommand: no command registered for "${id}"`);
12
+ if (process.env.NODE_ENV !== "production")
13
+ console.warn(`[basalt] runCommand: no command registered for "${id}"`);
14
14
  return;
15
15
  }
16
16
  return cmd.run(ctx);
@@ -1 +1 @@
1
- {"version":3,"file":"define-overlays.d.ts","sourceRoot":"","sources":["../../src/commands/define-overlays.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define-overlays.d.ts","sourceRoot":"","sources":["../../src/commands/define-overlays.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { useEffect } from "react";
2
2
  import { missingLayer } from "../common/errors.js";
3
- import { isDev } from "../common/is-dev.js";
4
3
  let modalsPromise;
5
4
  function loadModals() {
6
5
  modalsPromise ??= import("@mantine/modals").then((m) => m.modals).catch(() => void 0);
@@ -109,7 +108,7 @@ const overlays = {
109
108
  open(key, props) {
110
109
  const spec = activeOverlays[key];
111
110
  if (spec === void 0) {
112
- if (isDev())
111
+ if (process.env.NODE_ENV !== "production")
113
112
  console.warn(`[basalt] overlays.open: no overlay registered for "${String(key)}"`);
114
113
  return;
115
114
  }