@yahoo/uds-create-config 2.45.0 → 3.0.1

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 (376) hide show
  1. package/README.md +129 -0
  2. package/dist/ai-lanes.d.ts +23 -0
  3. package/dist/ai-lanes.js +34 -0
  4. package/dist/authoring/define-component.d.ts +85 -0
  5. package/dist/configs/CanvasConfig.d.ts +3237 -0
  6. package/dist/configs/CanvasConfig.js +332 -0
  7. package/dist/configs/build-options.d.ts +10 -0
  8. package/dist/configs/build-options.js +68 -0
  9. package/dist/configs/platform.d.ts +15 -0
  10. package/dist/configs/platform.js +17 -0
  11. package/dist/configs/react-native-system.d.ts +3026 -0
  12. package/dist/configs/react-native-system.js +64 -0
  13. package/dist/configs/system.d.ts +2771 -0
  14. package/dist/configs/system.js +74 -0
  15. package/dist/css/properties.generated.d.ts +14 -0
  16. package/dist/css/properties.generated.js +6260 -0
  17. package/dist/css/value-type.d.ts +48 -0
  18. package/dist/css/value-type.js +131 -0
  19. package/dist/css/values.d.ts +33 -0
  20. package/dist/css/values.js +116 -0
  21. package/dist/entities/native/NativeModifier.d.ts +25 -0
  22. package/dist/entities/native/NativeModifier.js +41 -0
  23. package/dist/entities/native/NativeSettings.d.ts +44 -0
  24. package/dist/entities/native/NativeSettings.js +39 -0
  25. package/dist/entities/native/NativeStyleProperty.d.ts +355 -0
  26. package/dist/entities/native/NativeStyleProperty.js +28 -0
  27. package/dist/entities/native/NativeToken.d.ts +31 -0
  28. package/dist/entities/native/NativeToken.js +49 -0
  29. package/dist/entities/system/CanvasRole.d.ts +34 -0
  30. package/dist/entities/system/CanvasRole.js +45 -0
  31. package/dist/entities/system/Component.d.ts +1287 -0
  32. package/dist/entities/system/Component.js +1840 -0
  33. package/dist/entities/system/Composite.d.ts +12 -0
  34. package/dist/entities/system/Composite.js +26 -0
  35. package/dist/entities/system/Device.d.ts +11 -0
  36. package/dist/entities/system/Device.js +18 -0
  37. package/dist/entities/system/File.d.ts +72 -0
  38. package/dist/entities/system/File.js +136 -0
  39. package/dist/entities/system/Font.d.ts +48 -0
  40. package/dist/entities/system/Font.js +56 -0
  41. package/dist/entities/system/GlobalStyle.d.ts +26 -0
  42. package/dist/entities/system/GlobalStyle.js +54 -0
  43. package/dist/entities/system/Guidance.d.ts +85 -0
  44. package/dist/entities/system/Guidance.js +59 -0
  45. package/dist/entities/system/GuidanceStyle.d.ts +14 -0
  46. package/dist/entities/system/GuidanceStyle.js +8 -0
  47. package/dist/entities/system/Icon.d.ts +46 -0
  48. package/dist/entities/system/Icon.js +46 -0
  49. package/dist/entities/system/LinkedSystem.d.ts +504 -0
  50. package/dist/entities/system/LinkedSystem.js +814 -0
  51. package/dist/entities/system/Modifier.d.ts +92 -0
  52. package/dist/entities/system/Modifier.js +120 -0
  53. package/dist/entities/system/Motion.d.ts +28 -0
  54. package/dist/entities/system/Motion.js +48 -0
  55. package/dist/entities/system/Operation.d.ts +100 -0
  56. package/dist/entities/system/Operation.js +236 -0
  57. package/dist/entities/system/Package.d.ts +42 -0
  58. package/dist/entities/system/Package.js +75 -0
  59. package/dist/entities/system/Settings.d.ts +94 -0
  60. package/dist/entities/system/Settings.js +166 -0
  61. package/dist/entities/system/StyleProperty.d.ts +135 -0
  62. package/dist/entities/system/StyleProperty.js +438 -0
  63. package/dist/entities/system/Token.d.ts +67 -0
  64. package/dist/entities/system/Token.js +129 -0
  65. package/dist/entities/system/Tool.d.ts +134 -0
  66. package/dist/entities/system/Tool.js +124 -0
  67. package/dist/entities/system/color.d.ts +64 -0
  68. package/dist/entities/system/color.js +123 -0
  69. package/dist/entities/system/component-module.d.ts +63 -0
  70. package/dist/entities/system/component-module.js +258 -0
  71. package/dist/entities/system/copy-plan.d.ts +98 -0
  72. package/dist/entities/system/copy-plan.js +451 -0
  73. package/dist/entities/system/defineComponent.d.ts +428 -0
  74. package/dist/entities/system/defineComponent.js +337 -0
  75. package/dist/entities/system/element.d.ts +101 -0
  76. package/dist/entities/system/element.js +171 -0
  77. package/dist/entities/system/icon-library.d.ts +64 -0
  78. package/dist/entities/system/icon-library.js +112 -0
  79. package/dist/entities/system/icon-metadata.d.ts +72 -0
  80. package/dist/entities/system/icon-metadata.js +111 -0
  81. package/dist/entities/system/link-declaration.d.ts +27 -0
  82. package/dist/entities/system/link-declaration.js +64 -0
  83. package/dist/entities/system/link-plan.d.ts +160 -0
  84. package/dist/entities/system/link-plan.js +770 -0
  85. package/dist/entities/system/runtime-modules.d.ts +25 -0
  86. package/dist/entities/system/runtime-modules.js +38 -0
  87. package/dist/entities/system/style-bag.d.ts +20 -0
  88. package/dist/entities/system/style-bag.js +246 -0
  89. package/dist/entities/system/token-index.d.ts +89 -0
  90. package/dist/entities/system/token-index.js +112 -0
  91. package/dist/framework/Config.d.ts +2472 -0
  92. package/dist/framework/Config.js +5023 -0
  93. package/dist/framework/Entity.d.ts +127 -0
  94. package/dist/framework/Entity.js +125 -0
  95. package/dist/framework/authoring.d.ts +24 -0
  96. package/dist/framework/authoring.js +7 -0
  97. package/dist/framework/change-hooks.d.ts +119 -0
  98. package/dist/framework/change-hooks.js +131 -0
  99. package/dist/framework/changes.d.ts +88 -0
  100. package/dist/framework/changes.js +246 -0
  101. package/dist/framework/class-names.d.ts +260 -0
  102. package/dist/framework/class-names.js +630 -0
  103. package/dist/framework/coalesce.d.ts +25 -0
  104. package/dist/framework/coalesce.js +60 -0
  105. package/dist/framework/config-op.d.ts +76 -0
  106. package/dist/framework/config-op.js +43 -0
  107. package/dist/framework/config-operation-kind.d.ts +14 -0
  108. package/dist/framework/config-operation-kind.js +14 -0
  109. package/dist/framework/config-ops.d.ts +34 -0
  110. package/dist/framework/config-ops.js +187 -0
  111. package/dist/framework/defineConfig.d.ts +196 -0
  112. package/dist/framework/defineConfig.js +100 -0
  113. package/dist/framework/defineDerivedEntity.d.ts +74 -0
  114. package/dist/framework/defineDerivedEntity.js +83 -0
  115. package/dist/framework/defineEntity.d.ts +318 -0
  116. package/dist/framework/defineEntity.js +183 -0
  117. package/dist/framework/defineSubEntity.d.ts +148 -0
  118. package/dist/framework/defineSubEntity.js +121 -0
  119. package/dist/framework/derived-mutations.d.ts +20 -0
  120. package/dist/framework/derived-mutations.js +38 -0
  121. package/dist/framework/entity-search.d.ts +29 -0
  122. package/dist/framework/entity-search.js +117 -0
  123. package/dist/framework/inline-sources.d.ts +49 -0
  124. package/dist/framework/inline-sources.js +388 -0
  125. package/dist/framework/layer-styles.d.ts +25 -0
  126. package/dist/framework/layer-styles.js +49 -0
  127. package/dist/framework/memo.d.ts +48 -0
  128. package/dist/framework/memo.js +84 -0
  129. package/dist/framework/overlay.d.ts +49 -0
  130. package/dist/framework/overlay.js +17 -0
  131. package/dist/framework/plan.d.ts +49 -0
  132. package/dist/framework/plan.js +73 -0
  133. package/dist/framework/projections.d.ts +480 -0
  134. package/dist/framework/projections.js +974 -0
  135. package/dist/framework/prop-surface.d.ts +132 -0
  136. package/dist/framework/prop-surface.js +278 -0
  137. package/dist/framework/ref-graph.d.ts +71 -0
  138. package/dist/framework/ref-graph.js +158 -0
  139. package/dist/framework/ref-integrity.d.ts +55 -0
  140. package/dist/framework/ref-integrity.js +171 -0
  141. package/dist/framework/registered.d.ts +95 -0
  142. package/dist/framework/registry-dir.d.ts +42 -0
  143. package/dist/framework/registry-dir.js +48 -0
  144. package/dist/framework/registry.d.ts +300 -0
  145. package/dist/framework/registry.js +104 -0
  146. package/dist/framework/rejection.d.ts +58 -0
  147. package/dist/framework/rejection.js +111 -0
  148. package/dist/framework/rename-inference.d.ts +26 -0
  149. package/dist/framework/rename-inference.js +50 -0
  150. package/dist/framework/render-spec.d.ts +296 -0
  151. package/dist/framework/render-spec.js +809 -0
  152. package/dist/framework/schema-version.d.ts +140 -0
  153. package/dist/framework/schema-version.js +214 -0
  154. package/dist/framework/schemas.d.ts +109 -0
  155. package/dist/framework/schemas.js +615 -0
  156. package/dist/framework/session.d.ts +196 -0
  157. package/dist/framework/session.js +367 -0
  158. package/dist/framework/signature.d.ts +15 -0
  159. package/dist/framework/signature.js +83 -0
  160. package/dist/framework/snapshot.d.ts +115 -0
  161. package/dist/framework/snapshot.js +277 -0
  162. package/dist/framework/source-integrity.d.ts +226 -0
  163. package/dist/framework/source-integrity.js +478 -0
  164. package/dist/framework/sources.d.ts +211 -0
  165. package/dist/framework/sources.js +89 -0
  166. package/dist/framework/utils/compiled-schema.d.ts +23 -0
  167. package/dist/framework/utils/compiled-schema.js +46 -0
  168. package/dist/framework/utils/content-key.d.ts +15 -0
  169. package/dist/framework/utils/content-key.js +33 -0
  170. package/dist/framework/utils/enumerated.d.ts +13 -0
  171. package/dist/framework/utils/enumerated.js +19 -0
  172. package/dist/framework/utils/field-path.d.ts +95 -0
  173. package/dist/framework/utils/field-path.js +136 -0
  174. package/dist/framework/utils/field-schema.d.ts +55 -0
  175. package/dist/framework/utils/field-schema.js +183 -0
  176. package/dist/framework/utils/group.d.ts +37 -0
  177. package/dist/framework/utils/group.js +13 -0
  178. package/dist/framework/utils/package-path.d.ts +37 -0
  179. package/dist/framework/utils/package-path.js +61 -0
  180. package/dist/framework/utils/refs.d.ts +194 -0
  181. package/dist/framework/utils/refs.js +403 -0
  182. package/dist/framework/validate-spec.d.ts +27 -0
  183. package/dist/framework/validate-spec.js +45 -0
  184. package/dist/framework/value-domain.d.ts +26 -0
  185. package/dist/framework/value-domain.js +202 -0
  186. package/dist/framework/views-facade.d.ts +15 -0
  187. package/dist/framework/views-facade.js +19 -0
  188. package/dist/index.d.ts +90 -42
  189. package/dist/index.js +86 -37
  190. package/dist/migrations/2.0.0/raw-css.d.ts +11 -0
  191. package/dist/migrations/2.0.0/raw-css.js +72 -0
  192. package/dist/migrations/2.0.0/v1-artifact.d.ts +1559 -0
  193. package/dist/migrations/2.0.0/v1-artifact.js +1018 -0
  194. package/dist/migrations/20260908171448_settings_as_kind.d.ts +22 -0
  195. package/dist/migrations/20260908171448_settings_as_kind.js +89 -0
  196. package/dist/migrations/20260908194245_visible_state_pointer.d.ts +19 -0
  197. package/dist/migrations/20260908194245_visible_state_pointer.js +115 -0
  198. package/dist/migrations/20260909183001_icon_knockout_variants.d.ts +18 -0
  199. package/dist/migrations/20260909183001_icon_knockout_variants.js +8 -0
  200. package/dist/migrations/20260910212453_linked_system_link_ops.d.ts +13 -0
  201. package/dist/migrations/20260910212453_linked_system_link_ops.js +8 -0
  202. package/dist/migrations/index.d.ts +2 -0
  203. package/dist/migrations/index.js +2 -0
  204. package/dist/react-native/style-keys.generated.d.ts +10 -0
  205. package/dist/react-native/style-keys.generated.js +167 -0
  206. package/dist/renderer/RendererErrorBoundary.d.ts +32 -5
  207. package/dist/renderer/RendererErrorBoundary.js +59 -10
  208. package/dist/renderer/UdsRenderer.d.ts +11 -10
  209. package/dist/renderer/UdsRenderer.js +1 -1
  210. package/dist/renderer/assetEntries.d.ts +37 -0
  211. package/dist/renderer/assetEntries.js +39 -0
  212. package/dist/renderer/assetRenderable.d.ts +14 -6
  213. package/dist/renderer/assetRenderable.js +8 -2
  214. package/dist/renderer/componentEntry.d.ts +58 -0
  215. package/dist/renderer/componentEntry.js +71 -0
  216. package/dist/renderer/icon-library.d.ts +20 -0
  217. package/dist/renderer/index.d.ts +7 -7
  218. package/dist/renderer/index.js +5 -5
  219. package/dist/renderer/primitives/SlotRenderer.d.ts +1 -1
  220. package/dist/renderer/primitives/SlotRenderer.js +1 -1
  221. package/dist/renderer/runtimeComponent.d.ts +33 -0
  222. package/dist/renderer/runtimeComponent.js +113 -0
  223. package/dist/renderer/spec-content.d.ts +43 -0
  224. package/dist/renderer/spec-content.js +95 -0
  225. package/dist/renderer/wrapRegistry.d.ts +22 -37
  226. package/dist/renderer/wrapRegistry.js +10 -20
  227. package/dist/renderer/wrappers/event-bridge.js +6 -5
  228. package/dist/renderer/wrappers/hex-normalize.js +6 -5
  229. package/dist/renderer/wrappers/html-aliases.d.ts +7 -2
  230. package/dist/renderer/wrappers/html-aliases.js +36 -19
  231. package/dist/renderer/wrappers/inline-styles.js +7 -6
  232. package/dist/spec/asset-jsx.d.ts +18 -5
  233. package/dist/spec/asset-jsx.js +27 -16
  234. package/dist/spec/collapse-text-labels.d.ts +5 -15
  235. package/dist/spec/collapse-text-labels.js +26 -19
  236. package/dist/spec/empty-node-slots.d.ts +56 -34
  237. package/dist/spec/empty-node-slots.js +87 -47
  238. package/dist/spec/index.d.ts +21 -10
  239. package/dist/spec/index.js +21 -10
  240. package/dist/spec/jsxToSpec.d.ts +14 -9
  241. package/dist/spec/jsxToSpec.js +20 -3
  242. package/dist/spec/preview-elements.d.ts +63 -0
  243. package/dist/spec/preview-elements.js +89 -0
  244. package/dist/spec/rewrite-refs.d.ts +58 -0
  245. package/dist/spec/rewrite-refs.js +250 -0
  246. package/dist/spec/specToJsx.js +18 -29
  247. package/dist/tsconfig.tsbuildinfo +1 -1
  248. package/package.json +39 -52
  249. package/dist/AssetGroup.d.ts +0 -77
  250. package/dist/AssetGroup.js +0 -125
  251. package/dist/Component.d.ts +0 -333
  252. package/dist/Component.js +0 -1061
  253. package/dist/ComponentGroup.d.ts +0 -22
  254. package/dist/ComponentGroup.js +0 -51
  255. package/dist/CompositeStyle.d.ts +0 -30
  256. package/dist/CompositeStyle.js +0 -59
  257. package/dist/Config.d.ts +0 -528
  258. package/dist/Config.js +0 -1712
  259. package/dist/Mode.d.ts +0 -41
  260. package/dist/Mode.js +0 -81
  261. package/dist/Modifier.d.ts +0 -51
  262. package/dist/Modifier.js +0 -97
  263. package/dist/MotionDef.d.ts +0 -81
  264. package/dist/MotionDef.js +0 -212
  265. package/dist/Props.d.ts +0 -332
  266. package/dist/Props.js +0 -35
  267. package/dist/Provider.d.ts +0 -20
  268. package/dist/Provider.js +0 -14
  269. package/dist/StyleProp.d.ts +0 -145
  270. package/dist/StyleProp.js +0 -239
  271. package/dist/Token.d.ts +0 -76
  272. package/dist/Token.js +0 -133
  273. package/dist/TokenGroup.d.ts +0 -33
  274. package/dist/TokenGroup.js +0 -69
  275. package/dist/asset-kind.d.ts +0 -55
  276. package/dist/asset-kind.js +0 -29
  277. package/dist/asset-value.d.ts +0 -23
  278. package/dist/asset-value.js +0 -40
  279. package/dist/brands.d.ts +0 -30
  280. package/dist/brands.js +0 -20
  281. package/dist/captureCallerPath.d.ts +0 -48
  282. package/dist/captureCallerPath.js +0 -95
  283. package/dist/colorExpressions.d.ts +0 -131
  284. package/dist/colorExpressions.js +0 -148
  285. package/dist/component-referrers.d.ts +0 -30
  286. package/dist/component-referrers.js +0 -40
  287. package/dist/config-diagnostics.d.ts +0 -21
  288. package/dist/config-diagnostics.js +0 -12
  289. package/dist/defineAssetGroup.d.ts +0 -200
  290. package/dist/defineAssetGroup.js +0 -323
  291. package/dist/defineProvider.d.ts +0 -29
  292. package/dist/defineProvider.js +0 -60
  293. package/dist/element-marker.d.ts +0 -63
  294. package/dist/element-marker.js +0 -113
  295. package/dist/entity-utils.d.ts +0 -56
  296. package/dist/entity-utils.js +0 -105
  297. package/dist/extension.d.ts +0 -55
  298. package/dist/extension.js +0 -214
  299. package/dist/factories.d.ts +0 -863
  300. package/dist/factories.js +0 -475
  301. package/dist/font-face.d.ts +0 -25
  302. package/dist/font-face.js +0 -72
  303. package/dist/foreign-component-name.d.ts +0 -21
  304. package/dist/foreign-component-name.js +0 -42
  305. package/dist/interpolate.d.ts +0 -20
  306. package/dist/interpolate.js +0 -10
  307. package/dist/jsx/__fixtures__/cross-component-preview.d.ts +0 -3
  308. package/dist/jsx/__fixtures__/cross-component-preview.js +0 -15
  309. package/dist/jsx/jsx-dev-runtime.d.ts +0 -15
  310. package/dist/jsx/jsx-dev-runtime.js +0 -11
  311. package/dist/jsx/jsx-runtime.d.ts +0 -48
  312. package/dist/jsx/jsx-runtime.js +0 -305
  313. package/dist/linked-system-pins.d.ts +0 -30
  314. package/dist/linked-system-pins.js +0 -45
  315. package/dist/linkedNodePrefixes.d.ts +0 -73
  316. package/dist/linkedNodePrefixes.js +0 -99
  317. package/dist/markers.d.ts +0 -235
  318. package/dist/markers.js +0 -70
  319. package/dist/motion-constants.d.ts +0 -37
  320. package/dist/motion-constants.js +0 -61
  321. package/dist/native/NativeConfig.d.ts +0 -56
  322. package/dist/native/NativeConfig.js +0 -162
  323. package/dist/native/assets.d.ts +0 -20
  324. package/dist/native/assets.js +0 -17
  325. package/dist/native/components.d.ts +0 -139
  326. package/dist/native/components.js +0 -67
  327. package/dist/native/index.d.ts +0 -18
  328. package/dist/native/index.js +0 -17
  329. package/dist/native/modes.d.ts +0 -10
  330. package/dist/native/modes.js +0 -11
  331. package/dist/native/types.d.ts +0 -95
  332. package/dist/native/types.js +0 -0
  333. package/dist/native/validation.d.ts +0 -8
  334. package/dist/native/validation.js +0 -885
  335. package/dist/native/values.d.ts +0 -7
  336. package/dist/native/values.js +0 -15
  337. package/dist/native.d.ts +0 -12
  338. package/dist/native.js +0 -10
  339. package/dist/refs.d.ts +0 -204
  340. package/dist/refs.js +0 -129
  341. package/dist/registry-aliases.d.ts +0 -33
  342. package/dist/registry-aliases.js +0 -35
  343. package/dist/registry-dir.d.ts +0 -22
  344. package/dist/registry-dir.js +0 -10
  345. package/dist/renderer/makeRegistry.d.ts +0 -34
  346. package/dist/renderer/makeRegistry.js +0 -52
  347. package/dist/renderer/makeUdsRenderer.d.ts +0 -13
  348. package/dist/renderer/makeUdsRenderer.js +0 -51
  349. package/dist/renderer/wrappers/component-slots.d.ts +0 -41
  350. package/dist/renderer/wrappers/component-slots.js +0 -66
  351. package/dist/renderer/wrappers/slot-resolution.d.ts +0 -25
  352. package/dist/renderer/wrappers/slot-resolution.js +0 -68
  353. package/dist/renderer/wrappers/void-elements.d.ts +0 -37
  354. package/dist/renderer/wrappers/void-elements.js +0 -40
  355. package/dist/spec/layer-props.d.ts +0 -52
  356. package/dist/spec/layer-props.js +0 -149
  357. package/dist/spec/preview-controls.d.ts +0 -44
  358. package/dist/spec/preview-controls.js +0 -139
  359. package/dist/spec/slot-refs.d.ts +0 -39
  360. package/dist/spec/slot-refs.js +0 -56
  361. package/dist/token-override-rows.d.ts +0 -68
  362. package/dist/token-override-rows.js +0 -233
  363. package/dist/tokenValueType.d.ts +0 -34
  364. package/dist/tokenValueType.js +0 -138
  365. package/dist/types/css-properties.d.ts +0 -233
  366. package/dist/types/css-properties.js +0 -14
  367. package/dist/types/css-property-keywords.d.ts +0 -156
  368. package/dist/types/css-property-keywords.js +0 -616
  369. package/dist/types/css-values.d.ts +0 -63
  370. package/dist/types/css-values.js +0 -16
  371. package/dist/types.d.ts +0 -1138
  372. package/dist/types.js +0 -12
  373. package/dist/units.d.ts +0 -14
  374. package/dist/units.js +0 -16
  375. package/dist/utils/index.d.ts +0 -4
  376. package/dist/utils/index.js +0 -4
@@ -1,139 +0,0 @@
1
- import { TokenRef } from "../refs.js";
2
- import { BooleanMarker, NumberMarker, RequiredBrand, SlotMarker, StringMarker, VariantMarkerArray } from "../markers.js";
3
- import { NativeTokenValue } from "./types.js";
4
- import { ReactNode } from "react";
5
-
6
- //#region src/native/components.d.ts
7
- type RequiredBuilder<T extends {
8
- readonly __required?: boolean;
9
- }> = T & {
10
- required(): T & RequiredBrand;
11
- };
12
- type NativeStringSlotMarker = Omit<SlotMarker, 'required'> & {
13
- readonly __valueType: 'string';
14
- required(): NativeStringSlotMarker & RequiredBrand;
15
- };
16
- type NativeComponentPropMarker = SlotMarker | BooleanMarker | StringMarker | NumberMarker | VariantMarkerArray;
17
- interface NativeComponentPropHelpers {
18
- slot(): SlotMarker;
19
- slot(options: {
20
- type: 'string';
21
- }): NativeStringSlotMarker;
22
- boolean(): RequiredBuilder<BooleanMarker>;
23
- string(): RequiredBuilder<StringMarker>;
24
- number(): RequiredBuilder<NumberMarker>;
25
- variant<const TValues extends readonly (string | number)[]>(values: TValues): RequiredBuilder<VariantMarkerArray<TValues>>;
26
- }
27
- type NativeSlotValue<TMarker extends SlotMarker> = TMarker['__valueType'] extends 'string' ? string : ReactNode;
28
- type NativePropValue<TMarker> = TMarker extends SlotMarker ? NativeSlotValue<TMarker> : TMarker extends BooleanMarker ? boolean : TMarker extends StringMarker ? string : TMarker extends NumberMarker ? number : TMarker extends VariantMarkerArray<infer TValues> ? TValues[number] : never;
29
- type RequiredNativePropKeys<TProps> = { [K in keyof TProps]: TProps[K] extends {
30
- readonly __required: true;
31
- } ? K : never }[keyof TProps];
32
- type NativeComponentPropsFromMarkers<TProps> = { [K in RequiredNativePropKeys<TProps>]-?: NativePropValue<TProps[K]> } & { [K in Exclude<keyof TProps, RequiredNativePropKeys<TProps>>]?: NativePropValue<TProps[K]> };
33
- type ResolvedNativeComponentProps<TProps extends Record<string, NativeComponentPropMarker>, TDefaults> = { [K in keyof TProps as K extends keyof TDefaults ? K : TProps[K] extends {
34
- readonly __required: true;
35
- } ? K : never]-?: NativePropValue<TProps[K]> } & { [K in keyof TProps as K extends keyof TDefaults ? never : TProps[K] extends {
36
- readonly __required: true;
37
- } ? never : K]?: NativePropValue<TProps[K]> };
38
- type NativeLayerKind = 'view' | 'text' | 'image';
39
- interface NativeLayerDefinition<TKind extends NativeLayerKind = NativeLayerKind, TPublicStyle extends string | undefined = string | undefined> {
40
- readonly kind: TKind;
41
- readonly styleProp?: TPublicStyle;
42
- }
43
- interface NativeLayerBuilder<TKind extends NativeLayerKind> extends NativeLayerDefinition<TKind, undefined> {
44
- publicStyle<const TName extends string = 'style'>(name?: TName): NativeLayerDefinition<TKind, TName>;
45
- }
46
- /** Define a React Native style target. */
47
- declare function nativeLayer<const TKind extends NativeLayerKind>(kind: TKind): NativeLayerBuilder<TKind>;
48
- type NativeStyleValue = NativeTokenValue | readonly NativeStyleValue[] | {
49
- readonly [key: string]: NativeStyleValue;
50
- };
51
- type NativeLayerStyle = Readonly<Record<string, NativeStyleValue>>;
52
- type NativeLayerStyles = Readonly<Record<string, NativeLayerStyle>>;
53
- type NativeLayerNames<TLayers> = keyof TLayers & string;
54
- type LayerStylesFor<TLayers> = Partial<Record<NativeLayerNames<TLayers>, NativeLayerStyle>>;
55
- interface NativeComponentStyles<TLayers extends Record<string, NativeLayerDefinition> = Record<string, NativeLayerDefinition>> {
56
- readonly base?: LayerStylesFor<TLayers>;
57
- readonly variants?: Readonly<Record<string, Readonly<Record<string, LayerStylesFor<TLayers>>>>>;
58
- readonly booleans?: Readonly<Record<string, Readonly<{
59
- true?: LayerStylesFor<TLayers>;
60
- false?: LayerStylesFor<TLayers>;
61
- }>>>;
62
- readonly runtimeStates?: Readonly<Record<string, LayerStylesFor<TLayers>>>;
63
- /** Scalar design values exposed to render code through `values.*()`. */
64
- readonly values?: Readonly<Record<string, NativeTokenValue>>;
65
- }
66
- interface NativeComponentStyleHelpers {
67
- token(name: string): TokenRef;
68
- }
69
- /** Serializable design data for one first-class native component. */
70
- interface NativeComponentDefinition<TId extends string = string, TLayers extends Record<string, NativeLayerDefinition> = Record<string, NativeLayerDefinition>, TProps extends Record<string, NativeComponentPropMarker> = Record<string, NativeComponentPropMarker>, TDefaults extends Partial<NativeComponentPropsFromMarkers<TProps>> = Partial<NativeComponentPropsFromMarkers<TProps>>, TStyles extends NativeComponentStyles<TLayers> = NativeComponentStyles<TLayers>> {
71
- readonly id: TId;
72
- readonly layers: TLayers;
73
- readonly props: TProps;
74
- readonly defaultProps?: TDefaults;
75
- readonly label?: string;
76
- readonly description?: string;
77
- readonly styles: TStyles;
78
- }
79
- type RegisteredNativeComponent<TId extends string = string, TLayers extends Record<string, NativeLayerDefinition> = Record<string, NativeLayerDefinition>, TProps extends Record<string, NativeComponentPropMarker> = Record<string, NativeComponentPropMarker>, TDefaults extends Partial<NativeComponentPropsFromMarkers<TProps>> = Partial<NativeComponentPropsFromMarkers<TProps>>, TStyles extends NativeComponentStyles<TLayers> = NativeComponentStyles<TLayers>> = NativeComponentDefinition<TId, TLayers, TProps, TDefaults, TStyles> & {
80
- readonly __nativeComponent: true;
81
- readonly __renderPath: string;
82
- };
83
- type RuntimeStateNames<TComponent> = TComponent extends NativeComponentDefinition<string, Record<string, NativeLayerDefinition>, Record<string, NativeComponentPropMarker>, Partial<NativeComponentPropsFromMarkers<Record<string, NativeComponentPropMarker>>>, infer TStyles> ? TStyles extends {
84
- runtimeStates: infer TStates;
85
- } ? keyof TStates & string : string : string;
86
- type NamedValues<TComponent> = TComponent extends NativeComponentDefinition<string, Record<string, NativeLayerDefinition>, Record<string, NativeComponentPropMarker>, Partial<NativeComponentPropsFromMarkers<Record<string, NativeComponentPropMarker>>>, infer TStyles> ? TStyles extends {
87
- values: infer TValues;
88
- } ? keyof TValues & string : never : never;
89
- type LayersOf<TComponent> = TComponent extends {
90
- readonly layers: infer TLayers extends Record<string, NativeLayerDefinition>;
91
- } ? TLayers : never;
92
- type PropMarkersOf<TComponent> = TComponent extends {
93
- readonly props: infer TProps extends Record<string, NativeComponentPropMarker>;
94
- } ? TProps : never;
95
- type DefaultsOf<TComponent> = TComponent extends {
96
- readonly defaultProps?: infer TDefaults;
97
- } ? TDefaults : Record<never, never>;
98
- type NativeComponentProps<TComponent> = NativeComponentPropsFromMarkers<PropMarkersOf<TComponent>>;
99
- type NativeGeneratedRenderProps<TComponent, TStyleByLayer extends Record<NativeLayerNames<LayersOf<TComponent>>, unknown>> = ResolvedNativeComponentProps<PropMarkersOf<TComponent>, DefaultsOf<TComponent>> & {
100
- styles: { [K in NativeLayerNames<LayersOf<TComponent>>]: (state?: Partial<Record<RuntimeStateNames<TComponent>, boolean>>) => TStyleByLayer[K] };
101
- values: { [K in NamedValues<TComponent>]: () => string | number | boolean };
102
- };
103
- /** Props the copied native render receives from its generated wrapper. */
104
- type NativeRenderProps<TComponent, TStyleByLayer extends Record<NativeLayerNames<LayersOf<TComponent>>, unknown>, TRuntimeProps extends object = Record<never, never>> = TRuntimeProps extends unknown ? Omit<TRuntimeProps, keyof NativeComponentProps<TComponent>> & NativeGeneratedRenderProps<TComponent, TStyleByLayer> : never;
105
- interface NativeComponentStyledBuilder<TId extends string, TLayers extends Record<string, NativeLayerDefinition>, TProps extends Record<string, NativeComponentPropMarker>, TDefaults extends Partial<NativeComponentPropsFromMarkers<TProps>>, TStyles extends NativeComponentStyles<TLayers>> extends NativeComponentDefinition<TId, TLayers, TProps, TDefaults, TStyles> {
106
- render(path: string): RegisteredNativeComponent<TId, TLayers, TProps, TDefaults, TStyles>;
107
- }
108
- interface NativeComponentBuilder<TId extends string, TLayers extends Record<string, NativeLayerDefinition>, TProps extends Record<string, NativeComponentPropMarker>, TDefaults extends Partial<NativeComponentPropsFromMarkers<TProps>>> {
109
- styles<const TStyles extends NativeComponentStyles<TLayers>>(callback: (helpers: NativeComponentStyleHelpers) => TStyles): NativeComponentStyledBuilder<TId, TLayers, TProps, TDefaults, TStyles>;
110
- }
111
- /**
112
- * Define a first-class React Native component. The render path remains a
113
- * build-only source pointer and is never serialized into native config data.
114
- */
115
- declare function defineNativeComponent<const TId extends string, const TLayers extends Record<string, NativeLayerDefinition>, const TProps extends Record<string, NativeComponentPropMarker>, const TDefaults extends Partial<NativeComponentPropsFromMarkers<TProps>> = Record<never, never>>(definition: {
116
- id: TId;
117
- layers: TLayers;
118
- props: (helpers: NativeComponentPropHelpers) => TProps;
119
- defaultProps?: TDefaults;
120
- label?: string;
121
- description?: string;
122
- }): NativeComponentBuilder<TId, TLayers, TProps, TDefaults>;
123
- interface NativeComponentGroupDefinition<TComponents extends Record<string, RegisteredNativeComponent> = Record<string, RegisteredNativeComponent>> {
124
- readonly components: TComponents;
125
- readonly label?: string;
126
- readonly description?: string;
127
- }
128
- declare function defineNativeComponentGroup<const TComponents extends Record<string, RegisteredNativeComponent>>(definition: {
129
- components: TComponents;
130
- label?: string;
131
- description?: string;
132
- }): NativeComponentGroupDefinition<TComponents>;
133
- interface SerializedNativeComponentGroup {
134
- readonly components: readonly string[];
135
- readonly label?: string;
136
- readonly description?: string;
137
- }
138
- //#endregion
139
- export { NativeComponentBuilder, NativeComponentDefinition, NativeComponentGroupDefinition, NativeComponentPropMarker, NativeComponentProps, NativeComponentPropsFromMarkers, NativeComponentStyleHelpers, NativeComponentStyledBuilder, NativeComponentStyles, NativeLayerDefinition, NativeLayerKind, NativeLayerStyle, NativeLayerStyles, NativeRenderProps, NativeStyleValue, RegisteredNativeComponent, SerializedNativeComponentGroup, defineNativeComponent, defineNativeComponentGroup, nativeLayer };
@@ -1,67 +0,0 @@
1
- import { attachSourcePath, captureCallerPath } from "../captureCallerPath.js";
2
- import { token } from "../refs.js";
3
- import { boolean, number, slot, string, variant } from "../factories.js";
4
- //#region src/native/components.ts
5
- function nativeSlot(options) {
6
- return options === void 0 ? slot() : slot(options);
7
- }
8
- const nativeComponentPropHelpers = {
9
- slot: nativeSlot,
10
- boolean,
11
- string,
12
- number,
13
- variant
14
- };
15
- /** Define a React Native style target. */
16
- function nativeLayer(kind) {
17
- const layer = { kind };
18
- Object.defineProperty(layer, "publicStyle", {
19
- enumerable: false,
20
- configurable: true,
21
- value(name = "style") {
22
- Object.defineProperty(layer, "styleProp", {
23
- enumerable: true,
24
- configurable: true,
25
- value: name
26
- });
27
- return layer;
28
- }
29
- });
30
- return layer;
31
- }
32
- /**
33
- * Define a first-class React Native component. The render path remains a
34
- * build-only source pointer and is never serialized into native config data.
35
- */
36
- function defineNativeComponent(definition) {
37
- const sourcePath = captureCallerPath();
38
- const props = definition.props(nativeComponentPropHelpers);
39
- return { styles(callback) {
40
- const component = attachSourcePath({
41
- id: definition.id,
42
- layers: definition.layers,
43
- props,
44
- ...definition.defaultProps !== void 0 ? { defaultProps: definition.defaultProps } : {},
45
- ...definition.label !== void 0 ? { label: definition.label } : {},
46
- ...definition.description !== void 0 ? { description: definition.description } : {},
47
- styles: callback({ token })
48
- }, sourcePath);
49
- Object.defineProperty(component, "render", {
50
- enumerable: false,
51
- configurable: true,
52
- value(renderPath) {
53
- Object.defineProperties(component, {
54
- __nativeComponent: { value: true },
55
- __renderPath: { value: renderPath }
56
- });
57
- return component;
58
- }
59
- });
60
- return component;
61
- } };
62
- }
63
- function defineNativeComponentGroup(definition) {
64
- return attachSourcePath(definition, captureCallerPath());
65
- }
66
- //#endregion
67
- export { defineNativeComponent, defineNativeComponentGroup, nativeLayer };
@@ -1,18 +0,0 @@
1
- import { AssetRef, TokenRef, asset, token } from "../refs.js";
2
- import { ColorSpace, MixExpr, alpha, mix } from "../colorExpressions.js";
3
- import { SystemLink, TokenType } from "../types.js";
4
- import { DefinedTokenGroupValue } from "../factories.js";
5
- import { NativeComponentBuilder, NativeComponentDefinition, NativeComponentGroupDefinition, NativeComponentProps, NativeComponentStyleHelpers, NativeComponentStyledBuilder, NativeComponentStyles, NativeLayerDefinition, NativeLayerKind, NativeLayerStyle, NativeLayerStyles, NativeRenderProps, NativeStyleValue, RegisteredNativeComponent, SerializedNativeComponentGroup, defineNativeComponent, defineNativeComponentGroup, nativeLayer } from "./components.js";
6
- import { ModeDefinition, NativeAppearanceModeOption, NativeAssetGroupDefinition, NativeBuildOptions, NativeColorExpression, NativeDefaultModes, NativeDependencyPolicy, NativeDependencyPolicyEntry, NativeFontAssetGroupDefinition, NativeFontAssetMember, NativeLiteral, NativeModeDefinition, NativeModeOptionDefinition, NativeSelectableValue, NativeStyleEngine, NativeTokenDefinition, NativeTokenGroupDefinition, NativeTokenValue, NativeViewportModeOption, OperatingSystemInput, OperatingSystemValue, SerializedNativeConfig } from "./types.js";
7
- import { NativeAssetGroupBuilder, NativeFontAssetGroupConfig, defineAssetGroup } from "./assets.js";
8
- import { defineMode } from "./modes.js";
9
- import { NativeConfigDiagnostic, NativeConfigDiagnosticCode, validateSerializedNativeConfig } from "./validation.js";
10
- import { NativeConfig, NativeConfigValidationError } from "./NativeConfig.js";
11
- import { isOperatingSystemValue, operatingSystem } from "./values.js";
12
-
13
- //#region src/native/index.d.ts
14
- type DefinedNativeTokenGroup<T extends Record<string, NativeTokenDefinition>> = DefinedTokenGroupValue<T>;
15
- /** Native and web use the same token-group factory implementation. */
16
- declare function defineTokenGroup<const T extends Record<string, NativeTokenDefinition>>(tokens: T): DefinedNativeTokenGroup<T>;
17
- //#endregion
18
- export { DefinedNativeTokenGroup, defineTokenGroup };
@@ -1,17 +0,0 @@
1
- import "../refs.js";
2
- import "../colorExpressions.js";
3
- import { defineTokenGroupValue } from "../factories.js";
4
- import "./assets.js";
5
- import "./components.js";
6
- import "./modes.js";
7
- import "./values.js";
8
- import "./validation.js";
9
- import "./NativeConfig.js";
10
- //#region src/native/index.ts
11
- /** Native / React Native authoring entry point over shared config concepts. */
12
- /** Native and web use the same token-group factory implementation. */
13
- function defineTokenGroup(tokens) {
14
- return defineTokenGroupValue(tokens);
15
- }
16
- //#endregion
17
- export { defineTokenGroup };
@@ -1,10 +0,0 @@
1
- import { NativeModeDefinition } from "./types.js";
2
-
3
- //#region src/native/modes.d.ts
4
- /**
5
- * Native mode authoring uses the shared option/modifier model while requiring
6
- * each option to describe the application condition that activates it.
7
- */
8
- declare function defineMode<const T extends NativeModeDefinition>(modes: T): T;
9
- //#endregion
10
- export { defineMode };
@@ -1,11 +0,0 @@
1
- import { attachSourcePath, captureCallerPath } from "../captureCallerPath.js";
2
- //#region src/native/modes.ts
3
- /**
4
- * Native mode authoring uses the shared option/modifier model while requiring
5
- * each option to describe the application condition that activates it.
6
- */
7
- function defineMode(modes) {
8
- return attachSourcePath(modes, captureCallerPath());
9
- }
10
- //#endregion
11
- export { defineMode };
@@ -1,95 +0,0 @@
1
- import { AssetRef, TokenRef } from "../refs.js";
2
- import { MixExpr } from "../colorExpressions.js";
3
- import { LinkedSystemPin, TokenDefinitionFor, TokenGroupDefinitionFor, TokenModifierKey } from "../types.js";
4
- import { NativeComponentDefinition, SerializedNativeComponentGroup } from "./components.js";
5
-
6
- //#region src/native/types.d.ts
7
- type NativeLiteral = string | number | boolean;
8
- /** Shared scalar color expression whose result can be emitted as an RN color. */
9
- type NativeColorExpression = MixExpr;
10
- /** A native value that can appear inside one iOS/Android branch. */
11
- type NativeSelectableValue = NativeLiteral | TokenRef | AssetRef | NativeColorExpression;
12
- type OperatingSystemInput = {
13
- default: NativeSelectableValue;
14
- ios?: NativeSelectableValue;
15
- android?: NativeSelectableValue;
16
- } | {
17
- default?: never;
18
- ios: NativeSelectableValue;
19
- android: NativeSelectableValue;
20
- };
21
- /** Serializable selection marker; selection occurs in generated app code. */
22
- interface OperatingSystemValue {
23
- readonly __kind: 'operatingSystem';
24
- readonly default?: NativeSelectableValue;
25
- readonly ios?: NativeSelectableValue;
26
- readonly android?: NativeSelectableValue;
27
- }
28
- type NativeTokenValue = NativeSelectableValue | OperatingSystemValue;
29
- type NativeTokenDefinition = TokenDefinitionFor<NativeTokenValue>;
30
- type NativeTokenGroupDefinition = TokenGroupDefinitionFor<NativeTokenDefinition>;
31
- interface NativeModeOptionBase {
32
- /** Modifier contributed by this option. Defaults to `_${optionName}`. */
33
- modifier?: TokenModifierKey;
34
- label?: string;
35
- description?: string;
36
- }
37
- /** An option driven by the React Native color-scheme condition. */
38
- type NativeAppearanceModeOption = NativeModeOptionBase & {
39
- appearance: 'light' | 'dark';
40
- minWidth?: never;
41
- };
42
- /** An option driven by the current React Native window width. */
43
- type NativeViewportModeOption = NativeModeOptionBase & {
44
- minWidth: number;
45
- appearance?: never;
46
- };
47
- type NativeModeOptionDefinition = NativeAppearanceModeOption | NativeViewportModeOption;
48
- type NativeModeDefinition = Record<string, NativeModeOptionDefinition>;
49
- /** Native-entry compatibility name for the platform-specific mode shape. */
50
- type ModeDefinition = NativeModeDefinition;
51
- /** Registered mode selections used when resolveTheme() receives no override. */
52
- type NativeDefaultModes = Record<string, string>;
53
- /** Styling runtime selected for generated native component and adapter files. */
54
- type NativeStyleEngine = 'react-native' | 'unistyles';
55
- interface NativeBuildOptions {
56
- /** Trusted root containing native component definitions and render source. */
57
- componentsDir?: string;
58
- }
59
- /** Where a consuming project must make a native component dependency available. */
60
- interface NativeDependencyPolicyEntry {
61
- providedBy: 'consumer' | 'registry';
62
- /** Semver range accepted by the system that authored the components. */
63
- version: string;
64
- }
65
- type NativeDependencyPolicy = Record<string, NativeDependencyPolicyEntry>;
66
- interface NativeFontAssetMember {
67
- /** Family identifier React Native consumes after the app registers the font. */
68
- fontFamily: string;
69
- }
70
- interface NativeFontAssetGroupDefinition {
71
- assetKind: 'font';
72
- members: Record<string, NativeFontAssetMember>;
73
- label?: string;
74
- description?: string;
75
- }
76
- type NativeAssetGroupDefinition = NativeFontAssetGroupDefinition;
77
- interface SerializedNativeConfig {
78
- schemaVersion: number;
79
- platform: 'native';
80
- builtAt?: string;
81
- namespace?: string;
82
- styleEngine?: NativeStyleEngine;
83
- buildOptions?: NativeBuildOptions;
84
- dependencyPolicy?: NativeDependencyPolicy;
85
- defaultModes?: NativeDefaultModes;
86
- modes?: Record<string, NativeModeDefinition>;
87
- tokenGroups?: Record<string, NativeTokenGroupDefinition>;
88
- assetGroups?: Record<string, NativeAssetGroupDefinition>;
89
- components?: Record<string, NativeComponentDefinition>;
90
- componentGroups?: Record<string, SerializedNativeComponentGroup>;
91
- /** Source-system pins, same contract as the web `SerializedConfig`. */
92
- linkedSystems?: Record<string, LinkedSystemPin>;
93
- }
94
- //#endregion
95
- export { ModeDefinition, NativeAppearanceModeOption, NativeAssetGroupDefinition, NativeBuildOptions, NativeColorExpression, NativeDefaultModes, NativeDependencyPolicy, NativeDependencyPolicyEntry, NativeFontAssetGroupDefinition, NativeFontAssetMember, NativeLiteral, NativeModeDefinition, NativeModeOptionDefinition, NativeSelectableValue, NativeStyleEngine, NativeTokenDefinition, NativeTokenGroupDefinition, NativeTokenValue, NativeViewportModeOption, OperatingSystemInput, OperatingSystemValue, SerializedNativeConfig };
File without changes
@@ -1,8 +0,0 @@
1
- import { ConfigDiagnostic } from "../config-diagnostics.js";
2
-
3
- //#region src/native/validation.d.ts
4
- type NativeConfigDiagnosticCode = 'INVALID_SCHEMA' | 'UNSUPPORTED_SCHEMA_VERSION' | 'PLATFORM_MISMATCH' | 'INVALID_NAMESPACE' | 'INVALID_NATIVE_VALUE' | 'UNSUPPORTED_NATIVE_FIELD' | 'INCOMPLETE_OS_VALUE' | 'NESTED_OS_VALUE' | 'INVALID_REFERENCE' | 'UNRESOLVED_TOKEN_REFERENCE' | 'TOKEN_REFERENCE_CYCLE' | 'UNRESOLVED_ASSET_REFERENCE' | 'UNOWNED_MODIFIER' | 'DUPLICATE_MODIFIER' | 'INVALID_DEFAULT_MODE' | 'INVALID_DEPENDENCY_POLICY' | 'INVALID_MODE_CONDITION' | 'INVALID_MODE_COMBINATION' | 'UNSUPPORTED_COLOR_EXPRESSION';
5
- type NativeConfigDiagnostic = ConfigDiagnostic<NativeConfigDiagnosticCode>;
6
- declare function validateSerializedNativeConfig(input: unknown, expectedSchemaVersion?: number): NativeConfigDiagnostic[];
7
- //#endregion
8
- export { NativeConfigDiagnostic, NativeConfigDiagnosticCode, validateSerializedNativeConfig };