depflow 3.0.0-dev.7 → 3.0.0-dev.8

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 (64) hide show
  1. package/build/cli/DepFLowCLI.js +7 -5
  2. package/build/cli/DepFLowCLI.js.map +1 -1
  3. package/build/cli/bin.js +2 -5
  4. package/build/cli/bin.js.map +1 -1
  5. package/build/config/Config.d.ts +3 -3
  6. package/build/config/Config.js +3 -3
  7. package/build/config/Config.js.map +1 -1
  8. package/build/config/ImportMap.d.ts +24 -10
  9. package/build/config/ImportMap.js +38 -23
  10. package/build/config/ImportMap.js.map +1 -1
  11. package/build/config/{Tsconfig.d.ts → TSConfig.d.ts} +14 -17
  12. package/build/config/{Tsconfig.js → TSConfig.js} +31 -36
  13. package/build/config/TSConfig.js.map +1 -0
  14. package/build/schema/Config/Builder.d.ts +431 -0
  15. package/build/schema/Config/Builder.js +48 -0
  16. package/build/schema/Config/Builder.js.map +1 -0
  17. package/build/schema/Config/Config.d.ts +582 -0
  18. package/build/schema/Config/Config.js +20 -0
  19. package/build/schema/Config/Config.js.map +1 -0
  20. package/build/schema/Config/Dependency.d.ts +748 -0
  21. package/build/schema/Config/Dependency.js +25 -0
  22. package/build/schema/Config/Dependency.js.map +1 -0
  23. package/build/schema/Config/Extractor.d.ts +133 -0
  24. package/build/schema/Config/Extractor.js +25 -0
  25. package/build/schema/Config/Extractor.js.map +1 -0
  26. package/build/schema/Config/Resolver.d.ts +70 -0
  27. package/build/schema/Config/Resolver.js +25 -0
  28. package/build/schema/Config/Resolver.js.map +1 -0
  29. package/build/schema/Config/Transform.d.ts +73 -0
  30. package/build/schema/Config/Transform.js +27 -0
  31. package/build/schema/Config/Transform.js.map +1 -0
  32. package/build/schema/ImportMap.d.ts +22 -0
  33. package/build/schema/ImportMap.js +12 -0
  34. package/build/schema/ImportMap.js.map +1 -0
  35. package/build/schema/TSConfig.d.ts +56 -0
  36. package/build/schema/TSConfig.js +19 -0
  37. package/build/schema/TSConfig.js.map +1 -0
  38. package/build/schema/schema.d.ts +29 -0
  39. package/build/schema/schema.js +31 -0
  40. package/build/schema/schema.js.map +1 -0
  41. package/build/support/Builder/Builder.d.ts +10 -10
  42. package/build/support/Builder/Builder.js +14 -11
  43. package/build/support/Builder/Builder.js.map +1 -1
  44. package/build/support/Dependency/Dependency.d.ts +5 -5
  45. package/build/support/Dependency/Dependency.js +1 -1
  46. package/build/support/Dependency/Dependency.js.map +1 -1
  47. package/build/support/Dependency/GitDependency.d.ts +2 -2
  48. package/build/support/Dependency/GitDependency.js +1 -1
  49. package/build/support/Dependency/GitDependency.js.map +1 -1
  50. package/build/support/Dependency/NpmDependency.d.ts +3 -3
  51. package/build/support/Dependency/NpmDependency.js.map +1 -1
  52. package/build/support/PathResolver/AliasCompiler.d.ts +6 -9
  53. package/build/support/PathResolver/AliasCompiler.js +10 -10
  54. package/build/support/PathResolver/AliasCompiler.js.map +1 -1
  55. package/build/support/PathResolver/PathResolver.d.ts +3 -3
  56. package/build/support/PathResolver/PathResolver.js.map +1 -1
  57. package/package.json +2 -2
  58. package/build/config/Tsconfig.js.map +0 -1
  59. package/build/config/schemas.d.ts +0 -2659
  60. package/build/config/schemas.js +0 -90
  61. package/build/config/schemas.js.map +0 -1
  62. package/build/support/Dependency/Resolver.d.ts +0 -7
  63. package/build/support/Dependency/Resolver.js +0 -4
  64. package/build/support/Dependency/Resolver.js.map +0 -1
@@ -5,8 +5,8 @@ import Validator from "../support/Validator.js";
5
5
  import GitDependency from "../support/Dependency/GitDependency.js";
6
6
  import PathResolver from "../support/PathResolver/PathResolver.js";
7
7
  import Config from "../config/Config.js";
8
- import Schemas from "../config/schemas.js";
9
- import Tsconfig from "../config/Tsconfig.js";
8
+ import schema from "../schema/schema.js";
9
+ import TSConfig from "../config/TSConfig.js";
10
10
  import ImportMap from "../config/ImportMap.js";
11
11
  import NpmDependency from "../support/Dependency/NpmDependency.js";
12
12
  import Builder from "../support/Builder/Builder.js";
@@ -39,7 +39,7 @@ export class DepFlowCLI extends DebugUI {
39
39
  Validator.validateRepo(repo);
40
40
  if (!name)
41
41
  name = Utils.getRepoName(repo);
42
- const dep = Schemas.GitDependency.processData({ name, repo });
42
+ const dep = schema.Dependency.GitDependency.processData({ name, repo });
43
43
  const config = await Config.load(this.configPath);
44
44
  config.dependencies.push(dep);
45
45
  await Config.save(this.configPath, config);
@@ -224,15 +224,17 @@ export class DepFlowCLI extends DebugUI {
224
224
  const resolver = new PathResolver(config, { logger: this.out });
225
225
  const tsconfigFile = config.tsconfig;
226
226
  const importMapFile = config.importmap;
227
+ const tsconfigPath = path.join(this.projectRoot, tsconfigFile || 'tsconfig.json');
228
+ const importMapPath = path.join(this.projectRoot, importMapFile || 'importmap.json');
227
229
  if (tsconfigFile) {
228
- const tsconfig = await Tsconfig.load(this.projectRoot, tsconfigFile, { logger: this.out });
230
+ const tsconfig = await TSConfig.load(tsconfigPath, { logger: this.out });
229
231
  tsconfig.updatePaths(resolver.aliases);
230
232
  await tsconfig.save();
231
233
  }
232
234
  else
233
235
  this.out.warn(`No tsconfig file specified in configuration. Skipping tsconfig synchronization.`);
234
236
  if (importMapFile) {
235
- const importmap = await ImportMap.load(this.projectRoot, importMapFile, { logger: this.out });
237
+ const importmap = await ImportMap.load(importMapPath, { logger: this.out });
236
238
  importmap.updateImports(resolver.aliases, mode);
237
239
  await importmap.save();
238
240
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DepFLowCLI.js","sourceRoot":"","sources":["../../src/cli/DepFLowCLI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DepFLowCLI.js","sourceRoot":"","sources":["../../src/cli/DepFLowCLI.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,SAAS,MAAM,yBAAyB,CAAC;AAChD,OAAO,aAAa,MAAM,wCAAwC,CAAC;AACnE,OAAO,YAAY,MAAM,yCAAyC,CAAC;AACnE,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAC/C,OAAO,aAAa,MAAM,wCAAwC,CAAC;AACnE,OAAO,OAAO,MAAM,+BAA+B,CAAC;AAGpD,MAAM,OAAO,UAAW,SAAQ,OAAO;IAGf;IAFD,WAAW,CAAS;IACvC,YACoB,aAAqB,cAAc;QACnD,KAAK,EAAE,CAAC;QADQ,eAAU,GAAV,UAAU,CAAyB;QAEnD,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC;YAClB,MAAM,EAAE,IAAI,CAAC,GAAG;YAChB,SAAS,EAAE,EAAE,gBAAgB,EAAE,GAAG,EAAE;SACvC,CAAC,CAAA;QAEF,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACxE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAEpD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,2BAA2B,EAAE,WAAW,EAAE,6CAA6C,EAAE,CAAC,CAAC;QAC5I,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,WAAW,EAAE,sEAAsE,EAAE,CAAC,CAAC;QAChL,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,+BAA+B,EAAE,WAAW,EAAE,yFAAyF,EAAE,CAAC,CAAC;QACpM,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,iCAAiC,EAAE,WAAW,EAAE,6FAA6F,EAAE,CAAC,CAAC;QACvM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,wDAAwD,EAAE,CAAC,CAAC;QAC9I,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,kDAAkD,EAAE,CAAC,CAAC;QAC3H,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,qCAAqC,EAAE,WAAW,EAAE,0EAA0E,EAAE,CAAC,CAAC;QAC/L,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,oEAAoE,EAAG,CAAC,CAAC;IACzJ,CAAC;IACM,KAAK,CAAC,UAAU,CAAC,OAAe,EAAE,IAAc;QACnD,IAAI,CAAC;YACD,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC;YAExB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAEtC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,IAAI;gBAAE,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAE1C,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAExE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAE3C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAAC,CAAC;gBAC1C,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAAC,CAAC;IACpC,CAAC;IACM,KAAK,CAAC,aAAa,CAAC,OAAe,EAAE,IAAc;QACtD,IAAI,CAAC;YACD,MAAM,CAAE,UAAU,CAAE,GAAG,IAAI,CAAC;YAE5B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,UAAU;gBAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAE1E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;YAC5G,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAE3C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,UAAU,IAAI,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAAC,CAAC;gBAC1C,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAAC,CAAC;IACpC,CAAC;IACM,KAAK,CAAC,cAAc,CAAC,OAAe,EAAE,IAAc;QACvD,IAAI,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;YAE1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,CAAC;YAE5C,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC;YAEzI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAC/C,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;oBAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,GAAG,CAAC,IAAI,gBAAgB,GAAG,CAAC,IAAI,QAAQ,CAAC,CAAC;oBAC7E,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;oBAEhB,MAAM,UAAU,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;oBACvE,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;oBAE3B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;oBAChB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;gBAClD,CAAC;wBAAS,CAAC;oBAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAAC,CAAC;YACtC,CAAC;YAED,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;YAC/C,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;oBAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oCAAoC,GAAG,CAAC,IAAI,mBAAmB,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC;oBAClG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;oBAEhB,MAAM,UAAU,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;oBACvE,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;oBAE3B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;oBAChB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;gBACjE,CAAC;wBAAS,CAAC;oBAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAAC,CAAC;YACtC,CAAC;YAED,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAAC,CAAC;gBAC1C,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAAC,CAAC;IACpC,CAAC;IACM,KAAK,CAAC,SAAS,CAAC,OAAe,EAAE,IAAc;QAClD,IAAI,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;YAE1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;YAEzC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC;YAExI,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;oBAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,GAAG,CAAC,IAAI,WAAW,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC;oBACrE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;oBAChB,MAAM,UAAU,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;oBACvE,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;oBAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;oBAChB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;oBAC5C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACxB,CAAC;wBAAS,CAAC;oBAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAAC,CAAC;YACtC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAAC,CAAC;gBAC1C,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAAC,CAAC;IACpC,CAAC;IACM,KAAK,CAAC,UAAU,CAAC,OAAe,EAAE,IAAc;QACnD,IAAI,CAAC;YACD,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,UAAU;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAE5D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,wBAAwB,UAAU,QAAQ,CAAC,CAAC;YAE1D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,+BAA+B,CAAC,CAAC;YAEnF,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAE3D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;gBACxB,GAAG,EAAE,IAAI,CAAC,WAAW;gBACrB,QAAQ;gBACR,MAAM,EAAE,IAAI,CAAC,GAAG;aACnB,CAAC,CAAC;YACH,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAAC,CAAC;gBAC1C,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAAC,CAAC;IACpC,CAAC;IACM,KAAK,CAAC,IAAI,CAAC,OAAe,EAAE,IAAc;QAC7C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC5C,CAAC;YACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBACpC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3D,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAAC,CAAC;gBAC1C,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAAC,CAAC;IACpC,CAAC;IACM,KAAK,CAAC,YAAY,CAAC,OAAe,EAAE,IAAc;QACrD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,IAAI,GAAsB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;YACzD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;YAE1B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,IAAI,KAAK;gBAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAEhD,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAEhE,IAAI,KAAK;gBAAE,MAAM,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;;gBACjC,MAAM,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC;QAAC,CAAC;gBAChE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAAC,CAAC;IACpC,CAAC;IACM,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,IAAc;QACpD,IAAI,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,IAAI,GAAsB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;YAGzD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAEhE,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC;YACrC,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC;YACvC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,IAAI,eAAe,CAAC,CAAC;YAClF,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,IAAI,gBAAgB,CAAC,CAAC;YAErF,IAAI,YAAY,EAAE,CAAC;gBACf,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBACzE,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACvC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC1B,CAAC;;gBAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC;YACxG,IAAI,aAAa,EAAE,CAAC;gBAChB,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC5E,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAChD,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YAC3B,CAAC;;gBAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qFAAqF,CAAC,CAAC;YAE5G,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;QAAC,CAAC;gBAC7D,CAAC;YAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAAC,CAAC;IACpC,CAAC;CACJ;AAED,eAAe,UAAU,CAAC"}
package/build/cli/bin.js CHANGED
@@ -2,13 +2,10 @@
2
2
  import { File } from "@netfeez/common-node";
3
3
  import DepFlowCLI from "./DepFLowCLI.js";
4
4
  import { Utils } from "../support/Utils.js";
5
- import Schemas from "../config/schemas.js";
5
+ import schema from "../schema/schema.js";
6
6
  async function startupSchemaValidation(flowPath) {
7
- const jsonSchema = Schemas.Config.jsonSchema;
8
- // Temporarily write the schema to the .depflow directory for validation purposes
9
- // The vscode configuration was out for now, while ill enhance it we will use the $schema property in the depflow.json file to point to this schema
7
+ const jsonSchema = schema.Config.jsonSchema;
10
8
  File.write(`.depflow/schema.json`, JSON.stringify(jsonSchema));
11
- // Utils.addVscodeValidation(flowPath, jsonSchema);
12
9
  }
13
10
  const skip = 2;
14
11
  const [commandName, ...argsList] = process.argv.slice(skip);
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../src/cli/bin.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAE3C,KAAK,UAAU,uBAAuB,CAAC,QAAgB;IACnD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;IAC7C,iFAAiF;IACjF,mJAAmJ;IACnJ,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/D,mDAAmD;AACvD,CAAC;AAED,MAAM,IAAI,GAAG,CAAC,CAAC;AACf,MAAM,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAE5D,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AACrD,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACtC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAErD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC;AAE9C,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC;AAErC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,CAAC;AAExC,IAAI,CAAC;IACD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACJ,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,oBAAoB,WAAW,EAAE,CAAC,CAAC;YACjD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACvD,CAAC;IACL,CAAC;;QAAM,GAAG,CAAC,KAAK,EAAE,CAAC;AACvB,CAAC;AAAC,OAAO,KAAU,EAAE,CAAC;IAClB,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC3E,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,KAAK,EAAE,KAAK,IAAI,KAAK,EAAE,CAAC,CAAC;IAC1D,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../src/cli/bin.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,MAAM,MAAM,qBAAqB,CAAC;AAEzC,KAAK,UAAU,uBAAuB,CAAC,QAAgB;IACnD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;IAC5C,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,IAAI,GAAG,CAAC,CAAC;AACf,MAAM,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAE5D,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AACrD,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACtC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAErD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC;AAE9C,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC;AAErC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,CAAC;AAExC,IAAI,CAAC;IACD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACJ,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,oBAAoB,WAAW,EAAE,CAAC,CAAC;YACjD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACvD,CAAC;IACL,CAAC;;QAAM,GAAG,CAAC,KAAK,EAAE,CAAC;AACvB,CAAC;AAAC,OAAO,KAAU,EAAE,CAAC;IAClB,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC3E,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,KAAK,EAAE,KAAK,IAAI,KAAK,EAAE,CAAC,CAAC;IAC1D,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC"}
@@ -1,4 +1,4 @@
1
- import Schemas from './schemas.js';
1
+ import schema from '../schema/schema.js';
2
2
  export declare class Config {
3
3
  /**
4
4
  * Loads the configuration from a file at the specified path.
@@ -22,7 +22,7 @@ export declare class Config {
22
22
  static save(path: string, config: Config.ConfigToProcess): Promise<void>;
23
23
  }
24
24
  export declare namespace Config {
25
- type Config = typeof Schemas.Config.infer;
26
- type ConfigToProcess = typeof Schemas.Config.inferToProcess;
25
+ type Config = schema.Config;
26
+ type ConfigToProcess = schema.Config.toProcess;
27
27
  }
28
28
  export default Config;
@@ -4,7 +4,7 @@
4
4
  * @license Apache-2.0
5
5
  */
6
6
  import { File } from '@netfeez/common-node';
7
- import Schemas from './schemas.js';
7
+ import schema from '../schema/schema.js';
8
8
  export class Config {
9
9
  /**
10
10
  * Loads the configuration from a file at the specified path.
@@ -17,14 +17,14 @@ export class Config {
17
17
  */
18
18
  static async load(path) {
19
19
  if (!await File.exists(path)) {
20
- const defaults = Schemas.Config.processData({});
20
+ const defaults = schema.Config.processData({});
21
21
  await Config.save(path, defaults);
22
22
  return defaults;
23
23
  }
24
24
  else {
25
25
  const content = await File.read(path, 'utf-8');
26
26
  const json = JSON.parse(content);
27
- const config = Schemas.Config.processData(json);
27
+ const config = schema.Config.processData(json);
28
28
  return config;
29
29
  }
30
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../src/config/Config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,MAAM,OAAO,MAAM;IACf;;;;;;;;OAQG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAY;QAC1B,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAClC,OAAO,QAAQ,CAAC;QACpB,CAAC;aAAM,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAChD,OAAO,MAAM,CAAC;QAClB,CAAC;IACL,CAAC;IACD;;;;;;;;OAQG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,MAA8B;QAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;CACJ;AAMD,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../src/config/Config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,MAAM,MAAM,qBAAqB,CAAC;AAEzC,MAAM,OAAO,MAAM;IACf;;;;;;;;OAQG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAY;QAC1B,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAC/C,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAClC,OAAO,QAAQ,CAAC;QACpB,CAAC;aAAM,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC;QAClB,CAAC;IACL,CAAC;IACD;;;;;;;;OAQG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,MAA8B;QAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;CACJ;AAMD,eAAe,MAAM,CAAC"}
@@ -1,12 +1,11 @@
1
1
  import { Logger } from '@netfeez/vterm';
2
2
  import AliasCompiler from '../support/PathResolver/AliasCompiler.js';
3
- import Schemas from './schemas.js';
3
+ import schema from '../schema/schema.js';
4
4
  export declare class ImportMap {
5
5
  protected data: ImportMap.Data;
6
- protected projectRoot: string;
7
- protected filename: string;
6
+ protected path: string;
8
7
  protected logger: Logger;
9
- constructor(data: ImportMap.Data, projectRoot: string, filename: string, options?: ImportMap.Options);
8
+ constructor(data: ImportMap.Data, path: string, options?: ImportMap.Options);
10
9
  /**
11
10
  * Updates the import map data based on the provided compiled aliases.
12
11
  * It constructs an "imports" section where each alias is mapped to its target path.
@@ -14,22 +13,37 @@ export declare class ImportMap {
14
13
  * @param mode The resolution mode ('local' or 'cdn').
15
14
  */
16
15
  updateImports(aliases: AliasCompiler.CompiledAlias[], mode: 'local' | 'cdn'): void;
17
- save(filename?: string): Promise<void>;
18
- static save(projectRoot: string, filename: string, data: ImportMap.Data, options?: ImportMap.Options): Promise<void>;
16
+ /**
17
+ * Saves the provided import map data to a specified file path.
18
+ * It ensures that the directory for the file exists, converts the data to a JSON string with proper formatting, and writes it to the file system.
19
+ * The method also includes logging to inform users when the save operation is successful.
20
+ * @param path The path to the import map file to save.
21
+ * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
22
+ */
23
+ save(path?: string): Promise<void>;
24
+ /**
25
+ * Saves the provided import map data to a specified file path.
26
+ * It ensures that the directory for the file exists, converts the data to a JSON string with proper formatting, and writes it to the file system.
27
+ * The method also includes logging to inform users when the save operation is successful.
28
+ * @param path The path to the import map file to save.
29
+ * @param data The import map data to be saved.
30
+ * @param options Additional options for saving, such as a logger for logging messages during the save process.
31
+ * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
32
+ */
33
+ static save(path: string, data: ImportMap.Data, options?: ImportMap.Options): Promise<void>;
19
34
  /**
20
35
  * Factory method: Loads, validates (or creates default), and returns an instance of the ImportMap class.
21
36
  * It checks if the specified import map file exists, and if it does, it attempts to read and parse its content as JSON.
22
37
  * If the file does not exist or contains invalid JSON, it initializes the data with a default structure containing an empty "imports" object.
23
38
  * Finally, it returns a new instance of ImportMap with the loaded or default data, allowing for further manipulation and saving of the import map configuration.
24
- * @param projectRoot The root directory of the project where the import map file is located.
25
- * @param filename The name of the import map file to load (e.g., 'import-map.json').
39
+ * @param path The path to the import map file to load.
26
40
  * @param options Additional options for loading, such as a logger for logging messages during the load process.
27
41
  * @returns A promise that resolves to an instance of ImportMap initialized with the loaded or default data.
28
42
  */
29
- static load(projectRoot: string, filename: string, options?: ImportMap.Options): Promise<ImportMap>;
43
+ static load(path: string, options?: ImportMap.Options): Promise<ImportMap>;
30
44
  }
31
45
  export declare namespace ImportMap {
32
- type Data = Schemas.ImportMap['infer'];
46
+ type Data = schema.ImportMap.Root;
33
47
  interface Options {
34
48
  logger?: Logger;
35
49
  }
@@ -1,16 +1,13 @@
1
- import PATH from 'node:path';
2
1
  import { Logger } from '@netfeez/vterm';
3
2
  import { File, Path } from '@netfeez/common-node';
4
- import Schemas from './schemas.js';
3
+ import schema from '../schema/schema.js';
5
4
  export class ImportMap {
6
5
  data;
7
- projectRoot;
8
- filename;
6
+ path;
9
7
  logger;
10
- constructor(data, projectRoot, filename, options = {}) {
8
+ constructor(data, path, options = {}) {
11
9
  this.data = data;
12
- this.projectRoot = projectRoot;
13
- this.filename = filename;
10
+ this.path = path;
14
11
  this.logger = options.logger || new Logger({ name: 'IMP-MAP' });
15
12
  }
16
13
  /**
@@ -22,13 +19,14 @@ export class ImportMap {
22
19
  updateImports(aliases, mode) {
23
20
  if (!this.data.imports)
24
21
  this.data.imports = {};
22
+ const projectRoot = Path.dirname(this.path);
25
23
  for (const aliasObj of aliases) {
26
24
  const key = aliasObj.isWildcard ? `${aliasObj.alias}/` : aliasObj.alias;
27
25
  let target = mode === 'cdn' && aliasObj.targets.cdn
28
26
  ? aliasObj.targets.cdn
29
27
  : aliasObj.targets.local;
30
28
  if (target === aliasObj.targets.local) {
31
- target = Path.diff(this.projectRoot, target);
29
+ target = Path.diff(projectRoot, target);
32
30
  target = target.startsWith('/') ? target : `/${target}`;
33
31
  target = Path.normalize(target);
34
32
  }
@@ -39,16 +37,34 @@ export class ImportMap {
39
37
  this.data.imports[key] = target;
40
38
  }
41
39
  }
42
- async save(filename = this.filename) {
43
- await ImportMap.save(this.projectRoot, filename, this.data, { logger: this.logger });
40
+ /**
41
+ * Saves the provided import map data to a specified file path.
42
+ * It ensures that the directory for the file exists, converts the data to a JSON string with proper formatting, and writes it to the file system.
43
+ * The method also includes logging to inform users when the save operation is successful.
44
+ * @param path The path to the import map file to save.
45
+ * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
46
+ */
47
+ async save(path = this.path) {
48
+ await ImportMap.save(path, this.data, { logger: this.logger });
49
+ if (path !== this.path)
50
+ this.path = path;
44
51
  }
45
- static async save(projectRoot, filename, data, options = {}) {
52
+ /**
53
+ * Saves the provided import map data to a specified file path.
54
+ * It ensures that the directory for the file exists, converts the data to a JSON string with proper formatting, and writes it to the file system.
55
+ * The method also includes logging to inform users when the save operation is successful.
56
+ * @param path The path to the import map file to save.
57
+ * @param data The import map data to be saved.
58
+ * @param options Additional options for saving, such as a logger for logging messages during the save process.
59
+ * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
60
+ */
61
+ static async save(path, data, options = {}) {
46
62
  const logger = options.logger || new Logger({ name: 'IMP-MAP' });
47
- const importMapPath = PATH.resolve(projectRoot, filename);
48
- const folder = PATH.dirname(importMapPath);
63
+ const folder = Path.dirname(path);
49
64
  await File.ensureDir(folder);
50
65
  const json = JSON.stringify(data, null, 4);
51
- await File.write(importMapPath, json);
66
+ await File.write(path, json);
67
+ const filename = Path.fileName(path);
52
68
  logger.log(`&C2Saved file &C4${filename}`);
53
69
  }
54
70
  /**
@@ -56,26 +72,25 @@ export class ImportMap {
56
72
  * It checks if the specified import map file exists, and if it does, it attempts to read and parse its content as JSON.
57
73
  * If the file does not exist or contains invalid JSON, it initializes the data with a default structure containing an empty "imports" object.
58
74
  * Finally, it returns a new instance of ImportMap with the loaded or default data, allowing for further manipulation and saving of the import map configuration.
59
- * @param projectRoot The root directory of the project where the import map file is located.
60
- * @param filename The name of the import map file to load (e.g., 'import-map.json').
75
+ * @param path The path to the import map file to load.
61
76
  * @param options Additional options for loading, such as a logger for logging messages during the load process.
62
77
  * @returns A promise that resolves to an instance of ImportMap initialized with the loaded or default data.
63
78
  */
64
- static async load(projectRoot, filename, options = {}) {
79
+ static async load(path, options = {}) {
65
80
  const logger = options.logger || new Logger({ name: 'IMP-MAP' });
66
- const importMapPath = PATH.resolve(projectRoot, filename);
67
81
  let data;
68
- if (!await File.exists(importMapPath)) {
82
+ if (!await File.exists(path)) {
83
+ const filename = Path.fileName(path);
69
84
  logger.warn(`&C3${filename} not found. Creating defaults...`);
70
- data = Schemas.ImportMap.processData({});
85
+ data = schema.ImportMap.processData({});
71
86
  // await ImportMap.save(projectRoot, filename, data, { logger });
72
87
  }
73
88
  else {
74
- const content = await File.read(importMapPath, 'utf-8');
89
+ const content = await File.read(path, 'utf-8');
75
90
  const json = JSON.parse(content);
76
- data = Schemas.ImportMap.processData(json);
91
+ data = schema.ImportMap.processData(json);
77
92
  }
78
- return new ImportMap(data, projectRoot, filename, { logger });
93
+ return new ImportMap(data, path, { logger });
79
94
  }
80
95
  }
81
96
  export default ImportMap;
@@ -1 +1 @@
1
- {"version":3,"file":"ImportMap.js","sourceRoot":"","sources":["../../src/config/ImportMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ImportMap.js","sourceRoot":"","sources":["../../src/config/ImportMap.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,11 @@
1
1
  import { Logger } from '@netfeez/vterm';
2
- import Schemas from "./schemas.js";
3
2
  import AliasCompiler from '../support/PathResolver/AliasCompiler.js';
4
- export declare class Tsconfig {
5
- protected data: Tsconfig.Data;
6
- protected projectRoot: string;
7
- protected filename: string;
3
+ import schema from '../schema/schema.js';
4
+ export declare class TSConfig {
5
+ protected data: TSConfig.Data;
6
+ protected path: string;
8
7
  protected logger: Logger;
9
- constructor(data: Tsconfig.Data, projectRoot: string, filename: string, options?: Tsconfig.Options);
8
+ constructor(data: TSConfig.Data, path: string, options?: TSConfig.Options);
10
9
  /**
11
10
  * Updates the paths in the tsconfig data based on the provided compiled aliases.
12
11
  * It ensures that the compilerOptions and paths properties exist in the tsconfig data, and then iterates through the compiled aliases to construct the appropriate path mappings.
@@ -19,39 +18,37 @@ export declare class Tsconfig {
19
18
  * Saves the current tsconfig data to a file.
20
19
  * It constructs the path to the tsconfig file using the project root and filename, converts the data to a JSON string with proper formatting, and writes it to the file system using the File.write method.
21
20
  * The method also includes error handling to log any issues that occur during the save process, ensuring that users are informed of any problems when attempting to save the tsconfig configuration.
22
- * @param filename The name of the tsconfig file to save (default is the instance's filename property).
21
+ * @param path The path to the tsconfig file where the data should be saved.
23
22
  * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
24
23
  */
25
- save(filename?: string): Promise<void>;
24
+ save(path?: string): Promise<void>;
26
25
  /**
27
26
  * Static method to save tsconfig data to a specified file. It takes the project root, filename, tsconfig data, and options (including a logger) as parameters.
28
27
  * The method constructs the full path to the tsconfig file, converts the data to a formatted JSON string, and writes it to the file system.
29
28
  * It also includes error handling to log any issues that arise during the save process, providing feedback on whether the operation was successful or if it encountered problems.
30
- * @param projectRoot The root directory of the project where the tsconfig file should be saved.
31
- * @param filename The name of the tsconfig file (default is 'tsconfig.json').
29
+ * @param path The path to the tsconfig file where the data should be saved.
32
30
  * @param data The tsconfig data to be saved, structured according to the defined schema.
33
31
  * @param options Additional options for saving, such as a logger for logging messages during the save process.
34
32
  * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
35
33
  * @throws Will throw an error if there is an issue during the save process, which can be caught by the caller to handle it appropriately.
36
34
  */
37
- static save(projectRoot: string, filename: string | undefined, data: Tsconfig.Data, options?: Tsconfig.Options): Promise<void>;
35
+ static save(path: string, data: TSConfig.Data, options?: TSConfig.Options): Promise<void>;
38
36
  /**
39
37
  * Static method to load tsconfig data from a specified file.
40
38
  * It takes the project root, filename, and options (including a logger) as parameters.
41
39
  * The method checks if the tsconfig file exists, and if it does, it reads the content, parses it as JSON, and processes it using the defined schema to ensure it conforms to the expected structure.
42
40
  * If the file does not exist, it creates a default tsconfig data object using the schema. Finally, it returns an instance of the Tsconfig class initialized with the loaded or default data.
43
- * @param projectRoot The root directory of the project where the tsconfig file is located.
44
- * @param filename The name of the tsconfig file to load (default is 'tsconfig.json').
41
+ * @param path The path to the tsconfig file to load.
45
42
  * @param options Additional options for loading, such as a logger for logging messages during the load process.
46
43
  * @returns A promise that resolves to an instance of the Tsconfig class containing the loaded data, or rejects if there is an error during the load process.
47
44
  * @throws Will throw an error if there is an issue during the load process, which
48
45
  */
49
- static load(projectRoot: string, filename: string, options: Tsconfig.Options): Promise<Tsconfig>;
46
+ static load(path: string, options: TSConfig.Options): Promise<TSConfig>;
50
47
  }
51
- export declare namespace Tsconfig {
52
- type Data = Schemas.TsConfig['infer'];
48
+ export declare namespace TSConfig {
49
+ type Data = schema.TSConfig.Root;
53
50
  interface Options {
54
51
  logger?: Logger;
55
52
  }
56
53
  }
57
- export default Tsconfig;
54
+ export default TSConfig;
@@ -1,16 +1,13 @@
1
- import PATH from 'node:path';
2
1
  import { Logger } from '@netfeez/vterm';
3
2
  import { File, Path } from '@netfeez/common-node';
4
- import Schemas from "./schemas.js";
5
- export class Tsconfig {
3
+ import schema from '../schema/schema.js';
4
+ export class TSConfig {
6
5
  data;
7
- projectRoot;
8
- filename;
6
+ path;
9
7
  logger;
10
- constructor(data, projectRoot, filename, options = {}) {
8
+ constructor(data, path, options = {}) {
11
9
  this.data = data;
12
- this.projectRoot = projectRoot;
13
- this.filename = filename;
10
+ this.path = path;
14
11
  this.logger = options.logger || new Logger({ name: 'TS-CFG' });
15
12
  }
16
13
  /**
@@ -25,18 +22,19 @@ export class Tsconfig {
25
22
  this.data.compilerOptions = {};
26
23
  if (!this.data.compilerOptions.paths)
27
24
  this.data.compilerOptions.paths = {};
28
- for (const aliasObj of aliases) {
29
- const key = aliasObj.isWildcard ? `${aliasObj.alias}/*` : aliasObj.alias;
30
- let target = Path.diff(this.projectRoot, aliasObj.targets.local);
25
+ const projectRoot = Path.dirname(this.path);
26
+ for (const alias of aliases) {
27
+ const key = alias.isWildcard ? `${alias.alias}/*` : alias.alias;
28
+ let target = Path.diff(projectRoot, alias.targets.local);
31
29
  target = target.startsWith('.') ? target : `./${target}`;
32
30
  target = Path.normalize(target);
33
31
  let typeTarget;
34
- if (aliasObj.targets.type) {
35
- typeTarget = Path.diff(this.projectRoot, aliasObj.targets.type);
32
+ if (alias.targets.type) {
33
+ typeTarget = Path.diff(projectRoot, alias.targets.type);
36
34
  typeTarget = typeTarget.startsWith('.') ? typeTarget : `./${typeTarget}`;
37
35
  typeTarget = Path.normalize(typeTarget);
38
36
  }
39
- if (aliasObj.isWildcard) {
37
+ if (alias.isWildcard) {
40
38
  const suffix = target.endsWith('/') ? '*' : '/*';
41
39
  target = `${target}${suffix}`;
42
40
  if (typeTarget) {
@@ -50,31 +48,29 @@ export class Tsconfig {
50
48
  * Saves the current tsconfig data to a file.
51
49
  * It constructs the path to the tsconfig file using the project root and filename, converts the data to a JSON string with proper formatting, and writes it to the file system using the File.write method.
52
50
  * The method also includes error handling to log any issues that occur during the save process, ensuring that users are informed of any problems when attempting to save the tsconfig configuration.
53
- * @param filename The name of the tsconfig file to save (default is the instance's filename property).
51
+ * @param path The path to the tsconfig file where the data should be saved.
54
52
  * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
55
53
  */
56
- async save(filename = this.filename) {
57
- await Tsconfig.save(this.projectRoot, filename, this.data, { logger: this.logger });
54
+ async save(path = this.path) {
55
+ await TSConfig.save(path, this.data, { logger: this.logger });
56
+ if (path !== this.path)
57
+ this.path = path;
58
58
  }
59
59
  /**
60
60
  * Static method to save tsconfig data to a specified file. It takes the project root, filename, tsconfig data, and options (including a logger) as parameters.
61
61
  * The method constructs the full path to the tsconfig file, converts the data to a formatted JSON string, and writes it to the file system.
62
62
  * It also includes error handling to log any issues that arise during the save process, providing feedback on whether the operation was successful or if it encountered problems.
63
- * @param projectRoot The root directory of the project where the tsconfig file should be saved.
64
- * @param filename The name of the tsconfig file (default is 'tsconfig.json').
63
+ * @param path The path to the tsconfig file where the data should be saved.
65
64
  * @param data The tsconfig data to be saved, structured according to the defined schema.
66
65
  * @param options Additional options for saving, such as a logger for logging messages during the save process.
67
66
  * @returns A promise that resolves when the save operation is complete, or rejects if an error occurs during the process.
68
67
  * @throws Will throw an error if there is an issue during the save process, which can be caught by the caller to handle it appropriately.
69
68
  */
70
- static async save(projectRoot, filename = 'tsconfig.json', data, options = {}) {
69
+ static async save(path, data, options = {}) {
71
70
  const logger = options.logger || new Logger({ name: 'TS-CFG' });
72
- const tsconfigPath = PATH.resolve(projectRoot, filename);
73
- const folder = PATH.dirname(tsconfigPath);
74
- if (!await File.exists(folder))
75
- await File.mkdir(folder, { recursive: true });
76
71
  const json = JSON.stringify(data, null, 4);
77
- await File.write(tsconfigPath, json);
72
+ await File.write(path, json);
73
+ const filename = Path.fileName(path);
78
74
  logger.log(`&C2Saved file &C4${filename}&C2 successfully.`);
79
75
  }
80
76
  /**
@@ -82,28 +78,27 @@ export class Tsconfig {
82
78
  * It takes the project root, filename, and options (including a logger) as parameters.
83
79
  * The method checks if the tsconfig file exists, and if it does, it reads the content, parses it as JSON, and processes it using the defined schema to ensure it conforms to the expected structure.
84
80
  * If the file does not exist, it creates a default tsconfig data object using the schema. Finally, it returns an instance of the Tsconfig class initialized with the loaded or default data.
85
- * @param projectRoot The root directory of the project where the tsconfig file is located.
86
- * @param filename The name of the tsconfig file to load (default is 'tsconfig.json').
81
+ * @param path The path to the tsconfig file to load.
87
82
  * @param options Additional options for loading, such as a logger for logging messages during the load process.
88
83
  * @returns A promise that resolves to an instance of the Tsconfig class containing the loaded data, or rejects if there is an error during the load process.
89
84
  * @throws Will throw an error if there is an issue during the load process, which
90
85
  */
91
- static async load(projectRoot, filename, options) {
86
+ static async load(path, options) {
92
87
  const logger = options.logger || new Logger({ name: 'TS-CFG' });
93
- const tsconfigPath = PATH.resolve(projectRoot, filename);
94
88
  let data;
95
- if (!await File.exists(tsconfigPath)) {
89
+ if (!await File.exists(path)) {
90
+ const filename = Path.fileName(path);
96
91
  logger.warn(`&C3${filename} not found. Creating defaults...`);
97
- data = Schemas.TsConfig.processData({});
92
+ data = schema.TSConfig.processData({});
98
93
  // this.save(projectRoot, filename, data, { logger }).catch(err => logger.error(`Failed to create default tsconfig:`, err.message));
99
94
  }
100
95
  else {
101
- const content = await File.read(tsconfigPath, 'utf-8');
96
+ const content = await File.read(path, 'utf-8');
102
97
  const json = JSON.parse(content);
103
- data = Schemas.TsConfig.processData(json);
98
+ data = schema.TSConfig.processData(json);
104
99
  }
105
- return new Tsconfig(data, projectRoot, filename, { logger });
100
+ return new TSConfig(data, path, { logger });
106
101
  }
107
102
  }
108
- export default Tsconfig;
109
- //# sourceMappingURL=Tsconfig.js.map
103
+ export default TSConfig;
104
+ //# sourceMappingURL=TSConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TSConfig.js","sourceRoot":"","sources":["../../src/config/TSConfig.ts"],"names":[],"mappings":"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"}