kitstore-cli 1.0.4 → 1.0.6
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/default-config.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"server": "https://cursorkit-backend-
|
|
1
|
+
{"server": "https://cursorkit-backend-jl2wk4pdoq-uc.a.run.app"}
|
|
@@ -123,7 +123,13 @@ describe('Login Command', () => {
|
|
|
123
123
|
isAxiosError: true,
|
|
124
124
|
response: {
|
|
125
125
|
status: 401,
|
|
126
|
-
data: {
|
|
126
|
+
data: {
|
|
127
|
+
message: {
|
|
128
|
+
message: 'Invalid credentials',
|
|
129
|
+
error: 'Unauthorized',
|
|
130
|
+
statusCode: 401
|
|
131
|
+
}
|
|
132
|
+
},
|
|
127
133
|
},
|
|
128
134
|
message: 'Request failed with status code 401',
|
|
129
135
|
};
|
|
@@ -145,6 +151,7 @@ describe('Login Command', () => {
|
|
|
145
151
|
password: 'WrongPassword',
|
|
146
152
|
})).rejects.toThrow();
|
|
147
153
|
expect(mockSaveConfig).not.toHaveBeenCalled();
|
|
154
|
+
expect(console.error).toHaveBeenCalledWith('❌ Login failed: Invalid credentials');
|
|
148
155
|
});
|
|
149
156
|
// TC-UNIT-CLI-003: Interactive login prompts
|
|
150
157
|
it('should prompt for email and password when not provided', async () => {
|
|
@@ -233,7 +240,13 @@ describe('Login Command', () => {
|
|
|
233
240
|
isAxiosError: true,
|
|
234
241
|
response: {
|
|
235
242
|
status: 500,
|
|
236
|
-
data: {
|
|
243
|
+
data: {
|
|
244
|
+
message: {
|
|
245
|
+
message: 'Internal server error',
|
|
246
|
+
error: 'Internal Server Error',
|
|
247
|
+
statusCode: 500
|
|
248
|
+
}
|
|
249
|
+
},
|
|
237
250
|
},
|
|
238
251
|
message: 'Request failed with status code 500',
|
|
239
252
|
};
|
package/dist/commands/install.js
CHANGED
|
@@ -140,7 +140,7 @@ async function installCommand(options) {
|
|
|
140
140
|
}
|
|
141
141
|
catch (err) {
|
|
142
142
|
if (axios_1.default.isAxiosError(err)) {
|
|
143
|
-
console.error('❌ Install failed:', err.response?.data?.
|
|
143
|
+
console.error('❌ Install failed:', err.response?.data?.message?.message || err.response?.data?.message || err.message);
|
|
144
144
|
}
|
|
145
145
|
else {
|
|
146
146
|
console.error('❌ Install failed:', err);
|
package/dist/commands/list.js
CHANGED
|
@@ -60,7 +60,7 @@ async function listCommand(options) {
|
|
|
60
60
|
catch (err) {
|
|
61
61
|
if (err && typeof err === 'object' && 'response' in err) {
|
|
62
62
|
const axiosError = err;
|
|
63
|
-
console.error(chalk_1.default.red(`❌ Failed to list rules: ${axiosError.response?.data?.
|
|
63
|
+
console.error(chalk_1.default.red(`❌ Failed to list rules: ${axiosError.response?.data?.message?.message || axiosError.response?.data?.message || axiosError.message}`));
|
|
64
64
|
}
|
|
65
65
|
else {
|
|
66
66
|
console.error(chalk_1.default.red(`❌ Failed to list rules: ${err}`));
|
package/dist/commands/login.js
CHANGED
|
@@ -35,14 +35,16 @@ async function loginCommand(options) {
|
|
|
35
35
|
}
|
|
36
36
|
const response = await authApi.authControllerLogin({ email, password });
|
|
37
37
|
const data = response.data;
|
|
38
|
-
|
|
38
|
+
// Handle nested response structure from backend API
|
|
39
|
+
const loginData = data.success ? data.data : data;
|
|
40
|
+
if (loginData.token) {
|
|
39
41
|
await (0, config_1.saveConfig)({
|
|
40
|
-
token:
|
|
42
|
+
token: loginData.token,
|
|
41
43
|
server,
|
|
42
|
-
user:
|
|
44
|
+
user: loginData.user,
|
|
43
45
|
lastLogin: new Date().toISOString(),
|
|
44
46
|
});
|
|
45
|
-
console.log(`✅ Logged in as ${
|
|
47
|
+
console.log(`✅ Logged in as ${loginData.user.username}`);
|
|
46
48
|
}
|
|
47
49
|
else {
|
|
48
50
|
console.error('❌ Login failed');
|
|
@@ -51,7 +53,7 @@ async function loginCommand(options) {
|
|
|
51
53
|
}
|
|
52
54
|
catch (err) {
|
|
53
55
|
if (axios_1.default.isAxiosError(err)) {
|
|
54
|
-
console.error(`❌ Login failed: ${err.response?.data?.
|
|
56
|
+
console.error(`❌ Login failed: ${err.response?.data?.message?.message || err.response?.data?.message || err.message}`);
|
|
55
57
|
}
|
|
56
58
|
else if (err instanceof Error) {
|
|
57
59
|
console.error(`❌ Login failed: ${err.message}`);
|
package/dist/commands/search.js
CHANGED
|
@@ -49,7 +49,7 @@ async function searchCommand(query, options) {
|
|
|
49
49
|
catch (err) {
|
|
50
50
|
if (err && typeof err === 'object' && 'response' in err) {
|
|
51
51
|
const axiosError = err;
|
|
52
|
-
console.error('❌ Search failed:', axiosError.response?.data?.
|
|
52
|
+
console.error('❌ Search failed:', axiosError.response?.data?.message?.message || axiosError.response?.data?.message || axiosError.message);
|
|
53
53
|
}
|
|
54
54
|
else {
|
|
55
55
|
console.error('❌ Search failed:', err);
|