@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,60 @@
1
+ # Epic 18 RMT App Platform Release Handoff
2
+
3
+ Schema: `xtend.epic18.rmt-app-platform-release-handoff.v1`
4
+
5
+ WP-E18-13 closes Epic 18 as a release-close handoff. The vendor bugfixes are documented, the RMT App Platform has a generic fixture, and the GitHub gates run through the existing CI commands.
6
+
7
+ ## Local Gate
8
+
9
+ ```bash
10
+ node scripts/run_xtend_tests.js epic18-rmt-app-platform --json
11
+ ```
12
+
13
+ Package script:
14
+
15
+ ```bash
16
+ npm run test:epic18-rmt-app-platform
17
+ ```
18
+
19
+ ## Gate Matrix
20
+
21
+ Bugfix line:
22
+
23
+ ```bash
24
+ node scripts/run_xtend_tests.js components surface-controller surface-manager-browser overlay-interaction-ux layout-display-media-ux epic18-vendor-bugfix-smokes browser references --json
25
+ ```
26
+
27
+ RMT App Platform line:
28
+
29
+ ```bash
30
+ node scripts/run_xtend_tests.js rmt-app-platform-authoring rmt-dom-descriptor-renderer rmt-component-template-primitives rmt-state-selector-runtime rmt-action-effect-runtime rmt-event-routing-runtime rmt-surface-resource-graph-runtime rmt-app-platform-tooling rmt-app-platform-fixture rmt-vnext-compiler rmt-vnext-events rmt-vnext-surfaces rmt-vnext-security rmt-first-demo-app scaffold-rmt-build --json
31
+ ```
32
+
33
+ Export and pack evidence:
34
+
35
+ ```bash
36
+ node scripts/run_xtend_tests.js type-exports-rmt type-exports epic13-package-export-lock --json
37
+ npm run pack:dry-run
38
+ ```
39
+
40
+ GitHub Actions:
41
+
42
+ ```bash
43
+ npm run test:pr:report
44
+ npm run test:release:full:report
45
+ ```
46
+
47
+ `.github/workflows/xtend-default-gates.yml` uses these commands for pull requests, pushes, manual runs and nightly runs. `epic18-rmt-app-platform` is part of the PR fast gate; the full release gate continues to run through all registered suites.
48
+
49
+ ## Release Boundary
50
+
51
+ The handoff makes Epic 18 commit-ready and CI-ready, but does not open a publish path. Public publish remains bound to release-owner acceptance, supply-chain evidence and the existing RC/release checklist.
52
+
53
+ ## Artifacts
54
+
55
+ - `docs/epic18-vendor-bugfixes.md`
56
+ - `docs/rmt-app-platform-migration-guide.md`
57
+ - `docs/rmt-app-platform-fixture.md`
58
+ - `catalog/epic18-rmt-app-platform-release-handoff.js`
59
+ - `tests/platform/epic18_rmt_app_platform_release_handoff_suite.js`
60
+ - `development/WP-E18-13-Docs-Migration-Guide-Vendor-Rebuild-und-Release-Handoff.md`
@@ -0,0 +1,29 @@
1
+ # Epic 18 Vendor Bugfixes
2
+
3
+ This page documents the component fixes that were brought back from the Media Manager vendor version into XTend main. It is intentionally not a product guide for a specific app, but a bugfix and compatibility reference for XTend components.
4
+
5
+ ## Components
6
+
7
+ | Component | Behavior |
8
+ |-----------|----------|
9
+ | `x-tooltip` | Uses a viewport-fixed overlay layer, writes position values through `--xtooltip-left` and `--xtooltip-top`, and remains within the visible area after scroll or container shifts. |
10
+ | `x-player` | Registers custom events only once, stays bounded inside surface containers and uses canonical `xplayer-*` events for play, pause, fullscreen, PIP, captions and mute. |
11
+ | `x-surface-window` | Keeps long titles, scrollbars and resize limits stable without redrawing the SurfaceManager registry. |
12
+ | `x-side-panel` | Keeps placement and icon controls stable and compatible with the SurfaceManager layout gates. |
13
+ | `x-surface-manager-controller` | Provides generic surface types for window, side panel, modal, dialog, drawer, popover and tooltip. |
14
+
15
+ ## Gates
16
+
17
+ The local bugfix gate remains:
18
+
19
+ ```bash
20
+ node scripts/run_xtend_tests.js components surface-controller surface-manager-browser overlay-interaction-ux layout-display-media-ux epic18-vendor-bugfix-smokes browser references --json
21
+ ```
22
+
23
+ The browser-close smoke is located at
24
+ `tests/browser/fixtures/epic18-vendor-bugfix-smoke.html`; the contract gate is in
25
+ `tests/components/epic18_vendor_bugfix_smoke_suite.js`.
26
+
27
+ ## Handoff
28
+
29
+ The fixes are platform behavior. They must not remain in XTend as Media Manager-specific paths. New apps should use the generic component, surface, event and RMT app-platform contracts.
@@ -0,0 +1,67 @@
1
+ # Existing Component Metadata
2
+
3
+ Contract: `xtend.epic10.existing-component-metadata.v1`
4
+
5
+ WP-E10-14 migrates existing prioritized XTend components into the RMT/Fabric metadata line. The components remain `js-legacy` for now; RMT/Fabric compatibility is described as a contract overlay in the catalog.
6
+
7
+ ## Catalog
8
+
9
+ The machine-readable catalog is here:
10
+
11
+ ```text
12
+ catalog/epic10-existing-component-metadata.js
13
+ ```
14
+
15
+ The gate is:
16
+
17
+ ```bash
18
+ node scripts/run_xtend_tests.js existing-component-metadata --json
19
+ ```
20
+
21
+ ## Target Components
22
+
23
+ | Component | Focus |
24
+ |-----------|-------|
25
+ | `x-router` | XRouter adapter, route records, schedule references |
26
+ | `x-link` | route activation, navigation events, `aria-current` |
27
+ | `x-input` | form value, validation, event commands |
28
+ | `x-form` | form aggregation, child control discovery |
29
+ | `x-modal` | overlay state, focus trap, modal actions |
30
+ | `x-dialog` | overlay state, focus trap, size hints |
31
+ | `x-tabs` | tab records, keyboard selection, route panel mapping |
32
+ | `x-toast` | feedback status, dismissal command, timer policy |
33
+ | `x-alert` | feedback status, dismissal command, state sync |
34
+
35
+ ## Migration Strategy
36
+
37
+ `js-legacy-contract-overlay-no-runtime-rewrite`
38
+
39
+ This means:
40
+
41
+ - no runtime rewrites for this package
42
+ - no big-bang TypeScript migration
43
+ - no new runtime dependencies
44
+ - local ESM artifacts remain under `components/`
45
+ - RMT/Fabric metadata becomes centrally gateable
46
+
47
+ ## Metadata Domains
48
+
49
+ Every record contains:
50
+
51
+ - `xtend.component.contract.v2`
52
+ - `xtend.rmt.component-contract.v1`
53
+ - `xtend.component.fabric-boundary.v2`
54
+ - `xtend.fabric.telemetry-snapshot.v1`
55
+ - lane precedence
56
+ - a11y and performance notes
57
+ - paths to runtime, types, docs, fixture and component suite
58
+
59
+ ## RMT Authoring
60
+
61
+ RMT can author these components as `xtend.component` records. The RMT kernel imports no XTend classes or types. DOM materialization, custom element lifecycle, Fabric execution and XRouter registration remain in the host.
62
+
63
+ Boundary: `no-rmt-kernel-import-of-xtend-types`
64
+
65
+ ## Continuation
66
+
67
+ WP-E10-15 uses this metadata line for browser, a11y, performance and visual gates.
@@ -0,0 +1,34 @@
1
+ # Hydration Performance Closure
2
+
3
+ - Contract: `xtend.epic13.hydration-performance-closure.v1`
4
+ - Decision: `xtend.epic13.hydration-performance-decision.v1`
5
+ - Report: `xtend.epic13.hydration-performance-closure-report.v1`
6
+ - Local gate: `node scripts/run_xtend_tests.js epic13-hydration-performance-closure --json`
7
+
8
+ `WP-E13-06` closes the last known-residual watchpoint from `WP-E13-05`: `xtend.component.hydrate`.
9
+
10
+ ## Decision
11
+
12
+ | Measurement point | Before | Now | Result |
13
+ |-------------------|--------|-----|--------|
14
+ | `xtend.component.hydrate` | `36ms / 32ms`, `warn-not-fail` | `31ms / 32ms`, `pass` | closed without owner dependency |
15
+
16
+ The budget remains `32ms`. The baseline was calibrated below the existing budget; the quality bar was not lowered.
17
+
18
+ ## Gate Behavior
19
+
20
+ ```bash
21
+ node scripts/run_xtend_tests.js performance-regression --json
22
+ node scripts/run_xtend_tests.js epic13-hydration-performance-closure --json
23
+ ```
24
+
25
+ The RC1 baseline expects:
26
+
27
+ - `warnCount === 0`
28
+ - `failCount === 0`
29
+ - hydration phase with at least one `pass`
30
+ - continued hard failure fixture for real budget violations
31
+
32
+ ## Handoff
33
+
34
+ After this closure, `WP-E13-07` could prepare the [PROD Browser CSP Smokes](./prod-browser-csp-smokes.md). The current handoff goes to `WP-E13-08`, where visual screenshot/pixels are normalized as an RC1 artifact. `private-until-release-owner-acceptance` remains active.
@@ -0,0 +1,75 @@
1
+ # Hydration Policies
2
+
3
+ - Docs Contract: `xtend.docs.hydration-policies.v1`
4
+ - Policy Contract: `xtend.fabric.hydration-policy.v1`
5
+ - Decision Contract: `xtend.fabric.hydration-decision.v1`
6
+ - Since: `ER-WP-20`
7
+
8
+ XTend treats hydration as schedulable UI work. Components can hydrate as
9
+ visible, idle, or lazy work without RMT needing to know XTend components.
10
+
11
+ ## Policies
12
+
13
+ | Policy | When | Lane | Schedule |
14
+ |--------|------|------|----------|
15
+ | `visible` | component is visible, focus-critical, or explicitly critical | `visible` | `component.visible.hydrate` |
16
+ | `idle` | non-critical default hydration | `idle` | `component.idle.hydrate` |
17
+ | `lazy` | `loading="lazy"`, not visible, below the fold, or under backpressure | `idle` | `component.lazy.hydrate` |
18
+
19
+ Hydration does not use the `user-blocking` lane. Focus, input, or a11y work
20
+ must run through dedicated fibers.
21
+
22
+ ## Usage
23
+
24
+ ```js
25
+ const decision = window.XTendFabricHydrationPolicy.resolveHydrationPolicy({
26
+ componentRef: 'x-gallery',
27
+ loading: 'lazy',
28
+ isVisible: false
29
+ });
30
+
31
+ console.log(decision.scheduleRef);
32
+ ```
33
+
34
+ With component fiber instrumentation:
35
+
36
+ ```js
37
+ const fabric = window.XTendFabric.createXtendFabric();
38
+ const instrumentation = fabric.createComponentFiberInstrumentation('x-gallery');
39
+ const controller = window.XTendFabricHydrationPolicy.createHydrationPolicyController('x-gallery', {
40
+ loading: 'lazy'
41
+ });
42
+
43
+ await controller.hydrate(instrumentation, (fiber) => hydrateGallery(fiber));
44
+ ```
45
+
46
+ ## RMT Delegation
47
+
48
+ RMT sees only schedule records:
49
+
50
+ - `component.visible.hydrate`
51
+ - `component.idle.hydrate`
52
+ - `component.lazy.hydrate`
53
+
54
+ The endpoint remains `xtendrmt.component.hydrate`. Execution belongs to Fabric
55
+ or the host adapter.
56
+
57
+ ## Gates
58
+
59
+ ```bash
60
+ node scripts/run_xtend_tests.js hydration-policy --json
61
+ npm run test:hydration-policy
62
+ ```
63
+
64
+ The gate checks:
65
+
66
+ - policy selection for `visible`, `idle`, and `lazy`
67
+ - backpressure deferral
68
+ - refusal of `user-blocking` for non-visible hydration
69
+ - RMT schedule delegation
70
+ - integration with `createComponentFiberInstrumentation`
71
+
72
+ ## Handoff
73
+
74
+ `ER-WP-21` turns this into practical performance rules for component authors in
75
+ [Performance for Component Authors](./performance.md).
@@ -0,0 +1,22 @@
1
+ # Known Residual Triage
2
+
3
+ - Contract: `xtend.epic13.known-residual-triage.v1`
4
+ - Decision: `xtend.epic13.known-residual-decision.v1`
5
+ - Report: `xtend.epic13.known-residual-triage-report.v1`
6
+ - Local gate: `node scripts/run_xtend_tests.js epic13-known-residual-triage --json`
7
+
8
+ `WP-E13-05` separates the RC0 known residuals into real RC1 watchpoints and intentionally non-visual boundary contracts.
9
+
10
+ ## Decisions
11
+
12
+ | Scope | RC1 decision | Meaning |
13
+ |-------|--------------|---------|
14
+ | `xstate` | `closed-as-runtime-boundary` | State adapter with lifecycle, RMT and diagnostics probe |
15
+ | `x-utils` | `closed-as-utility-boundary` | Utility module with typing, fixture probe and import policy |
16
+ | `xtend.component.hydrate` | `closed-by-wp-e13-06-owner-free` | Performance warning was closed without an owner dependency |
17
+
18
+ `private-until-release-owner-acceptance` remains active. The triage does not open publishing.
19
+
20
+ ## Handoff
21
+
22
+ `WP-E13-06` closed `xtend.component.hydrate` without an owner dependency. Details are in [Hydration Performance Closure](./hydration-performance-closure.md). `WP-E13-07` prepared the [PROD Browser CSP Smokes](./prod-browser-csp-smokes.md); `WP-E13-08` can now start.
@@ -0,0 +1,81 @@
1
+ # Manifest Import Policy
2
+
3
+ - Docs Contract: `xtend.docs.manifest-import-policy.v1`
4
+ - Loader Policy: `xtend.security.loader-policy.v1`
5
+ - Manifest Policy: `xtend.security.manifest-policy.v1`
6
+ - Import Policy: `xtend.security.import-policy.v1`
7
+ - Gate: `xtend.security.manifest-import-gate.v1`
8
+
9
+ XTend loads components through the manifest. Since `ER-WP-28`, this path is
10
+ explicitly secured: manifest URLs, manifest records, and dynamic module imports
11
+ are validated locally before the loader uses them.
12
+
13
+ ## Allowed
14
+
15
+ - relative URLs such as `./xalert.js`
16
+ - root-relative URLs such as `/components/xrouter.js`
17
+ - same-origin URLs
18
+ - local loopback dev servers such as `http://localhost:4173/components/xmodal.js`
19
+ - `.json` for manifests
20
+ - `.js` and `.mjs` for modules
21
+
22
+ ## Refused
23
+
24
+ - external CDN/remote modules
25
+ - external manifest URLs
26
+ - `javascript:`
27
+ - `data:` for scripts
28
+ - `blob:` modules
29
+ - encoded path traversal such as `%2e%2e`
30
+ - module paths without `.js` or `.mjs`
31
+ - manifest paths without `.json`
32
+ - invalid manifest keys
33
+ - URL-like dependency values in manifest records
34
+
35
+ ## Diagnostics
36
+
37
+ The loader emits refusals as `xtend-loader-diagnostic`:
38
+
39
+ ```js
40
+ window.addEventListener('xtend-loader-diagnostic', (event) => {
41
+ console.log(event.detail.code, event.detail.metadata.diagnostics);
42
+ });
43
+ ```
44
+
45
+ Stable codes:
46
+
47
+ - `xtend.security.loader.refused`
48
+ - `xtend.security.manifest.invalid`
49
+ - `xtend.security.import.refused`
50
+
51
+ ## Machine-Readable Policy
52
+
53
+ ```js
54
+ const {
55
+ classifyPolicyUrl,
56
+ normalizeManifest
57
+ } = require('./security/manifest-import-policy');
58
+ ```
59
+
60
+ The policy lives at:
61
+
62
+ ```text
63
+ security/manifest-import-policy.js
64
+ ```
65
+
66
+ ## Local Gates
67
+
68
+ ```bash
69
+ node scripts/verify_manifest_import_policy.js --json
70
+ node scripts/run_xtend_tests.js manifest-import-policy --json
71
+ npm run test:manifest-policy
72
+ ```
73
+
74
+ These checks are offline and do not contact external hosts.
75
+
76
+ ## Related Topics
77
+
78
+ - [XTend Loader](./xtend-loader.md)
79
+ - [Manifest Format](./manifest.md)
80
+ - [Trusted DOM and Sanitizing](./trusted-dom-sanitizing.md)
81
+ - [Supply-Chain Gates](./supply-chain-gates.md)
@@ -0,0 +1,135 @@
1
+ # XTend Manifest
2
+
3
+ ## Overview
4
+
5
+ The XTend Manifest is the central JSON file that defines all available XTend
6
+ components and their module paths. It acts as the single source of truth for the
7
+ loader and the API when components are loaded dynamically and modularly.
8
+
9
+ ---
10
+
11
+ ## Location and Name
12
+
13
+ - Default path: `components/manifest.json`
14
+ - The path can be changed when the loader is initialized.
15
+
16
+ ---
17
+
18
+ ## Manifest Structure
19
+
20
+ The manifest is a plain JSON object. Most keys match the canonical tag name of
21
+ an XTend component; reserved bootstrap keys such as `xstate` are allowed as
22
+ well. Each value is a concrete ES module address.
23
+
24
+ ### Example
25
+
26
+ ```json
27
+ {
28
+ "xstate": "./xstate.js",
29
+ "x-theme": "./xtheme.js",
30
+ "x-button": "./xbutton.js",
31
+ "x-input": "./xinput.js",
32
+ "x-router": "./xrouter.js",
33
+ "x-link": "./xlink.js"
34
+ }
35
+ ```
36
+
37
+ ### Conventions
38
+
39
+ - Custom element tags are canonical, **lowercase, hyphenated, and start with
40
+ `x`** (for example `x-button`, `x-input`, `x-router`).
41
+ - Reserved bootstrap keys such as `xstate` are valid exceptions and are not
42
+ interpreted as DOM tags.
43
+ - Values may be **relative**, **root-relative**, or **same-origin/loopback-local
44
+ absolute** URLs.
45
+ - The loader resolves relative entries relative to the manifest URL.
46
+ - The default manifest path stays repo-local; CDN URLs are not the default or
47
+ test path.
48
+ - Since `ER-WP-28`, external manifest/module URLs, `javascript:`, `data:`,
49
+ `blob:`, path traversal, and non-JavaScript modules are refused by
50
+ `xtend.security.manifest-policy.v1` and
51
+ `xtend.security.import-policy.v1`.
52
+ - Comments are not allowed by the JSON standard and are invalid in a real
53
+ manifest.
54
+
55
+ ---
56
+
57
+ ## Required and Optional Entries
58
+
59
+ - **Required:**
60
+ - `xstate` as the bootstrap base module
61
+ - **Optional:**
62
+ - `x-theme` (theme engine)
63
+ - Additional custom components
64
+
65
+ ---
66
+
67
+ ## Extensibility
68
+
69
+ - The manifest can contain any number of components.
70
+ - Custom components are added by appending more key/value pairs.
71
+ - Experimental or beta components should use an explicit naming convention
72
+ such as `x-section-beta`.
73
+
74
+ ## Difference from XTendRMT
75
+
76
+ The XTend Manifest describes resolvable ES module paths for XTend components.
77
+ It is not the same as a `.rmt` document.
78
+
79
+ | File/Format | Responsibility |
80
+ |--------------|----------------|
81
+ | `components/manifest.json` | XTend Loader and component URL resolution |
82
+ | `xtendrmt/rmt.schema.json` | Schema reference for RMT documents |
83
+ | `.rmt` | Native app DSL with `adapters`, `components`, `routes`, `schedules`, `templates` |
84
+ | `xtendrmt/rmt-manifest.json` | XTendRMT product manifest, entry points, and artifact parity |
85
+
86
+ RMT component records may reference an XTend Manifest for manifest lookup, but
87
+ the RMT kernel does not read XTend runtime code from it. Resolution belongs in
88
+ host adapters and the RMT vNext Component Capability Registry. The registry
89
+ uses the manifest as the import source, combines it with Component Contracts and
90
+ RMT metadata, and produces descriptor capabilities for the DOM Descriptor
91
+ Renderer.
92
+
93
+ Native RMT files should be served as `application/vnd.xtendrmt.rmt+json`. The
94
+ JSON fallback remains possible for special hosts, but it is not the recommended
95
+ authoring path.
96
+
97
+ ---
98
+
99
+ ## Best Practices
100
+
101
+ - The manifest is the **single source of truth** for resolvable component URLs.
102
+ - Keep the manifest current to avoid dead links and load failures.
103
+ - Production manifests should be minimized and omit unused components.
104
+ - `xstate` should always be present explicitly; `x-theme` follows directly
105
+ after it when theme features are used.
106
+
107
+ ---
108
+
109
+ ## Validation
110
+
111
+ - Before loading, the loader verifies that the manifest and all module URLs are
112
+ valid.
113
+ - Non-string values are ignored.
114
+ - Parsing and loading errors are written to the console log.
115
+ - Security refusals emit `xtend-loader-diagnostic` events with
116
+ `xtend.security.loader.refused`, `xtend.security.manifest.invalid`, or
117
+ `xtend.security.import.refused`.
118
+ - The local gate is `node scripts/run_xtend_tests.js manifest-import-policy --json`.
119
+ - After core changes, `node scripts/verify_xtend_core_contracts.js` can
120
+ cross-check the bootstrap contract against manifest, API, and docs.
121
+
122
+ ---
123
+
124
+ ## Related Topics
125
+
126
+ - [XTend Loader](./xtend-loader.md)
127
+ - [Manifest Import Policy](./manifest-import-policy.md)
128
+ - [Component Development](./components.md)
129
+ - [RMT vNext Component Primitives and XTend UI](./rmt-vnext-component-primitives.md)
130
+ - [API Integration](./api.md)
131
+ - [XTendRMT App DSL Reference](./xtendrmt-app-dsl.md)
132
+
133
+ ---
134
+
135
+ *Last updated: May 22, 2026*
@@ -0,0 +1,67 @@
1
+ # Motion and Contrast
2
+
3
+ - Contract: `xtend.docs.motion-contrast.v1`
4
+ - Runtime/gate contract: `xtend.a11y.motion-contrast-policy.v1`
5
+ - Motion contract: `xtend.a11y.motion-policy.v1`
6
+ - Contrast contract: `xtend.a11y.contrast-policy.v1`
7
+ - Gate: `node scripts/run_xtend_tests.js motion-contrast --json`
8
+
9
+ ## Purpose
10
+
11
+ Motion and contrast are part of a11y-by-design in XTend. Components must respect reduced motion, forced contrast modes, visible focus and non-color status without requiring XTendRMT or a host framework to know concrete CSS details.
12
+
13
+ ## Required Rules
14
+
15
+ | Area | Implementation |
16
+ |------|----------------|
17
+ | Reduced motion | `@media (prefers-reduced-motion: reduce)` disables non-essential animations and transitions |
18
+ | High contrast | `@media (forced-colors: active)` uses system colors such as `CanvasText`, `ButtonText`, `Highlight`, `Mark` |
19
+ | Focus | `:focus-visible` remains visible and uses `Highlight` in the forced-colors path |
20
+ | Status | error, warning, busy and active have semantics beyond color |
21
+ | Tokens | theme tokens must not override forced-colors when system colors are required |
22
+
23
+ ## Component Contract
24
+
25
+ Relevant components declare statically:
26
+
27
+ ```js
28
+ static get xtendMotionContrastPolicy() {
29
+ return {
30
+ schema: 'xtend.a11y.motion-contrast-policy.v1',
31
+ componentRef: 'x-component',
32
+ motion: {
33
+ schema: 'xtend.a11y.motion-policy.v1',
34
+ mediaQuery: '(prefers-reduced-motion: reduce)',
35
+ noMotionOnlyState: true
36
+ },
37
+ contrast: {
38
+ schema: 'xtend.a11y.contrast-policy.v1',
39
+ mediaQuery: '(forced-colors: active)',
40
+ focusVisible: 'required',
41
+ nonColorStatus: 'required'
42
+ }
43
+ };
44
+ }
45
+ ```
46
+
47
+ ## Scaffold
48
+
49
+ New scaffold components receive:
50
+
51
+ - `motionContrast.policy` in the a11y profile
52
+ - manifest key `motionContrastPolicy`
53
+ - docs section `Motion and Contrast Policy`
54
+ - fixture fields `motionContrastPolicy`, `motionMediaQuery`, `contrastMediaQuery`
55
+ - TypeScript type `X<Component>MotionContrastPolicy`
56
+
57
+ ## Fabric and RMT
58
+
59
+ Preference signals use Fabric lane `a11y`, fiber `a11y.preference` and schedule `a11y.user-blocking.preference`. RMT remains framework-agnostic and receives only host-neutral schedule/diagnostic signals, not CSS execution.
60
+
61
+ ## Local Verification
62
+
63
+ ```bash
64
+ npm run test:motion-contrast
65
+ node scripts/run_xtend_tests.js motion-contrast --json
66
+ node scripts/run_xtend_tests.js references --json
67
+ ```
@@ -0,0 +1,44 @@
1
+ # Package Export Lock
2
+
3
+ - Contract: `xtend.epic13.package-export-lock.v1`
4
+ - Report: `xtend.epic13.package-export-lock-report.v1`
5
+ - Surface: `xtend.epic13.package-export-surface.v1`
6
+ - Dry-run artifact: `xtend.epic13.package-dry-run-artifact.v1`
7
+ - Local gate: `node scripts/run_xtend_tests.js epic13-package-export-lock --json`
8
+
9
+ The Package Export Lock makes the RC1 package content checkable. The local gate validates `package.json#exports`, `files`, the expected package roots and the surface groups without running `npm pack`.
10
+
11
+ ## Surface Groups
12
+
13
+ | Group | Purpose |
14
+ |-------|---------|
15
+ | Loader | `xtend-loader.js`, legacy stub, API, CSS and manifest |
16
+ | Components | manifest and component files |
17
+ | Fabric | Fabric runtime, RMT lane mapping and hydration policy |
18
+ | XTendRMT | ESM and browser runtime |
19
+ | Builder | Scaffold CLI, preview, typing and performance contracts |
20
+ | Docs | Docs app, Markdown, Parsedown/RMT shell and references |
21
+ | Security | manifest, Trusted DOM and supply-chain policies |
22
+ | Catalog | gate, handoff and epic contracts |
23
+
24
+ ## Release Owner Artifact
25
+
26
+ ```bash
27
+ npm run pack:dry-run:report
28
+ ```
29
+
30
+ The script writes:
31
+
32
+ - `.xtend-test-results/xtend-pack-dry-run.json`
33
+ - `.xtend-test-results/xtend-package-export-surface-lock.json`
34
+ - `.xtend-test-results/xtend-package-export-lock-report.json`
35
+
36
+ `private-until-release-owner-acceptance` remains active. The lock only proves that package content and export surface are controlled; it does not open publishing.
37
+
38
+ ## TypeExports Connection
39
+
40
+ As of `WP-TypeExports-01`, [TypeExports](./type-exports.md) uses the Package Export Lock as the source for the public export surface. The gate `node scripts/run_xtend_tests.js type-exports --json` ties the 121 expected exports to `xtend.epic13.package-export-lock.v1` through count and fingerprint and requires a type decision for new public exports. As of `WP-TypeExports-02`, `.`, `./loader` and `./legacy-loader` have the type targets `./xtend-loader.d.ts` and `./xtend-dev.d.ts`; `node scripts/run_xtend_tests.js type-exports-loader --json` checks this connection against the loader runtime. As of `WP-TypeExports-03`, `./api` has the type target `./api.d.ts`; `node scripts/run_xtend_tests.js type-exports-api --json` checks the core API namespace against `api.js`. As of `WP-TypeExports-04`, `./rmt`, `./rmt/browser`, `./rmt/dom-descriptor-renderer`, `./rmt/component-capability-registry`, `./rmt/state-selector-runtime`, `./rmt/action-effect-runtime`, `./rmt/event-routing-runtime`, `./rmt/surface-resource-graph-runtime`, `./rmt/native-shell-runtime`, `./rmt-language/app-platform-tooling` and the RMT language/tooling exports have type targets such as `./xtendrmt/rmt-core.d.ts`, `./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`, `./tools/rmt-language/app-platform-tooling.d.ts` and `./tools/rmt-language/rmt-tooling-public-types.d.ts`; `node scripts/run_xtend_tests.js type-exports-rmt --json` checks this connection against the RMT runtime and tooling surface. As of `WP-TypeExports-05`, Fabric/a11y/security exports have type targets such as `./fabric/xtend-fabric.d.ts` and `./fabric/xtend-policy-public-types.d.ts`; `node scripts/run_xtend_tests.js type-exports-policy --json` checks this connection against the policy surface. As of `WP-TypeExports-06`, builder exports have type targets such as `./xtend-builder/scaffold.d.ts`, `./xtend-builder/builder-public-types.d.ts` and `./xtend-builder/*.d.ts`; `node scripts/run_xtend_tests.js type-exports-builder --json` checks this connection against Scaffold, generators, Component Lab and typing contracts. As of `WP-TypeExports-07`, catalog exports have type targets such as `./catalog/epic13-package-export-lock.d.ts` and the shared `./catalog/catalog-public-types.d.ts`; `node scripts/run_xtend_tests.js type-exports-catalog --json` checks this connection against plan/report/validation catalogs. As of `WP-TypeExports-08`, design tokens and vendor facades have type targets such as `./design-tokens/xtend-design-tokens.d.ts`, `./design-tokens/xtheme-token-alias-layer.d.ts`, `./components/prism.d.ts` and `./components/turndown.d.ts`; `node scripts/run_xtend_tests.js type-exports-vendor --json` checks this connection against the utility boundaries. As of `WP-TypeExports-09`, `npm run test:type-exports:release` bundles the TypeExports gates as a release handoff and writes `.xtend-test-results/xtend-type-exports-report.json`.
41
+
42
+ ## Handoff
43
+
44
+ After `WP-E13-04`, `WP-E13-05` completed the Known Residual Triage under [Known Residual Triage](./known-residual-triage.md) with `xtend.epic13.known-residual-triage.v1`. `WP-E13-06` completed the [Hydration Performance Closure](./hydration-performance-closure.md) with `xtend.epic13.hydration-performance-closure.v1`. `WP-E13-07` prepared the [PROD Browser CSP Smokes](./prod-browser-csp-smokes.md), `WP-E13-08` normalized [Visual Owner Artifacts](./visual-owner-artifacts.md), `WP-E13-09` bundled [RMT Production Readiness](./rmt-production-readiness.md), `WP-E13-10` completed [Docs RMT Production Hardening](./docs-rmt-production-hardening.md), `WP-E13-11` completed [Trusted DOM Boundary Browser Proof](./trusted-dom-boundary-browser-proof.md), `WP-E13-12` completed [RC1 Migration Notes](./rc1-migration-notes.md), `WP-E13-13` registered [RC1 Gate Matrix and CI Handoff](./rc1-gate-matrix-ci-handoff.md), `DPF-WP-02` added [Release Report and Pack Dry Run Evidence](./release-report-pack-dry-run-evidence.md) and `DPF-WP-03` added [Conditional Network Evidence CI](./conditional-network-evidence-ci.md). The current export lock expects 124 package exports including `./design-tokens/xtheme-token-alias-layer`, `./catalog/epic13-rc1-migration-notes`, `./catalog/epic13-rc1-gate-matrix-ci-handoff`, `./catalog/epic13-release-report-pack-dry-run-evidence`, `./catalog/epic13-conditional-network-evidence-ci`, `./rmt/dom-descriptor-renderer`, `./rmt/component-capability-registry`, `./rmt/state-selector-runtime`, `./rmt/action-effect-runtime`, `./rmt/event-routing-runtime`, `./rmt/surface-resource-graph-runtime`, `./rmt/native-shell-runtime`, `./rmt/node-ssr-adapter`, `./rmt-language/app-platform-tooling`, `./rmt-language/kernel-trust-authority`, `./rmt-language/kernel-security-regression`, `./catalog/epic14-rmt-tooling`, `./catalog/epic14-lsp-handoff` and the classic and vNext RMT tooling surface.