@absolutejs/absolute 0.20.0-beta.39 → 0.20.0-beta.40

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/index.js CHANGED
@@ -32880,6 +32880,26 @@ var normalizeCertificateFingerprints = (values) => [
32880
32880
  return value.match(/.{2}/g)?.join(":") ?? value;
32881
32881
  }))
32882
32882
  ].sort();
32883
+ var normalizeExpoNativeRoutes = (config, projectRoot) => {
32884
+ if (config.engine !== "expo")
32885
+ return {};
32886
+ const routes = config.routes?.native ?? {};
32887
+ const normalized = {};
32888
+ for (const [route, module] of Object.entries(routes)) {
32889
+ const path = normalizeEntry(route);
32890
+ if (path.includes("?") || path.includes("#") || path !== "/" && path.endsWith("/")) {
32891
+ throw new TypeError(`mobile.routes.native route ${path} must be a canonical path without a query, fragment, or trailing slash.`);
32892
+ }
32893
+ if (path === "/__absolute/native") {
32894
+ throw new TypeError("mobile.routes.native reserves /__absolute/native for the Expo diagnostic screen.");
32895
+ }
32896
+ if (path.includes("*") || path.includes(":")) {
32897
+ throw new TypeError(`mobile.routes.native route ${path} must be static during the Expo experiment; parameters and wildcards are not supported yet.`);
32898
+ }
32899
+ normalized[path] = resolveProjectPath(projectRoot, requireText(module, `mobile.routes.native[${path}]`), `mobile.routes.native[${path}]`);
32900
+ }
32901
+ return Object.fromEntries(Object.entries(normalized).sort(([left], [right]) => left.localeCompare(right)));
32902
+ };
32883
32903
  var normalizeAbsoluteMobileConfig = (config, projectRoot) => {
32884
32904
  const appId = requireText(config.appId, "mobile.appId");
32885
32905
  if (!APP_ID_PATTERN.test(appId)) {
@@ -32898,10 +32918,12 @@ var normalizeAbsoluteMobileConfig = (config, projectRoot) => {
32898
32918
  bundleDirectory: resolveProjectPath(projectRoot, config.bundleDirectory ?? ".absolutejs/mobile/web", "mobile.bundleDirectory"),
32899
32919
  deepLinkHosts: normalizeHosts(config.deepLinks?.hosts, productionOrigin),
32900
32920
  deepLinkScheme,
32901
- engine: "capacitor",
32921
+ engine: config.engine ?? "capacitor",
32902
32922
  entry: normalizeEntry(config.entry),
32923
+ expoNativeRoutes: normalizeExpoNativeRoutes(config, projectRoot),
32924
+ ...config.engine === "expo" ? { expoSdkVersion: config.expo?.sdkVersion ?? 57 } : {},
32903
32925
  iosVersion: normalizeIosVersion(config.ios?.version),
32904
- nativeProjectDirectory: resolveProjectPath(projectRoot, config.nativeProject?.directory ?? "mobile", "mobile.nativeProject.directory"),
32926
+ nativeProjectDirectory: resolveProjectPath(projectRoot, config.nativeProject?.directory ?? (config.engine === "expo" ? ".absolutejs/mobile/expo" : "mobile"), "mobile.nativeProject.directory"),
32905
32927
  platforms: normalizePlatforms(config.platforms),
32906
32928
  productionOrigin,
32907
32929
  pushAndroidGoogleServicesFile: resolveProjectPath(projectRoot, config.pushNotifications?.android?.googleServicesFile ?? "google-services.json", "mobile.pushNotifications.android.googleServicesFile")
@@ -40900,5 +40922,5 @@ export {
40900
40922
  ANGULAR_INIT_TIMEOUT_MS
40901
40923
  };
40902
40924
 
40903
- //# debugId=B33205E04E972F4064756E2164756E21
40925
+ //# debugId=2A78018C8C89407164756E2164756E21
40904
40926
  //# sourceMappingURL=index.js.map