@proteinjs/reflection-build 1.5.0 → 2.0.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.
Files changed (80) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/dist/src/BuildContract.d.ts +69 -0
  3. package/dist/src/BuildContract.js +393 -0
  4. package/dist/src/BuildContract.js.map +1 -0
  5. package/dist/src/ReflectionDoctor.d.ts +95 -0
  6. package/dist/src/ReflectionDoctor.js +588 -0
  7. package/dist/src/ReflectionDoctor.js.map +1 -0
  8. package/dist/src/build.d.ts +5 -1
  9. package/dist/src/build.js +13 -77
  10. package/dist/src/build.js.map +1 -1
  11. package/dist/src/codegen/writeGeneratedIndex.d.ts +18 -0
  12. package/dist/src/codegen/writeGeneratedIndex.js +58 -15
  13. package/dist/src/codegen/writeGeneratedIndex.js.map +1 -1
  14. package/dist/src/parser/createGraphBuilder.js +30 -5
  15. package/dist/src/parser/createGraphBuilder.js.map +1 -1
  16. package/dist/src/runBuild.js +12 -2
  17. package/dist/src/runBuild.js.map +1 -1
  18. package/dist/src/runDoctor.d.ts +2 -0
  19. package/dist/src/runDoctor.js +83 -0
  20. package/dist/src/runDoctor.js.map +1 -0
  21. package/dist/test/GraphEmitRelativePaths.test.d.ts +1 -0
  22. package/dist/test/GraphEmitRelativePaths.test.js +162 -0
  23. package/dist/test/GraphEmitRelativePaths.test.js.map +1 -0
  24. package/dist/test/ReflectionDoctor.test.d.ts +1 -0
  25. package/dist/test/ReflectionDoctor.test.js +316 -0
  26. package/dist/test/ReflectionDoctor.test.js.map +1 -0
  27. package/dist/test/TestSubpathContract.test.d.ts +1 -0
  28. package/dist/test/TestSubpathContract.test.js +260 -0
  29. package/dist/test/TestSubpathContract.test.js.map +1 -0
  30. package/dist/test/ValidateDontMutate.test.d.ts +1 -0
  31. package/dist/test/ValidateDontMutate.test.js +238 -0
  32. package/dist/test/ValidateDontMutate.test.js.map +1 -0
  33. package/dist/test/examples/source-repository/a/generated/index.js +1 -1
  34. package/dist/test/examples/source-repository/a/generated/index.js.map +1 -1
  35. package/dist/test/examples/source-repository/b/generated/index.js +1 -1
  36. package/dist/test/examples/source-repository/b/generated/index.js.map +1 -1
  37. package/package.json +5 -4
  38. package/src/BuildContract.ts +384 -0
  39. package/src/ReflectionDoctor.ts +589 -0
  40. package/src/build.ts +19 -56
  41. package/src/codegen/writeGeneratedIndex.ts +51 -13
  42. package/src/parser/createGraphBuilder.ts +9 -4
  43. package/src/runBuild.ts +7 -1
  44. package/src/runDoctor.ts +34 -0
  45. package/test/GraphEmitRelativePaths.test.ts +95 -0
  46. package/test/ReflectionDoctor.test.ts +193 -0
  47. package/test/TestSubpathContract.test.ts +148 -0
  48. package/test/ValidateDontMutate.test.ts +126 -0
  49. package/test/examples/source-repository/a/dist/BuildContract.d.ts +69 -0
  50. package/test/examples/source-repository/a/dist/BuildContract.js +393 -0
  51. package/test/examples/source-repository/a/dist/BuildContract.js.map +1 -0
  52. package/test/examples/source-repository/a/dist/build.d.ts +5 -1
  53. package/test/examples/source-repository/a/dist/build.js +13 -77
  54. package/test/examples/source-repository/a/dist/build.js.map +1 -1
  55. package/test/examples/source-repository/a/dist/codegen/writeGeneratedIndex.d.ts +18 -0
  56. package/test/examples/source-repository/a/dist/codegen/writeGeneratedIndex.js +58 -15
  57. package/test/examples/source-repository/a/dist/codegen/writeGeneratedIndex.js.map +1 -1
  58. package/test/examples/source-repository/a/dist/generated/index.js +1 -1
  59. package/test/examples/source-repository/a/dist/generated/index.js.map +1 -1
  60. package/test/examples/source-repository/a/dist/parser/createGraphBuilder.js +30 -5
  61. package/test/examples/source-repository/a/dist/parser/createGraphBuilder.js.map +1 -1
  62. package/test/examples/source-repository/a/dist/runBuild.js +12 -2
  63. package/test/examples/source-repository/a/dist/runBuild.js.map +1 -1
  64. package/test/examples/source-repository/a/generated/index.ts +1 -1
  65. package/test/examples/source-repository/b/dist/BuildContract.d.ts +69 -0
  66. package/test/examples/source-repository/b/dist/BuildContract.js +393 -0
  67. package/test/examples/source-repository/b/dist/BuildContract.js.map +1 -0
  68. package/test/examples/source-repository/b/dist/build.d.ts +5 -1
  69. package/test/examples/source-repository/b/dist/build.js +13 -77
  70. package/test/examples/source-repository/b/dist/build.js.map +1 -1
  71. package/test/examples/source-repository/b/dist/codegen/writeGeneratedIndex.d.ts +18 -0
  72. package/test/examples/source-repository/b/dist/codegen/writeGeneratedIndex.js +58 -15
  73. package/test/examples/source-repository/b/dist/codegen/writeGeneratedIndex.js.map +1 -1
  74. package/test/examples/source-repository/b/dist/generated/index.js +1 -1
  75. package/test/examples/source-repository/b/dist/generated/index.js.map +1 -1
  76. package/test/examples/source-repository/b/dist/parser/createGraphBuilder.js +30 -5
  77. package/test/examples/source-repository/b/dist/parser/createGraphBuilder.js.map +1 -1
  78. package/test/examples/source-repository/b/dist/runBuild.js +12 -2
  79. package/test/examples/source-repository/b/dist/runBuild.js.map +1 -1
  80. package/test/examples/source-repository/b/generated/index.ts +1 -1
@@ -61,84 +61,16 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
61
61
  Object.defineProperty(exports, "__esModule", { value: true });
62
62
  exports.build = void 0;
63
63
  var path = __importStar(require("path"));
64
- var tsconfig = require('./tsconfigTemplate.json');
65
- var util_node_1 = require("@proteinjs/util-node");
66
64
  var writeGeneratedIndex_1 = require("./codegen/writeGeneratedIndex");
67
- function build() {
65
+ var BuildContract_1 = require("./BuildContract");
66
+ function build(options) {
67
+ if (options === void 0) { options = {}; }
68
68
  return __awaiter(this, void 0, void 0, function () {
69
- // TODO save their index location in package.json and pass it in to writeGeneratedIndex above
70
- function updatePackageJson() {
71
- return __awaiter(this, void 0, void 0, function () {
72
- var targetDirPackageJson, targetPackageJson, originalPackageJsonString, isProd, targetDirDist, relGenPath, targetDirDistGenerated, generatedIndexJs, generatedIndexDts, updatedPackageJsonString;
73
- return __generator(this, function (_a) {
74
- switch (_a.label) {
75
- case 0:
76
- targetDirPackageJson = path.join(targetDir, 'package.json');
77
- return [4 /*yield*/, util_node_1.promisifiedFs.exists(targetDirPackageJson)];
78
- case 1:
79
- if (!(_a.sent())) {
80
- throw new Error("package.json does not exist, run `npm init -y` to create one");
81
- }
82
- targetPackageJson = require(targetDirPackageJson);
83
- originalPackageJsonString = JSON.stringify(targetPackageJson, null, 2);
84
- isProd = primaryRoot === 'src';
85
- if (isProd) {
86
- targetDirDist = path.join(targetDir, distDirRel);
87
- relGenPath = primaryRoot && primaryRoot !== 'src'
88
- ? path.relative(targetDir, path.join(targetDir, 'generated', primaryRoot))
89
- : path.relative(targetDir, path.join(targetDir, 'generated'));
90
- targetDirDistGenerated = path.join(targetDirDist, relGenPath);
91
- generatedIndexJs = path.join(targetDirDistGenerated, 'index.js');
92
- generatedIndexDts = path.join(targetDirDistGenerated, 'index.d.ts');
93
- targetPackageJson.main = "./".concat(path.relative(targetDir, generatedIndexJs));
94
- targetPackageJson.types = "./".concat(path.relative(targetDir, generatedIndexDts));
95
- }
96
- updatedPackageJsonString = JSON.stringify(targetPackageJson, null, 2);
97
- if (!(originalPackageJsonString !== updatedPackageJsonString)) return [3 /*break*/, 3];
98
- return [4 /*yield*/, util_node_1.promisifiedFs.writeFile(targetDirPackageJson, updatedPackageJsonString)];
99
- case 2:
100
- _a.sent();
101
- _a.label = 3;
102
- case 3: return [2 /*return*/];
103
- }
104
- });
105
- });
106
- }
107
- function writeTsconfig() {
108
- return __awaiter(this, void 0, void 0, function () {
109
- var existingTsconfig, includePath, generatedTsconfig;
110
- return __generator(this, function (_a) {
111
- switch (_a.label) {
112
- case 0: return [4 /*yield*/, util_node_1.promisifiedFs.exists(targetDirTsconfig)];
113
- case 1:
114
- if (!_a.sent()) return [3 /*break*/, 4];
115
- existingTsconfig = require(targetDirTsconfig);
116
- includePath = "./".concat(path.relative(targetDir, generatedIndex));
117
- if (!(existingTsconfig.include && !existingTsconfig.include.includes(includePath))) return [3 /*break*/, 3];
118
- existingTsconfig.include.push(includePath);
119
- return [4 /*yield*/, util_node_1.promisifiedFs.writeFile(targetDirTsconfig, JSON.stringify(existingTsconfig, null, 4))];
120
- case 2:
121
- _a.sent();
122
- _a.label = 3;
123
- case 3: return [3 /*break*/, 6];
124
- case 4:
125
- generatedTsconfig = Object.assign({}, tsconfig);
126
- generatedTsconfig.include = ["./".concat(path.relative(targetDir, generatedIndex))];
127
- return [4 /*yield*/, util_node_1.promisifiedFs.writeFile(targetDirTsconfig, JSON.stringify(generatedTsconfig, null, 4))];
128
- case 5:
129
- _a.sent();
130
- _a.label = 6;
131
- case 6: return [2 /*return*/];
132
- }
133
- });
134
- });
135
- }
136
- var targetDir, targetDirTsconfig, sourceRootsRaw, sourceRoots, primaryRoot, publicEntryRelOverride, distDirRel, targetDirGenerated, generatedIndex;
69
+ var targetDir, sourceRootsRaw, sourceRoots, primaryRoot, publicEntryRelOverride, distDirRel, targetDirGenerated, generatedIndex, contract;
137
70
  return __generator(this, function (_a) {
138
71
  switch (_a.label) {
139
72
  case 0:
140
73
  targetDir = process.env.INIT_CWD;
141
- targetDirTsconfig = path.join(targetDir, 'tsconfig.json');
142
74
  sourceRootsRaw = (process.env.REFLECTION_SOURCE_DIRS || '')
143
75
  .split(',')
144
76
  .map(function (s) { return s.trim(); })
@@ -151,14 +83,18 @@ function build() {
151
83
  ? path.join(targetDir, 'generated', primaryRoot)
152
84
  : path.join(targetDir, 'generated');
153
85
  generatedIndex = path.join(targetDirGenerated, 'index.ts');
154
- return [4 /*yield*/, updatePackageJson()];
86
+ contract = new BuildContract_1.BuildContract({
87
+ packageDir: targetDir,
88
+ primaryRoot: primaryRoot,
89
+ distDirRel: distDirRel,
90
+ generatedIndexPath: generatedIndex,
91
+ fix: !!options.fix,
92
+ });
93
+ return [4 /*yield*/, contract.apply()];
155
94
  case 1:
156
- _a.sent();
157
- return [4 /*yield*/, writeTsconfig()];
158
- case 2:
159
95
  _a.sent();
160
96
  return [4 /*yield*/, (0, writeGeneratedIndex_1.writeGeneratedIndex)(targetDir, targetDirGenerated, generatedIndex, sourceRoots, publicEntryRelOverride)];
161
- case 3:
97
+ case 2:
162
98
  _a.sent();
163
99
  return [2 /*return*/];
164
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../../src/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../../src/build.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA6B;AAC7B,qEAAoE;AACpE,iDAAgD;AAOhD,SAAsB,KAAK,CAAC,OAA0B;IAA1B,wBAAA,EAAA,YAA0B;;;;;;oBAC9C,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,QAAkB,CAAC;oBAK3C,cAAc,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC;yBAC9D,KAAK,CAAC,GAAG,CAAC;yBACV,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,EAAE,EAAR,CAAQ,CAAC;yBACpB,MAAM,CAAC,OAAO,CAAC,CAAC;oBAGb,WAAW,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACnE,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;oBAI7B,sBAAsB,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;oBAE5D,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,MAAM,CAAC;oBAKvD,kBAAkB,GACtB,WAAW,IAAI,WAAW,KAAK,KAAK;wBAClC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC;wBAChD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;oBAElC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;oBAK3D,QAAQ,GAAG,IAAI,6BAAa,CAAC;wBACjC,UAAU,EAAE,SAAS;wBACrB,WAAW,aAAA;wBACX,UAAU,YAAA;wBACV,kBAAkB,EAAE,cAAc;wBAClC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG;qBACnB,CAAC,CAAC;oBACH,qBAAM,QAAQ,CAAC,KAAK,EAAE,EAAA;;oBAAtB,SAAsB,CAAC;oBAEvB,qBAAM,IAAA,yCAAmB,EAAC,SAAS,EAAE,kBAAkB,EAAE,cAAc,EAAE,WAAW,EAAE,sBAAsB,CAAC,EAAA;;oBAA7G,SAA6G,CAAC;;;;;CAC/G;AA5CD,sBA4CC"}
@@ -1,3 +1,4 @@
1
+ import { Graph } from '@dagrejs/graphlib';
1
2
  /**
2
3
  * @param packageDir Root of the package (contains package.json)
3
4
  * @param packageGeneratedDir Directory where generated/index.ts will be written
@@ -15,3 +16,20 @@ export declare function writeGeneratedIndex(packageDir: string, packageGenerated
15
16
  * and correct for workspace symlinks (the symlinked package root carries its own dist).
16
17
  */
17
18
  export declare function dependencyHasSourceGraph(packageDir: string, packageName: string): boolean;
19
+ /**
20
+ * Full path to the dependency's source-graph artifact, or undefined when the dependency is
21
+ * not installed or not reflection-built. Same walk as `dependencyHasSourceGraph`; exposed for
22
+ * static graph harvesting (reflection-doctor).
23
+ */
24
+ export declare function findDependencySourceGraph(packageDir: string, packageName: string): string | undefined;
25
+ /**
26
+ * The installed location of a dependency, resolved by walking `node_modules` up from the
27
+ * consuming package — npm-layout resolution: the nearest installed copy shadows hoisted ones.
28
+ */
29
+ export declare function findDependencyDir(packageDir: string, packageName: string): string | undefined;
30
+ /**
31
+ * The graph exactly as a build emits it: parsed from the package's source roots, with
32
+ * build-time-non-loadable declarations pruned. Owned here so build emit and diagnostic
33
+ * tooling (reflection-doctor drift checks) share one pipeline.
34
+ */
35
+ export declare function createEmittedSourceGraph(packageDir: string, sourceRootsRel: string[]): Promise<Graph>;
@@ -62,7 +62,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
62
62
  return (mod && mod.__esModule) ? mod : { "default": mod };
63
63
  };
64
64
  Object.defineProperty(exports, "__esModule", { value: true });
65
- exports.dependencyHasSourceGraph = exports.writeGeneratedIndex = void 0;
65
+ exports.createEmittedSourceGraph = exports.findDependencyDir = exports.findDependencySourceGraph = exports.dependencyHasSourceGraph = exports.writeGeneratedIndex = void 0;
66
66
  var fs = __importStar(require("fs"));
67
67
  var path = __importStar(require("path"));
68
68
  var util_node_1 = require("@proteinjs/util-node");
@@ -143,11 +143,11 @@ function sourceRepositoryLoader(packageDir, generatedIndexPath, sourceRootsRel)
143
143
  packageJson = _a.sent();
144
144
  code = loadDependencySourceGraphs(packageDir, packageJson);
145
145
  roots = Array.isArray(sourceRootsRel) ? sourceRootsRel : [sourceRootsRel];
146
- return [4 /*yield*/, (0, createSourceGraph_1.createSourceGraph)(packageDir, [], roots)];
146
+ return [4 /*yield*/, createEmittedSourceGraph(packageDir, roots)];
147
147
  case 2:
148
148
  sourceGraph = _a.sent();
149
- code += generateSourceGraph(sourceGraph, packageJson.name);
150
- code += generateSourceLinks(sourceGraph, packageJson, generatedIndexPath);
149
+ code += generateSourceGraph(sourceGraph);
150
+ code += generateSourceLinks(sourceGraph, packageJson, packageDir, generatedIndexPath);
151
151
  code += mergeSourceGraph();
152
152
  return [2 /*return*/, code];
153
153
  }
@@ -210,24 +210,43 @@ function loadDependencySourceGraphs(packageDir, packageJson) {
210
210
  * and correct for workspace symlinks (the symlinked package root carries its own dist).
211
211
  */
212
212
  function dependencyHasSourceGraph(packageDir, packageName) {
213
+ return !!findDependencySourceGraph(packageDir, packageName);
214
+ }
215
+ exports.dependencyHasSourceGraph = dependencyHasSourceGraph;
216
+ /**
217
+ * Full path to the dependency's source-graph artifact, or undefined when the dependency is
218
+ * not installed or not reflection-built. Same walk as `dependencyHasSourceGraph`; exposed for
219
+ * static graph harvesting (reflection-doctor).
220
+ */
221
+ function findDependencySourceGraph(packageDir, packageName) {
222
+ var dependencyDir = findDependencyDir(packageDir, packageName);
223
+ if (!dependencyDir) {
224
+ return undefined;
225
+ }
226
+ var artifactPath = path.join(dependencyDir, 'dist', 'generated', 'index.js');
227
+ return fs.existsSync(artifactPath) ? artifactPath : undefined;
228
+ }
229
+ exports.findDependencySourceGraph = findDependencySourceGraph;
230
+ /**
231
+ * The installed location of a dependency, resolved by walking `node_modules` up from the
232
+ * consuming package — npm-layout resolution: the nearest installed copy shadows hoisted ones.
233
+ */
234
+ function findDependencyDir(packageDir, packageName) {
213
235
  var currentDir = packageDir;
214
- // Upward fs walk; exits are internal (found / package root / fs root).
236
+ // Upward fs walk; exits are internal (found / fs root).
215
237
  for (;;) {
216
238
  var candidate = path.join(currentDir, 'node_modules', packageName);
217
- if (fs.existsSync(path.join(candidate, 'dist', 'generated', 'index.js'))) {
218
- return true;
219
- }
220
239
  if (fs.existsSync(candidate)) {
221
- return false;
240
+ return candidate;
222
241
  }
223
242
  var parent_1 = path.dirname(currentDir);
224
243
  if (parent_1 === currentDir) {
225
- return false;
244
+ return undefined;
226
245
  }
227
246
  currentDir = parent_1;
228
247
  }
229
248
  }
230
- exports.dependencyHasSourceGraph = dependencyHasSourceGraph;
249
+ exports.findDependencyDir = findDependencyDir;
231
250
  /**
232
251
  * Determine an import specifier for a dependency that respects its package.json exports or main/module fields.
233
252
  */
@@ -283,8 +302,30 @@ function getDependencyImportSpecifier(packageDir, packageName) {
283
302
  return "".concat(packageName, "/").concat(entryPoint);
284
303
  }
285
304
  }
286
- function generateSourceGraph(sourceGraph, buildTargetPackageName) {
287
- removeNonLoadables(sourceGraph, buildTargetPackageName);
305
+ /**
306
+ * The graph exactly as a build emits it: parsed from the package's source roots, with
307
+ * build-time-non-loadable declarations pruned. Owned here so build emit and diagnostic
308
+ * tooling (reflection-doctor drift checks) share one pipeline.
309
+ */
310
+ function createEmittedSourceGraph(packageDir, sourceRootsRel) {
311
+ return __awaiter(this, void 0, void 0, function () {
312
+ var packageJson, sourceGraph;
313
+ return __generator(this, function (_a) {
314
+ switch (_a.label) {
315
+ case 0: return [4 /*yield*/, getPackageJson(packageDir)];
316
+ case 1:
317
+ packageJson = _a.sent();
318
+ return [4 /*yield*/, (0, createSourceGraph_1.createSourceGraph)(packageDir, [], sourceRootsRel)];
319
+ case 2:
320
+ sourceGraph = _a.sent();
321
+ removeNonLoadables(sourceGraph, packageJson.name);
322
+ return [2 /*return*/, sourceGraph];
323
+ }
324
+ });
325
+ });
326
+ }
327
+ exports.createEmittedSourceGraph = createEmittedSourceGraph;
328
+ function generateSourceGraph(sourceGraph) {
288
329
  var code = "\n\n/** Generate Source Graph */\n\n";
289
330
  var serializedSourceGraph = util_1.graphSerializer.serialize(sourceGraph);
290
331
  var doubleEscapedSerializedSourceGraph = (0, jsesc_1.default)(serializedSourceGraph, { json: true }); // since we write to file, need to escape a second time
@@ -349,7 +390,7 @@ function removeNonLoadableNode(packageScope, buildTargetPackageName, sourceGraph
349
390
  }
350
391
  return shouldRemove;
351
392
  }
352
- function generateSourceLinks(sourceGraph, packageJson, generatedIndexPath) {
393
+ function generateSourceLinks(sourceGraph, packageJson, packageDir, generatedIndexPath) {
353
394
  var code = "\n\n/** Generate Source Links */\n\n";
354
395
  var linkableNodes = [];
355
396
  for (var _i = 0, _a = sourceGraph.nodes(); _i < _a.length; _i++) {
@@ -367,7 +408,9 @@ function generateSourceLinks(sourceGraph, packageJson, generatedIndexPath) {
367
408
  if (!node.filePath) {
368
409
  continue;
369
410
  }
370
- var relativeImportPath = path.relative(path.dirname(generatedIndexPath), node.filePath);
411
+ // node.filePath is package-relative (never serialized absolute); resolve against the
412
+ // package dir to compute the real import location for the generated index.
413
+ var relativeImportPath = path.relative(path.dirname(generatedIndexPath), path.join(packageDir, node.filePath));
371
414
  code += "import { ".concat(node.name, " } from '").concat(relativeImportPath.replace(/\.[^/.]+$/, ''), "';\n");
372
415
  linkableNodes.push(node);
373
416
  }
@@ -1 +1 @@
1
- {"version":3,"file":"writeGeneratedIndex.js","sourceRoot":"","sources":["../../../../../../src/codegen/writeGeneratedIndex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writeGeneratedIndex.js","sourceRoot":"","sources":["../../../../../../src/codegen/writeGeneratedIndex.ts"],"names":[],"mappings":"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"}