@ccslabs/xtend 0.1.0-rc.1 → 0.1.2

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 (566) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +4 -0
  3. package/catalog/component-catalog-coverage.js +2 -0
  4. package/catalog/epic13-package-export-lock.js +11 -1
  5. package/catalog/epic13-rmt-production-readiness.js +0 -1
  6. package/catalog/epic18-rmt-action-effect-runtime.d.ts +36 -0
  7. package/catalog/epic18-rmt-action-effect-runtime.js +249 -0
  8. package/catalog/epic18-rmt-app-platform-authoring.d.ts +39 -0
  9. package/catalog/epic18-rmt-app-platform-authoring.js +319 -0
  10. package/catalog/epic18-rmt-app-platform-fixture.d.ts +33 -0
  11. package/catalog/epic18-rmt-app-platform-fixture.js +221 -0
  12. package/catalog/epic18-rmt-app-platform-release-handoff.d.ts +30 -0
  13. package/catalog/epic18-rmt-app-platform-release-handoff.js +231 -0
  14. package/catalog/epic18-rmt-app-platform-tooling.d.ts +38 -0
  15. package/catalog/epic18-rmt-app-platform-tooling.js +242 -0
  16. package/catalog/epic18-rmt-component-template-primitives.d.ts +33 -0
  17. package/catalog/epic18-rmt-component-template-primitives.js +240 -0
  18. package/catalog/epic18-rmt-dom-descriptor-renderer.d.ts +35 -0
  19. package/catalog/epic18-rmt-dom-descriptor-renderer.js +232 -0
  20. package/catalog/epic18-rmt-event-routing-runtime.d.ts +35 -0
  21. package/catalog/epic18-rmt-event-routing-runtime.js +234 -0
  22. package/catalog/epic18-rmt-state-selector-runtime.d.ts +34 -0
  23. package/catalog/epic18-rmt-state-selector-runtime.js +216 -0
  24. package/catalog/epic18-rmt-surface-resource-graph-runtime.d.ts +36 -0
  25. package/catalog/epic18-rmt-surface-resource-graph-runtime.js +256 -0
  26. package/catalog/surface-manager-controller.js +5 -1
  27. package/catalog/surface-manager-materialization.js +7 -1
  28. package/catalog/surface-manager-overlay-bridge.js +41 -6
  29. package/catalog/surface-manager-workbench-fixture.js +1 -1
  30. package/catalog/surface-type-capability-matrix.d.ts +61 -0
  31. package/catalog/surface-type-capability-matrix.js +183 -0
  32. package/catalog/type-exports-rmt.js +37 -1
  33. package/catalog/type-exports.js +3 -3
  34. package/components/icon-packs/lucide.js +4 -0
  35. package/components/manifest.json +2 -0
  36. package/components/prism-rmt.d.ts +34 -0
  37. package/components/prism-rmt.js +130 -0
  38. package/components/xcards.js +15 -0
  39. package/components/xcode.d.ts +36 -1
  40. package/components/xcode.js +215 -20
  41. package/components/xfooter.js +17 -0
  42. package/components/xheader.js +14 -0
  43. package/components/xhero.js +16 -1
  44. package/components/xlink.js +97 -14
  45. package/components/xmasonry.js +15 -0
  46. package/components/xplayer.d.ts +44 -2
  47. package/components/xplayer.js +242 -15
  48. package/components/xrouter.js +27 -2
  49. package/components/xsection.js +15 -0
  50. package/components/xsidepanel.js +10 -2
  51. package/components/xsurfacemanager-controller.d.ts +2 -1
  52. package/components/xsurfacemanager-controller.js +27 -3
  53. package/components/xsurfacemanager.d.ts +2 -0
  54. package/components/xsurfacemanager.js +20 -8
  55. package/components/xsurfaceoverlay-bridge.d.ts +20 -5
  56. package/components/xsurfaceoverlay-bridge.js +114 -18
  57. package/components/xsurfaceportal.d.ts +29 -0
  58. package/components/xsurfaceportal.js +122 -0
  59. package/components/xsurfaceregion.d.ts +50 -0
  60. package/components/xsurfaceregion.js +285 -0
  61. package/components/xsurfacewindow.js +2 -1
  62. package/components/xtooltip.js +89 -23
  63. package/docs/README.md +222 -298
  64. package/docs/changelog.md +107 -0
  65. package/docs/component-catalog-coverage.md +9 -9
  66. package/docs/component-platform.md +19 -1
  67. package/docs/component-ux-app-authoring.md +56 -63
  68. package/docs/components/xcode.md +83 -53
  69. package/docs/components/xsurfaceportal.md +32 -0
  70. package/docs/components/xsurfaceregion.md +37 -0
  71. package/docs/components.md +105 -69
  72. package/docs/de/README.md +264 -0
  73. package/docs/de/XTend-ADR.md +221 -0
  74. package/docs/de/a11y-keyboard-smokes.md +62 -0
  75. package/docs/de/about.md +18 -0
  76. package/docs/de/api.md +157 -0
  77. package/docs/de/best-practices.md +76 -0
  78. package/docs/de/changelog.md +107 -0
  79. package/docs/de/component-catalog-coverage.md +58 -0
  80. package/docs/de/component-lab.md +103 -0
  81. package/docs/de/component-long-tail-migration.md +41 -0
  82. package/docs/de/component-platform.md +177 -0
  83. package/docs/de/component-ux-app-authoring.md +123 -0
  84. package/docs/de/component-ux-authoring.md +96 -0
  85. package/docs/de/component-ux-gates.md +45 -0
  86. package/docs/de/components/x-rmt-lifecycle-demo-build.md +60 -0
  87. package/docs/de/components/xalert.md +81 -0
  88. package/docs/de/components/xbutton.md +103 -0
  89. package/docs/de/components/xcalendar.md +82 -0
  90. package/docs/de/components/xcards.md +128 -0
  91. package/docs/de/components/xcheckbox.md +102 -0
  92. package/docs/de/components/xcode.md +156 -0
  93. package/docs/de/components/xdialog.md +92 -0
  94. package/docs/de/components/xdrawer.md +84 -0
  95. package/docs/de/components/xfooter.md +126 -0
  96. package/docs/de/components/xform.md +128 -0
  97. package/docs/de/components/xheader.md +308 -0
  98. package/docs/de/components/xhero.md +142 -0
  99. package/docs/de/components/xicon.md +125 -0
  100. package/docs/de/components/xinput.md +129 -0
  101. package/docs/de/components/xlightbox.md +98 -0
  102. package/docs/de/components/xlink.md +109 -0
  103. package/docs/de/components/xmasonry.md +124 -0
  104. package/docs/de/components/xmenu.md +158 -0
  105. package/docs/de/components/xmodal.md +82 -0
  106. package/docs/de/components/xplayer.md +104 -0
  107. package/docs/de/components/xpopover.md +67 -0
  108. package/docs/de/components/xprogress.md +56 -0
  109. package/docs/de/components/xradio.md +103 -0
  110. package/docs/de/components/xrouter.md +260 -0
  111. package/docs/de/components/xsection.md +125 -0
  112. package/docs/de/components/xselect.md +105 -0
  113. package/docs/de/components/xsidepanel.md +30 -0
  114. package/docs/de/components/xspinner.md +102 -0
  115. package/docs/de/components/xstate.md +148 -0
  116. package/docs/de/components/xstatus.md +55 -0
  117. package/docs/de/components/xsummary.md +78 -0
  118. package/docs/de/components/xsurfacemanager.md +27 -0
  119. package/docs/de/components/xsurfacewindow.md +21 -0
  120. package/docs/de/components/xtabs.md +160 -0
  121. package/docs/de/components/xtextarea.md +98 -0
  122. package/docs/de/components/xtheme.md +167 -0
  123. package/docs/de/components/xtoast.md +62 -0
  124. package/docs/de/components/xtooltip.md +66 -0
  125. package/docs/de/components/xtype.md +82 -0
  126. package/docs/de/components/xutils.md +144 -0
  127. package/docs/de/components/xwriter.md +94 -0
  128. package/docs/de/components.md +153 -0
  129. package/docs/de/conditional-network-evidence-ci.md +38 -0
  130. package/docs/de/conditional-network-evidence.md +50 -0
  131. package/docs/de/core-migration-guide.md +110 -0
  132. package/docs/de/design-tokens.md +116 -0
  133. package/docs/de/docs-rmt-production-hardening.md +31 -0
  134. package/docs/de/enterprise-adoption.md +413 -0
  135. package/docs/de/enterprise-component-flex-release-handoff.md +129 -0
  136. package/docs/de/epic10-platform-gates.md +62 -0
  137. package/docs/de/epic10-release-handoff.md +81 -0
  138. package/docs/de/epic11-enterprise-ux-handoff.md +70 -0
  139. package/docs/de/epic12-rc0-handoff.md +61 -0
  140. package/docs/de/epic18-media-manager-vendor-upstream.md +318 -0
  141. package/docs/de/epic18-rmt-app-platform-release-handoff.md +67 -0
  142. package/docs/de/epic18-vendor-bugfixes.md +34 -0
  143. package/docs/de/existing-component-metadata.md +67 -0
  144. package/docs/de/hydration-performance-closure.md +34 -0
  145. package/docs/de/hydration-policies.md +71 -0
  146. package/docs/de/known-residual-triage.md +22 -0
  147. package/docs/de/manifest-import-policy.md +79 -0
  148. package/docs/de/manifest.md +112 -0
  149. package/docs/de/motion-contrast.md +67 -0
  150. package/docs/de/package-export-lock.md +44 -0
  151. package/docs/de/performance-measurements.md +106 -0
  152. package/docs/de/performance-regression.md +89 -0
  153. package/docs/de/performance.md +94 -0
  154. package/docs/de/previews/README.md +17 -0
  155. package/docs/de/prod-browser-csp-smokes.md +40 -0
  156. package/docs/de/public-component-types.md +79 -0
  157. package/docs/de/quick-start-guide.md +220 -0
  158. package/docs/de/rc0-adoption-guide.md +102 -0
  159. package/docs/de/rc0-gate-matrix.md +58 -0
  160. package/docs/de/rc1-gate-matrix-ci-handoff.md +56 -0
  161. package/docs/de/rc1-migration-notes.md +69 -0
  162. package/docs/de/rc1-readiness.md +46 -0
  163. package/docs/de/release-owner-acceptance.md +56 -0
  164. package/docs/de/release-report-pack-dry-run-evidence.md +39 -0
  165. package/docs/de/rmt-action-effect-runtime.md +81 -0
  166. package/docs/de/rmt-app-platform-authoring.md +54 -0
  167. package/docs/de/rmt-app-platform-fixture.md +46 -0
  168. package/docs/de/rmt-app-platform-migration-guide.md +88 -0
  169. package/docs/de/rmt-app-platform-tooling.md +79 -0
  170. package/docs/de/rmt-component-template-primitives.md +57 -0
  171. package/docs/de/rmt-dom-descriptor-renderer.md +64 -0
  172. package/docs/de/rmt-dsl-authoring-polish.md +145 -0
  173. package/docs/de/rmt-event-routing-runtime.md +81 -0
  174. package/docs/de/rmt-first-demo-app.md +77 -0
  175. package/docs/de/rmt-first-xtend-apps.md +129 -0
  176. package/docs/de/rmt-kernel-panic-recovery-incident-handoff.md +61 -0
  177. package/docs/de/rmt-kernel-security-hardening-migration.md +50 -0
  178. package/docs/de/rmt-kernel-trusted-output-authoring.md +69 -0
  179. package/docs/de/rmt-language-server.md +234 -0
  180. package/docs/de/rmt-lifecycle-demo.md +24 -0
  181. package/docs/de/rmt-linter.md +140 -0
  182. package/docs/de/rmt-node-ssr-adapter.md +100 -0
  183. package/docs/de/rmt-php-ssr-adapter.md +120 -0
  184. package/docs/de/rmt-production-readiness.md +63 -0
  185. package/docs/de/rmt-state-selector-runtime.md +47 -0
  186. package/docs/de/rmt-surface-resource-graph-runtime.md +92 -0
  187. package/docs/de/rmt-tooling-release-gates.md +77 -0
  188. package/docs/de/rmt-vnext-authoring.md +170 -0
  189. package/docs/de/rmt-vnext-component-primitives.md +188 -0
  190. package/docs/de/rmt-vnext-cross-surface-events.md +68 -0
  191. package/docs/de/rmt-vnext-enterprise-mfe-handoff.md +70 -0
  192. package/docs/de/rmt-vnext-fabric-bridge-evidence.md +81 -0
  193. package/docs/de/rmt-vnext-migration-notes.md +62 -0
  194. package/docs/de/rmt-vnext-primitive-authoring-tooling.md +247 -0
  195. package/docs/de/rmt-vnext-primitive-grammar-design.md +289 -0
  196. package/docs/de/rmt-vnext-primitive-lowering.md +108 -0
  197. package/docs/de/rmt-vnext-primitive-migration.md +119 -0
  198. package/docs/de/rmt-vnext-primitive-parser-ast.md +76 -0
  199. package/docs/de/rmt-vnext-primitive-semantic-graph.md +118 -0
  200. package/docs/de/rmt-vnext-primitives-compiler-backlog.md +739 -0
  201. package/docs/de/rmt-vnext-release-handoff.md +83 -0
  202. package/docs/de/rmt-vnext-remote-surfaces.md +90 -0
  203. package/docs/de/rmt-vnext-source-to-sea-gate.md +612 -0
  204. package/docs/de/rmt-vnext-surface-registry-enterprise.md +76 -0
  205. package/docs/de/screenreader-signals.md +56 -0
  206. package/docs/de/supply-chain-gates.md +100 -0
  207. package/docs/de/surface-manager-authoring-guide.md +94 -0
  208. package/docs/de/surface-manager-browser-lab.md +45 -0
  209. package/docs/de/surface-manager-component-lab.md +43 -0
  210. package/docs/de/surface-manager-controller.md +66 -0
  211. package/docs/de/surface-manager-layout-engines.md +32 -0
  212. package/docs/de/surface-manager-lazy-hydration.md +63 -0
  213. package/docs/de/surface-manager-migration-guide.md +122 -0
  214. package/docs/de/surface-manager-native-rmt-surfaces.md +38 -0
  215. package/docs/de/surface-manager-overlay-bridge.md +53 -0
  216. package/docs/de/surface-manager-persistence.md +30 -0
  217. package/docs/de/surface-manager-quality-gates.md +51 -0
  218. package/docs/de/surface-manager-release-handoff.md +68 -0
  219. package/docs/de/surface-manager-remote-policy.md +54 -0
  220. package/docs/de/surface-manager-rmt-authoring.md +102 -0
  221. package/docs/de/surface-manager-route-lifecycle.md +59 -0
  222. package/docs/de/surface-manager-runtime-release-handoff.md +69 -0
  223. package/docs/de/surface-manager-side-panel-runtime.md +36 -0
  224. package/docs/de/surface-manager-stack-policy.md +39 -0
  225. package/docs/de/surface-manager-window-runtime.md +47 -0
  226. package/docs/de/surface-manager-workbench-fixture.md +43 -0
  227. package/docs/de/third-party-design-authoring.md +406 -0
  228. package/docs/de/trusted-dom-boundary-browser-proof.md +32 -0
  229. package/docs/de/trusted-dom-sanitizing.md +110 -0
  230. package/docs/de/type-exports.md +61 -0
  231. package/docs/de/typescript-components.md +63 -0
  232. package/docs/de/visual-browser-regression.md +83 -0
  233. package/docs/de/visual-owner-artifacts.md +46 -0
  234. package/docs/de/visual-snapshot-automation.md +87 -0
  235. package/docs/de/xtend-api-types.md +55 -0
  236. package/docs/de/xtend-builder-types.md +55 -0
  237. package/docs/de/xtend-catalog-types.md +44 -0
  238. package/docs/de/xtend-fabric-rmt-lane-mapping.md +143 -0
  239. package/docs/de/xtend-fabric.md +474 -0
  240. package/docs/de/xtend-loader-types.md +58 -0
  241. package/docs/de/xtend-loader.md +265 -0
  242. package/docs/de/xtend-policy-types.md +38 -0
  243. package/docs/de/xtend-rmt-types.md +40 -0
  244. package/docs/de/xtend-vendor-types.md +36 -0
  245. package/docs/de/xtendrmt-app-dsl.md +334 -0
  246. package/docs/de/xtendrmt-migration-guide.md +266 -0
  247. package/docs/de/xtendrmt-native-authoring.md +333 -0
  248. package/docs/de/xtendrmt-overview.md +109 -0
  249. package/docs/de/xtendrmt-parsedown-scheduling.md +301 -0
  250. package/docs/de/xtendrmt-runtime-bridge.md +155 -0
  251. package/docs/en/README.md +163 -0
  252. package/docs/en/XTend-ADR.md +221 -0
  253. package/docs/en/a11y-keyboard-smokes.md +68 -0
  254. package/docs/en/about.md +25 -0
  255. package/docs/en/api.md +171 -0
  256. package/docs/en/best-practices.md +125 -0
  257. package/docs/en/changelog.md +104 -0
  258. package/docs/en/component-catalog-coverage.md +104 -0
  259. package/docs/en/component-lab.md +103 -0
  260. package/docs/en/component-long-tail-migration.md +41 -0
  261. package/docs/en/component-platform.md +243 -0
  262. package/docs/en/component-ux-app-authoring.md +118 -0
  263. package/docs/en/component-ux-authoring.md +96 -0
  264. package/docs/en/component-ux-gates.md +45 -0
  265. package/docs/en/components/x-rmt-lifecycle-demo-build.md +75 -0
  266. package/docs/en/components/xalert.md +94 -0
  267. package/docs/en/components/xbutton.md +118 -0
  268. package/docs/en/components/xcalendar.md +95 -0
  269. package/docs/en/components/xcards.md +139 -0
  270. package/docs/en/components/xcheckbox.md +118 -0
  271. package/docs/en/components/xcode.md +153 -0
  272. package/docs/en/components/xdialog.md +108 -0
  273. package/docs/en/components/xdrawer.md +110 -0
  274. package/docs/en/components/xfooter.md +138 -0
  275. package/docs/en/components/xform.md +147 -0
  276. package/docs/en/components/xheader.md +308 -0
  277. package/docs/en/components/xhero.md +157 -0
  278. package/docs/en/components/xicon.md +149 -0
  279. package/docs/en/components/xinput.md +147 -0
  280. package/docs/en/components/xlightbox.md +113 -0
  281. package/docs/en/components/xlink.md +130 -0
  282. package/docs/en/components/xmasonry.md +136 -0
  283. package/docs/en/components/xmenu.md +185 -0
  284. package/docs/en/components/xmodal.md +102 -0
  285. package/docs/en/components/xplayer.md +114 -0
  286. package/docs/en/components/xpopover.md +87 -0
  287. package/docs/en/components/xprogress.md +73 -0
  288. package/docs/en/components/xradio.md +119 -0
  289. package/docs/en/components/xrouter.md +260 -0
  290. package/docs/en/components/xsection.md +136 -0
  291. package/docs/en/components/xselect.md +122 -0
  292. package/docs/en/components/xsidepanel.md +48 -0
  293. package/docs/en/components/xspinner.md +118 -0
  294. package/docs/en/components/xstate.md +163 -0
  295. package/docs/en/components/xstatus.md +71 -0
  296. package/docs/en/components/xsummary.md +90 -0
  297. package/docs/en/components/xsurfacemanager.md +42 -0
  298. package/docs/en/components/xsurfacewindow.md +31 -0
  299. package/docs/en/components/xtabs.md +187 -0
  300. package/docs/en/components/xtextarea.md +115 -0
  301. package/docs/en/components/xtheme.md +203 -0
  302. package/docs/en/components/xtoast.md +78 -0
  303. package/docs/en/components/xtooltip.md +85 -0
  304. package/docs/en/components/xtype.md +91 -0
  305. package/docs/en/components/xutils.md +161 -0
  306. package/docs/en/components/xwriter.md +106 -0
  307. package/docs/en/components.md +151 -0
  308. package/docs/en/conditional-network-evidence-ci.md +38 -0
  309. package/docs/en/conditional-network-evidence.md +50 -0
  310. package/docs/en/core-migration-guide.md +110 -0
  311. package/docs/en/design-tokens.md +137 -0
  312. package/docs/en/docs-rmt-production-hardening.md +31 -0
  313. package/docs/en/enterprise-adoption.md +413 -0
  314. package/docs/en/enterprise-component-flex-release-handoff.md +129 -0
  315. package/docs/en/epic10-platform-gates.md +62 -0
  316. package/docs/en/epic10-release-handoff.md +81 -0
  317. package/docs/en/epic11-enterprise-ux-handoff.md +70 -0
  318. package/docs/en/epic12-rc0-handoff.md +61 -0
  319. package/docs/en/epic18-media-manager-vendor-upstream.md +232 -0
  320. package/docs/en/epic18-rmt-app-platform-release-handoff.md +60 -0
  321. package/docs/en/epic18-vendor-bugfixes.md +29 -0
  322. package/docs/en/existing-component-metadata.md +67 -0
  323. package/docs/en/hydration-performance-closure.md +34 -0
  324. package/docs/en/hydration-policies.md +75 -0
  325. package/docs/en/known-residual-triage.md +22 -0
  326. package/docs/en/manifest-import-policy.md +81 -0
  327. package/docs/en/manifest.md +135 -0
  328. package/docs/en/motion-contrast.md +67 -0
  329. package/docs/en/package-export-lock.md +44 -0
  330. package/docs/en/performance-measurements.md +106 -0
  331. package/docs/en/performance-regression.md +89 -0
  332. package/docs/en/performance.md +132 -0
  333. package/docs/en/previews/README.md +17 -0
  334. package/docs/en/prod-browser-csp-smokes.md +40 -0
  335. package/docs/en/public-component-types.md +79 -0
  336. package/docs/en/quick-start-guide.md +189 -0
  337. package/docs/en/rc0-adoption-guide.md +102 -0
  338. package/docs/en/rc0-gate-matrix.md +58 -0
  339. package/docs/en/rc1-gate-matrix-ci-handoff.md +56 -0
  340. package/docs/en/rc1-migration-notes.md +69 -0
  341. package/docs/en/rc1-readiness.md +46 -0
  342. package/docs/en/release-owner-acceptance.md +56 -0
  343. package/docs/en/release-report-pack-dry-run-evidence.md +39 -0
  344. package/docs/en/rmt-action-effect-runtime.md +101 -0
  345. package/docs/en/rmt-app-platform-authoring.md +47 -0
  346. package/docs/en/rmt-app-platform-fixture.md +35 -0
  347. package/docs/en/rmt-app-platform-migration-guide.md +75 -0
  348. package/docs/en/rmt-app-platform-tooling.md +58 -0
  349. package/docs/en/rmt-component-template-primitives.md +49 -0
  350. package/docs/en/rmt-dom-descriptor-renderer.md +54 -0
  351. package/docs/en/rmt-dsl-authoring-polish.md +143 -0
  352. package/docs/en/rmt-event-routing-runtime.md +98 -0
  353. package/docs/en/rmt-first-demo-app.md +87 -0
  354. package/docs/en/rmt-first-xtend-apps.md +127 -0
  355. package/docs/en/rmt-kernel-panic-recovery-incident-handoff.md +60 -0
  356. package/docs/en/rmt-kernel-security-hardening-migration.md +49 -0
  357. package/docs/en/rmt-kernel-trusted-output-authoring.md +68 -0
  358. package/docs/en/rmt-language-server.md +243 -0
  359. package/docs/en/rmt-lifecycle-demo.md +23 -0
  360. package/docs/en/rmt-linter.md +146 -0
  361. package/docs/en/rmt-node-ssr-adapter.md +99 -0
  362. package/docs/en/rmt-php-ssr-adapter.md +118 -0
  363. package/docs/en/rmt-production-readiness.md +63 -0
  364. package/docs/en/rmt-state-selector-runtime.md +34 -0
  365. package/docs/en/rmt-surface-resource-graph-runtime.md +68 -0
  366. package/docs/en/rmt-tooling-release-gates.md +77 -0
  367. package/docs/en/rmt-vnext-authoring.md +102 -0
  368. package/docs/en/rmt-vnext-component-primitives.md +185 -0
  369. package/docs/en/rmt-vnext-cross-surface-events.md +59 -0
  370. package/docs/en/rmt-vnext-enterprise-mfe-handoff.md +62 -0
  371. package/docs/en/rmt-vnext-fabric-bridge-evidence.md +64 -0
  372. package/docs/en/rmt-vnext-migration-notes.md +62 -0
  373. package/docs/en/rmt-vnext-primitive-authoring-tooling.md +174 -0
  374. package/docs/en/rmt-vnext-primitive-grammar-design.md +268 -0
  375. package/docs/en/rmt-vnext-primitive-lowering.md +91 -0
  376. package/docs/en/rmt-vnext-primitive-migration.md +93 -0
  377. package/docs/en/rmt-vnext-primitive-parser-ast.md +59 -0
  378. package/docs/en/rmt-vnext-primitive-semantic-graph.md +103 -0
  379. package/docs/en/rmt-vnext-primitives-compiler-backlog.md +327 -0
  380. package/docs/en/rmt-vnext-release-handoff.md +83 -0
  381. package/docs/en/rmt-vnext-remote-surfaces.md +81 -0
  382. package/docs/en/rmt-vnext-source-to-sea-gate.md +482 -0
  383. package/docs/en/rmt-vnext-surface-registry-enterprise.md +68 -0
  384. package/docs/en/screenreader-signals.md +56 -0
  385. package/docs/en/supply-chain-gates.md +106 -0
  386. package/docs/en/surface-manager-authoring-guide.md +94 -0
  387. package/docs/en/surface-manager-browser-lab.md +45 -0
  388. package/docs/en/surface-manager-component-lab.md +43 -0
  389. package/docs/en/surface-manager-controller.md +66 -0
  390. package/docs/en/surface-manager-layout-engines.md +32 -0
  391. package/docs/en/surface-manager-lazy-hydration.md +63 -0
  392. package/docs/en/surface-manager-migration-guide.md +113 -0
  393. package/docs/en/surface-manager-native-rmt-surfaces.md +38 -0
  394. package/docs/en/surface-manager-overlay-bridge.md +53 -0
  395. package/docs/en/surface-manager-persistence.md +30 -0
  396. package/docs/en/surface-manager-quality-gates.md +51 -0
  397. package/docs/en/surface-manager-release-handoff.md +68 -0
  398. package/docs/en/surface-manager-remote-policy.md +54 -0
  399. package/docs/en/surface-manager-rmt-authoring.md +89 -0
  400. package/docs/en/surface-manager-route-lifecycle.md +59 -0
  401. package/docs/en/surface-manager-runtime-release-handoff.md +69 -0
  402. package/docs/en/surface-manager-side-panel-runtime.md +36 -0
  403. package/docs/en/surface-manager-stack-policy.md +39 -0
  404. package/docs/en/surface-manager-window-runtime.md +47 -0
  405. package/docs/en/surface-manager-workbench-fixture.md +43 -0
  406. package/docs/en/third-party-design-authoring.md +406 -0
  407. package/docs/en/trusted-dom-boundary-browser-proof.md +32 -0
  408. package/docs/en/trusted-dom-sanitizing.md +124 -0
  409. package/docs/en/type-exports.md +61 -0
  410. package/docs/en/typescript-components.md +63 -0
  411. package/docs/en/visual-browser-regression.md +83 -0
  412. package/docs/en/visual-owner-artifacts.md +46 -0
  413. package/docs/en/visual-snapshot-automation.md +87 -0
  414. package/docs/en/xtend-api-types.md +55 -0
  415. package/docs/en/xtend-builder-types.md +55 -0
  416. package/docs/en/xtend-catalog-types.md +44 -0
  417. package/docs/en/xtend-fabric-rmt-lane-mapping.md +143 -0
  418. package/docs/en/xtend-fabric.md +474 -0
  419. package/docs/en/xtend-loader-types.md +58 -0
  420. package/docs/en/xtend-loader.md +265 -0
  421. package/docs/en/xtend-policy-types.md +38 -0
  422. package/docs/en/xtend-rmt-types.md +40 -0
  423. package/docs/en/xtend-vendor-types.md +36 -0
  424. package/docs/en/xtendrmt-app-dsl.md +331 -0
  425. package/docs/en/xtendrmt-migration-guide.md +256 -0
  426. package/docs/en/xtendrmt-native-authoring.md +336 -0
  427. package/docs/en/xtendrmt-overview.md +63 -0
  428. package/docs/en/xtendrmt-parsedown-scheduling.md +301 -0
  429. package/docs/en/xtendrmt-runtime-bridge.md +155 -0
  430. package/docs/enterprise-adoption.md +4 -2
  431. package/docs/epic18-media-manager-vendor-upstream.md +318 -0
  432. package/docs/epic18-rmt-app-platform-release-handoff.md +67 -0
  433. package/docs/epic18-vendor-bugfixes.md +34 -0
  434. package/docs/index.php +1056 -109
  435. package/docs/manifest.md +8 -2
  436. package/docs/menu.json +986 -133
  437. package/docs/package-export-lock.md +2 -2
  438. package/docs/public-component-types.md +2 -2
  439. package/docs/quick-start-guide.md +126 -58
  440. package/docs/rmt-action-effect-runtime.md +101 -0
  441. package/docs/rmt-app-platform-authoring.md +54 -0
  442. package/docs/rmt-app-platform-fixture.md +46 -0
  443. package/docs/rmt-app-platform-migration-guide.md +88 -0
  444. package/docs/rmt-app-platform-tooling.md +79 -0
  445. package/docs/rmt-component-template-primitives.md +57 -0
  446. package/docs/rmt-dom-descriptor-renderer.md +64 -0
  447. package/docs/rmt-dsl-authoring-polish.md +67 -44
  448. package/docs/rmt-event-routing-runtime.md +98 -0
  449. package/docs/rmt-first-demo-app.md +2 -2
  450. package/docs/rmt-first-xtend-apps.md +70 -46
  451. package/docs/rmt-language-server.md +61 -4
  452. package/docs/rmt-lifecycle-demo.md +1 -2
  453. package/docs/rmt-node-ssr-adapter.md +144 -0
  454. package/docs/rmt-php-ssr-adapter.md +158 -0
  455. package/docs/rmt-state-selector-runtime.md +47 -0
  456. package/docs/rmt-surface-resource-graph-runtime.md +92 -0
  457. package/docs/rmt-vnext-authoring.md +128 -18
  458. package/docs/rmt-vnext-component-primitives.md +188 -0
  459. package/docs/rmt-vnext-fabric-bridge-evidence.md +81 -0
  460. package/docs/rmt-vnext-primitive-authoring-tooling.md +247 -0
  461. package/docs/rmt-vnext-primitive-grammar-design.md +289 -0
  462. package/docs/rmt-vnext-primitive-lowering.md +108 -0
  463. package/docs/rmt-vnext-primitive-migration.md +119 -0
  464. package/docs/rmt-vnext-primitive-parser-ast.md +76 -0
  465. package/docs/rmt-vnext-primitive-semantic-graph.md +118 -0
  466. package/docs/rmt-vnext-primitives-compiler-backlog.md +742 -0
  467. package/docs/rmt-vnext-release-handoff.md +14 -0
  468. package/docs/rmt-vnext-source-to-sea-gate.md +629 -0
  469. package/docs/surface-manager-migration-guide.md +34 -6
  470. package/docs/surface-manager-overlay-bridge.md +9 -4
  471. package/docs/surface-manager-rmt-authoring.md +50 -34
  472. package/docs/surface-manager-workbench-fixture.md +1 -2
  473. package/docs/third-party-design-authoring.md +1 -1
  474. package/docs/type-exports.md +3 -3
  475. package/docs/utils/pageloader.js +811 -62
  476. package/docs/visual-browser-regression.md +1 -1
  477. package/docs/xtend-rmt-types.md +3 -2
  478. package/docs/xtendrmt-app-dsl.md +187 -122
  479. package/docs/xtendrmt-docs-shell-vnext.rmt +165 -0
  480. package/docs/xtendrmt-migration-guide.md +48 -17
  481. package/docs/xtendrmt-native-authoring.md +213 -217
  482. package/docs/xtendrmt-overview.md +81 -61
  483. package/docs/xtendrmt-parsedown-scheduling.md +23 -8
  484. package/fabric/package.json +1 -1
  485. package/package.json +684 -21
  486. package/tools/package.json +5 -1
  487. package/tools/rmt-editor/vscode/README.md +72 -5
  488. package/tools/rmt-editor/vscode/XTend-Logo.png +0 -0
  489. package/tools/rmt-editor/vscode/extension.d.ts +33 -0
  490. package/tools/rmt-editor/vscode/extension.js +1816 -7
  491. package/tools/rmt-editor/vscode/language-configuration.json +2 -1
  492. package/tools/rmt-editor/vscode/package.json +193 -2
  493. package/tools/rmt-editor/vscode/snippets/rmt.code-snippets +41 -0
  494. package/tools/rmt-editor/vscode/syntaxes/rmt.tmLanguage.json +103 -1
  495. package/tools/rmt-editor/vscode/templates/launch.json +70 -0
  496. package/tools/rmt-editor/vscode/templates/tasks.json +172 -0
  497. package/tools/rmt-editor/vscode/xtend-rmt-language-0.0.0-enterprise-readiness.vsix +0 -0
  498. package/tools/rmt-language/app-platform-tooling.d.ts +128 -0
  499. package/tools/rmt-language/app-platform-tooling.js +677 -0
  500. package/tools/rmt-language/completions.d.ts +5 -0
  501. package/tools/rmt-language/completions.js +185 -3
  502. package/tools/rmt-language/diagnostics.js +54 -0
  503. package/tools/rmt-language/hover.js +36 -0
  504. package/tools/rmt-language/rmt-tooling-public-types.d.ts +7 -0
  505. package/tools/rmt-language/rules/app-platform-policy.js +39 -0
  506. package/tools/rmt-language/rules/index.js +5 -1
  507. package/tools/rmt-language/semantic-graph.d.ts +6 -0
  508. package/tools/rmt-language/semantic-graph.js +928 -0
  509. package/tools/rmt-language/snippets/index.js +44 -0
  510. package/tools/rmt-language/snippets/rmt.code-snippets +41 -0
  511. package/tools/rmt-language/vnext-compatibility.d.ts +10 -0
  512. package/tools/rmt-language/vnext-compatibility.js +642 -0
  513. package/tools/rmt-language/vnext-compiler.d.ts +5 -0
  514. package/tools/rmt-language/vnext-compiler.js +863 -17
  515. package/tools/rmt-language/vnext-parser.js +725 -9
  516. package/tools/rmt-language/vnext-release.d.ts +1 -0
  517. package/tools/rmt-language/vnext-release.js +20 -0
  518. package/tools/rmt-language/vnext-source-to-sea.d.ts +33 -0
  519. package/tools/rmt-language/vnext-source-to-sea.js +2227 -0
  520. package/tools/rmt-language/vnext-surfaces.js +111 -52
  521. package/tools/rmt-language/vnext-tooling.d.ts +19 -1
  522. package/tools/rmt-language/vnext-tooling.js +1247 -5
  523. package/tools/rmt-language-server/protocol.js +3 -0
  524. package/tools/rmt-language-server/server.d.ts +2 -0
  525. package/tools/rmt-language-server/server.js +176 -22
  526. package/tools/rmt-linter/cli.d.ts +2 -0
  527. package/tools/rmt-linter/cli.js +62 -0
  528. package/xtend-builder/generators/registry.js +11 -0
  529. package/xtend-builder/generators/rmt-app-platform.js +239 -0
  530. package/xtend-builder/generators/rmt-lifecycle-demo.js +3 -11
  531. package/xtend-builder/lib/cli.js +38 -0
  532. package/xtend-builder/package.json +3 -3
  533. package/xtend-builder/scaffold.config.js +29 -2
  534. package/xtend.css +49 -2
  535. package/xtendrmt/package.json +49 -1
  536. package/xtendrmt/rmt-action-effect-runtime.d.ts +126 -0
  537. package/xtendrmt/rmt-action-effect-runtime.js +494 -0
  538. package/xtendrmt/rmt-component-capability-registry.d.ts +180 -0
  539. package/xtendrmt/rmt-component-capability-registry.js +636 -0
  540. package/xtendrmt/rmt-core.d.ts +6 -0
  541. package/xtendrmt/rmt-core.esm.js +32 -6
  542. package/xtendrmt/rmt-dom-descriptor-renderer.d.ts +107 -0
  543. package/xtendrmt/rmt-dom-descriptor-renderer.js +1066 -0
  544. package/xtendrmt/rmt-event-routing-runtime.d.ts +144 -0
  545. package/xtendrmt/rmt-event-routing-runtime.js +666 -0
  546. package/xtendrmt/rmt-lifecycle-demo.app.js +2 -2
  547. package/xtendrmt/rmt-lifecycle-demo.core.json +4 -0
  548. package/xtendrmt/rmt-lifecycle-demo.rmt-build.app.js +1 -1
  549. package/xtendrmt/rmt-lifecycle-demo.rmt-build.scaffold.json +2 -2
  550. package/xtendrmt/rmt-lifecycle-demo.scaffold.json +4 -4
  551. package/xtendrmt/rmt-native-shell-runtime.d.ts +77 -0
  552. package/xtendrmt/rmt-native-shell-runtime.js +309 -0
  553. package/xtendrmt/rmt-node-ssr-adapter.d.ts +197 -0
  554. package/xtendrmt/rmt-node-ssr-adapter.js +1006 -0
  555. package/xtendrmt/rmt-php-ssr-adapter.php +976 -0
  556. package/xtendrmt/rmt-runtime.browser.js +32 -6
  557. package/xtendrmt/rmt-runtime.esm.js +32 -6
  558. package/xtendrmt/rmt-state-selector-runtime.d.ts +166 -0
  559. package/xtendrmt/rmt-state-selector-runtime.js +866 -0
  560. package/xtendrmt/rmt-surface-resource-graph-runtime.d.ts +224 -0
  561. package/xtendrmt/rmt-surface-resource-graph-runtime.js +932 -0
  562. package/xtendrmt/rmt-vnext-enterprise-mfe-demo.core.json +3 -0
  563. package/xtendrmt/rmt-vnext-reference-demo.core.json +3 -0
  564. package/xtendrmt/xtendrmt-bestcase-demo.core.json +3420 -372
  565. package/xtendrmt/xtendrmt-bestcase-demo.js +424 -8
  566. package/xtendrmt/xtendrmt-bestcase-demo.rmt +214 -6
@@ -0,0 +1,265 @@
1
+ # XTend Loader
2
+
3
+ ## Overview
4
+
5
+ The canonical XTend loader is `xtend-loader.js`.
6
+
7
+ It is a local ES module entry for XTend UI and handles dynamic loading of the manifest, Core modules, explicitly preloaded components, components used in the DOM and `api.js`.
8
+
9
+ `xtend-dev.js` is now only a legacy stub. New demos, browser smokes, scaffold output and official examples use `xtend-loader.js`.
10
+
11
+ Since `ER-WP-05`, the default demo and fixture paths are formally fixed to the canonical loader or to deliberately classified special smokes. Since `ER-WP-18`, the loader measures manifest load, module load and Custom Element definition through local performance marks. Since `ER-WP-28`, it validates manifest and module URLs against `xtend.security.loader-policy.v1`, `xtend.security.manifest-policy.v1` and `xtend.security.import-policy.v1`.
12
+
13
+ ## Integration
14
+
15
+ ```html
16
+ <script type="module" src="./xtend-loader.js"></script>
17
+ ```
18
+
19
+ Optionally, a local manifest can be set:
20
+
21
+ ```html
22
+ <script
23
+ type="module"
24
+ src="./xtend-loader.js"
25
+ data-manifest="./components/manifest.json">
26
+ </script>
27
+ ```
28
+
29
+ By default, the loader uses:
30
+
31
+ ```text
32
+ components/manifest.json
33
+ ```
34
+
35
+ ## Contract
36
+
37
+ The loader contract is:
38
+
39
+ ```text
40
+ xtend.loader.contract.v1
41
+ ```
42
+
43
+ Security contracts:
44
+
45
+ ```text
46
+ xtend.security.loader-policy.v1
47
+ xtend.security.manifest-policy.v1
48
+ xtend.security.import-policy.v1
49
+ ```
50
+
51
+ Near the browser, the loader exposes this surface:
52
+
53
+ ```js
54
+ window.XTendLoader
55
+ ```
56
+
57
+ The automatic boot promise is available under:
58
+
59
+ ```js
60
+ window.__XTendLoaderBootPromise
61
+ ```
62
+
63
+ ## Verbose Mode
64
+
65
+ The PROD loader is quiet in the console by default. The loader file contains a direct flag near the top:
66
+
67
+ ```js
68
+ const verbose_mode = 'auto';
69
+ ```
70
+
71
+ Supported values:
72
+
73
+ | Value | Behavior |
74
+ |-------|----------|
75
+ | `'true'` | Verbose is permanently active. Loader module operations and connected Core runtime logs are printed in the browser console. |
76
+ | `'false'` | Verbose is locked. It can only be re-enabled by changing the loader file. |
77
+ | `'auto'` | Verbose is off on first start and can be enabled in the browser console for the current tab session. |
78
+
79
+ Browser console:
80
+
81
+ ```js
82
+ XTendLoader.verbose(true)
83
+ XTendLoader.verbose(false)
84
+ XTendLoader.verbose()
85
+ ```
86
+
87
+ Alternatively:
88
+
89
+ ```js
90
+ XTendLoader.enableVerbose()
91
+ XTendLoader.disableVerbose()
92
+ XTendLoader.getVerboseState()
93
+ ```
94
+
95
+ In `auto`, the loader stores the console decision in `sessionStorage`. After `XTendLoader.verbose(true)`, a reload is enough to also see the initial module-loading operations in the same browser session. `XTendLoader.verbose(false)` makes the session quiet again.
96
+
97
+ Structured diagnostics (`xtend-loader-diagnostic`) and performance events (`xtend-loader-performance`) remain available independently of verbose mode.
98
+
99
+ ## How It Works
100
+
101
+ 1. The loader initializes `xtend.loader.style-registry.v1` and injects runtime-critical styles for tokens, UI effects, skeletons and undefined XTend Custom Elements.
102
+ 2. It waits for window load.
103
+ 3. It validates `data-manifest` or `components/manifest.json` against the loader policy.
104
+ 4. It loads the manifest and resolves manifest URLs relative to the manifest URL.
105
+ 5. It validates every manifest record against the manifest and import policies.
106
+ 6. It can version module URLs through `data-module-cache-bust` so live systems do not pull stale component modules from the browser cache.
107
+ 7. It loads `xstate` and then `x-theme` when both are listed in the manifest. `xstate` is deliberately not cache-busted so no second state module instance is created.
108
+ 8. It loads entries from `<meta name="xtend-preload">`.
109
+ 9. It detects XTend tags used in the DOM and loads visible components immediately.
110
+ 10. It observes non-visible components through `IntersectionObserver`.
111
+ 11. It provides `xtend.loader.skeleton-loader.v1` for shell, route and dynamic subtree fallbacks.
112
+ 12. It validates and imports local `api.js`, then calls `api.initXTendAPI(manifest)`.
113
+
114
+ ## StyleRegistry
115
+
116
+ The loader exports the native StyleRegistry:
117
+
118
+ ```js
119
+ window.XTendStyleRegistry
120
+ window.XTendLoader.styles
121
+ ```
122
+
123
+ When `xtend-loader.js` is evaluated, the loader immediately calls `ensureRuntimeStyles()`. This ensures the critical CSS rules exist before components are imported or hydrated. `xtend.css` remains the canonical standard file name for host theming and docs/app layout, but it is no longer a hard requirement for skeletons, UI effects, base tokens or FOUC protection for undefined XTend Custom Elements.
124
+
125
+ Hosts can read the theme stylesheet state:
126
+
127
+ ```js
128
+ XTendLoader.getThemeStylesheetState()
129
+ ```
130
+
131
+ Components can register their own styles and apply them to shadow roots:
132
+
133
+ ```js
134
+ const style = XTendLoader.defineComponentStyle('x-example', ':host { display: block; }');
135
+ XTendLoader.adoptStyle(this.shadowRoot, style);
136
+ ```
137
+
138
+ ## SkeletonLoader
139
+
140
+ The loader exports a native SkeletonLoader for shell-first apps:
141
+
142
+ ```js
143
+ window.XTendLoader.showSkeleton(target, { lines: 8, schedule: 'docs.page.hydrate' });
144
+ window.XTendLoader.hideSkeleton(target);
145
+ ```
146
+
147
+ Hosts can show undefined XTend Custom Elements as skeletons through `data-xtend-skeleton`. Known XTend tags without skeleton opt-in remain invisible until definition so Light DOM text does not flash unstyled. These rules come from the StyleRegistry and also work without external `xtend.css`.
148
+
149
+ ## Preload
150
+
151
+ Components can still be explicitly preloaded:
152
+
153
+ ```html
154
+ <meta name="xtend-preload" content="x-router,x-link,x-dialog,x-modal">
155
+ ```
156
+
157
+ The values are component IDs from the manifest, not free-form URLs.
158
+
159
+ ## Live Deployment Cache Busting
160
+
161
+ Shell apps can load the loader, manifest and component modules with a version:
162
+
163
+ ```html
164
+ <script
165
+ type="module"
166
+ src="/xtend-loader.js?v=20260507"
167
+ data-manifest="/components/manifest.json?v=20260507"
168
+ data-module-cache-bust="20260507">
169
+ </script>
170
+ ```
171
+
172
+ The loader appends this value to manifest modules as the `xtend-cache` query parameter. `xstate` is excluded because components import it themselves through `./xstate.js` and XTend should keep exactly one state instance.
173
+
174
+ ## Manifest Example
175
+
176
+ ```json
177
+ {
178
+ "xstate": "./xstate.js",
179
+ "x-theme": "./xtheme.js",
180
+ "x-router": "./xrouter.js",
181
+ "x-link": "./xlink.js",
182
+ "x-dialog": "./xdialog.js",
183
+ "x-modal": "./xmodal.js"
184
+ }
185
+ ```
186
+
187
+ ## Legacy Strategy
188
+
189
+ `xtend-dev.js` remains as a compatibility stub for a short migration phase.
190
+
191
+ The stub:
192
+
193
+ - warns in the console
194
+ - imports `./xtend-loader.js`
195
+ - contains no loader logic of its own
196
+
197
+ Default demos and tests must no longer use the legacy name as the canonical loader path.
198
+
199
+ ## Security and Runtime Boundaries
200
+
201
+ The loader remains local and ESM-based.
202
+
203
+ CDN is not a default or test path. Since `ER-WP-03`, `api.js`, `components/manifest.json`, Core components and browser fixtures use repo-local XTend paths. Since `ER-WP-05`, reference and browser gates also verify that default demos do not fall back to `xtend-dev.js` or XTend CDN bridges. Since `ER-WP-28`, the loader refuses external manifest and module URLs, `javascript:`, `data:`, `blob:`, mismatched file extensions and path traversal with structured security diagnostics.
204
+
205
+ The loader emits structured local diagnostics as the `xtend-loader-diagnostic` event and thereby prepares later integration with `XTend-Fabric`.
206
+
207
+ Security refusals use these codes:
208
+
209
+ - `xtend.security.loader.refused`
210
+ - `xtend.security.manifest.invalid`
211
+ - `xtend.security.import.refused`
212
+
213
+ ## Performance Measurements
214
+
215
+ The loader creates `performance.mark` and `performance.measure` entries for:
216
+
217
+ | Measure | Phase |
218
+ |---------|-------|
219
+ | `xtend.loader.manifest` | `load` |
220
+ | `xtend.loader.module` | `load` |
221
+ | `xtend.component.define` | `define` |
222
+
223
+ After module load, `xtend.component.define` briefly waits for `customElements.whenDefined(tag)`, but does not block the loader permanently when a manifest entry does not register a Custom Element.
224
+
225
+ In addition, it emits a local event for every measurement:
226
+
227
+ ```js
228
+ window.addEventListener('xtend-loader-performance', (event) => {
229
+ console.log(event.detail.name, event.detail.durationMs);
230
+ });
231
+ ```
232
+
233
+ The boot promise contains the local loader measurements:
234
+
235
+ ```js
236
+ const boot = await window.__XTendLoaderBootPromise;
237
+ console.log(boot.performanceMeasurements);
238
+ ```
239
+
240
+ Fabric telemetry snapshots normalize these entries as `xtend.performance.measurement.v1`.
241
+
242
+ ## Gates
243
+
244
+ Relevant local checks:
245
+
246
+ ```bash
247
+ npm run dev:local
248
+ npm run test:browser:local
249
+ node scripts/run_xtend_tests.js browser --json
250
+ node scripts/run_xtend_tests.js manifest-import-policy --json
251
+ node scripts/run_xtend_tests.js fabric-performance-measurements --json
252
+ node scripts/run_xtend_tests.js references --json
253
+ npm test
254
+ ```
255
+
256
+ `npm run dev:local` starts `scripts/serve_xtend_dev.js` on port `4173`. The browser-smoke harness uses the same server module in test mode with port `0`.
257
+
258
+ ## Further Topics
259
+
260
+ - [Manifest Format](./manifest.md)
261
+ - [Manifest Import Policy](./manifest-import-policy.md)
262
+ - [Performance Measurements](./performance-measurements.md)
263
+ - [API Integration](./api.md)
264
+ - [Component Development](./components.md)
265
+ - [Best Practices](./best-practices.md)
@@ -0,0 +1,38 @@
1
+ # XTend Policy Types
2
+
3
+ - Contract: `xtend.type-exports.policy-declarations.v1`
4
+ - Workpackage: `WP-TypeExports-05`
5
+ - Gate: `node scripts/run_xtend_tests.js type-exports-policy --json`
6
+ - Report: `.xtend-test-results/xtend-type-exports-policy-report.json`
7
+ - Boundary: `types-only-no-runtime-imports`
8
+ - Boundary: `no-rmt-kernel-import-of-xtend-types`
9
+ - Boundary: `declarations-follow-js-runtime-surface`
10
+
11
+ ## Purpose
12
+
13
+ `WP-TypeExports-05` makes the Fabric, a11y and security policy APIs importable for TypeScript consumers. The JS runtime remains unchanged; `package.json#exports` only adds package-native `types` conditions.
14
+
15
+ ## Declaration Pack
16
+
17
+ | Area | Package export | Declaration |
18
+ | --- | --- | --- |
19
+ | Fabric Runtime | `./fabric` | `./fabric/xtend-fabric.d.ts` |
20
+ | Fabric/RMT Policy | `./fabric/rmt-lane-mapping`, `./fabric/hydration-policy` | `./fabric/*.d.ts` |
21
+ | A11y Policies | `./a11y/screenreader-signals`, `./a11y/motion-contrast-policy`, `./a11y/runtime-a11y-contract` | `./a11y/*.d.ts` |
22
+ | Security Policies | `./security/manifest-import-policy`, `./security/trusted-dom-policy`, `./security/supply-chain-gate-policy` | `./security/*.d.ts` |
23
+
24
+ The shared type core is in `fabric/xtend-policy-public-types.d.ts` and includes `XtendPolicyDiagnostic`, `XtendPolicyReport`, `XtendFabricFiberInput`, `XtendA11ySignal` and `XtendSecurityClassification`.
25
+
26
+ ## Drift Gate
27
+
28
+ The gate verifies:
29
+
30
+ - every policy package export condition points to the expected `.d.ts`
31
+ - every declaration file exists and exports the runtime symbols of the corresponding JS module
32
+ - central diagnostic, report, fiber, a11y and security classification types remain present
33
+ - Fabric/a11y/security runtime files import no `.d.ts`
34
+ - no policy introduces runtime dependencies into components, loader, API or RMT kernel
35
+
36
+ ## Handoff
37
+
38
+ `WP-TypeExports-06` can now type Builder, Scaffold and Component Lab program APIs. The policy pack continues the pattern for integration modules: existing JS runtime, narrow declaration facades, package-native `types` conditions and a drift gate against export deviations.
@@ -0,0 +1,40 @@
1
+ # XTend RMT Types
2
+
3
+ - Contract: `xtend.type-exports.rmt-declarations.v1`
4
+ - Workpackage: `WP-TypeExports-04`
5
+ - Gate: `node scripts/run_xtend_tests.js type-exports-rmt --json`
6
+ - Report: `.xtend-test-results/xtend-type-exports-rmt-report.json`
7
+ - Boundary: `types-only-no-runtime-imports`
8
+ - Boundary: `no-rmt-kernel-import-of-xtend-types`
9
+ - Boundary: `declarations-follow-js-runtime-surface`
10
+
11
+ ## Purpose
12
+
13
+ `WP-TypeExports-04` makes the XTendRMT runtime, browser entry and RMT language/tooling exports importable for TypeScript consumers. `./rmt` and `./rmt/browser` point through a `types` condition to `./xtendrmt/rmt-core.d.ts`, while `./rmt/dom-descriptor-renderer`, `./rmt/state-selector-runtime`, `./rmt/action-effect-runtime`, `./rmt/event-routing-runtime` and `./rmt/surface-resource-graph-runtime` have their own narrow runtime declarations.
14
+
15
+ ## Declaration Pack
16
+
17
+ | Area | Package export | Declaration |
18
+ | --- | --- | --- |
19
+ | RMT Runtime | `./rmt`, `./rmt/browser` | `./xtendrmt/rmt-core.d.ts` |
20
+ | RMT App Platform Runtime | `./rmt/dom-descriptor-renderer`, `./rmt/state-selector-runtime`, `./rmt/action-effect-runtime`, `./rmt/event-routing-runtime`, `./rmt/surface-resource-graph-runtime` | `./xtendrmt/rmt-dom-descriptor-renderer.d.ts`, `./xtendrmt/rmt-state-selector-runtime.d.ts`, `./xtendrmt/rmt-action-effect-runtime.d.ts`, `./xtendrmt/rmt-event-routing-runtime.d.ts`, `./xtendrmt/rmt-surface-resource-graph-runtime.d.ts` |
21
+ | Source Model and Parser | `./rmt-language/source-model`, `./rmt-language/parser` | `tools/rmt-language/*.d.ts` |
22
+ | vNext Compiler and Contracts | `./rmt-language/vnext-*` | `tools/rmt-language/vnext-*.d.ts` |
23
+ | Tooling Services | `./rmt-language/diagnostics`, `./rmt-language/app-platform-tooling`, `./rmt-language/completions`, `./rmt-language/hover`, `./rmt-language/symbols`, `./rmt-language/definitions`, `./rmt-language/code-actions` | service facades with shared RMT tooling types |
24
+ | LSP, Linter, Editor | `./rmt-language-server`, `./rmt-linter/*`, `./rmt-editor/vscode` | LSP/CLI/editor facades |
25
+
26
+ The shared type core is in `tools/rmt-language/rmt-tooling-public-types.d.ts` and includes `RmtToolingDiagnostic`, `RmtTextEdit`, `RmtWorkspaceEdit`, `RmtLanguageServiceReport` and `RmtJsonRpcMessage`.
27
+
28
+ ## Drift Gate
29
+
30
+ The gate verifies:
31
+
32
+ - every RMT package export condition points to the expected `.d.ts`
33
+ - every declaration file exists and exports the runtime symbols of the corresponding JS module
34
+ - central diagnostic, range, edit, completion, hover, symbol, definition, code-action and JSON-RPC types remain present
35
+ - RMT runtime files import no `.d.ts`
36
+ - RMT kernel imports no XTend UI types, loader, API, Fabric, a11y or security runtime surfaces
37
+
38
+ ## Handoff
39
+
40
+ `WP-TypeExports-05` can now type Fabric, a11y and security policy APIs. The RMT pack is the reference for P1 integration modules: narrow declarations, existing JS runtime, package-native `types` conditions and a drift gate against export deviations.
@@ -0,0 +1,36 @@
1
+ # XTend Vendor and Utility Types
2
+
3
+ - Contract: `xtend.type-exports.vendor-facades.v1`
4
+ - Workpackage: `WP-TypeExports-08`
5
+ - Gate: `node scripts/run_xtend_tests.js type-exports-vendor --json`
6
+ - Report: `.xtend-test-results/xtend-type-exports-vendor-report.json`
7
+
8
+ ## Purpose
9
+
10
+ `WP-TypeExports-08` closes the remaining type-facade gaps on edge modules. The facades are intentionally narrow: XTend does not copy the full Prism or Turndown type world, but describes only the stable usage boundary inside the project.
11
+
12
+ ## Facades
13
+
14
+ - `./components/prism.d.ts` describes the global and CommonJS-capable Prism facade with `highlight`, `highlightElement`, `highlightAllUnder`, `hooks`, `languages` and `Token`.
15
+ - `./components/turndown.d.ts` describes the browser-global facade `window.TurndownService` for side-effect imports and local Markdown conversion.
16
+ - `./design-tokens/xtend-design-tokens.d.ts` describes the productive design-token contract `xtend.design-tokens.product-contract.v1`, theme packs, density packs and validators.
17
+ - `./design-tokens/xtheme-token-alias-layer.d.ts` describes the XTheme alias layer `xtend.theme.token-alias-layer.v1`, legacy bridges, component aliases and validators.
18
+
19
+ ## Theme JSON
20
+
21
+ `./design-tokens/themes/enterprise-light` remains a JSON boundary. The example theme is exported as a data artifact and does not require its own runtime declaration. Consumers that import JSON should use their project configuration for JSON modules.
22
+
23
+ ## Non-Goals
24
+
25
+ - No full typing of the entire Prism language list.
26
+ - No adoption of external vendor internals into XTend namespace types.
27
+ - No runtime change to `components/prism.js`, `components/turndown.js`, `design-tokens/xtend-design-tokens.js` or `design-tokens/xtheme-token-alias-layer.js`.
28
+
29
+ ## Drift Gate
30
+
31
+ ```bash
32
+ node scripts/run_xtend_tests.js type-exports-vendor --json
33
+ npm run test:type-exports-vendor
34
+ ```
35
+
36
+ The gate verifies that `./design-tokens` and `./design-tokens/xtheme-token-alias-layer` have a `types` condition, that the component vendor files have their own `.d.ts` facades, that no component `.js` file remains without a declaration-gap decision, and that the facades do not copy runtime imports or vendor implementation details.