@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
@@ -3,19 +3,46 @@
3
3
  - Contract: `xtend.rmt.vnext-release-handoff.v1`
4
4
  - Syntax Contract: `xtend.rmt.vnext.grammar.v1`
5
5
  - Core Output: `xtend.rmt.core-format.vnext.v1`
6
- - Reference Demo: `xtendrmt/rmt-vnext-reference-demo.rmt`
7
- - Gate: `node scripts/run_xtend_tests.js rmt-vnext-release --json`
8
6
 
9
- RMT vNext ist die neue deklarative Authoring-Syntax fuer XTendRMT. Sie bleibt JSON-nah im Ergebnis, ist aber als menschenfreundliche DSL geschrieben und kompiliert deterministisch in das vNext Core Format.
7
+ RMT vNext ist die menschenfreundliche Syntax fuer XTend Apps. Du kannst eine
8
+ vollstaendige UI-Shell in RMT schreiben: State, Selectors, DataSources,
9
+ Actions, Events, Portals, Overlays, Resources, Surfaces und Fabric-Lanes
10
+ liegen in einer `.rmt` Quelle und werden deterministisch in Core- und
11
+ Kernel-Records kompiliert.
10
12
 
11
13
  ## Grundform
12
14
 
13
15
  ```rmt
14
- template xtend.vnext.reference {
15
- surface root {
16
- lane critical weight 10 {
17
- hydrate app-shell
18
- hydrate hero-panel when route.visible == true
16
+ template media.manager {
17
+ state selectedItem type object initial null
18
+
19
+ selector visibleItems from datasource library {
20
+ output card-list
21
+ }
22
+
23
+ datasource library from fixture records.media-items {
24
+ contract "media.item.v1[]"
25
+ }
26
+
27
+ action select-item {
28
+ input id string
29
+ reduce state.selectedItem = input.id
30
+ emit media.item.selected with action select-item
31
+ }
32
+
33
+ portal app root "#app-root" layer surface
34
+
35
+ surface library kind workspace component x-cards {
36
+ repeat from selector visibleItems
37
+ key item.id
38
+ portal app
39
+
40
+ lane visible weight 80 {
41
+ hydrate x-cards from selector visibleItems
42
+ }
43
+
44
+ on card-click target item -> action select-item {
45
+ payload id from item.id
19
46
  }
20
47
  }
21
48
  }
@@ -25,36 +52,119 @@ Die wichtigsten Bausteine:
25
52
 
26
53
  | Syntax | Zweck |
27
54
  | --- | --- |
28
- | `template` | gruppiert eine orchestrierte App- oder Dokument-Shell |
29
- | `surface` | beschreibt Zielbereiche wie `root`, Dialoge, Overlays oder Panels |
55
+ | `template` | gruppiert eine App- oder Dokument-Shell |
56
+ | `state` | beschreibt persistenten oder transienten App-Zustand |
57
+ | `selector` | leitet UI-nahe Views aus State oder DataSources ab |
58
+ | `datasource` | bindet Fixture-, Endpoint-, SSE- oder Worker-Quellen an |
59
+ | `action` | beschreibt User- und Systemaktionen mit Reducern und Effects |
60
+ | `on ... -> action ...` | routet DOM- oder Custom-Events in Actions |
61
+ | `portal` | benennt Mount-Ziele fuer Surfaces und Overlays |
62
+ | `surface` | beschreibt sichtbare UI-Objekte, Listen, Panels oder Pages |
63
+ | `overlay` | beschreibt Toasts, Dialoge, Menues, Popovers und Lightboxes |
64
+ | `resource` | beschreibt Besitz, Import, Stream, Timer und Cleanup |
30
65
  | `lane` | steuert Prioritaet, Scheduling und Backpressure |
31
66
  | `mount`, `hydrate`, `prewarm`, `dispose` | Lifecycle-Operationen |
32
67
  | `when` | deklarative Conditions ohne Funktionsaufrufe oder Eval |
33
68
  | `slot` | Composition innerhalb einer Operation |
34
- | `on ... -> action ...` | Event zu Action-Referenz |
35
- | `from endpoint/sse/worker` | Data-Source-Referenz |
36
69
  | `trust boundary` und `sanitize` | Security-Policy fuer unsichere Daten |
37
70
  | `stream` | inkrementelle Streaming-Operation |
38
71
 
72
+ ## App Shell nur in RMT
73
+
74
+ Eine vNext-App soll nicht zwischen RMT, App-Platform-JSON und Host-Code
75
+ zerfallen. RMT ist der Authoring-Ort fuer:
76
+
77
+ - Route- und Shell-Struktur
78
+ - sichtbare Surfaces und Overlay-Portale
79
+ - State- und Selector-Modell
80
+ - Actions, Effects und Event-Payloads
81
+ - Resource Ownership und Cleanup
82
+ - Fabric-Lanes fuer sichtbare, user-blocking, transition, idle,
83
+ background- und diagnostics-Arbeit
84
+
85
+ Der Host stellt Komponenten, Router, Browser-APIs und externe Daten bereit.
86
+ Diese Grenze haelt den Kernel framework-neutral und macht die App trotzdem
87
+ vollstaendig beschreibbar.
88
+
89
+ ## XTend UI-Kompatibilitaet
90
+
91
+ RMT vNext Component Primitives zielen auf den bestehenden XTend-Component-
92
+ Stack. Eine Surface wie `component x-select` wird zu einem DOM Descriptor
93
+ abgesenkt und dann ueber die Component Capability Registry aufgeloest, nicht
94
+ ueber einen produktspezifischen Renderer. Die Registry liest
95
+ `components/manifest.json`, `xtendComponentContract`, `xtendRmtMetadata`,
96
+ public Events, `observedAttributes`, Slots, Parts, Form-Assoziation,
97
+ Accessibility-Profile und Performance-Profile.
98
+
99
+ Damit erreicht RMT alle 44 public Manifest-Eintraege, waehrend 40 renderbare
100
+ UI-Komponenten ihren normalen Web-Component-Lifecycle behalten. Infrastruktur-
101
+ module wie `x-theme` und `xstate` bleiben Host-Services, keine normalen
102
+ Surface-Elemente. Produktcode soll ueber public Attribute, Properties, Events,
103
+ Parts, Slots und State-Bridges binden, statt `shadowRoot` oder private
104
+ Component-Maps zu patchen.
105
+
106
+ Details stehen in
107
+ [RMT vNext Component Primitives und XTend UI](./rmt-vnext-component-primitives.md).
108
+
109
+ ## Editor-DX
110
+
111
+ Der Language Server erkennt vNext-Primitives direkt:
112
+
113
+ - Completions fuer Primitive-Keywords und klauselnahe Vorschlaege
114
+ - Hover mit Core Pointer und Primitive-Informationen
115
+ - Document Symbols fuer `states`, `selectors`, `actions`, `surfaces`,
116
+ `portals`, `overlays` und `resources`
117
+ - Code Actions fuer sichere Reparaturen
118
+ - Safe Fix-All fuer `source.fixAll.rmt.vnext.primitives`
119
+ - manuelle Uebergaben fuer Kernel-/Host-Boundaries
120
+
121
+ Das Snippet `rmt-vnext-primitive-shell` erzeugt eine kleine App Shell mit
122
+ State, Selector, Action, Portal, Surface, Lane und Event-Payload-Contract.
123
+
124
+ ## Migration aus Legacy-Records
125
+
126
+ Legacy- und App-Platform-JSON bleiben lesbar, sind aber nicht der normale
127
+ Authoring-Pfad. Fuer vorhandene App-Platform-Primitive-Records gibt es:
128
+
129
+ - `createAppPlatformPrimitiveMigrationPreview(...)` fuer einen vNext-Draft
130
+ - `createAppPlatformPrimitiveMigrationApplyPlan(...)` fuer einen manuellen
131
+ Apply-Plan ohne automatisches Schreiben
132
+ - `report-only`, `preview-ready`, `apply-plan-ready` und `blocked` als
133
+ klare Statuswerte
134
+
135
+ Details stehen in [RMT vNext Primitive Migration](./rmt-vnext-primitive-migration.md).
136
+
39
137
  ## Reference Demo
40
138
 
41
- Die vollstaendige Referenz liegt in `xtendrmt/rmt-vnext-reference-demo.rmt`. Sie deckt Templates, Surfaces, gewichtete Lanes, Conditions, Slots, Events, Endpoint/SSE/Worker Sources, Security Policies und Streaming ab.
139
+ Die vollstaendige Referenz liegt in `xtendrmt/rmt-vnext-reference-demo.rmt`.
140
+ Sie deckt Templates, Surfaces, gewichtete Lanes, Conditions, Slots, Events,
141
+ Endpoint/SSE/Worker Sources, Security Policies und Streaming ab.
42
142
 
43
- Der stabile Compiler-Output liegt in `xtendrmt/rmt-vnext-reference-demo.core.json`. Eine absichtliche Aenderung am Compiler oder an der Syntax muss beide Dateien und die Release-Gates bewusst aktualisieren.
143
+ Der stabile Compiler-Output liegt in
144
+ `xtendrmt/rmt-vnext-reference-demo.core.json`. Wenn Syntax oder Compiler
145
+ absichtlich geaendert werden, muessen Quelle und Core-Output gemeinsam
146
+ aktualisiert werden.
44
147
 
45
148
  ## Lokal pruefen
46
149
 
47
150
  ```bash
151
+ node scripts/run_xtend_tests.js rmt-vnext-parser rmt-vnext-compiler rmt-vnext-tooling --json
152
+ node scripts/run_xtend_tests.js rmt-vnext-compatibility --json
153
+ node scripts/run_xtend_tests.js rmt-vnext-component-primitives --json
48
154
  node scripts/run_xtend_tests.js rmt-vnext-release --json
49
- node scripts/run_xtend_tests.js rmt-vnext-parser rmt-vnext-compiler rmt-vnext-regression --json
50
155
  ```
51
156
 
52
- Der Release-Gate prueft Docs, Reference Demo, Core-Output, Release-Matrix, Handoff und Referenzpfade. Fuer schnelle Authoring-Checks reichen Parser, Compiler und Regression-Gate.
157
+ Fuer App-Shell-Arbeit reichen normalerweise Parser, Compiler, Tooling und
158
+ Compatibility. Release-Gates pruefen zusaetzlich Referenzdemo, Core-Output,
159
+ Migration und Referenzpfade.
53
160
 
54
161
  ## Grenzen
55
162
 
56
163
  - RMT vNext fuehrt keine Host-Runtime im Kernel aus.
57
164
  - Conditions sind deklarativ und erlauben keine Funktionsaufrufe.
58
165
  - Imports sind statisch und bleiben package-root-gebunden.
59
- - Legacy JSON bleibt lesbar, Migration bleibt opt-in.
60
- - Produktive Runtime-Adapter fuer vNext Core sind Folgearbeit, nicht Teil dieses Syntax-Epics.
166
+ - Legacy JSON bleibt kompatibel, aber nicht der bevorzugte Authoring-Pfad.
167
+ - XTend-, XRouter-, DOM- und Browser-Details gehoeren in Adapter.
168
+ - XTend-Component-Integration laeuft ueber public Contracts und die Component
169
+ Capability Registry, nicht ueber direkte Kernel-Imports oder
170
+ Shadow-DOM-Monkeypatching.
@@ -0,0 +1,188 @@
1
+ # RMT vNext Component Primitives und XTend UI
2
+
3
+ - Schema: `xtend.rmt.component-capability-registry.v1`
4
+ - Report Schema: `xtend.rmt.component-capability-registry-report.v1`
5
+ - Runtime: `xtendrmt/rmt-component-capability-registry.js`
6
+ - Export: `@ccslabs/xtend/rmt/component-capability-registry`
7
+ - Local Gate: `node scripts/run_xtend_tests.js rmt-vnext-component-primitives --json`
8
+ - Aggregat: `npm run test:rmt-vnext-primitives:report`
9
+
10
+ RMT vNext und XTend UI sind keine Parallelwelten. Die Component Primitives
11
+ verbinden RMT-Templates, Kernel Records, DOM Descriptor Renderer und die
12
+ public XTend Web Components ueber eine gemeinsame Capability Registry. RMT
13
+ beschreibt Shell, State, Surfaces, Events und Lifecycle; XTend Components
14
+ liefern die konkreten UI-Bausteine, Accessibility-Profile, Parts, Slots,
15
+ Events und Performance-Profile.
16
+
17
+ ## Source-to-Sea-Fluss
18
+
19
+ ```text
20
+ .rmt template
21
+ -> RMT Compiler und Core Records
22
+ -> Kernel Records und Fabric Lanes
23
+ -> DOM Descriptor Renderer
24
+ -> Component Capability Registry
25
+ -> XTend Component aus components/manifest.json
26
+ -> Browser DOM und Component Lifecycle
27
+ ```
28
+
29
+ Der RMT-Kernel importiert keine XTend-Komponenten und keine XTend-Typen. Die
30
+ Registry liest Manifest, Component Contracts, `xtendRmtMetadata`,
31
+ `observedAttributes`, Events, Slots, Parts, Form-Assoziation sowie A11y- und
32
+ Performance-Profile. Daraus entsteht eine normalisierte Matrix fuer alle 42
33
+ public Eintraege aus `components/manifest.json`.
34
+
35
+ ## Matrix
36
+
37
+ | Bereich | Abdeckung |
38
+ | --- | --- |
39
+ | Manifest-Eintraege | 44 |
40
+ | Renderbare public UI-Komponenten | 40 |
41
+ | Nicht-visuelle Sonderfaelle | 4 |
42
+ | RMT-Metadaten | 42 Eintraege |
43
+ | Component Contracts | 40 Eintraege |
44
+ | Form-associated Components | 6 |
45
+
46
+ Nicht-visuelle Sonderfaelle sind `x-theme`, `xstate`, `x-utils` und
47
+ `x-rmt-lifecycle-demo-build`. `x-theme` und `xstate` sind Infrastrukturmodule;
48
+ sie werden ueber Host-/Loader-Dienste genutzt, aber nicht als normale RMT-App-
49
+ UI gerendert. `x-utils` bleibt Utility-Modul, der Lifecycle-Demo-Build bleibt
50
+ Demo-Artefakt.
51
+
52
+ ## Component-Familien
53
+
54
+ | Familie | Tags |
55
+ | --- | --- |
56
+ | Form | `x-calendar`, `x-checkbox`, `x-form`, `x-input`, `x-radio`, `x-select`, `x-textarea` |
57
+ | Navigation | `x-router`, `x-link`, `x-menu`, `x-drawer` |
58
+ | Overlay/Surface | `x-dialog`, `x-lightbox`, `x-modal`, `x-popover`, `x-side-panel`, `x-surface-manager`, `x-surface-window`, `x-toast`, `x-tooltip` |
59
+ | Media/Feedback/Layout | `x-alert`, `x-button`, `x-cards`, `x-code`, `x-icon`, `x-masonry`, `x-player`, `x-progress`, `x-spinner`, `x-status`, `x-summary`, `x-type`, `x-writer` |
60
+ | Theme/Layout | `x-footer`, `x-header`, `x-hero`, `x-section`, `x-tabs` |
61
+ | Infrastruktur | `x-theme`, `xstate`, `x-utils`, `x-rmt-lifecycle-demo-build` |
62
+
63
+ Die risikoreichen Familien `form`, `navigation`, `overlay-surface`,
64
+ `media-feedback-layout` und `theme-layout` bleiben fuer representative Browser
65
+ Smokes markiert. Der Default-Gate prueft die breite Matrix fake-DOM-nah und
66
+ haelt Browser-Flakiness aus dem schnellen Primitive-Gate heraus.
67
+
68
+ ## Runtime API
69
+
70
+ ```js
71
+ import {
72
+ createRmtComponentCapabilityRegistry
73
+ } from '@ccslabs/xtend/rmt/component-capability-registry';
74
+ import {
75
+ createRmtDomDescriptorRenderer
76
+ } from '@ccslabs/xtend/rmt/dom-descriptor-renderer';
77
+
78
+ const registry = createRmtComponentCapabilityRegistry({
79
+ manifest,
80
+ sourceTexts,
81
+ importer: async (modulePath) => import(`/components/${modulePath.replace(/^\.\//u, '')}`)
82
+ });
83
+
84
+ const descriptor = registry.buildComponentDescriptor({
85
+ tag: 'x-select',
86
+ id: 'plan-select',
87
+ key: 'settings:plan',
88
+ attributes: {
89
+ name: 'plan',
90
+ value: 'pro'
91
+ },
92
+ slots: {
93
+ label: { text: 'Plan' }
94
+ },
95
+ events: {
96
+ 'select-changed': 'settings.plan.changed'
97
+ }
98
+ });
99
+
100
+ const renderer = createRmtDomDescriptorRenderer({ documentTarget: document });
101
+
102
+ renderer.renderKeyed(root, [descriptor], {
103
+ componentRegistry: registry,
104
+ dispatchEvent(event) {
105
+ actions.dispatch(event.action, event.payload);
106
+ },
107
+ stateBridge: {
108
+ read(key) {
109
+ return state.read(key);
110
+ },
111
+ write(key, value) {
112
+ state.write(key, value);
113
+ }
114
+ }
115
+ });
116
+ ```
117
+
118
+ Wichtige Registry-Funktionen:
119
+
120
+ | Funktion | Zweck |
121
+ | --- | --- |
122
+ | `resolveComponentCapability(tag)` | Liefert normalisierte Capabilities fuer einen Manifest-Tag. |
123
+ | `listCapabilities(filter)` | Listet Capabilities nach Familie oder Visual Kind. |
124
+ | `buildComponentDescriptor(input)` | Baut einen DOM Descriptor fuer XTend-Komponenten inklusive Capability-Markern. |
125
+ | `bindComponentInstance(element, binding, options)` | Verbindet Events, Form-State und State Bridge ueber public DOM APIs. |
126
+ | `ensureComponentLoaded(tag, options)` | Fuehrt lazy Import ueber einen expliziten Importer aus. |
127
+ | `createMatrixReport()` | Erzeugt den Compatibility-Report fuer CI und lokale Diagnose. |
128
+
129
+ ## Event- und State-Bridge
130
+
131
+ Form Controls liefern `value`, `checked`, `validity`, `dataset` und Datei-
132
+ Metadaten in einem sicheren Payload-Record
133
+ `xtend.rmt.component-event-payload.v1`. Fuer Form-Familien werden `input` und
134
+ `change` ergaenzt, wenn keine explizite Event-Bindung gesetzt ist.
135
+
136
+ Navigation, Overlays, Feedback- und Layout-Komponenten bleiben ebenfalls ueber
137
+ public Events und Properties angebunden. Produktcode muss nicht in
138
+ `shadowRoot` greifen, keine privaten Component-Maps lesen und keine
139
+ komponentenspezifischen Renderer einbauen.
140
+
141
+ ## Renderer-Integration
142
+
143
+ Der DOM Descriptor Renderer akzeptiert `componentRegistry` in
144
+ `render(...)` und `renderKeyed(...)`. Bei `type: "component"` werden Tag,
145
+ Attribute, Properties, Slots, Parts und Event-Bindings ueber die Registry
146
+ normalisiert. Keyed Reuse bleibt erhalten, unkeyed Repeat-UI wird weiterhin
147
+ diagnostiziert.
148
+
149
+ Normale RMT-App-UI nutzt keine HTML-Sinks. `innerHTML`, `outerHTML`,
150
+ `insertAdjacentHTML`, `document.write`, `createContextualFragment` und
151
+ unsichere URL-/Inline-Event-Sinks bleiben durch den No-Manual-HTML-Gate und
152
+ die Trusted-DOM-Boundary gesperrt.
153
+
154
+ ## Architekturregeln
155
+
156
+ - Component Contracts bleiben die Quelle der Wahrheit.
157
+ - RMT erweitert XTend UI ueber Metadaten und Runtime-Bridges, nicht ueber
158
+ Monkeypatching.
159
+ - Lazy Import laeuft nur ueber Manifest und explizite Importer.
160
+ - Der RMT-Kernel bleibt framework-neutral und importiert keine XTend-Typen.
161
+ - Overlays, Surfaces und Portals brauchen Resource Ownership und Cleanup.
162
+ - `x-player` nutzt den public Player Contract fuer Play/Pause, State Bridge,
163
+ Theme Tokens und Parts; Produktcode patcht kein Shadow DOM.
164
+ - Infrastrukturmodule wie `x-theme` und `xstate` werden als Services genutzt,
165
+ nicht als normale Surface-Elemente.
166
+
167
+ ## Gates
168
+
169
+ ```bash
170
+ node scripts/run_xtend_tests.js rmt-vnext-component-primitives --json
171
+ npm run test:rmt-vnext-primitives:report
172
+ node scripts/run_xtend_tests.js component-ux-browser-smokes --json
173
+ node scripts/run_xtend_tests.js type-exports-rmt --json
174
+ ```
175
+
176
+ Das schnelle Primitive-Gate prueft Registry, Matrix, Renderer-Bindung,
177
+ Package-Exports, Type Declarations, Lazy Import, State Roundtrip und negative
178
+ Grenzen gegen Shadow-DOM-Patches, manuelle HTML-Sinks und direkte Component-
179
+ Imports.
180
+
181
+ ## Verwandte Doku
182
+
183
+ - [RMT vNext Authoring Guide](./rmt-vnext-authoring.md)
184
+ - [RMT DOM Descriptor Renderer](./rmt-dom-descriptor-renderer.md)
185
+ - [RMT Component Template Primitives](./rmt-component-template-primitives.md)
186
+ - [XTend Components](./components.md)
187
+ - [Component Platform](./component-platform.md)
188
+ - [XTend-Fabric RMT Lane Mapping](./xtend-fabric-rmt-lane-mapping.md)
@@ -0,0 +1,81 @@
1
+ # RMT vNext Fabric Bridge Evidence
2
+
3
+ - Contract: `xtend.rmt.vnext.fabric-bridge-evidence.v1`
4
+ - Workpackage: `RMT-VNEXT-PRIM-05`
5
+ - Status: `completed`
6
+ - Quelle: Media-Manager-Downstream-Transfer, `2026-05-19`
7
+
8
+ ## Ziel
9
+
10
+ `RMT-VNEXT-PRIM-05` beweist, dass vNext-authorierte Primitives den Fabric-
11
+ Runtime-Raum erreichen, ohne Fabric- oder XTend-Host-Imports in den RMT-Kernel
12
+ zu ziehen.
13
+
14
+ Das Gate ist absichtlich als eigene Scheibe neben dem Source-to-Sea-Gate
15
+ verfuegbar. Source-to-Sea prueft den gesamten Objekt-Lifecycle bis Browser;
16
+ dieses Gate prueft die Fabric-Bruecke selbst:
17
+
18
+ ```text
19
+ vNext source
20
+ -> PRIM-04 kernel schedule/fiber
21
+ -> Fabric/RMT lane mapping
22
+ -> xtend.fabric.fiber.v1
23
+ -> xtend.fabric.telemetry-snapshot.v1
24
+ -> host adapter telemetry
25
+ -> route/component fiber instrumentation
26
+ -> browser-visible Fabric markers
27
+ ```
28
+
29
+ ## Evidence
30
+
31
+ Die Evidence wird von `createRmtVNextFabricBridgeEvidence(...)` erzeugt und
32
+ ueber `createRmtVNextSourceToSeaEvidence(...)` in den Fullstack-Report
33
+ eingebettet.
34
+
35
+ Der PRIM-05-Contract umfasst:
36
+
37
+ - `xtend.fabric.rmt-lane-mapping.v1` fuer die Uebersetzung von RMT-Lanes in
38
+ Fabric-Schedules;
39
+ - eine primaere `xtend.fabric.fiber.v1` aus dem PRIM-04 Kernel-Fiber;
40
+ - eine Lane-Matrix fuer `user-blocking`, `transition`, `idle`, `background`
41
+ und `diagnostics`;
42
+ - `xtend.component.lifecycle-telemetry.v1` aus dem XTend Component Host-
43
+ Adapter;
44
+ - `component.mount`, `component.hydrate`, `route.navigate` und `route.render`
45
+ aus den produktiven Fabric-Fiber-Instrumentations;
46
+ - einen `xtend.fabric.telemetry-snapshot.v1`, der alle erwarteten Schedule Refs
47
+ enthaelt;
48
+ - Browser-Marker fuer Fabric Lane, Fabric Fiber, Fabric Schedule und Host-
49
+ Adapter-Telemetrie.
50
+
51
+ ## Gate-Regeln
52
+
53
+ Das Gate schlaegt fehl, wenn:
54
+
55
+ - die Fabric/RMT-Lane-Aufloesung kein Mapping liefert;
56
+ - die primaere Fabric-Fiber nicht abgeschlossen ist;
57
+ - Kernel-Schedule, Kernel-Fiber und Source-Pointer nicht in Fiber-Metadaten
58
+ erhalten bleiben;
59
+ - eine der Matrix-Lanes fehlt oder keinen Telemetry-Schedule schreibt;
60
+ - Host-Adapter-Telemetrie nicht im Fabric-Snapshot erscheint;
61
+ - Route- oder Component-Fiber nicht aus den produktiven Instrumentations
62
+ stammen;
63
+ - Browser-Marker fuer Lane, Fiber, Schedule oder Host-Telemetrie fehlen;
64
+ - der RMT-Kernel Host- oder Fabric-Imports enthaelt.
65
+
66
+ ## Lokale Gates
67
+
68
+ ```bash
69
+ node --check tools/rmt-language/vnext-source-to-sea.js
70
+ node --check tests/rmt-language/rmt_vnext_fabric_bridge_suite.js
71
+ node scripts/run_xtend_tests.js rmt-vnext-fabric-bridge --json
72
+ node scripts/run_xtend_tests.js rmt-vnext-source-to-sea --json
73
+ npm run test:rmt-vnext-primitives:report
74
+ ```
75
+
76
+ ## Handoff
77
+
78
+ `RMT-VNEXT-PRIM-05` ist abgeschlossen, sobald dieses Gate gruen ist.
79
+ `RMT-VNEXT-PRIM-06` fuehrt Source-to-Sea als optionale Browser-Evidence weiter:
80
+ Browser-Execution kann lokal oder per manuellem CI-Dispatch laufen und die
81
+ Browser-Execution-Evidence als Release-Artefakt schreiben.