@vertesia/create-plugin 0.80.0-dev.20251121 → 0.80.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 (119) hide show
  1. package/README.md +123 -66
  2. package/lib/configuration.d.ts +63 -0
  3. package/lib/configuration.d.ts.map +1 -0
  4. package/lib/configuration.js +68 -0
  5. package/lib/configuration.js.map +1 -0
  6. package/lib/download-template.d.ts +5 -0
  7. package/lib/download-template.d.ts.map +1 -0
  8. package/lib/download-template.js +33 -0
  9. package/lib/download-template.js.map +1 -0
  10. package/lib/index.d.ts +9 -0
  11. package/lib/index.d.ts.map +1 -0
  12. package/lib/index.js +159 -0
  13. package/lib/index.js.map +1 -0
  14. package/lib/package-manager.d.ts +10 -0
  15. package/lib/package-manager.d.ts.map +1 -0
  16. package/lib/package-manager.js +74 -0
  17. package/lib/package-manager.js.map +1 -0
  18. package/lib/process-template.d.ts +25 -0
  19. package/lib/process-template.d.ts.map +1 -0
  20. package/lib/process-template.js +186 -0
  21. package/lib/process-template.js.map +1 -0
  22. package/lib/prompts.d.ts +6 -0
  23. package/lib/prompts.d.ts.map +1 -0
  24. package/lib/prompts.js +54 -0
  25. package/lib/prompts.js.map +1 -0
  26. package/lib/template-config.d.ts +87 -0
  27. package/lib/template-config.d.ts.map +1 -0
  28. package/lib/template-config.js +23 -0
  29. package/lib/template-config.js.map +1 -0
  30. package/lib/template-selector.d.ts +7 -0
  31. package/lib/template-selector.d.ts.map +1 -0
  32. package/lib/template-selector.js +56 -0
  33. package/lib/template-selector.js.map +1 -0
  34. package/lib/transforms.d.ts +33 -0
  35. package/lib/transforms.d.ts.map +1 -0
  36. package/lib/transforms.js +81 -0
  37. package/lib/transforms.js.map +1 -0
  38. package/package.json +22 -32
  39. package/bin/create-plugin.mjs +0 -2
  40. package/lib/Package.d.ts +0 -42
  41. package/lib/Package.d.ts.map +0 -1
  42. package/lib/Package.js +0 -52
  43. package/lib/Package.js.map +0 -1
  44. package/lib/TemplateInit.d.ts +0 -30
  45. package/lib/TemplateInit.d.ts.map +0 -1
  46. package/lib/TemplateInit.js +0 -48
  47. package/lib/TemplateInit.js.map +0 -1
  48. package/lib/ToolTemplateInit.d.ts +0 -10
  49. package/lib/ToolTemplateInit.d.ts.map +0 -1
  50. package/lib/ToolTemplateInit.js +0 -58
  51. package/lib/ToolTemplateInit.js.map +0 -1
  52. package/lib/WebTemplateInit.d.ts +0 -10
  53. package/lib/WebTemplateInit.d.ts.map +0 -1
  54. package/lib/WebTemplateInit.js +0 -68
  55. package/lib/WebTemplateInit.js.map +0 -1
  56. package/lib/copy.d.ts +0 -12
  57. package/lib/copy.d.ts.map +0 -1
  58. package/lib/copy.js +0 -45
  59. package/lib/copy.js.map +0 -1
  60. package/lib/deps.d.ts +0 -3
  61. package/lib/deps.d.ts.map +0 -1
  62. package/lib/deps.js +0 -20
  63. package/lib/deps.js.map +0 -1
  64. package/lib/hasBin.d.ts +0 -2
  65. package/lib/hasBin.d.ts.map +0 -1
  66. package/lib/hasBin.js +0 -14
  67. package/lib/hasBin.js.map +0 -1
  68. package/lib/init.d.ts +0 -2
  69. package/lib/init.d.ts.map +0 -1
  70. package/lib/init.js +0 -124
  71. package/lib/init.js.map +0 -1
  72. package/lib/main.d.ts +0 -2
  73. package/lib/main.d.ts.map +0 -1
  74. package/lib/main.js +0 -8
  75. package/lib/main.js.map +0 -1
  76. package/lib/template.d.ts +0 -4
  77. package/lib/template.d.ts.map +0 -1
  78. package/lib/template.js +0 -16
  79. package/lib/template.js.map +0 -1
  80. package/lib/types.d.ts +0 -12
  81. package/lib/types.d.ts.map +0 -1
  82. package/lib/types.js +0 -20
  83. package/lib/types.js.map +0 -1
  84. package/lib/utils.d.ts +0 -2
  85. package/lib/utils.d.ts.map +0 -1
  86. package/lib/utils.js +0 -7
  87. package/lib/utils.js.map +0 -1
  88. package/templates/tool/.env.example +0 -6
  89. package/templates/tool/.vscode/launch.json +0 -24
  90. package/templates/tool/README.md +0 -190
  91. package/templates/tool/api/index.ts +0 -8
  92. package/templates/tool/gitignore +0 -26
  93. package/templates/tool/rollup.config.js +0 -30
  94. package/templates/tool/src/collections/example/icon.svg.ts +0 -6
  95. package/templates/tool/src/collections/example/index.ts +0 -14
  96. package/templates/tool/src/collections/example/weather/WeatherTool.ts +0 -32
  97. package/templates/tool/src/collections/example/weather/manifest.ts +0 -16
  98. package/templates/tool/src/collections/index.ts +0 -7
  99. package/templates/tool/src/index.ts +0 -5
  100. package/templates/tool/src/server.ts +0 -71
  101. package/templates/tool/tsconfig.json +0 -24
  102. package/templates/tool/vite.config.js +0 -48
  103. package/templates/web/README.md +0 -156
  104. package/templates/web/eslint.config.js +0 -29
  105. package/templates/web/gitignore +0 -25
  106. package/templates/web/index.html.tmpl +0 -26
  107. package/templates/web/src/app.tsx +0 -8
  108. package/templates/web/src/assets.ts +0 -26
  109. package/templates/web/src/env.ts.tmpl +0 -14
  110. package/templates/web/src/index.css +0 -21
  111. package/templates/web/src/main.tsx.tmpl +0 -21
  112. package/templates/web/src/pages.tsx +0 -31
  113. package/templates/web/src/plugin.tsx.tmpl +0 -18
  114. package/templates/web/src/routes.tsx +0 -17
  115. package/templates/web/src/vite-env.d.ts +0 -1
  116. package/templates/web/tsconfig.app.json +0 -51
  117. package/templates/web/tsconfig.json +0 -7
  118. package/templates/web/tsconfig.node.json +0 -27
  119. package/templates/web/vite.config.ts.tmpl +0 -128
@@ -0,0 +1,81 @@
1
+ /**
2
+ * String transformation utilities for derived variables
3
+ */
4
+ /**
5
+ * Convert string to PascalCase
6
+ * Examples: "my-plugin" → "MyPlugin", "hello world" → "HelloWorld"
7
+ */
8
+ export function toPascalCase(str) {
9
+ return str
10
+ .replace(/[^a-zA-Z0-9]+(.)/g, (_, char) => char.toUpperCase())
11
+ .replace(/^[a-z]/, (char) => char.toUpperCase());
12
+ }
13
+ /**
14
+ * Convert string to camelCase
15
+ * Examples: "my-plugin" → "myPlugin", "hello world" → "helloWorld"
16
+ */
17
+ export function toCamelCase(str) {
18
+ return str
19
+ .replace(/[^a-zA-Z0-9]+(.)/g, (_, char) => char.toUpperCase())
20
+ .replace(/^[A-Z]/, (char) => char.toLowerCase());
21
+ }
22
+ /**
23
+ * Convert string to kebab-case
24
+ * Examples: "MyPlugin" → "my-plugin", "helloWorld" → "hello-world"
25
+ */
26
+ export function toKebabCase(str) {
27
+ return str
28
+ .replace(/([a-z0-9])([A-Z])/g, '$1-$2')
29
+ .replace(/[^a-zA-Z0-9]+/g, '-')
30
+ .replace(/^-+|-+$/g, '')
31
+ .toLowerCase();
32
+ }
33
+ /**
34
+ * Convert string to snake_case
35
+ * Examples: "MyPlugin" → "my_plugin", "helloWorld" → "hello_world"
36
+ */
37
+ export function toSnakeCase(str) {
38
+ return str
39
+ .replace(/([a-z0-9])([A-Z])/g, '$1_$2')
40
+ .replace(/[^a-zA-Z0-9]+/g, '_')
41
+ .replace(/^_+|_+$/g, '')
42
+ .toLowerCase();
43
+ }
44
+ /**
45
+ * Convert string to Title Case
46
+ * Examples: "my-plugin" → "My Plugin", "hello_world" → "Hello World"
47
+ */
48
+ export function toTitleCase(str) {
49
+ return str
50
+ .replace(/([a-z0-9])([A-Z])/g, '$1 $2')
51
+ .replace(/[_-]+/g, ' ')
52
+ .replace(/\s+/g, ' ')
53
+ .trim()
54
+ .split(' ')
55
+ .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
56
+ .join(' ');
57
+ }
58
+ /**
59
+ * Apply a transformation to a string value
60
+ */
61
+ export function applyTransform(value, transform) {
62
+ switch (transform) {
63
+ case 'pascalCase':
64
+ return toPascalCase(value);
65
+ case 'camelCase':
66
+ return toCamelCase(value);
67
+ case 'kebabCase':
68
+ return toKebabCase(value);
69
+ case 'snakeCase':
70
+ return toSnakeCase(value);
71
+ case 'titleCase':
72
+ return toTitleCase(value);
73
+ case 'upperCase':
74
+ return value.toUpperCase();
75
+ case 'lowerCase':
76
+ return value.toLowerCase();
77
+ default:
78
+ throw new Error(`Unknown transform: ${transform}`);
79
+ }
80
+ }
81
+ //# sourceMappingURL=transforms.js.map
@@ -0,0 +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"}
package/package.json CHANGED
@@ -1,49 +1,39 @@
1
1
  {
2
2
  "name": "@vertesia/create-plugin",
3
- "version": "0.80.0-dev.20251121",
4
- "description": "Initialize a Vertesia plugin package",
3
+ "version": "0.80.0",
4
+ "description": "CLI to create Vertesia plugins: UI plugins or tool servers",
5
5
  "type": "module",
6
6
  "bin": {
7
- "create-plugin": "./bin/create-plugin.mjs"
7
+ "create-plugin": "./lib/index.js"
8
8
  },
9
- "main": "./lib/main.js",
10
- "types": "./lib/main.d.ts",
9
+ "main": "./lib/index.js",
11
10
  "files": [
12
- "lib",
13
- "templates",
14
- "bin"
11
+ "lib"
15
12
  ],
16
- "license": "Apache-2.0",
17
- "homepage": "https://docs.vertesiahq.com/",
18
13
  "keywords": [
19
14
  "vertesia",
20
- "ui",
21
- "plugin"
15
+ "tool-server",
16
+ "cli",
17
+ "create",
18
+ "template",
19
+ "scaffold"
22
20
  ],
21
+ "author": "Vertesia",
22
+ "license": "Apache-2.0",
23
23
  "dependencies": {
24
- "enquirer": "^2.4.1",
25
- "hasbin": "^1.2.3"
24
+ "chalk": "^5.3.0",
25
+ "degit": "^2.8.4",
26
+ "prompts": "^2.4.2"
26
27
  },
27
28
  "devDependencies": {
28
- "@types/hasbin": "^1.2.2",
29
- "@types/node": "^22.5.0",
30
- "typescript": "^5.7.2",
31
- "hono": "^4.10.3",
32
- "@hono/node-server": "^1.19.5",
33
- "@llumiverse/common": "0.23.0-dev.20251121",
34
- "@vertesia/client": "0.80.0-dev.20251121",
35
- "@vertesia/tools-sdk": "0.80.0-dev.20251121",
36
- "@vertesia/common": "0.80.0-dev.20251121"
37
- },
38
- "repository": {
39
- "type": "git",
40
- "url": "https://github.com/vertesia/composableai.git",
41
- "directory": "packages/create-plugin"
29
+ "@types/degit": "^2.8.6",
30
+ "@types/node": "^22.18.12",
31
+ "@types/prompts": "^2.4.9",
32
+ "typescript": "^5.9.3"
42
33
  },
43
34
  "scripts": {
44
- "eslint": "eslint './src/**/*.{jsx,js,tsx,ts}'",
45
- "build": "rm -rf ./lib ./tsconfig.tsbuildinfo && pnpm run typecheck:templates && tsc --build",
46
- "typecheck:templates": "tsc --noEmit --project templates/tool/tsconfig.json",
47
- "clean": "rimraf ./node_modules ./lib ./tsconfig.tsbuildinfo"
35
+ "build": "tsc",
36
+ "dev": "tsc --watch",
37
+ "test": "node lib/index.js test-project"
48
38
  }
49
39
  }
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env node
2
- import "../lib/main.js"
package/lib/Package.d.ts DELETED
@@ -1,42 +0,0 @@
1
- export interface PackageJson {
2
- name: string;
3
- version: string;
4
- description: string;
5
- type: string;
6
- types?: string;
7
- main?: string;
8
- files?: string[];
9
- module?: string;
10
- license?: string;
11
- dependencies?: Record<string, string>;
12
- devDependencies?: Record<string, string>;
13
- peerDependencies?: Record<string, string>;
14
- optionalDependencies?: Record<string, string>;
15
- scripts?: Record<string, string>;
16
- bin?: Record<string, string>;
17
- plugin?: {
18
- title?: string;
19
- icon?: string;
20
- publisher?: string;
21
- external?: boolean;
22
- status?: "beta" | "stable" | "deprecated" | "hidden";
23
- };
24
- }
25
- export declare class Package {
26
- data: PackageJson;
27
- file?: string | undefined;
28
- constructor(data: PackageJson, file?: string | undefined);
29
- static fromFile(file: string): Package;
30
- get name(): string;
31
- set name(name: string);
32
- get version(): string;
33
- set version(version: string);
34
- get description(): string;
35
- set description(description: string);
36
- get scripts(): Record<string, string>;
37
- set scripts(scripts: Record<string, string>);
38
- save(): void;
39
- saveTo(file: string): void;
40
- toJson(): PackageJson;
41
- }
42
- //# sourceMappingURL=Package.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Package.d.ts","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,QAAQ,CAAC;KACxD,CAAC;CACL;AAGD,qBAAa,OAAO;IACG,IAAI,EAAE,WAAW;IAAS,IAAI,CAAC,EAAE,MAAM;gBAAvC,IAAI,EAAE,WAAW,EAAS,IAAI,CAAC,EAAE,MAAM,YAAA;IAE1D,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM;IAK5B,IAAI,IAAI,IAIO,MAAM,CAFpB;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAEpB;IAED,IAAI,OAAO,IAIU,MAAM,CAF1B;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,MAAM,EAE1B;IAED,IAAI,WAAW,IAIc,MAAM,CAFlC;IAED,IAAI,WAAW,CAAC,WAAW,EAAE,MAAM,EAElC;IAED,IAAI,OAAO,IAKU,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAF1C;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAE1C;IAED,IAAI;IAMJ,MAAM,CAAC,IAAI,EAAE,MAAM;IAKnB,MAAM,IAAI,WAAW;CAGxB"}
package/lib/Package.js DELETED
@@ -1,52 +0,0 @@
1
- import fs from "fs";
2
- export class Package {
3
- data;
4
- file;
5
- constructor(data, file) {
6
- this.data = data;
7
- this.file = file;
8
- }
9
- static fromFile(file) {
10
- const content = fs.readFileSync(file, "utf8");
11
- return new Package(JSON.parse(content), file);
12
- }
13
- get name() {
14
- return this.data.name;
15
- }
16
- set name(name) {
17
- this.data.name = name;
18
- }
19
- get version() {
20
- return this.data.version;
21
- }
22
- set version(version) {
23
- this.data.version = version;
24
- }
25
- get description() {
26
- return this.data.description;
27
- }
28
- set description(description) {
29
- this.data.description = description;
30
- }
31
- get scripts() {
32
- if (!this.data.scripts)
33
- this.data.scripts = {};
34
- return this.data.scripts;
35
- }
36
- set scripts(scripts) {
37
- this.data.scripts = scripts;
38
- }
39
- save() {
40
- if (!this.file)
41
- throw new Error("File not specified, Use saveTo");
42
- fs.writeFileSync(this.file, JSON.stringify(this.data, undefined, 2), "utf8");
43
- }
44
- saveTo(file) {
45
- this.file = file;
46
- this.save();
47
- }
48
- toJson() {
49
- return { ...this.data };
50
- }
51
- }
52
- //# sourceMappingURL=Package.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Package.js","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AA4BpB,MAAM,OAAO,OAAO;IACG;IAA0B;IAA7C,YAAmB,IAAiB,EAAS,IAAa;QAAvC,SAAI,GAAJ,IAAI,CAAa;QAAS,SAAI,GAAJ,IAAI,CAAS;IAC1D,CAAC;IACD,MAAM,CAAC,QAAQ,CAAC,IAAY;QACxB,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC9C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IAC1B,CAAC;IAED,IAAI,IAAI,CAAC,IAAY;QACjB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,CAAC,OAAe;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAChC,CAAC;IAED,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;IACjC,CAAC;IAED,IAAI,WAAW,CAAC,WAAmB;QAC/B,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACxC,CAAC;IAED,IAAI,OAAO;QACP,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,CAAC,OAA+B;QACvC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAChC,CAAC;IAED,IAAI;QACA,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACjE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjF,CAAC;IAED,MAAM,CAAC,IAAY;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IAED,MAAM;QACF,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,CAAC;CACJ"}
@@ -1,30 +0,0 @@
1
- import { PackageJson } from "./Package.js";
2
- import { TemplateType } from "./types.js";
3
- export interface UserOptions {
4
- pm: "npm" | "pnpm";
5
- plugin_name: string;
6
- plugin_version: string;
7
- plugin_description?: string;
8
- isolation: "shadow" | "css";
9
- template: TemplateType;
10
- }
11
- export declare abstract class TemplateInit {
12
- options: UserOptions;
13
- pluginName: PluginName;
14
- constructor(options: UserOptions);
15
- abstract getPackageJson(): PackageJson;
16
- abstract getDevDependencies(): string[];
17
- abstract getRuntimeDependencies(): string[];
18
- abstract getVars(): Record<string, any>;
19
- installDeps(): void;
20
- }
21
- export declare class PluginName {
22
- value: string;
23
- scope?: string;
24
- name: string;
25
- _title?: string;
26
- constructor(value: string);
27
- get title(): string;
28
- get pascalCase(): string;
29
- }
30
- //# sourceMappingURL=TemplateInit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplateInit.d.ts","sourceRoot":"","sources":["../src/TemplateInit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,KAAK,GAAG,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC5B,QAAQ,EAAE,YAAY,CAAC;CAC1B;AAED,8BAAsB,YAAY;IAEX,OAAO,EAAE,WAAW;IADvC,UAAU,EAAE,UAAU,CAAC;gBACJ,OAAO,EAAE,WAAW;IAGvC,QAAQ,CAAC,cAAc,IAAI,WAAW;IAEtC,QAAQ,CAAC,kBAAkB,IAAI,MAAM,EAAE;IAEvC,QAAQ,CAAC,sBAAsB,IAAI,MAAM,EAAE;IAE3C,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAEvC,WAAW;CAMd;AAED,qBAAa,UAAU;IAIA,KAAK,EAAE,MAAM;IAHhC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;gBACG,KAAK,EAAE,MAAM;IAchC,IAAI,KAAK,WAKR;IACD,IAAI,UAAU,WAEb;CACJ"}
@@ -1,48 +0,0 @@
1
- import { addDevDependencies, addRuntimeDependencies } from "./deps.js";
2
- export class TemplateInit {
3
- options;
4
- pluginName;
5
- constructor(options) {
6
- this.options = options;
7
- this.pluginName = new PluginName(options.plugin_name);
8
- }
9
- installDeps() {
10
- const pm = this.options.pm;
11
- console.log("Installing dependencies");
12
- addDevDependencies(pm, this.getDevDependencies());
13
- addRuntimeDependencies(pm, this.getRuntimeDependencies());
14
- }
15
- }
16
- export class PluginName {
17
- value;
18
- scope;
19
- name;
20
- _title;
21
- constructor(value) {
22
- this.value = value;
23
- if (value.startsWith('@')) {
24
- const index = value.indexOf('/');
25
- if (index > -1) {
26
- this.name = value.substring(index + 1);
27
- this.scope = value.substring(1, index);
28
- }
29
- else {
30
- throw new Error("Invalid plugin name");
31
- }
32
- }
33
- else {
34
- this.name = value;
35
- this.scope = undefined;
36
- }
37
- }
38
- get title() {
39
- if (!this._title) {
40
- this._title = this.name.split('-').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join(' ');
41
- }
42
- return this._title;
43
- }
44
- get pascalCase() {
45
- return this.name.split('-').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join('');
46
- }
47
- }
48
- //# sourceMappingURL=TemplateInit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplateInit.js","sourceRoot":"","sources":["../src/TemplateInit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAavE,MAAM,OAAgB,YAAY;IAEX;IADnB,UAAU,CAAa;IACvB,YAAmB,OAAoB;QAApB,YAAO,GAAP,OAAO,CAAa;QACnC,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1D,CAAC;IASD,WAAW;QACP,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACvC,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAClD,sBAAsB,CAAC,EAAE,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAC9D,CAAC;CACJ;AAED,MAAM,OAAO,UAAU;IAIA;IAHnB,KAAK,CAAU;IACf,IAAI,CAAS;IACb,MAAM,CAAU;IAChB,YAAmB,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;QAC5B,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;gBACb,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gBACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC3C,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAA;QAC1B,CAAC;IACL,CAAC;IACD,IAAI,KAAK;QACL,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3G,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IACD,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnG,CAAC;CACJ"}
@@ -1,10 +0,0 @@
1
- import { PackageJson } from "./Package.js";
2
- import { TemplateInit, UserOptions } from "./TemplateInit.js";
3
- export declare class ToolTemplateInit extends TemplateInit {
4
- constructor(options: UserOptions);
5
- getVars(): Record<string, any>;
6
- getPackageJson(): PackageJson;
7
- getDevDependencies(): string[];
8
- getRuntimeDependencies(): string[];
9
- }
10
- //# sourceMappingURL=ToolTemplateInit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolTemplateInit.d.ts","sourceRoot":"","sources":["../src/ToolTemplateInit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAG9D,qBAAa,gBAAiB,SAAQ,YAAY;gBAClC,OAAO,EAAE,WAAW;IAIhC,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAM9B,cAAc,IAAI,WAAW;IAsB7B,kBAAkB,IAAI,MAAM,EAAE;IAiB9B,sBAAsB,IAAI,MAAM,EAAE;CAYrC"}
@@ -1,58 +0,0 @@
1
- import { TemplateInit } from "./TemplateInit.js";
2
- export class ToolTemplateInit extends TemplateInit {
3
- constructor(options) {
4
- super(options);
5
- }
6
- getVars() {
7
- return {};
8
- }
9
- getPackageJson() {
10
- const answer = this.options;
11
- return {
12
- name: answer.plugin_name,
13
- version: answer.plugin_version || '1.0.0',
14
- description: answer.plugin_description || '',
15
- type: 'module',
16
- main: `lib/esm/index.js`,
17
- types: "lib/types/index.d.ts",
18
- files: [
19
- "lib"
20
- ],
21
- scripts: {
22
- "dev": "vite --port 5174",
23
- "build": "vite build && pnpm exec rollup -c",
24
- "test": "vitest",
25
- "test:ui": "vitest --ui",
26
- "test:coverage": "vitest --coverage",
27
- }
28
- };
29
- }
30
- getDevDependencies() {
31
- return [
32
- "@hono/vite-dev-server",
33
- "@rollup/plugin-commonjs",
34
- "@rollup/plugin-json",
35
- "@rollup/plugin-node-resolve",
36
- "@types/node",
37
- "@vitest/coverage-v8",
38
- "esbuild",
39
- "rollup",
40
- "rollup-plugin-terser",
41
- "typescript",
42
- "vite",
43
- "vitest",
44
- ];
45
- }
46
- getRuntimeDependencies() {
47
- return [
48
- "@hono/node-server",
49
- "@vertesia/client",
50
- "@vertesia/common",
51
- "@vertesia/tools-sdk",
52
- "dotenv",
53
- "hono",
54
- "jose"
55
- ];
56
- }
57
- }
58
- //# sourceMappingURL=ToolTemplateInit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolTemplateInit.js","sourceRoot":"","sources":["../src/ToolTemplateInit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAe,MAAM,mBAAmB,CAAC;AAG9D,MAAM,OAAO,gBAAiB,SAAQ,YAAY;IAC9C,YAAY,OAAoB;QAC5B,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;IAED,OAAO;QACH,OAAO,EAEN,CAAA;IACL,CAAC;IAED,cAAc;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,OAAO;YACH,IAAI,EAAE,MAAM,CAAC,WAAW;YACxB,OAAO,EAAE,MAAM,CAAC,cAAc,IAAI,OAAO;YACzC,WAAW,EAAE,MAAM,CAAC,kBAAkB,IAAI,EAAE;YAC5C,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,kBAAkB;YACxB,KAAK,EAAE,sBAAsB;YAC7B,KAAK,EAAE;gBACH,KAAK;aACR;YACD,OAAO,EAAE;gBACL,KAAK,EAAE,kBAAkB;gBACzB,OAAO,EAAE,mCAAmC;gBAC5C,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,aAAa;gBACxB,eAAe,EAAE,mBAAmB;aACvC;SACJ,CAAC;IACN,CAAC;IAED,kBAAkB;QACd,OAAO;YACH,uBAAuB;YACvB,yBAAyB;YACzB,qBAAqB;YACrB,6BAA6B;YAC7B,aAAa;YACb,qBAAqB;YACrB,SAAS;YACT,QAAQ;YACR,sBAAsB;YACtB,YAAY;YACZ,MAAM;YACN,QAAQ;SACX,CAAA;IACL,CAAC;IAED,sBAAsB;QAClB,OAAO;YACH,mBAAmB;YACnB,kBAAkB;YAClB,kBAAkB;YAClB,qBAAqB;YACrB,QAAQ;YACR,MAAM;YACN,MAAM;SACT,CAAA;IACL,CAAC;CAEJ"}
@@ -1,10 +0,0 @@
1
- import { PackageJson } from "./Package.js";
2
- import { TemplateInit, UserOptions } from "./TemplateInit.js";
3
- export declare class WebTemplateInit extends TemplateInit {
4
- constructor(options: UserOptions);
5
- getVars(): Record<string, any>;
6
- getPackageJson(): PackageJson;
7
- getDevDependencies(): string[];
8
- getRuntimeDependencies(): string[];
9
- }
10
- //# sourceMappingURL=WebTemplateInit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WebTemplateInit.d.ts","sourceRoot":"","sources":["../src/WebTemplateInit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAG9D,qBAAa,eAAgB,SAAQ,YAAY;gBACjC,OAAO,EAAE,WAAW;IAIhC,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAQ9B,cAAc,IAAI,WAAW;IAyB7B,kBAAkB,IAAI,MAAM,EAAE;IAyB9B,sBAAsB,IAAI,MAAM,EAAE;CAOrC"}
@@ -1,68 +0,0 @@
1
- import { TemplateInit } from "./TemplateInit.js";
2
- export class WebTemplateInit extends TemplateInit {
3
- constructor(options) {
4
- super(options);
5
- }
6
- getVars() {
7
- return {
8
- plugin_title: this.pluginName.title,
9
- PluginComponent: this.pluginName.pascalCase + "Plugin",
10
- inlineCss: this.options.isolation === "css"
11
- };
12
- }
13
- getPackageJson() {
14
- const answer = this.options;
15
- return {
16
- name: answer.plugin_name,
17
- version: answer.plugin_version || '1.0.0',
18
- description: answer.plugin_description || '',
19
- type: 'module',
20
- files: [
21
- "dist"
22
- ],
23
- scripts: {
24
- "dev": "vite dev",
25
- "build:app": "vite build --mode app",
26
- "build:lib": "vite build --mode lib",
27
- "build": "vite build --mode app && vite build --mode lib",
28
- "lint": "eslint .",
29
- "preview": "vite preview"
30
- },
31
- peerDependencies: {
32
- "react": "^19.0.0",
33
- "react-dom": "^19.0.0"
34
- },
35
- };
36
- }
37
- getDevDependencies() {
38
- return [
39
- "@eslint/js",
40
- "@vertesia/plugin-builder",
41
- "@vitejs/plugin-basic-ssl",
42
- "@vitejs/plugin-react",
43
- "@tailwindcss/vite",
44
- "@tailwindcss/forms",
45
- "@types/node",
46
- "@types/react",
47
- "@types/react-dom",
48
- "eslint",
49
- "eslint-plugin-react-hooks",
50
- "eslint-plugin-react-refresh",
51
- "globals",
52
- "react",
53
- "react-dom",
54
- "tailwindcss",
55
- "typescript",
56
- "typescript-eslint",
57
- "vite",
58
- "vite-plugin-serve-static"
59
- ];
60
- }
61
- getRuntimeDependencies() {
62
- return [
63
- "@vertesia/common",
64
- "@vertesia/ui",
65
- ];
66
- }
67
- }
68
- //# sourceMappingURL=WebTemplateInit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WebTemplateInit.js","sourceRoot":"","sources":["../src/WebTemplateInit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAe,MAAM,mBAAmB,CAAC;AAG9D,MAAM,OAAO,eAAgB,SAAQ,YAAY;IAC7C,YAAY,OAAoB;QAC5B,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;IAED,OAAO;QACH,OAAO;YACH,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK;YACnC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,QAAQ;YACtD,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,KAAK,KAAK;SAC9C,CAAA;IACL,CAAC;IAED,cAAc;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,OAAO;YACH,IAAI,EAAE,MAAM,CAAC,WAAW;YACxB,OAAO,EAAE,MAAM,CAAC,cAAc,IAAI,OAAO;YACzC,WAAW,EAAE,MAAM,CAAC,kBAAkB,IAAI,EAAE;YAC5C,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE;gBACH,MAAM;aACT;YACD,OAAO,EAAE;gBACL,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,uBAAuB;gBACpC,WAAW,EAAE,uBAAuB;gBACpC,OAAO,EAAE,gDAAgD;gBACzD,MAAM,EAAE,UAAU;gBAClB,SAAS,EAAE,cAAc;aAC5B;YACD,gBAAgB,EAAE;gBACd,OAAO,EAAE,SAAS;gBAClB,WAAW,EAAE,SAAS;aACzB;SACJ,CAAC;IACN,CAAC;IAED,kBAAkB;QACd,OAAO;YACH,YAAY;YACZ,0BAA0B;YAC1B,0BAA0B;YAC1B,sBAAsB;YACtB,mBAAmB;YACnB,oBAAoB;YACpB,aAAa;YACb,cAAc;YACd,kBAAkB;YAClB,QAAQ;YACR,2BAA2B;YAC3B,6BAA6B;YAC7B,SAAS;YACT,OAAO;YACP,WAAW;YACX,aAAa;YACb,YAAY;YACZ,mBAAmB;YACnB,MAAM;YACN,0BAA0B;SAC7B,CAAA;IACL,CAAC;IAED,sBAAsB;QAClB,OAAO;YACH,kBAAkB;YAClB,cAAc;SACjB,CAAA;IACL,CAAC;CAEJ"}
package/lib/copy.d.ts DELETED
@@ -1,12 +0,0 @@
1
- /**
2
- * Recursively copies the contents of a source directory to a target directory using the most optimized method.
3
- *
4
- * @param sourceDir - The path to the source directory.
5
- * @param targetDir - The path to the target directory.
6
- * @param templateSuffix - Optional suffix to remove from file name after copying. Ex: .template, .tmpl
7
- */
8
- export declare function copyTree(sourceDir: string, targetDir: string, template?: {
9
- suffix?: string;
10
- context: Record<string, any>;
11
- }): Promise<void>;
12
- //# sourceMappingURL=copy.d.ts.map
package/lib/copy.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"copy.d.ts","sourceRoot":"","sources":["../src/copy.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,wBAAsB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;IAC5E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC/B,GAAG,OAAO,CAAC,IAAI,CAAC,CAsChB"}
package/lib/copy.js DELETED
@@ -1,45 +0,0 @@
1
- import { promises as fs } from "fs";
2
- import { join } from "path";
3
- import { processVarsInFile } from "./template.js";
4
- /**
5
- * Recursively copies the contents of a source directory to a target directory using the most optimized method.
6
- *
7
- * @param sourceDir - The path to the source directory.
8
- * @param targetDir - The path to the target directory.
9
- * @param templateSuffix - Optional suffix to remove from file name after copying. Ex: .template, .tmpl
10
- */
11
- export async function copyTree(sourceDir, targetDir, template) {
12
- // Optimize by using a queue to avoid deep recursion and potential stack overflows
13
- const queue = [{ source: sourceDir, target: targetDir }];
14
- while (queue.length > 0) {
15
- const { source, target } = queue.pop();
16
- // Ensure the target directory exists
17
- await fs.mkdir(target, { recursive: true });
18
- // Read all items in the source directory
19
- const items = await fs.readdir(source, { withFileTypes: true });
20
- for (const item of items) {
21
- const isTemplate = template?.suffix ? item.name.endsWith(template.suffix) : false;
22
- let targetName = isTemplate ? item.name.slice(0, -template.suffix.length) : item.name;
23
- // Rename gitignore to .gitignore (npm excludes .gitignore from published packages)
24
- if (targetName === 'gitignore') {
25
- targetName = '.gitignore';
26
- }
27
- const sourcePath = join(source, item.name);
28
- const targetPath = join(target, targetName);
29
- console.log('Generating', targetPath);
30
- if (item.isDirectory()) {
31
- // Queue subdirectory for processing
32
- queue.push({ source: sourcePath, target: targetPath });
33
- }
34
- else if (item.isFile() || item.isSymbolicLink()) {
35
- // Copy file or symbolic link
36
- await fs.copyFile(sourcePath, targetPath);
37
- if (isTemplate) {
38
- // Process template if applicable
39
- processVarsInFile(targetPath, template.context);
40
- }
41
- }
42
- }
43
- }
44
- }
45
- //# sourceMappingURL=copy.js.map
package/lib/copy.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"copy.js","sourceRoot":"","sources":["../src/copy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,SAAiB,EAAE,SAAiB,EAAE,QAGpE;IACG,kFAAkF;IAClF,MAAM,KAAK,GAAyC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAE/F,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QAExC,qCAAqC;QACrC,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE5C,yCAAyC;QACzC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAClF,IAAI,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,QAAS,CAAC,MAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACxF,mFAAmF;YACnF,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;gBAC7B,UAAU,GAAG,YAAY,CAAC;YAC9B,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAE5C,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAEtC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACrB,oCAAoC;gBACpC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAC3D,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;gBAChD,6BAA6B;gBAC7B,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;gBAC1C,IAAI,UAAU,EAAE,CAAC;oBACb,iCAAiC;oBACjC,iBAAiB,CAAC,UAAU,EAAE,QAAS,CAAC,OAAO,CAAC,CAAC;gBACrD,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;AACL,CAAC"}
package/lib/deps.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export declare function addDevDependencies(pm: "npm" | "pnpm", deps: string[]): void;
2
- export declare function addRuntimeDependencies(pm: "npm" | "pnpm", deps: string[]): void;
3
- //# sourceMappingURL=deps.d.ts.map
package/lib/deps.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../src/deps.ts"],"names":[],"mappings":"AAEA,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,KAAK,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAEpE;AACD,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,KAAK,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAExE"}
package/lib/deps.js DELETED
@@ -1,20 +0,0 @@
1
- import { runCommand } from "./utils.js";
2
- export function addDevDependencies(pm, deps) {
3
- _addDependencies(pm, deps, "dev");
4
- }
5
- export function addRuntimeDependencies(pm, deps) {
6
- _addDependencies(pm, deps, "runtime");
7
- }
8
- function _addDependencies(pm, deps, type = "runtime") {
9
- const args = [
10
- pm === "pnpm" ? "add" : "install"
11
- ];
12
- if (type === "dev") {
13
- args.push('-D');
14
- }
15
- for (const dep of deps) {
16
- args.push(dep);
17
- }
18
- runCommand(pm, args);
19
- }
20
- //# sourceMappingURL=deps.js.map
package/lib/deps.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"deps.js","sourceRoot":"","sources":["../src/deps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,MAAM,UAAU,kBAAkB,CAAC,EAAkB,EAAE,IAAc;IACjE,gBAAgB,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACtC,CAAC;AACD,MAAM,UAAU,sBAAsB,CAAC,EAAkB,EAAE,IAAc;IACrE,gBAAgB,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;AAC1C,CAAC;AACD,SAAS,gBAAgB,CAAC,EAAkB,EAAE,IAAc,EAAE,OAA0B,SAAS;IAC7F,MAAM,IAAI,GAAG;QACT,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;KACpC,CAAC;IACF,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClB,CAAC;IACD,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;AACzB,CAAC"}
package/lib/hasBin.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function hasBin(name: string): Promise<boolean>;
2
- //# sourceMappingURL=hasBin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hasBin.d.ts","sourceRoot":"","sources":["../src/hasBin.ts"],"names":[],"mappings":"AAEA,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAUrD"}