zyzz 0.0.28 → 0.0.29

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 (302) hide show
  1. package/binding/wasi/wasi-worker.mjs +186 -0
  2. package/binding/wasi/zyzz.wasi.cjs +2302 -0
  3. package/binding/wasi/zyzz.wasm32-wasi.wasm +0 -0
  4. package/binding/zyzz.linux-x64-gnu.node +0 -0
  5. package/dist/babel/index.d.ts.map +1 -1
  6. package/dist/babel/index.js +2 -4
  7. package/dist/babel/index.js.map +1 -1
  8. package/dist/babel/internal/Compilation.d.ts +0 -1
  9. package/dist/babel/internal/Compilation.d.ts.map +1 -1
  10. package/dist/compiler/Graph.d.ts +14 -11
  11. package/dist/compiler/Graph.d.ts.map +1 -1
  12. package/dist/compiler/Graph.js +57 -1442
  13. package/dist/compiler/Graph.js.map +1 -1
  14. package/dist/compiler/Native.d.ts +7 -9
  15. package/dist/compiler/Native.d.ts.map +1 -1
  16. package/dist/compiler/Native.js +12 -716
  17. package/dist/compiler/Native.js.map +1 -1
  18. package/dist/compiler/Source.d.ts +122 -24
  19. package/dist/compiler/Source.d.ts.map +1 -1
  20. package/dist/compiler/Source.js +10 -1267
  21. package/dist/compiler/Source.js.map +1 -1
  22. package/dist/compiler/Transform.d.ts +4 -3
  23. package/dist/compiler/Transform.d.ts.map +1 -1
  24. package/dist/compiler/Transform.js +13 -961
  25. package/dist/compiler/Transform.js.map +1 -1
  26. package/dist/compiler/internal/AtRules.d.ts +5 -1
  27. package/dist/compiler/internal/AtRules.d.ts.map +1 -1
  28. package/dist/compiler/internal/AtRules.js +12 -106
  29. package/dist/compiler/internal/AtRules.js.map +1 -1
  30. package/dist/compiler/internal/Context.d.ts +11 -0
  31. package/dist/compiler/internal/Context.d.ts.map +1 -0
  32. package/dist/compiler/internal/Context.js +11 -0
  33. package/dist/compiler/internal/Context.js.map +1 -0
  34. package/dist/compiler/internal/Results.d.ts +148 -0
  35. package/dist/compiler/internal/Results.d.ts.map +1 -0
  36. package/dist/compiler/internal/Results.js +259 -0
  37. package/dist/compiler/internal/Results.js.map +1 -0
  38. package/dist/compiler/internal/Syntax.d.ts +0 -2
  39. package/dist/compiler/internal/Syntax.d.ts.map +1 -1
  40. package/dist/compiler/internal/Syntax.js +0 -2
  41. package/dist/compiler/internal/Syntax.js.map +1 -1
  42. package/dist/compiler/internal/Wire.d.ts +17 -0
  43. package/dist/compiler/internal/Wire.d.ts.map +1 -0
  44. package/dist/compiler/internal/Wire.js +795 -0
  45. package/dist/compiler/internal/Wire.js.map +1 -0
  46. package/dist/internal/Addon.d.ts +28 -0
  47. package/dist/internal/Addon.d.ts.map +1 -0
  48. package/dist/internal/Addon.js +87 -0
  49. package/dist/internal/Addon.js.map +1 -0
  50. package/dist/internal/Literal.d.ts +4 -1
  51. package/dist/internal/Literal.d.ts.map +1 -1
  52. package/dist/internal/Literal.js +4 -2
  53. package/dist/internal/Literal.js.map +1 -1
  54. package/dist/internal/Token.d.ts +2 -1
  55. package/dist/internal/Token.d.ts.map +1 -1
  56. package/dist/internal/Token.js +2 -2
  57. package/dist/internal/Token.js.map +1 -1
  58. package/dist/internal/Vlq.d.ts +14 -0
  59. package/dist/internal/Vlq.d.ts.map +1 -0
  60. package/dist/internal/Vlq.js +47 -0
  61. package/dist/internal/Vlq.js.map +1 -0
  62. package/dist/internal/Wasm.d.ts +22 -0
  63. package/dist/internal/Wasm.d.ts.map +1 -0
  64. package/dist/internal/Wasm.js +83 -0
  65. package/dist/internal/Wasm.js.map +1 -0
  66. package/dist/metro/Graph.d.ts +0 -1
  67. package/dist/metro/Graph.d.ts.map +1 -1
  68. package/dist/metro/transformer.d.ts.map +1 -1
  69. package/dist/metro/transformer.js +0 -1
  70. package/dist/metro/transformer.js.map +1 -1
  71. package/dist/next/internal/Project.d.ts.map +1 -1
  72. package/dist/next/internal/Project.js +2 -5
  73. package/dist/next/internal/Project.js.map +1 -1
  74. package/dist/node/Host.d.ts.map +1 -1
  75. package/dist/node/Host.js +0 -2
  76. package/dist/node/Host.js.map +1 -1
  77. package/dist/node/internal/Contracts.d.ts.map +1 -1
  78. package/dist/node/internal/Contracts.js +3 -7
  79. package/dist/node/internal/Contracts.js.map +1 -1
  80. package/dist/node/internal/Snapshot.d.ts +0 -1
  81. package/dist/node/internal/Snapshot.d.ts.map +1 -1
  82. package/dist/node/internal/Snapshot.js +0 -6
  83. package/dist/node/internal/Snapshot.js.map +1 -1
  84. package/dist/runtime/Composition.d.ts +2 -3
  85. package/dist/runtime/Composition.d.ts.map +1 -1
  86. package/dist/runtime/Composition.js +51 -30
  87. package/dist/runtime/Composition.js.map +1 -1
  88. package/dist/runtime/Recipe.d.ts.map +1 -1
  89. package/dist/runtime/Recipe.js +16 -12
  90. package/dist/runtime/Recipe.js.map +1 -1
  91. package/dist/unplugin/index.d.ts.map +1 -1
  92. package/dist/unplugin/index.js +3 -6
  93. package/dist/unplugin/index.js.map +1 -1
  94. package/dist/vite/index.d.ts.map +1 -1
  95. package/dist/vite/index.js +696 -201
  96. package/dist/vite/index.js.map +1 -1
  97. package/dist/web/Css.d.ts +8 -3
  98. package/dist/web/Css.d.ts.map +1 -1
  99. package/dist/web/Css.js +5 -721
  100. package/dist/web/Css.js.map +1 -1
  101. package/dist/web/internal/Block.d.ts +0 -2
  102. package/dist/web/internal/Block.d.ts.map +1 -1
  103. package/dist/web/internal/Block.js +1 -12
  104. package/dist/web/internal/Block.js.map +1 -1
  105. package/dist/web/internal/ClassName.d.ts +23 -18
  106. package/dist/web/internal/ClassName.d.ts.map +1 -1
  107. package/dist/web/internal/ClassName.js +26 -55
  108. package/dist/web/internal/ClassName.js.map +1 -1
  109. package/dist/web/internal/Contributions.d.ts +3 -5
  110. package/dist/web/internal/Contributions.d.ts.map +1 -1
  111. package/dist/web/internal/Contributions.js +0 -45
  112. package/dist/web/internal/Contributions.js.map +1 -1
  113. package/dist/web/internal/Engine.browser.d.ts +8 -0
  114. package/dist/web/internal/Engine.browser.d.ts.map +1 -0
  115. package/dist/web/internal/Engine.browser.js +42 -0
  116. package/dist/web/internal/Engine.browser.js.map +1 -0
  117. package/dist/web/internal/Engine.d.ts +9 -0
  118. package/dist/web/internal/Engine.d.ts.map +1 -0
  119. package/dist/web/internal/Engine.js +14 -0
  120. package/dist/web/internal/Engine.js.map +1 -0
  121. package/dist/web/internal/Themes.d.ts +1 -9
  122. package/dist/web/internal/Themes.d.ts.map +1 -1
  123. package/dist/web/internal/Themes.js +3 -221
  124. package/dist/web/internal/Themes.js.map +1 -1
  125. package/dist/web/internal/Wasm.generated.d.ts +4 -0
  126. package/dist/web/internal/Wasm.generated.d.ts.map +1 -0
  127. package/dist/web/internal/Wasm.generated.js +4 -0
  128. package/dist/web/internal/Wasm.generated.js.map +1 -0
  129. package/dist/web/internal/Wire.d.ts +19 -0
  130. package/dist/web/internal/Wire.d.ts.map +1 -0
  131. package/dist/web/internal/Wire.js +387 -0
  132. package/dist/web/internal/Wire.js.map +1 -0
  133. package/package.json +20 -1
  134. package/src/babel/index.ts +2 -5
  135. package/src/babel/internal/Compilation.ts +0 -1
  136. package/src/compiler/Graph.ts +89 -1930
  137. package/src/compiler/Native.ts +18 -871
  138. package/src/compiler/Source.ts +144 -1803
  139. package/src/compiler/Transform.ts +16 -1315
  140. package/src/compiler/internal/AtRules.ts +27 -115
  141. package/src/compiler/internal/Context.ts +11 -0
  142. package/src/compiler/internal/Results.ts +406 -0
  143. package/src/compiler/internal/Syntax.ts +0 -3
  144. package/src/compiler/internal/Wire.ts +1045 -0
  145. package/src/internal/Addon.ts +118 -0
  146. package/src/internal/Literal.ts +4 -2
  147. package/src/internal/Token.ts +2 -2
  148. package/src/internal/Vlq.ts +59 -0
  149. package/src/internal/Wasm.ts +111 -0
  150. package/src/metro/transformer.ts +0 -1
  151. package/src/next/internal/Project.ts +2 -9
  152. package/src/node/Host.ts +0 -2
  153. package/src/node/internal/Contracts.ts +3 -7
  154. package/src/node/internal/Snapshot.ts +0 -8
  155. package/src/runtime/Composition.ts +48 -25
  156. package/src/runtime/Recipe.ts +21 -14
  157. package/src/unplugin/index.ts +6 -6
  158. package/src/vite/index.ts +922 -221
  159. package/src/web/Css.ts +12 -908
  160. package/src/web/internal/Block.ts +0 -14
  161. package/src/web/internal/ClassName.ts +52 -85
  162. package/src/web/internal/Contributions.ts +3 -59
  163. package/src/web/internal/Engine.browser.ts +51 -0
  164. package/src/web/internal/Engine.ts +17 -0
  165. package/src/web/internal/Themes.ts +3 -279
  166. package/src/web/internal/Wasm.generated.ts +3 -0
  167. package/src/web/internal/Wire.ts +466 -0
  168. package/src/web/internal/wasm.d.ts +9 -0
  169. package/dist/compiler/internal/Applications.d.ts +0 -55
  170. package/dist/compiler/internal/Applications.d.ts.map +0 -1
  171. package/dist/compiler/internal/Applications.js +0 -393
  172. package/dist/compiler/internal/Applications.js.map +0 -1
  173. package/dist/compiler/internal/ColorProfiles.d.ts +0 -3
  174. package/dist/compiler/internal/ColorProfiles.d.ts.map +0 -1
  175. package/dist/compiler/internal/ColorProfiles.js +0 -84
  176. package/dist/compiler/internal/ColorProfiles.js.map +0 -1
  177. package/dist/compiler/internal/CompositionBindings.d.ts +0 -16
  178. package/dist/compiler/internal/CompositionBindings.d.ts.map +0 -1
  179. package/dist/compiler/internal/CompositionBindings.js +0 -89
  180. package/dist/compiler/internal/CompositionBindings.js.map +0 -1
  181. package/dist/compiler/internal/Compositions.d.ts +0 -37
  182. package/dist/compiler/internal/Compositions.d.ts.map +0 -1
  183. package/dist/compiler/internal/Compositions.js +0 -494
  184. package/dist/compiler/internal/Compositions.js.map +0 -1
  185. package/dist/compiler/internal/Configurations.d.ts +0 -26
  186. package/dist/compiler/internal/Configurations.d.ts.map +0 -1
  187. package/dist/compiler/internal/Configurations.js +0 -259
  188. package/dist/compiler/internal/Configurations.js.map +0 -1
  189. package/dist/compiler/internal/Contract.d.ts +0 -30
  190. package/dist/compiler/internal/Contract.d.ts.map +0 -1
  191. package/dist/compiler/internal/Contract.js +0 -753
  192. package/dist/compiler/internal/Contract.js.map +0 -1
  193. package/dist/compiler/internal/Contributions.d.ts +0 -54
  194. package/dist/compiler/internal/Contributions.d.ts.map +0 -1
  195. package/dist/compiler/internal/Contributions.js +0 -1151
  196. package/dist/compiler/internal/Contributions.js.map +0 -1
  197. package/dist/compiler/internal/Descriptors.d.ts +0 -15
  198. package/dist/compiler/internal/Descriptors.d.ts.map +0 -1
  199. package/dist/compiler/internal/Descriptors.js +0 -192
  200. package/dist/compiler/internal/Descriptors.js.map +0 -1
  201. package/dist/compiler/internal/Dynamic.d.ts +0 -14
  202. package/dist/compiler/internal/Dynamic.d.ts.map +0 -1
  203. package/dist/compiler/internal/Dynamic.js +0 -175
  204. package/dist/compiler/internal/Dynamic.js.map +0 -1
  205. package/dist/compiler/internal/Expression.d.ts +0 -19
  206. package/dist/compiler/internal/Expression.d.ts.map +0 -1
  207. package/dist/compiler/internal/Expression.js +0 -164
  208. package/dist/compiler/internal/Expression.js.map +0 -1
  209. package/dist/compiler/internal/Functions.d.ts +0 -5
  210. package/dist/compiler/internal/Functions.d.ts.map +0 -1
  211. package/dist/compiler/internal/Functions.js +0 -191
  212. package/dist/compiler/internal/Functions.js.map +0 -1
  213. package/dist/compiler/internal/Keyframes.d.ts +0 -5
  214. package/dist/compiler/internal/Keyframes.d.ts.map +0 -1
  215. package/dist/compiler/internal/Keyframes.js +0 -51
  216. package/dist/compiler/internal/Keyframes.js.map +0 -1
  217. package/dist/compiler/internal/Names.d.ts +0 -5
  218. package/dist/compiler/internal/Names.d.ts.map +0 -1
  219. package/dist/compiler/internal/Names.js +0 -37
  220. package/dist/compiler/internal/Names.js.map +0 -1
  221. package/dist/compiler/internal/NativeBindings.d.ts +0 -72
  222. package/dist/compiler/internal/NativeBindings.d.ts.map +0 -1
  223. package/dist/compiler/internal/NativeBindings.js +0 -171
  224. package/dist/compiler/internal/NativeBindings.js.map +0 -1
  225. package/dist/compiler/internal/NativeMedia.d.ts +0 -14
  226. package/dist/compiler/internal/NativeMedia.d.ts.map +0 -1
  227. package/dist/compiler/internal/NativeMedia.js +0 -287
  228. package/dist/compiler/internal/NativeMedia.js.map +0 -1
  229. package/dist/compiler/internal/NativeVars.d.ts +0 -28
  230. package/dist/compiler/internal/NativeVars.d.ts.map +0 -1
  231. package/dist/compiler/internal/NativeVars.js +0 -160
  232. package/dist/compiler/internal/NativeVars.js.map +0 -1
  233. package/dist/compiler/internal/PackedStyles.d.ts +0 -37
  234. package/dist/compiler/internal/PackedStyles.d.ts.map +0 -1
  235. package/dist/compiler/internal/PackedStyles.js +0 -344
  236. package/dist/compiler/internal/PackedStyles.js.map +0 -1
  237. package/dist/compiler/internal/Properties.d.ts +0 -5
  238. package/dist/compiler/internal/Properties.d.ts.map +0 -1
  239. package/dist/compiler/internal/Properties.js +0 -82
  240. package/dist/compiler/internal/Properties.js.map +0 -1
  241. package/dist/compiler/internal/RecipeConditions.d.ts +0 -41
  242. package/dist/compiler/internal/RecipeConditions.d.ts.map +0 -1
  243. package/dist/compiler/internal/RecipeConditions.js +0 -82
  244. package/dist/compiler/internal/RecipeConditions.js.map +0 -1
  245. package/dist/compiler/internal/RecipePayloads.d.ts +0 -31
  246. package/dist/compiler/internal/RecipePayloads.d.ts.map +0 -1
  247. package/dist/compiler/internal/RecipePayloads.js +0 -99
  248. package/dist/compiler/internal/RecipePayloads.js.map +0 -1
  249. package/dist/compiler/internal/Recipes.d.ts +0 -32
  250. package/dist/compiler/internal/Recipes.d.ts.map +0 -1
  251. package/dist/compiler/internal/Recipes.js +0 -339
  252. package/dist/compiler/internal/Recipes.js.map +0 -1
  253. package/dist/compiler/internal/Selectors.d.ts +0 -13
  254. package/dist/compiler/internal/Selectors.d.ts.map +0 -1
  255. package/dist/compiler/internal/Selectors.js +0 -280
  256. package/dist/compiler/internal/Selectors.js.map +0 -1
  257. package/dist/compiler/internal/Static.d.ts +0 -39
  258. package/dist/compiler/internal/Static.d.ts.map +0 -1
  259. package/dist/compiler/internal/Static.js +0 -534
  260. package/dist/compiler/internal/Static.js.map +0 -1
  261. package/dist/compiler/internal/Themes.d.ts +0 -190
  262. package/dist/compiler/internal/Themes.d.ts.map +0 -1
  263. package/dist/compiler/internal/Themes.js +0 -1577
  264. package/dist/compiler/internal/Themes.js.map +0 -1
  265. package/dist/compiler/internal/Vars.d.ts +0 -33
  266. package/dist/compiler/internal/Vars.d.ts.map +0 -1
  267. package/dist/compiler/internal/Vars.js +0 -387
  268. package/dist/compiler/internal/Vars.js.map +0 -1
  269. package/dist/compiler/internal/ViewTransitions.d.ts +0 -3
  270. package/dist/compiler/internal/ViewTransitions.d.ts.map +0 -1
  271. package/dist/compiler/internal/ViewTransitions.js +0 -68
  272. package/dist/compiler/internal/ViewTransitions.js.map +0 -1
  273. package/dist/internal/Cascade.d.ts +0 -74
  274. package/dist/internal/Cascade.d.ts.map +0 -1
  275. package/dist/internal/Cascade.js +0 -210
  276. package/dist/internal/Cascade.js.map +0 -1
  277. package/src/compiler/internal/Applications.ts +0 -610
  278. package/src/compiler/internal/ColorProfiles.ts +0 -93
  279. package/src/compiler/internal/CompositionBindings.ts +0 -120
  280. package/src/compiler/internal/Compositions.ts +0 -678
  281. package/src/compiler/internal/Configurations.ts +0 -349
  282. package/src/compiler/internal/Contract.ts +0 -1028
  283. package/src/compiler/internal/Contributions.ts +0 -1561
  284. package/src/compiler/internal/Descriptors.ts +0 -242
  285. package/src/compiler/internal/Dynamic.ts +0 -275
  286. package/src/compiler/internal/Expression.ts +0 -218
  287. package/src/compiler/internal/Functions.ts +0 -206
  288. package/src/compiler/internal/Keyframes.ts +0 -62
  289. package/src/compiler/internal/Names.ts +0 -48
  290. package/src/compiler/internal/NativeBindings.ts +0 -235
  291. package/src/compiler/internal/NativeMedia.ts +0 -342
  292. package/src/compiler/internal/NativeVars.ts +0 -231
  293. package/src/compiler/internal/PackedStyles.ts +0 -473
  294. package/src/compiler/internal/Properties.ts +0 -121
  295. package/src/compiler/internal/RecipeConditions.ts +0 -139
  296. package/src/compiler/internal/RecipePayloads.ts +0 -132
  297. package/src/compiler/internal/Recipes.ts +0 -531
  298. package/src/compiler/internal/Selectors.ts +0 -353
  299. package/src/compiler/internal/Static.ts +0 -784
  300. package/src/compiler/internal/Themes.ts +0 -2398
  301. package/src/compiler/internal/Vars.ts +0 -516
  302. package/src/compiler/internal/ViewTransitions.ts +0 -82
@@ -1,160 +0,0 @@
1
- /** Converts authored variables to static native value profiles. @module */
2
- import * as Calculation from '../../react-native/internal/Calculation.js';
3
- import * as Literal from '../../internal/Literal.js';
4
- import * as Media from './NativeMedia.js';
5
- import * as Scalar from '../../react-native/internal/Scalar.js';
6
- import * as Token from '../../internal/Token.js';
7
- import * as VariableSets from '../../internal/VariableSets.js';
8
- /** Resolves native domains using the style compiler's unit and font mappings. */
9
- export function compile(options) {
10
- const media = Media.prepare(undefined, options.vars, options);
11
- return {
12
- defaultVars: options.defaultVars,
13
- ...(media
14
- ? {
15
- media: {
16
- profiles: Object.fromEntries(media.selections.map((selection) => [
17
- selection,
18
- compile({ ...options, vars: media.select(selection).vars })
19
- .profiles,
20
- ])),
21
- queries: media.queries,
22
- },
23
- }
24
- : {}),
25
- profiles: Object.fromEntries(Object.entries(options.vars).map((entry) => {
26
- const [name, theme] = entry;
27
- return [
28
- name,
29
- { dark: profile(theme, 'dark'), light: profile(theme, 'light') },
30
- ];
31
- })),
32
- unnamed: options.unnamed,
33
- };
34
- function profile(theme, scheme) {
35
- const metadata = theme[Token.definition];
36
- const active = new Set();
37
- const tree = Object.create(null);
38
- function resolve(value) {
39
- if (typeof value === 'string' || typeof value === 'number')
40
- return value;
41
- if (Token.is(value)) {
42
- if (active.has(value))
43
- throw new Error('Native token aliases must not form a cycle.');
44
- const shared = metadata.contract === value.contract ||
45
- (metadata.contract[Token.identity] !== undefined &&
46
- metadata.contract[Token.identity] ===
47
- value.contract[Token.identity]);
48
- const next = shared ? metadata.values[value.path] : value.value;
49
- if (next === undefined)
50
- throw new Error(`Missing native token: ${value.path}.`);
51
- active.add(value);
52
- try {
53
- return resolve(next);
54
- }
55
- finally {
56
- active.delete(value);
57
- }
58
- }
59
- if (Token.isExpression(value) && 'group' in value) {
60
- const text = value.parts.map(resolve).join('');
61
- return value.group === 'spacing' && /^\s*calc\(/i.test(text)
62
- ? `${Calculation.length(text, options) / (options.units?.px ?? 1)}px`
63
- : text;
64
- }
65
- if ('light' in value && 'dark' in value)
66
- return resolve(value[scheme]);
67
- throw new Error(media
68
- ? 'Native media-conditioned variables require the native Provider window dimensions.'
69
- : 'Media-conditioned variables require a web target.');
70
- }
71
- for (const [path, source] of Object.entries(metadata.values)) {
72
- const parts = metadata.paths?.[path] ?? path.split('.');
73
- const property = parts.at(-1);
74
- const domain = VariableSets.domain(source);
75
- const mappings = metadata.contract.mappings;
76
- const properties = mappings === false ? undefined : mappings?.[parts[0]];
77
- const category = parts[0] === 'typography' ? property : parts[0];
78
- const target = category === 'radius' ? 'borderRadius' : category;
79
- const targets = properties?.length
80
- ? properties
81
- : Object.hasOwn(Scalar.properties, target)
82
- ? [target]
83
- : [];
84
- const converted = (() => {
85
- try {
86
- if (parts.some((part) => /^@(media|container)\s/.test(part)))
87
- throw new Error('Media-conditioned variables require a web target.');
88
- const value = resolve(source);
89
- function convert(property) {
90
- property =
91
- property in Literal.aliases
92
- ? Literal.aliases[property]
93
- : property;
94
- if (!Object.hasOwn(Scalar.properties, property))
95
- throw new Error(`Unsupported native property: ${property}.`);
96
- if (property === 'lineHeight') {
97
- if (typeof value === 'string' &&
98
- (/^\s*calc\(/i.test(value) ||
99
- /^\s*[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?(?:px|rem)\s*$/i.test(value)))
100
- return Scalar.length(value.trim().toLowerCase(), options, false, [path]);
101
- const multiplier = typeof value === 'number' ? value : Number(value);
102
- if (!Number.isFinite(multiplier) ||
103
- (typeof value === 'string' && !value.trim()))
104
- throw new Error(`Unsupported native line height: ${value}.`);
105
- const size = parts[0] === 'typography'
106
- ? metadata.values[[...parts.slice(0, -1), 'fontSize'].join('.')]
107
- : undefined;
108
- if (size === undefined)
109
- throw new Error(`Native line height requires fontSize: ${path}.`);
110
- return Scalar.convert('number', multiplier *
111
- Scalar.length(resolve(size), options, false, [path]), options, [path]);
112
- }
113
- const kind = Scalar.properties[property];
114
- if (typeof kind === 'string' &&
115
- [
116
- 'flex',
117
- 'fontVariant',
118
- 'origin',
119
- 'shadow',
120
- 'textShadow',
121
- 'transform',
122
- ].includes(kind))
123
- throw new Error(`Native property ${property} does not have a scalar variable value.`);
124
- if (kind === 'ratio' && typeof value !== 'number')
125
- throw new Error('Native aspect ratios require numeric variable values.');
126
- if (kind === 'box' || kind === 'boxSigned')
127
- return Scalar.length(value, options, kind === 'boxSigned', [path]);
128
- if (kind === 'boxOffset')
129
- return Scalar.convert('offset', value, options, [path]);
130
- return Scalar.convert(kind, value, options, [path]);
131
- }
132
- if (targets.length) {
133
- const values = targets.map(convert);
134
- if (values.some((value) => value !== values[0]))
135
- throw new Error('Mapped native properties require different converted values.');
136
- return values[0];
137
- }
138
- if (domain === 'spacing')
139
- return Scalar.length(value, options, true, [path]);
140
- if (domain === 'color')
141
- return Scalar.convert('color', value, options, [path]);
142
- return value;
143
- }
144
- catch (error) {
145
- return [
146
- `Native variable ${path}: ${error instanceof Error ? error.message : String(error)}`,
147
- ];
148
- }
149
- })();
150
- let parent = tree;
151
- for (const key of parts.slice(0, -1))
152
- parent = (parent[key] ??= Object.create(null));
153
- parent[parts.at(-1)] = converted;
154
- }
155
- return tree;
156
- }
157
- }
158
- /** Graph-owned profile exports and imports, excluded from public adapter options. */
159
- export const shared = Symbol('zyzz.compiler.native.vars');
160
- //# sourceMappingURL=NativeVars.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NativeVars.js","sourceRoot":"","sources":["../../../src/compiler/internal/NativeVars.ts"],"names":[],"mappings":"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"}
@@ -1,37 +0,0 @@
1
- /** Preserves ordered style bodies and runtime ownership across package boundaries. @module */
2
- import type * as Recipe from '../../internal/Recipe.js';
3
- import type * as RuntimeRecipe from '../../runtime/Recipe.js';
4
- import type * as Source from '../Source.js';
5
- import type * as Style from '../../Style.js';
6
- import type * as Theme from '../../internal/Theme.js';
7
- /** Portable composition inputs; selection behavior remains in the compiled callable. */
8
- export type Definition = {
9
- /** Runtime scalar slots retained without executable callback bodies. */
10
- readonly dynamic?: {
11
- readonly recipe: Recipe.Definition;
12
- readonly slots: NonNullable<Source.Call['slots']>;
13
- readonly payloads?: RuntimeRecipe.Definition['payloads'];
14
- readonly defaultPayloads?: RuntimeRecipe.Definition['defaultPayloads'];
15
- } | undefined;
16
- /** Exact published classes replaced by a composition. Filled by graph emission. */
17
- readonly className?: string | undefined;
18
- /** Attributes owned by the callable, including conditional selections. */
19
- readonly attributes: readonly string[];
20
- /** Named Provider selections retained by separately compiled styles. */
21
- readonly nativeContext?: Source.Call['nativeContext'];
22
- /** Native HTML output; React props are the default. */
23
- readonly output?: 'html' | undefined;
24
- /** Private dynamic custom properties owned by the callable. */
25
- readonly slots: readonly string[];
26
- /** Target-neutral finite recipe retained for native consumers. */
27
- readonly staticRecipe?: Recipe.Definition | undefined;
28
- /** Complete finite alternatives in authored cascade order. */
29
- readonly style: Style.NamedStyle;
30
- };
31
- /** Captures ownership without retaining source ASTs or executable expressions. */
32
- export declare function create(call: Source.Call, style: Style.NamedStyle): Definition;
33
- /** Validates compiler data and restores live theme references without executing package code. */
34
- export declare function read(value: unknown, themes: Readonly<Record<string, Theme.Definition>>, version?: number): Definition;
35
- /** Encodes references as data while preserving declaration and condition order. */
36
- export declare function write(definition: Definition): unknown;
37
- //# sourceMappingURL=PackedStyles.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PackedStyles.d.ts","sourceRoot":"","sources":["../../../src/compiler/internal/PackedStyles.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,OAAO,KAAK,KAAK,MAAM,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,KAAK,aAAa,MAAM,yBAAyB,CAAA;AAM7D,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,KAAK,KAAK,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,yBAAyB,CAAA;AAGrD,wFAAwF;AACxF,MAAM,MAAM,UAAU,GAAG;IACvB,wEAAwE;IACxE,QAAQ,CAAC,OAAO,CAAC,EACb;QACE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAA;QAClC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;QACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QACxD,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAA;KACvE,GACD,SAAS,CAAA;IACb,mFAAmF;IACnF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACvC,0EAA0E;IAC1E,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;IACtC,wEAAwE;IACxE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IACrD,uDAAuD;IACvD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACpC,+DAA+D;IAC/D,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;IACjC,kEAAkE;IAClE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,UAAU,GAAG,SAAS,CAAA;IACrD,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAA;CACjC,CAAA;AAED,kFAAkF;AAClF,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,GAAG,UAAU,CAyC7E;AAED,iGAAiG;AACjG,wBAAgB,IAAI,CAClB,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAClD,OAAO,SAAK,GACX,UAAU,CAgVZ;AAED,mFAAmF;AACnF,wBAAgB,KAAK,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAcrD"}
@@ -1,344 +0,0 @@
1
- import * as Targets from '../../internal/Targets.js';
2
- import * as Binding from '../../internal/Binding.js';
3
- import * as Condition from '../../internal/Condition.js';
4
- import * as ConditionalRecipe from '../../runtime/ConditionalRecipe.js';
5
- import * as Literal from '../../internal/Literal.js';
6
- import * as Token from '../../internal/Token.js';
7
- /** Captures ownership without retaining source ASTs or executable expressions. */
8
- export function create(call, style) {
9
- return {
10
- ...(call.nativeContext ? { nativeContext: call.nativeContext } : {}),
11
- ...(call.slots || call.dynamicRecipe
12
- ? {
13
- dynamic: {
14
- recipe: call.dynamicRecipe ?? {
15
- axes: {},
16
- defaults: {},
17
- rules: [{ matches: [], value: { styles: [style] } }],
18
- },
19
- slots: call.slots ?? {},
20
- payloads: call.recipe?.payloads,
21
- defaultPayloads: call.recipe?.defaultPayloads,
22
- },
23
- }
24
- : {}),
25
- attributes: Object.keys(call.recipe?.axes ?? {}).flatMap((axis) => [
26
- `data-${axis}`,
27
- ...(call.recipe?.conditions ?? []).map((_, condition) => ConditionalRecipe.attribute({ axis, condition })),
28
- ]),
29
- ...(call.output ? { output: call.output } : {}),
30
- slots: [
31
- ...Object.values(call.slots ?? {}).map((slot) => slot.name),
32
- ...(call.recipe?.payloads ?? []).flatMap((payload) => payload.slots.flatMap((slots) => Object.values(slots))),
33
- ],
34
- staticRecipe: call.staticRecipe ??
35
- (!call.slots && !call.recipe && call.output !== 'html'
36
- ? {
37
- axes: {},
38
- defaults: {},
39
- rules: [{ matches: [], value: { styles: [style] } }],
40
- }
41
- : undefined),
42
- style,
43
- };
44
- }
45
- /** Validates compiler data and restores live theme references without executing package code. */
46
- export function read(value, themes, version = 17) {
47
- const tokens = new Map();
48
- function collect(value) {
49
- if (Token.is(value)) {
50
- tokens.set(JSON.stringify([value.contract[Token.identity], value.path]), value);
51
- // Catalog themes share identities and paths but retain distinct fallback values.
52
- tokens.set(JSON.stringify([value.contract[Token.identity], value.path, value.value], encode), value);
53
- return;
54
- }
55
- if (value && typeof value === 'object')
56
- for (const child of Object.values(value))
57
- collect(child);
58
- }
59
- for (const theme of Object.values(themes))
60
- collect(theme.tokens);
61
- function scalar(value, depth = 0) {
62
- if (depth > 64)
63
- throw new Error('Packed style expression exceeds 64 levels.');
64
- if (typeof value === 'string' ||
65
- (typeof value === 'number' && Number.isFinite(value)))
66
- return value;
67
- const item = object(value);
68
- if (item.kind === 'token') {
69
- const token = tokens.get(JSON.stringify([
70
- item.identity,
71
- item.path,
72
- ...(Object.hasOwn(item, 'value') ? [item.value] : []),
73
- ]));
74
- if (!token)
75
- throw new Error('Unknown packed style token.');
76
- return token;
77
- }
78
- if (item.kind === 'expression') {
79
- const parts = array(item.parts).map((part) => scalar(part, depth + 1));
80
- if (parts.some((part) => typeof part === 'number' || Token.isExpression(part)))
81
- throw new Error('Invalid packed style expression.');
82
- return Token.compose(parts);
83
- }
84
- const binding = Object.freeze(item);
85
- if (Binding.is(binding) && /^--z-[a-zA-Z0-9_-]+$/.test(binding.name))
86
- return binding;
87
- throw new Error('Invalid packed style value.');
88
- }
89
- function style(value, depth = 0) {
90
- if (depth > 64)
91
- throw new Error('Packed style nesting exceeds 64 levels.');
92
- const item = object(value);
93
- if (item.targets !== undefined && version < 20)
94
- throw new Error('Target branches require contract version 20 or later.');
95
- if (item.cssOutput !== undefined &&
96
- item.cssOutput !== 'atomic' &&
97
- item.cssOutput !== 'grouped')
98
- throw new Error('Invalid packed style CSS output mode.');
99
- if (item.composition !== undefined &&
100
- (version < 34 ||
101
- (item.composition !== 'independent' && item.composition !== 'ordered')))
102
- throw new Error('Invalid packed style composition mode.');
103
- return {
104
- ...(item.composition
105
- ? { composition: item.composition }
106
- : {}),
107
- ...(item.cssOutput
108
- ? { cssOutput: item.cssOutput }
109
- : {}),
110
- declarations: array(item.declarations).map((value) => {
111
- const declaration = object(value);
112
- const property = string(declaration.property);
113
- if (!Object.hasOwn(Literal.rules, property) &&
114
- !property.startsWith('--'))
115
- throw new Error('Invalid packed style property.');
116
- if (declaration.important !== undefined &&
117
- typeof declaration.important !== 'boolean')
118
- throw new Error('Invalid packed style importance.');
119
- return {
120
- important: declaration.important,
121
- property,
122
- value: scalar(declaration.value),
123
- };
124
- }),
125
- name: string(item.name),
126
- ...(item.targets === undefined
127
- ? {}
128
- : {
129
- targets: (() => {
130
- const targets = object(item.targets);
131
- if (Object.keys(targets).some((key) => !['android', 'ios', 'native', 'web'].includes(key)))
132
- throw new Error('Unknown packed style target.');
133
- return {
134
- ...(targets.android === undefined
135
- ? {}
136
- : {
137
- android: Targets.copy(object(targets.android)),
138
- }),
139
- ...(targets.ios === undefined
140
- ? {}
141
- : {
142
- ios: Targets.copy(object(targets.ios)),
143
- }),
144
- ...(targets.native === undefined
145
- ? {}
146
- : {
147
- native: Targets.copy(object(targets.native)),
148
- }),
149
- ...(targets.web === undefined
150
- ? {}
151
- : { web: style(targets.web, depth + 1) }),
152
- };
153
- })(),
154
- }),
155
- ...(item.rules === undefined
156
- ? {}
157
- : {
158
- rules: array(item.rules).map((value) => {
159
- const rule = object(value);
160
- const condition = rule.condition === undefined
161
- ? undefined
162
- : string(rule.condition);
163
- if (condition !== undefined &&
164
- !condition.startsWith('@') &&
165
- !Condition.nested(condition))
166
- throw new Error('Invalid packed style condition.');
167
- return {
168
- ...(condition ? { condition } : {}),
169
- style: style(rule.style, depth + 1),
170
- };
171
- }),
172
- }),
173
- };
174
- }
175
- const item = object(value);
176
- if (version >= 17 && object(item.style).cssOutput === undefined)
177
- throw new Error('Missing packed style CSS output mode.');
178
- const attributes = array(item.attributes).map(string);
179
- const slots = array(item.slots).map(string);
180
- if (attributes.some((name) => !/^data-[a-zA-Z0-9_-]+$/.test(name)) ||
181
- slots.some((name) => !/^--z-[a-zA-Z0-9_-]+$/.test(name)) ||
182
- (item.output !== undefined && item.output !== 'html'))
183
- throw new Error('Invalid packed style ownership.');
184
- function readRecipe(input) {
185
- if (input === undefined)
186
- return undefined;
187
- if (version < 21)
188
- throw new Error('Static recipes require contract version 21 or later.');
189
- const recipe = object(input);
190
- const axes = Object.fromEntries(Object.entries(object(recipe.axes)).map(([name, value]) => {
191
- const choices = array(value).map(string);
192
- if (!name ||
193
- new Set(choices).size !== choices.length ||
194
- !choices.length)
195
- throw new Error('Invalid packed recipe axis.');
196
- return [name, choices];
197
- }));
198
- const defaults = Object.fromEntries(Object.entries(object(recipe.defaults)).map(([axis, choice]) => {
199
- if (!Object.hasOwn(axes, axis) ||
200
- (choice !== null && !axes[axis].includes(string(choice))))
201
- throw new Error('Invalid packed recipe default.');
202
- return [axis, choice === null ? null : string(choice)];
203
- }));
204
- const rules = array(recipe.rules).map((value) => {
205
- const rule = object(value);
206
- return {
207
- matches: array(rule.matches).map((value) => {
208
- const match = array(value);
209
- const axis = string(match[0]);
210
- const choices = array(match[1]).map(string);
211
- if (match.length !== 2 ||
212
- !Object.hasOwn(axes, axis) ||
213
- !choices.length ||
214
- choices.some((choice) => !axes[axis].includes(choice)))
215
- throw new Error('Invalid packed recipe match.');
216
- return [axis, choices];
217
- }),
218
- value: {
219
- styles: array(object(rule.value).styles).map((value) => style(value)),
220
- },
221
- };
222
- });
223
- return { axes, defaults, rules };
224
- }
225
- const staticRecipe = readRecipe(item.staticRecipe);
226
- const dynamic = (() => {
227
- if (item.dynamic === undefined)
228
- return undefined;
229
- if (version < 23)
230
- throw new Error('Dynamic native contracts require version 23 or later.');
231
- const entry = object(item.dynamic);
232
- const recipe = readRecipe(entry.recipe);
233
- if (!recipe)
234
- throw new Error('Missing packed dynamic recipe.');
235
- function fields(value) {
236
- return Object.fromEntries(Object.entries(object(value)).map(([field, value]) => {
237
- const name = string(value);
238
- if (!field ||
239
- ['__proto__', 'style', 'className', 'vars', 'key', 'ref'].includes(field) ||
240
- !slots.includes(name))
241
- throw new Error('Invalid packed dynamic slot.');
242
- return [field, name];
243
- }));
244
- }
245
- const inputs = Object.fromEntries(Object.entries(object(entry.slots)).map(([field, value]) => {
246
- const reference = scalar(value);
247
- if (!Binding.is(reference) ||
248
- !['number', 'length'].includes(reference.type))
249
- throw new Error('Invalid packed dynamic scalar.');
250
- fields({ [field]: reference.name });
251
- return [field, reference];
252
- }));
253
- const seen = new Set();
254
- const payloads = entry.payloads === undefined
255
- ? undefined
256
- : array(entry.payloads).map((value) => {
257
- const payload = object(value);
258
- const axis = string(payload.axis);
259
- const choice = string(payload.choice);
260
- const identity = JSON.stringify([axis, choice]);
261
- if (!recipe.axes[axis]?.includes(choice) || seen.has(identity))
262
- throw new Error('Invalid packed dynamic choice.');
263
- seen.add(identity);
264
- return {
265
- axis,
266
- choice,
267
- slots: array(payload.slots).map((value) => fields(value)),
268
- };
269
- });
270
- if (payloads?.some((payload) => payload.slots.length !== 1))
271
- throw new Error('Native payloads require one unconditional slot map.');
272
- const defaultPayloads = entry.defaultPayloads === undefined
273
- ? undefined
274
- : Object.fromEntries(Object.entries(object(entry.defaultPayloads)).map(([axis, value]) => {
275
- const payload = payloads?.find((payload) => payload.axis === axis &&
276
- payload.choice === recipe.defaults[axis]);
277
- if (!payload)
278
- throw new Error('Invalid packed dynamic default.');
279
- const defaults = object(value);
280
- const expected = Object.keys(payload.slots[0]);
281
- if (Object.keys(defaults).length !== expected.length ||
282
- expected.some((field) => !Object.hasOwn(defaults, field)))
283
- throw new Error('Incomplete packed dynamic default.');
284
- return [
285
- axis,
286
- Object.fromEntries(Object.entries(defaults).map(([field, value]) => {
287
- if (typeof value !== 'string' &&
288
- (typeof value !== 'number' || !Number.isFinite(value)))
289
- throw new Error('Invalid packed dynamic default scalar.');
290
- return [field, value];
291
- })),
292
- ];
293
- }));
294
- return { recipe, slots: inputs, payloads, defaultPayloads };
295
- })();
296
- return {
297
- ...(dynamic ? { dynamic } : {}),
298
- attributes,
299
- className: string(item.className),
300
- ...(item.output ? { output: 'html' } : {}),
301
- slots,
302
- staticRecipe,
303
- style: style(item.style),
304
- };
305
- }
306
- /** Encodes references as data while preserving declaration and condition order. */
307
- export function write(definition) {
308
- return JSON.parse(JSON.stringify({
309
- ...definition,
310
- nativeContext: undefined,
311
- style: {
312
- ...definition.style,
313
- cssOutput: definition.style.cssOutput ?? 'atomic',
314
- },
315
- }, encode));
316
- }
317
- function encode(_, value) {
318
- if (Token.is(value))
319
- return {
320
- identity: value.contract[Token.identity],
321
- kind: 'token',
322
- path: value.path,
323
- value: value.value,
324
- };
325
- if (Token.isExpression(value))
326
- return { kind: 'expression', parts: value.parts };
327
- return value;
328
- }
329
- function array(value) {
330
- if (!Array.isArray(value))
331
- throw new Error('Expected a packed style array.');
332
- return value;
333
- }
334
- function object(value) {
335
- if (!value || typeof value !== 'object' || Array.isArray(value))
336
- throw new Error('Expected a packed style object.');
337
- return value;
338
- }
339
- function string(value) {
340
- if (typeof value !== 'string')
341
- throw new Error('Expected a packed style string.');
342
- return value;
343
- }
344
- //# sourceMappingURL=PackedStyles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PackedStyles.js","sourceRoot":"","sources":["../../../src/compiler/internal/PackedStyles.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /** Rejects declaration delimiters inside an authored initial value. */
2
- export declare function initial(value: string): void;
3
- /** Validates registrations before output-parser recovery can discard them. */
4
- export declare function validate(source: string): boolean;
5
- //# sourceMappingURL=Properties.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Properties.d.ts","sourceRoot":"","sources":["../../../src/compiler/internal/Properties.ts"],"names":[],"mappings":"AAMA,uEAAuE;AACvE,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAE3C;AAED,8EAA8E;AAC9E,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CA4GhD"}