optiprune 1.8.17 → 2.1.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/dist/ast-utils.d.ts +149 -0
- package/dist/ast-utils.js +36 -0
- package/dist/ast-utils.js.map +1 -0
- package/dist/engine.js +11 -13
- package/dist/engine.js.map +1 -1
- package/dist/framework-plugins.js +33 -14
- package/dist/framework-plugins.js.map +1 -1
- package/dist/fs-utils.js +1 -1
- package/dist/fs-utils.js.map +1 -1
- package/dist/graph.d.ts +6 -1
- package/dist/graph.js +55 -6
- package/dist/graph.js.map +1 -1
- package/dist/index.js +73 -57
- package/dist/index.js.map +1 -1
- package/dist/instrument.d.ts +4 -0
- package/dist/instrument.js +105 -17
- package/dist/instrument.js.map +1 -1
- package/dist/layer2.js +13 -16
- package/dist/layer2.js.map +1 -1
- package/dist/layer6.d.ts +2 -1
- package/dist/layer6.js +27 -15
- package/dist/layer6.js.map +1 -1
- package/dist/layer7.js +59 -42
- package/dist/layer7.js.map +1 -1
- package/dist/parser.d.ts +1 -1
- package/dist/parser.js +137 -36
- package/dist/parser.js.map +1 -1
- package/dist/plugins/angular-plugin.js +1 -1
- package/dist/plugins/angular-plugin.js.map +1 -1
- package/dist/plugins/astro-plugin.js +1 -1
- package/dist/plugins/astro-plugin.js.map +1 -1
- package/dist/plugins/babel-plugin.js +1 -1
- package/dist/plugins/babel-plugin.js.map +1 -1
- package/dist/plugins/esbuild-plugin.js +1 -1
- package/dist/plugins/esbuild-plugin.js.map +1 -1
- package/dist/plugins/nestjs-plugin.js +1 -1
- package/dist/plugins/nestjs-plugin.js.map +1 -1
- package/dist/plugins/nextjs-plugin.js +1 -1
- package/dist/plugins/nextjs-plugin.js.map +1 -1
- package/dist/plugins/nuxtjs-plugin.js +1 -1
- package/dist/plugins/nuxtjs-plugin.js.map +1 -1
- package/dist/plugins/svelte-plugin.js +1 -1
- package/dist/plugins/svelte-plugin.js.map +1 -1
- package/dist/plugins/vuejs-plugin.js +1 -1
- package/dist/plugins/vuejs-plugin.js.map +1 -1
- package/dist/types.d.ts +8 -1
- package/dist/types.js.map +1 -1
- package/package.json +4 -11
- package/dist/instrumentation-plugin.d.ts +0 -6
- package/dist/instrumentation-plugin.js +0 -84
- package/dist/instrumentation-plugin.js.map +0 -1
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared AST Utilities for Yuku-compatible ESTree ASTs.
|
|
3
|
+
* Replaces @babel/types for common type-guarding tasks.
|
|
4
|
+
*/
|
|
5
|
+
export declare const t: {
|
|
6
|
+
isStringLiteral: (n: unknown) => n is {
|
|
7
|
+
type: "Literal";
|
|
8
|
+
value: string;
|
|
9
|
+
};
|
|
10
|
+
isNumericLiteral: (n: unknown) => n is {
|
|
11
|
+
type: "Literal";
|
|
12
|
+
value: number;
|
|
13
|
+
};
|
|
14
|
+
isBooleanLiteral: (n: unknown) => n is {
|
|
15
|
+
type: "Literal";
|
|
16
|
+
value: boolean;
|
|
17
|
+
};
|
|
18
|
+
isIdentifier: (n: unknown) => n is {
|
|
19
|
+
type: "Identifier";
|
|
20
|
+
name: string;
|
|
21
|
+
};
|
|
22
|
+
isCallExpression: (n: unknown) => n is {
|
|
23
|
+
type: "CallExpression";
|
|
24
|
+
callee: any;
|
|
25
|
+
arguments: any[];
|
|
26
|
+
};
|
|
27
|
+
isMemberExpression: (n: unknown) => n is {
|
|
28
|
+
type: "MemberExpression";
|
|
29
|
+
object: any;
|
|
30
|
+
property: any;
|
|
31
|
+
computed: boolean;
|
|
32
|
+
};
|
|
33
|
+
isVariableDeclarator: (n: unknown) => n is {
|
|
34
|
+
type: "VariableDeclarator";
|
|
35
|
+
id: any;
|
|
36
|
+
init: any;
|
|
37
|
+
};
|
|
38
|
+
isFunctionDeclaration: (n: unknown) => n is {
|
|
39
|
+
type: "FunctionDeclaration";
|
|
40
|
+
id: {
|
|
41
|
+
name: string;
|
|
42
|
+
} | null;
|
|
43
|
+
};
|
|
44
|
+
isExportNamedDeclaration: (n: unknown) => n is {
|
|
45
|
+
type: "ExportNamedDeclaration";
|
|
46
|
+
declaration: any;
|
|
47
|
+
specifiers: any[];
|
|
48
|
+
};
|
|
49
|
+
isImportDeclaration: (n: unknown) => n is {
|
|
50
|
+
type: "ImportDeclaration";
|
|
51
|
+
source: {
|
|
52
|
+
value: string;
|
|
53
|
+
};
|
|
54
|
+
specifiers: any[];
|
|
55
|
+
};
|
|
56
|
+
isObjectProperty: (n: unknown) => n is {
|
|
57
|
+
type: "Property";
|
|
58
|
+
key: any;
|
|
59
|
+
value: any;
|
|
60
|
+
computed: boolean;
|
|
61
|
+
};
|
|
62
|
+
isObjectMethod: (n: unknown) => n is {
|
|
63
|
+
type: "ObjectMethod";
|
|
64
|
+
key: any;
|
|
65
|
+
};
|
|
66
|
+
isTSInterfaceDeclaration: (n: unknown) => n is {
|
|
67
|
+
type: "TSInterfaceDeclaration";
|
|
68
|
+
id: {
|
|
69
|
+
name: string;
|
|
70
|
+
};
|
|
71
|
+
};
|
|
72
|
+
isTSTypeAliasDeclaration: (n: unknown) => n is {
|
|
73
|
+
type: "TSTypeAliasDeclaration";
|
|
74
|
+
id: {
|
|
75
|
+
name: string;
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
isTSEnumDeclaration: (n: unknown) => n is {
|
|
79
|
+
type: "TSEnumDeclaration";
|
|
80
|
+
id: {
|
|
81
|
+
name: string;
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
isClassDeclaration: (n: unknown) => n is {
|
|
85
|
+
type: "ClassDeclaration";
|
|
86
|
+
id: {
|
|
87
|
+
name: string;
|
|
88
|
+
} | null;
|
|
89
|
+
};
|
|
90
|
+
isClassExpression: (n: unknown) => n is {
|
|
91
|
+
type: "ClassExpression";
|
|
92
|
+
id: {
|
|
93
|
+
name: string;
|
|
94
|
+
} | null;
|
|
95
|
+
};
|
|
96
|
+
isClassMethod: (n: unknown) => n is {
|
|
97
|
+
type: "ClassMethod";
|
|
98
|
+
key: any;
|
|
99
|
+
};
|
|
100
|
+
isClassProperty: (n: unknown) => n is {
|
|
101
|
+
type: "ClassProperty";
|
|
102
|
+
key: any;
|
|
103
|
+
};
|
|
104
|
+
isExportDefaultDeclaration: (n: unknown) => n is {
|
|
105
|
+
type: "ExportDefaultDeclaration";
|
|
106
|
+
declaration: any;
|
|
107
|
+
};
|
|
108
|
+
isFunctionExpression: (n: unknown) => n is {
|
|
109
|
+
type: "FunctionExpression";
|
|
110
|
+
id: {
|
|
111
|
+
name: string;
|
|
112
|
+
} | null;
|
|
113
|
+
};
|
|
114
|
+
isJSXElement: (n: unknown) => n is {
|
|
115
|
+
type: "JSXElement";
|
|
116
|
+
openingElement: any;
|
|
117
|
+
};
|
|
118
|
+
isJSXIdentifier: (n: unknown) => n is {
|
|
119
|
+
type: "JSXIdentifier";
|
|
120
|
+
name: string;
|
|
121
|
+
};
|
|
122
|
+
isObjectExpression: (n: unknown) => n is {
|
|
123
|
+
type: "ObjectExpression";
|
|
124
|
+
properties: any[];
|
|
125
|
+
};
|
|
126
|
+
isLiteral: (n: unknown) => n is {
|
|
127
|
+
type: "Literal";
|
|
128
|
+
value: any;
|
|
129
|
+
};
|
|
130
|
+
isJSXAttribute: (n: unknown) => n is {
|
|
131
|
+
type: "JSXAttribute";
|
|
132
|
+
name: any;
|
|
133
|
+
value: any;
|
|
134
|
+
};
|
|
135
|
+
isNewExpression: (n: unknown) => n is {
|
|
136
|
+
type: "NewExpression";
|
|
137
|
+
callee: any;
|
|
138
|
+
arguments: any[];
|
|
139
|
+
};
|
|
140
|
+
isTemplateLiteral: (n: unknown) => n is {
|
|
141
|
+
type: "TemplateLiteral";
|
|
142
|
+
quasis: any[];
|
|
143
|
+
expressions: any[];
|
|
144
|
+
};
|
|
145
|
+
isDecorator: (n: unknown) => n is {
|
|
146
|
+
type: "Decorator";
|
|
147
|
+
expression: any;
|
|
148
|
+
};
|
|
149
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared AST Utilities for Yuku-compatible ESTree ASTs.
|
|
3
|
+
* Replaces @babel/types for common type-guarding tasks.
|
|
4
|
+
*/
|
|
5
|
+
export const t = {
|
|
6
|
+
isStringLiteral: (n) => !!n && typeof n === 'object' && n.type === 'Literal' && typeof n.value === 'string',
|
|
7
|
+
isNumericLiteral: (n) => !!n && typeof n === 'object' && n.type === 'Literal' && typeof n.value === 'number',
|
|
8
|
+
isBooleanLiteral: (n) => !!n && typeof n === 'object' && n.type === 'Literal' && typeof n.value === 'boolean',
|
|
9
|
+
isIdentifier: (n) => !!n && typeof n === 'object' && n.type === 'Identifier',
|
|
10
|
+
isCallExpression: (n) => !!n && typeof n === 'object' && n.type === 'CallExpression',
|
|
11
|
+
isMemberExpression: (n) => !!n && typeof n === 'object' && n.type === 'MemberExpression',
|
|
12
|
+
isVariableDeclarator: (n) => !!n && typeof n === 'object' && n.type === 'VariableDeclarator',
|
|
13
|
+
isFunctionDeclaration: (n) => !!n && typeof n === 'object' && n.type === 'FunctionDeclaration',
|
|
14
|
+
isExportNamedDeclaration: (n) => !!n && typeof n === 'object' && n.type === 'ExportNamedDeclaration',
|
|
15
|
+
isImportDeclaration: (n) => !!n && typeof n === 'object' && n.type === 'ImportDeclaration',
|
|
16
|
+
isObjectProperty: (n) => !!n && typeof n === 'object' && (n.type === 'Property' || n.type === 'ObjectProperty'),
|
|
17
|
+
isObjectMethod: (n) => !!n && typeof n === 'object' && n.type === 'ObjectMethod',
|
|
18
|
+
isTSInterfaceDeclaration: (n) => !!n && typeof n === 'object' && n.type === 'TSInterfaceDeclaration',
|
|
19
|
+
isTSTypeAliasDeclaration: (n) => !!n && typeof n === 'object' && n.type === 'TSTypeAliasDeclaration',
|
|
20
|
+
isTSEnumDeclaration: (n) => !!n && typeof n === 'object' && n.type === 'TSEnumDeclaration',
|
|
21
|
+
isClassDeclaration: (n) => !!n && typeof n === 'object' && n.type === 'ClassDeclaration',
|
|
22
|
+
isClassExpression: (n) => !!n && typeof n === 'object' && n.type === 'ClassExpression',
|
|
23
|
+
isClassMethod: (n) => !!n && typeof n === 'object' && n.type === 'ClassMethod',
|
|
24
|
+
isClassProperty: (n) => !!n && typeof n === 'object' && (n.type === 'ClassProperty' || n.type === 'PropertyDefinition'),
|
|
25
|
+
isExportDefaultDeclaration: (n) => !!n && typeof n === 'object' && n.type === 'ExportDefaultDeclaration',
|
|
26
|
+
isFunctionExpression: (n) => !!n && typeof n === 'object' && n.type === 'FunctionExpression',
|
|
27
|
+
isJSXElement: (n) => !!n && typeof n === 'object' && n.type === 'JSXElement',
|
|
28
|
+
isJSXIdentifier: (n) => !!n && typeof n === 'object' && n.type === 'JSXIdentifier',
|
|
29
|
+
isObjectExpression: (n) => !!n && typeof n === 'object' && n.type === 'ObjectExpression',
|
|
30
|
+
isLiteral: (n) => !!n && typeof n === 'object' && n.type === 'Literal',
|
|
31
|
+
isJSXAttribute: (n) => !!n && typeof n === 'object' && n.type === 'JSXAttribute',
|
|
32
|
+
isNewExpression: (n) => !!n && typeof n === 'object' && n.type === 'NewExpression',
|
|
33
|
+
isTemplateLiteral: (n) => !!n && typeof n === 'object' && n.type === 'TemplateLiteral',
|
|
34
|
+
isDecorator: (n) => !!n && typeof n === 'object' && n.type === 'Decorator',
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=ast-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../src/ast-utils.ts"],"names":[],"mappings":"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"}
|
package/dist/engine.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { walkAst as yukuWalk } from "./parser.js";
|
|
2
|
+
import { t } from "./ast-utils.js";
|
|
3
3
|
import fs from "node:fs/promises";
|
|
4
4
|
import path from "pathe";
|
|
5
5
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
@@ -93,18 +93,16 @@ export class PluginEngine {
|
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
95
|
// onASTNode (Traversal)
|
|
96
|
-
|
|
96
|
+
// Use yuku-parser's walk instead of @babel/traverse
|
|
97
97
|
try {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
// Suppress per-node errors to avoid flooding logs, but ensure isolation
|
|
107
|
-
}
|
|
98
|
+
yukuWalk(module.ast, (node) => {
|
|
99
|
+
for (const plugin of this.plugins) {
|
|
100
|
+
if (plugin.enabled && plugin.lifecycle.onASTNode) {
|
|
101
|
+
try {
|
|
102
|
+
plugin.lifecycle.onASTNode(node, module.id, adapter);
|
|
103
|
+
}
|
|
104
|
+
catch (err) {
|
|
105
|
+
// Suppress per-node errors to avoid flooding logs, but ensure isolation
|
|
108
106
|
}
|
|
109
107
|
}
|
|
110
108
|
}
|
package/dist/engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as t from "@babel/types";
|
|
2
1
|
/**
|
|
3
2
|
* Utility to check for dependencies in package.json
|
|
4
3
|
*/
|
|
@@ -20,12 +19,35 @@ export const ReactPlugin = {
|
|
|
20
19
|
},
|
|
21
20
|
lifecycle: {
|
|
22
21
|
onASTNode: (node, fileId, adapter) => {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
let targetNode = node;
|
|
23
|
+
// Unwrap export declarations
|
|
24
|
+
if ((node.type === 'ExportNamedDeclaration' || node.type === 'ExportDefaultDeclaration') &&
|
|
25
|
+
node.declaration) {
|
|
26
|
+
targetNode = node.declaration;
|
|
26
27
|
}
|
|
27
|
-
//
|
|
28
|
-
if (
|
|
28
|
+
// 1. Function Declarations: function MyComponent() {}
|
|
29
|
+
if (targetNode.type === 'FunctionDeclaration' && targetNode.id && /^[A-Z]/.test(targetNode.id.name)) {
|
|
30
|
+
adapter.markAsUsed(fileId, targetNode.id.name);
|
|
31
|
+
}
|
|
32
|
+
// 2. Variable Declarations: const MyComponent = () => ... or function expression / JSX
|
|
33
|
+
if (targetNode.type === 'VariableDeclaration' && Array.isArray(targetNode.declarations)) {
|
|
34
|
+
for (const decl of targetNode.declarations) {
|
|
35
|
+
if (decl.id?.type === 'Identifier' && /^[A-Z]/.test(decl.id.name)) {
|
|
36
|
+
const init = decl.init;
|
|
37
|
+
if (init &&
|
|
38
|
+
(init.type === 'ArrowFunctionExpression' ||
|
|
39
|
+
init.type === 'FunctionExpression' ||
|
|
40
|
+
init.type === 'JSXElement')) {
|
|
41
|
+
adapter.markAsUsed(fileId, decl.id.name);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
// 3. Hooks: useFoo() call expressions
|
|
47
|
+
if (node.type === 'CallExpression' &&
|
|
48
|
+
node.callee?.type === 'Identifier' &&
|
|
49
|
+
typeof node.callee.name === 'string' &&
|
|
50
|
+
node.callee.name.startsWith('use')) {
|
|
29
51
|
adapter.markAsUsed(fileId);
|
|
30
52
|
}
|
|
31
53
|
}
|
|
@@ -43,11 +65,9 @@ export const NextjsPlugin = {
|
|
|
43
65
|
},
|
|
44
66
|
lifecycle: {
|
|
45
67
|
onProjectInit: async (adapter) => {
|
|
46
|
-
// Read next.config.js to look for custom entry points or redirects
|
|
47
68
|
const nextConfig = await adapter.readFile('next.config.js') || await adapter.readFile('next.config.mjs');
|
|
48
69
|
if (nextConfig) {
|
|
49
|
-
//
|
|
50
|
-
// For now, we just log that we found it
|
|
70
|
+
// Logged/handled if present
|
|
51
71
|
}
|
|
52
72
|
},
|
|
53
73
|
onFileStart: (fileId, adapter) => {
|
|
@@ -60,9 +80,9 @@ export const NextjsPlugin = {
|
|
|
60
80
|
}
|
|
61
81
|
},
|
|
62
82
|
onASTNode: (node, fileId, adapter) => {
|
|
63
|
-
if (
|
|
83
|
+
if (node.type === 'ExportNamedDeclaration' && node.declaration) {
|
|
64
84
|
const decl = node.declaration;
|
|
65
|
-
if (
|
|
85
|
+
if (decl.type === 'FunctionDeclaration' && decl.id) {
|
|
66
86
|
const name = decl.id.name;
|
|
67
87
|
if (['getStaticProps', 'getServerSideProps', 'getStaticPaths', 'generateMetadata', 'generateStaticParams'].includes(name)) {
|
|
68
88
|
adapter.markAsUsed(fileId, name);
|
|
@@ -84,10 +104,9 @@ export const NuxtPlugin = {
|
|
|
84
104
|
},
|
|
85
105
|
lifecycle: {
|
|
86
106
|
onProjectInit: async (adapter) => {
|
|
87
|
-
// Read nuxt.config.ts to look for custom modules or dir overrides
|
|
88
107
|
const nuxtConfig = await adapter.readFile('nuxt.config.ts') || await adapter.readFile('nuxt.config.js');
|
|
89
108
|
if (nuxtConfig) {
|
|
90
|
-
//
|
|
109
|
+
// Custom directory configs
|
|
91
110
|
}
|
|
92
111
|
},
|
|
93
112
|
onFileStart: (fileId, adapter) => {
|
|
@@ -97,7 +116,7 @@ export const NuxtPlugin = {
|
|
|
97
116
|
}
|
|
98
117
|
},
|
|
99
118
|
onASTNode: (node, fileId, adapter) => {
|
|
100
|
-
if (
|
|
119
|
+
if (node.type === 'CallExpression' && node.callee?.type === 'Identifier') {
|
|
101
120
|
if (['definePageMeta', 'defineNuxtComponent', 'useNuxtApp', 'useFetch', 'defineEventHandler'].includes(node.callee.name)) {
|
|
102
121
|
adapter.markAsUsed(fileId);
|
|
103
122
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framework-plugins.js","sourceRoot":"","sources":["../src/framework-plugins.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"framework-plugins.js","sourceRoot":"","sources":["../src/framework-plugins.ts"],"names":[],"mappings":"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"}
|
package/dist/fs-utils.js
CHANGED
|
@@ -345,7 +345,7 @@ export async function readJsonFile(candidate) {
|
|
|
345
345
|
export async function findNearestConfig(startDirectory) {
|
|
346
346
|
let current = normalizeAbsolute(startDirectory);
|
|
347
347
|
while (true) {
|
|
348
|
-
const candidate = join(current, "
|
|
348
|
+
const candidate = join(current, "optiprune.config.json");
|
|
349
349
|
if (await fileExists(candidate)) {
|
|
350
350
|
return candidate;
|
|
351
351
|
}
|
package/dist/fs-utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs-utils.js","sourceRoot":"","sources":["../src/fs-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EACL,SAAS,EACT,OAAO,EACP,OAAO,EACP,OAAO,EACP,QAAQ,IAAI,aAAa,EACzB,UAAU,EACV,IAAI,GACL,MAAM,OAAO,CAAC;AAEf,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAmB;IACzD,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;CACzC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;CACP,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,oBAAoB;IACpB,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,aAAa;IACb,cAAc;IACd,cAAc;IACd,cAAc;CACf,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IACzB,IAAI,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC7C,IAAI,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACxC,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;QACtD,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACzB,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,OAAO,sBAAsB,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAO,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,SAAiB;IAC1D,MAAM,CAAC,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,CAAC,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,OAAO,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,IAAI,MAAM,GAAG,GAAG,CAAC;IACjB,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACnC,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACpC,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAClB,MAAM,IAAI,UAAU,CAAC;gBACrB,KAAK,IAAI,CAAC,CAAC;YACb,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,IAAI,CAAC;gBACf,KAAK,IAAI,CAAC,CAAC;YACb,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACxB,MAAM,IAAI,OAAO,CAAC;QACpB,CAAC;aAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACxB,MAAM,IAAI,MAAM,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,WAAW,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,CAAC;IACd,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,QAAkB;IAC7C,OAAO,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,YAAoB,EAAE,gBAA0B;IAC7E,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC9D,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,SAAiB;IAChD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAiB;IACrD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAe,EACf,UAAoB,EACpB,sBAAgC;IAEhC,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAElD,KAAK,UAAU,IAAI,CAAC,gBAAwB;QAC1C,IAAI,OAAO,CAAC;QACZ,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1F,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,cAAc,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACpF,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;YAC5D,IAAI,cAAc,CAAC,KAAK,EAAE,sBAAsB,CAAC,EAAE,CAAC;gBAClD,SAAS;YACX,CAAC;YACD,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvB,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC;gBACjF,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3B,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACtD,OAAO,CACL,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC;QACzB,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;QAC7B,UAAU,CAAC,SAAS,CAAC,CACtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IAClD,OAAO,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,cAAsB,EACtB,YAAoB,EACpB,UAA8C,EAC9C,aAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC;IAE9D,MAAM,OAAO,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;IACjD,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;QACrC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,sBAAsB,CAC7C,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAC5B,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,CAAS,EAAE,EAAE,CAClC,UAAU,YAAY,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEpE,0BAA0B;IAC1B,IAAI,aAAa,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpC,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,sDAAsD;IACtD,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAChD,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,OAAO,GAAG,wBAAwB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5D,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,SAAS,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC;gBAChF,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC7B,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,GAAG,gBAAgB,GAAG,GAAG,EAAE,CAAC;QAC9C,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,oCAAoC;IACpC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,GAAG,gBAAgB,SAAS,GAAG,EAAE,CAAC;QACpD,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAgB,EAAE,SAAiB;IAC9D,MAAM,IAAI,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAEjD,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;IAEtE,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IACzF,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1F,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,gBAAgB,GAAG,KAAK,EAAE,CAAC,CAAC;IAErE,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,MAAc,EACd,MAAc,EACd,UAAuB;IAEvB,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,mBAAmB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACvD,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,WAAqB,EACrB,OAAe,EACf,QAAkB;IAElB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,qBAAqB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,iDAAiD;QACjD,MAAM,MAAM,GAAG,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAE5F,IAAI,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpB,SAAS;QACX,CAAC;QAED,+EAA+E;QAC/E,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACzB,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,CAAC,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAE3B,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAEhC,KAAK,MAAM,UAAU,IAAI,qBAAqB,EAAE,CAAC;YAC/C,8EAA8E;YAC9E,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAExF,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AACvE,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,OAAe;IAChE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAClD,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,YAAY,CAA0B,WAAW,CAAC,CAAC;QAC7E,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAClF,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,KAAK,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;YACtE,IAAI,OAAO,WAAW,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC3C,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QACD,2BAA2B,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,OAAO,CAAC;aAChB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;aAChG,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAc,EAAE,SAAsB;IACzE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,2BAA2B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1C,2BAA2B,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,YAAY;QACZ,aAAa;QACb,WAAW;QACX,cAAc;QACd,WAAW;QACX,aAAa;QACb,cAAc;QACd,aAAa;QACb,cAAc;QACd,cAAc;QACd,eAAe;QACf,cAAc;QACd,eAAe;QACf,eAAe;QACf,gBAAgB;QAChB,eAAe;QACf,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mCAAmC;IACjD,OAAO;QACL,YAAY;QACZ,aAAa;QACb,WAAW;QACX,cAAc;QACd,WAAW;QACX,aAAa;QACb,cAAc;QACd,aAAa;QACb,cAAc;QACd,eAAe;QACf,gBAAgB;QAChB,eAAe;QACf,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAI,SAAiB;IACrD,IAAI,CAAC;QACH,IAAI,UAAU,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAEtD,kBAAkB;QAClB,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACxC,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC;QAED,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QAE/B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAM,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,MAAM,SAAS,GAAG,UAAU;iBACzB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;iBACrB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;iBACrB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACzB,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAM,CAAC;QACpC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,cAAsB;IAC5D,IAAI,OAAO,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAChD,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,+BAA+B,CAAC,CAAC;QACjE,IAAI,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAChC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,GAAG,MAAM,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,SAAiB;IACpE,MAAM,OAAO,GAAG,aAAa,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IACxF,OAAO,OAAO,IAAI,GAAG,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAe;IAClD,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAe,EAAE,aAAqB,eAAe;IAC7F,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoB,CAAC;IAChD,MAAM,gBAAgB,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAEzF,MAAM,QAAQ,GAAG,MAAM,YAAY,CAMhC,gBAAgB,CAAC,CAAC;IAErB,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAEjE,kCAAkC;IAClC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACrB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3F,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,OAAO,GAAG,GAAG,CAAC;YAClB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,CAAC;gBAC/C,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;oBAAE,OAAO,IAAI,OAAO,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,0DAA0D;gBAC1D,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC;gBAC7C,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;oBACjC,IAAI,MAAM,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;wBAAE,OAAO,IAAI,OAAO,CAAC;yBACvD,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;wBAAE,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;gBACtG,CAAC;YACH,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACjE,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC5D,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED,cAAc;IACd,MAAM,OAAO,GAAG,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAElD,WAAW;IACX,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAe,EAAE,KAAK,CAAC;IAC9C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;AACzC,CAAC"}
|
|
1
|
+
{"version":3,"file":"fs-utils.js","sourceRoot":"","sources":["../src/fs-utils.ts"],"names":[],"mappings":"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"}
|
package/dist/graph.d.ts
CHANGED
|
@@ -5,10 +5,12 @@ export interface GraphBuildResult {
|
|
|
5
5
|
maybeReachable: Set<string>;
|
|
6
6
|
hasReachableUnknownDynamicBoundary: boolean;
|
|
7
7
|
usedExports: Set<string>;
|
|
8
|
+
usedMembers: Set<string>;
|
|
8
9
|
}
|
|
9
10
|
export interface ImportUsage {
|
|
10
11
|
consumers: Set<string>;
|
|
11
12
|
names: Set<string>;
|
|
13
|
+
memberAccess: Map<string, Set<string>>;
|
|
12
14
|
wildcard: boolean;
|
|
13
15
|
reExportOnly: boolean;
|
|
14
16
|
}
|
|
@@ -23,7 +25,10 @@ export declare function stronglyConnectedComponents(modules: Map<string, ModuleR
|
|
|
23
25
|
*/
|
|
24
26
|
export declare function calculateReachability(modules: Map<string, ModuleRecord>, entryPoints: Set<string>): Pick<GraphBuildResult, "reachable" | "maybeReachable" | "hasReachableUnknownDynamicBoundary">;
|
|
25
27
|
export declare function buildImportUsage(modules: Map<string, ModuleRecord>): Map<string, ImportUsage>;
|
|
26
|
-
export declare function buildUsedExports(modules: Map<string, ModuleRecord>):
|
|
28
|
+
export declare function buildUsedExports(modules: Map<string, ModuleRecord>): {
|
|
29
|
+
usedExports: Set<string>;
|
|
30
|
+
usedMembers: Set<string>;
|
|
31
|
+
};
|
|
27
32
|
/**
|
|
28
33
|
* Refines component reachability. A component is reachable if at least one of its
|
|
29
34
|
* modules is reachable from an entry point.
|
package/dist/graph.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import path from "pathe";
|
|
2
2
|
import { resolveDynamicPattern, resolveLocalSpecifier } from "./fs-utils.js";
|
|
3
|
+
import { walkAst } from "./parser.js";
|
|
3
4
|
function dynamicParts(rawSpecifier) {
|
|
4
5
|
const marker = "${…}";
|
|
5
6
|
const index = rawSpecifier.indexOf(marker);
|
|
@@ -292,13 +293,36 @@ export function calculateReachability(modules, entryPoints) {
|
|
|
292
293
|
export function buildImportUsage(modules) {
|
|
293
294
|
const usage = new Map();
|
|
294
295
|
for (const module of modules.values()) {
|
|
296
|
+
// Member Access Tracking within the module
|
|
297
|
+
const localMemberAccess = new Map();
|
|
298
|
+
if (module.ast) {
|
|
299
|
+
walkAst(module.ast, (node, stack) => {
|
|
300
|
+
// 1. Track Member Expressions (e.g., Status.Active, user.id)
|
|
301
|
+
if (node.type === "MemberExpression" && node.object.type === "Identifier" && !node.computed) {
|
|
302
|
+
const objectName = node.object.name;
|
|
303
|
+
const propertyName = node.property.name || node.property.value;
|
|
304
|
+
if (propertyName) {
|
|
305
|
+
// Track direct access (Status.Active)
|
|
306
|
+
if (!localMemberAccess.has(objectName))
|
|
307
|
+
localMemberAccess.set(objectName, new Set());
|
|
308
|
+
localMemberAccess.get(objectName).add(propertyName);
|
|
309
|
+
// Track type-aware access (user.id where user is of type User)
|
|
310
|
+
const typeName = module.localTypeMap?.[objectName];
|
|
311
|
+
if (typeName) {
|
|
312
|
+
if (!localMemberAccess.has(typeName))
|
|
313
|
+
localMemberAccess.set(typeName, new Set());
|
|
314
|
+
localMemberAccess.get(typeName).add(propertyName);
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
});
|
|
319
|
+
}
|
|
295
320
|
for (const edge of module.edges) {
|
|
296
|
-
// We count all imports for usage, but we could later distinguish them if needed.
|
|
297
|
-
// For now, an import (even type-only) marks the export as used.
|
|
298
321
|
for (const target of edgeTargets(edge)) {
|
|
299
322
|
const current = usage.get(target) ?? {
|
|
300
323
|
consumers: new Set(),
|
|
301
324
|
names: new Set(),
|
|
325
|
+
memberAccess: new Map(),
|
|
302
326
|
wildcard: false,
|
|
303
327
|
reExportOnly: true
|
|
304
328
|
};
|
|
@@ -312,6 +336,14 @@ export function buildImportUsage(modules) {
|
|
|
312
336
|
if (name === "*") {
|
|
313
337
|
current.wildcard = true;
|
|
314
338
|
}
|
|
339
|
+
// Map local member access to the imported name
|
|
340
|
+
const accessed = localMemberAccess.get(name);
|
|
341
|
+
if (accessed) {
|
|
342
|
+
if (!current.memberAccess.has(name))
|
|
343
|
+
current.memberAccess.set(name, new Set());
|
|
344
|
+
for (const m of accessed)
|
|
345
|
+
current.memberAccess.get(name).add(m);
|
|
346
|
+
}
|
|
315
347
|
}
|
|
316
348
|
if (edge.kind === "dynamic-pattern") {
|
|
317
349
|
current.wildcard = true;
|
|
@@ -327,6 +359,7 @@ export function buildImportUsage(modules) {
|
|
|
327
359
|
}
|
|
328
360
|
export function buildUsedExports(modules) {
|
|
329
361
|
const usedExports = new Set();
|
|
362
|
+
const usedMembers = new Set();
|
|
330
363
|
const importUsage = buildImportUsage(modules);
|
|
331
364
|
// 1. Initial pass: Mark exports used by non-re-export imports
|
|
332
365
|
// and resolve explicit re-exports (export { x } from 'mod')
|
|
@@ -342,11 +375,19 @@ export function buildUsedExports(modules) {
|
|
|
342
375
|
}
|
|
343
376
|
// If it's a direct import (not a re-export)
|
|
344
377
|
if (!usage.reExportOnly) {
|
|
345
|
-
|
|
378
|
+
const isRequested = usage.wildcard || usage.names.has(exp.exportedAs) || (exp.isDefault && usage.names.has('default'));
|
|
379
|
+
if (isRequested) {
|
|
346
380
|
if (!usedExports.has(`${moduleId}:${exp.exportedAs}`)) {
|
|
347
381
|
usedExports.add(`${moduleId}:${exp.exportedAs}`);
|
|
348
382
|
worklist.push({ moduleId, name: exp.exportedAs });
|
|
349
383
|
}
|
|
384
|
+
// Track member access
|
|
385
|
+
const accessed = usage.memberAccess.get(exp.exportedAs);
|
|
386
|
+
if (accessed) {
|
|
387
|
+
for (const m of accessed) {
|
|
388
|
+
usedMembers.add(`${moduleId}:${exp.exportedAs}:${m}`);
|
|
389
|
+
}
|
|
390
|
+
}
|
|
350
391
|
}
|
|
351
392
|
}
|
|
352
393
|
}
|
|
@@ -417,6 +458,13 @@ export function buildUsedExports(modules) {
|
|
|
417
458
|
if (isUsedViaReExport) {
|
|
418
459
|
usedExports.add(exportKey);
|
|
419
460
|
changed = true;
|
|
461
|
+
// PROPAGATE MEMBER ACCESS THROUGH RE-EXPORTS
|
|
462
|
+
const accessedInModule = moduleUsage.memberAccess.get(edge.kind === 'export-all' ? exp.exportedAs : (module.exports.find(e => e.isReExport && e.name === exp.exportedAs)?.exportedAs || ""));
|
|
463
|
+
if (accessedInModule) {
|
|
464
|
+
for (const m of accessedInModule) {
|
|
465
|
+
usedMembers.add(`${targetId}:${exp.exportedAs}:${m}`);
|
|
466
|
+
}
|
|
467
|
+
}
|
|
420
468
|
}
|
|
421
469
|
}
|
|
422
470
|
}
|
|
@@ -461,7 +509,7 @@ export function buildUsedExports(modules) {
|
|
|
461
509
|
}
|
|
462
510
|
}
|
|
463
511
|
}
|
|
464
|
-
return usedExports;
|
|
512
|
+
return { usedExports, usedMembers };
|
|
465
513
|
}
|
|
466
514
|
/**
|
|
467
515
|
* Refines component reachability. A component is reachable if at least one of its
|
|
@@ -486,8 +534,8 @@ export function buildGraph(modules, entryPoints, options) {
|
|
|
486
534
|
const reachability = calculateReachability(modules, entryPoints);
|
|
487
535
|
// Apply SCC reachability check
|
|
488
536
|
calculateComponentReachability(components, reachability.reachable, reachability.maybeReachable);
|
|
489
|
-
const usedExports = buildUsedExports(modules);
|
|
490
|
-
return { components, ...reachability, usedExports };
|
|
537
|
+
const { usedExports, usedMembers } = buildUsedExports(modules);
|
|
538
|
+
return { components, ...reachability, usedExports, usedMembers };
|
|
491
539
|
}
|
|
492
540
|
export function contextWithGraph(modules, entryPoints, options) {
|
|
493
541
|
const graph = buildGraph(modules, entryPoints, options);
|
|
@@ -500,6 +548,7 @@ export function contextWithGraph(modules, entryPoints, options) {
|
|
|
500
548
|
hasReachableUnknownDynamicBoundary: graph.hasReachableUnknownDynamicBoundary,
|
|
501
549
|
components: graph.components,
|
|
502
550
|
usedExports: graph.usedExports,
|
|
551
|
+
usedMembers: graph.usedMembers,
|
|
503
552
|
candidateBranches: [],
|
|
504
553
|
dynamicImportCandidates: Array.from(modules.values()).flatMap(m => m.dynamicImportCandidates || []),
|
|
505
554
|
};
|