pipework 0.210.0 → 0.211.1
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 +8 -0
- package/REFERENCE.md +1 -1
- package/dist/async/jobs/execute.d.ts +2 -0
- package/dist/async/jobs/execute.d.ts.map +1 -1
- package/dist/async/jobs/execute.js +2 -0
- package/dist/async/jobs/execute.js.map +1 -1
- package/dist/async/steps/graph.d.ts.map +1 -1
- package/dist/async/steps/graph.js +24 -4
- package/dist/async/steps/graph.js.map +1 -1
- package/dist/async/steps/types.d.ts +6 -2
- package/dist/async/steps/types.d.ts.map +1 -1
- package/dist/cli/commands/check.js +5 -2
- package/dist/cli/commands/check.js.map +1 -1
- package/dist/cli/commands/shared/config-pipework-version.d.ts +16 -0
- package/dist/cli/commands/shared/config-pipework-version.d.ts.map +1 -0
- package/dist/cli/commands/shared/config-pipework-version.js +22 -0
- package/dist/cli/commands/shared/config-pipework-version.js.map +1 -0
- package/dist/cli/commands/upgrade.d.ts.map +1 -1
- package/dist/cli/commands/upgrade.js +22 -2
- package/dist/cli/commands/upgrade.js.map +1 -1
- package/dist/core/surface/worker.d.ts.map +1 -1
- package/dist/core/surface/worker.js +2 -1
- package/dist/core/surface/worker.js.map +1 -1
- package/dist/request/context/create.d.ts +2 -0
- package/dist/request/context/create.d.ts.map +1 -1
- package/dist/request/context/create.js +3 -0
- package/dist/request/context/create.js.map +1 -1
- package/dist/request/context/types.d.ts +2 -0
- package/dist/request/context/types.d.ts.map +1 -1
- package/dist/workspace/detect-pipework-copies.d.ts +8 -0
- package/dist/workspace/detect-pipework-copies.d.ts.map +1 -1
- package/dist/workspace/detect-pipework-copies.js +50 -10
- package/dist/workspace/detect-pipework-copies.js.map +1 -1
- package/dist/workspace/sync.d.ts.map +1 -1
- package/dist/workspace/sync.js +11 -2
- package/dist/workspace/sync.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,40 +1,80 @@
|
|
|
1
1
|
import { readdirSync, readFileSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
+
// Pipework versions named by the keys of `node_modules/.pnpm/lock.yaml`, or undefined when the
|
|
4
|
+
// file is absent, unreadable, or names none (a key format this scan does not know). Keys seen across pnpm versions: `pipework@0.211.0(peers):`,
|
|
5
|
+
// `/pipework@0.211.0(peers):`, `/pipework/0.11.0_peerhash:`, any of them quoted. Scanned by
|
|
6
|
+
// line so no YAML parser is needed; `pipework-flow-parser@…` never matches (`@` or `/` must follow).
|
|
7
|
+
function readLockedVersions(storeDir) {
|
|
8
|
+
let raw;
|
|
9
|
+
try {
|
|
10
|
+
raw = readFileSync(join(storeDir, 'lock.yaml'), 'utf8');
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
const versions = new Set();
|
|
16
|
+
for (const line of raw.split('\n')) {
|
|
17
|
+
const m = /^\s*['"]?\/?pipework[@/]([^()_:'"\s]+)/.exec(line);
|
|
18
|
+
if (m !== null)
|
|
19
|
+
versions.add(m[1]);
|
|
20
|
+
}
|
|
21
|
+
return versions.size === 0 ? undefined : versions;
|
|
22
|
+
}
|
|
3
23
|
// Detects every physical copy of pipework resolvable from a workspace's install tree.
|
|
4
24
|
// Two copies of the SAME version are harmless (the runtime broker shares one ALS across
|
|
5
25
|
// them); copies of DIFFERENT versions are the multi-instance hazard — a shared library
|
|
6
26
|
// resolving a different pipework than its workspace forks the ALS and error classes
|
|
7
27
|
// (no active context; 403->500), and on 0.12.0+ the broker throws at first use. Catching
|
|
8
28
|
// the skew here, at check/CI time, surfaces it before first request.
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
29
|
+
//
|
|
30
|
+
// A virtual-store directory the install does not resolve (its version is not in the store's
|
|
31
|
+
// lock.yaml) is an orphan: pnpm leaves the previous version's directory behind after a move.
|
|
32
|
+
// It is reported apart and never counted as a loaded copy. With no readable lock.yaml, or one
|
|
33
|
+
// naming no pipework, every store directory counts.
|
|
34
|
+
export function detectPipeworkInstall(cwd) {
|
|
35
|
+
const copies = new Map();
|
|
36
|
+
const orphans = new Map();
|
|
37
|
+
const read = (pkgJsonPath) => {
|
|
12
38
|
try {
|
|
13
39
|
const pkg = JSON.parse(readFileSync(pkgJsonPath, 'utf8'));
|
|
14
40
|
if (pkg.name === 'pipework' && typeof pkg.version === 'string') {
|
|
15
|
-
|
|
41
|
+
return { version: pkg.version, path: pkgJsonPath };
|
|
16
42
|
}
|
|
17
43
|
}
|
|
18
44
|
catch {
|
|
19
45
|
// not a readable/parseable package.json — skip
|
|
20
46
|
}
|
|
47
|
+
return undefined;
|
|
21
48
|
};
|
|
22
|
-
// Hoisted copy.
|
|
23
|
-
|
|
49
|
+
// Hoisted copy: always resolved.
|
|
50
|
+
const hoisted = read(join(cwd, 'node_modules', 'pipework', 'package.json'));
|
|
51
|
+
if (hoisted !== undefined)
|
|
52
|
+
copies.set(hoisted.path, hoisted);
|
|
24
53
|
// pnpm virtual store: node_modules/.pnpm/pipework@<version>[_<peerhash>]/node_modules/pipework.
|
|
25
54
|
// `pipework@` (not `pipework-`) excludes pipework-flow-parser and other prefixed packages.
|
|
26
55
|
const pnpmDir = join(cwd, 'node_modules', '.pnpm');
|
|
27
56
|
try {
|
|
57
|
+
const locked = readLockedVersions(pnpmDir);
|
|
28
58
|
for (const entry of readdirSync(pnpmDir)) {
|
|
29
|
-
if (entry.startsWith('pipework@'))
|
|
30
|
-
|
|
31
|
-
|
|
59
|
+
if (!entry.startsWith('pipework@'))
|
|
60
|
+
continue;
|
|
61
|
+
const c = read(join(pnpmDir, entry, 'node_modules', 'pipework', 'package.json'));
|
|
62
|
+
if (c === undefined)
|
|
63
|
+
continue;
|
|
64
|
+
if (locked === undefined || locked.has(c.version))
|
|
65
|
+
copies.set(c.path, c);
|
|
66
|
+
else
|
|
67
|
+
orphans.set(c.path, c);
|
|
32
68
|
}
|
|
33
69
|
}
|
|
34
70
|
catch {
|
|
35
71
|
// no .pnpm store (npm/yarn, or not installed) — the hoisted check above still applies
|
|
36
72
|
}
|
|
37
|
-
return [...
|
|
73
|
+
return { copies: [...copies.values()], orphans: [...orphans.values()] };
|
|
74
|
+
}
|
|
75
|
+
/** The copies the install resolves; see detectPipeworkInstall for the orphans. */
|
|
76
|
+
export function detectPipeworkCopies(cwd) {
|
|
77
|
+
return detectPipeworkInstall(cwd).copies;
|
|
38
78
|
}
|
|
39
79
|
/** Distinct pipework versions across the resolved copies, sorted. More than one means skew. */
|
|
40
80
|
export function distinctPipeworkVersions(copies) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect-pipework-copies.js","sourceRoot":"","sources":["../../src/workspace/detect-pipework-copies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"detect-pipework-copies.js","sourceRoot":"","sources":["../../src/workspace/detect-pipework-copies.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/workspace/sync.ts"],"names":[],"mappings":"AAKA,OAAO,EAA2C,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAC3F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEzD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAID,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAA;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IAExB,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAA;IAC9C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CACjC;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CA6CjD;
|
|
1
|
+
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/workspace/sync.ts"],"names":[],"mappings":"AAKA,OAAO,EAA2C,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAC3F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEzD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAClC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAID,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAA;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IAExB,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAA;IAC9C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CACjC;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CA6CjD;AA8FD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAMnF"}
|
package/dist/workspace/sync.js
CHANGED
|
@@ -15,8 +15,8 @@ export function sync(input) {
|
|
|
15
15
|
name: input.appName,
|
|
16
16
|
...(input.config.scripts !== undefined ? { scripts: input.config.scripts } : {}),
|
|
17
17
|
...(input.config.packageManager !== undefined ? { packageManager: input.config.packageManager } : {}),
|
|
18
|
-
...(input.config.dependencies !== undefined ? { dependencies: input.config.dependencies } : {}),
|
|
19
|
-
...(input.config.devDependencies !== undefined ? { devDependencies: input.config.devDependencies } : {}),
|
|
18
|
+
...(input.config.dependencies !== undefined ? { dependencies: pinPipework(input.config.dependencies, input.pipeworkVersion) } : {}),
|
|
19
|
+
...(input.config.devDependencies !== undefined ? { devDependencies: pinPipework(input.config.devDependencies, input.pipeworkVersion) } : {}),
|
|
20
20
|
modules,
|
|
21
21
|
pipeworkVersion,
|
|
22
22
|
hasVitest: input.config.vitest !== undefined,
|
|
@@ -44,6 +44,15 @@ export function sync(input) {
|
|
|
44
44
|
}
|
|
45
45
|
return { files, written, skipped, removed, pipeworkVersion };
|
|
46
46
|
}
|
|
47
|
+
// An explicit version (`pipework upgrade <v>`) outranks the config's own pipework pin; left
|
|
48
|
+
// alone, that pin lands in package.json beside the new version and pnpm keeps the old one.
|
|
49
|
+
function pinPipework(deps, explicit) {
|
|
50
|
+
const current = deps['pipework'];
|
|
51
|
+
if (explicit === undefined || typeof current !== 'string')
|
|
52
|
+
return { ...deps };
|
|
53
|
+
const prefix = /^[\^~>=<]*/.exec(current)?.[0] ?? '';
|
|
54
|
+
return { ...deps, pipework: `${prefix}${explicit}` };
|
|
55
|
+
}
|
|
47
56
|
function isPackageJson(relativePath) {
|
|
48
57
|
return relativePath === 'package.json' || relativePath.endsWith('/package.json');
|
|
49
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/workspace/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAChE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAuB,MAAM,eAAe,CAAA;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAA4C,MAAM,eAAe,CAAA;AAgB3F,MAAM,iBAAiB,GAAG,CAAC,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAU,CAAA;AAW1F,MAAM,UAAU,IAAI,CAAC,KAAgB;IACnC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,6BAA6B,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,mBAAmB,EAAE,CAAA;IAErH,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC5E,GAAG,GAAG;QACN,eAAe,EAAE,qBAAqB,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC;KACpE,CAAC,CAAC,CAAA;IAEH,MAAM,eAAe,GAAoB;QACvC,IAAI,EAAE,KAAK,CAAC,OAAO;QACnB,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChF,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/workspace/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAChE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAuB,MAAM,eAAe,CAAA;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAA4C,MAAM,eAAe,CAAA;AAgB3F,MAAM,iBAAiB,GAAG,CAAC,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAU,CAAA;AAW1F,MAAM,UAAU,IAAI,CAAC,KAAgB;IACnC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,6BAA6B,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,mBAAmB,EAAE,CAAA;IAErH,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC5E,GAAG,GAAG;QACN,eAAe,EAAE,qBAAqB,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC;KACpE,CAAC,CAAC,CAAA;IAEH,MAAM,eAAe,GAAoB;QACvC,IAAI,EAAE,KAAK,CAAC,OAAO;QACnB,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChF,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5I,OAAO;QACP,eAAe;QACf,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;KAC7C,CAAA;IAED,MAAM,KAAK,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAA;IAEhD,0BAA0B,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;IAErD,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,MAAM,OAAO,GAAwB,EAAE,CAAA;IAEvC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;QACnD,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC7B,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAEnC,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;QACvC,IAAI,QAAQ,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YAC9B,OAAO,EAAE,CAAA;QACX,CAAC;aAAM,CAAC;YACN,IAAI,QAAQ,KAAK,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC/D,OAAO,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;YACjF,CAAC;YACD,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC9C,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAA;AAC9D,CAAC;AAED,4FAA4F;AAC5F,2FAA2F;AAC3F,SAAS,WAAW,CAClB,IAAiC,EACjC,QAA4B;IAE5B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAA;IAChC,IAAI,QAAQ,KAAK,SAAS,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAA;IAC7E,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IACpD,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,GAAG,QAAQ,EAAE,EAAE,CAAA;AACtD,CAAC;AAED,SAAS,aAAa,CAAC,YAAoB;IACzC,OAAO,YAAY,KAAK,cAAc,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAA;AAClF,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACvC,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAC5E,CAAC,CAAC,MAAiC;YACnC,CAAC,CAAC,SAAS,CAAA;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED,2FAA2F;AAC3F,4FAA4F;AAC5F,2FAA2F;AAC3F,6EAA6E;AAC7E,SAAS,0BAA0B,CACjC,KAA+B,EAC/B,OAAkC,EAClC,GAAW;IAEX,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,eAAe,KAAK,IAAI,CAAC,YAAY,CAAC,CAAA;QACrF,IAAI,GAAG,KAAK,SAAS;YAAE,SAAQ;QAC/B,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAA;QACtD,IAAI,GAAG,KAAK,SAAS;YAAE,SAAQ;QAC/B,IAAI,OAAO,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,QAAQ;YAAE,SAAQ;QAClE,KAAK,CAAC,IAAI,CACR,KAAK,IAAI,CAAC,YAAY,mDAAmD,GAAG,CAAC,GAAG,4EAA4E,CAC7J,CAAA;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAM;IAC9B,MAAM,IAAI,KAAK,CACb,mCAAmC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,wGAAwG;QAC/J,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CACxB,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,MAAc,EAAE,MAAc;IACvE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IAClC,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IACjC,IAAI,MAAM,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAA;IAC1D,MAAM,GAAG,GAAwB,EAAE,CAAA;IACnC,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI;YAAE,SAAQ;QAC7D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,2DAA2D;YAC3D,MAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;gBAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;gBACrB,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,CAAA;YAClE,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,aAAa;gBAAE,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACrD,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB;IAC1B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAA;QACzF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAwB,CAAA;QAC7E,OAAO,GAAG,CAAC,OAAO,CAAA;IACpB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAA;IAChB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,MAAiB;IAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,UAAU,CAAC,CAAA;IAClD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IAC/D,MAAM,WAAW,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC,UAAU,CAAC,CAAA;IACxD,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,kBAAkB,CAAC,WAAW,CAAC,CAAA;IACrE,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAe;IACzC,OAAO,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;AAC1C,CAAC"}
|