zyzz 0.0.24 → 0.0.25

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 (87) hide show
  1. package/README.md +23 -365
  2. package/dist/Style.d.ts +2 -0
  3. package/dist/Style.d.ts.map +1 -1
  4. package/dist/compiler/Graph.d.ts +3 -0
  5. package/dist/compiler/Graph.d.ts.map +1 -1
  6. package/dist/compiler/Graph.js +38 -2
  7. package/dist/compiler/Graph.js.map +1 -1
  8. package/dist/compiler/Source.d.ts.map +1 -1
  9. package/dist/compiler/Source.js +11 -3
  10. package/dist/compiler/Source.js.map +1 -1
  11. package/dist/compiler/Transform.d.ts +4 -0
  12. package/dist/compiler/Transform.d.ts.map +1 -1
  13. package/dist/compiler/Transform.js +79 -15
  14. package/dist/compiler/Transform.js.map +1 -1
  15. package/dist/compiler/internal/Applications.d.ts +20 -0
  16. package/dist/compiler/internal/Applications.d.ts.map +1 -1
  17. package/dist/compiler/internal/Applications.js +151 -47
  18. package/dist/compiler/internal/Applications.js.map +1 -1
  19. package/dist/compiler/internal/Compositions.d.ts.map +1 -1
  20. package/dist/compiler/internal/Compositions.js +6 -0
  21. package/dist/compiler/internal/Compositions.js.map +1 -1
  22. package/dist/compiler/internal/Configurations.d.ts.map +1 -1
  23. package/dist/compiler/internal/Configurations.js +4 -0
  24. package/dist/compiler/internal/Configurations.js.map +1 -1
  25. package/dist/compiler/internal/Contract.d.ts.map +1 -1
  26. package/dist/compiler/internal/Contract.js +34 -7
  27. package/dist/compiler/internal/Contract.js.map +1 -1
  28. package/dist/compiler/internal/PackedStyles.d.ts.map +1 -1
  29. package/dist/compiler/internal/PackedStyles.js +7 -0
  30. package/dist/compiler/internal/PackedStyles.js.map +1 -1
  31. package/dist/compiler/internal/Themes.d.ts.map +1 -1
  32. package/dist/compiler/internal/Themes.js +20 -8
  33. package/dist/compiler/internal/Themes.js.map +1 -1
  34. package/dist/internal/Configuration.d.ts +10 -0
  35. package/dist/internal/Configuration.d.ts.map +1 -1
  36. package/dist/internal/Configuration.js +8 -0
  37. package/dist/internal/Configuration.js.map +1 -1
  38. package/dist/internal/Token.d.ts +2 -0
  39. package/dist/internal/Token.d.ts.map +1 -1
  40. package/dist/internal/Token.js.map +1 -1
  41. package/dist/next/internal/Project.d.ts.map +1 -1
  42. package/dist/next/internal/Project.js +30 -25
  43. package/dist/next/internal/Project.js.map +1 -1
  44. package/dist/next/loader.js +2 -1
  45. package/dist/next/loader.js.map +1 -1
  46. package/dist/node/Host.d.ts.map +1 -1
  47. package/dist/node/Host.js +32 -23
  48. package/dist/node/Host.js.map +1 -1
  49. package/dist/node/internal/Contracts.d.ts +22 -0
  50. package/dist/node/internal/Contracts.d.ts.map +1 -0
  51. package/dist/node/internal/Contracts.js +287 -0
  52. package/dist/node/internal/Contracts.js.map +1 -0
  53. package/dist/unplugin/index.d.ts.map +1 -1
  54. package/dist/unplugin/index.js +31 -13
  55. package/dist/unplugin/index.js.map +1 -1
  56. package/dist/vite/index.d.ts.map +1 -1
  57. package/dist/vite/index.js +30 -37
  58. package/dist/vite/index.js.map +1 -1
  59. package/dist/web/Css.d.ts +10 -5
  60. package/dist/web/Css.d.ts.map +1 -1
  61. package/dist/web/Css.js +170 -31
  62. package/dist/web/Css.js.map +1 -1
  63. package/dist/web/internal/ClassName.d.ts +49 -0
  64. package/dist/web/internal/ClassName.d.ts.map +1 -1
  65. package/dist/web/internal/ClassName.js +57 -0
  66. package/dist/web/internal/ClassName.js.map +1 -1
  67. package/package.json +1 -1
  68. package/src/Style.ts +2 -0
  69. package/src/compiler/Graph.ts +42 -2
  70. package/src/compiler/Source.ts +11 -3
  71. package/src/compiler/Transform.ts +130 -29
  72. package/src/compiler/internal/Applications.ts +239 -63
  73. package/src/compiler/internal/Compositions.ts +9 -0
  74. package/src/compiler/internal/Configurations.ts +4 -0
  75. package/src/compiler/internal/Contract.ts +59 -7
  76. package/src/compiler/internal/PackedStyles.ts +9 -0
  77. package/src/compiler/internal/Themes.ts +25 -7
  78. package/src/internal/Configuration.ts +21 -0
  79. package/src/internal/Token.ts +2 -0
  80. package/src/next/internal/Project.ts +28 -23
  81. package/src/next/loader.ts +2 -1
  82. package/src/node/Host.ts +31 -24
  83. package/src/node/internal/Contracts.ts +384 -0
  84. package/src/unplugin/index.ts +35 -13
  85. package/src/vite/index.ts +35 -36
  86. package/src/web/Css.ts +228 -42
  87. package/src/web/internal/ClassName.ts +114 -0
package/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
  </p>
11
11
 
12
12
  <p align="center">
13
- <a href="#overview">Overview</a> · <a href="#getting-started">Getting Started</a> · <a href="#philosophy">Philosophy</a> · <a href="#features">Features</a> · <a href="docs/guides/README.md">Guides</a> · <a href="docs/api/README.md">API Reference</a>
13
+ <a href="#overview">Overview</a> · <a href="#agent-prompt">Agent Prompt</a> · <a href="#philosophy">Philosophy</a> · <a href="#features">Features</a> · <a href="#documentation">Documentation</a> · <a href="https://zyzz.style/docs/guides/styling">Guides</a> · <a href="https://zyzz.style/docs/api/core">API Reference</a>
14
14
  </p>
15
15
 
16
16
  ## Overview
@@ -34,6 +34,14 @@ export function Card() {
34
34
  }
35
35
  ```
36
36
 
37
+ ## Agent Prompt
38
+
39
+ Paste this prompt into a coding agent:
40
+
41
+ ```txt
42
+ Read zyzz.style and help me build my project with Zyzz.
43
+ ```
44
+
37
45
  ## Philosophy
38
46
 
39
47
  - **Typed.** Properties, tokens, and variants carry their constraints into every call.
@@ -43,378 +51,28 @@ export function Card() {
43
51
  - **Minimal.** Small, composable APIs keep configuration and dependencies optional.
44
52
  - **Compiled.** Rules compile ahead of time into compact output with readable class names on web.
45
53
 
46
- Read [Thinking in Zyzz](docs/introduction/thinking-in-zyzz.md) for co-location, composition, and styling conventions.
54
+ Read [Thinking in Zyzz](https://zyzz.style/docs/introduction/thinking-in-zyzz) for co-location, composition, and styling conventions.
47
55
 
48
56
  ## Features
49
57
 
50
- - [**Typed Styles**](#typed-styles): familiar CSS with property and value inference, inline or reusable.
51
- - [**Themes**](#themes): inferred design tokens, optional defaults, and compatible overrides.
52
- - [**Token Values**](#token-values): configured tokens by default, with the `!custom` suffix for arbitrary CSS.
53
- - [**Color Schemes (Light/Dark Mode)**](#color-schemes-lightdark-mode): light/dark token pairs selected by CSS, without a preference listener.
54
- - [**Variants**](#variants): typed component choices, defaults, and compound rules.
55
- - [**Dynamic Styles**](#dynamic-styles): runtime values bound to static CSS through custom properties.
56
- - [**Value Syntax**](#value-syntax): importance, ordered fallbacks, and typed token and variable references.
57
- - [**Composition**](#composition): explicit style overrides that retain bindings and variant attributes.
58
- - [**Static CSS**](#static-css): ahead-of-time output with readable classes and no runtime rule generation.
59
-
60
- ## Getting Started
61
-
62
- ### Install
63
-
64
- ```sh
65
- npm install zyzz
66
- ```
67
-
68
- ### Usage
69
-
70
- Choose an integration or compile styles with the CLI or compiler API:
71
-
72
- - [Vite](#vite)
73
- - [Next.js](#nextjs)
74
- - [React Native](#react-native)
75
- - [Other Bundlers](#other-bundlers)
76
- - [CLI](#cli)
77
- - [Compiler API](#compiler-api)
78
-
79
- ### Vite
80
-
81
- Add `zyzz()` to the existing plugins array, alongside the application's framework plugin:
82
-
83
- ```ts
84
- // vite.config.ts
85
- import { defineConfig } from 'vite'
86
- import { zyzz } from 'zyzz/vite'
87
-
88
- export default defineConfig({
89
- plugins: [zyzz()],
90
- })
91
- ```
92
-
93
- Import components normally. The plugin transforms source modules and delivers CSS automatically during development and production builds. See [Vite Setup](docs/introduction/vite.md).
94
-
95
- ### Next.js
96
-
97
- Wrap the existing Next.js configuration with `zyzz()`:
98
-
99
- ```ts
100
- // next.config.ts
101
- import { zyzz } from 'zyzz/next'
102
-
103
- export default zyzz({
104
- reactStrictMode: true,
105
- })
106
- ```
107
-
108
- The integration handles source transformation and CSS delivery for Webpack and Turbopack. See [Next.js Setup](docs/introduction/next.md).
109
-
110
- ### React Native
111
-
112
- Wrap the Expo Metro configuration with `zyzz()`:
113
-
114
- ```ts
115
- // metro.config.ts
116
- import { getDefaultConfig } from 'expo/metro-config'
117
- import { zyzz } from 'zyzz/metro'
118
-
119
- export default zyzz(getDefaultConfig(import.meta.dirname), {
120
- units: { px: 1 },
121
- })
122
- ```
123
-
124
- Metro compiles styles during iOS and Android bundling. Connect the [React provider](https://zyzz.sh/docs/api/react-native/Provider) above the application for theme and color scheme selection. See [Metro Setup](https://zyzz.sh/docs/api/metro) and the [Expo example](examples/react-native).
125
-
126
- ### Other Bundlers
127
-
128
- Use the unplugin adapters with Rollup, Webpack, or esbuild:
129
-
130
- ```ts
131
- import { zyzz } from 'zyzz/unplugin'
132
-
133
- const plugins = [zyzz.esbuild()] // or zyzz.rollup() / zyzz.webpack()
134
- ```
135
-
136
- The adapters emit `zyzz.css` and `zyzz.js` beside the JavaScript bundle. Load these files in the application document. See [Bundler Setup](https://zyzz.sh/docs/api/unplugin) for configuration and output requirements.
137
-
138
- ### CLI
139
-
140
- Build or watch source files:
141
-
142
- ```sh
143
- npx zyzz build
144
- npx zyzz dev
145
- ```
146
-
147
- Compiles `src` to `dist`, emitting `zyzz.css` as the complete stylesheet and `zyzz.js` as the saved-selection script beside adjacent module CSS and `zyzz.shared.css` for shared contributions. See [CLI Setup](docs/introduction/cli.md).
148
-
149
- ### Compiler API
150
-
151
- Build source files programmatically with `Host` from `zyzz/node`:
152
-
153
- ```ts
154
- import { Host } from 'zyzz/node'
155
-
156
- await using host = await Host.create({
157
- outDir: 'dist',
158
- packageId: 'my-app',
159
- root: 'src',
160
- })
161
-
162
- await host.build()
163
- ```
164
-
165
- The CLI compiles source modules and CSS to `dist` by default. Add `--css-only` to emit CSS, CSS maps, and the initialization script for original source; declarations that need independent identities then require explicit IDs. See [CLI](docs/introduction/cli.md).
166
-
167
- For watching, keep the scope alive until shutdown:
168
-
169
- ```ts
170
- import { once } from 'node:events'
171
-
172
- host.watch({
173
- onResult: (event) => console.log(event),
174
- })
175
- await once(process, 'SIGINT')
176
- ```
177
-
178
- Watching performs an initial build, then reports rebuilds and errors. `await using` stops watchers, drains pending builds, and releases the output lock when the scope exits. See [Host.create](https://zyzz.sh/docs/api/node/create).
179
-
180
- ## Walkthrough
181
-
182
- ### Typed Styles
183
-
184
- Standard CSS properties and values carry TypeScript inference into each definition. Styles can live beside components or in shared modules; applying them returns ordinary styling props without a provider or component wrapper.
185
-
186
- ```tsx
187
- import { style } from 'zyzz'
188
-
189
- namespace styles {
190
- export const button = style({
191
- color: '#06c',
192
- padding: '1rem',
193
- ':hover': { opacity: 0.8 },
194
- })
195
- }
196
-
197
- const example = <button {...styles.button()}>Continue</button>
198
- ```
199
-
200
- ### Themes
201
-
202
- Token names infer by property, and compatible theme scopes change inherited values without changing component styles. Core imports remain token-free.
203
-
204
- #### Default Theme
205
-
206
- The `zyzz/default` entrypoint provides inferred colors, typography, spacing, and radius tokens through bound `style` and `variants`, plus `vars`, raw `tokens`, `appearance` controls, and a `script()` helper for restoring saved color-scheme preferences. Non-font token mappings and fallbacks follow Tailwind. Colors and typography follow Geist, and spacing uses an explicit table.
207
-
208
- ```ts
209
- import { style } from 'zyzz/default'
210
-
211
- namespace styles {
212
- export const button = style({ color: 'blue.700', padding: 4 })
213
- }
214
- ```
215
-
216
- Extend the default theme with [`extendVars`](https://zyzz.sh/docs/api/core/extendVars) to override existing tokens while retaining all other values and the same token contract.
217
-
218
- ```ts
219
- // zyzz.config.ts
220
- import { defineConfig, extendVars } from 'zyzz'
221
- import { vars as defaultVars } from 'zyzz/default'
222
-
223
- export const { style, vars, variants } = defineConfig({
224
- vars: extendVars(defaultVars, {
225
- color: { blue: { 700: '#175' } },
226
- }),
227
- })
228
- ```
229
-
230
- ```ts
231
- import { style } from './zyzz.config.js'
232
-
233
- namespace styles {
234
- export const button = style({ color: 'blue.700', padding: 4 })
235
- }
236
- ```
237
-
238
- #### Custom Theme
239
-
240
- Export named config helpers with an application's own tokens. Colors accept a shared value or a light/dark pair.
241
-
242
- ```ts
243
- // zyzz.config.ts
244
- import { defineConfig } from 'zyzz'
245
-
246
- export const { style, vars, variants } = defineConfig({
247
- vars: {
248
- color: { brand: '#06c', text: { dark: '#eee', light: '#111' } },
249
- spacing: { md: '1rem', sm: '0.5rem' },
250
- },
251
- })
252
- ```
253
-
254
- ```ts
255
- import { style } from './zyzz.config.js'
256
-
257
- namespace styles {
258
- export const card = style({ color: 'text', padding: 'sm' })
259
- }
260
- ```
261
-
262
- Use [`defineVars`](https://zyzz.sh/docs/api/core/defineVars) for reusable definitions outside config. See [Themes & Tokens](docs/guides/themes.md) for nested scopes and named alternatives.
263
-
264
- ### Token Values
265
-
266
- Use configured tokens for consistent styles, or the `!custom` suffix for arbitrary CSS. Properties without configured tokens accept both plain values and values with `!custom`. No extra option is needed.
267
-
268
- ```ts
269
- import { defineConfig } from 'zyzz'
270
-
271
- const { style } = defineConfig({
272
- vars: {
273
- color: { foreground: '#171717' },
274
- spacing: { md: '8px' },
275
- },
276
- })
277
-
278
- const button = style({
279
- padding: 'md',
280
- marginTop: '7px !custom',
281
- color: '#123456 !custom',
282
- width: 'calc(100% - 2rem) !custom',
283
- })
284
- ```
285
-
286
- See [Token values](https://zyzz.sh/docs/api/core/defineConfig#token-values) for mappings, fallbacks, and validation behavior.
287
-
288
- ### Color Schemes (Light/Dark Mode)
289
-
290
- Apply the theme to `<html>` and select a color scheme through its callable props:
291
-
292
- ```tsx
293
- import { style, vars } from './zyzz.config.js'
294
-
295
- namespace styles {
296
- export const card = style({ color: 'text', padding: 'sm' })
297
- }
298
-
299
- export function Document() {
300
- return (
301
- <html {...vars({ colorScheme: 'light dark' })}>
302
- <head>
303
- <title>My App</title>
304
- </head>
305
- <body>
306
- <article {...styles.card()}>Content</article>
307
- </body>
308
- </html>
309
- )
310
- }
311
- ```
312
-
313
- The theme returns its generated `className`, including a compiled scheme class, and `style.colorScheme`. Use `'light'` or `'dark'` for an explicit scheme, or `'light dark'` for system preference. Named themes use `vars({ set: 'mint', colorScheme: 'dark' })`.
314
-
315
- Color pairs compile to `light-dark()`; the custom theme's `text` token resolves to `#111` in light mode and `#eee` in dark mode. Nested theme calls can scope a subtree independently.
316
-
317
- For saved preferences, `script()` generates an optional [initialization script](docs/guides/themes.md#restore-preferences) for `<head>`. It restores the theme and scheme from localStorage before first paint, and `appearance.set({ set: 'mint', colorScheme: 'dark' })` applies and saves a change from the client. System preference needs no script or provider.
318
-
319
- ### Variants
320
-
321
- Describe component choices with inferred props, defaults, and compound rules. Use `variants` for theme tokens or import token-free `variants` from `zyzz`. Web variants select styles through data attributes.
322
-
323
- ```tsx
324
- import type { Props } from 'zyzz'
325
- import { variants } from './zyzz.config.js'
326
-
327
- namespace styles {
328
- export const button = variants({
329
- base: { display: 'inline-flex' },
330
- variants: {
331
- size: {
332
- sm: { padding: 'sm' },
333
- md: { padding: 'md' },
334
- },
335
- },
336
- defaultVariants: { size: 'md' },
337
- })
338
- }
339
-
340
- export function Button(props: Props.Variants<typeof styles.button>) {
341
- return <button {...styles.button(props)}>Continue</button>
342
- }
343
-
344
- const example = <Button size="sm" />
345
- ```
346
-
347
- ### Dynamic Styles
348
-
349
- Mix static declarations with typed runtime values in the same callback. Call the style with those values and optional `className`/`style`/`vars` overrides; consumed values become CSS variable assignments. Other component props stay on the component. CSS rules stay static.
350
-
351
- ```tsx
352
- import { style } from 'zyzz'
353
-
354
- namespace styles {
355
- export const bar = style((values: { width: `${number}%` }) => ({
356
- backgroundColor: '#06c',
357
- borderRadius: '0.25rem',
358
- height: '0.5rem',
359
- width: values.width,
360
- }))
361
- }
362
-
363
- export function Bar() {
364
- return (
365
- <div
366
- {...styles.bar({ width: '50%', className: 'progress' })}
367
- aria-hidden={true}
368
- />
369
- )
370
- }
371
- ```
372
-
373
- ### Value Syntax
374
-
375
- Use the suffix ` !custom` for literal CSS values, ` !important` for importance, and arrays for ordered fallbacks. `vars` provides typed references for declarations and CSS expressions.
376
-
377
- ```ts
378
- import { style, vars } from './zyzz.config.js'
379
-
380
- namespace styles {
381
- export const panel = style({
382
- display: ['block', 'grid'],
383
- color: 'brand !important',
384
- borderColor: vars.color.brand,
385
- width: `calc(100% - ${vars.spacing.md}) !custom`,
386
- })
387
- }
388
- ```
389
-
390
- ### Composition
391
-
392
- Prefer state attributes for conditional styling. Calls accept `className`, `style`, and `vars` overrides. Classes are retained and inline styles merge. Other props stay on the component. Use `cx` for explicit overrides between generated styles in matching selector and condition contexts.
393
-
394
- ```tsx
395
- import { cx, style } from 'zyzz'
396
-
397
- namespace styles {
398
- export const base = style({ padding: '0.5rem' })
399
-
400
- export const roomy = style({ padding: '1rem' })
401
- }
402
-
403
- const example = (
404
- <button {...cx(styles.base(), styles.roomy())} disabled>
405
- Continue
406
- </button>
407
- )
408
- ```
58
+ - [**Typed Styles**](https://zyzz.style/docs/guides/styling): familiar CSS with property and value inference, inline or reusable.
59
+ - [**Themes**](https://zyzz.style/docs/guides/themes): inferred design tokens, optional defaults, and compatible overrides.
60
+ - [**Token Values**](https://zyzz.style/docs/api/core/defineConfig#token-values): configured tokens by default, with the `!custom` suffix for arbitrary CSS.
61
+ - [**Color Schemes (Light/Dark Mode)**](https://zyzz.style/docs/guides/themes#apply-a-theme): light/dark token pairs selected by CSS, without a preference listener.
62
+ - [**Variants**](https://zyzz.style/docs/guides/variants): typed component choices, defaults, and compound rules.
63
+ - [**Dynamic Styles**](https://zyzz.style/docs/guides/styling#bind-dynamic-values): runtime values bound to static CSS through custom properties.
64
+ - [**Value Syntax**](https://zyzz.style/docs/api/core/values): importance, ordered fallbacks, and typed token and variable references.
65
+ - [**Composition**](https://zyzz.style/docs/guides/styling#combine-styles): explicit style overrides that retain bindings and variant attributes.
66
+ - [**Static CSS**](https://zyzz.style/docs/guides/css-output): ahead-of-time output with readable classes and no runtime rule generation.
409
67
 
410
- ### Static CSS
68
+ ## Documentation
411
69
 
412
- Use the [Vite plugin](docs/introduction/vite.md) for source transformation and CSS delivery, or the [compiler APIs](docs/guides/compilation.md) for standalone builds and library distribution.
70
+ Head to the [documentation](https://zyzz.style/docs) to get started and learn more about Zyzz.
413
71
 
414
72
  ## Benchmarks
415
73
 
416
- See [Benchmarks](docs/introduction/benchmarks.md) for measured compilation, runtime, and output-size comparisons.
74
+ See [Benchmarks](https://zyzz.style/docs/introduction/benchmarks) for measured compilation, runtime, and output-size comparisons.
417
75
 
418
76
  ## Comparison
419
77
 
420
- See [the comparison](docs/introduction/comparisons.md) for examples covering authoring, developer and agent experience, compilation, performance, and bundle size.
78
+ See [the comparison](https://zyzz.style/docs/introduction/comparisons) for examples covering authoring, developer and agent experience, compilation, performance, and bundle size.
package/dist/Style.d.ts CHANGED
@@ -125,6 +125,8 @@ export type LiteralDeclarations = {
125
125
  };
126
126
  /** A named group of ordered declarations. */
127
127
  export type NamedStyle<name extends string = string> = {
128
+ /** Compiler-owned composition mode inherited from the defining configuration. */
129
+ readonly composition?: 'independent' | 'ordered' | undefined;
128
130
  /** Compiler-owned web mode inherited from the defining configuration. */
129
131
  readonly cssOutput?: 'atomic' | 'grouped' | undefined;
130
132
  /** Ordered nested blocks, when this style contains conditions. */
@@ -1 +1 @@
1
- {"version":3,"file":"Style.d.ts","sourceRoot":"","sources":["../src/Style.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Style.d.ts","sourceRoot":"","sources":["../src/Style.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import * as Stylesheets from './internal/Stylesheets.js';
2
2
  import type * as Mapping from '@jridgewell/gen-mapping';
3
3
  import * as Css from '../web/Css.js';
4
+ import * as ClassName from '../web/internal/ClassName.js';
4
5
  import * as Native from './Native.js';
5
6
  import * as Parser from 'oxc-parser';
6
7
  import * as Syntax from './internal/Syntax.js';
@@ -20,6 +21,8 @@ export declare namespace compile {
20
21
  readonly [ThemeRules.shared]?: 'all' | 'defaults' | undefined;
21
22
  /** Host entrypoints emit owned stylesheet effects without packed contracts. */
22
23
  readonly [Stylesheets.entry]?: string | undefined;
24
+ /** Lets modules reuse shared rule names from unrelated modules of this one graph. */
25
+ readonly [ClassName.complete]?: boolean | undefined;
23
26
  /** Host syntax from the same immutable source snapshot. */
24
27
  readonly [Syntax.cache]?: ReadonlyMap<string, Parser.ParseResult> | undefined;
25
28
  /** Rewrite authoring calls. False emits CSS for unchanged source. */
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../src/compiler/Graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../src/compiler/Graph.ts"],"names":[],"mappings":"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"}
@@ -1188,6 +1188,35 @@ function build(options, cache) {
1188
1188
  module.themeScripts?.length ||
1189
1189
  module.themeSelections?.length));
1190
1190
  const ownerSignature = JSON.stringify(owners);
1191
+ const units = ClassName.registry();
1192
+ const closures = new Map();
1193
+ function closure(moduleId) {
1194
+ const cached = closures.get(moduleId);
1195
+ if (cached)
1196
+ return cached;
1197
+ const result = new Set();
1198
+ closures.set(moduleId, result);
1199
+ for (const dependency of dependencies[moduleId] ?? []) {
1200
+ result.add(dependency);
1201
+ for (const nested of closure(dependency))
1202
+ result.add(nested);
1203
+ }
1204
+ return result;
1205
+ }
1206
+ // Hosts that compile a module within several graphs must name it the same in
1207
+ // each, so it may reuse only names its dependencies introduce.
1208
+ function visible(moduleId) {
1209
+ if (options[ClassName.complete])
1210
+ return undefined;
1211
+ return (owner) => closure(moduleId).has(owner);
1212
+ }
1213
+ function restore(moduleId, output) {
1214
+ return units.restore({
1215
+ owner: moduleId,
1216
+ used: output[ClassName.units] ?? new Map(),
1217
+ visible: visible(moduleId),
1218
+ });
1219
+ }
1191
1220
  // Extraction visits dependencies first; their emitted classes must precede consumers.
1192
1221
  for (const moduleId of extracted.keys()) {
1193
1222
  const cached = transformed.get(moduleId);
@@ -1197,14 +1226,21 @@ function build(options, cache) {
1197
1226
  Object.keys(cached.themes).length === names.length &&
1198
1227
  names.every((name) => cached.themes[name] === themes[name]) &&
1199
1228
  Object.entries(cached.classes).every(([name, value]) => styleClasses[name] === value) &&
1200
- cached.owners === ownerSignature;
1229
+ cached.owners === ownerSignature &&
1230
+ restore(moduleId, cached.output);
1201
1231
  modules[moduleId] = reusable
1202
1232
  ? cached.output
1203
1233
  : sameThemes &&
1204
1234
  previous.schemes === schemes &&
1205
- extracted.get(moduleId) === previous.extracted.get(moduleId)
1235
+ extracted.get(moduleId) === previous.extracted.get(moduleId) &&
1236
+ restore(moduleId, previous.result.modules[moduleId])
1206
1237
  ? previous.result.modules[moduleId]
1207
1238
  : Transform.compile({
1239
+ [ClassName.units]: units.scope({
1240
+ owner: moduleId,
1241
+ qualifier: Identity.compact(moduleId).slice(-6),
1242
+ visible: visible(moduleId),
1243
+ }),
1208
1244
  [ThemeRules.shared]: options[Stylesheets.entry] === undefined
1209
1245
  ? (options[ThemeRules.shared] ?? 'defaults')
1210
1246
  : 'all',