rnxsim 0.1.441 → 0.1.443

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/cli/bin.ts +3 -1
  2. package/cli/cloud-client.ts +153 -17
  3. package/cli/cloud-dispatch.ts +15 -0
  4. package/cli/cloud-session.ts +69 -17
  5. package/cli/commands/box/bundle-plane.ts +71 -0
  6. package/cli/commands/box.ts +274 -115
  7. package/cli/commands/control.ts +1 -137
  8. package/cli/commands/flow.ts +1 -1
  9. package/cli/commands/inspect/list.ts +119 -2
  10. package/cli/commands/inspect.ts +3 -2
  11. package/cli/commands/platform.ts +95 -12
  12. package/cli/commands/reset.ts +7 -3
  13. package/cli/commands/state.ts +7 -3
  14. package/cli/flow-export.ts +55 -0
  15. package/cli/flow-session.ts +0 -47
  16. package/cli/outbound-endpoints.ts +5 -0
  17. package/cli/rnx-in-process.ts +98 -0
  18. package/cli/ws-bridge.ts +30 -0
  19. package/dist-lib/agent-daemon-client.cjs +1 -1
  20. package/dist-lib/agent-events.cjs +1 -1
  21. package/dist-lib/agent-identity.cjs +1 -1
  22. package/dist-lib/agent-sessions.cjs +1 -1
  23. package/dist-lib/attached-projects.cjs +1 -1
  24. package/dist-lib/auth/shared-session.cjs +1 -1
  25. package/dist-lib/backend-origin.cjs +1 -1
  26. package/dist-lib/beta.cjs +1 -1
  27. package/dist-lib/beta.mjs +1 -1
  28. package/dist-lib/bridge-constants.cjs +1 -1
  29. package/dist-lib/bridge-contract-input.cjs +1 -1
  30. package/dist-lib/bridge-contract-input.mjs +1 -1
  31. package/dist-lib/bridge-contract.cjs +1 -1
  32. package/dist-lib/bridge-contract.mjs +1 -1
  33. package/dist-lib/capture-contract.cjs +1 -1
  34. package/dist-lib/capture-contract.mjs +1 -1
  35. package/dist-lib/cli-constants.cjs +1 -1
  36. package/dist-lib/cloud-contract.cjs +1 -1
  37. package/dist-lib/cloud-contract.mjs +1 -1
  38. package/dist-lib/cloud.cjs +1 -1
  39. package/dist-lib/cloud.mjs +1 -1
  40. package/dist-lib/config.cjs +1 -1
  41. package/dist-lib/detox/index.cjs +69 -14
  42. package/dist-lib/dev-bundle-resolution.cjs +1 -1
  43. package/dist-lib/home-paths.cjs +17 -1
  44. package/dist-lib/host/bridge-host.cjs +24 -13
  45. package/dist-lib/host/fetch-proxy-handler.cjs +1 -1
  46. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  47. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  48. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  49. package/dist-lib/host/websocket-proxy.cjs +1 -1
  50. package/dist-lib/index.cjs +1 -3
  51. package/dist-lib/jump-to-source-babel.cjs +1 -1
  52. package/dist-lib/menu.cjs +6 -19
  53. package/dist-lib/menu.mjs +6 -19
  54. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  55. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  56. package/dist-lib/metro-production-bundle.cjs +1 -1
  57. package/dist-lib/metro-production-bundle.mjs +1 -1
  58. package/dist-lib/metro.cjs +1 -1
  59. package/dist-lib/profiles.cjs +1 -1
  60. package/dist-lib/public-brand.cjs +1 -1
  61. package/dist-lib/react-native-host-modules.cjs +1 -1
  62. package/dist-lib/react-native-host-modules.mjs +1 -1
  63. package/dist-lib/render-mode.cjs +1 -1
  64. package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
  65. package/dist-lib/sdk.cjs +1 -1
  66. package/dist-lib/sdk.mjs +1 -1
  67. package/dist-lib/skills.cjs +274 -195
  68. package/dist-lib/vite.cjs +1 -1
  69. package/package.json +8 -1
  70. package/src/home-paths.ts +31 -1
  71. package/src/menu.ts +4 -17
package/dist-lib/vite.cjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.441 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.443 | (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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rnxsim",
3
- "version": "0.1.441",
3
+ "version": "0.1.443",
4
4
  "description": "Vite and Metro plugins, testing drivers, and SDK exports for rnx.",
5
5
  "author": "Tamagui LLC",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -208,6 +208,13 @@
208
208
  "source": "./detox/jest-preset.cjs",
209
209
  "default": "./dist-lib/detox/jest-preset.cjs"
210
210
  },
211
+ "./cli/in-process": {
212
+ "types": "./cli/rnx-in-process.ts",
213
+ "source": "./cli/rnx-in-process.ts",
214
+ "bun": "./cli/rnx-in-process.ts",
215
+ "import": "./cli/rnx-in-process.ts",
216
+ "default": "./cli/rnx-in-process.ts"
217
+ },
211
218
  "./package.json": "./package.json"
212
219
  },
213
220
  "files": [
package/src/home-paths.ts CHANGED
@@ -22,7 +22,7 @@
22
22
  // ├── automatic-cleanup-v1.json completion marker for the one-time safe
23
23
  // │ cleanup introduced for legacy unbounded data
24
24
  // └── config.json user prefs: update channel, cdn origin override,
25
- // telemetry, engine settings
25
+ // telemetry, engine settings, default box
26
26
 
27
27
  import { randomUUID } from 'node:crypto'
28
28
  import fs from 'node:fs'
@@ -291,6 +291,36 @@ export function readOrCreateAnonymousId(): string {
291
291
  return created
292
292
  }
293
293
 
294
+ // --- default box ----------------------------------------------------------
295
+ //
296
+ // the box every box verb acts on when the command line names none. `rnx box
297
+ // use` writes it and `rnx box stop` clears it when it stops that box.
298
+ //
299
+ // the id and the display name, and nothing else. a Box is reached with a
300
+ // bearer token the account service hands out per attach, so writing one here
301
+ // would make this file a credential store; every verb resolves the token
302
+ // again from the id it reads back.
303
+
304
+ export interface DefaultBox {
305
+ boxId: string
306
+ name: string | null
307
+ }
308
+
309
+ export function readDefaultBox(): DefaultBox | null {
310
+ const stored = readSharedConfig().defaultBox
311
+ if (typeof stored !== 'object' || stored === null) return null
312
+ if (!('boxId' in stored) || typeof stored.boxId !== 'string' || !stored.boxId) {
313
+ return null
314
+ }
315
+ const name = 'name' in stored && typeof stored.name === 'string' ? stored.name : null
316
+ return { boxId: stored.boxId, name }
317
+ }
318
+
319
+ /** set the default box, or clear it with null. */
320
+ export function writeDefaultBox(box: DefaultBox | null): void {
321
+ writeSharedConfig({ defaultBox: box })
322
+ }
323
+
294
324
  // --- background-upgrade notice --------------------------------------------
295
325
  //
296
326
  // the daemon auto-updates the engine runtime in the background (hourly), so
package/src/menu.ts CHANGED
@@ -452,24 +452,11 @@ function windowMenu(state: SootSimMenuState): SootSimMenuDef {
452
452
  })),
453
453
  },
454
454
  {
455
- label: 'Presentation',
455
+ label: 'Wireframe',
456
+ type: 'checkbox',
457
+ checked: state.wireframe,
458
+ action: 'toggle-wireframe',
456
459
  hiddenIn: 'electron',
457
- items: [
458
- {
459
- label: 'Real',
460
- type: 'radio' as const,
461
- checked: !state.wireframe,
462
- action: 'set-presentation',
463
- actionPayload: 'real',
464
- },
465
- {
466
- label: 'Clean Wireframe',
467
- type: 'radio' as const,
468
- checked: state.wireframe,
469
- action: 'set-presentation',
470
- actionPayload: 'wireframe',
471
- },
472
- ],
473
460
  },
474
461
  {
475
462
  label: 'Screenshot',