vovk-cli 0.0.1-beta.31 → 0.0.1-beta.32
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.
|
@@ -26,7 +26,7 @@ export default async function createConfig({ root, log, options: { validationLib
|
|
|
26
26
|
Object.assign(templates, validationTemplates);
|
|
27
27
|
}
|
|
28
28
|
catch (error) {
|
|
29
|
-
log.
|
|
29
|
+
log.warn(`Failed to fetch validation library templates: ${error.message}`);
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
config.templates = templates;
|
|
@@ -7,33 +7,28 @@ import { Readable } from 'stream';
|
|
|
7
7
|
* @returns A promise that resolves to an array of file paths.
|
|
8
8
|
*/
|
|
9
9
|
export default async function getTemplatesFiles(packageName) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
throw new Error(`Failed to fetch package metadata: ${metadataResponse.statusText}`);
|
|
15
|
-
}
|
|
16
|
-
const metadata = (await metadataResponse.json());
|
|
17
|
-
const latestVersion = metadata['dist-tags'].latest;
|
|
18
|
-
const tarballUrl = metadata.versions[latestVersion].dist.tarball;
|
|
19
|
-
// Fetch the tarball
|
|
20
|
-
const tarballResponse = await fetch(tarballUrl);
|
|
21
|
-
if (!tarballResponse.ok) {
|
|
22
|
-
throw new Error(`Failed to fetch tarball: ${tarballResponse.statusText}`);
|
|
23
|
-
}
|
|
24
|
-
const tarballArrayBuffer = await tarballResponse.arrayBuffer();
|
|
25
|
-
const tarballBuffer = Buffer.from(tarballArrayBuffer);
|
|
26
|
-
// Extract the tarball in memory and collect template files
|
|
27
|
-
const templateFiles = await extractTemplatesFromTarball(tarballBuffer);
|
|
28
|
-
const entries = templateFiles
|
|
29
|
-
.filter((fileName) => fileName.startsWith('/templates/') && !fileName.endsWith('/') && fileName.endsWith('.ejs'))
|
|
30
|
-
.map((fileName) => [fileName.substring('/templates/'.length), `${packageName}${fileName}`]);
|
|
31
|
-
return Object.fromEntries(entries);
|
|
10
|
+
// Fetch package metadata from the npm registry
|
|
11
|
+
const metadataResponse = await fetch(`https://registry.npmjs.org/${encodeURIComponent(packageName)}`);
|
|
12
|
+
if (!metadataResponse.ok) {
|
|
13
|
+
throw new Error(`Failed to fetch package metadata: ${metadataResponse.statusText}`);
|
|
32
14
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
15
|
+
const metadata = (await metadataResponse.json());
|
|
16
|
+
const latestVersion = metadata['dist-tags'].latest;
|
|
17
|
+
const tarballUrl = metadata.versions[latestVersion].dist.tarball;
|
|
18
|
+
// Fetch the tarball
|
|
19
|
+
const tarballResponse = await fetch(tarballUrl);
|
|
20
|
+
if (!tarballResponse.ok) {
|
|
21
|
+
throw new Error(`Failed to fetch tarball: ${tarballResponse.statusText}`);
|
|
36
22
|
}
|
|
23
|
+
const tarballArrayBuffer = await tarballResponse.arrayBuffer();
|
|
24
|
+
const tarballBuffer = Buffer.from(tarballArrayBuffer);
|
|
25
|
+
// Extract the tarball in memory and collect template files
|
|
26
|
+
const templateFiles = await extractTemplatesFromTarball(tarballBuffer);
|
|
27
|
+
const entries = templateFiles
|
|
28
|
+
.filter((fileName) => fileName.startsWith('/templates/') && !fileName.endsWith('/') && fileName.endsWith('.ejs'))
|
|
29
|
+
.map((fileName) => [fileName.substring('/templates/'.length), `${packageName}${fileName}`]);
|
|
30
|
+
console.log(templateFiles);
|
|
31
|
+
return Object.fromEntries(entries);
|
|
37
32
|
}
|
|
38
33
|
/**
|
|
39
34
|
* Extracts the templates from the tarball buffer.
|
|
@@ -66,11 +61,3 @@ function extractTemplatesFromTarball(tarballBuffer) {
|
|
|
66
61
|
tarballStream.pipe(gunzip).pipe(extract);
|
|
67
62
|
});
|
|
68
63
|
}
|
|
69
|
-
// Example usage
|
|
70
|
-
getTemplatesFiles('your-package-name')
|
|
71
|
-
.then((files) => {
|
|
72
|
-
console.log('Files in templates folder:', files);
|
|
73
|
-
})
|
|
74
|
-
.catch((err) => {
|
|
75
|
-
console.error('Error:', err);
|
|
76
|
-
});
|
package/dist/init/index.mjs
CHANGED
|
@@ -80,7 +80,7 @@ export class Init {
|
|
|
80
80
|
await Promise.all(configPaths.map((configPath) => fs.rm(configPath)));
|
|
81
81
|
}
|
|
82
82
|
if (validationLibrary) {
|
|
83
|
-
dependencies.push(validationLibrary + '@beta');
|
|
83
|
+
dependencies.push(validationLibrary + '@beta'); // TODO: change to latest
|
|
84
84
|
dependencies.push(...({
|
|
85
85
|
'vovk-zod': ['zod'],
|
|
86
86
|
'vovk-yup': ['yup'],
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vovk-cli",
|
|
3
|
-
"version": "0.0.1-beta.
|
|
3
|
+
"version": "0.0.1-beta.32",
|
|
4
4
|
"bin": {
|
|
5
5
|
"vovk": "./dist/index.mjs"
|
|
6
6
|
},
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
},
|
|
32
32
|
"homepage": "https://vovk.dev",
|
|
33
33
|
"peerDependencies": {
|
|
34
|
-
"vovk": "^3.0.0-beta.
|
|
34
|
+
"vovk": "^3.0.0-beta.33"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@inquirer/prompts": "^5.5.0",
|