@craft-ts/core 0.7.0-beta.13
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/LICENSE +21 -0
- package/package.json +58 -0
- package/src/index.d.ts +148 -0
- package/src/index.d.ts.map +1 -0
- package/src/index.js +150 -0
- package/src/index.js.map +1 -0
- package/src/lib/after-recomputation.d.ts +327 -0
- package/src/lib/after-recomputation.d.ts.map +1 -0
- package/src/lib/after-recomputation.js +25 -0
- package/src/lib/after-recomputation.js.map +1 -0
- package/src/lib/app-checked-di.d.ts +82 -0
- package/src/lib/app-checked-di.d.ts.map +1 -0
- package/src/lib/app-checked-di.js +1 -0
- package/src/lib/app-checked-di.js.map +1 -0
- package/src/lib/async-process.d.ts +411 -0
- package/src/lib/async-process.d.ts.map +1 -0
- package/src/lib/async-process.js +702 -0
- package/src/lib/async-process.js.map +1 -0
- package/src/lib/branded-component/branded-component.d.ts +129 -0
- package/src/lib/branded-component/branded-component.d.ts.map +1 -0
- package/src/lib/branded-component/branded-component.js +7 -0
- package/src/lib/branded-component/branded-component.js.map +1 -0
- package/src/lib/browser-boundaries.d.ts +165 -0
- package/src/lib/browser-boundaries.d.ts.map +1 -0
- package/src/lib/browser-boundaries.js +550 -0
- package/src/lib/browser-boundaries.js.map +1 -0
- package/src/lib/client-di-requirement.d.ts +28 -0
- package/src/lib/client-di-requirement.d.ts.map +1 -0
- package/src/lib/client-di-requirement.js +11 -0
- package/src/lib/client-di-requirement.js.map +1 -0
- package/src/lib/client-function-middleware.d.ts +130 -0
- package/src/lib/client-function-middleware.d.ts.map +1 -0
- package/src/lib/client-function-middleware.js +144 -0
- package/src/lib/client-function-middleware.js.map +1 -0
- package/src/lib/component-monitoring.d.ts +7 -0
- package/src/lib/component-monitoring.d.ts.map +1 -0
- package/src/lib/component-monitoring.js +28 -0
- package/src/lib/component-monitoring.js.map +1 -0
- package/src/lib/component-register.d.ts +12 -0
- package/src/lib/component-register.d.ts.map +1 -0
- package/src/lib/component-register.js +13 -0
- package/src/lib/component-register.js.map +1 -0
- package/src/lib/computed-source.d.ts +303 -0
- package/src/lib/computed-source.d.ts.map +1 -0
- package/src/lib/computed-source.js +319 -0
- package/src/lib/computed-source.js.map +1 -0
- package/src/lib/correlation-id-plugin.d.ts +3 -0
- package/src/lib/correlation-id-plugin.d.ts.map +1 -0
- package/src/lib/correlation-id-plugin.js +73 -0
- package/src/lib/correlation-id-plugin.js.map +1 -0
- package/src/lib/correlation-id.d.ts +30 -0
- package/src/lib/correlation-id.d.ts.map +1 -0
- package/src/lib/correlation-id.js +86 -0
- package/src/lib/correlation-id.js.map +1 -0
- package/src/lib/craft-a11y.d.ts +22 -0
- package/src/lib/craft-a11y.d.ts.map +1 -0
- package/src/lib/craft-a11y.js +32 -0
- package/src/lib/craft-a11y.js.map +1 -0
- package/src/lib/craft-activated-route.d.ts +21 -0
- package/src/lib/craft-activated-route.d.ts.map +1 -0
- package/src/lib/craft-activated-route.js +20 -0
- package/src/lib/craft-activated-route.js.map +1 -0
- package/src/lib/craft-app-config.d.ts +91 -0
- package/src/lib/craft-app-config.d.ts.map +1 -0
- package/src/lib/craft-app-config.js +64 -0
- package/src/lib/craft-app-config.js.map +1 -0
- package/src/lib/craft-codec.d.ts +16 -0
- package/src/lib/craft-codec.d.ts.map +1 -0
- package/src/lib/craft-codec.js +1 -0
- package/src/lib/craft-codec.js.map +1 -0
- package/src/lib/craft-computed.d.ts +31 -0
- package/src/lib/craft-computed.d.ts.map +1 -0
- package/src/lib/craft-computed.js +81 -0
- package/src/lib/craft-computed.js.map +1 -0
- package/src/lib/craft-control-flow.d.ts +14 -0
- package/src/lib/craft-control-flow.d.ts.map +1 -0
- package/src/lib/craft-control-flow.js +18 -0
- package/src/lib/craft-control-flow.js.map +1 -0
- package/src/lib/craft-effect.d.ts +13 -0
- package/src/lib/craft-effect.d.ts.map +1 -0
- package/src/lib/craft-effect.js +93 -0
- package/src/lib/craft-effect.js.map +1 -0
- package/src/lib/craft-exception.d.ts +40 -0
- package/src/lib/craft-exception.d.ts.map +1 -0
- package/src/lib/craft-exception.js +16 -0
- package/src/lib/craft-exception.js.map +1 -0
- package/src/lib/craft-gen.d.ts +123 -0
- package/src/lib/craft-gen.d.ts.map +1 -0
- package/src/lib/craft-gen.js +90 -0
- package/src/lib/craft-gen.js.map +1 -0
- package/src/lib/craft-generator-runtime.d.ts +110 -0
- package/src/lib/craft-generator-runtime.d.ts.map +1 -0
- package/src/lib/craft-generator-runtime.js +191 -0
- package/src/lib/craft-generator-runtime.js.map +1 -0
- package/src/lib/craft-guard-runtime.d.ts +70 -0
- package/src/lib/craft-guard-runtime.d.ts.map +1 -0
- package/src/lib/craft-guard-runtime.js +195 -0
- package/src/lib/craft-guard-runtime.js.map +1 -0
- package/src/lib/craft-handshake.d.ts +35 -0
- package/src/lib/craft-handshake.d.ts.map +1 -0
- package/src/lib/craft-handshake.js +34 -0
- package/src/lib/craft-handshake.js.map +1 -0
- package/src/lib/craft-http-client.d.ts +236 -0
- package/src/lib/craft-http-client.d.ts.map +1 -0
- package/src/lib/craft-http-client.js +437 -0
- package/src/lib/craft-http-client.js.map +1 -0
- package/src/lib/craft-http-trace.d.ts +12 -0
- package/src/lib/craft-http-trace.d.ts.map +1 -0
- package/src/lib/craft-http-trace.js +28 -0
- package/src/lib/craft-http-trace.js.map +1 -0
- package/src/lib/craft-lazy.d.ts +42 -0
- package/src/lib/craft-lazy.d.ts.map +1 -0
- package/src/lib/craft-lazy.js +83 -0
- package/src/lib/craft-lazy.js.map +1 -0
- package/src/lib/craft-load-retry.d.ts +76 -0
- package/src/lib/craft-load-retry.d.ts.map +1 -0
- package/src/lib/craft-load-retry.js +160 -0
- package/src/lib/craft-load-retry.js.map +1 -0
- package/src/lib/craft-machine-history.d.ts +145 -0
- package/src/lib/craft-machine-history.d.ts.map +1 -0
- package/src/lib/craft-machine-history.js +276 -0
- package/src/lib/craft-machine-history.js.map +1 -0
- package/src/lib/craft-match.d.ts +49 -0
- package/src/lib/craft-match.d.ts.map +1 -0
- package/src/lib/craft-match.js +58 -0
- package/src/lib/craft-match.js.map +1 -0
- package/src/lib/craft-method.d.ts +28 -0
- package/src/lib/craft-method.d.ts.map +1 -0
- package/src/lib/craft-method.js +45 -0
- package/src/lib/craft-method.js.map +1 -0
- package/src/lib/craft-node-directive.d.ts +32 -0
- package/src/lib/craft-node-directive.d.ts.map +1 -0
- package/src/lib/craft-node-directive.js +22 -0
- package/src/lib/craft-node-directive.js.map +1 -0
- package/src/lib/craft-pending.d.ts +115 -0
- package/src/lib/craft-pending.d.ts.map +1 -0
- package/src/lib/craft-pending.js +187 -0
- package/src/lib/craft-pending.js.map +1 -0
- package/src/lib/craft-pipe.d.ts +63 -0
- package/src/lib/craft-pipe.d.ts.map +1 -0
- package/src/lib/craft-pipe.js +57 -0
- package/src/lib/craft-pipe.js.map +1 -0
- package/src/lib/craft-platform.d.ts +50 -0
- package/src/lib/craft-platform.d.ts.map +1 -0
- package/src/lib/craft-platform.js +175 -0
- package/src/lib/craft-platform.js.map +1 -0
- package/src/lib/craft-primitive-gen.d.ts +137 -0
- package/src/lib/craft-primitive-gen.d.ts.map +1 -0
- package/src/lib/craft-primitive-gen.js +76 -0
- package/src/lib/craft-primitive-gen.js.map +1 -0
- package/src/lib/craft-primitive-registry.d.ts +113 -0
- package/src/lib/craft-primitive-registry.d.ts.map +1 -0
- package/src/lib/craft-primitive-registry.js +159 -0
- package/src/lib/craft-primitive-registry.js.map +1 -0
- package/src/lib/craft-program-operators.d.ts +101 -0
- package/src/lib/craft-program-operators.d.ts.map +1 -0
- package/src/lib/craft-program-operators.js +116 -0
- package/src/lib/craft-program-operators.js.map +1 -0
- package/src/lib/craft-program-runtime.d.ts +80 -0
- package/src/lib/craft-program-runtime.d.ts.map +1 -0
- package/src/lib/craft-program-runtime.js +166 -0
- package/src/lib/craft-program-runtime.js.map +1 -0
- package/src/lib/craft-register-for-runtime.d.ts +39 -0
- package/src/lib/craft-register-for-runtime.d.ts.map +1 -0
- package/src/lib/craft-register-for-runtime.js +96 -0
- package/src/lib/craft-register-for-runtime.js.map +1 -0
- package/src/lib/craft-register-for.d.ts +57 -0
- package/src/lib/craft-register-for.d.ts.map +1 -0
- package/src/lib/craft-register-for.js +200 -0
- package/src/lib/craft-register-for.js.map +1 -0
- package/src/lib/craft-render-identity.d.ts +19 -0
- package/src/lib/craft-render-identity.d.ts.map +1 -0
- package/src/lib/craft-render-identity.js +23 -0
- package/src/lib/craft-render-identity.js.map +1 -0
- package/src/lib/craft-replay.d.ts +5 -0
- package/src/lib/craft-replay.d.ts.map +1 -0
- package/src/lib/craft-replay.js +28 -0
- package/src/lib/craft-replay.js.map +1 -0
- package/src/lib/craft-resolve.d.ts +39 -0
- package/src/lib/craft-resolve.d.ts.map +1 -0
- package/src/lib/craft-resolve.js +9 -0
- package/src/lib/craft-resolve.js.map +1 -0
- package/src/lib/craft-resource.d.ts +11 -0
- package/src/lib/craft-resource.d.ts.map +1 -0
- package/src/lib/craft-resource.js +264 -0
- package/src/lib/craft-resource.js.map +1 -0
- package/src/lib/craft-route-exceptions.d.ts +785 -0
- package/src/lib/craft-route-exceptions.d.ts.map +1 -0
- package/src/lib/craft-route-exceptions.js +86 -0
- package/src/lib/craft-route-exceptions.js.map +1 -0
- package/src/lib/craft-route-load-error.d.ts +1145 -0
- package/src/lib/craft-route-load-error.d.ts.map +1 -0
- package/src/lib/craft-route-load-error.js +173 -0
- package/src/lib/craft-route-load-error.js.map +1 -0
- package/src/lib/craft-route-meta.d.ts +52 -0
- package/src/lib/craft-route-meta.d.ts.map +1 -0
- package/src/lib/craft-route-meta.js +16 -0
- package/src/lib/craft-route-meta.js.map +1 -0
- package/src/lib/craft-route-target.d.ts +27 -0
- package/src/lib/craft-route-target.d.ts.map +1 -0
- package/src/lib/craft-route-target.js +22 -0
- package/src/lib/craft-route-target.js.map +1 -0
- package/src/lib/craft-router-outlet.d.ts +105 -0
- package/src/lib/craft-router-outlet.d.ts.map +1 -0
- package/src/lib/craft-router-outlet.js +735 -0
- package/src/lib/craft-router-outlet.js.map +1 -0
- package/src/lib/craft-router-tokens.d.ts +49 -0
- package/src/lib/craft-router-tokens.d.ts.map +1 -0
- package/src/lib/craft-router-tokens.js +15 -0
- package/src/lib/craft-router-tokens.js.map +1 -0
- package/src/lib/craft-router-trace.d.ts +18 -0
- package/src/lib/craft-router-trace.d.ts.map +1 -0
- package/src/lib/craft-router-trace.js +54 -0
- package/src/lib/craft-router-trace.js.map +1 -0
- package/src/lib/craft-router.d.ts +248 -0
- package/src/lib/craft-router.d.ts.map +1 -0
- package/src/lib/craft-router.js +559 -0
- package/src/lib/craft-router.js.map +1 -0
- package/src/lib/craft-routes.d.ts +755 -0
- package/src/lib/craft-routes.d.ts.map +1 -0
- package/src/lib/craft-routes.js +510 -0
- package/src/lib/craft-routes.js.map +1 -0
- package/src/lib/craft-service.d.ts +1034 -0
- package/src/lib/craft-service.d.ts.map +1 -0
- package/src/lib/craft-service.js +1072 -0
- package/src/lib/craft-service.js.map +1 -0
- package/src/lib/craft-service.shared.d.ts +35 -0
- package/src/lib/craft-service.shared.d.ts.map +1 -0
- package/src/lib/craft-service.shared.js +4 -0
- package/src/lib/craft-service.shared.js.map +1 -0
- package/src/lib/craft-settled.d.ts +171 -0
- package/src/lib/craft-settled.d.ts.map +1 -0
- package/src/lib/craft-settled.js +130 -0
- package/src/lib/craft-settled.js.map +1 -0
- package/src/lib/craft-ssr.d.ts +29 -0
- package/src/lib/craft-ssr.d.ts.map +1 -0
- package/src/lib/craft-ssr.js +27 -0
- package/src/lib/craft-ssr.js.map +1 -0
- package/src/lib/craft-state-machine-runtime.d.ts +88 -0
- package/src/lib/craft-state-machine-runtime.d.ts.map +1 -0
- package/src/lib/craft-state-machine-runtime.js +167 -0
- package/src/lib/craft-state-machine-runtime.js.map +1 -0
- package/src/lib/craft-state-machine.d.ts +233 -0
- package/src/lib/craft-state-machine.d.ts.map +1 -0
- package/src/lib/craft-state-machine.js +254 -0
- package/src/lib/craft-state-machine.js.map +1 -0
- package/src/lib/craft-target-runtime.d.ts +20 -0
- package/src/lib/craft-target-runtime.d.ts.map +1 -0
- package/src/lib/craft-target-runtime.js +42 -0
- package/src/lib/craft-target-runtime.js.map +1 -0
- package/src/lib/craft-transfer-snapshot.d.ts +19 -0
- package/src/lib/craft-transfer-snapshot.d.ts.map +1 -0
- package/src/lib/craft-transfer-snapshot.js +90 -0
- package/src/lib/craft-transfer-snapshot.js.map +1 -0
- package/src/lib/craft-unique.d.ts +7 -0
- package/src/lib/craft-unique.d.ts.map +1 -0
- package/src/lib/craft-unique.js +16 -0
- package/src/lib/craft-unique.js.map +1 -0
- package/src/lib/craft-until-settled.d.ts +99 -0
- package/src/lib/craft-until-settled.d.ts.map +1 -0
- package/src/lib/craft-until-settled.js +81 -0
- package/src/lib/craft-until-settled.js.map +1 -0
- package/src/lib/craft-use.d.ts +26 -0
- package/src/lib/craft-use.d.ts.map +1 -0
- package/src/lib/craft-use.js +37 -0
- package/src/lib/craft-use.js.map +1 -0
- package/src/lib/craft-view-transition.d.ts +102 -0
- package/src/lib/craft-view-transition.d.ts.map +1 -0
- package/src/lib/craft-view-transition.js +130 -0
- package/src/lib/craft-view-transition.js.map +1 -0
- package/src/lib/dom-event-hook.d.ts +30 -0
- package/src/lib/dom-event-hook.d.ts.map +1 -0
- package/src/lib/dom-event-hook.js +16 -0
- package/src/lib/dom-event-hook.js.map +1 -0
- package/src/lib/fn-wrapper.d.ts +13 -0
- package/src/lib/fn-wrapper.d.ts.map +1 -0
- package/src/lib/fn-wrapper.js +66 -0
- package/src/lib/fn-wrapper.js.map +1 -0
- package/src/lib/form/craft-field.d.ts +155 -0
- package/src/lib/form/craft-field.d.ts.map +1 -0
- package/src/lib/form/craft-field.directive.d.ts +70 -0
- package/src/lib/form/craft-field.directive.d.ts.map +1 -0
- package/src/lib/form/craft-field.directive.js +549 -0
- package/src/lib/form/craft-field.directive.js.map +1 -0
- package/src/lib/form/craft-field.js +586 -0
- package/src/lib/form/craft-field.js.map +1 -0
- package/src/lib/form/field-exception.d.ts +62 -0
- package/src/lib/form/field-exception.d.ts.map +1 -0
- package/src/lib/form/field-exception.js +37 -0
- package/src/lib/form/field-exception.js.map +1 -0
- package/src/lib/form/field-lens.d.ts +29 -0
- package/src/lib/form/field-lens.d.ts.map +1 -0
- package/src/lib/form/field-lens.js +32 -0
- package/src/lib/form/field-lens.js.map +1 -0
- package/src/lib/form/insert-form-attributes.d.ts +69 -0
- package/src/lib/form/insert-form-attributes.d.ts.map +1 -0
- package/src/lib/form/insert-form-attributes.js +163 -0
- package/src/lib/form/insert-form-attributes.js.map +1 -0
- package/src/lib/form/insert-form-internals.d.ts +110 -0
- package/src/lib/form/insert-form-internals.d.ts.map +1 -0
- package/src/lib/form/insert-form-internals.js +276 -0
- package/src/lib/form/insert-form-internals.js.map +1 -0
- package/src/lib/form/insert-form-schema.d.ts +10 -0
- package/src/lib/form/insert-form-schema.d.ts.map +1 -0
- package/src/lib/form/insert-form-schema.js +62 -0
- package/src/lib/form/insert-form-schema.js.map +1 -0
- package/src/lib/form/insert-form-submit.d.ts +79 -0
- package/src/lib/form/insert-form-submit.d.ts.map +1 -0
- package/src/lib/form/insert-form-submit.js +126 -0
- package/src/lib/form/insert-form-submit.js.map +1 -0
- package/src/lib/form/insert-form.d.ts +39 -0
- package/src/lib/form/insert-form.d.ts.map +1 -0
- package/src/lib/form/insert-form.js +255 -0
- package/src/lib/form/insert-form.js.map +1 -0
- package/src/lib/form/insert-select-form-tree.d.ts +33 -0
- package/src/lib/form/insert-select-form-tree.d.ts.map +1 -0
- package/src/lib/form/insert-select-form-tree.js +144 -0
- package/src/lib/form/insert-select-form-tree.js.map +1 -0
- package/src/lib/form/insert-sub-form-field.d.ts +17 -0
- package/src/lib/form/insert-sub-form-field.d.ts.map +1 -0
- package/src/lib/form/insert-sub-form-field.js +41 -0
- package/src/lib/form/insert-sub-form-field.js.map +1 -0
- package/src/lib/form/make-form-tree-insert.d.ts +22 -0
- package/src/lib/form/make-form-tree-insert.d.ts.map +1 -0
- package/src/lib/form/make-form-tree-insert.js +43 -0
- package/src/lib/form/make-form-tree-insert.js.map +1 -0
- package/src/lib/form/target-form-field.d.ts +11 -0
- package/src/lib/form/target-form-field.d.ts.map +1 -0
- package/src/lib/form/target-form-field.js +1 -0
- package/src/lib/form/target-form-field.js.map +1 -0
- package/src/lib/form/validator.d.ts +174 -0
- package/src/lib/form/validator.d.ts.map +1 -0
- package/src/lib/form/validator.js +465 -0
- package/src/lib/form/validator.js.map +1 -0
- package/src/lib/from-event-to-source$.d.ts +210 -0
- package/src/lib/from-event-to-source$.d.ts.map +1 -0
- package/src/lib/from-event-to-source$.js +29 -0
- package/src/lib/from-event-to-source$.js.map +1 -0
- package/src/lib/global-persister-handler.service.d.ts +10 -0
- package/src/lib/global-persister-handler.service.d.ts.map +1 -0
- package/src/lib/global-persister-handler.service.js +40 -0
- package/src/lib/global-persister-handler.service.js.map +1 -0
- package/src/lib/host/craft-compat.d.ts +242 -0
- package/src/lib/host/craft-compat.d.ts.map +1 -0
- package/src/lib/host/craft-compat.js +444 -0
- package/src/lib/host/craft-compat.js.map +1 -0
- package/src/lib/host/craft-dom.d.ts +16 -0
- package/src/lib/host/craft-dom.d.ts.map +1 -0
- package/src/lib/host/craft-dom.js +24 -0
- package/src/lib/host/craft-dom.js.map +1 -0
- package/src/lib/host/craft-http.d.ts +22 -0
- package/src/lib/host/craft-http.d.ts.map +1 -0
- package/src/lib/host/craft-http.js +80 -0
- package/src/lib/host/craft-http.js.map +1 -0
- package/src/lib/host/craft-injector-host.d.ts +3 -0
- package/src/lib/host/craft-injector-host.d.ts.map +1 -0
- package/src/lib/host/craft-injector-host.js +2 -0
- package/src/lib/host/craft-injector-host.js.map +1 -0
- package/src/lib/host/craft-injector.d.ts +40 -0
- package/src/lib/host/craft-injector.d.ts.map +1 -0
- package/src/lib/host/craft-injector.js +318 -0
- package/src/lib/host/craft-injector.js.map +1 -0
- package/src/lib/host/craft-linked-signal.d.ts +17 -0
- package/src/lib/host/craft-linked-signal.d.ts.map +1 -0
- package/src/lib/host/craft-linked-signal.js +86 -0
- package/src/lib/host/craft-linked-signal.js.map +1 -0
- package/src/lib/host/craft-router-runtime.d.ts +61 -0
- package/src/lib/host/craft-router-runtime.d.ts.map +1 -0
- package/src/lib/host/craft-router-runtime.js +456 -0
- package/src/lib/host/craft-router-runtime.js.map +1 -0
- package/src/lib/host/craft-router-types.d.ts +84 -0
- package/src/lib/host/craft-router-types.d.ts.map +1 -0
- package/src/lib/host/craft-router-types.js +35 -0
- package/src/lib/host/craft-router-types.js.map +1 -0
- package/src/lib/host/craft-signal.d.ts +45 -0
- package/src/lib/host/craft-signal.d.ts.map +1 -0
- package/src/lib/host/craft-signal.js +161 -0
- package/src/lib/host/craft-signal.js.map +1 -0
- package/src/lib/host/craft-test-bed.d.ts +63 -0
- package/src/lib/host/craft-test-bed.d.ts.map +1 -0
- package/src/lib/host/craft-test-bed.js +114 -0
- package/src/lib/host/craft-test-bed.js.map +1 -0
- package/src/lib/host-tag.d.ts +2 -0
- package/src/lib/host-tag.d.ts.map +1 -0
- package/src/lib/host-tag.js +2 -0
- package/src/lib/host-tag.js.map +1 -0
- package/src/lib/insert-entities.d.ts +131 -0
- package/src/lib/insert-entities.d.ts.map +1 -0
- package/src/lib/insert-entities.js +159 -0
- package/src/lib/insert-entities.js.map +1 -0
- package/src/lib/insert-noop-typing-anchor.d.ts +15 -0
- package/src/lib/insert-noop-typing-anchor.d.ts.map +1 -0
- package/src/lib/insert-noop-typing-anchor.js +16 -0
- package/src/lib/insert-noop-typing-anchor.js.map +1 -0
- package/src/lib/insert-pagination-placeholder-data.d.ts +122 -0
- package/src/lib/insert-pagination-placeholder-data.d.ts.map +1 -0
- package/src/lib/insert-pagination-placeholder-data.js +244 -0
- package/src/lib/insert-pagination-placeholder-data.js.map +1 -0
- package/src/lib/insert-react-on-mutation.d.ts +261 -0
- package/src/lib/insert-react-on-mutation.d.ts.map +1 -0
- package/src/lib/insert-react-on-mutation.js +227 -0
- package/src/lib/insert-react-on-mutation.js.map +1 -0
- package/src/lib/insert-select-resource.d.ts +31 -0
- package/src/lib/insert-select-resource.d.ts.map +1 -0
- package/src/lib/insert-select-resource.js +27 -0
- package/src/lib/insert-select-resource.js.map +1 -0
- package/src/lib/insert-select.d.ts +126 -0
- package/src/lib/insert-select.d.ts.map +1 -0
- package/src/lib/insert-select.js +535 -0
- package/src/lib/insert-select.js.map +1 -0
- package/src/lib/insert-storage-persister.d.ts +27 -0
- package/src/lib/insert-storage-persister.d.ts.map +1 -0
- package/src/lib/insert-storage-persister.js +65 -0
- package/src/lib/insert-storage-persister.js.map +1 -0
- package/src/lib/insert-typed-pipes.d.ts +64 -0
- package/src/lib/insert-typed-pipes.d.ts.map +1 -0
- package/src/lib/insert-typed-pipes.js +32 -0
- package/src/lib/insert-typed-pipes.js.map +1 -0
- package/src/lib/linked-source.d.ts +8 -0
- package/src/lib/linked-source.d.ts.map +1 -0
- package/src/lib/linked-source.js +24 -0
- package/src/lib/linked-source.js.map +1 -0
- package/src/lib/local-storage-persister.d.ts +4 -0
- package/src/lib/local-storage-persister.d.ts.map +1 -0
- package/src/lib/local-storage-persister.js +342 -0
- package/src/lib/local-storage-persister.js.map +1 -0
- package/src/lib/middleware-schema-shared.d.ts +67 -0
- package/src/lib/middleware-schema-shared.d.ts.map +1 -0
- package/src/lib/middleware-schema-shared.js +34 -0
- package/src/lib/middleware-schema-shared.js.map +1 -0
- package/src/lib/mock-http-request-for-route.d.ts +173 -0
- package/src/lib/mock-http-request-for-route.d.ts.map +1 -0
- package/src/lib/mock-http-request-for-route.js +127 -0
- package/src/lib/mock-http-request-for-route.js.map +1 -0
- package/src/lib/mutation.d.ts +332 -0
- package/src/lib/mutation.d.ts.map +1 -0
- package/src/lib/mutation.js +923 -0
- package/src/lib/mutation.js.map +1 -0
- package/src/lib/on$.d.ts +26 -0
- package/src/lib/on$.d.ts.map +1 -0
- package/src/lib/on$.js +19 -0
- package/src/lib/on$.js.map +1 -0
- package/src/lib/portable-server-function.d.ts +68 -0
- package/src/lib/portable-server-function.d.ts.map +1 -0
- package/src/lib/portable-server-function.js +97 -0
- package/src/lib/portable-server-function.js.map +1 -0
- package/src/lib/preserved-resource.d.ts +4 -0
- package/src/lib/preserved-resource.d.ts.map +1 -0
- package/src/lib/preserved-resource.js +60 -0
- package/src/lib/preserved-resource.js.map +1 -0
- package/src/lib/primitive-method-runtime-context.d.ts +28 -0
- package/src/lib/primitive-method-runtime-context.d.ts.map +1 -0
- package/src/lib/primitive-method-runtime-context.js +38 -0
- package/src/lib/primitive-method-runtime-context.js.map +1 -0
- package/src/lib/primitive-resource-runtime-context.d.ts +46 -0
- package/src/lib/primitive-resource-runtime-context.d.ts.map +1 -0
- package/src/lib/primitive-resource-runtime-context.js +102 -0
- package/src/lib/primitive-resource-runtime-context.js.map +1 -0
- package/src/lib/query-params.d.ts +216 -0
- package/src/lib/query-params.d.ts.map +1 -0
- package/src/lib/query-params.js +324 -0
- package/src/lib/query-params.js.map +1 -0
- package/src/lib/query.core.d.ts +214 -0
- package/src/lib/query.core.d.ts.map +1 -0
- package/src/lib/query.core.js +210 -0
- package/src/lib/query.core.js.map +1 -0
- package/src/lib/query.d.ts +324 -0
- package/src/lib/query.d.ts.map +1 -0
- package/src/lib/query.js +971 -0
- package/src/lib/query.js.map +1 -0
- package/src/lib/reactive-read.d.ts +162 -0
- package/src/lib/reactive-read.d.ts.map +1 -0
- package/src/lib/reactive-read.js +389 -0
- package/src/lib/reactive-read.js.map +1 -0
- package/src/lib/resource-by-id.d.ts +71 -0
- package/src/lib/resource-by-id.d.ts.map +1 -0
- package/src/lib/resource-by-id.js +294 -0
- package/src/lib/resource-by-id.js.map +1 -0
- package/src/lib/resource-exception.d.ts +30 -0
- package/src/lib/resource-exception.d.ts.map +1 -0
- package/src/lib/resource-exception.js +86 -0
- package/src/lib/resource-exception.js.map +1 -0
- package/src/lib/route-checked-di.d.ts +229 -0
- package/src/lib/route-checked-di.d.ts.map +1 -0
- package/src/lib/route-checked-di.js +1 -0
- package/src/lib/route-checked-di.js.map +1 -0
- package/src/lib/schema-validation.d.ts +89 -0
- package/src/lib/schema-validation.d.ts.map +1 -0
- package/src/lib/schema-validation.js +110 -0
- package/src/lib/schema-validation.js.map +1 -0
- package/src/lib/send-context-to-ai.d.ts +20 -0
- package/src/lib/send-context-to-ai.d.ts.map +1 -0
- package/src/lib/send-context-to-ai.js +18 -0
- package/src/lib/send-context-to-ai.js.map +1 -0
- package/src/lib/send-context-to-ai.tokens.d.ts +12 -0
- package/src/lib/send-context-to-ai.tokens.d.ts.map +1 -0
- package/src/lib/send-context-to-ai.tokens.js +1 -0
- package/src/lib/send-context-to-ai.tokens.js.map +1 -0
- package/src/lib/server-function-client.d.ts +102 -0
- package/src/lib/server-function-client.d.ts.map +1 -0
- package/src/lib/server-function-client.js +106 -0
- package/src/lib/server-function-client.js.map +1 -0
- package/src/lib/server-function-contract.d.ts +42 -0
- package/src/lib/server-function-contract.d.ts.map +1 -0
- package/src/lib/server-function-contract.js +23 -0
- package/src/lib/server-function-contract.js.map +1 -0
- package/src/lib/server-function-middleware.d.ts +222 -0
- package/src/lib/server-function-middleware.d.ts.map +1 -0
- package/src/lib/server-function-middleware.js +189 -0
- package/src/lib/server-function-middleware.js.map +1 -0
- package/src/lib/server-function.d.ts +114 -0
- package/src/lib/server-function.d.ts.map +1 -0
- package/src/lib/server-function.js +80 -0
- package/src/lib/server-function.js.map +1 -0
- package/src/lib/server-layer.d.ts +185 -0
- package/src/lib/server-layer.d.ts.map +1 -0
- package/src/lib/server-layer.js +121 -0
- package/src/lib/server-layer.js.map +1 -0
- package/src/lib/server.d.ts +83 -0
- package/src/lib/server.d.ts.map +1 -0
- package/src/lib/server.js +266 -0
- package/src/lib/server.js.map +1 -0
- package/src/lib/setup-craft-service-test.d.ts +90 -0
- package/src/lib/setup-craft-service-test.d.ts.map +1 -0
- package/src/lib/setup-craft-service-test.js +193 -0
- package/src/lib/setup-craft-service-test.js.map +1 -0
- package/src/lib/setup-craft-service-testing-by-register.d.ts +245 -0
- package/src/lib/setup-craft-service-testing-by-register.d.ts.map +1 -0
- package/src/lib/setup-craft-service-testing-by-register.js +316 -0
- package/src/lib/setup-craft-service-testing-by-register.js.map +1 -0
- package/src/lib/signal-proxy.d.ts +21 -0
- package/src/lib/signal-proxy.d.ts.map +1 -0
- package/src/lib/signal-proxy.js +79 -0
- package/src/lib/signal-proxy.js.map +1 -0
- package/src/lib/signal-source.d.ts +392 -0
- package/src/lib/signal-source.d.ts.map +1 -0
- package/src/lib/signal-source.js +433 -0
- package/src/lib/signal-source.js.map +1 -0
- package/src/lib/source$.d.ts +121 -0
- package/src/lib/source$.d.ts.map +1 -0
- package/src/lib/source$.js +171 -0
- package/src/lib/source$.js.map +1 -0
- package/src/lib/source-from-event.d.ts +350 -0
- package/src/lib/source-from-event.d.ts.map +1 -0
- package/src/lib/source-from-event.js +26 -0
- package/src/lib/source-from-event.js.map +1 -0
- package/src/lib/stacked-source.d.ts +6 -0
- package/src/lib/stacked-source.d.ts.map +1 -0
- package/src/lib/stacked-source.js +29 -0
- package/src/lib/stacked-source.js.map +1 -0
- package/src/lib/standard-schema.d.ts +43 -0
- package/src/lib/standard-schema.d.ts.map +1 -0
- package/src/lib/standard-schema.js +1 -0
- package/src/lib/standard-schema.js.map +1 -0
- package/src/lib/state-method-runtime-context.d.ts +13 -0
- package/src/lib/state-method-runtime-context.d.ts.map +1 -0
- package/src/lib/state-method-runtime-context.js +11 -0
- package/src/lib/state-method-runtime-context.js.map +1 -0
- package/src/lib/state.d.ts +158 -0
- package/src/lib/state.d.ts.map +1 -0
- package/src/lib/state.js +388 -0
- package/src/lib/state.js.map +1 -0
- package/src/lib/storage-persister.service.d.ts +25 -0
- package/src/lib/storage-persister.service.d.ts.map +1 -0
- package/src/lib/storage-persister.service.js +27 -0
- package/src/lib/storage-persister.service.js.map +1 -0
- package/src/lib/take-app-snapshot.d.ts +31 -0
- package/src/lib/take-app-snapshot.d.ts.map +1 -0
- package/src/lib/take-app-snapshot.js +93 -0
- package/src/lib/take-app-snapshot.js.map +1 -0
- package/src/lib/template-trace.d.ts +37 -0
- package/src/lib/template-trace.d.ts.map +1 -0
- package/src/lib/template-trace.js +37 -0
- package/src/lib/template-trace.js.map +1 -0
- package/src/lib/temporal-runtime.d.ts +146 -0
- package/src/lib/temporal-runtime.d.ts.map +1 -0
- package/src/lib/temporal-runtime.js +375 -0
- package/src/lib/temporal-runtime.js.map +1 -0
- package/src/lib/to-source.d.ts +335 -0
- package/src/lib/to-source.d.ts.map +1 -0
- package/src/lib/to-source.js +359 -0
- package/src/lib/to-source.js.map +1 -0
- package/src/lib/util/craft-resource-ref.d.ts +29 -0
- package/src/lib/util/craft-resource-ref.d.ts.map +1 -0
- package/src/lib/util/craft-resource-ref.js +1 -0
- package/src/lib/util/craft-resource-ref.js.map +1 -0
- package/src/lib/util/craft-resource-status.d.ts +17 -0
- package/src/lib/util/craft-resource-status.d.ts.map +1 -0
- package/src/lib/util/craft-resource-status.js +14 -0
- package/src/lib/util/craft-resource-status.js.map +1 -0
- package/src/lib/util/entities-util.d.ts +340 -0
- package/src/lib/util/entities-util.d.ts.map +1 -0
- package/src/lib/util/entities-util.js +136 -0
- package/src/lib/util/entities-util.js.map +1 -0
- package/src/lib/util/explicit-effect.d.ts +42 -0
- package/src/lib/util/explicit-effect.d.ts.map +1 -0
- package/src/lib/util/explicit-effect.js +37 -0
- package/src/lib/util/explicit-effect.js.map +1 -0
- package/src/lib/util/extract-signal-props-and-methods.d.ts +20 -0
- package/src/lib/util/extract-signal-props-and-methods.d.ts.map +1 -0
- package/src/lib/util/extract-signal-props-and-methods.js +1 -0
- package/src/lib/util/extract-signal-props-and-methods.js.map +1 -0
- package/src/lib/util/method-trigger-nonce.d.ts +45 -0
- package/src/lib/util/method-trigger-nonce.d.ts.map +1 -0
- package/src/lib/util/method-trigger-nonce.js +58 -0
- package/src/lib/util/method-trigger-nonce.js.map +1 -0
- package/src/lib/util/persister.type.d.ts +37 -0
- package/src/lib/util/persister.type.d.ts.map +1 -0
- package/src/lib/util/persister.type.js +1 -0
- package/src/lib/util/persister.type.js.map +1 -0
- package/src/lib/util/persister.util.d.ts +8 -0
- package/src/lib/util/persister.util.d.ts.map +1 -0
- package/src/lib/util/persister.util.js +71 -0
- package/src/lib/util/persister.util.js.map +1 -0
- package/src/lib/util/react-on-mutation-effect.d.ts +16 -0
- package/src/lib/util/react-on-mutation-effect.d.ts.map +1 -0
- package/src/lib/util/react-on-mutation-effect.js +148 -0
- package/src/lib/util/react-on-mutation-effect.js.map +1 -0
- package/src/lib/util/resource-by-id-changes-tracker.util.d.ts +27 -0
- package/src/lib/util/resource-by-id-changes-tracker.util.d.ts.map +1 -0
- package/src/lib/util/resource-by-id-changes-tracker.util.js +97 -0
- package/src/lib/util/resource-by-id-changes-tracker.util.js.map +1 -0
- package/src/lib/util/source.type.d.ts +6 -0
- package/src/lib/util/source.type.d.ts.map +1 -0
- package/src/lib/util/source.type.js +1 -0
- package/src/lib/util/source.type.js.map +1 -0
- package/src/lib/util/types/access-type-object-property-by-dotted-path.type.d.ts +4 -0
- package/src/lib/util/types/access-type-object-property-by-dotted-path.type.d.ts.map +1 -0
- package/src/lib/util/types/access-type-object-property-by-dotted-path.type.js +1 -0
- package/src/lib/util/types/access-type-object-property-by-dotted-path.type.js.map +1 -0
- package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.d.ts +27 -0
- package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.d.ts.map +1 -0
- package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.js +1 -0
- package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.js.map +1 -0
- package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.d.ts +24 -0
- package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.d.ts.map +1 -0
- package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.js +1 -0
- package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.js.map +1 -0
- package/src/lib/util/types/brand.d.ts +7 -0
- package/src/lib/util/types/brand.d.ts.map +1 -0
- package/src/lib/util/types/brand.js +9 -0
- package/src/lib/util/types/brand.js.map +1 -0
- package/src/lib/util/types/object-deep-path-mapper.type.d.ts +13 -0
- package/src/lib/util/types/object-deep-path-mapper.type.d.ts.map +1 -0
- package/src/lib/util/types/object-deep-path-mapper.type.js +1 -0
- package/src/lib/util/types/object-deep-path-mapper.type.js.map +1 -0
- package/src/lib/util/types/resource-by-id-config.type.d.ts +115 -0
- package/src/lib/util/types/resource-by-id-config.type.d.ts.map +1 -0
- package/src/lib/util/types/resource-by-id-config.type.js +1 -0
- package/src/lib/util/types/resource-by-id-config.type.js.map +1 -0
- package/src/lib/util/types/resource-with-params-or-params-fn.type.d.ts +52 -0
- package/src/lib/util/types/resource-with-params-or-params-fn.type.d.ts.map +1 -0
- package/src/lib/util/types/resource-with-params-or-params-fn.type.js +1 -0
- package/src/lib/util/types/resource-with-params-or-params-fn.type.js.map +1 -0
- package/src/lib/util/types/shared.type.d.ts +66 -0
- package/src/lib/util/types/shared.type.d.ts.map +1 -0
- package/src/lib/util/types/shared.type.js +1 -0
- package/src/lib/util/types/shared.type.js.map +1 -0
- package/src/lib/util/types/util.d.ts +16 -0
- package/src/lib/util/types/util.d.ts.map +1 -0
- package/src/lib/util/types/util.js +60 -0
- package/src/lib/util/types/util.js.map +1 -0
- package/src/lib/util/types/util.type.d.ts +67 -0
- package/src/lib/util/types/util.type.d.ts.map +1 -0
- package/src/lib/util/types/util.type.js +5 -0
- package/src/lib/util/types/util.type.js.map +1 -0
- package/src/lib/util/update-state.util.d.ts +10 -0
- package/src/lib/util/update-state.util.d.ts.map +1 -0
- package/src/lib/util/update-state.util.js +31 -0
- package/src/lib/util/update-state.util.js.map +1 -0
- package/src/lib/util/util.d.ts +19 -0
- package/src/lib/util/util.d.ts.map +1 -0
- package/src/lib/util/util.js +50 -0
- package/src/lib/util/util.js.map +1 -0
- package/src/lib/util/util.type.d.ts +107 -0
- package/src/lib/util/util.type.d.ts.map +1 -0
- package/src/lib/util/util.type.js +9 -0
- package/src/lib/util/util.type.js.map +1 -0
- package/src/lib/yieldable.d.ts +94 -0
- package/src/lib/yieldable.d.ts.map +1 -0
- package/src/lib/yieldable.js +109 -0
- package/src/lib/yieldable.js.map +1 -0
|
@@ -0,0 +1,755 @@
|
|
|
1
|
+
import { type Signal } from './host/craft-compat';
|
|
2
|
+
import { type Observable } from 'rxjs';
|
|
3
|
+
import type { ActivatedRouteSnapshot, Data, GuardResult, PartialMatchRouteSnapshot, Route, RouterStateSnapshot, UrlSegment } from './host/craft-router-types';
|
|
4
|
+
import type { CRAFT_COMPONENT_DEPS, ComponentExceptionsCarrier, ComponentDepsOf, ExtractDeps } from './branded-component/branded-component';
|
|
5
|
+
import { type AnyCraftException } from './craft-exception';
|
|
6
|
+
import type { CraftHttpRequest } from './craft-http-client';
|
|
7
|
+
import type { ViewTransitionPayloadDef } from './craft-view-transition';
|
|
8
|
+
import type { CraftExceptionComponentInput, CraftPendingComponentInput, CraftExceptionHandler, RouteExceptionUnion } from './craft-route-exceptions';
|
|
9
|
+
import type { SERVICE_HELPER_DEPENDENCIES, BrandedServiceProvider, NamedBrandedServiceProvider, CraftServiceApi, GetServiceDependencies, ServiceDependencyMapFromYielded, ServiceTrackingMetadata, ServiceYieldRequest } from './craft-service';
|
|
10
|
+
import { CRAFT_SERVICE_PROVIDER_BRAND, type MergeObjectUnion, type Simplify } from './craft-service.shared';
|
|
11
|
+
import { type CraftRouteLazyLoadHelpers } from './craft-route-load-error';
|
|
12
|
+
import type { CraftCompiledRoute } from './host/craft-router-runtime';
|
|
13
|
+
import { type CraftUrlTree } from './craft-router-tokens';
|
|
14
|
+
import { type CraftSsrPolicy } from './craft-ssr';
|
|
15
|
+
type MaybeAsync<T> = T | Promise<T> | Observable<T>;
|
|
16
|
+
type AngularRouteBase = Omit<Route, 'canActivate' | 'canMatch' | 'children' | 'component' | 'data' | 'loadChildren' | 'loadComponent' | 'path' | 'providers' | 'redirectTo'>;
|
|
17
|
+
type AngularRouteProviders = NonNullable<Route['providers']>;
|
|
18
|
+
type AngularRouteComponent = NonNullable<Route['component']>;
|
|
19
|
+
type AngularLoadComponent = NonNullable<Route['loadComponent']>;
|
|
20
|
+
type CraftLoadComponent = (helpers: CraftRouteLazyLoadHelpers) => ReturnType<AngularLoadComponent>;
|
|
21
|
+
type ComponentDepsMap<RouteDefinition> = RouteDefinition extends {
|
|
22
|
+
componentDeps: infer ComponentDeps extends object;
|
|
23
|
+
} ? ComponentDeps : typeof CRAFT_COMPONENT_DEPS extends keyof RouteDefinition ? ComponentDepsOf<RouteDefinition> : RouteDefinition extends {
|
|
24
|
+
component: infer Component;
|
|
25
|
+
} ? typeof CRAFT_COMPONENT_DEPS extends keyof Component ? ComponentDepsOf<Component> : {} : {};
|
|
26
|
+
type DepsMap<ComponentDeps> = ComponentDeps extends {
|
|
27
|
+
deps: infer Deps extends object;
|
|
28
|
+
} ? Deps : {};
|
|
29
|
+
type PropertiesDepsMap<ComponentDeps> = ComponentDeps extends {
|
|
30
|
+
propertiesDeps: infer PropertiesDeps extends object;
|
|
31
|
+
} ? PropertiesDeps : {};
|
|
32
|
+
type MissingProviderMap<ComponentDeps> = ComponentDeps extends {
|
|
33
|
+
missingProvider: infer MissingProvider extends object;
|
|
34
|
+
} ? MissingProvider : {};
|
|
35
|
+
type PublicPropertiesMap<ComponentDeps> = ComponentDeps extends {
|
|
36
|
+
publicProperties: infer PublicProperties extends object;
|
|
37
|
+
} ? PublicProperties : {};
|
|
38
|
+
type PublicPropertyValue<Property> = Property extends (...args: any[]) => infer Value ? Value : Property;
|
|
39
|
+
type RemoveOptionalMarker<Value extends string> = Value extends `${infer Name}?` ? Name : Value;
|
|
40
|
+
type SegmentParamName<Segment extends string> = Segment extends `:${infer Param}` ? RemoveOptionalMarker<Param> : never;
|
|
41
|
+
type PathParamNames<Path extends string> = Path extends `${infer Segment}/${infer Rest}` ? SegmentParamName<Segment> | PathParamNames<Rest> : SegmentParamName<Path>;
|
|
42
|
+
type RouteParamMap<Path extends string> = Simplify<{
|
|
43
|
+
[Key in PathParamNames<Path>]: string;
|
|
44
|
+
}>;
|
|
45
|
+
type PascalWord<Value extends string> = Value extends Uppercase<Value> ? Capitalize<Lowercase<Value>> : Capitalize<Value>;
|
|
46
|
+
type PascalCaseToken<Value extends string> = Value extends `${infer Head}-${infer Tail}` ? `${PascalWord<Head>}${PascalCaseToken<Tail>}` : Value extends `${infer Head}_${infer Tail}` ? `${PascalWord<Head>}${PascalCaseToken<Tail>}` : PascalWord<Value>;
|
|
47
|
+
type SegmentServiceName<Segment extends string> = Segment extends '' ? '' : Segment extends '**' ? 'Wildcard' : Segment extends `:${infer Param}` ? PascalCaseToken<RemoveOptionalMarker<Param>> : PascalCaseToken<Segment>;
|
|
48
|
+
type PathServiceName<Path extends string> = Path extends `${infer Segment}/${infer Rest}` ? `${SegmentServiceName<Segment>}${PathServiceName<Rest>}` : SegmentServiceName<Path>;
|
|
49
|
+
type RouteBaseServiceName<Path extends string> = PathServiceName<Path> extends '' ? 'Root' : PathServiceName<Path>;
|
|
50
|
+
type ParamServiceName<ParamName extends string> = PascalCaseToken<ParamName>;
|
|
51
|
+
type RouteCollectionServiceName<Name extends string> = PascalCaseToken<Name>;
|
|
52
|
+
type RouteParamServiceName<Name extends string, ParamName extends string> = `${RouteCollectionServiceName<Name>}${ParamServiceName<ParamName>}Params`;
|
|
53
|
+
type RouteCollectionDataServiceName<Name extends string, Path extends string> = `${RouteCollectionServiceName<Name>}${RouteDataServiceName<Path>}`;
|
|
54
|
+
type RouteQueryParamsServiceName<Path extends string> = `${RouteBaseServiceName<Path>}QueryParams`;
|
|
55
|
+
type RouteCollectionQueryParamsServiceName<Name extends string, Path extends string> = `${RouteCollectionServiceName<Name>}${RouteQueryParamsServiceName<Path>}`;
|
|
56
|
+
type RouteGuardedDataServiceName<Path extends string> = `${RouteBaseServiceName<Path>}GuardedData`;
|
|
57
|
+
type RouteCollectionGuardedDataServiceName<Name extends string, Path extends string> = `${RouteCollectionServiceName<Name>}${RouteGuardedDataServiceName<Path>}`;
|
|
58
|
+
type RouteResolvedDataServiceName<Path extends string> = `${RouteBaseServiceName<Path>}ResolvedData`;
|
|
59
|
+
type RouteCollectionResolvedDataServiceName<Name extends string, Path extends string> = `${RouteCollectionServiceName<Name>}${RouteResolvedDataServiceName<Path>}`;
|
|
60
|
+
type RouteResolvedDataInjectHelperName<Name extends string, Path extends string> = InjectHelperName<RouteCollectionResolvedDataServiceName<Name, Path>>;
|
|
61
|
+
type ExceptionCodeOf<RouteDefinition> = RouteDefinition extends {
|
|
62
|
+
handleExceptions: infer Handlers;
|
|
63
|
+
} ? Extract<keyof Handlers, string> : never;
|
|
64
|
+
type RouteExceptionServiceName<Path extends string, Code extends string> = `${RouteBaseServiceName<Path>}${PascalCaseToken<Code>}Exception`;
|
|
65
|
+
type RouteCollectionExceptionServiceName<Name extends string, Path extends string, Code extends string> = `${RouteCollectionServiceName<Name>}${RouteExceptionServiceName<Path, Code>}`;
|
|
66
|
+
type RouteExceptionInjectHelperName<Name extends string, Path extends string, Code extends string> = InjectHelperName<RouteCollectionExceptionServiceName<Name, Path, Code>>;
|
|
67
|
+
type RouteCollectionExportName<Name extends string> = Uncapitalize<RouteCollectionServiceName<Name>>;
|
|
68
|
+
type RoutesExportKey<Name extends string> = `${RouteCollectionExportName<Name>}Routes`;
|
|
69
|
+
type RouteParamInjectHelperName<Name extends string, ParamName extends string> = InjectHelperName<RouteParamServiceName<Name, ParamName>>;
|
|
70
|
+
type RouteQueryParamsInjectHelperName<Name extends string, Path extends string> = InjectHelperName<RouteCollectionQueryParamsServiceName<Name, Path>>;
|
|
71
|
+
type RouteViewTransitionServiceName<Path extends string> = `${RouteBaseServiceName<Path>}ViewTransition`;
|
|
72
|
+
type RouteCollectionViewTransitionServiceName<Name extends string, Path extends string> = `${RouteCollectionServiceName<Name>}${RouteViewTransitionServiceName<Path>}`;
|
|
73
|
+
type RouteViewTransitionInjectHelperName<Name extends string, Path extends string> = InjectHelperName<RouteCollectionViewTransitionServiceName<Name, Path>>;
|
|
74
|
+
type InjectHelperName<Name extends string> = `inject${Capitalize<Name>}`;
|
|
75
|
+
type ProvideHelperName<Name extends string> = `provide${Capitalize<Name>}`;
|
|
76
|
+
type ResolveGeneratorResult<Result> = Result extends Generator<any, infer Output, unknown> ? Output : Result;
|
|
77
|
+
type RouteQueryParamsFactory<Output = unknown, Yielded = never> = () => Output | Generator<Yielded, Output, unknown>;
|
|
78
|
+
type RouteRedirectToResult = string | CraftUrlTree;
|
|
79
|
+
type RouteRedirectToFactory<Yielded = never> = (redirectData: PartialMatchRouteSnapshot) => MaybeAsync<RouteRedirectToResult> | Generator<Yielded, RouteRedirectToResult, unknown>;
|
|
80
|
+
type RouteParamsProvider<Path extends string> = (params: Signal<RouteParamMap<Path>>) => Partial<Record<PathParamNames<Path>, unknown>>;
|
|
81
|
+
type ParamsProviderOutput<RouteDefinition> = RouteDefinition extends {
|
|
82
|
+
paramsProvider: (...args: any[]) => infer Output extends object;
|
|
83
|
+
} ? Output : {};
|
|
84
|
+
type ParamOutputForRoute<RouteDefinition, ParamName extends string> = ParamName extends PathParamNames<RoutePath<RouteDefinition>> ? ParamName extends keyof ParamsProviderOutput<RouteDefinition> ? ParamsProviderOutput<RouteDefinition>[ParamName] : Signal<RouteParamMap<RoutePath<RouteDefinition>>[ParamName]> : never;
|
|
85
|
+
type ParamOutputForRoutes<Routes extends readonly AnyCraftRouteHelperDefinition[], ParamName extends string> = Routes[number] extends infer RouteDefinition ? ParamOutputForRoute<RouteDefinition, ParamName> : never;
|
|
86
|
+
type RouteDataServiceName<Path extends string> = `${RouteBaseServiceName<Path>}Data`;
|
|
87
|
+
type RouteDataOutput<RouteDefinition> = RouteDefinition extends {
|
|
88
|
+
data: infer RouteData extends Data;
|
|
89
|
+
} ? Signal<RouteData> : never;
|
|
90
|
+
type RouteQueryParamsOutput<RouteDefinition> = RouteDefinition extends {
|
|
91
|
+
queryParams: (...args: any[]) => infer Result;
|
|
92
|
+
} ? ResolveGeneratorResult<Result> : never;
|
|
93
|
+
type UnwrapCanActivateReturn<T> = T extends Generator<any, infer Output, any> ? UnwrapCanActivateReturn<Output> : T extends Promise<infer Inner> ? UnwrapCanActivateReturn<Inner> : T extends Observable<infer Inner> ? UnwrapCanActivateReturn<Inner> : T extends Signal<infer Inner> ? UnwrapCanActivateReturn<Inner> : T;
|
|
94
|
+
type ExtractCanActivateGuardData<Guard> = Guard extends (...args: any[]) => infer Result ? Exclude<UnwrapCanActivateReturn<Result>, GuardResult | AnyCraftException | undefined | null> : never;
|
|
95
|
+
type RouteGuardedDataOutput<RouteDefinition> = RouteDefinition extends {
|
|
96
|
+
canActivate?: infer Guard;
|
|
97
|
+
} ? [Guard] extends [undefined] ? never : [ExtractCanActivateGuardData<Guard>] extends [never] ? never : Signal<ExtractCanActivateGuardData<Guard>> : never;
|
|
98
|
+
type ExtractResolveData<Resolve> = Resolve extends (...args: any[]) => infer Result ? Exclude<UnwrapCanActivateReturn<Result>, GuardResult | AnyCraftException | undefined | null> : never;
|
|
99
|
+
type RouteResolvedDataOutput<RouteDefinition> = RouteDefinition extends {
|
|
100
|
+
resolve?: infer Resolve;
|
|
101
|
+
} ? [Resolve] extends [undefined] ? never : [ExtractResolveData<Resolve>] extends [never] ? never : Signal<ExtractResolveData<Resolve>> : never;
|
|
102
|
+
type RouteExceptionOutput<RouteDefinition, Code extends string> = Signal<Extract<Extract<RouteExceptionUnion<RouteDefinition>, AnyCraftException>, {
|
|
103
|
+
_tag: Code;
|
|
104
|
+
}>>;
|
|
105
|
+
type RouteQueryParamsStateConfig<RouteDefinition> = RouteQueryParamsOutput<RouteDefinition> extends {
|
|
106
|
+
_config: {
|
|
107
|
+
state: infer QueryParamsStateConfig extends object;
|
|
108
|
+
};
|
|
109
|
+
} ? QueryParamsStateConfig : RouteQueryParamsOutput<RouteDefinition> extends {
|
|
110
|
+
_config: infer QueryParamsStateConfig extends object;
|
|
111
|
+
} ? QueryParamsStateConfig : {};
|
|
112
|
+
type RouteQueryParamsMetaData<RouteDefinition> = Simplify<{
|
|
113
|
+
[Key in Extract<keyof RouteQueryParamsStateConfig<RouteDefinition>, string>]: string;
|
|
114
|
+
}>;
|
|
115
|
+
type RouteQueryParamsMetaDataField<RouteDefinition> = RouteDefinition extends {
|
|
116
|
+
queryParams: RouteQueryParamsFactory;
|
|
117
|
+
} ? {
|
|
118
|
+
queryParams: RouteQueryParamsMetaData<RouteDefinition>;
|
|
119
|
+
} : {};
|
|
120
|
+
type RouteViewTransitionOutput<RouteDefinition> = RouteDefinition extends {
|
|
121
|
+
withLoaderViewTransitionImage: ViewTransitionPayloadDef<infer T>;
|
|
122
|
+
} ? Signal<T | null> : never;
|
|
123
|
+
type RouteViewTransitionMetaDataField<RouteDefinition> = RouteDefinition extends {
|
|
124
|
+
withLoaderViewTransitionImage: infer ViewTransition extends object;
|
|
125
|
+
} ? {
|
|
126
|
+
viewTransition: ViewTransition;
|
|
127
|
+
} : {};
|
|
128
|
+
type RouteParamPublicPropertyValues<Path extends string> = Simplify<{
|
|
129
|
+
[Key in PathParamNames<Path>]: string;
|
|
130
|
+
}>;
|
|
131
|
+
type RoutePath<RouteDefinition> = RouteDefinition extends {
|
|
132
|
+
path: infer Path extends string;
|
|
133
|
+
} ? Path : never;
|
|
134
|
+
type JoinRoutePaths<ParentPath extends string, ChildPath extends string> = ParentPath extends '' ? ChildPath : ChildPath extends '' ? ParentPath : `${ParentPath}/${ChildPath}`;
|
|
135
|
+
type MergeRoutePublicPropertyValues<ParentPublicProperties extends object, CurrentPublicProperties extends object> = Simplify<Omit<ParentPublicProperties, keyof CurrentPublicProperties> & CurrentPublicProperties>;
|
|
136
|
+
type MergeRouteMissingProviderValues<ParentMissingProviders extends object, CurrentMissingProviders extends object> = Simplify<Omit<ParentMissingProviders, keyof CurrentMissingProviders> & CurrentMissingProviders>;
|
|
137
|
+
type MergeRouteHttpDepValues<ParentHttpDeps extends object, CurrentHttpDeps extends object> = Simplify<Omit<ParentHttpDeps, keyof CurrentHttpDeps> & CurrentHttpDeps>;
|
|
138
|
+
type AnyTrackedCraftHttpRequest = CraftHttpRequest<string, string, unknown, unknown, unknown, any>;
|
|
139
|
+
type HttpRequestKey<Request> = Request extends {
|
|
140
|
+
method: infer Method extends string;
|
|
141
|
+
url: infer Url extends string;
|
|
142
|
+
} ? `${Method} ${Url}` : never;
|
|
143
|
+
type HttpRequestsFromDerivedProperties<Properties> = Properties extends object ? {
|
|
144
|
+
[Key in Extract<keyof Properties, string>]: Properties[Key] extends AnyTrackedCraftHttpRequest ? Properties[Key] : never;
|
|
145
|
+
}[Extract<keyof Properties, string>] : never;
|
|
146
|
+
type HttpRequestsFromDependencyValue<Value> = Value extends {
|
|
147
|
+
providedIn: unknown;
|
|
148
|
+
dependencies: infer Dependencies extends object;
|
|
149
|
+
} ? HttpRequestsFromDerivedProperties<Value extends {
|
|
150
|
+
derivedPropertiesUsed: infer Used extends object;
|
|
151
|
+
} ? Used : {}> | HttpRequestsFromDerivedProperties<Value extends {
|
|
152
|
+
derivedPropertiesExposed: infer Exposed extends object;
|
|
153
|
+
} ? Exposed : {}> | HttpRequestsFromDepsMap<Dependencies> : Value extends {
|
|
154
|
+
deps: object;
|
|
155
|
+
} | {
|
|
156
|
+
propertiesDeps: object;
|
|
157
|
+
} ? HttpRequestsFromComponentDeps<Value> : never;
|
|
158
|
+
type HttpRequestsFromDepsMap<Deps extends object> = {
|
|
159
|
+
[Key in Extract<keyof Deps, string>]: HttpRequestsFromDependencyValue<Deps[Key]>;
|
|
160
|
+
}[Extract<keyof Deps, string>];
|
|
161
|
+
type HttpRequestsFromPropertiesDepsMap<PropertiesDeps extends object> = {
|
|
162
|
+
[Key in Extract<keyof PropertiesDeps, string>]: PropertiesDeps[Key] extends object ? HttpRequestsFromDepsMap<PropertiesDeps[Key]> : never;
|
|
163
|
+
}[Extract<keyof PropertiesDeps, string>];
|
|
164
|
+
type HttpRequestsFromComponentDeps<ComponentDeps> = HttpRequestsFromDepsMap<DepsMap<ComponentDeps>> | HttpRequestsFromPropertiesDepsMap<PropertiesDepsMap<ComponentDeps>>;
|
|
165
|
+
type HttpDepsMapFromRequests<Requests> = [Requests] extends [never] ? {} : Simplify<MergeObjectUnion<Requests extends AnyTrackedCraftHttpRequest ? {
|
|
166
|
+
[Key in HttpRequestKey<Requests>]: Requests;
|
|
167
|
+
} : never>>;
|
|
168
|
+
type RouteProvidedPublicPropertyValues<RouteDefinition> = Simplify<RouteParamPublicPropertyValues<RoutePath<RouteDefinition>> & (RouteDefinition extends {
|
|
169
|
+
data: infer RouteData extends Data;
|
|
170
|
+
} ? RouteData : {})>;
|
|
171
|
+
type RouteProvidedPublicPropertyValuesWithInherited<RouteDefinition, InheritedPublicProperties extends object> = MergeRoutePublicPropertyValues<InheritedPublicProperties, RouteProvidedPublicPropertyValues<RouteDefinition>>;
|
|
172
|
+
type RouteSatisfiedPublicPropertyNames<RouteDefinition, InheritedPublicProperties extends object = {}> = {
|
|
173
|
+
[Key in Extract<keyof PublicPropertiesMap<ComponentDepsMap<RouteDefinition>>, string>]: Key extends keyof RouteProvidedPublicPropertyValuesWithInherited<RouteDefinition, InheritedPublicProperties> ? RouteProvidedPublicPropertyValuesWithInherited<RouteDefinition, InheritedPublicProperties>[Key] extends PublicPropertyValue<PublicPropertiesMap<ComponentDepsMap<RouteDefinition>>[Key]> ? Key : never : never;
|
|
174
|
+
}[Extract<keyof PublicPropertiesMap<ComponentDepsMap<RouteDefinition>>, string>];
|
|
175
|
+
type UnmatchedRoutePublicProperties<RouteDefinition, InheritedPublicProperties extends object = {}> = Simplify<Omit<PublicPropertiesMap<ComponentDepsMap<RouteDefinition>>, RouteSatisfiedPublicPropertyNames<RouteDefinition, InheritedPublicProperties>>>;
|
|
176
|
+
type RemainingRoutePublicProperties<RouteDefinition, InheritedPublicProperties extends object = {}> = UnmatchedRoutePublicProperties<RouteDefinition, InheritedPublicProperties>;
|
|
177
|
+
type RoutePublicPropertyErrorMessage<InputName extends string> = `The input ${InputName} is not matching any route param or data property`;
|
|
178
|
+
type MapRoutePublicPropertiesToErrors<RouteDefinition, InheritedPublicProperties extends object = {}> = [
|
|
179
|
+
keyof UnmatchedRoutePublicProperties<RouteDefinition, InheritedPublicProperties>
|
|
180
|
+
] extends [never] ? {} : {
|
|
181
|
+
[Path in RoutePath<RouteDefinition>]: {
|
|
182
|
+
[InputName in Extract<keyof UnmatchedRoutePublicProperties<RouteDefinition, InheritedPublicProperties>, string>]: RoutePublicPropertyErrorMessage<InputName>;
|
|
183
|
+
};
|
|
184
|
+
};
|
|
185
|
+
type RouteProvidedServiceNamesFromEntry<Entry> = Entry extends readonly unknown[] ? RouteProvidedServiceNames<Entry> : typeof CRAFT_SERVICE_PROVIDER_BRAND extends keyof Entry ? Entry extends BrandedServiceProvider<infer Name, any, any, any> ? Name : never : never;
|
|
186
|
+
type RouteProvidersArray<Providers> = Providers extends readonly unknown[] ? Providers : Providers extends (...args: any[]) => infer Result ? Result : never;
|
|
187
|
+
type RouteProvidedServiceNames<Providers> = RouteProvidersArray<Providers> extends infer Resolved ? Resolved extends readonly unknown[] ? RouteProvidedServiceNamesFromEntry<Resolved[number]> : never : never;
|
|
188
|
+
type RouteProvidersYielded<Providers> = RouteProvidersArray<Providers> extends readonly (infer Entry)[] ? typeof CRAFT_SERVICE_PROVIDER_BRAND extends keyof Entry ? Entry extends BrandedServiceProvider<any, any, any, infer Yielded> ? Yielded : never : never : never;
|
|
189
|
+
type RouteProvidersDepsMap<RouteDefinition> = RouteDefinition extends {
|
|
190
|
+
providersFn: infer Providers;
|
|
191
|
+
} ? ServiceDependencyMapFromYielded<RouteProvidersYielded<Providers>> : {};
|
|
192
|
+
type RouteParamServiceNames<Name extends string, Path extends string> = PathParamNames<Path> extends infer ParamName extends string ? RouteParamServiceName<Name, ParamName> : never;
|
|
193
|
+
type RouteAutoProvidedServiceNames<RouteDefinition, RouteCollectionName extends string> = RouteParamServiceNames<RouteCollectionName, RoutePath<RouteDefinition>> | (RouteDefinition extends {
|
|
194
|
+
data: Data;
|
|
195
|
+
} ? RouteCollectionDataServiceName<RouteCollectionName, RoutePath<RouteDefinition>> : never) | (RouteDefinition extends {
|
|
196
|
+
queryParams: RouteQueryParamsFactory;
|
|
197
|
+
} ? RouteCollectionQueryParamsServiceName<RouteCollectionName, RoutePath<RouteDefinition>> : never) | ([RouteGuardedDataOutput<RouteDefinition>] extends [never] ? never : RouteCollectionGuardedDataServiceName<RouteCollectionName, RoutePath<RouteDefinition>>) | (RouteDefinition extends {
|
|
198
|
+
resolve: CraftRouteResolve;
|
|
199
|
+
} ? RouteCollectionResolvedDataServiceName<RouteCollectionName, RoutePath<RouteDefinition>> : never) | (ExceptionCodeOf<RouteDefinition> extends infer Code extends string ? RouteCollectionExceptionServiceName<RouteCollectionName, RoutePath<RouteDefinition>, Code> : never);
|
|
200
|
+
type StripRouteProvidedDependency<Dependency, ProvidedNames extends string> = Dependency extends {
|
|
201
|
+
dependencies: infer Dependencies extends object;
|
|
202
|
+
} ? Simplify<Omit<Dependency, 'dependencies'> & {
|
|
203
|
+
dependencies: StripRouteProvidedDepsMap<Dependencies, ProvidedNames>;
|
|
204
|
+
}> : Dependency;
|
|
205
|
+
type StripRouteProvidedDepsMap<Deps extends object, ProvidedNames extends string> = Simplify<Omit<{
|
|
206
|
+
[Name in Extract<keyof Deps, string>]: StripRouteProvidedDependency<Deps[Name], ProvidedNames>;
|
|
207
|
+
}, ProvidedNames>>;
|
|
208
|
+
type CraftRouteCanActivateResult = GuardResult | object | Promise<GuardResult | object> | Observable<GuardResult | object | undefined> | Signal<GuardResult | object | undefined>;
|
|
209
|
+
type CraftRouteCanActivateGuard = (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) => CraftRouteCanActivateResult | Generator<unknown, CraftRouteCanActivateResult, unknown>;
|
|
210
|
+
type CraftRouteCanMatchGuard = (route: Route, segments: UrlSegment[], currentSnapshot?: PartialMatchRouteSnapshot) => GuardResult | Generator<unknown, GuardResult, unknown>;
|
|
211
|
+
type GuardOf<RouteDefinition, GuardName extends 'canActivate' | 'canMatch'> = RouteDefinition extends {
|
|
212
|
+
[Key in GuardName]?: infer Guard;
|
|
213
|
+
} ? Guard : never;
|
|
214
|
+
type GuardReturn<Guard> = Guard extends (...args: any[]) => infer Result ? Result : never;
|
|
215
|
+
type IsGeneratorReturn<Result> = [Result] extends [never] ? false : [Result] extends [Generator<any, any, any>] ? true : false;
|
|
216
|
+
type HasGeneratorGuard<RouteDefinition> = true extends IsGeneratorReturn<GuardReturn<GuardOf<RouteDefinition, 'canActivate'>>> | IsGeneratorReturn<GuardReturn<GuardOf<RouteDefinition, 'canMatch'>>> ? true : false;
|
|
217
|
+
type GuardServiceDependencies<Output, Yielded> = GetServiceDependencies<CraftServiceApi<'craftRouteGuard', 'function', {}, Output, ServiceTrackingMetadata<'craftRouteGuard', 'function', Output, Yielded>>['CraftRouteGuard']>;
|
|
218
|
+
type GuardDependenciesFromReturn<Result> = [Result] extends [never] ? {} : [Result] extends [Generator<infer Yielded, infer Output, any>] ? GuardServiceDependencies<Output, Yielded> extends {
|
|
219
|
+
dependencies: infer Dependencies extends object;
|
|
220
|
+
} ? Dependencies : {} : {};
|
|
221
|
+
type RouteGuardDepsMap<RouteDefinition> = Simplify<MergeObjectUnion<GuardDependenciesFromReturn<GuardReturn<GuardOf<RouteDefinition, 'canActivate'>>> | GuardDependenciesFromReturn<GuardReturn<GuardOf<RouteDefinition, 'canMatch'>>>>>;
|
|
222
|
+
type ExceptionHandlerYielded<Handler> = Handler extends (...args: any[]) => Generator<infer Yielded, any, unknown> ? Yielded : never;
|
|
223
|
+
/** Service dependencies yielded by a route's concrete exception handlers. */
|
|
224
|
+
export type RouteExceptionHandlerDepsMap<RouteDefinition> = RouteDefinition extends {
|
|
225
|
+
handleExceptions: infer Handlers extends object;
|
|
226
|
+
} ? ServiceDependencyMapFromYielded<{
|
|
227
|
+
[Code in keyof Handlers]: ExceptionHandlerYielded<Handlers[Code]>;
|
|
228
|
+
}[keyof Handlers]> : {};
|
|
229
|
+
type QueryParamsDependenciesFromOutput<Output> = Output extends object ? ExtractDeps<Output> : {};
|
|
230
|
+
type QueryParamsDependenciesFromReturn<Result> = [Result] extends [never] ? {} : Simplify<MergeObjectUnion<QueryParamsDependenciesFromOutput<ResolveGeneratorResult<Result>> | (Result extends Generator<infer Yielded, any, unknown> ? ServiceDependencyMapFromYielded<Yielded> : {})>>;
|
|
231
|
+
type RouteQueryParamsDepsMap<RouteDefinition> = RouteDefinition extends {
|
|
232
|
+
queryParams: (...args: any[]) => infer Result;
|
|
233
|
+
} ? QueryParamsDependenciesFromReturn<Result> : {};
|
|
234
|
+
type RedirectToDependenciesFromReturn<Result> = [Result] extends [never] ? {} : Result extends Generator<infer Yielded, any, unknown> ? ServiceDependencyMapFromYielded<Yielded> : {};
|
|
235
|
+
type RouteRedirectToDepsMap<RouteDefinition> = RouteDefinition extends {
|
|
236
|
+
redirectTo: (...args: any[]) => infer Result;
|
|
237
|
+
} ? RedirectToDependenciesFromReturn<Result> : {};
|
|
238
|
+
type RouteDepsMap<RouteDefinition> = Simplify<MergeObjectUnion<DepsMap<ComponentDepsMap<RouteDefinition>> | RouteGuardDepsMap<RouteDefinition> | RouteExceptionHandlerDepsMap<RouteDefinition> | RouteQueryParamsDepsMap<RouteDefinition> | RouteRedirectToDepsMap<RouteDefinition> | RouteProvidersDepsMap<RouteDefinition>>>;
|
|
239
|
+
type RouteSelfProvidedServiceNames<RouteDefinition, RouteCollectionName extends string> = RouteAutoProvidedServiceNames<RouteDefinition, RouteCollectionName> | RouteSelfProvidedBaseNames<RouteDefinition> | RouteProvidedServiceNames<RouteDefinition extends {
|
|
240
|
+
providers: infer Providers;
|
|
241
|
+
} ? Providers : never> | RouteProvidedServiceNames<RouteDefinition extends {
|
|
242
|
+
providersFn: infer Providers;
|
|
243
|
+
} ? Providers : never>;
|
|
244
|
+
type RouteResolvedDepsMap<RouteDefinition, RouteCollectionName extends string, InheritedServiceNames extends string = never> = Simplify<StripRouteProvidedDepsMap<RouteDepsMap<RouteDefinition>, InheritedServiceNames | RouteSelfProvidedServiceNames<RouteDefinition, RouteCollectionName>>>;
|
|
245
|
+
type RouteResolvedMissingProviderMap<RouteDefinition, RouteCollectionName extends string, InheritedServiceNames extends string = never> = Simplify<StripRouteProvidedDepsMap<MissingProviderMap<ComponentDepsMap<RouteDefinition>>, InheritedServiceNames | RouteSelfProvidedServiceNames<RouteDefinition, RouteCollectionName>>>;
|
|
246
|
+
type RouteHttpDepsMap<RouteDefinition> = HttpDepsMapFromRequests<HttpRequestsFromComponentDeps<ComponentDepsMap<RouteDefinition>> | HttpRequestsFromDepsMap<RouteGuardDepsMap<RouteDefinition>> | HttpRequestsFromDepsMap<RouteExceptionHandlerDepsMap<RouteDefinition>> | HttpRequestsFromDepsMap<RouteQueryParamsDepsMap<RouteDefinition>> | HttpRequestsFromDepsMap<RouteRedirectToDepsMap<RouteDefinition>>>;
|
|
247
|
+
type HasRedirectToGenerator<RouteDefinition> = RouteDefinition extends {
|
|
248
|
+
redirectTo: (...args: any[]) => infer Result;
|
|
249
|
+
} ? IsGeneratorReturn<Result> : false;
|
|
250
|
+
type ShouldExposeRouteDeps<RouteDefinition> = ComponentDepsMap<RouteDefinition> extends {
|
|
251
|
+
deps: object;
|
|
252
|
+
} ? true : RouteDefinition extends {
|
|
253
|
+
handleExceptions: object;
|
|
254
|
+
} ? true : HasGeneratorGuard<RouteDefinition> extends true ? true : RouteDefinition extends {
|
|
255
|
+
queryParams: RouteQueryParamsFactory;
|
|
256
|
+
} ? true : HasRedirectToGenerator<RouteDefinition> extends true ? true : false;
|
|
257
|
+
export type ResolveCraftRouteComponentDeps<RouteDefinition> = Simplify<Omit<ComponentDepsMap<RouteDefinition>, 'deps' | 'propertiesDeps' | 'missingProvider' | 'publicProperties'> & (ShouldExposeRouteDeps<RouteDefinition> extends true ? {
|
|
258
|
+
deps: RouteResolvedDepsMap<RouteDefinition, string>;
|
|
259
|
+
} : {}) & ([keyof RouteHttpDepsMap<RouteDefinition>] extends [never] ? {} : {
|
|
260
|
+
httpDeps: RouteHttpDepsMap<RouteDefinition>;
|
|
261
|
+
}) & ([keyof RemainingRoutePublicProperties<RouteDefinition>] extends [never] ? {} : {
|
|
262
|
+
publicProperties: RemainingRoutePublicProperties<RouteDefinition>;
|
|
263
|
+
})>;
|
|
264
|
+
type ResolveCraftRouteMetaDataMissingProvider<RouteDefinition, RouteCollectionName extends string, InheritedServiceNames extends string, InheritedMissingProviders extends object> = MergeRouteMissingProviderValues<InheritedMissingProviders, RouteResolvedMissingProviderMap<RouteDefinition, RouteCollectionName, InheritedServiceNames>>;
|
|
265
|
+
type ResolveCraftRouteMetaDataComponentDeps<RouteDefinition, RouteCollectionName extends string, InheritedServiceNames extends string = never, InheritedPublicProperties extends object = {}, InheritedMissingProviders extends object = {}, InheritedHttpDeps extends object = {}> = Simplify<Omit<ComponentDepsMap<RouteDefinition>, 'deps' | 'propertiesDeps' | 'missingProvider' | 'publicProperties'> & (ShouldExposeRouteDeps<RouteDefinition> extends true ? {
|
|
266
|
+
deps: RouteResolvedDepsMap<RouteDefinition, RouteCollectionName, InheritedServiceNames>;
|
|
267
|
+
} : {}) & ([
|
|
268
|
+
keyof ResolveCraftRouteMetaDataMissingProvider<RouteDefinition, RouteCollectionName, InheritedServiceNames, InheritedMissingProviders>
|
|
269
|
+
] extends [never] ? {} : {
|
|
270
|
+
missingProvider: ResolveCraftRouteMetaDataMissingProvider<RouteDefinition, RouteCollectionName, InheritedServiceNames, InheritedMissingProviders>;
|
|
271
|
+
}) & ([
|
|
272
|
+
keyof MergeRouteHttpDepValues<InheritedHttpDeps, RouteHttpDepsMap<RouteDefinition>>
|
|
273
|
+
] extends [never] ? {} : {
|
|
274
|
+
httpDeps: MergeRouteHttpDepValues<InheritedHttpDeps, RouteHttpDepsMap<RouteDefinition>>;
|
|
275
|
+
}) & (ComponentDepsMap<RouteDefinition> extends {
|
|
276
|
+
publicProperties: object;
|
|
277
|
+
} ? {
|
|
278
|
+
publicProperties: RemainingRoutePublicProperties<RouteDefinition, InheritedPublicProperties>;
|
|
279
|
+
} : {})>;
|
|
280
|
+
type CraftRouteMetaDataEntry<RouteDefinition, RouteCollectionName extends string, ResolvedPath extends string = RoutePath<RouteDefinition>, InheritedServiceNames extends string = never, InheritedPublicProperties extends object = {}, InheritedMissingProviders extends object = {}, InheritedHttpDeps extends object = {}> = Simplify<{
|
|
281
|
+
path: ResolvedPath;
|
|
282
|
+
} & RouteQueryParamsMetaDataField<RouteDefinition> & ResolveCraftRouteMetaDataComponentDeps<RouteDefinition, RouteCollectionName, InheritedServiceNames, InheritedPublicProperties, InheritedMissingProviders, InheritedHttpDeps>>;
|
|
283
|
+
type CraftRouteResolve = (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) => Generator<unknown, unknown, unknown>;
|
|
284
|
+
type CraftRouteHandleExceptions = Record<string, CraftExceptionHandler<any>>;
|
|
285
|
+
type CraftRouteUxFields = {
|
|
286
|
+
resolve?: CraftRouteResolve;
|
|
287
|
+
handleExceptions?: object;
|
|
288
|
+
pendingComponent?: CraftPendingComponentInput;
|
|
289
|
+
errorComponent?: CraftExceptionComponentInput;
|
|
290
|
+
stayMs?: number;
|
|
291
|
+
blankMs?: number;
|
|
292
|
+
pendingMinMs?: number;
|
|
293
|
+
reactiveGuards?: boolean;
|
|
294
|
+
/**
|
|
295
|
+
* Opt this route into the {@link CraftRouterOutletController}-driven view
|
|
296
|
+
* transition by
|
|
297
|
+
* declaring the shared-element payload shape via `viewTransitionPayload<T>()`.
|
|
298
|
+
* It makes a typed `viewTransition: T | null` payload REQUIRED on every
|
|
299
|
+
* `craftRouterLink` / `navigate` targeting this route (surfaced via the slim
|
|
300
|
+
* path registry), exposes a generated `injectXxxViewTransition(): Signal<T |
|
|
301
|
+
* null>` helper, and tells the outlet to skip the `'blank'` phase so a slow
|
|
302
|
+
* chain still morphs the shared element through the pending skeleton.
|
|
303
|
+
*/
|
|
304
|
+
withLoaderViewTransitionImage?: ViewTransitionPayloadDef<any>;
|
|
305
|
+
};
|
|
306
|
+
type CraftRouteRuntimeUxFields = CraftRouteUxFields & {
|
|
307
|
+
handleExceptions?: CraftRouteHandleExceptions;
|
|
308
|
+
};
|
|
309
|
+
type CraftRouteSharedFields<Path extends string = string, RouteData extends Data = Data, Providers extends AngularRouteProviders = AngularRouteProviders> = Simplify<AngularRouteBase & CraftRouteUxFields & {
|
|
310
|
+
canActivate?: CraftRouteCanActivateGuard;
|
|
311
|
+
canMatch?: CraftRouteCanMatchGuard;
|
|
312
|
+
path: Path;
|
|
313
|
+
providers?: Providers;
|
|
314
|
+
providersFn?: (helpers: any) => Providers;
|
|
315
|
+
data?: RouteData;
|
|
316
|
+
ssr?: CraftSsrPolicy;
|
|
317
|
+
queryParams?: RouteQueryParamsFactory;
|
|
318
|
+
redirectTo?: string | RouteRedirectToFactory<any>;
|
|
319
|
+
paramsProvider?: [PathParamNames<Path>] extends [never] ? never : RouteParamsProvider<Path>;
|
|
320
|
+
}>;
|
|
321
|
+
type AnyCraftRouteSharedFields = Simplify<AngularRouteBase & CraftRouteRuntimeUxFields & {
|
|
322
|
+
canActivate?: CraftRouteCanActivateGuard;
|
|
323
|
+
canMatch?: CraftRouteCanMatchGuard;
|
|
324
|
+
path: string;
|
|
325
|
+
providers?: AngularRouteProviders;
|
|
326
|
+
providersFn?: (helpers: any) => AngularRouteProviders;
|
|
327
|
+
data?: Data;
|
|
328
|
+
ssr?: CraftSsrPolicy;
|
|
329
|
+
queryParams?: RouteQueryParamsFactory;
|
|
330
|
+
redirectTo?: string | RouteRedirectToFactory<any>;
|
|
331
|
+
paramsProvider?: (params: Signal<Record<string, string>>) => Record<string, unknown>;
|
|
332
|
+
}>;
|
|
333
|
+
type AnyCraftRouteHelperDefinition = {
|
|
334
|
+
path: string;
|
|
335
|
+
data?: Data;
|
|
336
|
+
paramsProvider?: (...args: any[]) => Record<string, unknown>;
|
|
337
|
+
queryParams?: RouteQueryParamsFactory;
|
|
338
|
+
canActivate?: CraftRouteCanActivateGuard;
|
|
339
|
+
canMatch?: CraftRouteCanMatchGuard;
|
|
340
|
+
resolve?: CraftRouteResolve;
|
|
341
|
+
withLoaderViewTransitionImage?: ViewTransitionPayloadDef<any>;
|
|
342
|
+
ssr?: CraftSsrPolicy;
|
|
343
|
+
};
|
|
344
|
+
type CraftRouteDefinitionInput<Def extends object> = 'handleExceptions' extends keyof Def ? never : Def;
|
|
345
|
+
type CraftRouteLoaderHelperConstraint = {
|
|
346
|
+
loadComponent?: (helpers: CraftRouteLazyLoadHelpers) => unknown;
|
|
347
|
+
loadChildren?: (helpers: CraftRouteLazyLoadHelpers) => unknown;
|
|
348
|
+
};
|
|
349
|
+
type ExceptionCode<Exception> = Exception extends {
|
|
350
|
+
_tag: infer Code extends string;
|
|
351
|
+
} ? Code : never;
|
|
352
|
+
type ExceptionHandlerResults<Codes extends string> = Record<Codes, Generator<any, import('./craft-route-exceptions').CraftExceptionOutcome, unknown>>;
|
|
353
|
+
type TypedExceptionHandlers<Exception extends AnyCraftException, Codes extends ExceptionCode<Exception>, Results extends ExceptionHandlerResults<Codes>> = {
|
|
354
|
+
[Code in Codes]: CraftExceptionHandler<Extract<Exception, {
|
|
355
|
+
_tag: Code;
|
|
356
|
+
}>, Results[Code]>;
|
|
357
|
+
};
|
|
358
|
+
declare const MISSING_EXCEPTION_HANDLERS: unique symbol;
|
|
359
|
+
type MissingExceptionHandlers<Exception extends AnyCraftException, Codes extends string> = Exclude<ExceptionCode<Exception>, Codes> extends never ? unknown : {
|
|
360
|
+
readonly [MISSING_EXCEPTION_HANDLERS]: Exclude<ExceptionCode<Exception>, Codes>;
|
|
361
|
+
};
|
|
362
|
+
type RouteHelperShape<RouteDefinition> = RouteDefinition extends {
|
|
363
|
+
path: infer Path extends string;
|
|
364
|
+
} ? Simplify<{
|
|
365
|
+
path: Path;
|
|
366
|
+
} & (RouteDefinition extends {
|
|
367
|
+
paramsProvider: infer ParamsProvider extends (...args: any[]) => Record<string, unknown>;
|
|
368
|
+
} ? {
|
|
369
|
+
paramsProvider: ParamsProvider;
|
|
370
|
+
} : {}) & (RouteDefinition extends {
|
|
371
|
+
data: infer RouteData extends Data;
|
|
372
|
+
} ? {
|
|
373
|
+
data: RouteData;
|
|
374
|
+
} : {}) & (RouteDefinition extends {
|
|
375
|
+
queryParams: infer QueryParams extends RouteQueryParamsFactory;
|
|
376
|
+
} ? {
|
|
377
|
+
queryParams: QueryParams;
|
|
378
|
+
} : {}) & (RouteDefinition extends {
|
|
379
|
+
canActivate: infer Guard extends CraftRouteCanActivateGuard;
|
|
380
|
+
} ? {
|
|
381
|
+
canActivate: Guard;
|
|
382
|
+
} : {}) & (RouteDefinition extends {
|
|
383
|
+
resolve: infer Resolve extends CraftRouteResolve;
|
|
384
|
+
} ? {
|
|
385
|
+
resolve: Resolve;
|
|
386
|
+
} : {}) & (RouteDefinition extends {
|
|
387
|
+
handleExceptions: infer Handlers extends object;
|
|
388
|
+
} ? {
|
|
389
|
+
handleExceptions: Handlers;
|
|
390
|
+
} : {}) & (RouteDefinition extends {
|
|
391
|
+
withLoaderViewTransitionImage: infer ViewTransition extends ViewTransitionPayloadDef<any>;
|
|
392
|
+
} ? {
|
|
393
|
+
withLoaderViewTransitionImage: ViewTransition;
|
|
394
|
+
} : {})> : never;
|
|
395
|
+
type RoutesHelperShape<Routes extends readonly AnyCraftRouteDefinition[]> = {
|
|
396
|
+
[Index in keyof Routes]: RouteHelperShape<Routes[Index]>;
|
|
397
|
+
};
|
|
398
|
+
type CraftRouteComponentTarget = {
|
|
399
|
+
component: AngularRouteComponent;
|
|
400
|
+
loadComponent?: never;
|
|
401
|
+
} | {
|
|
402
|
+
component?: never;
|
|
403
|
+
loadComponent: CraftLoadComponent;
|
|
404
|
+
};
|
|
405
|
+
type CraftRouteLoadChildrenCallback<Routes extends readonly AnyCraftRouteDefinition[], Name extends string = string> = (helpers: CraftRouteLazyLoadHelpers) => CraftRoutesApp<Routes, Name> | Promise<CraftRoutesApp<Routes, Name>> | Route[] | Promise<Route[]>;
|
|
406
|
+
type CraftRouteOptionalLoadChildrenTarget<ChildRoutes extends readonly AnyCraftRouteDefinition[] = readonly AnyCraftRouteDefinition[]> = {
|
|
407
|
+
loadChildren?: never;
|
|
408
|
+
} | {
|
|
409
|
+
loadChildren: CraftRouteLoadChildrenCallback<ChildRoutes>;
|
|
410
|
+
};
|
|
411
|
+
export type CraftRouteDefinition<Path extends string = string, ComponentDeps = unknown, RouteData extends Data = Data, Providers extends AngularRouteProviders = AngularRouteProviders, ChildRoutes extends readonly AnyCraftRouteDefinition[] = readonly AnyCraftRouteDefinition[]> = Simplify<CraftRouteSharedFields<Path, RouteData, Providers> & CraftRouteComponentTarget & CraftRouteOptionalLoadChildrenTarget<ChildRoutes> & {
|
|
412
|
+
/** @deprecated Functional components carry this metadata themselves. */
|
|
413
|
+
componentDeps?: ComponentDeps;
|
|
414
|
+
}>;
|
|
415
|
+
export type CraftLazyRouteDefinition<Path extends string = string, ChildRoutes extends readonly AnyCraftRouteDefinition[] = readonly AnyCraftRouteDefinition[], RouteData extends Data = Data, Providers extends AngularRouteProviders = AngularRouteProviders> = Simplify<CraftRouteSharedFields<Path, RouteData, Providers> & {
|
|
416
|
+
component?: never;
|
|
417
|
+
componentDeps?: never;
|
|
418
|
+
loadChildren: CraftRouteLoadChildrenCallback<ChildRoutes>;
|
|
419
|
+
loadComponent?: never;
|
|
420
|
+
}>;
|
|
421
|
+
type AnyCraftComponentRouteDefinition = Simplify<AnyCraftRouteSharedFields & ComponentExceptionsCarrier<any> & CraftRouteComponentTarget & ({
|
|
422
|
+
loadChildren?: never;
|
|
423
|
+
} | {
|
|
424
|
+
loadChildren: (helpers: CraftRouteLazyLoadHelpers) => unknown;
|
|
425
|
+
}) & {
|
|
426
|
+
/** @deprecated Functional components carry this metadata themselves. */
|
|
427
|
+
componentDeps?: unknown;
|
|
428
|
+
}>;
|
|
429
|
+
type AnyCraftLazyRouteDefinition = Simplify<AnyCraftRouteSharedFields & {
|
|
430
|
+
component?: never;
|
|
431
|
+
componentDeps?: never;
|
|
432
|
+
loadChildren: (helpers: CraftRouteLazyLoadHelpers) => unknown;
|
|
433
|
+
loadComponent?: never;
|
|
434
|
+
}>;
|
|
435
|
+
type AnyCraftRedirectRouteDefinition = Simplify<AnyCraftRouteSharedFields & {
|
|
436
|
+
component?: never;
|
|
437
|
+
componentDeps?: never;
|
|
438
|
+
loadChildren?: never;
|
|
439
|
+
loadComponent?: never;
|
|
440
|
+
redirectTo: string | RouteRedirectToFactory<any>;
|
|
441
|
+
}>;
|
|
442
|
+
export type AnyCraftRouteDefinition = AnyCraftComponentRouteDefinition | AnyCraftLazyRouteDefinition | AnyCraftRedirectRouteDefinition;
|
|
443
|
+
type LoadChildrenRoutes<RouteDefinition> = RouteDefinition extends {
|
|
444
|
+
loadChildren: (...args: any[]) => infer Output;
|
|
445
|
+
} ? Awaited<Output> extends {
|
|
446
|
+
readonly _routes: infer Routes extends readonly AnyCraftRouteDefinition[];
|
|
447
|
+
} ? Routes : never : never;
|
|
448
|
+
type LoadChildrenRouteCollectionName<RouteDefinition> = RouteDefinition extends {
|
|
449
|
+
loadChildren: (...args: any[]) => infer Output;
|
|
450
|
+
} ? Awaited<Output> extends {
|
|
451
|
+
readonly name: infer Name extends string;
|
|
452
|
+
} ? Name : never : never;
|
|
453
|
+
/**
|
|
454
|
+
* The error surfaced when a `.withParent`-pinned child collection is mounted
|
|
455
|
+
* under the wrong route path. Rendered as a string-literal type so it reads
|
|
456
|
+
* cleanly in the assert failure.
|
|
457
|
+
*/
|
|
458
|
+
type CraftParentMountMismatch<Mount extends string, Path extends string> = `craftRoutes(...).withParent<ParentRoutes<'${Mount}'>>() must be loadChildren-mounted under the route with path '${Mount}', not '${Path}'`;
|
|
459
|
+
/**
|
|
460
|
+
* Per-route check, reading the **raw** `_routes` (not the flattened `META_DATA`,
|
|
461
|
+
* so it never descends into a child already validated in its own file): if a
|
|
462
|
+
* route's `loadChildren` yields a collection **pinned** (via `.withParent`) to a
|
|
463
|
+
* mount path different from this route's own `path`, surface a mismatch error.
|
|
464
|
+
* Unpinned children (`ParentMount` = `string`) and non-lazy routes → `never`.
|
|
465
|
+
*/
|
|
466
|
+
type ChildRouteMountError<RouteDefinition> = 'loadChildren' extends keyof RouteDefinition ? RouteDefinition extends {
|
|
467
|
+
loadChildren: (...args: any[]) => infer Output;
|
|
468
|
+
path: infer Path extends string;
|
|
469
|
+
} ? Awaited<Output> extends CraftRoutesApp<readonly AnyCraftRouteDefinition[], string, infer Mount> ? string extends Mount ? never : [Mount] extends [Path] ? never : CraftParentMountMismatch<Mount, Path> : never : never : never;
|
|
470
|
+
type CollectChildRouteMountErrors<Routes> = Routes extends readonly unknown[] ? {
|
|
471
|
+
[Index in keyof Routes]: ChildRouteMountError<Routes[Index]>;
|
|
472
|
+
}[number] : never;
|
|
473
|
+
/**
|
|
474
|
+
* `unknown` when every `.withParent`-pinned child is mounted under its declared
|
|
475
|
+
* path; otherwise the mismatch message(s). Used by {@link assertChildRouteMounts}.
|
|
476
|
+
*/
|
|
477
|
+
export type AssertChildRouteMounts<RoutesApp> = RoutesApp extends {
|
|
478
|
+
readonly _routes: infer Routes;
|
|
479
|
+
} ? [Exclude<CollectChildRouteMountErrors<Routes>, never>] extends [never] ? unknown : {
|
|
480
|
+
ERROR_child_collection_mounted_under_wrong_path: Exclude<CollectChildRouteMountErrors<Routes>, never>;
|
|
481
|
+
} : unknown;
|
|
482
|
+
/**
|
|
483
|
+
* Asserts (at compile time, in the **parent** collection's file) that every
|
|
484
|
+
* `loadChildren` route mounting a `.withParent`-pinned child uses the path the
|
|
485
|
+
* child declared. A wrong mount makes `routes` un-assignable. Scoped to the
|
|
486
|
+
* parent — child files pay nothing.
|
|
487
|
+
*
|
|
488
|
+
* ```ts
|
|
489
|
+
* export const { demoRoutes } = craftRoutes('demo', [
|
|
490
|
+
* { path: 'view-transitions', loadChildren: () => import('./vt').then((m) => m.viewTransitionsRoutes) },
|
|
491
|
+
* ]);
|
|
492
|
+
* assertChildRouteMounts(demoRoutes);
|
|
493
|
+
* ```
|
|
494
|
+
*/
|
|
495
|
+
export declare function assertChildRouteMounts<RoutesApp>(routes: RoutesApp & AssertChildRouteMounts<RoutesApp>): RoutesApp;
|
|
496
|
+
type RouteInheritedServiceNames<RouteDefinition, RouteCollectionName extends string, InheritedServiceNames extends string> = InheritedServiceNames | RouteSelfProvidedServiceNames<RouteDefinition, RouteCollectionName>;
|
|
497
|
+
type RouteInheritedPublicProperties<RouteDefinition, InheritedPublicProperties extends object> = MergeRoutePublicPropertyValues<InheritedPublicProperties, RouteProvidedPublicPropertyValues<RouteDefinition>>;
|
|
498
|
+
type RouteInheritedMissingProviders<RouteDefinition, RouteCollectionName extends string, InheritedServiceNames extends string, InheritedMissingProviders extends object> = MergeRouteMissingProviderValues<InheritedMissingProviders, RouteResolvedMissingProviderMap<RouteDefinition, RouteCollectionName, InheritedServiceNames>>;
|
|
499
|
+
type RouteInheritedHttpDeps<RouteDefinition, InheritedHttpDeps extends object> = MergeRouteHttpDepValues<InheritedHttpDeps, RouteHttpDepsMap<RouteDefinition>>;
|
|
500
|
+
/**
|
|
501
|
+
* A route collection plus the context inherited by its routes.
|
|
502
|
+
*
|
|
503
|
+
* META_DATA is flattened depth-first. Keeping pending collections in a queue
|
|
504
|
+
* makes that flattening tail-recursive, so a large app route tree does not
|
|
505
|
+
* exhaust TypeScript's instantiation depth while computing one entry's child
|
|
506
|
+
* metadata.
|
|
507
|
+
*/
|
|
508
|
+
type CraftRoutesMetaDataWorkItem = readonly [
|
|
509
|
+
readonly AnyCraftRouteDefinition[],
|
|
510
|
+
string,
|
|
511
|
+
string,
|
|
512
|
+
string,
|
|
513
|
+
object,
|
|
514
|
+
object,
|
|
515
|
+
object
|
|
516
|
+
];
|
|
517
|
+
type CraftRoutesMetaDataChildWorkItem<RouteDefinition extends AnyCraftRouteDefinition, Parent extends CraftRoutesMetaDataWorkItem> = [LoadChildrenRoutes<RouteDefinition>] extends [never] ? readonly [] : readonly [
|
|
518
|
+
[
|
|
519
|
+
LoadChildrenRoutes<RouteDefinition>,
|
|
520
|
+
LoadChildrenRouteCollectionName<RouteDefinition>,
|
|
521
|
+
JoinRoutePaths<Parent[2], RoutePath<RouteDefinition>>,
|
|
522
|
+
RouteInheritedServiceNames<RouteDefinition, Parent[1], Parent[3]>,
|
|
523
|
+
RouteInheritedPublicProperties<RouteDefinition, Parent[4]>,
|
|
524
|
+
RouteInheritedMissingProviders<RouteDefinition, Parent[1], Parent[3], Parent[5]>,
|
|
525
|
+
RouteInheritedHttpDeps<RouteDefinition, Parent[6]>
|
|
526
|
+
]
|
|
527
|
+
];
|
|
528
|
+
type CraftRoutesMetaDataFromQueue<Queue extends readonly CraftRoutesMetaDataWorkItem[], Acc extends readonly unknown[] = readonly []> = Queue extends readonly [
|
|
529
|
+
infer Head extends CraftRoutesMetaDataWorkItem,
|
|
530
|
+
...infer Tail extends readonly CraftRoutesMetaDataWorkItem[]
|
|
531
|
+
] ? number extends Head[0]['length'] ? CraftRoutesMetaDataFromQueue<Tail, readonly [
|
|
532
|
+
...Acc,
|
|
533
|
+
CraftRouteMetaDataEntry<Head[0][number], Head[1], string, Head[3], Head[4], Head[5], Head[6]>
|
|
534
|
+
]> : Head[0] extends readonly [
|
|
535
|
+
infer Route extends AnyCraftRouteDefinition,
|
|
536
|
+
...infer Rest extends readonly AnyCraftRouteDefinition[]
|
|
537
|
+
] ? CraftRoutesMetaDataFromQueue<readonly [
|
|
538
|
+
...CraftRoutesMetaDataChildWorkItem<Route, Head>,
|
|
539
|
+
[
|
|
540
|
+
Rest,
|
|
541
|
+
Head[1],
|
|
542
|
+
Head[2],
|
|
543
|
+
Head[3],
|
|
544
|
+
Head[4],
|
|
545
|
+
Head[5],
|
|
546
|
+
Head[6]
|
|
547
|
+
],
|
|
548
|
+
...Tail
|
|
549
|
+
], readonly [
|
|
550
|
+
...Acc,
|
|
551
|
+
CraftRouteMetaDataEntry<Route, Head[1], JoinRoutePaths<Head[2], RoutePath<Route>>, Head[3], Head[4], Head[5], Head[6]>
|
|
552
|
+
]> : CraftRoutesMetaDataFromQueue<Tail, Acc> : Acc;
|
|
553
|
+
type CraftRoutesMetaDataWithContext<Routes extends readonly AnyCraftRouteDefinition[], RouteCollectionName extends string, ParentPath extends string, InheritedServiceNames extends string, InheritedPublicProperties extends object, InheritedMissingProviders extends object, InheritedHttpDeps extends object> = CraftRoutesMetaDataFromQueue<[
|
|
554
|
+
[
|
|
555
|
+
Routes,
|
|
556
|
+
RouteCollectionName,
|
|
557
|
+
ParentPath,
|
|
558
|
+
InheritedServiceNames,
|
|
559
|
+
InheritedPublicProperties,
|
|
560
|
+
InheritedMissingProviders,
|
|
561
|
+
InheritedHttpDeps
|
|
562
|
+
]
|
|
563
|
+
]>;
|
|
564
|
+
export type CraftRoutesMetaData<Routes extends readonly AnyCraftRouteDefinition[], Name extends string = string> = CraftRoutesMetaDataWithContext<Routes, Name, '', never, {}, {}, {}>;
|
|
565
|
+
type StripHelperDependencies<Output> = Output extends {
|
|
566
|
+
readonly [SERVICE_HELPER_DEPENDENCIES]?: unknown;
|
|
567
|
+
} ? Output extends (...args: infer Args) => infer Result ? ((...args: Args) => Result) & Omit<Output, typeof SERVICE_HELPER_DEPENDENCIES> : Omit<Output, typeof SERVICE_HELPER_DEPENDENCIES> : Output;
|
|
568
|
+
export type CraftRouteInjectHelper<Name extends string, Output> = {
|
|
569
|
+
(): StripHelperDependencies<Output>;
|
|
570
|
+
readonly [SERVICE_HELPER_DEPENDENCIES]?: ServiceTrackingMetadata<Name, 'toProvide', StripHelperDependencies<Output>, never, undefined, {
|
|
571
|
+
resolve: () => StripHelperDependencies<Output>;
|
|
572
|
+
}, false>;
|
|
573
|
+
};
|
|
574
|
+
export type CraftRouteYieldHelper<Name extends string, Output> = () => Generator<ServiceYieldRequest<'toProvide', Output, ServiceTrackingMetadata<Name, 'toProvide', Output, never>>, Output, unknown>;
|
|
575
|
+
type CraftRouteProvideHelper<Name extends string, Output> = (provided: {
|
|
576
|
+
resolve: () => Output;
|
|
577
|
+
}) => NamedBrandedServiceProvider<Name, 'toProvide', Output>;
|
|
578
|
+
type CraftRouteValueServiceApi<Name extends string, Output> = {
|
|
579
|
+
[Key in InjectHelperName<Name>]: CraftRouteInjectHelper<Name, Output>;
|
|
580
|
+
} & {
|
|
581
|
+
[Key in Name]: CraftRouteYieldHelper<Name, Output>;
|
|
582
|
+
} & {
|
|
583
|
+
[Key in ProvideHelperName<Name>]: CraftRouteProvideHelper<Name, Output>;
|
|
584
|
+
};
|
|
585
|
+
type ParamInjectHelpers<Name extends string, Routes extends readonly AnyCraftRouteHelperDefinition[]> = Simplify<MergeObjectUnion<PathParamNames<Routes[number]['path']> extends infer ParamName extends string ? {
|
|
586
|
+
[Key in RouteParamInjectHelperName<Name, ParamName>]: CraftRouteValueServiceApi<RouteParamServiceName<Name, ParamName>, ParamOutputForRoutes<Routes, ParamName>>[RouteParamInjectHelperName<Name, ParamName>];
|
|
587
|
+
} : never>>;
|
|
588
|
+
type QueryParamsInjectHelpers<Name extends string, Routes extends readonly AnyCraftRouteHelperDefinition[]> = Simplify<MergeObjectUnion<Routes[number] extends infer RouteDefinition ? RouteDefinition extends {
|
|
589
|
+
queryParams: RouteQueryParamsFactory;
|
|
590
|
+
} ? {
|
|
591
|
+
[Key in RouteQueryParamsInjectHelperName<Name, RoutePath<RouteDefinition>>]: CraftRouteValueServiceApi<RouteCollectionQueryParamsServiceName<Name, RoutePath<RouteDefinition>>, RouteQueryParamsOutput<RouteDefinition>>[RouteQueryParamsInjectHelperName<Name, RoutePath<RouteDefinition>>];
|
|
592
|
+
} : never : never>>;
|
|
593
|
+
type ViewTransitionInjectHelpers<Name extends string, Routes extends readonly AnyCraftRouteHelperDefinition[]> = Simplify<MergeObjectUnion<Routes[number] extends infer RouteDefinition ? RouteDefinition extends {
|
|
594
|
+
withLoaderViewTransitionImage: ViewTransitionPayloadDef<any>;
|
|
595
|
+
} ? {
|
|
596
|
+
[Key in RouteViewTransitionInjectHelperName<Name, RoutePath<RouteDefinition>>]: CraftRouteValueServiceApi<RouteCollectionViewTransitionServiceName<Name, RoutePath<RouteDefinition>>, RouteViewTransitionOutput<RouteDefinition>>[RouteViewTransitionInjectHelperName<Name, RoutePath<RouteDefinition>>];
|
|
597
|
+
} : never : never>>;
|
|
598
|
+
type GuardedDataYieldHelpers<Name extends string, Routes extends readonly AnyCraftRouteHelperDefinition[]> = Simplify<MergeObjectUnion<Routes[number] extends infer RouteDefinition ? RouteDefinition extends {
|
|
599
|
+
canActivate: CraftRouteCanActivateGuard;
|
|
600
|
+
} ? [RouteGuardedDataOutput<RouteDefinition>] extends [never] ? never : {
|
|
601
|
+
[Key in RouteCollectionGuardedDataServiceName<Name, RoutePath<RouteDefinition>>]: CraftRouteValueServiceApi<RouteCollectionGuardedDataServiceName<Name, RoutePath<RouteDefinition>>, RouteGuardedDataOutput<RouteDefinition>>[RouteCollectionGuardedDataServiceName<Name, RoutePath<RouteDefinition>>];
|
|
602
|
+
} : never : never>>;
|
|
603
|
+
type ResolvedDataInjectHelpers<Name extends string, Routes extends readonly AnyCraftRouteHelperDefinition[]> = Simplify<MergeObjectUnion<Routes[number] extends infer RouteDefinition ? RouteDefinition extends {
|
|
604
|
+
resolve: CraftRouteResolve;
|
|
605
|
+
} ? [RouteResolvedDataOutput<RouteDefinition>] extends [never] ? never : {
|
|
606
|
+
[Key in RouteResolvedDataInjectHelperName<Name, RoutePath<RouteDefinition>>]: CraftRouteValueServiceApi<RouteCollectionResolvedDataServiceName<Name, RoutePath<RouteDefinition>>, RouteResolvedDataOutput<RouteDefinition>>[RouteResolvedDataInjectHelperName<Name, RoutePath<RouteDefinition>>];
|
|
607
|
+
} : never : never>>;
|
|
608
|
+
type ExceptionInjectHelpers<Name extends string, Routes extends readonly AnyCraftRouteHelperDefinition[]> = Simplify<MergeObjectUnion<Routes[number] extends infer RouteDefinition ? RouteDefinition extends {
|
|
609
|
+
handleExceptions: object;
|
|
610
|
+
} ? ExceptionCodeOf<RouteDefinition> extends infer Code extends string ? {
|
|
611
|
+
[Key in RouteExceptionInjectHelperName<Name, RoutePath<RouteDefinition>, Code>]: CraftRouteValueServiceApi<RouteCollectionExceptionServiceName<Name, RoutePath<RouteDefinition>, Code>, RouteExceptionOutput<RouteDefinition, Code>>[RouteExceptionInjectHelperName<Name, RoutePath<RouteDefinition>, Code>];
|
|
612
|
+
} : never : never : never>>;
|
|
613
|
+
type CraftRouteHelper<Name extends string, Output> = () => Generator<ServiceYieldRequest<'toProvide', Output, ServiceTrackingMetadata<Name, 'toProvide', Output, never>>, Output, unknown>;
|
|
614
|
+
type RouteParamBaseServiceName<ParamName extends string> = `${ParamServiceName<ParamName>}Params`;
|
|
615
|
+
type RouteParamProviderHelpers<RouteDefinition> = {
|
|
616
|
+
[ParamName in PathParamNames<RoutePath<RouteDefinition>> as `${ParamServiceName<ParamName>}Params`]: CraftRouteHelper<RouteParamBaseServiceName<ParamName>, ParamOutputForRoute<RouteDefinition, ParamName>>;
|
|
617
|
+
};
|
|
618
|
+
type RouteGuardedDataProviderHelper<RouteDefinition> = [
|
|
619
|
+
RouteGuardedDataOutput<RouteDefinition>
|
|
620
|
+
] extends [never] ? {} : {
|
|
621
|
+
GuardedData: CraftRouteHelper<RouteGuardedDataServiceName<RoutePath<RouteDefinition>>, RouteGuardedDataOutput<RouteDefinition>>;
|
|
622
|
+
};
|
|
623
|
+
type RouteDataProviderHelper<RouteDefinition> = RouteDefinition extends {
|
|
624
|
+
data: Data;
|
|
625
|
+
} ? {
|
|
626
|
+
Data: CraftRouteHelper<RouteDataServiceName<RoutePath<RouteDefinition>>, RouteDataOutput<RouteDefinition>>;
|
|
627
|
+
} : {};
|
|
628
|
+
type RouteQueryParamsProviderHelper<RouteDefinition> = RouteDefinition extends {
|
|
629
|
+
queryParams: RouteQueryParamsFactory;
|
|
630
|
+
} ? {
|
|
631
|
+
QueryParams: CraftRouteHelper<RouteQueryParamsServiceName<RoutePath<RouteDefinition>>, RouteQueryParamsOutput<RouteDefinition>>;
|
|
632
|
+
} : {};
|
|
633
|
+
type RouteProviderHelpers<RouteDefinition> = Simplify<RouteParamProviderHelpers<RouteDefinition> & RouteGuardedDataProviderHelper<RouteDefinition> & RouteDataProviderHelper<RouteDefinition> & RouteQueryParamsProviderHelper<RouteDefinition>>;
|
|
634
|
+
type RouteSelfProvidedBaseNames<RouteDefinition> = (PathParamNames<RoutePath<RouteDefinition>> extends infer ParamName extends string ? RouteParamBaseServiceName<ParamName> : never) | (RouteDefinition extends {
|
|
635
|
+
data: Data;
|
|
636
|
+
} ? RouteDataServiceName<RoutePath<RouteDefinition>> : never) | (RouteDefinition extends {
|
|
637
|
+
queryParams: RouteQueryParamsFactory;
|
|
638
|
+
} ? RouteQueryParamsServiceName<RoutePath<RouteDefinition>> : never) | ([RouteGuardedDataOutput<RouteDefinition>] extends [never] ? never : RouteGuardedDataServiceName<RoutePath<RouteDefinition>>);
|
|
639
|
+
type RouteWithProvidersBuilder<RouteDefinition> = RouteDefinition & {
|
|
640
|
+
withProviders: <Providers extends AngularRouteProviders>(factory: (helpers: RouteProviderHelpers<RouteDefinition>) => Providers) => Simplify<RouteDefinition & {
|
|
641
|
+
providersFn: (helpers: RouteProviderHelpers<RouteDefinition>) => Providers;
|
|
642
|
+
}>;
|
|
643
|
+
};
|
|
644
|
+
type CraftRoutePathRegistryEntry<RouteDefinition, ResolvedPath extends string> = Simplify<{
|
|
645
|
+
path: ResolvedPath;
|
|
646
|
+
} & RouteQueryParamsMetaDataField<RouteDefinition> & RouteViewTransitionMetaDataField<RouteDefinition>>;
|
|
647
|
+
type FlattenLoadChildrenPathRegistry<RouteDefinition, ParentPath extends string> = [LoadChildrenRoutes<RouteDefinition>] extends [never] ? readonly [] : CraftRoutesPathRegistryWithContext<LoadChildrenRoutes<RouteDefinition>, ParentPath>;
|
|
648
|
+
type FlattenCraftRoutePathRegistryEntry<RouteDefinition extends AnyCraftRouteDefinition, ParentPath extends string = ''> = readonly [
|
|
649
|
+
CraftRoutePathRegistryEntry<RouteDefinition, JoinRoutePaths<ParentPath, RoutePath<RouteDefinition>>>,
|
|
650
|
+
...FlattenLoadChildrenPathRegistry<RouteDefinition, JoinRoutePaths<ParentPath, RoutePath<RouteDefinition>>>
|
|
651
|
+
];
|
|
652
|
+
type CraftRoutesPathRegistryWithContext<Routes extends readonly AnyCraftRouteDefinition[], ParentPath extends string, Acc extends readonly unknown[] = readonly []> = number extends Routes['length'] ? readonly [...Acc, ...CraftRoutePathRegistryEntry<Routes[number], string>[]] : Routes extends readonly [
|
|
653
|
+
infer Head extends AnyCraftRouteDefinition,
|
|
654
|
+
...infer Tail extends readonly AnyCraftRouteDefinition[]
|
|
655
|
+
] ? CraftRoutesPathRegistryWithContext<Tail, ParentPath, readonly [
|
|
656
|
+
...Acc,
|
|
657
|
+
...FlattenCraftRoutePathRegistryEntry<Head, ParentPath>
|
|
658
|
+
]> : Acc;
|
|
659
|
+
/**
|
|
660
|
+
* Slim view over a routes collection: only `path` (and `queryParams` when
|
|
661
|
+
* declared). Excludes `componentDeps`-derived fields on purpose — that's what
|
|
662
|
+
* `META_DATA` is for.
|
|
663
|
+
*
|
|
664
|
+
* Nested children loaded via `loadChildren` are flattened with their joined
|
|
665
|
+
* parent path (e.g. `'craft/lazy-layout/:teamId/users/:userId'`), mirroring
|
|
666
|
+
* how `CraftRoutesMetaData` resolves paths.
|
|
667
|
+
*
|
|
668
|
+
* Use this in the `CraftRouterRoutesRegistry` augmentation. The registry only
|
|
669
|
+
* needs paths and queryParams to validate `navigate({to: ...})`. Including
|
|
670
|
+
* `componentDeps` would create a self-referencing cycle whenever a registered
|
|
671
|
+
* component's body calls back into the router (its `GenDeps_*` would feed
|
|
672
|
+
* back into the type that resolves `NavigableRoutePath`).
|
|
673
|
+
*
|
|
674
|
+
* `META_DATA` stays available on the same `craftRoutes` result for use cases
|
|
675
|
+
* that genuinely need the resolved component dependencies — e.g. e2e tests
|
|
676
|
+
* that mock every endpoint declared on a route.
|
|
677
|
+
*/
|
|
678
|
+
export type CraftRoutesPathRegistry<Routes extends readonly AnyCraftRouteDefinition[]> = CraftRoutesPathRegistryWithContext<Routes, ''>;
|
|
679
|
+
export type CraftRoutesApp<Routes extends readonly AnyCraftRouteDefinition[] = readonly AnyCraftRouteDefinition[], Name extends string = string,
|
|
680
|
+
/**
|
|
681
|
+
* The parent mount path this child collection is **pinned** to via
|
|
682
|
+
* `.withParent<ParentRoutes<'path'>>()`. Defaults to `string` = *unpinned*
|
|
683
|
+
* (assignable to any `loadChildren`, backward compatible). When set to a
|
|
684
|
+
* literal, the `loadChildren` slot only accepts it under a route whose `path`
|
|
685
|
+
* matches — see `ValidateRouteParentMount`.
|
|
686
|
+
*/
|
|
687
|
+
ParentMount extends string = string> = {
|
|
688
|
+
readonly name: Name;
|
|
689
|
+
/**
|
|
690
|
+
* @internal phantom carrying the pinned parent mount path (`.withParent`).
|
|
691
|
+
* Do not use at runtime.
|
|
692
|
+
*/
|
|
693
|
+
readonly __craftParentMount?: ParentMount;
|
|
694
|
+
/** @internal phantom property for fast type inference — do not use at runtime */
|
|
695
|
+
readonly _routes: Routes;
|
|
696
|
+
toRoutes(): CraftCompiledRoute[];
|
|
697
|
+
/**
|
|
698
|
+
* Full per-route metadata — includes `path`, `queryParams`, and the
|
|
699
|
+
* `componentDeps`-derived shape (`deps`, `missingProvider`, `httpDeps`,
|
|
700
|
+
* `publicProperties`). Use it for tooling that needs the full picture, e.g.
|
|
701
|
+
* an e2e test runner that wants to mock every endpoint reachable from a
|
|
702
|
+
* route.
|
|
703
|
+
*
|
|
704
|
+
* **Do not register `typeof X.META_DATA` directly in
|
|
705
|
+
* `CraftRouterRoutesRegistry`** — that creates a cycle in any tracked
|
|
706
|
+
* component whose `GenDeps_*` references methods that call the router. Use
|
|
707
|
+
* `META_PATHS` for the registry instead.
|
|
708
|
+
*/
|
|
709
|
+
readonly META_DATA: CraftRoutesMetaData<Routes, Name>;
|
|
710
|
+
/**
|
|
711
|
+
* Slim per-route view (path + queryParams only) intended for the
|
|
712
|
+
* `CraftRouterRoutesRegistry` augmentation. Same array as `META_DATA` at
|
|
713
|
+
* runtime — only the type view differs.
|
|
714
|
+
*/
|
|
715
|
+
readonly META_PATHS: CraftRoutesPathRegistry<Routes>;
|
|
716
|
+
};
|
|
717
|
+
/**
|
|
718
|
+
* Type-only marker naming the parent mount path a child collection is pinned to,
|
|
719
|
+
* passed to `.withParent<ParentRoutes<'admin'>>()`. Carries no runtime value —
|
|
720
|
+
* it only threads the mount path into the collection's `ParentMount` brand so a
|
|
721
|
+
* `loadChildren` slot can require the child be mounted under that exact route.
|
|
722
|
+
*/
|
|
723
|
+
export type ParentRoutes<Mount extends string> = {
|
|
724
|
+
readonly __craftParentMount: Mount;
|
|
725
|
+
};
|
|
726
|
+
type ParentMountOf<P> = P extends ParentRoutes<infer Mount> ? Mount : string;
|
|
727
|
+
export type CraftRoutesPublicPropertiesErrors<Routes extends readonly AnyCraftRouteDefinition[]> = Simplify<MergeObjectUnion<Routes[number] extends infer RouteDefinition ? RouteDefinition extends AnyCraftRouteDefinition ? MapRoutePublicPropertiesToErrors<RouteDefinition> : never : never>>;
|
|
728
|
+
type CraftRoutesSuccessResult<Routes extends readonly AnyCraftRouteDefinition[], Name extends string = string, ParentMount extends string = string> = Simplify<{
|
|
729
|
+
[Key in RoutesExportKey<Name>]: CraftRoutesApp<Routes, Name, ParentMount>;
|
|
730
|
+
} & ParamInjectHelpers<Name, RoutesHelperShape<Routes>> & QueryParamsInjectHelpers<Name, RoutesHelperShape<Routes>> & ViewTransitionInjectHelpers<Name, RoutesHelperShape<Routes>> & GuardedDataYieldHelpers<Name, RoutesHelperShape<Routes>> & ResolvedDataInjectHelpers<Name, RoutesHelperShape<Routes>> & ExceptionInjectHelpers<Name, RoutesHelperShape<Routes>>>;
|
|
731
|
+
export type CraftRoutesResult<Routes extends readonly AnyCraftRouteDefinition[], Name extends string = string> = CraftRoutesSuccessResult<Routes, Name> & {
|
|
732
|
+
/**
|
|
733
|
+
* Pin this collection to a parent mount path so its `loadChildren` slot only
|
|
734
|
+
* accepts it under that exact route — type-only, returns the same object at
|
|
735
|
+
* runtime. Pass the target via `ParentRoutes<'path'>`:
|
|
736
|
+
*
|
|
737
|
+
* ```ts
|
|
738
|
+
* export const { fooRoutes } = craftRoutes('foo', [...])
|
|
739
|
+
* .withParent<ParentRoutes<'admin'>>();
|
|
740
|
+
* ```
|
|
741
|
+
*/
|
|
742
|
+
withParent<Parent extends ParentRoutes<string>>(): CraftRoutesSuccessResult<Routes, Name, ParentMountOf<Parent>>;
|
|
743
|
+
};
|
|
744
|
+
export declare function craftRoute<const Path extends string, const Def extends object, const Codes extends ExceptionCode<Extract<RouteExceptionUnion<Def>, AnyCraftException>> = ExceptionCode<Extract<RouteExceptionUnion<Def>, AnyCraftException>>, const Handlers extends object = TypedExceptionHandlers<Extract<RouteExceptionUnion<Def>, AnyCraftException>, Codes, ExceptionHandlerResults<Codes>>>(path: Path, def: CraftRouteDefinitionInput<Def>, handlers: TypedExceptionHandlers<Extract<RouteExceptionUnion<Def>, AnyCraftException>, Codes, ExceptionHandlerResults<Codes>> & Handlers & MissingExceptionHandlers<Extract<RouteExceptionUnion<Def>, AnyCraftException>, Codes>): RouteWithProvidersBuilder<Simplify<Def & {
|
|
745
|
+
path: Path;
|
|
746
|
+
handleExceptions: Handlers;
|
|
747
|
+
}>>;
|
|
748
|
+
export declare function craftRoute<const Path extends string, const Def extends CraftRouteLoaderHelperConstraint>(path: Path, def: CraftRouteDefinitionInput<Def>): RouteWithProvidersBuilder<Simplify<Def & {
|
|
749
|
+
path: Path;
|
|
750
|
+
}>>;
|
|
751
|
+
export declare function craftRoutes<const Name extends string, const Routes extends readonly AnyCraftRouteDefinition[]>(routeCollectionName: Name, routes: {
|
|
752
|
+
[Index in keyof Routes]: Routes[Index];
|
|
753
|
+
}): CraftRoutesResult<Routes, Name>;
|
|
754
|
+
export {};
|
|
755
|
+
//# sourceMappingURL=craft-routes.d.ts.map
|