@buzola/vite-plugin 0.0.3 → 0.0.4

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 (36) hide show
  1. package/dist/__tests__/codegen.test.js +49 -1
  2. package/dist/__tests__/codegen.test.js.map +1 -1
  3. package/dist/__tests__/conventions.test.js +1 -1
  4. package/dist/__tests__/conventions.test.js.map +1 -1
  5. package/dist/__tests__/page-extractor.test.js +1 -1
  6. package/dist/__tests__/page-extractor.test.js.map +1 -1
  7. package/dist/__tests__/tree-builder.test.js +217 -78
  8. package/dist/__tests__/tree-builder.test.js.map +1 -1
  9. package/dist/generator/codegen.d.ts +1 -5
  10. package/dist/generator/codegen.d.ts.map +1 -1
  11. package/dist/generator/codegen.js +7 -9
  12. package/dist/generator/codegen.js.map +1 -1
  13. package/dist/generator/scanner.js +1 -1
  14. package/dist/generator/scanner.js.map +1 -1
  15. package/dist/generator/tree-builder.d.ts +7 -3
  16. package/dist/generator/tree-builder.d.ts.map +1 -1
  17. package/dist/generator/tree-builder.js +275 -188
  18. package/dist/generator/tree-builder.js.map +1 -1
  19. package/dist/index.d.ts +12 -12
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +6 -6
  22. package/dist/index.js.map +1 -1
  23. package/dist/plugin.d.ts +9 -0
  24. package/dist/plugin.d.ts.map +1 -1
  25. package/dist/plugin.js +12 -11
  26. package/dist/plugin.js.map +1 -1
  27. package/package.json +2 -2
  28. package/src/__tests__/codegen.test.ts +53 -1
  29. package/src/__tests__/conventions.test.ts +1 -1
  30. package/src/__tests__/page-extractor.test.ts +1 -1
  31. package/src/__tests__/tree-builder.test.ts +245 -81
  32. package/src/generator/codegen.ts +9 -11
  33. package/src/generator/scanner.ts +1 -1
  34. package/src/generator/tree-builder.ts +318 -224
  35. package/src/index.ts +12 -12
  36. package/src/plugin.ts +23 -12
@@ -1,4 +1,4 @@
1
- import type { FileRouteNode } from './tree-builder';
1
+ import type { FileRouteNode } from './tree-builder.js';
2
2
  export interface CodegenOptions {
3
3
  /** The route tree from file scanning. */
4
4
  tree: FileRouteNode[];
@@ -16,8 +16,4 @@ export interface CodegenOptions {
16
16
  * 3. Route tree construction code
17
17
  */
18
18
  export declare function generateRouteModule(options: CodegenOptions): string;
19
- /**
20
- * Generate the virtual module content for `virtual:buzola/routes`.
21
- */
22
- export declare function generateVirtualModule(outputPath: string): string;
23
19
  //# sourceMappingURL=codegen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../src/generator/codegen.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEnD,MAAM,WAAW,cAAc;IAC9B,yCAAyC;IACzC,IAAI,EAAE,aAAa,EAAE,CAAA;IACrB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAA;IACjB,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAsFnE;AAsGD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEhE"}
1
+ {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../src/generator/codegen.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,MAAM,WAAW,cAAc;IAC9B,yCAAyC;IACzC,IAAI,EAAE,aAAa,EAAE,CAAA;IACrB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAA;IACjB,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAsFnE"}
@@ -85,7 +85,7 @@ export function generateRouteModule(options) {
85
85
  /**
86
86
  * Collect page info from the file route tree for codegen.
87
87
  */
88
- function collectPages(nodes, parentPath = '') {
88
+ function collectPages(nodes) {
89
89
  const result = [];
90
90
  for (const node of nodes) {
91
91
  if (node.filePath && !node.isLayout && !node.isNotFound) {
@@ -100,7 +100,7 @@ function collectPages(nodes, parentPath = '') {
100
100
  }
101
101
  }
102
102
  if (node.children.length > 0) {
103
- result.push(...collectPages(node.children, node.fullPath));
103
+ result.push(...collectPages(node.children));
104
104
  }
105
105
  }
106
106
  return result;
@@ -113,7 +113,7 @@ function collectImports(nodes, outputDir, imports, importsByKey, nextId) {
113
113
  if (node.filePath) {
114
114
  const key = importKey(node.filePath, node.exportName);
115
115
  if (!importsByKey.has(key)) {
116
- const relativePath = path.relative(outputDir, node.filePath);
116
+ const relativePath = path.relative(outputDir, node.filePath).replaceAll('\\', '/');
117
117
  const importPath = relativePath.startsWith('.') ? relativePath : `./${relativePath}`;
118
118
  // Strip extension for import
119
119
  const cleanPath = importPath.replace(/\.(tsx?|jsx?)$/, '');
@@ -133,6 +133,10 @@ function generateTreeConfig(nodes, lines, importsByKey, indent) {
133
133
  const imp = node.filePath ? importsByKey.get(importKey(node.filePath, node.exportName)) : undefined;
134
134
  lines.push(`${pad}{`);
135
135
  lines.push(`${pad} path: '${node.segment ? `/${node.segment}` : '/'}',`);
136
+ // Emit matchPath when page has a custom route pattern that differs from file-hierarchy position
137
+ if (node.pageExports && node.pageExports.length > 0 && node.pageExports[0].routePattern !== node.fullPath) {
138
+ lines.push(`${pad} matchPath: '${node.pageExports[0].routePattern}',`);
139
+ }
136
140
  if (imp) {
137
141
  if (imp.isLazy) {
138
142
  lines.push(`${pad} component: lazy(${imp.varName}),`);
@@ -155,10 +159,4 @@ function generateTreeConfig(nodes, lines, importsByKey, indent) {
155
159
  lines.push(`${pad}},`);
156
160
  }
157
161
  }
158
- /**
159
- * Generate the virtual module content for `virtual:buzola/routes`.
160
- */
161
- export function generateVirtualModule(outputPath) {
162
- return `export { routes, pageRegistry } from '${outputPath.replace(/\.ts$/, '')}';\n`;
163
- }
164
162
  //# sourceMappingURL=codegen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/generator/codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/generator/codegen.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import * as fs from 'node:fs';
2
2
  import * as path from 'node:path';
3
- import { isRouteFile } from '../conventions';
3
+ import { isRouteFile } from '../conventions.js';
4
4
  /**
5
5
  * Scan a directory recursively for route files.
6
6
  */
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../src/generator/scanner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAS5C;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,SAAiB;IAC/C,MAAM,KAAK,GAAkB,EAAE,CAAA;IAE/B,SAAS,IAAI,CAAC,GAAW;QACxB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAM;QAE/B,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QAE5D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAE3C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACzB,2CAA2C;gBAC3C,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc;oBAAE,SAAQ;gBACzE,IAAI,CAAC,QAAQ,CAAC,CAAA;YACf,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtD,KAAK,CAAC,IAAI,CAAC;oBACV,YAAY,EAAE,QAAQ;oBACtB,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC;iBAChD,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,CAAA;IAEf,gCAAgC;IAChC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAA;IAElE,OAAO,KAAK,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../src/generator/scanner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAS/C;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,SAAiB;IAC/C,MAAM,KAAK,GAAkB,EAAE,CAAA;IAE/B,SAAS,IAAI,CAAC,GAAW;QACxB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAM;QAE/B,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QAE5D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAE3C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACzB,2CAA2C;gBAC3C,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc;oBAAE,SAAQ;gBACzE,IAAI,CAAC,QAAQ,CAAC,CAAA;YACf,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtD,KAAK,CAAC,IAAI,CAAC;oBACV,YAAY,EAAE,QAAQ;oBACtB,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC;iBAChD,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,CAAA;IAEf,gCAAgC;IAChC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAA;IAElE,OAAO,KAAK,CAAA;AACb,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { ModuleLoader } from './page-extractor';
2
- import type { ScannedFile } from './scanner';
1
+ import type { ModuleLoader } from './page-extractor.js';
2
+ import type { ScannedFile } from './scanner.js';
3
3
  /**
4
4
  * Page export info attached to a file route node.
5
5
  */
@@ -18,7 +18,7 @@ export interface PageExportInfo {
18
18
  }[];
19
19
  }
20
20
  /**
21
- * A node in the file-based route tree (before compilation into RouteNode).
21
+ * A node in the route tree (before compilation into RouteNode).
22
22
  */
23
23
  export interface FileRouteNode {
24
24
  /** Route path segment (from file name, or derived from .route() pattern). */
@@ -45,6 +45,10 @@ export interface FileRouteNode {
45
45
  /**
46
46
  * Build a route tree from scanned files.
47
47
  * Loads each module via moduleLoader to extract createPage() metadata.
48
+ *
49
+ * Two-phase approach:
50
+ * 1. Extract flat route entries from all files.
51
+ * 2. Build the tree using route-pattern prefix matching (not file hierarchy).
48
52
  */
49
53
  export declare function buildFileRouteTree(files: ScannedFile[], moduleLoader: ModuleLoader): Promise<FileRouteNode[]>;
50
54
  //# sourceMappingURL=tree-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree-builder.d.ts","sourceRoot":"","sources":["../../src/generator/tree-builder.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAA;IACd,+CAA+C;IAC/C,UAAU,EAAE,MAAM,CAAA;IAClB,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAA;IACpB,iDAAiD;IACjD,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,EAAE,CAAA;CAC7D;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAA;IACf,2BAA2B;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gCAAgC;IAChC,QAAQ,EAAE,OAAO,CAAA;IACjB,sCAAsC;IACtC,OAAO,EAAE,OAAO,CAAA;IAChB,6CAA6C;IAC7C,UAAU,EAAE,OAAO,CAAA;IACnB,wCAAwC;IACxC,eAAe,EAAE,OAAO,CAAA;IACxB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,cAAc,EAAE,CAAA;IAC9B,sBAAsB;IACtB,QAAQ,EAAE,aAAa,EAAE,CAAA;CACzB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAsBnH"}
1
+ {"version":3,"file":"tree-builder.d.ts","sourceRoot":"","sources":["../../src/generator/tree-builder.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAA;IACd,+CAA+C;IAC/C,UAAU,EAAE,MAAM,CAAA;IAClB,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAA;IACpB,iDAAiD;IACjD,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,EAAE,CAAA;CAC7D;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAA;IACf,2BAA2B;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gCAAgC;IAChC,QAAQ,EAAE,OAAO,CAAA;IACjB,sCAAsC;IACtC,OAAO,EAAE,OAAO,CAAA;IAChB,6CAA6C;IAC7C,UAAU,EAAE,OAAO,CAAA;IACnB,wCAAwC;IACxC,eAAe,EAAE,OAAO,CAAA;IACxB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,cAAc,EAAE,CAAA;IAC9B,sBAAsB;IACtB,QAAQ,EAAE,aAAa,EAAE,CAAA;CACzB;AAuBD;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAGnH"}