@absolutejs/absolute 0.19.0-beta.999 → 0.20.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -13
- package/README.md +48 -2
- package/dist/angular/browser.js +82 -77
- package/dist/angular/browser.js.map +11 -11
- package/dist/angular/components/constants.js +43 -0
- package/dist/angular/components/core/streamingSlotRegistrar.js +1 -1
- package/dist/angular/components/core/streamingSlotRegistry.js +2 -2
- package/dist/angular/hmrPreserveCore.ts +132 -134
- package/dist/angular/index.js +1719 -844
- package/dist/angular/index.js.map +34 -26
- package/dist/angular/server.js +1620 -768
- package/dist/angular/server.js.map +28 -20
- package/dist/build.js +4935 -2593
- package/dist/build.js.map +72 -57
- package/dist/cli/config/client.js +578 -0
- package/dist/cli/config/server.js +39587 -0
- package/dist/cli/htmx/htmx.min.js +1 -0
- package/dist/cli/index.js +16828 -3511
- package/dist/client/index.js +49 -46
- package/dist/client/index.js.map +12 -12
- package/dist/core/streamingSlotRegistrar.js +1 -19
- package/dist/core/streamingSlotRegistrar.js.map +2 -2
- package/dist/core/streamingSlotRegistry.js +1 -19
- package/dist/core/streamingSlotRegistry.js.map +2 -2
- package/dist/dev/client/cssUtils.ts +98 -41
- package/dist/dev/client/domState.ts +2 -0
- package/dist/dev/client/errorOverlay.ts +14 -13
- package/dist/dev/client/handlers/angularHmrShim.ts +20 -20
- package/dist/dev/client/handlers/angularRemount.ts +74 -55
- package/dist/dev/client/handlers/angularRemountWiring.ts +1 -2
- package/dist/dev/client/handlers/html.ts +144 -41
- package/dist/dev/client/handlers/htmx.ts +43 -8
- package/dist/dev/client/handlers/react.ts +114 -32
- package/dist/dev/client/handlers/rebuild.ts +28 -8
- package/dist/dev/client/handlers/svelte.ts +92 -51
- package/dist/dev/client/handlers/vue.ts +36 -45
- package/dist/dev/client/hmrClient.ts +101 -26
- package/dist/dev/client/hmrTiming.ts +141 -0
- package/dist/dev/client/hmrToast.ts +22 -24
- package/dist/dev/client/reactRefreshSetup.ts +4 -0
- package/dist/dev/client/vendor/reactRefreshRuntime.d.ts +12 -0
- package/dist/dev/client/vendor/reactRefreshRuntime.js +313 -0
- package/dist/dev/serverBootstrap.js +45 -0
- package/dist/index.js +7153 -3224
- package/dist/index.js.map +118 -86
- package/dist/islands/browser.js +1 -19
- package/dist/islands/browser.js.map +3 -3
- package/dist/islands/index.js +709 -120
- package/dist/islands/index.js.map +18 -13
- package/dist/mobile/browser.js +428 -0
- package/dist/mobile/browser.js.map +12 -0
- package/dist/mobile/index.js +3058 -0
- package/dist/mobile/index.js.map +35 -0
- package/dist/react/browser.js +13 -62
- package/dist/react/browser.js.map +5 -6
- package/dist/react/components/browser/index.js +23 -13
- package/dist/react/components/index.js +30 -34
- package/dist/react/components/index.js.map +8 -7
- package/dist/react/hooks/index.js +1 -19
- package/dist/react/hooks/index.js.map +3 -3
- package/dist/react/index.js +1643 -679
- package/dist/react/index.js.map +29 -20
- package/dist/react/jsxDevRuntimeCompat.js +22 -20
- package/dist/react/jsxDevRuntimeCompat.js.map +5 -4
- package/dist/react/jsxRuntimeCompat.js +90 -0
- package/dist/react/jsxRuntimeCompat.js.map +10 -0
- package/dist/react/router/browser.js +77 -0
- package/dist/react/router/browser.js.map +10 -0
- package/dist/react/router/index.js +77 -0
- package/dist/react/router/index.js.map +10 -0
- package/dist/react/server.js +950 -565
- package/dist/react/server.js.map +16 -11
- package/dist/src/angular/components/constants.d.ts +21 -0
- package/dist/src/angular/hmrPreserveCore.d.ts +7 -20
- package/dist/src/angular/islands.d.ts +1 -1
- package/dist/src/angular/pageHandler.d.ts +2 -0
- package/dist/src/angular/ssrRender.d.ts +4 -1
- package/dist/src/build/bunStringRawUnicodePlugin.d.ts +12 -0
- package/dist/src/build/chainInlineSourcemaps.d.ts +1 -0
- package/dist/src/build/compileAngular.d.ts +5 -7
- package/dist/src/build/compileSvelte.d.ts +3 -0
- package/dist/src/build/compileVue.d.ts +3 -1
- package/dist/src/build/generateReactIndexes.d.ts +1 -0
- package/dist/src/build/islandRegistryTransform.d.ts +17 -0
- package/dist/src/build/maskLiterals.d.ts +28 -0
- package/dist/src/build/parseVueSpaRoutes.d.ts +5 -0
- package/dist/src/build/resolveBuildMode.d.ts +7 -0
- package/dist/src/build/serverExternals.d.ts +14 -0
- package/dist/src/build/spaSideManifests.d.ts +16 -0
- package/dist/src/build/tailwindCompiler.d.ts +0 -1
- package/dist/src/cli/add/dependencies.d.ts +13 -0
- package/dist/src/cli/config/absolute/AbsoluteConfigPanel.d.ts +6 -0
- package/dist/src/cli/config/absolute/editAbsoluteConfig.d.ts +5 -0
- package/dist/src/cli/config/absolute/resolveAbsoluteConfig.d.ts +19 -0
- package/dist/src/cli/config/auth/AuthPanel.d.ts +6 -0
- package/dist/src/cli/config/auth/authCatalog.d.ts +10 -0
- package/dist/src/cli/config/auth/authScaffolds.d.ts +16 -0
- package/dist/src/cli/config/auth/editAuthConfig.d.ts +5 -0
- package/dist/src/cli/config/auth/resolveAuthSettings.d.ts +14 -0
- package/dist/src/cli/config/auth/resolveAuthState.d.ts +2 -0
- package/dist/src/cli/config/auth/scaffoldAuthFeature.d.ts +6 -0
- package/dist/src/cli/config/client.d.ts +1 -0
- package/dist/src/cli/config/configCert.d.ts +12 -0
- package/dist/src/cli/config/eslint/EslintPanel.d.ts +6 -0
- package/dist/src/cli/config/eslint/configAst.d.ts +18 -0
- package/dist/src/cli/config/eslint/editConfigRule.d.ts +6 -0
- package/dist/src/cli/config/eslint/eslintStyles.d.ts +1 -0
- package/dist/src/cli/config/eslint/resolveConfig.d.ts +3 -0
- package/dist/src/cli/config/eslint/serializeValue.d.ts +9 -0
- package/dist/src/cli/config/guards.d.ts +4 -0
- package/dist/src/cli/config/integrations/IntegrationsPanel.d.ts +6 -0
- package/dist/src/cli/config/packageJson/PackageJsonPanel.d.ts +6 -0
- package/dist/src/cli/config/packageJson/editPackageJson.d.ts +9 -0
- package/dist/src/cli/config/packageJson/resolvePackageJson.d.ts +8 -0
- package/dist/src/cli/config/page/ConfigShell.d.ts +6 -0
- package/dist/src/cli/config/page/FieldEditor.d.ts +9 -0
- package/dist/src/cli/config/page/PanelHost.d.ts +6 -0
- package/dist/src/cli/config/page/configStyles.d.ts +1 -0
- package/dist/src/cli/config/panels.d.ts +7 -0
- package/dist/src/cli/config/prettier/PrettierPanel.d.ts +6 -0
- package/dist/src/cli/config/prettier/editPrettier.d.ts +5 -0
- package/dist/src/cli/config/prettier/resolvePrettier.d.ts +11 -0
- package/dist/src/cli/config/schema/fromJsonSchema.d.ts +3 -0
- package/dist/src/cli/config/schema/fromType.d.ts +1 -0
- package/dist/src/cli/config/schema/serialize.d.ts +1 -0
- package/dist/src/cli/config/server.d.ts +527 -0
- package/dist/src/cli/config/tsconfig/TsconfigPanel.d.ts +6 -0
- package/dist/src/cli/config/tsconfig/editTsconfig.d.ts +5 -0
- package/dist/src/cli/config/tsconfig/resolveTsconfig.d.ts +8 -0
- package/dist/src/cli/config/tsconfig/tsconfigStyles.d.ts +1 -0
- package/dist/src/cli/discoverInstances.d.ts +5 -0
- package/dist/src/cli/elysiaOpenApiTypeboxPlugin.d.ts +8 -0
- package/dist/src/cli/generate/componentTemplates.d.ts +7 -0
- package/dist/src/cli/generate/context.d.ts +30 -0
- package/dist/src/cli/generate/cssStrategy.d.ts +20 -0
- package/dist/src/cli/generate/frameworkKey.d.ts +3 -0
- package/dist/src/cli/generate/frameworks.d.ts +40 -0
- package/dist/src/cli/generate/generateApi.d.ts +3 -0
- package/dist/src/cli/generate/generateComponent.d.ts +4 -0
- package/dist/src/cli/generate/generatePage.d.ts +4 -0
- package/dist/src/cli/generate/naming.d.ts +5 -0
- package/dist/src/cli/generate/navData.d.ts +10 -0
- package/dist/src/cli/generate/outcome.d.ts +17 -0
- package/dist/src/cli/generate/pageTemplates.d.ts +11 -0
- package/dist/src/cli/generate/routeWiring.d.ts +40 -0
- package/dist/src/cli/generate/staticNav.d.ts +5 -0
- package/dist/src/cli/heapDiff.d.ts +1 -0
- package/dist/src/cli/htmx/install.d.ts +6 -0
- package/dist/src/cli/inspectData.d.ts +12 -0
- package/dist/src/cli/inspectTui.d.ts +1 -0
- package/dist/src/cli/instanceStatus.d.ts +22 -0
- package/dist/src/cli/integrations/addPlugin.d.ts +8 -0
- package/dist/src/cli/integrations/catalog.d.ts +20 -0
- package/dist/src/cli/psTui.d.ts +1 -0
- package/dist/src/cli/scripts/add.d.ts +1 -0
- package/dist/src/cli/scripts/analyze.d.ts +1 -0
- package/dist/src/cli/scripts/api.d.ts +1 -0
- package/dist/src/cli/scripts/build.d.ts +1 -1
- package/dist/src/cli/scripts/db.d.ts +20 -0
- package/dist/src/cli/scripts/dev.d.ts +5 -1
- package/dist/src/cli/scripts/doctor.d.ts +1 -0
- package/dist/src/cli/scripts/env.d.ts +7 -0
- package/dist/src/cli/scripts/eslint.d.ts +37 -2
- package/dist/src/cli/scripts/eslintChunked.d.ts +37 -0
- package/dist/src/cli/scripts/generate.d.ts +1 -0
- package/dist/src/cli/scripts/htmx.d.ts +1 -0
- package/dist/src/cli/scripts/inspect.d.ts +1 -0
- package/dist/src/cli/scripts/islands.d.ts +1 -0
- package/dist/src/cli/scripts/lintProof.d.ts +42 -0
- package/dist/src/cli/scripts/logs.d.ts +1 -0
- package/dist/src/cli/scripts/ls.d.ts +1 -0
- package/dist/src/cli/scripts/mem.d.ts +1 -0
- package/dist/src/cli/scripts/mobile.d.ts +1 -0
- package/dist/src/cli/scripts/prettier.d.ts +2 -0
- package/dist/src/cli/scripts/ps.d.ts +1 -0
- package/dist/src/cli/scripts/remove.d.ts +1 -0
- package/dist/src/cli/scripts/routes.d.ts +1 -0
- package/dist/src/cli/scripts/start.d.ts +6 -1
- package/dist/src/cli/scripts/tunnelRelay.d.ts +9 -0
- package/dist/src/cli/scripts/workspace.d.ts +3 -1
- package/dist/src/cli/serverBundleExternals.d.ts +2 -0
- package/dist/src/cli/tuiPrimitives.d.ts +14 -0
- package/dist/src/cli/typeGraphCoherence.d.ts +32 -0
- package/dist/src/cli/utils.d.ts +3 -1
- package/dist/src/cli/workspaceTui.d.ts +2 -1
- package/dist/src/client/hydrators/react.d.ts +1 -1
- package/dist/src/client/hydrators/svelte.d.ts +1 -1
- package/dist/src/client/hydrators/vue.d.ts +1 -1
- package/dist/src/client/islandStore.d.ts +3 -3
- package/dist/src/client/preserveIslandMarkup.d.ts +4 -1
- package/dist/src/constants.d.ts +21 -0
- package/dist/src/core/angularServerModule.d.ts +1 -0
- package/dist/src/core/build.d.ts +11 -3
- package/dist/src/core/devRouteRegistrationCallsite.d.ts +1 -5
- package/dist/src/core/index.d.ts +1 -0
- package/dist/src/core/pageResponseCache.d.ts +23 -0
- package/dist/src/core/prepare.d.ts +192 -154
- package/dist/src/core/requestContext.d.ts +18 -0
- package/dist/src/dev/angular/fastHmrCompiler.d.ts +5 -3
- package/dist/src/dev/angular/hmrCompiler.d.ts +1 -1
- package/dist/src/dev/angular/resolveOwningComponents.d.ts +1 -1
- package/dist/src/dev/clientManager.d.ts +10 -1
- package/dist/src/dev/configResolver.d.ts +2 -0
- package/dist/src/dev/moduleMapper.d.ts +1 -1
- package/dist/src/dev/moduleServer.d.ts +2 -1
- package/dist/src/dev/pathUtils.d.ts +1 -1
- package/dist/src/dev/reactComponentClassifier.d.ts +1 -1
- package/dist/src/dev/rebuildTrigger.d.ts +4 -0
- package/dist/src/dev/requestInspector.d.ts +31 -0
- package/dist/src/dev/serverBootstrap.d.ts +1 -0
- package/dist/src/dev/serverEntryWatcher.d.ts +3 -3
- package/dist/src/dev/tunnel/client.d.ts +20 -0
- package/dist/src/dev/tunnel/protocol.d.ts +85 -0
- package/dist/src/dev/tunnel/relay.d.ts +28 -0
- package/dist/src/dev/webSocket.d.ts +1 -1
- package/dist/src/mobile/androidConformance.d.ts +42 -0
- package/dist/src/mobile/androidEmulatorController.d.ts +99 -0
- package/dist/src/mobile/androidNativeWatcher.d.ts +19 -0
- package/dist/src/mobile/androidRelease.d.ts +47 -0
- package/dist/src/mobile/androidWebView.d.ts +46 -0
- package/dist/src/mobile/artifactStore.d.ts +47 -0
- package/dist/src/mobile/associationFiles.d.ts +49 -0
- package/dist/src/mobile/browser.d.ts +2 -0
- package/dist/src/mobile/buildMetadata.d.ts +10 -0
- package/dist/src/mobile/buildPipeline.d.ts +8 -0
- package/dist/src/mobile/buildRelease.d.ts +24 -0
- package/dist/src/mobile/capacitorBundle.d.ts +28 -0
- package/dist/src/mobile/capacitorProject.d.ts +9 -0
- package/dist/src/mobile/client.d.ts +35 -0
- package/dist/src/mobile/compatibilityDispatcher.d.ts +26 -0
- package/dist/src/mobile/config.d.ts +16 -0
- package/dist/src/mobile/emulatorDoctor.d.ts +25 -0
- package/dist/src/mobile/emulatorInstaller.d.ts +41 -0
- package/dist/src/mobile/index.d.ts +19 -0
- package/dist/src/mobile/materializedBundle.d.ts +36 -0
- package/dist/src/mobile/nativeDeepLinks.d.ts +5 -0
- package/dist/src/mobile/pageProtocol.d.ts +89 -0
- package/dist/src/mobile/producerContext.d.ts +4 -0
- package/dist/src/mobile/producerContextState.d.ts +10 -0
- package/dist/src/mobile/releaseArtifact.d.ts +75 -0
- package/dist/src/mobile/releaseDoctor.d.ts +13 -0
- package/dist/src/mobile/routeMatcher.d.ts +3 -0
- package/dist/src/mobile/routeMetadataTransform.d.ts +13 -0
- package/dist/src/mobile/shellBootstrap.d.ts +1 -0
- package/dist/src/mobile/transport.d.ts +31 -0
- package/dist/src/plugins/devtoolsJson.d.ts +6 -47
- package/dist/src/plugins/hmr.d.ts +22 -96
- package/dist/src/plugins/imageOptimizer.d.ts +150 -62
- package/dist/src/plugins/networking.d.ts +2 -2
- package/dist/src/plugins/openApiPlugin.d.ts +4 -0
- package/dist/src/plugins/telemetryPlugin.d.ts +36 -0
- package/dist/src/react/browser.d.ts +0 -2
- package/dist/src/react/hooks/useMediaQuery.d.ts +1 -1
- package/dist/src/react/index.d.ts +0 -2
- package/dist/src/react/jsxDevRuntimeCompat.d.ts +1 -1
- package/dist/src/react/jsxRuntimeCompat.d.ts +7 -0
- package/dist/src/react/pageHandler.d.ts +8 -0
- package/dist/src/react/router/UniversalRouter.d.ts +43 -0
- package/dist/src/react/router/browser.d.ts +2 -0
- package/dist/src/react/router/index.d.ts +2 -0
- package/dist/src/svelte/pageHandler.d.ts +5 -0
- package/dist/src/svelte/router/hashMode.d.ts +1 -6
- package/dist/src/svelte/router/matchPath.d.ts +4 -24
- package/dist/src/svelte/router/page.svelte.d.ts +1 -10
- package/dist/src/svelte/router/prefetchCache.d.ts +2 -6
- package/dist/src/utils/cleanup.d.ts +1 -0
- package/dist/src/utils/defineConvention.d.ts +2 -2
- package/dist/src/utils/defineEnv.d.ts +4 -4
- package/dist/src/utils/formatBytes.d.ts +2 -0
- package/dist/src/utils/generatedDir.d.ts +1 -1
- package/dist/src/utils/iconVersion.d.ts +5 -0
- package/dist/src/utils/imageProcessing.d.ts +1 -1
- package/dist/src/utils/index.d.ts +2 -0
- package/dist/src/utils/inlinePageCss.d.ts +9 -0
- package/dist/src/utils/instanceRegistry.d.ts +13 -0
- package/dist/src/utils/isTestSourcePath.d.ts +1 -0
- package/dist/src/utils/jsonLd.d.ts +1 -1
- package/dist/src/utils/loadConfig.d.ts +11 -3
- package/dist/src/utils/logger.d.ts +2 -0
- package/dist/src/utils/portScan.d.ts +22 -0
- package/dist/src/utils/projectRoot.d.ts +17 -0
- package/dist/src/utils/resolveConvention.d.ts +1 -1
- package/dist/src/utils/resolveDevPort.d.ts +4 -1
- package/dist/src/utils/runtimeMode.d.ts +1 -1
- package/dist/src/utils/spaRouteCss.d.ts +10 -0
- package/dist/src/utils/spaRouteManifest.d.ts +8 -0
- package/dist/src/utils/stripStringsAndComments.d.ts +18 -0
- package/dist/src/utils/userAgentFunctions.d.ts +1 -1
- package/dist/src/utils/vueCompiler.d.ts +1 -0
- package/dist/src/vue/components/Image.d.ts +2 -2
- package/dist/src/vue/defineVuePage.d.ts +1 -11
- package/dist/src/vue/index.d.ts +3 -0
- package/dist/src/vue/pageHandler.d.ts +5 -0
- package/dist/src/vue/resolveGeneratedVueModulePath.d.ts +1 -0
- package/dist/src/vue/teleports.d.ts +2 -0
- package/dist/src/vue/useResource.d.ts +65 -0
- package/dist/svelte/browser.js +1 -19
- package/dist/svelte/browser.js.map +3 -3
- package/dist/svelte/components/Head.svelte +7 -1
- package/dist/svelte/index.js +1281 -543
- package/dist/svelte/index.js.map +27 -19
- package/dist/svelte/router/Link.svelte.d.ts +3 -3
- package/dist/svelte/router/Route.svelte.d.ts +5 -5
- package/dist/svelte/router/Router.svelte.d.ts +3 -3
- package/dist/svelte/router/hashMode.ts +6 -12
- package/dist/svelte/router/matchPath.ts +44 -61
- package/dist/svelte/router/page.d.ts +1 -10
- package/dist/svelte/router/page.js +6 -6
- package/dist/svelte/router/prefetchCache.ts +21 -23
- package/dist/svelte/router/viewTransitions.ts +22 -12
- package/dist/svelte/server.js +697 -565
- package/dist/svelte/server.js.map +14 -11
- package/dist/types/absoluteConfig.d.ts +22 -0
- package/dist/types/angular.d.ts +4 -1
- package/dist/types/authPanel.d.ts +62 -0
- package/dist/types/build.d.ts +116 -0
- package/dist/types/cli.d.ts +57 -0
- package/dist/types/config.d.ts +52 -0
- package/dist/types/eslintConfig.d.ts +68 -0
- package/dist/types/globals.d.ts +31 -10
- package/dist/types/image.d.ts +2 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/integrationsPanel.d.ts +29 -0
- package/dist/types/messages.d.ts +12 -0
- package/dist/types/packageJson.d.ts +74 -0
- package/dist/types/packageJsonPanel.d.ts +29 -0
- package/dist/types/prettier.d.ts +26 -0
- package/dist/types/tsconfig.d.ts +31 -0
- package/dist/types/vue.d.ts +13 -15
- package/dist/vue/browser.js +14 -36
- package/dist/vue/browser.js.map +5 -5
- package/dist/vue/components/Image.js +3 -20
- package/dist/vue/components/Image.js.map +3 -3
- package/dist/vue/components/index.js +3 -20
- package/dist/vue/components/index.js.map +3 -3
- package/dist/vue/index.js +1573 -620
- package/dist/vue/index.js.map +34 -22
- package/dist/vue/server.js +800 -520
- package/dist/vue/server.js.map +17 -11
- package/package.json +145 -68
- package/dist/src/react/UniversalRouter.d.ts +0 -12
package/LICENSE
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
**Licensor:** Alex Kahn
|
|
4
4
|
|
|
5
|
-
**Licensed Work:**
|
|
5
|
+
**Licensed Work:** @absolutejs/absolutejs (https://github.com/absolutejs/absolutejs)
|
|
6
6
|
|
|
7
|
-
**Change Date:**
|
|
7
|
+
**Change Date:** May 29, 2030
|
|
8
8
|
|
|
9
9
|
**Change License:** Apache License, Version 2.0
|
|
10
10
|
|
|
@@ -22,15 +22,14 @@ You may use the Licensed Work in production, provided your use does not include
|
|
|
22
22
|
any of the following:
|
|
23
23
|
|
|
24
24
|
1. **Offering a Competing Service.** You may not offer the Licensed Work, or
|
|
25
|
-
any derivative of it, to third parties as a hosted or
|
|
26
|
-
competes with
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
provided to users).
|
|
25
|
+
any derivative or substantial portion of it, to third parties as a hosted or
|
|
26
|
+
managed service that competes with a managed AbsoluteJS hosting, deployment, or framework-as-a-service platform (including, but not limited to, services like Vercel, Render, Netlify, Fly.io, or Railway). This includes any
|
|
27
|
+
product whose primary value to its users is the functionality the Licensed
|
|
28
|
+
Work provides.
|
|
30
29
|
|
|
31
30
|
2. **Resale or Redistribution as a Standalone Product.** You may not sell,
|
|
32
31
|
license, or distribute the Licensed Work, or any derivative or fork of it,
|
|
33
|
-
as a standalone commercial product
|
|
32
|
+
as a standalone commercial product.
|
|
34
33
|
|
|
35
34
|
3. **Removal of Attribution.** Any derivative work, fork, or redistribution of
|
|
36
35
|
the Licensed Work must prominently credit AbsoluteJS and include a link to
|
|
@@ -38,12 +37,14 @@ any of the following:
|
|
|
38
37
|
|
|
39
38
|
For clarity, the following uses are expressly permitted:
|
|
40
39
|
|
|
41
|
-
- Using
|
|
42
|
-
SaaS products (whether commercial or non-commercial)
|
|
43
|
-
|
|
44
|
-
|
|
40
|
+
- Using the Licensed Work to build and operate your own applications, websites,
|
|
41
|
+
internal tools, or SaaS products (whether commercial or non-commercial), so
|
|
42
|
+
long as the Licensed Work itself is not the primary product you are selling.
|
|
43
|
+
- Using the Licensed Work as a dependency in commercial software you build and
|
|
44
|
+
sell, as long as the software is not itself a competing managed service of
|
|
45
|
+
the kind described in clause 1.
|
|
45
46
|
- Providing consulting, development, or professional services to clients using
|
|
46
|
-
|
|
47
|
+
the Licensed Work.
|
|
47
48
|
- Forking and modifying the Licensed Work for your own internal use, provided
|
|
48
49
|
attribution is maintained.
|
|
49
50
|
|
|
@@ -54,6 +55,13 @@ specify by written notice, the Licensed Work will be made available under the
|
|
|
54
55
|
Change License (Apache License, Version 2.0). Until the Change Date, the terms
|
|
55
56
|
of this Business Source License 1.1 apply.
|
|
56
57
|
|
|
58
|
+
### Trademark
|
|
59
|
+
|
|
60
|
+
This license does not grant you any rights to use the "AbsoluteJS" or
|
|
61
|
+
"@absolutejs" name, logo, or any related trademarks. Forks and derivative works
|
|
62
|
+
must not be named or branded in a manner that suggests endorsement by or
|
|
63
|
+
affiliation with AbsoluteJS or the Licensor.
|
|
64
|
+
|
|
57
65
|
### Notices
|
|
58
66
|
|
|
59
67
|
You must not remove or obscure any licensing, copyright, or other notices
|
package/README.md
CHANGED
|
@@ -39,7 +39,7 @@ bun add @absolutejs/absolute
|
|
|
39
39
|
|
|
40
40
|
```ts
|
|
41
41
|
// example/server.ts
|
|
42
|
-
import { staticPlugin } from '@
|
|
42
|
+
import { staticPlugin } from '@elysia/static';
|
|
43
43
|
import { Elysia } from 'elysia';
|
|
44
44
|
import { file } from 'bun';
|
|
45
45
|
import { build } from 'absolutejs/core/build';
|
|
@@ -59,7 +59,7 @@ const manifest = await build({
|
|
|
59
59
|
htmlDirectory: 'example/html',
|
|
60
60
|
htmxDirectory: 'example/htmx',
|
|
61
61
|
reactDirectory: 'example/react',
|
|
62
|
-
svelteDirectory: 'example/svelte'
|
|
62
|
+
svelteDirectory: 'example/svelte'
|
|
63
63
|
});
|
|
64
64
|
|
|
65
65
|
if (!manifest) throw new Error('Manifest generation failed');
|
|
@@ -105,6 +105,26 @@ export const server = new Elysia()
|
|
|
105
105
|
2. Route handlers (`handleReactPageRequest`, `handleSveltePageRequest`, …) stream HTML and inject scripts/assets based on that manifest.
|
|
106
106
|
3. The static plugin serves all compiled files from `/build`.
|
|
107
107
|
|
|
108
|
+
### Immutable production images
|
|
109
|
+
|
|
110
|
+
Build production assets and the server bundle while constructing the image,
|
|
111
|
+
then launch that prepared output without writing to it at runtime:
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
absolute prepare src/server.ts --outdir build
|
|
115
|
+
absolute start src/server.ts --outdir build --prebuilt
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
If image optimization is enabled in a read-only container, configure its
|
|
119
|
+
runtime cache on a bounded writable filesystem such as a `tmpfs`:
|
|
120
|
+
|
|
121
|
+
```ts
|
|
122
|
+
export default defineConfig({
|
|
123
|
+
buildDirectory: 'build',
|
|
124
|
+
images: { cacheDirectory: '/tmp/absolutejs-image-cache' }
|
|
125
|
+
});
|
|
126
|
+
```
|
|
127
|
+
|
|
108
128
|
---
|
|
109
129
|
|
|
110
130
|
## Plugin System
|
|
@@ -116,6 +136,32 @@ Absolute JS piggybacks on the [Elysia plugin API](https://elysiajs.com/plugins).
|
|
|
116
136
|
| **`absolute-auth`** | Full OAuth2 flow configured with 66 providers and allows full customizability with event handlers |
|
|
117
137
|
| **`networkingPlugin`** | Starts your Elysia server with HOST/PORT defaults from environment variables |
|
|
118
138
|
|
|
139
|
+
### Elysia composition contract
|
|
140
|
+
|
|
141
|
+
This contract is written for application authors and coding agents. It avoids
|
|
142
|
+
the runaway TypeScript instantiation cost that can occur when one inferred
|
|
143
|
+
Elysia application is repeatedly extended and re-aliased.
|
|
144
|
+
|
|
145
|
+
- Start every independently owned route surface from a named `new Elysia(...)`.
|
|
146
|
+
- Give each surface its shared context and plugins explicitly. Do not create
|
|
147
|
+
`adminApp` by extending `publicApp`, for example.
|
|
148
|
+
- Prefer one shallow `.use([auth, metrics])` over a long sequence of `.use()`
|
|
149
|
+
calls. `absolute/elysia-composition-boundaries` enforces this and safely
|
|
150
|
+
auto-fixes comment-free chains.
|
|
151
|
+
- Mount independent route surfaces at the platform root. Export each real
|
|
152
|
+
sub-application type for Eden consumers instead of exporting an accumulated
|
|
153
|
+
server alias.
|
|
154
|
+
- Keep `elysia` and `@sinclair/typebox` on one physical installed identity
|
|
155
|
+
across the workspace. Run `absolute doctor`; `absolute doctor --fix` aligns
|
|
156
|
+
root overrides and rebuilds Bun's dependency graph when peer contexts drift.
|
|
157
|
+
|
|
158
|
+
After a dependency change, measure a cold typecheck once. Warm incremental
|
|
159
|
+
checks can hide an unhealthy graph:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
/usr/bin/time -v bun run tsc --noEmit --incremental false
|
|
163
|
+
```
|
|
164
|
+
|
|
119
165
|
---
|
|
120
166
|
|
|
121
167
|
## Configuration Philosophy
|
package/dist/angular/browser.js
CHANGED
|
@@ -3,7 +3,6 @@ var __create = Object.create;
|
|
|
3
3
|
var __getProtoOf = Object.getPrototypeOf;
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
7
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
7
|
function __accessProp(key) {
|
|
9
8
|
return this[key];
|
|
@@ -30,23 +29,6 @@ var __toESM = (mod, isNodeMode, target) => {
|
|
|
30
29
|
cache.set(mod, to);
|
|
31
30
|
return to;
|
|
32
31
|
};
|
|
33
|
-
var __toCommonJS = (from) => {
|
|
34
|
-
var entry = (__moduleCache ??= new WeakMap).get(from), desc;
|
|
35
|
-
if (entry)
|
|
36
|
-
return entry;
|
|
37
|
-
entry = __defProp({}, "__esModule", { value: true });
|
|
38
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
39
|
-
for (var key of __getOwnPropNames(from))
|
|
40
|
-
if (!__hasOwnProp.call(entry, key))
|
|
41
|
-
__defProp(entry, key, {
|
|
42
|
-
get: __accessProp.bind(from, key),
|
|
43
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
__moduleCache.set(from, entry);
|
|
47
|
-
return entry;
|
|
48
|
-
};
|
|
49
|
-
var __moduleCache;
|
|
50
32
|
var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
|
|
51
33
|
var __returnValue = (v) => v;
|
|
52
34
|
function __exportSetter(name, newValue) {
|
|
@@ -9095,8 +9077,9 @@ var require_cjs = __commonJS((exports) => {
|
|
|
9095
9077
|
});
|
|
9096
9078
|
|
|
9097
9079
|
// src/constants.ts
|
|
9098
|
-
var ANGULAR_INIT_TIMEOUT_MS = 500, ANSI_ESCAPE_CODE = 27, ANSI_ESCAPE_LENGTH = 3, ASCII_SPACE = 32, BASE_36_RADIX = 36, BUN_BUILD_WARNING_SUPPRESSION = "wildcard sideEffects are not supported yet", BODY_SLICE_LENGTH = 2000, BYTES_PER_KILOBYTE = 1024, CLI_ARGS_OFFSET = 3, CSS_ERROR_RESOLVE_DELAY_MS = 50, CSS_MAX_CHECK_ATTEMPTS = 10, CSS_MAX_PARSE_TIMEOUT_MS = 500, CSS_SHEET_READY_TIMEOUT_MS = 100, DEFAULT_CHUNK_SIZE = 16384, DEFAULT_DEBOUNCE_MS = 15, DEFAULT_PORT = 3000, DEV_SERVER_RESTART_DEBOUNCE_MS = 100, DOM_UPDATE_DELAY_MS = 50, FILE_PROTOCOL_PREFIX_LENGTH = 7, FOCUS_ID_PREFIX_LENGTH = 3, FOCUS_IDX_PREFIX_LENGTH = 4, FOCUS_NAME_PREFIX_LENGTH = 5, HMR_UPDATE_TIMEOUT_MS = 2000, HOOK_SIGNATURE_LENGTH = 12, EXCLUDE_LAST_OFFSET = -1, HTTP_STATUS_OK = 200, HTTP_STATUS_BAD_REQUEST = 400, HTTP_STATUS_NOT_FOUND = 404, HOURS_IN_DAY = 24, HOURS_IN_HALF_DAY = 12, IMAGE_DEFAULT_DEVICE_SIZES, IMAGE_DEFAULT_IMAGE_SIZES, IMAGE_DEFAULT_QUALITY = 75, IMAGE_GLOB_SUFFIX_LENGTH = 2, MAX_ERROR_LENGTH = 200, MAX_RECONNECT_ATTEMPTS = 60, MILLISECONDS_IN_A_SECOND = 1000, MINUTES_IN_AN_HOUR = 60, SECONDS_IN_A_MINUTE = 60, MILLISECONDS_IN_A_MINUTE, MILLISECONDS_IN_A_DAY, OVERLAY_FADE_DURATION_MS = 150, PING_INTERVAL_MS = 30000, RAF_BATCH_COUNT = 3, RANDOM_ID_END_INDEX = 11, REBUILD_BATCH_DELAY_MS = 10, REBUILD_RELOAD_DELAY_MS = 200, RECONNECT_INITIAL_DELAY_MS = 500, RECONNECT_POLL_INTERVAL_MS = 300, REACT_STREAM_SLOT_FAST_DELAY_MS = 5, REACT_STREAM_SLOT_SLOW_DELAY_MS = 20, SIGINT_EXIT_CODE = 130, SIGTERM_EXIT_CODE = 143, SVELTE_CSS_LOAD_TIMEOUT_MS = 500, TIME_PRECISION = 2, TWO_THIRDS, UNFOUND_INDEX = -1, WEBSOCKET_NORMAL_CLOSURE = 1000, WORKSPACE_COMMAND_ARGS_OFFSET = 3, WORKSPACE_FAILURE_LOG_PRINT_LIMIT = 30, WORKSPACE_FAILURE_RECENT_LOG_LIMIT = 60, WORKSPACE_READY_ATTEMPT_TIMEOUT_MS = 5000, WORKSPACE_READY_PROBE_INTERVAL_MS = 250, WORKSPACE_READY_TIMEOUT_MS = 30000, WORKSPACE_SHUTDOWN_TIMEOUT_MS = 1e4, WORKSPACE_TUI_DEFAULT_HEIGHT = 28, WORKSPACE_TUI_DEFAULT_WIDTH = 100, WORKSPACE_TUI_ESCAPE_SEQUENCE_TIMEOUT_MS = 30, WORKSPACE_TUI_FOOTER_LINE_COUNT = 3, WORKSPACE_TUI_MIN_LOG_HEIGHT = 3, WORKSPACE_TUI_MIN_SERVICE_NAME_WIDTH = 7, WORKSPACE_TUI_MIN_TARGET_WIDTH = 8, WORKSPACE_TUI_MIN_WRAP_WIDTH = 12, WORKSPACE_TUI_PROMPT_CURSOR_OFFSET = 3, WORKSPACE_TUI_RECENT_LOG_LIMIT = 40, WORKSPACE_TUI_RENDER_DEBOUNCE_MS = 16, WORKSPACE_TUI_STATUS_WIDTH = 10, WORKSPACE_TUI_TARGET_PADDING_WIDTH = 6, WORKSPACE_TUI_VISIBILITY_WIDTH = 8;
|
|
9080
|
+
var ANGULAR_INIT_TIMEOUT_MS = 500, ANSI_ESCAPE_CODE = 27, ANSI_ESCAPE_LENGTH = 3, ASCII_SPACE = 32, BASE_36_RADIX = 36, BUN_BUILD_WARNING_SUPPRESSION = "wildcard sideEffects are not supported yet", TAILWIND_BUN_CSS_WARNING_PATTERN, BODY_SLICE_LENGTH = 2000, BYTES_PER_KILOBYTE = 1024, CLI_ARGS_OFFSET = 3, CSS_ERROR_RESOLVE_DELAY_MS = 50, CSS_MAX_CHECK_ATTEMPTS = 10, CSS_MAX_PARSE_TIMEOUT_MS = 500, CSS_SHEET_READY_TIMEOUT_MS = 100, DEFAULT_CHUNK_SIZE = 16384, DEFAULT_DEBOUNCE_MS = 15, DEFAULT_PORT = 3000, DEV_SERVER_RESTART_DEBOUNCE_MS = 100, DOM_UPDATE_DELAY_MS = 50, FILE_PROTOCOL_PREFIX_LENGTH = 7, FOCUS_ID_PREFIX_LENGTH = 3, FOCUS_IDX_PREFIX_LENGTH = 4, FOCUS_NAME_PREFIX_LENGTH = 5, ESLINT_STUDIO_DEFAULT_HOST = "eslint.absolute.localhost", ESLINT_STUDIO_DEFAULT_PORT = 4099, CONFIG_DEFAULT_HOST = "config.absolute.localhost", CONFIG_DEFAULT_PORT = 4099, HMR_UPDATE_TIMEOUT_MS = 2000, HOOK_SIGNATURE_LENGTH = 12, EXCLUDE_LAST_OFFSET = -1, HTTP_STATUS_OK = 200, HTTP_STATUS_BAD_REQUEST = 400, HTTP_STATUS_NOT_FOUND = 404, HOURS_IN_DAY = 24, HOURS_IN_HALF_DAY = 12, IMAGE_DEFAULT_DEVICE_SIZES, IMAGE_DEFAULT_IMAGE_SIZES, IMAGE_DEFAULT_QUALITY = 75, IMAGE_GLOB_SUFFIX_LENGTH = 2, INSTANCE_PROBE_TIMEOUT_MS = 250, MAX_ERROR_LENGTH = 200, MAX_RECONNECT_ATTEMPTS = 60, MILLISECONDS_IN_A_SECOND = 1000, MINUTES_IN_AN_HOUR = 60, SECONDS_IN_A_MINUTE = 60, MILLISECONDS_IN_A_MINUTE, MILLISECONDS_IN_A_DAY, OVERLAY_FADE_DURATION_MS = 150, PING_INTERVAL_MS = 30000, LIST_LOG_TAIL_MAX_BYTES = 65536, LIST_TUI_COLUMN_GAP = 2, LIST_TUI_DEFAULT_HEIGHT = 28, LIST_TUI_DEFAULT_WIDTH = 100, LIST_TUI_ESCAPE_SEQUENCE_TIMEOUT_MS = 30, LIST_TUI_FOOTER_LINE_COUNT = 2, LIST_TUI_MARKER_WIDTH = 2, LIST_TUI_MIN_LOG_HEIGHT = 3, LIST_TUI_MIN_URL_WIDTH = 16, LIST_TUI_RENDER_DEBOUNCE_MS = 16, LIST_TUI_STATUS_MESSAGE_TIMEOUT_MS = 4000, LIST_WATCH_REFRESH_MS = 1000, RAF_BATCH_COUNT = 3, RANDOM_ID_END_INDEX = 11, REBUILD_BATCH_DELAY_MS = 10, REBUILD_RELOAD_DELAY_MS = 200, RECONNECT_INITIAL_DELAY_MS = 500, RECONNECT_POLL_INTERVAL_MS = 300, REACT_STREAM_SLOT_FAST_DELAY_MS = 5, REACT_STREAM_SLOT_SLOW_DELAY_MS = 20, SIGINT_EXIT_CODE = 130, SIGTERM_EXIT_CODE = 143, SVELTE_CSS_LOAD_TIMEOUT_MS = 500, TIME_PRECISION = 2, TWO_THIRDS, UNFOUND_INDEX = -1, WEBSOCKET_NORMAL_CLOSURE = 1000, DEFAULT_WEBSOCKET_IDLE_TIMEOUT_SECONDS = 240, DEFAULT_HTTP_IDLE_TIMEOUT_SECONDS = 240, MAX_HTTP_IDLE_TIMEOUT_SECONDS = 255, WORKSPACE_COMMAND_ARGS_OFFSET = 3, WORKSPACE_FAILURE_LOG_PRINT_LIMIT = 30, WORKSPACE_FAILURE_RECENT_LOG_LIMIT = 60, WORKSPACE_READY_ATTEMPT_TIMEOUT_MS = 5000, WORKSPACE_READY_PROBE_INTERVAL_MS = 250, WORKSPACE_READY_TIMEOUT_MS = 30000, WORKSPACE_SHUTDOWN_TIMEOUT_MS = 1e4, WORKSPACE_TUI_DEFAULT_HEIGHT = 28, WORKSPACE_TUI_DEFAULT_WIDTH = 100, WORKSPACE_TUI_ESCAPE_SEQUENCE_TIMEOUT_MS = 30, WORKSPACE_TUI_FOOTER_LINE_COUNT = 3, WORKSPACE_TUI_MIN_LOG_HEIGHT = 3, WORKSPACE_TUI_MIN_SERVICE_NAME_WIDTH = 7, WORKSPACE_TUI_MIN_TARGET_WIDTH = 8, WORKSPACE_TUI_MIN_WRAP_WIDTH = 12, WORKSPACE_TUI_PROMPT_CURSOR_OFFSET = 3, WORKSPACE_TUI_RECENT_LOG_LIMIT = 40, WORKSPACE_TUI_RENDER_DEBOUNCE_MS = 16, WORKSPACE_TUI_STATUS_WIDTH = 10, WORKSPACE_TUI_TARGET_PADDING_WIDTH = 6, WORKSPACE_TUI_VISIBILITY_WIDTH = 8;
|
|
9099
9081
|
var init_constants = __esm(() => {
|
|
9082
|
+
TAILWIND_BUN_CSS_WARNING_PATTERN = /invalid @ rule encountered: '@(theme|tailwind|source|utility|variant|custom-variant|apply|reference|plugin|config)'/;
|
|
9100
9083
|
IMAGE_DEFAULT_DEVICE_SIZES = [
|
|
9101
9084
|
640,
|
|
9102
9085
|
750,
|
|
@@ -9140,7 +9123,14 @@ var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY, OPTIMIZATION_END
|
|
|
9140
9123
|
if (Buffer.isBuffer(input))
|
|
9141
9124
|
return input;
|
|
9142
9125
|
return Buffer.from(input);
|
|
9143
|
-
}, isUnsupportedFormatError = (err) => typeof err === "object" && err !== null && ("code" in err) && err
|
|
9126
|
+
}, isUnsupportedFormatError = (err) => typeof err === "object" && err !== null && ("code" in err) && Reflect.get(err, "code") === "ERR_IMAGE_FORMAT_UNSUPPORTED", optimizeUnsupportedAvif = async (error, input, width, quality, format) => {
|
|
9127
|
+
if (format !== "avif" || !isUnsupportedFormatError(error))
|
|
9128
|
+
throw error;
|
|
9129
|
+
const sharp = await tryLoadSharp();
|
|
9130
|
+
if (!sharp || !isSharpFactory(sharp))
|
|
9131
|
+
throw error;
|
|
9132
|
+
return optimizeWithSharp(sharp, input, width, quality, format);
|
|
9133
|
+
}, buildOptimizedUrl = (src, width, quality, basePath = OPTIMIZATION_ENDPOINT) => `${basePath}?url=${encodeURIComponent(src)}&w=${width}&q=${quality}`, formatToMime = (format) => MIME_MAP[format], generateBlurSvg = (base64Thumbnail) => {
|
|
9144
9134
|
const svg = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 320"><filter id="b" color-interpolation-filters="sRGB"><feGaussianBlur stdDeviation="${BLUR_DEVIATION}"/><feColorMatrix values="1 0 0 0 0 0 1 0 0 0 0 0 100 -1"/></filter><image filter="url(#b)" x="0" y="0" width="100%" height="100%" href="${base64Thumbnail}"/></svg>`;
|
|
9145
9135
|
const encoded = encodeURIComponent(svg);
|
|
9146
9136
|
return `url("data:image/svg+xml,${encoded}")`;
|
|
@@ -9164,8 +9154,8 @@ var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY, OPTIMIZATION_END
|
|
|
9164
9154
|
const device = config?.deviceSizes ?? DEFAULT_DEVICE_SIZES;
|
|
9165
9155
|
const image = config?.imageSizes ?? DEFAULT_IMAGE_SIZES;
|
|
9166
9156
|
return [...device, ...image].sort((left, right) => left - right);
|
|
9167
|
-
}, getCacheDir = (buildDir) => {
|
|
9168
|
-
const dir = join(buildDir, ".cache", "images");
|
|
9157
|
+
}, getCacheDir = (buildDir, cacheDirectory) => {
|
|
9158
|
+
const dir = cacheDirectory ? resolve(cacheDirectory) : join(buildDir, ".cache", "images");
|
|
9169
9159
|
if (!existsSync(dir))
|
|
9170
9160
|
mkdirSync(dir, { recursive: true });
|
|
9171
9161
|
return dir;
|
|
@@ -9217,6 +9207,7 @@ var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY, OPTIMIZATION_END
|
|
|
9217
9207
|
case "webp":
|
|
9218
9208
|
return pipeline.webp({ quality }).toBuffer();
|
|
9219
9209
|
}
|
|
9210
|
+
throw new Error(`Unsupported image format: ${format}`);
|
|
9220
9211
|
}, optimizeWithSharp = async (sharpRef, buffer, width, quality, format) => {
|
|
9221
9212
|
const pipeline = sharpRef(buffer).rotate().resize(width, undefined, { withoutEnlargement: true });
|
|
9222
9213
|
switch (format) {
|
|
@@ -9232,18 +9223,13 @@ var DEFAULT_DEVICE_SIZES, DEFAULT_IMAGE_SIZES, DEFAULT_QUALITY, OPTIMIZATION_END
|
|
|
9232
9223
|
case "webp":
|
|
9233
9224
|
return pipeline.webp({ quality }).toBuffer();
|
|
9234
9225
|
}
|
|
9226
|
+
throw new Error(`Unsupported image format: ${format}`);
|
|
9235
9227
|
}, optimizeImage = async (buffer, width, quality, format) => {
|
|
9236
9228
|
const input = toBuffer(buffer);
|
|
9237
9229
|
try {
|
|
9238
9230
|
return await optimizeWithBunImage(input, width, quality, format);
|
|
9239
9231
|
} catch (err) {
|
|
9240
|
-
|
|
9241
|
-
const sharp = await tryLoadSharp();
|
|
9242
|
-
if (sharp && isSharpFactory(sharp)) {
|
|
9243
|
-
return optimizeWithSharp(sharp, input, width, quality, format);
|
|
9244
|
-
}
|
|
9245
|
-
}
|
|
9246
|
-
throw err;
|
|
9232
|
+
return optimizeUnsupportedAvif(err, input, width, quality, format);
|
|
9247
9233
|
}
|
|
9248
9234
|
}, readFromCache = (cacheDir, cacheKey) => {
|
|
9249
9235
|
const metaPath = join(cacheDir, `${cacheKey}.meta`);
|
|
@@ -9396,6 +9382,7 @@ import { inject, REQUEST_CONTEXT } from "@angular/core";
|
|
|
9396
9382
|
var usePageContext = () => inject(REQUEST_CONTEXT);
|
|
9397
9383
|
// src/angular/composables/useResource.ts
|
|
9398
9384
|
import { DestroyRef, inject as inject2, signal } from "@angular/core";
|
|
9385
|
+
var isMutatorFunction = (mutator) => typeof mutator === "function";
|
|
9399
9386
|
var useResource = (fetcher, options = {}) => {
|
|
9400
9387
|
const destroyRef = inject2(DestroyRef);
|
|
9401
9388
|
const start = options.start ?? "immediate";
|
|
@@ -9410,6 +9397,12 @@ var useResource = (fetcher, options = {}) => {
|
|
|
9410
9397
|
controller = null;
|
|
9411
9398
|
}
|
|
9412
9399
|
};
|
|
9400
|
+
const finishRefresh = (next) => {
|
|
9401
|
+
if (controller === next)
|
|
9402
|
+
controller = null;
|
|
9403
|
+
if (!next.signal.aborted)
|
|
9404
|
+
loading.set(false);
|
|
9405
|
+
};
|
|
9413
9406
|
const refresh = async () => {
|
|
9414
9407
|
if (destroyed)
|
|
9415
9408
|
return;
|
|
@@ -9428,12 +9421,7 @@ var useResource = (fetcher, options = {}) => {
|
|
|
9428
9421
|
return;
|
|
9429
9422
|
error.set(cause);
|
|
9430
9423
|
} finally {
|
|
9431
|
-
|
|
9432
|
-
controller = null;
|
|
9433
|
-
}
|
|
9434
|
-
if (!next.signal.aborted) {
|
|
9435
|
-
loading.set(false);
|
|
9436
|
-
}
|
|
9424
|
+
finishRefresh(next);
|
|
9437
9425
|
}
|
|
9438
9426
|
};
|
|
9439
9427
|
const mutate = (next) => {
|
|
@@ -9442,7 +9430,7 @@ var useResource = (fetcher, options = {}) => {
|
|
|
9442
9430
|
cancel();
|
|
9443
9431
|
error.set(null);
|
|
9444
9432
|
loading.set(false);
|
|
9445
|
-
const resolved =
|
|
9433
|
+
const resolved = isMutatorFunction(next) ? next(data()) : next;
|
|
9446
9434
|
data.set(resolved);
|
|
9447
9435
|
};
|
|
9448
9436
|
destroyRef.onDestroy(() => {
|
|
@@ -9508,41 +9496,62 @@ var useTimers = () => {
|
|
|
9508
9496
|
import { ChangeDetectorRef, inject as inject5 } from "@angular/core";
|
|
9509
9497
|
|
|
9510
9498
|
// src/angular/hmrPreserveCore.ts
|
|
9511
|
-
var
|
|
9512
|
-
|
|
9513
|
-
|
|
9514
|
-
const
|
|
9515
|
-
|
|
9499
|
+
var isRebootFlag = (value) => typeof value === "object" && value !== null && typeof Reflect.get(value, "value") === "boolean";
|
|
9500
|
+
var isRebootStats = (value) => typeof value === "object" && value !== null && typeof Reflect.get(value, "captured") === "number" && Reflect.get(value, "restoredKeys") instanceof Set;
|
|
9501
|
+
var buildCacheKey = (instance, key) => {
|
|
9502
|
+
const className = instance.constructor?.name;
|
|
9503
|
+
if (!className || className === "Object")
|
|
9504
|
+
return null;
|
|
9505
|
+
const suffix = key === undefined || key === null ? "" : String(key);
|
|
9506
|
+
return `${className}:${suffix}`;
|
|
9516
9507
|
};
|
|
9517
9508
|
var getCache = () => {
|
|
9518
|
-
const
|
|
9519
|
-
|
|
9520
|
-
|
|
9521
|
-
|
|
9522
|
-
|
|
9523
|
-
return
|
|
9509
|
+
const current = Reflect.get(globalThis, "__ABS_HMR_INSTANCE_STATE__");
|
|
9510
|
+
if (current instanceof Map)
|
|
9511
|
+
return current;
|
|
9512
|
+
const cache = new Map;
|
|
9513
|
+
Reflect.set(globalThis, "__ABS_HMR_INSTANCE_STATE__", cache);
|
|
9514
|
+
return cache;
|
|
9524
9515
|
};
|
|
9525
9516
|
var getKeyMap = () => {
|
|
9526
|
-
const
|
|
9527
|
-
|
|
9517
|
+
const current = Reflect.get(globalThis, "__ABS_HMR_INSTANCE_KEYS__");
|
|
9518
|
+
if (current instanceof WeakMap)
|
|
9519
|
+
return current;
|
|
9520
|
+
const keyMap = new WeakMap;
|
|
9521
|
+
Reflect.set(globalThis, "__ABS_HMR_INSTANCE_KEYS__", keyMap);
|
|
9522
|
+
return keyMap;
|
|
9528
9523
|
};
|
|
9529
9524
|
var getRebootFlag = () => {
|
|
9530
|
-
const
|
|
9531
|
-
|
|
9525
|
+
const current = Reflect.get(globalThis, "__ABS_HMR_REBOOT_IN_PROGRESS__");
|
|
9526
|
+
if (isRebootFlag(current))
|
|
9527
|
+
return current;
|
|
9528
|
+
const flag = { value: false };
|
|
9529
|
+
Reflect.set(globalThis, "__ABS_HMR_REBOOT_IN_PROGRESS__", flag);
|
|
9530
|
+
return flag;
|
|
9532
9531
|
};
|
|
9533
9532
|
var getRebootStats = () => {
|
|
9534
|
-
const
|
|
9535
|
-
|
|
9533
|
+
const current = Reflect.get(globalThis, "__ABS_HMR_REBOOT_STATS__");
|
|
9534
|
+
if (isRebootStats(current))
|
|
9535
|
+
return current;
|
|
9536
|
+
const stats = {
|
|
9536
9537
|
captured: 0,
|
|
9537
9538
|
restoredKeys: new Set
|
|
9538
9539
|
};
|
|
9540
|
+
Reflect.set(globalThis, "__ABS_HMR_REBOOT_STATS__", stats);
|
|
9541
|
+
return stats;
|
|
9539
9542
|
};
|
|
9540
|
-
var
|
|
9541
|
-
const
|
|
9542
|
-
if (
|
|
9543
|
-
return
|
|
9544
|
-
const
|
|
9545
|
-
|
|
9543
|
+
var getTracker = () => {
|
|
9544
|
+
const current = Reflect.get(globalThis, "__ABS_HMR_TRACKED_INSTANCES__");
|
|
9545
|
+
if (current instanceof Set)
|
|
9546
|
+
return current;
|
|
9547
|
+
const tracker = new Set;
|
|
9548
|
+
Reflect.set(globalThis, "__ABS_HMR_TRACKED_INSTANCES__", tracker);
|
|
9549
|
+
return tracker;
|
|
9550
|
+
};
|
|
9551
|
+
var isHmrPreserveDev = () => {
|
|
9552
|
+
if (typeof window === "undefined")
|
|
9553
|
+
return false;
|
|
9554
|
+
return Boolean(Reflect.get(globalThis, "__DEV__")) || Boolean(Reflect.get(globalThis, "ngDevMode"));
|
|
9546
9555
|
};
|
|
9547
9556
|
var restoreFromCacheCore = (instance, key) => {
|
|
9548
9557
|
const cache = getCache();
|
|
@@ -9551,7 +9560,7 @@ var restoreFromCacheCore = (instance, key) => {
|
|
|
9551
9560
|
return false;
|
|
9552
9561
|
for (const [prop, value] of Object.entries(stored)) {
|
|
9553
9562
|
try {
|
|
9554
|
-
instance
|
|
9563
|
+
Reflect.set(instance, prop, value);
|
|
9555
9564
|
} catch {}
|
|
9556
9565
|
}
|
|
9557
9566
|
getRebootStats().restoredKeys.add(key);
|
|
@@ -9592,13 +9601,6 @@ import {
|
|
|
9592
9601
|
|
|
9593
9602
|
// src/client/preserveIslandMarkup.ts
|
|
9594
9603
|
init_islandMarkupAttributes();
|
|
9595
|
-
var getClaimMap = () => {
|
|
9596
|
-
if (typeof window === "undefined") {
|
|
9597
|
-
return null;
|
|
9598
|
-
}
|
|
9599
|
-
window.__ABS_CLAIMED_ISLAND_MARKUP__ ??= new Map;
|
|
9600
|
-
return window.__ABS_CLAIMED_ISLAND_MARKUP__;
|
|
9601
|
-
};
|
|
9602
9604
|
var getSnapshotMap = () => {
|
|
9603
9605
|
if (typeof window === "undefined") {
|
|
9604
9606
|
return null;
|
|
@@ -9657,19 +9659,22 @@ var preserveIslandMarkup = (props) => {
|
|
|
9657
9659
|
innerHTML: ""
|
|
9658
9660
|
};
|
|
9659
9661
|
}
|
|
9660
|
-
const claimMap = getClaimMap();
|
|
9661
9662
|
const snapshotMap = getSnapshotMap();
|
|
9662
9663
|
const signature = getIslandSignature(props);
|
|
9663
|
-
const
|
|
9664
|
-
|
|
9665
|
-
|
|
9666
|
-
|
|
9667
|
-
|
|
9668
|
-
|
|
9664
|
+
const snapshotCandidate = snapshotMap?.get(signature)?.[0];
|
|
9665
|
+
if (snapshotCandidate) {
|
|
9666
|
+
return snapshotCandidate;
|
|
9667
|
+
}
|
|
9668
|
+
const liveCandidate = Array.from(document.querySelectorAll('[data-island="true"]')).find((element) => isMatchingIslandElement(element, props));
|
|
9669
|
+
if (!liveCandidate) {
|
|
9670
|
+
return {
|
|
9671
|
+
attributes: getIslandMarkerAttributes(props),
|
|
9672
|
+
innerHTML: ""
|
|
9673
|
+
};
|
|
9669
9674
|
}
|
|
9670
9675
|
return {
|
|
9671
|
-
attributes:
|
|
9672
|
-
innerHTML:
|
|
9676
|
+
attributes: Object.fromEntries(liveCandidate.getAttributeNames().map((name) => [name, liveCandidate.getAttribute(name) ?? ""])),
|
|
9677
|
+
innerHTML: liveCandidate.innerHTML
|
|
9673
9678
|
};
|
|
9674
9679
|
};
|
|
9675
9680
|
|
|
@@ -10356,5 +10361,5 @@ export {
|
|
|
10356
10361
|
ABSOLUTE_HTTP_TRANSFER_CACHE_SKIP_HEADER
|
|
10357
10362
|
};
|
|
10358
10363
|
|
|
10359
|
-
//# debugId=
|
|
10364
|
+
//# debugId=7F459B45B76DA26564756E2164756E21
|
|
10360
10365
|
//# sourceMappingURL=browser.js.map
|