@ccslabs/xtend 0.1.0-rc.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/README.md +4 -0
- package/catalog/component-catalog-coverage.js +2 -0
- package/catalog/epic13-package-export-lock.js +11 -1
- package/catalog/epic13-rmt-production-readiness.js +0 -1
- package/catalog/epic18-rmt-action-effect-runtime.d.ts +36 -0
- package/catalog/epic18-rmt-action-effect-runtime.js +249 -0
- package/catalog/epic18-rmt-app-platform-authoring.d.ts +39 -0
- package/catalog/epic18-rmt-app-platform-authoring.js +319 -0
- package/catalog/epic18-rmt-app-platform-fixture.d.ts +33 -0
- package/catalog/epic18-rmt-app-platform-fixture.js +221 -0
- package/catalog/epic18-rmt-app-platform-release-handoff.d.ts +30 -0
- package/catalog/epic18-rmt-app-platform-release-handoff.js +231 -0
- package/catalog/epic18-rmt-app-platform-tooling.d.ts +38 -0
- package/catalog/epic18-rmt-app-platform-tooling.js +242 -0
- package/catalog/epic18-rmt-component-template-primitives.d.ts +33 -0
- package/catalog/epic18-rmt-component-template-primitives.js +240 -0
- package/catalog/epic18-rmt-dom-descriptor-renderer.d.ts +35 -0
- package/catalog/epic18-rmt-dom-descriptor-renderer.js +232 -0
- package/catalog/epic18-rmt-event-routing-runtime.d.ts +35 -0
- package/catalog/epic18-rmt-event-routing-runtime.js +234 -0
- package/catalog/epic18-rmt-state-selector-runtime.d.ts +34 -0
- package/catalog/epic18-rmt-state-selector-runtime.js +216 -0
- package/catalog/epic18-rmt-surface-resource-graph-runtime.d.ts +36 -0
- package/catalog/epic18-rmt-surface-resource-graph-runtime.js +256 -0
- package/catalog/surface-manager-controller.js +5 -1
- package/catalog/surface-manager-materialization.js +7 -1
- package/catalog/surface-manager-overlay-bridge.js +41 -6
- package/catalog/surface-manager-workbench-fixture.js +1 -1
- package/catalog/surface-type-capability-matrix.d.ts +61 -0
- package/catalog/surface-type-capability-matrix.js +183 -0
- package/catalog/type-exports-rmt.js +37 -1
- package/catalog/type-exports.js +3 -3
- package/components/icon-packs/lucide.js +4 -0
- package/components/manifest.json +2 -0
- package/components/prism-rmt.d.ts +34 -0
- package/components/prism-rmt.js +130 -0
- package/components/xcards.js +15 -0
- package/components/xcode.d.ts +36 -1
- package/components/xcode.js +215 -20
- package/components/xfooter.js +17 -0
- package/components/xheader.js +14 -0
- package/components/xhero.js +16 -1
- package/components/xlink.js +97 -14
- package/components/xmasonry.js +15 -0
- package/components/xplayer.d.ts +44 -2
- package/components/xplayer.js +242 -15
- package/components/xrouter.js +27 -2
- package/components/xsection.js +15 -0
- package/components/xsidepanel.js +10 -2
- package/components/xsurfacemanager-controller.d.ts +2 -1
- package/components/xsurfacemanager-controller.js +27 -3
- package/components/xsurfacemanager.d.ts +2 -0
- package/components/xsurfacemanager.js +20 -8
- package/components/xsurfaceoverlay-bridge.d.ts +20 -5
- package/components/xsurfaceoverlay-bridge.js +114 -18
- package/components/xsurfaceportal.d.ts +29 -0
- package/components/xsurfaceportal.js +122 -0
- package/components/xsurfaceregion.d.ts +50 -0
- package/components/xsurfaceregion.js +285 -0
- package/components/xsurfacewindow.js +2 -1
- package/components/xtooltip.js +89 -23
- package/docs/README.md +222 -298
- package/docs/changelog.md +107 -0
- package/docs/component-catalog-coverage.md +9 -9
- package/docs/component-platform.md +19 -1
- package/docs/component-ux-app-authoring.md +56 -63
- package/docs/components/xcode.md +83 -53
- package/docs/components/xsurfaceportal.md +32 -0
- package/docs/components/xsurfaceregion.md +37 -0
- package/docs/components.md +105 -69
- package/docs/de/README.md +264 -0
- package/docs/de/XTend-ADR.md +221 -0
- package/docs/de/a11y-keyboard-smokes.md +62 -0
- package/docs/de/about.md +18 -0
- package/docs/de/api.md +157 -0
- package/docs/de/best-practices.md +76 -0
- package/docs/de/changelog.md +107 -0
- package/docs/de/component-catalog-coverage.md +58 -0
- package/docs/de/component-lab.md +103 -0
- package/docs/de/component-long-tail-migration.md +41 -0
- package/docs/de/component-platform.md +177 -0
- package/docs/de/component-ux-app-authoring.md +123 -0
- package/docs/de/component-ux-authoring.md +96 -0
- package/docs/de/component-ux-gates.md +45 -0
- package/docs/de/components/x-rmt-lifecycle-demo-build.md +60 -0
- package/docs/de/components/xalert.md +81 -0
- package/docs/de/components/xbutton.md +103 -0
- package/docs/de/components/xcalendar.md +82 -0
- package/docs/de/components/xcards.md +128 -0
- package/docs/de/components/xcheckbox.md +102 -0
- package/docs/de/components/xcode.md +156 -0
- package/docs/de/components/xdialog.md +92 -0
- package/docs/de/components/xdrawer.md +84 -0
- package/docs/de/components/xfooter.md +126 -0
- package/docs/de/components/xform.md +128 -0
- package/docs/de/components/xheader.md +308 -0
- package/docs/de/components/xhero.md +142 -0
- package/docs/de/components/xicon.md +125 -0
- package/docs/de/components/xinput.md +129 -0
- package/docs/de/components/xlightbox.md +98 -0
- package/docs/de/components/xlink.md +109 -0
- package/docs/de/components/xmasonry.md +124 -0
- package/docs/de/components/xmenu.md +158 -0
- package/docs/de/components/xmodal.md +82 -0
- package/docs/de/components/xplayer.md +104 -0
- package/docs/de/components/xpopover.md +67 -0
- package/docs/de/components/xprogress.md +56 -0
- package/docs/de/components/xradio.md +103 -0
- package/docs/de/components/xrouter.md +260 -0
- package/docs/de/components/xsection.md +125 -0
- package/docs/de/components/xselect.md +105 -0
- package/docs/de/components/xsidepanel.md +30 -0
- package/docs/de/components/xspinner.md +102 -0
- package/docs/de/components/xstate.md +148 -0
- package/docs/de/components/xstatus.md +55 -0
- package/docs/de/components/xsummary.md +78 -0
- package/docs/de/components/xsurfacemanager.md +27 -0
- package/docs/de/components/xsurfacewindow.md +21 -0
- package/docs/de/components/xtabs.md +160 -0
- package/docs/de/components/xtextarea.md +98 -0
- package/docs/de/components/xtheme.md +167 -0
- package/docs/de/components/xtoast.md +62 -0
- package/docs/de/components/xtooltip.md +66 -0
- package/docs/de/components/xtype.md +82 -0
- package/docs/de/components/xutils.md +144 -0
- package/docs/de/components/xwriter.md +94 -0
- package/docs/de/components.md +153 -0
- package/docs/de/conditional-network-evidence-ci.md +38 -0
- package/docs/de/conditional-network-evidence.md +50 -0
- package/docs/de/core-migration-guide.md +110 -0
- package/docs/de/design-tokens.md +116 -0
- package/docs/de/docs-rmt-production-hardening.md +31 -0
- package/docs/de/enterprise-adoption.md +413 -0
- package/docs/de/enterprise-component-flex-release-handoff.md +129 -0
- package/docs/de/epic10-platform-gates.md +62 -0
- package/docs/de/epic10-release-handoff.md +81 -0
- package/docs/de/epic11-enterprise-ux-handoff.md +70 -0
- package/docs/de/epic12-rc0-handoff.md +61 -0
- package/docs/de/epic18-media-manager-vendor-upstream.md +318 -0
- package/docs/de/epic18-rmt-app-platform-release-handoff.md +67 -0
- package/docs/de/epic18-vendor-bugfixes.md +34 -0
- package/docs/de/existing-component-metadata.md +67 -0
- package/docs/de/hydration-performance-closure.md +34 -0
- package/docs/de/hydration-policies.md +71 -0
- package/docs/de/known-residual-triage.md +22 -0
- package/docs/de/manifest-import-policy.md +79 -0
- package/docs/de/manifest.md +112 -0
- package/docs/de/motion-contrast.md +67 -0
- package/docs/de/package-export-lock.md +44 -0
- package/docs/de/performance-measurements.md +106 -0
- package/docs/de/performance-regression.md +89 -0
- package/docs/de/performance.md +94 -0
- package/docs/de/previews/README.md +17 -0
- package/docs/de/prod-browser-csp-smokes.md +40 -0
- package/docs/de/public-component-types.md +79 -0
- package/docs/de/quick-start-guide.md +220 -0
- package/docs/de/rc0-adoption-guide.md +102 -0
- package/docs/de/rc0-gate-matrix.md +58 -0
- package/docs/de/rc1-gate-matrix-ci-handoff.md +56 -0
- package/docs/de/rc1-migration-notes.md +69 -0
- package/docs/de/rc1-readiness.md +46 -0
- package/docs/de/release-owner-acceptance.md +56 -0
- package/docs/de/release-report-pack-dry-run-evidence.md +39 -0
- package/docs/de/rmt-action-effect-runtime.md +81 -0
- package/docs/de/rmt-app-platform-authoring.md +54 -0
- package/docs/de/rmt-app-platform-fixture.md +46 -0
- package/docs/de/rmt-app-platform-migration-guide.md +88 -0
- package/docs/de/rmt-app-platform-tooling.md +79 -0
- package/docs/de/rmt-component-template-primitives.md +57 -0
- package/docs/de/rmt-dom-descriptor-renderer.md +64 -0
- package/docs/de/rmt-dsl-authoring-polish.md +145 -0
- package/docs/de/rmt-event-routing-runtime.md +81 -0
- package/docs/de/rmt-first-demo-app.md +77 -0
- package/docs/de/rmt-first-xtend-apps.md +129 -0
- package/docs/de/rmt-kernel-panic-recovery-incident-handoff.md +61 -0
- package/docs/de/rmt-kernel-security-hardening-migration.md +50 -0
- package/docs/de/rmt-kernel-trusted-output-authoring.md +69 -0
- package/docs/de/rmt-language-server.md +234 -0
- package/docs/de/rmt-lifecycle-demo.md +24 -0
- package/docs/de/rmt-linter.md +140 -0
- package/docs/de/rmt-node-ssr-adapter.md +100 -0
- package/docs/de/rmt-php-ssr-adapter.md +120 -0
- package/docs/de/rmt-production-readiness.md +63 -0
- package/docs/de/rmt-state-selector-runtime.md +47 -0
- package/docs/de/rmt-surface-resource-graph-runtime.md +92 -0
- package/docs/de/rmt-tooling-release-gates.md +77 -0
- package/docs/de/rmt-vnext-authoring.md +170 -0
- package/docs/de/rmt-vnext-component-primitives.md +188 -0
- package/docs/de/rmt-vnext-cross-surface-events.md +68 -0
- package/docs/de/rmt-vnext-enterprise-mfe-handoff.md +70 -0
- package/docs/de/rmt-vnext-fabric-bridge-evidence.md +81 -0
- package/docs/de/rmt-vnext-migration-notes.md +62 -0
- package/docs/de/rmt-vnext-primitive-authoring-tooling.md +247 -0
- package/docs/de/rmt-vnext-primitive-grammar-design.md +289 -0
- package/docs/de/rmt-vnext-primitive-lowering.md +108 -0
- package/docs/de/rmt-vnext-primitive-migration.md +119 -0
- package/docs/de/rmt-vnext-primitive-parser-ast.md +76 -0
- package/docs/de/rmt-vnext-primitive-semantic-graph.md +118 -0
- package/docs/de/rmt-vnext-primitives-compiler-backlog.md +739 -0
- package/docs/de/rmt-vnext-release-handoff.md +83 -0
- package/docs/de/rmt-vnext-remote-surfaces.md +90 -0
- package/docs/de/rmt-vnext-source-to-sea-gate.md +612 -0
- package/docs/de/rmt-vnext-surface-registry-enterprise.md +76 -0
- package/docs/de/screenreader-signals.md +56 -0
- package/docs/de/supply-chain-gates.md +100 -0
- package/docs/de/surface-manager-authoring-guide.md +94 -0
- package/docs/de/surface-manager-browser-lab.md +45 -0
- package/docs/de/surface-manager-component-lab.md +43 -0
- package/docs/de/surface-manager-controller.md +66 -0
- package/docs/de/surface-manager-layout-engines.md +32 -0
- package/docs/de/surface-manager-lazy-hydration.md +63 -0
- package/docs/de/surface-manager-migration-guide.md +122 -0
- package/docs/de/surface-manager-native-rmt-surfaces.md +38 -0
- package/docs/de/surface-manager-overlay-bridge.md +53 -0
- package/docs/de/surface-manager-persistence.md +30 -0
- package/docs/de/surface-manager-quality-gates.md +51 -0
- package/docs/de/surface-manager-release-handoff.md +68 -0
- package/docs/de/surface-manager-remote-policy.md +54 -0
- package/docs/de/surface-manager-rmt-authoring.md +102 -0
- package/docs/de/surface-manager-route-lifecycle.md +59 -0
- package/docs/de/surface-manager-runtime-release-handoff.md +69 -0
- package/docs/de/surface-manager-side-panel-runtime.md +36 -0
- package/docs/de/surface-manager-stack-policy.md +39 -0
- package/docs/de/surface-manager-window-runtime.md +47 -0
- package/docs/de/surface-manager-workbench-fixture.md +43 -0
- package/docs/de/third-party-design-authoring.md +406 -0
- package/docs/de/trusted-dom-boundary-browser-proof.md +32 -0
- package/docs/de/trusted-dom-sanitizing.md +110 -0
- package/docs/de/type-exports.md +61 -0
- package/docs/de/typescript-components.md +63 -0
- package/docs/de/visual-browser-regression.md +83 -0
- package/docs/de/visual-owner-artifacts.md +46 -0
- package/docs/de/visual-snapshot-automation.md +87 -0
- package/docs/de/xtend-api-types.md +55 -0
- package/docs/de/xtend-builder-types.md +55 -0
- package/docs/de/xtend-catalog-types.md +44 -0
- package/docs/de/xtend-fabric-rmt-lane-mapping.md +143 -0
- package/docs/de/xtend-fabric.md +474 -0
- package/docs/de/xtend-loader-types.md +58 -0
- package/docs/de/xtend-loader.md +265 -0
- package/docs/de/xtend-policy-types.md +38 -0
- package/docs/de/xtend-rmt-types.md +40 -0
- package/docs/de/xtend-vendor-types.md +36 -0
- package/docs/de/xtendrmt-app-dsl.md +334 -0
- package/docs/de/xtendrmt-migration-guide.md +266 -0
- package/docs/de/xtendrmt-native-authoring.md +333 -0
- package/docs/de/xtendrmt-overview.md +109 -0
- package/docs/de/xtendrmt-parsedown-scheduling.md +301 -0
- package/docs/de/xtendrmt-runtime-bridge.md +155 -0
- package/docs/en/README.md +163 -0
- package/docs/en/XTend-ADR.md +221 -0
- package/docs/en/a11y-keyboard-smokes.md +68 -0
- package/docs/en/about.md +25 -0
- package/docs/en/api.md +171 -0
- package/docs/en/best-practices.md +125 -0
- package/docs/en/changelog.md +104 -0
- package/docs/en/component-catalog-coverage.md +104 -0
- package/docs/en/component-lab.md +103 -0
- package/docs/en/component-long-tail-migration.md +41 -0
- package/docs/en/component-platform.md +243 -0
- package/docs/en/component-ux-app-authoring.md +118 -0
- package/docs/en/component-ux-authoring.md +96 -0
- package/docs/en/component-ux-gates.md +45 -0
- package/docs/en/components/x-rmt-lifecycle-demo-build.md +75 -0
- package/docs/en/components/xalert.md +94 -0
- package/docs/en/components/xbutton.md +118 -0
- package/docs/en/components/xcalendar.md +95 -0
- package/docs/en/components/xcards.md +139 -0
- package/docs/en/components/xcheckbox.md +118 -0
- package/docs/en/components/xcode.md +153 -0
- package/docs/en/components/xdialog.md +108 -0
- package/docs/en/components/xdrawer.md +110 -0
- package/docs/en/components/xfooter.md +138 -0
- package/docs/en/components/xform.md +147 -0
- package/docs/en/components/xheader.md +308 -0
- package/docs/en/components/xhero.md +157 -0
- package/docs/en/components/xicon.md +149 -0
- package/docs/en/components/xinput.md +147 -0
- package/docs/en/components/xlightbox.md +113 -0
- package/docs/en/components/xlink.md +130 -0
- package/docs/en/components/xmasonry.md +136 -0
- package/docs/en/components/xmenu.md +185 -0
- package/docs/en/components/xmodal.md +102 -0
- package/docs/en/components/xplayer.md +114 -0
- package/docs/en/components/xpopover.md +87 -0
- package/docs/en/components/xprogress.md +73 -0
- package/docs/en/components/xradio.md +119 -0
- package/docs/en/components/xrouter.md +260 -0
- package/docs/en/components/xsection.md +136 -0
- package/docs/en/components/xselect.md +122 -0
- package/docs/en/components/xsidepanel.md +48 -0
- package/docs/en/components/xspinner.md +118 -0
- package/docs/en/components/xstate.md +163 -0
- package/docs/en/components/xstatus.md +71 -0
- package/docs/en/components/xsummary.md +90 -0
- package/docs/en/components/xsurfacemanager.md +42 -0
- package/docs/en/components/xsurfacewindow.md +31 -0
- package/docs/en/components/xtabs.md +187 -0
- package/docs/en/components/xtextarea.md +115 -0
- package/docs/en/components/xtheme.md +203 -0
- package/docs/en/components/xtoast.md +78 -0
- package/docs/en/components/xtooltip.md +85 -0
- package/docs/en/components/xtype.md +91 -0
- package/docs/en/components/xutils.md +161 -0
- package/docs/en/components/xwriter.md +106 -0
- package/docs/en/components.md +151 -0
- package/docs/en/conditional-network-evidence-ci.md +38 -0
- package/docs/en/conditional-network-evidence.md +50 -0
- package/docs/en/core-migration-guide.md +110 -0
- package/docs/en/design-tokens.md +137 -0
- package/docs/en/docs-rmt-production-hardening.md +31 -0
- package/docs/en/enterprise-adoption.md +413 -0
- package/docs/en/enterprise-component-flex-release-handoff.md +129 -0
- package/docs/en/epic10-platform-gates.md +62 -0
- package/docs/en/epic10-release-handoff.md +81 -0
- package/docs/en/epic11-enterprise-ux-handoff.md +70 -0
- package/docs/en/epic12-rc0-handoff.md +61 -0
- package/docs/en/epic18-media-manager-vendor-upstream.md +232 -0
- package/docs/en/epic18-rmt-app-platform-release-handoff.md +60 -0
- package/docs/en/epic18-vendor-bugfixes.md +29 -0
- package/docs/en/existing-component-metadata.md +67 -0
- package/docs/en/hydration-performance-closure.md +34 -0
- package/docs/en/hydration-policies.md +75 -0
- package/docs/en/known-residual-triage.md +22 -0
- package/docs/en/manifest-import-policy.md +81 -0
- package/docs/en/manifest.md +135 -0
- package/docs/en/motion-contrast.md +67 -0
- package/docs/en/package-export-lock.md +44 -0
- package/docs/en/performance-measurements.md +106 -0
- package/docs/en/performance-regression.md +89 -0
- package/docs/en/performance.md +132 -0
- package/docs/en/previews/README.md +17 -0
- package/docs/en/prod-browser-csp-smokes.md +40 -0
- package/docs/en/public-component-types.md +79 -0
- package/docs/en/quick-start-guide.md +189 -0
- package/docs/en/rc0-adoption-guide.md +102 -0
- package/docs/en/rc0-gate-matrix.md +58 -0
- package/docs/en/rc1-gate-matrix-ci-handoff.md +56 -0
- package/docs/en/rc1-migration-notes.md +69 -0
- package/docs/en/rc1-readiness.md +46 -0
- package/docs/en/release-owner-acceptance.md +56 -0
- package/docs/en/release-report-pack-dry-run-evidence.md +39 -0
- package/docs/en/rmt-action-effect-runtime.md +101 -0
- package/docs/en/rmt-app-platform-authoring.md +47 -0
- package/docs/en/rmt-app-platform-fixture.md +35 -0
- package/docs/en/rmt-app-platform-migration-guide.md +75 -0
- package/docs/en/rmt-app-platform-tooling.md +58 -0
- package/docs/en/rmt-component-template-primitives.md +49 -0
- package/docs/en/rmt-dom-descriptor-renderer.md +54 -0
- package/docs/en/rmt-dsl-authoring-polish.md +143 -0
- package/docs/en/rmt-event-routing-runtime.md +98 -0
- package/docs/en/rmt-first-demo-app.md +87 -0
- package/docs/en/rmt-first-xtend-apps.md +127 -0
- package/docs/en/rmt-kernel-panic-recovery-incident-handoff.md +60 -0
- package/docs/en/rmt-kernel-security-hardening-migration.md +49 -0
- package/docs/en/rmt-kernel-trusted-output-authoring.md +68 -0
- package/docs/en/rmt-language-server.md +243 -0
- package/docs/en/rmt-lifecycle-demo.md +23 -0
- package/docs/en/rmt-linter.md +146 -0
- package/docs/en/rmt-node-ssr-adapter.md +99 -0
- package/docs/en/rmt-php-ssr-adapter.md +118 -0
- package/docs/en/rmt-production-readiness.md +63 -0
- package/docs/en/rmt-state-selector-runtime.md +34 -0
- package/docs/en/rmt-surface-resource-graph-runtime.md +68 -0
- package/docs/en/rmt-tooling-release-gates.md +77 -0
- package/docs/en/rmt-vnext-authoring.md +102 -0
- package/docs/en/rmt-vnext-component-primitives.md +185 -0
- package/docs/en/rmt-vnext-cross-surface-events.md +59 -0
- package/docs/en/rmt-vnext-enterprise-mfe-handoff.md +62 -0
- package/docs/en/rmt-vnext-fabric-bridge-evidence.md +64 -0
- package/docs/en/rmt-vnext-migration-notes.md +62 -0
- package/docs/en/rmt-vnext-primitive-authoring-tooling.md +174 -0
- package/docs/en/rmt-vnext-primitive-grammar-design.md +268 -0
- package/docs/en/rmt-vnext-primitive-lowering.md +91 -0
- package/docs/en/rmt-vnext-primitive-migration.md +93 -0
- package/docs/en/rmt-vnext-primitive-parser-ast.md +59 -0
- package/docs/en/rmt-vnext-primitive-semantic-graph.md +103 -0
- package/docs/en/rmt-vnext-primitives-compiler-backlog.md +327 -0
- package/docs/en/rmt-vnext-release-handoff.md +83 -0
- package/docs/en/rmt-vnext-remote-surfaces.md +81 -0
- package/docs/en/rmt-vnext-source-to-sea-gate.md +482 -0
- package/docs/en/rmt-vnext-surface-registry-enterprise.md +68 -0
- package/docs/en/screenreader-signals.md +56 -0
- package/docs/en/supply-chain-gates.md +106 -0
- package/docs/en/surface-manager-authoring-guide.md +94 -0
- package/docs/en/surface-manager-browser-lab.md +45 -0
- package/docs/en/surface-manager-component-lab.md +43 -0
- package/docs/en/surface-manager-controller.md +66 -0
- package/docs/en/surface-manager-layout-engines.md +32 -0
- package/docs/en/surface-manager-lazy-hydration.md +63 -0
- package/docs/en/surface-manager-migration-guide.md +113 -0
- package/docs/en/surface-manager-native-rmt-surfaces.md +38 -0
- package/docs/en/surface-manager-overlay-bridge.md +53 -0
- package/docs/en/surface-manager-persistence.md +30 -0
- package/docs/en/surface-manager-quality-gates.md +51 -0
- package/docs/en/surface-manager-release-handoff.md +68 -0
- package/docs/en/surface-manager-remote-policy.md +54 -0
- package/docs/en/surface-manager-rmt-authoring.md +89 -0
- package/docs/en/surface-manager-route-lifecycle.md +59 -0
- package/docs/en/surface-manager-runtime-release-handoff.md +69 -0
- package/docs/en/surface-manager-side-panel-runtime.md +36 -0
- package/docs/en/surface-manager-stack-policy.md +39 -0
- package/docs/en/surface-manager-window-runtime.md +47 -0
- package/docs/en/surface-manager-workbench-fixture.md +43 -0
- package/docs/en/third-party-design-authoring.md +406 -0
- package/docs/en/trusted-dom-boundary-browser-proof.md +32 -0
- package/docs/en/trusted-dom-sanitizing.md +124 -0
- package/docs/en/type-exports.md +61 -0
- package/docs/en/typescript-components.md +63 -0
- package/docs/en/visual-browser-regression.md +83 -0
- package/docs/en/visual-owner-artifacts.md +46 -0
- package/docs/en/visual-snapshot-automation.md +87 -0
- package/docs/en/xtend-api-types.md +55 -0
- package/docs/en/xtend-builder-types.md +55 -0
- package/docs/en/xtend-catalog-types.md +44 -0
- package/docs/en/xtend-fabric-rmt-lane-mapping.md +143 -0
- package/docs/en/xtend-fabric.md +474 -0
- package/docs/en/xtend-loader-types.md +58 -0
- package/docs/en/xtend-loader.md +265 -0
- package/docs/en/xtend-policy-types.md +38 -0
- package/docs/en/xtend-rmt-types.md +40 -0
- package/docs/en/xtend-vendor-types.md +36 -0
- package/docs/en/xtendrmt-app-dsl.md +331 -0
- package/docs/en/xtendrmt-migration-guide.md +256 -0
- package/docs/en/xtendrmt-native-authoring.md +336 -0
- package/docs/en/xtendrmt-overview.md +63 -0
- package/docs/en/xtendrmt-parsedown-scheduling.md +301 -0
- package/docs/en/xtendrmt-runtime-bridge.md +155 -0
- package/docs/enterprise-adoption.md +4 -2
- package/docs/epic18-media-manager-vendor-upstream.md +318 -0
- package/docs/epic18-rmt-app-platform-release-handoff.md +67 -0
- package/docs/epic18-vendor-bugfixes.md +34 -0
- package/docs/index.php +1056 -109
- package/docs/manifest.md +8 -2
- package/docs/menu.json +986 -133
- package/docs/package-export-lock.md +2 -2
- package/docs/public-component-types.md +2 -2
- package/docs/quick-start-guide.md +126 -58
- package/docs/rmt-action-effect-runtime.md +101 -0
- package/docs/rmt-app-platform-authoring.md +54 -0
- package/docs/rmt-app-platform-fixture.md +46 -0
- package/docs/rmt-app-platform-migration-guide.md +88 -0
- package/docs/rmt-app-platform-tooling.md +79 -0
- package/docs/rmt-component-template-primitives.md +57 -0
- package/docs/rmt-dom-descriptor-renderer.md +64 -0
- package/docs/rmt-dsl-authoring-polish.md +67 -44
- package/docs/rmt-event-routing-runtime.md +98 -0
- package/docs/rmt-first-demo-app.md +2 -2
- package/docs/rmt-first-xtend-apps.md +70 -46
- package/docs/rmt-language-server.md +61 -4
- package/docs/rmt-lifecycle-demo.md +1 -2
- package/docs/rmt-node-ssr-adapter.md +144 -0
- package/docs/rmt-php-ssr-adapter.md +158 -0
- package/docs/rmt-state-selector-runtime.md +47 -0
- package/docs/rmt-surface-resource-graph-runtime.md +92 -0
- package/docs/rmt-vnext-authoring.md +128 -18
- package/docs/rmt-vnext-component-primitives.md +188 -0
- package/docs/rmt-vnext-fabric-bridge-evidence.md +81 -0
- package/docs/rmt-vnext-primitive-authoring-tooling.md +247 -0
- package/docs/rmt-vnext-primitive-grammar-design.md +289 -0
- package/docs/rmt-vnext-primitive-lowering.md +108 -0
- package/docs/rmt-vnext-primitive-migration.md +119 -0
- package/docs/rmt-vnext-primitive-parser-ast.md +76 -0
- package/docs/rmt-vnext-primitive-semantic-graph.md +118 -0
- package/docs/rmt-vnext-primitives-compiler-backlog.md +742 -0
- package/docs/rmt-vnext-release-handoff.md +14 -0
- package/docs/rmt-vnext-source-to-sea-gate.md +629 -0
- package/docs/surface-manager-migration-guide.md +34 -6
- package/docs/surface-manager-overlay-bridge.md +9 -4
- package/docs/surface-manager-rmt-authoring.md +50 -34
- package/docs/surface-manager-workbench-fixture.md +1 -2
- package/docs/third-party-design-authoring.md +1 -1
- package/docs/type-exports.md +3 -3
- package/docs/utils/pageloader.js +811 -62
- package/docs/visual-browser-regression.md +1 -1
- package/docs/xtend-rmt-types.md +3 -2
- package/docs/xtendrmt-app-dsl.md +187 -122
- package/docs/xtendrmt-docs-shell-vnext.rmt +165 -0
- package/docs/xtendrmt-migration-guide.md +48 -17
- package/docs/xtendrmt-native-authoring.md +213 -217
- package/docs/xtendrmt-overview.md +81 -61
- package/docs/xtendrmt-parsedown-scheduling.md +23 -8
- package/fabric/package.json +1 -1
- package/package.json +684 -21
- package/tools/package.json +5 -1
- package/tools/rmt-editor/vscode/README.md +72 -5
- package/tools/rmt-editor/vscode/XTend-Logo.png +0 -0
- package/tools/rmt-editor/vscode/extension.d.ts +33 -0
- package/tools/rmt-editor/vscode/extension.js +1816 -7
- package/tools/rmt-editor/vscode/language-configuration.json +2 -1
- package/tools/rmt-editor/vscode/package.json +193 -2
- package/tools/rmt-editor/vscode/snippets/rmt.code-snippets +41 -0
- package/tools/rmt-editor/vscode/syntaxes/rmt.tmLanguage.json +103 -1
- package/tools/rmt-editor/vscode/templates/launch.json +70 -0
- package/tools/rmt-editor/vscode/templates/tasks.json +172 -0
- package/tools/rmt-editor/vscode/xtend-rmt-language-0.0.0-enterprise-readiness.vsix +0 -0
- package/tools/rmt-language/app-platform-tooling.d.ts +128 -0
- package/tools/rmt-language/app-platform-tooling.js +677 -0
- package/tools/rmt-language/completions.d.ts +5 -0
- package/tools/rmt-language/completions.js +185 -3
- package/tools/rmt-language/diagnostics.js +54 -0
- package/tools/rmt-language/hover.js +36 -0
- package/tools/rmt-language/rmt-tooling-public-types.d.ts +7 -0
- package/tools/rmt-language/rules/app-platform-policy.js +39 -0
- package/tools/rmt-language/rules/index.js +5 -1
- package/tools/rmt-language/semantic-graph.d.ts +6 -0
- package/tools/rmt-language/semantic-graph.js +928 -0
- package/tools/rmt-language/snippets/index.js +44 -0
- package/tools/rmt-language/snippets/rmt.code-snippets +41 -0
- package/tools/rmt-language/vnext-compatibility.d.ts +10 -0
- package/tools/rmt-language/vnext-compatibility.js +642 -0
- package/tools/rmt-language/vnext-compiler.d.ts +5 -0
- package/tools/rmt-language/vnext-compiler.js +863 -17
- package/tools/rmt-language/vnext-parser.js +725 -9
- package/tools/rmt-language/vnext-release.d.ts +1 -0
- package/tools/rmt-language/vnext-release.js +20 -0
- package/tools/rmt-language/vnext-source-to-sea.d.ts +33 -0
- package/tools/rmt-language/vnext-source-to-sea.js +2227 -0
- package/tools/rmt-language/vnext-surfaces.js +111 -52
- package/tools/rmt-language/vnext-tooling.d.ts +19 -1
- package/tools/rmt-language/vnext-tooling.js +1247 -5
- package/tools/rmt-language-server/protocol.js +3 -0
- package/tools/rmt-language-server/server.d.ts +2 -0
- package/tools/rmt-language-server/server.js +176 -22
- package/tools/rmt-linter/cli.d.ts +2 -0
- package/tools/rmt-linter/cli.js +62 -0
- package/xtend-builder/generators/registry.js +11 -0
- package/xtend-builder/generators/rmt-app-platform.js +239 -0
- package/xtend-builder/generators/rmt-lifecycle-demo.js +3 -11
- package/xtend-builder/lib/cli.js +38 -0
- package/xtend-builder/package.json +3 -3
- package/xtend-builder/scaffold.config.js +29 -2
- package/xtend.css +49 -2
- package/xtendrmt/package.json +49 -1
- package/xtendrmt/rmt-action-effect-runtime.d.ts +126 -0
- package/xtendrmt/rmt-action-effect-runtime.js +494 -0
- package/xtendrmt/rmt-component-capability-registry.d.ts +180 -0
- package/xtendrmt/rmt-component-capability-registry.js +636 -0
- package/xtendrmt/rmt-core.d.ts +6 -0
- package/xtendrmt/rmt-core.esm.js +32 -6
- package/xtendrmt/rmt-dom-descriptor-renderer.d.ts +107 -0
- package/xtendrmt/rmt-dom-descriptor-renderer.js +1066 -0
- package/xtendrmt/rmt-event-routing-runtime.d.ts +144 -0
- package/xtendrmt/rmt-event-routing-runtime.js +666 -0
- package/xtendrmt/rmt-lifecycle-demo.app.js +2 -2
- package/xtendrmt/rmt-lifecycle-demo.core.json +4 -0
- package/xtendrmt/rmt-lifecycle-demo.rmt-build.app.js +1 -1
- package/xtendrmt/rmt-lifecycle-demo.rmt-build.scaffold.json +2 -2
- package/xtendrmt/rmt-lifecycle-demo.scaffold.json +4 -4
- package/xtendrmt/rmt-native-shell-runtime.d.ts +77 -0
- package/xtendrmt/rmt-native-shell-runtime.js +309 -0
- package/xtendrmt/rmt-node-ssr-adapter.d.ts +197 -0
- package/xtendrmt/rmt-node-ssr-adapter.js +1006 -0
- package/xtendrmt/rmt-php-ssr-adapter.php +976 -0
- package/xtendrmt/rmt-runtime.browser.js +32 -6
- package/xtendrmt/rmt-runtime.esm.js +32 -6
- package/xtendrmt/rmt-state-selector-runtime.d.ts +166 -0
- package/xtendrmt/rmt-state-selector-runtime.js +866 -0
- package/xtendrmt/rmt-surface-resource-graph-runtime.d.ts +224 -0
- package/xtendrmt/rmt-surface-resource-graph-runtime.js +932 -0
- package/xtendrmt/rmt-vnext-enterprise-mfe-demo.core.json +3 -0
- package/xtendrmt/rmt-vnext-reference-demo.core.json +3 -0
- package/xtendrmt/xtendrmt-bestcase-demo.core.json +3420 -372
- package/xtendrmt/xtendrmt-bestcase-demo.js +424 -8
- package/xtendrmt/xtendrmt-bestcase-demo.rmt +214 -6
package/docs/components.md
CHANGED
|
@@ -1,44 +1,58 @@
|
|
|
1
1
|
# Komponenten-Entwicklung mit XTend
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
XTend-Komponenten sind wiederverwendbare Web Components. In RMT-first Apps
|
|
4
|
+
werden sie nicht zur App-Architektur selbst: RMT beschreibt Shell, State,
|
|
5
|
+
Actions, Events, Surfaces und Scheduling; XTend Components materialisieren die
|
|
6
|
+
sichtbare UI.
|
|
4
7
|
|
|
5
|
-
|
|
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
|
-
---
|
|
8
|
+
Siehe auch [x-router](./components/xrouter.md), [x-link](./components/xlink.md)
|
|
9
|
+
und [RMT vNext Authoring Guide](./rmt-vnext-authoring.md).
|
|
10
10
|
|
|
11
11
|
## Grundprinzipien
|
|
12
12
|
|
|
13
|
-
- Jede Komponente ist ein
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
|
26
|
-
|
|
|
27
|
-
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
13
|
+
- Jede visuelle Komponente ist ein ES-Modul und wird per Manifest geladen.
|
|
14
|
+
- Der Manifest-Key ist der kanonische Runtime- und Catalog-Name.
|
|
15
|
+
- Fuer Custom Elements ist der Tag-Name identisch zum Manifest-Key, z. B.
|
|
16
|
+
`x-button`, `x-input`, `x-summary`.
|
|
17
|
+
- Source-Dateien folgen im Bestand dem Modul-Basename ohne Bindestrich, z. B.
|
|
18
|
+
`xbutton.js` fuer `x-button`.
|
|
19
|
+
- Komponenten bleiben unabhaengig, konfigurierbar und host-neutral.
|
|
20
|
+
- RMT kann Komponenten referenzieren, mounten, hydrieren und mit Events
|
|
21
|
+
verbinden, importiert sie aber nicht in den Kernel.
|
|
22
|
+
|
|
23
|
+
## Rolle in RMT-authorierten Apps
|
|
24
|
+
|
|
25
|
+
| Ebene | Aufgabe |
|
|
26
|
+
| --- | --- |
|
|
27
|
+
| RMT vNext | beschreibt App Shell, Surfaces, State, Actions, Events und Lanes |
|
|
28
|
+
| XTend Component | rendert UI, kapselt Shadow DOM, Attribute, Properties und Events |
|
|
29
|
+
| Host Adapter | verbindet RMT Records mit realen Custom Elements und Browser-DOM |
|
|
30
|
+
| Fabric | fuehrt Hydration, Render, User-Blocking- und Idle-Arbeit als Fibers aus |
|
|
31
|
+
|
|
32
|
+
Eine RMT-Surface kann zum Beispiel `component x-cards` deklarieren. Der Host
|
|
33
|
+
Adapter laedt `x-cards` ueber das Manifest, mountet das Custom Element und
|
|
34
|
+
verdrahtet Event-Payloads mit RMT Actions.
|
|
35
|
+
|
|
36
|
+
Die RMT vNext Component Capability Registry macht diesen Adapterpfad
|
|
37
|
+
generisch. Sie liest Manifest, Component Contracts, `xtendRmtMetadata`,
|
|
38
|
+
`observedAttributes`, Events, Slots, Parts, Form-Assoziation sowie A11y- und
|
|
39
|
+
Performance-Profile und stellt daraus Capabilities fuer alle public
|
|
40
|
+
Manifest-Komponenten bereit. Neue Komponenten bleiben normale Web Components;
|
|
41
|
+
fuer RMT-Kompatibilitaet brauchen sie stabile public Contracts statt Host-
|
|
42
|
+
Monkeypatching.
|
|
32
43
|
|
|
33
44
|
## Struktur einer Komponente
|
|
34
45
|
|
|
35
46
|
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
47
|
|
|
41
|
-
|
|
48
|
+
- einer Klasse, die von `HTMLElement` oder einer lokalen Basis erbt
|
|
49
|
+
- Shadow DOM oder kontrolliertem Light-DOM
|
|
50
|
+
- Styles ueber CSS Custom Properties, Parts oder lokale Shadow-DOM-Regeln
|
|
51
|
+
- Attributen und Properties fuer Konfiguration
|
|
52
|
+
- Custom Events fuer Kommunikation
|
|
53
|
+
- Registrierung ueber `customElements.define(...)`
|
|
54
|
+
|
|
55
|
+
### Minimalbeispiel
|
|
42
56
|
|
|
43
57
|
```js
|
|
44
58
|
class XButton extends HTMLElement {
|
|
@@ -46,72 +60,94 @@ class XButton extends HTMLElement {
|
|
|
46
60
|
super();
|
|
47
61
|
this.attachShadow({ mode: 'open' });
|
|
48
62
|
this.shadowRoot.innerHTML = `
|
|
49
|
-
<button><slot></slot></button>
|
|
50
|
-
<style>
|
|
63
|
+
<button part="button"><slot></slot></button>
|
|
64
|
+
<style>
|
|
65
|
+
:host { display: inline-flex; }
|
|
66
|
+
button { padding: 0.5rem 0.75rem; }
|
|
67
|
+
</style>
|
|
51
68
|
`;
|
|
52
69
|
}
|
|
53
70
|
}
|
|
71
|
+
|
|
54
72
|
customElements.define('x-button', XButton);
|
|
55
73
|
```
|
|
56
74
|
|
|
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.
|
|
75
|
+
## Naming-Regeln
|
|
66
76
|
|
|
67
|
-
|
|
77
|
+
| Ebene | Regel | Beispiel |
|
|
78
|
+
| --- | --- | --- |
|
|
79
|
+
| Manifest-Key | kanonischer Runtime- und Catalog-Name | `x-summary` |
|
|
80
|
+
| Custom Element Tag | identisch zum Manifest-Key | `<x-summary>` |
|
|
81
|
+
| Source-Datei | Modul-Basename aus dem Manifest-Pfad | `xsummary.js` |
|
|
82
|
+
| Component-Doku | Source-Basename plus `.md` | `docs/components/xsummary.md` |
|
|
83
|
+
| Docs-Menu-Slug | `components-` plus Source-Basename | `components-xsummary` |
|
|
68
84
|
|
|
69
|
-
|
|
85
|
+
Ausnahmen bleiben bewusst klein: `xstate` ist ein Plattform-State-Modul,
|
|
86
|
+
`x-utils` ist ein Utility-Modul ohne Custom Element und `x-theme` stellt die
|
|
87
|
+
Theme-Fassade bereit.
|
|
70
88
|
|
|
71
|
-
|
|
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.
|
|
89
|
+
## Best Practices
|
|
76
90
|
|
|
77
|
-
|
|
91
|
+
- Nutze Shadow DOM, Parts und CSS Custom Properties fuer Kapselung und
|
|
92
|
+
Theming.
|
|
93
|
+
- Halte Attribute, Properties und Events stabil und dokumentiert.
|
|
94
|
+
- Dispatch Events mit klaren `detail`-Payloads, damit RMT Actions sie sicher
|
|
95
|
+
konsumieren koennen.
|
|
96
|
+
- Vermeide globale DOM-Annahmen in Komponenten; App-Struktur gehoert in RMT.
|
|
97
|
+
- Nutze `x-icon` fuer lokale Icons, Icon Packs und kontrollierte URL-Quellen.
|
|
98
|
+
- Plane Hydration bewusst: sichtbare UI gehoert in sichtbare Lanes, weniger
|
|
99
|
+
dringende Arbeit in idle oder lazy Pfade.
|
|
78
100
|
|
|
79
|
-
## Beispiel
|
|
101
|
+
## Beispiel mit Attribut und Event
|
|
80
102
|
|
|
81
103
|
```js
|
|
82
|
-
class
|
|
83
|
-
static get observedAttributes() {
|
|
104
|
+
class XCounterButton extends HTMLElement {
|
|
105
|
+
static get observedAttributes() {
|
|
106
|
+
return ['value'];
|
|
107
|
+
}
|
|
108
|
+
|
|
84
109
|
constructor() {
|
|
85
110
|
super();
|
|
86
111
|
this.attachShadow({ mode: 'open' });
|
|
87
112
|
this.shadowRoot.innerHTML = `
|
|
88
|
-
<
|
|
89
|
-
<style>input { border: 1px solid #ccc; }</style>
|
|
113
|
+
<button part="button" type="button"></button>
|
|
90
114
|
`;
|
|
115
|
+
this.shadowRoot.querySelector('button').addEventListener('click', () => {
|
|
116
|
+
const value = Number(this.getAttribute('value') || 0) + 1;
|
|
117
|
+
this.setAttribute('value', String(value));
|
|
118
|
+
this.dispatchEvent(new CustomEvent('counter-change', {
|
|
119
|
+
bubbles: true,
|
|
120
|
+
detail: { value }
|
|
121
|
+
}));
|
|
122
|
+
});
|
|
91
123
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}
|
|
124
|
+
|
|
125
|
+
attributeChangedCallback() {
|
|
126
|
+
const button = this.shadowRoot && this.shadowRoot.querySelector('button');
|
|
127
|
+
if (button) button.textContent = `Zaehler ${this.getAttribute('value') || 0}`;
|
|
96
128
|
}
|
|
97
129
|
}
|
|
98
|
-
|
|
130
|
+
|
|
131
|
+
customElements.define('x-counter-button', XCounterButton);
|
|
99
132
|
```
|
|
100
133
|
|
|
101
|
-
|
|
134
|
+
In RMT kann dieses Event als `on counter-change -> action ...` an eine Action
|
|
135
|
+
gebunden werden.
|
|
102
136
|
|
|
103
|
-
## Testen
|
|
137
|
+
## Testen und Debugging
|
|
104
138
|
|
|
105
|
-
- Komponenten
|
|
106
|
-
- Nutze
|
|
139
|
+
- Komponenten koennen direkt im HTML getestet werden.
|
|
140
|
+
- Nutze `xtend-loader.js` und den lokalen Dev Server fuer manuelle Tests.
|
|
141
|
+
- Nutze RMT-Surfaces, wenn du Component-Verhalten im App-Lifecycle pruefen
|
|
142
|
+
willst.
|
|
143
|
+
- Fuer API- und Typing-Fragen siehe [Public Component Types](./public-component-types.md).
|
|
107
144
|
|
|
108
|
-
|
|
145
|
+
## Weiterfuehrende Themen
|
|
109
146
|
|
|
110
|
-
## Weiterführende Themen
|
|
111
147
|
- [Manifest-Format](./manifest.md)
|
|
112
148
|
- [XTend Loader](./xtend-loader.md)
|
|
149
|
+
- [RMT vNext Authoring Guide](./rmt-vnext-authoring.md)
|
|
150
|
+
- [RMT vNext Component Primitives und XTend UI](./rmt-vnext-component-primitives.md)
|
|
151
|
+
- [Component Platform](./component-platform.md)
|
|
152
|
+
- [Component UX Authoring](./component-ux-authoring.md)
|
|
113
153
|
- [API-Integration](./api.md)
|
|
114
|
-
|
|
115
|
-
---
|
|
116
|
-
|
|
117
|
-
*Letzte Aktualisierung: 16. Juli 2025*
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
# XTend Dokumentation
|
|
2
|
+
|
|
3
|
+
Willkommen im XTend Developer Center. Diese Dokumentation ist fuer Entwickler
|
|
4
|
+
geschrieben, die XTend kennenlernen, lokal ausprobieren und eigene Apps bauen
|
|
5
|
+
wollen. Der empfohlene Pfad ist heute RMT-first: Die App Shell, Routen,
|
|
6
|
+
Surfaces, State, Actions, Events und UI-Lifecycle-Regeln werden in RMT vNext
|
|
7
|
+
authoriert; XTend Components, XRouter, Fabric und Host-Adapter materialisieren
|
|
8
|
+
diese Beschreibung im Browser.
|
|
9
|
+
|
|
10
|
+
Historische Planungs- und Release-Notizen sind im
|
|
11
|
+
[XTend Changelog](./changelog.md) gebuendelt. Die Artikel hier konzentrieren
|
|
12
|
+
sich auf produktives Arbeiten.
|
|
13
|
+
|
|
14
|
+
## Lernpfade
|
|
15
|
+
|
|
16
|
+
| Ziel | Einstieg |
|
|
17
|
+
| --- | --- |
|
|
18
|
+
| Erste lokale App starten | [Quick Start Guide](./quick-start-guide.md) |
|
|
19
|
+
| UI komplett in RMT schreiben | [RMT vNext Authoring Guide](./rmt-vnext-authoring.md) |
|
|
20
|
+
| RMT-Primitives mit XTend UI verbinden | [RMT vNext Component Primitives und XTend UI](./rmt-vnext-component-primitives.md) |
|
|
21
|
+
| RMT serverseitig vorhydrieren | [RMT Node SSR Adapter](./rmt-node-ssr-adapter.md) und [RMT PHP/Laravel SSR Adapter](./rmt-php-ssr-adapter.md) |
|
|
22
|
+
| RMT Architektur verstehen | [XTendRMT Developer Overview](./xtendrmt-overview.md) |
|
|
23
|
+
| Komponenten nutzen oder bauen | [Komponenten-Entwicklung](./components.md) und [Component Platform](./component-platform.md) |
|
|
24
|
+
| Loader, Manifest und Runtime anbinden | [XTend Loader](./xtend-loader.md), [Manifest-Format](./manifest.md), [API-Integration](./api.md) |
|
|
25
|
+
| Qualitaet, Security und Release-Signale verstehen | [Best Practices](./best-practices.md), [Trusted DOM und Sanitizing](./trusted-dom-sanitizing.md), [Supply-Chain Gates](./supply-chain-gates.md) |
|
|
26
|
+
|
|
27
|
+
## Start
|
|
28
|
+
|
|
29
|
+
Beginne mit einer lokalen Web-Component-App und erweitere sie dann zu einer
|
|
30
|
+
RMT-vNext-App-Shell:
|
|
31
|
+
|
|
32
|
+
- [Quick Start Guide](./quick-start-guide.md)
|
|
33
|
+
- [XTend Loader](./xtend-loader.md)
|
|
34
|
+
- [Manifest-Format](./manifest.md)
|
|
35
|
+
- [Core Migration Guide](./core-migration-guide.md)
|
|
36
|
+
- [Enterprise Adoption Guide](./enterprise-adoption.md)
|
|
37
|
+
|
|
38
|
+
XTend bleibt framework-neutral. Du kannst eine einfache HTML-Seite starten,
|
|
39
|
+
spaeter RMT fuer Shell und Routing ergaenzen und Host-spezifische Details in
|
|
40
|
+
Adapter verschieben.
|
|
41
|
+
|
|
42
|
+
## App Shell in RMT schreiben
|
|
43
|
+
|
|
44
|
+
RMT vNext ist die primaere Syntax fuer neue XTend Apps. Eine App kann State,
|
|
45
|
+
Selectors, DataSources, Actions, Events, Portals, Overlays, Resources,
|
|
46
|
+
Surfaces und Fabric-Lanes in einer `.rmt` Quelle beschreiben.
|
|
47
|
+
|
|
48
|
+
- [RMT vNext Authoring Guide](./rmt-vnext-authoring.md)
|
|
49
|
+
- [RMT vNext Component Primitives und XTend UI](./rmt-vnext-component-primitives.md)
|
|
50
|
+
- [RMT Node SSR Adapter](./rmt-node-ssr-adapter.md)
|
|
51
|
+
- [RMT PHP/Laravel SSR Adapter](./rmt-php-ssr-adapter.md)
|
|
52
|
+
- [XTendRMT Developer Overview](./xtendrmt-overview.md)
|
|
53
|
+
- [Native RMT Authoring](./xtendrmt-native-authoring.md)
|
|
54
|
+
- [XTendRMT App-DSL Reference](./xtendrmt-app-dsl.md)
|
|
55
|
+
- [XTendRMT Runtime Bridge](./xtendrmt-runtime-bridge.md)
|
|
56
|
+
- [Native RMT Migration Guide](./xtendrmt-migration-guide.md)
|
|
57
|
+
- [RMT-first XTend Apps](./rmt-first-xtend-apps.md)
|
|
58
|
+
- [RMT-first Demo-App](./rmt-first-demo-app.md)
|
|
59
|
+
- [RMT Lifecycle Demo](./rmt-lifecycle-demo.md)
|
|
60
|
+
- [RMT App Platform Migration Guide](./rmt-app-platform-migration-guide.md)
|
|
61
|
+
- [RMT vNext Migration Notes](./rmt-vnext-migration-notes.md)
|
|
62
|
+
- [RMT vNext Release Handoff](./rmt-vnext-release-handoff.md)
|
|
63
|
+
- [RMT vNext Remote Surfaces](./rmt-vnext-remote-surfaces.md)
|
|
64
|
+
- [RMT vNext Enterprise Surface Registry](./rmt-vnext-surface-registry-enterprise.md)
|
|
65
|
+
- [RMT vNext Cross Surface Events](./rmt-vnext-cross-surface-events.md)
|
|
66
|
+
- [RMT vNext Enterprise MFE Handoff](./rmt-vnext-enterprise-mfe-handoff.md)
|
|
67
|
+
|
|
68
|
+
Die RMT-vNext-Referenzdemo liegt in `xtendrmt/rmt-vnext-reference-demo.rmt`;
|
|
69
|
+
der stabile Compiler-Output liegt in
|
|
70
|
+
`xtendrmt/rmt-vnext-reference-demo.core.json`.
|
|
71
|
+
|
|
72
|
+
## Tooling und Editor-DX
|
|
73
|
+
|
|
74
|
+
Der RMT Language Server ist die Source of Truth fuer Diagnostics, Completion,
|
|
75
|
+
Hover, Document Symbols, Definition und Code Actions. VS Code, JetBrains,
|
|
76
|
+
Neovim und Helix koennen den Server ueber stdio anbinden.
|
|
77
|
+
|
|
78
|
+
- [RMT Linter und AI-Agent Repair Report](./rmt-linter.md)
|
|
79
|
+
- [RMT Language Server und Editor Setup](./rmt-language-server.md)
|
|
80
|
+
- [RMT DSL Authoring Polish](./rmt-dsl-authoring-polish.md)
|
|
81
|
+
- [RMT Tooling Release Gates](./rmt-tooling-release-gates.md)
|
|
82
|
+
|
|
83
|
+
Wichtige lokale Befehle:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
xt rmt lint app.rmt
|
|
87
|
+
xt rmt lint app.rmt --json
|
|
88
|
+
xt rmt lint app.rmt --agent
|
|
89
|
+
node tools/rmt-language-server/server.js
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Der Tooling-Dokumentationscontract bleibt `xtend.rmt.tooling-docs.v1`; der
|
|
93
|
+
zugehoerige lokale Check ist
|
|
94
|
+
`node scripts/run_xtend_tests.js rmt-tooling-docs --json`.
|
|
95
|
+
|
|
96
|
+
## XTend Components nutzen
|
|
97
|
+
|
|
98
|
+
XTend Components sind Web Components, die von RMT-Surfaces gemountet,
|
|
99
|
+
hydriert und mit Events verbunden werden koennen. Nutze sie als UI-Bausteine,
|
|
100
|
+
waehrend RMT die App-Struktur und den Lifecycle beschreibt.
|
|
101
|
+
|
|
102
|
+
Die RMT vNext Component Capability Registry macht diese Grenze generisch: alle
|
|
103
|
+
44 public Manifest-Eintraege werden als Matrix erfasst, 40 renderbare UI-
|
|
104
|
+
Komponenten bekommen Component Contracts, RMT-Metadaten, Slots, Parts,
|
|
105
|
+
Attribute, Events und State-Bridges als gemeinsame Runtime-Faehigkeiten. Damit
|
|
106
|
+
werden RMT-Primitives stack-ergaenzend statt als zweite UI-Schicht umgesetzt.
|
|
107
|
+
|
|
108
|
+
- [RMT vNext Component Primitives und XTend UI](./rmt-vnext-component-primitives.md)
|
|
109
|
+
- [Komponenten-Entwicklung](./components.md)
|
|
110
|
+
- [Component Platform](./component-platform.md)
|
|
111
|
+
- [TypeScript Components](./typescript-components.md)
|
|
112
|
+
- [Component UX Authoring](./component-ux-authoring.md)
|
|
113
|
+
- [Component UX App Authoring](./component-ux-app-authoring.md)
|
|
114
|
+
- [Component UX Gates](./component-ux-gates.md)
|
|
115
|
+
- [Component Lab](./component-lab.md)
|
|
116
|
+
- [Component Long-Tail Migration](./component-long-tail-migration.md)
|
|
117
|
+
- [Existing Component Metadata](./existing-component-metadata.md)
|
|
118
|
+
- [Public Component Types](./public-component-types.md)
|
|
119
|
+
- [Component Catalog Coverage](./component-catalog-coverage.md)
|
|
120
|
+
|
|
121
|
+
Ausgewaehlte Komponenten:
|
|
122
|
+
|
|
123
|
+
- [x-router](./components/xrouter.md)
|
|
124
|
+
- [x-link](./components/xlink.md)
|
|
125
|
+
- [x-modal](./components/xmodal.md)
|
|
126
|
+
- [x-summary](./components/xsummary.md)
|
|
127
|
+
- [x-utils](./components/xutils.md)
|
|
128
|
+
- [x-button](./components/xbutton.md)
|
|
129
|
+
- [x-input](./components/xinput.md)
|
|
130
|
+
- [x-menu](./components/xmenu.md)
|
|
131
|
+
|
|
132
|
+
## Runtime, Fabric und Surfaces
|
|
133
|
+
|
|
134
|
+
Fabric fuehrt Runtime-Arbeit in Lanes und Fibers aus. RMT beschreibt die
|
|
135
|
+
Schedule- und Lifecycle-Absicht, der Host-Adapter verbindet diese Records mit
|
|
136
|
+
XTend Components, XRouter und Browser-DOM.
|
|
137
|
+
|
|
138
|
+
- [XTend-Fabric Runtime](./xtend-fabric.md)
|
|
139
|
+
- [XTend-Fabric RMT Lane Mapping](./xtend-fabric-rmt-lane-mapping.md)
|
|
140
|
+
- [RMT Node SSR Adapter](./rmt-node-ssr-adapter.md)
|
|
141
|
+
- [RMT PHP/Laravel SSR Adapter](./rmt-php-ssr-adapter.md)
|
|
142
|
+
- [SurfaceManager RMT Authoring](./surface-manager-rmt-authoring.md)
|
|
143
|
+
- [SurfaceManager Controller](./surface-manager-controller.md)
|
|
144
|
+
- [SurfaceManager Window Runtime](./surface-manager-window-runtime.md)
|
|
145
|
+
- [SurfaceManager SidePanel Runtime](./surface-manager-side-panel-runtime.md)
|
|
146
|
+
- [SurfaceManager Workbench Fixture](./surface-manager-workbench-fixture.md)
|
|
147
|
+
- [SurfaceManager Native RMT Surfaces](./surface-manager-native-rmt-surfaces.md)
|
|
148
|
+
- [SurfaceManager Authoring Guide](./surface-manager-authoring-guide.md)
|
|
149
|
+
- [SurfaceManager Migration Guide](./surface-manager-migration-guide.md)
|
|
150
|
+
- [SurfaceManager Component Lab](./surface-manager-component-lab.md)
|
|
151
|
+
- [SurfaceManager Release Handoff](./surface-manager-release-handoff.md)
|
|
152
|
+
- [SurfaceManager Overlay Bridge](./surface-manager-overlay-bridge.md)
|
|
153
|
+
- [SurfaceManager Quality Gates](./surface-manager-quality-gates.md)
|
|
154
|
+
- [SurfaceManager Runtime Release Handoff](./surface-manager-runtime-release-handoff.md)
|
|
155
|
+
|
|
156
|
+
Die Docs-App selbst ist ein Beispiel fuer Shell-first-Denken:
|
|
157
|
+
[XTendRMT Parsedown Scheduling Pilot](./xtendrmt-parsedown-scheduling.md)
|
|
158
|
+
beschreibt, wie `docs/xtendrmt-parsedown-docs.rmt` die sichtbare Docs-Shell
|
|
159
|
+
fuehrt. Der Contract ist `xtend.docs.parsedown-rmt-pilot.v1`, der lokale Check
|
|
160
|
+
ist `npm run test:docs-rmt-pilot`.
|
|
161
|
+
|
|
162
|
+
## Quality und Security
|
|
163
|
+
|
|
164
|
+
Diese Artikel helfen, Apps produktionsnaeher zu bauen, ohne die RMT-Kernel-
|
|
165
|
+
Grenze zu verletzen:
|
|
166
|
+
|
|
167
|
+
- [Performance fuer Komponentenautoren](./performance.md)
|
|
168
|
+
- [Performance Measurements](./performance-measurements.md)
|
|
169
|
+
- [Performance Regression](./performance-regression.md)
|
|
170
|
+
- [Hydration Performance Closure](./hydration-performance-closure.md)
|
|
171
|
+
- [Hydration Policies](./hydration-policies.md)
|
|
172
|
+
- [A11y Keyboard Smokes](./a11y-keyboard-smokes.md)
|
|
173
|
+
- [Screenreader Signals](./screenreader-signals.md)
|
|
174
|
+
- [Motion und Contrast](./motion-contrast.md)
|
|
175
|
+
- [Manifest Import Policy](./manifest-import-policy.md)
|
|
176
|
+
- [Trusted DOM und Sanitizing](./trusted-dom-sanitizing.md)
|
|
177
|
+
- [Trusted DOM Boundary Browser Proof](./trusted-dom-boundary-browser-proof.md)
|
|
178
|
+
- [Visual Browser Regression](./visual-browser-regression.md)
|
|
179
|
+
- [Visual Snapshot Automation](./visual-snapshot-automation.md)
|
|
180
|
+
- [Design Tokens](./design-tokens.md)
|
|
181
|
+
- [Drittanbieter Design Authoring](./third-party-design-authoring.md)
|
|
182
|
+
|
|
183
|
+
## Release- und Typing-Referenzen
|
|
184
|
+
|
|
185
|
+
Release- und Gate-Artikel bleiben verfuegbar, stehen aber nicht mehr im
|
|
186
|
+
Vordergrund des Lernpfads. Nutze sie, wenn du Release-Reife, Typing oder
|
|
187
|
+
Owner-Akzeptanz pruefst.
|
|
188
|
+
|
|
189
|
+
CI- und release-nahe Contract-Anker bleiben hier sichtbar:
|
|
190
|
+
`xtend.epic12.docs-adoption.v1` unter
|
|
191
|
+
[RC0 Adoption Guide](./rc0-adoption-guide.md) mit
|
|
192
|
+
`node scripts/run_xtend_tests.js epic12-docs-adoption --json`,
|
|
193
|
+
`xtend.epic13.rc1-migration-notes-semver.v1` unter
|
|
194
|
+
[RC1 Migration Notes](./rc1-migration-notes.md),
|
|
195
|
+
`xtend.epic13.release-report-pack-dry-run-evidence.v1` unter
|
|
196
|
+
[Release Report und Pack Dry Run Evidence](./release-report-pack-dry-run-evidence.md),
|
|
197
|
+
`xtend.epic13.rc1-gate-matrix-ci-handoff.v1` unter
|
|
198
|
+
[RC1 Gate Matrix und CI](./rc1-gate-matrix-ci-handoff.md) und
|
|
199
|
+
`xtend.epic13.conditional-network-evidence-ci.v1` unter
|
|
200
|
+
[Conditional Network Evidence CI](./conditional-network-evidence-ci.md).
|
|
201
|
+
Der Enterprise-Component-Flex-Handoff
|
|
202
|
+
`xtend.enterprise.component-flex-release-handoff.v1` bleibt unter
|
|
203
|
+
[Enterprise Component Flex Release Notes](./enterprise-component-flex-release-handoff.md)
|
|
204
|
+
referenziert. Die RMT-vNext-Enterprise-Linie markiert
|
|
205
|
+
`rmt-vnext-enterprise-mfe-ready` ueber
|
|
206
|
+
[RMT vNext Remote Surfaces](./rmt-vnext-remote-surfaces.md),
|
|
207
|
+
[RMT vNext Enterprise Surface Registry](./rmt-vnext-surface-registry-enterprise.md),
|
|
208
|
+
[RMT vNext Cross Surface Events](./rmt-vnext-cross-surface-events.md)
|
|
209
|
+
und [RMT vNext Enterprise MFE Handoff](./rmt-vnext-enterprise-mfe-handoff.md).
|
|
210
|
+
Surface-Runtime-Reife bleibt ueber
|
|
211
|
+
[SurfaceManager Overlay Bridge](./surface-manager-overlay-bridge.md),
|
|
212
|
+
[SurfaceManager Quality Gates](./surface-manager-quality-gates.md),
|
|
213
|
+
[SurfaceManager Runtime Release Handoff](./surface-manager-runtime-release-handoff.md)
|
|
214
|
+
und [Hydration Performance Closure](./hydration-performance-closure.md)
|
|
215
|
+
auffindbar.
|
|
216
|
+
Der RMT-Kernel-Handoff `xtend.rmt.kernel-migration-authoring-incident-handoff.v1`
|
|
217
|
+
bleibt ueber
|
|
218
|
+
[RMT Kernel Security Hardening Migration](./rmt-kernel-security-hardening-migration.md),
|
|
219
|
+
[RMT Kernel Trusted Output Authoring](./rmt-kernel-trusted-output-authoring.md)
|
|
220
|
+
und
|
|
221
|
+
[RMT Kernel Panic Recovery Incident Handoff](./rmt-kernel-panic-recovery-incident-handoff.md)
|
|
222
|
+
mit `node scripts/run_xtend_tests.js rmt-kernel-handoff-docs --json`
|
|
223
|
+
auffindbar.
|
|
224
|
+
|
|
225
|
+
- [XTend Changelog](./changelog.md)
|
|
226
|
+
- [RC0 Gate Matrix](./rc0-gate-matrix.md)
|
|
227
|
+
- [RC0 Adoption Guide](./rc0-adoption-guide.md)
|
|
228
|
+
- [RC0 Abschlussnotizen](./epic12-rc0-handoff.md)
|
|
229
|
+
- [RC1 Readiness](./rc1-readiness.md)
|
|
230
|
+
- [Release Owner Acceptance](./release-owner-acceptance.md)
|
|
231
|
+
- [RC1 Migration Notes](./rc1-migration-notes.md)
|
|
232
|
+
- [RC1 Gate Matrix und CI](./rc1-gate-matrix-ci-handoff.md)
|
|
233
|
+
- [Release Report und Pack Dry Run Evidence](./release-report-pack-dry-run-evidence.md)
|
|
234
|
+
- [Package Export Lock](./package-export-lock.md)
|
|
235
|
+
- [TypeExports](./type-exports.md)
|
|
236
|
+
- [XTend Loader Types](./xtend-loader-types.md)
|
|
237
|
+
- [XTend API Types](./xtend-api-types.md)
|
|
238
|
+
- [XTend RMT Types](./xtend-rmt-types.md)
|
|
239
|
+
- [XTend Policy Types](./xtend-policy-types.md)
|
|
240
|
+
- [XTend Builder Types](./xtend-builder-types.md)
|
|
241
|
+
- [XTend Catalog Types](./xtend-catalog-types.md)
|
|
242
|
+
- [XTend Vendor and Utility Types](./xtend-vendor-types.md)
|
|
243
|
+
- [Known Residual Triage](./known-residual-triage.md)
|
|
244
|
+
- [Conditional Network Evidence](./conditional-network-evidence.md)
|
|
245
|
+
- [Conditional Network Evidence CI](./conditional-network-evidence-ci.md)
|
|
246
|
+
- [PROD Browser CSP Smokes](./prod-browser-csp-smokes.md)
|
|
247
|
+
- [Visual Owner Artifacts](./visual-owner-artifacts.md)
|
|
248
|
+
- [RMT Production Readiness](./rmt-production-readiness.md)
|
|
249
|
+
- [Docs RMT Production Hardening](./docs-rmt-production-hardening.md)
|
|
250
|
+
- [Epic 10 Platform Gates](./epic10-platform-gates.md)
|
|
251
|
+
- [Platform Release Notes](./epic10-release-handoff.md)
|
|
252
|
+
- [Enterprise UX Notes](./epic11-enterprise-ux-handoff.md)
|
|
253
|
+
- [Vendor Bugfixes](./epic18-vendor-bugfixes.md)
|
|
254
|
+
- [RMT App Platform Release Notes](./epic18-rmt-app-platform-release-handoff.md)
|
|
255
|
+
- [Enterprise Component Flex Release Notes](./enterprise-component-flex-release-handoff.md)
|
|
256
|
+
- [RMT vNext Enterprise MFE Handoff](./rmt-vnext-enterprise-mfe-handoff.md)
|
|
257
|
+
- [SurfaceManager Runtime Release Handoff](./surface-manager-runtime-release-handoff.md)
|
|
258
|
+
|
|
259
|
+
## Wenn du nur vier Seiten liest
|
|
260
|
+
|
|
261
|
+
1. [Quick Start Guide](./quick-start-guide.md)
|
|
262
|
+
2. [RMT vNext Authoring Guide](./rmt-vnext-authoring.md)
|
|
263
|
+
3. [RMT vNext Component Primitives und XTend UI](./rmt-vnext-component-primitives.md)
|
|
264
|
+
4. [Komponenten-Entwicklung](./components.md)
|