@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.
- package/CHANGELOG.md +65 -0
- package/LICENSE +201 -0
- package/README.md +184 -0
- package/a11y/motion-contrast-policy.d.ts +32 -0
- package/a11y/motion-contrast-policy.js +261 -0
- package/a11y/runtime-a11y-contract.d.ts +44 -0
- package/a11y/runtime-a11y-contract.js +385 -0
- package/a11y/screenreader-signals.d.ts +32 -0
- package/a11y/screenreader-signals.js +372 -0
- package/api.d.ts +168 -0
- package/api.js +864 -0
- package/catalog/catalog-public-types.d.ts +66 -0
- package/catalog/component-catalog-coverage.d.ts +20 -0
- package/catalog/component-catalog-coverage.js +377 -0
- package/catalog/component-long-tail-migration.d.ts +18 -0
- package/catalog/component-long-tail-migration.js +305 -0
- package/catalog/component-regression-priority.d.ts +20 -0
- package/catalog/component-regression-priority.js +305 -0
- package/catalog/enterprise-component-flex-release-handoff.d.ts +32 -0
- package/catalog/enterprise-component-flex-release-handoff.js +437 -0
- package/catalog/enterprise-component-style-audit.d.ts +22 -0
- package/catalog/enterprise-component-style-audit.js +353 -0
- package/catalog/enterprise-form-control-theme-a11y.d.ts +19 -0
- package/catalog/enterprise-form-control-theme-a11y.js +220 -0
- package/catalog/enterprise-icon-control-audit.d.ts +21 -0
- package/catalog/enterprise-icon-control-audit.js +258 -0
- package/catalog/enterprise-layout-display-media-tokenization.d.ts +20 -0
- package/catalog/enterprise-layout-display-media-tokenization.js +237 -0
- package/catalog/enterprise-navigation-routing-state-hardening.d.ts +20 -0
- package/catalog/enterprise-navigation-routing-state-hardening.js +255 -0
- package/catalog/enterprise-overlay-mode-token-parity.d.ts +15 -0
- package/catalog/enterprise-overlay-mode-token-parity.js +178 -0
- package/catalog/enterprise-third-party-authoring-guide.d.ts +23 -0
- package/catalog/enterprise-third-party-authoring-guide.js +310 -0
- package/catalog/enterprise-visual-dom-snapshot-matrix.d.ts +31 -0
- package/catalog/enterprise-visual-dom-snapshot-matrix.js +357 -0
- package/catalog/epic10-existing-component-metadata.d.ts +25 -0
- package/catalog/epic10-existing-component-metadata.js +534 -0
- package/catalog/epic10-p0-component-wave.d.ts +28 -0
- package/catalog/epic10-p0-component-wave.js +688 -0
- package/catalog/epic10-platform-gates.d.ts +31 -0
- package/catalog/epic10-platform-gates.js +425 -0
- package/catalog/epic10-release-handoff.d.ts +30 -0
- package/catalog/epic10-release-handoff.js +195 -0
- package/catalog/epic11-enterprise-ux-handoff.d.ts +29 -0
- package/catalog/epic11-enterprise-ux-handoff.js +403 -0
- package/catalog/epic12-docs-adoption.d.ts +29 -0
- package/catalog/epic12-docs-adoption.js +183 -0
- package/catalog/epic12-rc0-gate-matrix.d.ts +36 -0
- package/catalog/epic12-rc0-gate-matrix.js +439 -0
- package/catalog/epic12-rc0-handoff.d.ts +30 -0
- package/catalog/epic12-rc0-handoff.js +385 -0
- package/catalog/epic13-conditional-network-evidence-ci.d.ts +35 -0
- package/catalog/epic13-conditional-network-evidence-ci.js +278 -0
- package/catalog/epic13-conditional-network-evidence.d.ts +34 -0
- package/catalog/epic13-conditional-network-evidence.js +280 -0
- package/catalog/epic13-docs-rmt-production-hardening.d.ts +39 -0
- package/catalog/epic13-docs-rmt-production-hardening.js +286 -0
- package/catalog/epic13-hydration-performance-closure.d.ts +33 -0
- package/catalog/epic13-hydration-performance-closure.js +234 -0
- package/catalog/epic13-known-residual-triage.d.ts +32 -0
- package/catalog/epic13-known-residual-triage.js +339 -0
- package/catalog/epic13-package-export-lock.d.ts +41 -0
- package/catalog/epic13-package-export-lock.js +604 -0
- package/catalog/epic13-prod-browser-csp-smoke.d.ts +35 -0
- package/catalog/epic13-prod-browser-csp-smoke.js +218 -0
- package/catalog/epic13-rc1-gate-matrix-ci-handoff.d.ts +36 -0
- package/catalog/epic13-rc1-gate-matrix-ci-handoff.js +418 -0
- package/catalog/epic13-rc1-migration-notes.d.ts +36 -0
- package/catalog/epic13-rc1-migration-notes.js +271 -0
- package/catalog/epic13-rc1-readiness.d.ts +33 -0
- package/catalog/epic13-rc1-readiness.js +487 -0
- package/catalog/epic13-release-owner-acceptance.d.ts +33 -0
- package/catalog/epic13-release-owner-acceptance.js +354 -0
- package/catalog/epic13-release-report-pack-dry-run-evidence.d.ts +36 -0
- package/catalog/epic13-release-report-pack-dry-run-evidence.js +253 -0
- package/catalog/epic13-rmt-production-readiness.d.ts +35 -0
- package/catalog/epic13-rmt-production-readiness.js +314 -0
- package/catalog/epic13-trusted-dom-boundary.d.ts +36 -0
- package/catalog/epic13-trusted-dom-boundary.js +230 -0
- package/catalog/epic13-visual-owner-artifact.d.ts +35 -0
- package/catalog/epic13-visual-owner-artifact.js +233 -0
- package/catalog/epic14-lsp-handoff.d.ts +28 -0
- package/catalog/epic14-lsp-handoff.js +312 -0
- package/catalog/epic14-rmt-tooling.d.ts +33 -0
- package/catalog/epic14-rmt-tooling.js +282 -0
- package/catalog/surface-manager-adapter-runtime.d.ts +37 -0
- package/catalog/surface-manager-adapter-runtime.js +203 -0
- package/catalog/surface-manager-browser-lab.d.ts +39 -0
- package/catalog/surface-manager-browser-lab.js +225 -0
- package/catalog/surface-manager-controller.d.ts +43 -0
- package/catalog/surface-manager-controller.js +290 -0
- package/catalog/surface-manager-layout-engines.d.ts +32 -0
- package/catalog/surface-manager-layout-engines.js +161 -0
- package/catalog/surface-manager-lazy-loading.d.ts +35 -0
- package/catalog/surface-manager-lazy-loading.js +173 -0
- package/catalog/surface-manager-materialization.d.ts +37 -0
- package/catalog/surface-manager-materialization.js +202 -0
- package/catalog/surface-manager-native-rmt-surfaces.d.ts +48 -0
- package/catalog/surface-manager-native-rmt-surfaces.js +325 -0
- package/catalog/surface-manager-overlay-bridge.d.ts +42 -0
- package/catalog/surface-manager-overlay-bridge.js +247 -0
- package/catalog/surface-manager-persistence.d.ts +37 -0
- package/catalog/surface-manager-persistence.js +178 -0
- package/catalog/surface-manager-quality-gates.d.ts +48 -0
- package/catalog/surface-manager-quality-gates.js +324 -0
- package/catalog/surface-manager-release-handoff.d.ts +47 -0
- package/catalog/surface-manager-release-handoff.js +274 -0
- package/catalog/surface-manager-remote-policy.d.ts +34 -0
- package/catalog/surface-manager-remote-policy.js +199 -0
- package/catalog/surface-manager-rmt-authoring.d.ts +44 -0
- package/catalog/surface-manager-rmt-authoring.js +368 -0
- package/catalog/surface-manager-route-lifecycle.d.ts +32 -0
- package/catalog/surface-manager-route-lifecycle.js +162 -0
- package/catalog/surface-manager-runtime-release-handoff.d.ts +36 -0
- package/catalog/surface-manager-runtime-release-handoff.js +245 -0
- package/catalog/surface-manager-side-panel-runtime.d.ts +46 -0
- package/catalog/surface-manager-side-panel-runtime.js +307 -0
- package/catalog/surface-manager-stack-policy.d.ts +32 -0
- package/catalog/surface-manager-stack-policy.js +169 -0
- package/catalog/surface-manager-window-runtime.d.ts +45 -0
- package/catalog/surface-manager-window-runtime.js +285 -0
- package/catalog/surface-manager-workbench-fixture.d.ts +50 -0
- package/catalog/surface-manager-workbench-fixture.js +315 -0
- package/catalog/type-exports-api.js +236 -0
- package/catalog/type-exports-builder.js +405 -0
- package/catalog/type-exports-catalog.js +394 -0
- package/catalog/type-exports-loader.js +266 -0
- package/catalog/type-exports-policy.js +461 -0
- package/catalog/type-exports-rmt.js +407 -0
- package/catalog/type-exports-vendor.js +365 -0
- package/catalog/type-exports.js +574 -0
- package/components/icon-packs/core.js +154 -0
- package/components/icon-packs/lucide.js +136 -0
- package/components/manifest.json +44 -0
- package/components/prism.d.ts +73 -0
- package/components/prism.js +300 -0
- package/components/turndown.d.ts +34 -0
- package/components/turndown.js +107 -0
- package/components/x-rmt-lifecycle-demo-build.d.ts +78 -0
- package/components/x-rmt-lifecycle-demo-build.js +1175 -0
- package/components/x-rmt-lifecycle-demo.d.ts +83 -0
- package/components/x-rmt-lifecycle-demo.js +1175 -0
- package/components/xalert.d.ts +42 -0
- package/components/xalert.js +538 -0
- package/components/xbutton.d.ts +127 -0
- package/components/xbutton.js +612 -0
- package/components/xcalendar.d.ts +39 -0
- package/components/xcalendar.js +338 -0
- package/components/xcards.d.ts +34 -0
- package/components/xcards.js +253 -0
- package/components/xcheckbox.d.ts +48 -0
- package/components/xcheckbox.js +448 -0
- package/components/xcode.d.ts +35 -0
- package/components/xcode.js +370 -0
- package/components/xdialog.d.ts +48 -0
- package/components/xdialog.js +763 -0
- package/components/xdrawer.d.ts +61 -0
- package/components/xdrawer.js +654 -0
- package/components/xfooter.d.ts +41 -0
- package/components/xfooter.js +351 -0
- package/components/xform.d.ts +43 -0
- package/components/xform.js +456 -0
- package/components/xheader.d.ts +68 -0
- package/components/xheader.js +1253 -0
- package/components/xhero.d.ts +42 -0
- package/components/xhero.js +475 -0
- package/components/xicon.d.ts +146 -0
- package/components/xicon.js +688 -0
- package/components/xinput.d.ts +37 -0
- package/components/xinput.js +444 -0
- package/components/xlightbox.d.ts +48 -0
- package/components/xlightbox.js +571 -0
- package/components/xlink.d.ts +63 -0
- package/components/xlink.js +565 -0
- package/components/xmasonry.d.ts +35 -0
- package/components/xmasonry.js +666 -0
- package/components/xmenu.d.ts +118 -0
- package/components/xmenu.js +1005 -0
- package/components/xmodal.d.ts +64 -0
- package/components/xmodal.js +831 -0
- package/components/xplayer.d.ts +57 -0
- package/components/xplayer.js +1748 -0
- package/components/xpopover.d.ts +54 -0
- package/components/xpopover.js +466 -0
- package/components/xprogress.d.ts +40 -0
- package/components/xprogress.js +345 -0
- package/components/xradio.d.ts +50 -0
- package/components/xradio.js +474 -0
- package/components/xrouter.d.ts +244 -0
- package/components/xrouter.js +1841 -0
- package/components/xsection.d.ts +34 -0
- package/components/xsection.js +253 -0
- package/components/xselect.d.ts +46 -0
- package/components/xselect.js +463 -0
- package/components/xsidepanel.d.ts +56 -0
- package/components/xsidepanel.js +728 -0
- package/components/xspinner.d.ts +38 -0
- package/components/xspinner.js +388 -0
- package/components/xstate.d.ts +137 -0
- package/components/xstate.js +493 -0
- package/components/xstatus.d.ts +41 -0
- package/components/xstatus.js +381 -0
- package/components/xsummary.d.ts +43 -0
- package/components/xsummary.js +293 -0
- package/components/xsurfacemanager-controller.d.ts +130 -0
- package/components/xsurfacemanager-controller.js +699 -0
- package/components/xsurfacemanager.d.ts +452 -0
- package/components/xsurfacemanager.js +3775 -0
- package/components/xsurfaceoverlay-bridge.d.ts +43 -0
- package/components/xsurfaceoverlay-bridge.js +238 -0
- package/components/xsurfacewindow.d.ts +50 -0
- package/components/xsurfacewindow.js +576 -0
- package/components/xtabs.d.ts +73 -0
- package/components/xtabs.js +611 -0
- package/components/xtend-public-types.d.ts +208 -0
- package/components/xtextarea.d.ts +46 -0
- package/components/xtextarea.js +451 -0
- package/components/xtheme.d.ts +253 -0
- package/components/xtheme.js +1438 -0
- package/components/xtoast.d.ts +39 -0
- package/components/xtoast.js +389 -0
- package/components/xtooltip.d.ts +53 -0
- package/components/xtooltip.js +432 -0
- package/components/xtype.d.ts +42 -0
- package/components/xtype.js +244 -0
- package/components/xutils.d.ts +164 -0
- package/components/xutils.js +496 -0
- package/components/xwriter.d.ts +67 -0
- package/components/xwriter.js +854 -0
- package/design-tokens/themes/enterprise-light.json +40 -0
- package/design-tokens/themes/xtend-signature.json +126 -0
- package/design-tokens/xtend-design-tokens.d.ts +95 -0
- package/design-tokens/xtend-design-tokens.js +395 -0
- package/design-tokens/xtheme-token-alias-layer.d.ts +84 -0
- package/design-tokens/xtheme-token-alias-layer.js +423 -0
- package/docs/.htaccess +51 -0
- package/docs/README.md +340 -0
- package/docs/XTend-ADR.md +221 -0
- package/docs/a11y-keyboard-smokes.md +62 -0
- package/docs/about.md +18 -0
- package/docs/api.md +157 -0
- package/docs/best-practices.md +76 -0
- package/docs/component-catalog-coverage.md +58 -0
- package/docs/component-lab.md +103 -0
- package/docs/component-long-tail-migration.md +41 -0
- package/docs/component-platform.md +159 -0
- package/docs/component-ux-app-authoring.md +130 -0
- package/docs/component-ux-authoring.md +96 -0
- package/docs/component-ux-gates.md +45 -0
- package/docs/components/x-rmt-lifecycle-demo-build.md +60 -0
- package/docs/components/xalert.md +81 -0
- package/docs/components/xbutton.md +103 -0
- package/docs/components/xcalendar.md +82 -0
- package/docs/components/xcards.md +128 -0
- package/docs/components/xcheckbox.md +102 -0
- package/docs/components/xcode.md +126 -0
- package/docs/components/xdialog.md +92 -0
- package/docs/components/xdrawer.md +84 -0
- package/docs/components/xfooter.md +126 -0
- package/docs/components/xform.md +128 -0
- package/docs/components/xheader.md +308 -0
- package/docs/components/xhero.md +142 -0
- package/docs/components/xicon.md +125 -0
- package/docs/components/xinput.md +129 -0
- package/docs/components/xlightbox.md +98 -0
- package/docs/components/xlink.md +109 -0
- package/docs/components/xmasonry.md +124 -0
- package/docs/components/xmenu.md +158 -0
- package/docs/components/xmodal.md +82 -0
- package/docs/components/xplayer.md +104 -0
- package/docs/components/xpopover.md +67 -0
- package/docs/components/xprogress.md +56 -0
- package/docs/components/xradio.md +103 -0
- package/docs/components/xrouter.md +260 -0
- package/docs/components/xsection.md +125 -0
- package/docs/components/xselect.md +105 -0
- package/docs/components/xsidepanel.md +30 -0
- package/docs/components/xspinner.md +102 -0
- package/docs/components/xstate.md +148 -0
- package/docs/components/xstatus.md +55 -0
- package/docs/components/xsummary.md +78 -0
- package/docs/components/xsurfacemanager.md +27 -0
- package/docs/components/xsurfacewindow.md +21 -0
- package/docs/components/xtabs.md +160 -0
- package/docs/components/xtextarea.md +98 -0
- package/docs/components/xtheme.md +167 -0
- package/docs/components/xtoast.md +62 -0
- package/docs/components/xtooltip.md +66 -0
- package/docs/components/xtype.md +82 -0
- package/docs/components/xutils.md +144 -0
- package/docs/components/xwriter.md +94 -0
- package/docs/components.md +117 -0
- package/docs/conditional-network-evidence-ci.md +38 -0
- package/docs/conditional-network-evidence.md +50 -0
- package/docs/core-migration-guide.md +110 -0
- package/docs/design-tokens.md +116 -0
- package/docs/docs-rmt-production-hardening.md +31 -0
- package/docs/enterprise-adoption.md +411 -0
- package/docs/enterprise-component-flex-release-handoff.md +129 -0
- package/docs/epic10-platform-gates.md +62 -0
- package/docs/epic10-release-handoff.md +81 -0
- package/docs/epic11-enterprise-ux-handoff.md +70 -0
- package/docs/epic12-rc0-handoff.md +61 -0
- package/docs/existing-component-metadata.md +67 -0
- package/docs/hydration-performance-closure.md +34 -0
- package/docs/hydration-policies.md +71 -0
- package/docs/index.php +1625 -0
- package/docs/known-residual-triage.md +22 -0
- package/docs/manifest-import-policy.md +79 -0
- package/docs/manifest.md +106 -0
- package/docs/menu.json +1190 -0
- package/docs/motion-contrast.md +67 -0
- package/docs/package-export-lock.md +44 -0
- package/docs/performance-measurements.md +106 -0
- package/docs/performance-regression.md +89 -0
- package/docs/performance.md +94 -0
- package/docs/previews/README.md +17 -0
- package/docs/prod-browser-csp-smokes.md +40 -0
- package/docs/public-component-types.md +79 -0
- package/docs/quick-start-guide.md +152 -0
- package/docs/rc0-adoption-guide.md +102 -0
- package/docs/rc0-gate-matrix.md +58 -0
- package/docs/rc1-gate-matrix-ci-handoff.md +56 -0
- package/docs/rc1-migration-notes.md +69 -0
- package/docs/rc1-readiness.md +46 -0
- package/docs/release-owner-acceptance.md +56 -0
- package/docs/release-report-pack-dry-run-evidence.md +39 -0
- package/docs/rmt-dsl-authoring-polish.md +122 -0
- package/docs/rmt-first-demo-app.md +77 -0
- package/docs/rmt-first-xtend-apps.md +105 -0
- package/docs/rmt-kernel-panic-recovery-incident-handoff.md +61 -0
- package/docs/rmt-kernel-security-hardening-migration.md +50 -0
- package/docs/rmt-kernel-trusted-output-authoring.md +69 -0
- package/docs/rmt-language-server.md +177 -0
- package/docs/rmt-lifecycle-demo.md +25 -0
- package/docs/rmt-linter.md +140 -0
- package/docs/rmt-production-readiness.md +63 -0
- package/docs/rmt-tooling-release-gates.md +77 -0
- package/docs/rmt-vnext-authoring.md +60 -0
- package/docs/rmt-vnext-cross-surface-events.md +68 -0
- package/docs/rmt-vnext-enterprise-mfe-handoff.md +70 -0
- package/docs/rmt-vnext-migration-notes.md +62 -0
- package/docs/rmt-vnext-release-handoff.md +69 -0
- package/docs/rmt-vnext-remote-surfaces.md +90 -0
- package/docs/rmt-vnext-surface-registry-enterprise.md +76 -0
- package/docs/screenreader-signals.md +56 -0
- package/docs/supply-chain-gates.md +100 -0
- package/docs/surface-manager-authoring-guide.md +94 -0
- package/docs/surface-manager-browser-lab.md +45 -0
- package/docs/surface-manager-component-lab.md +43 -0
- package/docs/surface-manager-controller.md +66 -0
- package/docs/surface-manager-layout-engines.md +32 -0
- package/docs/surface-manager-lazy-hydration.md +63 -0
- package/docs/surface-manager-migration-guide.md +94 -0
- package/docs/surface-manager-native-rmt-surfaces.md +38 -0
- package/docs/surface-manager-overlay-bridge.md +53 -0
- package/docs/surface-manager-persistence.md +30 -0
- package/docs/surface-manager-quality-gates.md +51 -0
- package/docs/surface-manager-release-handoff.md +68 -0
- package/docs/surface-manager-remote-policy.md +54 -0
- package/docs/surface-manager-rmt-authoring.md +86 -0
- package/docs/surface-manager-route-lifecycle.md +59 -0
- package/docs/surface-manager-runtime-release-handoff.md +69 -0
- package/docs/surface-manager-side-panel-runtime.md +36 -0
- package/docs/surface-manager-stack-policy.md +39 -0
- package/docs/surface-manager-window-runtime.md +47 -0
- package/docs/surface-manager-workbench-fixture.md +43 -0
- package/docs/third-party-design-authoring.md +406 -0
- package/docs/trusted-dom-boundary-browser-proof.md +32 -0
- package/docs/trusted-dom-sanitizing.md +110 -0
- package/docs/type-exports.md +61 -0
- package/docs/typescript-components.md +63 -0
- package/docs/utils/fabric-runtime.js +650 -0
- package/docs/utils/pageloader.js +2823 -0
- package/docs/utils/parsedown.php +298 -0
- package/docs/visual-browser-regression.md +83 -0
- package/docs/visual-owner-artifacts.md +46 -0
- package/docs/visual-snapshot-automation.md +87 -0
- package/docs/xtend-api-types.md +55 -0
- package/docs/xtend-builder-types.md +55 -0
- package/docs/xtend-catalog-types.md +44 -0
- package/docs/xtend-fabric-rmt-lane-mapping.md +143 -0
- package/docs/xtend-fabric.md +474 -0
- package/docs/xtend-loader-types.md +58 -0
- package/docs/xtend-loader.md +265 -0
- package/docs/xtend-policy-types.md +38 -0
- package/docs/xtend-rmt-types.md +39 -0
- package/docs/xtend-vendor-types.md +36 -0
- package/docs/xtendrmt-app-dsl.md +269 -0
- package/docs/xtendrmt-migration-guide.md +235 -0
- package/docs/xtendrmt-native-authoring.md +337 -0
- package/docs/xtendrmt-overview.md +89 -0
- package/docs/xtendrmt-parsedown-docs.rmt +956 -0
- package/docs/xtendrmt-parsedown-scheduling.md +301 -0
- package/docs/xtendrmt-runtime-bridge.md +155 -0
- package/fabric/hydration-policy.d.ts +27 -0
- package/fabric/hydration-policy.js +306 -0
- package/fabric/package.json +58 -0
- package/fabric/rmt-lane-mapping.d.ts +47 -0
- package/fabric/rmt-lane-mapping.js +504 -0
- package/fabric/xtend-fabric.d.ts +81 -0
- package/fabric/xtend-fabric.js +2669 -0
- package/fabric/xtend-policy-public-types.d.ts +135 -0
- package/package.json +8225 -0
- package/security/README.md +54 -0
- package/security/manifest-import-policy.d.ts +43 -0
- package/security/manifest-import-policy.js +260 -0
- package/security/supply-chain-gate-policy.d.ts +45 -0
- package/security/supply-chain-gate-policy.js +249 -0
- package/security/trusted-dom-policy.d.ts +36 -0
- package/security/trusted-dom-policy.js +316 -0
- package/tools/package.json +77 -0
- package/tools/rmt-editor/vscode/README.md +33 -0
- package/tools/rmt-editor/vscode/extension.d.ts +9 -0
- package/tools/rmt-editor/vscode/extension.js +55 -0
- package/tools/rmt-editor/vscode/language-configuration.json +28 -0
- package/tools/rmt-editor/vscode/package.json +83 -0
- package/tools/rmt-editor/vscode/snippets/rmt.code-snippets +243 -0
- package/tools/rmt-editor/vscode/syntaxes/rmt.tmLanguage.json +13 -0
- package/tools/rmt-editor/vscode/xtend-rmt-language-0.0.0-enterprise-readiness.vsix +0 -0
- package/tools/rmt-language/code-actions.d.ts +15 -0
- package/tools/rmt-language/code-actions.js +566 -0
- package/tools/rmt-language/completions.d.ts +22 -0
- package/tools/rmt-language/completions.js +475 -0
- package/tools/rmt-language/definitions.d.ts +13 -0
- package/tools/rmt-language/definitions.js +212 -0
- package/tools/rmt-language/diagnostics.d.ts +23 -0
- package/tools/rmt-language/diagnostics.js +486 -0
- package/tools/rmt-language/format-adapter.d.ts +16 -0
- package/tools/rmt-language/format-adapter.js +270 -0
- package/tools/rmt-language/hover.d.ts +12 -0
- package/tools/rmt-language/hover.js +326 -0
- package/tools/rmt-language/kernel-escalation.d.ts +122 -0
- package/tools/rmt-language/kernel-escalation.js +427 -0
- package/tools/rmt-language/kernel-panic-monitor.d.ts +176 -0
- package/tools/rmt-language/kernel-panic-monitor.js +674 -0
- package/tools/rmt-language/kernel-policy-parity.d.ts +142 -0
- package/tools/rmt-language/kernel-policy-parity.js +629 -0
- package/tools/rmt-language/kernel-recovery.d.ts +173 -0
- package/tools/rmt-language/kernel-recovery.js +666 -0
- package/tools/rmt-language/kernel-scheduler-failure.d.ts +136 -0
- package/tools/rmt-language/kernel-scheduler-failure.js +486 -0
- package/tools/rmt-language/kernel-security-regression.d.ts +154 -0
- package/tools/rmt-language/kernel-security-regression.js +465 -0
- package/tools/rmt-language/kernel-trust-authority.d.ts +120 -0
- package/tools/rmt-language/kernel-trust-authority.js +549 -0
- package/tools/rmt-language/parser.d.ts +14 -0
- package/tools/rmt-language/parser.js +111 -0
- package/tools/rmt-language/rmt-tooling-public-types.d.ts +179 -0
- package/tools/rmt-language/rules/boundary-policy.js +81 -0
- package/tools/rmt-language/rules/document-policy.js +65 -0
- package/tools/rmt-language/rules/index.js +29 -0
- package/tools/rmt-language/rules/route-policy.js +81 -0
- package/tools/rmt-language/rules/scheduler-policy.js +66 -0
- package/tools/rmt-language/rules/template-policy.js +130 -0
- package/tools/rmt-language/semantic-graph.d.ts +18 -0
- package/tools/rmt-language/semantic-graph.js +827 -0
- package/tools/rmt-language/snippets/README.md +17 -0
- package/tools/rmt-language/snippets/index.d.ts +17 -0
- package/tools/rmt-language/snippets/index.js +417 -0
- package/tools/rmt-language/snippets/rmt.code-snippets +243 -0
- package/tools/rmt-language/source-model.d.ts +14 -0
- package/tools/rmt-language/source-model.js +731 -0
- package/tools/rmt-language/symbols.d.ts +13 -0
- package/tools/rmt-language/symbols.js +183 -0
- package/tools/rmt-language/vnext-compatibility.d.ts +28 -0
- package/tools/rmt-language/vnext-compatibility.js +675 -0
- package/tools/rmt-language/vnext-compiler.d.ts +17 -0
- package/tools/rmt-language/vnext-compiler.js +716 -0
- package/tools/rmt-language/vnext-composition.d.ts +30 -0
- package/tools/rmt-language/vnext-composition.js +595 -0
- package/tools/rmt-language/vnext-conditions.d.ts +25 -0
- package/tools/rmt-language/vnext-conditions.js +474 -0
- package/tools/rmt-language/vnext-cross-surface-events.d.ts +30 -0
- package/tools/rmt-language/vnext-cross-surface-events.js +607 -0
- package/tools/rmt-language/vnext-degradation.d.ts +23 -0
- package/tools/rmt-language/vnext-degradation.js +428 -0
- package/tools/rmt-language/vnext-enterprise-fixtures.d.ts +28 -0
- package/tools/rmt-language/vnext-enterprise-fixtures.js +487 -0
- package/tools/rmt-language/vnext-enterprise-registry.d.ts +21 -0
- package/tools/rmt-language/vnext-enterprise-registry.js +495 -0
- package/tools/rmt-language/vnext-enterprise-release.d.ts +44 -0
- package/tools/rmt-language/vnext-enterprise-release.js +472 -0
- package/tools/rmt-language/vnext-event-governance.d.ts +29 -0
- package/tools/rmt-language/vnext-event-governance.js +488 -0
- package/tools/rmt-language/vnext-events.d.ts +44 -0
- package/tools/rmt-language/vnext-events.js +680 -0
- package/tools/rmt-language/vnext-import-resolver.d.ts +28 -0
- package/tools/rmt-language/vnext-import-resolver.js +642 -0
- package/tools/rmt-language/vnext-lifecycle.d.ts +22 -0
- package/tools/rmt-language/vnext-lifecycle.js +404 -0
- package/tools/rmt-language/vnext-parser.d.ts +21 -0
- package/tools/rmt-language/vnext-parser.js +1391 -0
- package/tools/rmt-language/vnext-regression.d.ts +25 -0
- package/tools/rmt-language/vnext-regression.js +394 -0
- package/tools/rmt-language/vnext-release.d.ts +29 -0
- package/tools/rmt-language/vnext-release.js +293 -0
- package/tools/rmt-language/vnext-remote-compatibility.d.ts +33 -0
- package/tools/rmt-language/vnext-remote-compatibility.js +892 -0
- package/tools/rmt-language/vnext-remote-compiler.d.ts +14 -0
- package/tools/rmt-language/vnext-remote-compiler.js +520 -0
- package/tools/rmt-language/vnext-remote-manifest.d.ts +33 -0
- package/tools/rmt-language/vnext-remote-manifest.js +538 -0
- package/tools/rmt-language/vnext-remote-security.d.ts +27 -0
- package/tools/rmt-language/vnext-remote-security.js +380 -0
- package/tools/rmt-language/vnext-remote-tooling.d.ts +25 -0
- package/tools/rmt-language/vnext-remote-tooling.js +805 -0
- package/tools/rmt-language/vnext-scheduler.d.ts +24 -0
- package/tools/rmt-language/vnext-scheduler.js +469 -0
- package/tools/rmt-language/vnext-security.d.ts +28 -0
- package/tools/rmt-language/vnext-security.js +597 -0
- package/tools/rmt-language/vnext-streaming.d.ts +28 -0
- package/tools/rmt-language/vnext-streaming.js +593 -0
- package/tools/rmt-language/vnext-surfaces.d.ts +24 -0
- package/tools/rmt-language/vnext-surfaces.js +406 -0
- package/tools/rmt-language/vnext-tooling.d.ts +25 -0
- package/tools/rmt-language/vnext-tooling.js +728 -0
- package/tools/rmt-language-server/protocol.d.ts +22 -0
- package/tools/rmt-language-server/protocol.js +352 -0
- package/tools/rmt-language-server/server.d.ts +15 -0
- package/tools/rmt-language-server/server.js +622 -0
- package/tools/rmt-linter/cli.d.ts +14 -0
- package/tools/rmt-linter/cli.js +450 -0
- package/tools/rmt-linter/reporter.d.ts +16 -0
- package/tools/rmt-linter/reporter.js +472 -0
- package/xtend-builder/README.md +83 -0
- package/xtend-builder/a11y/README.md +42 -0
- package/xtend-builder/a11y/component-a11y-profile.d.ts +14 -0
- package/xtend-builder/a11y/component-a11y-profile.js +314 -0
- package/xtend-builder/blueprints/README.md +105 -0
- package/xtend-builder/blueprints/component-blueprint.contract.d.ts +16 -0
- package/xtend-builder/blueprints/component-blueprint.contract.js +343 -0
- package/xtend-builder/builder-public-types.d.ts +234 -0
- package/xtend-builder/extensions/README.md +26 -0
- package/xtend-builder/extensions/component-extension-points.d.ts +11 -0
- package/xtend-builder/extensions/component-extension-points.js +277 -0
- package/xtend-builder/generators/README.md +149 -0
- package/xtend-builder/generators/component-files.d.ts +5 -0
- package/xtend-builder/generators/component-files.js +769 -0
- package/xtend-builder/generators/component-plan.d.ts +4 -0
- package/xtend-builder/generators/component-plan.js +104 -0
- package/xtend-builder/generators/registry.d.ts +6 -0
- package/xtend-builder/generators/registry.js +118 -0
- package/xtend-builder/generators/rmt-build.js +738 -0
- package/xtend-builder/generators/rmt-lifecycle-demo.js +922 -0
- package/xtend-builder/lib/cli.d.ts +9 -0
- package/xtend-builder/lib/cli.js +543 -0
- package/xtend-builder/lib/layout.d.ts +6 -0
- package/xtend-builder/lib/layout.js +153 -0
- package/xtend-builder/lib/package-resolver.js +25 -0
- package/xtend-builder/package.json +90 -0
- package/xtend-builder/performance/README.md +31 -0
- package/xtend-builder/performance/component-performance-profile.d.ts +11 -0
- package/xtend-builder/performance/component-performance-profile.js +347 -0
- package/xtend-builder/performance/component-ux-performance-contract.d.ts +27 -0
- package/xtend-builder/performance/component-ux-performance-contract.js +424 -0
- package/xtend-builder/preview/README.md +61 -0
- package/xtend-builder/preview/component-lab-ux-inspector.d.ts +20 -0
- package/xtend-builder/preview/component-lab-ux-inspector.js +448 -0
- package/xtend-builder/preview/component-lab.d.ts +14 -0
- package/xtend-builder/preview/component-lab.js +278 -0
- package/xtend-builder/preview/component-preview.d.ts +5 -0
- package/xtend-builder/preview/component-preview.js +160 -0
- package/xtend-builder/scaffold.config.d.ts +4 -0
- package/xtend-builder/scaffold.config.js +2056 -0
- package/xtend-builder/scaffold.d.ts +3 -0
- package/xtend-builder/scaffold.js +11 -0
- package/xtend-builder/templates/README.md +33 -0
- package/xtend-builder/templates/component/a11y.template.ts +11 -0
- package/xtend-builder/templates/component/component-suite.template.d.ts +2 -0
- package/xtend-builder/templates/component/component-suite.template.js +108 -0
- package/xtend-builder/templates/component/contract.template.ts +10 -0
- package/xtend-builder/templates/component/demo-plan.template.md +73 -0
- package/xtend-builder/templates/component/docs.template.md +301 -0
- package/xtend-builder/templates/component/fixture-data.template.ts +28 -0
- package/xtend-builder/templates/component/fixture.template.html +37 -0
- package/xtend-builder/templates/component/manifest-plan.template.json +22 -0
- package/xtend-builder/templates/component/performance.template.ts +13 -0
- package/xtend-builder/templates/component/rmt.template.ts +12 -0
- package/xtend-builder/templates/component/source.template.d.ts +2 -0
- package/xtend-builder/templates/component/source.template.js +137 -0
- package/xtend-builder/templates/component/source.template.ts +110 -0
- package/xtend-builder/templates/component/types.template.d.ts +423 -0
- package/xtend-builder/templates/loader.d.ts +4 -0
- package/xtend-builder/templates/loader.js +51 -0
- package/xtend-builder/templates/registry.d.ts +6 -0
- package/xtend-builder/templates/registry.js +119 -0
- package/xtend-builder/typing/README.md +130 -0
- package/xtend-builder/typing/component-contract-v2.d.ts +15 -0
- package/xtend-builder/typing/component-contract-v2.js +248 -0
- package/xtend-builder/typing/component-network-contract.d.ts +22 -0
- package/xtend-builder/typing/component-network-contract.js +478 -0
- package/xtend-builder/typing/component-shell-contract.d.ts +21 -0
- package/xtend-builder/typing/component-shell-contract.js +312 -0
- package/xtend-builder/typing/component-styling-contract.d.ts +22 -0
- package/xtend-builder/typing/component-styling-contract.js +301 -0
- package/xtend-builder/typing/component-types.d.ts +10 -0
- package/xtend-builder/typing/component-types.js +551 -0
- package/xtend-builder/typing/enterprise-component-flex-hardening-contract.d.ts +20 -0
- package/xtend-builder/typing/enterprise-component-flex-hardening-contract.js +332 -0
- package/xtend-builder/typing/feedback-status-ux-contract.d.ts +25 -0
- package/xtend-builder/typing/feedback-status-ux-contract.js +347 -0
- package/xtend-builder/typing/form-controls-ux-contract.d.ts +25 -0
- package/xtend-builder/typing/form-controls-ux-contract.js +357 -0
- package/xtend-builder/typing/layout-display-media-ux-contract.d.ts +25 -0
- package/xtend-builder/typing/layout-display-media-ux-contract.js +420 -0
- package/xtend-builder/typing/navigation-routing-ux-contract.d.ts +17 -0
- package/xtend-builder/typing/navigation-routing-ux-contract.js +297 -0
- package/xtend-builder/typing/overlay-interaction-ux-contract.d.ts +25 -0
- package/xtend-builder/typing/overlay-interaction-ux-contract.js +383 -0
- package/xtend-builder/typing/rmt-dsl-authoring-polish.d.ts +27 -0
- package/xtend-builder/typing/rmt-dsl-authoring-polish.js +419 -0
- package/xtend-builder/typing/rmt-shell-authoring-contract.d.ts +26 -0
- package/xtend-builder/typing/rmt-shell-authoring-contract.js +315 -0
- package/xtend-builder/utils/README.md +8 -0
- package/xtend-builder/utils/naming.d.ts +7 -0
- package/xtend-builder/utils/naming.js +36 -0
- package/xtend-builder/utils/validation.d.ts +5 -0
- package/xtend-builder/utils/validation.js +95 -0
- package/xtend-builder/wiring/README.md +46 -0
- package/xtend-builder/wiring/features.d.ts +5 -0
- package/xtend-builder/wiring/features.js +165 -0
- package/xtend-builder/wiring/hydration.d.ts +4 -0
- package/xtend-builder/wiring/hydration.js +44 -0
- package/xtend-builder/wiring/manifest.d.ts +5 -0
- package/xtend-builder/wiring/manifest.js +48 -0
- package/xtend-builder/workflows/README.md +47 -0
- package/xtend-builder/workflows/developer-workflow.d.ts +6 -0
- package/xtend-builder/workflows/developer-workflow.js +125 -0
- package/xtend-builder/writing/manifest-patcher.d.ts +49 -0
- package/xtend-builder/writing/manifest-patcher.js +391 -0
- package/xtend-builder/writing/write-plan.d.ts +148 -0
- package/xtend-builder/writing/write-plan.js +646 -0
- package/xtend-dev.d.ts +23 -0
- package/xtend-dev.js +4 -0
- package/xtend-loader.d.ts +201 -0
- package/xtend-loader.js +1704 -0
- package/xtend.css +402 -0
- package/xtendrmt/package.json +64 -0
- package/xtendrmt/rmt-core.d.ts +4452 -0
- package/xtendrmt/rmt-core.esm.js +25793 -0
- package/xtendrmt/rmt-first-demo-app.js +265 -0
- package/xtendrmt/rmt-first-demo-app.rmt +737 -0
- package/xtendrmt/rmt-lifecycle-demo.app.js +493 -0
- package/xtendrmt/rmt-lifecycle-demo.core.json +810 -0
- package/xtendrmt/rmt-lifecycle-demo.rmt +35 -0
- package/xtendrmt/rmt-lifecycle-demo.rmt-build.app.js +153 -0
- package/xtendrmt/rmt-lifecycle-demo.rmt-build.core.json +810 -0
- package/xtendrmt/rmt-lifecycle-demo.rmt-build.scaffold.json +202 -0
- package/xtendrmt/rmt-lifecycle-demo.scaffold.json +187 -0
- package/xtendrmt/rmt-manifest.json +548 -0
- package/xtendrmt/rmt-runtime.browser.js +26183 -0
- package/xtendrmt/rmt-runtime.esm.js +26214 -0
- package/xtendrmt/rmt-vnext-enterprise-mfe-demo.core.json +849 -0
- package/xtendrmt/rmt-vnext-enterprise-mfe-demo.rmt +50 -0
- package/xtendrmt/rmt-vnext-reference-demo.core.json +1069 -0
- package/xtendrmt/rmt-vnext-reference-demo.rmt +50 -0
- package/xtendrmt/rmt.schema.json +3145 -0
- package/xtendrmt/surface-workbench.js +316 -0
- package/xtendrmt/surface-workbench.rmt +762 -0
- package/xtendrmt/xtendrmt-bestcase-demo.core.json +1187 -0
- package/xtendrmt/xtendrmt-bestcase-demo.js +1728 -0
- package/xtendrmt/xtendrmt-bestcase-demo.rmt +57 -0
|
@@ -0,0 +1,368 @@
|
|
|
1
|
+
const {
|
|
2
|
+
KERNEL_BOUNDARY
|
|
3
|
+
} = require('./epic12-rc0-gate-matrix');
|
|
4
|
+
|
|
5
|
+
const SURFACE_MANAGER_RMT_AUTHORING_SCHEMA = 'xtend.rmt.surface-authoring.v1';
|
|
6
|
+
const SURFACE_MANAGER_RMT_AUTHORING_REPORT_SCHEMA = 'xtend.rmt.surface-authoring-report.v1';
|
|
7
|
+
const SURFACE_MANAGER_SCHEMA = 'xtend.surface.manager.v1';
|
|
8
|
+
const SURFACE_RECORD_SCHEMA = 'xtend.surface.record.v1';
|
|
9
|
+
const SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE = 'WP-SM-01';
|
|
10
|
+
const SURFACE_MANAGER_RMT_AUTHORING_STATUS = 'accepted-contract';
|
|
11
|
+
const SURFACE_MANAGER_RMT_AUTHORING_TARGET = 'rmt-native-surface-authoring-ready';
|
|
12
|
+
const SURFACE_MANAGER_RMT_AUTHORING_MODULE = 'catalog/surface-manager-rmt-authoring.js';
|
|
13
|
+
const SURFACE_MANAGER_RMT_AUTHORING_SUITE = 'tests/rmt/rmt_surface_manager_authoring_suite.js';
|
|
14
|
+
const SURFACE_MANAGER_RMT_AUTHORING_PLAN = 'development/XTend-SurfaceManager-und-Multi-Window-Plan.md';
|
|
15
|
+
const SURFACE_MANAGER_RMT_AUTHORING_CONTRACT = 'development/XTend-SurfaceManager-Contract-und-RMT-Authoring-Model.md';
|
|
16
|
+
const SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE_DOC = 'development/WP-SM-01-SurfaceManager-Contract-und-RMT-Authoring-Model-definieren.md';
|
|
17
|
+
const SURFACE_MANAGER_RMT_AUTHORING_DOCS = 'docs/surface-manager-rmt-authoring.md';
|
|
18
|
+
const SURFACE_MANAGER_RMT_AUTHORING_FIXTURE = 'tests/fixtures/rmt-surface-manager-workbench.rmt';
|
|
19
|
+
const SURFACE_MANAGER_RMT_AUTHORING_LOCAL_GATE = 'node scripts/run_xtend_tests.js rmt-surface-authoring --json';
|
|
20
|
+
const SURFACE_MANAGER_RMT_AUTHORING_PACKAGE_SCRIPT = 'npm run test:rmt-surface-authoring';
|
|
21
|
+
const NEXT_WORKPACKAGE = 'WP-SM-02';
|
|
22
|
+
const NEXT_DECISION = 'surface-controller-state-snapshot';
|
|
23
|
+
|
|
24
|
+
const REQUIRED_DOMAINS = Object.freeze([
|
|
25
|
+
'manifest',
|
|
26
|
+
'adapters',
|
|
27
|
+
'components',
|
|
28
|
+
'routes',
|
|
29
|
+
'schedules',
|
|
30
|
+
'templates',
|
|
31
|
+
'metadata.surface',
|
|
32
|
+
'metadata.surfaceManager'
|
|
33
|
+
]);
|
|
34
|
+
|
|
35
|
+
const REQUIRED_ADAPTERS = Object.freeze([
|
|
36
|
+
'xtend.component',
|
|
37
|
+
'xtend.xrouter',
|
|
38
|
+
'rmt.state-scheduler-diagnostics'
|
|
39
|
+
]);
|
|
40
|
+
|
|
41
|
+
const RESERVED_ADAPTERS = Object.freeze([
|
|
42
|
+
'xtend.surface'
|
|
43
|
+
]);
|
|
44
|
+
|
|
45
|
+
const REQUIRED_COMPONENTS = Object.freeze([
|
|
46
|
+
'app.shell',
|
|
47
|
+
'workbench.manager',
|
|
48
|
+
'workbench.inspector',
|
|
49
|
+
'workbench.editor',
|
|
50
|
+
'workbench.properties',
|
|
51
|
+
'inspector.content',
|
|
52
|
+
'editor.content',
|
|
53
|
+
'properties.content'
|
|
54
|
+
]);
|
|
55
|
+
|
|
56
|
+
const SURFACE_COMPONENT_TAGS = Object.freeze([
|
|
57
|
+
'x-surface-manager',
|
|
58
|
+
'x-surface-window',
|
|
59
|
+
'x-side-panel'
|
|
60
|
+
]);
|
|
61
|
+
|
|
62
|
+
const COMPATIBILITY_SURFACE_TAGS = Object.freeze([
|
|
63
|
+
'x-modal',
|
|
64
|
+
'x-dialog',
|
|
65
|
+
'x-drawer',
|
|
66
|
+
'x-popover',
|
|
67
|
+
'x-tooltip'
|
|
68
|
+
]);
|
|
69
|
+
|
|
70
|
+
const SURFACE_TYPES = Object.freeze([
|
|
71
|
+
'window',
|
|
72
|
+
'side-panel',
|
|
73
|
+
'modal',
|
|
74
|
+
'dialog',
|
|
75
|
+
'drawer',
|
|
76
|
+
'popover',
|
|
77
|
+
'tooltip'
|
|
78
|
+
]);
|
|
79
|
+
|
|
80
|
+
const MVP_SURFACE_TYPES = Object.freeze([
|
|
81
|
+
'window',
|
|
82
|
+
'side-panel'
|
|
83
|
+
]);
|
|
84
|
+
|
|
85
|
+
const REQUIRED_SCHEDULES = Object.freeze([
|
|
86
|
+
'app.shell.render',
|
|
87
|
+
'route.visible.render',
|
|
88
|
+
'surface.visible.render',
|
|
89
|
+
'surface.user-blocking.open',
|
|
90
|
+
'surface.user-blocking.close',
|
|
91
|
+
'surface.transition.layout',
|
|
92
|
+
'surface.background.persist',
|
|
93
|
+
'surface.diagnostics.snapshot',
|
|
94
|
+
'component.visible.mount',
|
|
95
|
+
'component.idle.hydrate',
|
|
96
|
+
'a11y.user-blocking.announce',
|
|
97
|
+
'diagnostics.snapshot'
|
|
98
|
+
]);
|
|
99
|
+
|
|
100
|
+
const REQUIRED_LANES = Object.freeze([
|
|
101
|
+
'user-blocking',
|
|
102
|
+
'visible',
|
|
103
|
+
'transition',
|
|
104
|
+
'idle',
|
|
105
|
+
'background',
|
|
106
|
+
'diagnostics'
|
|
107
|
+
]);
|
|
108
|
+
|
|
109
|
+
const REQUIRED_DOCS = Object.freeze([
|
|
110
|
+
SURFACE_MANAGER_RMT_AUTHORING_PLAN,
|
|
111
|
+
SURFACE_MANAGER_RMT_AUTHORING_CONTRACT,
|
|
112
|
+
SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE_DOC,
|
|
113
|
+
SURFACE_MANAGER_RMT_AUTHORING_DOCS,
|
|
114
|
+
'development/ADR-XTend-Fabric.md',
|
|
115
|
+
'development/XTend-RMT-First-Class-App-Authoring.md',
|
|
116
|
+
'development/XTend-Overlay-und-Interaction-UX-Reife-Contract.md',
|
|
117
|
+
'docs/component-ux-app-authoring.md',
|
|
118
|
+
'docs/xtend-fabric.md'
|
|
119
|
+
]);
|
|
120
|
+
|
|
121
|
+
const REQUIRED_ARTIFACTS = Object.freeze([
|
|
122
|
+
SURFACE_MANAGER_RMT_AUTHORING_MODULE,
|
|
123
|
+
SURFACE_MANAGER_RMT_AUTHORING_SUITE,
|
|
124
|
+
SURFACE_MANAGER_RMT_AUTHORING_FIXTURE,
|
|
125
|
+
SURFACE_MANAGER_RMT_AUTHORING_CONTRACT,
|
|
126
|
+
SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE_DOC,
|
|
127
|
+
SURFACE_MANAGER_RMT_AUTHORING_DOCS
|
|
128
|
+
]);
|
|
129
|
+
|
|
130
|
+
function unique(values) {
|
|
131
|
+
return [...new Set(values)];
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
function createSurfaceManagerRmtAuthoringPlan(options = {}) {
|
|
135
|
+
const surfaceTypes = unique([
|
|
136
|
+
...MVP_SURFACE_TYPES,
|
|
137
|
+
...SURFACE_TYPES
|
|
138
|
+
]);
|
|
139
|
+
const componentTags = SURFACE_COMPONENT_TAGS.slice();
|
|
140
|
+
const compatibilityTags = COMPATIBILITY_SURFACE_TAGS.slice();
|
|
141
|
+
const requiredSchedules = REQUIRED_SCHEDULES.slice();
|
|
142
|
+
const scheduleLanes = REQUIRED_LANES.slice();
|
|
143
|
+
|
|
144
|
+
return {
|
|
145
|
+
schema: SURFACE_MANAGER_RMT_AUTHORING_SCHEMA,
|
|
146
|
+
reportSchema: SURFACE_MANAGER_RMT_AUTHORING_REPORT_SCHEMA,
|
|
147
|
+
surfaceManagerSchema: SURFACE_MANAGER_SCHEMA,
|
|
148
|
+
surfaceRecordSchema: SURFACE_RECORD_SCHEMA,
|
|
149
|
+
workpackage: SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE,
|
|
150
|
+
status: SURFACE_MANAGER_RMT_AUTHORING_STATUS,
|
|
151
|
+
generatedAt: options.generatedAt || 'static-local',
|
|
152
|
+
targetReadiness: SURFACE_MANAGER_RMT_AUTHORING_TARGET,
|
|
153
|
+
module: SURFACE_MANAGER_RMT_AUTHORING_MODULE,
|
|
154
|
+
suite: SURFACE_MANAGER_RMT_AUTHORING_SUITE,
|
|
155
|
+
planningDocument: SURFACE_MANAGER_RMT_AUTHORING_PLAN,
|
|
156
|
+
contract: SURFACE_MANAGER_RMT_AUTHORING_CONTRACT,
|
|
157
|
+
workpackageDocument: SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE_DOC,
|
|
158
|
+
docs: SURFACE_MANAGER_RMT_AUTHORING_DOCS,
|
|
159
|
+
fixture: SURFACE_MANAGER_RMT_AUTHORING_FIXTURE,
|
|
160
|
+
localGate: SURFACE_MANAGER_RMT_AUTHORING_LOCAL_GATE,
|
|
161
|
+
packageScript: SURFACE_MANAGER_RMT_AUTHORING_PACKAGE_SCRIPT,
|
|
162
|
+
requiredDomains: REQUIRED_DOMAINS.slice(),
|
|
163
|
+
requiredAdapters: REQUIRED_ADAPTERS.slice(),
|
|
164
|
+
reservedAdapters: RESERVED_ADAPTERS.slice(),
|
|
165
|
+
requiredComponents: REQUIRED_COMPONENTS.slice(),
|
|
166
|
+
componentTags,
|
|
167
|
+
compatibilityTags,
|
|
168
|
+
mvpSurfaceTypes: MVP_SURFACE_TYPES.slice(),
|
|
169
|
+
supportedSurfaceTypes: surfaceTypes,
|
|
170
|
+
requiredSchedules,
|
|
171
|
+
scheduleLanes,
|
|
172
|
+
requiredDocs: REQUIRED_DOCS.slice(),
|
|
173
|
+
artifactPaths: REQUIRED_ARTIFACTS.slice(),
|
|
174
|
+
authoringModel: {
|
|
175
|
+
mvpPath: 'component-records-with-metadata.surface',
|
|
176
|
+
futureDomain: 'surfaces',
|
|
177
|
+
futureAdapter: 'xtend.surface',
|
|
178
|
+
templateMode: 'dom_descriptor',
|
|
179
|
+
eventBindingMode: 'dom-event-to-rmt-command',
|
|
180
|
+
statePolicy: 'digital-twin-ssot-xstate',
|
|
181
|
+
componentContract: 'xtend.component.contract.v2',
|
|
182
|
+
fabricApi: '@xtend-fabric',
|
|
183
|
+
loaderPolicy: 'manifest-ensure-through-xtend-loader-policy'
|
|
184
|
+
},
|
|
185
|
+
surfaceLifecycle: [
|
|
186
|
+
'declare',
|
|
187
|
+
'create',
|
|
188
|
+
'mount',
|
|
189
|
+
'hydrate',
|
|
190
|
+
'open',
|
|
191
|
+
'activate',
|
|
192
|
+
'update',
|
|
193
|
+
'deactivate',
|
|
194
|
+
'close',
|
|
195
|
+
'unmount',
|
|
196
|
+
'dispose'
|
|
197
|
+
],
|
|
198
|
+
windowLifecycle: [
|
|
199
|
+
'move.start',
|
|
200
|
+
'move.commit',
|
|
201
|
+
'resize.start',
|
|
202
|
+
'resize.commit',
|
|
203
|
+
'minimize',
|
|
204
|
+
'restore',
|
|
205
|
+
'maximize',
|
|
206
|
+
'dock',
|
|
207
|
+
'undock'
|
|
208
|
+
],
|
|
209
|
+
a11yRequirements: [
|
|
210
|
+
'accessible-name-required',
|
|
211
|
+
'focus-restore-required',
|
|
212
|
+
'modal-inert-only-for-modal-surfaces',
|
|
213
|
+
'keyboard-move-resize-alternative',
|
|
214
|
+
'a11y-announcements-user-blocking',
|
|
215
|
+
'reduced-motion-and-forced-colors-aware'
|
|
216
|
+
],
|
|
217
|
+
securityRequirements: [
|
|
218
|
+
'no-inline-js-events',
|
|
219
|
+
'dom-descriptor-preferred',
|
|
220
|
+
'trusted-dom-boundary-for-html-fragment',
|
|
221
|
+
'no-external-imports',
|
|
222
|
+
'no-dom-node-diagnostics',
|
|
223
|
+
'layout-state-only-persistence'
|
|
224
|
+
],
|
|
225
|
+
localGateMode: 'static-rmt-surface-authoring-contract',
|
|
226
|
+
runtimeComponentsImplemented: false,
|
|
227
|
+
externalBrowserRequiredInLocalGate: false,
|
|
228
|
+
externalNetworkAllowedInLocalGate: false,
|
|
229
|
+
frameworkAgnostic: true,
|
|
230
|
+
rmtKernelImportsXtendTypes: false,
|
|
231
|
+
adapterBoundary: 'xtend-component-adapter-now-surface-adapter-reserved',
|
|
232
|
+
fabricRelationship: 'surface-manager-consumes-fabric-does-not-replace-fabric',
|
|
233
|
+
kernelBoundary: KERNEL_BOUNDARY,
|
|
234
|
+
nextWorkpackage: NEXT_WORKPACKAGE,
|
|
235
|
+
nextDecision: NEXT_DECISION
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
function validateSurfaceManagerRmtAuthoringPlan(plan = createSurfaceManagerRmtAuthoringPlan()) {
|
|
240
|
+
const errors = [];
|
|
241
|
+
|
|
242
|
+
if (!plan || plan.schema !== SURFACE_MANAGER_RMT_AUTHORING_SCHEMA) errors.push(`schema must be ${SURFACE_MANAGER_RMT_AUTHORING_SCHEMA}`);
|
|
243
|
+
if (!plan || plan.reportSchema !== SURFACE_MANAGER_RMT_AUTHORING_REPORT_SCHEMA) errors.push(`reportSchema must be ${SURFACE_MANAGER_RMT_AUTHORING_REPORT_SCHEMA}`);
|
|
244
|
+
if (!plan || plan.surfaceManagerSchema !== SURFACE_MANAGER_SCHEMA) errors.push(`surfaceManagerSchema must be ${SURFACE_MANAGER_SCHEMA}`);
|
|
245
|
+
if (!plan || plan.surfaceRecordSchema !== SURFACE_RECORD_SCHEMA) errors.push(`surfaceRecordSchema must be ${SURFACE_RECORD_SCHEMA}`);
|
|
246
|
+
if (!plan || plan.workpackage !== SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE) errors.push(`workpackage must be ${SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE}`);
|
|
247
|
+
if (!plan || plan.status !== SURFACE_MANAGER_RMT_AUTHORING_STATUS) errors.push(`status must be ${SURFACE_MANAGER_RMT_AUTHORING_STATUS}`);
|
|
248
|
+
if (!plan || plan.targetReadiness !== SURFACE_MANAGER_RMT_AUTHORING_TARGET) errors.push(`targetReadiness must be ${SURFACE_MANAGER_RMT_AUTHORING_TARGET}`);
|
|
249
|
+
REQUIRED_DOMAINS.forEach((domain) => {
|
|
250
|
+
if (!plan || !plan.requiredDomains.includes(domain)) errors.push(`domain missing: ${domain}`);
|
|
251
|
+
});
|
|
252
|
+
REQUIRED_ADAPTERS.forEach((adapter) => {
|
|
253
|
+
if (!plan || !plan.requiredAdapters.includes(adapter)) errors.push(`adapter missing: ${adapter}`);
|
|
254
|
+
});
|
|
255
|
+
RESERVED_ADAPTERS.forEach((adapter) => {
|
|
256
|
+
if (!plan || !plan.reservedAdapters.includes(adapter)) errors.push(`reserved adapter missing: ${adapter}`);
|
|
257
|
+
});
|
|
258
|
+
REQUIRED_COMPONENTS.forEach((componentId) => {
|
|
259
|
+
if (!plan || !plan.requiredComponents.includes(componentId)) errors.push(`component missing: ${componentId}`);
|
|
260
|
+
});
|
|
261
|
+
SURFACE_COMPONENT_TAGS.forEach((tag) => {
|
|
262
|
+
if (!plan || !plan.componentTags.includes(tag)) errors.push(`surface component tag missing: ${tag}`);
|
|
263
|
+
});
|
|
264
|
+
COMPATIBILITY_SURFACE_TAGS.forEach((tag) => {
|
|
265
|
+
if (!plan || !plan.compatibilityTags.includes(tag)) errors.push(`compatibility tag missing: ${tag}`);
|
|
266
|
+
});
|
|
267
|
+
SURFACE_TYPES.forEach((type) => {
|
|
268
|
+
if (!plan || !plan.supportedSurfaceTypes.includes(type)) errors.push(`surface type missing: ${type}`);
|
|
269
|
+
});
|
|
270
|
+
REQUIRED_SCHEDULES.forEach((scheduleId) => {
|
|
271
|
+
if (!plan || !plan.requiredSchedules.includes(scheduleId)) errors.push(`schedule missing: ${scheduleId}`);
|
|
272
|
+
});
|
|
273
|
+
REQUIRED_LANES.forEach((lane) => {
|
|
274
|
+
if (!plan || !plan.scheduleLanes.includes(lane)) errors.push(`lane missing: ${lane}`);
|
|
275
|
+
});
|
|
276
|
+
REQUIRED_DOCS.forEach((docPath) => {
|
|
277
|
+
if (!plan || !plan.requiredDocs.includes(docPath)) errors.push(`doc missing: ${docPath}`);
|
|
278
|
+
});
|
|
279
|
+
REQUIRED_ARTIFACTS.forEach((artifactPath) => {
|
|
280
|
+
if (!plan || !plan.artifactPaths.includes(artifactPath)) errors.push(`artifact missing: ${artifactPath}`);
|
|
281
|
+
});
|
|
282
|
+
if (!plan || plan.authoringModel.mvpPath !== 'component-records-with-metadata.surface') errors.push('MVP path must use component records with metadata.surface');
|
|
283
|
+
if (!plan || plan.authoringModel.futureDomain !== 'surfaces') errors.push('future domain must be surfaces');
|
|
284
|
+
if (!plan || plan.authoringModel.futureAdapter !== 'xtend.surface') errors.push('future adapter must be xtend.surface');
|
|
285
|
+
if (!plan || plan.authoringModel.templateMode !== 'dom_descriptor') errors.push('template mode must be dom_descriptor');
|
|
286
|
+
if (!plan || plan.authoringModel.eventBindingMode !== 'dom-event-to-rmt-command') errors.push('event binding mode must be dom-event-to-rmt-command');
|
|
287
|
+
if (!plan || plan.runtimeComponentsImplemented !== false) errors.push('WP-SM-01 must not claim runtime components are implemented');
|
|
288
|
+
if (!plan || plan.externalBrowserRequiredInLocalGate !== false || plan.externalNetworkAllowedInLocalGate !== false) errors.push('local gate must not require browser or network');
|
|
289
|
+
if (!plan || plan.frameworkAgnostic !== true) errors.push('RMT surface authoring must remain framework agnostic');
|
|
290
|
+
if (!plan || plan.rmtKernelImportsXtendTypes !== false) errors.push('RMT kernel must not import XTend types');
|
|
291
|
+
if (!plan || plan.adapterBoundary !== 'xtend-component-adapter-now-surface-adapter-reserved') errors.push('adapter boundary must keep surface adapter reserved');
|
|
292
|
+
if (!plan || plan.fabricRelationship !== 'surface-manager-consumes-fabric-does-not-replace-fabric') errors.push('Fabric relationship must remain subordinate');
|
|
293
|
+
if (!plan || plan.kernelBoundary !== KERNEL_BOUNDARY) errors.push(`kernelBoundary must be ${KERNEL_BOUNDARY}`);
|
|
294
|
+
if (!plan || plan.nextWorkpackage !== NEXT_WORKPACKAGE) errors.push(`nextWorkpackage must be ${NEXT_WORKPACKAGE}`);
|
|
295
|
+
if (!plan || plan.nextDecision !== NEXT_DECISION) errors.push(`nextDecision must be ${NEXT_DECISION}`);
|
|
296
|
+
|
|
297
|
+
return {
|
|
298
|
+
schema: SURFACE_MANAGER_RMT_AUTHORING_REPORT_SCHEMA,
|
|
299
|
+
ok: errors.length === 0,
|
|
300
|
+
errors,
|
|
301
|
+
checkedAt: 'static-local',
|
|
302
|
+
workpackage: SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE
|
|
303
|
+
};
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
function createSurfaceManagerRmtAuthoringReport(options = {}) {
|
|
307
|
+
const plan = options.plan || createSurfaceManagerRmtAuthoringPlan(options);
|
|
308
|
+
const validation = validateSurfaceManagerRmtAuthoringPlan(plan);
|
|
309
|
+
|
|
310
|
+
return {
|
|
311
|
+
schema: SURFACE_MANAGER_RMT_AUTHORING_REPORT_SCHEMA,
|
|
312
|
+
ok: validation.ok,
|
|
313
|
+
errors: validation.errors.slice(),
|
|
314
|
+
workpackage: plan.workpackage,
|
|
315
|
+
status: plan.status,
|
|
316
|
+
targetReadiness: plan.targetReadiness,
|
|
317
|
+
domainCount: plan.requiredDomains.length,
|
|
318
|
+
componentCount: plan.requiredComponents.length,
|
|
319
|
+
scheduleCount: plan.requiredSchedules.length,
|
|
320
|
+
surfaceTypeCount: plan.supportedSurfaceTypes.length,
|
|
321
|
+
mvpSurfaceTypes: plan.mvpSurfaceTypes.slice(),
|
|
322
|
+
componentTags: plan.componentTags.slice(),
|
|
323
|
+
compatibilityTags: plan.compatibilityTags.slice(),
|
|
324
|
+
futureDomain: plan.authoringModel.futureDomain,
|
|
325
|
+
futureAdapter: plan.authoringModel.futureAdapter,
|
|
326
|
+
runtimeComponentsImplemented: plan.runtimeComponentsImplemented,
|
|
327
|
+
nextWorkpackage: plan.nextWorkpackage,
|
|
328
|
+
nextDecision: plan.nextDecision,
|
|
329
|
+
kernelBoundary: plan.kernelBoundary
|
|
330
|
+
};
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
module.exports = {
|
|
334
|
+
COMPATIBILITY_SURFACE_TAGS,
|
|
335
|
+
KERNEL_BOUNDARY,
|
|
336
|
+
MVP_SURFACE_TYPES,
|
|
337
|
+
NEXT_DECISION,
|
|
338
|
+
NEXT_WORKPACKAGE,
|
|
339
|
+
REQUIRED_ADAPTERS,
|
|
340
|
+
REQUIRED_ARTIFACTS,
|
|
341
|
+
REQUIRED_COMPONENTS,
|
|
342
|
+
REQUIRED_DOCS,
|
|
343
|
+
REQUIRED_DOMAINS,
|
|
344
|
+
REQUIRED_LANES,
|
|
345
|
+
REQUIRED_SCHEDULES,
|
|
346
|
+
RESERVED_ADAPTERS,
|
|
347
|
+
SURFACE_COMPONENT_TAGS,
|
|
348
|
+
SURFACE_MANAGER_RMT_AUTHORING_CONTRACT,
|
|
349
|
+
SURFACE_MANAGER_RMT_AUTHORING_DOCS,
|
|
350
|
+
SURFACE_MANAGER_RMT_AUTHORING_FIXTURE,
|
|
351
|
+
SURFACE_MANAGER_RMT_AUTHORING_LOCAL_GATE,
|
|
352
|
+
SURFACE_MANAGER_RMT_AUTHORING_MODULE,
|
|
353
|
+
SURFACE_MANAGER_RMT_AUTHORING_PACKAGE_SCRIPT,
|
|
354
|
+
SURFACE_MANAGER_RMT_AUTHORING_PLAN,
|
|
355
|
+
SURFACE_MANAGER_RMT_AUTHORING_REPORT_SCHEMA,
|
|
356
|
+
SURFACE_MANAGER_RMT_AUTHORING_SCHEMA,
|
|
357
|
+
SURFACE_MANAGER_RMT_AUTHORING_STATUS,
|
|
358
|
+
SURFACE_MANAGER_RMT_AUTHORING_SUITE,
|
|
359
|
+
SURFACE_MANAGER_RMT_AUTHORING_TARGET,
|
|
360
|
+
SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE,
|
|
361
|
+
SURFACE_MANAGER_RMT_AUTHORING_WORKPACKAGE_DOC,
|
|
362
|
+
SURFACE_MANAGER_SCHEMA,
|
|
363
|
+
SURFACE_RECORD_SCHEMA,
|
|
364
|
+
SURFACE_TYPES,
|
|
365
|
+
createSurfaceManagerRmtAuthoringPlan,
|
|
366
|
+
createSurfaceManagerRmtAuthoringReport,
|
|
367
|
+
validateSurfaceManagerRmtAuthoringPlan
|
|
368
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
XtendCatalogConstant,
|
|
3
|
+
XtendCatalogGate,
|
|
4
|
+
XtendCatalogOptions,
|
|
5
|
+
XtendCatalogPlan,
|
|
6
|
+
XtendCatalogRecord,
|
|
7
|
+
XtendCatalogReport
|
|
8
|
+
} from './catalog-public-types';
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
export declare const KERNEL_BOUNDARY: XtendCatalogConstant;
|
|
12
|
+
export declare const MANAGER_METHODS: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
13
|
+
export declare const REQUIRED_ARTIFACTS: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
14
|
+
export declare const ROUTE_LIFECYCLE_EVENTS: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
15
|
+
export declare const ROUTE_LIFECYCLE_POLICIES: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
16
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_BACKLOG: string;
|
|
17
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_DOCS: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
18
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_FIXTURE: XtendCatalogConstant;
|
|
19
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_LOCAL_GATE: string;
|
|
20
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_MODULE: string;
|
|
21
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_PACKAGE_SCRIPT: string;
|
|
22
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_REPORT_SCHEMA: string;
|
|
23
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_SCHEMA: string;
|
|
24
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_STATUS: string;
|
|
25
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_SUITE: string;
|
|
26
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_TARGET: string;
|
|
27
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE: string;
|
|
28
|
+
export declare const SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE_DOC: XtendCatalogConstant;
|
|
29
|
+
export declare const XROUTER_ROUTE_CONTRACT: string;
|
|
30
|
+
export declare function createSurfaceManagerRouteLifecyclePlan(options?: XtendCatalogOptions): XtendCatalogPlan;
|
|
31
|
+
export declare function createSurfaceManagerRouteLifecycleReport(options?: XtendCatalogOptions): XtendCatalogReport;
|
|
32
|
+
export declare function validateSurfaceManagerRouteLifecyclePlan(plan?: unknown): XtendCatalogReport;
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
const {
|
|
2
|
+
KERNEL_BOUNDARY
|
|
3
|
+
} = require('./epic12-rc0-gate-matrix');
|
|
4
|
+
|
|
5
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_SCHEMA = 'xtend.surface.route-lifecycle.v1';
|
|
6
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_REPORT_SCHEMA = 'xtend.surface.route-lifecycle-report.v1';
|
|
7
|
+
const XROUTER_ROUTE_CONTRACT = 'xtend.rmt.xrouter-adapter.v1';
|
|
8
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE = 'WP-SM-14';
|
|
9
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_STATUS = 'implemented-xrouter-bound-surface-lifecycles';
|
|
10
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_TARGET = 'xrouter-bound-surface-lifecycle-ready';
|
|
11
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_MODULE = 'catalog/surface-manager-route-lifecycle.js';
|
|
12
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_SUITE = 'tests/components/surface_manager_route_lifecycle_suite.js';
|
|
13
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_FIXTURE = 'tests/components/fixtures/xsurfacemanager-route-lifecycle.component.html';
|
|
14
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_BACKLOG = 'development/BACKLOG-XTend-SurfaceManager-App-Shell-und-RMT-Surface-Runtime.md';
|
|
15
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE_DOC = 'development/WP-SM-14-XRouter-gebundene-Surface-Lifecycles-definieren-und-umsetzen.md';
|
|
16
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_DOCS = 'docs/surface-manager-route-lifecycle.md';
|
|
17
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_LOCAL_GATE = 'node scripts/run_xtend_tests.js surface-route-lifecycle --json';
|
|
18
|
+
const SURFACE_MANAGER_ROUTE_LIFECYCLE_PACKAGE_SCRIPT = 'npm run test:surface-route-lifecycle';
|
|
19
|
+
|
|
20
|
+
const ROUTE_LIFECYCLE_POLICIES = Object.freeze(['global', 'open-close', 'open-collapse', 'open-minimize', 'open-keep', 'hydrate-only', 'manual']);
|
|
21
|
+
const MANAGER_METHODS = Object.freeze([
|
|
22
|
+
'snapshotRouteLifecycle',
|
|
23
|
+
'applyRouteLifecycle'
|
|
24
|
+
]);
|
|
25
|
+
const ROUTE_LIFECYCLE_EVENTS = Object.freeze([
|
|
26
|
+
'surface-route-lifecycle-applied',
|
|
27
|
+
'surface-route-lifecycle-skipped'
|
|
28
|
+
]);
|
|
29
|
+
const REQUIRED_ARTIFACTS = Object.freeze([
|
|
30
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_MODULE,
|
|
31
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_SUITE,
|
|
32
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_FIXTURE,
|
|
33
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_BACKLOG,
|
|
34
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE_DOC,
|
|
35
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_DOCS,
|
|
36
|
+
'components/xsurfacemanager.js',
|
|
37
|
+
'components/xsurfacemanager.d.ts',
|
|
38
|
+
'components/xsidepanel.js',
|
|
39
|
+
'components/xrouter.js',
|
|
40
|
+
'xtendrmt/rmt-core.esm.js',
|
|
41
|
+
'xtendrmt/rmt-runtime.esm.js',
|
|
42
|
+
'xtendrmt/rmt-runtime.browser.js'
|
|
43
|
+
]);
|
|
44
|
+
|
|
45
|
+
function includesAll(values, required) {
|
|
46
|
+
return required.every((entry) => Array.isArray(values) && values.includes(entry));
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
function createSurfaceManagerRouteLifecyclePlan(options = {}) {
|
|
50
|
+
return {
|
|
51
|
+
schema: SURFACE_MANAGER_ROUTE_LIFECYCLE_SCHEMA,
|
|
52
|
+
reportSchema: SURFACE_MANAGER_ROUTE_LIFECYCLE_REPORT_SCHEMA,
|
|
53
|
+
xrouterRouteContract: XROUTER_ROUTE_CONTRACT,
|
|
54
|
+
workpackage: SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE,
|
|
55
|
+
status: SURFACE_MANAGER_ROUTE_LIFECYCLE_STATUS,
|
|
56
|
+
generatedAt: options.generatedAt || 'static-local',
|
|
57
|
+
targetReadiness: SURFACE_MANAGER_ROUTE_LIFECYCLE_TARGET,
|
|
58
|
+
module: SURFACE_MANAGER_ROUTE_LIFECYCLE_MODULE,
|
|
59
|
+
suite: SURFACE_MANAGER_ROUTE_LIFECYCLE_SUITE,
|
|
60
|
+
fixture: SURFACE_MANAGER_ROUTE_LIFECYCLE_FIXTURE,
|
|
61
|
+
backlog: SURFACE_MANAGER_ROUTE_LIFECYCLE_BACKLOG,
|
|
62
|
+
workpackageDocument: SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE_DOC,
|
|
63
|
+
docs: SURFACE_MANAGER_ROUTE_LIFECYCLE_DOCS,
|
|
64
|
+
localGate: SURFACE_MANAGER_ROUTE_LIFECYCLE_LOCAL_GATE,
|
|
65
|
+
packageScript: SURFACE_MANAGER_ROUTE_LIFECYCLE_PACKAGE_SCRIPT,
|
|
66
|
+
requiredArtifacts: REQUIRED_ARTIFACTS.slice(),
|
|
67
|
+
policies: ROUTE_LIFECYCLE_POLICIES.slice(),
|
|
68
|
+
managerMethods: MANAGER_METHODS.slice(),
|
|
69
|
+
events: ROUTE_LIFECYCLE_EVENTS.slice(),
|
|
70
|
+
runtimeBoundary: {
|
|
71
|
+
routeAwareManagerOwnedLifecycle: true,
|
|
72
|
+
xrouterOwnsRouteState: true,
|
|
73
|
+
surfaceManagerOwnsSurfaceLifecycle: true,
|
|
74
|
+
supportsOpenClose: true,
|
|
75
|
+
supportsOpenCollapse: true,
|
|
76
|
+
supportsOpenMinimize: true,
|
|
77
|
+
supportsOpenKeep: true,
|
|
78
|
+
supportsHydrateOnly: true,
|
|
79
|
+
globalSurfacesStayStable: true,
|
|
80
|
+
lazyRoutePayloadsUseSkeletonHydration: true,
|
|
81
|
+
sidePanelStandaloneFallbackRemains: true,
|
|
82
|
+
createsSecondRegistry: false,
|
|
83
|
+
rmtKernelImportsXtendTypes: false,
|
|
84
|
+
networkRequired: false
|
|
85
|
+
},
|
|
86
|
+
nextWorkpackage: 'WP-SM-15',
|
|
87
|
+
nextDecision: 'modal-focus-inert-mixed-stack-policy',
|
|
88
|
+
kernelBoundary: KERNEL_BOUNDARY
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
function validateSurfaceManagerRouteLifecyclePlan(plan = createSurfaceManagerRouteLifecyclePlan()) {
|
|
93
|
+
const errors = [];
|
|
94
|
+
if (!plan || plan.schema !== SURFACE_MANAGER_ROUTE_LIFECYCLE_SCHEMA) errors.push(`schema must be ${SURFACE_MANAGER_ROUTE_LIFECYCLE_SCHEMA}`);
|
|
95
|
+
if (!plan || plan.reportSchema !== SURFACE_MANAGER_ROUTE_LIFECYCLE_REPORT_SCHEMA) errors.push(`reportSchema must be ${SURFACE_MANAGER_ROUTE_LIFECYCLE_REPORT_SCHEMA}`);
|
|
96
|
+
if (!plan || plan.xrouterRouteContract !== XROUTER_ROUTE_CONTRACT) errors.push(`xrouterRouteContract must be ${XROUTER_ROUTE_CONTRACT}`);
|
|
97
|
+
if (!plan || plan.workpackage !== SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE) errors.push(`workpackage must be ${SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE}`);
|
|
98
|
+
if (!plan || plan.status !== SURFACE_MANAGER_ROUTE_LIFECYCLE_STATUS) errors.push(`status must be ${SURFACE_MANAGER_ROUTE_LIFECYCLE_STATUS}`);
|
|
99
|
+
if (!includesAll(plan && plan.policies, ROUTE_LIFECYCLE_POLICIES)) errors.push('route lifecycle policies missing');
|
|
100
|
+
if (!includesAll(plan && plan.managerMethods, MANAGER_METHODS)) errors.push('route lifecycle manager methods missing');
|
|
101
|
+
if (!includesAll(plan && plan.events, ROUTE_LIFECYCLE_EVENTS)) errors.push('route lifecycle events missing');
|
|
102
|
+
if (!plan || !plan.runtimeBoundary || plan.runtimeBoundary.routeAwareManagerOwnedLifecycle !== true) errors.push('route-aware manager-owned lifecycle must be true');
|
|
103
|
+
if (!plan || !plan.runtimeBoundary || plan.runtimeBoundary.xrouterOwnsRouteState !== true) errors.push('XRouter must remain route-state owner');
|
|
104
|
+
if (!plan || !plan.runtimeBoundary || plan.runtimeBoundary.surfaceManagerOwnsSurfaceLifecycle !== true) errors.push('SurfaceManager must own surface lifecycle');
|
|
105
|
+
if (!plan || !plan.runtimeBoundary || plan.runtimeBoundary.globalSurfacesStayStable !== true) errors.push('global surfaces must stay stable');
|
|
106
|
+
if (!plan || !plan.runtimeBoundary || plan.runtimeBoundary.createsSecondRegistry !== false) errors.push('route lifecycle must not create a second registry');
|
|
107
|
+
if (!plan || plan.kernelBoundary !== KERNEL_BOUNDARY) errors.push(`kernelBoundary must be ${KERNEL_BOUNDARY}`);
|
|
108
|
+
return {
|
|
109
|
+
schema: SURFACE_MANAGER_ROUTE_LIFECYCLE_REPORT_SCHEMA,
|
|
110
|
+
ok: errors.length === 0,
|
|
111
|
+
errors,
|
|
112
|
+
checkedAt: 'static-local',
|
|
113
|
+
workpackage: SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE,
|
|
114
|
+
targetReadiness: SURFACE_MANAGER_ROUTE_LIFECYCLE_TARGET
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
function createSurfaceManagerRouteLifecycleReport(options = {}) {
|
|
119
|
+
const plan = options.plan || createSurfaceManagerRouteLifecyclePlan(options);
|
|
120
|
+
const validation = validateSurfaceManagerRouteLifecyclePlan(plan);
|
|
121
|
+
return {
|
|
122
|
+
schema: SURFACE_MANAGER_ROUTE_LIFECYCLE_REPORT_SCHEMA,
|
|
123
|
+
ok: validation.ok,
|
|
124
|
+
errors: validation.errors,
|
|
125
|
+
workpackage: plan.workpackage,
|
|
126
|
+
status: plan.status,
|
|
127
|
+
targetReadiness: plan.targetReadiness,
|
|
128
|
+
policies: plan.policies.slice(),
|
|
129
|
+
managerMethods: plan.managerMethods.length,
|
|
130
|
+
events: plan.events.length,
|
|
131
|
+
localGate: plan.localGate,
|
|
132
|
+
packageScript: plan.packageScript,
|
|
133
|
+
kernelBoundary: plan.kernelBoundary,
|
|
134
|
+
nextWorkpackage: plan.nextWorkpackage,
|
|
135
|
+
nextDecision: plan.nextDecision
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
module.exports = {
|
|
140
|
+
KERNEL_BOUNDARY,
|
|
141
|
+
MANAGER_METHODS,
|
|
142
|
+
REQUIRED_ARTIFACTS,
|
|
143
|
+
ROUTE_LIFECYCLE_EVENTS,
|
|
144
|
+
ROUTE_LIFECYCLE_POLICIES,
|
|
145
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_BACKLOG,
|
|
146
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_DOCS,
|
|
147
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_FIXTURE,
|
|
148
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_LOCAL_GATE,
|
|
149
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_MODULE,
|
|
150
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_PACKAGE_SCRIPT,
|
|
151
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_REPORT_SCHEMA,
|
|
152
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_SCHEMA,
|
|
153
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_STATUS,
|
|
154
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_SUITE,
|
|
155
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_TARGET,
|
|
156
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE,
|
|
157
|
+
SURFACE_MANAGER_ROUTE_LIFECYCLE_WORKPACKAGE_DOC,
|
|
158
|
+
XROUTER_ROUTE_CONTRACT,
|
|
159
|
+
createSurfaceManagerRouteLifecyclePlan,
|
|
160
|
+
createSurfaceManagerRouteLifecycleReport,
|
|
161
|
+
validateSurfaceManagerRouteLifecyclePlan
|
|
162
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
XtendCatalogConstant,
|
|
3
|
+
XtendCatalogGate,
|
|
4
|
+
XtendCatalogOptions,
|
|
5
|
+
XtendCatalogPlan,
|
|
6
|
+
XtendCatalogRecord,
|
|
7
|
+
XtendCatalogReport
|
|
8
|
+
} from './catalog-public-types';
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
export declare const COMPATIBILITY_FIXTURES: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
12
|
+
export declare const KERNEL_BOUNDARY: XtendCatalogConstant;
|
|
13
|
+
export declare const OPEN_SCOPES: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
14
|
+
export declare const PRODUCTIVE_RUNTIME_CLAIMS: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
15
|
+
export declare const RELEASE_GATES: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
16
|
+
export declare const REQUIRED_ARTIFACTS: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
17
|
+
export declare const SURFACE_MANAGER_RUNTIME_COMPATIBILITY_NOTES_SCHEMA: string;
|
|
18
|
+
export declare const SURFACE_MANAGER_RUNTIME_MIGRATION_NOTES_SCHEMA: string;
|
|
19
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_GATE_MATRIX_SCHEMA: string;
|
|
20
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_BACKLOG: string;
|
|
21
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_CONTRACT: string;
|
|
22
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_DOCS: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
23
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_LOCAL_GATE: string;
|
|
24
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_MODULE: string;
|
|
25
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_PACKAGE_SCRIPT: string;
|
|
26
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_REPORT_SCHEMA: string;
|
|
27
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_SCHEMA: string;
|
|
28
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_STATUS: string;
|
|
29
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_SUITE: string;
|
|
30
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_TARGET: string;
|
|
31
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_WORKPACKAGE: string;
|
|
32
|
+
export declare const SURFACE_MANAGER_RUNTIME_RELEASE_HANDOFF_WORKPACKAGE_DOC: XtendCatalogConstant;
|
|
33
|
+
export declare const UPDATED_GUIDES: readonly XtendCatalogConstant[] | XtendCatalogConstant;
|
|
34
|
+
export declare function createSurfaceManagerRuntimeReleaseHandoffPlan(options?: XtendCatalogOptions): XtendCatalogPlan;
|
|
35
|
+
export declare function createSurfaceManagerRuntimeReleaseHandoffReport(options?: XtendCatalogOptions): XtendCatalogReport;
|
|
36
|
+
export declare function validateSurfaceManagerRuntimeReleaseHandoffPlan(plan?: unknown): XtendCatalogReport;
|