peachsim 0.1.2182 → 0.1.2186
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli/commands/cpu-profile.ts +6 -2
- package/cli/commands/shell-url.ts +3 -6
- package/cli/outbound-endpoints.ts +11 -1
- package/dist-lib/agent-daemon-client.cjs +1 -1
- package/dist-lib/agent-events.cjs +1 -1
- package/dist-lib/attached-projects.cjs +1 -1
- package/dist-lib/auth/shared-session.cjs +1 -1
- package/dist-lib/backend-origin.cjs +1 -1
- package/dist-lib/beta.cjs +1 -1
- package/dist-lib/beta.mjs +1 -1
- package/dist-lib/bridge-constants.cjs +1 -1
- package/dist-lib/bridge-contract-input.cjs +1 -1
- package/dist-lib/bridge-contract-input.mjs +1 -1
- package/dist-lib/bridge-contract.cjs +1 -1
- package/dist-lib/bridge-contract.mjs +1 -1
- package/dist-lib/bundle-channel.cjs +371 -36
- package/dist-lib/capture-contract.cjs +1 -1
- package/dist-lib/capture-contract.mjs +1 -1
- package/dist-lib/cloud-contract.cjs +1 -1
- package/dist-lib/cloud-contract.mjs +1 -1
- package/dist-lib/cloud-test-args.cjs +1 -1
- package/dist-lib/cloud-test-args.mjs +1 -1
- package/dist-lib/cloud.cjs +1 -1
- package/dist-lib/cloud.mjs +1 -1
- package/dist-lib/config.cjs +1 -1
- package/dist-lib/config.mjs +1 -1
- package/dist-lib/detox/index.cjs +2 -2
- package/dist-lib/dev-bundle-resolution.cjs +1 -1
- package/dist-lib/expo-swift-bundle.cjs +325 -28
- package/dist-lib/expo-swift-metadata.cjs +2 -1
- package/dist-lib/expo-swift-metadata.mjs +2 -1
- package/dist-lib/home-paths.cjs +1 -1
- package/dist-lib/host/bridge-host.cjs +364 -36
- package/dist-lib/host/fetch-proxy-handler.cjs +8 -5
- package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
- package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
- package/dist-lib/host/replacement-module-handler.cjs +1 -1
- package/dist-lib/host/websocket-proxy.cjs +1 -1
- package/dist-lib/index.cjs +51 -7
- package/dist-lib/jump-to-source-babel.cjs +1 -1
- package/dist-lib/jump-to-source-native.cjs +1 -1
- package/dist-lib/kotlin-host.cjs +5 -3
- package/dist-lib/menu.cjs +1 -1
- package/dist-lib/menu.mjs +1 -1
- package/dist-lib/metro-fingerprint-registry.cjs +1 -1
- package/dist-lib/metro-fingerprint-registry.mjs +1 -1
- package/dist-lib/metro-production-bundle.cjs +1 -1
- package/dist-lib/metro-production-bundle.mjs +1 -1
- package/dist-lib/metro.cjs +51 -7
- package/dist-lib/native-app-identity-project.cjs +49 -5
- package/dist-lib/native-app-identity-project.mjs +49 -5
- package/dist-lib/native-app-identity.cjs +40 -2
- package/dist-lib/native-app-identity.mjs +40 -2
- package/dist-lib/native-firebase-metadata.cjs +1 -1
- package/dist-lib/native-firebase-metadata.mjs +1 -1
- package/dist-lib/pdfium-raster.cjs +1 -1
- package/dist-lib/pdfium-raster.mjs +1 -1
- package/dist-lib/plist.cjs +1 -1
- package/dist-lib/plist.mjs +1 -1
- package/dist-lib/profiles.cjs +1 -1
- package/dist-lib/public-brand.cjs +1 -1
- package/dist-lib/public-origins-lib-esm.json +25 -24
- package/dist-lib/public-origins-lib.json +63 -53
- package/dist-lib/react-native-host-modules.cjs +1 -1
- package/dist-lib/react-native-host-modules.mjs +1 -1
- package/dist-lib/reap-browser.cjs +1 -1
- package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
- package/dist-lib/sdk.cjs +1 -1
- package/dist-lib/sdk.mjs +1 -1
- package/dist-lib/skills.cjs +383 -39
- package/dist-lib/swift-compile.cjs +2 -2
- package/dist-lib/swift-compile.mjs +2 -2
- package/dist-lib/swift-package.cjs +26 -1
- package/dist-lib/swift-package.mjs +25 -1
- package/dist-lib/swift-submit.cjs +1 -1
- package/dist-lib/swift-submit.mjs +1 -1
- package/dist-lib/swift-toolchain.cjs +1 -1
- package/dist-lib/swift.cjs +1 -1
- package/dist-lib/vite-swift.cjs +286 -24
- package/dist-lib/vite.cjs +8 -5
- package/dist-lib/worklet-executable.cjs +1 -1
- package/dist-lib/worklet-executable.mjs +1 -1
- package/dist-types/packages/peach-engine/src/render-worker/compositor-backend.d.ts +1 -0
- package/kotlin/sdk.tar.gz +0 -0
- package/package.json +1 -1
- package/runtime-companion.json +1 -1
- package/sdk/ios/System/Library/Frameworks/ActivityKit.framework/Headers/ActivityKit.h +1 -0
- package/sdk/ios/System/Library/Frameworks/ActivityKit.framework/Modules/module.modulemap +4 -0
- package/sdk/ios/System/Library/Frameworks/UIKit.framework/Headers/UIImageAsset.h +1 -1
- package/sdk/ios/usr/lib/swift/ActivityKit.swiftmodule/arm64-apple-ios-simulator.swiftinterface +14 -0
- package/sdk/ios/usr/lib/swift/CoreGraphics.swiftmodule/arm64-apple-ios-simulator.swiftinterface +14 -0
- package/sdk/ios/usr/lib/swift/Dispatch.swiftmodule/arm64-apple-ios-simulator.swiftinterface +3 -0
- package/sdk/ios/usr/lib/swift/Foundation.swiftmodule/arm64-apple-ios-simulator.swiftinterface +147 -16
- package/sdk/ios/usr/lib/swift/UIKit.swiftmodule/arm64-apple-ios-simulator.swiftinterface +5 -0
- package/src/expo-native-workspace.ts +9 -2
- package/src/kotlin-host.ts +4 -2
- package/src/native-app-identity-project.ts +10 -2
- package/src/native-app-identity.ts +15 -1
- package/src/nativeAppIconContract.ts +37 -0
- package/src/swift-installed-targets.ts +8 -0
- package/src/swift-interface-bodies.ts +165 -0
- package/src/swift-objc-standin.ts +73 -13
- package/src/swift-package.ts +26 -0
- package/src/swift-source-pods.ts +27 -4
- package/src/swift-standin-emit.ts +30 -3
- package/src/swift-standins.ts +75 -12
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2186 | (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": "
|
|
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": "65a0698bf022ace2f4254f3f891828dedf403d61c102238e242084a2279e04eb", "home-paths.ts": "f5583b61f8bdd81823b3b29ff519a48daf9993719f194ddb7de22218472e90f9", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "5f41cd0bd86cb0cffbfb0047348b963f81d5e51cb0e8dd574c739b1a27aa56de", "xcode-target-members.ts": "ad7589132bffab265e8a10b64e24484fe88b4a2b1cc0ee19a97f151a002eca77", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
|
|
43
43
|
}
|
|
44
44
|
});
|
|
45
45
|
|
|
@@ -6905,6 +6905,34 @@ init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
|
6905
6905
|
|
|
6906
6906
|
// src/nativeAppIconContract.ts
|
|
6907
6907
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
6908
|
+
function resolveNativeBundleIcons(icons, catalogNames, resolveReference) {
|
|
6909
|
+
if (!isRecord(icons) && catalogNames.length === 0) return void 0;
|
|
6910
|
+
const resolve3 = (value) => {
|
|
6911
|
+
if (typeof value === "string") return resolveReference(value);
|
|
6912
|
+
if (Array.isArray(value)) return value.map(resolve3);
|
|
6913
|
+
if (isRecord(value))
|
|
6914
|
+
return Object.fromEntries(
|
|
6915
|
+
Object.entries(value).map(([key2, entry]) => [
|
|
6916
|
+
resolveReference(key2),
|
|
6917
|
+
resolve3(entry)
|
|
6918
|
+
])
|
|
6919
|
+
);
|
|
6920
|
+
return value;
|
|
6921
|
+
};
|
|
6922
|
+
const dictionary2 = isRecord(icons) ? Object.fromEntries(
|
|
6923
|
+
Object.entries(icons).map(([key2, value]) => [key2, resolve3(value)])
|
|
6924
|
+
) : {};
|
|
6925
|
+
if (catalogNames.length === 0) return dictionary2;
|
|
6926
|
+
return {
|
|
6927
|
+
...dictionary2,
|
|
6928
|
+
CFBundleAlternateIcons: {
|
|
6929
|
+
...Object.fromEntries(
|
|
6930
|
+
catalogNames.map((name3) => [name3, { CFBundleIconName: name3 }])
|
|
6931
|
+
),
|
|
6932
|
+
...isRecord(dictionary2.CFBundleAlternateIcons) ? dictionary2.CFBundleAlternateIcons : {}
|
|
6933
|
+
}
|
|
6934
|
+
};
|
|
6935
|
+
}
|
|
6908
6936
|
function isNativeAppIconArtwork(value) {
|
|
6909
6937
|
return isRecord(value) && (value.primary === void 0 || isSwiftImageVariants(value.primary)) && isRecord(value.alternates) && Object.values(value.alternates).every(isSwiftImageVariants);
|
|
6910
6938
|
}
|
|
@@ -7221,6 +7249,7 @@ function isNativeAppIdentity(value) {
|
|
|
7221
7249
|
if (value.androidPhotoLibraryAddOnly !== void 0 && value.androidPhotoLibraryAddOnly !== true)
|
|
7222
7250
|
return false;
|
|
7223
7251
|
if (value.googleSignIn !== void 0 && !isRecord(value.googleSignIn)) return false;
|
|
7252
|
+
if (value.bundleIcons !== void 0 && !isRecord(value.bundleIcons)) return false;
|
|
7224
7253
|
const descriptions = value.permissionUsageDescriptions;
|
|
7225
7254
|
if (value.reanimatedStaticFeatureFlags !== void 0 && (!isRecord(value.reanimatedStaticFeatureFlags) || !Object.values(value.reanimatedStaticFeatureFlags).every(
|
|
7226
7255
|
(flag) => typeof flag === "boolean"
|
|
@@ -7604,6 +7633,29 @@ function moduleMapName(text5) {
|
|
|
7604
7633
|
);
|
|
7605
7634
|
return index < 0 ? void 0 : tokens2[index + 1];
|
|
7606
7635
|
}
|
|
7636
|
+
function moduleMapModules(text5) {
|
|
7637
|
+
const modules = [];
|
|
7638
|
+
const token = /\/\*[\s\S]*?\*\/|\/\/[^\n]*|"[^"]*"|\{|\}|\bmodule\s+([\w.]+)/g;
|
|
7639
|
+
let depth = 0;
|
|
7640
|
+
let start = -1;
|
|
7641
|
+
let name3 = "";
|
|
7642
|
+
for (const match of text5.matchAll(token)) {
|
|
7643
|
+
if (match[0] === "{") depth++;
|
|
7644
|
+
else if (match[0] === "}") {
|
|
7645
|
+
depth--;
|
|
7646
|
+
if (depth === 0 && start >= 0) {
|
|
7647
|
+
modules.push({ name: name3, text: text5.slice(start, match.index + 1) });
|
|
7648
|
+
start = -1;
|
|
7649
|
+
}
|
|
7650
|
+
} else if (match[1] !== void 0 && depth === 0) {
|
|
7651
|
+
const before = text5.slice(0, match.index).trimEnd();
|
|
7652
|
+
if (/\bextern$/.test(before)) continue;
|
|
7653
|
+
start = match.index;
|
|
7654
|
+
name3 = match[1];
|
|
7655
|
+
}
|
|
7656
|
+
}
|
|
7657
|
+
return modules;
|
|
7658
|
+
}
|
|
7607
7659
|
function swiftTargetModuleName(name3) {
|
|
7608
7660
|
return name3.replace(/[^A-Za-z0-9_]/g, "_").replace(/^[0-9]/, "_");
|
|
7609
7661
|
}
|
|
@@ -11840,6 +11892,137 @@ var import_node_crypto10 = require("node:crypto");
|
|
|
11840
11892
|
var import_node_fs29 = __toESM(require("node:fs"), 1);
|
|
11841
11893
|
var import_node_path26 = __toESM(require("node:path"), 1);
|
|
11842
11894
|
|
|
11895
|
+
// src/swift-interface-bodies.ts
|
|
11896
|
+
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
11897
|
+
var INLINE_ATTRIBUTE = /@(?:inlinable|_alwaysEmitIntoClient|_transparent|inline\(__always\)|_effects\([^()]*\)|_specialize\((?:[^()]|\([^()]*\))*\))\s*/g;
|
|
11898
|
+
var ACCESSOR = /^(?:mutating|nonmutating|async|throws|rethrows|get|set|_modify|_read)$/;
|
|
11899
|
+
function declarationKind(head) {
|
|
11900
|
+
const words2 = head.replace(/@\w+(?:\((?:[^()]|\([^()]*\))*\))?/g, " ").match(/[A-Za-z_]\w*/g);
|
|
11901
|
+
for (const word of words2 ?? []) {
|
|
11902
|
+
if (word === "func" || word === "init" || word === "deinit") return "function";
|
|
11903
|
+
if (word === "var" || word === "let" || word === "subscript") return "property";
|
|
11904
|
+
if (word === "struct" || word === "class" || word === "enum" || word === "protocol" || word === "extension" || word === "actor" || word === "precedencegroup")
|
|
11905
|
+
return "container";
|
|
11906
|
+
}
|
|
11907
|
+
return "container";
|
|
11908
|
+
}
|
|
11909
|
+
function skipLiteral(text5, i) {
|
|
11910
|
+
if (text5.startsWith("//", i)) {
|
|
11911
|
+
const end = text5.indexOf("\n", i);
|
|
11912
|
+
return end < 0 ? text5.length : end;
|
|
11913
|
+
}
|
|
11914
|
+
if (text5.startsWith("/*", i)) {
|
|
11915
|
+
const end = text5.indexOf("*/", i + 2);
|
|
11916
|
+
return end < 0 ? text5.length : end + 2;
|
|
11917
|
+
}
|
|
11918
|
+
if (text5[i] !== '"' && text5[i] !== "#") return i;
|
|
11919
|
+
let hashes = 0;
|
|
11920
|
+
let j = i;
|
|
11921
|
+
while (text5[j] === "#") {
|
|
11922
|
+
hashes++;
|
|
11923
|
+
j++;
|
|
11924
|
+
}
|
|
11925
|
+
if (text5[j] !== '"') return i;
|
|
11926
|
+
const multiline = text5.startsWith('"""', j);
|
|
11927
|
+
const open = multiline ? '"""' : '"';
|
|
11928
|
+
j += open.length;
|
|
11929
|
+
const close = `${open}${"#".repeat(hashes)}`;
|
|
11930
|
+
const escape2 = `\\${"#".repeat(hashes)}`;
|
|
11931
|
+
while (j < text5.length) {
|
|
11932
|
+
if (text5.startsWith(escape2, j)) j += escape2.length + 1;
|
|
11933
|
+
else if (text5.startsWith(close, j)) return j + close.length;
|
|
11934
|
+
else j++;
|
|
11935
|
+
}
|
|
11936
|
+
return text5.length;
|
|
11937
|
+
}
|
|
11938
|
+
function skipBlock(text5, open) {
|
|
11939
|
+
let depth = 0;
|
|
11940
|
+
for (let i = open; i < text5.length; ) {
|
|
11941
|
+
const after = skipLiteral(text5, i);
|
|
11942
|
+
if (after !== i) {
|
|
11943
|
+
i = after;
|
|
11944
|
+
continue;
|
|
11945
|
+
}
|
|
11946
|
+
if (text5[i] === "{") depth++;
|
|
11947
|
+
else if (text5[i] === "}" && --depth === 0) return i + 1;
|
|
11948
|
+
i++;
|
|
11949
|
+
}
|
|
11950
|
+
return text5.length;
|
|
11951
|
+
}
|
|
11952
|
+
function skipExpression(text5, start) {
|
|
11953
|
+
let depth = 0;
|
|
11954
|
+
for (let i = start; i < text5.length; ) {
|
|
11955
|
+
const after = skipLiteral(text5, i);
|
|
11956
|
+
if (after !== i) {
|
|
11957
|
+
i = after;
|
|
11958
|
+
continue;
|
|
11959
|
+
}
|
|
11960
|
+
const char = text5[i];
|
|
11961
|
+
if (char === "(" || char === "[" || char === "{" || char === "<") depth++;
|
|
11962
|
+
else if (char === ">" && text5[i - 1] !== "-") depth--;
|
|
11963
|
+
else if (char === ")" || char === "]" || char === "}") {
|
|
11964
|
+
if (depth === 0) return i;
|
|
11965
|
+
depth--;
|
|
11966
|
+
} else if (char === "," && depth === 0) return i;
|
|
11967
|
+
i++;
|
|
11968
|
+
}
|
|
11969
|
+
return text5.length;
|
|
11970
|
+
}
|
|
11971
|
+
function swiftInterfaceWithoutBodies(text5, keepDefaults = false) {
|
|
11972
|
+
let out = "";
|
|
11973
|
+
const frames = [];
|
|
11974
|
+
let parens = 0;
|
|
11975
|
+
let lineStart = 0;
|
|
11976
|
+
for (let i = 0; i < text5.length; ) {
|
|
11977
|
+
const after = skipLiteral(text5, i);
|
|
11978
|
+
if (after !== i) {
|
|
11979
|
+
out += text5.slice(i, after);
|
|
11980
|
+
i = after;
|
|
11981
|
+
continue;
|
|
11982
|
+
}
|
|
11983
|
+
const char = text5[i];
|
|
11984
|
+
if (char === "=" && parens > 0 && text5[i - 1] === " " && text5[i + 1] === " ") {
|
|
11985
|
+
out = out.trimEnd();
|
|
11986
|
+
i = skipExpression(text5, i + 1);
|
|
11987
|
+
continue;
|
|
11988
|
+
}
|
|
11989
|
+
if (char === "\n") lineStart = out.length + 1;
|
|
11990
|
+
else if (char === "(") parens++;
|
|
11991
|
+
else if (char === ")") parens--;
|
|
11992
|
+
else if (char === "}") {
|
|
11993
|
+
frames.pop();
|
|
11994
|
+
} else if (char === "{") {
|
|
11995
|
+
const parent = frames.at(-1);
|
|
11996
|
+
const head = out.slice(lineStart);
|
|
11997
|
+
if (parens > 0 || parent === "expression") frames.push("expression");
|
|
11998
|
+
else if (parent === "accessors") {
|
|
11999
|
+
out = `${out.slice(0, lineStart)}${head.replace(INLINE_ATTRIBUTE, "")}`.trimEnd();
|
|
12000
|
+
i = skipBlock(text5, i);
|
|
12001
|
+
continue;
|
|
12002
|
+
} else {
|
|
12003
|
+
const kind = declarationKind(head);
|
|
12004
|
+
const body = text5.slice(i + 1, skipBlock(text5, i) - 1);
|
|
12005
|
+
if (kind === "function") {
|
|
12006
|
+
out = `${out.slice(0, lineStart)}${head.replace(INLINE_ATTRIBUTE, "")}`.trimEnd();
|
|
12007
|
+
i = skipBlock(text5, i);
|
|
12008
|
+
continue;
|
|
12009
|
+
}
|
|
12010
|
+
const bare = body.split(/\s+/).every((word) => word === "" || ACCESSOR.test(word));
|
|
12011
|
+
frames.push(kind === "property" && !bare ? "accessors" : "container");
|
|
12012
|
+
if (kind === "property" && bare) {
|
|
12013
|
+
out += `{${body}}`;
|
|
12014
|
+
i = skipBlock(text5, i);
|
|
12015
|
+
frames.pop();
|
|
12016
|
+
continue;
|
|
12017
|
+
}
|
|
12018
|
+
}
|
|
12019
|
+
}
|
|
12020
|
+
out += char;
|
|
12021
|
+
i++;
|
|
12022
|
+
}
|
|
12023
|
+
return out.replace(INLINE_ATTRIBUTE, "");
|
|
12024
|
+
}
|
|
12025
|
+
|
|
11843
12026
|
// src/swift-objc-sdk.ts
|
|
11844
12027
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
11845
12028
|
var import_node_path25 = __toESM(require("node:path"), 1);
|
|
@@ -11878,7 +12061,7 @@ function restoreSwiftInterfaceSPI(interfaceText, module2, graphs) {
|
|
|
11878
12061
|
let depth = 0;
|
|
11879
12062
|
for (const line of interfaceText.split("\n")) {
|
|
11880
12063
|
const enclosing = scopes.at(-1)?.path ?? [];
|
|
11881
|
-
const declaration = /^\s*(?:@[\w.]+(?:\([^)]*\))?\s+|\w+\s+)*?(class(?!\s+(?:func|var|subscript)\b)|struct|enum|protocol|actor|extension|func|var|let|init|subscript|typealias|case)\b\s*([\w.`]*)/.exec(
|
|
12064
|
+
const declaration = /^\s*(?:@[\w.]+(?:\([^)]*\))?\s+|\w+\s+)*?(class(?!\s+(?:func|var|subscript)\b)|struct|enum|protocol|actor|extension|func|var|let|init|subscript|typealias|case)\b\s*([/=\-+!*%<>&|^~?]+|[\w.`]*)/.exec(
|
|
11882
12065
|
line.replace(/::/g, ".")
|
|
11883
12066
|
);
|
|
11884
12067
|
if (declaration) {
|
|
@@ -11976,7 +12159,26 @@ var KEEP_EXTERNAL = /* @__PURE__ */ new Map([
|
|
|
11976
12159
|
["s:SE", "Encodable"],
|
|
11977
12160
|
["s:Se", "Decodable"],
|
|
11978
12161
|
["s:s23CustomStringConvertibleP", "CustomStringConvertible"],
|
|
11979
|
-
["s:s9CodingKeyP", "CodingKey"]
|
|
12162
|
+
["s:s9CodingKeyP", "CodingKey"],
|
|
12163
|
+
["s:SL", "Comparable"],
|
|
12164
|
+
["s:ST", "Sequence"],
|
|
12165
|
+
["s:St", "IteratorProtocol"],
|
|
12166
|
+
["s:Sl", "Collection"],
|
|
12167
|
+
["s:SK", "BidirectionalCollection"],
|
|
12168
|
+
["s:Sk", "RandomAccessCollection"],
|
|
12169
|
+
["s:SM", "MutableCollection"],
|
|
12170
|
+
["s:Sm", "RangeReplaceableCollection"],
|
|
12171
|
+
["s:s28CustomDebugStringConvertibleP", "CustomDebugStringConvertible"],
|
|
12172
|
+
["s:s25LosslessStringConvertibleP", "LosslessStringConvertible"],
|
|
12173
|
+
["s:s20TextOutputStreamableP", "TextOutputStreamable"],
|
|
12174
|
+
["s:Sx", "Strideable"],
|
|
12175
|
+
["s:s18AdditiveArithmeticP", "AdditiveArithmetic"],
|
|
12176
|
+
["s:s25ExpressibleByArrayLiteralP", "ExpressibleByArrayLiteral"],
|
|
12177
|
+
["s:s30ExpressibleByDictionaryLiteralP", "ExpressibleByDictionaryLiteral"],
|
|
12178
|
+
["s:s26ExpressibleByStringLiteralP", "ExpressibleByStringLiteral"],
|
|
12179
|
+
["s:s27ExpressibleByIntegerLiteralP", "ExpressibleByIntegerLiteral"],
|
|
12180
|
+
["s:s25ExpressibleByFloatLiteralP", "ExpressibleByFloatLiteral"],
|
|
12181
|
+
["s:s27ExpressibleByBooleanLiteralP", "ExpressibleByBooleanLiteral"]
|
|
11980
12182
|
]);
|
|
11981
12183
|
var LEADING_ATTRS = /^((?:@\w+(?:\([^)]*\))?\s*|nonisolated\s+)*)(.*)$/s;
|
|
11982
12184
|
var OBJC_ONLY = /@(?:objcMembers|objc|IBOutlet|IBInspectable|IBAction|IBSegueAction|GKInspectable|nonobjc|NSCopying|NSManaged)(?:\([^)]*\))?\s*|\bdynamic\s+/g;
|
|
@@ -12857,7 +13059,12 @@ function emitSwiftStandin(sourceGraphs, options) {
|
|
|
12857
13059
|
const list2 = [
|
|
12858
13060
|
...parent ? [parent] : [],
|
|
12859
13061
|
...(conforms.get(id) ?? []).filter(
|
|
12860
|
-
(name3) => !ancestors.has(name3) && !inherited.has(conformanceTargets.get(id).get(name3)) && !(parent && objectConformers.has(id) && [
|
|
13062
|
+
(name3) => !ancestors.has(name3) && !inherited.has(conformanceTargets.get(id).get(name3)) && !(parent && objectConformers.has(id) && [
|
|
13063
|
+
"Hashable",
|
|
13064
|
+
"Equatable",
|
|
13065
|
+
"CustomStringConvertible",
|
|
13066
|
+
"CustomDebugStringConvertible"
|
|
13067
|
+
].includes(name3)) && !(name3 === nsObjectProtocol && externalRoot(id) === nsObject) && !options.unconformed?.get(path66)?.has(name3)
|
|
12861
13068
|
)
|
|
12862
13069
|
].filter((name3, at, all2) => all2.indexOf(name3) === at);
|
|
12863
13070
|
const parentSymbol = superId.has(id) ? byId.get(superId.get(id)) : void 0;
|
|
@@ -13646,6 +13853,43 @@ function sdkDeclaration(name3) {
|
|
|
13646
13853
|
}
|
|
13647
13854
|
return sdkDeclarations.get(name3) ?? null;
|
|
13648
13855
|
}
|
|
13856
|
+
function intakeInterface(text5, keepDefaults = false) {
|
|
13857
|
+
return swiftInterfaceWithoutBodies(text5, keepDefaults).replace(/^((?:@_exported[ \t]+)?import[ \t]+)(\w+)\.[\w.]+[ \t]*$/gm, "$1$2").replace(/\bCoreFoundation\.(?=CG)/g, "CoreGraphics.").replace(/\bCoreFoundation\.(?=\w)/g, "Foundation.").replace(/\bDarwin\.OSStatus\b/g, "Swift.Int32").replace(
|
|
13858
|
+
/\bFoundation\.Data\.(?=Base64(?:En|De)codingOptions\b)/g,
|
|
13859
|
+
"Foundation.NSData."
|
|
13860
|
+
);
|
|
13861
|
+
}
|
|
13862
|
+
function stageVendorFrameworks(dir, stage) {
|
|
13863
|
+
import_node_fs29.default.mkdirSync(stage, { recursive: true });
|
|
13864
|
+
for (const entry of import_node_fs29.default.readdirSync(dir)) {
|
|
13865
|
+
if (!entry.endsWith(".framework")) continue;
|
|
13866
|
+
const source = import_node_path26.default.join(dir, entry);
|
|
13867
|
+
const target = import_node_path26.default.join(stage, entry);
|
|
13868
|
+
import_node_fs29.default.mkdirSync(target, { recursive: true });
|
|
13869
|
+
for (const child of import_node_fs29.default.readdirSync(source)) {
|
|
13870
|
+
if (child !== "Modules") {
|
|
13871
|
+
import_node_fs29.default.symlinkSync(import_node_path26.default.join(source, child), import_node_path26.default.join(target, child));
|
|
13872
|
+
continue;
|
|
13873
|
+
}
|
|
13874
|
+
for (const file of import_node_fs29.default.readdirSync(import_node_path26.default.join(source, child), {
|
|
13875
|
+
recursive: true,
|
|
13876
|
+
encoding: "utf8"
|
|
13877
|
+
})) {
|
|
13878
|
+
const from = import_node_path26.default.join(source, child, file);
|
|
13879
|
+
const to = import_node_path26.default.join(target, child, file);
|
|
13880
|
+
if (import_node_fs29.default.statSync(from).isDirectory()) {
|
|
13881
|
+
import_node_fs29.default.mkdirSync(to, { recursive: true });
|
|
13882
|
+
continue;
|
|
13883
|
+
}
|
|
13884
|
+
import_node_fs29.default.mkdirSync(import_node_path26.default.dirname(to), { recursive: true });
|
|
13885
|
+
if (file.endsWith(".swiftinterface"))
|
|
13886
|
+
import_node_fs29.default.writeFileSync(to, intakeInterface(import_node_fs29.default.readFileSync(from, "utf8")));
|
|
13887
|
+
else import_node_fs29.default.copyFileSync(from, to);
|
|
13888
|
+
}
|
|
13889
|
+
}
|
|
13890
|
+
}
|
|
13891
|
+
return stage;
|
|
13892
|
+
}
|
|
13649
13893
|
function objcView(surface, toolchainBin, stdlib, cacheDir5, work, original, vendorFrameworks = []) {
|
|
13650
13894
|
if (!import_node_fs29.default.existsSync(stdlib))
|
|
13651
13895
|
throw new Error(
|
|
@@ -13673,6 +13917,7 @@ function objcView(surface, toolchainBin, stdlib, cacheDir5, work, original, vend
|
|
|
13673
13917
|
import_node_fs29.default.writeFileSync(file, text5);
|
|
13674
13918
|
}
|
|
13675
13919
|
const interfaceCopies = [];
|
|
13920
|
+
let keepDefaults = true;
|
|
13676
13921
|
if (framework) {
|
|
13677
13922
|
import_node_fs29.default.mkdirSync(import_node_path26.default.join(frameworks, `${surface.module}.framework`, "Modules"), {
|
|
13678
13923
|
recursive: true
|
|
@@ -13699,10 +13944,7 @@ function objcView(surface, toolchainBin, stdlib, cacheDir5, work, original, vend
|
|
|
13699
13944
|
interfaceCopies.push(import_node_path26.default.join(to, name3));
|
|
13700
13945
|
import_node_fs29.default.writeFileSync(
|
|
13701
13946
|
import_node_path26.default.join(to, name3),
|
|
13702
|
-
import_node_fs29.default.readFileSync(import_node_path26.default.join(from, name3), "utf8")
|
|
13703
|
-
/\bFoundation\.Data\.(?=Base64(?:En|De)codingOptions\b)/g,
|
|
13704
|
-
"Foundation.NSData."
|
|
13705
|
-
)
|
|
13947
|
+
intakeInterface(import_node_fs29.default.readFileSync(import_node_path26.default.join(from, name3), "utf8"), true)
|
|
13706
13948
|
);
|
|
13707
13949
|
}
|
|
13708
13950
|
}
|
|
@@ -13764,7 +14006,10 @@ function objcView(surface, toolchainBin, stdlib, cacheDir5, work, original, vend
|
|
|
13764
14006
|
stubs,
|
|
13765
14007
|
"-I",
|
|
13766
14008
|
stubIncludes,
|
|
13767
|
-
...vendorFrameworks.flatMap((dir) => [
|
|
14009
|
+
...vendorFrameworks.flatMap((dir, index) => [
|
|
14010
|
+
"-F",
|
|
14011
|
+
stageVendorFrameworks(dir, import_node_path26.default.join(work, "vendor-frameworks", String(index)))
|
|
14012
|
+
])
|
|
13768
14013
|
];
|
|
13769
14014
|
const missing = /* @__PURE__ */ new Map();
|
|
13770
14015
|
const stubbed = /* @__PURE__ */ new Set();
|
|
@@ -13970,6 +14215,13 @@ function objcView(surface, toolchainBin, stdlib, cacheDir5, work, original, vend
|
|
|
13970
14215
|
);
|
|
13971
14216
|
}
|
|
13972
14217
|
}
|
|
14218
|
+
if ((!progress || round === ROUNDS) && keepDefaults && interfaceCopies.length > 0) {
|
|
14219
|
+
keepDefaults = false;
|
|
14220
|
+
for (const file of interfaceCopies)
|
|
14221
|
+
import_node_fs29.default.writeFileSync(file, swiftInterfaceWithoutBodies(import_node_fs29.default.readFileSync(file, "utf8")));
|
|
14222
|
+
writeHeaders();
|
|
14223
|
+
continue;
|
|
14224
|
+
}
|
|
13973
14225
|
if (!progress || round === ROUNDS)
|
|
13974
14226
|
throw new Error(
|
|
13975
14227
|
`its headers do not import as Swift: ${errors.length > 0 ? [...new Set(errors.map((match) => match[4]))].slice(0, 10).join("; ") : `swift-symbolgraph-extract ${run8.signal ?? `exit ${run8.status}`}: ${(run8.stderr.trim() || run8.stdout.trim() || "no diagnostic").slice(0, 4e3)}`}`
|
|
@@ -22751,7 +23003,7 @@ var darwinRecordsRegion = (quoted) => quoted.length ? ["-Wl,--start-lib", ...quo
|
|
|
22751
23003
|
var REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
|
|
22752
23004
|
var MULTI_MANIFEST_VERSION = 68;
|
|
22753
23005
|
var SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
|
|
22754
|
-
var compilerSourceDigest = true ? "
|
|
23006
|
+
var compilerSourceDigest = true ? "0d2e8d6fb4545fb31a692a87bd3215ef3a9a64a8c3e1b2fc1f2a3e79511325ec" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
|
|
22755
23007
|
function swiftArtifactHash(input, release, moduleRoot) {
|
|
22756
23008
|
const hash = (0, import_node_crypto19.createHash)("sha256");
|
|
22757
23009
|
hash.update(`swift-compile
|
|
@@ -31250,7 +31502,7 @@ function initializeWorkspaceGit(root, work) {
|
|
|
31250
31502
|
});
|
|
31251
31503
|
const tracked = trackedSourceFiles(root, work);
|
|
31252
31504
|
if (tracked.length > 0)
|
|
31253
|
-
(0, import_node_child_process32.execFileSync)("git", ["
|
|
31505
|
+
(0, import_node_child_process32.execFileSync)("git", ["update-index", "--add", "-z", "--stdin"], {
|
|
31254
31506
|
cwd: work,
|
|
31255
31507
|
env: { ...process.env, ...isolatedGitEnv },
|
|
31256
31508
|
input: tracked.join("\0"),
|
|
@@ -31368,7 +31620,8 @@ async function prepareWorkspace(app, stage, key2, podsEnvironment) {
|
|
|
31368
31620
|
const command = [...prefix, ...args];
|
|
31369
31621
|
await run8(command[0], command.slice(1), cwd, env);
|
|
31370
31622
|
};
|
|
31371
|
-
|
|
31623
|
+
const installedBun = manager.startsWith("bun@") ? (0, import_node_child_process32.spawnSync)(bunExecutable, ["--version"], { encoding: "utf8" }) : null;
|
|
31624
|
+
if (manager.startsWith("bun@") && (installedBun?.status !== 0 || installedBun.stdout.trim() !== manager.slice(4)))
|
|
31372
31625
|
await execute(
|
|
31373
31626
|
[
|
|
31374
31627
|
"npm",
|
|
@@ -32009,7 +32262,7 @@ function sourceClosureDigest(srcDir, entrypoints) {
|
|
|
32009
32262
|
return hash.digest("hex");
|
|
32010
32263
|
}
|
|
32011
32264
|
var standinSourceDigest = (srcDir = __sootsim_import_meta_dirname) => sourceClosureDigest(srcDir, STANDIN_DIGEST_ENTRYPOINTS);
|
|
32012
|
-
var STANDIN_SOURCE_DIGEST = true ? "
|
|
32265
|
+
var STANDIN_SOURCE_DIGEST = true ? "62c7fc880aa6efc985c4786587cb8441b81094e44c28f8d65e1d6dffda9c24f4" : standinSourceDigest();
|
|
32013
32266
|
|
|
32014
32267
|
// src/expoSwiftContract.ts
|
|
32015
32268
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
@@ -32088,9 +32341,13 @@ function readNativeAppIdentityFromXcodeTarget(app, parseInfoPlist = parsePlistSo
|
|
|
32088
32341
|
}
|
|
32089
32342
|
}
|
|
32090
32343
|
const alternateSetting = settings?.("ASSETCATALOG_COMPILER_ALTERNATE_APPICON_NAMES") ?? "";
|
|
32344
|
+
const catalogAlternateNames = [];
|
|
32091
32345
|
for (const match of alternateSetting.replace(/\\"/g, '"').matchAll(/"([^"]*)"|([^\s(),]+)/g)) {
|
|
32092
32346
|
const val = match[1] ?? match[2];
|
|
32093
|
-
if (val)
|
|
32347
|
+
if (val) {
|
|
32348
|
+
alternateIconNames.add(val);
|
|
32349
|
+
catalogAlternateNames.push(val);
|
|
32350
|
+
}
|
|
32094
32351
|
}
|
|
32095
32352
|
const permissionUsageDescriptions = {};
|
|
32096
32353
|
for (const [key2, value] of Object.entries(dictionary2)) {
|
|
@@ -32153,6 +32410,7 @@ function readNativeAppIdentityFromXcodeTarget(app, parseInfoPlist = parsePlistSo
|
|
|
32153
32410
|
ipadSupportedInterfaceOrientations,
|
|
32154
32411
|
...defaultScreenOrientationMask ? { defaultScreenOrientationMask } : {},
|
|
32155
32412
|
alternateIconNames: [...alternateIconNames],
|
|
32413
|
+
bundleIcons: resolveNativeBundleIcons(icons, catalogAlternateNames, (value) => value),
|
|
32156
32414
|
appIconArtwork: resolveNativeAppIconArtwork(
|
|
32157
32415
|
app.resources,
|
|
32158
32416
|
(file) => import_node_fs59.default.readFileSync(file, "utf8"),
|
|
@@ -32275,7 +32533,7 @@ async function packageTreeDigest(root) {
|
|
|
32275
32533
|
// src/expo-native-prebuilt.ts
|
|
32276
32534
|
var EXPO_NATIVE_ENTRY_NAME = "ios";
|
|
32277
32535
|
function expoNativeCompilerDigestValue() {
|
|
32278
|
-
return true ? "
|
|
32536
|
+
return true ? "e50ab1d8ec731167f92f711da0833fa534d1aec4b5ce950a6ba947279df8c1e7" : expoNativeCompilerDigest(__sootsim_import_meta_dirname);
|
|
32279
32537
|
}
|
|
32280
32538
|
var IDENTITY_SOURCE_SKIPS = 1 | 4 | 8 | 16 | 32 | 64 | 128 | 4096;
|
|
32281
32539
|
function readSources(value) {
|
|
@@ -34468,6 +34726,19 @@ function cxxOnly(surface) {
|
|
|
34468
34726
|
return false;
|
|
34469
34727
|
});
|
|
34470
34728
|
}
|
|
34729
|
+
function mapSurfaces(modulemap) {
|
|
34730
|
+
const text5 = import_node_fs70.default.readFileSync(modulemap, "utf8");
|
|
34731
|
+
const headers = import_node_path67.default.dirname(modulemap);
|
|
34732
|
+
const modules = moduleMapModules(text5);
|
|
34733
|
+
if (modules.length <= 1) {
|
|
34734
|
+
const module2 = moduleMapName(text5);
|
|
34735
|
+
return module2 ? [headerSurface(module2, modulemap, headers)] : [];
|
|
34736
|
+
}
|
|
34737
|
+
return modules.map(
|
|
34738
|
+
(module2) => headerSurface(module2.name, generatedModuleMap(`${module2.text}
|
|
34739
|
+
`, false), headers)
|
|
34740
|
+
);
|
|
34741
|
+
}
|
|
34471
34742
|
function simulatorSlice(xcframeworkDir) {
|
|
34472
34743
|
const slice = import_node_fs70.default.readdirSync(xcframeworkDir).filter((name3) => /^ios-.+-simulator$/.test(name3)).sort()[0];
|
|
34473
34744
|
return slice ? import_node_path67.default.join(xcframeworkDir, slice) : null;
|
|
@@ -34531,8 +34802,7 @@ function surfaces(xcframeworkDir, target, slice = simulatorSlice(xcframeworkDir)
|
|
|
34531
34802
|
const headers = import_node_path67.default.join(root, "Headers");
|
|
34532
34803
|
for (const map2 of files(headers, (name3) => name3 === "module.modulemap")) {
|
|
34533
34804
|
const modulemap = import_node_path67.default.join(headers, map2);
|
|
34534
|
-
|
|
34535
|
-
if (module2) found.push(headerSurface(module2, modulemap, import_node_path67.default.dirname(modulemap)));
|
|
34805
|
+
found.push(...mapSurfaces(modulemap));
|
|
34536
34806
|
}
|
|
34537
34807
|
if (found.length === 0 && files(headers, (name3) => name3.endsWith(".h")).length) {
|
|
34538
34808
|
const module2 = swiftTargetModuleName(target);
|
|
@@ -34669,9 +34939,13 @@ function swiftInterfaceForWasm(text5, cFlags) {
|
|
|
34669
34939
|
]);
|
|
34670
34940
|
return `${interop} ${xcc.join(" ")}`;
|
|
34671
34941
|
});
|
|
34672
|
-
|
|
34673
|
-
|
|
34674
|
-
|
|
34942
|
+
const lines = retargeted.split("\n");
|
|
34943
|
+
const required = lines.filter((line) => OPTIONAL_REQUIREMENT.test(line)).join("\n");
|
|
34944
|
+
return lines.map((line) => {
|
|
34945
|
+
if (/\benum\s/.test(line) && TYPE_DECLARATION.test(line)) {
|
|
34946
|
+
const name3 = /\benum\s+(\w+)/.exec(line)?.[1];
|
|
34947
|
+
return name3 && new RegExp(`\\b${name3}\\b`).test(required) && !/\bSwift\.Error\b/.test(line) ? line : line.replace(/@objc(?:\s*\([^()]*\))?\s+/g, "");
|
|
34948
|
+
}
|
|
34675
34949
|
if (TYPE_DECLARATION.test(line)) return line.replace(/@objcMembers\b/g, "");
|
|
34676
34950
|
if (OPTIONAL_REQUIREMENT.test(line)) return line;
|
|
34677
34951
|
return line.replace(OBJC_ATTRIBUTE, "");
|
|
@@ -35092,6 +35366,14 @@ function graphStandin(module2, graphs, values, wasm, binary2, toolchain, work, r
|
|
|
35092
35366
|
const plain = /* @__PURE__ */ new Set();
|
|
35093
35367
|
const unobjc = /* @__PURE__ */ new Set();
|
|
35094
35368
|
const trapped = /* @__PURE__ */ new Set();
|
|
35369
|
+
const unconformed = /* @__PURE__ */ new Map();
|
|
35370
|
+
const objcProtocols = new Set(
|
|
35371
|
+
graphs.flatMap(
|
|
35372
|
+
(graph) => graph.symbols.filter(
|
|
35373
|
+
(symbol2) => symbol2.kind.identifier === "swift.protocol" && symbol2.identifier.precise.startsWith("c:")
|
|
35374
|
+
).map((symbol2) => symbol2.pathComponents.join("."))
|
|
35375
|
+
)
|
|
35376
|
+
);
|
|
35095
35377
|
const file = import_node_path67.default.join(work, `${module2}.swift`);
|
|
35096
35378
|
const inert = binary2.placeholder !== void 0 || binary2.publicHeaders !== void 0 && binary2.assemblySources === void 0;
|
|
35097
35379
|
for (; ; ) {
|
|
@@ -35104,6 +35386,7 @@ function graphStandin(module2, graphs, values, wasm, binary2, toolchain, work, r
|
|
|
35104
35386
|
omit,
|
|
35105
35387
|
plain,
|
|
35106
35388
|
unobjc,
|
|
35389
|
+
unconformed,
|
|
35107
35390
|
trapped,
|
|
35108
35391
|
inert,
|
|
35109
35392
|
imports: [...placeholder?.peachImports ?? [], ...imports2],
|
|
@@ -35151,7 +35434,7 @@ function graphStandin(module2, graphs, values, wasm, binary2, toolchain, work, r
|
|
|
35151
35434
|
files: { [`${module2}.swift`]: source },
|
|
35152
35435
|
...imports2.length ? { dependencies: imports2 } : {}
|
|
35153
35436
|
};
|
|
35154
|
-
const before = omit.size + plain.size + unobjc.size + trapped.size;
|
|
35437
|
+
const before = omit.size + plain.size + unobjc.size + trapped.size + unconformed.size;
|
|
35155
35438
|
const elsewhere = [];
|
|
35156
35439
|
for (const match of check2.stderr.matchAll(/^(\S+?):(\d+):\d+: error: (.*)$/gm)) {
|
|
35157
35440
|
const owner = match[1] === file ? owners[Number(match[2]) - 1] : void 0;
|
|
@@ -35159,6 +35442,13 @@ function graphStandin(module2, graphs, values, wasm, binary2, toolchain, work, r
|
|
|
35159
35442
|
unobjc.add(owner);
|
|
35160
35443
|
continue;
|
|
35161
35444
|
}
|
|
35445
|
+
const conformance = /^type '\w+' does not conform to protocol '(\w+)'$/.exec(
|
|
35446
|
+
match[3]
|
|
35447
|
+
)?.[1];
|
|
35448
|
+
if (owner && conformance && objcProtocols.has(conformance)) {
|
|
35449
|
+
unconformed.set(owner, /* @__PURE__ */ new Set([...unconformed.get(owner) ?? [], conformance]));
|
|
35450
|
+
continue;
|
|
35451
|
+
}
|
|
35162
35452
|
if (owner && swiftPaths.has(owner))
|
|
35163
35453
|
throw new Error(
|
|
35164
35454
|
`Swift declaration ${module2}.${owner} does not typecheck: ${match[3]}`
|
|
@@ -35174,7 +35464,7 @@ function graphStandin(module2, graphs, values, wasm, binary2, toolchain, work, r
|
|
|
35174
35464
|
else if (owner) omit.set(owner, `rejected by swiftc: ${match[3]}`);
|
|
35175
35465
|
else elsewhere.push(match[3]);
|
|
35176
35466
|
}
|
|
35177
|
-
if (omit.size + plain.size + unobjc.size + trapped.size === before)
|
|
35467
|
+
if (omit.size + plain.size + unobjc.size + trapped.size + unconformed.size === before)
|
|
35178
35468
|
throw new Error(
|
|
35179
35469
|
`its generated source does not typecheck: ${elsewhere.slice(0, 3).join("; ") || check2.stderr.trim().slice(0, 400)}`
|
|
35180
35470
|
);
|
|
@@ -35300,7 +35590,16 @@ function splitDeclarators(statement, names) {
|
|
|
35300
35590
|
);
|
|
35301
35591
|
}
|
|
35302
35592
|
function cStandin(surface, binary2, toolchain, work) {
|
|
35303
|
-
const
|
|
35593
|
+
const everyHeader = files(surface.headers, (name3) => name3.endsWith(".h"));
|
|
35594
|
+
const moduleRoots = moduleMapHeaders(surface.modulemap, everyHeader);
|
|
35595
|
+
const headers = [...moduleRoots];
|
|
35596
|
+
for (let at = 0; at < headers.length; at++)
|
|
35597
|
+
for (const [, local] of import_node_fs70.default.readFileSync(import_node_path67.default.join(surface.headers, headers[at]), "utf8").matchAll(/^\s*#\s*(?:include|import)\s*["<]([^">]+)[">]/gm)) {
|
|
35598
|
+
const file = import_node_path67.default.posix.normalize(
|
|
35599
|
+
import_node_path67.default.posix.join(import_node_path67.default.posix.dirname(headers[at]), local)
|
|
35600
|
+
);
|
|
35601
|
+
if (everyHeader.includes(file) && !headers.includes(file)) headers.push(file);
|
|
35602
|
+
}
|
|
35304
35603
|
const framework = import_node_path67.default.basename(import_node_path67.default.dirname(surface.modulemap)) === "Modules";
|
|
35305
35604
|
const headerDirectory = framework ? `${surface.module}.framework/Headers` : ".";
|
|
35306
35605
|
const texts = new Map(
|
|
@@ -35315,9 +35614,7 @@ function cStandin(surface, binary2, toolchain, work) {
|
|
|
35315
35614
|
import_node_fs70.default.mkdirSync(import_node_path67.default.dirname(import_node_path67.default.join(include, file)), { recursive: true });
|
|
35316
35615
|
import_node_fs70.default.writeFileSync(import_node_path67.default.join(include, file), text5);
|
|
35317
35616
|
}
|
|
35318
|
-
const roots =
|
|
35319
|
-
(file) => import_node_path67.default.posix.join(headerDirectory, file)
|
|
35320
|
-
);
|
|
35617
|
+
const roots = moduleRoots.map((file) => import_node_path67.default.posix.join(headerDirectory, file));
|
|
35321
35618
|
const frameworkMap = `${surface.module}.framework/Modules/module.modulemap`;
|
|
35322
35619
|
const modulemap = `module ${surface.module} {
|
|
35323
35620
|
${roots.map((file) => ` header "${file}"
|
|
@@ -36062,7 +36359,7 @@ ${roots.map((file) => ` header "${file}"`).join("\n")}
|
|
|
36062
36359
|
return error instanceof Error ? error.message : String(error);
|
|
36063
36360
|
}
|
|
36064
36361
|
const found = all.filter(
|
|
36065
|
-
(surface) => !provided.has(surface.module) && !(binary2.cxxHeaders === void 0 && cxxOnly(surface))
|
|
36362
|
+
(surface) => !provided.has(surface.module) && (surface.kind === "swift" || surface.kind === "mixed" || surface.kind === "source" || files(surface.headers, (name3) => name3.endsWith(".h")).length > 0) && !(binary2.cxxHeaders === void 0 && cxxOnly(surface))
|
|
36066
36363
|
);
|
|
36067
36364
|
if (found.length === 0) {
|
|
36068
36365
|
import_node_fs70.default.rmSync(work, { recursive: true, force: true });
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2186 | (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;
|
|
@@ -119,6 +119,7 @@ function isNativeAppIdentity(value) {
|
|
|
119
119
|
if (value.androidPhotoLibraryAddOnly !== void 0 && value.androidPhotoLibraryAddOnly !== true)
|
|
120
120
|
return false;
|
|
121
121
|
if (value.googleSignIn !== void 0 && !isRecord(value.googleSignIn)) return false;
|
|
122
|
+
if (value.bundleIcons !== void 0 && !isRecord(value.bundleIcons)) return false;
|
|
122
123
|
const descriptions = value.permissionUsageDescriptions;
|
|
123
124
|
if (value.reanimatedStaticFeatureFlags !== void 0 && (!isRecord(value.reanimatedStaticFeatureFlags) || !Object.values(value.reanimatedStaticFeatureFlags).every(
|
|
124
125
|
(flag) => typeof flag === "boolean"
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2186 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
|
|
3
3
|
// ../peach-globals/src/bundle-global-footer.ts
|
|
4
4
|
function findBundleFooter(source, prefix) {
|
|
@@ -89,6 +89,7 @@ function isNativeAppIdentity(value) {
|
|
|
89
89
|
if (value.androidPhotoLibraryAddOnly !== void 0 && value.androidPhotoLibraryAddOnly !== true)
|
|
90
90
|
return false;
|
|
91
91
|
if (value.googleSignIn !== void 0 && !isRecord(value.googleSignIn)) return false;
|
|
92
|
+
if (value.bundleIcons !== void 0 && !isRecord(value.bundleIcons)) return false;
|
|
92
93
|
const descriptions = value.permissionUsageDescriptions;
|
|
93
94
|
if (value.reanimatedStaticFeatureFlags !== void 0 && (!isRecord(value.reanimatedStaticFeatureFlags) || !Object.values(value.reanimatedStaticFeatureFlags).every(
|
|
94
95
|
(flag) => typeof flag === "boolean"
|
package/dist-lib/home-paths.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2186 | (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;
|