zyzz 0.0.12 → 0.0.13
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Project.d.ts","sourceRoot":"","sources":["../../../src/next/internal/Project.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAA;AAMhD,wFAAwF;AACxF,MAAM,MAAM,OAAO,GAAG;IACpB,uCAAuC;IACvC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,gEAAgE;IAChE,UAAU,CACR,OAAO,EAAE,MAAM,GACd,CACD,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,KAAK,IAAI,KAC3D,IAAI,CAAA;IACT,gCAAgC;IAChC,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,mFAAmF;AACnF,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO;IAe1C,oFAAoF;IACpF,OAAO,UAAU,OAAO,UAAU,MAAM;
|
|
1
|
+
{"version":3,"file":"Project.d.ts","sourceRoot":"","sources":["../../../src/next/internal/Project.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAA;AAMhD,wFAAwF;AACxF,MAAM,MAAM,OAAO,GAAG;IACpB,uCAAuC;IACvC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,gEAAgE;IAChE,UAAU,CACR,OAAO,EAAE,MAAM,GACd,CACD,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,KAAK,IAAI,KAC3D,IAAI,CAAA;IACT,gCAAgC;IAChC,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,mFAAmF;AACnF,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO;IAe1C,oFAAoF;IACpF,OAAO,UAAU,OAAO,UAAU,MAAM;EA+W3C;AAED,8BAA8B;AAC9B,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,qEAAqE;IACrE,KAAK,OAAO,GAAG;QACb,8DAA8D;QAC9D,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC1C,gDAAgD;QAChD,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACpC,sCAAsC;QACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KACtB,CAAA;CACF"}
|
|
@@ -101,6 +101,87 @@ export function create(options) {
|
|
|
101
101
|
syntax.delete(syntax.keys().next().value);
|
|
102
102
|
return entry.parsed;
|
|
103
103
|
}
|
|
104
|
+
async function callable(file, name, seen = new Set()) {
|
|
105
|
+
const key = JSON.stringify([file, name]);
|
|
106
|
+
if (seen.has(key))
|
|
107
|
+
return false;
|
|
108
|
+
seen.add(key);
|
|
109
|
+
track(file);
|
|
110
|
+
runtime.add(file);
|
|
111
|
+
const parsed = parse(id(file), await read(file));
|
|
112
|
+
const functions = new Set();
|
|
113
|
+
let defaultBinding;
|
|
114
|
+
for (const statement of parsed.program.body) {
|
|
115
|
+
if (statement.type === 'ExportDefaultDeclaration' &&
|
|
116
|
+
[
|
|
117
|
+
'FunctionDeclaration',
|
|
118
|
+
'ClassDeclaration',
|
|
119
|
+
'ArrowFunctionExpression',
|
|
120
|
+
'FunctionExpression',
|
|
121
|
+
].includes(statement.declaration.type)) {
|
|
122
|
+
functions.add('default');
|
|
123
|
+
if (statement.declaration.type === 'FunctionDeclaration' ||
|
|
124
|
+
statement.declaration.type === 'ClassDeclaration')
|
|
125
|
+
defaultBinding = statement.declaration.id?.name;
|
|
126
|
+
}
|
|
127
|
+
if (statement.type !== 'ExportNamedDeclaration')
|
|
128
|
+
continue;
|
|
129
|
+
const declaration = statement.declaration;
|
|
130
|
+
if ((declaration?.type === 'FunctionDeclaration' ||
|
|
131
|
+
declaration?.type === 'ClassDeclaration') &&
|
|
132
|
+
declaration.id)
|
|
133
|
+
functions.add(declaration.id.name);
|
|
134
|
+
if (declaration?.type === 'VariableDeclaration')
|
|
135
|
+
for (const item of declaration.declarations) {
|
|
136
|
+
if (item.id.type === 'Identifier' &&
|
|
137
|
+
item.init &&
|
|
138
|
+
[
|
|
139
|
+
'ArrowFunctionExpression',
|
|
140
|
+
'FunctionExpression',
|
|
141
|
+
'ClassExpression',
|
|
142
|
+
].includes(item.init.type))
|
|
143
|
+
functions.add(item.id.name);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
for (const statement of parsed.program.body) {
|
|
147
|
+
const declaration = statement.type === 'ExportNamedDeclaration'
|
|
148
|
+
? statement.declaration
|
|
149
|
+
: statement;
|
|
150
|
+
if (declaration?.type === 'TSModuleDeclaration' &&
|
|
151
|
+
declaration.id.type === 'Identifier') {
|
|
152
|
+
functions.delete(declaration.id.name);
|
|
153
|
+
if (declaration.id.name === defaultBinding)
|
|
154
|
+
functions.delete('default');
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
if (parsed.errors.length)
|
|
158
|
+
return false;
|
|
159
|
+
if (functions.has(name))
|
|
160
|
+
return true;
|
|
161
|
+
for (const statement of parsed.program.body) {
|
|
162
|
+
if (statement.type !== 'ExportNamedDeclaration' ||
|
|
163
|
+
!statement.source ||
|
|
164
|
+
statement.exportKind === 'type')
|
|
165
|
+
continue;
|
|
166
|
+
for (const specifier of statement.specifiers) {
|
|
167
|
+
if (specifier.exportKind === 'type')
|
|
168
|
+
continue;
|
|
169
|
+
const exported = specifier.exported.type === 'Identifier'
|
|
170
|
+
? specifier.exported.name
|
|
171
|
+
: specifier.exported.value;
|
|
172
|
+
if (exported !== name)
|
|
173
|
+
continue;
|
|
174
|
+
const target = await resolve(Path.dirname(file), statement.source.value);
|
|
175
|
+
if (!target || !eligible(target))
|
|
176
|
+
return false;
|
|
177
|
+
const imported = specifier.local.type === 'Identifier'
|
|
178
|
+
? specifier.local.name
|
|
179
|
+
: specifier.local.value;
|
|
180
|
+
return callable(target, imported, seen);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
return false;
|
|
184
|
+
}
|
|
104
185
|
async function visit(file, text) {
|
|
105
186
|
const name = id(file);
|
|
106
187
|
if (Object.hasOwn(modules, name))
|
|
@@ -140,66 +221,37 @@ export function create(options) {
|
|
|
140
221
|
if (!resolved || !/\.[cm]?[jt]sx?$/.test(resolved))
|
|
141
222
|
continue;
|
|
142
223
|
if (eligible(resolved)) {
|
|
143
|
-
if (node.type === 'ImportDeclaration'
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
const
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
if (
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
if (statement.declaration.type === 'FunctionDeclaration' ||
|
|
158
|
-
statement.declaration.type === 'ClassDeclaration')
|
|
159
|
-
defaultBinding = statement.declaration.id?.name;
|
|
160
|
-
}
|
|
161
|
-
if (statement.type !== 'ExportNamedDeclaration')
|
|
162
|
-
continue;
|
|
163
|
-
const declaration = statement.declaration;
|
|
164
|
-
if ((declaration?.type === 'FunctionDeclaration' ||
|
|
165
|
-
declaration?.type === 'ClassDeclaration') &&
|
|
166
|
-
declaration.id)
|
|
167
|
-
functions.add(declaration.id.name);
|
|
168
|
-
if (declaration?.type === 'VariableDeclaration')
|
|
169
|
-
for (const item of declaration.declarations) {
|
|
170
|
-
if (item.id.type === 'Identifier' &&
|
|
171
|
-
item.init &&
|
|
172
|
-
[
|
|
173
|
-
'ArrowFunctionExpression',
|
|
174
|
-
'FunctionExpression',
|
|
175
|
-
'ClassExpression',
|
|
176
|
-
].includes(item.init.type))
|
|
177
|
-
functions.add(item.id.name);
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
for (const statement of parsed.program.body) {
|
|
181
|
-
const declaration = statement.type === 'ExportNamedDeclaration'
|
|
182
|
-
? statement.declaration
|
|
183
|
-
: statement;
|
|
184
|
-
if (declaration?.type === 'TSModuleDeclaration' &&
|
|
185
|
-
declaration.id.type === 'Identifier') {
|
|
186
|
-
functions.delete(declaration.id.name);
|
|
187
|
-
if (declaration.id.name === defaultBinding)
|
|
188
|
-
functions.delete('default');
|
|
224
|
+
if ((node.type === 'ImportDeclaration' ||
|
|
225
|
+
node.type === 'ExportNamedDeclaration') &&
|
|
226
|
+
node.specifiers.length) {
|
|
227
|
+
const names = node.specifiers.map((specifier) => {
|
|
228
|
+
if (specifier.type === 'ImportDefaultSpecifier')
|
|
229
|
+
return 'default';
|
|
230
|
+
if (specifier.type === 'ImportNamespaceSpecifier')
|
|
231
|
+
return undefined;
|
|
232
|
+
if (specifier.type === 'ImportSpecifier') {
|
|
233
|
+
if (specifier.importKind === 'type')
|
|
234
|
+
return null;
|
|
235
|
+
return specifier.imported.type === 'Identifier'
|
|
236
|
+
? specifier.imported.name
|
|
237
|
+
: specifier.imported.value;
|
|
189
238
|
}
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
?
|
|
194
|
-
: specifier.
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
239
|
+
if (specifier.exportKind === 'type')
|
|
240
|
+
return null;
|
|
241
|
+
return specifier.local.type === 'Identifier'
|
|
242
|
+
? specifier.local.name
|
|
243
|
+
: specifier.local.value;
|
|
244
|
+
});
|
|
245
|
+
// Follow only requested named exports. Runtime implementations remain owned by Next's module graph.
|
|
246
|
+
const functions = await Promise.all(names.map(async (name) => {
|
|
247
|
+
if (name === null)
|
|
248
|
+
return true;
|
|
249
|
+
if (name === undefined)
|
|
250
|
+
return false;
|
|
251
|
+
return callable(resolved, name);
|
|
252
|
+
}));
|
|
253
|
+
if (functions.every(Boolean))
|
|
201
254
|
continue;
|
|
202
|
-
}
|
|
203
255
|
}
|
|
204
256
|
links[specifier] = id(resolved);
|
|
205
257
|
await visit(resolved);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Project.js","sourceRoot":"","sources":["../../../src/next/internal/Project.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Project.js","sourceRoot":"","sources":["../../../src/next/internal/Project.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -144,6 +144,103 @@ export function create(options: create.Options) {
|
|
|
144
144
|
return entry.parsed
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
+
async function callable(
|
|
148
|
+
file: string,
|
|
149
|
+
name: string,
|
|
150
|
+
seen = new Set<string>(),
|
|
151
|
+
): Promise<boolean> {
|
|
152
|
+
const key = JSON.stringify([file, name])
|
|
153
|
+
if (seen.has(key)) return false
|
|
154
|
+
seen.add(key)
|
|
155
|
+
track(file)
|
|
156
|
+
runtime.add(file)
|
|
157
|
+
const parsed = parse(id(file), await read(file))
|
|
158
|
+
const functions = new Set<string>()
|
|
159
|
+
let defaultBinding: string | undefined
|
|
160
|
+
for (const statement of parsed.program.body) {
|
|
161
|
+
if (
|
|
162
|
+
statement.type === 'ExportDefaultDeclaration' &&
|
|
163
|
+
[
|
|
164
|
+
'FunctionDeclaration',
|
|
165
|
+
'ClassDeclaration',
|
|
166
|
+
'ArrowFunctionExpression',
|
|
167
|
+
'FunctionExpression',
|
|
168
|
+
].includes(statement.declaration.type)
|
|
169
|
+
) {
|
|
170
|
+
functions.add('default')
|
|
171
|
+
if (
|
|
172
|
+
statement.declaration.type === 'FunctionDeclaration' ||
|
|
173
|
+
statement.declaration.type === 'ClassDeclaration'
|
|
174
|
+
)
|
|
175
|
+
defaultBinding = statement.declaration.id?.name
|
|
176
|
+
}
|
|
177
|
+
if (statement.type !== 'ExportNamedDeclaration') continue
|
|
178
|
+
const declaration = statement.declaration
|
|
179
|
+
if (
|
|
180
|
+
(declaration?.type === 'FunctionDeclaration' ||
|
|
181
|
+
declaration?.type === 'ClassDeclaration') &&
|
|
182
|
+
declaration.id
|
|
183
|
+
)
|
|
184
|
+
functions.add(declaration.id.name)
|
|
185
|
+
if (declaration?.type === 'VariableDeclaration')
|
|
186
|
+
for (const item of declaration.declarations) {
|
|
187
|
+
if (
|
|
188
|
+
item.id.type === 'Identifier' &&
|
|
189
|
+
item.init &&
|
|
190
|
+
[
|
|
191
|
+
'ArrowFunctionExpression',
|
|
192
|
+
'FunctionExpression',
|
|
193
|
+
'ClassExpression',
|
|
194
|
+
].includes(item.init.type)
|
|
195
|
+
)
|
|
196
|
+
functions.add(item.id.name)
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
for (const statement of parsed.program.body) {
|
|
200
|
+
const declaration =
|
|
201
|
+
statement.type === 'ExportNamedDeclaration'
|
|
202
|
+
? statement.declaration
|
|
203
|
+
: statement
|
|
204
|
+
if (
|
|
205
|
+
declaration?.type === 'TSModuleDeclaration' &&
|
|
206
|
+
declaration.id.type === 'Identifier'
|
|
207
|
+
) {
|
|
208
|
+
functions.delete(declaration.id.name)
|
|
209
|
+
if (declaration.id.name === defaultBinding)
|
|
210
|
+
functions.delete('default')
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
if (parsed.errors.length) return false
|
|
214
|
+
if (functions.has(name)) return true
|
|
215
|
+
for (const statement of parsed.program.body) {
|
|
216
|
+
if (
|
|
217
|
+
statement.type !== 'ExportNamedDeclaration' ||
|
|
218
|
+
!statement.source ||
|
|
219
|
+
statement.exportKind === 'type'
|
|
220
|
+
)
|
|
221
|
+
continue
|
|
222
|
+
for (const specifier of statement.specifiers) {
|
|
223
|
+
if (specifier.exportKind === 'type') continue
|
|
224
|
+
const exported =
|
|
225
|
+
specifier.exported.type === 'Identifier'
|
|
226
|
+
? specifier.exported.name
|
|
227
|
+
: specifier.exported.value
|
|
228
|
+
if (exported !== name) continue
|
|
229
|
+
const target = await resolve(
|
|
230
|
+
Path.dirname(file),
|
|
231
|
+
statement.source.value,
|
|
232
|
+
)
|
|
233
|
+
if (!target || !eligible(target)) return false
|
|
234
|
+
const imported =
|
|
235
|
+
specifier.local.type === 'Identifier'
|
|
236
|
+
? specifier.local.name
|
|
237
|
+
: specifier.local.value
|
|
238
|
+
return callable(target, imported, seen)
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
return false
|
|
242
|
+
}
|
|
243
|
+
|
|
147
244
|
async function visit(file: string, text?: string): Promise<void> {
|
|
148
245
|
const name = id(file)
|
|
149
246
|
if (Object.hasOwn(modules, name)) return
|
|
@@ -191,82 +288,35 @@ export function create(options: create.Options) {
|
|
|
191
288
|
const { node, specifier, resolved } = resolution
|
|
192
289
|
if (!resolved || !/\.[cm]?[jt]sx?$/.test(resolved)) continue
|
|
193
290
|
if (eligible(resolved)) {
|
|
194
|
-
if (
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
if (
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
) {
|
|
209
|
-
functions.add('default')
|
|
210
|
-
if (
|
|
211
|
-
statement.declaration.type === 'FunctionDeclaration' ||
|
|
212
|
-
statement.declaration.type === 'ClassDeclaration'
|
|
213
|
-
)
|
|
214
|
-
defaultBinding = statement.declaration.id?.name
|
|
215
|
-
}
|
|
216
|
-
if (statement.type !== 'ExportNamedDeclaration') continue
|
|
217
|
-
const declaration = statement.declaration
|
|
218
|
-
if (
|
|
219
|
-
(declaration?.type === 'FunctionDeclaration' ||
|
|
220
|
-
declaration?.type === 'ClassDeclaration') &&
|
|
221
|
-
declaration.id
|
|
222
|
-
)
|
|
223
|
-
functions.add(declaration.id.name)
|
|
224
|
-
if (declaration?.type === 'VariableDeclaration')
|
|
225
|
-
for (const item of declaration.declarations) {
|
|
226
|
-
if (
|
|
227
|
-
item.id.type === 'Identifier' &&
|
|
228
|
-
item.init &&
|
|
229
|
-
[
|
|
230
|
-
'ArrowFunctionExpression',
|
|
231
|
-
'FunctionExpression',
|
|
232
|
-
'ClassExpression',
|
|
233
|
-
].includes(item.init.type)
|
|
234
|
-
)
|
|
235
|
-
functions.add(item.id.name)
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
for (const statement of parsed.program.body) {
|
|
239
|
-
const declaration =
|
|
240
|
-
statement.type === 'ExportNamedDeclaration'
|
|
241
|
-
? statement.declaration
|
|
242
|
-
: statement
|
|
243
|
-
if (
|
|
244
|
-
declaration?.type === 'TSModuleDeclaration' &&
|
|
245
|
-
declaration.id.type === 'Identifier'
|
|
246
|
-
) {
|
|
247
|
-
functions.delete(declaration.id.name)
|
|
248
|
-
if (declaration.id.name === defaultBinding)
|
|
249
|
-
functions.delete('default')
|
|
291
|
+
if (
|
|
292
|
+
(node.type === 'ImportDeclaration' ||
|
|
293
|
+
node.type === 'ExportNamedDeclaration') &&
|
|
294
|
+
node.specifiers.length
|
|
295
|
+
) {
|
|
296
|
+
const names = node.specifiers.map((specifier) => {
|
|
297
|
+
if (specifier.type === 'ImportDefaultSpecifier') return 'default'
|
|
298
|
+
if (specifier.type === 'ImportNamespaceSpecifier')
|
|
299
|
+
return undefined
|
|
300
|
+
if (specifier.type === 'ImportSpecifier') {
|
|
301
|
+
if (specifier.importKind === 'type') return null
|
|
302
|
+
return specifier.imported.type === 'Identifier'
|
|
303
|
+
? specifier.imported.name
|
|
304
|
+
: specifier.imported.value
|
|
250
305
|
}
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
) {
|
|
266
|
-
runtime.add(resolved)
|
|
267
|
-
track(resolved)
|
|
268
|
-
continue
|
|
269
|
-
}
|
|
306
|
+
if (specifier.exportKind === 'type') return null
|
|
307
|
+
return specifier.local.type === 'Identifier'
|
|
308
|
+
? specifier.local.name
|
|
309
|
+
: specifier.local.value
|
|
310
|
+
})
|
|
311
|
+
// Follow only requested named exports. Runtime implementations remain owned by Next's module graph.
|
|
312
|
+
const functions = await Promise.all(
|
|
313
|
+
names.map(async (name) => {
|
|
314
|
+
if (name === null) return true
|
|
315
|
+
if (name === undefined) return false
|
|
316
|
+
return callable(resolved, name)
|
|
317
|
+
}),
|
|
318
|
+
)
|
|
319
|
+
if (functions.every(Boolean)) continue
|
|
270
320
|
}
|
|
271
321
|
links[specifier] = id(resolved)
|
|
272
322
|
await visit(resolved)
|