@ccslabs/xtend 0.1.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (664) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/LICENSE +201 -0
  3. package/README.md +184 -0
  4. package/a11y/motion-contrast-policy.d.ts +32 -0
  5. package/a11y/motion-contrast-policy.js +261 -0
  6. package/a11y/runtime-a11y-contract.d.ts +44 -0
  7. package/a11y/runtime-a11y-contract.js +385 -0
  8. package/a11y/screenreader-signals.d.ts +32 -0
  9. package/a11y/screenreader-signals.js +372 -0
  10. package/api.d.ts +168 -0
  11. package/api.js +864 -0
  12. package/catalog/catalog-public-types.d.ts +66 -0
  13. package/catalog/component-catalog-coverage.d.ts +20 -0
  14. package/catalog/component-catalog-coverage.js +377 -0
  15. package/catalog/component-long-tail-migration.d.ts +18 -0
  16. package/catalog/component-long-tail-migration.js +305 -0
  17. package/catalog/component-regression-priority.d.ts +20 -0
  18. package/catalog/component-regression-priority.js +305 -0
  19. package/catalog/enterprise-component-flex-release-handoff.d.ts +32 -0
  20. package/catalog/enterprise-component-flex-release-handoff.js +437 -0
  21. package/catalog/enterprise-component-style-audit.d.ts +22 -0
  22. package/catalog/enterprise-component-style-audit.js +353 -0
  23. package/catalog/enterprise-form-control-theme-a11y.d.ts +19 -0
  24. package/catalog/enterprise-form-control-theme-a11y.js +220 -0
  25. package/catalog/enterprise-icon-control-audit.d.ts +21 -0
  26. package/catalog/enterprise-icon-control-audit.js +258 -0
  27. package/catalog/enterprise-layout-display-media-tokenization.d.ts +20 -0
  28. package/catalog/enterprise-layout-display-media-tokenization.js +237 -0
  29. package/catalog/enterprise-navigation-routing-state-hardening.d.ts +20 -0
  30. package/catalog/enterprise-navigation-routing-state-hardening.js +255 -0
  31. package/catalog/enterprise-overlay-mode-token-parity.d.ts +15 -0
  32. package/catalog/enterprise-overlay-mode-token-parity.js +178 -0
  33. package/catalog/enterprise-third-party-authoring-guide.d.ts +23 -0
  34. package/catalog/enterprise-third-party-authoring-guide.js +310 -0
  35. package/catalog/enterprise-visual-dom-snapshot-matrix.d.ts +31 -0
  36. package/catalog/enterprise-visual-dom-snapshot-matrix.js +357 -0
  37. package/catalog/epic10-existing-component-metadata.d.ts +25 -0
  38. package/catalog/epic10-existing-component-metadata.js +534 -0
  39. package/catalog/epic10-p0-component-wave.d.ts +28 -0
  40. package/catalog/epic10-p0-component-wave.js +688 -0
  41. package/catalog/epic10-platform-gates.d.ts +31 -0
  42. package/catalog/epic10-platform-gates.js +425 -0
  43. package/catalog/epic10-release-handoff.d.ts +30 -0
  44. package/catalog/epic10-release-handoff.js +195 -0
  45. package/catalog/epic11-enterprise-ux-handoff.d.ts +29 -0
  46. package/catalog/epic11-enterprise-ux-handoff.js +403 -0
  47. package/catalog/epic12-docs-adoption.d.ts +29 -0
  48. package/catalog/epic12-docs-adoption.js +183 -0
  49. package/catalog/epic12-rc0-gate-matrix.d.ts +36 -0
  50. package/catalog/epic12-rc0-gate-matrix.js +439 -0
  51. package/catalog/epic12-rc0-handoff.d.ts +30 -0
  52. package/catalog/epic12-rc0-handoff.js +385 -0
  53. package/catalog/epic13-conditional-network-evidence-ci.d.ts +35 -0
  54. package/catalog/epic13-conditional-network-evidence-ci.js +278 -0
  55. package/catalog/epic13-conditional-network-evidence.d.ts +34 -0
  56. package/catalog/epic13-conditional-network-evidence.js +280 -0
  57. package/catalog/epic13-docs-rmt-production-hardening.d.ts +39 -0
  58. package/catalog/epic13-docs-rmt-production-hardening.js +286 -0
  59. package/catalog/epic13-hydration-performance-closure.d.ts +33 -0
  60. package/catalog/epic13-hydration-performance-closure.js +234 -0
  61. package/catalog/epic13-known-residual-triage.d.ts +32 -0
  62. package/catalog/epic13-known-residual-triage.js +339 -0
  63. package/catalog/epic13-package-export-lock.d.ts +41 -0
  64. package/catalog/epic13-package-export-lock.js +604 -0
  65. package/catalog/epic13-prod-browser-csp-smoke.d.ts +35 -0
  66. package/catalog/epic13-prod-browser-csp-smoke.js +218 -0
  67. package/catalog/epic13-rc1-gate-matrix-ci-handoff.d.ts +36 -0
  68. package/catalog/epic13-rc1-gate-matrix-ci-handoff.js +418 -0
  69. package/catalog/epic13-rc1-migration-notes.d.ts +36 -0
  70. package/catalog/epic13-rc1-migration-notes.js +271 -0
  71. package/catalog/epic13-rc1-readiness.d.ts +33 -0
  72. package/catalog/epic13-rc1-readiness.js +487 -0
  73. package/catalog/epic13-release-owner-acceptance.d.ts +33 -0
  74. package/catalog/epic13-release-owner-acceptance.js +354 -0
  75. package/catalog/epic13-release-report-pack-dry-run-evidence.d.ts +36 -0
  76. package/catalog/epic13-release-report-pack-dry-run-evidence.js +253 -0
  77. package/catalog/epic13-rmt-production-readiness.d.ts +35 -0
  78. package/catalog/epic13-rmt-production-readiness.js +314 -0
  79. package/catalog/epic13-trusted-dom-boundary.d.ts +36 -0
  80. package/catalog/epic13-trusted-dom-boundary.js +230 -0
  81. package/catalog/epic13-visual-owner-artifact.d.ts +35 -0
  82. package/catalog/epic13-visual-owner-artifact.js +233 -0
  83. package/catalog/epic14-lsp-handoff.d.ts +28 -0
  84. package/catalog/epic14-lsp-handoff.js +312 -0
  85. package/catalog/epic14-rmt-tooling.d.ts +33 -0
  86. package/catalog/epic14-rmt-tooling.js +282 -0
  87. package/catalog/surface-manager-adapter-runtime.d.ts +37 -0
  88. package/catalog/surface-manager-adapter-runtime.js +203 -0
  89. package/catalog/surface-manager-browser-lab.d.ts +39 -0
  90. package/catalog/surface-manager-browser-lab.js +225 -0
  91. package/catalog/surface-manager-controller.d.ts +43 -0
  92. package/catalog/surface-manager-controller.js +290 -0
  93. package/catalog/surface-manager-layout-engines.d.ts +32 -0
  94. package/catalog/surface-manager-layout-engines.js +161 -0
  95. package/catalog/surface-manager-lazy-loading.d.ts +35 -0
  96. package/catalog/surface-manager-lazy-loading.js +173 -0
  97. package/catalog/surface-manager-materialization.d.ts +37 -0
  98. package/catalog/surface-manager-materialization.js +202 -0
  99. package/catalog/surface-manager-native-rmt-surfaces.d.ts +48 -0
  100. package/catalog/surface-manager-native-rmt-surfaces.js +325 -0
  101. package/catalog/surface-manager-overlay-bridge.d.ts +42 -0
  102. package/catalog/surface-manager-overlay-bridge.js +247 -0
  103. package/catalog/surface-manager-persistence.d.ts +37 -0
  104. package/catalog/surface-manager-persistence.js +178 -0
  105. package/catalog/surface-manager-quality-gates.d.ts +48 -0
  106. package/catalog/surface-manager-quality-gates.js +324 -0
  107. package/catalog/surface-manager-release-handoff.d.ts +47 -0
  108. package/catalog/surface-manager-release-handoff.js +274 -0
  109. package/catalog/surface-manager-remote-policy.d.ts +34 -0
  110. package/catalog/surface-manager-remote-policy.js +199 -0
  111. package/catalog/surface-manager-rmt-authoring.d.ts +44 -0
  112. package/catalog/surface-manager-rmt-authoring.js +368 -0
  113. package/catalog/surface-manager-route-lifecycle.d.ts +32 -0
  114. package/catalog/surface-manager-route-lifecycle.js +162 -0
  115. package/catalog/surface-manager-runtime-release-handoff.d.ts +36 -0
  116. package/catalog/surface-manager-runtime-release-handoff.js +245 -0
  117. package/catalog/surface-manager-side-panel-runtime.d.ts +46 -0
  118. package/catalog/surface-manager-side-panel-runtime.js +307 -0
  119. package/catalog/surface-manager-stack-policy.d.ts +32 -0
  120. package/catalog/surface-manager-stack-policy.js +169 -0
  121. package/catalog/surface-manager-window-runtime.d.ts +45 -0
  122. package/catalog/surface-manager-window-runtime.js +285 -0
  123. package/catalog/surface-manager-workbench-fixture.d.ts +50 -0
  124. package/catalog/surface-manager-workbench-fixture.js +315 -0
  125. package/catalog/type-exports-api.js +236 -0
  126. package/catalog/type-exports-builder.js +405 -0
  127. package/catalog/type-exports-catalog.js +394 -0
  128. package/catalog/type-exports-loader.js +266 -0
  129. package/catalog/type-exports-policy.js +461 -0
  130. package/catalog/type-exports-rmt.js +407 -0
  131. package/catalog/type-exports-vendor.js +365 -0
  132. package/catalog/type-exports.js +574 -0
  133. package/components/icon-packs/core.js +154 -0
  134. package/components/icon-packs/lucide.js +136 -0
  135. package/components/manifest.json +44 -0
  136. package/components/prism.d.ts +73 -0
  137. package/components/prism.js +300 -0
  138. package/components/turndown.d.ts +34 -0
  139. package/components/turndown.js +107 -0
  140. package/components/x-rmt-lifecycle-demo-build.d.ts +78 -0
  141. package/components/x-rmt-lifecycle-demo-build.js +1175 -0
  142. package/components/x-rmt-lifecycle-demo.d.ts +83 -0
  143. package/components/x-rmt-lifecycle-demo.js +1175 -0
  144. package/components/xalert.d.ts +42 -0
  145. package/components/xalert.js +538 -0
  146. package/components/xbutton.d.ts +127 -0
  147. package/components/xbutton.js +612 -0
  148. package/components/xcalendar.d.ts +39 -0
  149. package/components/xcalendar.js +338 -0
  150. package/components/xcards.d.ts +34 -0
  151. package/components/xcards.js +253 -0
  152. package/components/xcheckbox.d.ts +48 -0
  153. package/components/xcheckbox.js +448 -0
  154. package/components/xcode.d.ts +35 -0
  155. package/components/xcode.js +370 -0
  156. package/components/xdialog.d.ts +48 -0
  157. package/components/xdialog.js +763 -0
  158. package/components/xdrawer.d.ts +61 -0
  159. package/components/xdrawer.js +654 -0
  160. package/components/xfooter.d.ts +41 -0
  161. package/components/xfooter.js +351 -0
  162. package/components/xform.d.ts +43 -0
  163. package/components/xform.js +456 -0
  164. package/components/xheader.d.ts +68 -0
  165. package/components/xheader.js +1253 -0
  166. package/components/xhero.d.ts +42 -0
  167. package/components/xhero.js +475 -0
  168. package/components/xicon.d.ts +146 -0
  169. package/components/xicon.js +688 -0
  170. package/components/xinput.d.ts +37 -0
  171. package/components/xinput.js +444 -0
  172. package/components/xlightbox.d.ts +48 -0
  173. package/components/xlightbox.js +571 -0
  174. package/components/xlink.d.ts +63 -0
  175. package/components/xlink.js +565 -0
  176. package/components/xmasonry.d.ts +35 -0
  177. package/components/xmasonry.js +666 -0
  178. package/components/xmenu.d.ts +118 -0
  179. package/components/xmenu.js +1005 -0
  180. package/components/xmodal.d.ts +64 -0
  181. package/components/xmodal.js +831 -0
  182. package/components/xplayer.d.ts +57 -0
  183. package/components/xplayer.js +1748 -0
  184. package/components/xpopover.d.ts +54 -0
  185. package/components/xpopover.js +466 -0
  186. package/components/xprogress.d.ts +40 -0
  187. package/components/xprogress.js +345 -0
  188. package/components/xradio.d.ts +50 -0
  189. package/components/xradio.js +474 -0
  190. package/components/xrouter.d.ts +244 -0
  191. package/components/xrouter.js +1841 -0
  192. package/components/xsection.d.ts +34 -0
  193. package/components/xsection.js +253 -0
  194. package/components/xselect.d.ts +46 -0
  195. package/components/xselect.js +463 -0
  196. package/components/xsidepanel.d.ts +56 -0
  197. package/components/xsidepanel.js +728 -0
  198. package/components/xspinner.d.ts +38 -0
  199. package/components/xspinner.js +388 -0
  200. package/components/xstate.d.ts +137 -0
  201. package/components/xstate.js +493 -0
  202. package/components/xstatus.d.ts +41 -0
  203. package/components/xstatus.js +381 -0
  204. package/components/xsummary.d.ts +43 -0
  205. package/components/xsummary.js +293 -0
  206. package/components/xsurfacemanager-controller.d.ts +130 -0
  207. package/components/xsurfacemanager-controller.js +699 -0
  208. package/components/xsurfacemanager.d.ts +452 -0
  209. package/components/xsurfacemanager.js +3775 -0
  210. package/components/xsurfaceoverlay-bridge.d.ts +43 -0
  211. package/components/xsurfaceoverlay-bridge.js +238 -0
  212. package/components/xsurfacewindow.d.ts +50 -0
  213. package/components/xsurfacewindow.js +576 -0
  214. package/components/xtabs.d.ts +73 -0
  215. package/components/xtabs.js +611 -0
  216. package/components/xtend-public-types.d.ts +208 -0
  217. package/components/xtextarea.d.ts +46 -0
  218. package/components/xtextarea.js +451 -0
  219. package/components/xtheme.d.ts +253 -0
  220. package/components/xtheme.js +1438 -0
  221. package/components/xtoast.d.ts +39 -0
  222. package/components/xtoast.js +389 -0
  223. package/components/xtooltip.d.ts +53 -0
  224. package/components/xtooltip.js +432 -0
  225. package/components/xtype.d.ts +42 -0
  226. package/components/xtype.js +244 -0
  227. package/components/xutils.d.ts +164 -0
  228. package/components/xutils.js +496 -0
  229. package/components/xwriter.d.ts +67 -0
  230. package/components/xwriter.js +854 -0
  231. package/design-tokens/themes/enterprise-light.json +40 -0
  232. package/design-tokens/themes/xtend-signature.json +126 -0
  233. package/design-tokens/xtend-design-tokens.d.ts +95 -0
  234. package/design-tokens/xtend-design-tokens.js +395 -0
  235. package/design-tokens/xtheme-token-alias-layer.d.ts +84 -0
  236. package/design-tokens/xtheme-token-alias-layer.js +423 -0
  237. package/docs/.htaccess +51 -0
  238. package/docs/README.md +340 -0
  239. package/docs/XTend-ADR.md +221 -0
  240. package/docs/a11y-keyboard-smokes.md +62 -0
  241. package/docs/about.md +18 -0
  242. package/docs/api.md +157 -0
  243. package/docs/best-practices.md +76 -0
  244. package/docs/component-catalog-coverage.md +58 -0
  245. package/docs/component-lab.md +103 -0
  246. package/docs/component-long-tail-migration.md +41 -0
  247. package/docs/component-platform.md +159 -0
  248. package/docs/component-ux-app-authoring.md +130 -0
  249. package/docs/component-ux-authoring.md +96 -0
  250. package/docs/component-ux-gates.md +45 -0
  251. package/docs/components/x-rmt-lifecycle-demo-build.md +60 -0
  252. package/docs/components/xalert.md +81 -0
  253. package/docs/components/xbutton.md +103 -0
  254. package/docs/components/xcalendar.md +82 -0
  255. package/docs/components/xcards.md +128 -0
  256. package/docs/components/xcheckbox.md +102 -0
  257. package/docs/components/xcode.md +126 -0
  258. package/docs/components/xdialog.md +92 -0
  259. package/docs/components/xdrawer.md +84 -0
  260. package/docs/components/xfooter.md +126 -0
  261. package/docs/components/xform.md +128 -0
  262. package/docs/components/xheader.md +308 -0
  263. package/docs/components/xhero.md +142 -0
  264. package/docs/components/xicon.md +125 -0
  265. package/docs/components/xinput.md +129 -0
  266. package/docs/components/xlightbox.md +98 -0
  267. package/docs/components/xlink.md +109 -0
  268. package/docs/components/xmasonry.md +124 -0
  269. package/docs/components/xmenu.md +158 -0
  270. package/docs/components/xmodal.md +82 -0
  271. package/docs/components/xplayer.md +104 -0
  272. package/docs/components/xpopover.md +67 -0
  273. package/docs/components/xprogress.md +56 -0
  274. package/docs/components/xradio.md +103 -0
  275. package/docs/components/xrouter.md +260 -0
  276. package/docs/components/xsection.md +125 -0
  277. package/docs/components/xselect.md +105 -0
  278. package/docs/components/xsidepanel.md +30 -0
  279. package/docs/components/xspinner.md +102 -0
  280. package/docs/components/xstate.md +148 -0
  281. package/docs/components/xstatus.md +55 -0
  282. package/docs/components/xsummary.md +78 -0
  283. package/docs/components/xsurfacemanager.md +27 -0
  284. package/docs/components/xsurfacewindow.md +21 -0
  285. package/docs/components/xtabs.md +160 -0
  286. package/docs/components/xtextarea.md +98 -0
  287. package/docs/components/xtheme.md +167 -0
  288. package/docs/components/xtoast.md +62 -0
  289. package/docs/components/xtooltip.md +66 -0
  290. package/docs/components/xtype.md +82 -0
  291. package/docs/components/xutils.md +144 -0
  292. package/docs/components/xwriter.md +94 -0
  293. package/docs/components.md +117 -0
  294. package/docs/conditional-network-evidence-ci.md +38 -0
  295. package/docs/conditional-network-evidence.md +50 -0
  296. package/docs/core-migration-guide.md +110 -0
  297. package/docs/design-tokens.md +116 -0
  298. package/docs/docs-rmt-production-hardening.md +31 -0
  299. package/docs/enterprise-adoption.md +411 -0
  300. package/docs/enterprise-component-flex-release-handoff.md +129 -0
  301. package/docs/epic10-platform-gates.md +62 -0
  302. package/docs/epic10-release-handoff.md +81 -0
  303. package/docs/epic11-enterprise-ux-handoff.md +70 -0
  304. package/docs/epic12-rc0-handoff.md +61 -0
  305. package/docs/existing-component-metadata.md +67 -0
  306. package/docs/hydration-performance-closure.md +34 -0
  307. package/docs/hydration-policies.md +71 -0
  308. package/docs/index.php +1625 -0
  309. package/docs/known-residual-triage.md +22 -0
  310. package/docs/manifest-import-policy.md +79 -0
  311. package/docs/manifest.md +106 -0
  312. package/docs/menu.json +1190 -0
  313. package/docs/motion-contrast.md +67 -0
  314. package/docs/package-export-lock.md +44 -0
  315. package/docs/performance-measurements.md +106 -0
  316. package/docs/performance-regression.md +89 -0
  317. package/docs/performance.md +94 -0
  318. package/docs/previews/README.md +17 -0
  319. package/docs/prod-browser-csp-smokes.md +40 -0
  320. package/docs/public-component-types.md +79 -0
  321. package/docs/quick-start-guide.md +152 -0
  322. package/docs/rc0-adoption-guide.md +102 -0
  323. package/docs/rc0-gate-matrix.md +58 -0
  324. package/docs/rc1-gate-matrix-ci-handoff.md +56 -0
  325. package/docs/rc1-migration-notes.md +69 -0
  326. package/docs/rc1-readiness.md +46 -0
  327. package/docs/release-owner-acceptance.md +56 -0
  328. package/docs/release-report-pack-dry-run-evidence.md +39 -0
  329. package/docs/rmt-dsl-authoring-polish.md +122 -0
  330. package/docs/rmt-first-demo-app.md +77 -0
  331. package/docs/rmt-first-xtend-apps.md +105 -0
  332. package/docs/rmt-kernel-panic-recovery-incident-handoff.md +61 -0
  333. package/docs/rmt-kernel-security-hardening-migration.md +50 -0
  334. package/docs/rmt-kernel-trusted-output-authoring.md +69 -0
  335. package/docs/rmt-language-server.md +177 -0
  336. package/docs/rmt-lifecycle-demo.md +25 -0
  337. package/docs/rmt-linter.md +140 -0
  338. package/docs/rmt-production-readiness.md +63 -0
  339. package/docs/rmt-tooling-release-gates.md +77 -0
  340. package/docs/rmt-vnext-authoring.md +60 -0
  341. package/docs/rmt-vnext-cross-surface-events.md +68 -0
  342. package/docs/rmt-vnext-enterprise-mfe-handoff.md +70 -0
  343. package/docs/rmt-vnext-migration-notes.md +62 -0
  344. package/docs/rmt-vnext-release-handoff.md +69 -0
  345. package/docs/rmt-vnext-remote-surfaces.md +90 -0
  346. package/docs/rmt-vnext-surface-registry-enterprise.md +76 -0
  347. package/docs/screenreader-signals.md +56 -0
  348. package/docs/supply-chain-gates.md +100 -0
  349. package/docs/surface-manager-authoring-guide.md +94 -0
  350. package/docs/surface-manager-browser-lab.md +45 -0
  351. package/docs/surface-manager-component-lab.md +43 -0
  352. package/docs/surface-manager-controller.md +66 -0
  353. package/docs/surface-manager-layout-engines.md +32 -0
  354. package/docs/surface-manager-lazy-hydration.md +63 -0
  355. package/docs/surface-manager-migration-guide.md +94 -0
  356. package/docs/surface-manager-native-rmt-surfaces.md +38 -0
  357. package/docs/surface-manager-overlay-bridge.md +53 -0
  358. package/docs/surface-manager-persistence.md +30 -0
  359. package/docs/surface-manager-quality-gates.md +51 -0
  360. package/docs/surface-manager-release-handoff.md +68 -0
  361. package/docs/surface-manager-remote-policy.md +54 -0
  362. package/docs/surface-manager-rmt-authoring.md +86 -0
  363. package/docs/surface-manager-route-lifecycle.md +59 -0
  364. package/docs/surface-manager-runtime-release-handoff.md +69 -0
  365. package/docs/surface-manager-side-panel-runtime.md +36 -0
  366. package/docs/surface-manager-stack-policy.md +39 -0
  367. package/docs/surface-manager-window-runtime.md +47 -0
  368. package/docs/surface-manager-workbench-fixture.md +43 -0
  369. package/docs/third-party-design-authoring.md +406 -0
  370. package/docs/trusted-dom-boundary-browser-proof.md +32 -0
  371. package/docs/trusted-dom-sanitizing.md +110 -0
  372. package/docs/type-exports.md +61 -0
  373. package/docs/typescript-components.md +63 -0
  374. package/docs/utils/fabric-runtime.js +650 -0
  375. package/docs/utils/pageloader.js +2823 -0
  376. package/docs/utils/parsedown.php +298 -0
  377. package/docs/visual-browser-regression.md +83 -0
  378. package/docs/visual-owner-artifacts.md +46 -0
  379. package/docs/visual-snapshot-automation.md +87 -0
  380. package/docs/xtend-api-types.md +55 -0
  381. package/docs/xtend-builder-types.md +55 -0
  382. package/docs/xtend-catalog-types.md +44 -0
  383. package/docs/xtend-fabric-rmt-lane-mapping.md +143 -0
  384. package/docs/xtend-fabric.md +474 -0
  385. package/docs/xtend-loader-types.md +58 -0
  386. package/docs/xtend-loader.md +265 -0
  387. package/docs/xtend-policy-types.md +38 -0
  388. package/docs/xtend-rmt-types.md +39 -0
  389. package/docs/xtend-vendor-types.md +36 -0
  390. package/docs/xtendrmt-app-dsl.md +269 -0
  391. package/docs/xtendrmt-migration-guide.md +235 -0
  392. package/docs/xtendrmt-native-authoring.md +337 -0
  393. package/docs/xtendrmt-overview.md +89 -0
  394. package/docs/xtendrmt-parsedown-docs.rmt +956 -0
  395. package/docs/xtendrmt-parsedown-scheduling.md +301 -0
  396. package/docs/xtendrmt-runtime-bridge.md +155 -0
  397. package/fabric/hydration-policy.d.ts +27 -0
  398. package/fabric/hydration-policy.js +306 -0
  399. package/fabric/package.json +58 -0
  400. package/fabric/rmt-lane-mapping.d.ts +47 -0
  401. package/fabric/rmt-lane-mapping.js +504 -0
  402. package/fabric/xtend-fabric.d.ts +81 -0
  403. package/fabric/xtend-fabric.js +2669 -0
  404. package/fabric/xtend-policy-public-types.d.ts +135 -0
  405. package/package.json +8225 -0
  406. package/security/README.md +54 -0
  407. package/security/manifest-import-policy.d.ts +43 -0
  408. package/security/manifest-import-policy.js +260 -0
  409. package/security/supply-chain-gate-policy.d.ts +45 -0
  410. package/security/supply-chain-gate-policy.js +249 -0
  411. package/security/trusted-dom-policy.d.ts +36 -0
  412. package/security/trusted-dom-policy.js +316 -0
  413. package/tools/package.json +77 -0
  414. package/tools/rmt-editor/vscode/README.md +33 -0
  415. package/tools/rmt-editor/vscode/extension.d.ts +9 -0
  416. package/tools/rmt-editor/vscode/extension.js +55 -0
  417. package/tools/rmt-editor/vscode/language-configuration.json +28 -0
  418. package/tools/rmt-editor/vscode/package.json +83 -0
  419. package/tools/rmt-editor/vscode/snippets/rmt.code-snippets +243 -0
  420. package/tools/rmt-editor/vscode/syntaxes/rmt.tmLanguage.json +13 -0
  421. package/tools/rmt-editor/vscode/xtend-rmt-language-0.0.0-enterprise-readiness.vsix +0 -0
  422. package/tools/rmt-language/code-actions.d.ts +15 -0
  423. package/tools/rmt-language/code-actions.js +566 -0
  424. package/tools/rmt-language/completions.d.ts +22 -0
  425. package/tools/rmt-language/completions.js +475 -0
  426. package/tools/rmt-language/definitions.d.ts +13 -0
  427. package/tools/rmt-language/definitions.js +212 -0
  428. package/tools/rmt-language/diagnostics.d.ts +23 -0
  429. package/tools/rmt-language/diagnostics.js +486 -0
  430. package/tools/rmt-language/format-adapter.d.ts +16 -0
  431. package/tools/rmt-language/format-adapter.js +270 -0
  432. package/tools/rmt-language/hover.d.ts +12 -0
  433. package/tools/rmt-language/hover.js +326 -0
  434. package/tools/rmt-language/kernel-escalation.d.ts +122 -0
  435. package/tools/rmt-language/kernel-escalation.js +427 -0
  436. package/tools/rmt-language/kernel-panic-monitor.d.ts +176 -0
  437. package/tools/rmt-language/kernel-panic-monitor.js +674 -0
  438. package/tools/rmt-language/kernel-policy-parity.d.ts +142 -0
  439. package/tools/rmt-language/kernel-policy-parity.js +629 -0
  440. package/tools/rmt-language/kernel-recovery.d.ts +173 -0
  441. package/tools/rmt-language/kernel-recovery.js +666 -0
  442. package/tools/rmt-language/kernel-scheduler-failure.d.ts +136 -0
  443. package/tools/rmt-language/kernel-scheduler-failure.js +486 -0
  444. package/tools/rmt-language/kernel-security-regression.d.ts +154 -0
  445. package/tools/rmt-language/kernel-security-regression.js +465 -0
  446. package/tools/rmt-language/kernel-trust-authority.d.ts +120 -0
  447. package/tools/rmt-language/kernel-trust-authority.js +549 -0
  448. package/tools/rmt-language/parser.d.ts +14 -0
  449. package/tools/rmt-language/parser.js +111 -0
  450. package/tools/rmt-language/rmt-tooling-public-types.d.ts +179 -0
  451. package/tools/rmt-language/rules/boundary-policy.js +81 -0
  452. package/tools/rmt-language/rules/document-policy.js +65 -0
  453. package/tools/rmt-language/rules/index.js +29 -0
  454. package/tools/rmt-language/rules/route-policy.js +81 -0
  455. package/tools/rmt-language/rules/scheduler-policy.js +66 -0
  456. package/tools/rmt-language/rules/template-policy.js +130 -0
  457. package/tools/rmt-language/semantic-graph.d.ts +18 -0
  458. package/tools/rmt-language/semantic-graph.js +827 -0
  459. package/tools/rmt-language/snippets/README.md +17 -0
  460. package/tools/rmt-language/snippets/index.d.ts +17 -0
  461. package/tools/rmt-language/snippets/index.js +417 -0
  462. package/tools/rmt-language/snippets/rmt.code-snippets +243 -0
  463. package/tools/rmt-language/source-model.d.ts +14 -0
  464. package/tools/rmt-language/source-model.js +731 -0
  465. package/tools/rmt-language/symbols.d.ts +13 -0
  466. package/tools/rmt-language/symbols.js +183 -0
  467. package/tools/rmt-language/vnext-compatibility.d.ts +28 -0
  468. package/tools/rmt-language/vnext-compatibility.js +675 -0
  469. package/tools/rmt-language/vnext-compiler.d.ts +17 -0
  470. package/tools/rmt-language/vnext-compiler.js +716 -0
  471. package/tools/rmt-language/vnext-composition.d.ts +30 -0
  472. package/tools/rmt-language/vnext-composition.js +595 -0
  473. package/tools/rmt-language/vnext-conditions.d.ts +25 -0
  474. package/tools/rmt-language/vnext-conditions.js +474 -0
  475. package/tools/rmt-language/vnext-cross-surface-events.d.ts +30 -0
  476. package/tools/rmt-language/vnext-cross-surface-events.js +607 -0
  477. package/tools/rmt-language/vnext-degradation.d.ts +23 -0
  478. package/tools/rmt-language/vnext-degradation.js +428 -0
  479. package/tools/rmt-language/vnext-enterprise-fixtures.d.ts +28 -0
  480. package/tools/rmt-language/vnext-enterprise-fixtures.js +487 -0
  481. package/tools/rmt-language/vnext-enterprise-registry.d.ts +21 -0
  482. package/tools/rmt-language/vnext-enterprise-registry.js +495 -0
  483. package/tools/rmt-language/vnext-enterprise-release.d.ts +44 -0
  484. package/tools/rmt-language/vnext-enterprise-release.js +472 -0
  485. package/tools/rmt-language/vnext-event-governance.d.ts +29 -0
  486. package/tools/rmt-language/vnext-event-governance.js +488 -0
  487. package/tools/rmt-language/vnext-events.d.ts +44 -0
  488. package/tools/rmt-language/vnext-events.js +680 -0
  489. package/tools/rmt-language/vnext-import-resolver.d.ts +28 -0
  490. package/tools/rmt-language/vnext-import-resolver.js +642 -0
  491. package/tools/rmt-language/vnext-lifecycle.d.ts +22 -0
  492. package/tools/rmt-language/vnext-lifecycle.js +404 -0
  493. package/tools/rmt-language/vnext-parser.d.ts +21 -0
  494. package/tools/rmt-language/vnext-parser.js +1391 -0
  495. package/tools/rmt-language/vnext-regression.d.ts +25 -0
  496. package/tools/rmt-language/vnext-regression.js +394 -0
  497. package/tools/rmt-language/vnext-release.d.ts +29 -0
  498. package/tools/rmt-language/vnext-release.js +293 -0
  499. package/tools/rmt-language/vnext-remote-compatibility.d.ts +33 -0
  500. package/tools/rmt-language/vnext-remote-compatibility.js +892 -0
  501. package/tools/rmt-language/vnext-remote-compiler.d.ts +14 -0
  502. package/tools/rmt-language/vnext-remote-compiler.js +520 -0
  503. package/tools/rmt-language/vnext-remote-manifest.d.ts +33 -0
  504. package/tools/rmt-language/vnext-remote-manifest.js +538 -0
  505. package/tools/rmt-language/vnext-remote-security.d.ts +27 -0
  506. package/tools/rmt-language/vnext-remote-security.js +380 -0
  507. package/tools/rmt-language/vnext-remote-tooling.d.ts +25 -0
  508. package/tools/rmt-language/vnext-remote-tooling.js +805 -0
  509. package/tools/rmt-language/vnext-scheduler.d.ts +24 -0
  510. package/tools/rmt-language/vnext-scheduler.js +469 -0
  511. package/tools/rmt-language/vnext-security.d.ts +28 -0
  512. package/tools/rmt-language/vnext-security.js +597 -0
  513. package/tools/rmt-language/vnext-streaming.d.ts +28 -0
  514. package/tools/rmt-language/vnext-streaming.js +593 -0
  515. package/tools/rmt-language/vnext-surfaces.d.ts +24 -0
  516. package/tools/rmt-language/vnext-surfaces.js +406 -0
  517. package/tools/rmt-language/vnext-tooling.d.ts +25 -0
  518. package/tools/rmt-language/vnext-tooling.js +728 -0
  519. package/tools/rmt-language-server/protocol.d.ts +22 -0
  520. package/tools/rmt-language-server/protocol.js +352 -0
  521. package/tools/rmt-language-server/server.d.ts +15 -0
  522. package/tools/rmt-language-server/server.js +622 -0
  523. package/tools/rmt-linter/cli.d.ts +14 -0
  524. package/tools/rmt-linter/cli.js +450 -0
  525. package/tools/rmt-linter/reporter.d.ts +16 -0
  526. package/tools/rmt-linter/reporter.js +472 -0
  527. package/xtend-builder/README.md +83 -0
  528. package/xtend-builder/a11y/README.md +42 -0
  529. package/xtend-builder/a11y/component-a11y-profile.d.ts +14 -0
  530. package/xtend-builder/a11y/component-a11y-profile.js +314 -0
  531. package/xtend-builder/blueprints/README.md +105 -0
  532. package/xtend-builder/blueprints/component-blueprint.contract.d.ts +16 -0
  533. package/xtend-builder/blueprints/component-blueprint.contract.js +343 -0
  534. package/xtend-builder/builder-public-types.d.ts +234 -0
  535. package/xtend-builder/extensions/README.md +26 -0
  536. package/xtend-builder/extensions/component-extension-points.d.ts +11 -0
  537. package/xtend-builder/extensions/component-extension-points.js +277 -0
  538. package/xtend-builder/generators/README.md +149 -0
  539. package/xtend-builder/generators/component-files.d.ts +5 -0
  540. package/xtend-builder/generators/component-files.js +769 -0
  541. package/xtend-builder/generators/component-plan.d.ts +4 -0
  542. package/xtend-builder/generators/component-plan.js +104 -0
  543. package/xtend-builder/generators/registry.d.ts +6 -0
  544. package/xtend-builder/generators/registry.js +118 -0
  545. package/xtend-builder/generators/rmt-build.js +738 -0
  546. package/xtend-builder/generators/rmt-lifecycle-demo.js +922 -0
  547. package/xtend-builder/lib/cli.d.ts +9 -0
  548. package/xtend-builder/lib/cli.js +543 -0
  549. package/xtend-builder/lib/layout.d.ts +6 -0
  550. package/xtend-builder/lib/layout.js +153 -0
  551. package/xtend-builder/lib/package-resolver.js +25 -0
  552. package/xtend-builder/package.json +90 -0
  553. package/xtend-builder/performance/README.md +31 -0
  554. package/xtend-builder/performance/component-performance-profile.d.ts +11 -0
  555. package/xtend-builder/performance/component-performance-profile.js +347 -0
  556. package/xtend-builder/performance/component-ux-performance-contract.d.ts +27 -0
  557. package/xtend-builder/performance/component-ux-performance-contract.js +424 -0
  558. package/xtend-builder/preview/README.md +61 -0
  559. package/xtend-builder/preview/component-lab-ux-inspector.d.ts +20 -0
  560. package/xtend-builder/preview/component-lab-ux-inspector.js +448 -0
  561. package/xtend-builder/preview/component-lab.d.ts +14 -0
  562. package/xtend-builder/preview/component-lab.js +278 -0
  563. package/xtend-builder/preview/component-preview.d.ts +5 -0
  564. package/xtend-builder/preview/component-preview.js +160 -0
  565. package/xtend-builder/scaffold.config.d.ts +4 -0
  566. package/xtend-builder/scaffold.config.js +2056 -0
  567. package/xtend-builder/scaffold.d.ts +3 -0
  568. package/xtend-builder/scaffold.js +11 -0
  569. package/xtend-builder/templates/README.md +33 -0
  570. package/xtend-builder/templates/component/a11y.template.ts +11 -0
  571. package/xtend-builder/templates/component/component-suite.template.d.ts +2 -0
  572. package/xtend-builder/templates/component/component-suite.template.js +108 -0
  573. package/xtend-builder/templates/component/contract.template.ts +10 -0
  574. package/xtend-builder/templates/component/demo-plan.template.md +73 -0
  575. package/xtend-builder/templates/component/docs.template.md +301 -0
  576. package/xtend-builder/templates/component/fixture-data.template.ts +28 -0
  577. package/xtend-builder/templates/component/fixture.template.html +37 -0
  578. package/xtend-builder/templates/component/manifest-plan.template.json +22 -0
  579. package/xtend-builder/templates/component/performance.template.ts +13 -0
  580. package/xtend-builder/templates/component/rmt.template.ts +12 -0
  581. package/xtend-builder/templates/component/source.template.d.ts +2 -0
  582. package/xtend-builder/templates/component/source.template.js +137 -0
  583. package/xtend-builder/templates/component/source.template.ts +110 -0
  584. package/xtend-builder/templates/component/types.template.d.ts +423 -0
  585. package/xtend-builder/templates/loader.d.ts +4 -0
  586. package/xtend-builder/templates/loader.js +51 -0
  587. package/xtend-builder/templates/registry.d.ts +6 -0
  588. package/xtend-builder/templates/registry.js +119 -0
  589. package/xtend-builder/typing/README.md +130 -0
  590. package/xtend-builder/typing/component-contract-v2.d.ts +15 -0
  591. package/xtend-builder/typing/component-contract-v2.js +248 -0
  592. package/xtend-builder/typing/component-network-contract.d.ts +22 -0
  593. package/xtend-builder/typing/component-network-contract.js +478 -0
  594. package/xtend-builder/typing/component-shell-contract.d.ts +21 -0
  595. package/xtend-builder/typing/component-shell-contract.js +312 -0
  596. package/xtend-builder/typing/component-styling-contract.d.ts +22 -0
  597. package/xtend-builder/typing/component-styling-contract.js +301 -0
  598. package/xtend-builder/typing/component-types.d.ts +10 -0
  599. package/xtend-builder/typing/component-types.js +551 -0
  600. package/xtend-builder/typing/enterprise-component-flex-hardening-contract.d.ts +20 -0
  601. package/xtend-builder/typing/enterprise-component-flex-hardening-contract.js +332 -0
  602. package/xtend-builder/typing/feedback-status-ux-contract.d.ts +25 -0
  603. package/xtend-builder/typing/feedback-status-ux-contract.js +347 -0
  604. package/xtend-builder/typing/form-controls-ux-contract.d.ts +25 -0
  605. package/xtend-builder/typing/form-controls-ux-contract.js +357 -0
  606. package/xtend-builder/typing/layout-display-media-ux-contract.d.ts +25 -0
  607. package/xtend-builder/typing/layout-display-media-ux-contract.js +420 -0
  608. package/xtend-builder/typing/navigation-routing-ux-contract.d.ts +17 -0
  609. package/xtend-builder/typing/navigation-routing-ux-contract.js +297 -0
  610. package/xtend-builder/typing/overlay-interaction-ux-contract.d.ts +25 -0
  611. package/xtend-builder/typing/overlay-interaction-ux-contract.js +383 -0
  612. package/xtend-builder/typing/rmt-dsl-authoring-polish.d.ts +27 -0
  613. package/xtend-builder/typing/rmt-dsl-authoring-polish.js +419 -0
  614. package/xtend-builder/typing/rmt-shell-authoring-contract.d.ts +26 -0
  615. package/xtend-builder/typing/rmt-shell-authoring-contract.js +315 -0
  616. package/xtend-builder/utils/README.md +8 -0
  617. package/xtend-builder/utils/naming.d.ts +7 -0
  618. package/xtend-builder/utils/naming.js +36 -0
  619. package/xtend-builder/utils/validation.d.ts +5 -0
  620. package/xtend-builder/utils/validation.js +95 -0
  621. package/xtend-builder/wiring/README.md +46 -0
  622. package/xtend-builder/wiring/features.d.ts +5 -0
  623. package/xtend-builder/wiring/features.js +165 -0
  624. package/xtend-builder/wiring/hydration.d.ts +4 -0
  625. package/xtend-builder/wiring/hydration.js +44 -0
  626. package/xtend-builder/wiring/manifest.d.ts +5 -0
  627. package/xtend-builder/wiring/manifest.js +48 -0
  628. package/xtend-builder/workflows/README.md +47 -0
  629. package/xtend-builder/workflows/developer-workflow.d.ts +6 -0
  630. package/xtend-builder/workflows/developer-workflow.js +125 -0
  631. package/xtend-builder/writing/manifest-patcher.d.ts +49 -0
  632. package/xtend-builder/writing/manifest-patcher.js +391 -0
  633. package/xtend-builder/writing/write-plan.d.ts +148 -0
  634. package/xtend-builder/writing/write-plan.js +646 -0
  635. package/xtend-dev.d.ts +23 -0
  636. package/xtend-dev.js +4 -0
  637. package/xtend-loader.d.ts +201 -0
  638. package/xtend-loader.js +1704 -0
  639. package/xtend.css +402 -0
  640. package/xtendrmt/package.json +64 -0
  641. package/xtendrmt/rmt-core.d.ts +4452 -0
  642. package/xtendrmt/rmt-core.esm.js +25793 -0
  643. package/xtendrmt/rmt-first-demo-app.js +265 -0
  644. package/xtendrmt/rmt-first-demo-app.rmt +737 -0
  645. package/xtendrmt/rmt-lifecycle-demo.app.js +493 -0
  646. package/xtendrmt/rmt-lifecycle-demo.core.json +810 -0
  647. package/xtendrmt/rmt-lifecycle-demo.rmt +35 -0
  648. package/xtendrmt/rmt-lifecycle-demo.rmt-build.app.js +153 -0
  649. package/xtendrmt/rmt-lifecycle-demo.rmt-build.core.json +810 -0
  650. package/xtendrmt/rmt-lifecycle-demo.rmt-build.scaffold.json +202 -0
  651. package/xtendrmt/rmt-lifecycle-demo.scaffold.json +187 -0
  652. package/xtendrmt/rmt-manifest.json +548 -0
  653. package/xtendrmt/rmt-runtime.browser.js +26183 -0
  654. package/xtendrmt/rmt-runtime.esm.js +26214 -0
  655. package/xtendrmt/rmt-vnext-enterprise-mfe-demo.core.json +849 -0
  656. package/xtendrmt/rmt-vnext-enterprise-mfe-demo.rmt +50 -0
  657. package/xtendrmt/rmt-vnext-reference-demo.core.json +1069 -0
  658. package/xtendrmt/rmt-vnext-reference-demo.rmt +50 -0
  659. package/xtendrmt/rmt.schema.json +3145 -0
  660. package/xtendrmt/surface-workbench.js +316 -0
  661. package/xtendrmt/surface-workbench.rmt +762 -0
  662. package/xtendrmt/xtendrmt-bestcase-demo.core.json +1187 -0
  663. package/xtendrmt/xtendrmt-bestcase-demo.js +1728 -0
  664. package/xtendrmt/xtendrmt-bestcase-demo.rmt +57 -0
@@ -0,0 +1,159 @@
1
+ # XTend Component Platform
2
+
3
+ Contract: `xtend.docs.component-platform.v1`
4
+
5
+ Diese Seite beschreibt den aktuellen Epic-10-Stand fuer neue XTend-Komponenten. Neue Komponenten werden TypeScript-first geplant, lokal als ESM-Artefakte ausgeliefert und als RMT-first Authoring-Ziele vorbereitet. RMT bleibt dabei Framework-agnostisch: XTend-Komponenten sind `xtend.component` Records, aber der RMT-Kernel importiert keine XTend-Klassen oder Typen.
6
+
7
+ Seit `WP-E10-16` ist Epic 10 abgeschlossen. Der Release-Handoff liegt in [Epic 10 Release Handoff](./epic10-release-handoff.md), und vollstaendige App-Authoring-Regeln liegen in [RMT-first XTend Apps](./rmt-first-xtend-apps.md). Seit `WP-E11-17` sind die sichtbaren UX-Regeln in [Component UX Authoring](./component-ux-authoring.md), [Component UX App Authoring](./component-ux-app-authoring.md), [Component UX Gates](./component-ux-gates.md) und [Component Long-Tail Migration](./component-long-tail-migration.md) zusammengefuehrt.
8
+
9
+ ## Plattform-Schichten
10
+
11
+ - TypeScript Source liegt unter `src/components/<tag>/`
12
+ - Runtime-Artefakte bleiben lokale ESM-Dateien unter `components/`
13
+ - Public Types bleiben `.d.ts` Artefakte unter `components/`
14
+ - RMT Metadata liegt als eigenes `ts-rmt` Artefakt vor
15
+ - Fabric, Telemetry, Lanes, A11y und Performance sind Pflichtdomains im `xtend.component.contract.v2`
16
+ - der Builder erzeugt Contract-, Source-, RMT-, A11y-, Performance- und Fixture-Artefakte als Dry-Run
17
+
18
+ ## P0-Komponentenwelle
19
+
20
+ WP-E10-08 legt die erste P0-Komponentenwelle als `xtend.epic10.p0-component-wave.v1` fest.
21
+
22
+ | Komponente | Paket | Schwerpunkt |
23
+ |------------|-------|-------------|
24
+ | `x-select` | `WP-E10-09` | Select Control, Option Slots, Value Events |
25
+ | `x-checkbox` | `WP-E10-09` | Binary Input, checked/indeterminate State |
26
+ | `x-radio` | `WP-E10-09` | Radio Group Coordination und Keyboard Navigation |
27
+ | `x-textarea` | `WP-E10-10` | Long-Form Input, Validation, Counter |
28
+ | `x-status` | `WP-E10-10` | Live Region, Validation Feedback, Scheduler Status |
29
+ | `x-progress` | `WP-E10-10` | Async Progress, Hydration/Task Feedback |
30
+ | `x-tooltip` | `WP-E10-11` | leichte Overlay-Hilfe und describedby Mapping |
31
+ | `x-popover` | `WP-E10-11` | interaktives, verankertes Overlay |
32
+ | `x-drawer` | `WP-E10-11` | App-Shell Navigation und Side Panels |
33
+
34
+ `x-select`, `x-checkbox`, `x-radio`, `x-textarea`, `x-status`, `x-progress`, `x-tooltip`, `x-popover` und `x-drawer` sind seit `WP-E10-11` als TypeScript-first Referenzlinie umgesetzt und bilden die erste P0-Welle mit `enterprise-ready` Catalog-Status.
35
+
36
+ ## Component Lab und RMT Inspector
37
+
38
+ `WP-E10-12` legt das Component Lab als Shell-first RMT-Pilot an. Das Lab nutzt `tests/fixtures/rmt-component-lab-pilot.rmt` und das Plan-Modul `xtend-builder/preview/component-lab.js`, um alle neun `enterprise-ready` Komponenten lokal inspizierbar zu machen.
39
+
40
+ Die Pilot-Oberflaeche besteht aus:
41
+
42
+ - Component Preview fuer Fixture, Docs, Types und Contract-Pfade
43
+ - RMT Inspector fuer `manifest`, `adapters`, `components`, `routes`, `schedules`, `templates` und `diagnostics`
44
+ - Telemetry Panel fuer `snapshot.componentTelemetry`
45
+ - A11y- und Performance-Hinweisen aus Component Contract v2
46
+ - Source Links auf Runtime, TS Source, RMT Metadata, Fixture, Docs und Suite
47
+
48
+ Der lokale Gate lautet:
49
+
50
+ ```bash
51
+ node scripts/run_xtend_tests.js component-lab-rmt-inspector --json
52
+ ```
53
+
54
+ ## RMT-first Demo-App
55
+
56
+ `WP-E10-13` liefert mit `xtendrmt-rmt-first-demo.html` und `xtendrmt/rmt-first-demo-app.rmt` die erste produktive RMT-first Demo-App ohne manuelle Shell. Die Hostseite stellt nur einen `data-rmt-host="rmt-first-demo"` Root, den lokalen XTend Loader, das lokale Manifest und die RMT Runtime bereit.
57
+
58
+ Die App Shell, Navigation, Routen, Seiten-Templates, Component Records, Schedules, Fabric Lanes und Diagnostics werden aus dem RMT-Dokument gerendert. Die Demo nutzt die komplette Epic-10 P0-Welle: `x-select`, `x-checkbox`, `x-radio`, `x-textarea`, `x-status`, `x-progress`, `x-tooltip`, `x-popover` und `x-drawer`.
59
+
60
+ Der lokale Gate lautet:
61
+
62
+ ```bash
63
+ node scripts/run_xtend_tests.js rmt-first-demo-app --json
64
+ ```
65
+
66
+ ## Existing Component Metadata
67
+
68
+ `WP-E10-14` zieht bestehende priorisierte Komponenten als `js-legacy` Contract Overlay in die RMT/Fabric-Linie. Der maschinenlesbare Katalog liegt in `catalog/epic10-existing-component-metadata.js` und nutzt die Migration Strategy `js-legacy-contract-overlay-no-runtime-rewrite`.
69
+
70
+ Die Zielkomponenten sind `x-router`, `x-link`, `x-input`, `x-form`, `x-modal`, `x-dialog`, `x-tabs`, `x-toast` und `x-alert`. Jede Komponente erhaelt Contract-v2-, RMT-, Fabric-, Telemetry-, Lane-, A11y- und Performance-Metadata, ohne dass die Runtime in diesem Paket umgebaut werden muss.
71
+
72
+ Der lokale Gate lautet:
73
+
74
+ ```bash
75
+ node scripts/run_xtend_tests.js existing-component-metadata --json
76
+ ```
77
+
78
+ ## Epic 10 Platform Gates
79
+
80
+ `WP-E10-15` buendelt die Plattformregeln als `xtend.epic10.platform-gates.v1`. Der maschinenlesbare Plan liegt in `catalog/epic10-platform-gates.js` und verbindet Component Contract v2, Existing Component Metadata, RMT-first Demo-App, Browser-Smokes, A11y, Performance und Visual Regression.
81
+
82
+ Der Fast-PR-Pfad enthaelt `component-contract-v2`, `epic10-p0-component-wave`, `component-lab-rmt-inspector`, `rmt-first-demo-app`, `existing-component-metadata`, `browser`, `a11y-hydration`, `screenreader-signals`, `motion-contrast`, `regression-priority` und `references`. Release-only Performance bleibt ueber `fabric-performance-measurements`, `performance-regression` und `hydration-policy` getrennt.
83
+
84
+ Der lokale Gate lautet:
85
+
86
+ ```bash
87
+ node scripts/run_xtend_tests.js epic10-platform-gates --json
88
+ ```
89
+
90
+ ## Epic 10 Release Handoff
91
+
92
+ `WP-E10-16` finalisiert die kanonische Guide-Struktur und den Abschlusscontract `xtend.epic10.release-handoff.v1`. Der maschinenlesbare Plan liegt in `catalog/epic10-release-handoff.js`.
93
+
94
+ Die kanonische Component-Fabric-Boundary ist `adapter-injection-via-xtend-component-resolveFabricContext`. `window.XTendFabric` bleibt Host-Komfort- und Enterprise-Integrationsflaeche, aber Komponenten beziehen Fabric-, Lane- und Fiber-Kontext ueber den `xtend.component` Adapter.
95
+
96
+ Der lokale Gate lautet:
97
+
98
+ ```bash
99
+ node scripts/run_xtend_tests.js epic10-release-handoff --json
100
+ ```
101
+
102
+ ## Epic 11 Enterprise UX Handoff
103
+
104
+ `WP-E11-18` finalisiert die sichtbare Component-UX-Reife als `xtend.epic11.enterprise-ux-handoff.v1`. Der maschinenlesbare Plan liegt in `catalog/epic11-enterprise-ux-handoff.js`.
105
+
106
+ Der Abschlussmodus lautet `completed-with-accepted-long-tail-handoff`: Shell, Styling, Runtime-A11y, Performance, Component Network, RMT Shell Authoring, Component Lab, Browser-Smokes, Theme-Matrix und Authoring Guides sind als Produktlinie akzeptiert. Nach `WP-E12-09` sind `x-tabs`, `x-theme`, `x-button` und `x-menu` runtime-seitig geschlossen; `xstate` besitzt Suite, Fixture, Types und Adapter-Boundary-Probe; `x-utils` besitzt Utility Contract, Import Policy, Fixture und Types. Seit `WP-E13-05` sind `xstate` als Runtime-Boundary und `x-utils` als Utility-Boundary fuer RC1 geschlossen.
107
+
108
+ Der lokale Gate lautet:
109
+
110
+ ```bash
111
+ node scripts/run_xtend_tests.js epic11-enterprise-ux-handoff --json
112
+ ```
113
+
114
+ ## RMT First-Class Support
115
+
116
+ Jede neue Komponente muss als RMT Component Record authorbar sein:
117
+
118
+ - Adapter: `xtend.component`
119
+ - Template-Modus: `dom_descriptor`
120
+ - Event Binding: `dom-event-to-rmt-command`
121
+ - Pflicht-Schedules: `component.visible.mount`, Hydration Schedule und `diagnostics.snapshot`
122
+ - Kernel Boundary: `no-rmt-kernel-import-of-xtend-types`
123
+
124
+ RMT beschreibt also Komponente, Props, Attribute, Slots, Events, Hydration und Schedule. XTend fuehrt die Custom Elements lokal aus.
125
+
126
+ ## Fabric, Telemetry und Lanes
127
+
128
+ Neue Komponenten muessen Fabric-Kontext aufnehmen koennen. Dazu gehoeren:
129
+
130
+ - `@xtend-fabric` Boundary
131
+ - Lifecycle-Operationen `mount`, `hydrate`, `render`, `update`, `event`, `error`, `unmount`
132
+ - Telemetry Snapshot `xtend.fabric.telemetry-snapshot.v1`
133
+ - Backpressure-faehige Messpunkte
134
+ - deterministische Lane-Precedence aus RMT, Component Metadata, Fabric Override und Blueprint Default
135
+
136
+ ## A11y und Performance
137
+
138
+ A11y ist kein nachgelagerter Test. Form Controls brauchen Labels, Error Regions, Keyboard-Verhalten und Screenreader-Signale. Feedback-Komponenten brauchen Live Regions und non-color Statussignale. Overlays brauchen Escape, Fokus-Rueckgabe und Reduced Motion.
139
+
140
+ Performance ist ebenfalls Contract-Bestandteil. Jede Komponente muss Budgetklasse, Lane, Hydration Policy und kritische Messpunkte deklarieren.
141
+
142
+ ## Lokale Gates
143
+
144
+ ```bash
145
+ node scripts/run_xtend_tests.js component-ux-authoring-docs --json
146
+ node scripts/run_xtend_tests.js component-long-tail-migration --json
147
+ node scripts/run_xtend_tests.js epic11-enterprise-ux-handoff --json
148
+ node scripts/run_xtend_tests.js component-shell-theme-matrix --json
149
+ node scripts/run_xtend_tests.js component-ux-browser-smokes --json
150
+ node scripts/run_xtend_tests.js epic10-p0-component-wave --json
151
+ node scripts/run_xtend_tests.js component-lab-rmt-inspector --json
152
+ node scripts/run_xtend_tests.js rmt-first-demo-app --json
153
+ node scripts/run_xtend_tests.js existing-component-metadata --json
154
+ node scripts/run_xtend_tests.js epic10-platform-gates --json
155
+ node scripts/run_xtend_tests.js epic10-release-handoff --json
156
+ node scripts/run_xtend_tests.js builder-typescript-blueprint --json
157
+ node scripts/run_xtend_tests.js component-contract-v2 --json
158
+ node scripts/run_xtend_tests.js references --json
159
+ ```
@@ -0,0 +1,130 @@
1
+ # Component UX App Authoring
2
+
3
+ Docs Contract: `xtend.docs.component-ux-app-authoring.v1`
4
+
5
+ Dieser Guide richtet sich an App-Autorinnen und App-Autoren, die XTend-Komponenten in RMT-first Apps einsetzen. Die App kann vollstaendig in RMT templated werden; XTend liefert lokale Web Components und XTendRMT orchestriert Shell, Routes, Templates, Schedules und Diagnostics.
6
+
7
+ ## Grundregeln
8
+
9
+ - Die App Shell rendert `shell-first`.
10
+ - XTend-Komponenten werden als `xtend.component` Records beschrieben.
11
+ - XRouter wird ueber den Router-Adapter angebunden.
12
+ - Templates verwenden bevorzugt `dom_descriptor`.
13
+ - Events werden als `dom-event-to-rmt-command` gebunden.
14
+ - Hydration, Fabric-Lane, Fiber und Diagnostics bleiben schedulebare Metadata.
15
+ - Der RMT-Kernel importiert keine XTend-Klassen oder XTend-Typen.
16
+
17
+ Boundary:
18
+
19
+ ```text
20
+ no-rmt-kernel-import-of-xtend-types
21
+ ```
22
+
23
+ ## Minimaler Component Record
24
+
25
+ ```json
26
+ {
27
+ "id": "settings.feedback.status",
28
+ "kind": "custom_element",
29
+ "adapter": "xtend.component",
30
+ "tag": "x-status",
31
+ "props": {
32
+ "type": "success",
33
+ "label": "Scheduler",
34
+ "message": "Ready"
35
+ },
36
+ "a11y": {
37
+ "role": "status",
38
+ "live": "polite"
39
+ },
40
+ "style": {
41
+ "theme": "dark",
42
+ "density": "compact"
43
+ },
44
+ "schedule": "component.visible.mount",
45
+ "fabric": {
46
+ "lane": "visible",
47
+ "fiber": "component.mount"
48
+ }
49
+ }
50
+ ```
51
+
52
+ ## App-Shell-Muster
53
+
54
+ ```json
55
+ {
56
+ "manifest": {
57
+ "metadata": {
58
+ "contractVersion": "xtend.rmt.first-class-app-authoring.v1",
59
+ "renderMode": "shell-first"
60
+ }
61
+ },
62
+ "adapters": [
63
+ { "id": "xtend.component", "kind": "component" },
64
+ { "id": "xtend.xrouter", "kind": "router" }
65
+ ],
66
+ "routes": [
67
+ { "id": "dashboard", "path": "/", "template": "dashboard.page" }
68
+ ],
69
+ "templates": [
70
+ {
71
+ "id": "dashboard.page",
72
+ "mode": "dom_descriptor",
73
+ "children": [
74
+ { "component": "settings.feedback.status" }
75
+ ]
76
+ }
77
+ ],
78
+ "schedules": [
79
+ {
80
+ "id": "dashboard.visible.mount",
81
+ "lane": "visible",
82
+ "endpoint": "xtend.component.mount",
83
+ "metadata": {
84
+ "theme": "dark",
85
+ "density": "compact",
86
+ "motion": "reduced-motion"
87
+ }
88
+ }
89
+ ]
90
+ }
91
+ ```
92
+
93
+ ## UX-Regeln fuer Apps
94
+
95
+ | Dimension | App-Regel |
96
+ | --- | --- |
97
+ | Shell | Hostseite stellt nur den Root, Loader, Manifest und RMT Runtime bereit |
98
+ | Routing | Routen kommen aus RMT und werden ueber XRouter aktiviert |
99
+ | Theme | `light`, `dark`, `high-contrast` und `forced-colors` bleiben App-States |
100
+ | Motion | `reduced-motion` muss bis in Overlays, Feedback und Media sichtbar sein |
101
+ | Density | `comfortable`, `compact` und `dense` duerfen Layout nicht brechen |
102
+ | A11y | Route Announcements, Live Regions, Error Regions und Focus Restore sind Teil der App |
103
+ | Performance | Hydration Policies und Fabric-Lanes sind Schedule-Daten, keine Host-Sonderlogik |
104
+
105
+ ## Gates fuer App-Autoren
106
+
107
+ ```bash
108
+ node scripts/run_xtend_tests.js rmt-first-class-app --json
109
+ node scripts/run_xtend_tests.js rmt-shell-authoring-ux --json
110
+ node scripts/run_xtend_tests.js component-ux-browser-smokes --json
111
+ node scripts/run_xtend_tests.js component-shell-theme-matrix --json
112
+ node scripts/run_xtend_tests.js browser --json
113
+ ```
114
+
115
+ Fuer PRs ist der gemeinsame schnelle Pfad:
116
+
117
+ ```bash
118
+ npm run test:pr
119
+ ```
120
+
121
+ ## Wann ein App-Pfad reif ist
122
+
123
+ Ein RMT-first XTend App-Pfad gilt als reif, wenn:
124
+
125
+ - die Shell nicht manuell aus statischem XTend-Markup zusammengesetzt wird,
126
+ - Komponenten ueber `xtend.component` Records kommen,
127
+ - Route, Theme, Motion, Density und Hydration in RMT sichtbar sind,
128
+ - Browser-Smokes die Kernjourneys abdecken,
129
+ - die Component Shell Theme Matrix nicht bricht,
130
+ - keine externen CDN- oder Importmap-Abhaengigkeiten eingefuehrt werden.
@@ -0,0 +1,96 @@
1
+ # Component UX Authoring
2
+
3
+ Docs Contract: `xtend.docs.component-ux-authoring.v1`
4
+
5
+ Dieser Guide ist die kanonische Arbeitsanleitung fuer XTend-Komponentenautorinnen und -autoren nach `WP-E11-16`. Er uebersetzt die Epic-11-Vertraege in konkrete Regeln fuer neue und modernisierte Web Components.
6
+
7
+ ## Grundsatz
8
+
9
+ Eine XTend-Komponente ist erst dann UX-reif, wenn ihre sichtbare Shell, ihr Styling, ihre A11y, ihre Performance, ihr Component Network, ihre RMT-Autorierbarkeit und ihre browsernahen Smokes zusammenpassen. Einzelne Komponenten duerfen klein bleiben, aber ihre Contracts muessen vollstaendig sein.
10
+
11
+ Die technische Boundary bleibt:
12
+
13
+ ```text
14
+ no-rmt-kernel-import-of-xtend-types
15
+ ```
16
+
17
+ RMT darf XTend-Komponenten schedulen, rendern und konfigurieren. Der RMT-Kernel importiert aber keine XTend-Klassen oder XTend-Typen.
18
+
19
+ ## Pflichtcontracts
20
+
21
+ | Contract | Zweck | Gate |
22
+ | --- | --- | --- |
23
+ | `xtend.component.shell.v1` | Root, DOM-Modus, States, Slots, Parts, Focus und Lifecycle | `component-shell-contract` |
24
+ | `xtend.component.styling.v1` | Tokens, CSS Parts, Variants, Size, Density und Theme Bridges | `component-styling-contract` |
25
+ | `xtend.component.runtime-a11y.v1` | Keyboard, Focus, ARIA, Screenreader und High Contrast | `runtime-a11y-contract` |
26
+ | `xtend.component.ux-performance.v1` | Shell-, Hydration-, Render-, Event- und Interaction-Budgets | `component-ux-performance` |
27
+ | `xtend.component.network.v1` | Events, Commands, Form Association, Router Context und Feedback | `component-network-contract` |
28
+ | `xtend.rmt.shell-authoring.v1` | Shell, Style, A11y, Variants, Commands und Events in RMT | `rmt-shell-authoring-ux` |
29
+ | `xtend.epic11.component-lab-ux-inspector.v1` | Preview, RMT Inspector, State, A11y, Performance und Source Links | `component-lab-ux-inspector` |
30
+ | `xtend.epic11.component-ux-browser-smokes.v1` | reale UX-Journeys fuer priorisierte Familien | `component-ux-browser-smokes` |
31
+ | `xtend.epic11.component-shell-theme-matrix.v1` | Theme, Motion, Density, Viewport und Visual States | `component-shell-theme-matrix` |
32
+
33
+ ## Authoring-Reihenfolge
34
+
35
+ 1. Familie waehlen: `form-controls`, `feedback-status`, `navigation-routing`, `overlay-interaction` oder `layout-display-media`.
36
+ 2. Shell Contract definieren: Root, Slots, States, Parts, Focus und Lifecycle festlegen.
37
+ 3. Styling als API behandeln: Tokens, Parts, Variants, Size und Density dokumentieren.
38
+ 4. A11y zuerst modellieren: Keyboard, Labels, ARIA, Live Regions, Focus Restore und Screenreader-Signale festlegen.
39
+ 5. Performance-Profil setzen: Lane, Hydration Policy, kritische Messpunkte und Budgetklasse festlegen.
40
+ 6. Component Network beschreiben: Events, Commands, Form Association, Router Context oder Feedback-Kanaele definieren.
41
+ 7. RMT-Authoring ergaenzen: `xtend.component` Record, `dom_descriptor`, Schedules, Commands und Events pflegen.
42
+ 8. Fabric-Kontext akzeptieren: Lane, Fiber und Telemetry ueber Adapterdaten aufnehmen.
43
+ 9. Component Lab sichtbar machen: Preview, Docs, Types, Fixture, State, A11y und Performance verlinken.
44
+ 10. Browser- und Theme-Matrix pruefen: lokale Smokes und Shell-Matrix laufen lassen.
45
+
46
+ ## Familienregeln
47
+
48
+ | Familie | Minimum |
49
+ | --- | --- |
50
+ | Form Controls | Label, Help Text, Error Region, Required/Invalid, Form Association, Value Event, Keyboard Entry |
51
+ | Feedback/Status | Live Region, Role, Tone, Dismiss/Timeout, non-color Status, Reduced Motion |
52
+ | Navigation/Routing | Active State, `aria-current`, Keyboard Activation, Route Announcement, Focus Restore, Tablist ARIA und roving `tabindex` |
53
+ | Overlay/Interaction | Initial Focus, Focus Trap, Escape, Focus Restore, Scroll Lock, Reduced Motion |
54
+ | Layout/Display/Media | Responsive Slots, Stable Layout, Lazy/Visible Hydration, Media Shell, Code/Display Semantics |
55
+
56
+ ## Theme Matrix
57
+
58
+ Jede priorisierte Shell muss in der Component Shell Theme Matrix darstellbar bleiben:
59
+
60
+ - Themes: `light`, `dark`, `high-contrast`, `forced-colors`
61
+ - Motion: `default-motion`, `reduced-motion`
62
+ - Density: `comfortable`, `compact`, `dense`
63
+ - Viewports: `desktop-1280`, `tablet-768`, `mobile-390`
64
+
65
+ Der Gate prueft aktuell `360` Shell-Kombinationen:
66
+
67
+ Seit `WP-E12-03` ist `x-tabs` Teil der Navigation/Routing-Matrix und muss Arrow-Key, `Home`, `End`, `aria-controls`, `role=tabpanel`, `aria-selected` und sichtbaren Fokus in Browser-Smokes und Theme-Matrix halten.
68
+
69
+ ```bash
70
+ node scripts/run_xtend_tests.js component-shell-theme-matrix --json
71
+ ```
72
+
73
+ ## Lokale Gates
74
+
75
+ ```bash
76
+ node scripts/run_xtend_tests.js component-shell-contract --json
77
+ node scripts/run_xtend_tests.js component-styling-contract --json
78
+ node scripts/run_xtend_tests.js runtime-a11y-contract --json
79
+ node scripts/run_xtend_tests.js component-ux-performance --json
80
+ node scripts/run_xtend_tests.js component-network-contract --json
81
+ node scripts/run_xtend_tests.js rmt-shell-authoring-ux --json
82
+ node scripts/run_xtend_tests.js component-lab-ux-inspector --json
83
+ node scripts/run_xtend_tests.js component-ux-browser-smokes --json
84
+ node scripts/run_xtend_tests.js component-shell-theme-matrix --json
85
+ node scripts/run_xtend_tests.js references --json
86
+ ```
87
+
88
+ ## Definition of Done
89
+
90
+ - Docs, `.d.ts`, Fixture, Component Suite und RMT Metadata existieren.
91
+ - Shell, Styling, A11y, Performance und Network Contracts sind sichtbar.
92
+ - Events sind `bubbles: true` und `composed: true`, wenn Hosts oder RMT sie konsumieren sollen.
93
+ - Commands sind deklarierbar und nicht nur private Methoden.
94
+ - Theme, Density und Motion sind nicht hart im Shadow DOM versteckt.
95
+ - Browser-Smoke oder Theme-Matrix deckt den relevanten sichtbaren Pfad ab.
96
+ - Kein neuer Pfad fuehrt eine harte XTend-Abhaengigkeit in den RMT-Kernel ein.
@@ -0,0 +1,45 @@
1
+ # Component UX Gates
2
+
3
+ Docs Contract: `xtend.docs.component-ux-gates.v1`
4
+
5
+ Diese Seite beschreibt die lokale Gate-Kette fuer Epic 11. Sie verbindet Authoring Guides, Browser-Smokes, Theme-Matrix, RMT Shell Authoring, Component Lab und Reference-Gates.
6
+
7
+ ## Gate-Gruppen
8
+
9
+ | Gruppe | Gate | Zweck |
10
+ | --- | --- | --- |
11
+ | Foundation | `component-shell-contract` | Component Shell Contract `xtend.component.shell.v1` |
12
+ | Foundation | `component-styling-contract` | Styling Contract `xtend.component.styling.v1` |
13
+ | Foundation | `runtime-a11y-contract` | Runtime A11y `xtend.component.runtime-a11y.v1` |
14
+ | Foundation | `component-ux-performance` | Performance Profile `xtend.component.ux-performance.v1` |
15
+ | Foundation | `component-network-contract` | Component Network `xtend.component.network.v1` |
16
+ | RMT | `rmt-shell-authoring-ux` | RMT Shell Authoring `xtend.rmt.shell-authoring.v1` |
17
+ | Lab | `component-lab-ux-inspector` | Component Lab UX Inspector `xtend.epic11.component-lab-ux-inspector.v1` |
18
+ | Browser | `component-ux-browser-smokes` | Browser UX Smokes `xtend.epic11.component-ux-browser-smokes.v1` |
19
+ | Visual | `component-shell-theme-matrix` | Component Shell Theme Matrix `xtend.epic11.component-shell-theme-matrix.v1` |
20
+ | Docs | `component-ux-authoring-docs` | Component UX Authoring Docs `xtend.epic11.component-ux-authoring-docs.v1` |
21
+ | Migration | `component-long-tail-migration` | Legacy Long-Tail Migration `xtend.epic11.legacy-long-tail-migration.v1` |
22
+ | Handoff | `epic11-enterprise-ux-handoff` | Epic 11 Enterprise UX Handoff `xtend.epic11.enterprise-ux-handoff.v1` |
23
+ | References | `references` | Dokumentations- und Demo-Referenzpfade |
24
+
25
+ ## Schneller Epic-11-Check
26
+
27
+ ```bash
28
+ node scripts/run_xtend_tests.js component-network-contract rmt-shell-authoring-ux form-controls-ux feedback-status-ux navigation-routing-ux overlay-interaction-ux layout-display-media-ux component-lab-ux-inspector component-ux-browser-smokes component-shell-theme-matrix component-ux-authoring-docs component-long-tail-migration epic11-enterprise-ux-handoff references --json
29
+ ```
30
+
31
+ ## PR-Gate
32
+
33
+ Der PR-Gate enthaelt die Component-UX-Doku, damit neue Guides nicht neben der produktiven Gate-Kette veralten:
34
+
35
+ ```bash
36
+ npm run test:pr
37
+ ```
38
+
39
+ ## Release-Hinweis
40
+
41
+ `component-shell-theme-matrix` ist noch kein Screenshot-Diff-Runner. Es ist der deterministische, lokale Contract fuer spaetere visuelle Snapshot-Automation. Bis echte Snapshots angeschlossen sind, bleibt diese Matrix die verbindliche Quelle fuer Theme-, Motion-, Density- und Viewport-Pflichten.
42
+
43
+ ## Handoff
44
+
45
+ Nach `WP-E11-18` ist Epic 11 im Modus `completed-with-accepted-long-tail-handoff` abgeschlossen. Die Legacy Long-Tail Migration ist als Plan gatebar; offene Umsetzungen bleiben bewusst in Wellen priorisiert.
@@ -0,0 +1,60 @@
1
+ # x-rmt-lifecycle-demo-build - XTend Komponente
2
+
3
+ ## Uebersicht
4
+
5
+ `<x-rmt-lifecycle-demo-build>` ist die aus `xtendrmt/rmt-lifecycle-demo.rmt` erzeugte RC1-Test-Build-Komponente. Sie dient als lokaler, manifestierter Nachweis fuer den RMT-vNext-App-Build-Pfad und verbindet Root-Lifecycle, Template-Extension, Scheduler-Handschlag, A11y-Profil und Performance-Profil in einem Custom Element.
6
+
7
+ ## Verwendung
8
+
9
+ ```html
10
+ <x-rmt-lifecycle-demo-build
11
+ variant="rc1"
12
+ aria-label="RMT Lifecycle Demo Build">
13
+ Lifecycle Demo
14
+ </x-rmt-lifecycle-demo-build>
15
+ <script type="module" src="/components/x-rmt-lifecycle-demo-build.js"></script>
16
+ ```
17
+
18
+ ## Attribute
19
+
20
+ | Attribut | Typ | Beschreibung |
21
+ |----------|-----|--------------|
22
+ | `variant` | String | Markiert die lokale Demo-Variante fuer Fixtures und Browser-Smokes. |
23
+ | `aria-label` | String | Pflichtname fuer die semantische `region` im Shadow DOM. |
24
+
25
+ ## Scaffold Contracts
26
+
27
+ Die generierte Komponente exposes folgende statische Contracts:
28
+
29
+ - `xtendScaffoldWiring` mit `xtend.scaffold.feature-wiring.v1`
30
+ - `xtendScaffoldExtensionPoints` mit `xtend.scaffold.component-extension-points.v1`
31
+ - `xtendScaffoldA11yProfile` mit `xtend.a11y.profile.v1`
32
+ - `xtendScaffoldPerformanceProfile` mit `xtend.performance.component-profile.v1`
33
+
34
+ Der Root-Lifecycle nutzt `xtend.rmt.root-handshake.v1` und bleibt ueber Scheduler Endpoint Hints an den XTend Host Adapter gekoppelt. Der RMT Kernel liest die XTend-Komponente nicht direkt, sondern behandelt Component Refs, Templates und Events als Daten.
35
+
36
+ ## Events
37
+
38
+ | Event | Beschreibung |
39
+ |-------|--------------|
40
+ | `rmt-lifecycle-demo-build-ready` | im Scaffold-Wiring deklarierter Ready-Kanal fuer Host-Adapter. |
41
+ | `rmt-lifecycle-demo-build-changed` | im Scaffold-Wiring deklarierter State-Change-Kanal fuer Host-Adapter. |
42
+
43
+ ## A11y-Profil
44
+
45
+ Das A11y-Profil setzt `role="region"`, verlangt ein `aria-label`, beschreibt Screenreader-Signale fuer semantische Region und Statusaenderungen und fuehrt Reduced-Motion-/Forced-Colors-Regeln im Shadow DOM.
46
+
47
+ ## Performance-Profil
48
+
49
+ Das Performance-Profil nutzt `xtend.performance.component-profile.v1`, `budgetClass: critical`, `lane: user-blocking` und `hydrationPolicy: visible`. Kritische Messpunkte sind Loader, Mount, Hydration, Render, Update, State-Sync und Event-Action.
50
+
51
+ ## RC1 Build Boundary
52
+
53
+ Die Komponente ist absichtlich ein Build-Artefakt aus dem RMT-vNext-Pfad:
54
+
55
+ - Source: `xtendrmt/rmt-lifecycle-demo.rmt`
56
+ - Generator: `xtend-builder/generators/rmt-build.js`
57
+ - Build-Komponente: `components/x-rmt-lifecycle-demo-build.js`
58
+ - Browser Smoke: `tests/browser/fixtures/rmt-lifecycle-demo-rmt-build-smoke.html`
59
+
60
+ Damit ist sie Teil der RC1-Test-Build-Recovery: Manifest, Docs, Suite, Fixture und Public Types bleiben im Component Catalog sichtbar.
@@ -0,0 +1,81 @@
1
+ # xalert - XTend Komponente
2
+
3
+ ## Uebersicht
4
+
5
+ `<x-alert>` ist die prominente Feedback-Komponente fuer laenger sichtbare Hinweise, Warnungen und Fehler. Im Unterschied zu Toasts kann ein Alert blockierend oder explizit schliessbar auftreten.
6
+
7
+ ## Verwendung
8
+
9
+ ```html
10
+ <x-alert type="error" closable overlay aria-label="Fehlerhinweis">
11
+ Ein Fehler ist aufgetreten
12
+ </x-alert>
13
+ ```
14
+
15
+ ## Attribute
16
+
17
+ | Attribut | Typ | Beschreibung |
18
+ |----------|-----|--------------|
19
+ | `type` | string | `info`, `success`, `warning`, `error` |
20
+ | `closable` | boolean | zeigt einen Schliessen-Button |
21
+ | `duration` | number | optionale Auto-Close-Dauer |
22
+ | `overlay` | boolean | zeigt den Alert als zentriertes Overlay |
23
+ | `aria-label` | string | Screenreader-Label |
24
+
25
+ ## Events
26
+
27
+ | Event | Beschreibung |
28
+ |-------|--------------|
29
+ | `alert-shown` | nach dem Anzeigen des Alerts |
30
+ | `alert-dismissed` | nach dem Schliessen des Alerts |
31
+
32
+ ## State-Contract
33
+
34
+ Die Instanz spiegelt ihren Zustand kompatibel in `xstate`:
35
+
36
+ - `xtend.component.x-alert.<id>`
37
+ - `xalert-state-<id>`
38
+
39
+ Das Event-Detail enthaelt unter anderem:
40
+
41
+ ```js
42
+ {
43
+ id: 'alert-abc123',
44
+ type: 'error',
45
+ closable: true,
46
+ overlay: true,
47
+ dismissed: false,
48
+ reason: 'connected'
49
+ }
50
+ ```
51
+
52
+ ## Runtime-Contract
53
+
54
+ - API-gemanagte Alerts werden aggregiert in `xstate.get('ui').alerts`
55
+ - die Instanz selbst fuehrt ihren Lifecycle ueber `alert-shown` und `alert-dismissed`
56
+ - API und Komponente sprechen keine separaten Close-Pfade mehr
57
+
58
+ ## Feedback Status UX ab WP-E11-09
59
+
60
+ `<x-alert>` stellt `xtendFeedbackStatusUxProfile` mit `xtend.component.feedback-status-ux-profile.v1` bereit. Das Profil beschreibt `x-alert` als laenger sichtbare Feedback-Shell mit `alert-shown`, `alert-dismissed`, `xalert-state-<id>`, `a11y.announce`, Fabric-Lane `a11y` und RMT Shell Authoring.
61
+
62
+ Fehler und Warnungen nutzen assertive Live Regions; neutrale und erfolgreiche Hinweise bleiben polite. Event-Details enthalten `source: 'x-alert'` und `stateKey`, sodass Form-, Router- oder RMT-Adapter Alerts konsistent schedulen und diagnostizieren koennen.
63
+
64
+ ## Kontrastfarben
65
+
66
+ `<x-alert>` nutzt solide Kontrastfarben ohne Farbverlaeufe. Die Varianten `info`, `success`, `warning` und `error` setzen jeweils eigene Tokens fuer Hintergrund, Text, Border und Accent, damit Alerts in Light- und Dark-Mode lesbar bleiben und ihre Signalwirkung behalten.
67
+
68
+ Die wichtigsten Theme-Tokens sind:
69
+
70
+ - `--xtend-alert-info-bg`, `--xtend-alert-info-fg`, `--xtend-alert-info-border`, `--xtend-alert-info-accent`
71
+ - `--xtend-alert-success-bg`, `--xtend-alert-success-fg`, `--xtend-alert-success-border`, `--xtend-alert-success-accent`
72
+ - `--xtend-alert-warning-bg`, `--xtend-alert-warning-fg`, `--xtend-alert-warning-border`, `--xtend-alert-warning-accent`
73
+ - `--xtend-alert-error-bg`, `--xtend-alert-error-fg`, `--xtend-alert-error-border`, `--xtend-alert-error-accent`
74
+
75
+ Fuer Dark-Mode koennen dieselben Tokens mit dem Suffix `-dark` ueberschrieben werden, etwa `--xtend-alert-error-bg-dark`.
76
+
77
+ ## Hinweise
78
+
79
+ - Alerts sind fuer inhaltlich wichtigere, laenger sichtbare oder blockierende Rueckmeldungen gedacht
80
+ - `window.XAlert.show()` ist der bevorzugte Einstieg fuer API-gemanagte Alerts
81
+ - fuer kurze, nicht blockierende Hinweise ist `x-toast` die passendere Komponente
@@ -0,0 +1,103 @@
1
+ # xbutton – XTend Komponente
2
+
3
+ > **Siehe auch:** [xalert](./xalert.md), [xstate](./xstate.md), [xtheme](./xtheme.md)
4
+
5
+ ## Uebersicht
6
+
7
+ `<x-button>` ist der interaktive Basisbutton fuer XTend Apps. Die Komponente bietet Varianten, Groessen, Ladezustand, dekorative Icons, Focus-Visible-Styles, Reduced-Motion-/Forced-Colors-Pfade und seit `WP-E12-06` ein explizites Performance- und Interaction-Budget.
8
+
9
+ ## Features
10
+
11
+ - Varianten: `primary`, `secondary`, `danger`
12
+ - Groessen: `small`, normal, `large`
13
+ - Ladezustand ueber `loading` und `aria-busy`
14
+ - Disabled-/Busy-Guards fuer Click- und Keyboard-Aktivierung
15
+ - Touch Target Token `--xtend-button-min-touch-target`
16
+ - State-Integration ueber `xbutton-state-<id>`
17
+ - Fabric-kompatible Events `button-interaction` und `button-performance-measured`
18
+ - Slot-Fallback bleibt erhalten, damit spaet nachgereichte Inhalte wie `x-icon` sauber hydrieren
19
+
20
+ ## Verwendung
21
+
22
+ ```html
23
+ <x-button variant="primary" size="large" icon="/icons/save.svg">Speichern</x-button>
24
+ <x-button loading aria-label="Speichern laeuft">Bitte warten...</x-button>
25
+ <x-button aria-label="Theme wechseln"><x-icon name="sun" decorative></x-icon></x-button>
26
+ ```
27
+
28
+ ## Attribute
29
+
30
+ | Attribut | Typ | Beschreibung |
31
+ |----------|-----|--------------|
32
+ | `disabled` | Boolean | Deaktiviert Interaktion und setzt `aria-disabled` |
33
+ | `label` | String | Fallback-Text, wenn kein Slot-Inhalt vorhanden ist |
34
+ | `variant` | String | `primary`, `secondary`, `danger` oder Custom-Klasse |
35
+ | `size` | String | `small`, normal oder `large` |
36
+ | `icon` | String | SVG-String oder Icon-URL |
37
+ | `loading` | Boolean | Zeigt Spinner, sperrt Interaktion und setzt Busy-State |
38
+ | `aria-label` | String | Zugänglicher Name fuer Screenreader |
39
+ | `aria-busy` | Boolean | Expliziter Busy-Status ohne zwingenden Loading-Spinner |
40
+
41
+ ## Events
42
+
43
+ | Event | Beschreibung |
44
+ |-------|--------------|
45
+ | `click` | weitergeleiteter Click der internen Button-Shell |
46
+ | `focus` / `blur` | weitergeleitete Focus-Events |
47
+ | `loading-start` | `loading` wurde aktiviert |
48
+ | `loading-end` | `loading` wurde deaktiviert |
49
+ | `button-interaction` | Fabric-kompatible Interaktionsmessung fuer Click/Keyboard |
50
+ | `button-performance-measured` | Performance-Messpunkt nach Hydration, Update oder Interaktion |
51
+
52
+ ## API
53
+
54
+ | Methode | Zweck |
55
+ |---------|-------|
56
+ | `setLoading(loading, options?)` | toggelt den Ladezustand programmatisch |
57
+ | `getPerformanceBudget()` | liefert die ms-Budgets des Performance-Profils |
58
+ | `getInteractionBudget()` | liefert Click-, Keyboard-, Busy- und Touch-Target-Budgets |
59
+ | `snapshotPerformance()` | liefert den aktuellen Snapshot `xtend.component.performance-snapshot.v1` |
60
+
61
+ ## Performance-Profil
62
+
63
+ `x-button` besitzt das Runtime-Profil `xtend.performance.component-profile.v1` mit:
64
+
65
+ - `budgetClass`: `interactive-small`
66
+ - `lane`: `user-blocking`
67
+ - `hydrationPolicy`: `visible`
68
+ - `criticalMeasurements`: `xtend.component.hydrate`, `xtend.component.render`, `xtend.component.update`, `xtend.event.handler`, `xtend.interaction.click`, `xtend.interaction.keyboard`
69
+ - `budgetsMs`: `hydrate`, `renderUpdate`, `eventAction`, `keyboardAction`, `busyToggle`, `stateSync`
70
+
71
+ Damit kann der Button von Fabric, Regression-Gates und spaeteren RMT Shells als kleine, user-blocking Interaktion geplant werden.
72
+
73
+ ## RMT und Fabric
74
+
75
+ Die Komponente deklariert `xtendRmtMetadata` mit `adapter: 'xtend.component'`, `templateMode: 'dom_descriptor'`, `eventBindingMode: 'dom-event-to-rmt-command'` und der Boundary `no-rmt-kernel-import-of-xtend-types`. RMT kann den Button damit authoren und schedulen, ohne XTend-Typen in den Kernel zu importieren.
76
+
77
+ Fabric konsumiert:
78
+
79
+ - `button-interaction`
80
+ - `button-performance-measured`
81
+ - `snapshotPerformance()`
82
+ - State-Key `xbutton-state-<id>`
83
+
84
+ ## Styling & Theming
85
+
86
+ ```css
87
+ x-button {
88
+ --primary-color: #007bff;
89
+ --focus-color: #80bfff;
90
+ --xtend-button-min-touch-target: 44px;
91
+ }
92
+ ```
93
+
94
+ Der Button respektiert `prefers-reduced-motion` und `forced-colors`. In Forced-Colors-Modus werden Systemfarben, sichtbarer Fokus und ein textuelles Busy-Signal genutzt.
95
+
96
+ ## Accessibility
97
+
98
+ - nativer Button im Shadow DOM mit `role="button"`
99
+ - sichtbarer `:focus-visible` Zustand
100
+ - `aria-disabled` und `aria-busy`
101
+ - dekorative Icons mit leerem `alt`
102
+ - minimale Touch-Zielflaeche ueber Token
103
+ - Keyboard-Aktivierung ueber native Button-Semantik plus Messpunkt fuer `Enter` und `Space`