@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,94 @@
1
+ # xwriter – XTend Komponente
2
+
3
+ > **Siehe auch:** [xcode](./xcode.md), [xinput](./xinput.md)
4
+
5
+ ## Übersicht
6
+
7
+ `<x-writer>` ist eine Komponente für Rich-Text-Editing und einfache WYSIWYG-Editoren. Sie unterstützt Formatierungen, Theming, State-Integration, Autosave, Export und API-Anbindung.
8
+
9
+ ---
10
+
11
+ ## Features
12
+ - Rich-Text-Editing (fett, kursiv, Listen, Links, Farben, Größen)
13
+ - State-Integration via xstate
14
+ - Theming via CSS Custom Properties
15
+ - Autosave (lokal oder API)
16
+ - Export als Markdown/HTML
17
+ - Drag & Drop für Bilder/Text
18
+ - API-Anbindung (Speichern an Server)
19
+
20
+ ---
21
+
22
+ ## Verwendung
23
+
24
+ ```html
25
+ <x-writer></x-writer>
26
+ ```
27
+
28
+ ---
29
+
30
+ ## Attribute
31
+ | Attribut | Typ | Beschreibung |
32
+ |-------------- |---------|----------------------------------------------------------|
33
+ | `value` | String | Initialer Textinhalt (Property, nicht Attribut) |
34
+ | `api` | String | API-Endpunkt für Speichern (z.B. `/api/save` oder `local` für LocalStorage) |
35
+ | `method` | String | HTTP-Methode für API (Standard: `POST`) |
36
+ | `autosave` | Number | Intervall in ms für Autosave (z.B. `10000` für 10s) |
37
+ | `storage-key` | String | Key für LocalStorage (Standard: `xwriter-content`) |
38
+
39
+ ---
40
+
41
+ ## Events
42
+ | Event | Beschreibung |
43
+ |-------------------|----------------------------------------------------------|
44
+ | `writer:change` | Bei Textänderung ausgelöst, Detail: `{html, markdown, plain}` |
45
+ | `writer:save` | Nach Speichern (lokal/API), Detail: `{status, response}` |
46
+ | `writer:autosave` | Nach Autosave |
47
+ | `writer:export` | Nach Export, Detail: `{filename, success}` |
48
+ | `writer:error` | Bei Fehlern, Detail: `{error}` |
49
+
50
+ ---
51
+
52
+ ## API
53
+ - **Text setzen/lesen:** `element.value = 'Text'` (Property, nicht Attribut)
54
+ - **State-Integration:** Automatisch via xstate
55
+ - **Speichern:**
56
+ - Lokal: `<x-writer api="local"></x-writer>`
57
+ - API: `<x-writer api="/api/save" method="POST"></x-writer>`
58
+ - **Export:** Über Export-Button (Markdown/HTML)
59
+
60
+ ## Form Controls UX ab WP-E11-08
61
+
62
+ `<x-writer>` stellt `xtendFormControlUxProfile` mit `xtend.component.form-control-ux-profile.v1` bereit. Das Profil beschreibt Rich-Text als Form-Control-nahe UX-Flaeche mit `writer:change`, `writer:error`, `xwriter-content`, `component.idle.hydrate`, Fabric-Lane `idle` und RMT Shell Authoring. `x-form` kann `writer:change` aufnehmen und den Wert in `xform-data-<id>` aggregieren.
63
+
64
+ ---
65
+
66
+ ## Beispiel: Dynamisch per JS
67
+
68
+ ```js
69
+ const writer = document.createElement('x-writer');
70
+ writer.value = 'Hallo Welt!';
71
+ document.body.appendChild(writer);
72
+ ```
73
+
74
+ ---
75
+
76
+ ## Styling & Theming
77
+
78
+ ```css
79
+ x-writer {
80
+ --writer-bg: #fff;
81
+ --writer-color: #222;
82
+ /* Weitere Custom Properties siehe CSS */
83
+ }
84
+ ```
85
+
86
+ ---
87
+
88
+ ## Accessibility
89
+ - Semantisches HTML, ARIA
90
+ - Tastaturbedienung
91
+
92
+ ---
93
+
94
+ *Letzte Aktualisierung: 16. Juli 2025*
@@ -0,0 +1,117 @@
1
+ # Komponenten-Entwicklung mit XTend
2
+
3
+ > **Hinweis:** Siehe auch: [xrouter](./components/xrouter.md), [xlink](./components/xlink.md)
4
+
5
+ ## Übersicht
6
+
7
+ XTend-Komponenten sind eigenständige, wiederverwendbare Web Components, die als Custom Elements implementiert werden. Sie ermöglichen eine modulare, deklarative und performante Entwicklung moderner Webanwendungen.
8
+
9
+ ---
10
+
11
+ ## Grundprinzipien
12
+
13
+ - Jede Komponente ist ein ES6-Modul (JavaScript-Datei) und wird per Manifest dynamisch geladen.
14
+ - Komponenten verwenden das Custom Elements API (`customElements.define`).
15
+ - Der Manifest-Key ist der kanonische Runtime-/Catalog-Name. Fuer Custom Elements ist er zugleich der Tag-Name, z.B. `x-button`, `x-input`, `x-summary`.
16
+ - Source- und Docs-Slugs folgen im Bestand dem Modul-Basename ohne Bindestrich, z.B. `xbutton.js` mit `docs/components/xbutton.md` fuer Manifest-Key `x-button`.
17
+ - Komponenten sind unabhängig, können aber andere XTend-Komponenten nutzen.
18
+
19
+ ### Naming-Konvention ab ER-WP-32
20
+
21
+ | Ebene | Regel | Beispiel |
22
+ |-------|-------|----------|
23
+ | Manifest-Key | kanonischer Runtime- und Catalog-Name | `x-summary` |
24
+ | Custom Element Tag | identisch zum Manifest-Key, wenn ein Custom Element registriert wird | `<x-summary>` |
25
+ | Source-Datei | Modul-Basename aus dem Manifest-Pfad | `xsummary.js` |
26
+ | Component-Doku | Source-Basename plus `.md` | `docs/components/xsummary.md` |
27
+ | Docs-Menu-Slug | `components-` plus Source-Basename | `components-xsummary` |
28
+
29
+ Ausnahmen bleiben explizit dokumentiert: `xstate` ist ein Plattform-State-Modul, `x-utils` ist ein Utility-Modul ohne Custom Element und `x-theme` ist ein Core-Theme-Modul mit Runtime-Fassade unter `window.XTend.theme`. Die vollstaendige Entscheidung liegt in `development/XTend-Component-Catalog-Naming-Konvention.md`.
30
+
31
+ ---
32
+
33
+ ## Struktur einer Komponente
34
+
35
+ Typischerweise besteht eine Komponente aus:
36
+ - **Klasse**: Erbt von `HTMLElement` oder einer anderen Web Component-Basis.
37
+ - **Template**: HTML-Struktur, meist als Template-String oder Shadow DOM.
38
+ - **Styles**: Inline, als CSS-String oder per Shadow DOM gekapselt.
39
+ - **Registrierung**: Über `customElements.define('xname', XName)`.
40
+
41
+ ### Beispiel: Minimal-Komponente
42
+
43
+ ```js
44
+ class XButton extends HTMLElement {
45
+ constructor() {
46
+ super();
47
+ this.attachShadow({ mode: 'open' });
48
+ this.shadowRoot.innerHTML = `
49
+ <button><slot></slot></button>
50
+ <style>button { padding: 8px; }</style>
51
+ `;
52
+ }
53
+ }
54
+ customElements.define('x-button', XButton);
55
+ ```
56
+
57
+ ---
58
+
59
+ ## Best Practices
60
+
61
+ - **Kapselung:** Möglichst Shadow DOM nutzen, um Styles und Markup zu isolieren.
62
+ - **Namenskonvention:** Manifest-Key und Custom-Element-Tag sind kanonisch; Source- und Docs-Slugs folgen dem Modul-Basename.
63
+ - **Wiederverwendbarkeit:** Komponenten sollten unabhängig und konfigurierbar sein (Attribute, Properties, Events).
64
+ - **Lazy Loading:** Komponenten werden nur geladen, wenn sie im DOM verwendet werden.
65
+ - **Dokumentation:** Jede Komponente sollte eine eigene MD-Datei mit API, Attributen, Events und Beispielen erhalten.
66
+
67
+ ---
68
+
69
+ ## Erweiterte Features
70
+
71
+ - **Attribute & Properties:** Überwache Attribute mit `static get observedAttributes()` und reagiere auf Änderungen.
72
+ - **Events:** Verwende `this.dispatchEvent(new CustomEvent(...))` für Kommunikation.
73
+ - **Slots:** Nutze `<slot>` für flexible Inhalte.
74
+ - **Theming:** Nutze CSS Custom Properties für Anpassbarkeit.
75
+ - **Ikonographie:** Nutze [`x-icon`](./components/xicon.md) als lokalen, RMT-kompatiblen Icon-Adapter fuer Core-Icons, lokale Lucide-Sets und Corporate-Design-Packs.
76
+
77
+ ---
78
+
79
+ ## Beispiel: Erweiterte Komponente
80
+
81
+ ```js
82
+ class XInput extends HTMLElement {
83
+ static get observedAttributes() { return ['value']; }
84
+ constructor() {
85
+ super();
86
+ this.attachShadow({ mode: 'open' });
87
+ this.shadowRoot.innerHTML = `
88
+ <input type="text" />
89
+ <style>input { border: 1px solid #ccc; }</style>
90
+ `;
91
+ }
92
+ attributeChangedCallback(name, oldVal, newVal) {
93
+ if (name === 'value') {
94
+ this.shadowRoot.querySelector('input').value = newVal;
95
+ }
96
+ }
97
+ }
98
+ customElements.define('xinput', XInput);
99
+ ```
100
+
101
+ ---
102
+
103
+ ## Testen & Debugging
104
+
105
+ - Komponenten können direkt im HTML getestet werden.
106
+ - Nutze den lokalen Loader `xtend-loader.js` und den lokalen Dev-Server fuer Browser-Smokes und manuelle Tests.
107
+
108
+ ---
109
+
110
+ ## Weiterführende Themen
111
+ - [Manifest-Format](./manifest.md)
112
+ - [XTend Loader](./xtend-loader.md)
113
+ - [API-Integration](./api.md)
114
+
115
+ ---
116
+
117
+ *Letzte Aktualisierung: 16. Juli 2025*
@@ -0,0 +1,38 @@
1
+ # Conditional Network Evidence CI
2
+
3
+ Contract: `xtend.epic13.conditional-network-evidence-ci.v1`
4
+
5
+ Status: `accepted-conditional-network-evidence-ci`
6
+
7
+ Workpackage: `DPF-WP-03-conditional-network-evidence-ci`
8
+
9
+ ## Ziel
10
+
11
+ Dieses Paket produktisiert Audit- und SBOM-Evidence fuer CI und Release Owner. Der lokale Gate bleibt netzwerkfrei; der CI-Job kann `npm audit --audit-level=moderate` und `npm sbom --sbom-format=cyclonedx --json` ausfuehren oder bei nicht verfuegbarem Netzwerk ein Owner-Deferral im Format `xtend.epic13.conditional-network-deferral.v1` schreiben.
12
+
13
+ ## Lokaler Gate
14
+
15
+ ```bash
16
+ node scripts/run_xtend_tests.js epic13-conditional-network-evidence-ci --json
17
+ npm run test:epic13-conditional-network-evidence-ci
18
+ ```
19
+
20
+ ## Capture
21
+
22
+ ```bash
23
+ npm run conditional-network:evidence
24
+ ```
25
+
26
+ Ohne `XTEND_CONDITIONAL_NETWORK_EXECUTE=1` schreibt der Capture lokale Deferral-Artefakte. In CI setzt `.github/workflows/xtend-default-gates.yml` `XTEND_CONDITIONAL_NETWORK_EXECUTE=1`, installiert Workspace-Links per `npm ci --ignore-scripts --no-audit --fund=false`, nutzt `XTEND_CONDITIONAL_NETWORK_USE_NPX_NPM10=1` fuer stabile SBOM-Ausgabe und laedt die Artefakte hoch:
27
+
28
+ - `.xtend-test-results/xtend-npm-audit-report.json`
29
+ - `.xtend-test-results/xtend-npm-sbom.json`
30
+ - `.xtend-test-results/xtend-conditional-network-evidence-report.json`
31
+
32
+ ## Grenzen
33
+
34
+ Nicht enthalten sind Dependency-Upgrades, Vulnerability-Fixes und Public Publish. Publish bleibt durch `private-until-release-owner-acceptance` blockiert, bis Audit/SBOM ausgefuehrt oder durch den Owner akzeptiert deferred sind.
35
+
36
+ Der separate GitHub-Actions-Job `npm-publish-next` laeuft per `workflow_dispatch` mit `publish_to_npm=true` oder nach `release: published` und erlaubt keine Deferrals: Er setzt `XTEND_CONDITIONAL_NETWORK_ALLOW_DEFERRAL=0`, wiederholt `release:report`, Pack- und Audit/SBOM-Evidence und fuehrt danach `npm publish --tag next --provenance --access public` aus.
37
+
38
+ Der naechste Schritt ist `DPF-WP-04-visual-pixel-evidence-storage`.
@@ -0,0 +1,50 @@
1
+ # Conditional Network Evidence
2
+
3
+ `xtend.epic13.conditional-network-evidence.v1` beschreibt, wie RC1 mit Netzwerk-Gates umgeht, ohne lokale Entwicklung zu blockieren.
4
+
5
+ Lokaler Gate:
6
+
7
+ ```bash
8
+ node scripts/run_xtend_tests.js epic13-conditional-network-evidence --json
9
+ ```
10
+
11
+ oder:
12
+
13
+ ```bash
14
+ npm run test:epic13-conditional-network-evidence
15
+ ```
16
+
17
+ ## Commands
18
+
19
+ | Command | Artefakt |
20
+ |---------|----------|
21
+ | `npm audit --audit-level=moderate` | `.xtend-test-results/xtend-npm-audit-report.json` |
22
+ | `npm sbom --sbom-format=cyclonedx --json` | `.xtend-test-results/xtend-npm-sbom.json` |
23
+
24
+ Der aggregierte Report liegt unter `.xtend-test-results/xtend-conditional-network-evidence-report.json`.
25
+
26
+ ## Lokales Verhalten
27
+
28
+ Der lokale Gate fuehrt die Netzwerkbefehle nicht automatisch aus. Stattdessen prueft er, dass XTend fuer Offline-, Sandbox- und CI-Umgebungen ein stabiles Evidence-/Deferral-Format besitzt.
29
+
30
+ Ab `DPF-WP-03` produktisiert [Conditional Network Evidence CI](./conditional-network-evidence-ci.md) den CI-Job und den Capture-Befehl `npm run conditional-network:evidence` unter `xtend.epic13.conditional-network-evidence-ci.v1`. Der Job kann die Audit-/SBOM-Kommandos ausfuehren oder Owner-Deferrals in denselben Artefaktpfaden ablegen.
31
+
32
+ Default-Reason fuer lokale Deferrals:
33
+
34
+ ```text
35
+ network-restricted-local-default
36
+ ```
37
+
38
+ Weitere erlaubte Gruende:
39
+
40
+ - `sandbox-network-unavailable`
41
+ - `registry-auth-unavailable`
42
+ - `owner-approved-offline-run`
43
+
44
+ ## Publish Boundary
45
+
46
+ `private-until-release-owner-acceptance` bleibt aktiv. Deferred Network Evidence ist ein Review-Signal, aber keine Publish-Freigabe.
47
+
48
+ `WP-E13-04` ist abgeschlossen. Der Package Export Lock beschreibt unter [Package Export Lock](./package-export-lock.md), wie `npm run pack:dry-run` und die Export Surface fuer RC1 gesperrt werden. `WP-E13-05` ist abgeschlossen; `WP-E13-06` hat die [Hydration Performance Closure](./hydration-performance-closure.md) abgeschlossen. `WP-E13-07` hat die [PROD Browser CSP Smokes](./prod-browser-csp-smokes.md) vorbereitet. `WP-E13-08` hat [Visual Owner Artifacts](./visual-owner-artifacts.md) normalisiert. `WP-E13-09` ist nun startbar.
49
+
50
+ Weiterfuehrend: [Release Owner Acceptance](./release-owner-acceptance.md).
@@ -0,0 +1,110 @@
1
+ # XTend Core Migration Guide
2
+
3
+ ## Uebersicht
4
+
5
+ Dieser Guide fasst die produktiven Core-Standards aus Epic 01 zusammen. Er dient als Migrationshilfe fuer Legacy-Call-Sites und als Referenz fuer neue XTend-Core-Aenderungen.
6
+
7
+ ## Verifikation
8
+
9
+ Der aktuelle Core-Contract ist automatisiert pruefbar:
10
+
11
+ ```bash
12
+ node scripts/verify_xtend_core_contracts.js
13
+ ```
14
+
15
+ ## Runtime-Standards
16
+
17
+ - `window.XTend.compliance` stellt Checklist, Contract-Uebersicht und Theme-Tokens bereit.
18
+ - zentrale Design-Tokens werden ueber `xtheme` pro Theme registriert und auf `document.documentElement` gespiegelt.
19
+ - Overlay- und Feedback-Komponenten respektieren `prefers-reduced-motion`, Fokus-Standards und kanonische XTend-State-Keys.
20
+
21
+ ## RMT-Templating-Migration ab Epic 04
22
+
23
+ RMT-Templating ist additiv und opt-in. Bestehende XTend-Apps, klassische HTML-/JS-Integrationen und bestehende Web-Component-Nutzung bleiben gueltig. Eine App nutzt XTendRMT erst, wenn sie ein `.rmt` Dokument, einen RMT Root-Handshake, einen Template-Record oder einen Host Adapter bewusst registriert.
24
+
25
+ Die verbindliche Migrationsnotiz liegt in `development/XTendRMT-Migrations-und-Framework-Agnostik-Leitplanken.md`.
26
+ Der aktuelle Produktueberblick liegt in `docs/xtendrmt-overview.md`. Das produktive native Authoring-Modell ab Epic 05 liegt in `docs/xtendrmt-native-authoring.md`; die App-DSL-Referenz liegt in `docs/xtendrmt-app-dsl.md`; Runtime Bridge und Adapter sind in `docs/xtendrmt-runtime-bridge.md` beschrieben. Die Migration von Metadatenpfaden zu Top-Level-Domains liegt in `docs/xtendrmt-migration-guide.md`.
27
+
28
+ | Ausgangslage | Migrationspfad |
29
+ |--------------|----------------|
30
+ | XTend-only App | unveraendert weiter betreiben; RMT nur fuer neue Roots oder Template-Piloten aktivieren |
31
+ | XTend mit XRouter | Route-Records vorbereiten, produktive Adapterausfuehrung in Epic 05 |
32
+ | XTend neben React/Vue | RMT als Scheduler oder Template-Transport nutzen, Host Adapter getrennt halten |
33
+ | Vanilla oder Custom Host | eigene Scheduler-Endpoints deklarieren, keine XTend-Capabilities voraussetzen |
34
+ | Legacy-Demo | klassifizieren und pruefen, nicht stillschweigend zum RMT-Produktcontract machen |
35
+
36
+ Review-Regeln fuer RMT-kompatible Aenderungen:
37
+
38
+ - keine XTend Runtime-Imports im RMT Kernel
39
+ - keine erzwungene Migration bestehender Apps
40
+ - keine neue XTend-Template-Sprache neben RMT
41
+ - `kernelVisible: false` fuer XTend-spezifische Adapterdaten
42
+ - produktive Bridge-Factories statt privater Demo-Brueckenlogik verwenden
43
+ - historische Scaffold-Artefakte mit `bridgeRuntime: reserved-for-Epic-05` bleiben als Epic-04-Handoff lesbar, sind aber nicht mehr der operative Bridge-Status
44
+ - `node scripts/run_xtend_tests.js rmt-compatibility --json` und `node scripts/run_xtend_tests.js references --json` als Mindestgates
45
+
46
+ ## Native RMT Routes und Components ab Epic 05
47
+
48
+ Neue App-DSL-Dokumente sollen operative Routing-, Component- und Scheduling-Daten in nativen Top-Level-Domains fuehren:
49
+
50
+ - `manifest.metadata.routes -> routes`
51
+ - `manifest.metadata.components -> components`
52
+ - `manifest.metadata.schedules -> schedules`
53
+ - `xtend.xrouter` bleibt Router Adapter
54
+ - `xtend.component` bleibt Component Adapter
55
+ - `rmt.state-scheduler-diagnostics` bleibt Bridge Adapter
56
+
57
+ `manifest.metadata` bleibt fuer Beschreibung, Handoff und historische Demo-Notizen gueltig, soll aber keine neue operative Route-/Component-Bridge tragen. Template-only-Dokumente bleiben kompatibel.
58
+
59
+ Die produktive Ausfuehrung nutzt:
60
+
61
+ - `createRmtFormat().normalizeDocument(...)`
62
+ - `createRmtFormat().createRuntimeRegistries(...)`
63
+ - `createRmtXRouterAdapter(...)`
64
+ - `createRmtXtendComponentAdapter(...)`
65
+ - `createRmtStateSchedulerDiagnosticsBridge(...)`
66
+
67
+ Die Docs-App selbst bleibt Parsedown-basiert, rendert ihre App Shell aber inzwischen Shell-first aus RMT. Der Scheduling- und Shell-Pfad ist seit `ER-WP-40` in `docs/xtendrmt-parsedown-scheduling.md` und `docs/xtendrmt-parsedown-docs.rmt` als offizieller Pilot beschrieben.
68
+
69
+ ## Legacy zu kanonisch
70
+
71
+ | Bereich | Legacy | Kanonisch | Status |
72
+ |--------|--------|-----------|--------|
73
+ | Dialog Open | `dialog-open-<id>` | `xtend.component.x-dialog.<id>.open` | Legacy bleibt kompatibel |
74
+ | Dialog Open | `xdialog-open-<id>` | `xtend.component.x-dialog.<id>.open` | Legacy bleibt kompatibel |
75
+ | Modal Open | `modal-open-<id>` | `xtend.component.x-modal.<id>.open` | Legacy bleibt kompatibel |
76
+ | Theme Current | `theme` | `xtend.theme.current` | beide werden gespiegelt |
77
+ | Theme List | `themes` | `xtend.theme.available` | beide werden gespiegelt |
78
+ | Router Last Navigation | `router-navigated` | `xtend.router.lastNavigated` | beide werden gespiegelt |
79
+ | Alert State | `xalert-state-<id>` | `xtend.component.x-alert.<id>` | Legacy bleibt kompatibel |
80
+
81
+ ## Was neue Core-Aenderungen beachten muessen
82
+
83
+ - neue UI-Flows brauchen einen expliziten `xstate`-Zwilling
84
+ - Doku, API, Typdefinitionen und Runtime muessen denselben Contract verwenden
85
+ - neue Komponenten oder groessere Core-Aenderungen muessen gegen die Compliance-Checklist und den Verify-Script laufen
86
+
87
+ ## Design-Tokens
88
+
89
+ Die zentralen Tokens kommen aus `xtheme` und koennen pro Theme angepasst werden:
90
+
91
+ - `--xtend-color-primary`
92
+ - `--xtend-color-primary-dark`
93
+ - `--xtend-color-accent`
94
+ - `--xtend-glass-bg`
95
+ - `--xtend-glass-blur`
96
+ - `--xtend-shadow`
97
+ - `--xtend-border`
98
+ - `--xtend-radius`
99
+ - `--xtend-font-family`
100
+ - `--xtend-focus-outline`
101
+ - `--xtend-surface`
102
+ - `--xtend-surface-muted`
103
+ - `--xtend-text`
104
+ - `--xtend-overlay-bg`
105
+
106
+ ## Hinweise fuer bestehende Integrationen
107
+
108
+ - Bestehende Legacy-Open-Flags fuer Dialog und Modal muessen nicht sofort entfernt werden, sollten aber nicht mehr neu eingefuehrt werden.
109
+ - Neue API-nahe Integrationen sollen `window.XTend.*` statt unnamespaced Helpern bevorzugen.
110
+ - Fuer Core-Reviews ist die Checkliste in `development/XTend-Core-Compliance-Checklist.md` die operative Quelle.
@@ -0,0 +1,116 @@
1
+ # Design Tokens
2
+
3
+ XTend nutzt ab `WP-E12-12` den Contract `xtend.design-tokens.product-contract.v1`. Damit sind zentrale Theme-, Density-, Motion-, Focus- und Statuswerte eine stabile Produkt-API, nicht nur interne CSS-Hilfswerte.
4
+
5
+ Lokaler Gate:
6
+
7
+ ```bash
8
+ node scripts/run_xtend_tests.js design-tokens --json
9
+ npm run test:design-tokens
10
+ ```
11
+
12
+ ## Runtime Provider
13
+
14
+ `x-theme` ist der Runtime Provider. Apps koennen Tokens ueber Theme Packs registrieren:
15
+
16
+ ```js
17
+ window.XTend.theme.registerTheme('enterprise-light', {
18
+ '--xtend-color-primary': '#2563eb',
19
+ '--xtend-surface': '#ffffff',
20
+ '--xtend-text': '#111827',
21
+ '--xtend-density-spacing': '0.75rem'
22
+ });
23
+ ```
24
+
25
+ Die vollstaendige Beispielbasis liegt in `design-tokens/themes/enterprise-light.json`.
26
+
27
+ ## Produkt-Tokens
28
+
29
+ Wichtige Custom Properties:
30
+
31
+ | Token | Zweck |
32
+ |-------|-------|
33
+ | `--xtend-color-primary` | interaktive Primaerfarbe |
34
+ | `--xtend-color-primary-dark` | Hover-/Active-Variante |
35
+ | `--xtend-color-accent` | Akzent oder inverse Vordergrundfarbe |
36
+ | `--xtend-surface` | Standardflaeche |
37
+ | `--xtend-surface-muted` | sekundare Flaeche |
38
+ | `--xtend-text` | Standardtext |
39
+ | `--xtend-overlay-bg` | Overlay-Hintergrund |
40
+ | `--xtend-border-color` | semantische Borderfarbe |
41
+ | `--xtend-focus-outline` | Keyboard-Fokus |
42
+ | `--xtend-focus-outline-offset` | Fokus-Abstand |
43
+ | `--xtend-info-bg` / `--xtend-info-fg` | Info-Status |
44
+ | `--xtend-success-bg` / `--xtend-success-fg` | Success-Status |
45
+ | `--xtend-warning-bg` / `--xtend-warning-fg` | Warning-Status |
46
+ | `--xtend-error-bg` / `--xtend-error-fg` | Error-Status |
47
+ | `--xtend-shadow` | Elevation |
48
+ | `--xtend-radius` | Standardradius |
49
+ | `--xtend-font-family` | Schriftfamilie |
50
+ | `--xtend-motion-duration-fast` | schnelle Transition |
51
+ | `--xtend-motion-duration-base` | Basis-Transition |
52
+ | `--xtend-motion-scale` | Motion-Skalierung |
53
+ | `--xtend-density-spacing` | Density-Abstand |
54
+ | `--xtend-control-height` | Density-Control-Hoehe |
55
+ | `--xtend-font-scale` | Density-Schrift-Skalierung |
56
+
57
+ ## Theme Packs
58
+
59
+ Pflicht-Packs:
60
+
61
+ - `light`
62
+ - `dark`
63
+ - `high-contrast`
64
+ - `forced-colors`
65
+
66
+ `high-contrast` und `forced-colors` sind Teil des Produktvertrags. `forced-colors` nutzt Systemfarben wie `Canvas`, `CanvasText`, `Highlight` und `HighlightText`.
67
+
68
+ ## Density Packs
69
+
70
+ Pflicht-Packs:
71
+
72
+ - `comfortable`
73
+ - `compact`
74
+ - `dense`
75
+
76
+ `x-theme.setDensity('dense')` setzt `--xtend-density-spacing`, `--xtend-density-scale`, `--xtend-control-height` und `--xtend-font-scale`. `spacious` ist nicht mehr Teil der Enterprise-Token-Linie.
77
+
78
+ ## CSS Parts
79
+
80
+ Die Token-Schicht ergaenzt den Component Styling Contract. Komponenten dokumentieren weiterhin ihre eigenen `::part(...)` Oberflaechen. Gemeinsame Public Parts sind:
81
+
82
+ - `root`
83
+ - `control`
84
+ - `label`
85
+ - `content`
86
+ - `helper`
87
+ - `error`
88
+ - `icon`
89
+ - `panel`
90
+ - `overlay`
91
+ - `backdrop`
92
+ - `listbox`
93
+ - `option`
94
+ - `track`
95
+ - `thumb`
96
+ - `media`
97
+
98
+ ## RMT Authoring
99
+
100
+ RMT kann Theme Packs, Density Packs und Style-Daten schedulen oder deklarieren. Der Kernel importiert keine XTend-Typen; die Boundary bleibt `no-rmt-kernel-import-of-xtend-types`.
101
+
102
+ Die Component Shell Theme Matrix und Visual Snapshot Fixture nutzen dieselben `--xtend-*` Tokens wie `x-theme`. Dadurch koennen XTend Apps spaeter komplett RMT-first templated werden, ohne ein zweites Token-Vokabular mitzuschleppen.
103
+
104
+ ## RC0 Adoption Update
105
+
106
+ Seit `WP-E12-15` verweist der [RC0 Adoption Guide](./rc0-adoption-guide.md) auf Design Tokens als verpflichtende Styling-Baseline fuer neue Komponenten und RMT-Shells. Token- oder CSS-Part-Aenderungen gelten als Public-API-Aenderungen und brauchen Migration Notes im RC0-Handoff.
107
+
108
+ ## ECH-WP-11 Drittanbieter Design Authoring Update
109
+
110
+ Der Guide [Drittanbieter Design Authoring](./third-party-design-authoring.md) uebersetzt die Token-Schicht in einen Corporate-Design-Pfad fuer Host-Apps. Er beschreibt XTend.css Override Patterns, XTheme Token Bridge, CSS Parts, Icon Pack Registrierung, Layout Modes, A11y-Dos and Donts, P0 Token-/Part-Referenzen und Migration von Legacy Token-Namen.
111
+
112
+ Lokaler Gate:
113
+
114
+ ```bash
115
+ node scripts/run_xtend_tests.js enterprise-third-party-authoring-guide --json
116
+ ```
@@ -0,0 +1,31 @@
1
+ # Docs RMT Production Hardening
2
+
3
+ `WP-E13-10` hebt den bisherigen Docs-App Parsedown/RMT-Pilot auf einen PROD-naeheren RC1-Schnitt.
4
+
5
+ - Contract: `xtend.epic13.docs-rmt-production-hardening.v1`
6
+ - RMT-Dokument: `docs/xtendrmt-parsedown-docs.rmt`
7
+ - Host: `docs/index.php`
8
+ - Page Loader: `docs/utils/pageloader.js`
9
+ - Gate: `node scripts/run_xtend_tests.js epic13-docs-rmt-production-hardening --json`
10
+ - Trusted DOM Proof: `xtend.epic13.trusted-dom-boundary.v1`
11
+
12
+ ## Zweck
13
+
14
+ Die Docs-App bleibt eine XTend-App mit PHP/Parsedown als Parser-Host. RMT rendert Shell-first die App Shell, markiert stabile Slots und scheduled Erweiterungen. Parsedown, PHP-Ausfuehrung und Sanitizing bleiben ausserhalb des RMT-Kernels.
15
+
16
+ ## Extension Slots
17
+
18
+ | Slot | Content Kind | Schedule | Boundary |
19
+ |------|--------------|----------|----------|
20
+ | `docs.slot.content` | `parsedownHtml` | `docs.markdown.parse` | `xtend.security.sanitizing-boundary.v1` |
21
+ | `docs.slot.rich-content` | `richHtml` | `docs.rich-content.prepare` | `xtend.security.sanitizing-boundary.v1` |
22
+ | `docs.slot.media` | `xplayerTutorial` | `docs.media.lazy` | component-managed |
23
+ | `docs.slot.diagnostics` | `diagnostics` | `docs.diagnostics.snapshot` | structured-diagnostics |
24
+
25
+ ## Runtime Metadata
26
+
27
+ `docs/index.php` stellt `window.xtendDocsRmtProductionHardening` bereit. `docs/utils/pageloader.js` spiegelt pro Route `window.xtendDocsRmtProductionLastRender` mit Shell-first-Status, Extension-Slots, Schedules, Diagnostics-Slot und Kernel-Boundary.
28
+
29
+ ## Handoff
30
+
31
+ `WP-E13-10` ist abgeschlossen. `WP-E13-11` hat Trusted DOM, Parsedown und RMT HTML Boundary browsernah unter [Trusted DOM Boundary Browser Proof](./trusted-dom-boundary-browser-proof.md) geprueft. `WP-E13-12` hat [RC1 Migration Notes](./rc1-migration-notes.md) und `xtend.epic13.rc1-migration-notes-semver.v1` abgeschlossen. `WP-E13-13` hat [RC1 Gate Matrix und CI-Handoff](./rc1-gate-matrix-ci-handoff.md) und `xtend.epic13.rc1-gate-matrix-ci-handoff.v1` abgeschlossen.