zyzz 0.0.34 → 0.0.35

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 (75) hide show
  1. package/binding/compiler.wasm +0 -0
  2. package/binding/wasi/zyzz.wasm32-wasi.wasm +0 -0
  3. package/binding/zyzz.darwin-arm64.node +0 -0
  4. package/binding/zyzz.darwin-x64.node +0 -0
  5. package/binding/zyzz.linux-arm64-gnu.node +0 -0
  6. package/binding/zyzz.linux-arm64-musl.node +0 -0
  7. package/binding/zyzz.linux-x64-gnu.node +0 -0
  8. package/binding/zyzz.linux-x64-musl.node +0 -0
  9. package/binding/zyzz.win32-arm64-msvc.node +0 -0
  10. package/binding/zyzz.win32-x64-msvc.node +0 -0
  11. package/dist/Style.d.ts +1 -1
  12. package/dist/Style.d.ts.map +1 -1
  13. package/dist/Style.js.map +1 -1
  14. package/dist/Vars.d.ts +17 -11
  15. package/dist/Vars.d.ts.map +1 -1
  16. package/dist/Vars.js.map +1 -1
  17. package/dist/babel/index.d.ts.map +1 -1
  18. package/dist/babel/index.js +10 -1
  19. package/dist/babel/index.js.map +1 -1
  20. package/dist/base-ui/react/Config.d.ts +48 -0
  21. package/dist/base-ui/react/Config.d.ts.map +1 -0
  22. package/dist/base-ui/react/Config.js +30 -0
  23. package/dist/base-ui/react/Config.js.map +1 -0
  24. package/dist/base-ui/react/Style.d.ts +47 -0
  25. package/dist/base-ui/react/Style.d.ts.map +1 -0
  26. package/dist/base-ui/react/Style.js +12 -0
  27. package/dist/base-ui/react/Style.js.map +1 -0
  28. package/dist/base-ui/react/index.d.ts +13 -0
  29. package/dist/base-ui/react/index.d.ts.map +1 -0
  30. package/dist/base-ui/react/index.js +13 -0
  31. package/dist/base-ui/react/index.js.map +1 -0
  32. package/dist/base-ui/react/internal/Attributes.generated.d.ts +372 -0
  33. package/dist/base-ui/react/internal/Attributes.generated.d.ts.map +1 -0
  34. package/dist/base-ui/react/internal/Attributes.generated.js +403 -0
  35. package/dist/base-ui/react/internal/Attributes.generated.js.map +1 -0
  36. package/dist/base-ui/react/internal/Authoring.d.ts +9 -0
  37. package/dist/base-ui/react/internal/Authoring.d.ts.map +1 -0
  38. package/dist/base-ui/react/internal/Authoring.js +139 -0
  39. package/dist/base-ui/react/internal/Authoring.js.map +1 -0
  40. package/dist/base-ui/react/internal/Types.generated.d.ts +18933 -0
  41. package/dist/base-ui/react/internal/Types.generated.d.ts.map +1 -0
  42. package/dist/base-ui/react/internal/Types.generated.js +2 -0
  43. package/dist/base-ui/react/internal/Types.generated.js.map +1 -0
  44. package/dist/binding/compiler.wasm +0 -0
  45. package/dist/compiler/Graph.d.ts +1 -1
  46. package/dist/compiler/Graph.d.ts.map +1 -1
  47. package/dist/default.js.zyzz.json +1 -1
  48. package/dist/internal/Configuration.d.ts +2 -1
  49. package/dist/internal/Configuration.d.ts.map +1 -1
  50. package/dist/internal/Configuration.js.map +1 -1
  51. package/dist/internal/Value.d.ts +4 -0
  52. package/dist/internal/Value.d.ts.map +1 -1
  53. package/dist/internal/Value.js.map +1 -1
  54. package/dist/internal/VariableSets.d.ts.map +1 -1
  55. package/dist/internal/VariableSets.js +16 -0
  56. package/dist/internal/VariableSets.js.map +1 -1
  57. package/dist/web/internal/Wasm.generated.d.ts.map +1 -1
  58. package/dist/web/internal/Wasm.generated.js +1 -1
  59. package/dist/web/internal/Wasm.generated.js.map +1 -1
  60. package/package.json +10 -1
  61. package/src/Style.ts +4 -1
  62. package/src/Vars.ts +41 -21
  63. package/src/babel/index.ts +13 -1
  64. package/src/base-ui/react/Config.ts +74 -0
  65. package/src/base-ui/react/Style.ts +109 -0
  66. package/src/base-ui/react/index.ts +12 -0
  67. package/src/base-ui/react/internal/Attributes.generated.ts +403 -0
  68. package/src/base-ui/react/internal/Authoring.ts +173 -0
  69. package/src/base-ui/react/internal/Catalog.generated.ts +8088 -0
  70. package/src/base-ui/react/internal/Types.generated.ts +19016 -0
  71. package/src/compiler/Graph.ts +1 -1
  72. package/src/internal/Configuration.ts +4 -1
  73. package/src/internal/Value.ts +5 -0
  74. package/src/internal/VariableSets.ts +22 -0
  75. package/src/web/internal/Wasm.generated.ts +1 -1
@@ -106,7 +106,7 @@ export declare namespace compile {
106
106
  readonly [Stylesheets.packed]?: readonly Stylesheets.Resource[]
107
107
  /** Independently loaded reset for module-based hosts. */
108
108
  readonly [Stylesheets.reset]?: Stylesheets.Resource | undefined
109
- /** Versioned compiler-only JSON per module; publish beside the compiled entrypoint as <entry>.zyzz.json. */
109
+ /** Versioned compiler-only JSON, including static literal exports. Publish beside the compiled entrypoint as <entry>.zyzz.json. */
110
110
  readonly contracts: Readonly<Record<string, string>>
111
111
  /** Direct static runtime source and library-contract dependencies, keyed by module identity. */
112
112
  readonly dependencies: Readonly<Record<string, readonly string[]>>
@@ -19,6 +19,7 @@ import * as VariableSets from './VariableSets.js'
19
19
  import * as Vars from '../Vars.js'
20
20
  import * as Selection from '../runtime/Selection.js'
21
21
  import * as Token from './Token.js'
22
+ import type * as Value from './Value.js'
22
23
  import type * as Completion from './Completion.js'
23
24
 
24
25
  /** Creates token-free authoring without a configuration file or global state. */
@@ -753,7 +754,9 @@ export type Body<
753
754
  : target
754
755
  }[mappings[key][number]] extends never
755
756
  ? styles[key]
756
- : never
757
+ : [Token.Names<tokens, mappings[key][number]>] extends [never]
758
+ ? never
759
+ : Value.Mismatch<tokens, mappings[key][number]>
757
760
  : Style.Accepted<Pick<styles, key>, tokens>[key]
758
761
  }
759
762
  : never)
@@ -201,6 +201,11 @@ export type Mismatch<tokens, property extends keyof Literal.Properties> =
201
201
  >
202
202
  : never
203
203
 
204
+ /** Lists the named sets a property accepts, so mismatch diagnostics name them. */
205
+ export type Unmatched<names> =
206
+ // Without configured names the property is unknown, and `never` reports it as such.
207
+ [names] extends [never] ? never : Expected<names>
208
+
204
209
  // An object brand never reduces with a string literal, so the diagnostic keeps the expected values.
205
210
  type Expected<values> = { readonly [expected]: values }
206
211
 
@@ -82,6 +82,28 @@ export function build(
82
82
  const conditions: string[][] = []
83
83
  const active = new Set<object>()
84
84
  function visit(input: unknown, path: string[]) {
85
+ if (input === null && base && path.length) {
86
+ if (options.derived)
87
+ throw new Vars.InvalidError(
88
+ path,
89
+ 'Derived variables cannot remove paths.',
90
+ )
91
+ const key = JSON.stringify(path)
92
+ if (!leaves.has(key) && !categories.has(key))
93
+ throw new Vars.InvalidError(
94
+ path,
95
+ 'Extensions can only remove existing paths.',
96
+ )
97
+ // A removed category takes every leaf below it, including typography conditions.
98
+ for (const name of Object.keys(values)) {
99
+ const parts = paths[name] ?? name.split('.')
100
+ if (path.every((part, index) => parts[index] === part)) {
101
+ delete values[name]
102
+ delete paths[name]
103
+ }
104
+ }
105
+ return
106
+ }
85
107
  if (
86
108
  typeof input === 'string' ||
87
109
  typeof input === 'number' ||