peachsim 0.1.2177 → 0.1.2180

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 (95) hide show
  1. package/cli/commands/package.ts +7 -2
  2. package/dist-lib/agent-daemon-client.cjs +1 -1
  3. package/dist-lib/agent-events.cjs +1 -1
  4. package/dist-lib/attached-projects.cjs +1 -1
  5. package/dist-lib/auth/shared-session.cjs +1 -1
  6. package/dist-lib/backend-origin.cjs +1 -1
  7. package/dist-lib/beta.cjs +1 -1
  8. package/dist-lib/beta.mjs +1 -1
  9. package/dist-lib/bridge-constants.cjs +1 -1
  10. package/dist-lib/bridge-contract-input.cjs +1 -1
  11. package/dist-lib/bridge-contract-input.mjs +1 -1
  12. package/dist-lib/bridge-contract.cjs +1 -1
  13. package/dist-lib/bridge-contract.mjs +1 -1
  14. package/dist-lib/bundle-channel.cjs +89 -20
  15. package/dist-lib/capture-contract.cjs +1 -1
  16. package/dist-lib/capture-contract.mjs +1 -1
  17. package/dist-lib/cloud-contract.cjs +1 -1
  18. package/dist-lib/cloud-contract.mjs +1 -1
  19. package/dist-lib/cloud-test-args.cjs +1 -1
  20. package/dist-lib/cloud-test-args.mjs +1 -1
  21. package/dist-lib/cloud.cjs +1 -1
  22. package/dist-lib/cloud.mjs +1 -1
  23. package/dist-lib/config.cjs +1 -1
  24. package/dist-lib/config.mjs +1 -1
  25. package/dist-lib/detox/index.cjs +2 -2
  26. package/dist-lib/dev-bundle-resolution.cjs +1 -1
  27. package/dist-lib/expo-swift-bundle.cjs +76 -16
  28. package/dist-lib/expo-swift-metadata.cjs +1 -1
  29. package/dist-lib/expo-swift-metadata.mjs +1 -1
  30. package/dist-lib/home-paths.cjs +1 -1
  31. package/dist-lib/host/bridge-host.cjs +100 -28
  32. package/dist-lib/host/fetch-proxy-handler.cjs +4 -4
  33. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  34. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  35. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  36. package/dist-lib/host/websocket-proxy.cjs +1 -1
  37. package/dist-lib/index.cjs +4 -4
  38. package/dist-lib/jump-to-source-babel.cjs +1 -1
  39. package/dist-lib/jump-to-source-native.cjs +1 -1
  40. package/dist-lib/kotlin-host.cjs +11 -3
  41. package/dist-lib/menu.cjs +1 -1
  42. package/dist-lib/menu.mjs +1 -1
  43. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  44. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  45. package/dist-lib/metro-production-bundle.cjs +1 -1
  46. package/dist-lib/metro-production-bundle.mjs +1 -1
  47. package/dist-lib/metro.cjs +4 -4
  48. package/dist-lib/native-app-identity-project.cjs +2 -2
  49. package/dist-lib/native-app-identity-project.mjs +2 -2
  50. package/dist-lib/native-app-identity.cjs +1 -1
  51. package/dist-lib/native-app-identity.mjs +1 -1
  52. package/dist-lib/native-firebase-metadata.cjs +1 -1
  53. package/dist-lib/native-firebase-metadata.mjs +1 -1
  54. package/dist-lib/pdfium-raster.cjs +1 -1
  55. package/dist-lib/pdfium-raster.mjs +1 -1
  56. package/dist-lib/plist.cjs +1 -1
  57. package/dist-lib/plist.mjs +1 -1
  58. package/dist-lib/profiles.cjs +1 -1
  59. package/dist-lib/public-brand.cjs +1 -1
  60. package/dist-lib/public-origins-lib-esm.json +24 -24
  61. package/dist-lib/public-origins-lib.json +53 -53
  62. package/dist-lib/react-native-host-modules.cjs +1 -1
  63. package/dist-lib/react-native-host-modules.mjs +1 -1
  64. package/dist-lib/reap-browser.cjs +1 -1
  65. package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
  66. package/dist-lib/sdk.cjs +1 -1
  67. package/dist-lib/sdk.mjs +1 -1
  68. package/dist-lib/skills.cjs +113 -114
  69. package/dist-lib/swift-compile.cjs +74 -14
  70. package/dist-lib/swift-compile.mjs +74 -14
  71. package/dist-lib/swift-package.cjs +1 -1
  72. package/dist-lib/swift-package.mjs +1 -1
  73. package/dist-lib/swift-submit.cjs +1 -1
  74. package/dist-lib/swift-submit.mjs +1 -1
  75. package/dist-lib/swift-toolchain.cjs +1 -1
  76. package/dist-lib/swift.cjs +1 -1
  77. package/dist-lib/vite-swift.cjs +75 -15
  78. package/dist-lib/vite.cjs +4 -4
  79. package/dist-lib/worklet-executable.cjs +1 -1
  80. package/dist-lib/worklet-executable.mjs +1 -1
  81. package/dist-types/packages/peach-engine/src/cli-companion.d.ts +1 -0
  82. package/dist-types/packages/peach-engine/src/ios/frame-art.d.ts +41 -0
  83. package/dist-types/packages/peach-engine/src/ios/frame-paint.d.ts +43 -0
  84. package/dist-types/packages/peach-engine/src/ios/frame-svg.d.ts +4 -0
  85. package/kotlin/sdk.tar.gz +0 -0
  86. package/package.json +1 -1
  87. package/runtime-companion.json +1 -1
  88. package/sdk/ios/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h +8 -25
  89. package/sdk/ios/System/Library/Frameworks/UIKitTypes.framework/Headers/UIKitTypes.h +26 -0
  90. package/src/expo-widgets-bundle.ts +12 -8
  91. package/src/kotlin-host.ts +10 -2
  92. package/src/one-sdk-bundle.ts +1 -0
  93. package/src/screenshots/frame-compose.ts +14 -109
  94. package/src/swift-compile.ts +102 -12
  95. package/src/wasm-optimize.ts +2 -3
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
 
3
3
  // src/swift-compile.ts
4
4
  import {
@@ -12447,7 +12447,7 @@ var darwinRecordsRegion = (quoted) => quoted.length ? ["-Wl,--start-lib", ...quo
12447
12447
  var REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
12448
12448
  var MULTI_MANIFEST_VERSION = 68;
12449
12449
  var SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
12450
- var compilerSourceDigest = true ? "49b49a3b4f72b519cda4a1310d169f7d233d4f0249b0bcff228d2c316fafd9e1" : swiftCompilerSourceDigest(import.meta.dirname);
12450
+ var compilerSourceDigest = true ? "f4c68ce2ea46dd5a9205990046616e5dcc4a3b3b527378ee285d9e25865e5851" : swiftCompilerSourceDigest(import.meta.dirname);
12451
12451
  function swiftArtifactHash(input, release, moduleRoot) {
12452
12452
  const hash = createHash13("sha256");
12453
12453
  hash.update(`swift-compile
@@ -12573,6 +12573,20 @@ function emitSwiftPackageManifest(args) {
12573
12573
  const prebuilt = args.prebuilt;
12574
12574
  const linkedObjects = Boolean(distribution || prebuilt);
12575
12575
  const cxxFlagsFor = (flags) => args.deferDarwinOverlay ? withoutWasmOverlayIsystem(flags) : flags;
12576
+ const packageModules = new Set(
12577
+ targets.filter(({ name: name2 }) => !args.sourceSwiftTargets?.has(name2)).map(({ name: name2 }) => swiftTargetModuleName(name2))
12578
+ );
12579
+ const mapsPackageModule = (flag) => {
12580
+ if (!flag.startsWith("-fmodule-map-file=")) return false;
12581
+ const file = flag.slice("-fmodule-map-file=".length).replaceAll(SWIFT_NATIVE_INPUT_ROOT, args.root);
12582
+ if (!file.includes("/Pods/Headers/")) return false;
12583
+ const map = args.files.get(file) ?? (existsSync5(file) ? readFileSync16(file) : void 0);
12584
+ const name2 = map === void 0 ? void 0 : moduleMapName(map.toString());
12585
+ return name2 !== void 0 && packageModules.has(name2);
12586
+ };
12587
+ const withoutPackageModuleMaps = (flags) => flags.filter((flag) => !mapsPackageModule(flag));
12588
+ const targetCFlags = (flags) => cFlagArray(withoutPackageModuleMaps(flags));
12589
+ const targetCxxFlags = (flags) => cxxFlagArray(withoutPackageModuleMaps(flags));
12576
12590
  const reachedFrameworks = /* @__PURE__ */ new Set();
12577
12591
  const reach = (name2) => {
12578
12592
  if (reachedFrameworks.has(name2) || targets.some((target) => swiftTargetModuleName(target.name) === name2))
@@ -12652,7 +12666,9 @@ function emitSwiftPackageManifest(args) {
12652
12666
  const macroSettings = (values) => (values ?? []).map((value) => ` ${clangMacroSetting(value)},`).join("");
12653
12667
  const flagArray = (literal2) => `peachCompilerArguments(${JSON.stringify(literal2.replace(/,\s*]$/, "]"))})`;
12654
12668
  const swiftFlagArray = (literal2) => {
12655
- const flags = JSON.parse(literal2.replace(/,\s*]$/, "]"));
12669
+ const flags = JSON.parse(literal2.replace(/,\s*]$/, "]")).filter(
12670
+ (flag, index, all) => !mapsPackageModule(flag) && !(flag === "-Xcc" && mapsPackageModule(all[index + 1] ?? ""))
12671
+ );
12656
12672
  const content = flags.map((flag) => JSON.stringify(flag)).join("\n") + "\n";
12657
12673
  const digest = createHash13("sha256").update(content).digest("hex");
12658
12674
  const file = path27.join(args.root, ".peach-swift-arguments", `${digest}.rsp`);
@@ -12812,18 +12828,18 @@ function emitSwiftPackageManifest(args) {
12812
12828
  "c"
12813
12829
  ).map((entry) => ` ${entry},`).join(
12814
12830
  ""
12815
- )} .unsafeFlags(${flagArray(cFlagArray([...nativeFlags, ...native.clang.flags]))})]`,
12831
+ )} .unsafeFlags(${flagArray(targetCFlags([...nativeFlags, ...native.clang.flags]))})]`,
12816
12832
  ...nativeCxx ? [
12817
12833
  `cxxSettings: [${cxxDefines}${clangSettingEntries(
12818
12834
  frameworkSearchFlags(target, "cxx"),
12819
12835
  "cxx"
12820
12836
  ).map((entry) => ` ${entry},`).join(
12821
12837
  ""
12822
- )} .unsafeFlags(${flagArray(cxxFlagArray([...cxxFlagsFor(nativeFlags), ...native.clang.cxxFlags]))})]`
12838
+ )} .unsafeFlags(${flagArray(targetCxxFlags([...cxxFlagsFor(nativeFlags), ...native.clang.cxxFlags]))})]`
12823
12839
  ] : []
12824
12840
  ].join(", ") : [
12825
- `cSettings: [${cDefines}${declaredClangSettings(target, "c")} .unsafeFlags(${flagArray(cFlagArray([...nativeFlags, ...native?.flags ?? []]))})]`,
12826
- `cxxSettings: [${cxxDefines}${declaredClangSettings(target, "cxx")} .unsafeFlags(${flagArray(cxxFlagArray([...cxxFlagsFor(nativeFlags), ...native?.cxxFlags ?? []]))})]`
12841
+ `cSettings: [${cDefines}${declaredClangSettings(target, "c")} .unsafeFlags(${flagArray(targetCFlags([...nativeFlags, ...native?.flags ?? []]))})]`,
12842
+ `cxxSettings: [${cxxDefines}${declaredClangSettings(target, "cxx")} .unsafeFlags(${flagArray(targetCxxFlags([...cxxFlagsFor(nativeFlags), ...native?.cxxFlags ?? []]))})]`
12827
12843
  ].join(", ");
12828
12844
  const exclusions = native?.clang ? [] : [
12829
12845
  ...native ? native.exclude ?? native.lateSources : [],
@@ -12892,9 +12908,9 @@ function emitSwiftPackageManifest(args) {
12892
12908
  ` path: ${JSON.stringify(group.path)},`,
12893
12909
  ` sources: ${JSON.stringify(group.sources)},`,
12894
12910
  ` publicHeadersPath: ${JSON.stringify(native.groups ? "include" : "PeachSwiftImplementation")},`,
12895
- ` cSettings: [${macroSettings(owner?.cDefines)}${declaredClangSettings(owner, "c")} .unsafeFlags(${flagArray(cFlagArray([...nativeFlags, "-I", native.includeDirectory, ...args.headerDirectory ? ["-I", args.headerDirectory] : [], ...group.flags]))})],`,
12911
+ ` cSettings: [${macroSettings(owner?.cDefines)}${declaredClangSettings(owner, "c")} .unsafeFlags(${flagArray(targetCFlags([...nativeFlags, "-I", native.includeDirectory, ...args.headerDirectory ? ["-I", args.headerDirectory] : [], ...group.flags]))})],`,
12896
12912
  ...group.sources.some((source) => /\.(?:cc|cpp|cxx|mm)$/.test(source)) ? [
12897
- ` cxxSettings: [${macroSettings(owner?.cxxDefines)}${declaredClangSettings(owner, "cxx")} .unsafeFlags(${flagArray(cxxFlagArray([...cxxFlagsFor(nativeFlags), "-I", native.includeDirectory, ...group.cxxFlags]))})]),`
12913
+ ` cxxSettings: [${macroSettings(owner?.cxxDefines)}${declaredClangSettings(owner, "cxx")} .unsafeFlags(${flagArray(targetCxxFlags([...cxxFlagsFor(nativeFlags), "-I", native.includeDirectory, ...group.cxxFlags]))})]),`
12898
12914
  ] : [" ),"]
12899
12915
  ]) : [];
12900
12916
  }),
@@ -14491,7 +14507,10 @@ ${swiftProjectFilesProblems(input.projectFiles).join("\n")}`
14491
14507
  const target = bySourcePath.find(
14492
14508
  (candidate) => candidate.path === "." || file.startsWith(`${candidate.path}/`)
14493
14509
  );
14494
- if (target) swiftTargets.add(target.name);
14510
+ const excluded = target?.exclude?.some(
14511
+ (name2) => file === path27.posix.join(target.path, name2)
14512
+ );
14513
+ if (target && !excluded) swiftTargets.add(target.name);
14495
14514
  }
14496
14515
  const importedModules = /* @__PURE__ */ new Set();
14497
14516
  const swiftImportedModules = /* @__PURE__ */ new Set();
@@ -15537,6 +15556,9 @@ module ${moduleName}.Swift {
15537
15556
  frameworkLink,
15538
15557
  [
15539
15558
  ...prebuilt.objects.map(quote),
15559
+ "-Wl,--start-lib",
15560
+ ...prebuilt.lazyObjects.map(quote),
15561
+ "-Wl,--end-lib",
15540
15562
  ...darwinRecordsRegion(prebuilt.providers.map(quote))
15541
15563
  ].join("\n") + "\n"
15542
15564
  );
@@ -15943,7 +15965,13 @@ function linkedFrameworkTargets(moduleRoot, input) {
15943
15965
  );
15944
15966
  const targets = compileTargets(input);
15945
15967
  const planning = targets.length > 0 ? targets : [{ name: "App", path: "." }];
15946
- const siblings = swiftTargetDependencies(input.files, planning, libraries.keys());
15968
+ const siblings = swiftTargetDependencies(
15969
+ input.files,
15970
+ planning.map(
15971
+ (target) => input.libraries?.[target.name] ? { ...target, exclude: [] } : target
15972
+ ),
15973
+ libraries.keys()
15974
+ );
15947
15975
  const reached = /* @__PURE__ */ new Set();
15948
15976
  const reach = (name2) => {
15949
15977
  if (name2 === "SwiftUI") return;
@@ -16245,9 +16273,31 @@ async function buildFrameworkProducts(scratch2, args) {
16245
16273
  }
16246
16274
  const providers = readdirSync8(providerDir).filter((file) => file.endsWith(".o")).sort().map((file) => path27.join(providerDir, file));
16247
16275
  for (const provider of providers) linked.owners.set(provider, "DarwinRecords");
16276
+ const archive = path27.join(scratch2, "lib");
16277
+ rmSync6(archive, { recursive: true, force: true });
16278
+ mkdirSync6(archive);
16279
+ const archived = /* @__PURE__ */ new Map();
16280
+ for (const object3 of objects) {
16281
+ const target = linked.owners.get(object3);
16282
+ const dir = path27.join(release, `${target}.build`);
16283
+ if (!target || target === "Darwin" || !object3.startsWith(dir + path27.sep)) continue;
16284
+ const name2 = `${target}-${path27.relative(dir, object3).replaceAll(path27.sep, "-").replace(/\.swift\.o$/, ".o")}`;
16285
+ symlinkSync2(object3, path27.join(archive, name2));
16286
+ archived.set(object3, `lib/${name2}`);
16287
+ }
16288
+ const roots = swiftObjcRootObjects(`${scratch2}
16289
+ ${args.frameworkKey}`, scratch2, [
16290
+ ...archived.values()
16291
+ ]);
16292
+ const linkedObjects = objects.map((object3) => {
16293
+ const name2 = archived.get(object3);
16294
+ return name2 ? { path: path27.join(scratch2, name2), lazy: !roots.has(name2) } : { path: object3, lazy: false };
16295
+ });
16248
16296
  return {
16297
+ root: scratch2,
16249
16298
  modules: path27.join(release, "Modules"),
16250
- objects,
16299
+ objects: linkedObjects.filter((object3) => !object3.lazy).map((object3) => object3.path),
16300
+ lazyObjects: linkedObjects.filter((object3) => object3.lazy).map((object3) => object3.path),
16251
16301
  owners: linked.owners,
16252
16302
  providers,
16253
16303
  link,
@@ -16401,6 +16451,10 @@ ${args.frameworkKey}
16401
16451
  for (const object3 of args.prebuilt.objects)
16402
16452
  hash.update(`object
16403
16453
  ${object3}
16454
+ ${statOf(object3)}`);
16455
+ for (const object3 of args.prebuilt.lazyObjects)
16456
+ hash.update(`lazy-object
16457
+ ${object3}
16404
16458
  ${statOf(object3)}`);
16405
16459
  for (const object3 of args.prebuilt.providers)
16406
16460
  hash.update(`provider
@@ -16817,7 +16871,7 @@ function compileSwiftProjectOnce(input, options) {
16817
16871
  pruneSwiftWasmLink(
16818
16872
  root,
16819
16873
  options.toolchainBin,
16820
- frameworkRoot,
16874
+ prebuilt?.root ?? frameworkRoot,
16821
16875
  input.staticClangTargets,
16822
16876
  options.project,
16823
16877
  void 0,
@@ -16841,9 +16895,15 @@ function compileSwiftProjectOnce(input, options) {
16841
16895
  optimized
16842
16896
  });
16843
16897
  else if (input.optimize) await optimizeWasm(output, optimized);
16898
+ const executable = input.optimize ? optimized : output;
16899
+ await runCompiler(
16900
+ path27.join(options.toolchainBin, "llvm-objcopy"),
16901
+ ["--remove-section=.swift1_autolink_entries", executable],
16902
+ buildOptions
16903
+ );
16844
16904
  const artifact = {
16845
16905
  hash,
16846
- bytes: readFileSync16(input.optimize ? optimized : output),
16906
+ bytes: readFileSync16(executable),
16847
16907
  icu: await icu
16848
16908
  };
16849
16909
  if (!options.project) saveCompiledArtifact(root, artifact);
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (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.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (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.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (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.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (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.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (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.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (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.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (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;
@@ -17039,7 +17039,7 @@ var darwinRecordsRegion = (quoted) => quoted.length ? ["-Wl,--start-lib", ...quo
17039
17039
  var REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
17040
17040
  var MULTI_MANIFEST_VERSION = 68;
17041
17041
  var SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
17042
- var compilerSourceDigest = true ? "49b49a3b4f72b519cda4a1310d169f7d233d4f0249b0bcff228d2c316fafd9e1" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
17042
+ var compilerSourceDigest = true ? "f4c68ce2ea46dd5a9205990046616e5dcc4a3b3b527378ee285d9e25865e5851" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
17043
17043
  function swiftArtifactHash(input, release, moduleRoot) {
17044
17044
  const hash = (0, import_node_crypto13.createHash)("sha256");
17045
17045
  hash.update(`swift-compile
@@ -17165,6 +17165,20 @@ function emitSwiftPackageManifest(args) {
17165
17165
  const prebuilt = args.prebuilt;
17166
17166
  const linkedObjects = Boolean(distribution || prebuilt);
17167
17167
  const cxxFlagsFor = (flags) => args.deferDarwinOverlay ? withoutWasmOverlayIsystem(flags) : flags;
17168
+ const packageModules = new Set(
17169
+ targets.filter(({ name: name3 }) => !args.sourceSwiftTargets?.has(name3)).map(({ name: name3 }) => swiftTargetModuleName(name3))
17170
+ );
17171
+ const mapsPackageModule = (flag) => {
17172
+ if (!flag.startsWith("-fmodule-map-file=")) return false;
17173
+ const file = flag.slice("-fmodule-map-file=".length).replaceAll(SWIFT_NATIVE_INPUT_ROOT, args.root);
17174
+ if (!file.includes("/Pods/Headers/")) return false;
17175
+ const map = args.files.get(file) ?? ((0, import_node_fs27.existsSync)(file) ? (0, import_node_fs27.readFileSync)(file) : void 0);
17176
+ const name3 = map === void 0 ? void 0 : moduleMapName(map.toString());
17177
+ return name3 !== void 0 && packageModules.has(name3);
17178
+ };
17179
+ const withoutPackageModuleMaps = (flags) => flags.filter((flag) => !mapsPackageModule(flag));
17180
+ const targetCFlags = (flags) => cFlagArray(withoutPackageModuleMaps(flags));
17181
+ const targetCxxFlags = (flags) => cxxFlagArray(withoutPackageModuleMaps(flags));
17168
17182
  const reachedFrameworks = /* @__PURE__ */ new Set();
17169
17183
  const reach = (name3) => {
17170
17184
  if (reachedFrameworks.has(name3) || targets.some((target) => swiftTargetModuleName(target.name) === name3))
@@ -17244,7 +17258,9 @@ function emitSwiftPackageManifest(args) {
17244
17258
  const macroSettings = (values) => (values ?? []).map((value) => ` ${clangMacroSetting(value)},`).join("");
17245
17259
  const flagArray = (literal2) => `peachCompilerArguments(${JSON.stringify(literal2.replace(/,\s*]$/, "]"))})`;
17246
17260
  const swiftFlagArray = (literal2) => {
17247
- const flags = JSON.parse(literal2.replace(/,\s*]$/, "]"));
17261
+ const flags = JSON.parse(literal2.replace(/,\s*]$/, "]")).filter(
17262
+ (flag, index, all) => !mapsPackageModule(flag) && !(flag === "-Xcc" && mapsPackageModule(all[index + 1] ?? ""))
17263
+ );
17248
17264
  const content = flags.map((flag) => JSON.stringify(flag)).join("\n") + "\n";
17249
17265
  const digest = (0, import_node_crypto13.createHash)("sha256").update(content).digest("hex");
17250
17266
  const file = import_node_path27.default.join(args.root, ".peach-swift-arguments", `${digest}.rsp`);
@@ -17404,18 +17420,18 @@ function emitSwiftPackageManifest(args) {
17404
17420
  "c"
17405
17421
  ).map((entry) => ` ${entry},`).join(
17406
17422
  ""
17407
- )} .unsafeFlags(${flagArray(cFlagArray([...nativeFlags, ...native.clang.flags]))})]`,
17423
+ )} .unsafeFlags(${flagArray(targetCFlags([...nativeFlags, ...native.clang.flags]))})]`,
17408
17424
  ...nativeCxx ? [
17409
17425
  `cxxSettings: [${cxxDefines}${clangSettingEntries(
17410
17426
  frameworkSearchFlags(target, "cxx"),
17411
17427
  "cxx"
17412
17428
  ).map((entry) => ` ${entry},`).join(
17413
17429
  ""
17414
- )} .unsafeFlags(${flagArray(cxxFlagArray([...cxxFlagsFor(nativeFlags), ...native.clang.cxxFlags]))})]`
17430
+ )} .unsafeFlags(${flagArray(targetCxxFlags([...cxxFlagsFor(nativeFlags), ...native.clang.cxxFlags]))})]`
17415
17431
  ] : []
17416
17432
  ].join(", ") : [
17417
- `cSettings: [${cDefines}${declaredClangSettings(target, "c")} .unsafeFlags(${flagArray(cFlagArray([...nativeFlags, ...native?.flags ?? []]))})]`,
17418
- `cxxSettings: [${cxxDefines}${declaredClangSettings(target, "cxx")} .unsafeFlags(${flagArray(cxxFlagArray([...cxxFlagsFor(nativeFlags), ...native?.cxxFlags ?? []]))})]`
17433
+ `cSettings: [${cDefines}${declaredClangSettings(target, "c")} .unsafeFlags(${flagArray(targetCFlags([...nativeFlags, ...native?.flags ?? []]))})]`,
17434
+ `cxxSettings: [${cxxDefines}${declaredClangSettings(target, "cxx")} .unsafeFlags(${flagArray(targetCxxFlags([...cxxFlagsFor(nativeFlags), ...native?.cxxFlags ?? []]))})]`
17419
17435
  ].join(", ");
17420
17436
  const exclusions = native?.clang ? [] : [
17421
17437
  ...native ? native.exclude ?? native.lateSources : [],
@@ -17484,9 +17500,9 @@ function emitSwiftPackageManifest(args) {
17484
17500
  ` path: ${JSON.stringify(group.path)},`,
17485
17501
  ` sources: ${JSON.stringify(group.sources)},`,
17486
17502
  ` publicHeadersPath: ${JSON.stringify(native.groups ? "include" : "PeachSwiftImplementation")},`,
17487
- ` cSettings: [${macroSettings(owner?.cDefines)}${declaredClangSettings(owner, "c")} .unsafeFlags(${flagArray(cFlagArray([...nativeFlags, "-I", native.includeDirectory, ...args.headerDirectory ? ["-I", args.headerDirectory] : [], ...group.flags]))})],`,
17503
+ ` cSettings: [${macroSettings(owner?.cDefines)}${declaredClangSettings(owner, "c")} .unsafeFlags(${flagArray(targetCFlags([...nativeFlags, "-I", native.includeDirectory, ...args.headerDirectory ? ["-I", args.headerDirectory] : [], ...group.flags]))})],`,
17488
17504
  ...group.sources.some((source) => /\.(?:cc|cpp|cxx|mm)$/.test(source)) ? [
17489
- ` cxxSettings: [${macroSettings(owner?.cxxDefines)}${declaredClangSettings(owner, "cxx")} .unsafeFlags(${flagArray(cxxFlagArray([...cxxFlagsFor(nativeFlags), "-I", native.includeDirectory, ...group.cxxFlags]))})]),`
17505
+ ` cxxSettings: [${macroSettings(owner?.cxxDefines)}${declaredClangSettings(owner, "cxx")} .unsafeFlags(${flagArray(targetCxxFlags([...cxxFlagsFor(nativeFlags), "-I", native.includeDirectory, ...group.cxxFlags]))})]),`
17490
17506
  ] : [" ),"]
17491
17507
  ]) : [];
17492
17508
  }),
@@ -18990,7 +19006,10 @@ ${swiftProjectFilesProblems(input.projectFiles).join("\n")}`
18990
19006
  const target = bySourcePath.find(
18991
19007
  (candidate) => candidate.path === "." || file.startsWith(`${candidate.path}/`)
18992
19008
  );
18993
- if (target) swiftTargets.add(target.name);
19009
+ const excluded = target?.exclude?.some(
19010
+ (name3) => file === import_node_path27.default.posix.join(target.path, name3)
19011
+ );
19012
+ if (target && !excluded) swiftTargets.add(target.name);
18994
19013
  }
18995
19014
  const importedModules = /* @__PURE__ */ new Set();
18996
19015
  const swiftImportedModules = /* @__PURE__ */ new Set();
@@ -20036,6 +20055,9 @@ module ${moduleName}.Swift {
20036
20055
  frameworkLink,
20037
20056
  [
20038
20057
  ...prebuilt.objects.map(quote),
20058
+ "-Wl,--start-lib",
20059
+ ...prebuilt.lazyObjects.map(quote),
20060
+ "-Wl,--end-lib",
20039
20061
  ...darwinRecordsRegion(prebuilt.providers.map(quote))
20040
20062
  ].join("\n") + "\n"
20041
20063
  );
@@ -20442,7 +20464,13 @@ function linkedFrameworkTargets(moduleRoot, input) {
20442
20464
  );
20443
20465
  const targets = compileTargets(input);
20444
20466
  const planning = targets.length > 0 ? targets : [{ name: "App", path: "." }];
20445
- const siblings = swiftTargetDependencies(input.files, planning, libraries.keys());
20467
+ const siblings = swiftTargetDependencies(
20468
+ input.files,
20469
+ planning.map(
20470
+ (target) => input.libraries?.[target.name] ? { ...target, exclude: [] } : target
20471
+ ),
20472
+ libraries.keys()
20473
+ );
20446
20474
  const reached = /* @__PURE__ */ new Set();
20447
20475
  const reach = (name3) => {
20448
20476
  if (name3 === "SwiftUI") return;
@@ -20744,9 +20772,31 @@ async function buildFrameworkProducts(scratch2, args) {
20744
20772
  }
20745
20773
  const providers = (0, import_node_fs27.readdirSync)(providerDir).filter((file) => file.endsWith(".o")).sort().map((file) => import_node_path27.default.join(providerDir, file));
20746
20774
  for (const provider of providers) linked.owners.set(provider, "DarwinRecords");
20775
+ const archive = import_node_path27.default.join(scratch2, "lib");
20776
+ (0, import_node_fs27.rmSync)(archive, { recursive: true, force: true });
20777
+ (0, import_node_fs27.mkdirSync)(archive);
20778
+ const archived = /* @__PURE__ */ new Map();
20779
+ for (const object4 of objects) {
20780
+ const target = linked.owners.get(object4);
20781
+ const dir = import_node_path27.default.join(release, `${target}.build`);
20782
+ if (!target || target === "Darwin" || !object4.startsWith(dir + import_node_path27.default.sep)) continue;
20783
+ const name3 = `${target}-${import_node_path27.default.relative(dir, object4).replaceAll(import_node_path27.default.sep, "-").replace(/\.swift\.o$/, ".o")}`;
20784
+ (0, import_node_fs27.symlinkSync)(object4, import_node_path27.default.join(archive, name3));
20785
+ archived.set(object4, `lib/${name3}`);
20786
+ }
20787
+ const roots = swiftObjcRootObjects(`${scratch2}
20788
+ ${args.frameworkKey}`, scratch2, [
20789
+ ...archived.values()
20790
+ ]);
20791
+ const linkedObjects = objects.map((object4) => {
20792
+ const name3 = archived.get(object4);
20793
+ return name3 ? { path: import_node_path27.default.join(scratch2, name3), lazy: !roots.has(name3) } : { path: object4, lazy: false };
20794
+ });
20747
20795
  return {
20796
+ root: scratch2,
20748
20797
  modules: import_node_path27.default.join(release, "Modules"),
20749
- objects,
20798
+ objects: linkedObjects.filter((object4) => !object4.lazy).map((object4) => object4.path),
20799
+ lazyObjects: linkedObjects.filter((object4) => object4.lazy).map((object4) => object4.path),
20750
20800
  owners: linked.owners,
20751
20801
  providers,
20752
20802
  link,
@@ -20900,6 +20950,10 @@ ${args.frameworkKey}
20900
20950
  for (const object4 of args.prebuilt.objects)
20901
20951
  hash.update(`object
20902
20952
  ${object4}
20953
+ ${statOf(object4)}`);
20954
+ for (const object4 of args.prebuilt.lazyObjects)
20955
+ hash.update(`lazy-object
20956
+ ${object4}
20903
20957
  ${statOf(object4)}`);
20904
20958
  for (const object4 of args.prebuilt.providers)
20905
20959
  hash.update(`provider
@@ -21316,7 +21370,7 @@ function compileSwiftProjectOnce(input, options) {
21316
21370
  pruneSwiftWasmLink(
21317
21371
  root,
21318
21372
  options.toolchainBin,
21319
- frameworkRoot,
21373
+ prebuilt?.root ?? frameworkRoot,
21320
21374
  input.staticClangTargets,
21321
21375
  options.project,
21322
21376
  void 0,
@@ -21340,9 +21394,15 @@ function compileSwiftProjectOnce(input, options) {
21340
21394
  optimized
21341
21395
  });
21342
21396
  else if (input.optimize) await optimizeWasm(output2, optimized);
21397
+ const executable = input.optimize ? optimized : output2;
21398
+ await runCompiler(
21399
+ import_node_path27.default.join(options.toolchainBin, "llvm-objcopy"),
21400
+ ["--remove-section=.swift1_autolink_entries", executable],
21401
+ buildOptions
21402
+ );
21343
21403
  const artifact = {
21344
21404
  hash,
21345
- bytes: (0, import_node_fs27.readFileSync)(input.optimize ? optimized : output2),
21405
+ bytes: (0, import_node_fs27.readFileSync)(executable),
21346
21406
  icu: await icu
21347
21407
  };
21348
21408
  if (!options.project) saveCompiledArtifact(root, artifact);
@@ -30380,7 +30440,7 @@ function sourceClosureDigest(srcDir, entrypoints) {
30380
30440
  return hash.digest("hex");
30381
30441
  }
30382
30442
  var standinSourceDigest = (srcDir = __sootsim_import_meta_dirname) => sourceClosureDigest(srcDir, STANDIN_DIGEST_ENTRYPOINTS);
30383
- var STANDIN_SOURCE_DIGEST = true ? "a3c0ce4a9bde10ffdfdde4f65019a9ffc1f75b1779312f1d5ed2a686a3f6e0c7" : standinSourceDigest();
30443
+ var STANDIN_SOURCE_DIGEST = true ? "f2fd734797f09885af5cbd2e5fd5b69c0958bd1f06e2a2e9454cbae6de386412" : standinSourceDigest();
30384
30444
 
30385
30445
  // src/swift-standins.ts
30386
30446
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
package/dist-lib/vite.cjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (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;
@@ -1416,7 +1416,7 @@ function isValidRuntimeVersion(value) {
1416
1416
  }
1417
1417
 
1418
1418
  // runtime-companion.json
1419
- var runtime_companion_default = { abi: 1, sha256: "c5311b24d34f15e1e93e1e7fc426600404705562e03ce05c7c359e341afc75cd", file: "node/cli-c5311b24d34f15e1e93e1e7fc426600404705562e03ce05c7c359e341afc75cd.cjs" };
1419
+ var runtime_companion_default = { abi: 1, sha256: "d1826a4d4d05c87a157d5b160177de9cd6f1fd10a3d142804a92a0d57ff3060f", file: "node/cli-d1826a4d4d05c87a157d5b160177de9cd6f1fd10a3d142804a92a0d57ff3060f.cjs" };
1420
1420
 
1421
1421
  // src/answeredNativePackages.ts
1422
1422
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
@@ -1909,7 +1909,7 @@ function readIosSdkTree(root) {
1909
1909
 
1910
1910
  // src/swift-standin-digest.ts
1911
1911
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
1912
- var STANDIN_SOURCE_DIGEST = true ? "a3c0ce4a9bde10ffdfdde4f65019a9ffc1f75b1779312f1d5ed2a686a3f6e0c7" : standinSourceDigest();
1912
+ var STANDIN_SOURCE_DIGEST = true ? "f2fd734797f09885af5cbd2e5fd5b69c0958bd1f06e2a2e9454cbae6de386412" : standinSourceDigest();
1913
1913
 
1914
1914
  // src/expo-native-workspace.ts
1915
1915
  init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
@@ -5388,7 +5388,7 @@ var FOUNDATION_IMPLICIT_MODULES = [
5388
5388
  var FOUNDATION_IMPLICIT_FLAGS = FOUNDATION_IMPLICIT_MODULES.map(
5389
5389
  (module2) => `, "-Xfrontend", "-import-module", "-Xfrontend", "${module2}"`
5390
5390
  ).join("");
5391
- var compilerSourceDigest = true ? "49b49a3b4f72b519cda4a1310d169f7d233d4f0249b0bcff228d2c316fafd9e1" : swiftCompilerSourceDigest2(__sootsim_import_meta_dirname);
5391
+ var compilerSourceDigest = true ? "f4c68ce2ea46dd5a9205990046616e5dcc4a3b3b527378ee285d9e25865e5851" : swiftCompilerSourceDigest2(__sootsim_import_meta_dirname);
5392
5392
  var CORE_FOUNDATION_HANDLE_IMPORTS = [
5393
5393
  "CFAllocator",
5394
5394
  "CFArray",
@@ -1,4 +1,4 @@
1
- /*! peach v0.1.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (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.2177 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
1
+ /*! peach v0.1.2180 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
2
2
 
3
3
  // src/worklet-executable.ts
4
4
  import { parse } from "acorn";
@@ -14,6 +14,7 @@ export * as guest_import_meta from './guest-import-meta.d.ts';
14
14
  export * as guest_module_overrides from './guest-module-overrides.d.ts';
15
15
  export * as ios_chrome_metrics from './ios/chrome-metrics.d.ts';
16
16
  export * as ios_duo_housing from './ios/duo-housing.d.ts';
17
+ export * as ios_frame_svg from './ios/frame-svg.d.ts';
17
18
  export * as metro_fingerprint from './metro-fingerprint.d.ts';
18
19
  export * as metro_fingerprint_registry_client from './metro-fingerprint-registry-client.d.ts';
19
20
  export * as peach_warm_manifest from './peach-warm-manifest.d.ts';
@@ -0,0 +1,41 @@
1
+ export interface EdgeShadow {
2
+ inset: boolean;
3
+ x: number;
4
+ y: number;
5
+ spread: number;
6
+ color: string;
7
+ }
8
+ export declare const METALLIC_RING: EdgeShadow[];
9
+ export declare const ANDROID_METALLIC_RING: EdgeShadow[];
10
+ export type SideButtonSide = 'left' | 'right' | 'top' | 'bottom';
11
+ export declare const SIDE_BUTTON_COLOR = "#212121";
12
+ export declare const SIDE_BUTTON_RADIUS = 1.5;
13
+ export declare const SIDE_BUTTON_HOVER_GROWTH = 2.5;
14
+ export declare const SIDE_BUTTON_HOVER_MS = 150;
15
+ export declare const SIDE_BUTTON_HIT_PAD_OUTWARD = 12;
16
+ export declare const SIDE_BUTTON_HIT_PAD_ALONG = 8;
17
+ export declare const SIDE_BUTTON_SHADOW_SPILL = 3;
18
+ export declare function sideButtonShadows(side: SideButtonSide): EdgeShadow[];
19
+ export interface GradientStop {
20
+ color: [number, number, number, number];
21
+ at: number;
22
+ }
23
+ export declare const LEGACY_BODY_GRADIENT: GradientStop[];
24
+ export declare const LEGACY_HOME_BUTTON_CENTER: {
25
+ x: number;
26
+ y: number;
27
+ };
28
+ export declare const LEGACY_HOME_BUTTON_GRADIENT: GradientStop[];
29
+ export declare const LEGACY_HOME_BUTTON_SHADOWS: EdgeShadow[];
30
+ export declare const LEGACY_HOME_GLYPH_SIZE = 16;
31
+ export declare const LEGACY_HOME_GLYPH_RADIUS = 4;
32
+ export declare const LEGACY_HOME_GLYPH_SHADOWS: EdgeShadow[];
33
+ export declare function legacyHomeButtonOrigin({ screenWidth, screenHeight, landscape, chinRight, }: {
34
+ screenWidth: number;
35
+ screenHeight: number;
36
+ landscape: boolean;
37
+ chinRight: boolean;
38
+ }): {
39
+ top: number;
40
+ left: number;
41
+ };
@@ -0,0 +1,43 @@
1
+ import { type EdgeShadow, type SideButtonSide } from './frame-art.d.ts';
2
+ import type { CornerRadii } from '../../../../../src/device-catalog.ts';
3
+ export type FramePaintContext = Pick<CanvasRenderingContext2D, 'save' | 'restore' | 'beginPath' | 'closePath' | 'moveTo' | 'lineTo' | 'arcTo' | 'arc' | 'rect' | 'roundRect' | 'translate' | 'scale' | 'clearRect' | 'createLinearGradient' | 'createRadialGradient'> & {
4
+ fillStyle: CanvasRenderingContext2D['fillStyle'];
5
+ fill(rule?: CanvasFillRule): void;
6
+ clip(): void;
7
+ };
8
+ export interface FramePaintButton {
9
+ side: SideButtonSide;
10
+ top: number;
11
+ height: number;
12
+ width: number;
13
+ hover: number;
14
+ }
15
+ export interface FramePaintSpec {
16
+ width: number;
17
+ height: number;
18
+ radii: CornerRadii;
19
+ body: 'solid' | 'legacy' | null;
20
+ bodyColor?: string;
21
+ ring: EdgeShadow[] | null;
22
+ outline?: {
23
+ width: number;
24
+ color: string;
25
+ } | null;
26
+ buttons: FramePaintButton[];
27
+ buttonInk?: string;
28
+ home: {
29
+ top: number;
30
+ left: number;
31
+ } | null;
32
+ grid?: {
33
+ scale: number;
34
+ x: number;
35
+ y: number;
36
+ };
37
+ }
38
+ export declare function framePaintMargin(spec: Pick<FramePaintSpec, 'outline'> & {
39
+ buttons: {
40
+ width: number;
41
+ }[];
42
+ }): number;
43
+ export declare function paintDeviceFrame(ctx: FramePaintContext, spec: FramePaintSpec): void;
@@ -0,0 +1,4 @@
1
+ import { METALLIC_RING } from './frame-art.d.ts';
2
+ import { type FramePaintSpec } from './frame-paint.d.ts';
3
+ export { METALLIC_RING };
4
+ export declare function frameSvg(spec: FramePaintSpec, id?: string): string;
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.2177",
3
+ "version": "0.1.2180",
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":"c5311b24d34f15e1e93e1e7fc426600404705562e03ce05c7c359e341afc75cd","file":"node/cli-c5311b24d34f15e1e93e1e7fc426600404705562e03ce05c7c359e341afc75cd.cjs"}
1
+ {"abi":1,"sha256":"d1826a4d4d05c87a157d5b160177de9cd6f1fd10a3d142804a92a0d57ff3060f","file":"node/cli-d1826a4d4d05c87a157d5b160177de9cd6f1fd10a3d142804a92a0d57ff3060f.cjs"}
@@ -6,6 +6,7 @@
6
6
  // Copyright (c) 2007-2018 Apple Inc. All rights reserved.
7
7
  //
8
8
 
9
+ #import <UIKitTypes/UIKitTypes.h>
9
10
  #import <Foundation/Foundation.h>
10
11
  #import <CoreGraphics/CoreGraphics.h>
11
12
  #import <UIKit/UIView.h>
@@ -15,31 +16,13 @@
15
16
 
16
17
  NS_HEADER_AUDIT_BEGIN(nullability, sendability)
17
18
 
18
- typedef NS_ENUM(NSInteger, UIScrollViewIndicatorStyle) {
19
- UIScrollViewIndicatorStyleDefault, // Automatically switches appearance based on the user interface style
20
- UIScrollViewIndicatorStyleBlack, // Dark indicator, for use on light backgrounds
21
- UIScrollViewIndicatorStyleWhite // Light indicator, for use on dark backgrounds
22
- } API_UNAVAILABLE(watchos);
23
-
24
- typedef NS_ENUM(NSInteger, UIScrollViewKeyboardDismissMode) {
25
- UIScrollViewKeyboardDismissModeNone,
26
- UIScrollViewKeyboardDismissModeOnDrag, // dismisses the keyboard when a drag begins
27
- UIScrollViewKeyboardDismissModeInteractive, // the keyboard follows the dragging touch off screen, and may be pulled upward again to cancel the dismiss
28
- UIScrollViewKeyboardDismissModeOnDragWithAccessory, // dismisses both keyboard and accessory in the style of UIScrollViewKeyboardDismissModeOnDrag
29
- UIScrollViewKeyboardDismissModeInteractiveWithAccessory // dismisses both keyboard and accessory in the style of UIScrollViewKeyboardDismissModeInteractive
30
- } API_AVAILABLE(ios(7.0)) API_UNAVAILABLE(visionos, watchos);
31
-
32
- typedef NS_ENUM(NSInteger, UIScrollViewIndexDisplayMode) {
33
- UIScrollViewIndexDisplayModeAutomatic, // the index will show or hide automatically as needed
34
- UIScrollViewIndexDisplayModeAlwaysHidden, // the index will never be displayed
35
- } API_AVAILABLE(tvos(10.2)) API_UNAVAILABLE(watchos);
36
-
37
- typedef NS_ENUM(NSInteger, UIScrollViewContentInsetAdjustmentBehavior) {
38
- UIScrollViewContentInsetAdjustmentAutomatic, // Similar to .scrollableAxes, but for backward compatibility will also adjust the top & bottom contentInset when the scroll view is owned by a view controller with automaticallyAdjustsScrollViewInsets = YES inside a navigation controller, regardless of whether the scroll view is scrollable
39
- UIScrollViewContentInsetAdjustmentScrollableAxes, // Edges for scrollable axes are adjusted (i.e., contentSize.width/height > frame.size.width/height or alwaysBounceHorizontal/Vertical = YES)
40
- UIScrollViewContentInsetAdjustmentNever, // contentInset is not adjusted
41
- UIScrollViewContentInsetAdjustmentAlways, // contentInset is always adjusted by the scroll view's safeAreaInsets
42
- } API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
19
+
20
+
21
+
22
+
23
+
24
+
25
+
43
26
 
44
27
  typedef CGFloat UIScrollViewDecelerationRate NS_TYPED_ENUM API_UNAVAILABLE(watchos);
45
28