tungsten 0.6.2 → 0.7.0
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/dist/.build-complete +1 -1
- package/dist/Brands.d.ts +16 -0
- package/dist/Brands.d.ts.map +1 -0
- package/dist/Brands.js +22 -0
- package/dist/Components.d.ts +4 -1
- package/dist/Components.d.ts.map +1 -1
- package/dist/Components.js +24 -6
- package/dist/ContentNode.d.ts +3 -2
- package/dist/ContentNode.d.ts.map +1 -1
- package/dist/ContentNode.js +11 -0
- package/dist/Framework.d.ts.map +1 -1
- package/dist/Framework.js +23 -4
- package/dist/FrameworkConfig.d.ts +7 -1
- package/dist/FrameworkConfig.d.ts.map +1 -1
- package/dist/FunctionComponent.d.ts +1 -0
- package/dist/FunctionComponent.d.ts.map +1 -1
- package/dist/FunctionComponentStandIn.d.ts.map +1 -1
- package/dist/Instance/Instance.d.ts +29 -12
- package/dist/Instance/Instance.d.ts.map +1 -1
- package/dist/Instance/Instance.js +59 -21
- package/dist/Instance/InstanceConfig.d.ts +2 -1
- package/dist/Instance/InstanceConfig.d.ts.map +1 -1
- package/dist/RenderedContentNode.d.ts.map +1 -1
- package/dist/RenderingNode.d.ts.map +1 -1
- package/dist/Servers/DevServer.d.ts +4 -2
- package/dist/Servers/DevServer.d.ts.map +1 -1
- package/dist/Servers/DevServer.js +62 -20
- package/dist/Servers/ProdServer.d.ts +4 -2
- package/dist/Servers/ProdServer.d.ts.map +1 -1
- package/dist/Servers/ProdServer.js +77 -18
- package/dist/Servers/StaticSiteServer.d.ts +1 -1
- package/dist/Servers/StaticSiteServer.d.ts.map +1 -1
- package/dist/Servers/TungstenServer.d.ts +2 -1
- package/dist/Servers/TungstenServer.d.ts.map +1 -1
- package/dist/Servers/TungstenServer.js +7 -0
- package/dist/Servers/cacheVersioned.d.ts +3 -0
- package/dist/Servers/cacheVersioned.d.ts.map +1 -0
- package/dist/Servers/cacheVersioned.js +23 -0
- package/dist/Servers/devErrorPageAutoRetry.d.ts.map +1 -1
- package/dist/Servers/devErrorPageAutoRetry.js +1 -0
- package/dist/Servers/initStores.d.ts +4 -4
- package/dist/Servers/initStores.d.ts.map +1 -1
- package/dist/Servers/initStores.js +2 -2
- package/dist/Servers/loadEnvsDev.d.ts.map +1 -1
- package/dist/Servers/loadEnvsDev.js +7 -6
- package/dist/Servers/resetRegistrations.d.ts +2 -0
- package/dist/Servers/resetRegistrations.d.ts.map +1 -0
- package/dist/Servers/resetRegistrations.js +13 -0
- package/dist/Servers/routing.d.ts +3 -2
- package/dist/Servers/routing.d.ts.map +1 -1
- package/dist/Servers/routing.js +3 -2
- package/dist/Store/InternalStoreSchema.d.ts +1 -1
- package/dist/Store/Store.js +2 -1
- package/dist/Store/StoreSchemaClass.d.ts +6 -3
- package/dist/Store/StoreSchemaClass.d.ts.map +1 -1
- package/dist/Store/StoreSchemaClass.js +8 -1
- package/dist/Store/TypeSafeStore.js +2 -1
- package/dist/Store/createStores.d.ts +3 -3
- package/dist/Store/createStores.d.ts.map +1 -1
- package/dist/Store/createStores.js +7 -2
- package/dist/Store/getInternalStore.d.ts.map +1 -1
- package/dist/Store/registerStore.d.ts.map +1 -1
- package/dist/Store/registerStore.js +2 -2
- package/dist/Store/storeCreators.d.ts +2 -2
- package/dist/Store/storeCreators.d.ts.map +1 -1
- package/dist/TungstenApp.d.ts +3 -3
- package/dist/TungstenApp.d.ts.map +1 -1
- package/dist/_client/cjsHelpers.d.ts.map +1 -1
- package/dist/_client/cjsHelpers.js +5 -3
- package/dist/_client/client.d.ts +2 -0
- package/dist/_client/client.d.ts.map +1 -1
- package/dist/_client/client.js +10 -3
- package/dist/api/getApiRoutes.d.ts.map +1 -1
- package/dist/api/getExport.d.ts +1 -1
- package/dist/api/getExport.d.ts.map +1 -1
- package/dist/api/getExport.js +2 -1
- package/dist/api/getExportDev.d.ts +1 -1
- package/dist/api/getExportDev.d.ts.map +1 -1
- package/dist/appBuilder.d.ts +69 -0
- package/dist/appBuilder.d.ts.map +1 -0
- package/dist/appBuilder.js +98 -0
- package/dist/appBuilder.types.test.d.ts +110 -0
- package/dist/appBuilder.types.test.d.ts.map +1 -0
- package/dist/appBuilder.types.test.js +240 -0
- package/dist/babelPlugins/BabelTransformBindDirect.js +7 -7
- package/dist/babelPlugins/BabelTransformBindVar.js +7 -7
- package/dist/babelPlugins/BabelTransformComponentState.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformComponentStyles.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformComponentStyles.js +5 -5
- package/dist/babelPlugins/BabelTransformCssImports.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformCssImports.js +2 -2
- package/dist/babelPlugins/BabelTransformDeproxyState.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformPackageImports.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformPackageImports.js +11 -6
- package/dist/babelPlugins/BabelTransformRemoveDevBlocks.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformRemoveServerBlocks.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTypes.d.ts.map +1 -1
- package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsCjs.d.ts.map +1 -1
- package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsCjs.js +1 -1
- package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsEsm.d.ts.map +1 -1
- package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsEsm.js +2 -2
- package/dist/bin/commands/compile.d.ts.map +1 -1
- package/dist/bin/commands/compile.js +2 -1
- package/dist/build/CompilationInfo.d.ts +3 -0
- package/dist/build/CompilationInfo.d.ts.map +1 -1
- package/dist/build/assetVersions.d.ts +9 -0
- package/dist/build/assetVersions.d.ts.map +1 -0
- package/dist/build/assetVersions.js +39 -0
- package/dist/build/babel.user.common.config.d.ts.map +1 -1
- package/dist/build/bundle.d.ts.map +1 -1
- package/dist/build/bundle.js +2 -1
- package/dist/build/bundleBabelOptions.d.ts.map +1 -1
- package/dist/build/clientRoutesFile.d.ts +2 -0
- package/dist/build/clientRoutesFile.d.ts.map +1 -0
- package/dist/build/clientRoutesFile.js +13 -0
- package/dist/build/compileJavascript.d.ts.map +1 -1
- package/dist/build/compileJavascript.js +4 -3
- package/dist/build/compileStyles.d.ts +2 -1
- package/dist/build/compileStyles.d.ts.map +1 -1
- package/dist/build/compileStyles.js +38 -83
- package/dist/build/compileUserApp.d.ts.map +1 -1
- package/dist/build/componentStylesCache.d.ts.map +1 -1
- package/dist/build/componentStylesCache.js +3 -2
- package/dist/build/copyAssets.d.ts.map +1 -1
- package/dist/build/copyAssets.js +2 -1
- package/dist/build/copyPackageModulesToPackagesFolder.d.ts.map +1 -1
- package/dist/build/copyPackageModulesToPackagesFolder.js +1 -1
- package/dist/build/copyPublicFiles.d.ts.map +1 -1
- package/dist/build/copyPublicFiles.js +2 -1
- package/dist/build/createClientFiles.d.ts.map +1 -1
- package/dist/build/createClientFiles.js +9 -5
- package/dist/build/createInstanceConfigFile.d.ts +1 -1
- package/dist/build/createInstanceConfigFile.d.ts.map +1 -1
- package/dist/build/createInstanceConfigFile.js +9 -3
- package/dist/build/frameworkDestLocation.d.ts.map +1 -1
- package/dist/build/frameworkDestLocation.js +5 -6
- package/dist/build/frameworkStylesheets.d.ts.map +1 -1
- package/dist/build/frameworkStylesheets.js +1 -1
- package/dist/build/makeBabelRawConfig.d.ts.map +1 -1
- package/dist/build/makeBabelUserDevConfig.d.ts +2 -2
- package/dist/build/makeBabelUserDevConfig.d.ts.map +1 -1
- package/dist/build/makeBabelUserProdConfig.d.ts.map +1 -1
- package/dist/build/rollup.user.prod.config.d.ts.map +1 -1
- package/dist/build/rollup.user.prod.config.js +5 -3
- package/dist/build/rollupProdConstants.d.ts +5 -0
- package/dist/build/rollupProdConstants.d.ts.map +1 -0
- package/dist/build/rollupProdConstants.js +21 -0
- package/dist/cacheControl.d.ts +13 -0
- package/dist/cacheControl.d.ts.map +1 -0
- package/dist/cacheControl.js +22 -0
- package/dist/compat/types.d.ts +1 -1
- package/dist/compat/types.d.ts.map +1 -1
- package/dist/componentHelpers.d.ts +18 -0
- package/dist/componentHelpers.d.ts.map +1 -0
- package/dist/componentHelpers.js +28 -0
- package/dist/componentProxyHandlers.d.ts.map +1 -1
- package/dist/components/Fragment.d.ts +8 -0
- package/dist/components/Fragment.d.ts.map +1 -0
- package/dist/components/Fragment.js +10 -0
- package/dist/components/Link.d.ts +4 -3
- package/dist/components/Link.d.ts.map +1 -1
- package/dist/components/Link.js +1 -0
- package/dist/components/NoEscape.d.ts +8 -0
- package/dist/components/NoEscape.d.ts.map +1 -0
- package/dist/components/NoEscape.js +6 -0
- package/dist/components/RouteRedirectComponent.d.ts.map +1 -1
- package/dist/components/RouteRedirectComponent.js +1 -1
- package/dist/components/WebRedirectComponent.d.ts.map +1 -1
- package/dist/components/WebRedirectComponent.js +1 -1
- package/dist/components/bindable/BindVariable.d.ts +1 -0
- package/dist/components/bindable/BindVariable.d.ts.map +1 -1
- package/dist/components/bindable/BindableCheckbox.d.ts +7 -7
- package/dist/components/bindable/BindableCheckbox.d.ts.map +1 -1
- package/dist/components/bindable/BindableInput.d.ts +7 -7
- package/dist/components/bindable/BindableInput.d.ts.map +1 -1
- package/dist/components/bindable/BindableInputNonString.d.ts +2 -2
- package/dist/components/bindable/BindableInputNonString.d.ts.map +1 -1
- package/dist/components/bindable/BindableInputString.d.ts +2 -2
- package/dist/components/bindable/BindableInputString.d.ts.map +1 -1
- package/dist/components/bindable/BindableInputTyped.d.ts +3 -3
- package/dist/components/bindable/BindableInputTyped.d.ts.map +1 -1
- package/dist/components/bindable/BindableInputTypedLegacy.d.ts +3 -3
- package/dist/components/bindable/BindableInputTypedLegacy.d.ts.map +1 -1
- package/dist/components/bindable/BindableRadio.js +2 -2
- package/dist/components/bindable/BindableSelect.d.ts +13 -10
- package/dist/components/bindable/BindableSelect.d.ts.map +1 -1
- package/dist/components/bindable/BindableSelectNaive.js +3 -3
- package/dist/components/bindable/BindableTextarea.d.ts +7 -7
- package/dist/components/bindable/BindableTextarea.d.ts.map +1 -1
- package/dist/components/bindable/bindableCandidates.comparison.d.ts +136 -0
- package/dist/components/bindable/bindableCandidates.comparison.d.ts.map +1 -0
- package/dist/components/bindable/bindableCandidates.comparison.js +268 -0
- package/dist/components/bindable/bindableProps.types.test.d.ts +50 -0
- package/dist/components/bindable/bindableProps.types.test.d.ts.map +1 -0
- package/dist/components/bindable/bindableProps.types.test.js +252 -0
- package/dist/components/library/RichTextEditor/RichTextEditor.d.ts.map +1 -1
- package/dist/components/library/RichTextEditor/contentTree.d.ts.map +1 -1
- package/dist/components/makeTypedLink.d.ts +9 -0
- package/dist/components/makeTypedLink.d.ts.map +1 -0
- package/dist/components/makeTypedLink.js +15 -0
- package/dist/context/registerContext.d.ts +22 -0
- package/dist/context/registerContext.d.ts.map +1 -0
- package/dist/context/registerContext.js +18 -0
- package/dist/env/getEnvSchemas.d.ts.map +1 -1
- package/dist/env/getEnvSchemas.js +2 -1
- package/dist/fileVersions.d.ts +9 -0
- package/dist/fileVersions.d.ts.map +1 -0
- package/dist/fileVersions.js +28 -0
- package/dist/findUserConfig.d.ts +1 -1
- package/dist/findUserConfig.d.ts.map +1 -1
- package/dist/findUserConfig.js +2 -1
- package/dist/frameworkConfigSchema.d.ts +14 -2
- package/dist/frameworkConfigSchema.d.ts.map +1 -1
- package/dist/frameworkConfigSchema.js +11 -2
- package/dist/getComponent.d.ts.map +1 -1
- package/dist/getComponent.js +4 -3
- package/dist/getRoutes.d.ts.map +1 -1
- package/dist/getRoutes.js +9 -8
- package/dist/hmr/applyHmrModule.d.ts.map +1 -1
- package/dist/hmr/componentIdentity.js +1 -1
- package/dist/hooks/getCurrentComponent.d.ts +1 -1
- package/dist/hooks/getCurrentComponent.d.ts.map +1 -1
- package/dist/hydrate/hydrate.d.ts +5 -1
- package/dist/hydrate/hydrate.d.ts.map +1 -1
- package/dist/hydrate/hydrate.js +59 -46
- package/dist/hydrate/hydrateGlobalData.d.ts +4 -3
- package/dist/hydrate/hydrateGlobalData.d.ts.map +1 -1
- package/dist/hydrate/reconcileHydratedAttributes.d.ts +2 -1
- package/dist/hydrate/reconcileHydratedAttributes.d.ts.map +1 -1
- package/dist/hydrate/reconcileHydratedAttributes.js +4 -3
- package/dist/hydrate/renderHydrationMismatchBanner.d.ts.map +1 -1
- package/dist/hydrate/renderHydrationMismatchBanner.js +2 -1
- package/dist/importDevModuleWithRetry.d.ts +2 -1
- package/dist/importDevModuleWithRetry.d.ts.map +1 -1
- package/dist/importDevModuleWithRetry.js +2 -1
- package/dist/importModule.d.ts +3 -0
- package/dist/importModule.d.ts.map +1 -0
- package/dist/importModule.js +4 -0
- package/dist/index.js +2 -1
- package/dist/indexInner.d.ts +30 -7
- package/dist/indexInner.d.ts.map +1 -1
- package/dist/indexInner.js +37 -2
- package/dist/json.d.ts +12 -0
- package/dist/json.d.ts.map +1 -0
- package/dist/json.js +8 -0
- package/dist/jsxHelpers.d.ts +3 -0
- package/dist/jsxHelpers.d.ts.map +1 -0
- package/dist/jsxHelpers.js +6 -0
- package/dist/jsxRuntime.d.ts +1 -0
- package/dist/jsxRuntime.d.ts.map +1 -1
- package/dist/jsxRuntime.js +3 -1
- package/dist/jsxRuntimeSignals.d.ts.map +1 -1
- package/dist/jsxRuntimeSignals.js +1 -0
- package/dist/makeInstanceConfigFromFrameworkConfig.d.ts.map +1 -1
- package/dist/makeInstanceConfigFromFrameworkConfig.js +1 -0
- package/dist/mergeConfigs.d.ts.map +1 -1
- package/dist/mergeConfigs.js +2 -6
- package/dist/nbsp.d.ts +1 -2
- package/dist/nbsp.d.ts.map +1 -1
- package/dist/nbsp.js +3 -7
- package/dist/objectMap.d.ts +1 -1
- package/dist/objectMap.d.ts.map +1 -1
- package/dist/pipeline/PipelineRequestHandler.d.ts +25 -0
- package/dist/pipeline/PipelineRequestHandler.d.ts.map +1 -0
- package/dist/pipeline/PipelineRequestHandler.js +96 -0
- package/dist/pipeline/contextStore.d.ts +12 -0
- package/dist/pipeline/contextStore.d.ts.map +1 -0
- package/dist/pipeline/contextStore.js +13 -0
- package/dist/pipeline/hydratePipeline.d.ts +4 -0
- package/dist/pipeline/hydratePipeline.d.ts.map +1 -0
- package/dist/pipeline/hydratePipeline.js +64 -0
- package/dist/pipeline/importRoutesModule.d.ts +6 -0
- package/dist/pipeline/importRoutesModule.d.ts.map +1 -0
- package/dist/pipeline/importRoutesModule.js +33 -0
- package/dist/pipeline/networkedTransport.d.ts +11 -0
- package/dist/pipeline/networkedTransport.d.ts.map +1 -0
- package/dist/pipeline/networkedTransport.js +54 -0
- package/dist/pipeline/pipeline.d.ts +105 -0
- package/dist/pipeline/pipeline.d.ts.map +1 -0
- package/dist/pipeline/pipeline.js +108 -0
- package/dist/pipeline/pipeline.types.test.d.ts +650 -0
- package/dist/pipeline/pipeline.types.test.d.ts.map +1 -0
- package/dist/pipeline/pipeline.types.test.js +342 -0
- package/dist/pipeline/pipelineDefinition.d.ts +67 -0
- package/dist/pipeline/pipelineDefinition.d.ts.map +1 -0
- package/dist/pipeline/pipelineDefinition.js +11 -0
- package/dist/pipeline/pipelineSplit.types.test.d.ts +1971 -0
- package/dist/pipeline/pipelineSplit.types.test.d.ts.map +1 -0
- package/dist/pipeline/pipelineSplit.types.test.js +440 -0
- package/dist/pipeline/runPipeline.d.ts +31 -0
- package/dist/pipeline/runPipeline.d.ts.map +1 -0
- package/dist/pipeline/runPipeline.js +71 -0
- package/dist/pipeline/runSplitPipeline.d.ts +10 -0
- package/dist/pipeline/runSplitPipeline.d.ts.map +1 -0
- package/dist/pipeline/runSplitPipeline.js +48 -0
- package/dist/pipeline/splitPipeline.d.ts +62 -0
- package/dist/pipeline/splitPipeline.d.ts.map +1 -0
- package/dist/pipeline/splitPipeline.js +76 -0
- package/dist/pop.js +1 -1
- package/dist/rawHtml/filterContentNode.d.ts.map +1 -1
- package/dist/render/HeadData.d.ts +3 -1
- package/dist/render/HeadData.d.ts.map +1 -1
- package/dist/render/classComponentNodeToRenderingTree.d.ts.map +1 -1
- package/dist/render/componentNodeToRenderingTree.d.ts.map +1 -1
- package/dist/render/contentToHtml.d.ts +2 -2
- package/dist/render/contentToHtml.d.ts.map +1 -1
- package/dist/render/contentToHtml.js +2 -1
- package/dist/render/contentToHtmlDev.d.ts +1 -1
- package/dist/render/contentToHtmlDev.d.ts.map +1 -1
- package/dist/render/contentTreeToRenderingTree.d.ts.map +1 -1
- package/dist/render/contentTreeToRenderingTree.js +2 -1
- package/dist/render/functionComponentNodeToRenderingTree.d.ts.map +1 -1
- package/dist/render/functionComponentNodeToRenderingTree.js +2 -2
- package/dist/render/instantiateComponent.d.ts.map +1 -1
- package/dist/render/processHead.d.ts.map +1 -1
- package/dist/render/processHead.js +12 -18
- package/dist/render/renderingTreeToHtml.d.ts.map +1 -1
- package/dist/render/renderingTreeToHtml.js +6 -3
- package/dist/render/rootToHtml.d.ts +2 -2
- package/dist/render/rootToHtml.d.ts.map +1 -1
- package/dist/requests/fetch/delete.d.ts.map +1 -1
- package/dist/requests/fetch/delete.js +5 -2
- package/dist/requests/fetch/get.js +1 -1
- package/dist/requests/fetch/patch.d.ts.map +1 -1
- package/dist/requests/fetch/patch.js +5 -2
- package/dist/requests/fetch/post.d.ts.map +1 -1
- package/dist/requests/fetch/post.js +5 -2
- package/dist/requests/fetch/put.d.ts.map +1 -1
- package/dist/requests/fetch/put.js +5 -2
- package/dist/routesLocationParts.d.ts +6 -0
- package/dist/routesLocationParts.d.ts.map +1 -0
- package/dist/routesLocationParts.js +10 -0
- package/dist/routing/AppRoutes.d.ts +5 -3
- package/dist/routing/AppRoutes.d.ts.map +1 -1
- package/dist/routing/MatchedRouteInfo.d.ts +11 -0
- package/dist/routing/MatchedRouteInfo.d.ts.map +1 -0
- package/dist/routing/RouteContentFunction.d.ts +1 -2
- package/dist/routing/RouteContentFunction.d.ts.map +1 -1
- package/dist/routing/RouteDataFunction.type.d.ts +4 -2
- package/dist/routing/RouteDataFunction.type.d.ts.map +1 -1
- package/dist/routing/RoutePaths.d.ts +12 -0
- package/dist/routing/RoutePaths.d.ts.map +1 -0
- package/dist/routing/RoutePaths.js +1 -0
- package/dist/routing/RouteTypes.d.ts +6 -4
- package/dist/routing/RouteTypes.d.ts.map +1 -1
- package/dist/routing/Routes.d.ts +17 -11
- package/dist/routing/Routes.d.ts.map +1 -1
- package/dist/routing/RoutesFunction.d.ts +11 -2
- package/dist/routing/RoutesFunction.d.ts.map +1 -1
- package/dist/routing/Serializable.d.ts +5 -0
- package/dist/routing/Serializable.d.ts.map +1 -0
- package/dist/routing/Serializable.js +1 -0
- package/dist/routing/builder.d.ts +99 -0
- package/dist/routing/builder.d.ts.map +1 -0
- package/dist/routing/builder.js +213 -0
- package/dist/routing/builder.trial.d.ts +2 -0
- package/dist/routing/builder.trial.d.ts.map +1 -0
- package/dist/routing/builder.trial.js +85 -0
- package/dist/routing/defineRoutes.d.ts +8 -0
- package/dist/routing/defineRoutes.d.ts.map +1 -0
- package/dist/routing/defineRoutes.js +3 -0
- package/dist/routing/pyramidRouting.d.ts +2 -0
- package/dist/routing/pyramidRouting.d.ts.map +1 -0
- package/dist/routing/pyramidRouting.js +13 -0
- package/dist/routing/registerGlobalData.d.ts +11 -3
- package/dist/routing/registerGlobalData.d.ts.map +1 -1
- package/dist/routing/registerGlobalData.js +6 -0
- package/dist/routing/registerParts.types.test.d.ts +2 -0
- package/dist/routing/registerParts.types.test.d.ts.map +1 -0
- package/dist/routing/registerParts.types.test.js +139 -0
- package/dist/routing/registerRoutes.d.ts +10 -0
- package/dist/routing/registerRoutes.d.ts.map +1 -0
- package/dist/routing/registerRoutes.js +9 -0
- package/dist/routing/registerRouting.d.ts +36 -0
- package/dist/routing/registerRouting.d.ts.map +1 -0
- package/dist/routing/registerRouting.js +34 -0
- package/dist/routing/registerRouting.types.test.d.ts +80 -0
- package/dist/routing/registerRouting.types.test.d.ts.map +1 -0
- package/dist/routing/registerRouting.types.test.js +120 -0
- package/dist/routing/registrationTypes.d.ts +11 -0
- package/dist/routing/registrationTypes.d.ts.map +1 -0
- package/dist/routing/registrationTypes.js +1 -0
- package/dist/routing/resolveAppRoutes.d.ts +5 -0
- package/dist/routing/resolveAppRoutes.d.ts.map +1 -0
- package/dist/routing/resolveAppRoutes.js +25 -0
- package/dist/routing/routeUrl.d.ts +4 -0
- package/dist/routing/routeUrl.d.ts.map +1 -1
- package/dist/routing/routeUrl.js +4 -0
- package/dist/routing/routesArray.d.ts +23 -0
- package/dist/routing/routesArray.d.ts.map +1 -0
- package/dist/routing/routesArray.js +20 -0
- package/dist/routing/routesArray.types.test.d.ts +2 -0
- package/dist/routing/routesArray.types.test.d.ts.map +1 -0
- package/dist/routing/routesArray.types.test.js +132 -0
- package/dist/routing/routingBuilder.d.ts +34 -0
- package/dist/routing/routingBuilder.d.ts.map +1 -0
- package/dist/routing/routingBuilder.js +33 -0
- package/dist/routing/routingBuilder.types.test.d.ts +2 -0
- package/dist/routing/routingBuilder.types.test.d.ts.map +1 -0
- package/dist/routing/routingBuilder.types.test.js +171 -0
- package/dist/routing/routingRegistry.d.ts +19 -0
- package/dist/routing/routingRegistry.d.ts.map +1 -0
- package/dist/routing/routingRegistry.js +29 -0
- package/dist/staticGen/getAppRoutes.d.ts +2 -2
- package/dist/staticGen/getAppRoutes.d.ts.map +1 -1
- package/dist/staticGen/getAppRoutes.js +9 -6
- package/dist/staticGen/staticGen.d.ts.map +1 -1
- package/dist/staticGen/staticGen.js +8 -2
- package/dist/style/styleContentSxy.d.ts.map +1 -1
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +2 -0
- package/dist/syncServer/index.cjs +1 -2
- package/dist/syncServer/preload.js +2 -0
- package/dist/testing/createTestApp.d.ts +25 -1
- package/dist/testing/createTestApp.d.ts.map +1 -1
- package/dist/testing/createTestApp.js +12 -3
- package/dist/testing/createTestPipelineApp.d.ts +25 -0
- package/dist/testing/createTestPipelineApp.d.ts.map +1 -0
- package/dist/testing/createTestPipelineApp.js +153 -0
- package/dist/testing/ensure.d.ts +108 -0
- package/dist/testing/ensure.d.ts.map +1 -0
- package/dist/testing/ensure.js +522 -0
- package/dist/testing/ensure.trial.d.ts +2 -0
- package/dist/testing/ensure.trial.d.ts.map +1 -0
- package/dist/testing/ensure.trial.js +9 -0
- package/dist/testing/helpers/contentHtmlElements.d.ts.map +1 -1
- package/dist/testing/host.d.ts +80 -9
- package/dist/testing/host.d.ts.map +1 -1
- package/dist/testing/host.js +81 -20
- package/dist/testing/hostPipeline.d.ts +157 -0
- package/dist/testing/hostPipeline.d.ts.map +1 -0
- package/dist/testing/hostPipeline.js +341 -0
- package/dist/testing/hydrateTestApp.d.ts +17 -0
- package/dist/testing/hydrateTestApp.d.ts.map +1 -1
- package/dist/testing/hydrateTestApp.js +26 -6
- package/dist/testing/hydrateTestPipelineApp.d.ts +30 -0
- package/dist/testing/hydrateTestPipelineApp.d.ts.map +1 -0
- package/dist/testing/hydrateTestPipelineApp.js +190 -0
- package/dist/testing/index.d.ts +6 -3
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +4 -1
- package/dist/testing/resolveContent.d.ts +16 -0
- package/dist/testing/resolveContent.d.ts.map +1 -0
- package/dist/testing/resolveContent.js +65 -0
- package/dist/testing/testingComponentPackage.d.ts +3 -1
- package/dist/testing/testingComponentPackage.d.ts.map +1 -1
- package/dist/testing/testingComponentPackage.js +16 -1
- package/dist/update/integrateUpdateVdom.d.ts.map +1 -1
- package/dist/update/integrateUpdateVdom.js +35 -31
- package/dist/update/integrateUpdateVdomPrebuild.js +20 -20
- package/dist/validChildren.d.ts.map +1 -1
- package/dist/zones/react.d.ts.map +1 -1
- package/package.json +20 -18
- package/types/helpers.d.ts +11 -2
- package/types/jsx/html.d.ts +29 -25
- package/types/jsx/jsx.d.ts +8 -8
- package/types/modules.d.ts +14 -3
- package/types/testing.d.ts +0 -0
- package/vendor/babel-core.js +5 -5
- package/vendor/babel-parser.js +1 -1
- package/vendor/babel-preset-react.js +32 -34
- package/vendor/babel-preset-typescript.js +5 -5
- package/vendor/chalk-extensions.js +3 -146
- package/vendor/chokidar.js +311 -5
- package/vendor/chunk-B34JUlnS.js +169 -0
- package/vendor/{chunk-Bu8ZRE-c.js → chunk-B9ttgKqg.js} +28 -25
- package/vendor/{chunk-D2EnpcLg.js → chunk-BGvapINa.js} +3 -164
- package/vendor/{chunk-Cqrj-Zqr.js → chunk-BmAiqUzD.js} +22 -8
- package/vendor/{chunk-BiUcnLhT.js → chunk-But4T5N_.js} +8 -3
- package/vendor/{chunk-OUnVY4Wm.js → chunk-DuR6SGzI.js} +162 -35
- package/vendor/dotenv.js +2 -2
- package/vendor/express.js +61 -10
- package/vendor/manifest.json +2 -2
- package/vendor/postcss.js +1 -1
- package/vendor/precinct.js +5914 -3591
- package/vendor/valibot.js +418 -504
- package/dist/Servers/MatchedRouteInfo.d.ts +0 -11
- package/dist/Servers/MatchedRouteInfo.d.ts.map +0 -1
- package/dist/routing/__fluentRouteBuilder.d.ts +0 -80
- package/dist/routing/__fluentRouteBuilder.d.ts.map +0 -1
- package/dist/routing/__fluentRouteBuilder.js +0 -183
- package/dist/routing/__fluentRoutes.d.ts +0 -2
- package/dist/routing/__fluentRoutes.d.ts.map +0 -1
- package/dist/routing/__fluentRoutes.js +0 -59
- package/vendor/chunk-Hy-cCmu-.js +0 -23
- /package/dist/{Servers → routing}/MatchedRouteInfo.js +0 -0
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
3
|
-
|
|
1
|
+
import type { RoutesFunctionGeneric } from './registrationTypes.js';
|
|
2
|
+
import type { RoutesWithSettings } from './Routes.js';
|
|
3
|
+
import type { BrandedRoutesFunction } from './RoutesFunction.js';
|
|
4
|
+
import type { RoutesArray } from './routesArray.js';
|
|
5
|
+
export type AppRoutes<G extends object = object> = RoutesWithSettings<G> | RoutesArray<G> | BrandedRoutesFunction<G> | RoutesFunctionGeneric<G, any, any, RoutesWithSettings<G> | RoutesArray<G>>;
|
|
4
6
|
//# sourceMappingURL=AppRoutes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppRoutes.d.ts","sourceRoot":"","sources":["../../src/routing/AppRoutes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"AppRoutes.d.ts","sourceRoot":"","sources":["../../src/routing/AppRoutes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAGnD,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IACzC,kBAAkB,CAAC,CAAC,CAAC,GACrB,WAAW,CAAC,CAAC,CAAC,GACd,qBAAqB,CAAC,CAAC,CAAC,GACxB,qBAAqB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ContentNode } from '../ContentNode.js';
|
|
2
|
+
import type { RoutingRedirect } from './RoutingRedirect.js';
|
|
3
|
+
import type { RouteKey } from './RouteTypes.js';
|
|
4
|
+
import type { RouteContentFunction } from './RouteContentFunction.js';
|
|
5
|
+
export type MatchedRouteInfo = {
|
|
6
|
+
key: RouteKey | null;
|
|
7
|
+
params: Record<string, string>;
|
|
8
|
+
content: ContentNode | RouteContentFunction<any, any>;
|
|
9
|
+
data?: unknown | RoutingRedirect;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=MatchedRouteInfo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MatchedRouteInfo.d.ts","sourceRoot":"","sources":["../../src/routing/MatchedRouteInfo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAGrE,MAAM,MAAM,gBAAgB,GAAG;IAC3B,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;IAErB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAK9B,OAAO,EAAE,WAAW,GAAG,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACrD,IAAI,CAAC,EAAE,OAAO,GAAG,eAAe,CAAA;CACnC,CAAA"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { ContentNode } from '../ContentNode.js';
|
|
2
2
|
import type { MatchedRouteProps } from './MatchedRoute.js';
|
|
3
|
-
|
|
4
|
-
export type RouteContentFunction<RouteParams extends object = object, RouteData = unknown> = (routeData: RouteData, routeParams: RouteParams, props: MatchedRouteProps, globalData: GlobalData, location: string) => ContentNode;
|
|
3
|
+
export type RouteContentFunction<RouteParams extends object = object, RouteData = unknown, G extends object = object, ND = {}> = (routeData: RouteData, routeParams: RouteParams, props: MatchedRouteProps, globalData: G, location: string) => ContentNode;
|
|
5
4
|
export declare function ContentIsRouteContentFunction(content: ContentNode | RouteContentFunction): content is RouteContentFunction;
|
|
6
5
|
//# sourceMappingURL=RouteContentFunction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteContentFunction.d.ts","sourceRoot":"","sources":["../../src/routing/RouteContentFunction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"RouteContentFunction.d.ts","sourceRoot":"","sources":["../../src/routing/RouteContentFunction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAQ1D,MAAM,MAAM,oBAAoB,CAC5B,WAAW,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,OAAO,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,EAAE,GAAG,EAAE,IAC5F,CACA,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,KACxG,WAAW,CAAA;AAEhB,wBAAgB,6BAA6B,CACzC,OAAO,EAAE,WAAW,GAAG,oBAAoB,GAC5C,OAAO,IAAI,oBAAoB,CAEjC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { RoutingRedirect } from './RoutingRedirect.js';
|
|
2
2
|
import type { WebRedirect } from './WebRedirect.js';
|
|
3
|
-
|
|
3
|
+
import type { Context } from '../context/registerContext.js';
|
|
4
|
+
import type { NetworkedData } from './routingRegistry.js';
|
|
5
|
+
export type RouteDataFunction<Params extends object, DataType, C = Context, ND = NetworkedData> = (params: Params, location: string, query: {
|
|
4
6
|
[key: string]: string;
|
|
5
|
-
}) => Promise<DataType | RoutingRedirect | WebRedirect>;
|
|
7
|
+
}, context: C, networkedData: ND) => Promise<DataType | RoutingRedirect | WebRedirect>;
|
|
6
8
|
//# sourceMappingURL=RouteDataFunction.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteDataFunction.type.d.ts","sourceRoot":"","sources":["../../src/routing/RouteDataFunction.type.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"RouteDataFunction.type.d.ts","sourceRoot":"","sources":["../../src/routing/RouteDataFunction.type.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAKzD,MAAM,MAAM,iBAAiB,CAAC,MAAM,SAAS,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,OAAO,EAAE,EAAE,GAAG,aAAa,IACxF,CACE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EAClE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,KAE9B,OAAO,CAAC,QAAQ,GAAG,eAAe,GAAG,WAAW,CAAC,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { PipelineApp } from '../pipeline/pipelineDefinition.js';
|
|
2
|
+
import type { Path } from './RouteTypes.js';
|
|
3
|
+
import type { KeyedRoutes } from './routesArray.js';
|
|
4
|
+
type NumericParamType = 'digits' | 'uint' | 'unsigned-integer' | 'int' | 'integer' | 'sint' | 'signed-integer' | 'int-ge1' | '1+' | 'num' | 'number';
|
|
5
|
+
type NameChar = 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i' | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r' | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z' | Uppercase<'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i' | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r' | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z'> | '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '_';
|
|
6
|
+
type AfterName<S extends string> = S extends `${infer C}${infer R}` ? C extends NameChar ? AfterName<R> : S : S;
|
|
7
|
+
type ParamTemplate<After extends string> = After extends `<${infer T}>${infer Tail}` ? `${T extends NumericParamType ? number : string}${PathTemplate<Tail>}` : After extends `(${string})${infer Tail}` ? `${string}${PathTemplate<Tail>}` : `${string}${PathTemplate<After>}`;
|
|
8
|
+
export type PathTemplate<S extends string> = S extends `${infer Head}:${infer Rest}` ? `${Head}${ParamTemplate<AfterName<Rest>>}` : S;
|
|
9
|
+
type RoutesTable<R> = R extends PipelineApp<infer F> ? RoutesTable<F> : KeyedRoutes<R extends (...args: never[]) => infer T ? T : R>;
|
|
10
|
+
export type RoutePaths<R> = RoutesTable<R> extends infer T ? T extends unknown ? Extract<PathTemplate<Extract<keyof T, Path>>, Path> : never : never;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=RoutePaths.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RoutePaths.d.ts","sourceRoot":"","sources":["../../src/routing/RoutePaths.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAA;AACpE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAInD,KAAK,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,kBAAkB,GAAG,KAAK,GAAG,SAAS,GAAG,MAAM,GAAG,gBAAgB,GACxG,SAAS,GAAG,IAAI,GAAG,KAAK,GAAG,QAAQ,CAAA;AAEzC,KAAK,QAAQ,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GACvG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,SAAS,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GACvG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GACzG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;AAGlF,KAAK,SAAS,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,GAAG,CAAC,SAAS,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAE/G,KAAK,aAAa,CAAC,KAAK,SAAS,MAAM,IACjC,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,MAAM,IAAI,EAAE,GACrC,GAAG,CAAC,SAAS,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,GACtE,KAAK,SAAS,IAAI,MAAM,IAAI,MAAM,IAAI,EAAE,GACpC,GAAG,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,GAChC,GAAG,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,EAAE,CAAA;AAG/C,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,IACnC,CAAC,SAAS,GAAG,MAAM,IAAI,IAAI,MAAM,IAAI,EAAE,GAAG,GAAG,IAAI,GAAG,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAE9F,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAC9C,WAAW,CAAC,CAAC,CAAC,GACd,WAAW,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;AAIlE,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,GACpD,CAAC,SAAS,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,GAC/E,KAAK,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import type { RouteDataFunction } from './RouteDataFunction.type.js';
|
|
2
2
|
import type { ContentNode } from '../ContentNode.js';
|
|
3
3
|
import type { RouteContentFunction } from './RouteContentFunction.js';
|
|
4
|
-
|
|
4
|
+
import type { RouteCacheControl } from '../cacheControl.js';
|
|
5
|
+
export type Endpoint<Params extends object, DataType, G extends object = object> = {
|
|
5
6
|
data?: RouteDataFunction<Params, DataType>;
|
|
6
|
-
content: ContentNode | RouteContentFunction<Params, DataType>;
|
|
7
|
+
content: ContentNode | RouteContentFunction<Params, DataType, G>;
|
|
8
|
+
cacheControl?: RouteCacheControl;
|
|
7
9
|
};
|
|
8
10
|
export type Method = 'GET' | 'QUERY' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
9
|
-
export type Route = Endpoint<object, unknown> & {
|
|
10
|
-
[K in Method]?: Endpoint<object, unknown>;
|
|
11
|
+
export type Route = Endpoint<object, unknown, object> & {
|
|
12
|
+
[K in Method]?: Endpoint<object, unknown, object>;
|
|
11
13
|
};
|
|
12
14
|
export type Path = `/${string}`;
|
|
13
15
|
export type SpecialRoute = 'default' | '404' | 'error';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteTypes.d.ts","sourceRoot":"","sources":["../../src/routing/RouteTypes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"RouteTypes.d.ts","sourceRoot":"","sources":["../../src/routing/RouteTypes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAG3D,MAAM,MAAM,QAAQ,CAAC,MAAM,SAAS,MAAM,EAAE,QAAQ,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IAC/E,IAAI,CAAC,EAAE,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC1C,OAAO,EAAE,WAAW,GAAG,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;IAEhE,YAAY,CAAC,EAAE,iBAAiB,CAAA;CACnC,CAAA;AAGD,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAA;AAE1E,MAAM,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG;KACnD,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;CACpD,CAAA;AAED,MAAM,MAAM,IAAI,GAAG,IAAI,MAAM,EAAE,CAAA;AAC/B,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,KAAK,GAAG,OAAO,CAAA;AACtD,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,YAAY,CAAA;AAE1C,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,IAAI,CAE3D;AACD,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,IAAI,IAAI,CAE3D"}
|
package/dist/routing/Routes.d.ts
CHANGED
|
@@ -1,26 +1,32 @@
|
|
|
1
1
|
import type { Path, Endpoint } from './RouteTypes.js';
|
|
2
2
|
import type { ErrorRouteType } from './ErrorRouteType.js';
|
|
3
|
+
import type { $cacheControl, RouteCacheControl } from '../cacheControl.js';
|
|
4
|
+
import type { Serializable } from './Serializable.js';
|
|
3
5
|
export type MinimumRoutes = {
|
|
4
|
-
default: Endpoint<any, any>;
|
|
6
|
+
default: Endpoint<any, any, any>;
|
|
5
7
|
} | {
|
|
6
|
-
'404': Endpoint<any, any>;
|
|
8
|
+
'404': Endpoint<any, any, any>;
|
|
7
9
|
};
|
|
8
|
-
export type
|
|
9
|
-
[
|
|
10
|
+
export type RoutesSettings = {
|
|
11
|
+
[$cacheControl]?: RouteCacheControl;
|
|
12
|
+
};
|
|
13
|
+
export type Routes<G extends object = object> = {
|
|
14
|
+
[key in Path]: Endpoint<any, any, G>;
|
|
10
15
|
} & {
|
|
11
|
-
|
|
16
|
+
error?: ErrorRouteType;
|
|
12
17
|
} & ({
|
|
13
|
-
|
|
18
|
+
default: Endpoint<any, any, G>;
|
|
14
19
|
} | {
|
|
15
|
-
|
|
20
|
+
404: Endpoint<any, any, G>;
|
|
16
21
|
});
|
|
17
|
-
export type
|
|
22
|
+
export type RoutesWithSettings<G extends object = object> = Routes<G> & RoutesSettings;
|
|
23
|
+
export type CustomRoutes<Route extends Endpoint<any, any, G>, G extends object & Serializable<G> = object> = {
|
|
18
24
|
[key in Path]: Route;
|
|
19
25
|
} & {
|
|
20
26
|
error: ErrorRouteType;
|
|
21
27
|
} & ({
|
|
22
|
-
|
|
28
|
+
default: Route;
|
|
23
29
|
} | {
|
|
24
|
-
|
|
25
|
-
});
|
|
30
|
+
404: Route;
|
|
31
|
+
}) & RoutesSettings;
|
|
26
32
|
//# sourceMappingURL=Routes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Routes.d.ts","sourceRoot":"","sources":["../../src/routing/Routes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"Routes.d.ts","sourceRoot":"","sources":["../../src/routing/Routes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGrD,MAAM,MAAM,aAAa,GACnB;IAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAAE,GACpC;IAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAAE,CAAA;AAGxC,MAAM,MAAM,cAAc,GAAG;IAEzB,CAAC,aAAa,CAAC,CAAC,EAAE,iBAAiB,CAAA;CACtC,CAAA;AAGD,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IACtC;KAAG,GAAG,IAAI,IAAI,GAAG,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;CAAE,GACxC;IAAE,KAAK,CAAC,EAAE,cAAc,CAAA;CAAE,GAC1B,CACE;IAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;CAAE,GAChC;IAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;CAAE,CACnC,CAAA;AAEL,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAG,MAAM,CAAC,CAAC,CAAC,GAAG,cAAc,CAAA;AAErF,MAAM,MAAM,YAAY,CACpB,KAAK,SAAS,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EACnC,CAAC,SAAS,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,IAEzC;KAAG,GAAG,IAAI,IAAI,GAAG,KAAK;CAAE,GACxB;IAAE,KAAK,EAAE,cAAc,CAAA;CAAE,GACzB,CACE;IAAE,OAAO,EAAE,KAAK,CAAA;CAAE,GAChB;IAAE,GAAG,EAAE,KAAK,CAAA;CAAE,CACnB,GACC,cAAc,CAAA"}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
import type { ReqRes } from '../ReqRes.js';
|
|
2
|
-
import type {
|
|
3
|
-
|
|
2
|
+
import type { RoutesWithSettings } from './Routes.js';
|
|
3
|
+
import type { RoutesArray } from './routesArray.js';
|
|
4
|
+
import type { Context } from '../context/registerContext.js';
|
|
5
|
+
import type { BrandedContext, BrandedNetworkedData } from '../Brands.js';
|
|
6
|
+
import type { NetworkedData } from './routingRegistry.js';
|
|
7
|
+
export type RoutesFunction<G extends object = object> = {
|
|
8
|
+
routes(reqRes: ReqRes | null, context: Context, networkedData: NetworkedData): RoutesWithSettings<G>;
|
|
9
|
+
}['routes'];
|
|
10
|
+
export type BrandedRoutesFunction<G extends object = object> = {
|
|
11
|
+
routes(reqRes: ReqRes | null, context: BrandedContext, networkedData: BrandedNetworkedData): RoutesWithSettings<G> | RoutesArray<G>;
|
|
12
|
+
}['routes'];
|
|
4
13
|
//# sourceMappingURL=RoutesFunction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RoutesFunction.d.ts","sourceRoot":"","sources":["../../src/routing/RoutesFunction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"RoutesFunction.d.ts","sourceRoot":"","sources":["../../src/routing/RoutesFunction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAMzD,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACpD,MAAM,CACF,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,GAC7B,kBAAkB,CAAC,CAAC,CAAC,CAAA;CAC3B,CAAC,QAAQ,CAAC,CAAA;AAEX,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IAC3D,MAAM,CACF,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,OAAO,EAAE,cAAc,EACvB,aAAa,EAAE,oBAAoB,GACpC,kBAAkB,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;CAC5C,CAAC,QAAQ,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Serializable.d.ts","sourceRoot":"","sources":["../../src/routing/Serializable.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAM1C,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,MAAM,GAAG,KAAK,GAAG,SAAS;CAAE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import type { Expand } from '../../types/helpers.js';
|
|
2
|
+
import type { ContentNode } from '../ContentNode.js';
|
|
3
|
+
import type { RouteContentFunction } from './RouteContentFunction.js';
|
|
4
|
+
import type { Endpoint, Path, RouteKey } from './RouteTypes.js';
|
|
5
|
+
import type { RouteDataFunction } from './RouteDataFunction.type.js';
|
|
6
|
+
import type { ParamsFromPath } from './ParamsFromPath.js';
|
|
7
|
+
import type { TungstenErrorInfo } from './TungstenErrorInfo.js';
|
|
8
|
+
export type FluentRoute = {
|
|
9
|
+
path: RouteKey;
|
|
10
|
+
content: ContentNode | RouteContentFunction<any, any>;
|
|
11
|
+
};
|
|
12
|
+
export type NormalFluentRoute = {
|
|
13
|
+
path: Path;
|
|
14
|
+
content: ContentNode | RouteContentFunction<any, any>;
|
|
15
|
+
};
|
|
16
|
+
export type FluentDefaultRoute = {
|
|
17
|
+
path: 'default';
|
|
18
|
+
content: ContentNode;
|
|
19
|
+
};
|
|
20
|
+
export type Fluent404Route = {
|
|
21
|
+
path: '404';
|
|
22
|
+
code: 404;
|
|
23
|
+
content: ContentNode;
|
|
24
|
+
};
|
|
25
|
+
export type FluentErrorRoute = {
|
|
26
|
+
path: 'error';
|
|
27
|
+
content: RouteContentFunction<object, TungstenErrorInfo>;
|
|
28
|
+
};
|
|
29
|
+
export type FluentRoutesToRoutes<T extends readonly FluentRoute[]> = {
|
|
30
|
+
[E in T[number] as E['path'] & string]: E;
|
|
31
|
+
} & {};
|
|
32
|
+
export declare function routes<const T extends readonly FluentRoute[]>(...frs: T): FluentRoutesToRoutes<T>;
|
|
33
|
+
export declare function routesWith<Rule extends object>(): <const T extends readonly (FluentRoute & Rule)[]>(...frs: T) => FluentRoutesToRoutes<T>;
|
|
34
|
+
type FrameworkRouteFields = Omit<Endpoint<any, any>, 'data' | 'content'>;
|
|
35
|
+
type Meta = Record<string, unknown> & FrameworkRouteFields;
|
|
36
|
+
declare const $invalidKeyError: unique symbol;
|
|
37
|
+
type MustNotIncludePathDataContent<T extends Record<string, unknown>> = 'path' extends keyof T ? {
|
|
38
|
+
[$invalidKeyError]: 'meta may not contain key \'path\'';
|
|
39
|
+
} : 'data' extends keyof T ? {
|
|
40
|
+
[$invalidKeyError]: 'meta may not contain key \'data\'';
|
|
41
|
+
} : 'content' extends keyof T ? {
|
|
42
|
+
[$invalidKeyError]: 'meta may not contain key \'content\'';
|
|
43
|
+
} : T;
|
|
44
|
+
export declare function chainedRoute<P extends RouteKey, M extends Meta = {}>(path: P, meta?: M & MustNotIncludePathDataContent<M>): {
|
|
45
|
+
meta<M2 extends Meta>(meta: M2 & MustNotIncludePathDataContent<M2>): {
|
|
46
|
+
data<D>(dataFunc: RouteDataFunction<ParamsFromPath<P>, D>): {
|
|
47
|
+
content<C extends RouteContentFunction<ParamsFromPath<P>, D> | ContentNode>(content: C): Expand<{
|
|
48
|
+
path: P;
|
|
49
|
+
} & Omit<M, keyof M2> & M2 & {
|
|
50
|
+
data: RouteDataFunction<ParamsFromPath<P>, D>;
|
|
51
|
+
content: NoInfer<C>;
|
|
52
|
+
}>;
|
|
53
|
+
};
|
|
54
|
+
content<const C extends ContentNode>(content: C): Expand<{
|
|
55
|
+
path: P;
|
|
56
|
+
} & Omit<M, keyof M2> & M2 & {
|
|
57
|
+
content: C;
|
|
58
|
+
}>;
|
|
59
|
+
};
|
|
60
|
+
data<D>(dataFunc: RouteDataFunction<ParamsFromPath<P>, D>): {
|
|
61
|
+
content<C extends RouteContentFunction<ParamsFromPath<P>, D> | ContentNode>(content: C): Expand<{
|
|
62
|
+
path: P;
|
|
63
|
+
} & M & {
|
|
64
|
+
data: RouteDataFunction<ParamsFromPath<P>, D>;
|
|
65
|
+
content: NoInfer<C>;
|
|
66
|
+
}>;
|
|
67
|
+
};
|
|
68
|
+
content<const C extends ContentNode>(content: C): Expand<{
|
|
69
|
+
path: P;
|
|
70
|
+
} & M & {
|
|
71
|
+
content: C;
|
|
72
|
+
}>;
|
|
73
|
+
};
|
|
74
|
+
export declare function route<P extends RouteKey, D, M extends Meta = {}>(// eslint-disable-line @typescript-eslint/no-empty-object-type
|
|
75
|
+
r: {
|
|
76
|
+
path: P;
|
|
77
|
+
data: RouteDataFunction<ParamsFromPath<P>, D>;
|
|
78
|
+
content: RouteContentFunction<ParamsFromPath<P>, D>;
|
|
79
|
+
} & M): Expand<{
|
|
80
|
+
path: P;
|
|
81
|
+
} & M & {
|
|
82
|
+
data: RouteDataFunction<ParamsFromPath<P>, D>;
|
|
83
|
+
content: RouteContentFunction<ParamsFromPath<P>, D>;
|
|
84
|
+
}>;
|
|
85
|
+
export declare function route<P extends RouteKey, const C extends ContentNode, M extends Meta = {}>(// eslint-disable-line @typescript-eslint/no-empty-object-type
|
|
86
|
+
r: {
|
|
87
|
+
path: P;
|
|
88
|
+
data?: never;
|
|
89
|
+
content: C;
|
|
90
|
+
} & M): Expand<{
|
|
91
|
+
path: P;
|
|
92
|
+
} & M & {
|
|
93
|
+
content: C;
|
|
94
|
+
}>;
|
|
95
|
+
export declare function defaultRoute(r: FluentDefaultRoute): FluentDefaultRoute;
|
|
96
|
+
export declare function _404Route(r: FluentErrorRoute): FluentErrorRoute;
|
|
97
|
+
export declare function errorRoute(r: FluentErrorRoute): FluentErrorRoute;
|
|
98
|
+
export {};
|
|
99
|
+
//# sourceMappingURL=builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/routing/builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import { TungstenError } from '../TungstenError.js';
|
|
2
|
+
export function routes(...frs) {
|
|
3
|
+
const routes = frs.reduce((prev, route) => {
|
|
4
|
+
if (route.path !== '/' && route.path.endsWith('/')) {
|
|
5
|
+
throw new TungstenError(`Invalid path ${route.path} - trailing slashes are not allowed`);
|
|
6
|
+
}
|
|
7
|
+
if (route.path in prev) {
|
|
8
|
+
throw new TungstenError(`Duplicate path ${route.path}`);
|
|
9
|
+
}
|
|
10
|
+
prev[route.path] = route;
|
|
11
|
+
return prev;
|
|
12
|
+
}, {/*default: { path: 'default', content: null }*/});
|
|
13
|
+
return routes; // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion
|
|
14
|
+
}
|
|
15
|
+
export function routesWith() {
|
|
16
|
+
return function routes(...frs) {
|
|
17
|
+
const routes = frs.reduce((prev, route) => {
|
|
18
|
+
if (route.path !== '/' && route.path.endsWith('/')) {
|
|
19
|
+
throw new TungstenError(`Invalid path ${route.path} - trailing slashes are not allowed`);
|
|
20
|
+
}
|
|
21
|
+
if (route.path in prev) {
|
|
22
|
+
throw new TungstenError(`Duplicate path ${route.path}`);
|
|
23
|
+
}
|
|
24
|
+
prev[route.path] = route;
|
|
25
|
+
return prev;
|
|
26
|
+
}, {/*default: { path: 'default', content: null }*/});
|
|
27
|
+
return routes; // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
// export function routeLegacy<P extends RouteKey>(path: P) {
|
|
31
|
+
// const r: { path: P } = { path }
|
|
32
|
+
// return {
|
|
33
|
+
// meta<M extends Record<string, unknown>>(meta: M & MustNotIncludePathDataContent<M>) {
|
|
34
|
+
// if ('path' in meta) throw new TungstenError(`meta may not include key 'path' in route '${r.path}'`)
|
|
35
|
+
// if ('data' in meta) throw new TungstenError(`meta may not include key 'data' in route '${r.path}'`)
|
|
36
|
+
// if ('content' in meta) throw new TungstenError(`meta may not include key 'content' in route '${r.path}'`)
|
|
37
|
+
// //Object.assign(r, meta)
|
|
38
|
+
// const rm = {
|
|
39
|
+
// path: r.path,
|
|
40
|
+
// ...(meta as M)
|
|
41
|
+
// }
|
|
42
|
+
// return {
|
|
43
|
+
// data<D>(dataFunc: RouteDataFunction<ParamsFromPath<P>, D>) {
|
|
44
|
+
// const rmd = {
|
|
45
|
+
// ...rm,
|
|
46
|
+
// data: dataFunc
|
|
47
|
+
// }
|
|
48
|
+
// return {
|
|
49
|
+
// content<C extends RouteContentFunction<ParamsFromPath<P>, D> | ContentNode>(content: C)
|
|
50
|
+
// : Expand<{ path: P } & M & { data: RouteDataFunction<ParamsFromPath<P>, D>, content: C }> {
|
|
51
|
+
// return {
|
|
52
|
+
// ...rmd,
|
|
53
|
+
// content
|
|
54
|
+
// }
|
|
55
|
+
// }
|
|
56
|
+
// }
|
|
57
|
+
// },
|
|
58
|
+
// content<const C extends ContentNode>(content: C): Expand<{ path: P } & M & { content: C }> {
|
|
59
|
+
// return {
|
|
60
|
+
// ...rm,
|
|
61
|
+
// content
|
|
62
|
+
// }
|
|
63
|
+
// }
|
|
64
|
+
// }
|
|
65
|
+
// },
|
|
66
|
+
// data<D>(dataFunc: RouteDataFunction<ParamsFromPath<P>, D>) {
|
|
67
|
+
// // const rd = r as { // eslint-disable-line no-type-assertion/no-type-assertion
|
|
68
|
+
// // path: P
|
|
69
|
+
// // data: RouteDataFunction<Params<P>, D>
|
|
70
|
+
// // }
|
|
71
|
+
// // rd.data = dataFunc
|
|
72
|
+
// const rd = {
|
|
73
|
+
// path: r.path,
|
|
74
|
+
// data: dataFunc
|
|
75
|
+
// }
|
|
76
|
+
// return {
|
|
77
|
+
// content<C extends RouteContentFunction<ParamsFromPath<P>, D> | ContentNode>(content: C)
|
|
78
|
+
// : Expand<{ path: P } & { data: RouteDataFunction<ParamsFromPath<P>, D>, content: C }> {
|
|
79
|
+
// return {
|
|
80
|
+
// ...rd,
|
|
81
|
+
// content
|
|
82
|
+
// }
|
|
83
|
+
// }
|
|
84
|
+
// }
|
|
85
|
+
// },
|
|
86
|
+
// // does not accept a function by choice - but could be relaxed
|
|
87
|
+
// content<const C extends ContentNode>(content: C): Expand<{ path: P } & { content: C }> {
|
|
88
|
+
// return {
|
|
89
|
+
// path: r.path,
|
|
90
|
+
// content
|
|
91
|
+
// }
|
|
92
|
+
// }
|
|
93
|
+
// }
|
|
94
|
+
// }
|
|
95
|
+
export function chainedRoute(path, meta) {
|
|
96
|
+
const r = {
|
|
97
|
+
path
|
|
98
|
+
}; // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion
|
|
99
|
+
if (meta) {
|
|
100
|
+
if ('path' in meta) throw new TungstenError(`meta may not include key 'path' in route '${r.path}'`);
|
|
101
|
+
if ('data' in meta) throw new TungstenError(`meta may not include key 'data' in route '${r.path}'`);
|
|
102
|
+
if ('content' in meta) throw new TungstenError(`meta may not include key 'content' in route '${r.path}'`);
|
|
103
|
+
Object.assign(r, meta);
|
|
104
|
+
}
|
|
105
|
+
return {
|
|
106
|
+
meta(meta) {
|
|
107
|
+
if ('path' in meta) throw new TungstenError(`meta may not include key 'path' in route '${r.path}'`);
|
|
108
|
+
if ('data' in meta) throw new TungstenError(`meta may not include key 'data' in route '${r.path}'`);
|
|
109
|
+
if ('content' in meta) throw new TungstenError(`meta may not include key 'content' in route '${r.path}'`);
|
|
110
|
+
//Object.assign(r, meta)
|
|
111
|
+
const rm = {
|
|
112
|
+
...r,
|
|
113
|
+
...meta
|
|
114
|
+
}; // with generics TS will use an intersection not an overriding merge here.
|
|
115
|
+
// We use Omit manually to model the spread
|
|
116
|
+
return {
|
|
117
|
+
data(dataFunc) {
|
|
118
|
+
// const rmd = r as { path: P } & M & { // eslint-disable-line no-type-assertion/no-type-assertion
|
|
119
|
+
// data: RouteDataFunction<Params<P>, D>
|
|
120
|
+
// }
|
|
121
|
+
// rmd.data = dataFunc
|
|
122
|
+
const rmd = {
|
|
123
|
+
...rm,
|
|
124
|
+
data: dataFunc
|
|
125
|
+
};
|
|
126
|
+
return {
|
|
127
|
+
content(content) {
|
|
128
|
+
return {
|
|
129
|
+
...rmd,
|
|
130
|
+
content
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
},
|
|
135
|
+
content(content) {
|
|
136
|
+
return {
|
|
137
|
+
...rm,
|
|
138
|
+
content
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
},
|
|
143
|
+
data(dataFunc) {
|
|
144
|
+
// const rd = r as { // eslint-disable-line no-type-assertion/no-type-assertion
|
|
145
|
+
// path: P
|
|
146
|
+
// data: RouteDataFunction<ParamsFromPath<P>, D>
|
|
147
|
+
// }
|
|
148
|
+
// rd.data = dataFunc
|
|
149
|
+
const rd = {
|
|
150
|
+
...r,
|
|
151
|
+
data: dataFunc
|
|
152
|
+
};
|
|
153
|
+
return {
|
|
154
|
+
// NoInfer: C comes from the argument alone. Inferred from an expected result (the
|
|
155
|
+
// FluentRoute of routes' parameter) it would type the function's data as any
|
|
156
|
+
content(content) {
|
|
157
|
+
return {
|
|
158
|
+
...rd,
|
|
159
|
+
content
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
};
|
|
163
|
+
},
|
|
164
|
+
// does not accept a function by choice - but could be relaxed
|
|
165
|
+
content(content) {
|
|
166
|
+
// const rc = r as { path: P, content: C } // eslint-disable-line no-type-assertion/no-type-assertion
|
|
167
|
+
// rc.content = content
|
|
168
|
+
// return rc
|
|
169
|
+
return {
|
|
170
|
+
...r,
|
|
171
|
+
content
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
export function route(r) {
|
|
177
|
+
return r;
|
|
178
|
+
}
|
|
179
|
+
/// TODO
|
|
180
|
+
export function defaultRoute(r) {
|
|
181
|
+
return r;
|
|
182
|
+
}
|
|
183
|
+
export function _404Route(r) {
|
|
184
|
+
return r;
|
|
185
|
+
}
|
|
186
|
+
export function errorRoute(r) {
|
|
187
|
+
return r;
|
|
188
|
+
}
|
|
189
|
+
// function data<D>(dataFunc: () => Promise<D>) {
|
|
190
|
+
// const r: Partial<RouteType<any, any>> = {
|
|
191
|
+
// data: dataFunc
|
|
192
|
+
// }
|
|
193
|
+
// return {
|
|
194
|
+
// content(content: ContentNode) {
|
|
195
|
+
// r.content = content
|
|
196
|
+
// return {
|
|
197
|
+
// meta(meta: object) {
|
|
198
|
+
// }
|
|
199
|
+
// }
|
|
200
|
+
// }
|
|
201
|
+
// meta
|
|
202
|
+
// }
|
|
203
|
+
// }
|
|
204
|
+
// export const fluentRoutes = {
|
|
205
|
+
// '/': {
|
|
206
|
+
// name: 'Browse',
|
|
207
|
+
// content: <Browse />,
|
|
208
|
+
// },
|
|
209
|
+
// '404': {
|
|
210
|
+
// hidden: true,
|
|
211
|
+
// content: <NotFound />,
|
|
212
|
+
// },
|
|
213
|
+
// } as const satisfies Routes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder.trial.d.ts","sourceRoot":"","sources":["../../src/routing/builder.trial.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
2
|
+
import { routes, chainedRoute, route } from './builder.js';
|
|
3
|
+
import { jsx as _jsx } from "tungsten/jsx-runtime";
|
|
4
|
+
function Browse() {
|
|
5
|
+
return null;
|
|
6
|
+
}
|
|
7
|
+
function HandlerRepro() {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
function NotFound() {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const getLead = async data => ({
|
|
14
|
+
id: data.id,
|
|
15
|
+
name: 'bob'
|
|
16
|
+
});
|
|
17
|
+
function Dashboard(props) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
chainedRoute('/test/leads/:id<1+>').meta({
|
|
21
|
+
name: 'Lead'
|
|
22
|
+
}).data(({
|
|
23
|
+
id
|
|
24
|
+
}) => getLead({
|
|
25
|
+
id: Number(id)
|
|
26
|
+
})).content(data => _jsx(Dashboard, {
|
|
27
|
+
id: data.id
|
|
28
|
+
}));
|
|
29
|
+
routes(chainedRoute('/test/leads/:id<1+>').meta({
|
|
30
|
+
name: 'Lead'
|
|
31
|
+
}).data(({
|
|
32
|
+
id
|
|
33
|
+
}) => getLead({
|
|
34
|
+
id: Number(id)
|
|
35
|
+
})).content(data => _jsx(Dashboard, {
|
|
36
|
+
id: data.id
|
|
37
|
+
})));
|
|
38
|
+
route({
|
|
39
|
+
path: '/test/leads/:id<1+>',
|
|
40
|
+
name: 'Lead',
|
|
41
|
+
data: ({
|
|
42
|
+
id
|
|
43
|
+
}) => getLead({
|
|
44
|
+
id: Number(id)
|
|
45
|
+
}),
|
|
46
|
+
content: data => _jsx(Dashboard, {
|
|
47
|
+
id: data.id
|
|
48
|
+
})
|
|
49
|
+
});
|
|
50
|
+
const r = routes(chainedRoute('/').meta({
|
|
51
|
+
name: 'Browse'
|
|
52
|
+
}).content(_jsx(Browse, {})));
|
|
53
|
+
const rrrr1 = chainedRoute('/', {
|
|
54
|
+
name: 'Browse'
|
|
55
|
+
}).content(_jsx(Browse, {}));
|
|
56
|
+
// const rrrr2 = routeLegacy('/repro')
|
|
57
|
+
// .meta({
|
|
58
|
+
// name: 'Handler repro',
|
|
59
|
+
// hidden: true
|
|
60
|
+
// } as const)
|
|
61
|
+
// .data(() => Promise.resolve(5))
|
|
62
|
+
// .content(<HandlerRepro />)
|
|
63
|
+
const r2 = routes(chainedRoute('/', {
|
|
64
|
+
name: 'Browse'
|
|
65
|
+
}).content(_jsx(Browse, {})), chainedRoute('/repro', {
|
|
66
|
+
name: 'Handler repro',
|
|
67
|
+
hidden: true
|
|
68
|
+
}).content(_jsx(HandlerRepro, {})), chainedRoute('404', {
|
|
69
|
+
hidden: true
|
|
70
|
+
}).content(_jsx(NotFound, {})));
|
|
71
|
+
// export const routes = {
|
|
72
|
+
// '/': {
|
|
73
|
+
// name: 'Browse',
|
|
74
|
+
// content: <Browse />,
|
|
75
|
+
// },
|
|
76
|
+
// '/repro': {
|
|
77
|
+
// name: 'Handler repro',
|
|
78
|
+
// hidden: true,
|
|
79
|
+
// content: <HandlerRepro />,
|
|
80
|
+
// },
|
|
81
|
+
// '404': {
|
|
82
|
+
// hidden: true,
|
|
83
|
+
// content: <NotFound />,
|
|
84
|
+
// },
|
|
85
|
+
// } as const satisfies Routes
|