@nathapp/nax 0.29.0 → 0.30.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/CHANGELOG.md +10 -0
- package/bin/nax.ts +2 -3
- package/dist/nax.js +439 -377
- package/package.json +2 -2
- package/src/cli/analyze.ts +2 -7
- package/src/execution/lifecycle/headless-formatter.ts +2 -4
- package/src/prompts/builder.ts +12 -69
- package/src/prompts/sections/isolation.ts +38 -8
- package/src/prompts/sections/role-task.ts +79 -19
- package/src/prompts/templates/implementer.ts +0 -6
- package/src/prompts/templates/single-session.ts +0 -6
- package/src/prompts/templates/test-writer.ts +0 -6
- package/src/prompts/templates/verifier.ts +0 -6
package/dist/nax.js
CHANGED
|
@@ -19500,6 +19500,92 @@ var init_routing = __esm(() => {
|
|
|
19500
19500
|
init_batch_route();
|
|
19501
19501
|
});
|
|
19502
19502
|
|
|
19503
|
+
// package.json
|
|
19504
|
+
var package_default;
|
|
19505
|
+
var init_package = __esm(() => {
|
|
19506
|
+
package_default = {
|
|
19507
|
+
name: "@nathapp/nax",
|
|
19508
|
+
version: "0.30.0",
|
|
19509
|
+
description: "AI Coding Agent Orchestrator \u2014 loops until done",
|
|
19510
|
+
type: "module",
|
|
19511
|
+
bin: {
|
|
19512
|
+
nax: "./dist/nax.js"
|
|
19513
|
+
},
|
|
19514
|
+
scripts: {
|
|
19515
|
+
prepare: "git config core.hooksPath .githooks",
|
|
19516
|
+
dev: "bun run bin/nax.ts",
|
|
19517
|
+
build: 'bun build bin/nax.ts --outdir dist --target bun --define "GIT_COMMIT=\\"$(git rev-parse --short HEAD)\\""',
|
|
19518
|
+
typecheck: "bun x tsc --noEmit",
|
|
19519
|
+
lint: "bun x biome check src/ bin/",
|
|
19520
|
+
test: "NAX_SKIP_PRECHECK=1 bun test test/ --timeout=60000",
|
|
19521
|
+
"test:watch": "bun test --watch",
|
|
19522
|
+
"test:unit": "bun test ./test/unit/ --timeout=60000",
|
|
19523
|
+
"test:integration": "bun test ./test/integration/ --timeout=60000",
|
|
19524
|
+
"test:ui": "bun test ./test/ui/ --timeout=60000",
|
|
19525
|
+
prepublishOnly: "bun run build"
|
|
19526
|
+
},
|
|
19527
|
+
dependencies: {
|
|
19528
|
+
"@anthropic-ai/sdk": "^0.74.0",
|
|
19529
|
+
"@types/react": "^19.2.14",
|
|
19530
|
+
chalk: "^5.6.2",
|
|
19531
|
+
commander: "^13.1.0",
|
|
19532
|
+
ink: "^6.7.0",
|
|
19533
|
+
"ink-spinner": "^5.0.0",
|
|
19534
|
+
"ink-testing-library": "^4.0.0",
|
|
19535
|
+
react: "^19.2.4",
|
|
19536
|
+
zod: "^4.3.6"
|
|
19537
|
+
},
|
|
19538
|
+
devDependencies: {
|
|
19539
|
+
"@biomejs/biome": "^1.9.4",
|
|
19540
|
+
"@types/bun": "^1.3.8",
|
|
19541
|
+
"react-devtools-core": "^7.0.1",
|
|
19542
|
+
typescript: "^5.7.3"
|
|
19543
|
+
},
|
|
19544
|
+
license: "MIT",
|
|
19545
|
+
author: "William Khoo",
|
|
19546
|
+
keywords: [
|
|
19547
|
+
"ai",
|
|
19548
|
+
"agent",
|
|
19549
|
+
"orchestrator",
|
|
19550
|
+
"tdd",
|
|
19551
|
+
"coding"
|
|
19552
|
+
],
|
|
19553
|
+
files: [
|
|
19554
|
+
"dist/",
|
|
19555
|
+
"src/",
|
|
19556
|
+
"bin/",
|
|
19557
|
+
"README.md",
|
|
19558
|
+
"CHANGELOG.md"
|
|
19559
|
+
]
|
|
19560
|
+
};
|
|
19561
|
+
});
|
|
19562
|
+
|
|
19563
|
+
// src/version.ts
|
|
19564
|
+
var NAX_VERSION, NAX_COMMIT, NAX_BUILD_INFO;
|
|
19565
|
+
var init_version = __esm(() => {
|
|
19566
|
+
init_package();
|
|
19567
|
+
NAX_VERSION = package_default.version;
|
|
19568
|
+
NAX_COMMIT = (() => {
|
|
19569
|
+
try {
|
|
19570
|
+
if (/^[0-9a-f]{6,10}$/.test("f7c3de1"))
|
|
19571
|
+
return "f7c3de1";
|
|
19572
|
+
} catch {}
|
|
19573
|
+
try {
|
|
19574
|
+
const result = Bun.spawnSync(["git", "rev-parse", "--short", "HEAD"], {
|
|
19575
|
+
cwd: import.meta.dir,
|
|
19576
|
+
stderr: "ignore"
|
|
19577
|
+
});
|
|
19578
|
+
if (result.exitCode === 0) {
|
|
19579
|
+
const hash2 = result.stdout.toString().trim();
|
|
19580
|
+
if (/^[0-9a-f]{6,10}$/.test(hash2))
|
|
19581
|
+
return hash2;
|
|
19582
|
+
}
|
|
19583
|
+
} catch {}
|
|
19584
|
+
return "dev";
|
|
19585
|
+
})();
|
|
19586
|
+
NAX_BUILD_INFO = NAX_COMMIT === "dev" ? `v${NAX_VERSION}` : `v${NAX_VERSION} (${NAX_COMMIT})`;
|
|
19587
|
+
});
|
|
19588
|
+
|
|
19503
19589
|
// src/prd/types.ts
|
|
19504
19590
|
function getContextFiles(story) {
|
|
19505
19591
|
return story.contextFiles ?? story.relevantFiles ?? [];
|
|
@@ -23594,6 +23680,132 @@ var init_rectification_gate = __esm(() => {
|
|
|
23594
23680
|
init_prompts();
|
|
23595
23681
|
});
|
|
23596
23682
|
|
|
23683
|
+
// src/prompts/sections/conventions.ts
|
|
23684
|
+
function buildConventionsSection() {
|
|
23685
|
+
return `# Conventions
|
|
23686
|
+
|
|
23687
|
+
` + `Follow existing code patterns and conventions. Write idiomatic, maintainable code.
|
|
23688
|
+
|
|
23689
|
+
` + "When running tests, run ONLY test files related to your changes (e.g. `bun test ./test/specific.test.ts`). " + "NEVER run `bun test` without a file filter \u2014 full suite output will flood your context window and cause failures.\n\n" + "Commit your changes when done using conventional commit format (e.g. `feat:`, `fix:`, `test:`).";
|
|
23690
|
+
}
|
|
23691
|
+
|
|
23692
|
+
// src/prompts/sections/isolation.ts
|
|
23693
|
+
function buildIsolationSection(roleOrMode, mode) {
|
|
23694
|
+
if ((roleOrMode === "strict" || roleOrMode === "lite") && mode === undefined) {
|
|
23695
|
+
return buildIsolationSection("test-writer", roleOrMode);
|
|
23696
|
+
}
|
|
23697
|
+
const role = roleOrMode;
|
|
23698
|
+
const header = `# Isolation Rules
|
|
23699
|
+
|
|
23700
|
+
`;
|
|
23701
|
+
const footer = `
|
|
23702
|
+
|
|
23703
|
+
${TEST_FILTER_RULE}`;
|
|
23704
|
+
if (role === "test-writer") {
|
|
23705
|
+
const m = mode ?? "strict";
|
|
23706
|
+
if (m === "strict") {
|
|
23707
|
+
return `${header}isolation scope: Only create or modify files in the test/ directory. Tests must fail because the feature is not yet implemented. Do NOT modify any source files in src/.${footer}`;
|
|
23708
|
+
}
|
|
23709
|
+
return `${header}isolation scope: Create test files in test/. MAY read src/ files and MAY import from src/ to ensure correct types/interfaces. May create minimal stubs in src/ if needed to make imports work, but do NOT implement real logic.${footer}`;
|
|
23710
|
+
}
|
|
23711
|
+
if (role === "implementer") {
|
|
23712
|
+
return `${header}isolation scope: Implement source code in src/ to make tests pass. Do not modify test files. Run tests frequently to track progress.${footer}`;
|
|
23713
|
+
}
|
|
23714
|
+
if (role === "verifier") {
|
|
23715
|
+
return `${header}isolation scope: Read-only inspection. Review all test results, implementation code, and acceptance criteria compliance. You MAY write a verdict file (.nax-verifier-verdict.json) and apply legitimate fixes if needed.${footer}`;
|
|
23716
|
+
}
|
|
23717
|
+
return `${header}isolation scope: Create test files in test/ directory, then implement source code in src/ to make tests pass. Both directories are in scope for this session.${footer}`;
|
|
23718
|
+
}
|
|
23719
|
+
var TEST_FILTER_RULE;
|
|
23720
|
+
var init_isolation2 = __esm(() => {
|
|
23721
|
+
TEST_FILTER_RULE = "When running tests, run ONLY test files related to your changes " + "(e.g. `bun test ./test/specific.test.ts`). NEVER run `bun test` without a file filter " + "\u2014 full suite output will flood your context window and cause failures.";
|
|
23722
|
+
});
|
|
23723
|
+
|
|
23724
|
+
// src/prompts/sections/role-task.ts
|
|
23725
|
+
function buildRoleTaskSection(roleOrVariant, variant) {
|
|
23726
|
+
if ((roleOrVariant === "standard" || roleOrVariant === "lite") && variant === undefined) {
|
|
23727
|
+
return buildRoleTaskSection("implementer", roleOrVariant);
|
|
23728
|
+
}
|
|
23729
|
+
const role = roleOrVariant;
|
|
23730
|
+
if (role === "implementer") {
|
|
23731
|
+
const v = variant ?? "standard";
|
|
23732
|
+
if (v === "standard") {
|
|
23733
|
+
return `# Role: Implementer
|
|
23734
|
+
|
|
23735
|
+
` + `Your task: make failing tests pass.
|
|
23736
|
+
|
|
23737
|
+
` + `Instructions:
|
|
23738
|
+
` + `- Implement source code in src/ to make tests pass
|
|
23739
|
+
` + `- Do NOT modify test files
|
|
23740
|
+
` + `- Run tests frequently to track progress
|
|
23741
|
+
` + `- When all tests are green, stage and commit ALL changed files with: git commit -m 'feat: <description>'
|
|
23742
|
+
` + "- Goal: all tests green, all changes committed";
|
|
23743
|
+
}
|
|
23744
|
+
return `# Role: Implementer (Lite)
|
|
23745
|
+
|
|
23746
|
+
` + `Your task: Write tests AND implement the feature in a single session.
|
|
23747
|
+
|
|
23748
|
+
` + `Instructions:
|
|
23749
|
+
` + `- Write tests first (test/ directory), then implement (src/ directory)
|
|
23750
|
+
` + `- All tests must pass by the end
|
|
23751
|
+
` + `- Use Bun test (describe/test/expect)
|
|
23752
|
+
` + `- When all tests are green, stage and commit ALL changed files with: git commit -m 'feat: <description>'
|
|
23753
|
+
` + "- Goal: all tests green, all criteria met, all changes committed";
|
|
23754
|
+
}
|
|
23755
|
+
if (role === "test-writer") {
|
|
23756
|
+
return `# Role: Test-Writer
|
|
23757
|
+
|
|
23758
|
+
` + `Your task: Write comprehensive failing tests for the feature.
|
|
23759
|
+
|
|
23760
|
+
` + `Instructions:
|
|
23761
|
+
` + `- Create test files in test/ directory that cover acceptance criteria
|
|
23762
|
+
` + `- Tests must fail initially (RED phase) \u2014 the feature is not yet implemented
|
|
23763
|
+
` + `- Use Bun test (describe/test/expect)
|
|
23764
|
+
` + `- Write clear test names that document expected behavior
|
|
23765
|
+
` + `- Focus on behavior, not implementation details
|
|
23766
|
+
` + "- Goal: comprehensive test suite ready for implementation";
|
|
23767
|
+
}
|
|
23768
|
+
if (role === "verifier") {
|
|
23769
|
+
return `# Role: Verifier
|
|
23770
|
+
|
|
23771
|
+
` + `Your task: Review and verify the implementation against acceptance criteria.
|
|
23772
|
+
|
|
23773
|
+
` + `Instructions:
|
|
23774
|
+
` + `- Review all test results \u2014 verify tests pass
|
|
23775
|
+
` + `- Check that implementation meets all acceptance criteria
|
|
23776
|
+
` + `- Inspect code quality, error handling, and edge cases
|
|
23777
|
+
` + `- Verify test modifications (if any) are legitimate fixes
|
|
23778
|
+
` + `- Write a detailed verdict with reasoning
|
|
23779
|
+
` + "- Goal: provide comprehensive verification and quality assurance";
|
|
23780
|
+
}
|
|
23781
|
+
return `# Role: Single-Session
|
|
23782
|
+
|
|
23783
|
+
` + `Your task: Write tests AND implement the feature in a single focused session.
|
|
23784
|
+
|
|
23785
|
+
` + `Instructions:
|
|
23786
|
+
` + `- Phase 1: Write comprehensive tests (test/ directory)
|
|
23787
|
+
` + `- Phase 2: Implement to make all tests pass (src/ directory)
|
|
23788
|
+
` + `- Use Bun test (describe/test/expect)
|
|
23789
|
+
` + `- Run tests frequently throughout implementation
|
|
23790
|
+
` + `- When all tests are green, stage and commit ALL changed files with: git commit -m 'feat: <description>'
|
|
23791
|
+
` + "- Goal: all tests passing, all changes committed, full story complete";
|
|
23792
|
+
}
|
|
23793
|
+
|
|
23794
|
+
// src/prompts/sections/story.ts
|
|
23795
|
+
function buildStorySection(story) {
|
|
23796
|
+
const criteria = story.acceptanceCriteria.map((c, i) => `${i + 1}. ${c}`).join(`
|
|
23797
|
+
`);
|
|
23798
|
+
return `# Story Context
|
|
23799
|
+
|
|
23800
|
+
**Story:** ${story.title}
|
|
23801
|
+
|
|
23802
|
+
**Description:**
|
|
23803
|
+
${story.description}
|
|
23804
|
+
|
|
23805
|
+
**Acceptance Criteria:**
|
|
23806
|
+
${criteria}`;
|
|
23807
|
+
}
|
|
23808
|
+
|
|
23597
23809
|
// src/prompts/loader.ts
|
|
23598
23810
|
var exports_loader = {};
|
|
23599
23811
|
__export(exports_loader, {
|
|
@@ -23667,13 +23879,14 @@ ${this._constitution}`);
|
|
|
23667
23879
|
}
|
|
23668
23880
|
sections.push(await this._resolveRoleBody());
|
|
23669
23881
|
if (this._story) {
|
|
23670
|
-
sections.push(
|
|
23882
|
+
sections.push(buildStorySection(this._story));
|
|
23671
23883
|
}
|
|
23672
|
-
|
|
23884
|
+
const isolation = this._options.isolation;
|
|
23885
|
+
sections.push(buildIsolationSection(this._role, isolation));
|
|
23673
23886
|
if (this._contextMd) {
|
|
23674
23887
|
sections.push(this._contextMd);
|
|
23675
23888
|
}
|
|
23676
|
-
sections.push(
|
|
23889
|
+
sections.push(buildConventionsSection());
|
|
23677
23890
|
return sections.join(SECTION_SEP);
|
|
23678
23891
|
}
|
|
23679
23892
|
async _resolveRoleBody() {
|
|
@@ -23692,78 +23905,17 @@ ${this._constitution}`);
|
|
|
23692
23905
|
}
|
|
23693
23906
|
} catch {}
|
|
23694
23907
|
}
|
|
23695
|
-
|
|
23696
|
-
|
|
23697
|
-
}
|
|
23698
|
-
function buildDefaultRoleBody(role, title = "", options = {}) {
|
|
23699
|
-
const variant = options.variant;
|
|
23700
|
-
switch (role) {
|
|
23701
|
-
case "test-writer":
|
|
23702
|
-
return `# Test Writer \u2014 "${title}"
|
|
23703
|
-
|
|
23704
|
-
Your role: Write failing tests ONLY. Do NOT implement any source code.`;
|
|
23705
|
-
case "implementer":
|
|
23706
|
-
if (variant === "lite") {
|
|
23707
|
-
return `# Implementer (Lite) \u2014 "${title}"
|
|
23708
|
-
|
|
23709
|
-
Your role: Write tests AND implement the feature in a single session.`;
|
|
23710
|
-
}
|
|
23711
|
-
return `# Implementer \u2014 "${title}"
|
|
23712
|
-
|
|
23713
|
-
Your role: Make all failing tests pass.`;
|
|
23714
|
-
case "verifier":
|
|
23715
|
-
return `# Verifier \u2014 "${title}"
|
|
23716
|
-
|
|
23717
|
-
Your role: Verify the implementation and tests.`;
|
|
23718
|
-
case "single-session":
|
|
23719
|
-
return `# Task \u2014 "${title}"
|
|
23720
|
-
|
|
23721
|
-
Your role: Write tests AND implement the feature in a single session.`;
|
|
23722
|
-
}
|
|
23723
|
-
}
|
|
23724
|
-
function buildStoryContext2(story) {
|
|
23725
|
-
return `# Story Context
|
|
23726
|
-
|
|
23727
|
-
**Story:** ${story.title}
|
|
23728
|
-
|
|
23729
|
-
**Description:**
|
|
23730
|
-
${story.description}
|
|
23731
|
-
|
|
23732
|
-
**Acceptance Criteria:**
|
|
23733
|
-
${story.acceptanceCriteria.map((c, i) => `${i + 1}. ${c}`).join(`
|
|
23734
|
-
`)}`;
|
|
23735
|
-
}
|
|
23736
|
-
function buildIsolationRules(role, options = {}) {
|
|
23737
|
-
const header = `# Isolation Rules
|
|
23738
|
-
|
|
23739
|
-
`;
|
|
23740
|
-
const footer = `
|
|
23741
|
-
|
|
23742
|
-
${TEST_FILTER_RULE}`;
|
|
23743
|
-
const isolation = options.isolation;
|
|
23744
|
-
switch (role) {
|
|
23745
|
-
case "test-writer":
|
|
23746
|
-
if (isolation === "lite") {
|
|
23747
|
-
return `${header}isolation scope: Primarily create test files in the test/ directory. You MAY read source files and MAY import from source files to ensure correct types/interfaces. Stub-only src/ files are allowed (empty exports, no logic). Tests must fail for the right reasons (feature not implemented).${footer}`;
|
|
23748
|
-
}
|
|
23749
|
-
return `${header}isolation scope: Only create or modify files in the test/ directory. Tests must fail because the feature is not yet implemented. Do NOT modify any source files in src/.${footer}`;
|
|
23750
|
-
case "implementer":
|
|
23751
|
-
return `${header}isolation scope: Implement source code in src/ to make the tests pass. Do NOT modify test files. Run tests frequently to track progress.${footer}`;
|
|
23752
|
-
case "verifier":
|
|
23753
|
-
return `${header}isolation scope: Verify and fix only \u2014 do not change behaviour unless it violates acceptance criteria. Ensure all tests pass and all criteria are met.${footer}`;
|
|
23754
|
-
case "single-session":
|
|
23755
|
-
return `${header}isolation scope: Write tests first (test/ directory), then implement (src/ directory). All tests must pass by the end.${footer}`;
|
|
23908
|
+
const variant = this._options.variant;
|
|
23909
|
+
return buildRoleTaskSection(this._role, variant);
|
|
23756
23910
|
}
|
|
23757
23911
|
}
|
|
23758
23912
|
var SECTION_SEP = `
|
|
23759
23913
|
|
|
23760
23914
|
---
|
|
23761
23915
|
|
|
23762
|
-
|
|
23763
|
-
|
|
23764
|
-
Follow existing code patterns and conventions. Write idiomatic, maintainable code. Commit your changes when done.`;
|
|
23916
|
+
`;
|
|
23765
23917
|
var init_builder3 = __esm(() => {
|
|
23766
|
-
|
|
23918
|
+
init_isolation2();
|
|
23767
23919
|
});
|
|
23768
23920
|
|
|
23769
23921
|
// src/prompts/index.ts
|
|
@@ -27686,92 +27838,6 @@ var init_escalation = __esm(() => {
|
|
|
27686
27838
|
init_tier_escalation();
|
|
27687
27839
|
});
|
|
27688
27840
|
|
|
27689
|
-
// package.json
|
|
27690
|
-
var package_default;
|
|
27691
|
-
var init_package = __esm(() => {
|
|
27692
|
-
package_default = {
|
|
27693
|
-
name: "@nathapp/nax",
|
|
27694
|
-
version: "0.29.0",
|
|
27695
|
-
description: "AI Coding Agent Orchestrator \u2014 loops until done",
|
|
27696
|
-
type: "module",
|
|
27697
|
-
bin: {
|
|
27698
|
-
nax: "./dist/nax.js"
|
|
27699
|
-
},
|
|
27700
|
-
scripts: {
|
|
27701
|
-
prepare: "git config core.hooksPath .githooks",
|
|
27702
|
-
dev: "bun run bin/nax.ts",
|
|
27703
|
-
build: 'bun build bin/nax.ts --outdir dist --target bun --define "GIT_COMMIT=\\"$(git rev-parse --short HEAD)\\""',
|
|
27704
|
-
typecheck: "bun x tsc --noEmit",
|
|
27705
|
-
lint: "bun x biome check src/ bin/",
|
|
27706
|
-
test: "NAX_SKIP_PRECHECK=1 bun test test/ --timeout=60000",
|
|
27707
|
-
"test:watch": "bun test --watch",
|
|
27708
|
-
"test:unit": "bun test ./test/unit/ --timeout=60000",
|
|
27709
|
-
"test:integration": "bun test ./test/integration/ --timeout=60000",
|
|
27710
|
-
"test:ui": "bun test ./test/ui/ --timeout=60000",
|
|
27711
|
-
prepublishOnly: "bun run build"
|
|
27712
|
-
},
|
|
27713
|
-
dependencies: {
|
|
27714
|
-
"@anthropic-ai/sdk": "^0.74.0",
|
|
27715
|
-
"@types/react": "^19.2.14",
|
|
27716
|
-
chalk: "^5.6.2",
|
|
27717
|
-
commander: "^13.1.0",
|
|
27718
|
-
ink: "^6.7.0",
|
|
27719
|
-
"ink-spinner": "^5.0.0",
|
|
27720
|
-
"ink-testing-library": "^4.0.0",
|
|
27721
|
-
react: "^19.2.4",
|
|
27722
|
-
zod: "^4.3.6"
|
|
27723
|
-
},
|
|
27724
|
-
devDependencies: {
|
|
27725
|
-
"@biomejs/biome": "^1.9.4",
|
|
27726
|
-
"@types/bun": "^1.3.8",
|
|
27727
|
-
"react-devtools-core": "^7.0.1",
|
|
27728
|
-
typescript: "^5.7.3"
|
|
27729
|
-
},
|
|
27730
|
-
license: "MIT",
|
|
27731
|
-
author: "William Khoo",
|
|
27732
|
-
keywords: [
|
|
27733
|
-
"ai",
|
|
27734
|
-
"agent",
|
|
27735
|
-
"orchestrator",
|
|
27736
|
-
"tdd",
|
|
27737
|
-
"coding"
|
|
27738
|
-
],
|
|
27739
|
-
files: [
|
|
27740
|
-
"dist/",
|
|
27741
|
-
"src/",
|
|
27742
|
-
"bin/",
|
|
27743
|
-
"README.md",
|
|
27744
|
-
"CHANGELOG.md"
|
|
27745
|
-
]
|
|
27746
|
-
};
|
|
27747
|
-
});
|
|
27748
|
-
|
|
27749
|
-
// src/version.ts
|
|
27750
|
-
var NAX_VERSION, NAX_COMMIT, NAX_BUILD_INFO;
|
|
27751
|
-
var init_version = __esm(() => {
|
|
27752
|
-
init_package();
|
|
27753
|
-
NAX_VERSION = package_default.version;
|
|
27754
|
-
NAX_COMMIT = (() => {
|
|
27755
|
-
try {
|
|
27756
|
-
if (/^[0-9a-f]{6,10}$/.test("eaa6801"))
|
|
27757
|
-
return "eaa6801";
|
|
27758
|
-
} catch {}
|
|
27759
|
-
try {
|
|
27760
|
-
const result = Bun.spawnSync(["git", "rev-parse", "--short", "HEAD"], {
|
|
27761
|
-
cwd: import.meta.dir,
|
|
27762
|
-
stderr: "ignore"
|
|
27763
|
-
});
|
|
27764
|
-
if (result.exitCode === 0) {
|
|
27765
|
-
const hash2 = result.stdout.toString().trim();
|
|
27766
|
-
if (/^[0-9a-f]{6,10}$/.test(hash2))
|
|
27767
|
-
return hash2;
|
|
27768
|
-
}
|
|
27769
|
-
} catch {}
|
|
27770
|
-
return "dev";
|
|
27771
|
-
})();
|
|
27772
|
-
NAX_BUILD_INFO = NAX_COMMIT === "dev" ? `v${NAX_VERSION}` : `v${NAX_VERSION} (${NAX_COMMIT})`;
|
|
27773
|
-
});
|
|
27774
|
-
|
|
27775
27841
|
// src/execution/status-file.ts
|
|
27776
27842
|
import { rename, unlink as unlink2 } from "fs/promises";
|
|
27777
27843
|
import { resolve as resolve8 } from "path";
|
|
@@ -28322,16 +28388,14 @@ __export(exports_headless_formatter, {
|
|
|
28322
28388
|
outputRunHeader: () => outputRunHeader,
|
|
28323
28389
|
outputRunFooter: () => outputRunFooter
|
|
28324
28390
|
});
|
|
28325
|
-
import path15 from "path";
|
|
28326
28391
|
async function outputRunHeader(options) {
|
|
28327
28392
|
const { feature, totalStories, pendingStories, workdir, formatterMode } = options;
|
|
28328
28393
|
if (formatterMode === "json") {
|
|
28329
28394
|
return;
|
|
28330
28395
|
}
|
|
28331
|
-
const pkg = await Bun.file(path15.join(import.meta.dir, "..", "..", "..", "package.json")).json();
|
|
28332
28396
|
console.log("");
|
|
28333
28397
|
console.log(source_default.bold(source_default.blue("\u2550".repeat(60))));
|
|
28334
|
-
console.log(source_default.bold(source_default.blue(` \u25B6 NAX v${
|
|
28398
|
+
console.log(source_default.bold(source_default.blue(` \u25B6 NAX v${NAX_VERSION} \u2014 RUN STARTED`)));
|
|
28335
28399
|
console.log(source_default.blue("\u2550".repeat(60)));
|
|
28336
28400
|
console.log(` ${source_default.gray("Feature:")} ${source_default.cyan(feature)}`);
|
|
28337
28401
|
console.log(` ${source_default.gray("Stories:")} ${source_default.cyan(`${totalStories} total, ${pendingStories} pending`)}`);
|
|
@@ -28363,6 +28427,7 @@ function outputRunFooter(options) {
|
|
|
28363
28427
|
var init_headless_formatter = __esm(() => {
|
|
28364
28428
|
init_source();
|
|
28365
28429
|
init_logging();
|
|
28430
|
+
init_version();
|
|
28366
28431
|
});
|
|
28367
28432
|
|
|
28368
28433
|
// src/worktree/manager.ts
|
|
@@ -29031,7 +29096,7 @@ __export(exports_parallel_executor, {
|
|
|
29031
29096
|
runParallelExecution: () => runParallelExecution
|
|
29032
29097
|
});
|
|
29033
29098
|
import * as os5 from "os";
|
|
29034
|
-
import
|
|
29099
|
+
import path15 from "path";
|
|
29035
29100
|
async function runParallelExecution(options, initialPrd) {
|
|
29036
29101
|
const logger = getSafeLogger();
|
|
29037
29102
|
const {
|
|
@@ -29070,7 +29135,7 @@ async function runParallelExecution(options, initialPrd) {
|
|
|
29070
29135
|
maxConcurrency,
|
|
29071
29136
|
activeStories: readyStories.map((s) => ({
|
|
29072
29137
|
storyId: s.id,
|
|
29073
|
-
worktreePath:
|
|
29138
|
+
worktreePath: path15.join(workdir, ".nax-wt", s.id)
|
|
29074
29139
|
}))
|
|
29075
29140
|
}
|
|
29076
29141
|
});
|
|
@@ -29958,11 +30023,11 @@ var exports_acceptance_loop = {};
|
|
|
29958
30023
|
__export(exports_acceptance_loop, {
|
|
29959
30024
|
runAcceptanceLoop: () => runAcceptanceLoop
|
|
29960
30025
|
});
|
|
29961
|
-
import
|
|
30026
|
+
import path16 from "path";
|
|
29962
30027
|
async function loadSpecContent(featureDir) {
|
|
29963
30028
|
if (!featureDir)
|
|
29964
30029
|
return "";
|
|
29965
|
-
const specPath =
|
|
30030
|
+
const specPath = path16.join(featureDir, "spec.md");
|
|
29966
30031
|
const specFile = Bun.file(specPath);
|
|
29967
30032
|
return await specFile.exists() ? await specFile.text() : "";
|
|
29968
30033
|
}
|
|
@@ -31783,11 +31848,11 @@ var require_react_reconciler_development = __commonJS((exports, module) => {
|
|
|
31783
31848
|
fiber = fiber.next, id--;
|
|
31784
31849
|
return fiber;
|
|
31785
31850
|
}
|
|
31786
|
-
function copyWithSetImpl(obj,
|
|
31787
|
-
if (index >=
|
|
31851
|
+
function copyWithSetImpl(obj, path17, index, value) {
|
|
31852
|
+
if (index >= path17.length)
|
|
31788
31853
|
return value;
|
|
31789
|
-
var key =
|
|
31790
|
-
updated[key] = copyWithSetImpl(obj[key],
|
|
31854
|
+
var key = path17[index], updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
|
|
31855
|
+
updated[key] = copyWithSetImpl(obj[key], path17, index + 1, value);
|
|
31791
31856
|
return updated;
|
|
31792
31857
|
}
|
|
31793
31858
|
function copyWithRename(obj, oldPath, newPath) {
|
|
@@ -31807,11 +31872,11 @@ var require_react_reconciler_development = __commonJS((exports, module) => {
|
|
|
31807
31872
|
index + 1 === oldPath.length ? (updated[newPath[index]] = updated[oldKey], isArrayImpl(updated) ? updated.splice(oldKey, 1) : delete updated[oldKey]) : updated[oldKey] = copyWithRenameImpl(obj[oldKey], oldPath, newPath, index + 1);
|
|
31808
31873
|
return updated;
|
|
31809
31874
|
}
|
|
31810
|
-
function copyWithDeleteImpl(obj,
|
|
31811
|
-
var key =
|
|
31812
|
-
if (index + 1 ===
|
|
31875
|
+
function copyWithDeleteImpl(obj, path17, index) {
|
|
31876
|
+
var key = path17[index], updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
|
|
31877
|
+
if (index + 1 === path17.length)
|
|
31813
31878
|
return isArrayImpl(updated) ? updated.splice(key, 1) : delete updated[key], updated;
|
|
31814
|
-
updated[key] = copyWithDeleteImpl(obj[key],
|
|
31879
|
+
updated[key] = copyWithDeleteImpl(obj[key], path17, index + 1);
|
|
31815
31880
|
return updated;
|
|
31816
31881
|
}
|
|
31817
31882
|
function shouldSuspendImpl() {
|
|
@@ -41834,29 +41899,29 @@ Check the top-level render call using <` + componentName2 + ">.");
|
|
|
41834
41899
|
var didWarnAboutNestedUpdates = false;
|
|
41835
41900
|
var didWarnAboutFindNodeInStrictMode = {};
|
|
41836
41901
|
var overrideHookState = null, overrideHookStateDeletePath = null, overrideHookStateRenamePath = null, overrideProps = null, overridePropsDeletePath = null, overridePropsRenamePath = null, scheduleUpdate = null, scheduleRetry = null, setErrorHandler = null, setSuspenseHandler = null;
|
|
41837
|
-
overrideHookState = function(fiber, id,
|
|
41902
|
+
overrideHookState = function(fiber, id, path17, value) {
|
|
41838
41903
|
id = findHook(fiber, id);
|
|
41839
|
-
id !== null && (
|
|
41904
|
+
id !== null && (path17 = copyWithSetImpl(id.memoizedState, path17, 0, value), id.memoizedState = path17, id.baseState = path17, fiber.memoizedProps = assign({}, fiber.memoizedProps), path17 = enqueueConcurrentRenderForLane(fiber, 2), path17 !== null && scheduleUpdateOnFiber(path17, fiber, 2));
|
|
41840
41905
|
};
|
|
41841
|
-
overrideHookStateDeletePath = function(fiber, id,
|
|
41906
|
+
overrideHookStateDeletePath = function(fiber, id, path17) {
|
|
41842
41907
|
id = findHook(fiber, id);
|
|
41843
|
-
id !== null && (
|
|
41908
|
+
id !== null && (path17 = copyWithDeleteImpl(id.memoizedState, path17, 0), id.memoizedState = path17, id.baseState = path17, fiber.memoizedProps = assign({}, fiber.memoizedProps), path17 = enqueueConcurrentRenderForLane(fiber, 2), path17 !== null && scheduleUpdateOnFiber(path17, fiber, 2));
|
|
41844
41909
|
};
|
|
41845
41910
|
overrideHookStateRenamePath = function(fiber, id, oldPath, newPath) {
|
|
41846
41911
|
id = findHook(fiber, id);
|
|
41847
41912
|
id !== null && (oldPath = copyWithRename(id.memoizedState, oldPath, newPath), id.memoizedState = oldPath, id.baseState = oldPath, fiber.memoizedProps = assign({}, fiber.memoizedProps), oldPath = enqueueConcurrentRenderForLane(fiber, 2), oldPath !== null && scheduleUpdateOnFiber(oldPath, fiber, 2));
|
|
41848
41913
|
};
|
|
41849
|
-
overrideProps = function(fiber,
|
|
41850
|
-
fiber.pendingProps = copyWithSetImpl(fiber.memoizedProps,
|
|
41914
|
+
overrideProps = function(fiber, path17, value) {
|
|
41915
|
+
fiber.pendingProps = copyWithSetImpl(fiber.memoizedProps, path17, 0, value);
|
|
41851
41916
|
fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
|
|
41852
|
-
|
|
41853
|
-
|
|
41917
|
+
path17 = enqueueConcurrentRenderForLane(fiber, 2);
|
|
41918
|
+
path17 !== null && scheduleUpdateOnFiber(path17, fiber, 2);
|
|
41854
41919
|
};
|
|
41855
|
-
overridePropsDeletePath = function(fiber,
|
|
41856
|
-
fiber.pendingProps = copyWithDeleteImpl(fiber.memoizedProps,
|
|
41920
|
+
overridePropsDeletePath = function(fiber, path17) {
|
|
41921
|
+
fiber.pendingProps = copyWithDeleteImpl(fiber.memoizedProps, path17, 0);
|
|
41857
41922
|
fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
|
|
41858
|
-
|
|
41859
|
-
|
|
41923
|
+
path17 = enqueueConcurrentRenderForLane(fiber, 2);
|
|
41924
|
+
path17 !== null && scheduleUpdateOnFiber(path17, fiber, 2);
|
|
41860
41925
|
};
|
|
41861
41926
|
overridePropsRenamePath = function(fiber, oldPath, newPath) {
|
|
41862
41927
|
fiber.pendingProps = copyWithRename(fiber.memoizedProps, oldPath, newPath);
|
|
@@ -45911,8 +45976,8 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
45911
45976
|
}
|
|
45912
45977
|
return false;
|
|
45913
45978
|
}
|
|
45914
|
-
function utils_getInObject(object2,
|
|
45915
|
-
return
|
|
45979
|
+
function utils_getInObject(object2, path17) {
|
|
45980
|
+
return path17.reduce(function(reduced, attr) {
|
|
45916
45981
|
if (reduced) {
|
|
45917
45982
|
if (utils_hasOwnProperty.call(reduced, attr)) {
|
|
45918
45983
|
return reduced[attr];
|
|
@@ -45924,11 +45989,11 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
45924
45989
|
return null;
|
|
45925
45990
|
}, object2);
|
|
45926
45991
|
}
|
|
45927
|
-
function deletePathInObject(object2,
|
|
45928
|
-
var length =
|
|
45929
|
-
var last =
|
|
45992
|
+
function deletePathInObject(object2, path17) {
|
|
45993
|
+
var length = path17.length;
|
|
45994
|
+
var last = path17[length - 1];
|
|
45930
45995
|
if (object2 != null) {
|
|
45931
|
-
var parent = utils_getInObject(object2,
|
|
45996
|
+
var parent = utils_getInObject(object2, path17.slice(0, length - 1));
|
|
45932
45997
|
if (parent) {
|
|
45933
45998
|
if (src_isArray(parent)) {
|
|
45934
45999
|
parent.splice(last, 1);
|
|
@@ -45954,11 +46019,11 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
45954
46019
|
}
|
|
45955
46020
|
}
|
|
45956
46021
|
}
|
|
45957
|
-
function utils_setInObject(object2,
|
|
45958
|
-
var length =
|
|
45959
|
-
var last =
|
|
46022
|
+
function utils_setInObject(object2, path17, value) {
|
|
46023
|
+
var length = path17.length;
|
|
46024
|
+
var last = path17[length - 1];
|
|
45960
46025
|
if (object2 != null) {
|
|
45961
|
-
var parent = utils_getInObject(object2,
|
|
46026
|
+
var parent = utils_getInObject(object2, path17.slice(0, length - 1));
|
|
45962
46027
|
if (parent) {
|
|
45963
46028
|
parent[last] = value;
|
|
45964
46029
|
}
|
|
@@ -46489,8 +46554,8 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46489
46554
|
unserializable: Symbol("unserializable")
|
|
46490
46555
|
};
|
|
46491
46556
|
var LEVEL_THRESHOLD = 2;
|
|
46492
|
-
function createDehydrated(type, inspectable, data, cleaned,
|
|
46493
|
-
cleaned.push(
|
|
46557
|
+
function createDehydrated(type, inspectable, data, cleaned, path17) {
|
|
46558
|
+
cleaned.push(path17);
|
|
46494
46559
|
var dehydrated = {
|
|
46495
46560
|
inspectable,
|
|
46496
46561
|
type,
|
|
@@ -46508,13 +46573,13 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46508
46573
|
}
|
|
46509
46574
|
return dehydrated;
|
|
46510
46575
|
}
|
|
46511
|
-
function dehydrate(data, cleaned, unserializable,
|
|
46576
|
+
function dehydrate(data, cleaned, unserializable, path17, isPathAllowed) {
|
|
46512
46577
|
var level = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;
|
|
46513
46578
|
var type = getDataType(data);
|
|
46514
46579
|
var isPathAllowedCheck;
|
|
46515
46580
|
switch (type) {
|
|
46516
46581
|
case "html_element":
|
|
46517
|
-
cleaned.push(
|
|
46582
|
+
cleaned.push(path17);
|
|
46518
46583
|
return {
|
|
46519
46584
|
inspectable: false,
|
|
46520
46585
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46523,7 +46588,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46523
46588
|
type
|
|
46524
46589
|
};
|
|
46525
46590
|
case "function":
|
|
46526
|
-
cleaned.push(
|
|
46591
|
+
cleaned.push(path17);
|
|
46527
46592
|
return {
|
|
46528
46593
|
inspectable: false,
|
|
46529
46594
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46532,14 +46597,14 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46532
46597
|
type
|
|
46533
46598
|
};
|
|
46534
46599
|
case "string":
|
|
46535
|
-
isPathAllowedCheck = isPathAllowed(
|
|
46600
|
+
isPathAllowedCheck = isPathAllowed(path17);
|
|
46536
46601
|
if (isPathAllowedCheck) {
|
|
46537
46602
|
return data;
|
|
46538
46603
|
} else {
|
|
46539
46604
|
return data.length <= 500 ? data : data.slice(0, 500) + "...";
|
|
46540
46605
|
}
|
|
46541
46606
|
case "bigint":
|
|
46542
|
-
cleaned.push(
|
|
46607
|
+
cleaned.push(path17);
|
|
46543
46608
|
return {
|
|
46544
46609
|
inspectable: false,
|
|
46545
46610
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46548,7 +46613,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46548
46613
|
type
|
|
46549
46614
|
};
|
|
46550
46615
|
case "symbol":
|
|
46551
|
-
cleaned.push(
|
|
46616
|
+
cleaned.push(path17);
|
|
46552
46617
|
return {
|
|
46553
46618
|
inspectable: false,
|
|
46554
46619
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46557,9 +46622,9 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46557
46622
|
type
|
|
46558
46623
|
};
|
|
46559
46624
|
case "react_element": {
|
|
46560
|
-
isPathAllowedCheck = isPathAllowed(
|
|
46625
|
+
isPathAllowedCheck = isPathAllowed(path17);
|
|
46561
46626
|
if (level >= LEVEL_THRESHOLD && !isPathAllowedCheck) {
|
|
46562
|
-
cleaned.push(
|
|
46627
|
+
cleaned.push(path17);
|
|
46563
46628
|
return {
|
|
46564
46629
|
inspectable: true,
|
|
46565
46630
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46576,19 +46641,19 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46576
46641
|
preview_long: formatDataForPreview(data, true),
|
|
46577
46642
|
name: getDisplayNameForReactElement(data) || "Unknown"
|
|
46578
46643
|
};
|
|
46579
|
-
unserializableValue.key = dehydrate(data.key, cleaned, unserializable,
|
|
46644
|
+
unserializableValue.key = dehydrate(data.key, cleaned, unserializable, path17.concat(["key"]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46580
46645
|
if (data.$$typeof === REACT_LEGACY_ELEMENT_TYPE) {
|
|
46581
|
-
unserializableValue.ref = dehydrate(data.ref, cleaned, unserializable,
|
|
46646
|
+
unserializableValue.ref = dehydrate(data.ref, cleaned, unserializable, path17.concat(["ref"]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46582
46647
|
}
|
|
46583
|
-
unserializableValue.props = dehydrate(data.props, cleaned, unserializable,
|
|
46584
|
-
unserializable.push(
|
|
46648
|
+
unserializableValue.props = dehydrate(data.props, cleaned, unserializable, path17.concat(["props"]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46649
|
+
unserializable.push(path17);
|
|
46585
46650
|
return unserializableValue;
|
|
46586
46651
|
}
|
|
46587
46652
|
case "react_lazy": {
|
|
46588
|
-
isPathAllowedCheck = isPathAllowed(
|
|
46653
|
+
isPathAllowedCheck = isPathAllowed(path17);
|
|
46589
46654
|
var payload = data._payload;
|
|
46590
46655
|
if (level >= LEVEL_THRESHOLD && !isPathAllowedCheck) {
|
|
46591
|
-
cleaned.push(
|
|
46656
|
+
cleaned.push(path17);
|
|
46592
46657
|
var inspectable = payload !== null && hydration_typeof(payload) === "object" && (payload._status === 1 || payload._status === 2 || payload.status === "fulfilled" || payload.status === "rejected");
|
|
46593
46658
|
return {
|
|
46594
46659
|
inspectable,
|
|
@@ -46605,13 +46670,13 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46605
46670
|
preview_long: formatDataForPreview(data, true),
|
|
46606
46671
|
name: "lazy()"
|
|
46607
46672
|
};
|
|
46608
|
-
_unserializableValue._payload = dehydrate(payload, cleaned, unserializable,
|
|
46609
|
-
unserializable.push(
|
|
46673
|
+
_unserializableValue._payload = dehydrate(payload, cleaned, unserializable, path17.concat(["_payload"]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46674
|
+
unserializable.push(path17);
|
|
46610
46675
|
return _unserializableValue;
|
|
46611
46676
|
}
|
|
46612
46677
|
case "array_buffer":
|
|
46613
46678
|
case "data_view":
|
|
46614
|
-
cleaned.push(
|
|
46679
|
+
cleaned.push(path17);
|
|
46615
46680
|
return {
|
|
46616
46681
|
inspectable: false,
|
|
46617
46682
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46621,21 +46686,21 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46621
46686
|
type
|
|
46622
46687
|
};
|
|
46623
46688
|
case "array":
|
|
46624
|
-
isPathAllowedCheck = isPathAllowed(
|
|
46689
|
+
isPathAllowedCheck = isPathAllowed(path17);
|
|
46625
46690
|
if (level >= LEVEL_THRESHOLD && !isPathAllowedCheck) {
|
|
46626
|
-
return createDehydrated(type, true, data, cleaned,
|
|
46691
|
+
return createDehydrated(type, true, data, cleaned, path17);
|
|
46627
46692
|
}
|
|
46628
46693
|
var arr = [];
|
|
46629
46694
|
for (var i = 0;i < data.length; i++) {
|
|
46630
|
-
arr[i] = dehydrateKey(data, i, cleaned, unserializable,
|
|
46695
|
+
arr[i] = dehydrateKey(data, i, cleaned, unserializable, path17.concat([i]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46631
46696
|
}
|
|
46632
46697
|
return arr;
|
|
46633
46698
|
case "html_all_collection":
|
|
46634
46699
|
case "typed_array":
|
|
46635
46700
|
case "iterator":
|
|
46636
|
-
isPathAllowedCheck = isPathAllowed(
|
|
46701
|
+
isPathAllowedCheck = isPathAllowed(path17);
|
|
46637
46702
|
if (level >= LEVEL_THRESHOLD && !isPathAllowedCheck) {
|
|
46638
|
-
return createDehydrated(type, true, data, cleaned,
|
|
46703
|
+
return createDehydrated(type, true, data, cleaned, path17);
|
|
46639
46704
|
} else {
|
|
46640
46705
|
var _unserializableValue2 = {
|
|
46641
46706
|
unserializable: true,
|
|
@@ -46647,13 +46712,13 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46647
46712
|
name: typeof data.constructor !== "function" || typeof data.constructor.name !== "string" || data.constructor.name === "Object" ? "" : data.constructor.name
|
|
46648
46713
|
};
|
|
46649
46714
|
Array.from(data).forEach(function(item, i2) {
|
|
46650
|
-
return _unserializableValue2[i2] = dehydrate(item, cleaned, unserializable,
|
|
46715
|
+
return _unserializableValue2[i2] = dehydrate(item, cleaned, unserializable, path17.concat([i2]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46651
46716
|
});
|
|
46652
|
-
unserializable.push(
|
|
46717
|
+
unserializable.push(path17);
|
|
46653
46718
|
return _unserializableValue2;
|
|
46654
46719
|
}
|
|
46655
46720
|
case "opaque_iterator":
|
|
46656
|
-
cleaned.push(
|
|
46721
|
+
cleaned.push(path17);
|
|
46657
46722
|
return {
|
|
46658
46723
|
inspectable: false,
|
|
46659
46724
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46662,7 +46727,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46662
46727
|
type
|
|
46663
46728
|
};
|
|
46664
46729
|
case "date":
|
|
46665
|
-
cleaned.push(
|
|
46730
|
+
cleaned.push(path17);
|
|
46666
46731
|
return {
|
|
46667
46732
|
inspectable: false,
|
|
46668
46733
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46671,7 +46736,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46671
46736
|
type
|
|
46672
46737
|
};
|
|
46673
46738
|
case "regexp":
|
|
46674
|
-
cleaned.push(
|
|
46739
|
+
cleaned.push(path17);
|
|
46675
46740
|
return {
|
|
46676
46741
|
inspectable: false,
|
|
46677
46742
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46680,9 +46745,9 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46680
46745
|
type
|
|
46681
46746
|
};
|
|
46682
46747
|
case "thenable":
|
|
46683
|
-
isPathAllowedCheck = isPathAllowed(
|
|
46748
|
+
isPathAllowedCheck = isPathAllowed(path17);
|
|
46684
46749
|
if (level >= LEVEL_THRESHOLD && !isPathAllowedCheck) {
|
|
46685
|
-
cleaned.push(
|
|
46750
|
+
cleaned.push(path17);
|
|
46686
46751
|
return {
|
|
46687
46752
|
inspectable: data.status === "fulfilled" || data.status === "rejected",
|
|
46688
46753
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46703,8 +46768,8 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46703
46768
|
preview_long: formatDataForPreview(data, true),
|
|
46704
46769
|
name: "fulfilled Thenable"
|
|
46705
46770
|
};
|
|
46706
|
-
_unserializableValue3.value = dehydrate(data.value, cleaned, unserializable,
|
|
46707
|
-
unserializable.push(
|
|
46771
|
+
_unserializableValue3.value = dehydrate(data.value, cleaned, unserializable, path17.concat(["value"]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46772
|
+
unserializable.push(path17);
|
|
46708
46773
|
return _unserializableValue3;
|
|
46709
46774
|
}
|
|
46710
46775
|
case "rejected": {
|
|
@@ -46715,12 +46780,12 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46715
46780
|
preview_long: formatDataForPreview(data, true),
|
|
46716
46781
|
name: "rejected Thenable"
|
|
46717
46782
|
};
|
|
46718
|
-
_unserializableValue4.reason = dehydrate(data.reason, cleaned, unserializable,
|
|
46719
|
-
unserializable.push(
|
|
46783
|
+
_unserializableValue4.reason = dehydrate(data.reason, cleaned, unserializable, path17.concat(["reason"]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46784
|
+
unserializable.push(path17);
|
|
46720
46785
|
return _unserializableValue4;
|
|
46721
46786
|
}
|
|
46722
46787
|
default:
|
|
46723
|
-
cleaned.push(
|
|
46788
|
+
cleaned.push(path17);
|
|
46724
46789
|
return {
|
|
46725
46790
|
inspectable: false,
|
|
46726
46791
|
preview_short: formatDataForPreview(data, false),
|
|
@@ -46730,21 +46795,21 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46730
46795
|
};
|
|
46731
46796
|
}
|
|
46732
46797
|
case "object":
|
|
46733
|
-
isPathAllowedCheck = isPathAllowed(
|
|
46798
|
+
isPathAllowedCheck = isPathAllowed(path17);
|
|
46734
46799
|
if (level >= LEVEL_THRESHOLD && !isPathAllowedCheck) {
|
|
46735
|
-
return createDehydrated(type, true, data, cleaned,
|
|
46800
|
+
return createDehydrated(type, true, data, cleaned, path17);
|
|
46736
46801
|
} else {
|
|
46737
46802
|
var object2 = {};
|
|
46738
46803
|
getAllEnumerableKeys(data).forEach(function(key) {
|
|
46739
46804
|
var name = key.toString();
|
|
46740
|
-
object2[name] = dehydrateKey(data, key, cleaned, unserializable,
|
|
46805
|
+
object2[name] = dehydrateKey(data, key, cleaned, unserializable, path17.concat([name]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46741
46806
|
});
|
|
46742
46807
|
return object2;
|
|
46743
46808
|
}
|
|
46744
46809
|
case "class_instance": {
|
|
46745
|
-
isPathAllowedCheck = isPathAllowed(
|
|
46810
|
+
isPathAllowedCheck = isPathAllowed(path17);
|
|
46746
46811
|
if (level >= LEVEL_THRESHOLD && !isPathAllowedCheck) {
|
|
46747
|
-
return createDehydrated(type, true, data, cleaned,
|
|
46812
|
+
return createDehydrated(type, true, data, cleaned, path17);
|
|
46748
46813
|
}
|
|
46749
46814
|
var value = {
|
|
46750
46815
|
unserializable: true,
|
|
@@ -46756,15 +46821,15 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46756
46821
|
};
|
|
46757
46822
|
getAllEnumerableKeys(data).forEach(function(key) {
|
|
46758
46823
|
var keyAsString = key.toString();
|
|
46759
|
-
value[keyAsString] = dehydrate(data[key], cleaned, unserializable,
|
|
46824
|
+
value[keyAsString] = dehydrate(data[key], cleaned, unserializable, path17.concat([keyAsString]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46760
46825
|
});
|
|
46761
|
-
unserializable.push(
|
|
46826
|
+
unserializable.push(path17);
|
|
46762
46827
|
return value;
|
|
46763
46828
|
}
|
|
46764
46829
|
case "error": {
|
|
46765
|
-
isPathAllowedCheck = isPathAllowed(
|
|
46830
|
+
isPathAllowedCheck = isPathAllowed(path17);
|
|
46766
46831
|
if (level >= LEVEL_THRESHOLD && !isPathAllowedCheck) {
|
|
46767
|
-
return createDehydrated(type, true, data, cleaned,
|
|
46832
|
+
return createDehydrated(type, true, data, cleaned, path17);
|
|
46768
46833
|
}
|
|
46769
46834
|
var _value = {
|
|
46770
46835
|
unserializable: true,
|
|
@@ -46774,22 +46839,22 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46774
46839
|
preview_long: formatDataForPreview(data, true),
|
|
46775
46840
|
name: data.name
|
|
46776
46841
|
};
|
|
46777
|
-
_value.message = dehydrate(data.message, cleaned, unserializable,
|
|
46778
|
-
_value.stack = dehydrate(data.stack, cleaned, unserializable,
|
|
46842
|
+
_value.message = dehydrate(data.message, cleaned, unserializable, path17.concat(["message"]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46843
|
+
_value.stack = dehydrate(data.stack, cleaned, unserializable, path17.concat(["stack"]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46779
46844
|
if ("cause" in data) {
|
|
46780
|
-
_value.cause = dehydrate(data.cause, cleaned, unserializable,
|
|
46845
|
+
_value.cause = dehydrate(data.cause, cleaned, unserializable, path17.concat(["cause"]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46781
46846
|
}
|
|
46782
46847
|
getAllEnumerableKeys(data).forEach(function(key) {
|
|
46783
46848
|
var keyAsString = key.toString();
|
|
46784
|
-
_value[keyAsString] = dehydrate(data[key], cleaned, unserializable,
|
|
46849
|
+
_value[keyAsString] = dehydrate(data[key], cleaned, unserializable, path17.concat([keyAsString]), isPathAllowed, isPathAllowedCheck ? 1 : level + 1);
|
|
46785
46850
|
});
|
|
46786
|
-
unserializable.push(
|
|
46851
|
+
unserializable.push(path17);
|
|
46787
46852
|
return _value;
|
|
46788
46853
|
}
|
|
46789
46854
|
case "infinity":
|
|
46790
46855
|
case "nan":
|
|
46791
46856
|
case "undefined":
|
|
46792
|
-
cleaned.push(
|
|
46857
|
+
cleaned.push(path17);
|
|
46793
46858
|
return {
|
|
46794
46859
|
type
|
|
46795
46860
|
};
|
|
@@ -46797,10 +46862,10 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46797
46862
|
return data;
|
|
46798
46863
|
}
|
|
46799
46864
|
}
|
|
46800
|
-
function dehydrateKey(parent, key, cleaned, unserializable,
|
|
46865
|
+
function dehydrateKey(parent, key, cleaned, unserializable, path17, isPathAllowed) {
|
|
46801
46866
|
var level = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 0;
|
|
46802
46867
|
try {
|
|
46803
|
-
return dehydrate(parent[key], cleaned, unserializable,
|
|
46868
|
+
return dehydrate(parent[key], cleaned, unserializable, path17, isPathAllowed, level);
|
|
46804
46869
|
} catch (error48) {
|
|
46805
46870
|
var preview = "";
|
|
46806
46871
|
if (hydration_typeof(error48) === "object" && error48 !== null && typeof error48.stack === "string") {
|
|
@@ -46808,7 +46873,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46808
46873
|
} else if (typeof error48 === "string") {
|
|
46809
46874
|
preview = error48;
|
|
46810
46875
|
}
|
|
46811
|
-
cleaned.push(
|
|
46876
|
+
cleaned.push(path17);
|
|
46812
46877
|
return {
|
|
46813
46878
|
inspectable: false,
|
|
46814
46879
|
preview_short: "[Exception]",
|
|
@@ -46818,8 +46883,8 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46818
46883
|
};
|
|
46819
46884
|
}
|
|
46820
46885
|
}
|
|
46821
|
-
function fillInPath(object2, data,
|
|
46822
|
-
var target = getInObject(object2,
|
|
46886
|
+
function fillInPath(object2, data, path17, value) {
|
|
46887
|
+
var target = getInObject(object2, path17);
|
|
46823
46888
|
if (target != null) {
|
|
46824
46889
|
if (!target[meta3.unserializable]) {
|
|
46825
46890
|
delete target[meta3.inspectable];
|
|
@@ -46834,9 +46899,9 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46834
46899
|
}
|
|
46835
46900
|
if (value !== null && data.unserializable.length > 0) {
|
|
46836
46901
|
var unserializablePath = data.unserializable[0];
|
|
46837
|
-
var isMatch = unserializablePath.length ===
|
|
46838
|
-
for (var i = 0;i <
|
|
46839
|
-
if (
|
|
46902
|
+
var isMatch = unserializablePath.length === path17.length;
|
|
46903
|
+
for (var i = 0;i < path17.length; i++) {
|
|
46904
|
+
if (path17[i] !== unserializablePath[i]) {
|
|
46840
46905
|
isMatch = false;
|
|
46841
46906
|
break;
|
|
46842
46907
|
}
|
|
@@ -46845,13 +46910,13 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46845
46910
|
upgradeUnserializable(value, value);
|
|
46846
46911
|
}
|
|
46847
46912
|
}
|
|
46848
|
-
setInObject(object2,
|
|
46913
|
+
setInObject(object2, path17, value);
|
|
46849
46914
|
}
|
|
46850
46915
|
function hydrate(object2, cleaned, unserializable) {
|
|
46851
|
-
cleaned.forEach(function(
|
|
46852
|
-
var length =
|
|
46853
|
-
var last =
|
|
46854
|
-
var parent = getInObject(object2,
|
|
46916
|
+
cleaned.forEach(function(path17) {
|
|
46917
|
+
var length = path17.length;
|
|
46918
|
+
var last = path17[length - 1];
|
|
46919
|
+
var parent = getInObject(object2, path17.slice(0, length - 1));
|
|
46855
46920
|
if (!parent || !parent.hasOwnProperty(last)) {
|
|
46856
46921
|
return;
|
|
46857
46922
|
}
|
|
@@ -46877,10 +46942,10 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
46877
46942
|
parent[last] = replaced;
|
|
46878
46943
|
}
|
|
46879
46944
|
});
|
|
46880
|
-
unserializable.forEach(function(
|
|
46881
|
-
var length =
|
|
46882
|
-
var last =
|
|
46883
|
-
var parent = getInObject(object2,
|
|
46945
|
+
unserializable.forEach(function(path17) {
|
|
46946
|
+
var length = path17.length;
|
|
46947
|
+
var last = path17[length - 1];
|
|
46948
|
+
var parent = getInObject(object2, path17.slice(0, length - 1));
|
|
46884
46949
|
if (!parent || !parent.hasOwnProperty(last)) {
|
|
46885
46950
|
return;
|
|
46886
46951
|
}
|
|
@@ -47001,11 +47066,11 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
47001
47066
|
return gte(version2, FIRST_DEVTOOLS_BACKEND_LOCKSTEP_VER);
|
|
47002
47067
|
}
|
|
47003
47068
|
function cleanForBridge(data, isPathAllowed) {
|
|
47004
|
-
var
|
|
47069
|
+
var path17 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
47005
47070
|
if (data !== null) {
|
|
47006
47071
|
var cleanedPaths = [];
|
|
47007
47072
|
var unserializablePaths = [];
|
|
47008
|
-
var cleanedData = dehydrate(data, cleanedPaths, unserializablePaths,
|
|
47073
|
+
var cleanedData = dehydrate(data, cleanedPaths, unserializablePaths, path17, isPathAllowed);
|
|
47009
47074
|
return {
|
|
47010
47075
|
data: cleanedData,
|
|
47011
47076
|
cleaned: cleanedPaths,
|
|
@@ -47015,18 +47080,18 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
47015
47080
|
return null;
|
|
47016
47081
|
}
|
|
47017
47082
|
}
|
|
47018
|
-
function copyWithDelete(obj,
|
|
47083
|
+
function copyWithDelete(obj, path17) {
|
|
47019
47084
|
var index = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
47020
|
-
var key =
|
|
47085
|
+
var key = path17[index];
|
|
47021
47086
|
var updated = shared_isArray(obj) ? obj.slice() : utils_objectSpread({}, obj);
|
|
47022
|
-
if (index + 1 ===
|
|
47087
|
+
if (index + 1 === path17.length) {
|
|
47023
47088
|
if (shared_isArray(updated)) {
|
|
47024
47089
|
updated.splice(key, 1);
|
|
47025
47090
|
} else {
|
|
47026
47091
|
delete updated[key];
|
|
47027
47092
|
}
|
|
47028
47093
|
} else {
|
|
47029
|
-
updated[key] = copyWithDelete(obj[key],
|
|
47094
|
+
updated[key] = copyWithDelete(obj[key], path17, index + 1);
|
|
47030
47095
|
}
|
|
47031
47096
|
return updated;
|
|
47032
47097
|
}
|
|
@@ -47047,14 +47112,14 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
47047
47112
|
}
|
|
47048
47113
|
return updated;
|
|
47049
47114
|
}
|
|
47050
|
-
function copyWithSet(obj,
|
|
47115
|
+
function copyWithSet(obj, path17, value) {
|
|
47051
47116
|
var index = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
|
47052
|
-
if (index >=
|
|
47117
|
+
if (index >= path17.length) {
|
|
47053
47118
|
return value;
|
|
47054
47119
|
}
|
|
47055
|
-
var key =
|
|
47120
|
+
var key = path17[index];
|
|
47056
47121
|
var updated = shared_isArray(obj) ? obj.slice() : utils_objectSpread({}, obj);
|
|
47057
|
-
updated[key] = copyWithSet(obj[key],
|
|
47122
|
+
updated[key] = copyWithSet(obj[key], path17, value, index + 1);
|
|
47058
47123
|
return updated;
|
|
47059
47124
|
}
|
|
47060
47125
|
function getEffectDurations(root) {
|
|
@@ -48382,12 +48447,12 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48382
48447
|
}
|
|
48383
48448
|
});
|
|
48384
48449
|
bridge_defineProperty(_this, "overrideValueAtPath", function(_ref) {
|
|
48385
|
-
var { id, path:
|
|
48450
|
+
var { id, path: path17, rendererID, type, value } = _ref;
|
|
48386
48451
|
switch (type) {
|
|
48387
48452
|
case "context":
|
|
48388
48453
|
_this.send("overrideContext", {
|
|
48389
48454
|
id,
|
|
48390
|
-
path:
|
|
48455
|
+
path: path17,
|
|
48391
48456
|
rendererID,
|
|
48392
48457
|
wasForwarded: true,
|
|
48393
48458
|
value
|
|
@@ -48396,7 +48461,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48396
48461
|
case "hooks":
|
|
48397
48462
|
_this.send("overrideHookState", {
|
|
48398
48463
|
id,
|
|
48399
|
-
path:
|
|
48464
|
+
path: path17,
|
|
48400
48465
|
rendererID,
|
|
48401
48466
|
wasForwarded: true,
|
|
48402
48467
|
value
|
|
@@ -48405,7 +48470,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48405
48470
|
case "props":
|
|
48406
48471
|
_this.send("overrideProps", {
|
|
48407
48472
|
id,
|
|
48408
|
-
path:
|
|
48473
|
+
path: path17,
|
|
48409
48474
|
rendererID,
|
|
48410
48475
|
wasForwarded: true,
|
|
48411
48476
|
value
|
|
@@ -48414,7 +48479,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48414
48479
|
case "state":
|
|
48415
48480
|
_this.send("overrideState", {
|
|
48416
48481
|
id,
|
|
48417
|
-
path:
|
|
48482
|
+
path: path17,
|
|
48418
48483
|
rendererID,
|
|
48419
48484
|
wasForwarded: true,
|
|
48420
48485
|
value
|
|
@@ -48748,12 +48813,12 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48748
48813
|
}
|
|
48749
48814
|
});
|
|
48750
48815
|
agent_defineProperty(_this, "copyElementPath", function(_ref5) {
|
|
48751
|
-
var { id, path:
|
|
48816
|
+
var { id, path: path17, rendererID } = _ref5;
|
|
48752
48817
|
var renderer = _this._rendererInterfaces[rendererID];
|
|
48753
48818
|
if (renderer == null) {
|
|
48754
48819
|
console.warn('Invalid renderer id "'.concat(rendererID, '" for element "').concat(id, '"'));
|
|
48755
48820
|
} else {
|
|
48756
|
-
var value = renderer.getSerializedElementValueByPath(id,
|
|
48821
|
+
var value = renderer.getSerializedElementValueByPath(id, path17);
|
|
48757
48822
|
if (value != null) {
|
|
48758
48823
|
_this._bridge.send("saveToClipboard", value);
|
|
48759
48824
|
} else {
|
|
@@ -48762,12 +48827,12 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48762
48827
|
}
|
|
48763
48828
|
});
|
|
48764
48829
|
agent_defineProperty(_this, "deletePath", function(_ref6) {
|
|
48765
|
-
var { hookID, id, path:
|
|
48830
|
+
var { hookID, id, path: path17, rendererID, type } = _ref6;
|
|
48766
48831
|
var renderer = _this._rendererInterfaces[rendererID];
|
|
48767
48832
|
if (renderer == null) {
|
|
48768
48833
|
console.warn('Invalid renderer id "'.concat(rendererID, '" for element "').concat(id, '"'));
|
|
48769
48834
|
} else {
|
|
48770
|
-
renderer.deletePath(type, id, hookID,
|
|
48835
|
+
renderer.deletePath(type, id, hookID, path17);
|
|
48771
48836
|
}
|
|
48772
48837
|
});
|
|
48773
48838
|
agent_defineProperty(_this, "getBackendVersion", function() {
|
|
@@ -48804,12 +48869,12 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48804
48869
|
}
|
|
48805
48870
|
});
|
|
48806
48871
|
agent_defineProperty(_this, "inspectElement", function(_ref9) {
|
|
48807
|
-
var { forceFullData, id, path:
|
|
48872
|
+
var { forceFullData, id, path: path17, rendererID, requestID } = _ref9;
|
|
48808
48873
|
var renderer = _this._rendererInterfaces[rendererID];
|
|
48809
48874
|
if (renderer == null) {
|
|
48810
48875
|
console.warn('Invalid renderer id "'.concat(rendererID, '" for element "').concat(id, '"'));
|
|
48811
48876
|
} else {
|
|
48812
|
-
_this._bridge.send("inspectedElement", renderer.inspectElement(requestID, id,
|
|
48877
|
+
_this._bridge.send("inspectedElement", renderer.inspectElement(requestID, id, path17, forceFullData));
|
|
48813
48878
|
if (_this._persistedSelectionMatch === null || _this._persistedSelectionMatch.id !== id) {
|
|
48814
48879
|
_this._persistedSelection = null;
|
|
48815
48880
|
_this._persistedSelectionMatch = null;
|
|
@@ -48843,15 +48908,15 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48843
48908
|
}
|
|
48844
48909
|
for (var rendererID in _this._rendererInterfaces) {
|
|
48845
48910
|
var renderer = _this._rendererInterfaces[rendererID];
|
|
48846
|
-
var
|
|
48911
|
+
var path17 = null;
|
|
48847
48912
|
if (suspendedByPathIndex !== null && rendererPath !== null) {
|
|
48848
48913
|
var suspendedByPathRendererIndex = suspendedByPathIndex - suspendedByOffset;
|
|
48849
48914
|
var rendererHasRequestedSuspendedByPath = renderer.getElementAttributeByPath(id, ["suspendedBy", suspendedByPathRendererIndex]) !== undefined;
|
|
48850
48915
|
if (rendererHasRequestedSuspendedByPath) {
|
|
48851
|
-
|
|
48916
|
+
path17 = ["suspendedBy", suspendedByPathRendererIndex].concat(rendererPath);
|
|
48852
48917
|
}
|
|
48853
48918
|
}
|
|
48854
|
-
var inspectedRootsPayload = renderer.inspectElement(requestID, id,
|
|
48919
|
+
var inspectedRootsPayload = renderer.inspectElement(requestID, id, path17, forceFullData);
|
|
48855
48920
|
switch (inspectedRootsPayload.type) {
|
|
48856
48921
|
case "hydrated-path":
|
|
48857
48922
|
inspectedRootsPayload.path[1] += suspendedByOffset;
|
|
@@ -48945,20 +49010,20 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48945
49010
|
}
|
|
48946
49011
|
});
|
|
48947
49012
|
agent_defineProperty(_this, "overrideValueAtPath", function(_ref15) {
|
|
48948
|
-
var { hookID, id, path:
|
|
49013
|
+
var { hookID, id, path: path17, rendererID, type, value } = _ref15;
|
|
48949
49014
|
var renderer = _this._rendererInterfaces[rendererID];
|
|
48950
49015
|
if (renderer == null) {
|
|
48951
49016
|
console.warn('Invalid renderer id "'.concat(rendererID, '" for element "').concat(id, '"'));
|
|
48952
49017
|
} else {
|
|
48953
|
-
renderer.overrideValueAtPath(type, id, hookID,
|
|
49018
|
+
renderer.overrideValueAtPath(type, id, hookID, path17, value);
|
|
48954
49019
|
}
|
|
48955
49020
|
});
|
|
48956
49021
|
agent_defineProperty(_this, "overrideContext", function(_ref16) {
|
|
48957
|
-
var { id, path:
|
|
49022
|
+
var { id, path: path17, rendererID, wasForwarded, value } = _ref16;
|
|
48958
49023
|
if (!wasForwarded) {
|
|
48959
49024
|
_this.overrideValueAtPath({
|
|
48960
49025
|
id,
|
|
48961
|
-
path:
|
|
49026
|
+
path: path17,
|
|
48962
49027
|
rendererID,
|
|
48963
49028
|
type: "context",
|
|
48964
49029
|
value
|
|
@@ -48966,11 +49031,11 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48966
49031
|
}
|
|
48967
49032
|
});
|
|
48968
49033
|
agent_defineProperty(_this, "overrideHookState", function(_ref17) {
|
|
48969
|
-
var { id, hookID, path:
|
|
49034
|
+
var { id, hookID, path: path17, rendererID, wasForwarded, value } = _ref17;
|
|
48970
49035
|
if (!wasForwarded) {
|
|
48971
49036
|
_this.overrideValueAtPath({
|
|
48972
49037
|
id,
|
|
48973
|
-
path:
|
|
49038
|
+
path: path17,
|
|
48974
49039
|
rendererID,
|
|
48975
49040
|
type: "hooks",
|
|
48976
49041
|
value
|
|
@@ -48978,11 +49043,11 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48978
49043
|
}
|
|
48979
49044
|
});
|
|
48980
49045
|
agent_defineProperty(_this, "overrideProps", function(_ref18) {
|
|
48981
|
-
var { id, path:
|
|
49046
|
+
var { id, path: path17, rendererID, wasForwarded, value } = _ref18;
|
|
48982
49047
|
if (!wasForwarded) {
|
|
48983
49048
|
_this.overrideValueAtPath({
|
|
48984
49049
|
id,
|
|
48985
|
-
path:
|
|
49050
|
+
path: path17,
|
|
48986
49051
|
rendererID,
|
|
48987
49052
|
type: "props",
|
|
48988
49053
|
value
|
|
@@ -48990,11 +49055,11 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
48990
49055
|
}
|
|
48991
49056
|
});
|
|
48992
49057
|
agent_defineProperty(_this, "overrideState", function(_ref19) {
|
|
48993
|
-
var { id, path:
|
|
49058
|
+
var { id, path: path17, rendererID, wasForwarded, value } = _ref19;
|
|
48994
49059
|
if (!wasForwarded) {
|
|
48995
49060
|
_this.overrideValueAtPath({
|
|
48996
49061
|
id,
|
|
48997
|
-
path:
|
|
49062
|
+
path: path17,
|
|
48998
49063
|
rendererID,
|
|
48999
49064
|
type: "state",
|
|
49000
49065
|
value
|
|
@@ -49061,12 +49126,12 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
49061
49126
|
_this._bridge.send("stopInspectingHost", selected);
|
|
49062
49127
|
});
|
|
49063
49128
|
agent_defineProperty(_this, "storeAsGlobal", function(_ref23) {
|
|
49064
|
-
var { count, id, path:
|
|
49129
|
+
var { count, id, path: path17, rendererID } = _ref23;
|
|
49065
49130
|
var renderer = _this._rendererInterfaces[rendererID];
|
|
49066
49131
|
if (renderer == null) {
|
|
49067
49132
|
console.warn('Invalid renderer id "'.concat(rendererID, '" for element "').concat(id, '"'));
|
|
49068
49133
|
} else {
|
|
49069
|
-
renderer.storeAsGlobal(id,
|
|
49134
|
+
renderer.storeAsGlobal(id, path17, count);
|
|
49070
49135
|
}
|
|
49071
49136
|
});
|
|
49072
49137
|
agent_defineProperty(_this, "updateHookSettings", function(settings) {
|
|
@@ -49083,12 +49148,12 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
49083
49148
|
var rendererID = +rendererIDString;
|
|
49084
49149
|
var renderer = _this._rendererInterfaces[rendererID];
|
|
49085
49150
|
if (_this._lastSelectedRendererID === rendererID) {
|
|
49086
|
-
var
|
|
49087
|
-
if (
|
|
49088
|
-
renderer.setTrackedPath(
|
|
49151
|
+
var path17 = renderer.getPathForElement(_this._lastSelectedElementID);
|
|
49152
|
+
if (path17 !== null) {
|
|
49153
|
+
renderer.setTrackedPath(path17);
|
|
49089
49154
|
_this._persistedSelection = {
|
|
49090
49155
|
rendererID,
|
|
49091
|
-
path:
|
|
49156
|
+
path: path17
|
|
49092
49157
|
};
|
|
49093
49158
|
}
|
|
49094
49159
|
}
|
|
@@ -49163,11 +49228,11 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
49163
49228
|
var rendererID = _this._lastSelectedRendererID;
|
|
49164
49229
|
var id = _this._lastSelectedElementID;
|
|
49165
49230
|
var renderer = _this._rendererInterfaces[rendererID];
|
|
49166
|
-
var
|
|
49167
|
-
if (
|
|
49231
|
+
var path17 = renderer != null ? renderer.getPathForElement(id) : null;
|
|
49232
|
+
if (path17 !== null) {
|
|
49168
49233
|
storage_sessionStorageSetItem(SESSION_STORAGE_LAST_SELECTION_KEY, JSON.stringify({
|
|
49169
49234
|
rendererID,
|
|
49170
|
-
path:
|
|
49235
|
+
path: path17
|
|
49171
49236
|
}));
|
|
49172
49237
|
} else {
|
|
49173
49238
|
storage_sessionStorageRemoveItem(SESSION_STORAGE_LAST_SELECTION_KEY);
|
|
@@ -49890,7 +49955,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
49890
49955
|
hasElementWithId: function hasElementWithId() {
|
|
49891
49956
|
return false;
|
|
49892
49957
|
},
|
|
49893
|
-
inspectElement: function inspectElement(requestID, id,
|
|
49958
|
+
inspectElement: function inspectElement(requestID, id, path17) {
|
|
49894
49959
|
return {
|
|
49895
49960
|
id,
|
|
49896
49961
|
responseID: requestID,
|
|
@@ -55160,9 +55225,9 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
55160
55225
|
}
|
|
55161
55226
|
return null;
|
|
55162
55227
|
}
|
|
55163
|
-
function getElementAttributeByPath(id,
|
|
55228
|
+
function getElementAttributeByPath(id, path17) {
|
|
55164
55229
|
if (isMostRecentlyInspectedElement(id)) {
|
|
55165
|
-
return utils_getInObject(mostRecentlyInspectedElement,
|
|
55230
|
+
return utils_getInObject(mostRecentlyInspectedElement, path17);
|
|
55166
55231
|
}
|
|
55167
55232
|
return;
|
|
55168
55233
|
}
|
|
@@ -55865,9 +55930,9 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
55865
55930
|
function isMostRecentlyInspectedElementCurrent(id) {
|
|
55866
55931
|
return isMostRecentlyInspectedElement(id) && !hasElementUpdatedSinceLastInspected;
|
|
55867
55932
|
}
|
|
55868
|
-
function mergeInspectedPaths(
|
|
55933
|
+
function mergeInspectedPaths(path17) {
|
|
55869
55934
|
var current = currentlyInspectedPaths;
|
|
55870
|
-
|
|
55935
|
+
path17.forEach(function(key) {
|
|
55871
55936
|
if (!current[key]) {
|
|
55872
55937
|
current[key] = {};
|
|
55873
55938
|
}
|
|
@@ -55875,21 +55940,21 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
55875
55940
|
});
|
|
55876
55941
|
}
|
|
55877
55942
|
function createIsPathAllowed(key, secondaryCategory) {
|
|
55878
|
-
return function isPathAllowed(
|
|
55943
|
+
return function isPathAllowed(path17) {
|
|
55879
55944
|
switch (secondaryCategory) {
|
|
55880
55945
|
case "hooks":
|
|
55881
|
-
if (
|
|
55946
|
+
if (path17.length === 1) {
|
|
55882
55947
|
return true;
|
|
55883
55948
|
}
|
|
55884
|
-
if (
|
|
55949
|
+
if (path17[path17.length - 2] === "hookSource" && path17[path17.length - 1] === "fileName") {
|
|
55885
55950
|
return true;
|
|
55886
55951
|
}
|
|
55887
|
-
if (
|
|
55952
|
+
if (path17[path17.length - 1] === "subHooks" || path17[path17.length - 2] === "subHooks") {
|
|
55888
55953
|
return true;
|
|
55889
55954
|
}
|
|
55890
55955
|
break;
|
|
55891
55956
|
case "suspendedBy":
|
|
55892
|
-
if (
|
|
55957
|
+
if (path17.length < 5) {
|
|
55893
55958
|
return true;
|
|
55894
55959
|
}
|
|
55895
55960
|
break;
|
|
@@ -55900,8 +55965,8 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
55900
55965
|
if (!current) {
|
|
55901
55966
|
return false;
|
|
55902
55967
|
}
|
|
55903
|
-
for (var i = 0;i <
|
|
55904
|
-
current = current[
|
|
55968
|
+
for (var i = 0;i < path17.length; i++) {
|
|
55969
|
+
current = current[path17[i]];
|
|
55905
55970
|
if (!current) {
|
|
55906
55971
|
return false;
|
|
55907
55972
|
}
|
|
@@ -55955,38 +56020,38 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
55955
56020
|
break;
|
|
55956
56021
|
}
|
|
55957
56022
|
}
|
|
55958
|
-
function storeAsGlobal(id,
|
|
56023
|
+
function storeAsGlobal(id, path17, count) {
|
|
55959
56024
|
if (isMostRecentlyInspectedElement(id)) {
|
|
55960
|
-
var value = utils_getInObject(mostRecentlyInspectedElement,
|
|
56025
|
+
var value = utils_getInObject(mostRecentlyInspectedElement, path17);
|
|
55961
56026
|
var key = "$reactTemp".concat(count);
|
|
55962
56027
|
window[key] = value;
|
|
55963
56028
|
console.log(key);
|
|
55964
56029
|
console.log(value);
|
|
55965
56030
|
}
|
|
55966
56031
|
}
|
|
55967
|
-
function getSerializedElementValueByPath(id,
|
|
56032
|
+
function getSerializedElementValueByPath(id, path17) {
|
|
55968
56033
|
if (isMostRecentlyInspectedElement(id)) {
|
|
55969
|
-
var valueToCopy = utils_getInObject(mostRecentlyInspectedElement,
|
|
56034
|
+
var valueToCopy = utils_getInObject(mostRecentlyInspectedElement, path17);
|
|
55970
56035
|
return serializeToString(valueToCopy);
|
|
55971
56036
|
}
|
|
55972
56037
|
}
|
|
55973
|
-
function inspectElement(requestID, id,
|
|
55974
|
-
if (
|
|
55975
|
-
mergeInspectedPaths(
|
|
56038
|
+
function inspectElement(requestID, id, path17, forceFullData) {
|
|
56039
|
+
if (path17 !== null) {
|
|
56040
|
+
mergeInspectedPaths(path17);
|
|
55976
56041
|
}
|
|
55977
56042
|
if (isMostRecentlyInspectedElement(id) && !forceFullData) {
|
|
55978
56043
|
if (!hasElementUpdatedSinceLastInspected) {
|
|
55979
|
-
if (
|
|
56044
|
+
if (path17 !== null) {
|
|
55980
56045
|
var secondaryCategory = null;
|
|
55981
|
-
if (
|
|
55982
|
-
secondaryCategory =
|
|
56046
|
+
if (path17[0] === "hooks" || path17[0] === "suspendedBy") {
|
|
56047
|
+
secondaryCategory = path17[0];
|
|
55983
56048
|
}
|
|
55984
56049
|
return {
|
|
55985
56050
|
id,
|
|
55986
56051
|
responseID: requestID,
|
|
55987
56052
|
type: "hydrated-path",
|
|
55988
|
-
path:
|
|
55989
|
-
value: cleanForBridge(utils_getInObject(mostRecentlyInspectedElement,
|
|
56053
|
+
path: path17,
|
|
56054
|
+
value: cleanForBridge(utils_getInObject(mostRecentlyInspectedElement, path17), createIsPathAllowed(null, secondaryCategory), path17)
|
|
55990
56055
|
};
|
|
55991
56056
|
} else {
|
|
55992
56057
|
return {
|
|
@@ -56182,7 +56247,7 @@ The error thrown in the component is:
|
|
|
56182
56247
|
console.groupEnd();
|
|
56183
56248
|
}
|
|
56184
56249
|
}
|
|
56185
|
-
function deletePath(type, id, hookID,
|
|
56250
|
+
function deletePath(type, id, hookID, path17) {
|
|
56186
56251
|
var devtoolsInstance = idToDevToolsInstanceMap.get(id);
|
|
56187
56252
|
if (devtoolsInstance === undefined) {
|
|
56188
56253
|
console.warn('Could not find DevToolsInstance with id "'.concat(id, '"'));
|
|
@@ -56196,11 +56261,11 @@ The error thrown in the component is:
|
|
|
56196
56261
|
var instance2 = fiber.stateNode;
|
|
56197
56262
|
switch (type) {
|
|
56198
56263
|
case "context":
|
|
56199
|
-
|
|
56264
|
+
path17 = path17.slice(1);
|
|
56200
56265
|
switch (fiber.tag) {
|
|
56201
56266
|
case ClassComponent:
|
|
56202
|
-
if (
|
|
56203
|
-
deletePathInObject(instance2.context,
|
|
56267
|
+
if (path17.length === 0) {} else {
|
|
56268
|
+
deletePathInObject(instance2.context, path17);
|
|
56204
56269
|
}
|
|
56205
56270
|
instance2.forceUpdate();
|
|
56206
56271
|
break;
|
|
@@ -56210,21 +56275,21 @@ The error thrown in the component is:
|
|
|
56210
56275
|
break;
|
|
56211
56276
|
case "hooks":
|
|
56212
56277
|
if (typeof overrideHookStateDeletePath === "function") {
|
|
56213
|
-
overrideHookStateDeletePath(fiber, hookID,
|
|
56278
|
+
overrideHookStateDeletePath(fiber, hookID, path17);
|
|
56214
56279
|
}
|
|
56215
56280
|
break;
|
|
56216
56281
|
case "props":
|
|
56217
56282
|
if (instance2 === null) {
|
|
56218
56283
|
if (typeof overridePropsDeletePath === "function") {
|
|
56219
|
-
overridePropsDeletePath(fiber,
|
|
56284
|
+
overridePropsDeletePath(fiber, path17);
|
|
56220
56285
|
}
|
|
56221
56286
|
} else {
|
|
56222
|
-
fiber.pendingProps = copyWithDelete(instance2.props,
|
|
56287
|
+
fiber.pendingProps = copyWithDelete(instance2.props, path17);
|
|
56223
56288
|
instance2.forceUpdate();
|
|
56224
56289
|
}
|
|
56225
56290
|
break;
|
|
56226
56291
|
case "state":
|
|
56227
|
-
deletePathInObject(instance2.state,
|
|
56292
|
+
deletePathInObject(instance2.state, path17);
|
|
56228
56293
|
instance2.forceUpdate();
|
|
56229
56294
|
break;
|
|
56230
56295
|
}
|
|
@@ -56279,7 +56344,7 @@ The error thrown in the component is:
|
|
|
56279
56344
|
}
|
|
56280
56345
|
}
|
|
56281
56346
|
}
|
|
56282
|
-
function overrideValueAtPath(type, id, hookID,
|
|
56347
|
+
function overrideValueAtPath(type, id, hookID, path17, value) {
|
|
56283
56348
|
var devtoolsInstance = idToDevToolsInstanceMap.get(id);
|
|
56284
56349
|
if (devtoolsInstance === undefined) {
|
|
56285
56350
|
console.warn('Could not find DevToolsInstance with id "'.concat(id, '"'));
|
|
@@ -56293,13 +56358,13 @@ The error thrown in the component is:
|
|
|
56293
56358
|
var instance2 = fiber.stateNode;
|
|
56294
56359
|
switch (type) {
|
|
56295
56360
|
case "context":
|
|
56296
|
-
|
|
56361
|
+
path17 = path17.slice(1);
|
|
56297
56362
|
switch (fiber.tag) {
|
|
56298
56363
|
case ClassComponent:
|
|
56299
|
-
if (
|
|
56364
|
+
if (path17.length === 0) {
|
|
56300
56365
|
instance2.context = value;
|
|
56301
56366
|
} else {
|
|
56302
|
-
utils_setInObject(instance2.context,
|
|
56367
|
+
utils_setInObject(instance2.context, path17, value);
|
|
56303
56368
|
}
|
|
56304
56369
|
instance2.forceUpdate();
|
|
56305
56370
|
break;
|
|
@@ -56309,18 +56374,18 @@ The error thrown in the component is:
|
|
|
56309
56374
|
break;
|
|
56310
56375
|
case "hooks":
|
|
56311
56376
|
if (typeof overrideHookState === "function") {
|
|
56312
|
-
overrideHookState(fiber, hookID,
|
|
56377
|
+
overrideHookState(fiber, hookID, path17, value);
|
|
56313
56378
|
}
|
|
56314
56379
|
break;
|
|
56315
56380
|
case "props":
|
|
56316
56381
|
switch (fiber.tag) {
|
|
56317
56382
|
case ClassComponent:
|
|
56318
|
-
fiber.pendingProps = copyWithSet(instance2.props,
|
|
56383
|
+
fiber.pendingProps = copyWithSet(instance2.props, path17, value);
|
|
56319
56384
|
instance2.forceUpdate();
|
|
56320
56385
|
break;
|
|
56321
56386
|
default:
|
|
56322
56387
|
if (typeof overrideProps === "function") {
|
|
56323
|
-
overrideProps(fiber,
|
|
56388
|
+
overrideProps(fiber, path17, value);
|
|
56324
56389
|
}
|
|
56325
56390
|
break;
|
|
56326
56391
|
}
|
|
@@ -56328,7 +56393,7 @@ The error thrown in the component is:
|
|
|
56328
56393
|
case "state":
|
|
56329
56394
|
switch (fiber.tag) {
|
|
56330
56395
|
case ClassComponent:
|
|
56331
|
-
utils_setInObject(instance2.state,
|
|
56396
|
+
utils_setInObject(instance2.state, path17, value);
|
|
56332
56397
|
instance2.forceUpdate();
|
|
56333
56398
|
break;
|
|
56334
56399
|
}
|
|
@@ -56614,14 +56679,14 @@ The error thrown in the component is:
|
|
|
56614
56679
|
var trackedPathMatchInstance = null;
|
|
56615
56680
|
var trackedPathMatchDepth = -1;
|
|
56616
56681
|
var mightBeOnTrackedPath = false;
|
|
56617
|
-
function setTrackedPath(
|
|
56618
|
-
if (
|
|
56682
|
+
function setTrackedPath(path17) {
|
|
56683
|
+
if (path17 === null) {
|
|
56619
56684
|
trackedPathMatchFiber = null;
|
|
56620
56685
|
trackedPathMatchInstance = null;
|
|
56621
56686
|
trackedPathMatchDepth = -1;
|
|
56622
56687
|
mightBeOnTrackedPath = false;
|
|
56623
56688
|
}
|
|
56624
|
-
trackedPath =
|
|
56689
|
+
trackedPath = path17;
|
|
56625
56690
|
}
|
|
56626
56691
|
function updateTrackedPathStateBeforeMount(fiber, fiberInstance) {
|
|
56627
56692
|
if (trackedPath === null || !mightBeOnTrackedPath) {
|
|
@@ -57385,9 +57450,9 @@ The error thrown in the component is:
|
|
|
57385
57450
|
}
|
|
57386
57451
|
var currentlyInspectedElementID = null;
|
|
57387
57452
|
var currentlyInspectedPaths = {};
|
|
57388
|
-
function mergeInspectedPaths(
|
|
57453
|
+
function mergeInspectedPaths(path17) {
|
|
57389
57454
|
var current = currentlyInspectedPaths;
|
|
57390
|
-
|
|
57455
|
+
path17.forEach(function(key) {
|
|
57391
57456
|
if (!current[key]) {
|
|
57392
57457
|
current[key] = {};
|
|
57393
57458
|
}
|
|
@@ -57395,13 +57460,13 @@ The error thrown in the component is:
|
|
|
57395
57460
|
});
|
|
57396
57461
|
}
|
|
57397
57462
|
function createIsPathAllowed(key) {
|
|
57398
|
-
return function isPathAllowed(
|
|
57463
|
+
return function isPathAllowed(path17) {
|
|
57399
57464
|
var current = currentlyInspectedPaths[key];
|
|
57400
57465
|
if (!current) {
|
|
57401
57466
|
return false;
|
|
57402
57467
|
}
|
|
57403
|
-
for (var i = 0;i <
|
|
57404
|
-
current = current[
|
|
57468
|
+
for (var i = 0;i < path17.length; i++) {
|
|
57469
|
+
current = current[path17[i]];
|
|
57405
57470
|
if (!current) {
|
|
57406
57471
|
return false;
|
|
57407
57472
|
}
|
|
@@ -57451,24 +57516,24 @@ The error thrown in the component is:
|
|
|
57451
57516
|
break;
|
|
57452
57517
|
}
|
|
57453
57518
|
}
|
|
57454
|
-
function storeAsGlobal(id,
|
|
57519
|
+
function storeAsGlobal(id, path17, count) {
|
|
57455
57520
|
var inspectedElement = inspectElementRaw(id);
|
|
57456
57521
|
if (inspectedElement !== null) {
|
|
57457
|
-
var value = utils_getInObject(inspectedElement,
|
|
57522
|
+
var value = utils_getInObject(inspectedElement, path17);
|
|
57458
57523
|
var key = "$reactTemp".concat(count);
|
|
57459
57524
|
window[key] = value;
|
|
57460
57525
|
console.log(key);
|
|
57461
57526
|
console.log(value);
|
|
57462
57527
|
}
|
|
57463
57528
|
}
|
|
57464
|
-
function getSerializedElementValueByPath(id,
|
|
57529
|
+
function getSerializedElementValueByPath(id, path17) {
|
|
57465
57530
|
var inspectedElement = inspectElementRaw(id);
|
|
57466
57531
|
if (inspectedElement !== null) {
|
|
57467
|
-
var valueToCopy = utils_getInObject(inspectedElement,
|
|
57532
|
+
var valueToCopy = utils_getInObject(inspectedElement, path17);
|
|
57468
57533
|
return serializeToString(valueToCopy);
|
|
57469
57534
|
}
|
|
57470
57535
|
}
|
|
57471
|
-
function inspectElement(requestID, id,
|
|
57536
|
+
function inspectElement(requestID, id, path17, forceFullData) {
|
|
57472
57537
|
if (forceFullData || currentlyInspectedElementID !== id) {
|
|
57473
57538
|
currentlyInspectedElementID = id;
|
|
57474
57539
|
currentlyInspectedPaths = {};
|
|
@@ -57481,8 +57546,8 @@ The error thrown in the component is:
|
|
|
57481
57546
|
type: "not-found"
|
|
57482
57547
|
};
|
|
57483
57548
|
}
|
|
57484
|
-
if (
|
|
57485
|
-
mergeInspectedPaths(
|
|
57549
|
+
if (path17 !== null) {
|
|
57550
|
+
mergeInspectedPaths(path17);
|
|
57486
57551
|
}
|
|
57487
57552
|
updateSelectedElement(id);
|
|
57488
57553
|
inspectedElement.context = cleanForBridge(inspectedElement.context, createIsPathAllowed("context"));
|
|
@@ -57685,10 +57750,10 @@ The error thrown in the component is:
|
|
|
57685
57750
|
console.groupEnd();
|
|
57686
57751
|
}
|
|
57687
57752
|
}
|
|
57688
|
-
function getElementAttributeByPath(id,
|
|
57753
|
+
function getElementAttributeByPath(id, path17) {
|
|
57689
57754
|
var inspectedElement = inspectElementRaw(id);
|
|
57690
57755
|
if (inspectedElement !== null) {
|
|
57691
|
-
return utils_getInObject(inspectedElement,
|
|
57756
|
+
return utils_getInObject(inspectedElement, path17);
|
|
57692
57757
|
}
|
|
57693
57758
|
return;
|
|
57694
57759
|
}
|
|
@@ -57705,14 +57770,14 @@ The error thrown in the component is:
|
|
|
57705
57770
|
}
|
|
57706
57771
|
return element.type;
|
|
57707
57772
|
}
|
|
57708
|
-
function deletePath(type, id, hookID,
|
|
57773
|
+
function deletePath(type, id, hookID, path17) {
|
|
57709
57774
|
var internalInstance = idToInternalInstanceMap.get(id);
|
|
57710
57775
|
if (internalInstance != null) {
|
|
57711
57776
|
var publicInstance = internalInstance._instance;
|
|
57712
57777
|
if (publicInstance != null) {
|
|
57713
57778
|
switch (type) {
|
|
57714
57779
|
case "context":
|
|
57715
|
-
deletePathInObject(publicInstance.context,
|
|
57780
|
+
deletePathInObject(publicInstance.context, path17);
|
|
57716
57781
|
forceUpdate(publicInstance);
|
|
57717
57782
|
break;
|
|
57718
57783
|
case "hooks":
|
|
@@ -57720,12 +57785,12 @@ The error thrown in the component is:
|
|
|
57720
57785
|
case "props":
|
|
57721
57786
|
var element = internalInstance._currentElement;
|
|
57722
57787
|
internalInstance._currentElement = legacy_renderer_objectSpread(legacy_renderer_objectSpread({}, element), {}, {
|
|
57723
|
-
props: copyWithDelete(element.props,
|
|
57788
|
+
props: copyWithDelete(element.props, path17)
|
|
57724
57789
|
});
|
|
57725
57790
|
forceUpdate(publicInstance);
|
|
57726
57791
|
break;
|
|
57727
57792
|
case "state":
|
|
57728
|
-
deletePathInObject(publicInstance.state,
|
|
57793
|
+
deletePathInObject(publicInstance.state, path17);
|
|
57729
57794
|
forceUpdate(publicInstance);
|
|
57730
57795
|
break;
|
|
57731
57796
|
}
|
|
@@ -57759,14 +57824,14 @@ The error thrown in the component is:
|
|
|
57759
57824
|
}
|
|
57760
57825
|
}
|
|
57761
57826
|
}
|
|
57762
|
-
function overrideValueAtPath(type, id, hookID,
|
|
57827
|
+
function overrideValueAtPath(type, id, hookID, path17, value) {
|
|
57763
57828
|
var internalInstance = idToInternalInstanceMap.get(id);
|
|
57764
57829
|
if (internalInstance != null) {
|
|
57765
57830
|
var publicInstance = internalInstance._instance;
|
|
57766
57831
|
if (publicInstance != null) {
|
|
57767
57832
|
switch (type) {
|
|
57768
57833
|
case "context":
|
|
57769
|
-
utils_setInObject(publicInstance.context,
|
|
57834
|
+
utils_setInObject(publicInstance.context, path17, value);
|
|
57770
57835
|
forceUpdate(publicInstance);
|
|
57771
57836
|
break;
|
|
57772
57837
|
case "hooks":
|
|
@@ -57774,12 +57839,12 @@ The error thrown in the component is:
|
|
|
57774
57839
|
case "props":
|
|
57775
57840
|
var element = internalInstance._currentElement;
|
|
57776
57841
|
internalInstance._currentElement = legacy_renderer_objectSpread(legacy_renderer_objectSpread({}, element), {}, {
|
|
57777
|
-
props: copyWithSet(element.props,
|
|
57842
|
+
props: copyWithSet(element.props, path17, value)
|
|
57778
57843
|
});
|
|
57779
57844
|
forceUpdate(publicInstance);
|
|
57780
57845
|
break;
|
|
57781
57846
|
case "state":
|
|
57782
|
-
utils_setInObject(publicInstance.state,
|
|
57847
|
+
utils_setInObject(publicInstance.state, path17, value);
|
|
57783
57848
|
forceUpdate(publicInstance);
|
|
57784
57849
|
break;
|
|
57785
57850
|
}
|
|
@@ -57820,7 +57885,7 @@ The error thrown in the component is:
|
|
|
57820
57885
|
return [];
|
|
57821
57886
|
}
|
|
57822
57887
|
function setTraceUpdatesEnabled(enabled) {}
|
|
57823
|
-
function setTrackedPath(
|
|
57888
|
+
function setTrackedPath(path17) {}
|
|
57824
57889
|
function getOwnersList(id) {
|
|
57825
57890
|
return null;
|
|
57826
57891
|
}
|
|
@@ -61467,6 +61532,7 @@ function detectTestPatterns(workdir, dependencies, devDependencies) {
|
|
|
61467
61532
|
init_schema();
|
|
61468
61533
|
init_logger2();
|
|
61469
61534
|
init_routing();
|
|
61535
|
+
init_version();
|
|
61470
61536
|
|
|
61471
61537
|
// src/cli/analyze-parser.ts
|
|
61472
61538
|
init_registry();
|
|
@@ -61717,11 +61783,7 @@ async function analyzeFeature(options) {
|
|
|
61717
61783
|
if (config2 && userStories.length > config2.execution.maxStoriesPerFeature) {
|
|
61718
61784
|
logger.warn("cli", `Feature has ${userStories.length} stories, exceeding recommended limit of ${config2.execution.maxStoriesPerFeature}. Consider splitting.`);
|
|
61719
61785
|
}
|
|
61720
|
-
|
|
61721
|
-
try {
|
|
61722
|
-
const pkgPath = new URL("../../package.json", import.meta.url);
|
|
61723
|
-
naxVersion = (await Bun.file(pkgPath).json()).version;
|
|
61724
|
-
} catch {}
|
|
61786
|
+
const naxVersion = NAX_VERSION;
|
|
61725
61787
|
const now = new Date().toISOString();
|
|
61726
61788
|
const prd = {
|
|
61727
61789
|
project: "nax",
|
|
@@ -69563,8 +69625,8 @@ function Text({ color, backgroundColor, dimColor = false, bold = false, italic =
|
|
|
69563
69625
|
}
|
|
69564
69626
|
|
|
69565
69627
|
// node_modules/ink/build/components/ErrorOverview.js
|
|
69566
|
-
var cleanupPath = (
|
|
69567
|
-
return
|
|
69628
|
+
var cleanupPath = (path17) => {
|
|
69629
|
+
return path17?.replace(`file://${cwd()}/`, "");
|
|
69568
69630
|
};
|
|
69569
69631
|
var stackUtils = new import_stack_utils.default({
|
|
69570
69632
|
cwd: cwd(),
|
|
@@ -72074,9 +72136,9 @@ function renderTui(props) {
|
|
|
72074
72136
|
}
|
|
72075
72137
|
|
|
72076
72138
|
// bin/nax.ts
|
|
72077
|
-
|
|
72139
|
+
init_version();
|
|
72078
72140
|
var program2 = new Command;
|
|
72079
|
-
program2.name("nax").description("AI Coding Agent Orchestrator \u2014 loops until done").version(
|
|
72141
|
+
program2.name("nax").description("AI Coding Agent Orchestrator \u2014 loops until done").version(NAX_VERSION);
|
|
72080
72142
|
program2.command("init").description("Initialize nax in the current project").option("-d, --dir <path>", "Project directory", process.cwd()).option("-f, --force", "Force overwrite existing files", false).action(async (options) => {
|
|
72081
72143
|
let workdir;
|
|
72082
72144
|
try {
|