@lenne.tech/cli 0.0.100 → 0.0.102

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.
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const fsProm = require("fs/promises");
13
+ const fs = require("fs");
14
+ const path = require("path");
15
+ const axios_1 = require("axios");
16
+ const AddComponentCommand = {
17
+ name: 'add',
18
+ description: 'Füge eine bestimmte Komponente zu einem anderen Nuxt-Projekt hinzu',
19
+ run: (toolbox) => __awaiter(void 0, void 0, void 0, function* () {
20
+ const { parameters } = toolbox;
21
+ const componentName = parameters.first;
22
+ yield addComponent(toolbox, componentName);
23
+ })
24
+ };
25
+ function getFileInfo(path) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ const githubApiUrl = `https://api.github.com/repos/lenneTech/nuxt-base-components/contents/components${path ? '/' + path : ''}`;
28
+ const response = yield axios_1.default.get(githubApiUrl);
29
+ if (response.status === 200) {
30
+ return response.data.map((file) => {
31
+ return {
32
+ name: file.name,
33
+ type: file.type
34
+ };
35
+ });
36
+ }
37
+ else {
38
+ throw new Error(`Fehler beim Abrufen der Dateiliste von GitHub: ${response.statusText}`);
39
+ }
40
+ });
41
+ }
42
+ function addComponent(toolbox, componentName) {
43
+ return __awaiter(this, void 0, void 0, function* () {
44
+ const { print, prompt } = toolbox;
45
+ try {
46
+ const possibleComponents = yield getFileInfo();
47
+ if (possibleComponents.length > 0) {
48
+ let selectedComponent;
49
+ if (!componentName) {
50
+ const response = yield prompt.ask({
51
+ type: 'select',
52
+ name: 'componentType',
53
+ message: 'Welche Komponente möchten Sie hinzufügen:',
54
+ choices: possibleComponents.map((c) => c.name.replace('.vue', ''))
55
+ });
56
+ selectedComponent = response.componentType;
57
+ }
58
+ else {
59
+ selectedComponent = componentName;
60
+ }
61
+ const selectedFile = possibleComponents.find((e) => e.type === 'file' ? e.name === selectedComponent + '.vue' : e.name === selectedComponent);
62
+ if ((selectedFile === null || selectedFile === void 0 ? void 0 : selectedFile.type) === 'dir') {
63
+ const directoryFiles = yield getFileInfo(selectedFile.name);
64
+ if (directoryFiles.length > 0) {
65
+ for (const file of directoryFiles) {
66
+ yield copyComponent({
67
+ name: `${selectedFile.name}/${file.name}`,
68
+ type: 'dir'
69
+ }, toolbox);
70
+ }
71
+ print.success(`Alle Dateien aus dem Verzeichnis ${selectedFile.name} wurden erfolgreich kopiert.`);
72
+ }
73
+ else {
74
+ print.error(`Das Verzeichnis ${selectedFile.name} ist leer.`);
75
+ }
76
+ }
77
+ else if ((selectedFile === null || selectedFile === void 0 ? void 0 : selectedFile.type) === 'file') {
78
+ yield copyComponent(selectedFile, toolbox);
79
+ }
80
+ }
81
+ else {
82
+ print.error('Keine Komponenten auf GitHub gefunden.');
83
+ }
84
+ }
85
+ catch (error) {
86
+ print.error(`Fehler beim Hinzufügen/Auswählen der Komponente: ${error.message}`);
87
+ }
88
+ });
89
+ }
90
+ function copyComponent(file, toolbox) {
91
+ return __awaiter(this, void 0, void 0, function* () {
92
+ const { print } = toolbox;
93
+ const apiUrl = `https://raw.githubusercontent.com/lenneTech/nuxt-base-components/main/components/${file.name}`;
94
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
95
+ try {
96
+ const response = yield axios_1.default.get(apiUrl);
97
+ if (response.status === 200) {
98
+ const sourceCode = response.data;
99
+ const cwd = process.cwd();
100
+ let targetDirectory;
101
+ if (fs.existsSync(path.resolve(cwd, 'src/components'))) {
102
+ targetDirectory = path.resolve(cwd, 'src/components');
103
+ }
104
+ else if (fs.existsSync(path.resolve(cwd, 'components'))) {
105
+ targetDirectory = path.resolve(cwd, 'components');
106
+ }
107
+ else {
108
+ targetDirectory = cwd;
109
+ }
110
+ print.info(`Found directory for components: ${targetDirectory}`);
111
+ const targetPath = path.join(targetDirectory, `${file.name}`);
112
+ if (!fs.existsSync(targetDirectory)) {
113
+ print.info('Creating directory...');
114
+ const directoryName = file.name.split('/')[0];
115
+ targetDirectory = targetDirectory + '/' + directoryName;
116
+ yield fsProm.mkdir(targetDirectory, { recursive: true });
117
+ }
118
+ const spinner = print.spin(`Kopiere die Komponente ${file.name} nach ${targetPath}...`);
119
+ fs.writeFileSync(targetPath, sourceCode);
120
+ spinner.succeed(`Die Komponente ${file.name} wurde erfolgreich kopiert nach ${targetPath}`);
121
+ resolve(targetPath);
122
+ }
123
+ else {
124
+ print.error(`Fehler beim Abrufen der Datei von GitHub: ${response.statusText}`);
125
+ reject(response.statusText);
126
+ }
127
+ }
128
+ catch (error) {
129
+ print.error(`Fehler beim Kopieren der Komponente ${file.name}: ${error.message}`);
130
+ reject(error);
131
+ }
132
+ }));
133
+ });
134
+ }
135
+ exports.default = AddComponentCommand;
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL2NvbXBvbmVudHMvYWRkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBRUEsc0NBQXFDO0FBQ3JDLHlCQUF3QjtBQUN4Qiw2QkFBNEI7QUFDNUIsaUNBQXlCO0FBRXpCLE1BQU0sbUJBQW1CLEdBQW1CO0lBQzFDLElBQUksRUFBRSxLQUFLO0lBQ1gsV0FBVyxFQUFFLG9FQUFvRTtJQUNqRixHQUFHLEVBQUUsQ0FBTyxPQUErQixFQUFFLEVBQUU7UUFDN0MsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLE9BQU8sQ0FBQTtRQUM5QixNQUFNLGFBQWEsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFBO1FBQ3RDLE1BQU0sWUFBWSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQTtJQUM1QyxDQUFDLENBQUE7Q0FDRixDQUFBO0FBRUQsU0FBZSxXQUFXLENBQUMsSUFBYTs7UUFDdEMsTUFBTSxZQUFZLEdBQUcsa0ZBQWtGLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUE7UUFDL0gsTUFBTSxRQUFRLEdBQUcsTUFBTSxlQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBRTlDLElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7WUFDM0IsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO2dCQUNyQyxPQUFPO29CQUNMLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtvQkFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7aUJBQ2hCLENBQUE7WUFDSCxDQUFDLENBQUMsQ0FBQTtTQUNIO2FBQU07WUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FB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
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ /**
13
+ * Components commands
14
+ */
15
+ module.exports = {
16
+ name: 'components',
17
+ alias: ['n'],
18
+ description: 'Base components for Nuxt',
19
+ hidden: true,
20
+ run: (toolbox) => __awaiter(void 0, void 0, void 0, function* () {
21
+ yield toolbox.helper.showMenu('components');
22
+ return 'components';
23
+ }),
24
+ };
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9jb21wb25lbnRzL2NvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFFQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxPQUFPLEdBQUc7SUFDYixJQUFJLEVBQUUsWUFBWTtJQUNsQixLQUFLLEVBQUUsQ0FBQyxHQUFHLENBQUM7SUFDWixXQUFXLEVBQUUsMEJBQTBCO0lBQ3ZDLE1BQU0sRUFBRSxJQUFJO0lBQ1osR0FBRyxFQUFFLENBQU8sT0FBK0IsRUFBRSxFQUFFO1FBQzNDLE1BQU0sT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDNUMsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQyxDQUFBO0NBQ0osQ0FBQyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lenne.tech/cli",
3
- "version": "0.0.100",
3
+ "version": "0.0.102",
4
4
  "description": "lenne.Tech CLI: lt",
5
5
  "keywords": [
6
6
  "lenne.Tech",