@nocobase/app-plugin-foundation 0.1.0-beta.4 → 0.1.0-beta.5

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 CHANGED
@@ -1,5 +1,13 @@
1
1
  # @nocobase/app-plugin-foundation
2
2
 
3
+ ## 0.1.0-beta.5
4
+
5
+ ### Patch Changes
6
+
7
+ - 7085345: Recognize explicitly declared package-local TypeScript path aliases and finite local route constructors when collecting page capability associations. Keep unresolved aliases and unsupported route computation incomplete, preserve package boundaries and source limits, and retain the existing build artifact format.
8
+ - Updated dependencies [756f3df]
9
+ - @nocobase/app-plugin-authentication@2.0.0-beta.14
10
+
3
11
  ## 0.1.0-beta.4
4
12
 
5
13
  ### Patch Changes
package/README.md CHANGED
@@ -115,3 +115,13 @@ Conditional forwarding, opaque middleware factories, uncertain registration path
115
115
  To apply a correction to an existing deployment, update the consuming application's Foundation dependency, rebuild the application to regenerate `dist/server/foundation-modules.json`, and deploy that build. The artifact format remains compatible and can be read without business source files. Refreshing an old artifact alone cannot apply the correction; do not hand-edit it.
116
116
 
117
117
  Registration tracing stops at direct returns and loop exits. A possible exit in unsupported control flow makes later registrations uncertain, instead of treating the remaining statements or loop iterations as unconditional. Class definitions do not execute instance fields or methods; static initializers remain module initialization, and recognized instance construction stays conservative. Only terminal wildcards establish a certain wildcard match. A fixed suffix can disprove a nonterminal wildcard match; other suffix patterns remain incomplete and cannot contribute certain associations.
118
+
119
+ ### Declared local aliases and finite route constructors
120
+
121
+ Static discovery reads package-local `tsconfig.json` JSONC `compilerOptions.paths`, including exact keys and single-wildcard keys with one target, relative to the declaring configuration when no explicit `baseUrl` is inherited or declared. A parent configuration without `baseUrl` does not change the directory for a child configuration’s own paths. Relative package-local configuration inheritance is limited to eight files; each configuration is limited to 512 KB. Explicit mappings in a configuration with an external preset are usable, but external presets are never loaded and their inherited mappings are unavailable. Package imports (`#...`) and relative imports retain their existing behavior. Each application and registered plugin uses its own configuration; `@/` is never implicitly mapped to `client`, and ordinary npm scopes remain external packages. Vite configurations and configuration plugins are never executed or inferred.
122
+
123
+ Missing, duplicate, conflicting, multi-target, cyclic, unsupported or escaping declarations remain unresolved. An unresolved `@/` or declared local alias marks referenced page analysis incomplete rather than becoming a provider. Mappings cannot traverse `node_modules` or escape the owning package through relative paths or symlinks. Supported mappings have at most 128 keys and one wildcard per key/target; source reads retain the 400-file and 512 KB-per-file limits. Backend declarations are read before lazy page graphs share the remaining source budget, so a large page graph cannot consume the entire budget before backend discovery begins.
124
+
125
+ Local route constructors may return literal objects or arrays through object parameters, destructuring/defaults, loader aliases, literal template names, nested children and finite literal `map`/`find` operations or `Object.entries` tabs. Invocation bindings keep names and loaders paired across calls and files. Only direct returns and side-effect-free constant declarations are accepted in block bodies. Child route arrays and objects may be referenced through local constants, parameters and properties; unknown child routes or returned values mark aggregate discovery incomplete while preserving proven routes. Explicitly unknown arguments never fall back to omitted-argument defaults. Unknown conditions, opaque calls, computed properties, getters, asynchronous/generator constructors, spreads, mutation, loops, recursion and larger computations retain independent proven routes and mark aggregate discovery incomplete. Constructors and component loaders are never invoked. Evaluation has a 32-level/value bound and a 100,000-visit budget per declaration file. This remains a static integration inventory; unsupported DomainConfig/service wiring and source limits can leave cells unidentified even when route names are recovered.
126
+
127
+ Rebuild the consuming application after updating the plugin to regenerate `dist/server/foundation-modules.json`. Its format is unchanged, repeated generation preserves bytes and modification time, and a source-free deployment can read the validated artifact. Refreshing an old artifact alone does not apply the correction.
@@ -1 +1 @@
1
- {"version":3,"file":"module-sources.d.ts","sourceRoot":"","sources":["../../server/module-sources.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAkBvE,iHAAiH;AACjH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,SAAS,uBAAuB,EAAO,GAC/C,OAAO,CAAC,uBAAuB,CAAC,CA8FlC"}
1
+ {"version":3,"file":"module-sources.d.ts","sourceRoot":"","sources":["../../server/module-sources.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAoBvE,iHAAiH;AACjH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,SAAS,uBAAuB,EAAO,GAC/C,OAAO,CAAC,uBAAuB,CAAC,CA8FlC"}
@@ -7,6 +7,8 @@ import { apiDependencies as analyzeApiDependencies } from './api-evidence.js';
7
7
  import { endpointChain } from './endpoint-chain.js';
8
8
  import { pageRequests } from './request-evidence.js';
9
9
  import { StaticValues } from './static-values.js';
10
+ import { RouteEvidence } from './route-evidence.js';
11
+ import { sourceAliases, aliasMatches } from './source-aliases.js';
10
12
  const MAX_FILES = 400;
11
13
  const MAX_BYTES = 512_000;
12
14
  const SOURCE_SUFFIXES = ['.ts', '.tsx', '.js', '.jsx', '.mjs'];
@@ -67,7 +69,7 @@ export async function collectModuleSources(rootDir, runtime = []) {
67
69
  for (const { from, specifier } of imports) {
68
70
  const target = await graph.local(from, specifier);
69
71
  if (!target) {
70
- if (!isLocal(specifier))
72
+ if (!graph.isLocal(specifier))
71
73
  addProvider(providers, specifier);
72
74
  else
73
75
  routeComplete = false;
@@ -104,7 +106,7 @@ export async function collectModuleSources(rootDir, runtime = []) {
104
106
  complete &&= routeComplete;
105
107
  }
106
108
  }
107
- complete &&= declarationFiles.complete;
109
+ complete &&= declarationFiles.complete && graph.declarationsComplete;
108
110
  }
109
111
  catch {
110
112
  complete = false;
@@ -117,19 +119,21 @@ class SourceGraph {
117
119
  root;
118
120
  packageName;
119
121
  aliases;
122
+ paths;
120
123
  files = new Map();
121
124
  analysis;
122
125
  serverEntry;
123
- constructor(root, packageName, aliases) {
126
+ constructor(root, packageName, aliases, paths) {
124
127
  this.root = root;
125
128
  this.packageName = packageName;
126
129
  this.aliases = aliases;
130
+ this.paths = paths;
127
131
  }
128
132
  static async create(root) {
129
133
  const directory = await realpath(root);
130
134
  const manifest = JSON.parse(await readFile(path.join(directory, 'package.json'), 'utf8'));
131
135
  const record = isRecord(manifest) ? manifest : {};
132
- return new SourceGraph(directory, typeof record.name === 'string' ? record.name : '', isRecord(record.imports) ? record.imports : {});
136
+ return new SourceGraph(directory, typeof record.name === 'string' ? record.name : '', isRecord(record.imports) ? record.imports : {}, await sourceAliases(directory));
133
137
  }
134
138
  async resolve(base) {
135
139
  if (!inside(this.root, path.resolve(base)))
@@ -175,7 +179,6 @@ class SourceGraph {
175
179
  return undefined;
176
180
  }
177
181
  async prepare(entry) {
178
- await this.walk(entry, true);
179
182
  this.serverEntry = await this.conventionalEntry('server/routes/index.js', 'server/routes.js');
180
183
  let backendComplete = this.serverEntry
181
184
  ? (await this.walk(this.serverEntry, false)).complete
@@ -193,6 +196,8 @@ class SourceGraph {
193
196
  backendComplete &&= graph.complete;
194
197
  }
195
198
  }
199
+ // Read backend declarations before lazy page graphs can exhaust the shared source budget.
200
+ await this.walk(entry, true);
196
201
  const resolutions = new Map();
197
202
  for (const source of this.files.values()) {
198
203
  if (!source)
@@ -206,7 +211,7 @@ class SourceGraph {
206
211
  resolutions.set(`${source.file}\0${specifier}`, target);
207
212
  }
208
213
  }
209
- this.analysis = new SourceEvidence([...this.files.values()].filter((source) => Boolean(source)), resolutions);
214
+ this.analysis = new SourceEvidence([...this.files.values()].filter((source) => Boolean(source)), resolutions, (specifier) => this.isLocal(specifier));
210
215
  this.analysis.registerServices(providerEntries);
211
216
  return backendComplete;
212
217
  }
@@ -227,52 +232,18 @@ class SourceGraph {
227
232
  requests(sources) {
228
233
  return this.analysis ? pageRequests(sources, this.analysis) : [];
229
234
  }
235
+ declarationsComplete = true;
230
236
  routeDeclarations(ast) {
231
237
  if (!this.analysis)
232
238
  return [];
233
- const analysis = this.analysis;
234
- const declarations = [];
235
- let visits = 0;
236
- const visit = (node, bindings) => {
237
- if (++visits > 100_000)
238
- return;
239
- const literals = new StaticValues(analysis, bindings);
240
- if (ts.isCallExpression(node) &&
241
- ts.isPropertyAccessExpression(node.expression) &&
242
- node.expression.name.text === 'map') {
243
- const arrays = literals
244
- .values(node.expression.expression)
245
- .filter(ts.isArrayLiteralExpression);
246
- const callback = node.arguments[0];
247
- if (arrays.length === 1 &&
248
- arrays[0].elements.length <= 32 &&
249
- !arrays[0].elements.some(ts.isSpreadElement) &&
250
- callback &&
251
- (ts.isArrowFunction(callback) || ts.isFunctionExpression(callback)) &&
252
- callback.parameters[0]) {
253
- for (const element of arrays[0].elements) {
254
- const context = new Map(bindings);
255
- context.set(callback.parameters[0], [element]);
256
- visit(callback.body, context);
257
- }
258
- return;
259
- }
260
- }
261
- if (ts.isObjectLiteralExpression(node)) {
262
- const name = property(node, 'name');
263
- const loader = property(node, 'componentLoader');
264
- if (name && loader)
265
- for (const routeName of literals.strings(name))
266
- declarations.push({ name: routeName, loader, bindings });
267
- }
268
- ts.forEachChild(node, (child) => visit(child, bindings));
269
- };
270
- visit(ast, new Map());
239
+ const evidence = new RouteEvidence(this.analysis);
240
+ const declarations = evidence.collect(ast);
241
+ this.declarationsComplete &&= evidence.complete;
271
242
  return declarations;
272
243
  }
273
244
  loaderImports(node, bindings) {
274
245
  const literals = this.analysis && new StaticValues(this.analysis, bindings);
275
- return (this.analysis?.values(node) ?? [node]).flatMap((value) => {
246
+ return (literals?.values(node) ?? [node]).flatMap((value) => {
276
247
  const body = ts.isArrowFunction(value) && !ts.isBlock(value.body)
277
248
  ? value.body
278
249
  : value;
@@ -308,11 +279,26 @@ class SourceGraph {
308
279
  return [];
309
280
  return analyzeApiDependencies(source.ast, (await this.walk(source.file, false)).sources, this.analysis, (file, nodes) => [...this.evidence(file, nodes).providers].sort());
310
281
  }
282
+ isLocal(specifier) {
283
+ return (isLocal(specifier) ||
284
+ specifier.startsWith('@/') ||
285
+ [...this.paths.keys()].some((alias) => aliasMatches(alias, specifier) !== undefined));
286
+ }
311
287
  async local(from, specifier) {
312
288
  if (specifier.startsWith('.'))
313
289
  return this.resolve(path.resolve(path.dirname(from), specifier));
314
- if (!specifier.startsWith('#'))
315
- return undefined;
290
+ if (!specifier.startsWith('#')) {
291
+ const matches = [...this.paths].filter(([alias]) => aliasMatches(alias, specifier) !== undefined);
292
+ // Equal-specificity declarations must not pick an arbitrary target.
293
+ const specificity = (alias) => alias.includes('*') ? alias.indexOf('*') : Number.MAX_SAFE_INTEGER;
294
+ matches.sort(([a], [b]) => specificity(b) - specificity(a));
295
+ const selected = matches[0];
296
+ if (!selected ||
297
+ !selected[1] ||
298
+ (matches[1] && specificity(matches[1][0]) === specificity(selected[0])))
299
+ return undefined;
300
+ return this.resolve(selected[1].replace('*', aliasMatches(selected[0], specifier)));
301
+ }
316
302
  for (const [alias, value] of Object.entries(this.aliases).sort(([a], [b]) => b.length - a.length)) {
317
303
  const star = alias.indexOf('*');
318
304
  const matches = star < 0
@@ -352,7 +338,7 @@ class SourceGraph {
352
338
  }
353
339
  sources.push(source);
354
340
  for (const specifier of source.imports) {
355
- if (!isLocal(specifier)) {
341
+ if (!this.isLocal(specifier)) {
356
342
  addProvider(providers, specifier);
357
343
  continue;
358
344
  }
@@ -368,7 +354,7 @@ class SourceGraph {
368
354
  const target = await this.local(file, specifier);
369
355
  if (target)
370
356
  pending.push(target);
371
- else if (isLocal(specifier))
357
+ else if (this.isLocal(specifier))
372
358
  complete = false;
373
359
  else
374
360
  addProvider(providers, specifier);
@@ -1 +1 @@
1
- {"version":3,"file":"module-sources.js","sourceRoot":"","sources":["../../server/module-sources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module-sources.js","sourceRoot":"","sources":["../../server/module-sources.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import ts from 'typescript';
2
+ import type { SourceEvidence } from './source-evidence.js';
3
+ type Bindings = ReadonlyMap<ts.Declaration, readonly ts.Node[]>;
4
+ export interface RouteDeclaration {
5
+ name: string;
6
+ loader: ts.Node;
7
+ bindings: Bindings;
8
+ }
9
+ /** Finite local route constructors, interpreted as syntax with invocation-local bindings. */
10
+ export declare class RouteEvidence {
11
+ private readonly analysis;
12
+ complete: boolean;
13
+ private visits;
14
+ private readonly routes;
15
+ constructor(analysis: SourceEvidence);
16
+ collect(ast: ts.SourceFile): RouteDeclaration[];
17
+ private values;
18
+ private returned;
19
+ private property;
20
+ private truth;
21
+ private elements;
22
+ /** Route-valued positions must resolve references, rather than just visit their identifier syntax. */
23
+ private scanRoutes;
24
+ private scan;
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=route-evidence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-evidence.d.ts","sourceRoot":"","sources":["../../server/route-evidence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,KAAK,QAAQ,GAAG,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;AAKhE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC;IAChB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,6FAA6F;AAC7F,qBAAa,aAAa;IAIL,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAHrC,QAAQ,UAAQ;IACvB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;gBACb,QAAQ,EAAE,cAAc;IAErD,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,GAAG,gBAAgB,EAAE;IAKtD,OAAO,CAAC,MAAM;IAqPd,OAAO,CAAC,QAAQ;IAiDhB,OAAO,CAAC,QAAQ;IAsBhB,OAAO,CAAC,KAAK;IAmDb,OAAO,CAAC,QAAQ;IAyBhB,sGAAsG;IACtG,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,IAAI;CAkGb"}