vigthoria-cli 1.0.2 ā 1.3.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.
- package/README.md +122 -8
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +14 -5
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/deploy.d.ts +80 -0
- package/dist/commands/deploy.d.ts.map +1 -0
- package/dist/commands/deploy.js +514 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/hub.d.ts +40 -0
- package/dist/commands/hub.d.ts.map +1 -0
- package/dist/commands/hub.js +289 -0
- package/dist/commands/hub.js.map +1 -0
- package/dist/commands/repo.d.ts +80 -0
- package/dist/commands/repo.d.ts.map +1 -0
- package/dist/commands/repo.js +585 -0
- package/dist/commands/repo.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +302 -4
- package/dist/index.js.map +1 -1
- package/dist/utils/api.d.ts.map +1 -1
- package/dist/utils/api.js +37 -27
- package/dist/utils/api.js.map +1 -1
- package/dist/utils/tools.d.ts +6 -0
- package/dist/utils/tools.d.ts.map +1 -1
- package/dist/utils/tools.js +269 -15
- package/dist/utils/tools.js.map +1 -1
- package/package.json +5 -2
- package/src/commands/config.ts +14 -5
- package/src/commands/deploy.ts +609 -0
- package/src/commands/hub.ts +382 -0
- package/src/commands/repo.ts +701 -0
- package/src/index.ts +343 -4
- package/src/utils/api.ts +44 -28
- package/src/utils/tools.ts +283 -16
|
@@ -0,0 +1,289 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Vigthoria CLI - Hub/Marketplace Commands
|
|
4
|
+
*
|
|
5
|
+
* In-flow marketplace discovery and module activation
|
|
6
|
+
* Enables pay-as-you-go module usage directly from the terminal
|
|
7
|
+
*/
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.HubCommand = void 0;
|
|
13
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
14
|
+
const API_BASE = 'https://api.vigthoria.io';
|
|
15
|
+
class HubCommand {
|
|
16
|
+
config;
|
|
17
|
+
logger;
|
|
18
|
+
constructor(config, logger) {
|
|
19
|
+
this.config = config;
|
|
20
|
+
this.logger = logger;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Search for modules by natural language query
|
|
24
|
+
*/
|
|
25
|
+
async search(query) {
|
|
26
|
+
console.log(chalk_1.default.cyan('\nš Searching Vigthoria Module Hub...\n'));
|
|
27
|
+
try {
|
|
28
|
+
const response = await fetch(`${API_BASE}/api/modules/search`, {
|
|
29
|
+
method: 'POST',
|
|
30
|
+
headers: {
|
|
31
|
+
'Content-Type': 'application/json'
|
|
32
|
+
},
|
|
33
|
+
body: JSON.stringify({ query })
|
|
34
|
+
});
|
|
35
|
+
if (!response.ok) {
|
|
36
|
+
throw new Error(`Search failed: ${response.statusText}`);
|
|
37
|
+
}
|
|
38
|
+
const data = await response.json();
|
|
39
|
+
if (data.results.length === 0) {
|
|
40
|
+
console.log(chalk_1.default.yellow('No modules found matching your query.'));
|
|
41
|
+
console.log(chalk_1.default.gray('Try: vigthoria hub list to see all available modules\n'));
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
console.log(chalk_1.default.green(`Found ${data.results.length} module(s):\n`));
|
|
45
|
+
data.results.forEach((module, index) => {
|
|
46
|
+
const statusColor = module.status === 'active' ? chalk_1.default.green : chalk_1.default.gray;
|
|
47
|
+
console.log(chalk_1.default.bold.white(` ${index + 1}. ${module.name}`));
|
|
48
|
+
console.log(chalk_1.default.gray(` ${module.description.substring(0, 80)}...`));
|
|
49
|
+
console.log(chalk_1.default.cyan(` š° ${module.pricing.example}`));
|
|
50
|
+
console.log(statusColor(` š Status: ${module.status.toUpperCase()}`));
|
|
51
|
+
console.log(chalk_1.default.gray(` š ${module.documentation}`));
|
|
52
|
+
console.log();
|
|
53
|
+
});
|
|
54
|
+
if (data.suggestion) {
|
|
55
|
+
console.log(chalk_1.default.cyan(`š” ${data.suggestion}`));
|
|
56
|
+
}
|
|
57
|
+
console.log(chalk_1.default.gray('\nTo activate a module: vigthoria hub activate <module-name>'));
|
|
58
|
+
console.log(chalk_1.default.gray('Example: vigthoria hub activate music\n'));
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
const errMsg = error instanceof Error ? error.message : 'Unknown error';
|
|
62
|
+
console.log(chalk_1.default.red(`Error: ${errMsg}`));
|
|
63
|
+
console.log(chalk_1.default.gray('Make sure you have an active internet connection.'));
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* List all available modules
|
|
68
|
+
*/
|
|
69
|
+
async list(options) {
|
|
70
|
+
console.log(chalk_1.default.cyan('\nš¦ Vigthoria Module Hub\n'));
|
|
71
|
+
try {
|
|
72
|
+
let url = `${API_BASE}/api/modules`;
|
|
73
|
+
if (options.category) {
|
|
74
|
+
url += `?category=${options.category}`;
|
|
75
|
+
}
|
|
76
|
+
const response = await fetch(url);
|
|
77
|
+
const data = await response.json();
|
|
78
|
+
console.log(chalk_1.default.bold.white('Available Modules:\n'));
|
|
79
|
+
// Group by category
|
|
80
|
+
const grouped = data.modules.reduce((acc, module) => {
|
|
81
|
+
if (!acc[module.category])
|
|
82
|
+
acc[module.category] = [];
|
|
83
|
+
acc[module.category].push(module);
|
|
84
|
+
return acc;
|
|
85
|
+
}, {});
|
|
86
|
+
Object.entries(grouped).forEach(([category, modules]) => {
|
|
87
|
+
console.log(chalk_1.default.cyan.bold(` ${category.toUpperCase()}`));
|
|
88
|
+
console.log(chalk_1.default.gray(' ' + 'ā'.repeat(50)));
|
|
89
|
+
modules.forEach((module) => {
|
|
90
|
+
console.log(chalk_1.default.white(` š¦ ${module.name.padEnd(25)} ${chalk_1.default.gray(module.id)}`));
|
|
91
|
+
console.log(chalk_1.default.gray(` ${module.description.substring(0, 60)}...`));
|
|
92
|
+
console.log(chalk_1.default.yellow(` ${module.pricing.example}`));
|
|
93
|
+
console.log();
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
console.log(chalk_1.default.gray('ā'.repeat(60)));
|
|
97
|
+
console.log(chalk_1.default.cyan('\nCommands:'));
|
|
98
|
+
console.log(chalk_1.default.gray(' vigthoria hub search "generate music" - Semantic search'));
|
|
99
|
+
console.log(chalk_1.default.gray(' vigthoria hub activate <module> - Activate module'));
|
|
100
|
+
console.log(chalk_1.default.gray(' vigthoria hub active - Show active modules'));
|
|
101
|
+
console.log(chalk_1.default.gray(' vigthoria hub info <module> - Module details\n'));
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
const errMsg = error instanceof Error ? error.message : 'Unknown error';
|
|
105
|
+
console.log(chalk_1.default.red(`Error: ${errMsg}`));
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Activate a module for the current user
|
|
110
|
+
*/
|
|
111
|
+
async activate(moduleId) {
|
|
112
|
+
const authToken = this.config.get('authToken');
|
|
113
|
+
if (!authToken) {
|
|
114
|
+
console.log(chalk_1.default.red('\nā Not authenticated. Run: vigthoria login\n'));
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
console.log(chalk_1.default.cyan(`\nš Activating module: ${moduleId}...\n`));
|
|
118
|
+
try {
|
|
119
|
+
const response = await fetch(`${API_BASE}/api/modules/${moduleId}/activate`, {
|
|
120
|
+
method: 'POST',
|
|
121
|
+
headers: {
|
|
122
|
+
'Authorization': `Bearer ${authToken}`,
|
|
123
|
+
'Content-Type': 'application/json'
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
if (!response.ok) {
|
|
127
|
+
const errorData = await response.json();
|
|
128
|
+
throw new Error(errorData.error || response.statusText);
|
|
129
|
+
}
|
|
130
|
+
const data = await response.json();
|
|
131
|
+
console.log(chalk_1.default.green(`ā
${data.message}`));
|
|
132
|
+
console.log();
|
|
133
|
+
console.log(chalk_1.default.white('š Documentation:'));
|
|
134
|
+
console.log(chalk_1.default.gray(` ${data.documentation}`));
|
|
135
|
+
console.log();
|
|
136
|
+
console.log(chalk_1.default.white('š Available Endpoints:'));
|
|
137
|
+
data.endpoints.forEach((ep) => {
|
|
138
|
+
console.log(chalk_1.default.gray(` ${ep.method.padEnd(6)} ${ep.path}`));
|
|
139
|
+
console.log(chalk_1.default.gray(` ${ep.description}`));
|
|
140
|
+
});
|
|
141
|
+
console.log();
|
|
142
|
+
console.log(chalk_1.default.cyan('š” Quick Start:'));
|
|
143
|
+
console.log(chalk_1.default.gray(` Use your API key in requests:`));
|
|
144
|
+
console.log(chalk_1.default.gray(` Authorization: Bearer ${authToken.substring(0, 8)}...`));
|
|
145
|
+
console.log();
|
|
146
|
+
}
|
|
147
|
+
catch (error) {
|
|
148
|
+
const errMsg = error instanceof Error ? error.message : 'Unknown error';
|
|
149
|
+
console.log(chalk_1.default.red(`ā Activation failed: ${errMsg}`));
|
|
150
|
+
console.log(chalk_1.default.gray('\nMake sure the module ID is correct.'));
|
|
151
|
+
console.log(chalk_1.default.gray('Run: vigthoria hub list to see available modules.'));
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Show currently active modules for user
|
|
156
|
+
*/
|
|
157
|
+
async active() {
|
|
158
|
+
const authToken = this.config.get('authToken');
|
|
159
|
+
if (!authToken) {
|
|
160
|
+
console.log(chalk_1.default.red('\nā Not authenticated. Run: vigthoria login\n'));
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
console.log(chalk_1.default.cyan('\nš¦ Your Active Modules\n'));
|
|
164
|
+
try {
|
|
165
|
+
const response = await fetch(`${API_BASE}/api/modules/active`, {
|
|
166
|
+
headers: {
|
|
167
|
+
'Authorization': `Bearer ${authToken}`
|
|
168
|
+
}
|
|
169
|
+
});
|
|
170
|
+
if (!response.ok) {
|
|
171
|
+
throw new Error(`Failed to fetch: ${response.statusText}`);
|
|
172
|
+
}
|
|
173
|
+
const data = await response.json();
|
|
174
|
+
if (data.allAccess) {
|
|
175
|
+
console.log(chalk_1.default.green('š You have access to ALL modules!\n'));
|
|
176
|
+
}
|
|
177
|
+
console.log(chalk_1.default.white(`Tier: ${chalk_1.default.cyan.bold(data.tier.toUpperCase())}`));
|
|
178
|
+
console.log();
|
|
179
|
+
if (data.activeModules.length === 0) {
|
|
180
|
+
console.log(chalk_1.default.yellow('No modules activated yet.'));
|
|
181
|
+
console.log(chalk_1.default.gray('\nActivate modules with: vigthoria hub activate <module>'));
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
console.log(chalk_1.default.white('Active modules:'));
|
|
185
|
+
data.activeModules.forEach((module) => {
|
|
186
|
+
console.log(chalk_1.default.green(` ā
${module.name}`));
|
|
187
|
+
console.log(chalk_1.default.gray(` Endpoint: ${module.endpoint}`));
|
|
188
|
+
console.log(chalk_1.default.yellow(` Cost: ${module.pricing.example}`));
|
|
189
|
+
console.log();
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
catch (error) {
|
|
194
|
+
const errMsg = error instanceof Error ? error.message : 'Unknown error';
|
|
195
|
+
console.log(chalk_1.default.red(`Error: ${errMsg}`));
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Get detailed info about a specific module
|
|
200
|
+
*/
|
|
201
|
+
async info(moduleId) {
|
|
202
|
+
console.log(chalk_1.default.cyan(`\nš Module Info: ${moduleId}\n`));
|
|
203
|
+
try {
|
|
204
|
+
const response = await fetch(`${API_BASE}/api/modules/${moduleId}`);
|
|
205
|
+
if (!response.ok) {
|
|
206
|
+
throw new Error('Module not found');
|
|
207
|
+
}
|
|
208
|
+
const module = await response.json();
|
|
209
|
+
console.log(chalk_1.default.bold.white(`${module.name}`));
|
|
210
|
+
console.log(chalk_1.default.gray('ā'.repeat(50)));
|
|
211
|
+
console.log();
|
|
212
|
+
console.log(chalk_1.default.white('Description:'));
|
|
213
|
+
console.log(chalk_1.default.gray(` ${module.description}`));
|
|
214
|
+
console.log();
|
|
215
|
+
console.log(chalk_1.default.white('Category:'), chalk_1.default.cyan(module.category));
|
|
216
|
+
console.log(chalk_1.default.white('Tags:'), chalk_1.default.gray(module.tags.join(', ')));
|
|
217
|
+
console.log();
|
|
218
|
+
console.log(chalk_1.default.white('š° Pricing:'));
|
|
219
|
+
console.log(chalk_1.default.yellow(` ${module.pricing.example}`));
|
|
220
|
+
console.log(chalk_1.default.gray(` Billed per ${module.pricing.unit}`));
|
|
221
|
+
console.log();
|
|
222
|
+
if (module.rateLimits) {
|
|
223
|
+
console.log(chalk_1.default.white('š Rate Limits:'));
|
|
224
|
+
Object.entries(module.rateLimits).forEach(([tier, limit]) => {
|
|
225
|
+
console.log(chalk_1.default.gray(` ${tier.padEnd(12)} ${limit} requests/minute`));
|
|
226
|
+
});
|
|
227
|
+
console.log();
|
|
228
|
+
}
|
|
229
|
+
if (module.endpoints) {
|
|
230
|
+
console.log(chalk_1.default.white('š Endpoints:'));
|
|
231
|
+
module.endpoints.forEach((ep) => {
|
|
232
|
+
console.log(chalk_1.default.cyan(` ${ep.method.padEnd(6)} ${ep.path}`));
|
|
233
|
+
console.log(chalk_1.default.gray(` ${ep.description}`));
|
|
234
|
+
});
|
|
235
|
+
console.log();
|
|
236
|
+
}
|
|
237
|
+
// Show code examples if available
|
|
238
|
+
if (module.codeExamples && Object.keys(module.codeExamples).length > 0) {
|
|
239
|
+
console.log(chalk_1.default.white('š Code Examples:'));
|
|
240
|
+
if (module.codeExamples.curl) {
|
|
241
|
+
console.log(chalk_1.default.cyan('\n cURL:'));
|
|
242
|
+
console.log(chalk_1.default.gray(' ' + module.codeExamples.curl.split('\n').join('\n ')));
|
|
243
|
+
}
|
|
244
|
+
if (module.codeExamples.node) {
|
|
245
|
+
console.log(chalk_1.default.cyan('\n Node.js:'));
|
|
246
|
+
console.log(chalk_1.default.gray(' ' + module.codeExamples.node.split('\n').join('\n ')));
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
console.log();
|
|
250
|
+
console.log(chalk_1.default.gray(`Documentation: ${module.documentation}`));
|
|
251
|
+
if (module.external) {
|
|
252
|
+
console.log(chalk_1.default.gray(`External URL: ${module.external}`));
|
|
253
|
+
}
|
|
254
|
+
console.log();
|
|
255
|
+
console.log(chalk_1.default.cyan('To activate: ') + chalk_1.default.white(`vigthoria hub activate ${moduleId}`));
|
|
256
|
+
console.log();
|
|
257
|
+
}
|
|
258
|
+
catch (error) {
|
|
259
|
+
const errMsg = error instanceof Error ? error.message : 'Unknown error';
|
|
260
|
+
console.log(chalk_1.default.red(`Error: ${errMsg}`));
|
|
261
|
+
console.log(chalk_1.default.gray('\nAvailable modules: pay, meet, llm, music, voice, images'));
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Interactive discover mode - prompts user with suggestions
|
|
266
|
+
*/
|
|
267
|
+
async discover() {
|
|
268
|
+
console.log(chalk_1.default.cyan('\nš Vigthoria Module Discovery\n'));
|
|
269
|
+
console.log(chalk_1.default.white('What are you building? Describe your project:\n'));
|
|
270
|
+
// Show common use cases
|
|
271
|
+
console.log(chalk_1.default.gray('Examples of what you can build:'));
|
|
272
|
+
console.log(chalk_1.default.gray(' ⢠"I need background music for my app"'));
|
|
273
|
+
console.log(chalk_1.default.gray(' ⢠"voice narration for videos"'));
|
|
274
|
+
console.log(chalk_1.default.gray(' ⢠"AI chatbot for customer support"'));
|
|
275
|
+
console.log(chalk_1.default.gray(' ⢠"payment processing for my SaaS"'));
|
|
276
|
+
console.log(chalk_1.default.gray(' ⢠"image generation for social media"\n'));
|
|
277
|
+
console.log(chalk_1.default.cyan('Use: vigthoria hub search "<your use case>"'));
|
|
278
|
+
console.log(chalk_1.default.gray('The AI will find the best modules for your needs.\n'));
|
|
279
|
+
// Show pricing tiers
|
|
280
|
+
console.log(chalk_1.default.white('š³ Subscription Tiers:'));
|
|
281
|
+
console.log(chalk_1.default.gray(' Starter ā¬49/mo 50 credits'));
|
|
282
|
+
console.log(chalk_1.default.gray(' Business ā¬199/mo 500 credits'));
|
|
283
|
+
console.log(chalk_1.default.gray(' Enterprise ā¬499/mo 2000 credits'));
|
|
284
|
+
console.log();
|
|
285
|
+
console.log(chalk_1.default.cyan('Get started: https://landing.vigthoria.io/api-keys.html\n'));
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
exports.HubCommand = HubCommand;
|
|
289
|
+
//# sourceMappingURL=hub.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hub.js","sourceRoot":"","sources":["../../src/commands/hub.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vigthoria CLI - Repo Commands
|
|
3
|
+
*
|
|
4
|
+
* Push and pull projects to/from Vigthoria Repository
|
|
5
|
+
* Enables version control and project sharing through the Vigthoria platform
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* vigthoria repo push [path] - Push current/specified project to Vigthoria Repo
|
|
9
|
+
* vigthoria repo pull <name> - Pull a project from your Vigthoria Repo
|
|
10
|
+
* vigthoria repo list - List all your projects in Vigthoria Repo
|
|
11
|
+
* vigthoria repo status - Show sync status of current project
|
|
12
|
+
* vigthoria repo share <name> - Generate shareable link for a project
|
|
13
|
+
* vigthoria repo delete <name> - Remove a project from your Vigthoria Repo
|
|
14
|
+
*/
|
|
15
|
+
import { Config } from '../utils/config.js';
|
|
16
|
+
import { Logger } from '../utils/logger.js';
|
|
17
|
+
interface PushOptions {
|
|
18
|
+
path?: string;
|
|
19
|
+
visibility?: 'public' | 'private' | 'restricted';
|
|
20
|
+
description?: string;
|
|
21
|
+
force?: boolean;
|
|
22
|
+
}
|
|
23
|
+
interface PullOptions {
|
|
24
|
+
output?: string;
|
|
25
|
+
force?: boolean;
|
|
26
|
+
}
|
|
27
|
+
interface ListOptions {
|
|
28
|
+
visibility?: string;
|
|
29
|
+
showAll?: boolean;
|
|
30
|
+
}
|
|
31
|
+
interface ShareOptions {
|
|
32
|
+
expires?: string;
|
|
33
|
+
}
|
|
34
|
+
export declare class RepoCommand {
|
|
35
|
+
private config;
|
|
36
|
+
private logger;
|
|
37
|
+
private apiBase;
|
|
38
|
+
constructor(config: Config, logger: Logger);
|
|
39
|
+
private getAuthHeaders;
|
|
40
|
+
private isAuthenticated;
|
|
41
|
+
private requireAuth;
|
|
42
|
+
/**
|
|
43
|
+
* Detect project info from package.json, requirements.txt, etc.
|
|
44
|
+
*/
|
|
45
|
+
private detectProjectInfo;
|
|
46
|
+
/**
|
|
47
|
+
* Create a zip archive of a project
|
|
48
|
+
*/
|
|
49
|
+
private createProjectArchive;
|
|
50
|
+
/**
|
|
51
|
+
* Push a project to Vigthoria Repository
|
|
52
|
+
*/
|
|
53
|
+
push(options?: PushOptions): Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
* Pull a project from Vigthoria Repository
|
|
56
|
+
*/
|
|
57
|
+
pull(projectName: string, options?: PullOptions): Promise<void>;
|
|
58
|
+
/**
|
|
59
|
+
* List all projects in user's Vigthoria Repository
|
|
60
|
+
*/
|
|
61
|
+
list(options?: ListOptions): Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* Show sync status of current project
|
|
64
|
+
*/
|
|
65
|
+
status(): Promise<void>;
|
|
66
|
+
/**
|
|
67
|
+
* Generate a shareable link for a project
|
|
68
|
+
*/
|
|
69
|
+
share(projectName: string, options?: ShareOptions): Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* Delete a project from Vigthoria Repository
|
|
72
|
+
*/
|
|
73
|
+
delete(projectName: string): Promise<void>;
|
|
74
|
+
/**
|
|
75
|
+
* Clone a public project from Vigthoria Repository
|
|
76
|
+
*/
|
|
77
|
+
clone(projectUrl: string, options?: PullOptions): Promise<void>;
|
|
78
|
+
}
|
|
79
|
+
export {};
|
|
80
|
+
//# sourceMappingURL=repo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo.d.ts","sourceRoot":"","sources":["../../src/commands/repo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAwB5C,UAAU,WAAW;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,YAAY,CAAC;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,WAAW;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,WAAW;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,UAAU,YAAY;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,WAAW;IACpB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAM1C,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,WAAW;IAOnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAqDzB;;OAEG;YACW,oBAAoB;IAwClC;;OAEG;IACG,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkIpD;;OAEG;IACG,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2FzE;;OAEG;IACG,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuFpD;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAgE7B;;OAEG;IACG,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAwC3E;;OAEG;IACG,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsChD;;OAEG;IACG,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CAmC5E"}
|