yarn-berry-deduplicate 7.0.1 → 7.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/applyClusterFixes.js +5 -7
  2. package/dist/applyClusterFixes.js.map +1 -1
  3. package/dist/applyClusterFixes.test.js +67 -33
  4. package/dist/applyClusterFixes.test.js.map +1 -1
  5. package/dist/bin/yarn-berry-deduplicate.test.js +45 -44
  6. package/dist/bin/yarn-berry-deduplicate.test.js.map +1 -1
  7. package/dist/dedupeEndToEnd.test.js +36 -33
  8. package/dist/dedupeEndToEnd.test.js.map +1 -1
  9. package/dist/definitions/applyClusterFixes.d.ts +3 -2
  10. package/dist/definitions/applyClusterFixes.d.ts.map +1 -1
  11. package/dist/displayMany.test.js +15 -14
  12. package/dist/displayMany.test.js.map +1 -1
  13. package/dist/helpers/applyIdentifiedFixesToYarnLock.test.js +40 -39
  14. package/dist/helpers/applyIdentifiedFixesToYarnLock.test.js.map +1 -1
  15. package/dist/helpers/buildYarnPackagesMap.test.js +6 -8
  16. package/dist/helpers/buildYarnPackagesMap.test.js.map +1 -1
  17. package/dist/helpers/collectWorkspaces.test.js +6 -5
  18. package/dist/helpers/collectWorkspaces.test.js.map +1 -1
  19. package/dist/helpers/collectYarnDependents.test.js +23 -21
  20. package/dist/helpers/collectYarnDependents.test.js.map +1 -1
  21. package/dist/helpers/packageJsonResolutions.test.js +5 -4
  22. package/dist/helpers/packageJsonResolutions.test.js.map +1 -1
  23. package/dist/helpers/parseYarnLockPackages.test.js +12 -9
  24. package/dist/helpers/parseYarnLockPackages.test.js.map +1 -1
  25. package/dist/helpers/toLockstepGraph.test.js +7 -6
  26. package/dist/helpers/toLockstepGraph.test.js.map +1 -1
  27. package/dist/helpers/yarnDescriptor.test.js +12 -12
  28. package/dist/helpers/yarnDescriptor.test.js.map +1 -1
  29. package/dist/identifyClusterFixes.test.js +28 -28
  30. package/dist/identifyClusterFixes.test.js.map +1 -1
  31. package/dist/identifyResolutionFixes.test.js +14 -13
  32. package/dist/identifyResolutionFixes.test.js.map +1 -1
  33. package/dist/readYarnLock.test.js +5 -4
  34. package/dist/readYarnLock.test.js.map +1 -1
  35. package/package.json +4 -3
  36. package/src/applyClusterFixes.test.ts +91 -35
  37. package/src/applyClusterFixes.ts +10 -26
  38. package/src/bin/yarn-berry-deduplicate.test.ts +59 -48
  39. package/src/dedupeEndToEnd.test.ts +59 -54
  40. package/src/displayMany.test.ts +15 -18
  41. package/src/helpers/applyIdentifiedFixesToYarnLock.test.ts +67 -56
  42. package/src/helpers/buildYarnPackagesMap.test.ts +20 -18
  43. package/src/helpers/collectWorkspaces.test.ts +17 -13
  44. package/src/helpers/collectYarnDependents.test.ts +103 -87
  45. package/src/helpers/packageJsonResolutions.test.ts +10 -6
  46. package/src/helpers/parseYarnLockPackages.test.ts +27 -16
  47. package/src/helpers/toLockstepGraph.test.ts +7 -6
  48. package/src/helpers/yarnDescriptor.test.ts +36 -25
  49. package/src/identifyClusterFixes.test.ts +34 -30
  50. package/src/identifyResolutionFixes.test.ts +35 -27
  51. package/src/readYarnLock.test.ts +10 -7
@@ -1,7 +1,8 @@
1
- import { afterEach, describe, expect, it } from "bun:test";
1
+ import { deepStrictEqual, ok, strictEqual } from "node:assert/strict";
2
2
  import { spawnSync } from "node:child_process";
3
3
  import { cpSync, existsSync, readFileSync, writeFileSync } from "node:fs";
4
4
  import { join } from "node:path";
5
+ import { afterEach, describe, it } from "node:test";
5
6
  import { fileURLToPath } from "node:url";
6
7
  import { buildYarnPackagesMap } from "./helpers/buildYarnPackagesMap.js";
7
8
  import { fixtureDir } from "./helpers/fixtures.js";
@@ -104,37 +105,39 @@ const linkedVersions = (dir, packageName, nodeLinker) => {
104
105
  return [...new Set(versions)].toSorted();
105
106
  };
106
107
  suite("yarn-berry-deduplicate end to end", () => {
107
- it.each(["node-modules", "pnp"])("merges the stale range onto the pinned version and leaves yarn installing it (nodeLinker: %s)", (nodeLinker) => {
108
- const dir = projects.create();
109
- cpSync(fixtureDir("e2e-stale-range"), dir, { recursive: true });
110
- setNodeLinker(dir, nodeLinker);
111
- const manifestsBefore = ["package.json", "packages/a/package.json"].map((path) => readFileSync(join(dir, path), "utf8"));
112
- const installed = install(dir);
113
- expect(installed.status).toBe(0);
114
- // `a` asks for `^5.0.7` and the lockfile still answers 5.0.7, while `b`
115
- // pins the 5.3.1 that would satisfy them both
116
- expect(resolutionsOf(dir, "printable-shell-command")).toEqual([
117
- "printable-shell-command@npm:5.3.1",
118
- "printable-shell-command@npm:5.0.7",
119
- ]);
120
- const check = dedupe(dir, "--check");
121
- expect(check.status).toBe(1);
122
- const applied = dedupe(dir);
123
- expect(applied.status).toBe(0);
124
- expect(applied.output).toContain("yarn.lock updated");
125
- // the rewrite only asks; yarn is what applies it
126
- const reinstalled = install(dir);
127
- expect(reinstalled.status).toBe(0);
128
- expect(resolutionsOf(dir, "printable-shell-command")).toEqual([
129
- "printable-shell-command@npm:5.3.1",
130
- ]);
131
- // the same thing again, read from what yarn actually put on disk
132
- expect(linkedVersions(dir, "printable-shell-command", nodeLinker)).toEqual(["5.3.1"]);
133
- // nothing was pinned into a manifest to hold it there
134
- expect(["package.json", "packages/a/package.json"].map((path) => readFileSync(join(dir, path), "utf8"))).toEqual(manifestsBefore);
135
- // and yarn agrees the lockfile is one CI could install from as it stands
136
- expect(install(dir, "--immutable").status).toBe(0);
137
- expect(dedupe(dir, "--check").status).toBe(0);
138
- }, 300_000);
108
+ for (const nodeLinker of ["node-modules", "pnp"]) {
109
+ it(`merges the stale range onto the pinned version and leaves yarn installing it (nodeLinker: ${nodeLinker})`, { timeout: 300_000 }, () => {
110
+ const dir = projects.create();
111
+ cpSync(fixtureDir("e2e-stale-range"), dir, { recursive: true });
112
+ setNodeLinker(dir, nodeLinker);
113
+ const manifestsBefore = ["package.json", "packages/a/package.json"].map((path) => readFileSync(join(dir, path), "utf8"));
114
+ const installed = install(dir);
115
+ strictEqual(installed.status, 0);
116
+ // `a` asks for `^5.0.7` and the lockfile still answers 5.0.7, while `b`
117
+ // pins the 5.3.1 that would satisfy them both
118
+ deepStrictEqual(resolutionsOf(dir, "printable-shell-command"), [
119
+ "printable-shell-command@npm:5.3.1",
120
+ "printable-shell-command@npm:5.0.7",
121
+ ]);
122
+ const check = dedupe(dir, "--check");
123
+ strictEqual(check.status, 1);
124
+ const applied = dedupe(dir);
125
+ strictEqual(applied.status, 0);
126
+ ok(applied.output.includes("yarn.lock updated"));
127
+ // the rewrite only asks; yarn is what applies it
128
+ const reinstalled = install(dir);
129
+ strictEqual(reinstalled.status, 0);
130
+ deepStrictEqual(resolutionsOf(dir, "printable-shell-command"), [
131
+ "printable-shell-command@npm:5.3.1",
132
+ ]);
133
+ // the same thing again, read from what yarn actually put on disk
134
+ deepStrictEqual(linkedVersions(dir, "printable-shell-command", nodeLinker), ["5.3.1"]);
135
+ // nothing was pinned into a manifest to hold it there
136
+ deepStrictEqual(["package.json", "packages/a/package.json"].map((path) => readFileSync(join(dir, path), "utf8")), manifestsBefore);
137
+ // and yarn agrees the lockfile is one CI could install from as it stands
138
+ strictEqual(install(dir, "--immutable").status, 0);
139
+ strictEqual(dedupe(dir, "--check").status, 0);
140
+ });
141
+ }
139
142
  });
140
143
  //# sourceMappingURL=dedupeEndToEnd.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dedupeEndToEnd.test.js","sourceRoot":"","sources":["../src/dedupeEndToEnd.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dedupeEndToEnd.test.js","sourceRoot":"","sources":["../src/dedupeEndToEnd.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ClusterFix, DuplicateSnapshot, PackageFilterOptions, PlannedOverride } from "pm-dedup-core";
1
+ import type { ClusterFix, DuplicateSnapshot, PackageFilterOptions, PlannedOverride, VersionsSnapshot } from "pm-dedup-core";
2
2
  export type ClusterApplyStatus = "applied" | "dry-run" | "nothing-to-do" | "reverted";
3
3
  export interface ClusterApplyOutcome {
4
4
  status: ClusterApplyStatus;
@@ -15,9 +15,10 @@ export interface ApplyClusterFixesOptions {
15
15
  verifyFrozen?: () => number | null;
16
16
  readFixes?: (projectDir: string) => ClusterFix[];
17
17
  readDuplicates?: (lockPath: string) => DuplicateSnapshot;
18
+ readVersions?: (lockPath: string) => VersionsSnapshot;
18
19
  filter?: PackageFilterOptions;
19
20
  packageManagerResiduals?: string;
20
21
  color?: boolean;
21
22
  }
22
- export declare const applyClusterFixes: ({ projectDir, dryRun, log, resolve, verifyFrozen, readFixes, readDuplicates, filter, packageManagerResiduals, color, }: ApplyClusterFixesOptions) => ClusterApplyOutcome;
23
+ export declare const applyClusterFixes: ({ projectDir, dryRun, log, resolve, verifyFrozen, readFixes, readDuplicates, readVersions, filter, packageManagerResiduals, color, }: ApplyClusterFixesOptions) => ClusterApplyOutcome;
23
24
  //# sourceMappingURL=applyClusterFixes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"applyClusterFixes.d.ts","sourceRoot":"","sources":["../../src/applyClusterFixes.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAEV,UAAU,EACV,iBAAiB,EAEjB,oBAAoB,EAEpB,eAAe,EAEhB,MAAM,eAAe,CAAC;AAgBvB,MAAM,MAAM,kBAAkB,GAC1B,SAAS,GACT,SAAS,GACT,eAAe,GACf,UAAU,CAAC;AAEf,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,EAAE,iBAAiB,CAAC;IAEzB,eAAe,EAAE,eAAe,EAAE,CAAC;IAEnC,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAEjC,OAAO,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACnC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC;IACjD,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,iBAAiB,CAAC;IAGzD,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAG9B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAGjC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAyDD,eAAO,MAAM,iBAAiB,2HAgB3B,wBAAwB,KAAG,mBAuS7B,CAAC"}
1
+ {"version":3,"file":"applyClusterFixes.d.ts","sourceRoot":"","sources":["../../src/applyClusterFixes.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAEV,UAAU,EACV,iBAAiB,EAGjB,oBAAoB,EAEpB,eAAe,EAEf,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAiBvB,MAAM,MAAM,kBAAkB,GAC1B,SAAS,GACT,SAAS,GACT,eAAe,GACf,UAAU,CAAC;AAEf,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,EAAE,iBAAiB,CAAC;IAEzB,eAAe,EAAE,eAAe,EAAE,CAAC;IAEnC,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAEjC,OAAO,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACnC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC;IACjD,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,iBAAiB,CAAC;IACzD,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,gBAAgB,CAAC;IAGtD,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAG9B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAGjC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA2CD,eAAO,MAAM,iBAAiB,yIAiB3B,wBAAwB,KAAG,mBA8R7B,CAAC"}
@@ -1,4 +1,5 @@
1
- import { describe, expect, it } from "bun:test";
1
+ import { match, ok } from "node:assert/strict";
2
+ import { describe, it } from "node:test";
2
3
  import { buildIdentifiedFixesMap } from "pm-dedup-core";
3
4
  import { displayMany } from "./displayMany.js";
4
5
  import { filterDuplicatesYarnPackagesMap } from "./helpers/buildYarnPackagesMap.js";
@@ -34,46 +35,46 @@ const render = (scenario, overrides = {}) => {
34
35
  describe("displayMany", () => {
35
36
  it("lists each version of a duplicated package, highest first", () => {
36
37
  const output = render("duplicated-printable-shell-command");
37
- expect(output).toContain("printable-shell-command — 2 versions");
38
- expect(output.indexOf("\n 5.0.8")).toBeLessThan(output.indexOf("\n 5.0.7"));
38
+ ok(output.includes("printable-shell-command — 2 versions"));
39
+ ok(output.indexOf("\n 5.0.8") < output.indexOf("\n 5.0.7"));
39
40
  });
40
41
  it("names each requester and the range it declares", () => {
41
42
  const output = render("duplicated-printable-shell-command");
42
- expect(output).toContain("package.json in dependencies");
43
- expect(output).toContain("uses-psc@npm:1.0.0");
44
- expect(output).toContain("^5.0.8");
43
+ ok(output.includes("package.json in dependencies"));
44
+ ok(output.includes("uses-psc@npm:1.0.0"));
45
+ ok(output.includes("^5.0.8"));
45
46
  });
46
47
  // the range alone does not say which declaration it comes from when the
47
48
  // requester reaches the package through a key of another name
48
49
  it("says when a range comes from an aliased declaration", () => {
49
- expect(render("mergeable-alias")).toContain('(as "psc")');
50
+ ok(render("mergeable-alias").includes('(as "psc")'));
50
51
  });
51
52
  // a peer requester constrains the version without holding a copy of its own,
52
53
  // so the range has to be attributable to the block it comes from
53
54
  it("says when a range comes from a peerDependencies declaration", () => {
54
55
  const output = render("peer-range-constrains-merge");
55
- expect(output).toMatch(/uses-peer@npm:1\.0\.0 +requires "\^1\.0\.0" \(peer\)/u);
56
+ match(output, /uses-peer@npm:1\.0\.0 +requires "\^1\.0\.0" \(peer\)/u);
56
57
  // a real dependency edge onto the same package stays unmarked
57
- expect(output).toMatch(/holder@npm:2\.0\.0 +requires "\*"\n/u);
58
+ match(output, /holder@npm:2\.0\.0 +requires "\*"\n/u);
58
59
  });
59
60
  // the version is enough: the package name is the block it sits under
60
61
  it("shows the merge as versions, not resolutions", () => {
61
62
  const output = render("duplicated-printable-shell-command");
62
- expect(output).toContain(" 5.0.7 can be deduped to 5.0.8 (upgrade)");
63
+ ok(output.includes(" 5.0.7 can be deduped to 5.0.8 (upgrade)"));
63
64
  });
64
65
  it("names a downgrade as one", () => {
65
- expect(render("exact-pin-forces-downgrade")).toContain("down");
66
+ ok(render("exact-pin-forces-downgrade").includes("down"));
66
67
  });
67
68
  it("renders the lockstep clusters it is given", () => {
68
69
  const { packages, packagesMap, workspaces } = loadFixture("duplicated-typescript-eslint");
69
70
  const output = render("duplicated-typescript-eslint", {
70
71
  clusterFixes: identifyClusterFixes(packagesMap, packages, workspaces),
71
72
  });
72
- expect(output).toContain("@typescript-eslint");
73
- expect(output).toContain("8.43.0");
73
+ ok(output.includes("@typescript-eslint"));
74
+ ok(output.includes("8.43.0"));
74
75
  });
75
76
  it("reports a lockfile with no duplicate", () => {
76
- expect(render("simple")).toContain("0");
77
+ ok(render("simple").includes("0"));
77
78
  });
78
79
  });
79
80
  //# sourceMappingURL=displayMany.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"displayMany.test.js","sourceRoot":"","sources":["../src/displayMany.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"displayMany.test.js","sourceRoot":"","sources":["../src/displayMany.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { describe, expect, it } from "bun:test";
1
+ import { deepStrictEqual, ok, strictEqual, throws } from "node:assert/strict";
2
+ import { describe, it } from "node:test";
2
3
  import { buildIdentifiedFixesMap, createPackageFilter, selectPackages, } from "pm-dedup-core";
3
4
  import { applyIdentifiedFixesToYarnLock } from "./applyIdentifiedFixesToYarnLock.js";
4
5
  import { filterDuplicatesYarnPackagesMap } from "./buildYarnPackagesMap.js";
@@ -34,10 +35,10 @@ const entryForDescriptor = (entries, descriptor) => {
34
35
  describe("applyIdentifiedFixesToYarnLock", () => {
35
36
  it("merges two resolutions onto the version that satisfies every dependent", () => {
36
37
  const { after, changed, changedKeys } = dedupeFixture("duplicated-printable-shell-command");
37
- expect(changed).toBe(true);
38
- expect(changedKeys).toEqual(["printable-shell-command@npm:^5.0.7"]);
39
- expect(after).toContain('"printable-shell-command@npm:^5.0.7, printable-shell-command@npm:^5.0.8":');
40
- expect(after).not.toContain('resolution: "printable-shell-command@npm:5.0.7"');
38
+ strictEqual(changed, true);
39
+ deepStrictEqual(changedKeys, ["printable-shell-command@npm:^5.0.7"]);
40
+ ok(after.includes('"printable-shell-command@npm:^5.0.7, printable-shell-command@npm:^5.0.8":'));
41
+ ok(!after.includes('resolution: "printable-shell-command@npm:5.0.7"'));
41
42
  });
42
43
  // a descriptor dropped here is a dependency yarn would stop resolving
43
44
  it("keeps every input descriptor", () => {
@@ -49,75 +50,75 @@ describe("applyIdentifiedFixesToYarnLock", () => {
49
50
  ]) {
50
51
  const { entries } = dedupeFixture(name);
51
52
  const { packagesMap } = loadFixture(name);
52
- expect(descriptorsOf(entries)).toHaveLength(Object.values(packagesMap).flatMap((r) => r.flatMap((x) => x.installations)).length);
53
+ strictEqual(descriptorsOf(entries).length, Object.values(packagesMap).flatMap((r) => r.flatMap((x) => x.installations)).length);
53
54
  }
54
55
  });
55
56
  // a yarn.lock key is the range a requester declared, and that is what yarn
56
57
  // matches against: the range stays and the entry under it changes
57
58
  it("moves a descriptor onto the target entry without rewriting it", () => {
58
59
  const { entries } = dedupeFixture("duplicated-printable-shell-command");
59
- expect(entryForDescriptor(entries, "printable-shell-command@npm:^5.0.7")
60
- .resolution).toBe("printable-shell-command@npm:5.0.8");
60
+ strictEqual(entryForDescriptor(entries, "printable-shell-command@npm:^5.0.7")
61
+ .resolution, "printable-shell-command@npm:5.0.8");
61
62
  });
62
63
  it("keeps an alias's own key when it moves", () => {
63
64
  const { entries, after } = dedupeFixture("mergeable-alias");
64
- expect(after).toContain('"printable-shell-command@npm:^5.0.8, psc@npm:printable-shell-command@^5.0.0":');
65
- expect(entryForDescriptor(entries, "psc@npm:printable-shell-command@^5.0.0")
66
- .resolution).toBe("printable-shell-command@npm:5.0.8");
65
+ ok(after.includes('"printable-shell-command@npm:^5.0.8, psc@npm:printable-shell-command@^5.0.0":'));
66
+ strictEqual(entryForDescriptor(entries, "psc@npm:printable-shell-command@^5.0.0")
67
+ .resolution, "printable-shell-command@npm:5.0.8");
67
68
  });
68
69
  it("leaves a clean lockfile byte-identical", () => {
69
70
  const { before, after, changed } = dedupeFixture("simple");
70
- expect(changed).toBe(false);
71
- expect(after).toBe(before);
71
+ strictEqual(changed, false);
72
+ strictEqual(after, before);
72
73
  });
73
74
  it("does not merge ranges that do not overlap", () => {
74
75
  const { before, after, changed } = dedupeFixture("duplicated-babel-frame");
75
- expect(changed).toBe(false);
76
- expect(after).toBe(before);
76
+ strictEqual(changed, false);
77
+ strictEqual(after, before);
77
78
  });
78
79
  it("leaves an alias whose range covers nothing else alone", () => {
79
80
  const { before, after, changed } = dedupeFixture("aliased-range-constrains-merge");
80
- expect(changed).toBe(false);
81
- expect(after).toBe(before);
81
+ strictEqual(changed, false);
82
+ strictEqual(after, before);
82
83
  });
83
84
  it("leaves a pair a peer range forbids merging alone", () => {
84
85
  const { before, after, changed } = dedupeFixture("peer-range-constrains-merge");
85
- expect(changed).toBe(false);
86
- expect(after).toBe(before);
86
+ strictEqual(changed, false);
87
+ strictEqual(after, before);
87
88
  });
88
89
  it("leaves workspace, patch and git resolutions untouched", () => {
89
90
  const { before, after, changed } = dedupeFixture("non-npm");
90
- expect(changed).toBe(false);
91
- expect(after).toBe(before);
91
+ strictEqual(changed, false);
92
+ strictEqual(after, before);
92
93
  });
93
94
  it("merges onto a lower version when an exact pin is the only common one", () => {
94
95
  const { after, changed } = dedupeFixture("exact-pin-forces-downgrade");
95
- expect(changed).toBe(true);
96
- expect(after).toContain('"barcode-detector@npm:3.0.3, barcode-detector@npm:^3.0.0":');
97
- expect(after).not.toContain('resolution: "barcode-detector@npm:3.2.2"');
96
+ strictEqual(changed, true);
97
+ ok(after.includes('"barcode-detector@npm:3.0.3, barcode-detector@npm:^3.0.0":'));
98
+ ok(!after.includes('resolution: "barcode-detector@npm:3.2.2"'));
98
99
  // the entry the merged descriptors now share is the pinned one
99
- expect(after).toContain('resolution: "barcode-detector@npm:3.0.3"');
100
+ ok(after.includes('resolution: "barcode-detector@npm:3.0.3"'));
100
101
  });
101
102
  describe("package filters", () => {
102
103
  it("moves nothing outside the selected packages", () => {
103
104
  const { after, before, changed } = dedupeFixture("workspaces", {
104
105
  include: ["lodash"],
105
106
  });
106
- expect(changed).toBe(false);
107
- expect(after).toBe(before);
107
+ strictEqual(changed, false);
108
+ strictEqual(after, before);
108
109
  });
109
110
  it("moves the selected package", () => {
110
111
  const { changed, changedKeys } = dedupeFixture("workspaces", {
111
112
  include: ["semver"],
112
113
  });
113
- expect(changed).toBe(true);
114
- expect(changedKeys).toEqual(["semver@npm:^7.6.0"]);
114
+ strictEqual(changed, true);
115
+ deepStrictEqual(changedKeys, ["semver@npm:^7.6.0"]);
115
116
  });
116
117
  it("honours an exclusion", () => {
117
118
  const { changed } = dedupeFixture("workspaces", {
118
119
  exclude: ["semver"],
119
120
  });
120
- expect(changed).toBe(false);
121
+ strictEqual(changed, false);
121
122
  });
122
123
  });
123
124
  // group membership is by target version, which is not the same as which
@@ -148,8 +149,8 @@ describe("applyIdentifiedFixesToYarnLock", () => {
148
149
  ],
149
150
  ]);
150
151
  const { entries: after } = applyIdentifiedFixesToYarnLock(entries, fixes);
151
- expect(packageEntries(after)).toHaveLength(1);
152
- expect(entryForDescriptor(after, "lib@npm:^1.0.0")).toEqual({
152
+ strictEqual(packageEntries(after).length, 1);
153
+ deepStrictEqual(entryForDescriptor(after, "lib@npm:^1.0.0"), {
153
154
  key: "lib@npm:1.5.0, lib@npm:^1.0.0",
154
155
  resolution: "lib@npm:1.5.0",
155
156
  });
@@ -163,7 +164,7 @@ describe("applyIdentifiedFixesToYarnLock", () => {
163
164
  version: 1.0.0
164
165
  resolution: "lib@npm:1.0.0"
165
166
  `);
166
- expect(() => applyIdentifiedFixesToYarnLock(entries, new Map([
167
+ throws(() => applyIdentifiedFixesToYarnLock(entries, new Map([
167
168
  [
168
169
  "lib",
169
170
  [
@@ -173,7 +174,7 @@ describe("applyIdentifiedFixesToYarnLock", () => {
173
174
  },
174
175
  ],
175
176
  ],
176
- ]))).toThrow('No lockfile entry found for "lib@npm:9.9.9"');
177
+ ])), /No lockfile entry found for "lib@npm:9\.9\.9"/u);
177
178
  });
178
179
  // two fixes for one package can chain: stopping at the first hop would leave
179
180
  // a descriptor on an entry that itself moved away
@@ -208,8 +209,8 @@ describe("applyIdentifiedFixesToYarnLock", () => {
208
209
  ],
209
210
  ],
210
211
  ]));
211
- expect(packageEntries(after)).toHaveLength(1);
212
- expect(entryForDescriptor(after, "lib@npm:^1.0.0").resolution).toBe("lib@npm:1.5.0");
212
+ strictEqual(packageEntries(after).length, 1);
213
+ strictEqual(entryForDescriptor(after, "lib@npm:^1.0.0").resolution, "lib@npm:1.5.0");
213
214
  });
214
215
  // two versions each said to replace the other is an instruction no rewrite
215
216
  // can honour; obeying half of it would swap the entries under them
@@ -234,12 +235,12 @@ describe("applyIdentifiedFixesToYarnLock", () => {
234
235
  ],
235
236
  ],
236
237
  ]));
237
- expect(result.changed).toBe(false);
238
- expect(stringifyYarnLock(after)).toBe(stringifyYarnLock(entries));
238
+ strictEqual(result.changed, false);
239
+ strictEqual(stringifyYarnLock(after), stringifyYarnLock(entries));
239
240
  });
240
241
  it("keeps __metadata", () => {
241
242
  const { entries } = dedupeFixture("duplicated-printable-shell-command");
242
- expect(entries.__metadata).toEqual({ version: "8", cacheKey: "10c0" });
243
+ deepStrictEqual(entries.__metadata, { version: "8", cacheKey: "10c0" });
243
244
  });
244
245
  });
245
246
  //# sourceMappingURL=applyIdentifiedFixesToYarnLock.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"applyIdentifiedFixesToYarnLock.test.js","sourceRoot":"","sources":["../../src/helpers/applyIdentifiedFixesToYarnLock.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"applyIdentifiedFixesToYarnLock.test.js","sourceRoot":"","sources":["../../src/helpers/applyIdentifiedFixesToYarnLock.test.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
- import { describe, expect, it } from "bun:test";
1
+ import { deepStrictEqual, strictEqual } from "node:assert/strict";
2
+ import { describe, it } from "node:test";
2
3
  import { filterDuplicatesYarnPackagesMap } from "./buildYarnPackagesMap.js";
3
4
  import { loadFixture } from "./fixtures.js";
4
5
  describe("buildYarnPackagesMap", () => {
5
6
  it("groups the resolutions of a name and records what asked for each", () => {
6
7
  const { packagesMap } = loadFixture("duplicated-printable-shell-command");
7
- expect(packagesMap["printable-shell-command"]?.map(({ resolution, installations }) => ({ resolution, installations }))).toEqual([
8
+ deepStrictEqual(packagesMap["printable-shell-command"]?.map(({ resolution, installations }) => ({ resolution, installations })), [
8
9
  {
9
10
  resolution: "printable-shell-command@npm:5.0.7",
10
11
  installations: ["printable-shell-command@npm:^5.0.7"],
@@ -17,21 +18,18 @@ describe("buildYarnPackagesMap", () => {
17
18
  });
18
19
  it("counts one resolution however many descriptors reach it", () => {
19
20
  const { packagesMap } = loadFixture("simple");
20
- expect(packagesMap.lodash).toHaveLength(1);
21
+ strictEqual(packagesMap.lodash?.length, 1);
21
22
  });
22
23
  it("keeps only the names resolved more than once", () => {
23
24
  const { packagesMap } = loadFixture("duplicated-printable-shell-command");
24
25
  const duplicates = filterDuplicatesYarnPackagesMap(packagesMap);
25
- expect(Object.keys(duplicates)).toEqual(["printable-shell-command"]);
26
+ deepStrictEqual(Object.keys(duplicates), ["printable-shell-command"]);
26
27
  });
27
28
  // the patch layer is a second resolution of the same name, and it is one the
28
29
  // npm passes must not merge away
29
30
  it("reports a patched package alongside the release it patches", () => {
30
31
  const { packagesMap } = loadFixture("non-npm");
31
- expect(packagesMap.resolve?.map((r) => r.package.type)).toEqual([
32
- "npm",
33
- "other",
34
- ]);
32
+ deepStrictEqual(packagesMap.resolve?.map((r) => r.package.type), ["npm", "other"]);
35
33
  });
36
34
  });
37
35
  //# sourceMappingURL=buildYarnPackagesMap.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildYarnPackagesMap.test.js","sourceRoot":"","sources":["../../src/helpers/buildYarnPackagesMap.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC,oCAAoC,CAAC,CAAC;QAE1E,MAAM,CACJ,WAAW,CAAC,yBAAyB,CAAC,EAAE,GAAG,CACzC,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CACnE,CACF,CAAC,OAAO,CAAC;YACR;gBACE,UAAU,EAAE,mCAAmC;gBAC/C,aAAa,EAAE,CAAC,oCAAoC,CAAC;aACtD;YACD;gBACE,UAAU,EAAE,mCAAmC;gBAC/C,aAAa,EAAE,CAAC,oCAAoC,CAAC;aACtD;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC,oCAAoC,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAG,+BAA+B,CAAC,WAAW,CAAC,CAAC;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,iCAAiC;IACjC,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;QAE/C,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YAC9D,KAAK;YACL,OAAO;SACR,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"buildYarnPackagesMap.test.js","sourceRoot":"","sources":["../../src/helpers/buildYarnPackagesMap.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC,oCAAoC,CAAC,CAAC;QAE1E,eAAe,CACb,WAAW,CAAC,yBAAyB,CAAC,EAAE,GAAG,CACzC,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CACnE,EACD;YACE;gBACE,UAAU,EAAE,mCAAmC;gBAC/C,aAAa,EAAE,CAAC,oCAAoC,CAAC;aACtD;YACD;gBACE,UAAU,EAAE,mCAAmC;gBAC/C,aAAa,EAAE,CAAC,oCAAoC,CAAC;aACtD;SACF,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE9C,WAAW,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC,oCAAoC,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAG,+BAA+B,CAAC,WAAW,CAAC,CAAC;QAEhE,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,iCAAiC;IACjC,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;QAE/C,eAAe,CACb,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAC/C,CAAC,KAAK,EAAE,OAAO,CAAC,CACjB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
- import { describe, expect, it } from "bun:test";
1
+ import { deepStrictEqual, strictEqual } from "node:assert/strict";
2
+ import { describe, it } from "node:test";
2
3
  import { collectWorkspaces } from "./collectWorkspaces.js";
3
4
  import { loadFixture } from "./fixtures.js";
4
5
  import { parseYarnLockPackages } from "./parseYarnLockPackages.js";
@@ -6,7 +7,7 @@ import { parseYarnLock } from "./syml.js";
6
7
  describe("collectWorkspaces", () => {
7
8
  it("reads the root workspace as the project directory itself", () => {
8
9
  const { workspaces } = loadFixture("simple");
9
- expect(workspaces).toEqual([
10
+ deepStrictEqual(workspaces, [
10
11
  {
11
12
  path: "",
12
13
  name: "root-workspace",
@@ -21,7 +22,7 @@ describe("collectWorkspaces", () => {
21
22
  it("recovers the dependency block from the manifest", () => {
22
23
  const { workspaces } = loadFixture("workspaces");
23
24
  const app = workspaces.find((workspace) => workspace.path === "packages/app");
24
- expect(app?.dependencies).toEqual([
25
+ deepStrictEqual(app?.dependencies, [
25
26
  { key: "lodash", value: "^4.17.0", depType: "dependencies" },
26
27
  { key: "semver", value: "^7.6.0", depType: "devDependencies" },
27
28
  ]);
@@ -36,7 +37,7 @@ describe("collectWorkspaces", () => {
36
37
  dependencies:
37
38
  lodash: "npm:^4.17.0"
38
39
  `));
39
- expect(collectWorkspaces(packages, () => undefined)).toEqual([
40
+ deepStrictEqual(collectWorkspaces(packages, () => undefined), [
40
41
  {
41
42
  path: "packages/app",
42
43
  name: "app",
@@ -54,7 +55,7 @@ describe("collectWorkspaces", () => {
54
55
  version: 0.0.0-use.local
55
56
  resolution: "app@workspace:packages/app"
56
57
  `));
57
- expect(collectWorkspaces(packages, () => undefined)).toHaveLength(1);
58
+ strictEqual(collectWorkspaces(packages, () => undefined).length, 1);
58
59
  });
59
60
  });
60
61
  //# sourceMappingURL=collectWorkspaces.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collectWorkspaces.test.js","sourceRoot":"","sources":["../../src/helpers/collectWorkspaces.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC;YACzB;gBACE,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,gBAAgB;gBACtB,YAAY,EAAE;oBACZ,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE;iBAC7D;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,mEAAmE;IACnE,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CACzB,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,cAAc,CACjD,CAAC;QAEF,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC;YAChC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE;YAC5D,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE;SAC/D,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,QAAQ,GAAG,qBAAqB,CACpC,aAAa,CAAC;;;;;;;;CAQnB,CAAC,CACG,CAAC;QAEF,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;YAC3D;gBACE,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,KAAK;gBACX,YAAY,EAAE;oBACZ,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE;iBACjE;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,QAAQ,GAAG,qBAAqB,CACpC,aAAa,CAAC;;;;;;CAMnB,CAAC,CACG,CAAC;QAEF,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"collectWorkspaces.test.js","sourceRoot":"","sources":["../../src/helpers/collectWorkspaces.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE7C,eAAe,CAAC,UAAU,EAAE;YAC1B;gBACE,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,gBAAgB;gBACtB,YAAY,EAAE;oBACZ,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE;iBAC7D;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,mEAAmE;IACnE,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CACzB,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,cAAc,CACjD,CAAC;QAEF,eAAe,CAAC,GAAG,EAAE,YAAY,EAAE;YACjC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE;YAC5D,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE;SAC/D,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,QAAQ,GAAG,qBAAqB,CACpC,aAAa,CAAC;;;;;;;;CAQnB,CAAC,CACG,CAAC;QAEF,eAAe,CACb,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,EAC5C;YACE;gBACE,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,KAAK;gBACX,YAAY,EAAE;oBACZ,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE;iBACjE;aACF;SACF,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,QAAQ,GAAG,qBAAqB,CACpC,aAAa,CAAC;;;;;;CAMnB,CAAC,CACG,CAAC;QAEF,WAAW,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}