rnxsim 0.1.480 → 0.1.482
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/detox.ts +5 -6
- package/detox/expectations.ts +2 -2
- package/detox/index.ts +22 -0
- package/dist-lib/agent-daemon-client.cjs +1 -1
- package/dist-lib/agent-events.cjs +1 -1
- package/dist-lib/agent-identity.cjs +1 -1
- package/dist-lib/agent-sessions.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/capture-contract.cjs +1 -1
- package/dist-lib/capture-contract.mjs +1 -1
- package/dist-lib/cli-constants.cjs +1 -1
- package/dist-lib/cloud-contract.cjs +1 -1
- package/dist-lib/cloud-contract.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/detox/index.cjs +87 -3
- package/dist-lib/dev-bundle-resolution.cjs +1 -1
- package/dist-lib/home-paths.cjs +1 -1
- package/dist-lib/host/bridge-host.cjs +2 -2
- package/dist-lib/host/fetch-proxy-handler.cjs +1 -1
- 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 +1 -1
- package/dist-lib/jump-to-source-babel.cjs +1 -1
- package/dist-lib/jump-to-source-native.cjs +1 -1
- 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 +1 -1
- package/dist-lib/profiles.cjs +1 -1
- package/dist-lib/public-brand.cjs +1 -1
- package/dist-lib/react-native-host-modules.cjs +1 -1
- package/dist-lib/react-native-host-modules.mjs +1 -1
- package/dist-lib/render-mode.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 +29 -11
- package/dist-lib/vite.cjs +1 -1
- package/package.json +1 -1
- package/src/vite-plugin.ts +1 -0
package/cli/commands/detox.ts
CHANGED
|
@@ -215,12 +215,11 @@ export async function runDetox(args: string[], opts: RunDetoxOpts = {}): Promise
|
|
|
215
215
|
console.log(` port: ${port}${headed ? ' (headed)' : ''}`)
|
|
216
216
|
if (localConfig) console.log(` config: ${localConfig}`)
|
|
217
217
|
|
|
218
|
-
// proof capture
|
|
219
|
-
//
|
|
220
|
-
//
|
|
221
|
-
//
|
|
222
|
-
//
|
|
223
|
-
// defaults and still resolve jest through npx.
|
|
218
|
+
// proof capture runs under the repo's pinned node runtime. its v8 collector
|
|
219
|
+
// can crash in ClearStaleLeftTrimmedPointerVisitor before jest reports a
|
|
220
|
+
// result or after a passing line. keep the existing proof-only no-maglev
|
|
221
|
+
// mode while that upstream runtime fault is investigated. normal user detox
|
|
222
|
+
// runs retain their node defaults and resolve jest through npx.
|
|
224
223
|
const proofCapture =
|
|
225
224
|
process.env.CONFORMANCE_PROOF === '1' || !!process.env.CONFORMANCE_PROOF_DIR
|
|
226
225
|
const command = proofCapture ? 'node' : 'npx'
|
package/detox/expectations.ts
CHANGED
|
@@ -169,7 +169,7 @@ class SootSimExpectation {
|
|
|
169
169
|
throw new Error(`element not found for toHaveText: ${JSON.stringify(this.matcher)}`)
|
|
170
170
|
}
|
|
171
171
|
const actualText = node.text || ''
|
|
172
|
-
const matches = actualText === expectedText
|
|
172
|
+
const matches = actualText === expectedText
|
|
173
173
|
|
|
174
174
|
if (this.negated) {
|
|
175
175
|
if (matches) {
|
|
@@ -380,7 +380,7 @@ class SootSimWaitForChain {
|
|
|
380
380
|
`waitFor toHaveText: element not found: ${JSON.stringify(this.matcher)}`,
|
|
381
381
|
)
|
|
382
382
|
const actual = node.text || ''
|
|
383
|
-
const matches = actual === expectedText
|
|
383
|
+
const matches = actual === expectedText
|
|
384
384
|
if (this._negated ? matches : !matches) {
|
|
385
385
|
throw new Error(
|
|
386
386
|
`waitFor toHaveText: expected "${expectedText}" but got "${actual}" ${JSON.stringify(this.matcher)}`,
|
package/detox/index.ts
CHANGED
|
@@ -6,6 +6,10 @@ import * as fs from 'fs'
|
|
|
6
6
|
import * as path from 'path'
|
|
7
7
|
import { chromium } from 'playwright'
|
|
8
8
|
import { launchReapedChromeScoped } from '../../../scripts/lib/reap-browser'
|
|
9
|
+
import {
|
|
10
|
+
readBrowserCompositeCaptureRequest,
|
|
11
|
+
resolveBrowserCompositeCdpClip,
|
|
12
|
+
} from '../../sootsim-engine/src/capture/browser-composite'
|
|
9
13
|
import { pollUntil } from '../src/poll-until'
|
|
10
14
|
import {
|
|
11
15
|
createExpect,
|
|
@@ -1359,6 +1363,24 @@ export const device = {
|
|
|
1359
1363
|
}
|
|
1360
1364
|
}
|
|
1361
1365
|
_context = await _browser.newContext(contextOpts)
|
|
1366
|
+
await _context.exposeBinding('__sootsimHostCapture', async (source, value) => {
|
|
1367
|
+
const request = readBrowserCompositeCaptureRequest(value)
|
|
1368
|
+
const session = await source.page.context().newCDPSession(source.page)
|
|
1369
|
+
try {
|
|
1370
|
+
const result = await session.send('Page.captureScreenshot', {
|
|
1371
|
+
format: 'png',
|
|
1372
|
+
fromSurface: true,
|
|
1373
|
+
captureBeyondViewport: true,
|
|
1374
|
+
clip: resolveBrowserCompositeCdpClip(
|
|
1375
|
+
request,
|
|
1376
|
+
await session.send('Page.getLayoutMetrics'),
|
|
1377
|
+
),
|
|
1378
|
+
})
|
|
1379
|
+
return 'data:image/png;base64,' + result.data
|
|
1380
|
+
} finally {
|
|
1381
|
+
await session.detach()
|
|
1382
|
+
}
|
|
1383
|
+
})
|
|
1362
1384
|
_page = await _context.newPage()
|
|
1363
1385
|
contextIdentity = ++nextContextIdentity
|
|
1364
1386
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/beta.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/beta.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/cloud.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/cloud.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (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/config.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/detox/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -756,6 +756,72 @@ async function launchReapedChromeScoped(launch, opts = {}, rendererTarget, polic
|
|
|
756
756
|
);
|
|
757
757
|
}
|
|
758
758
|
|
|
759
|
+
// ../sootsim-engine/src/capture/browser-composite.ts
|
|
760
|
+
function resolveBrowserCompositeCdpClip(request, metrics) {
|
|
761
|
+
if (!metrics || typeof metrics !== "object") {
|
|
762
|
+
throw new Error("browser composite capture requires CDP layout metrics");
|
|
763
|
+
}
|
|
764
|
+
const physical = Reflect.get(metrics, "layoutViewport");
|
|
765
|
+
const css = Reflect.get(metrics, "cssLayoutViewport");
|
|
766
|
+
if (!physical || typeof physical !== "object" || !css || typeof css !== "object") {
|
|
767
|
+
throw new Error("browser composite capture requires physical and CSS viewports");
|
|
768
|
+
}
|
|
769
|
+
const physicalWidth = Reflect.get(physical, "clientWidth");
|
|
770
|
+
const cssWidth = Reflect.get(css, "clientWidth");
|
|
771
|
+
if (typeof physicalWidth !== "number" || !Number.isFinite(physicalWidth) || physicalWidth <= 0 || typeof cssWidth !== "number" || !Number.isFinite(cssWidth) || cssWidth <= 0) {
|
|
772
|
+
throw new Error("browser composite capture requires positive viewport widths");
|
|
773
|
+
}
|
|
774
|
+
const devicePixelRatio = physicalWidth / cssWidth;
|
|
775
|
+
const padding = 1;
|
|
776
|
+
return {
|
|
777
|
+
x: request.rect.x - padding,
|
|
778
|
+
y: request.rect.y - padding,
|
|
779
|
+
width: request.rect.width + padding * 2,
|
|
780
|
+
height: request.rect.height + padding * 2,
|
|
781
|
+
scale: request.outputWidth / request.rect.width / devicePixelRatio
|
|
782
|
+
};
|
|
783
|
+
}
|
|
784
|
+
function readBrowserCompositeCaptureRequest(value) {
|
|
785
|
+
if (!value || typeof value !== "object") {
|
|
786
|
+
throw new Error("browser composite capture request must be an object");
|
|
787
|
+
}
|
|
788
|
+
const rect = Reflect.get(value, "rect");
|
|
789
|
+
if (!rect || typeof rect !== "object") {
|
|
790
|
+
throw new Error("browser composite capture request requires a rect");
|
|
791
|
+
}
|
|
792
|
+
const request = {
|
|
793
|
+
rect: {
|
|
794
|
+
x: Reflect.get(rect, "x"),
|
|
795
|
+
y: Reflect.get(rect, "y"),
|
|
796
|
+
width: Reflect.get(rect, "width"),
|
|
797
|
+
height: Reflect.get(rect, "height")
|
|
798
|
+
},
|
|
799
|
+
outputWidth: Reflect.get(value, "outputWidth"),
|
|
800
|
+
outputHeight: Reflect.get(value, "outputHeight")
|
|
801
|
+
};
|
|
802
|
+
const positions = [request.rect.x, request.rect.y];
|
|
803
|
+
const dimensions = [
|
|
804
|
+
request.rect.width,
|
|
805
|
+
request.rect.height,
|
|
806
|
+
request.outputWidth,
|
|
807
|
+
request.outputHeight
|
|
808
|
+
];
|
|
809
|
+
if (positions.some((number) => typeof number !== "number" || !Number.isFinite(number))) {
|
|
810
|
+
throw new Error("browser composite capture request positions must be finite");
|
|
811
|
+
}
|
|
812
|
+
if (dimensions.some(
|
|
813
|
+
(number) => typeof number !== "number" || !Number.isFinite(number) || number <= 0
|
|
814
|
+
) || !Number.isInteger(request.outputWidth) || !Number.isInteger(request.outputHeight)) {
|
|
815
|
+
throw new Error("browser composite capture request dimensions must be positive");
|
|
816
|
+
}
|
|
817
|
+
const scaleX = request.outputWidth / request.rect.width;
|
|
818
|
+
const scaleY = request.outputHeight / request.rect.height;
|
|
819
|
+
if (Math.abs(scaleX - scaleY) > 1e-3) {
|
|
820
|
+
throw new Error("browser composite capture output scale must be uniform");
|
|
821
|
+
}
|
|
822
|
+
return request;
|
|
823
|
+
}
|
|
824
|
+
|
|
759
825
|
// src/poll-until.ts
|
|
760
826
|
async function pollUntil(read, ready, options) {
|
|
761
827
|
if (!Number.isFinite(options.timeoutMs) || options.timeoutMs <= 0) {
|
|
@@ -1302,7 +1368,7 @@ var SootSimExpectation = class _SootSimExpectation {
|
|
|
1302
1368
|
throw new Error(`element not found for toHaveText: ${JSON.stringify(this.matcher)}`);
|
|
1303
1369
|
}
|
|
1304
1370
|
const actualText = node.text || "";
|
|
1305
|
-
const matches = actualText === expectedText
|
|
1371
|
+
const matches = actualText === expectedText;
|
|
1306
1372
|
if (this.negated) {
|
|
1307
1373
|
if (matches) {
|
|
1308
1374
|
throw new Error(
|
|
@@ -1488,7 +1554,7 @@ var SootSimWaitForChain = class {
|
|
|
1488
1554
|
`waitFor toHaveText: element not found: ${JSON.stringify(this.matcher)}`
|
|
1489
1555
|
);
|
|
1490
1556
|
const actual = node.text || "";
|
|
1491
|
-
const matches = actual === expectedText
|
|
1557
|
+
const matches = actual === expectedText;
|
|
1492
1558
|
if (this._negated ? matches : !matches) {
|
|
1493
1559
|
throw new Error(
|
|
1494
1560
|
`waitFor toHaveText: expected "${expectedText}" but got "${actual}" ${JSON.stringify(this.matcher)}`
|
|
@@ -2777,6 +2843,24 @@ var device = {
|
|
|
2777
2843
|
};
|
|
2778
2844
|
}
|
|
2779
2845
|
_context = await _browser.newContext(contextOpts);
|
|
2846
|
+
await _context.exposeBinding("__sootsimHostCapture", async (source, value) => {
|
|
2847
|
+
const request = readBrowserCompositeCaptureRequest(value);
|
|
2848
|
+
const session = await source.page.context().newCDPSession(source.page);
|
|
2849
|
+
try {
|
|
2850
|
+
const result = await session.send("Page.captureScreenshot", {
|
|
2851
|
+
format: "png",
|
|
2852
|
+
fromSurface: true,
|
|
2853
|
+
captureBeyondViewport: true,
|
|
2854
|
+
clip: resolveBrowserCompositeCdpClip(
|
|
2855
|
+
request,
|
|
2856
|
+
await session.send("Page.getLayoutMetrics")
|
|
2857
|
+
)
|
|
2858
|
+
});
|
|
2859
|
+
return "data:image/png;base64," + result.data;
|
|
2860
|
+
} finally {
|
|
2861
|
+
await session.detach();
|
|
2862
|
+
}
|
|
2863
|
+
});
|
|
2780
2864
|
_page = await _context.newPage();
|
|
2781
2865
|
contextIdentity = ++nextContextIdentity;
|
|
2782
2866
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/home-paths.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -2995,7 +2995,7 @@ function isHermesBytecodeText(source) {
|
|
|
2995
2995
|
const second = source.charCodeAt(1);
|
|
2996
2996
|
const third = source.charCodeAt(2);
|
|
2997
2997
|
const fourth = source.charCodeAt(3);
|
|
2998
|
-
return (first === 198 || first === 65533) && second === 31 && (third === 188 || third === 65533) && fourth === 3
|
|
2998
|
+
return (first === 198 || first === 65533) && second === 31 && (third === 188 || third === 65533) && fourth === 3;
|
|
2999
2999
|
}
|
|
3000
3000
|
async function fingerprintBlindMetroBundle(source) {
|
|
3001
3001
|
if (isHermesBytecodeText(source)) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
|
|
3
3
|
// src/host/fetch-proxy-overrides.ts
|
|
4
4
|
var FETCH_PROXY_BROWSER_USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
package/dist-lib/menu.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/menu.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/metro.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
package/dist-lib/profiles.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/render-mode.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
package/dist-lib/sdk.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/sdk.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (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
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -3697,13 +3697,13 @@ var init_capability_outcomes2 = __esm({
|
|
|
3697
3697
|
assessed: 0
|
|
3698
3698
|
},
|
|
3699
3699
|
ios: {
|
|
3700
|
-
passedWeight:
|
|
3700
|
+
passedWeight: 179,
|
|
3701
3701
|
failedWeight: 0,
|
|
3702
|
-
unassessedWeight:
|
|
3702
|
+
unassessedWeight: 1028,
|
|
3703
3703
|
totalWeight: 1207,
|
|
3704
|
-
assessedWeight:
|
|
3704
|
+
assessedWeight: 179,
|
|
3705
3705
|
compatibility: 1,
|
|
3706
|
-
assessed: 0.
|
|
3706
|
+
assessed: 0.14830157415078707
|
|
3707
3707
|
}
|
|
3708
3708
|
},
|
|
3709
3709
|
usage: {
|
|
@@ -3717,13 +3717,13 @@ var init_capability_outcomes2 = __esm({
|
|
|
3717
3717
|
assessed: 0
|
|
3718
3718
|
},
|
|
3719
3719
|
ios: {
|
|
3720
|
-
passedWeight:
|
|
3720
|
+
passedWeight: 8420,
|
|
3721
3721
|
failedWeight: 0,
|
|
3722
|
-
unassessedWeight:
|
|
3722
|
+
unassessedWeight: 24030,
|
|
3723
3723
|
totalWeight: 32450,
|
|
3724
|
-
assessedWeight:
|
|
3724
|
+
assessedWeight: 8420,
|
|
3725
3725
|
compatibility: 1,
|
|
3726
|
-
assessed: 0.
|
|
3726
|
+
assessed: 0.25947611710323576
|
|
3727
3727
|
}
|
|
3728
3728
|
}
|
|
3729
3729
|
},
|
|
@@ -4369,7 +4369,10 @@ var init_capability_outcomes2 = __esm({
|
|
|
4369
4369
|
}
|
|
4370
4370
|
},
|
|
4371
4371
|
capturedAt: "2026-09-08T06:14:31.559Z",
|
|
4372
|
-
receipts: [
|
|
4372
|
+
receipts: [
|
|
4373
|
+
"retained-essentials-react-native-screens-r22458-20260908",
|
|
4374
|
+
"screens-sheets-paired-clean-p40993"
|
|
4375
|
+
],
|
|
4373
4376
|
sourceCommit: "ea3eb82eeea6f6925ae708b7028cb577ad37f36a"
|
|
4374
4377
|
},
|
|
4375
4378
|
unmatchedReferenceCount: 0,
|
|
@@ -5463,6 +5466,8 @@ var init_supported_native_packages = __esm({
|
|
|
5463
5466
|
// seam
|
|
5464
5467
|
"react-native-safe-area-context",
|
|
5465
5468
|
// preset+visual-proof+coverage
|
|
5469
|
+
"react-native-screen-choreography",
|
|
5470
|
+
// preset+seam+coverage
|
|
5466
5471
|
"react-native-screen-corner-radius",
|
|
5467
5472
|
// seam+coverage
|
|
5468
5473
|
"react-native-screens",
|
|
@@ -6689,6 +6694,19 @@ var init_registry = __esm({
|
|
|
6689
6694
|
}
|
|
6690
6695
|
]
|
|
6691
6696
|
},
|
|
6697
|
+
"react-native-screen-choreography": {
|
|
6698
|
+
category: "Animation",
|
|
6699
|
+
stubType: "native",
|
|
6700
|
+
versions: [
|
|
6701
|
+
{
|
|
6702
|
+
range: ">=0.5.0 <0.6.0",
|
|
6703
|
+
coverage: 0.95,
|
|
6704
|
+
note: "native-seam only: the published provider, navigation adapters, shared-element registry, transition recipes, measurement, Reanimated worklets, and react-native-teleport ownership all run unchanged; rnx supplies the ScreenChoreographyView host and ScreenChoreographyPreparation TurboModule used by version 0.5's presentation and two-frame layout handshakes",
|
|
6705
|
+
working: "ChoreographyProvider, ChoreographyScreen, SharedElement and SharedElement.Target, React Navigation and Expo Router adapters, forward and interactive transitions, native preparation with mounted-descendant checks, tag-recycling rejection, positive finite geometry validation, 0.5-point stability tolerance, two stable frame samples, cancellation, and the 500ms native deadline; overlay presentation acknowledgement after a rendered frame and a two-frame dismissal grace period",
|
|
6706
|
+
missing: "native teardown freezes the final overlay into a bitmap for two frames; rnx keeps the live overlay subtree visible for those two frames because the canvas host has no synchronous subtree snapshot API"
|
|
6707
|
+
}
|
|
6708
|
+
]
|
|
6709
|
+
},
|
|
6692
6710
|
"react-native-launch-arguments": {
|
|
6693
6711
|
category: "Device & Platform",
|
|
6694
6712
|
stubType: "native",
|
|
@@ -27072,7 +27090,7 @@ function isHermesBytecodeText(source) {
|
|
|
27072
27090
|
const second = source.charCodeAt(1);
|
|
27073
27091
|
const third = source.charCodeAt(2);
|
|
27074
27092
|
const fourth = source.charCodeAt(3);
|
|
27075
|
-
return (first === 198 || first === 65533) && second === 31 && (third === 188 || third === 65533) && fourth === 3
|
|
27093
|
+
return (first === 198 || first === 65533) && second === 31 && (third === 188 || third === 65533) && fourth === 3;
|
|
27076
27094
|
}
|
|
27077
27095
|
async function fingerprintBlindMetroBundle(source) {
|
|
27078
27096
|
if (isHermesBytecodeText(source)) {
|
package/dist-lib/vite.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! rnx v0.1.
|
|
1
|
+
/*! rnx v0.1.482 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
package/package.json
CHANGED
package/src/vite-plugin.ts
CHANGED
|
@@ -505,6 +505,7 @@ const ENGINE_WORKER_BOOT_CLOSURES: WorkerBootClosure[] = [
|
|
|
505
505
|
// when adding font work here, or both caps take the parser again.
|
|
506
506
|
{ entry: 'src/render-worker/shell-worker-entry.ts', maxBytes: 3_260_000 },
|
|
507
507
|
{ entry: 'src/render-worker/compositor-worker-entry.ts', maxBytes: 1_080_000 },
|
|
508
|
+
{ entry: 'src/render-worker/compositor-worker-ganesh-entry.ts', maxBytes: 1_820_000 },
|
|
508
509
|
]
|
|
509
510
|
|
|
510
511
|
export function workerBootChunkPlugin(closures: WorkerBootClosure[]): Plugin {
|