peachsim 0.1.2228 → 0.1.2229
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/device.ts +1 -1
- package/cli/commands/flow.ts +1 -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 +35 -9
- 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 +5 -2
- package/dist-lib/dev-bundle-resolution.cjs +1 -1
- package/dist-lib/expo-swift-bundle.cjs +33 -7
- package/dist-lib/expo-swift-metadata.cjs +1 -1
- package/dist-lib/expo-swift-metadata.mjs +1 -1
- package/dist-lib/home-paths.cjs +1 -1
- package/dist-lib/host/bridge-host.cjs +35 -9
- package/dist-lib/host/fetch-proxy-handler.cjs +4 -4
- 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 +7 -5
- 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 +1 -1
- package/dist-lib/menu.cjs +16 -14
- package/dist-lib/menu.mjs +16 -14
- 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 +7 -5
- package/dist-lib/native-app-identity-project.cjs +5 -3
- package/dist-lib/native-app-identity-project.mjs +5 -3
- package/dist-lib/native-app-identity.cjs +1 -1
- package/dist-lib/native-app-identity.mjs +1 -1
- 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 +55 -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 +35 -9
- package/dist-lib/swift-compile.cjs +1 -1
- package/dist-lib/swift-compile.mjs +1 -1
- package/dist-lib/swift-package.cjs +1 -1
- package/dist-lib/swift-package.mjs +1 -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 +32 -6
- package/dist-lib/vite.cjs +4 -4
- package/dist-lib/worklet-executable.cjs +1 -1
- package/dist-lib/worklet-executable.mjs +1 -1
- package/dist-types/packages/peach-engine/src/engine/canvaskit-api.d.ts +3 -0
- package/dist-types/packages/peach-engine/src/engine/native-layout.d.ts +10 -3
- package/dist-types/packages/peach-engine/src/engine/scene-table.d.ts +1 -1
- package/dist-types/packages/peach-engine/src/engine/types.d.ts +2 -1
- package/package.json +1 -1
- package/runtime-companion.json +1 -1
- package/src/appPackageContract.ts +1 -1
- package/src/menu.ts +17 -99
- package/src/menuContract.ts +102 -0
- package/src/settingsContract.ts +8 -8
- package/src/swift-host.ts +27 -2
- package/src/xcode-project.ts +8 -2
package/dist-lib/sdk.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2229 | (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;
|
package/dist-lib/sdk.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2229 | (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);
|
package/dist-lib/skills.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2229 | (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": "d98d6294b359528f7733b26db6f80f554782354faa235605f9562be4ad98b8a3", "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": "bfde06f157f52d3dd76577b3c6059c95c0393180b054ced773624ea89558992b", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "8deef5a824ed49209458a4b398cd8e88df260a0c8f1894d568279f6211866547", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.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": "d98d6294b359528f7733b26db6f80f554782354faa235605f9562be4ad98b8a3", "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": "bfde06f157f52d3dd76577b3c6059c95c0393180b054ced773624ea89558992b", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "8deef5a824ed49209458a4b398cd8e88df260a0c8f1894d568279f6211866547", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "774c42f06f8d5c1f3f3a09f94379db2046af0016f1fcd6cbe595a9c2da5dcf95", "xcode-target-members.ts": "d49af77a690cff481b38333b5f63f6600123b1bb57f410b0adb298b010d2047b", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
|
|
43
43
|
}
|
|
44
44
|
});
|
|
45
45
|
|
|
@@ -63324,7 +63324,7 @@ function readXcodeAppTarget(input, targetName, configurationName, options = {})
|
|
|
63324
63324
|
const postBundleScripts = [];
|
|
63325
63325
|
for (const id of [...list(app.target.buildPhases)].reverse()) {
|
|
63326
63326
|
const phase = app.project.object(id);
|
|
63327
|
-
if (phase?.isa !== "PBXShellScriptBuildPhase" || list(phase.
|
|
63327
|
+
if (phase?.isa !== "PBXShellScriptBuildPhase" || list(phase.outputPaths).length || list(phase.outputFileListPaths).length)
|
|
63328
63328
|
break;
|
|
63329
63329
|
postBundleScripts.unshift({
|
|
63330
63330
|
name: str(phase.name) ?? id,
|
|
@@ -63333,6 +63333,8 @@ function readXcodeAppTarget(input, targetName, configurationName, options = {})
|
|
|
63333
63333
|
str(phase.shellScript) ?? ""
|
|
63334
63334
|
),
|
|
63335
63335
|
directory: app.project.projectDir,
|
|
63336
|
+
inputPaths: list(phase.inputPaths),
|
|
63337
|
+
inputFileListPaths: list(phase.inputFileListPaths),
|
|
63336
63338
|
environment: Object.fromEntries(
|
|
63337
63339
|
[...settingKeys].filter((key2) => /^[A-Za-z_][A-Za-z0-9_]*$/.test(key2)).map((key2) => [key2, settings(key2)])
|
|
63338
63340
|
)
|
|
@@ -65818,7 +65820,7 @@ var init_swift_standin_digest = __esm({
|
|
|
65818
65820
|
STANDIN_DIGEST_ENTRYPOINTS = ["swift-standins.ts", "swift-objc-compile.ts"];
|
|
65819
65821
|
SPECIFIER = /from\s*['"]([^'"]+)['"]|import\s*\(\s*['"]([^'"]+)['"]\s*\)/g;
|
|
65820
65822
|
standinSourceDigest = (srcDir = __sootsim_import_meta_dirname) => sourceClosureDigest(srcDir, STANDIN_DIGEST_ENTRYPOINTS);
|
|
65821
|
-
STANDIN_SOURCE_DIGEST = true ? "
|
|
65823
|
+
STANDIN_SOURCE_DIGEST = true ? "f8700690d0cd621b5d9417ea570f1f45c7ec1ad54492b23aa9792102938e9e82" : standinSourceDigest();
|
|
65822
65824
|
}
|
|
65823
65825
|
});
|
|
65824
65826
|
|
|
@@ -66279,7 +66281,7 @@ var init_package_tree_digest = __esm({
|
|
|
66279
66281
|
|
|
66280
66282
|
// src/expo-native-prebuilt.ts
|
|
66281
66283
|
function expoNativeCompilerDigestValue() {
|
|
66282
|
-
return true ? "
|
|
66284
|
+
return true ? "aab5589ba02cd96332e686f60153187e7357cc46c8a6ec5369f1400cea6f6da0" : expoNativeCompilerDigest(__sootsim_import_meta_dirname);
|
|
66283
66285
|
}
|
|
66284
66286
|
function readSources(value) {
|
|
66285
66287
|
const sources = isRecord(value) ? value.sources : null;
|
|
@@ -76744,11 +76746,35 @@ function buildSwiftBundleFiles(packagePath, hosted, inputs, resourceBundles) {
|
|
|
76744
76746
|
CONTENTS_FOLDER_PATH: wrapper,
|
|
76745
76747
|
UNLOCALIZED_RESOURCES_FOLDER_PATH: wrapper,
|
|
76746
76748
|
INFOPLIST_PATH: `${wrapper}/Info.plist`,
|
|
76747
|
-
SCRIPT_INPUT_FILE_COUNT:
|
|
76748
|
-
SCRIPT_INPUT_FILE_LIST_COUNT:
|
|
76749
|
+
SCRIPT_INPUT_FILE_COUNT: String(phase.inputPaths.length),
|
|
76750
|
+
SCRIPT_INPUT_FILE_LIST_COUNT: String(phase.inputFileListPaths.length),
|
|
76749
76751
|
SCRIPT_OUTPUT_FILE_COUNT: "0",
|
|
76750
76752
|
SCRIPT_OUTPUT_FILE_LIST_COUNT: "0"
|
|
76751
76753
|
};
|
|
76754
|
+
const inputPath = (raw2) => {
|
|
76755
|
+
const file = import_node_path83.default.resolve(
|
|
76756
|
+
phase.directory,
|
|
76757
|
+
expand(raw2, (key2) => env[key2] ?? "")
|
|
76758
|
+
);
|
|
76759
|
+
if (!import_node_fs86.default.existsSync(file))
|
|
76760
|
+
throw new Error(
|
|
76761
|
+
`${xcode.app.name}: Run Script "${phase.name}" missing input ${file}`
|
|
76762
|
+
);
|
|
76763
|
+
if (!file.startsWith(`${dir}${import_node_path83.default.sep}`))
|
|
76764
|
+
watched.push(import_node_path83.default.relative(packagePath, file).split(import_node_path83.default.sep).join("/"));
|
|
76765
|
+
return file;
|
|
76766
|
+
};
|
|
76767
|
+
phase.inputPaths.forEach((raw2, index) => {
|
|
76768
|
+
env[`SCRIPT_INPUT_FILE_${index}`] = inputPath(raw2);
|
|
76769
|
+
});
|
|
76770
|
+
phase.inputFileListPaths.forEach((raw2, index) => {
|
|
76771
|
+
const source = inputPath(raw2);
|
|
76772
|
+
const entries = fileListEntries(source, inputPath);
|
|
76773
|
+
const expanded = import_node_path83.default.join(dir, `Input-${index}.xcfilelist`);
|
|
76774
|
+
import_node_fs86.default.writeFileSync(expanded, `${entries.join("\n")}
|
|
76775
|
+
`);
|
|
76776
|
+
env[`SCRIPT_INPUT_FILE_LIST_${index}`] = expanded;
|
|
76777
|
+
});
|
|
76752
76778
|
try {
|
|
76753
76779
|
const [shell, ...args] = phase.command;
|
|
76754
76780
|
(0, import_node_child_process47.execFileSync)(shell, args, {
|
|
@@ -86990,7 +87016,7 @@ var init_nitro_superset = __esm({
|
|
|
86990
87016
|
init_nitroContract();
|
|
86991
87017
|
init_swift_standin_digest();
|
|
86992
87018
|
NITRO_SUPERSET_ENTRY_NAME = "superset";
|
|
86993
|
-
NITRO_COMPILER_DIGEST = true ? "
|
|
87019
|
+
NITRO_COMPILER_DIGEST = true ? "b3ae355413a190ba1006db08b3fa373b79f99034163c936bd1ec2c89b9bce038" : nitroCompilerSourceDigest(__sootsim_import_meta_dirname, STANDIN_SOURCE_DIGEST2);
|
|
86994
87020
|
nitroSupersetLock = parseLock(nitro_superset_lock_default);
|
|
86995
87021
|
nitroSupersetKey = (inputs) => nativeEntryKey({ ...inputs, compiler: NITRO_COMPILER_DIGEST });
|
|
86996
87022
|
published2 = /* @__PURE__ */ new Map();
|
|
@@ -87702,7 +87728,7 @@ var init_one_sdk_bundle = __esm({
|
|
|
87702
87728
|
var runtime_companion_default;
|
|
87703
87729
|
var init_runtime_companion = __esm({
|
|
87704
87730
|
"runtime-companion.json"() {
|
|
87705
|
-
runtime_companion_default = { abi: 1, sha256: "
|
|
87731
|
+
runtime_companion_default = { abi: 1, sha256: "00799b02f54a61aa35db60817d564847a255eef875cbc7225013f1f27991ccde", file: "node/cli-00799b02f54a61aa35db60817d564847a255eef875cbc7225013f1f27991ccde.cjs" };
|
|
87706
87732
|
}
|
|
87707
87733
|
});
|
|
87708
87734
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2229 | (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.
|
|
1
|
+
/*! peach v0.1.2229 | (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.
|
|
1
|
+
/*! peach v0.1.2229 | (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.
|
|
1
|
+
/*! peach v0.1.2229 | (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;
|
package/dist-lib/swift.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2229 | (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;
|
package/dist-lib/vite-swift.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2229 | (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": "d98d6294b359528f7733b26db6f80f554782354faa235605f9562be4ad98b8a3", "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": "bfde06f157f52d3dd76577b3c6059c95c0393180b054ced773624ea89558992b", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "8deef5a824ed49209458a4b398cd8e88df260a0c8f1894d568279f6211866547", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.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": "d98d6294b359528f7733b26db6f80f554782354faa235605f9562be4ad98b8a3", "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": "bfde06f157f52d3dd76577b3c6059c95c0393180b054ced773624ea89558992b", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "8deef5a824ed49209458a4b398cd8e88df260a0c8f1894d568279f6211866547", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "774c42f06f8d5c1f3f3a09f94379db2046af0016f1fcd6cbe595a9c2da5dcf95", "xcode-target-members.ts": "d49af77a690cff481b38333b5f63f6600123b1bb57f410b0adb298b010d2047b", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
|
|
43
43
|
}
|
|
44
44
|
});
|
|
45
45
|
|
|
@@ -29976,7 +29976,7 @@ function readXcodeAppTarget(input, targetName, configurationName, options = {})
|
|
|
29976
29976
|
const postBundleScripts = [];
|
|
29977
29977
|
for (const id of [...list(app.target.buildPhases)].reverse()) {
|
|
29978
29978
|
const phase = app.project.object(id);
|
|
29979
|
-
if (phase?.isa !== "PBXShellScriptBuildPhase" || list(phase.
|
|
29979
|
+
if (phase?.isa !== "PBXShellScriptBuildPhase" || list(phase.outputPaths).length || list(phase.outputFileListPaths).length)
|
|
29980
29980
|
break;
|
|
29981
29981
|
postBundleScripts.unshift({
|
|
29982
29982
|
name: str(phase.name) ?? id,
|
|
@@ -29985,6 +29985,8 @@ function readXcodeAppTarget(input, targetName, configurationName, options = {})
|
|
|
29985
29985
|
str(phase.shellScript) ?? ""
|
|
29986
29986
|
),
|
|
29987
29987
|
directory: app.project.projectDir,
|
|
29988
|
+
inputPaths: list(phase.inputPaths),
|
|
29989
|
+
inputFileListPaths: list(phase.inputFileListPaths),
|
|
29988
29990
|
environment: Object.fromEntries(
|
|
29989
29991
|
[...settingKeys].filter((key2) => /^[A-Za-z_][A-Za-z0-9_]*$/.test(key2)).map((key2) => [key2, settings(key2)])
|
|
29990
29992
|
)
|
|
@@ -31440,7 +31442,7 @@ function sourceClosureDigest(srcDir, entrypoints) {
|
|
|
31440
31442
|
return hash.digest("hex");
|
|
31441
31443
|
}
|
|
31442
31444
|
var standinSourceDigest = (srcDir = __sootsim_import_meta_dirname) => sourceClosureDigest(srcDir, STANDIN_DIGEST_ENTRYPOINTS);
|
|
31443
|
-
var STANDIN_SOURCE_DIGEST = true ? "
|
|
31445
|
+
var STANDIN_SOURCE_DIGEST = true ? "f8700690d0cd621b5d9417ea570f1f45c7ec1ad54492b23aa9792102938e9e82" : standinSourceDigest();
|
|
31444
31446
|
|
|
31445
31447
|
// src/swift-standins.ts
|
|
31446
31448
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
@@ -38020,11 +38022,35 @@ function buildSwiftBundleFiles(packagePath, hosted, inputs, resourceBundles) {
|
|
|
38020
38022
|
CONTENTS_FOLDER_PATH: wrapper,
|
|
38021
38023
|
UNLOCALIZED_RESOURCES_FOLDER_PATH: wrapper,
|
|
38022
38024
|
INFOPLIST_PATH: `${wrapper}/Info.plist`,
|
|
38023
|
-
SCRIPT_INPUT_FILE_COUNT:
|
|
38024
|
-
SCRIPT_INPUT_FILE_LIST_COUNT:
|
|
38025
|
+
SCRIPT_INPUT_FILE_COUNT: String(phase.inputPaths.length),
|
|
38026
|
+
SCRIPT_INPUT_FILE_LIST_COUNT: String(phase.inputFileListPaths.length),
|
|
38025
38027
|
SCRIPT_OUTPUT_FILE_COUNT: "0",
|
|
38026
38028
|
SCRIPT_OUTPUT_FILE_LIST_COUNT: "0"
|
|
38027
38029
|
};
|
|
38030
|
+
const inputPath = (raw2) => {
|
|
38031
|
+
const file = import_node_path55.default.resolve(
|
|
38032
|
+
phase.directory,
|
|
38033
|
+
expand(raw2, (key2) => env[key2] ?? "")
|
|
38034
|
+
);
|
|
38035
|
+
if (!import_node_fs54.default.existsSync(file))
|
|
38036
|
+
throw new Error(
|
|
38037
|
+
`${xcode.app.name}: Run Script "${phase.name}" missing input ${file}`
|
|
38038
|
+
);
|
|
38039
|
+
if (!file.startsWith(`${dir}${import_node_path55.default.sep}`))
|
|
38040
|
+
watched.push(import_node_path55.default.relative(packagePath, file).split(import_node_path55.default.sep).join("/"));
|
|
38041
|
+
return file;
|
|
38042
|
+
};
|
|
38043
|
+
phase.inputPaths.forEach((raw2, index) => {
|
|
38044
|
+
env[`SCRIPT_INPUT_FILE_${index}`] = inputPath(raw2);
|
|
38045
|
+
});
|
|
38046
|
+
phase.inputFileListPaths.forEach((raw2, index) => {
|
|
38047
|
+
const source = inputPath(raw2);
|
|
38048
|
+
const entries = fileListEntries(source, inputPath);
|
|
38049
|
+
const expanded = import_node_path55.default.join(dir, `Input-${index}.xcfilelist`);
|
|
38050
|
+
import_node_fs54.default.writeFileSync(expanded, `${entries.join("\n")}
|
|
38051
|
+
`);
|
|
38052
|
+
env[`SCRIPT_INPUT_FILE_LIST_${index}`] = expanded;
|
|
38053
|
+
});
|
|
38028
38054
|
try {
|
|
38029
38055
|
const [shell, ...args] = phase.command;
|
|
38030
38056
|
(0, import_node_child_process34.execFileSync)(shell, args, {
|
package/dist-lib/vite.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2229 | (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": "d98d6294b359528f7733b26db6f80f554782354faa235605f9562be4ad98b8a3", "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": "bfde06f157f52d3dd76577b3c6059c95c0393180b054ced773624ea89558992b", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "8deef5a824ed49209458a4b398cd8e88df260a0c8f1894d568279f6211866547", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.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": "d98d6294b359528f7733b26db6f80f554782354faa235605f9562be4ad98b8a3", "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": "bfde06f157f52d3dd76577b3c6059c95c0393180b054ced773624ea89558992b", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "8deef5a824ed49209458a4b398cd8e88df260a0c8f1894d568279f6211866547", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "774c42f06f8d5c1f3f3a09f94379db2046af0016f1fcd6cbe595a9c2da5dcf95", "xcode-target-members.ts": "d49af77a690cff481b38333b5f63f6600123b1bb57f410b0adb298b010d2047b", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
|
|
43
43
|
}
|
|
44
44
|
});
|
|
45
45
|
|
|
@@ -1072,7 +1072,7 @@ var init_src = __esm({
|
|
|
1072
1072
|
var runtime_companion_default;
|
|
1073
1073
|
var init_runtime_companion = __esm({
|
|
1074
1074
|
"runtime-companion.json"() {
|
|
1075
|
-
runtime_companion_default = { abi: 1, sha256: "
|
|
1075
|
+
runtime_companion_default = { abi: 1, sha256: "00799b02f54a61aa35db60817d564847a255eef875cbc7225013f1f27991ccde", file: "node/cli-00799b02f54a61aa35db60817d564847a255eef875cbc7225013f1f27991ccde.cjs" };
|
|
1076
1076
|
}
|
|
1077
1077
|
});
|
|
1078
1078
|
|
|
@@ -3228,7 +3228,7 @@ function readIosSdkTree(root) {
|
|
|
3228
3228
|
|
|
3229
3229
|
// src/swift-standin-digest.ts
|
|
3230
3230
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
3231
|
-
var STANDIN_SOURCE_DIGEST = true ? "
|
|
3231
|
+
var STANDIN_SOURCE_DIGEST = true ? "f8700690d0cd621b5d9417ea570f1f45c7ec1ad54492b23aa9792102938e9e82" : standinSourceDigest();
|
|
3232
3232
|
|
|
3233
3233
|
// src/expo-native-workspace.ts
|
|
3234
3234
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2229 | (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;
|
|
@@ -50,6 +50,9 @@ export interface CanvasKitGifApi {
|
|
|
50
50
|
_peachSkottieGifDemand(json: string, assets?: Record<string, ArrayBuffer | Uint8Array>): number;
|
|
51
51
|
}
|
|
52
52
|
export interface CanvasKitTextDataApi {
|
|
53
|
+
_peachRetainLayoutParagraph(slot: number, paragraph: Paragraph): void;
|
|
54
|
+
_peachLayoutParagraph(slot: number, width: number): Paragraph | null;
|
|
55
|
+
_peachReleaseLayoutParagraph(slot: number): void;
|
|
53
56
|
_peachMakeParagraph(collection: FontCollection, pointer: number, length: number): Paragraph | null;
|
|
54
57
|
HEAPU8: Uint8Array;
|
|
55
58
|
_malloc(length: number): number;
|
|
@@ -11,7 +11,6 @@ export interface NativeLayoutExports {
|
|
|
11
11
|
_peach_layout_values(): number;
|
|
12
12
|
_peach_layout_units(): number;
|
|
13
13
|
_peach_layout_enums(): number;
|
|
14
|
-
_peach_layout_scratch(): number;
|
|
15
14
|
_peach_layout_node_new(slot: number, pointScaleFactor: number, measured: number): void;
|
|
16
15
|
_peach_layout_node_free(slot: number): void;
|
|
17
16
|
_peach_layout_subtree_free(root: number): number;
|
|
@@ -31,6 +30,8 @@ export interface NativeLayoutExports {
|
|
|
31
30
|
_peach_layout_owner(slot: number): number;
|
|
32
31
|
_peach_layout_child_count(slot: number): number;
|
|
33
32
|
_peach_layout_mark_dirty(slot: number): void;
|
|
33
|
+
_peach_layout_text_policy(slot: number, policy: number, scale: number): void;
|
|
34
|
+
_peach_layout_measure_result(width: number, height: number, cacheable: number): void;
|
|
34
35
|
_peach_layout_force(slot: number): void;
|
|
35
36
|
_peach_layout_force_subtree(slot: number): void;
|
|
36
37
|
_peach_layout_seen(slot: number): void;
|
|
@@ -45,6 +46,7 @@ export interface NativeLayoutExports {
|
|
|
45
46
|
readonly HEAP32: Int32Array;
|
|
46
47
|
readonly HEAPF32: Float32Array;
|
|
47
48
|
peachLayoutMeasure?: MeasureHook;
|
|
49
|
+
peachLayoutTextLines?: (slot: number) => void;
|
|
48
50
|
peachLayoutExit?: (slot: number) => void;
|
|
49
51
|
}
|
|
50
52
|
export type MeasureHook = (slot: number, width: number, widthMode: number, height: number, heightMode: number) => void;
|
|
@@ -136,6 +138,12 @@ export declare const OVERFLOW_SCROLL = 2;
|
|
|
136
138
|
export declare const DISPLAY_FLEX = 0;
|
|
137
139
|
export declare const DISPLAY_NONE = 1;
|
|
138
140
|
export declare const DISPLAY_CONTENTS = 2;
|
|
141
|
+
export declare const TEXT_MEASURE = 1;
|
|
142
|
+
export declare const TEXT_MEASURE_PAPER = 2;
|
|
143
|
+
export declare const TEXT_MEASURE_ZERO_PROPOSAL = 4;
|
|
144
|
+
export declare const TEXT_MEASURE_STRETCH = 8;
|
|
145
|
+
export declare const TEXT_MEASURE_LINE_EVENTS = 16;
|
|
146
|
+
export declare const TEXT_MEASURE_HEIGHT_PROPOSAL = 32;
|
|
139
147
|
export declare const MEASURE_MODE_UNDEFINED = 0;
|
|
140
148
|
export declare const MEASURE_MODE_EXACTLY = 1;
|
|
141
149
|
export declare const MEASURE_MODE_AT_MOST = 2;
|
|
@@ -144,6 +152,5 @@ export interface NativeLayout {
|
|
|
144
152
|
readonly values: number;
|
|
145
153
|
readonly units: number;
|
|
146
154
|
readonly enums: number;
|
|
147
|
-
readonly scratch: number;
|
|
148
155
|
}
|
|
149
|
-
export declare function bindNativeLayout(ck: CanvasKit, measure: MeasureHook, exit: (slot: number) => void): NativeLayout;
|
|
156
|
+
export declare function bindNativeLayout(ck: CanvasKit, measure: MeasureHook, textLines: (slot: number) => void, exit: (slot: number) => void): NativeLayout;
|
|
@@ -177,7 +177,7 @@ export interface SceneNativeBinding {
|
|
|
177
177
|
_peach_numeric_text_parameters(handle: number): number;
|
|
178
178
|
_peach_numeric_text_draw(canvas: number, handle: number, x: number, y: number, elapsed: number): void;
|
|
179
179
|
_peach_numeric_text_drop(handle: number): void;
|
|
180
|
-
_peach_scene_set_image(slot: number, image: number, padLeft: number, padTop: number, padRight: number, padBottom: number, srcLeft: number, srcTop: number, srcRight: number, srcBottom: number, offsetX: number, adjustX: number, offsetY: number, adjustY: number, width: number, height: number, repeat: number, mipmaps: number, tintR: number, tintG: number, tintB: number, tintA: number, alpha: number, shape: number, sampling: number): void;
|
|
180
|
+
_peach_scene_set_image(slot: number, image: number, padLeft: number, padTop: number, padRight: number, padBottom: number, srcLeft: number, srcTop: number, srcRight: number, srcBottom: number, offsetX: number, adjustX: number, offsetY: number, adjustY: number, width: number, height: number, repeat: number, mipmaps: number, tintR: number, tintG: number, tintB: number, tintA: number, alpha: number, shape: number, sampling: number, swiftPixelOrigin: number): void;
|
|
181
181
|
_peach_scene_set_picture(slot: number, picture: number, fontGeneration: number, drawnNodes: number): void;
|
|
182
182
|
_peach_scene_set_ink(slot: number, glass: number, id: number, label: number): void;
|
|
183
183
|
_peach_ink_draw_picture(canvas: number, picture: number, shader: number, text: number, left: number, top: number, right: number, bottom: number): void;
|
|
@@ -429,7 +429,7 @@ export interface SootSimStyle {
|
|
|
429
429
|
_boxShadowOpacity?: SootSimAnimatedNumber;
|
|
430
430
|
filter?: SootSimAnimatedFilter;
|
|
431
431
|
_filter?: ParsedFilterOp[];
|
|
432
|
-
mixBlendMode?: 'normal' | 'plus-lighter' | 'multiply' | 'screen' | 'overlay' | 'darken' | 'lighten' | 'color-dodge' | 'color-burn' | 'hard-light' | 'soft-light' | 'difference' | 'exclusion' | 'hue' | 'saturation' | 'color' | 'luminosity' | 'destination-out';
|
|
432
|
+
mixBlendMode?: 'normal' | 'plus-lighter' | 'plus-darker' | 'multiply' | 'screen' | 'overlay' | 'darken' | 'lighten' | 'color-dodge' | 'color-burn' | 'hard-light' | 'soft-light' | 'difference' | 'exclusion' | 'hue' | 'saturation' | 'color' | 'luminosity' | 'destination-out';
|
|
433
433
|
isolation?: 'auto' | 'isolate';
|
|
434
434
|
outlineWidth?: number;
|
|
435
435
|
outlineStyle?: 'solid' | 'dashed' | 'dotted';
|
|
@@ -465,6 +465,7 @@ export interface SootSimStyle {
|
|
|
465
465
|
_hyphenationLocale?: string;
|
|
466
466
|
_hyphenationFactor?: number;
|
|
467
467
|
_swiftUIText?: true;
|
|
468
|
+
_swiftUIPickerValue?: true;
|
|
468
469
|
_composeText?: true;
|
|
469
470
|
_androidTextView?: true;
|
|
470
471
|
_androidTextSize?: 'dimension' | 'sp';
|
package/package.json
CHANGED
package/runtime-companion.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"abi":1,"sha256":"
|
|
1
|
+
{"abi":1,"sha256":"00799b02f54a61aa35db60817d564847a255eef875cbc7225013f1f27991ccde","file":"node/cli-00799b02f54a61aa35db60817d564847a255eef875cbc7225013f1f27991ccde.cjs"}
|
package/src/menu.ts
CHANGED
|
@@ -1,107 +1,25 @@
|
|
|
1
|
+
import {
|
|
2
|
+
type SootSimMenuPlatform,
|
|
3
|
+
type SootSimScaleMode,
|
|
4
|
+
type SootSimAmbientGlowLevel,
|
|
5
|
+
SOOTSIM_AMBIENT_GLOW_LEVELS,
|
|
6
|
+
SOOTSIM_AMBIENT_GLOW_LABELS,
|
|
7
|
+
type SootSimStageBackground,
|
|
8
|
+
SOOTSIM_STAGE_BACKGROUNDS,
|
|
9
|
+
SOOTSIM_STAGE_BACKGROUND_LABELS,
|
|
10
|
+
type SootSimRenderResolution,
|
|
11
|
+
SOOTSIM_RENDER_RESOLUTION_LEVELS,
|
|
12
|
+
SOOTSIM_RENDER_RESOLUTION_LABELS,
|
|
13
|
+
type SootSimScreenEffect,
|
|
14
|
+
SOOTSIM_SCREEN_EFFECTS,
|
|
15
|
+
SOOTSIM_SCREEN_EFFECT_LABELS,
|
|
16
|
+
} from './menuContract'
|
|
1
17
|
import { rnxPublicBrand } from './public-brand'
|
|
2
18
|
|
|
3
19
|
// public sootsim menu protocol. this file is deliberately pure data and pure
|
|
4
20
|
// functions so hosts can import it without pulling the engine or canvaskit graph.
|
|
5
21
|
|
|
6
|
-
export
|
|
7
|
-
export const SOOTSIM_SHELL_COMMAND_NAME = 'sootsim:shell-command'
|
|
8
|
-
|
|
9
|
-
export type SootSimMenuPlatform = 'browser' | 'electron'
|
|
10
|
-
export type SootSimScaleMode = 'physical' | 'point' | 'pixel' | 'fit'
|
|
11
|
-
|
|
12
|
-
// ambient glow strength. one setting with three states rather than an on/off
|
|
13
|
-
// pair plus a separate strength: every host that carries the preference (the
|
|
14
|
-
// menus, the persisted setting, the ?ambientGlow= boot seed, the live
|
|
15
|
-
// set-ambient-glow push, electron's shared config) then carries exactly one
|
|
16
|
-
// value and cannot end up half-configured.
|
|
17
|
-
export type SootSimAmbientGlowLevel = 'off' | 'soft' | 'full'
|
|
18
|
-
export const SOOTSIM_AMBIENT_GLOW_LEVELS = ['off', 'soft', 'full'] as const
|
|
19
|
-
|
|
20
|
-
export function isSootSimAmbientGlowLevel(
|
|
21
|
-
value: unknown,
|
|
22
|
-
): value is SootSimAmbientGlowLevel {
|
|
23
|
-
return value === 'off' || value === 'soft' || value === 'full'
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export const SOOTSIM_AMBIENT_GLOW_LABELS: Record<SootSimAmbientGlowLevel, string> = {
|
|
27
|
-
off: 'Off',
|
|
28
|
-
soft: 'Soft',
|
|
29
|
-
full: 'Full',
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
// the stage behind the device: system follows the mac's appearance (white in
|
|
33
|
-
// light mode, black in dark), or one pinned color. one value per host, like
|
|
34
|
-
// the glow level above.
|
|
35
|
-
export type SootSimStageBackground = 'system' | 'light' | 'dark' | 'gray'
|
|
36
|
-
export const SOOTSIM_STAGE_BACKGROUNDS = ['system', 'light', 'dark', 'gray'] as const
|
|
37
|
-
|
|
38
|
-
export function isSootSimStageBackground(
|
|
39
|
-
value: unknown,
|
|
40
|
-
): value is SootSimStageBackground {
|
|
41
|
-
return value === 'system' || value === 'light' || value === 'dark' || value === 'gray'
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export const SOOTSIM_STAGE_BACKGROUND_LABELS: Record<SootSimStageBackground, string> = {
|
|
45
|
-
system: 'System',
|
|
46
|
-
light: 'Light',
|
|
47
|
-
dark: 'Dark',
|
|
48
|
-
gray: 'Gray',
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
// render resolution: how many pixels peach renders per iphone point. one
|
|
52
|
-
// setting with three states, carried by every host exactly like the ambient
|
|
53
|
-
// glow level above: the menus, the persisted setting, the ?renderResolution=
|
|
54
|
-
// boot seed, the live set-render-resolution push, electron's shared config.
|
|
55
|
-
export type SootSimRenderResolution = 'high' | 'medium' | 'low'
|
|
56
|
-
export const SOOTSIM_RENDER_RESOLUTION_LEVELS = ['high', 'medium', 'low'] as const
|
|
57
|
-
|
|
58
|
-
// the installed desktop app presents the phone scaled to fit its window, so a
|
|
59
|
-
// fixed 2 px/pt canvas is browser-resampled and its icons read soft. its
|
|
60
|
-
// default is the level that tracks the pixels on screen; browsers and capture
|
|
61
|
-
// keep medium, whose 2 px/pt is the deterministic capture contract.
|
|
62
|
-
export const DESKTOP_RENDER_RESOLUTION: SootSimRenderResolution = 'low'
|
|
63
|
-
|
|
64
|
-
export function isSootSimRenderResolution(
|
|
65
|
-
value: unknown,
|
|
66
|
-
): value is SootSimRenderResolution {
|
|
67
|
-
return value === 'high' || value === 'medium' || value === 'low'
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
export const SOOTSIM_RENDER_RESOLUTION_LABELS: Record<SootSimRenderResolution, string> = {
|
|
71
|
-
high: 'High',
|
|
72
|
-
medium: 'Medium',
|
|
73
|
-
low: 'Low',
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
// screen effect: the real rendering, or one of the presentation looks the
|
|
77
|
-
// engine's wireframe store draws. 'wireframe' is the clean structural sketch;
|
|
78
|
-
// the others are its screen-space styles that ship as named effects.
|
|
79
|
-
export type SootSimScreenEffect = 'none' | 'wireframe' | 'blueprint' | 'panel' | 'green'
|
|
80
|
-
export const SOOTSIM_SCREEN_EFFECTS = [
|
|
81
|
-
'none',
|
|
82
|
-
'wireframe',
|
|
83
|
-
'blueprint',
|
|
84
|
-
'panel',
|
|
85
|
-
'green',
|
|
86
|
-
] as const
|
|
87
|
-
|
|
88
|
-
export function isSootSimScreenEffect(value: unknown): value is SootSimScreenEffect {
|
|
89
|
-
return (
|
|
90
|
-
value === 'none' ||
|
|
91
|
-
value === 'wireframe' ||
|
|
92
|
-
value === 'blueprint' ||
|
|
93
|
-
value === 'panel' ||
|
|
94
|
-
value === 'green'
|
|
95
|
-
)
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
export const SOOTSIM_SCREEN_EFFECT_LABELS: Record<SootSimScreenEffect, string> = {
|
|
99
|
-
none: 'None',
|
|
100
|
-
wireframe: 'Wireframe',
|
|
101
|
-
blueprint: 'Blueprint',
|
|
102
|
-
panel: 'Panel',
|
|
103
|
-
green: 'Green',
|
|
104
|
-
}
|
|
22
|
+
export * from './menuContract'
|
|
105
23
|
|
|
106
24
|
export type SootSimMenuItemDef =
|
|
107
25
|
| { type: 'separator' }
|