peachsim 0.1.2179 → 0.1.2182

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.
Files changed (104) hide show
  1. package/cli/commands/package.ts +7 -2
  2. package/cli/commands/shell-url.ts +28 -22
  3. package/dist-lib/agent-daemon-client.cjs +1 -1
  4. package/dist-lib/agent-events.cjs +1 -1
  5. package/dist-lib/attached-projects.cjs +1 -1
  6. package/dist-lib/auth/shared-session.cjs +1 -1
  7. package/dist-lib/backend-origin.cjs +1 -1
  8. package/dist-lib/beta.cjs +1 -1
  9. package/dist-lib/beta.mjs +1 -1
  10. package/dist-lib/bridge-constants.cjs +1 -1
  11. package/dist-lib/bridge-contract-input.cjs +1 -1
  12. package/dist-lib/bridge-contract-input.mjs +1 -1
  13. package/dist-lib/bridge-contract.cjs +1 -1
  14. package/dist-lib/bridge-contract.mjs +1 -1
  15. package/dist-lib/bundle-channel.cjs +225 -85
  16. package/dist-lib/capture-contract.cjs +1 -1
  17. package/dist-lib/capture-contract.mjs +1 -1
  18. package/dist-lib/cloud-contract.cjs +1 -1
  19. package/dist-lib/cloud-contract.mjs +1 -1
  20. package/dist-lib/cloud-test-args.cjs +1 -1
  21. package/dist-lib/cloud-test-args.mjs +1 -1
  22. package/dist-lib/cloud.cjs +1 -1
  23. package/dist-lib/cloud.mjs +1 -1
  24. package/dist-lib/config.cjs +1 -1
  25. package/dist-lib/config.mjs +1 -1
  26. package/dist-lib/detox/index.cjs +2 -2
  27. package/dist-lib/dev-bundle-resolution.cjs +1 -1
  28. package/dist-lib/expo-swift-bundle.cjs +140 -48
  29. package/dist-lib/expo-swift-metadata.cjs +1 -1
  30. package/dist-lib/expo-swift-metadata.mjs +1 -1
  31. package/dist-lib/home-paths.cjs +1 -1
  32. package/dist-lib/host/bridge-host.cjs +201 -82
  33. package/dist-lib/host/fetch-proxy-handler.cjs +4 -4
  34. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  35. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  36. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  37. package/dist-lib/host/websocket-proxy.cjs +1 -1
  38. package/dist-lib/index.cjs +4 -4
  39. package/dist-lib/jump-to-source-babel.cjs +1 -1
  40. package/dist-lib/jump-to-source-native.cjs +1 -1
  41. package/dist-lib/kotlin-host.cjs +11 -3
  42. package/dist-lib/menu.cjs +1 -1
  43. package/dist-lib/menu.mjs +1 -1
  44. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  45. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  46. package/dist-lib/metro-production-bundle.cjs +1 -1
  47. package/dist-lib/metro-production-bundle.mjs +1 -1
  48. package/dist-lib/metro.cjs +4 -4
  49. package/dist-lib/native-app-identity-project.cjs +2 -2
  50. package/dist-lib/native-app-identity-project.mjs +2 -2
  51. package/dist-lib/native-app-identity.cjs +1 -1
  52. package/dist-lib/native-app-identity.mjs +1 -1
  53. package/dist-lib/native-firebase-metadata.cjs +1 -1
  54. package/dist-lib/native-firebase-metadata.mjs +1 -1
  55. package/dist-lib/pdfium-raster.cjs +1 -1
  56. package/dist-lib/pdfium-raster.mjs +1 -1
  57. package/dist-lib/plist.cjs +1 -1
  58. package/dist-lib/plist.mjs +1 -1
  59. package/dist-lib/profiles.cjs +1 -1
  60. package/dist-lib/public-brand.cjs +1 -1
  61. package/dist-lib/public-origins-lib-esm.json +24 -24
  62. package/dist-lib/public-origins-lib.json +53 -53
  63. package/dist-lib/react-native-host-modules.cjs +1 -1
  64. package/dist-lib/react-native-host-modules.mjs +1 -1
  65. package/dist-lib/reap-browser.cjs +1 -1
  66. package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
  67. package/dist-lib/sdk.cjs +1 -1
  68. package/dist-lib/sdk.mjs +1 -1
  69. package/dist-lib/skills.cjs +239 -176
  70. package/dist-lib/swift-compile.cjs +85 -16
  71. package/dist-lib/swift-compile.mjs +85 -16
  72. package/dist-lib/swift-package.cjs +1 -1
  73. package/dist-lib/swift-package.mjs +1 -1
  74. package/dist-lib/swift-submit.cjs +2 -2
  75. package/dist-lib/swift-submit.mjs +2 -2
  76. package/dist-lib/swift-toolchain.cjs +1 -1
  77. package/dist-lib/swift.cjs +1 -1
  78. package/dist-lib/vite-swift.cjs +87 -18
  79. package/dist-lib/vite.cjs +4 -4
  80. package/dist-lib/worklet-executable.cjs +1 -1
  81. package/dist-lib/worklet-executable.mjs +1 -1
  82. package/dist-types/packages/peach-engine/src/cli-companion.d.ts +1 -0
  83. package/dist-types/packages/peach-engine/src/ios/frame-art.d.ts +41 -0
  84. package/dist-types/packages/peach-engine/src/ios/frame-paint.d.ts +43 -0
  85. package/dist-types/packages/peach-engine/src/ios/frame-svg.d.ts +4 -0
  86. package/dist-types/packages/peach-engine/src/render-worker/map-command-channel.d.ts +14 -0
  87. package/kotlin/sdk.tar.gz +0 -0
  88. package/package.json +1 -1
  89. package/runtime-companion.json +1 -1
  90. package/sdk/ios/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h +8 -25
  91. package/sdk/ios/System/Library/Frameworks/UIKitTypes.framework/Headers/UIKitTypes.h +26 -0
  92. package/src/expo-native-workspace.ts +17 -20
  93. package/src/expo-swift-bundle.ts +6 -1
  94. package/src/expo-swift-host.ts +35 -6
  95. package/src/expo-widgets-bundle.ts +12 -8
  96. package/src/expoSwiftContract.ts +3 -0
  97. package/src/kotlin-host.ts +10 -2
  98. package/src/native-bundles.ts +30 -10
  99. package/src/one-sdk/source.ts +10 -4
  100. package/src/one-sdk-bundle.ts +57 -24
  101. package/src/screenshots/frame-compose.ts +14 -109
  102. package/src/swift-compile.ts +105 -13
  103. package/src/swift-submit.ts +2 -1
  104. package/src/wasm-optimize.ts +13 -4
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2179 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2182 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
  let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -24546,6 +24546,13 @@ var init_swift_guest_source_inputs = __esm({
24546
24546
 
24547
24547
  // src/wasm-optimize.ts
24548
24548
  async function runWasmOpt(file, output2, skipPasses, binary2) {
24549
+ const admittedCores = windowAdmission()?.cores ?? Number(process.env.TM_EXEC_CPU_CORES);
24550
+ const requestedCores = Number(process.env.BINARYEN_CORES);
24551
+ const environment = { ...process.env, WASM_OPT_PATH: binary2 };
24552
+ if (Number.isInteger(admittedCores) && admittedCores > 0)
24553
+ environment.BINARYEN_CORES = String(
24554
+ Number.isInteger(requestedCores) && requestedCores > 0 ? Math.min(admittedCores, requestedCores) : admittedCores
24555
+ );
24549
24556
  const result = await (0, import_wasm_opt.wasmOpt)(
24550
24557
  [
24551
24558
  "-Oz",
@@ -24555,7 +24562,7 @@ async function runWasmOpt(file, output2, skipPasses, binary2) {
24555
24562
  "-o",
24556
24563
  output2
24557
24564
  ],
24558
- { env: { ...process.env, WASM_OPT_PATH: binary2 } }
24565
+ { env: environment }
24559
24566
  );
24560
24567
  if (result.status !== 0)
24561
24568
  throw new Error(`wasm-opt exited ${result.status}: ${result.stderr}`);
@@ -24591,6 +24598,7 @@ var init_wasm_optimize = __esm({
24591
24598
  import_node_path32 = require("node:path");
24592
24599
  init_src();
24593
24600
  import_wasm_opt = require("wasm-opt");
24601
+ init_admitted_mac_build();
24594
24602
  init_home_paths();
24595
24603
  FEATURES = [
24596
24604
  "threads",
@@ -26720,6 +26728,20 @@ function emitSwiftPackageManifest(args) {
26720
26728
  const prebuilt = args.prebuilt;
26721
26729
  const linkedObjects = Boolean(distribution || prebuilt);
26722
26730
  const cxxFlagsFor = (flags) => args.deferDarwinOverlay ? withoutWasmOverlayIsystem(flags) : flags;
26731
+ const packageModules = new Set(
26732
+ targets.filter(({ name: name3 }) => !args.sourceSwiftTargets?.has(name3)).map(({ name: name3 }) => swiftTargetModuleName(name3))
26733
+ );
26734
+ const mapsPackageModule = (flag) => {
26735
+ if (!flag.startsWith("-fmodule-map-file=")) return false;
26736
+ const file = flag.slice("-fmodule-map-file=".length).replaceAll(SWIFT_NATIVE_INPUT_ROOT, args.root);
26737
+ if (!file.includes("/Pods/Headers/")) return false;
26738
+ const map2 = args.files.get(file) ?? ((0, import_node_fs42.existsSync)(file) ? (0, import_node_fs42.readFileSync)(file) : void 0);
26739
+ const name3 = map2 === void 0 ? void 0 : moduleMapName(map2.toString());
26740
+ return name3 !== void 0 && packageModules.has(name3);
26741
+ };
26742
+ const withoutPackageModuleMaps = (flags) => flags.filter((flag) => !mapsPackageModule(flag));
26743
+ const targetCFlags = (flags) => cFlagArray(withoutPackageModuleMaps(flags));
26744
+ const targetCxxFlags = (flags) => cxxFlagArray(withoutPackageModuleMaps(flags));
26723
26745
  const reachedFrameworks = /* @__PURE__ */ new Set();
26724
26746
  const reach = (name3) => {
26725
26747
  if (reachedFrameworks.has(name3) || targets.some((target) => swiftTargetModuleName(target.name) === name3))
@@ -26799,7 +26821,9 @@ function emitSwiftPackageManifest(args) {
26799
26821
  const macroSettings = (values) => (values ?? []).map((value) => ` ${clangMacroSetting(value)},`).join("");
26800
26822
  const flagArray = (literal3) => `peachCompilerArguments(${JSON.stringify(literal3.replace(/,\s*]$/, "]"))})`;
26801
26823
  const swiftFlagArray = (literal3) => {
26802
- const flags = JSON.parse(literal3.replace(/,\s*]$/, "]"));
26824
+ const flags = JSON.parse(literal3.replace(/,\s*]$/, "]")).filter(
26825
+ (flag, index, all) => !mapsPackageModule(flag) && !(flag === "-Xcc" && mapsPackageModule(all[index + 1] ?? ""))
26826
+ );
26803
26827
  const content = flags.map((flag) => JSON.stringify(flag)).join("\n") + "\n";
26804
26828
  const digest4 = (0, import_node_crypto20.createHash)("sha256").update(content).digest("hex");
26805
26829
  const file = import_node_path41.default.join(args.root, ".peach-swift-arguments", `${digest4}.rsp`);
@@ -26959,18 +26983,18 @@ function emitSwiftPackageManifest(args) {
26959
26983
  "c"
26960
26984
  ).map((entry) => ` ${entry},`).join(
26961
26985
  ""
26962
- )} .unsafeFlags(${flagArray(cFlagArray([...nativeFlags, ...native.clang.flags]))})]`,
26986
+ )} .unsafeFlags(${flagArray(targetCFlags([...nativeFlags, ...native.clang.flags]))})]`,
26963
26987
  ...nativeCxx ? [
26964
26988
  `cxxSettings: [${cxxDefines}${clangSettingEntries(
26965
26989
  frameworkSearchFlags(target, "cxx"),
26966
26990
  "cxx"
26967
26991
  ).map((entry) => ` ${entry},`).join(
26968
26992
  ""
26969
- )} .unsafeFlags(${flagArray(cxxFlagArray([...cxxFlagsFor(nativeFlags), ...native.clang.cxxFlags]))})]`
26993
+ )} .unsafeFlags(${flagArray(targetCxxFlags([...cxxFlagsFor(nativeFlags), ...native.clang.cxxFlags]))})]`
26970
26994
  ] : []
26971
26995
  ].join(", ") : [
26972
- `cSettings: [${cDefines}${declaredClangSettings(target, "c")} .unsafeFlags(${flagArray(cFlagArray([...nativeFlags, ...native?.flags ?? []]))})]`,
26973
- `cxxSettings: [${cxxDefines}${declaredClangSettings(target, "cxx")} .unsafeFlags(${flagArray(cxxFlagArray([...cxxFlagsFor(nativeFlags), ...native?.cxxFlags ?? []]))})]`
26996
+ `cSettings: [${cDefines}${declaredClangSettings(target, "c")} .unsafeFlags(${flagArray(targetCFlags([...nativeFlags, ...native?.flags ?? []]))})]`,
26997
+ `cxxSettings: [${cxxDefines}${declaredClangSettings(target, "cxx")} .unsafeFlags(${flagArray(targetCxxFlags([...cxxFlagsFor(nativeFlags), ...native?.cxxFlags ?? []]))})]`
26974
26998
  ].join(", ");
26975
26999
  const exclusions = native?.clang ? [] : [
26976
27000
  ...native ? native.exclude ?? native.lateSources : [],
@@ -27039,9 +27063,9 @@ function emitSwiftPackageManifest(args) {
27039
27063
  ` path: ${JSON.stringify(group.path)},`,
27040
27064
  ` sources: ${JSON.stringify(group.sources)},`,
27041
27065
  ` publicHeadersPath: ${JSON.stringify(native.groups ? "include" : "PeachSwiftImplementation")},`,
27042
- ` cSettings: [${macroSettings(owner?.cDefines)}${declaredClangSettings(owner, "c")} .unsafeFlags(${flagArray(cFlagArray([...nativeFlags, "-I", native.includeDirectory, ...args.headerDirectory ? ["-I", args.headerDirectory] : [], ...group.flags]))})],`,
27066
+ ` cSettings: [${macroSettings(owner?.cDefines)}${declaredClangSettings(owner, "c")} .unsafeFlags(${flagArray(targetCFlags([...nativeFlags, "-I", native.includeDirectory, ...args.headerDirectory ? ["-I", args.headerDirectory] : [], ...group.flags]))})],`,
27043
27067
  ...group.sources.some((source) => /\.(?:cc|cpp|cxx|mm)$/.test(source)) ? [
27044
- ` cxxSettings: [${macroSettings(owner?.cxxDefines)}${declaredClangSettings(owner, "cxx")} .unsafeFlags(${flagArray(cxxFlagArray([...cxxFlagsFor(nativeFlags), "-I", native.includeDirectory, ...group.cxxFlags]))})]),`
27068
+ ` cxxSettings: [${macroSettings(owner?.cxxDefines)}${declaredClangSettings(owner, "cxx")} .unsafeFlags(${flagArray(targetCxxFlags([...cxxFlagsFor(nativeFlags), "-I", native.includeDirectory, ...group.cxxFlags]))})]),`
27045
27069
  ] : [" ),"]
27046
27070
  ]) : [];
27047
27071
  }),
@@ -27933,7 +27957,10 @@ ${swiftProjectFilesProblems(input.projectFiles).join("\n")}`
27933
27957
  const target = bySourcePath.find(
27934
27958
  (candidate) => candidate.path === "." || file.startsWith(`${candidate.path}/`)
27935
27959
  );
27936
- if (target) swiftTargets.add(target.name);
27960
+ const excluded = target?.exclude?.some(
27961
+ (name3) => file === import_node_path41.default.posix.join(target.path, name3)
27962
+ );
27963
+ if (target && !excluded) swiftTargets.add(target.name);
27937
27964
  }
27938
27965
  const importedModules = /* @__PURE__ */ new Set();
27939
27966
  const swiftImportedModules = /* @__PURE__ */ new Set();
@@ -28979,6 +29006,9 @@ module ${moduleName2}.Swift {
28979
29006
  frameworkLink,
28980
29007
  [
28981
29008
  ...prebuilt.objects.map(quote),
29009
+ "-Wl,--start-lib",
29010
+ ...prebuilt.lazyObjects.map(quote),
29011
+ "-Wl,--end-lib",
28982
29012
  ...darwinRecordsRegion(prebuilt.providers.map(quote))
28983
29013
  ].join("\n") + "\n"
28984
29014
  );
@@ -29261,7 +29291,7 @@ function readCompiledArtifact(directory2, hash) {
29261
29291
  return null;
29262
29292
  const bytes = (0, import_node_fs42.readFileSync)(import_node_path41.default.join(directory2, "app.wasm"));
29263
29293
  const gzip2 = (0, import_node_fs42.readFileSync)(import_node_path41.default.join(directory2, "icu.gz"));
29264
- if ((0, import_node_crypto20.createHash)("sha256").update(bytes).digest("hex") !== receipt.wasm || (0, import_node_crypto20.createHash)("sha256").update(gzip2).digest("hex") !== receipt.icu || bytes.length < 8 || bytes.readUInt32LE(0) !== 1836278016 || bytes.readUInt32LE(4) !== 1)
29294
+ if ((0, import_node_crypto20.createHash)("sha256").update(bytes).digest("hex") !== receipt.wasm || (0, import_node_crypto20.createHash)("sha256").update(gzip2).digest("hex") !== receipt.icu || bytes.length <= 8 || bytes.readUInt32LE(0) !== 1836278016 || bytes.readUInt32LE(4) !== 1)
29265
29295
  return null;
29266
29296
  return { hash, bytes, icu: { sha256: receipt.icu, gzip: gzip2 } };
29267
29297
  } catch (error) {
@@ -29377,7 +29407,13 @@ function linkedFrameworkTargets(moduleRoot, input) {
29377
29407
  );
29378
29408
  const targets = compileTargets(input);
29379
29409
  const planning = targets.length > 0 ? targets : [{ name: "App", path: "." }];
29380
- const siblings = swiftTargetDependencies(input.files, planning, libraries.keys());
29410
+ const siblings = swiftTargetDependencies(
29411
+ input.files,
29412
+ planning.map(
29413
+ (target) => input.libraries?.[target.name] ? { ...target, exclude: [] } : target
29414
+ ),
29415
+ libraries.keys()
29416
+ );
29381
29417
  const reached = /* @__PURE__ */ new Set();
29382
29418
  const reach = (name3) => {
29383
29419
  if (name3 === "SwiftUI") return;
@@ -29679,9 +29715,31 @@ async function buildFrameworkProducts(scratch2, args) {
29679
29715
  }
29680
29716
  const providers = (0, import_node_fs42.readdirSync)(providerDir).filter((file) => file.endsWith(".o")).sort().map((file) => import_node_path41.default.join(providerDir, file));
29681
29717
  for (const provider of providers) linked.owners.set(provider, "DarwinRecords");
29718
+ const archive = import_node_path41.default.join(scratch2, "lib");
29719
+ (0, import_node_fs42.rmSync)(archive, { recursive: true, force: true });
29720
+ (0, import_node_fs42.mkdirSync)(archive);
29721
+ const archived = /* @__PURE__ */ new Map();
29722
+ for (const object6 of objects) {
29723
+ const target = linked.owners.get(object6);
29724
+ const dir = import_node_path41.default.join(release, `${target}.build`);
29725
+ if (!target || target === "Darwin" || !object6.startsWith(dir + import_node_path41.default.sep)) continue;
29726
+ const name3 = `${target}-${import_node_path41.default.relative(dir, object6).replaceAll(import_node_path41.default.sep, "-").replace(/\.swift\.o$/, ".o")}`;
29727
+ (0, import_node_fs42.symlinkSync)(object6, import_node_path41.default.join(archive, name3));
29728
+ archived.set(object6, `lib/${name3}`);
29729
+ }
29730
+ const roots = swiftObjcRootObjects(`${scratch2}
29731
+ ${args.frameworkKey}`, scratch2, [
29732
+ ...archived.values()
29733
+ ]);
29734
+ const linkedObjects = objects.map((object6) => {
29735
+ const name3 = archived.get(object6);
29736
+ return name3 ? { path: import_node_path41.default.join(scratch2, name3), lazy: !roots.has(name3) } : { path: object6, lazy: false };
29737
+ });
29682
29738
  return {
29739
+ root: scratch2,
29683
29740
  modules: import_node_path41.default.join(release, "Modules"),
29684
- objects,
29741
+ objects: linkedObjects.filter((object6) => !object6.lazy).map((object6) => object6.path),
29742
+ lazyObjects: linkedObjects.filter((object6) => object6.lazy).map((object6) => object6.path),
29685
29743
  owners: linked.owners,
29686
29744
  providers,
29687
29745
  link,
@@ -29831,6 +29889,10 @@ ${args.frameworkKey}
29831
29889
  for (const object6 of args.prebuilt.objects)
29832
29890
  hash.update(`object
29833
29891
  ${object6}
29892
+ ${statOf(object6)}`);
29893
+ for (const object6 of args.prebuilt.lazyObjects)
29894
+ hash.update(`lazy-object
29895
+ ${object6}
29834
29896
  ${statOf(object6)}`);
29835
29897
  for (const object6 of args.prebuilt.providers)
29836
29898
  hash.update(`provider
@@ -30247,7 +30309,7 @@ function compileSwiftProjectOnce(input, options) {
30247
30309
  pruneSwiftWasmLink(
30248
30310
  root,
30249
30311
  options.toolchainBin,
30250
- frameworkRoot,
30312
+ prebuilt?.root ?? frameworkRoot,
30251
30313
  input.staticClangTargets,
30252
30314
  options.project,
30253
30315
  void 0,
@@ -30271,11 +30333,19 @@ function compileSwiftProjectOnce(input, options) {
30271
30333
  optimized
30272
30334
  });
30273
30335
  else if (input.optimize) await optimizeWasm(output2, optimized);
30336
+ const executable = input.optimize ? optimized : output2;
30337
+ await runCompiler(
30338
+ import_node_path41.default.join(options.toolchainBin, "llvm-objcopy"),
30339
+ ["--remove-section=.swift1_autolink_entries", executable],
30340
+ buildOptions
30341
+ );
30274
30342
  const artifact = {
30275
30343
  hash,
30276
- bytes: (0, import_node_fs42.readFileSync)(input.optimize ? optimized : output2),
30344
+ bytes: (0, import_node_fs42.readFileSync)(executable),
30277
30345
  icu: await icu
30278
30346
  };
30347
+ if (artifact.bytes.length <= 8)
30348
+ throw new Error("swift-compile: deferred linker produced no executable");
30279
30349
  if (!options.project) saveCompiledArtifact(root, artifact);
30280
30350
  saveSharedArtifact(sharedRoot, artifact);
30281
30351
  report("compiled artifact verified");
@@ -30454,7 +30524,7 @@ var init_swift_compile = __esm({
30454
30524
  REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
30455
30525
  MULTI_MANIFEST_VERSION = 68;
30456
30526
  SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
30457
- compilerSourceDigest = true ? "49b49a3b4f72b519cda4a1310d169f7d233d4f0249b0bcff228d2c316fafd9e1" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
30527
+ compilerSourceDigest = true ? "73960368f0b83cf042511655d857d5f64204fa539e2c984423a12c08657b068e" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
30458
30528
  nativeCxxCompilerFlags = ["-fno-cxx-modules"];
30459
30529
  cFlagArray = (flags) => JSON.stringify(withoutGlogModuleMap(flags));
30460
30530
  cxxFlagArray = (flags) => JSON.stringify([...nativeCxxCompilerFlags, ...withoutGlogModuleMap(flags)]);
@@ -35464,7 +35534,7 @@ var init_swift_submit = __esm({
35464
35534
  MAX_SWIFT_COMPILE_IMAGES = 256;
35465
35535
  MAX_SWIFT_COMPILE_IMAGE_BYTES = 4 * 1024 * 1024;
35466
35536
  MAX_SWIFT_COMPILE_IMAGE_TOTAL_BYTES = 16 * 1024 * 1024;
35467
- SWIFT_HOST_ABI = 69;
35537
+ SWIFT_HOST_ABI = 70;
35468
35538
  POLL_INTERVAL_MS = 1500;
35469
35539
  }
35470
35540
  });
@@ -37574,6 +37644,7 @@ async function prepareWorkspace(app, stage, key2, podsEnvironment) {
37574
37644
  const nodeVersion = typeof manifest.engines?.node === "string" && /^\d+(\.\d+){0,2}$/.test(manifest.engines.node) ? manifest.engines.node : null;
37575
37645
  const prefix = nodeVersion ? ["mise", "exec", `node@${nodeVersion}`, "--"] : [];
37576
37646
  const bunPrefix = import_node_path57.default.join(cacheDir(), "package-managers", manager);
37647
+ const bunExecutable = import_node_path57.default.join(bunPrefix, "node_modules/.bin/bun");
37577
37648
  const install = manager === "pnpm" || manager.startsWith("pnpm@") ? [
37578
37649
  "npx",
37579
37650
  "--yes",
@@ -37582,11 +37653,7 @@ async function prepareWorkspace(app, stage, key2, podsEnvironment) {
37582
37653
  "--frozen-lockfile",
37583
37654
  // the copied node_modules link into the store pnpm chose on the app's volume
37584
37655
  ...pnpmStoreArgs(root)
37585
- ] : manager === "yarn" || manager.startsWith("yarn@") ? ["corepack", "yarn", "install", "--immutable"] : manager === "bun" || manager.startsWith("bun@") ? manager === "bun" ? ["bun", "install", "--frozen-lockfile"] : [
37586
- import_node_path57.default.join(bunPrefix, "node_modules/.bin/bun"),
37587
- "install",
37588
- "--frozen-lockfile"
37589
- ] : (
37656
+ ] : manager === "yarn" || manager.startsWith("yarn@") ? ["corepack", "yarn", "install", "--immutable"] : manager === "bun" || manager.startsWith("bun@") ? manager === "bun" ? ["bun", "install", "--frozen-lockfile"] : [bunExecutable, "install", "--frozen-lockfile"] : (
37590
37657
  // npm ci would delete the cloned tree before installing it again
37591
37658
  ["npm", "install", "--no-audit", "--no-fund"]
37592
37659
  );
@@ -37595,22 +37662,22 @@ async function prepareWorkspace(app, stage, key2, podsEnvironment) {
37595
37662
  const command = [...prefix, ...args];
37596
37663
  await run11(command[0], command.slice(1), cwd, env);
37597
37664
  };
37665
+ if (manager.startsWith("bun@") && (!projectReady || !import_node_fs57.default.existsSync(bunExecutable)))
37666
+ await execute(
37667
+ [
37668
+ "npm",
37669
+ "install",
37670
+ "--prefix",
37671
+ bunPrefix,
37672
+ // the bun package ships a placeholder binary its postinstall replaces
37673
+ "--ignore-scripts=false",
37674
+ "--no-audit",
37675
+ "--no-fund",
37676
+ manager
37677
+ ],
37678
+ work
37679
+ );
37598
37680
  if (!projectReady) {
37599
- if (manager.startsWith("bun@"))
37600
- await execute(
37601
- [
37602
- "npm",
37603
- "install",
37604
- "--prefix",
37605
- bunPrefix,
37606
- // the bun package ships a placeholder binary its postinstall replaces
37607
- "--ignore-scripts=false",
37608
- "--no-audit",
37609
- "--no-fund",
37610
- manager
37611
- ],
37612
- work
37613
- );
37614
37681
  if (install[0] === "npm" && import_node_fs57.default.existsSync(import_node_path57.default.join(work, "package-lock.json"))) {
37615
37682
  await execute(
37616
37683
  ["npm", "ci", "--dry-run", "--ignore-scripts", "--no-audit", "--no-fund"],
@@ -42652,7 +42719,7 @@ var init_swift_standin_digest = __esm({
42652
42719
  STANDIN_DIGEST_ENTRYPOINTS = ["swift-standins.ts", "swift-objc-compile.ts"];
42653
42720
  SPECIFIER = /from\s*['"]([^'"]+)['"]|import\s*\(\s*['"]([^'"]+)['"]\s*\)/g;
42654
42721
  standinSourceDigest = (srcDir = __sootsim_import_meta_dirname) => sourceClosureDigest(srcDir, STANDIN_DIGEST_ENTRYPOINTS);
42655
- STANDIN_SOURCE_DIGEST = true ? "a3c0ce4a9bde10ffdfdde4f65019a9ffc1f75b1779312f1d5ed2a686a3f6e0c7" : standinSourceDigest();
42722
+ STANDIN_SOURCE_DIGEST = true ? "cc396d180b261e922288f645807b4a704fa92410ffc902bfbaac72b81af6413a" : standinSourceDigest();
42656
42723
  }
42657
42724
  });
42658
42725
 
@@ -54631,7 +54698,7 @@ var init_nitro_superset = __esm({
54631
54698
  init_nitroContract();
54632
54699
  init_swift_standin_digest();
54633
54700
  NITRO_SUPERSET_ENTRY_NAME = "superset";
54634
- NITRO_COMPILER_DIGEST = true ? "0c558d82081eee0b4f4782c87d6575c3ffe493604ad9c4efe3b68378321ccbc2" : nitroCompilerSourceDigest(__sootsim_import_meta_dirname, STANDIN_SOURCE_DIGEST2);
54701
+ NITRO_COMPILER_DIGEST = true ? "4b0c1069391aa3533d7f86ec0218e3db332433aaaa017425707f0273d51d8ce5" : nitroCompilerSourceDigest(__sootsim_import_meta_dirname, STANDIN_SOURCE_DIGEST2);
54635
54702
  nitroSupersetLock = parseLock(nitro_superset_lock_default);
54636
54703
  nitroSupersetKey = (inputs) => nativeEntryKey({ ...inputs, compiler: NITRO_COMPILER_DIGEST });
54637
54704
  published = /* @__PURE__ */ new Map();
@@ -54849,7 +54916,7 @@ var init_nitro_bundle = __esm({
54849
54916
  });
54850
54917
 
54851
54918
  // src/one-sdk/source.ts
54852
- var oneSDKModule, oneSDKApp, oneSDKTransport;
54919
+ var oneSDKModule, oneSDKHost, oneSDKApp, oneSDKTransport;
54853
54920
  var init_source = __esm({
54854
54921
  "src/one-sdk/source.ts"() {
54855
54922
  "use strict";
@@ -54885,12 +54952,11 @@ extension OneNativeComposable {
54885
54952
  public func propagateActive(_ active: Bool) {}
54886
54953
  }
54887
54954
  `;
54888
- oneSDKApp = String.raw`import SwiftUI
54955
+ oneSDKHost = String.raw`import SwiftUI
54889
54956
  @_spi(Peach) import UIKit
54890
54957
  import One
54891
- import OneSDKBindings
54892
54958
 
54893
- private struct UIKitHost: UIViewRepresentable {
54959
+ struct OneSDKUIKitHost: UIViewRepresentable {
54894
54960
  let props: JSON
54895
54961
  func makeUIView(context: Context) -> OneNativeUIKitHostView { OneNativeUIKitHostView() }
54896
54962
  func updateUIView(_ view: OneNativeUIKitHostView, context: Context) {
@@ -54902,10 +54968,14 @@ private struct UIKitHost: UIViewRepresentable {
54902
54968
  }
54903
54969
  static func dismantleUIView(_ view: OneNativeUIKitHostView, coordinator: Coordinator) { view.reset() }
54904
54970
  }
54971
+ `;
54972
+ oneSDKApp = String.raw`import SwiftUI
54973
+ import One
54974
+ import OneSDKBindings
54905
54975
 
54906
54976
  @main
54907
54977
  struct SDKGuest: PeachPackage {
54908
- func view(props: JSON) -> some View { UIKitHost(props: props) }
54978
+ func view(props: JSON) -> some View { OneSDKUIKitHost(props: props) }
54909
54979
  }
54910
54980
  `;
54911
54981
  oneSDKTransport = String.raw`import Foundation
@@ -55200,10 +55270,12 @@ public func peachOneSDK(_ pointer: UnsafePointer<UInt8>, _ length: Int32) -> Uns
55200
55270
  var one_sdk_bundle_exports = {};
55201
55271
  __export(one_sdk_bundle_exports, {
55202
55272
  ONE_SDK_ROUTE: () => ONE_SDK_ROUTE,
55273
+ appOneSDKLinkSources: () => appOneSDKLinkSources,
55203
55274
  buildOneSDKBundle: () => buildOneSDKBundle,
55204
55275
  compileOneSDKApp: () => compileOneSDKApp,
55205
55276
  compilePreparedOneSDKApp: () => compilePreparedOneSDKApp,
55206
- handleOneSDKRequest: () => handleOneSDKRequest
55277
+ handleOneSDKRequest: () => handleOneSDKRequest,
55278
+ oneSDKLinkSources: () => oneSDKLinkSources
55207
55279
  });
55208
55280
  async function compileOneSDKApp(appRoot, origin, moduleRootOverride) {
55209
55281
  const selected = await selectOneSDK(appRoot);
@@ -55211,7 +55283,7 @@ async function compileOneSDKApp(appRoot, origin, moduleRootOverride) {
55211
55283
  const prepared = await prepareExpoNativeProject(appRoot);
55212
55284
  return compilePreparedOneSDKApp(appRoot, prepared.app, origin, moduleRootOverride);
55213
55285
  }
55214
- async function compilePreparedOneSDKApp(appRoot, preparedRoot, origin, moduleRootOverride) {
55286
+ async function oneSDKLinkSources(appRoot, preparedRoot) {
55215
55287
  const selected = await selectOneSDK(appRoot);
55216
55288
  if (!selected) throw new Error("prepared app has no One SDK imports");
55217
55289
  const { one, frameworks } = selected;
@@ -55226,6 +55298,39 @@ async function compilePreparedOneSDKApp(appRoot, preparedRoot, origin, moduleRoo
55226
55298
  throw new Error(
55227
55299
  "prepared One SDK sources differ from the installed facades or app imports"
55228
55300
  );
55301
+ const targets = /* @__PURE__ */ new Map();
55302
+ targets.set("Sources/One/One.swift", oneSDKModule);
55303
+ for (const source of [
55304
+ "SDK/OneSDKRuntime.swift",
55305
+ "OneNativeUIKitHostView.swift",
55306
+ "OneNativeContent.swift",
55307
+ "OneNativeAccessibility.swift",
55308
+ "SDKViews/OneNativeViewsTable.swift"
55309
+ ])
55310
+ targets.set(
55311
+ `Sources/One/${import_node_path88.default.basename(source)}`,
55312
+ import_node_fs89.default.readFileSync(import_node_path88.default.join(one, "ios", source), "utf8")
55313
+ );
55314
+ for (const name3 of generated.files)
55315
+ targets.set(
55316
+ `Sources/OneSDKBindings/${name3}`,
55317
+ import_node_fs89.default.readFileSync(import_node_path88.default.join(sourceRoot, name3), "utf8")
55318
+ );
55319
+ return {
55320
+ targets,
55321
+ entry: /* @__PURE__ */ new Map([
55322
+ ["OneSDKHost.swift", oneSDKHost],
55323
+ ["OneSDKTransport.swift", oneSDKTransport]
55324
+ ]),
55325
+ modules: frameworks.map((name3) => `${name3}_${generated.generation}`)
55326
+ };
55327
+ }
55328
+ async function appOneSDKLinkSources(appRoot) {
55329
+ if (!await selectOneSDK(appRoot)) return null;
55330
+ return oneSDKLinkSources(appRoot, (await prepareExpoNativeProject(appRoot)).app);
55331
+ }
55332
+ async function compilePreparedOneSDKApp(appRoot, preparedRoot, origin, moduleRootOverride) {
55333
+ const sources = await oneSDKLinkSources(appRoot, preparedRoot);
55229
55334
  const moduleRoot = moduleRootOverride ?? (await resolveSwiftModule()).root;
55230
55335
  const packagePath = import_node_path88.default.join(
55231
55336
  swiftCacheDir(),
@@ -55245,25 +55350,9 @@ let package = Package(name: "OneSDKGuest", targets: [
55245
55350
  ])
55246
55351
  `
55247
55352
  );
55248
- files2.set("Sources/One/One.swift", oneSDKModule);
55249
- for (const source of [
55250
- "SDK/OneSDKRuntime.swift",
55251
- "OneNativeUIKitHostView.swift",
55252
- "OneNativeContent.swift",
55253
- "OneNativeAccessibility.swift",
55254
- "SDKViews/OneNativeViewsTable.swift"
55255
- ])
55256
- files2.set(
55257
- `Sources/One/${import_node_path88.default.basename(source)}`,
55258
- import_node_fs89.default.readFileSync(import_node_path88.default.join(one, "ios", source), "utf8")
55259
- );
55260
- for (const name3 of generated.files)
55261
- files2.set(
55262
- `Sources/OneSDKBindings/${name3}`,
55263
- import_node_fs89.default.readFileSync(import_node_path88.default.join(sourceRoot, name3), "utf8")
55264
- );
55353
+ for (const [name3, source] of sources.targets) files2.set(name3, source);
55354
+ for (const [name3, source] of sources.entry) files2.set(`Sources/App/${name3}`, source);
55265
55355
  files2.set("Sources/App/App.swift", oneSDKApp);
55266
- files2.set("Sources/App/Transport.swift", oneSDKTransport);
55267
55356
  import_node_fs89.default.mkdirSync(packagePath, { recursive: true });
55268
55357
  syncSwiftTree(
55269
55358
  packagePath,
@@ -55271,6 +55360,7 @@ let package = Package(name: "OneSDKGuest", targets: [
55271
55360
  );
55272
55361
  const project2 = projectFor(packagePath);
55273
55362
  project2.oneModule = false;
55363
+ project2.optimize = true;
55274
55364
  const artifact = await artifactFor(project2, "Sources/App/App.swift", moduleRoot);
55275
55365
  const metadata = {
55276
55366
  url: `${origin}/__peach/swift/${artifact.hash}.wasm`,
@@ -55278,7 +55368,7 @@ let package = Package(name: "OneSDKGuest", targets: [
55278
55368
  icuUrl: icuUrl(origin, artifact),
55279
55369
  rootId: `one-sdk-${artifact.hash.slice(0, 16)}`,
55280
55370
  bundleFiles: artifact.package.bundleFiles.files,
55281
- modules: frameworks.map((name3) => `${name3}_${generated.generation}`)
55371
+ modules: sources.modules
55282
55372
  };
55283
55373
  return { metadata, artifact };
55284
55374
  }
@@ -55833,7 +55923,7 @@ var init_expo_native_compiler_digest = __esm({
55833
55923
 
55834
55924
  // src/expo-native-prebuilt.ts
55835
55925
  function expoNativeCompilerDigestValue() {
55836
- return true ? "ac42571af765c2d0124171549a0a6350da01f038cf184c0f638923a4932a5e8b" : expoNativeCompilerDigest(__sootsim_import_meta_dirname);
55926
+ return true ? "2799fbdcc514ac59227047679bf5780658834c45f46965b7b41455f6453d53e2" : expoNativeCompilerDigest(__sootsim_import_meta_dirname);
55837
55927
  }
55838
55928
  function readSources(value) {
55839
55929
  const sources = isRecord(value) ? value.sources : null;
@@ -58219,7 +58309,15 @@ function targetSettings2(units) {
58219
58309
  }
58220
58310
  return settings;
58221
58311
  }
58222
- function expoEntry(units) {
58312
+ function oneSDKStamp(oneSDK) {
58313
+ if (!oneSDK) return "";
58314
+ const hash = (0, import_node_crypto50.createHash)("sha256");
58315
+ for (const files2 of [oneSDK.targets, oneSDK.entry])
58316
+ for (const [name3, source] of [...files2].sort(([a], [b]) => a.localeCompare(b)))
58317
+ hash.update(`${name3}\0${source}\0`);
58318
+ return hash.digest("hex");
58319
+ }
58320
+ function expoEntry(units, oneSDK = false) {
58223
58321
  const namespaces = [...new Set(units.map((unit2) => unit2.namespace))].filter((namespace) => namespace !== "PeachExpoApp").filter(
58224
58322
  (namespace) => units.some(
58225
58323
  (unit2) => Object.keys(unit2.files).some((file) => file.startsWith(`Sources/${namespace}/`))
@@ -58229,13 +58327,14 @@ function expoEntry(units) {
58229
58327
  const subscribers = units.flatMap((unit2) => unit2.appDelegateSubscribers);
58230
58328
  const handlers = units.flatMap((unit2) => unit2.reactDelegateHandlers);
58231
58329
  const delegates = subscribers.length + handlers.length > 0 ? `; PeachExpoRuntime.registerDelegates(subscribers: [${subscribers.join(", ")}], handlers: [${handlers.join(", ")}])` : "";
58330
+ const view = oneSDK ? '@ViewBuilder func view(props: JSON) -> some View {\n if props["oneSDKHost"] != nil { OneSDKUIKitHost(props: props) } else { PeachExpoNativeView(props: props) }\n }' : "func view(props: JSON) -> PeachExpoNativeView { PeachExpoNativeView(props: props) }";
58232
58331
  return `import SwiftUI
58233
58332
  internal import ExpoModulesCore
58234
- ${bridgeModules.length ? "import React\n" : ""}${namespaces.map((namespace) => `import ${namespace}`).join("\n")}
58333
+ ${bridgeModules.length ? "import React\n" : ""}${oneSDK ? "import One\nimport OneSDKBindings\n" : ""}${namespaces.map((namespace) => `import ${namespace}`).join("\n")}
58235
58334
 
58236
58335
  @main struct PeachExpoApp: PeachPackage {
58237
58336
  init() { MainActor.assumeIsolated { PeachExpoRuntime.register([${units.flatMap((unit2) => unit2.classes).join(", ")}])${delegates}${bridgeModules.length ? `; RCTModuleHost.register([${bridgeModules.join(", ")}])` : ""} } }
58238
- func view(props: JSON) -> PeachExpoNativeView { PeachExpoNativeView(props: props) }
58337
+ ${view}
58239
58338
  }
58240
58339
 
58241
58340
  @_expose(wasm, "peach_expo_call")
@@ -58327,7 +58426,7 @@ async function compileExpoSwiftModules(root, base, publishArtifact, options = {}
58327
58426
  installSwiftInputTrace();
58328
58427
  let key2;
58329
58428
  try {
58330
- key2 = `${await discoveryKey(root, options.installedWorkspace, true, options.iosTarget, options.moduleRoot)}\0${options.only?.join(",") ?? ""}`;
58429
+ key2 = `${await discoveryKey(root, options.installedWorkspace, true, options.iosTarget, options.moduleRoot)}\0${options.only?.join(",") ?? ""}\0${oneSDKStamp(options.oneSDK)}`;
58331
58430
  } catch {
58332
58431
  return compileExpoSwiftModulesTraced(root, base, publishArtifact, options);
58333
58432
  }
@@ -58364,11 +58463,23 @@ async function compileExpoSwiftModulesTraced(root, base, publishArtifact, option
58364
58463
  throw new Error(`conflicting Expo Swift binary source ${name3}`);
58365
58464
  files2[name3] = source;
58366
58465
  }
58367
- files2[EXPO_SWIFT_ENTRY] = expoEntry(linked2);
58466
+ const settings = targetSettings2(linked2);
58467
+ if (options.oneSDK) {
58468
+ for (const [name3, source] of options.oneSDK.targets) files2[name3] = source;
58469
+ for (const [name3, source] of options.oneSDK.entry)
58470
+ files2[`Sources/PeachExpoApp/${name3}`] = source;
58471
+ settings.set("OneSDKBindings", {
58472
+ languageMode: 5,
58473
+ mainActorIsolation: false,
58474
+ swiftFlags: ["-suppress-warnings"],
58475
+ dependencies: [{ kind: "target", name: "One" }]
58476
+ });
58477
+ }
58478
+ files2[EXPO_SWIFT_ENTRY] = expoEntry(linked2, options.oneSDK !== void 0);
58368
58479
  files2["Package.swift"] = expoManifest(
58369
58480
  files2,
58370
58481
  linked2.map((unit2) => generations.get(unit2) ?? "").join(","),
58371
- targetSettings2(linked2)
58482
+ settings
58372
58483
  );
58373
58484
  const provider = linked2.some((unit2) => unit2.reactNativeProvider) ? reactProvider : void 0;
58374
58485
  if (provider) {
@@ -58729,7 +58840,11 @@ async function compileExpoSwiftModulesTraced(root, base, publishArtifact, option
58729
58840
  stamps.set(unit2, stamp);
58730
58841
  candidates.push(unit2);
58731
58842
  }
58732
- const preparedKey = expoSwiftPreparedKey(base, units, reactProviderStamp);
58843
+ const preparedKey = expoSwiftPreparedKey(
58844
+ base,
58845
+ units,
58846
+ reactProviderStamp + oneSDKStamp(options.oneSDK)
58847
+ );
58733
58848
  if (!publishArtifact) {
58734
58849
  const prepared = preparedExpoSwift.get(preparedKey);
58735
58850
  if (prepared) {
@@ -58985,7 +59100,7 @@ var expo_swift_bundle_exports = {};
58985
59100
  __export(expo_swift_bundle_exports, {
58986
59101
  buildExpoSwiftBundle: () => buildExpoSwiftBundle
58987
59102
  });
58988
- async function buildExpoSwiftBundle(appRoot) {
59103
+ async function buildExpoSwiftBundle(appRoot, oneSDK) {
58989
59104
  const assets2 = [];
58990
59105
  const metadata = await compileExpoSwiftModules(
58991
59106
  appRoot,
@@ -58998,7 +59113,8 @@ async function buildExpoSwiftBundle(appRoot) {
58998
59113
  contentType: "application/wasm"
58999
59114
  });
59000
59115
  if ("gzip" in artifact.icu) assets2.push(await swiftIcuBundleAsset(artifact.icu));
59001
- }
59116
+ },
59117
+ { oneSDK }
59002
59118
  );
59003
59119
  if (!metadata) return null;
59004
59120
  return { metadata, assets: assets2 };
@@ -60189,7 +60305,11 @@ function entrySource(ids) {
60189
60305
  "",
60190
60306
  "@OptIn(kotlin.js.ExperimentalJsExport::class)",
60191
60307
  "@JsExport",
60192
- "fun peachSetAndroidBuildInfo(model: String, release: String, apiLevel: Int) = Build.setDevice(model, release, apiLevel)",
60308
+ "fun peachSetAndroidDeviceInfo(model: String, release: String, apiLevel: Int, locale: String, timeZone: String) {",
60309
+ " Build.setDevice(model, release, apiLevel)",
60310
+ " java.util.Locale.setDefault(java.util.Locale.forLanguageTag(locale))",
60311
+ " java.util.TimeZone.setDevice(timeZone)",
60312
+ "}",
60193
60313
  "",
60194
60314
  "@OptIn(kotlin.js.ExperimentalJsExport::class, kotlinx.coroutines.DelicateCoroutinesApi::class)",
60195
60315
  "@JsExport",
@@ -60556,8 +60676,12 @@ async function expoKotlinArtifact(root, moduleRoot, origin, modules) {
60556
60676
  " ))",
60557
60677
  "}",
60558
60678
  "",
60559
- "@JsExport fun peachSetAndroidBuildInfo(model: String, release: String, apiLevel: Int) =",
60679
+ "@JsExport fun peachSetAndroidDeviceInfo(model: String, release: String, apiLevel: Int, locale: String, timeZone: String) {",
60560
60680
  " android.os.Build.setDevice(model, release, apiLevel)",
60681
+ " java.util.Locale.setDefault(java.util.Locale.forLanguageTag(locale))",
60682
+ " java.util.TimeZone.setDevice(timeZone)",
60683
+ " PeachExpoRuntime.configureProcessLocale(locale)",
60684
+ "}",
60561
60685
  "",
60562
60686
  "@JsExport fun peachExpoListen(notify: () -> Unit) {",
60563
60687
  " registered",
@@ -62387,7 +62511,7 @@ var import_node_path5 = require("node:path");
62387
62511
  init_src();
62388
62512
 
62389
62513
  // runtime-companion.json
62390
- var runtime_companion_default = { abi: 1, sha256: "c5311b24d34f15e1e93e1e7fc426600404705562e03ce05c7c359e341afc75cd", file: "node/cli-c5311b24d34f15e1e93e1e7fc426600404705562e03ce05c7c359e341afc75cd.cjs" };
62514
+ var runtime_companion_default = { abi: 1, sha256: "d1826a4d4d05c87a157d5b160177de9cd6f1fd10a3d142804a92a0d57ff3060f", file: "node/cli-d1826a4d4d05c87a157d5b160177de9cd6f1fd10a3d142804a92a0d57ff3060f.cjs" };
62391
62515
 
62392
62516
  // src/cli-runtime.ts
62393
62517
  init_answeredNativePackages();
@@ -65692,13 +65816,29 @@ function getRuntimePlatformAdapter(platform2) {
65692
65816
  // src/native-bundles.ts
65693
65817
  async function buildNativeBundles(projectRoot, platform2, configuration) {
65694
65818
  return getRuntimePlatformAdapter(platform2).select({
65695
- ios: async () => ({
65696
- oneSDK: await (await Promise.resolve().then(() => (init_one_sdk_bundle(), one_sdk_bundle_exports))).buildOneSDKBundle(projectRoot),
65697
- expoSwift: await (await Promise.resolve().then(() => (init_expo_swift_bundle(), expo_swift_bundle_exports))).buildExpoSwiftBundle(projectRoot),
65698
- nitro: await (await Promise.resolve().then(() => (init_nitro_bundle(), nitro_bundle_exports))).buildNitroBundle(projectRoot, configuration),
65699
- turbo: await (await Promise.resolve().then(() => (init_turbo_bundle(), turbo_bundle_exports))).buildTurboBundle(projectRoot),
65700
- expoKotlin: null
65701
- }),
65819
+ ios: async () => {
65820
+ const { appOneSDKLinkSources: appOneSDKLinkSources2, buildOneSDKBundle: buildOneSDKBundle2 } = await Promise.resolve().then(() => (init_one_sdk_bundle(), one_sdk_bundle_exports));
65821
+ const oneSDK = await appOneSDKLinkSources2(projectRoot);
65822
+ const expoSwift = await (await Promise.resolve().then(() => (init_expo_swift_bundle(), expo_swift_bundle_exports))).buildExpoSwiftBundle(projectRoot, oneSDK ?? void 0);
65823
+ const linked = oneSDK && expoSwift?.metadata.modules[0];
65824
+ return {
65825
+ oneSDK: linked ? {
65826
+ metadata: {
65827
+ url: linked.url,
65828
+ hash: linked.hash,
65829
+ icuUrl: linked.icuUrl,
65830
+ rootId: `${linked.rootId.split("/")[0]}/OneSDK`,
65831
+ bundleFiles: linked.bundleFiles ?? {},
65832
+ modules: oneSDK.modules
65833
+ },
65834
+ assets: []
65835
+ } : await buildOneSDKBundle2(projectRoot),
65836
+ expoSwift,
65837
+ nitro: await (await Promise.resolve().then(() => (init_nitro_bundle(), nitro_bundle_exports))).buildNitroBundle(projectRoot, configuration),
65838
+ turbo: await (await Promise.resolve().then(() => (init_turbo_bundle(), turbo_bundle_exports))).buildTurboBundle(projectRoot),
65839
+ expoKotlin: null
65840
+ };
65841
+ },
65702
65842
  android: async () => ({
65703
65843
  oneSDK: null,
65704
65844
  expoSwift: null,
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2179 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2182 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
  let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2179 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2182 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
 
3
3
  // src/capture-contract.ts
4
4
  var RNX_SCREEN_CAPTURE_VERSION = 1;
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2179 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2182 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
  let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;