@vertesia/create-plugin 1.2.0 → 1.3.0-dev.20260620.091720Z

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 (42) hide show
  1. package/README.md +3 -0
  2. package/lib/configuration.d.ts.map +1 -1
  3. package/lib/configuration.js +2 -19
  4. package/lib/configuration.js.map +1 -1
  5. package/lib/download-template.d.ts +3 -0
  6. package/lib/download-template.d.ts.map +1 -1
  7. package/lib/download-template.js +10 -9
  8. package/lib/download-template.js.map +1 -1
  9. package/lib/index.js +65 -18
  10. package/lib/index.js.map +1 -1
  11. package/lib/package-manager.d.ts +4 -0
  12. package/lib/package-manager.d.ts.map +1 -1
  13. package/lib/package-manager.js +16 -10
  14. package/lib/package-manager.js.map +1 -1
  15. package/lib/post-install.d.ts +4 -1
  16. package/lib/post-install.d.ts.map +1 -1
  17. package/lib/post-install.js +19 -19
  18. package/lib/post-install.js.map +1 -1
  19. package/lib/process-template.d.ts +7 -4
  20. package/lib/process-template.d.ts.map +1 -1
  21. package/lib/process-template.js +60 -29
  22. package/lib/process-template.js.map +1 -1
  23. package/lib/prompts.d.ts +5 -2
  24. package/lib/prompts.d.ts.map +1 -1
  25. package/lib/prompts.js +21 -8
  26. package/lib/prompts.js.map +1 -1
  27. package/lib/template-config.d.ts +3 -1
  28. package/lib/template-config.d.ts.map +1 -1
  29. package/lib/template-config.js +2 -2
  30. package/lib/template-config.js.map +1 -1
  31. package/lib/template-selector.d.ts +1 -1
  32. package/lib/template-selector.d.ts.map +1 -1
  33. package/lib/template-selector.js +7 -7
  34. package/lib/template-selector.js.map +1 -1
  35. package/lib/transforms.d.ts +5 -0
  36. package/lib/transforms.d.ts.map +1 -1
  37. package/lib/transforms.js +12 -1
  38. package/lib/transforms.js.map +1 -1
  39. package/lib/version.d.ts.map +1 -1
  40. package/lib/version.js +5 -4
  41. package/lib/version.js.map +1 -1
  42. package/package.json +11 -9
package/lib/transforms.js CHANGED
@@ -52,7 +52,7 @@ export function toTitleCase(str) {
52
52
  .replace(/\s+/g, ' ')
53
53
  .trim()
54
54
  .split(' ')
55
- .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
55
+ .map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
56
56
  .join(' ');
57
57
  }
58
58
  /**
@@ -84,4 +84,15 @@ export function applyTransform(value, transform) {
84
84
  export function concatValues(values, separator = '') {
85
85
  return values.join(separator);
86
86
  }
87
+ /**
88
+ * Look up a value in a map (used for the "map" transform)
89
+ * @throws Error if the key is not present in the map
90
+ */
91
+ export function applyMapTransform(value, map) {
92
+ if (!(value in map)) {
93
+ const keys = Object.keys(map).join(', ');
94
+ throw new Error(`Value "${value}" has no entry in map (expected one of: ${keys})`);
95
+ }
96
+ return map[value];
97
+ }
87
98
  //# sourceMappingURL=transforms.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transforms.js","sourceRoot":"","sources":["../src/transforms.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW;IACtC,OAAO,GAAG;SACP,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;SAC7D,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,OAAO,GAAG;SACP,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;SAC7D,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,OAAO,GAAG;SACP,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;SACtC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC;SAC9B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,WAAW,EAAE,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,OAAO,GAAG;SACP,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;SACtC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC;SAC9B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,WAAW,EAAE,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,OAAO,GAAG;SACP,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;SACtC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE;SACN,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SACvE,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,SAAiB;IAC7D,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,YAAY;YACf,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;QAC7B,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,KAAK,WAAW;YACd,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7B,KAAK,WAAW;YACd,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7B;YACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,MAAgB,EAAE,YAAoB,EAAE;IACnE,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"transforms.js","sourceRoot":"","sources":["../src/transforms.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW;IACpC,OAAO,GAAG;SACL,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;SAC7D,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;AACzD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACnC,OAAO,GAAG;SACL,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;SAC7D,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;AACzD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACnC,OAAO,GAAG;SACL,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;SACtC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC;SAC9B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,WAAW,EAAE,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACnC,OAAO,GAAG;SACL,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;SACtC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC;SAC9B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,WAAW,EAAE,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACnC,OAAO,GAAG;SACL,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;SACtC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE;SACN,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SACzE,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,SAAiB;IAC3D,QAAQ,SAAS,EAAE,CAAC;QAChB,KAAK,YAAY;YACb,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;QAC/B,KAAK,WAAW;YACZ,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,WAAW;YACZ,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,WAAW;YACZ,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,WAAW;YACZ,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,WAAW;YACZ,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;QAC/B,KAAK,WAAW;YACZ,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;QAC/B;YACI,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;IAC3D,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,MAAgB,EAAE,YAAoB,EAAE;IACjE,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,GAA2B;IACxE,IAAI,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,EAAE,CAAC;QAClB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,2CAA2C,IAAI,GAAG,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAyBA;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAOxE"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AA0BA;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAOxE"}
package/lib/version.js CHANGED
@@ -3,9 +3,9 @@
3
3
  *
4
4
  * Reads the CLI's own package.json to get version and templateVersions map.
5
5
  */
6
- import fs from 'fs';
7
- import path from 'path';
8
- import { fileURLToPath } from 'url';
6
+ import fs from 'node:fs';
7
+ import path from 'node:path';
8
+ import { fileURLToPath } from 'node:url';
9
9
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
10
10
  let _cached;
11
11
  function readCliPackageJson() {
@@ -13,6 +13,7 @@ function readCliPackageJson() {
13
13
  return _cached;
14
14
  const pkgPath = path.resolve(__dirname, '..', 'package.json');
15
15
  _cached = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
16
+ // biome-ignore lint/style/noNonNullAssertion: intentional non-null assertion; TS can't prove narrowing here
16
17
  return _cached;
17
18
  }
18
19
  /**
@@ -31,7 +32,7 @@ export function getTemplateVersions() {
31
32
  if (!pkg.templateVersions)
32
33
  return undefined;
33
34
  // Only return if versions are actually populated (not the placeholder 0.0.0)
34
- const hasReal = Object.values(pkg.templateVersions).some(v => v !== '0.0.0');
35
+ const hasReal = Object.values(pkg.templateVersions).some((v) => v !== '0.0.0');
35
36
  return hasReal ? pkg.templateVersions : undefined;
36
37
  }
37
38
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAO/D,IAAI,OAAmC,CAAC;AAExC,SAAS,kBAAkB;IACzB,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAC9D,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,OAAO,OAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,kBAAkB,EAAE,CAAC,OAAO,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;IACjC,IAAI,CAAC,GAAG,CAAC,gBAAgB;QAAE,OAAO,SAAS,CAAC;IAE5C,6EAA6E;IAC7E,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC;IAC7E,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAO/D,IAAI,OAAmC,CAAC;AAExC,SAAS,kBAAkB;IACvB,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAC9D,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,4GAA4G;IAC5G,OAAO,OAAQ,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IACzB,OAAO,kBAAkB,EAAE,CAAC,OAAO,CAAC;AACxC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB;IAC/B,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;IACjC,IAAI,CAAC,GAAG,CAAC,gBAAgB;QAAE,OAAO,SAAS,CAAC;IAE5C,6EAA6E;IAC7E,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC;IAC/E,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vertesia/create-plugin",
3
- "version": "1.2.0",
3
+ "version": "1.3.0-dev.20260620.091720Z",
4
4
  "description": "CLI to create Vertesia plugins: UI plugins or tool servers",
5
5
  "type": "module",
6
6
  "bin": {
@@ -21,8 +21,8 @@
21
21
  "author": "Vertesia",
22
22
  "license": "Apache-2.0",
23
23
  "templateVersions": {
24
- "@vertesia": "1.2.0",
25
- "@llumiverse": "1.1.1-dev.20260505.151157Z"
24
+ "@vertesia": "1.3.0-dev.20260620.091720Z",
25
+ "@llumiverse": "1.3.0"
26
26
  },
27
27
  "repository": {
28
28
  "type": "git",
@@ -30,20 +30,22 @@
30
30
  "directory": "packages/create-plugin"
31
31
  },
32
32
  "dependencies": {
33
- "chalk": "^5.3.0",
34
- "commander": "^14.0.2",
35
- "degit": "^2.8.4",
33
+ "chalk": "^5.6.2",
34
+ "commander": "^15.0.0",
35
+ "degit": "^3.4.7",
36
36
  "prompts": "^2.4.2"
37
37
  },
38
38
  "devDependencies": {
39
39
  "@types/degit": "^2.8.6",
40
- "@types/node": "^24.1.0",
40
+ "@types/node": "^24.13.2",
41
41
  "@types/prompts": "^2.4.9",
42
- "typescript": "^6.0.2"
42
+ "typescript": "^6.0.3"
43
43
  },
44
+ "gitHead": "1a76be81111643b66a7b11be9f328d159f1de4fc",
44
45
  "scripts": {
46
+ "lint": "biome lint src",
45
47
  "build": "tsc",
46
48
  "dev": "tsc --watch",
47
- "test": "node lib/index.js test-project"
49
+ "test": "node ./scripts/run-smoke-test.mjs"
48
50
  }
49
51
  }