@swmansion/argent 0.16.1 → 0.16.2-next.0
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/bin/argent-android-devtools-0.1.0.apk +0 -0
- package/bin/darwin/ax-service +0 -0
- package/bin/darwin/tvos-ax-service +0 -0
- package/bin/darwin/tvos-hid-daemon +0 -0
- package/bin/tcp/ax-service +0 -0
- package/dist/cli-cmds.mjs +617 -119
- package/dist/cli.js +3 -0
- package/dist/cli.js.map +1 -1
- package/dist/installer.mjs +36 -13
- package/dist/mcp-server.mjs +27 -17
- package/dist/tool-server.cjs +15 -6
- package/dylibs/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/libKeyboardPatch.dylib +0 -0
- package/dylibs/libNativeDevtoolsIos.dylib +0 -0
- package/dylibs/tcp/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/tcp/libKeyboardPatch.dylib +0 -0
- package/dylibs/tcp/libNativeDevtoolsIos.dylib +0 -0
- package/dylibs/tvos/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/tvos/libKeyboardPatch.dylib +0 -0
- package/dylibs/tvos/libNativeDevtoolsIos.dylib +0 -0
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -81,6 +81,7 @@ Commands:
|
|
|
81
81
|
enable Enable a feature flag (global by default, --scope project for project)
|
|
82
82
|
disable Disable a feature flag (global by default, --scope project for project)
|
|
83
83
|
flags Show current feature-flag state
|
|
84
|
+
config Manage configuration (list / get / set / unset, project & global)
|
|
84
85
|
telemetry Manage opt-out telemetry (status / enable / disable)
|
|
85
86
|
|
|
86
87
|
Options:
|
|
@@ -146,6 +147,8 @@ async function main() {
|
|
|
146
147
|
return (await loadCli()).disable(rest);
|
|
147
148
|
case "flags":
|
|
148
149
|
return (await loadCli()).flags(rest);
|
|
150
|
+
case "config":
|
|
151
|
+
return (await loadCli()).config(rest);
|
|
149
152
|
case "telemetry":
|
|
150
153
|
return (await loadCli()).telemetry(rest);
|
|
151
154
|
case "--version":
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,GAEnB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,YAAY,GAAG,mBAAmB,CAAC;AAEzC,SAAS,mBAAmB;IAC1B,IAAI,CAAC;QACH,uEAAuE;QACvE,oDAAoD;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACxE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAyB,CAAC;QACjF,OAAO,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,EAAE,AAAD,EAAG,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;AAC5C,MAAM,WAAW,GAAG,OAAO,KAAK,KAAK,CAAC;AAEtC,oBAAoB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;AAEtC,8EAA8E;AAC9E,8EAA8E;AAC9E,4EAA4E;AAC5E,6EAA6E;AAC7E,aAAa;AACb,SAAS,kBAAkB,CAAC,OAAyB;IACnD,MAAM,IAAI,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvF,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,CAAC;AACrC,CAAC;AAED,SAAS,SAAS;IAChB,MAAM,OAAO,GAAG,mBAAmB,EAAE,IAAI,SAAS,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC;UACJ,OAAO;;;;;;gBAMD,kBAAkB,CAAC,MAAM,CAAC;gBAC1B,kBAAkB,CAAC,SAAS,CAAC;gBAC7B,kBAAkB,CAAC,QAAQ,CAAC;gBAC5B,kBAAkB,CAAC,WAAW,CAAC;gBAC/B,kBAAkB,CAAC,QAAQ,CAAC
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/installer.mjs
CHANGED
|
@@ -17072,6 +17072,21 @@ import * as path4 from "node:path";
|
|
|
17072
17072
|
import * as fs from "node:fs";
|
|
17073
17073
|
import * as path from "node:path";
|
|
17074
17074
|
import { homedir } from "node:os";
|
|
17075
|
+
var PROJECT_MARKERS = [".argent", ".git", "package.json"];
|
|
17076
|
+
function findProjectRoot(startDir) {
|
|
17077
|
+
let current = path.resolve(startDir);
|
|
17078
|
+
while (true) {
|
|
17079
|
+
for (const marker of PROJECT_MARKERS) {
|
|
17080
|
+
if (fs.existsSync(path.join(current, marker))) return current;
|
|
17081
|
+
}
|
|
17082
|
+
const parent = path.dirname(current);
|
|
17083
|
+
if (parent === current) return null;
|
|
17084
|
+
current = parent;
|
|
17085
|
+
}
|
|
17086
|
+
}
|
|
17087
|
+
function resolveProjectRoot(startDir) {
|
|
17088
|
+
return findProjectRoot(startDir) ?? path.resolve(startDir);
|
|
17089
|
+
}
|
|
17075
17090
|
|
|
17076
17091
|
// ../configuration-core/src/paths.ts
|
|
17077
17092
|
import * as os from "node:os";
|
|
@@ -17085,19 +17100,26 @@ function argentHomeDir() {
|
|
|
17085
17100
|
const home = process.platform === "win32" ? nonEmpty(process.env.USERPROFILE) ?? os.homedir() : nonEmpty(process.env.HOME) ?? os.homedir();
|
|
17086
17101
|
return path2.join(home, ".argent");
|
|
17087
17102
|
}
|
|
17088
|
-
function
|
|
17089
|
-
|
|
17103
|
+
function configDir(scope = "global", options = {}) {
|
|
17104
|
+
if (scope === "global") {
|
|
17105
|
+
return options.homeDir ? path2.join(options.homeDir, ".argent") : argentHomeDir();
|
|
17106
|
+
}
|
|
17107
|
+
const cwd = options.cwd ?? process.cwd();
|
|
17108
|
+
return path2.join(resolveProjectRoot(cwd), ".argent");
|
|
17109
|
+
}
|
|
17110
|
+
function configFilePath(scope = "global", options = {}) {
|
|
17111
|
+
return path2.join(configDir(scope, options), "config.json");
|
|
17090
17112
|
}
|
|
17091
17113
|
|
|
17092
17114
|
// ../configuration-core/src/config.ts
|
|
17093
17115
|
import * as crypto from "node:crypto";
|
|
17094
17116
|
import * as fs2 from "node:fs";
|
|
17095
17117
|
import * as path3 from "node:path";
|
|
17096
|
-
function readConfigObject() {
|
|
17118
|
+
function readConfigObject(scope = "global", options = {}) {
|
|
17097
17119
|
try {
|
|
17098
|
-
const raw = fs2.readFileSync(configFilePath(), "utf8");
|
|
17120
|
+
const raw = fs2.readFileSync(configFilePath(scope, options), "utf8");
|
|
17099
17121
|
const json = JSON.parse(raw);
|
|
17100
|
-
if (json && typeof json === "object") {
|
|
17122
|
+
if (json && typeof json === "object" && !Array.isArray(json)) {
|
|
17101
17123
|
return json;
|
|
17102
17124
|
}
|
|
17103
17125
|
} catch {
|
|
@@ -17110,8 +17132,8 @@ var LOCK_RETRY_MS = 25;
|
|
|
17110
17132
|
function sleepSync(ms) {
|
|
17111
17133
|
Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, ms);
|
|
17112
17134
|
}
|
|
17113
|
-
function acquireConfigLock() {
|
|
17114
|
-
const lockPath =
|
|
17135
|
+
function acquireConfigLock(finalPath) {
|
|
17136
|
+
const lockPath = finalPath + ".lock";
|
|
17115
17137
|
const deadline = Date.now() + LOCK_MAX_WAIT_MS;
|
|
17116
17138
|
for (; ; ) {
|
|
17117
17139
|
try {
|
|
@@ -17146,14 +17168,15 @@ function releaseConfigLock(lock) {
|
|
|
17146
17168
|
} catch {
|
|
17147
17169
|
}
|
|
17148
17170
|
}
|
|
17149
|
-
function updateConfig(mutate) {
|
|
17150
|
-
|
|
17151
|
-
|
|
17171
|
+
function updateConfig(mutate, scope = "global", options = {}) {
|
|
17172
|
+
const dir = configDir(scope, options);
|
|
17173
|
+
fs2.mkdirSync(dir, { recursive: true });
|
|
17174
|
+
const finalPath = configFilePath(scope, options);
|
|
17175
|
+
const lock = acquireConfigLock(finalPath);
|
|
17152
17176
|
try {
|
|
17153
|
-
const next = readConfigObject();
|
|
17177
|
+
const next = readConfigObject(scope, options);
|
|
17154
17178
|
mutate(next);
|
|
17155
|
-
const
|
|
17156
|
-
const tmpPath = path3.join(argentHomeDir(), `.config.tmp.${process.pid}.${crypto.randomUUID()}`);
|
|
17179
|
+
const tmpPath = path3.join(dir, `.config.tmp.${process.pid}.${crypto.randomUUID()}`);
|
|
17157
17180
|
const fd = fs2.openSync(tmpPath, "wx", 384);
|
|
17158
17181
|
try {
|
|
17159
17182
|
fs2.writeSync(fd, JSON.stringify(next, null, 2) + "\n");
|
package/dist/mcp-server.mjs
CHANGED
|
@@ -18501,18 +18501,20 @@ import * as fs2 from "node:fs";
|
|
|
18501
18501
|
import * as path4 from "node:path";
|
|
18502
18502
|
import { homedir as homedir3 } from "node:os";
|
|
18503
18503
|
var PROJECT_MARKERS = [".argent", ".git", "package.json"];
|
|
18504
|
-
function
|
|
18505
|
-
|
|
18506
|
-
let current = initial;
|
|
18504
|
+
function findProjectRoot(startDir) {
|
|
18505
|
+
let current = path4.resolve(startDir);
|
|
18507
18506
|
while (true) {
|
|
18508
18507
|
for (const marker of PROJECT_MARKERS) {
|
|
18509
18508
|
if (fs2.existsSync(path4.join(current, marker))) return current;
|
|
18510
18509
|
}
|
|
18511
18510
|
const parent = path4.dirname(current);
|
|
18512
|
-
if (parent === current) return
|
|
18511
|
+
if (parent === current) return null;
|
|
18513
18512
|
current = parent;
|
|
18514
18513
|
}
|
|
18515
18514
|
}
|
|
18515
|
+
function resolveProjectRoot(startDir) {
|
|
18516
|
+
return findProjectRoot(startDir) ?? path4.resolve(startDir);
|
|
18517
|
+
}
|
|
18516
18518
|
function getFlagsPath(scope, options = {}) {
|
|
18517
18519
|
const home = options.homeDir ?? homedir3();
|
|
18518
18520
|
if (scope === "global") {
|
|
@@ -18566,19 +18568,26 @@ function argentHomeDir() {
|
|
|
18566
18568
|
const home = process.platform === "win32" ? nonEmpty(process.env.USERPROFILE) ?? os.homedir() : nonEmpty(process.env.HOME) ?? os.homedir();
|
|
18567
18569
|
return path5.join(home, ".argent");
|
|
18568
18570
|
}
|
|
18569
|
-
function
|
|
18570
|
-
|
|
18571
|
+
function configDir(scope = "global", options = {}) {
|
|
18572
|
+
if (scope === "global") {
|
|
18573
|
+
return options.homeDir ? path5.join(options.homeDir, ".argent") : argentHomeDir();
|
|
18574
|
+
}
|
|
18575
|
+
const cwd = options.cwd ?? process.cwd();
|
|
18576
|
+
return path5.join(resolveProjectRoot(cwd), ".argent");
|
|
18577
|
+
}
|
|
18578
|
+
function configFilePath(scope = "global", options = {}) {
|
|
18579
|
+
return path5.join(configDir(scope, options), "config.json");
|
|
18571
18580
|
}
|
|
18572
18581
|
|
|
18573
18582
|
// ../configuration-core/src/config.ts
|
|
18574
18583
|
import * as crypto from "node:crypto";
|
|
18575
18584
|
import * as fs3 from "node:fs";
|
|
18576
18585
|
import * as path6 from "node:path";
|
|
18577
|
-
function readConfigObject() {
|
|
18586
|
+
function readConfigObject(scope = "global", options = {}) {
|
|
18578
18587
|
try {
|
|
18579
|
-
const raw = fs3.readFileSync(configFilePath(), "utf8");
|
|
18588
|
+
const raw = fs3.readFileSync(configFilePath(scope, options), "utf8");
|
|
18580
18589
|
const json = JSON.parse(raw);
|
|
18581
|
-
if (json && typeof json === "object") {
|
|
18590
|
+
if (json && typeof json === "object" && !Array.isArray(json)) {
|
|
18582
18591
|
return json;
|
|
18583
18592
|
}
|
|
18584
18593
|
} catch {
|
|
@@ -18591,8 +18600,8 @@ var LOCK_RETRY_MS = 25;
|
|
|
18591
18600
|
function sleepSync(ms) {
|
|
18592
18601
|
Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, ms);
|
|
18593
18602
|
}
|
|
18594
|
-
function acquireConfigLock() {
|
|
18595
|
-
const lockPath =
|
|
18603
|
+
function acquireConfigLock(finalPath) {
|
|
18604
|
+
const lockPath = finalPath + ".lock";
|
|
18596
18605
|
const deadline = Date.now() + LOCK_MAX_WAIT_MS;
|
|
18597
18606
|
for (; ; ) {
|
|
18598
18607
|
try {
|
|
@@ -18627,14 +18636,15 @@ function releaseConfigLock(lock) {
|
|
|
18627
18636
|
} catch {
|
|
18628
18637
|
}
|
|
18629
18638
|
}
|
|
18630
|
-
function updateConfig(mutate) {
|
|
18631
|
-
|
|
18632
|
-
|
|
18639
|
+
function updateConfig(mutate, scope = "global", options = {}) {
|
|
18640
|
+
const dir = configDir(scope, options);
|
|
18641
|
+
fs3.mkdirSync(dir, { recursive: true });
|
|
18642
|
+
const finalPath = configFilePath(scope, options);
|
|
18643
|
+
const lock = acquireConfigLock(finalPath);
|
|
18633
18644
|
try {
|
|
18634
|
-
const next = readConfigObject();
|
|
18645
|
+
const next = readConfigObject(scope, options);
|
|
18635
18646
|
mutate(next);
|
|
18636
|
-
const
|
|
18637
|
-
const tmpPath = path6.join(argentHomeDir(), `.config.tmp.${process.pid}.${crypto.randomUUID()}`);
|
|
18647
|
+
const tmpPath = path6.join(dir, `.config.tmp.${process.pid}.${crypto.randomUUID()}`);
|
|
18638
18648
|
const fd = fs3.openSync(tmpPath, "wx", 384);
|
|
18639
18649
|
try {
|
|
18640
18650
|
fs3.writeSync(fd, JSON.stringify(next, null, 2) + "\n");
|
package/dist/tool-server.cjs
CHANGED
|
@@ -98706,18 +98706,20 @@ var fs = __toESM(require("node:fs"), 1);
|
|
|
98706
98706
|
var path = __toESM(require("node:path"), 1);
|
|
98707
98707
|
var import_node_os = require("node:os");
|
|
98708
98708
|
var PROJECT_MARKERS = [".argent", ".git", "package.json"];
|
|
98709
|
-
function
|
|
98710
|
-
|
|
98711
|
-
let current = initial;
|
|
98709
|
+
function findProjectRoot(startDir) {
|
|
98710
|
+
let current = path.resolve(startDir);
|
|
98712
98711
|
while (true) {
|
|
98713
98712
|
for (const marker of PROJECT_MARKERS) {
|
|
98714
98713
|
if (fs.existsSync(path.join(current, marker))) return current;
|
|
98715
98714
|
}
|
|
98716
98715
|
const parent = path.dirname(current);
|
|
98717
|
-
if (parent === current) return
|
|
98716
|
+
if (parent === current) return null;
|
|
98718
98717
|
current = parent;
|
|
98719
98718
|
}
|
|
98720
98719
|
}
|
|
98720
|
+
function resolveProjectRoot(startDir) {
|
|
98721
|
+
return findProjectRoot(startDir) ?? path.resolve(startDir);
|
|
98722
|
+
}
|
|
98721
98723
|
function getFlagsPath(scope, options = {}) {
|
|
98722
98724
|
const home = options.homeDir ?? (0, import_node_os.homedir)();
|
|
98723
98725
|
if (scope === "global") {
|
|
@@ -98771,8 +98773,15 @@ function argentHomeDir() {
|
|
|
98771
98773
|
const home = process.platform === "win32" ? nonEmpty(process.env.USERPROFILE) ?? os.homedir() : nonEmpty(process.env.HOME) ?? os.homedir();
|
|
98772
98774
|
return path2.join(home, ".argent");
|
|
98773
98775
|
}
|
|
98774
|
-
function
|
|
98775
|
-
|
|
98776
|
+
function configDir(scope = "global", options = {}) {
|
|
98777
|
+
if (scope === "global") {
|
|
98778
|
+
return options.homeDir ? path2.join(options.homeDir, ".argent") : argentHomeDir();
|
|
98779
|
+
}
|
|
98780
|
+
const cwd = options.cwd ?? process.cwd();
|
|
98781
|
+
return path2.join(resolveProjectRoot(cwd), ".argent");
|
|
98782
|
+
}
|
|
98783
|
+
function configFilePath(scope = "global", options = {}) {
|
|
98784
|
+
return path2.join(configDir(scope, options), "config.json");
|
|
98776
98785
|
}
|
|
98777
98786
|
|
|
98778
98787
|
// ../tool-server/src/index.ts
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|