@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,56 @@
1
+ # Release Owner Acceptance
2
+
3
+ `xtend.epic13.release-owner-acceptance.v1` beschreibt den ersten RC1-Owner-Schnitt nach dem RC1 Readiness Model.
4
+
5
+ Lokaler Gate:
6
+
7
+ ```bash
8
+ node scripts/run_xtend_tests.js epic13-release-owner-acceptance --json
9
+ ```
10
+
11
+ oder:
12
+
13
+ ```bash
14
+ npm run test:epic13-release-owner-acceptance
15
+ ```
16
+
17
+ ## Was der Contract festlegt
18
+
19
+ - Release Owner Acceptance ist ein Review-Contract, keine Publish-Freigabe.
20
+ - `private-until-release-owner-acceptance` bleibt aktiv.
21
+ - `publishAllowed` bleibt `false`.
22
+ - `automaticPublishApproval` bleibt `false`.
23
+ - Owner-Entscheidungen nutzen `accepted`, `deferred` und `blocked`.
24
+
25
+ ## Checklist-Modell
26
+
27
+ | Status | Verwendung |
28
+ |--------|------------|
29
+ | `accepted` | Baseline ist als Review-Grundlage angenommen |
30
+ | `deferred` | Offene Evidenz ist sichtbar und besitzt ein Zielpaket |
31
+ | `blocked` | Entscheidung darf nicht automatisch erfolgen |
32
+
33
+ Der bewusst blockierte Eintrag ist `automatic-publish-approval`. Damit bleibt ein gruener Testlauf ein Review-Signal, aber kein Publish-Signal.
34
+
35
+ ## Aktueller Handoff
36
+
37
+ `WP-E13-03` hat die Conditional Network Gate Evidence unter [Conditional Network Evidence](./conditional-network-evidence.md) mit `xtend.epic13.conditional-network-evidence.v1` vorbereitet:
38
+
39
+ - `npm audit --audit-level=moderate`
40
+ - `npm sbom --sbom-format=cyclonedx --json`
41
+
42
+ Wenn diese Gates lokal wegen Sandbox, Netzwerk oder Policy nicht laufen koennen, entsteht eine strukturierte Owner-Deferral.
43
+
44
+ `WP-E13-04` hat den [Package Export Lock](./package-export-lock.md) mit `xtend.epic13.package-export-lock.v1` abgeschlossen. `WP-E13-05` hat die [Known Residual Triage](./known-residual-triage.md) mit `xtend.epic13.known-residual-triage.v1` abgeschlossen. `WP-E13-06` hat die [Hydration Performance Closure](./hydration-performance-closure.md) mit `xtend.epic13.hydration-performance-closure.v1` abgeschlossen. `WP-E13-07` hat die [PROD Browser CSP Smokes](./prod-browser-csp-smokes.md) mit `xtend.epic13.prod-browser-csp-smoke.v1` abgeschlossen. `WP-E13-08` hat [Visual Owner Artifacts](./visual-owner-artifacts.md) mit `xtend.epic13.visual-owner-artifact.v1` normalisiert.
45
+
46
+ Der Checklist-Eintrag `known-residual-renewal` ist damit `accepted`: `xstate` und `x-utils` sind Boundary-Contracts, `xtend.component.hydrate` ist owner-frei geschlossen. Der Checklist-Eintrag `visual-owner-artifact` ist `accepted`; `rmt-production-readiness` ist seit `WP-E13-09` und `xtend.epic13.rmt-production-readiness.v1` ebenfalls `accepted`. `docs-rmt-production-hardening` ist seit `WP-E13-10` und `xtend.epic13.docs-rmt-production-hardening.v1` accepted. `prod-browser-csp-smoke` und `trusted-dom-boundary` sind seit `WP-E13-11` accepted; die Trusted-DOM-Evidence liegt unter [Trusted DOM Boundary Browser Proof](./trusted-dom-boundary-browser-proof.md) und `xtend.epic13.trusted-dom-boundary.v1`. `rc1-migration-notes` ist seit `WP-E13-12` accepted; die Evidence liegt unter [RC1 Migration Notes](./rc1-migration-notes.md) und `xtend.epic13.rc1-migration-notes-semver.v1`. `rc1-gate-matrix-ci-handoff` ist seit `WP-E13-13` accepted; die Evidence liegt unter [RC1 Gate Matrix und CI-Handoff](./rc1-gate-matrix-ci-handoff.md) und `xtend.epic13.rc1-gate-matrix-ci-handoff.v1`. Der naechste Handoff geht nach `WP-E13-14`.
47
+
48
+ Weiterfuehrend: [RC1 Readiness](./rc1-readiness.md).
49
+
50
+ ## RC1 Test-Build Acceptance
51
+
52
+ `RC1TB-WP-08` konkretisiert den Owner-Schnitt fuer den ersten lokalen RC1-Test-Build in `development/XTend-RC1-Test-Build-Owner-Acceptance.md` unter `xtend.rc1.test-build-owner-acceptance.v1`.
53
+
54
+ Die Entscheidung fuer diesen Schnitt lautet `accepted-for-internal-test-build-not-publish`: Der Test-Build darf intern gegen die dokumentierten Gate-Reports, die RMT vNext Reference Demo und die XTendRMT Bestcase Demo verwendet werden. `npm-audit-moderate` und `npm-sbom-json` sind im Owner-Publish-Schritt ausgefuehrt und akzeptiert; Version `0.1.0-rc.1` und `private: false` sind fuer Publish Prep gesetzt, `automaticPublishApproval: false` bleibt aktiv.
55
+
56
+ Der separate Owner-Publish-Entscheid ist in `development/XTend-RC1-Release-Owner-Publish-Decision.md` unter `xtend.rc1.release-owner-publish-decision.v1` angelegt. Sein aktueller Zustand ist `accepted-for-publish-prep`; der eigentliche Publish-Befehl wurde nicht ausgefuehrt. Die License-Entscheidung fuer den kompletten Stack ist `Apache-2.0`; Audit und SBOM sind akzeptiert.
@@ -0,0 +1,39 @@
1
+ # Release Report und Pack Dry Run Evidence
2
+
3
+ Contract: `xtend.epic13.release-report-pack-dry-run-evidence.v1`
4
+
5
+ Status: `accepted-release-report-pack-dry-run-evidence`
6
+
7
+ Workpackage: `DPF-WP-02-release-report-pack-dry-run`
8
+
9
+ ## Ziel
10
+
11
+ Dieses Paket macht `release:report` und `pack:dry-run` zu reproduzierbarer Release-Owner-Evidence. Beide Befehle bleiben lokal und netzwerkfrei; Audit/SBOM, Public Publish und License-Entscheidung bleiben Folgepakete.
12
+
13
+ ## Lokaler Gate
14
+
15
+ ```bash
16
+ node scripts/run_xtend_tests.js epic13-release-report-pack-dry-run-evidence --json
17
+ npm run test:epic13-release-report-pack-dry-run-evidence
18
+ ```
19
+
20
+ ## Evidence-Befehle
21
+
22
+ ```bash
23
+ npm run release:report
24
+ npm run pack:dry-run
25
+ ```
26
+
27
+ `npm run release:report` schreibt `.xtend-test-results/xtend-release-report.json`.
28
+
29
+ `npm run pack:dry-run` schreibt:
30
+
31
+ - `.xtend-test-results/xtend-pack-dry-run.json`
32
+ - `.xtend-test-results/xtend-package-export-surface-lock.json`
33
+ - `.xtend-test-results/xtend-package-export-lock-report.json`
34
+
35
+ Der rohe npm-Textlauf bleibt ueber `npm run pack:dry-run:raw` erreichbar.
36
+
37
+ ## RC1-Handoff
38
+
39
+ Die Evidence wird im RC1-Handoff unter `xtend.epic13.rc1-gate-matrix-ci-handoff.v1` referenziert. Der DPF-WP-02-Report nutzt `.xtend-test-results/xtend-epic13-release-report-pack-dry-run-evidence-report.json` und uebergibt an `DPF-WP-03` [Conditional Network Evidence CI](./conditional-network-evidence-ci.md) mit `xtend.epic13.conditional-network-evidence-ci.v1`.
@@ -0,0 +1,81 @@
1
+ # RMT Action Effect Runtime
2
+
3
+ - Contract: `xtend.epic18.rmt-action-effect-runtime.v1`
4
+ - Workpackage: `WP-E18-08`
5
+ - Runtime: `xtendrmt/rmt-action-effect-runtime.js`
6
+ - Types: `xtendrmt/rmt-action-effect-runtime.d.ts`
7
+ - Fixture: `tests/fixtures/rmt-action-effect-runtime.rmt`
8
+ - Lokaler Gate: `node scripts/run_xtend_tests.js rmt-action-effect-runtime --json`
9
+ - Naechstes Paket: `WP-E18-09`
10
+
11
+ ## Zweck
12
+
13
+ Die Action Effect Runtime macht haeufige App-Flows zu nativen RMT-App-Platform-Primitives. Apps koennen Fixture-, REST-, SSR- oder Host-Adapter-Daten laden, typisierten State aktualisieren, Feedback veroeffentlichen, navigieren, Controls fokussieren, Module lazy laden und Ressourcen besitzen, ohne produktlokale Action-Frameworks aufzubauen.
14
+
15
+ Die Runtime ist bewusst domain-neutral. Sie definiert keine Produktsurfaces und keine Record-Taxonomien. Entwickler liefern ihre eigenen Actions, Contracts, Adapter, Effects und Resources.
16
+
17
+ ## DataSources
18
+
19
+ Unterstuetzte Datasource-Arten:
20
+
21
+ - `fixture`: liefert statische Fixture-Records fuer lokale App-Fixtures und Tests.
22
+ - `rest`: ruft einen injizierten Adapter mit Endpoint und Payload auf.
23
+ - `ssr`: liest ein vorhydriertes Payload und kann es mit `resultPath` projizieren.
24
+ - `host`: ruft einen expliziten Host-Adapter fuer Mutationen oder Plattformkommandos auf.
25
+
26
+ Runtime-Code greift niemals direkt auf globale Netzwerk-APIs zu. REST und Host laufen ueber injizierte Adapter, damit Browser-, Server-, Test- und Shell-Umgebungen ihre eigene Transport-Policy waehlen koennen.
27
+
28
+ ## Actions
29
+
30
+ Eine Action kann deklarieren:
31
+
32
+ - `datasource`
33
+ - `resultState`
34
+ - `loadingState`
35
+ - `statusState`
36
+ - `effects`
37
+ - `resources`
38
+ - `resourceOwner`
39
+ - `cancelable`
40
+
41
+ `runAction(id, payload)` fuehrt die Action durch Loading-, Success-, Error- oder Cancelled-Zustaende. Wenn eine typed State Runtime uebergeben wird, werden Loading und Status ueber `setState` und `patchState` geschrieben; Datasource-Ergebnisse koennen in `resultState` gespeichert werden.
42
+
43
+ ## Effects
44
+
45
+ Unterstuetzte Effect-Arten:
46
+
47
+ - `toast` und `feedback`
48
+ - `navigation`
49
+ - `focus`
50
+ - `lazy-import`
51
+ - `side-effect`
52
+
53
+ Feedback, Navigation, Focus und eigene Side Effects nutzen injizierte Adapter. Lazy Imports werden als Ressourcen modelliert und koennen dadurch dasselbe Ownership- und Cleanup-Modell wie andere Runtime-Ressourcen teilen.
54
+
55
+ ## Resource Ownership
56
+
57
+ Unterstuetzte Resource-Arten:
58
+
59
+ - `object-url`
60
+ - `stream`
61
+ - `observer`
62
+ - `timer`
63
+ - `lazy-import`
64
+
65
+ Ressourcen werden unter einem Owner erworben, normalerweise der Action-ID. Der Resource Manager stellt `releaseOwner(ownerId)` bereit, damit Surface-Destroy, Render-Unit-Destroy oder Action-Cancel nur die Ressourcen bereinigen, die ihnen gehoeren.
66
+
67
+ ## Diagnostics
68
+
69
+ Die Runtime emittiert Diagnostics mit `xtend.epic18.rmt-action-effect-diagnostic.v1` auf dem Channel `rmt.app_platform.action_effect`. Loading, Success, Error und Cancel sind in der lokalen Runtime-History und in einem optionalen Diagnostics Hub sichtbar.
70
+
71
+ ## Boundaries
72
+
73
+ - Der RMT-Kernel importiert keine XTend-UI-Komponenten.
74
+ - Datenzugriff laeuft ueber injizierte Adapter.
75
+ - Produktlokale Action-Frameworks sind nicht Teil des Plattformvertrags.
76
+ - Produkt-Flow-Namen bleiben App-Code, nicht Framework-Defaults.
77
+ - Normale App-UI nutzt weiterhin RMT-Templates und DOM-Descriptors statt HTML-String-Renderern.
78
+
79
+ ## Handoff
80
+
81
+ `WP-E18-09` baut auf dieser Runtime auf, indem deklarative DOM- und Custom Events an Actions angeschlossen werden. Die Event-Schicht soll die Action Effect Runtime wiederverwenden, statt einen weiteren Action-Ausfuehrungspfad zu erzeugen.
@@ -0,0 +1,54 @@
1
+ # RMT App Platform Authoring
2
+
3
+ - Contract: `xtend.epic18.rmt-app-platform-authoring.v1`
4
+ - Fixture: `tests/fixtures/rmt-app-platform-authoring.rmt`
5
+ - Local Gate: `node scripts/run_xtend_tests.js rmt-app-platform-authoring --json`
6
+ - Workpackage: `WP-E18-04`
7
+
8
+ ## Zweck
9
+
10
+ Dieses Authoring-Modell definiert RMT als generische App Platform. Es ist keine
11
+ Portierung einer konkreten Produktoberflaeche. Entwickler koennen eigene
12
+ App-Domains, Record-Vertraege, Komponentenfamilien, Surfaces, State-Graphen,
13
+ Actions, DataSources, Resources und Events kombinieren.
14
+
15
+ ## Primitives
16
+
17
+ | Primitive | Zweck |
18
+ |-----------|-------|
19
+ | `app` | App-Metadaten, Shell, Domain, Record-Contract und Einstiegspunkte |
20
+ | `route` | URL- oder Navigationszustand auf Surface und Template mappen |
21
+ | `surface` | keyed App-Bereiche mit Lifecycle, Placement, State und Persistence |
22
+ | `slot` | benannte Kompositionspunkte zwischen Templates und Komponenten |
23
+ | `template` | strukturierte UI als DOM Descriptor, nicht als HTML-String |
24
+ | `component` | beliebige Custom Elements ueber einen Faehigkeitskatalog binden |
25
+ | `state` | typed App-State fuer Collections, Auswahl, Filter und Formwerte |
26
+ | `selector` | abgeleitete Lesesichten auf State |
27
+ | `derive` | computed Values mit klarem Output-Typ |
28
+ | `repeat` | keyed Listen ohne Produkt-Renderer |
29
+ | `when` | deklarative Bedingungen, Empty- und Fallback-Zustaende |
30
+ | `bind` | State, Selectors oder Derived Values auf Attribute/Properties mappen |
31
+ | `action` | deklarative Commands fuer App-Flows |
32
+ | `effect` | async Ausfuehrung mit Lanes und Feedback |
33
+ | `datasource` | Fixture-, REST-, SSR- oder spaetere Host-Datenadapter |
34
+ | `resource` | lazy/preload/cleanup Ressourcen inklusive Trusted-HTML-Sonderfall |
35
+ | `event` | scoped Event-Routing ohne impliziten globalen Event-Bus |
36
+
37
+ ## Boundaries
38
+
39
+ - `no-media-manager-product-surface-clone`
40
+ - `no-product-record-contract-required`
41
+ - `structured-ui-before-trusted-html`
42
+ - `trusted-html-explicit-boundary-only`
43
+ - `no-rmt-kernel-import-of-xtend-types`
44
+ - `no-external-innerhtml-helper-required`
45
+
46
+ Normale App-UI muss ueber strukturierte Templates modellierbar sein. HTML bleibt
47
+ eine explizite Trusted-DOM-Boundary fuer Sonderfaelle und ist nicht der
48
+ Standardweg fuer Komponentenentwicklung.
49
+
50
+ ## Handoff
51
+
52
+ `WP-E18-04` legt nur das Authoring-Modell fest. `WP-E18-05` baut danach den
53
+ sicheren DOM Descriptor Renderer und den No-Manual-HTML-Gate. `WP-E18-06`
54
+ setzt darauf die component-nativen Template Primitives um.
@@ -0,0 +1,46 @@
1
+ # RMT App Platform Fixture
2
+
3
+ WP-E18-12 liefert die generische Referenz-Fixture fuer die RMT App Platform.
4
+ Sie beweist, dass die Epic-18-Primitives nicht an eine Produktoberflaeche
5
+ gekoppelt sind: dieselben RMT-Bausteine tragen einen `generic-catalog`, eine
6
+ `admin-queue` und ein `content-board`.
7
+
8
+ ## Vertrag
9
+
10
+ - Schema: `xtend.epic18.rmt-app-platform-fixture.v1`
11
+ - Fixture Schema: `xtend.epic18.rmt-app-platform-fixture-source.v1`
12
+ - Lokaler Gate: `node scripts/run_xtend_tests.js rmt-app-platform-fixture --json`
13
+ - Package Script: `npm run test:rmt-app-platform-fixture`
14
+ - Handoff: `WP-E18-13`
15
+
16
+ ## Abgedeckte Plattformfaehigkeiten
17
+
18
+ - konfigurierbare Record-Contracts ohne feste Record-Klasse
19
+ - Listen-, Detail-, Toolbar-, Feedback- und Overlay-Komposition mit DOM
20
+ Descriptor Templates
21
+ - Actions mit Fixture-, REST-, SSR- und Host-DataSources
22
+ - Feedback-, Navigation-, Focus-, Lazy-Import- und Side-Effect-Flows
23
+ - dynamische Surfaces fuer mehrere Domains aus denselben Primitives
24
+ - Portals und Overlays inklusive Stack-Verhalten
25
+ - Resource Ownership und Cleanup fuer Streams, Observer, Timer, Object URLs und
26
+ Lazy Imports
27
+ - Scaffold Build Evidence ueber den RMT App Platform Generator
28
+
29
+ ## Grenzen
30
+
31
+ Normale RMT UI bleibt deklarativ. `innerHTML`, `outerHTML`,
32
+ `insertAdjacentHTML` und `document.write` gehoeren nicht in die App-Fixture;
33
+ der No-Manual-HTML-Gate prueft das explizit. Produktgebundene Surface-Listen
34
+ werden ebenfalls vermieden. Entwickler sollen in XTend App-Strukturen bauen
35
+ koennen, ohne externe Shell-Renderer oder lokale Registry-Umbauten zu brauchen.
36
+
37
+ ## Fixture-Artefakte
38
+
39
+ - `catalog/epic18-rmt-app-platform-fixture.js`
40
+ - `tests/fixtures/rmt-app-platform-fixture.rmt`
41
+ - `tests/rmt/rmt_app_platform_fixture_suite.js`
42
+ - `development/WP-E18-12-Generische-RMT-App-Platform-Fixture-bauen.md`
43
+
44
+ Der Gate rendert die Fixture mit dem DOM Descriptor Renderer, routet Events in
45
+ Actions, tauscht DataSources, materialisiert Surfaces, oeffnet Overlays und
46
+ belegt Cleanup durch Resource-Disposals.
@@ -0,0 +1,88 @@
1
+ # RMT App Platform Migration Guide
2
+
3
+ Dieser Guide beschreibt den Weg von externen Host-Hilfen wie
4
+ `root.innerHTML`, produktgebundenen Surface-Listen oder lokalen Registry-
5
+ Repaints hin zu nativen RMT-App-Platform-Primitives.
6
+
7
+ ## Zielbild
8
+
9
+ - Neue UI wird in RMT vNext beschrieben; DOM Descriptor, App-Platform-JSON und
10
+ Component Records sind generierter Output oder Compatibility Mirror.
11
+ - State, Selectors und Derived Values liegen in der RMT State Selector Runtime.
12
+ - Interaktionen laufen ueber deklarative Events und Actions.
13
+ - DataSources bleiben austauschbar: `fixture`, `rest`, `ssr` und `host`.
14
+ - Surfaces, Overlays, Portals und Resources werden ueber den Surface Resource
15
+ Graph materialisiert und aufgeraeumt.
16
+
17
+ ```rmt
18
+ template migration.catalog {
19
+ state records type collection initial []
20
+
21
+ selector visibleRecords from state records {
22
+ output CatalogRecord[]
23
+ }
24
+
25
+ datasource catalog from fixture records.generic-items {
26
+ contract CatalogRecord[]
27
+ }
28
+
29
+ action load-records {
30
+ effect fetch datasource catalog
31
+ on success -> reduce state.records = result.records
32
+ }
33
+
34
+ portal surface.root root "#app-root" layer surface
35
+
36
+ surface catalog.board kind workspace component x-cards {
37
+ repeat from selector visibleRecords
38
+ key record.id
39
+ portal surface.root
40
+
41
+ lane visible weight 80 {
42
+ hydrate catalog-cards from selector visibleRecords
43
+ }
44
+
45
+ on card-click target item -> action load-records {
46
+ payload source from target.dataset.source
47
+ }
48
+ }
49
+ }
50
+ ```
51
+
52
+ ## Migration
53
+
54
+ 1. Externe HTML-Host-Renderer identifizieren.
55
+ Suchen nach `innerHTML`, `outerHTML`, `insertAdjacentHTML` und
56
+ `document.write`.
57
+ 2. Shell-Struktur in RMT vNext ueberfuehren.
58
+ Normale App-UI nutzt `template`, `surface`, `portal`, `lane`, `hydrate` und
59
+ Events; `mode: "dom_descriptor"` entsteht erst im Output.
60
+ 3. Produktlisten entkoppeln.
61
+ Statt einer festen Record-Klasse werden konfigurierbare Record-Contracts
62
+ mit stabilen IDs und Keys genutzt.
63
+ 4. Interaktionen deklarieren.
64
+ DOM- oder Custom-Events erhalten `payloadContract` und routen zu Actions.
65
+ 5. DataSources austauschbar halten.
66
+ Lokale Fixture-Daten, SSR-Bootstrap, REST-Suche und Host-Mutation teilen
67
+ denselben Action-Pfad.
68
+ 6. Surface Lifecycle pruefen.
69
+ Jede Surface mit `resource`-Eintraegen braucht einen Owner, Overlays laufen ueber
70
+ Portals, und Destroy/Close muss Ressourcen freigeben.
71
+ 7. Scaffold Evidence erzeugen.
72
+ Der RMT App Platform Builder schreibt Diagnostics, Source Map und Build
73
+ Report.
74
+
75
+ ## Referenz
76
+
77
+ Die Referenz-Fixture liegt in `tests/fixtures/rmt-app-platform-fixture.rmt` und
78
+ belegt `generic-catalog`, `admin-queue` und `content-board` mit denselben
79
+ Primitives.
80
+
81
+ ```bash
82
+ node scripts/run_xtend_tests.js rmt-app-platform-fixture --json
83
+ ```
84
+
85
+ ## Grenze
86
+
87
+ Trusted HTML bleibt ein expliziter Sonderfall mit Trusted-DOM-Boundary. Normale
88
+ App-UI darf keine HTML-Strings als Renderpfad verwenden.
@@ -0,0 +1,79 @@
1
+ # RMT App Platform Tooling
2
+
3
+ - Contract: `xtend.epic18.rmt-app-platform-tooling.v1`
4
+ - Gate: `node scripts/run_xtend_tests.js rmt-app-platform-tooling --json`
5
+ - Workpackage: `WP-E18-11`
6
+ - Handoff: `WP-E18-12`
7
+
8
+ ## Ziel
9
+
10
+ RMT App Sources sind jetzt vor der Runtime pruefbar und buildfaehig. Das
11
+ Tooling erzeugt Diagnostics, Source Maps und Scaffold Reports fuer generische
12
+ App-Platform-Primitives wie Surfaces, Overlays, Portale, Resources, Actions,
13
+ Events, DataSources und State.
14
+
15
+ Der Slice ist bewusst keine Media-Manager-Shell. Er liefert Werkzeuge, mit
16
+ denen Entwickler eigene App-Strukturen in XTend/RMT nativ anlegen koennen,
17
+ ohne produktseitige `innerHTML`-Renderer oder eigene Mini-Frameworks.
18
+
19
+ ## Diagnostics
20
+
21
+ Der App-Platform-Linter blockiert typische spaete Runtime-Fehler bereits beim
22
+ Authoring:
23
+
24
+ - `rmt.app.no-manual-shell.html-sink` fuer `innerHTML`, `outerHTML`,
25
+ `insertAdjacentHTML` oder `document.write` in normaler App-UI.
26
+ - `rmt.app.unsafe-html.boundary-missing` fuer HTML-Fragmente ohne explizite
27
+ Trusted-DOM-Boundary.
28
+ - `rmt.app.repeat.key.missing` fuer wiederholte Surfaces ohne stabilen Key.
29
+ - `rmt.app.event.payload-contract.missing` fuer Events mit Action-Ziel ohne
30
+ Payload Contract.
31
+ - `rmt.app.resource.ownership.missing` fuer nicht klar besessene Ressourcen.
32
+ - `rmt.app.resource.unresolved`, `rmt.app.portal.unresolved` und
33
+ `rmt.app.surface.source.unresolved` fuer fehlerhafte App-Graph-Referenzen.
34
+
35
+ Die Regeln laufen als eigener App-Platform-Policy-Rule im bestehenden
36
+ RMT-Linter und als direkter Analyzer in
37
+ `./rmt-language/app-platform-tooling`.
38
+
39
+ ## LSP
40
+
41
+ Completion und Hover kennen die neuen Primitives:
42
+
43
+ - Portal-IDs und Portal-Policies wie `stacked`, `toast-region` und
44
+ `clipping-escape`.
45
+ - Overlay-Kinds wie `tooltip`, `toast`, `popover`, `lightbox`, `menu` und
46
+ `dialog`.
47
+ - Resource-Kinds wie `object-url`, `stream`, `observer`, `timer` und
48
+ `lazy-import`.
49
+ - Event-Kinds und Surface-Initialstates.
50
+
51
+ Damit koennen App-Autoren RMT-Dokumente ohne Produkt-Surface-Taxonomie und ohne
52
+ externe Hilfslisten bearbeiten.
53
+
54
+ ## Scaffold Build
55
+
56
+ Der Builder registriert den Befehl `rmt-app-platform`. Er liest eine `.rmt`
57
+ App Source und erzeugt unter `.xtend-build`:
58
+
59
+ - `*.app-platform-diagnostics.json`
60
+ - `*.app-platform-source-map.json`
61
+ - `*.app-platform-build.json`
62
+
63
+ Die Artefakte laufen ueber den Epic-17 WritePlan und tragen Scaffold-
64
+ Ownership. `--check` kann damit pruefen, ob lokale Build-Artefakte aktuell
65
+ sind.
66
+
67
+ ```bash
68
+ node scripts/run_xtend_tests.js rmt-app-platform-tooling --json
69
+ node xtend-builder/lib/cli.js rmt-app-platform --source tests/fixtures/rmt-app-platform-tooling.rmt
70
+ ```
71
+
72
+ ## Grenzen
73
+
74
+ - Keine Produkt-Surface-Liste und kein Media-Manager-spezifischer Registry-
75
+ Repaint.
76
+ - Keine normalen UI-HTML-Sinks ausserhalb einer Trusted-DOM-Boundary.
77
+ - Keine Imports aus XTend-Komponenten in den RMT Kernel.
78
+ - Das Tooling baut Reports, Diagnostics und Source Maps; die produktnahe
79
+ generische App-Fixture folgt in `WP-E18-12`.
@@ -0,0 +1,57 @@
1
+ # RMT Component Template Primitives
2
+
3
+ - Contract: `xtend.epic18.rmt-component-template-primitives.v1`
4
+ - Fixture: `tests/fixtures/rmt-component-template-primitives.rmt`
5
+ - Runtime Basis: `xtendrmt/rmt-dom-descriptor-renderer.js`
6
+ - Local Gate: `node scripts/run_xtend_tests.js rmt-component-template-primitives --json`
7
+ - Workpackage: `WP-E18-06`
8
+ - Handoff: `WP-E18-07`
9
+
10
+ RMT kann XTend-Komponenten jetzt nativ komponieren, ohne dass Host-Apps
11
+ HTML-Strings zusammenbauen. Der Slice erweitert den DOM Descriptor Renderer um
12
+ component-nahe Primitives fuer App-Shells, Listen, Formulare, Tooltips, Icons,
13
+ leere Zustaende und Fehlerzustaende.
14
+
15
+ ## Primitives
16
+
17
+ | Primitive | Zweck |
18
+ |-----------|-------|
19
+ | `component` | Loest eine Component-ID auf ein Custom Element wie `x-section`, `x-card`, `x-tooltip` oder beliebige Entwickler-Tags auf. |
20
+ | `props` | Setzt sichere DOM Properties und spiegelt primitive Werte als Attribute. |
21
+ | `attributes` | Setzt sichere Attribute ohne Inline-Event- oder URL-Sinks. |
22
+ | `parts` | Schreibt CSS Parts fuer themingfaehige Komponenten. |
23
+ | `slots` | Fuellt Slots mit Text, Templates, Komponenten oder Fragmenten. |
24
+ | `text` | Erzeugt Textknoten ueber `createTextNode`. |
25
+ | `when` | Rendert bedingte Teilbaeume. |
26
+ | `repeat` | Rendert Listen und nutzt `key` fuer stabile Knoten. |
27
+ | `empty` | Rendert einen expliziten leeren Zustand. |
28
+ | `fallback` | Rendert deklarative Ersatzinhalte. |
29
+ | `key` | Markiert wiederverwendbare Listenelemente mit `data-rmt-key`. |
30
+ | `ref` | Schreibt `data-rmt-ref` und legt die Elementreferenz in `refs` ab. |
31
+ | `class` | Mappt Klassen aus Strings, Arrays oder bedingten Objekten. |
32
+ | `style-token` | Spiegelt Design Tokens als `data-style-token-*` und `--xtend-*`. |
33
+
34
+ ## Component-Familien
35
+
36
+ Die Fixture beweist generische Familien statt Produkt-Surfaces:
37
+ Icons, Tooltips, Form Controls (`x-input`, `x-select`, `x-checkbox`),
38
+ Navigation, Listen, Selection, Empty State, Error State und freie Custom
39
+ Elements. Die Komponenten bleiben Entwickler-definiert; RMT kennt nur
40
+ Descriptoren und Adapterfaehigkeiten.
41
+
42
+ ## Component Capability Registry
43
+
44
+ Die vNext-Schicht fuehrt diese Primitives ueber
45
+ `xtendrmt/rmt-component-capability-registry.js` mit dem ganzen XTend-
46
+ Component-Stack zusammen. Die Registry normalisiert alle 44 public
47
+ Manifest-Eintraege, klassifiziert 40 renderbare UI-Komponenten und verbindet
48
+ Component Contracts, `xtendRmtMetadata`, `observedAttributes`, Events, Slots,
49
+ Parts, Form-State und Lazy Import mit den generischen DOM Descriptoren.
50
+
51
+ Damit bleiben `component`, `props`, `attributes`, `parts`, `slots`, `repeat`
52
+ und `key` dieselben Primitives, aber sie bekommen eine stack-weite
53
+ Kompatibilitaetsmatrix. Produktcode braucht keine Shadow-DOM-Patches, keine
54
+ privaten Component-Maps und keine komponentenspezifischen Renderer.
55
+
56
+ Details stehen in
57
+ [RMT vNext Component Primitives und XTend UI](./rmt-vnext-component-primitives.md).
@@ -0,0 +1,64 @@
1
+ # RMT DOM Descriptor Renderer
2
+
3
+ - Contract: `xtend.epic18.rmt-dom-descriptor-renderer.v1`
4
+ - Fixture: `tests/fixtures/rmt-dom-descriptor-renderer.rmt`
5
+ - Runtime: `xtendrmt/rmt-dom-descriptor-renderer.js`
6
+ - Local Gate: `node scripts/run_xtend_tests.js rmt-dom-descriptor-renderer --json`
7
+ - Workpackage: `WP-E18-05`
8
+
9
+ Der Renderer fuehrt das `WP-E18-04` Authoring-Modell als generische App
10
+ Platform aus. Normale App-UI wird aus strukturierten Deskriptoren gebaut:
11
+ `createElement`, `createTextNode`, `createDocumentFragment`,
12
+ `replaceChildren`, sichere Attribute/Properties und keyed Child-Reuse.
13
+
14
+ ## Descriptor-Regeln
15
+
16
+ | Bereich | Regel |
17
+ |---------|-------|
18
+ | Shell | Root-Render-Units verwenden `replaceChildren` und markieren den Root mit `data-rmt-rendered-shell`. |
19
+ | Elemente | Tags muessen einfache Custom-Element- oder HTML-Tagnamen sein. |
20
+ | Attribute | Inline-Handler, `srcdoc` und unsichere URL-Werte werden abgelehnt. |
21
+ | Properties | HTML-Sink-Properties sind fuer normale UI gesperrt. |
22
+ | Listen | `renderKeyed` erhaelt Knoten ueber `data-rmt-key` und patcht Attribute/Children. |
23
+ | Events | Events laufen ueber `addEventListener`, nicht ueber String-Attribute. |
24
+ | Diagnostics | Runtimefehler enthalten RMT-Source-Informationen wie `documentId`, `templateId` und `pointer`. |
25
+
26
+ ## Component Registry Option
27
+
28
+ `render(...)` und `renderKeyed(...)` akzeptieren `componentRegistry`. Wenn ein
29
+ Descriptor `type: "component"` nutzt, normalisiert der Renderer Tag,
30
+ Attribute, Properties, Slots, Parts und Event-Bindings ueber die RMT vNext
31
+ Component Capability Registry:
32
+
33
+ ```js
34
+ renderer.renderKeyed(root, descriptors, {
35
+ componentRegistry: registry,
36
+ dispatchEvent,
37
+ stateBridge
38
+ });
39
+ ```
40
+
41
+ Die Registry bindet XTend-Komponenten ueber public DOM APIs. Sie liest
42
+ Component Contracts und RMT-Metadaten, fuehrt lazy Import ueber Manifest-Pfade
43
+ aus und schreibt sichere Capability-Marker wie
44
+ `data-rmt-component-capability`. Der Renderer bleibt dadurch generisch: keine
45
+ Shadow-DOM-Patches, keine privaten Component-Maps und keine HTML-Sinks fuer
46
+ normale RMT-App-UI.
47
+
48
+ ## Trusted Boundary
49
+
50
+ HTML-Fragmente sind kein normaler Template-Pfad. Sie duerfen nur als
51
+ `trusted_html` mit `xtend.rmt.trusted-dom-boundary.explicit` und einem
52
+ externen `trustedDomRenderer` gerendert werden. Der Standard-Renderer erzeugt
53
+ keine HTML-Fragmente aus Strings.
54
+
55
+ ## No-Manual-HTML
56
+
57
+ Das Gate `createNoManualHtmlGate()` blockiert normale App-Shells mit
58
+ manuellen HTML-Sinks wie `root.innerHTML`, `element.innerHTML`,
59
+ `template.innerHTML`, `outerHTML`, `insertAdjacentHTML`, `document.write` und
60
+ `createContextualFragment`.
61
+
62
+ `WP-E18-06` und die vNext Component Capability Registry bauen auf diesem Slice
63
+ component-native Template-Primitives auf, ohne externe HTML-Hilfsrenderer
64
+ vorauszusetzen.