@absolutejs/absolute 0.20.0-beta.6 → 0.20.0-beta.60
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/README.md +205 -0
- package/dist/angular/browser.js +392 -405
- package/dist/angular/browser.js.map +3 -3
- package/dist/angular/components/core/streamingSlotRegistrar.js +7 -7
- package/dist/angular/components/core/streamingSlotRegistry.js +4 -4
- package/dist/angular/index.js +379 -321
- package/dist/angular/index.js.map +8 -7
- package/dist/angular/server.js +133 -61
- package/dist/angular/server.js.map +8 -7
- package/dist/build.js +2336 -1347
- package/dist/build.js.map +22 -17
- package/dist/cli/config/client.js +12 -12
- package/dist/cli/config/server.js +1140 -1091
- package/dist/cli/index.js +9621 -2093
- package/dist/client/chunks/angularPatch-arh4sr68.js +157 -0
- package/dist/client/chunks/angularPatch-arh4sr68.js.map +10 -0
- package/dist/client/chunks/index-5py90ctf.js +87 -0
- package/dist/client/chunks/index-5py90ctf.js.map +10 -0
- package/dist/client/chunks/index-m35nbkdp.js +374 -0
- package/dist/client/chunks/index-m35nbkdp.js.map +12 -0
- package/dist/client/chunks/index-qxjc7kc5.js +12 -0
- package/dist/client/chunks/index-qxjc7kc5.js.map +9 -0
- package/dist/client/chunks/islands-xj2n8nwf.js +281 -0
- package/dist/client/chunks/islands-xj2n8nwf.js.map +14 -0
- package/dist/client/chunks/react-pdg4325x.js +65 -0
- package/dist/client/chunks/react-pdg4325x.js.map +10 -0
- package/dist/client/chunks/svelte-s0c964kb.js +19 -0
- package/dist/client/chunks/svelte-s0c964kb.js.map +10 -0
- package/dist/client/chunks/vue-rdskrnyg.js +24 -0
- package/dist/client/chunks/vue-rdskrnyg.js.map +10 -0
- package/dist/client/index.js +73 -841
- package/dist/client/index.js.map +7 -20
- package/dist/core/streamingSlotRegistrar.js +15 -13
- package/dist/core/streamingSlotRegistrar.js.map +2 -2
- package/dist/core/streamingSlotRegistry.js +11 -9
- package/dist/core/streamingSlotRegistry.js.map +2 -2
- package/dist/dev/client/hmrClient.ts +35 -3
- package/dist/dev/client/hmrTiming.ts +6 -0
- package/dist/dev/client/syncDevtools.ts +237 -0
- package/dist/dev/serverBootstrap.js +28 -0
- package/dist/image-client/imageClient.js +7 -7
- package/dist/index.js +3748 -2361
- package/dist/index.js.map +38 -30
- package/dist/islands/browser.js +11 -25
- package/dist/islands/browser.js.map +2 -2
- package/dist/islands/index.js +55 -52
- package/dist/islands/index.js.map +5 -4
- package/dist/mobile/browser.js +429 -20
- package/dist/mobile/browser.js.map +8 -5
- package/dist/mobile/index.js +10626 -3132
- package/dist/mobile/index.js.map +47 -18
- package/dist/mobile/remoteMacAgentEntry.js +1374 -14
- package/dist/mobile/shellAuth.js +36 -0
- package/dist/mobile/shellBootstrap.js +1800 -0
- package/dist/mobile/shellExpoAuth.js +163 -0
- package/dist/mobile/shellExpoDevices.js +77 -0
- package/dist/mobile/shellExpoSync.js +104 -0
- package/dist/mobile/shellSync.js +184 -0
- package/dist/mobile/shellUpdate.js +456 -0
- package/dist/mobile/uiPrimitives.js +264 -0
- package/dist/react/browser.js +17 -59
- package/dist/react/browser.js.map +2 -2
- package/dist/react/components/browser/index.js +107 -107
- package/dist/react/components/index.js +118 -116
- package/dist/react/components/index.js.map +2 -2
- package/dist/react/hooks/index.js +11 -25
- package/dist/react/hooks/index.js.map +2 -2
- package/dist/react/index.js +110 -67
- package/dist/react/index.js.map +8 -7
- package/dist/react/jsxDevRuntimeCompat.js +11 -9
- package/dist/react/jsxDevRuntimeCompat.js.map +2 -2
- package/dist/react/jsxRuntimeCompat.js +11 -9
- package/dist/react/jsxRuntimeCompat.js.map +2 -2
- package/dist/react/router/browser.js +9 -7
- package/dist/react/router/browser.js.map +2 -2
- package/dist/react/router/index.js +9 -7
- package/dist/react/router/index.js.map +2 -2
- package/dist/react/server.js +67 -11
- package/dist/react/server.js.map +7 -6
- package/dist/src/build/pwa.d.ts +16 -0
- package/dist/src/cli/config/server.d.ts +1 -1
- package/dist/src/cli/instanceStatus.d.ts +1 -0
- package/dist/src/cli/scripts/dev.d.ts +2 -0
- package/dist/src/client/browserTranslation.d.ts +19 -0
- package/dist/src/client/index.d.ts +1 -0
- package/dist/src/core/browserTranslation.d.ts +6 -0
- package/dist/src/core/devBuild.d.ts +1 -0
- package/dist/src/core/prepare.d.ts +376 -0
- package/dist/src/dev/clientManager.d.ts +1 -0
- package/dist/src/dev/devCert.d.ts +6 -4
- package/dist/src/dev/serverEntryCopies.d.ts +3 -0
- package/dist/src/ember/browser.d.ts +0 -16
- package/dist/src/mobile/adaptiveShell.d.ts +27 -0
- package/dist/src/mobile/androidEmulatorController.d.ts +8 -1
- package/dist/src/mobile/androidRelease.d.ts +9 -2
- package/dist/src/mobile/androidTestReport.d.ts +14 -0
- package/dist/src/mobile/androidUpgradeConformance.d.ts +47 -0
- package/dist/src/mobile/androidWebView.d.ts +1 -0
- package/dist/src/mobile/browser.d.ts +2 -0
- package/dist/src/mobile/capacitorBundle.d.ts +18 -0
- package/dist/src/mobile/ciWorkflow.d.ts +26 -0
- package/dist/src/mobile/config.d.ts +9 -1
- package/dist/src/mobile/devDeviceAdapter.d.ts +3 -0
- package/dist/src/mobile/deviceCapabilities.d.ts +49 -0
- package/dist/src/mobile/expoBridge.d.ts +91 -0
- package/dist/src/mobile/expoDevController.d.ts +56 -0
- package/dist/src/mobile/expoProject.d.ts +16 -0
- package/dist/src/mobile/index.d.ts +23 -0
- package/dist/src/mobile/iosDeviceAcceptance.d.ts +32 -0
- package/dist/src/mobile/iosPhysicalDeviceTransport.d.ts +16 -0
- package/dist/src/mobile/iosRelease.d.ts +63 -3
- package/dist/src/mobile/iosSimulatorController.d.ts +20 -2
- package/dist/src/mobile/iosTestReport.d.ts +24 -0
- package/dist/src/mobile/mobileBundleInspection.d.ts +63 -0
- package/dist/src/mobile/mobileInspect.d.ts +142 -0
- package/dist/src/mobile/mobilePreview.d.ts +174 -0
- package/dist/src/mobile/mobilePreviewClient.d.ts +1 -0
- package/dist/src/mobile/nativeAuth.d.ts +6 -0
- package/dist/src/mobile/nativeBackgroundSync.d.ts +4 -0
- package/dist/src/mobile/nativeDeviceCapabilities.d.ts +6 -0
- package/dist/src/mobile/nativeRoute.d.ts +13 -0
- package/dist/src/mobile/nativeTestReport.d.ts +91 -0
- package/dist/src/mobile/nativeUpdates.d.ts +4 -0
- package/dist/src/mobile/navigationLifecycle.d.ts +36 -0
- package/dist/src/mobile/navigationState.d.ts +53 -0
- package/dist/src/mobile/pageProtocol.d.ts +2 -0
- package/dist/src/mobile/releaseDoctor.d.ts +23 -1
- package/dist/src/mobile/remoteMacProtocol.d.ts +134 -1
- package/dist/src/mobile/remoteMacWire.d.ts +1 -1
- package/dist/src/mobile/shellAuth.d.ts +8 -1
- package/dist/src/mobile/shellBootstrap.d.ts +15 -2
- package/dist/src/mobile/shellExpoAuth.d.ts +12 -0
- package/dist/src/mobile/shellExpoDevices.d.ts +3 -0
- package/dist/src/mobile/shellExpoSync.d.ts +18 -0
- package/dist/src/mobile/shellHttp.d.ts +2 -0
- package/dist/src/mobile/shellPush.d.ts +11 -0
- package/dist/src/mobile/shellSync.d.ts +46 -1
- package/dist/src/mobile/shellUpdate.d.ts +2 -0
- package/dist/src/mobile/syncRemediation.d.ts +10 -0
- package/dist/src/mobile/syncSchema.d.ts +9 -0
- package/dist/src/mobile/transport.d.ts +14 -0
- package/dist/src/mobile/uiPrimitives.d.ts +37 -0
- package/dist/src/mobile/updateClient.d.ts +40 -0
- package/dist/src/mobile/updateProtocol.d.ts +51 -0
- package/dist/src/mobile/updatePublisher.d.ts +66 -0
- package/dist/src/mobile/updateRollout.d.ts +16 -0
- package/dist/src/mobile/updateRuntime.d.ts +27 -0
- package/dist/src/mobile/updateSigning.d.ts +20 -0
- package/dist/src/plugins/hmr.d.ts +3 -0
- package/dist/src/plugins/imageOptimizer.d.ts +1 -1
- package/dist/src/react/hooks/useMediaQuery.d.ts +1 -1
- package/dist/src/utils/imageProcessing.d.ts +3 -0
- package/dist/src/utils/loadConfig.d.ts +1 -0
- package/dist/src/utils/logger.d.ts +1 -0
- package/dist/src/utils/startupBanner.d.ts +1 -0
- package/dist/src/utils/userAgentFunctions.d.ts +1 -1
- package/dist/src/vue/browser.d.ts +1 -0
- package/dist/src/vue/browserTranslation.d.ts +5 -0
- package/dist/src/vue/index.d.ts +1 -0
- package/dist/svelte/browser.js +12 -26
- package/dist/svelte/browser.js.map +2 -2
- package/dist/svelte/index.js +104 -61
- package/dist/svelte/index.js.map +8 -7
- package/dist/svelte/server.js +84 -28
- package/dist/svelte/server.js.map +7 -6
- package/dist/types/build.d.ts +62 -3
- package/dist/types/cli.d.ts +1 -0
- package/dist/types/messages.d.ts +1 -1
- package/dist/vue/browser.js +116 -56
- package/dist/vue/browser.js.map +5 -3
- package/dist/vue/components/Image.js +9 -7
- package/dist/vue/components/Image.js.map +2 -2
- package/dist/vue/components/index.js +11 -9
- package/dist/vue/components/index.js.map +2 -2
- package/dist/vue/index.js +211 -94
- package/dist/vue/index.js.map +10 -7
- package/dist/vue/server.js +69 -13
- package/dist/vue/server.js.map +7 -6
- package/package.json +40 -14
package/dist/react/index.js
CHANGED
|
@@ -19,12 +19,14 @@ var __toESM = (mod, isNodeMode, target) => {
|
|
|
19
19
|
}
|
|
20
20
|
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
21
21
|
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
22
|
+
if (mod && typeof mod === "object" || typeof mod === "function") {
|
|
23
|
+
for (let key of __getOwnPropNames(mod))
|
|
24
|
+
if (!__hasOwnProp.call(to, key))
|
|
25
|
+
__defProp(to, key, {
|
|
26
|
+
get: __accessProp.bind(mod, key),
|
|
27
|
+
enumerable: true
|
|
28
|
+
});
|
|
29
|
+
}
|
|
28
30
|
if (canCache)
|
|
29
31
|
cache.set(mod, to);
|
|
30
32
|
return to;
|
|
@@ -63,10 +65,10 @@ var __require = import.meta.require;
|
|
|
63
65
|
// src/core/devRouteRegistrationCallsite.ts
|
|
64
66
|
var exports_devRouteRegistrationCallsite = {};
|
|
65
67
|
__export(exports_devRouteRegistrationCallsite, {
|
|
66
|
-
|
|
67
|
-
isPageHandler: () => isPageHandler,
|
|
68
|
+
getCurrentRouteRegistrationCallsite: () => getCurrentRouteRegistrationCallsite,
|
|
68
69
|
getOriginalPageHandlerSource: () => getOriginalPageHandlerSource,
|
|
69
|
-
|
|
70
|
+
isPageHandler: () => isPageHandler,
|
|
71
|
+
patchElysiaRouteRegistrationCallsites: () => patchElysiaRouteRegistrationCallsites
|
|
70
72
|
});
|
|
71
73
|
import { AsyncLocalStorage } from "async_hooks";
|
|
72
74
|
import { Elysia } from "elysia";
|
|
@@ -941,6 +943,7 @@ var colors, MONTHS, formatTimestamp = () => {
|
|
|
941
943
|
port,
|
|
942
944
|
host,
|
|
943
945
|
networkUrl,
|
|
946
|
+
mobilePreviewUrl,
|
|
944
947
|
protocol = "http"
|
|
945
948
|
} = options;
|
|
946
949
|
const name = `${colors.cyan}${colors.bold}ABSOLUTEJS${colors.reset}`;
|
|
@@ -954,6 +957,9 @@ var colors, MONTHS, formatTimestamp = () => {
|
|
|
954
957
|
if (networkUrl) {
|
|
955
958
|
console.log(` ${colors.green}\u279C${colors.reset} ${colors.bold}Network:${colors.reset} ${networkUrl}`);
|
|
956
959
|
}
|
|
960
|
+
if (mobilePreviewUrl) {
|
|
961
|
+
console.log(` ${colors.green}\u279C${colors.reset} ${colors.bold}Mobile:${colors.reset} ${mobilePreviewUrl}`);
|
|
962
|
+
}
|
|
957
963
|
console.log("");
|
|
958
964
|
};
|
|
959
965
|
var init_startupBanner = __esm(() => {
|
|
@@ -1464,6 +1470,20 @@ var init_spaRouteManifest = __esm(() => {
|
|
|
1464
1470
|
init_resolveConvention();
|
|
1465
1471
|
});
|
|
1466
1472
|
|
|
1473
|
+
// src/core/browserTranslation.ts
|
|
1474
|
+
var BASELINE_MARKER = "__ABSOLUTE_SSR_TEXT_BASELINES__", BROWSER_TRANSLATION_BASELINE_SCRIPT, browserTranslationBaselineTag = () => `<script>${BROWSER_TRANSLATION_BASELINE_SCRIPT}</script>`, injectBrowserTranslationBaseline = (html) => {
|
|
1475
|
+
if (html.includes(BASELINE_MARKER))
|
|
1476
|
+
return html;
|
|
1477
|
+
const script = browserTranslationBaselineTag();
|
|
1478
|
+
const closingBodyIndex = html.lastIndexOf("</body>");
|
|
1479
|
+
if (closingBodyIndex < 0)
|
|
1480
|
+
return `${html}${script}`;
|
|
1481
|
+
return `${html.slice(0, closingBodyIndex)}${script}${html.slice(closingBodyIndex)}`;
|
|
1482
|
+
};
|
|
1483
|
+
var init_browserTranslation = __esm(() => {
|
|
1484
|
+
BROWSER_TRANSLATION_BASELINE_SCRIPT = "window.__ABSOLUTE_SSR_TEXT_BASELINES__=new WeakMap();" + "{const r=document.body,b=window.__ABSOLUTE_SSR_TEXT_BASELINES__;" + 'if(r)for(const e of [r,...r.querySelectorAll("*")]){' + "const t=new Map();for(const [i,n]of[...e.childNodes].entries())" + 'if(n.nodeType===3)t.set(i,n.nodeValue??"");if(t.size)b.set(e,t);}}';
|
|
1485
|
+
});
|
|
1486
|
+
|
|
1467
1487
|
// src/core/islandManifest.ts
|
|
1468
1488
|
var toIslandFrameworkSegment = (framework) => framework[0]?.toUpperCase() + framework.slice(1), collectFrameworkIslands = (manifest, prefix) => {
|
|
1469
1489
|
const entries = {};
|
|
@@ -1918,7 +1938,7 @@ var routeContextCache, cacheRouteData = (pagePath, data) => {
|
|
|
1918
1938
|
}
|
|
1919
1939
|
return html + snippet;
|
|
1920
1940
|
}, injectSsrScripts = (html, requestId, indexPath, requestContext) => {
|
|
1921
|
-
let result = html;
|
|
1941
|
+
let result = injectBeforeClose(html, browserTranslationBaselineTag());
|
|
1922
1942
|
const registeredScripts = getAndClearClientScripts(requestId);
|
|
1923
1943
|
if (registeredScripts.length > 0) {
|
|
1924
1944
|
result = injectBeforeClose(result, generateClientScriptCode(registeredScripts));
|
|
@@ -1954,6 +1974,7 @@ var routeContextCache, cacheRouteData = (pagePath, data) => {
|
|
|
1954
1974
|
};
|
|
1955
1975
|
var init_ssrRender = __esm(() => {
|
|
1956
1976
|
init_registerClientScript();
|
|
1977
|
+
init_browserTranslation();
|
|
1957
1978
|
routeContextCache = new Map;
|
|
1958
1979
|
selectorCache = new Map;
|
|
1959
1980
|
});
|
|
@@ -1961,10 +1982,10 @@ var init_ssrRender = __esm(() => {
|
|
|
1961
1982
|
// src/angular/islands.ts
|
|
1962
1983
|
var exports_islands = {};
|
|
1963
1984
|
__export(exports_islands, {
|
|
1964
|
-
|
|
1965
|
-
mountAngularIsland: () => mountAngularIsland,
|
|
1985
|
+
getAngularIslandSelector: () => getAngularIslandSelector,
|
|
1966
1986
|
isAngularComponent: () => isAngularComponent,
|
|
1967
|
-
|
|
1987
|
+
mountAngularIsland: () => mountAngularIsland,
|
|
1988
|
+
renderAngularIslandToHtml: () => renderAngularIslandToHtml
|
|
1968
1989
|
});
|
|
1969
1990
|
var angularIslandSelector = "abs-angular-island", getAngularIslandSelector = (_islandId) => angularIslandSelector, isAngularComponent = (value) => typeof value === "function", getSelectorFromRenderedIsland = (rootElement) => {
|
|
1970
1991
|
const firstChild = rootElement.firstElementChild;
|
|
@@ -2026,8 +2047,10 @@ var angularIslandSelector = "abs-angular-island", getAngularIslandSelector = (_i
|
|
|
2026
2047
|
const propsToken = new InjectionToken(`${wrapperKey}:props`);
|
|
2027
2048
|
|
|
2028
2049
|
class AngularIslandWrapperComponent {
|
|
2029
|
-
|
|
2030
|
-
|
|
2050
|
+
constructor() {
|
|
2051
|
+
this.component = component;
|
|
2052
|
+
this.props = inject(propsToken);
|
|
2053
|
+
}
|
|
2031
2054
|
}
|
|
2032
2055
|
return {
|
|
2033
2056
|
deps,
|
|
@@ -2476,13 +2499,13 @@ var init_nativeRewrite = __esm(() => {
|
|
|
2476
2499
|
// src/build/rewriteImportsPlugin.ts
|
|
2477
2500
|
var exports_rewriteImportsPlugin = {};
|
|
2478
2501
|
__export(exports_rewriteImportsPlugin, {
|
|
2479
|
-
|
|
2480
|
-
rewriteImportsInContent: () => rewriteImportsInContent,
|
|
2481
|
-
rewriteBuildOutputsWith: () => rewriteBuildOutputsWith,
|
|
2482
|
-
rewriteBuildOutputs: () => rewriteBuildOutputs,
|
|
2483
|
-
jsRewriteImports: () => jsRewriteImports,
|
|
2502
|
+
buildWithImportRewrite: () => buildWithImportRewrite,
|
|
2484
2503
|
fixMissingReExportNamespacesInContent: () => fixMissingReExportNamespacesInContent,
|
|
2485
|
-
|
|
2504
|
+
jsRewriteImports: () => jsRewriteImports,
|
|
2505
|
+
rewriteBuildOutputs: () => rewriteBuildOutputs,
|
|
2506
|
+
rewriteBuildOutputsWith: () => rewriteBuildOutputsWith,
|
|
2507
|
+
rewriteImportsInContent: () => rewriteImportsInContent,
|
|
2508
|
+
rewriteVendorDirectories: () => rewriteVendorDirectories
|
|
2486
2509
|
});
|
|
2487
2510
|
import { readdir } from "fs/promises";
|
|
2488
2511
|
import { join as join2 } from "path";
|
|
@@ -2896,22 +2919,22 @@ var init_lowerAwaitSlotSyntax = __esm(() => {
|
|
|
2896
2919
|
// src/build/stylePreprocessor.ts
|
|
2897
2920
|
var exports_stylePreprocessor = {};
|
|
2898
2921
|
__export(exports_stylePreprocessor, {
|
|
2899
|
-
|
|
2900
|
-
recordStyleOutput: () => recordStyleOutput,
|
|
2901
|
-
isStylePath: () => isStylePath,
|
|
2902
|
-
isStyleModulePath: () => isStyleModulePath,
|
|
2903
|
-
isPreprocessableStylePath: () => isPreprocessableStylePath,
|
|
2904
|
-
getStyleBaseName: () => getStyleBaseName,
|
|
2905
|
-
getCssOutputExtension: () => getCssOutputExtension,
|
|
2906
|
-
forgetStyleEntry: () => forgetStyleEntry,
|
|
2907
|
-
findStyleEntriesImporting: () => findStyleEntriesImporting,
|
|
2908
|
-
createSvelteStylePreprocessor: () => createSvelteStylePreprocessor,
|
|
2909
|
-
createStyleTransformConfig: () => createStyleTransformConfig,
|
|
2910
|
-
createStylePreprocessorPlugin: () => createStylePreprocessorPlugin,
|
|
2911
|
-
compileStyleSource: () => compileStyleSource,
|
|
2912
|
-
compileStyleFileIfNeededSync: () => compileStyleFileIfNeededSync,
|
|
2922
|
+
addStyleImporter: () => addStyleImporter,
|
|
2913
2923
|
compileStyleFileIfNeeded: () => compileStyleFileIfNeeded,
|
|
2914
|
-
|
|
2924
|
+
compileStyleFileIfNeededSync: () => compileStyleFileIfNeededSync,
|
|
2925
|
+
compileStyleSource: () => compileStyleSource,
|
|
2926
|
+
createStylePreprocessorPlugin: () => createStylePreprocessorPlugin,
|
|
2927
|
+
createStyleTransformConfig: () => createStyleTransformConfig,
|
|
2928
|
+
createSvelteStylePreprocessor: () => createSvelteStylePreprocessor,
|
|
2929
|
+
findStyleEntriesImporting: () => findStyleEntriesImporting,
|
|
2930
|
+
forgetStyleEntry: () => forgetStyleEntry,
|
|
2931
|
+
getCssOutputExtension: () => getCssOutputExtension,
|
|
2932
|
+
getStyleBaseName: () => getStyleBaseName,
|
|
2933
|
+
isPreprocessableStylePath: () => isPreprocessableStylePath,
|
|
2934
|
+
isStyleModulePath: () => isStyleModulePath,
|
|
2935
|
+
isStylePath: () => isStylePath,
|
|
2936
|
+
recordStyleOutput: () => recordStyleOutput,
|
|
2937
|
+
stylePreprocessorPlugin: () => stylePreprocessorPlugin
|
|
2915
2938
|
});
|
|
2916
2939
|
import { createHash as createHash2 } from "crypto";
|
|
2917
2940
|
import { existsSync as existsSync3, readFileSync as readFileSync3 } from "fs";
|
|
@@ -4327,6 +4350,7 @@ var getCurrentAbsoluteMobileProducerContext = () => {
|
|
|
4327
4350
|
// src/mobile/pageProtocol.ts
|
|
4328
4351
|
var ABSOLUTE_MOBILE_PAGE_MEDIA_TYPE = "application/vnd.absolute.page+json";
|
|
4329
4352
|
var ABSOLUTE_MOBILE_PAGE_PROTOCOL_VERSION = 1;
|
|
4353
|
+
var ABSOLUTE_NATIVE_ROUTE_DATA_MEDIA_TYPE = "application/vnd.absolute.native-route+json";
|
|
4330
4354
|
var BAD_REQUEST_STATUS = 400;
|
|
4331
4355
|
var OK_STATUS = 200;
|
|
4332
4356
|
var SERVER_ERROR_STATUS = 500;
|
|
@@ -4345,6 +4369,11 @@ var acceptsAbsoluteMobilePage = (request) => {
|
|
|
4345
4369
|
return false;
|
|
4346
4370
|
return (request.headers.get("accept") ?? "").split(",").some((value) => parseMediaType(value) === ABSOLUTE_MOBILE_PAGE_MEDIA_TYPE);
|
|
4347
4371
|
};
|
|
4372
|
+
var acceptsAbsoluteNativeRouteData = (request) => {
|
|
4373
|
+
if (!request)
|
|
4374
|
+
return false;
|
|
4375
|
+
return (request.headers.get("accept") ?? "").split(",").some((value) => parseMediaType(value) === ABSOLUTE_NATIVE_ROUTE_DATA_MEDIA_TYPE);
|
|
4376
|
+
};
|
|
4348
4377
|
var readRequiredHeader = (request, name) => {
|
|
4349
4378
|
const value = request.headers.get(name)?.trim();
|
|
4350
4379
|
return value ? value : undefined;
|
|
@@ -4475,6 +4504,32 @@ var finalizeArchivedMobilePage = (context, input) => {
|
|
|
4475
4504
|
return createAbsoluteMobilePageErrorResponse(page.pageId);
|
|
4476
4505
|
}
|
|
4477
4506
|
};
|
|
4507
|
+
var finalizeAbsoluteNativeRouteDevelopmentPage = (input) => {
|
|
4508
|
+
if (false) {}
|
|
4509
|
+
if (input.request?.method !== "GET") {
|
|
4510
|
+
return createAbsoluteMobileInvalidRequestResponse("Native-route data requests must use GET.");
|
|
4511
|
+
}
|
|
4512
|
+
if (input.request.headers.get(MOBILE_PAGE_REQUEST_HEADERS.protocol) !== String(ABSOLUTE_MOBILE_PAGE_PROTOCOL_VERSION)) {
|
|
4513
|
+
return createAbsoluteMobileInvalidRequestResponse(`Native-route data requires protocol ${ABSOLUTE_MOBILE_PAGE_PROTOCOL_VERSION}.`);
|
|
4514
|
+
}
|
|
4515
|
+
const [representation] = input.compatibility.representations;
|
|
4516
|
+
if (!representation) {
|
|
4517
|
+
return createAbsoluteMobilePageErrorResponse(input.compatibility.pageId);
|
|
4518
|
+
}
|
|
4519
|
+
try {
|
|
4520
|
+
return envelopeResponse({
|
|
4521
|
+
contract: representation.contract,
|
|
4522
|
+
framework: input.compatibility.framework,
|
|
4523
|
+
kind: "page",
|
|
4524
|
+
pageId: input.compatibility.pageId,
|
|
4525
|
+
props: normalizeJsonValue(representation.mapProps(input.props)),
|
|
4526
|
+
status: input.status ?? OK_STATUS
|
|
4527
|
+
}, input.status ?? OK_STATUS);
|
|
4528
|
+
} catch (error) {
|
|
4529
|
+
console.error(`[Mobile] Failed to produce development native route ${input.compatibility.pageId}:`, error);
|
|
4530
|
+
return createAbsoluteMobilePageErrorResponse(input.compatibility.pageId);
|
|
4531
|
+
}
|
|
4532
|
+
};
|
|
4478
4533
|
var createAbsoluteMobileInvalidRequestResponse = (message) => envelopeResponse({ kind: "invalid-request", message }, BAD_REQUEST_STATUS);
|
|
4479
4534
|
var createAbsoluteMobilePageErrorResponse = (pageId) => envelopeResponse({
|
|
4480
4535
|
code: "representation-failed",
|
|
@@ -4484,6 +4539,9 @@ var createAbsoluteMobilePageErrorResponse = (pageId) => envelopeResponse({
|
|
|
4484
4539
|
}, SERVER_ERROR_STATUS);
|
|
4485
4540
|
var createAbsoluteMobileUpgradeResponse = (result) => envelopeResponse(result, UPGRADE_REQUIRED_STATUS);
|
|
4486
4541
|
var finalizeAbsoluteMobilePage = (input) => {
|
|
4542
|
+
if (acceptsAbsoluteNativeRouteData(input.request)) {
|
|
4543
|
+
return finalizeAbsoluteNativeRouteDevelopmentPage(input);
|
|
4544
|
+
}
|
|
4487
4545
|
const parsed = parseAbsoluteMobilePageRequest(input.request);
|
|
4488
4546
|
if (parsed.kind === "not-mobile")
|
|
4489
4547
|
return;
|
|
@@ -4661,6 +4719,7 @@ var runWithStreamingSlotWarningScope = (task, metadata) => ensureWarningStorage(
|
|
|
4661
4719
|
// src/react/pageHandler.ts
|
|
4662
4720
|
init_spaRouteManifest();
|
|
4663
4721
|
init_resolveConvention();
|
|
4722
|
+
init_browserTranslation();
|
|
4664
4723
|
var withRequestUrl = (props, url) => Object.assign(Object.create(null), props, { url });
|
|
4665
4724
|
var resolveRequestPathname = (request) => {
|
|
4666
4725
|
if (!request)
|
|
@@ -4714,7 +4773,7 @@ var handleReactPageRequest = async (input) => {
|
|
|
4714
4773
|
const refreshSetup = buildRefreshSetup();
|
|
4715
4774
|
const stream = await renderToReadableStream(element, {
|
|
4716
4775
|
bootstrapModules: [resolvedIndex],
|
|
4717
|
-
bootstrapScriptContent: propsScript + refreshSetup
|
|
4776
|
+
bootstrapScriptContent: BROWSER_TRANSLATION_BASELINE_SCRIPT + propsScript + refreshSetup,
|
|
4718
4777
|
onError(error) {
|
|
4719
4778
|
console.error("[SSR] React streaming error:", error);
|
|
4720
4779
|
}
|
|
@@ -4749,37 +4808,37 @@ var handleReactPageRequest = async (input) => {
|
|
|
4749
4808
|
// src/react/Island.tsx
|
|
4750
4809
|
init_islandMarkupAttributes();
|
|
4751
4810
|
init_renderIslandMarkup();
|
|
4752
|
-
import {
|
|
4811
|
+
import { jsx } from "react/jsx-runtime";
|
|
4753
4812
|
var Island = async (props) => {
|
|
4754
4813
|
if (typeof window !== "undefined") {
|
|
4755
|
-
return /* @__PURE__ */
|
|
4814
|
+
return /* @__PURE__ */ jsx("div", {
|
|
4756
4815
|
...getIslandMarkerAttributes(props),
|
|
4757
4816
|
suppressHydrationWarning: true
|
|
4758
|
-
}
|
|
4817
|
+
});
|
|
4759
4818
|
}
|
|
4760
4819
|
const result = await renderIslandResult(requireCurrentIslandRegistry(), props);
|
|
4761
|
-
return /* @__PURE__ */
|
|
4820
|
+
return /* @__PURE__ */ jsx("div", {
|
|
4762
4821
|
...result.attributes,
|
|
4763
4822
|
dangerouslySetInnerHTML: { __html: result.html }
|
|
4764
|
-
}
|
|
4823
|
+
});
|
|
4765
4824
|
};
|
|
4766
4825
|
// src/react/createIsland.tsx
|
|
4767
4826
|
init_islandMarkupAttributes();
|
|
4768
4827
|
init_renderIslandMarkup();
|
|
4769
|
-
import {
|
|
4828
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
4770
4829
|
var createTypedIsland = (registry) => {
|
|
4771
4830
|
const Island2 = async (props) => {
|
|
4772
4831
|
if (typeof window !== "undefined") {
|
|
4773
|
-
return /* @__PURE__ */
|
|
4832
|
+
return /* @__PURE__ */ jsx2("div", {
|
|
4774
4833
|
...getIslandMarkerAttributes(props),
|
|
4775
4834
|
suppressHydrationWarning: true
|
|
4776
|
-
}
|
|
4835
|
+
});
|
|
4777
4836
|
}
|
|
4778
4837
|
const result = await renderIslandResult(registry, props);
|
|
4779
|
-
return /* @__PURE__ */
|
|
4838
|
+
return /* @__PURE__ */ jsx2("div", {
|
|
4780
4839
|
...result.attributes,
|
|
4781
4840
|
dangerouslySetInnerHTML: { __html: result.html }
|
|
4782
|
-
}
|
|
4841
|
+
});
|
|
4783
4842
|
};
|
|
4784
4843
|
return Island2;
|
|
4785
4844
|
};
|
|
@@ -4870,22 +4929,6 @@ var createIslandStore = (storeId, initialState, createState) => {
|
|
|
4870
4929
|
return store;
|
|
4871
4930
|
};
|
|
4872
4931
|
var getIslandStoreServerSnapshot = (store, selector) => selector(store.getInitialState());
|
|
4873
|
-
var applySnapshotToStoreInstances = (storeId, instances, snapshot) => {
|
|
4874
|
-
for (const instance of instances) {
|
|
4875
|
-
instance.applyExternalSnapshot(snapshot[storeId] ?? {});
|
|
4876
|
-
}
|
|
4877
|
-
};
|
|
4878
|
-
var initializeIslandStores = (state) => {
|
|
4879
|
-
const currentSnapshot = getIslandStoreSnapshot();
|
|
4880
|
-
const nextSnapshot = {
|
|
4881
|
-
...state,
|
|
4882
|
-
...currentSnapshot
|
|
4883
|
-
};
|
|
4884
|
-
globalThis.__ABS_ISLAND_STATE__ = nextSnapshot;
|
|
4885
|
-
for (const [storeId, store] of getIslandStores()) {
|
|
4886
|
-
applySnapshotToStoreInstances(storeId, store, nextSnapshot);
|
|
4887
|
-
}
|
|
4888
|
-
};
|
|
4889
4932
|
var readIslandStore = (store, selector) => selector(store.getState());
|
|
4890
4933
|
var subscribeIslandStore = (store, selector, listener) => {
|
|
4891
4934
|
let currentSelection = selector(store.getState());
|
|
@@ -4904,11 +4947,11 @@ var useIslandStore = (store, selector) => useSyncExternalStore((listener) => sub
|
|
|
4904
4947
|
listener();
|
|
4905
4948
|
}), () => readIslandStore(store, selector), () => getIslandStoreServerSnapshot(store, selector));
|
|
4906
4949
|
export {
|
|
4907
|
-
|
|
4908
|
-
handleReactPageRequest,
|
|
4950
|
+
Island,
|
|
4909
4951
|
createTypedIsland,
|
|
4910
|
-
|
|
4952
|
+
handleReactPageRequest,
|
|
4953
|
+
useIslandStore
|
|
4911
4954
|
};
|
|
4912
4955
|
|
|
4913
|
-
//# debugId=
|
|
4956
|
+
//# debugId=48257EB5A9F1523464756E2164756E21
|
|
4914
4957
|
//# sourceMappingURL=index.js.map
|