peachsim 0.1.2213 → 0.1.2215

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 (91) hide show
  1. package/dist-lib/agent-daemon-client.cjs +1 -1
  2. package/dist-lib/agent-events.cjs +1 -1
  3. package/dist-lib/attached-projects.cjs +1 -1
  4. package/dist-lib/auth/shared-session.cjs +1 -1
  5. package/dist-lib/backend-origin.cjs +1 -1
  6. package/dist-lib/beta.cjs +1 -1
  7. package/dist-lib/beta.mjs +1 -1
  8. package/dist-lib/bridge-constants.cjs +1 -1
  9. package/dist-lib/bridge-contract-input.cjs +1 -1
  10. package/dist-lib/bridge-contract-input.mjs +1 -1
  11. package/dist-lib/bridge-contract.cjs +1 -1
  12. package/dist-lib/bridge-contract.mjs +1 -1
  13. package/dist-lib/bundle-channel.cjs +22 -13
  14. package/dist-lib/capture-contract.cjs +1 -1
  15. package/dist-lib/capture-contract.mjs +1 -1
  16. package/dist-lib/cloud-contract.cjs +1 -1
  17. package/dist-lib/cloud-contract.mjs +1 -1
  18. package/dist-lib/cloud-test-args.cjs +1 -1
  19. package/dist-lib/cloud-test-args.mjs +1 -1
  20. package/dist-lib/cloud.cjs +1 -1
  21. package/dist-lib/cloud.mjs +1 -1
  22. package/dist-lib/config.cjs +1 -1
  23. package/dist-lib/config.mjs +1 -1
  24. package/dist-lib/detox/index.cjs +2 -2
  25. package/dist-lib/dev-bundle-resolution.cjs +1 -1
  26. package/dist-lib/expo-swift-bundle.cjs +20 -11
  27. package/dist-lib/expo-swift-metadata.cjs +1 -1
  28. package/dist-lib/expo-swift-metadata.mjs +1 -1
  29. package/dist-lib/home-paths.cjs +1 -1
  30. package/dist-lib/host/bridge-host.cjs +28 -16
  31. package/dist-lib/host/fetch-proxy-handler.cjs +5 -5
  32. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  33. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  34. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  35. package/dist-lib/host/websocket-proxy.cjs +1 -1
  36. package/dist-lib/index.cjs +11 -8
  37. package/dist-lib/jump-to-source-babel.cjs +1 -1
  38. package/dist-lib/jump-to-source-native.cjs +1 -1
  39. package/dist-lib/kotlin-host.cjs +1 -1
  40. package/dist-lib/menu.cjs +1 -1
  41. package/dist-lib/menu.mjs +1 -1
  42. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  43. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  44. package/dist-lib/metro-production-bundle.cjs +1 -1
  45. package/dist-lib/metro-production-bundle.mjs +1 -1
  46. package/dist-lib/metro.cjs +11 -8
  47. package/dist-lib/native-app-identity-project.cjs +3 -3
  48. package/dist-lib/native-app-identity-project.mjs +3 -3
  49. package/dist-lib/native-app-identity.cjs +1 -1
  50. package/dist-lib/native-app-identity.mjs +1 -1
  51. package/dist-lib/native-firebase-metadata.cjs +1 -1
  52. package/dist-lib/native-firebase-metadata.mjs +1 -1
  53. package/dist-lib/pdfium-raster.cjs +1 -1
  54. package/dist-lib/pdfium-raster.mjs +1 -1
  55. package/dist-lib/plist.cjs +1 -1
  56. package/dist-lib/plist.mjs +1 -1
  57. package/dist-lib/profiles.cjs +1 -1
  58. package/dist-lib/public-brand.cjs +1 -1
  59. package/dist-lib/public-origins-lib-esm.json +24 -24
  60. package/dist-lib/public-origins-lib.json +53 -53
  61. package/dist-lib/react-native-host-modules.cjs +1 -1
  62. package/dist-lib/react-native-host-modules.mjs +1 -1
  63. package/dist-lib/reap-browser.cjs +1 -1
  64. package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
  65. package/dist-lib/sdk.cjs +1 -1
  66. package/dist-lib/sdk.mjs +1 -1
  67. package/dist-lib/skills.cjs +28 -16
  68. package/dist-lib/swift-compile.cjs +2 -2
  69. package/dist-lib/swift-compile.mjs +2 -2
  70. package/dist-lib/swift-package.cjs +1 -1
  71. package/dist-lib/swift-package.mjs +1 -1
  72. package/dist-lib/swift-submit.cjs +1 -1
  73. package/dist-lib/swift-submit.mjs +1 -1
  74. package/dist-lib/swift-toolchain.cjs +1 -1
  75. package/dist-lib/swift.cjs +1 -1
  76. package/dist-lib/vite-swift.cjs +18 -9
  77. package/dist-lib/vite.cjs +11 -8
  78. package/dist-lib/worklet-executable.cjs +1 -1
  79. package/dist-lib/worklet-executable.mjs +1 -1
  80. package/dist-types/packages/peach-engine/src/engine/native-layout.d.ts +4 -0
  81. package/dist-types/packages/peach-engine/src/engine/scene-table.d.ts +4 -0
  82. package/dist-types/packages/peach-engine/src/engine/scroll.d.ts +3 -0
  83. package/dist-types/packages/peach-engine/src/render-worker/shell-protocol.d.ts +42 -0
  84. package/kotlin/sdk.tar.gz +0 -0
  85. package/package.json +1 -1
  86. package/runtime-companion.json +1 -1
  87. package/sdk/ios/System/Library/Frameworks/UIKit.framework/Headers/UINibLoading.h +1 -1
  88. package/sdk/ios/wasm/include/fcntl.h +3 -0
  89. package/src/swift-package-manifest.ts +7 -2
  90. package/src/swift-standin-emit.ts +1 -1
  91. package/src/swift-standins.ts +10 -3
package/dist-lib/sdk.mjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
  var __defProp = Object.defineProperty;
3
3
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4
4
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (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;
@@ -39,7 +39,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
39
39
  var define_SWIFT_COVERAGE_SOURCE_DIGESTS_default;
40
40
  var init_define_SWIFT_COVERAGE_SOURCE_DIGESTS = __esm({
41
41
  "<define:__SWIFT_COVERAGE_SOURCE_DIGESTS__>"() {
42
- define_SWIFT_COVERAGE_SOURCE_DIGESTS_default = { "swift-coverage/indexdump.ts": "0d82d8eeb96bf377f409ea7e33274c341a710c0e071f6b6e17571a23d8d92412", "swift-coverage/indexing.ts": "633ccf19eec1f382a8847d0ee1dca42a2792a3c60aafd43622ed5152b09b8272", "swift-coverage/types.ts": "bd8fae54ea6c53e110cd8a5d7b57c1d532dd0166e09fdaea63c4f270c3780dd1", "swift-coverage/source.ts": "c151758a9f67631bc61473c375df0dc017da6902a34533b2cf4fc4fd7d19b6ee", "swift-coverage/package.ts": "1f0068be7461fa7c5a7a891faf318f305cbed2e94c19667ba76627f7e5be260b", "swift-coverage/xcode.ts": "65a500b806ce1c3a496de27f2e0ad77287c0f6795c618342c08af647f92af1fa", "swift-coverage/xcode-assets.ts": "99e03b74c961d2449afd58c2cbc415ba91d1d469a4f89e461c137fd6c305b27c", "swift-coverage/xcode-asset-symbols.ts": "1b2a67733bc9d139b351466270205452a6172140bc25080d72619e2952c44671", "swift-coverage/xcode-bridging.ts": "33184be8c5daf6646aa5a1276a4e15531f1be27b7c26f56550e0fbb1fc678a11", "swift-coverage/xcode-packages.ts": "8e6020d17d24474150a5a50d042aca6261819ef75c79680a287a66f395909915", "swift-coverage/xcode-strings.ts": "f2dd4c7cd8ef77035184b0132909c2fa09fd20ed06b7757c2f1f960bfdde031c", "swift-coverage/reader.ts": "da559b67ecd1161dea70c980b5f98f2c55af3550f0714479100fa5e9e813625c", "swift-coverage/provenance.ts": "eb3b41ae8b58b48f6758f084800f188dfb1edb227e483abdd6b80cde66e849b9", "swift-package-manifest.ts": "4b7d4a715cdaf57468ead23f2ff9dce76d02c6a888d73d144d4baa2ae571ba3c", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "25505683ca29a0b380413bf2a5026d4967eacf886e35bc11ece6e15317e5bb02", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "86f79e98323ec065e0e5195324c75ca608f490efbd95dcc25c53d5aa0b9aecc9", "xcode-target-members.ts": "ad7589132bffab265e8a10b64e24484fe88b4a2b1cc0ee19a97f151a002eca77", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
42
+ define_SWIFT_COVERAGE_SOURCE_DIGESTS_default = { "swift-coverage/indexdump.ts": "0d82d8eeb96bf377f409ea7e33274c341a710c0e071f6b6e17571a23d8d92412", "swift-coverage/indexing.ts": "633ccf19eec1f382a8847d0ee1dca42a2792a3c60aafd43622ed5152b09b8272", "swift-coverage/types.ts": "bd8fae54ea6c53e110cd8a5d7b57c1d532dd0166e09fdaea63c4f270c3780dd1", "swift-coverage/source.ts": "c151758a9f67631bc61473c375df0dc017da6902a34533b2cf4fc4fd7d19b6ee", "swift-coverage/package.ts": "1f0068be7461fa7c5a7a891faf318f305cbed2e94c19667ba76627f7e5be260b", "swift-coverage/xcode.ts": "65a500b806ce1c3a496de27f2e0ad77287c0f6795c618342c08af647f92af1fa", "swift-coverage/xcode-assets.ts": "99e03b74c961d2449afd58c2cbc415ba91d1d469a4f89e461c137fd6c305b27c", "swift-coverage/xcode-asset-symbols.ts": "1b2a67733bc9d139b351466270205452a6172140bc25080d72619e2952c44671", "swift-coverage/xcode-bridging.ts": "33184be8c5daf6646aa5a1276a4e15531f1be27b7c26f56550e0fbb1fc678a11", "swift-coverage/xcode-packages.ts": "8e6020d17d24474150a5a50d042aca6261819ef75c79680a287a66f395909915", "swift-coverage/xcode-strings.ts": "f2dd4c7cd8ef77035184b0132909c2fa09fd20ed06b7757c2f1f960bfdde031c", "swift-coverage/reader.ts": "da559b67ecd1161dea70c980b5f98f2c55af3550f0714479100fa5e9e813625c", "swift-coverage/provenance.ts": "eb3b41ae8b58b48f6758f084800f188dfb1edb227e483abdd6b80cde66e849b9", "swift-package-manifest.ts": "29c2661be4b952101c9b9b8fd861560e6ce63b25dd4464f47475aaf72024f4fe", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "25505683ca29a0b380413bf2a5026d4967eacf886e35bc11ece6e15317e5bb02", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "86f79e98323ec065e0e5195324c75ca608f490efbd95dcc25c53d5aa0b9aecc9", "xcode-target-members.ts": "ad7589132bffab265e8a10b64e24484fe88b4a2b1cc0ee19a97f151a002eca77", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
43
43
  }
44
44
  });
45
45
 
@@ -29191,7 +29191,6 @@ var init_packs = __esm({
29191
29191
  RUNTIME_PACK_MARKER = ".pack";
29192
29192
  RUNTIME_PACK_PREFIXES = [
29193
29193
  "engine/fonts/emoji/",
29194
- "engine/fonts/lang/",
29195
29194
  "engine/fonts/named/",
29196
29195
  "engine/fonts/vector-icons/",
29197
29196
  "engine/fonts/webview/",
@@ -29310,8 +29309,12 @@ function createRuntimeDelivery(product) {
29310
29309
  process.stderr.write(`${product.id}: downloading runtime ${version2}\u2026
29311
29310
  `);
29312
29311
  await installVerifiedTarball({
29313
- url: entry.tarball || tarballUrl(version2, cdnOrigin),
29314
- digest: { algorithm: "sha256", encoding: "hex", value: entry.sha256 },
29312
+ url: entry.base?.tarball || entry.tarball || tarballUrl(version2, cdnOrigin),
29313
+ digest: {
29314
+ algorithm: "sha256",
29315
+ encoding: "hex",
29316
+ value: entry.base?.sha256 ?? entry.sha256
29317
+ },
29315
29318
  destDir,
29316
29319
  installedMarker: product.installedMarker,
29317
29320
  verify: product.verifyInstall,
@@ -58512,7 +58515,7 @@ int EXUpdatesApplyBSDiffPatch(const char * _Nonnull oldFilePath,
58512
58515
  REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
58513
58516
  MULTI_MANIFEST_VERSION = 68;
58514
58517
  SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
58515
- compilerSourceDigest = true ? "4646bbe2e0cd2e48e498f51fd3d0d5ea29ecd5e6163fdf3afe8d64d4368022d7" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
58518
+ compilerSourceDigest = true ? "94960e7e108c556e2184ef22baae1e061ca63c08c954c6ad0f677b524be5e117" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
58516
58519
  nativeCxxCompilerFlags = ["-fno-cxx-modules"];
58517
58520
  cFlagArray = (flags) => JSON.stringify(withoutGlogModuleMap(flags));
58518
58521
  cxxFlagArray = (flags) => JSON.stringify([...nativeCxxCompilerFlags, ...withoutGlogModuleMap(flags)]);
@@ -60010,8 +60013,10 @@ function swiftPackageManifest(dir, platform2 = GUEST_PLATFORMS, requirePrepared
60010
60013
  name: name4,
60011
60014
  type: kind,
60012
60015
  dir: targetDir,
60013
- sources: target.sources == null ? null : array3(target.sources).flatMap((file) => string4(file) ?? []),
60014
- exclude: array3(target.exclude).flatMap((file) => string4(file) ?? []),
60016
+ // swiftpm resolves these as normalized relative paths, so a directory
60017
+ // written with a trailing slash selects its contents
60018
+ sources: target.sources == null ? null : array3(target.sources).flatMap((file) => targetRelative(string4(file))),
60019
+ exclude: array3(target.exclude).flatMap((file) => targetRelative(string4(file))),
60015
60020
  dependencies,
60016
60021
  languageMode,
60017
60022
  mainActorIsolation,
@@ -60178,7 +60183,7 @@ function swiftTargetFiles(manifest, target) {
60178
60183
  }
60179
60184
  return [...new Set(files2)].sort();
60180
60185
  }
60181
- var import_node_child_process32, import_node_crypto27, import_node_fs57, import_node_os14, import_node_path54, import_node_util8, TARGET_TYPES, isTargetType, record, array3, string4, cacheDir3, evaluated, execFileAsync, cachedToolchain, SwiftManifestPreparationRequired, manifestPreparations, GUEST_PLATFORMS, within, requirementClause;
60186
+ var import_node_child_process32, import_node_crypto27, import_node_fs57, import_node_os14, import_node_path54, import_node_util8, TARGET_TYPES, targetRelative, isTargetType, record, array3, string4, cacheDir3, evaluated, execFileAsync, cachedToolchain, SwiftManifestPreparationRequired, manifestPreparations, GUEST_PLATFORMS, within, requirementClause;
60182
60187
  var init_swift_package_manifest = __esm({
60183
60188
  "src/swift-package-manifest.ts"() {
60184
60189
  "use strict";
@@ -60203,6 +60208,7 @@ var init_swift_package_manifest = __esm({
60203
60208
  "macro",
60204
60209
  "plugin"
60205
60210
  ];
60211
+ targetRelative = (file) => file === void 0 ? [] : [import_node_path54.default.posix.normalize(file).replace(/(?<=.)\/+$/, "")];
60206
60212
  isTargetType = (value) => TARGET_TYPES.some((type) => type === value);
60207
60213
  record = (value) => value && typeof value === "object" && !Array.isArray(value) ? value : {};
60208
60214
  array3 = (value) => Array.isArray(value) ? value : [];
@@ -64976,7 +64982,7 @@ var init_swift_standin_digest = __esm({
64976
64982
  STANDIN_DIGEST_ENTRYPOINTS = ["swift-standins.ts", "swift-objc-compile.ts"];
64977
64983
  SPECIFIER = /from\s*['"]([^'"]+)['"]|import\s*\(\s*['"]([^'"]+)['"]\s*\)/g;
64978
64984
  standinSourceDigest = (srcDir = __sootsim_import_meta_dirname) => sourceClosureDigest(srcDir, STANDIN_DIGEST_ENTRYPOINTS);
64979
- STANDIN_SOURCE_DIGEST = true ? "f077081111b09ca27482cd53be422dae6cd1bd3a5fd2b2bdef48a83a9c0d6ca8" : standinSourceDigest();
64985
+ STANDIN_SOURCE_DIGEST = true ? "11f82a07cd8d59c1bfcf554927b6e5a2d9b01d6846fd7107ca7c0f6f30519538" : standinSourceDigest();
64980
64986
  }
64981
64987
  });
64982
64988
 
@@ -65437,7 +65443,7 @@ var init_package_tree_digest = __esm({
65437
65443
 
65438
65444
  // src/expo-native-prebuilt.ts
65439
65445
  function expoNativeCompilerDigestValue() {
65440
- return true ? "84a9fe588bafb71e772f78ffc8de2ac50d4ff654547f5aab6cb44528fc7c7d15" : expoNativeCompilerDigest(__sootsim_import_meta_dirname);
65446
+ return true ? "a1caac6e554ff18ecb9954c73f8c6c5dfefe5f660a6ad15ac8c78cb415a579db" : expoNativeCompilerDigest(__sootsim_import_meta_dirname);
65441
65447
  }
65442
65448
  function readSources(value) {
65443
65449
  const sources = isRecord(value) ? value.sources : null;
@@ -68696,10 +68702,12 @@ function objcStandin(surface, binary2, toolchain, work, behavior, frameworks, si
68696
68702
  null,
68697
68703
  /* @__PURE__ */ new Map(),
68698
68704
  /* @__PURE__ */ new Map(),
68699
- dependencyGraphs
68705
+ dependencyGraphs,
68706
+ "",
68707
+ view.imports.filter((name3) => provided.has(name3) || siblings.has(name3))
68700
68708
  );
68701
68709
  }
68702
- function graphStandin(module2, graphs, values, wasm, binary2, toolchain, work, requiredInits2, declared, imports2 = [], requireSwift = false, objcProperties = /* @__PURE__ */ new Map(), placeholder = null, inheritedConformances = /* @__PURE__ */ new Map(), projections = /* @__PURE__ */ new Map(), dependencyGraphs = [], trailer = "") {
68710
+ function graphStandin(module2, graphs, values, wasm, binary2, toolchain, work, requiredInits2, declared, imports2 = [], requireSwift = false, objcProperties = /* @__PURE__ */ new Map(), placeholder = null, inheritedConformances = /* @__PURE__ */ new Map(), projections = /* @__PURE__ */ new Map(), dependencyGraphs = [], trailer = "", reexported = []) {
68703
68711
  const paths = new Set(
68704
68712
  graphs.flatMap(
68705
68713
  (graph) => graph.symbols.map((symbol2) => symbol2.pathComponents.join("."))
@@ -68773,7 +68781,11 @@ function graphStandin(module2, graphs, values, wasm, binary2, toolchain, work, r
68773
68781
  inheritedConformances,
68774
68782
  projections,
68775
68783
  dependencyGraphs,
68776
- ...placeholder ? { exported: placeholder.exported, placeholder: binary2.placeholder.gap } : {}
68784
+ exported: [
68785
+ ...placeholder?.exported ?? [],
68786
+ ...reexported.map((name3) => `@_exported import ${name3}`)
68787
+ ],
68788
+ ...placeholder ? { placeholder: binary2.placeholder.gap } : {}
68777
68789
  });
68778
68790
  for (const entry of skipped) {
68779
68791
  if (swiftPaths.has(entry.path))
@@ -86313,7 +86325,7 @@ var init_nitro_superset = __esm({
86313
86325
  init_nitroContract();
86314
86326
  init_swift_standin_digest();
86315
86327
  NITRO_SUPERSET_ENTRY_NAME = "superset";
86316
- NITRO_COMPILER_DIGEST = true ? "d738b6ab8d9565d2ed45147861078597c0ce97c0b2f9eccb844e3b6bbf98cc62" : nitroCompilerSourceDigest(__sootsim_import_meta_dirname, STANDIN_SOURCE_DIGEST2);
86328
+ NITRO_COMPILER_DIGEST = true ? "67d36ef1a7735c3503ac4e8ac0980024161469a9ab1c261acc9bfdf89cd148a6" : nitroCompilerSourceDigest(__sootsim_import_meta_dirname, STANDIN_SOURCE_DIGEST2);
86317
86329
  nitroSupersetLock = parseLock(nitro_superset_lock_default);
86318
86330
  nitroSupersetKey = (inputs) => nativeEntryKey({ ...inputs, compiler: NITRO_COMPILER_DIGEST });
86319
86331
  published2 = /* @__PURE__ */ new Map();
@@ -87025,7 +87037,7 @@ var init_one_sdk_bundle = __esm({
87025
87037
  var runtime_companion_default;
87026
87038
  var init_runtime_companion = __esm({
87027
87039
  "runtime-companion.json"() {
87028
- runtime_companion_default = { abi: 1, sha256: "1c15d055a3e1e68a17d3f735cd1c592fdc418c85e781e44abf4f4aa0b1215b52", file: "node/cli-1c15d055a3e1e68a17d3f735cd1c592fdc418c85e781e44abf4f4aa0b1215b52.cjs" };
87040
+ runtime_companion_default = { abi: 1, sha256: "2e4d78c7cfb64a492abbe3734e69a59408c00041b36d1a05a2d7fdfcbf6adb7b", file: "node/cli-2e4d78c7cfb64a492abbe3734e69a59408c00041b36d1a05a2d7fdfcbf6adb7b.cjs" };
87029
87041
  }
87030
87042
  });
87031
87043
 
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (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;
@@ -12598,7 +12598,7 @@ var darwinRecordsRegion = (quoted) => quoted.length ? ["-Wl,--start-lib", ...quo
12598
12598
  var REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
12599
12599
  var MULTI_MANIFEST_VERSION = 68;
12600
12600
  var SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
12601
- var compilerSourceDigest = true ? "4646bbe2e0cd2e48e498f51fd3d0d5ea29ecd5e6163fdf3afe8d64d4368022d7" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
12601
+ var compilerSourceDigest = true ? "94960e7e108c556e2184ef22baae1e061ca63c08c954c6ad0f677b524be5e117" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
12602
12602
  function swiftArtifactHash(input, release, moduleRoot) {
12603
12603
  const hash = (0, import_node_crypto13.createHash)("sha256");
12604
12604
  hash.update(`swift-compile
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
 
3
3
  // src/swift-compile.ts
4
4
  import {
@@ -12577,7 +12577,7 @@ var darwinRecordsRegion = (quoted) => quoted.length ? ["-Wl,--start-lib", ...quo
12577
12577
  var REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
12578
12578
  var MULTI_MANIFEST_VERSION = 68;
12579
12579
  var SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
12580
- var compilerSourceDigest = true ? "4646bbe2e0cd2e48e498f51fd3d0d5ea29ecd5e6163fdf3afe8d64d4368022d7" : swiftCompilerSourceDigest(import.meta.dirname);
12580
+ var compilerSourceDigest = true ? "94960e7e108c556e2184ef22baae1e061ca63c08c954c6ad0f677b524be5e117" : swiftCompilerSourceDigest(import.meta.dirname);
12581
12581
  function swiftArtifactHash(input, release, moduleRoot) {
12582
12582
  const hash = createHash13("sha256");
12583
12583
  hash.update(`swift-compile
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (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.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
 
3
3
  // src/swift-package.ts
4
4
  function swiftManifestSettings(target) {
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (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.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
 
3
3
  // src/is-record.ts
4
4
  function isRecord(value) {
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (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;
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (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.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (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;
@@ -39,7 +39,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
39
39
  var define_SWIFT_COVERAGE_SOURCE_DIGESTS_default;
40
40
  var init_define_SWIFT_COVERAGE_SOURCE_DIGESTS = __esm({
41
41
  "<define:__SWIFT_COVERAGE_SOURCE_DIGESTS__>"() {
42
- define_SWIFT_COVERAGE_SOURCE_DIGESTS_default = { "swift-coverage/indexdump.ts": "0d82d8eeb96bf377f409ea7e33274c341a710c0e071f6b6e17571a23d8d92412", "swift-coverage/indexing.ts": "633ccf19eec1f382a8847d0ee1dca42a2792a3c60aafd43622ed5152b09b8272", "swift-coverage/types.ts": "bd8fae54ea6c53e110cd8a5d7b57c1d532dd0166e09fdaea63c4f270c3780dd1", "swift-coverage/source.ts": "c151758a9f67631bc61473c375df0dc017da6902a34533b2cf4fc4fd7d19b6ee", "swift-coverage/package.ts": "1f0068be7461fa7c5a7a891faf318f305cbed2e94c19667ba76627f7e5be260b", "swift-coverage/xcode.ts": "65a500b806ce1c3a496de27f2e0ad77287c0f6795c618342c08af647f92af1fa", "swift-coverage/xcode-assets.ts": "99e03b74c961d2449afd58c2cbc415ba91d1d469a4f89e461c137fd6c305b27c", "swift-coverage/xcode-asset-symbols.ts": "1b2a67733bc9d139b351466270205452a6172140bc25080d72619e2952c44671", "swift-coverage/xcode-bridging.ts": "33184be8c5daf6646aa5a1276a4e15531f1be27b7c26f56550e0fbb1fc678a11", "swift-coverage/xcode-packages.ts": "8e6020d17d24474150a5a50d042aca6261819ef75c79680a287a66f395909915", "swift-coverage/xcode-strings.ts": "f2dd4c7cd8ef77035184b0132909c2fa09fd20ed06b7757c2f1f960bfdde031c", "swift-coverage/reader.ts": "da559b67ecd1161dea70c980b5f98f2c55af3550f0714479100fa5e9e813625c", "swift-coverage/provenance.ts": "eb3b41ae8b58b48f6758f084800f188dfb1edb227e483abdd6b80cde66e849b9", "swift-package-manifest.ts": "4b7d4a715cdaf57468ead23f2ff9dce76d02c6a888d73d144d4baa2ae571ba3c", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "25505683ca29a0b380413bf2a5026d4967eacf886e35bc11ece6e15317e5bb02", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "86f79e98323ec065e0e5195324c75ca608f490efbd95dcc25c53d5aa0b9aecc9", "xcode-target-members.ts": "ad7589132bffab265e8a10b64e24484fe88b4a2b1cc0ee19a97f151a002eca77", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
42
+ define_SWIFT_COVERAGE_SOURCE_DIGESTS_default = { "swift-coverage/indexdump.ts": "0d82d8eeb96bf377f409ea7e33274c341a710c0e071f6b6e17571a23d8d92412", "swift-coverage/indexing.ts": "633ccf19eec1f382a8847d0ee1dca42a2792a3c60aafd43622ed5152b09b8272", "swift-coverage/types.ts": "bd8fae54ea6c53e110cd8a5d7b57c1d532dd0166e09fdaea63c4f270c3780dd1", "swift-coverage/source.ts": "c151758a9f67631bc61473c375df0dc017da6902a34533b2cf4fc4fd7d19b6ee", "swift-coverage/package.ts": "1f0068be7461fa7c5a7a891faf318f305cbed2e94c19667ba76627f7e5be260b", "swift-coverage/xcode.ts": "65a500b806ce1c3a496de27f2e0ad77287c0f6795c618342c08af647f92af1fa", "swift-coverage/xcode-assets.ts": "99e03b74c961d2449afd58c2cbc415ba91d1d469a4f89e461c137fd6c305b27c", "swift-coverage/xcode-asset-symbols.ts": "1b2a67733bc9d139b351466270205452a6172140bc25080d72619e2952c44671", "swift-coverage/xcode-bridging.ts": "33184be8c5daf6646aa5a1276a4e15531f1be27b7c26f56550e0fbb1fc678a11", "swift-coverage/xcode-packages.ts": "8e6020d17d24474150a5a50d042aca6261819ef75c79680a287a66f395909915", "swift-coverage/xcode-strings.ts": "f2dd4c7cd8ef77035184b0132909c2fa09fd20ed06b7757c2f1f960bfdde031c", "swift-coverage/reader.ts": "da559b67ecd1161dea70c980b5f98f2c55af3550f0714479100fa5e9e813625c", "swift-coverage/provenance.ts": "eb3b41ae8b58b48f6758f084800f188dfb1edb227e483abdd6b80cde66e849b9", "swift-package-manifest.ts": "29c2661be4b952101c9b9b8fd861560e6ce63b25dd4464f47475aaf72024f4fe", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "25505683ca29a0b380413bf2a5026d4967eacf886e35bc11ece6e15317e5bb02", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "86f79e98323ec065e0e5195324c75ca608f490efbd95dcc25c53d5aa0b9aecc9", "xcode-target-members.ts": "ad7589132bffab265e8a10b64e24484fe88b4a2b1cc0ee19a97f151a002eca77", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
43
43
  }
44
44
  });
45
45
 
@@ -17452,7 +17452,7 @@ var darwinRecordsRegion = (quoted) => quoted.length ? ["-Wl,--start-lib", ...quo
17452
17452
  var REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
17453
17453
  var MULTI_MANIFEST_VERSION = 68;
17454
17454
  var SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
17455
- var compilerSourceDigest = true ? "4646bbe2e0cd2e48e498f51fd3d0d5ea29ecd5e6163fdf3afe8d64d4368022d7" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
17455
+ var compilerSourceDigest = true ? "94960e7e108c556e2184ef22baae1e061ca63c08c954c6ad0f677b524be5e117" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
17456
17456
  function swiftArtifactHash(input, release, moduleRoot) {
17457
17457
  const hash = (0, import_node_crypto13.createHash)("sha256");
17458
17458
  hash.update(`swift-compile
@@ -26921,6 +26921,7 @@ var TARGET_TYPES = [
26921
26921
  "macro",
26922
26922
  "plugin"
26923
26923
  ];
26924
+ var targetRelative = (file) => file === void 0 ? [] : [import_node_path37.default.posix.normalize(file).replace(/(?<=.)\/+$/, "")];
26924
26925
  var isTargetType = (value) => TARGET_TYPES.some((type) => type === value);
26925
26926
  function swiftProductDependency(manifest, dependency, load2) {
26926
26927
  if (dependency.package !== null) {
@@ -27322,8 +27323,10 @@ function swiftPackageManifest(dir, platform = GUEST_PLATFORMS, requirePrepared =
27322
27323
  name: name4,
27323
27324
  type: kind,
27324
27325
  dir: targetDir,
27325
- sources: target.sources == null ? null : array3(target.sources).flatMap((file) => string3(file) ?? []),
27326
- exclude: array3(target.exclude).flatMap((file) => string3(file) ?? []),
27326
+ // swiftpm resolves these as normalized relative paths, so a directory
27327
+ // written with a trailing slash selects its contents
27328
+ sources: target.sources == null ? null : array3(target.sources).flatMap((file) => targetRelative(string3(file))),
27329
+ exclude: array3(target.exclude).flatMap((file) => targetRelative(string3(file))),
27327
27330
  dependencies,
27328
27331
  languageMode,
27329
27332
  mainActorIsolation,
@@ -30865,7 +30868,7 @@ function sourceClosureDigest(srcDir, entrypoints) {
30865
30868
  return hash.digest("hex");
30866
30869
  }
30867
30870
  var standinSourceDigest = (srcDir = __sootsim_import_meta_dirname) => sourceClosureDigest(srcDir, STANDIN_DIGEST_ENTRYPOINTS);
30868
- var STANDIN_SOURCE_DIGEST = true ? "f077081111b09ca27482cd53be422dae6cd1bd3a5fd2b2bdef48a83a9c0d6ca8" : standinSourceDigest();
30871
+ var STANDIN_SOURCE_DIGEST = true ? "11f82a07cd8d59c1bfcf554927b6e5a2d9b01d6846fd7107ca7c0f6f30519538" : standinSourceDigest();
30869
30872
 
30870
30873
  // src/swift-standins.ts
30871
30874
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
@@ -32942,12 +32945,14 @@ function objcStandin(surface, binary, toolchain, work, behavior, frameworks, sib
32942
32945
  null,
32943
32946
  /* @__PURE__ */ new Map(),
32944
32947
  /* @__PURE__ */ new Map(),
32945
- dependencyGraphs
32948
+ dependencyGraphs,
32949
+ "",
32950
+ view.imports.filter((name3) => provided.has(name3) || siblings.has(name3))
32946
32951
  );
32947
32952
  }
32948
32953
  var OBJC_UNREPRESENTABLE = "cannot be marked '@objc' because its type cannot be represented in Objective-C";
32949
32954
  var INERT_VALUE = /missing argument|cannot be constructed|has no member 'init'|no exact matches in call to initializer|cannot convert return expression|does not conform to '|extra argument|takes no arguments|could not be inferred|cannot infer/;
32950
- function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, requiredInits2, declared, imports2 = [], requireSwift = false, objcProperties = /* @__PURE__ */ new Map(), placeholder = null, inheritedConformances = /* @__PURE__ */ new Map(), projections = /* @__PURE__ */ new Map(), dependencyGraphs = [], trailer = "") {
32955
+ function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, requiredInits2, declared, imports2 = [], requireSwift = false, objcProperties = /* @__PURE__ */ new Map(), placeholder = null, inheritedConformances = /* @__PURE__ */ new Map(), projections = /* @__PURE__ */ new Map(), dependencyGraphs = [], trailer = "", reexported = []) {
32951
32956
  const paths = new Set(
32952
32957
  graphs.flatMap(
32953
32958
  (graph) => graph.symbols.map((symbol2) => symbol2.pathComponents.join("."))
@@ -33021,7 +33026,11 @@ function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, re
33021
33026
  inheritedConformances,
33022
33027
  projections,
33023
33028
  dependencyGraphs,
33024
- ...placeholder ? { exported: placeholder.exported, placeholder: binary.placeholder.gap } : {}
33029
+ exported: [
33030
+ ...placeholder?.exported ?? [],
33031
+ ...reexported.map((name3) => `@_exported import ${name3}`)
33032
+ ],
33033
+ ...placeholder ? { placeholder: binary.placeholder.gap } : {}
33025
33034
  });
33026
33035
  for (const entry of skipped) {
33027
33036
  if (swiftPaths.has(entry.path))
package/dist-lib/vite.cjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (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;
@@ -39,7 +39,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
39
39
  var define_SWIFT_COVERAGE_SOURCE_DIGESTS_default;
40
40
  var init_define_SWIFT_COVERAGE_SOURCE_DIGESTS = __esm({
41
41
  "<define:__SWIFT_COVERAGE_SOURCE_DIGESTS__>"() {
42
- define_SWIFT_COVERAGE_SOURCE_DIGESTS_default = { "swift-coverage/indexdump.ts": "0d82d8eeb96bf377f409ea7e33274c341a710c0e071f6b6e17571a23d8d92412", "swift-coverage/indexing.ts": "633ccf19eec1f382a8847d0ee1dca42a2792a3c60aafd43622ed5152b09b8272", "swift-coverage/types.ts": "bd8fae54ea6c53e110cd8a5d7b57c1d532dd0166e09fdaea63c4f270c3780dd1", "swift-coverage/source.ts": "c151758a9f67631bc61473c375df0dc017da6902a34533b2cf4fc4fd7d19b6ee", "swift-coverage/package.ts": "1f0068be7461fa7c5a7a891faf318f305cbed2e94c19667ba76627f7e5be260b", "swift-coverage/xcode.ts": "65a500b806ce1c3a496de27f2e0ad77287c0f6795c618342c08af647f92af1fa", "swift-coverage/xcode-assets.ts": "99e03b74c961d2449afd58c2cbc415ba91d1d469a4f89e461c137fd6c305b27c", "swift-coverage/xcode-asset-symbols.ts": "1b2a67733bc9d139b351466270205452a6172140bc25080d72619e2952c44671", "swift-coverage/xcode-bridging.ts": "33184be8c5daf6646aa5a1276a4e15531f1be27b7c26f56550e0fbb1fc678a11", "swift-coverage/xcode-packages.ts": "8e6020d17d24474150a5a50d042aca6261819ef75c79680a287a66f395909915", "swift-coverage/xcode-strings.ts": "f2dd4c7cd8ef77035184b0132909c2fa09fd20ed06b7757c2f1f960bfdde031c", "swift-coverage/reader.ts": "da559b67ecd1161dea70c980b5f98f2c55af3550f0714479100fa5e9e813625c", "swift-coverage/provenance.ts": "eb3b41ae8b58b48f6758f084800f188dfb1edb227e483abdd6b80cde66e849b9", "swift-package-manifest.ts": "4b7d4a715cdaf57468ead23f2ff9dce76d02c6a888d73d144d4baa2ae571ba3c", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "25505683ca29a0b380413bf2a5026d4967eacf886e35bc11ece6e15317e5bb02", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "86f79e98323ec065e0e5195324c75ca608f490efbd95dcc25c53d5aa0b9aecc9", "xcode-target-members.ts": "ad7589132bffab265e8a10b64e24484fe88b4a2b1cc0ee19a97f151a002eca77", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
42
+ define_SWIFT_COVERAGE_SOURCE_DIGESTS_default = { "swift-coverage/indexdump.ts": "0d82d8eeb96bf377f409ea7e33274c341a710c0e071f6b6e17571a23d8d92412", "swift-coverage/indexing.ts": "633ccf19eec1f382a8847d0ee1dca42a2792a3c60aafd43622ed5152b09b8272", "swift-coverage/types.ts": "bd8fae54ea6c53e110cd8a5d7b57c1d532dd0166e09fdaea63c4f270c3780dd1", "swift-coverage/source.ts": "c151758a9f67631bc61473c375df0dc017da6902a34533b2cf4fc4fd7d19b6ee", "swift-coverage/package.ts": "1f0068be7461fa7c5a7a891faf318f305cbed2e94c19667ba76627f7e5be260b", "swift-coverage/xcode.ts": "65a500b806ce1c3a496de27f2e0ad77287c0f6795c618342c08af647f92af1fa", "swift-coverage/xcode-assets.ts": "99e03b74c961d2449afd58c2cbc415ba91d1d469a4f89e461c137fd6c305b27c", "swift-coverage/xcode-asset-symbols.ts": "1b2a67733bc9d139b351466270205452a6172140bc25080d72619e2952c44671", "swift-coverage/xcode-bridging.ts": "33184be8c5daf6646aa5a1276a4e15531f1be27b7c26f56550e0fbb1fc678a11", "swift-coverage/xcode-packages.ts": "8e6020d17d24474150a5a50d042aca6261819ef75c79680a287a66f395909915", "swift-coverage/xcode-strings.ts": "f2dd4c7cd8ef77035184b0132909c2fa09fd20ed06b7757c2f1f960bfdde031c", "swift-coverage/reader.ts": "da559b67ecd1161dea70c980b5f98f2c55af3550f0714479100fa5e9e813625c", "swift-coverage/provenance.ts": "eb3b41ae8b58b48f6758f084800f188dfb1edb227e483abdd6b80cde66e849b9", "swift-package-manifest.ts": "29c2661be4b952101c9b9b8fd861560e6ce63b25dd4464f47475aaf72024f4fe", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "25505683ca29a0b380413bf2a5026d4967eacf886e35bc11ece6e15317e5bb02", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "86f79e98323ec065e0e5195324c75ca608f490efbd95dcc25c53d5aa0b9aecc9", "xcode-target-members.ts": "ad7589132bffab265e8a10b64e24484fe88b4a2b1cc0ee19a97f151a002eca77", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
43
43
  }
44
44
  });
45
45
 
@@ -1867,7 +1867,6 @@ var RUNTIME_PACKS_FILE = "packs.json";
1867
1867
  var RUNTIME_PACK_MARKER = ".pack";
1868
1868
  var RUNTIME_PACK_PREFIXES = [
1869
1869
  "engine/fonts/emoji/",
1870
- "engine/fonts/lang/",
1871
1870
  "engine/fonts/named/",
1872
1871
  "engine/fonts/vector-icons/",
1873
1872
  "engine/fonts/webview/",
@@ -1985,8 +1984,12 @@ function createRuntimeDelivery(product) {
1985
1984
  process.stderr.write(`${product.id}: downloading runtime ${version}\u2026
1986
1985
  `);
1987
1986
  await installVerifiedTarball({
1988
- url: entry.tarball || tarballUrl(version, cdnOrigin),
1989
- digest: { algorithm: "sha256", encoding: "hex", value: entry.sha256 },
1987
+ url: entry.base?.tarball || entry.tarball || tarballUrl(version, cdnOrigin),
1988
+ digest: {
1989
+ algorithm: "sha256",
1990
+ encoding: "hex",
1991
+ value: entry.base?.sha256 ?? entry.sha256
1992
+ },
1990
1993
  destDir,
1991
1994
  installedMarker: product.installedMarker,
1992
1995
  verify: product.verifyInstall,
@@ -2383,7 +2386,7 @@ async function runExtractor(command, args, signal, input) {
2383
2386
  }
2384
2387
 
2385
2388
  // runtime-companion.json
2386
- var runtime_companion_default = { abi: 1, sha256: "1c15d055a3e1e68a17d3f735cd1c592fdc418c85e781e44abf4f4aa0b1215b52", file: "node/cli-1c15d055a3e1e68a17d3f735cd1c592fdc418c85e781e44abf4f4aa0b1215b52.cjs" };
2389
+ var runtime_companion_default = { abi: 1, sha256: "2e4d78c7cfb64a492abbe3734e69a59408c00041b36d1a05a2d7fdfcbf6adb7b", file: "node/cli-2e4d78c7cfb64a492abbe3734e69a59408c00041b36d1a05a2d7fdfcbf6adb7b.cjs" };
2387
2390
 
2388
2391
  // src/answeredNativePackages.ts
2389
2392
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
@@ -2918,7 +2921,7 @@ function readIosSdkTree(root) {
2918
2921
 
2919
2922
  // src/swift-standin-digest.ts
2920
2923
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
2921
- var STANDIN_SOURCE_DIGEST = true ? "f077081111b09ca27482cd53be422dae6cd1bd3a5fd2b2bdef48a83a9c0d6ca8" : standinSourceDigest();
2924
+ var STANDIN_SOURCE_DIGEST = true ? "11f82a07cd8d59c1bfcf554927b6e5a2d9b01d6846fd7107ca7c0f6f30519538" : standinSourceDigest();
2922
2925
 
2923
2926
  // src/expo-native-workspace.ts
2924
2927
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
@@ -6412,7 +6415,7 @@ var FOUNDATION_IMPLICIT_MODULES = [
6412
6415
  var FOUNDATION_IMPLICIT_FLAGS = FOUNDATION_IMPLICIT_MODULES.map(
6413
6416
  (module2) => `, "-Xfrontend", "-import-module", "-Xfrontend", "${module2}"`
6414
6417
  ).join("");
6415
- var compilerSourceDigest = true ? "4646bbe2e0cd2e48e498f51fd3d0d5ea29ecd5e6163fdf3afe8d64d4368022d7" : swiftCompilerSourceDigest2(__sootsim_import_meta_dirname);
6418
+ var compilerSourceDigest = true ? "94960e7e108c556e2184ef22baae1e061ca63c08c954c6ad0f677b524be5e117" : swiftCompilerSourceDigest2(__sootsim_import_meta_dirname);
6416
6419
  var CORE_FOUNDATION_HANDLE_IMPORTS = [
6417
6420
  "CFAllocator",
6418
6421
  "CFArray",
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (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.2213 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2215 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
 
3
3
  // src/worklet-executable.ts
4
4
  import { parse } from "acorn";
@@ -10,6 +10,10 @@ export interface NativeLayoutExports {
10
10
  _peach_layout_apply(slot: number): void;
11
11
  _peach_layout_attach(parent: number, child: number, index: number): void;
12
12
  _peach_layout_detach(parent: number, child: number): void;
13
+ _peach_layout_children_input(count: number): number;
14
+ _peach_layout_sync_children(parent: number): number;
15
+ _peach_layout_removed_children(): number;
16
+ _peach_layout_child(parent: number, index: number): number;
13
17
  _peach_layout_split_hide(slot: number): void;
14
18
  _peach_layout_split_show(slot: number): void;
15
19
  _peach_layout_owner(slot: number): number;
@@ -128,6 +128,8 @@ export interface SceneNativeBinding {
128
128
  _peach_scene_paint_extent_out(): number;
129
129
  peachRasterTransformParameters?: (slot: number, out: number) => number;
130
130
  _peach_scene_raster_candidate(slot: number): void;
131
+ _peach_style_record(): number;
132
+ _peach_style_apply(slot: number, structuralFlags: number): number;
131
133
  _peach_scene_presentation_changed(slot: number): void;
132
134
  _peach_scene_retained_changed(slot: number): void;
133
135
  _peach_scene_bounds_changed(slot: number): void;
@@ -285,6 +287,7 @@ export declare class SceneTable {
285
287
  allocate(node: object, tag: number, flags: number): number;
286
288
  setRasterTransformPublisher(publisher: (node: object, output: () => Float64Array) => number): void;
287
289
  setExtentPublisher(reader: (node: object) => void): void;
290
+ setStyleReplayer(replay: (node: object) => void): void;
288
291
  setStickyOffsetReader(reader: (node: object) => number): void;
289
292
  setPaintExtentPublisher(publisher: PaintExtentPublisher): void;
290
293
  paintExtent(slot: number, x: number, y: number, width: number, height: number, skipPortalViews: boolean, subtree: boolean): Float64Array | null;
@@ -294,6 +297,7 @@ export declare class SceneTable {
294
297
  shared?: number;
295
298
  exiting?: boolean;
296
299
  }): void;
300
+ isExiting(slot: number): boolean;
297
301
  collectSharedNodes(root: number, selection: 'active' | 'guess'): {
298
302
  boundary: number;
299
303
  slots: number[];
@@ -3,6 +3,7 @@ import { SootSimNode } from './node.d.ts';
3
3
  import { type TimedScrollControl, type TimedScrollPresentation, type ScrollRelease } from './scroll-momentum-math.d.ts';
4
4
  import { type ScrollContentInset } from './scroll-range.d.ts';
5
5
  import { type ScrollVelocitySample } from './scroll-velocity.d.ts';
6
+ import type { WheelTrackTarget } from '../render-worker/shell-protocol.d.ts';
6
7
  export declare function readContentInset(node: SootSimNode): {
7
8
  top: number;
8
9
  bottom: number;
@@ -273,6 +274,8 @@ export declare class ScrollHandler {
273
274
  startTime: number;
274
275
  } | null;
275
276
  scrollByInput(deltaX: number, deltaY: number, sampleTime: number, startTime: number): boolean;
277
+ wheelTrackTarget(key: string): WheelTrackTarget;
278
+ scrollToInput(offsetX: number, offsetY: number, sampleTime: number, startTime: number): void;
276
279
  endScrollInput(): void;
277
280
  scrollToOffset(opts: ScrollToOffsetOptions): boolean;
278
281
  private fireMomentumScrollEndProp;
@@ -142,6 +142,39 @@ export interface ShellInputs {
142
142
  activeAppId: string;
143
143
  }
144
144
  export type ShellPointerPhase = 'down' | 'move' | 'up' | 'cancel';
145
+ export type WheelTrackInput = {
146
+ phase: 'begin';
147
+ id: number;
148
+ x: number;
149
+ y: number;
150
+ deltaX: number;
151
+ deltaY: number;
152
+ timestamp: number;
153
+ } | {
154
+ phase: 'move';
155
+ id: number;
156
+ offsetX: number;
157
+ offsetY: number;
158
+ timestamp: number;
159
+ } | {
160
+ phase: 'end';
161
+ id: number;
162
+ };
163
+ type Untimed<Step> = Step extends unknown ? Omit<Step, 'timestamp'> : never;
164
+ export type HostWheelTrack = Untimed<WheelTrackInput>;
165
+ export interface WheelTrackTarget {
166
+ key: string;
167
+ offsetX: number;
168
+ offsetY: number;
169
+ minX: number;
170
+ maxX: number;
171
+ minY: number;
172
+ maxY: number;
173
+ width: number;
174
+ height: number;
175
+ bouncesX: boolean;
176
+ bouncesY: boolean;
177
+ }
145
178
  export type ShellIntent = {
146
179
  type: 'goHome';
147
180
  } | {
@@ -372,6 +405,11 @@ export type ShellHostToWorker = {
372
405
  deltaY: number;
373
406
  timestamp: number;
374
407
  nativeWindowRoot?: number;
408
+ } | {
409
+ type: 'wheelTrack';
410
+ surfaceId: string;
411
+ input: WheelTrackInput;
412
+ nativeWindowRoot?: number;
375
413
  } | ({
376
414
  type: 'invokeShellCommand';
377
415
  requestId?: number;
@@ -577,6 +615,10 @@ export type ShellWorkerToHost = {
577
615
  type: 'uiFrameStatsResult';
578
616
  requestId: number;
579
617
  stats: UiFrameStats;
618
+ } | {
619
+ type: 'wheelTarget';
620
+ id: number;
621
+ target: WheelTrackTarget | null;
580
622
  } | {
581
623
  type: 'photoAdded';
582
624
  requestId: number;
package/kotlin/sdk.tar.gz CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "peachsim",
3
- "version": "0.1.2213",
3
+ "version": "0.1.2215",
4
4
  "description": "Vite and Metro plugins, testing drivers, and SDK exports for peach.",
5
5
  "author": "Tamagui LLC",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -1 +1 @@
1
- {"abi":1,"sha256":"1c15d055a3e1e68a17d3f735cd1c592fdc418c85e781e44abf4f4aa0b1215b52","file":"node/cli-1c15d055a3e1e68a17d3f735cd1c592fdc418c85e781e44abf4f4aa0b1215b52.cjs"}
1
+ {"abi":1,"sha256":"2e4d78c7cfb64a492abbe3734e69a59408c00041b36d1a05a2d7fdfcbf6adb7b","file":"node/cli-2e4d78c7cfb64a492abbe3734e69a59408c00041b36d1a05a2d7fdfcbf6adb7b.cjs"}
@@ -16,7 +16,7 @@ typedef NSString * UINibOptionsKey NS_TYPED_ENUM API_UNAVAILABLE(watchos);
16
16
  UIKIT_EXTERN UINibOptionsKey const UINibExternalObjects API_AVAILABLE(ios(3.0)) API_UNAVAILABLE(watchos);
17
17
 
18
18
  @interface NSBundle(UINibLoadingAdditions)
19
- - (nullable NSArray *)loadNibNamed:(NSString *)name owner:(nullable id)owner options:(nullable NSDictionary<UINibOptionsKey, id> *)options API_DEPRECATED("Loading Interface Builder products will not be supported in a future version of visionOS.", visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
19
+ - (nullable NSArray *)loadNibNamed:(NSString *)name owner:(nullable id)owner options:(nullable NSDictionary<UINibOptionsKey, id> *)options API_DEPRECATED("Loading Interface Builder products will not be supported in a future version of visionOS.", visionos(1.0, 1.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UNAVAILABLE("UIKitCore declares Bundle.loadNibNamed(_:owner:options:)");
20
20
  @end
21
21
 
22
22
  @interface NSObject(UINibLoadingAdditions)
@@ -30,6 +30,9 @@ struct flock {
30
30
  #define F_FULLFSYNC 51 /* fsync + ask the drive to flush to the media */
31
31
  #undef F_DUPFD_CLOEXEC
32
32
  #define F_DUPFD_CLOEXEC 67
33
+ // darwin's event-only descriptor (0x8000) shares wasi's O_TRUNC bit; a wasi descriptor
34
+ // for event notification is a read-only open.
35
+ #define O_EVTONLY O_RDONLY
33
36
 
34
37
  #if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
35
38
  #include <sys/_types/_filesec_t.h>
@@ -40,6 +40,9 @@ const TARGET_TYPES = [
40
40
  'macro',
41
41
  'plugin',
42
42
  ] as const
43
+ const targetRelative = (file: string | undefined) =>
44
+ file === undefined ? [] : [path.posix.normalize(file).replace(/(?<=.)\/+$/, '')]
45
+
43
46
  export type SwiftManifestTargetType = (typeof TARGET_TYPES)[number]
44
47
  const isTargetType = (value: string | undefined): value is SwiftManifestTargetType =>
45
48
  TARGET_TYPES.some((type) => type === value)
@@ -660,11 +663,13 @@ export function swiftPackageManifest(
660
663
  name,
661
664
  type: kind,
662
665
  dir: targetDir,
666
+ // swiftpm resolves these as normalized relative paths, so a directory
667
+ // written with a trailing slash selects its contents
663
668
  sources:
664
669
  target.sources == null
665
670
  ? null
666
- : array(target.sources).flatMap((file) => string(file) ?? []),
667
- exclude: array(target.exclude).flatMap((file) => string(file) ?? []),
671
+ : array(target.sources).flatMap((file) => targetRelative(string(file))),
672
+ exclude: array(target.exclude).flatMap((file) => targetRelative(string(file))),
668
673
  dependencies,
669
674
  languageMode,
670
675
  mainActorIsolation,
@@ -157,7 +157,7 @@ export type StandinOptions = {
157
157
  inert?: boolean
158
158
  /** modules the source imports beside Foundation and UIKit. */
159
159
  imports?: string[]
160
- /** `@_exported import` lines a placeholder's sources declare, verbatim. */
160
+ /** `@_exported import` lines: a placeholder's own, and the modules a framework's headers import. */
161
161
  exported?: string[]
162
162
  /** for a placeholder package's target: the compiler gap that forces it. */
163
163
  placeholder?: string