@codeguide/core 0.0.28 → 0.0.33
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/__tests__/services/codespace/codespace-v2.test.ts +53 -0
- package/__tests__/services/usage/usage-service.test.ts +458 -104
- package/codeguide.ts +3 -0
- package/dist/codeguide.d.ts +2 -1
- package/dist/codeguide.js +1 -0
- package/dist/index.d.ts +4 -3
- package/dist/services/base/base-service.d.ts +21 -0
- package/dist/services/base/base-service.js +114 -0
- package/dist/services/codespace/codespace-service.d.ts +64 -1
- package/dist/services/codespace/codespace-service.js +272 -0
- package/dist/services/codespace/codespace-types.d.ts +213 -12
- package/dist/services/codespace/index.d.ts +1 -1
- package/dist/services/index.d.ts +2 -0
- package/dist/services/index.js +4 -1
- package/dist/services/projects/project-types.d.ts +66 -32
- package/dist/services/starter-kits/index.d.ts +2 -0
- package/dist/services/starter-kits/index.js +20 -0
- package/dist/services/starter-kits/starter-kits-service.d.ts +13 -0
- package/dist/services/starter-kits/starter-kits-service.js +27 -0
- package/dist/services/starter-kits/starter-kits-types.d.ts +34 -0
- package/dist/services/starter-kits/starter-kits-types.js +2 -0
- package/dist/services/subscriptions/subscription-service.d.ts +11 -1
- package/dist/services/subscriptions/subscription-service.js +14 -0
- package/dist/services/tasks/task-service.d.ts +2 -1
- package/dist/services/tasks/task-service.js +8 -0
- package/dist/services/tasks/task-types.d.ts +26 -7
- package/dist/services/usage/usage-service.d.ts +5 -2
- package/dist/services/usage/usage-service.js +58 -9
- package/dist/services/usage/usage-types.d.ts +157 -34
- package/dist/types.d.ts +18 -2
- package/docs/.vitepress/README.md +51 -0
- package/docs/.vitepress/config.ts +139 -0
- package/docs/.vitepress/theme/custom.css +80 -0
- package/docs/.vitepress/theme/index.ts +13 -0
- package/docs/.vitepress/tsconfig.json +19 -0
- package/docs/QUICKSTART.md +77 -0
- package/docs/README.md +134 -0
- package/docs/README_SETUP.md +46 -0
- package/docs/authentication.md +351 -0
- package/docs/codeguide-client.md +350 -0
- package/docs/codespace-models.md +1004 -0
- package/docs/codespace-service.md +444 -0
- package/docs/index.md +135 -0
- package/docs/package.json +14 -0
- package/docs/projects-service.md +688 -0
- package/docs/security-keys-service.md +773 -0
- package/docs/starter-kits-service.md +249 -0
- package/docs/task-service.md +955 -0
- package/docs/testsprite_tests/TC001_Homepage_Load_and_Hero_Section_Display.py +70 -0
- package/docs/testsprite_tests/TC002_Sidebar_Navigation_ExpandCollapse_Functionality.py +73 -0
- package/docs/testsprite_tests/TC003_Full_Text_Local_Search_with_Keyboard_Shortcut.py +90 -0
- package/docs/testsprite_tests/TC004_Dark_Mode_Toggle_and_Persistence.py +73 -0
- package/docs/testsprite_tests/TC005_Mobile_Responsiveness_and_Touch_Navigation.py +113 -0
- package/docs/testsprite_tests/TC006_GitHub_Integration_Edit_this_page_Links.py +73 -0
- package/docs/testsprite_tests/TC007_Syntax_Highlighting_and_Code_Copy_Functionality.py +73 -0
- package/docs/testsprite_tests/TC008_Auto_Generated_Table_of_Contents_Accuracy.py +73 -0
- package/docs/testsprite_tests/TC009_SEO_and_Content_Discoverability_Verification.py +73 -0
- package/docs/testsprite_tests/TC010_Accessibility_Compliance_WCAG_AA.py +73 -0
- package/docs/testsprite_tests/TC011_Local_Development_Workflow_Build_and_Hot_Reload.py +74 -0
- package/docs/testsprite_tests/TC012_Performance_Metrics_Compliance.py +73 -0
- package/docs/testsprite_tests/standard_prd.json +122 -0
- package/docs/testsprite_tests/testsprite-mcp-test-report.html +2508 -0
- package/docs/testsprite_tests/testsprite-mcp-test-report.md +273 -0
- package/docs/testsprite_tests/testsprite_frontend_test_plan.json +390 -0
- package/docs/usage-service.md +291 -1
- package/index.ts +11 -3
- package/package.json +17 -2
- package/plans/CODESPACE_LOGS_STREAMING_GUIDE.md +320 -0
- package/plans/CODESPACE_TASK_LOGS_API_COMPLETE_GUIDE.md +821 -0
- package/services/base/base-service.ts +130 -0
- package/services/codespace/codespace-service.ts +359 -0
- package/services/codespace/codespace-types.ts +295 -13
- package/services/codespace/index.ts +21 -1
- package/services/index.ts +2 -0
- package/services/projects/README.md +107 -34
- package/services/projects/project-types.ts +69 -32
- package/services/starter-kits/index.ts +2 -0
- package/services/starter-kits/starter-kits-service.ts +33 -0
- package/services/starter-kits/starter-kits-types.ts +38 -0
- package/services/subscriptions/subscription-service.ts +23 -5
- package/services/tasks/task-service.ts +10 -0
- package/services/tasks/task-types.ts +29 -7
- package/services/usage/usage-service.ts +59 -10
- package/services/usage/usage-types.ts +186 -36
- package/types.ts +22 -2
|
@@ -84,11 +84,16 @@ export interface TechnicalDocument {
|
|
|
84
84
|
potential_challenges: string[];
|
|
85
85
|
};
|
|
86
86
|
}
|
|
87
|
+
export interface TaskMetadata {
|
|
88
|
+
job_id?: string;
|
|
89
|
+
completed_at?: string;
|
|
90
|
+
processing_duration_ms?: number;
|
|
91
|
+
}
|
|
87
92
|
export interface CodespaceTaskData {
|
|
88
93
|
id: string;
|
|
89
94
|
codespace_task_id: string | null;
|
|
90
95
|
project_id: string;
|
|
91
|
-
project_repository_id: string;
|
|
96
|
+
project_repository_id: string | null;
|
|
92
97
|
user_id: string;
|
|
93
98
|
status: string;
|
|
94
99
|
progress: string;
|
|
@@ -106,22 +111,44 @@ export interface CodespaceTaskData {
|
|
|
106
111
|
work_completed_at: string | null;
|
|
107
112
|
estimated_completion_time: string | null;
|
|
108
113
|
ai_implementation_plan: string | null;
|
|
109
|
-
metadata:
|
|
114
|
+
metadata: TaskMetadata | null;
|
|
110
115
|
model_id: string | null;
|
|
111
116
|
execution_mode: string;
|
|
112
117
|
context_data: any;
|
|
113
|
-
final_report_popup_state:
|
|
118
|
+
final_report_popup_state: 'not_ready' | 'open' | 'closed';
|
|
114
119
|
technical_document: TechnicalDocument | null;
|
|
115
|
-
|
|
116
|
-
|
|
120
|
+
ai_questionnaire: Record<string, string> | null;
|
|
121
|
+
model: TaskModel | null;
|
|
122
|
+
task_models: TaskModelEntry[];
|
|
123
|
+
docs_url: string | null;
|
|
124
|
+
github_token: string | null;
|
|
125
|
+
attachments: TaskAttachment[] | null;
|
|
117
126
|
}
|
|
118
127
|
export interface GetCodespaceTaskResponse {
|
|
119
128
|
status: string;
|
|
120
129
|
data: CodespaceTaskData;
|
|
121
130
|
}
|
|
122
|
-
export interface
|
|
131
|
+
export interface CodespaceProjectTask {
|
|
132
|
+
id: string;
|
|
133
|
+
title: string;
|
|
134
|
+
description: string;
|
|
135
|
+
details: string;
|
|
123
136
|
status: string;
|
|
124
|
-
|
|
137
|
+
test_strategy: string;
|
|
138
|
+
priority: string;
|
|
139
|
+
ordinal: number;
|
|
140
|
+
task_group_id: string;
|
|
141
|
+
parent_task_id: string;
|
|
142
|
+
ai_result: string;
|
|
143
|
+
created_at: string;
|
|
144
|
+
user_id: string;
|
|
145
|
+
subtasks: CodespaceProjectTask[];
|
|
146
|
+
}
|
|
147
|
+
export interface CodespaceProjectTaskListResponse {
|
|
148
|
+
status: string;
|
|
149
|
+
data: CodespaceProjectTask[];
|
|
150
|
+
}
|
|
151
|
+
export interface GetProjectTasksByCodespaceResponse extends CodespaceProjectTaskListResponse {
|
|
125
152
|
}
|
|
126
153
|
export interface CreateBackgroundCodespaceTaskRequest extends CreateCodespaceTaskRequestV2 {
|
|
127
154
|
}
|
|
@@ -135,11 +162,7 @@ export interface GetCodespaceTasksByProjectRequest {
|
|
|
135
162
|
sort_by?: string;
|
|
136
163
|
sort_order?: 'asc' | 'desc';
|
|
137
164
|
}
|
|
138
|
-
export interface GetCodespaceTasksByProjectResponse {
|
|
139
|
-
status: string;
|
|
140
|
-
data: CodespaceTaskData[];
|
|
141
|
-
total_count: number;
|
|
142
|
-
message: string;
|
|
165
|
+
export interface GetCodespaceTasksByProjectResponse extends GetCodespaceTasksCommonResponse {
|
|
143
166
|
}
|
|
144
167
|
export interface CodespaceTaskDetailedResponse {
|
|
145
168
|
status: string;
|
|
@@ -210,3 +233,181 @@ export interface CodespaceModelsFetchError {
|
|
|
210
233
|
detail: string;
|
|
211
234
|
}
|
|
212
235
|
export type CodespaceModelsError = CodespaceModelNotFoundError | AuthenticationRequiredError | CodespaceModelsFetchError;
|
|
236
|
+
export interface AttachmentResponse {
|
|
237
|
+
id: string;
|
|
238
|
+
filename: string;
|
|
239
|
+
file_data: string;
|
|
240
|
+
mime_type: string;
|
|
241
|
+
file_size: number;
|
|
242
|
+
description?: string;
|
|
243
|
+
created_at: string;
|
|
244
|
+
}
|
|
245
|
+
export interface CodespaceTaskModelInDB {
|
|
246
|
+
id: string;
|
|
247
|
+
created_at: string;
|
|
248
|
+
codespace_task_id: string;
|
|
249
|
+
model_id: string;
|
|
250
|
+
model_name?: string;
|
|
251
|
+
model_key?: string;
|
|
252
|
+
provider_id?: string;
|
|
253
|
+
provider_name?: string;
|
|
254
|
+
execution_mode?: string;
|
|
255
|
+
}
|
|
256
|
+
export interface CodespaceTasksListResponse extends GetCodespaceTasksCommonResponse {
|
|
257
|
+
}
|
|
258
|
+
export interface GetCodespaceTasksCommonResponse {
|
|
259
|
+
status: string;
|
|
260
|
+
data: CodespaceTaskData[];
|
|
261
|
+
total_count: number;
|
|
262
|
+
message: string;
|
|
263
|
+
}
|
|
264
|
+
export interface GetCodespaceTasksRequest {
|
|
265
|
+
task_status?: 'completed' | 'in_progress' | 'failed';
|
|
266
|
+
project_id?: string;
|
|
267
|
+
limit?: number;
|
|
268
|
+
offset?: number;
|
|
269
|
+
sort_by?: 'created_at' | 'updated_at' | 'status' | 'title';
|
|
270
|
+
sort_order?: 'asc' | 'desc';
|
|
271
|
+
}
|
|
272
|
+
export interface TaskAttachment {
|
|
273
|
+
id: string;
|
|
274
|
+
codespace_task_id: string;
|
|
275
|
+
filename: string;
|
|
276
|
+
file_url: string;
|
|
277
|
+
file_type: string;
|
|
278
|
+
file_size: number;
|
|
279
|
+
created_at: string;
|
|
280
|
+
}
|
|
281
|
+
export interface TaskModel {
|
|
282
|
+
id: string;
|
|
283
|
+
created_at: string;
|
|
284
|
+
key: string;
|
|
285
|
+
name: string;
|
|
286
|
+
provider_id: string;
|
|
287
|
+
base_url: string | null;
|
|
288
|
+
completion_base_url: string | null;
|
|
289
|
+
execution_mode: string;
|
|
290
|
+
logo_src: string | null;
|
|
291
|
+
provider: {
|
|
292
|
+
id: string;
|
|
293
|
+
created_at: string;
|
|
294
|
+
name: string;
|
|
295
|
+
key: string;
|
|
296
|
+
logo_src: string | null;
|
|
297
|
+
};
|
|
298
|
+
}
|
|
299
|
+
export interface TaskModelEntry {
|
|
300
|
+
id: string;
|
|
301
|
+
codespace_task_id: string;
|
|
302
|
+
codespace_model_id: string;
|
|
303
|
+
created_at: string;
|
|
304
|
+
}
|
|
305
|
+
export interface GetCodespaceTasksResponse extends GetCodespaceTasksCommonResponse {
|
|
306
|
+
}
|
|
307
|
+
export interface GetTasksByCodespaceIdRequest {
|
|
308
|
+
codespace_task_id: string;
|
|
309
|
+
limit?: number;
|
|
310
|
+
offset?: number;
|
|
311
|
+
sort_by?: 'created_at' | 'updated_at' | 'status' | 'title';
|
|
312
|
+
sort_order?: 'asc' | 'desc';
|
|
313
|
+
}
|
|
314
|
+
export interface GetTasksByCodespaceIdResponse {
|
|
315
|
+
status: string;
|
|
316
|
+
data: CodespaceTaskData[];
|
|
317
|
+
total_count: number;
|
|
318
|
+
message: string;
|
|
319
|
+
}
|
|
320
|
+
export interface UpdateFinalReportPopupStateRequest {
|
|
321
|
+
final_report_popup_state: 'not_ready' | 'open' | 'closed';
|
|
322
|
+
}
|
|
323
|
+
export interface UpdateFinalReportPopupStateResponse {
|
|
324
|
+
status: string;
|
|
325
|
+
message: string;
|
|
326
|
+
codespace_task_id: string;
|
|
327
|
+
final_report_popup_state: 'not_ready' | 'open' | 'closed';
|
|
328
|
+
}
|
|
329
|
+
export type CodespaceLogType = 'thinking' | 'coding' | 'info' | 'error' | 'success';
|
|
330
|
+
export interface CodespaceTaskLog {
|
|
331
|
+
id: string;
|
|
332
|
+
codespace_task_id: string;
|
|
333
|
+
step_name: string;
|
|
334
|
+
log_type: CodespaceLogType;
|
|
335
|
+
message: string;
|
|
336
|
+
created_at: string;
|
|
337
|
+
progress_percentage?: number;
|
|
338
|
+
metadata?: Record<string, any>;
|
|
339
|
+
}
|
|
340
|
+
export interface GetCodespaceTaskLogsRequest {
|
|
341
|
+
codespace_task_id: string;
|
|
342
|
+
limit?: number;
|
|
343
|
+
offset?: number;
|
|
344
|
+
log_type?: CodespaceLogType;
|
|
345
|
+
step_name?: string;
|
|
346
|
+
search?: string;
|
|
347
|
+
sort_by?: 'created_at' | 'step_name' | 'log_type';
|
|
348
|
+
sort_order?: 'asc' | 'desc';
|
|
349
|
+
since?: string;
|
|
350
|
+
}
|
|
351
|
+
export interface CodespaceTaskLogsResponse {
|
|
352
|
+
status: string;
|
|
353
|
+
data: CodespaceTaskLog[];
|
|
354
|
+
total_count: number;
|
|
355
|
+
has_more: boolean;
|
|
356
|
+
next_offset?: number;
|
|
357
|
+
message: string;
|
|
358
|
+
}
|
|
359
|
+
export interface StreamCodespaceTaskLogsRequest {
|
|
360
|
+
codespace_task_id: string;
|
|
361
|
+
since?: string;
|
|
362
|
+
timeout?: number;
|
|
363
|
+
}
|
|
364
|
+
export interface StreamLogEvent {
|
|
365
|
+
event: 'log';
|
|
366
|
+
data: CodespaceTaskLog;
|
|
367
|
+
}
|
|
368
|
+
export interface StreamHeartbeatEvent {
|
|
369
|
+
event: 'heartbeat';
|
|
370
|
+
data: {
|
|
371
|
+
timestamp: string;
|
|
372
|
+
};
|
|
373
|
+
}
|
|
374
|
+
export interface StreamCompleteEvent {
|
|
375
|
+
event: 'complete';
|
|
376
|
+
data: {
|
|
377
|
+
message: string;
|
|
378
|
+
};
|
|
379
|
+
}
|
|
380
|
+
export interface StreamTimeoutEvent {
|
|
381
|
+
event: 'timeout';
|
|
382
|
+
data: {
|
|
383
|
+
message: string;
|
|
384
|
+
};
|
|
385
|
+
}
|
|
386
|
+
export interface StreamErrorEvent {
|
|
387
|
+
event: 'error';
|
|
388
|
+
data: {
|
|
389
|
+
error: string;
|
|
390
|
+
};
|
|
391
|
+
}
|
|
392
|
+
export type CodespaceLogStreamEvent = StreamLogEvent | StreamHeartbeatEvent | StreamCompleteEvent | StreamTimeoutEvent | StreamErrorEvent;
|
|
393
|
+
export interface GetCodespaceProjectSummaryRequest {
|
|
394
|
+
project_id: string;
|
|
395
|
+
}
|
|
396
|
+
export interface CodespaceStatusSummary {
|
|
397
|
+
pending: number;
|
|
398
|
+
in_progress: number;
|
|
399
|
+
completed: number;
|
|
400
|
+
failed: number;
|
|
401
|
+
blocked: number;
|
|
402
|
+
}
|
|
403
|
+
export interface CodespaceProjectSummaryData {
|
|
404
|
+
project_id: string;
|
|
405
|
+
total_codespace_tasks: number;
|
|
406
|
+
status_summary: CodespaceStatusSummary;
|
|
407
|
+
latest_task_created_at: string;
|
|
408
|
+
}
|
|
409
|
+
export interface GetCodespaceProjectSummaryResponse {
|
|
410
|
+
status: string;
|
|
411
|
+
data: CodespaceProjectSummaryData;
|
|
412
|
+
message: string;
|
|
413
|
+
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { CodespaceService } from './codespace-service';
|
|
2
2
|
export * from './codespace-types';
|
|
3
|
-
export type { CreateCodespaceTaskRequestV2 as CreateCodespaceTaskRequest, CreateCodespaceTaskResponseV2 as CreateCodespaceTaskResponse, CreateBackgroundCodespaceTaskRequest, CreateBackgroundCodespaceTaskResponse, ModelApiKey, Attachment, GetCodespaceTaskResponse, CodespaceTaskData, TechnicalDocument, GetProjectTasksByCodespaceResponse, CodespaceQuestionnaireRequest, CodespaceQuestionnaireResponse, LLMModelProviderInDB, CodespaceModelInDB, CodespaceModelWithProvider, GetCodespaceModelsQuery, GetCodespaceModelsResponse, GetCodespaceModelResponse, GetLLMModelProvidersResponse, GetLLMModelProviderResponse, GetModelsByProviderResponse, CodespaceModelsError } from './codespace-types';
|
|
3
|
+
export type { CreateCodespaceTaskRequestV2 as CreateCodespaceTaskRequest, CreateCodespaceTaskResponseV2 as CreateCodespaceTaskResponse, CreateBackgroundCodespaceTaskRequest, CreateBackgroundCodespaceTaskResponse, ModelApiKey, Attachment, GetCodespaceTaskResponse, CodespaceTaskData, TechnicalDocument, GetProjectTasksByCodespaceResponse, CodespaceProjectTask, CodespaceProjectTaskListResponse, CodespaceQuestionnaireRequest, CodespaceQuestionnaireResponse, LLMModelProviderInDB, CodespaceModelInDB, CodespaceModelWithProvider, GetCodespaceModelsQuery, GetCodespaceModelsResponse, GetCodespaceModelResponse, GetLLMModelProvidersResponse, GetLLMModelProviderResponse, GetModelsByProviderResponse, CodespaceModelsError, UpdateFinalReportPopupStateRequest, UpdateFinalReportPopupStateResponse, GetCodespaceTaskLogsRequest, CodespaceTaskLogsResponse, StreamCodespaceTaskLogsRequest, CodespaceTaskLog, CodespaceLogType, CodespaceLogStreamEvent, GetTasksByCodespaceIdRequest, GetTasksByCodespaceIdResponse, GetCodespaceProjectSummaryRequest, GetCodespaceProjectSummaryResponse, CodespaceStatusSummary, CodespaceProjectSummaryData } from './codespace-types';
|
package/dist/services/index.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ export { CodespaceService } from './codespace';
|
|
|
11
11
|
export { ExternalTokenService } from './external-tokens';
|
|
12
12
|
export { SecurityKeysService } from './security-keys';
|
|
13
13
|
export { UserService } from './users';
|
|
14
|
+
export { StarterKitsService } from './starter-kits';
|
|
14
15
|
export * from './generation';
|
|
15
16
|
export * from './projects';
|
|
16
17
|
export * from './usage';
|
|
@@ -23,3 +24,4 @@ export * from './codespace';
|
|
|
23
24
|
export * from './external-tokens';
|
|
24
25
|
export * from './security-keys';
|
|
25
26
|
export * from './users';
|
|
27
|
+
export * from './starter-kits';
|
package/dist/services/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.UserService = exports.SecurityKeysService = exports.ExternalTokenService = exports.CodespaceService = exports.CancellationFunnelService = exports.SubscriptionService = exports.ApiKeyEnhancedService = exports.TaskService = exports.RepositoryAnalysisService = exports.UsageService = exports.ProjectService = exports.GenerationService = exports.BaseService = void 0;
|
|
20
|
+
exports.StarterKitsService = exports.UserService = exports.SecurityKeysService = exports.ExternalTokenService = exports.CodespaceService = exports.CancellationFunnelService = exports.SubscriptionService = exports.ApiKeyEnhancedService = exports.TaskService = exports.RepositoryAnalysisService = exports.UsageService = exports.ProjectService = exports.GenerationService = exports.BaseService = void 0;
|
|
21
21
|
const dotenv_1 = __importDefault(require("dotenv"));
|
|
22
22
|
const path_1 = __importDefault(require("path"));
|
|
23
23
|
// Load environment variables from project root
|
|
@@ -51,6 +51,8 @@ var security_keys_1 = require("./security-keys");
|
|
|
51
51
|
Object.defineProperty(exports, "SecurityKeysService", { enumerable: true, get: function () { return security_keys_1.SecurityKeysService; } });
|
|
52
52
|
var users_1 = require("./users");
|
|
53
53
|
Object.defineProperty(exports, "UserService", { enumerable: true, get: function () { return users_1.UserService; } });
|
|
54
|
+
var starter_kits_1 = require("./starter-kits");
|
|
55
|
+
Object.defineProperty(exports, "StarterKitsService", { enumerable: true, get: function () { return starter_kits_1.StarterKitsService; } });
|
|
54
56
|
// Re-export all types for convenience
|
|
55
57
|
__exportStar(require("./generation"), exports);
|
|
56
58
|
__exportStar(require("./projects"), exports);
|
|
@@ -64,3 +66,4 @@ __exportStar(require("./codespace"), exports);
|
|
|
64
66
|
__exportStar(require("./external-tokens"), exports);
|
|
65
67
|
__exportStar(require("./security-keys"), exports);
|
|
66
68
|
__exportStar(require("./users"), exports);
|
|
69
|
+
__exportStar(require("./starter-kits"), exports);
|
|
@@ -1,30 +1,48 @@
|
|
|
1
1
|
export interface ProjectRepository {
|
|
2
2
|
id: string;
|
|
3
|
-
|
|
3
|
+
name: string;
|
|
4
4
|
repo_url: string;
|
|
5
5
|
branch: string;
|
|
6
|
+
project_id: string;
|
|
7
|
+
user_id: string;
|
|
8
|
+
files_processed: number;
|
|
9
|
+
total_characters: number;
|
|
10
|
+
total_lines: number;
|
|
11
|
+
total_files_found: number;
|
|
12
|
+
total_directories: number;
|
|
6
13
|
author: string;
|
|
7
|
-
|
|
8
|
-
|
|
14
|
+
estimated_tokens: number;
|
|
15
|
+
estimated_size_bytes: number;
|
|
16
|
+
tree_structure?: string;
|
|
9
17
|
created_at: string;
|
|
10
|
-
updated_at: string;
|
|
11
18
|
}
|
|
12
19
|
export interface Project {
|
|
13
20
|
id: string;
|
|
14
21
|
title: string;
|
|
15
22
|
description: string;
|
|
16
|
-
|
|
23
|
+
status: string;
|
|
24
|
+
category_id: string;
|
|
25
|
+
starter_kit_id?: string;
|
|
26
|
+
ai_questionaire?: {
|
|
27
|
+
experience_level?: string;
|
|
28
|
+
timeline?: string;
|
|
29
|
+
team_size?: number;
|
|
30
|
+
};
|
|
31
|
+
tools_selected?: string[];
|
|
32
|
+
project_outline?: {
|
|
33
|
+
features?: string[];
|
|
34
|
+
architecture?: string;
|
|
35
|
+
};
|
|
36
|
+
codie_tool_id?: string;
|
|
37
|
+
existing_project_repo_url?: string | null;
|
|
17
38
|
created_at: string;
|
|
18
39
|
updated_at: string;
|
|
40
|
+
user_id: string;
|
|
19
41
|
project_documents: ProjectDocument[];
|
|
20
|
-
project_repositories: ProjectRepository[];
|
|
21
42
|
category?: Category;
|
|
43
|
+
starter_kit?: StarterKitReference;
|
|
22
44
|
codie_tool?: CodieTool;
|
|
23
|
-
|
|
24
|
-
status?: string;
|
|
25
|
-
tools_selected?: string[];
|
|
26
|
-
ai_questionaire?: Record<string, any>;
|
|
27
|
-
project_outline?: Record<string, any>;
|
|
45
|
+
project_repositories: ProjectRepository[];
|
|
28
46
|
}
|
|
29
47
|
export interface ProjectDocument {
|
|
30
48
|
id: string;
|
|
@@ -51,34 +69,58 @@ export interface GetProjectDocumentsResponse {
|
|
|
51
69
|
export interface Category {
|
|
52
70
|
id: string;
|
|
53
71
|
name: string;
|
|
54
|
-
description
|
|
72
|
+
description: string;
|
|
55
73
|
}
|
|
56
74
|
export interface CodieTool {
|
|
57
75
|
id: string;
|
|
58
76
|
name: string;
|
|
59
|
-
description
|
|
60
|
-
|
|
77
|
+
description: string;
|
|
78
|
+
type: string;
|
|
79
|
+
api_endpoint?: string;
|
|
80
|
+
created_at?: string;
|
|
81
|
+
updated_at?: string;
|
|
82
|
+
}
|
|
83
|
+
export interface StarterKitReference {
|
|
84
|
+
id: string;
|
|
85
|
+
name: string;
|
|
86
|
+
description: string;
|
|
61
87
|
}
|
|
62
88
|
export interface CreateProjectRequest {
|
|
63
89
|
title: string;
|
|
64
90
|
description: string;
|
|
65
91
|
category_id?: string;
|
|
66
|
-
|
|
92
|
+
starter_kit_id?: string;
|
|
93
|
+
ai_questionaire?: {
|
|
94
|
+
experience_level?: string;
|
|
95
|
+
timeline?: string;
|
|
96
|
+
team_size?: number;
|
|
97
|
+
};
|
|
67
98
|
tools_selected?: string[];
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
99
|
+
project_outline?: {
|
|
100
|
+
features?: string[];
|
|
101
|
+
architecture?: string;
|
|
102
|
+
};
|
|
103
|
+
codie_tool_id?: string;
|
|
104
|
+
existing_project_repo_url?: string;
|
|
71
105
|
}
|
|
72
106
|
export interface UpdateProjectRequest {
|
|
73
107
|
title?: string;
|
|
74
108
|
description?: string;
|
|
109
|
+
status?: string;
|
|
75
110
|
category_id?: string;
|
|
76
|
-
|
|
111
|
+
starter_kit_id?: string;
|
|
112
|
+
ai_questionaire?: {
|
|
113
|
+
experience_level?: string;
|
|
114
|
+
timeline?: string;
|
|
115
|
+
team_size?: number;
|
|
116
|
+
};
|
|
77
117
|
tools_selected?: string[];
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
118
|
+
project_outline?: {
|
|
119
|
+
features?: string[];
|
|
120
|
+
architecture?: string;
|
|
121
|
+
};
|
|
122
|
+
codie_tool_id?: string;
|
|
123
|
+
existing_project_repo_url?: string;
|
|
82
124
|
}
|
|
83
125
|
export interface ProjectListResponse {
|
|
84
126
|
status: string;
|
|
@@ -116,13 +158,5 @@ export interface ConnectRepositoryRequest {
|
|
|
116
158
|
}
|
|
117
159
|
export interface ConnectRepositoryResponse {
|
|
118
160
|
status: string;
|
|
119
|
-
data:
|
|
120
|
-
id: string;
|
|
121
|
-
project_id: string;
|
|
122
|
-
repo_url: string;
|
|
123
|
-
branch: string;
|
|
124
|
-
connection_status: 'pending' | 'connected' | 'failed';
|
|
125
|
-
created_at: string;
|
|
126
|
-
updated_at: string;
|
|
127
|
-
};
|
|
161
|
+
data: ProjectRepository;
|
|
128
162
|
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.StarterKitsService = void 0;
|
|
18
|
+
var starter_kits_service_1 = require("./starter-kits-service");
|
|
19
|
+
Object.defineProperty(exports, "StarterKitsService", { enumerable: true, get: function () { return starter_kits_service_1.StarterKitsService; } });
|
|
20
|
+
__exportStar(require("./starter-kits-types"), exports);
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseService } from '../base/base-service';
|
|
2
|
+
import { StarterKit, GetStarterKitsRequest } from './starter-kits-types';
|
|
3
|
+
export declare class StarterKitsService extends BaseService {
|
|
4
|
+
/**
|
|
5
|
+
* Get starter kits with optional filtering
|
|
6
|
+
*
|
|
7
|
+
* GET /starter-kits/
|
|
8
|
+
*
|
|
9
|
+
* @param params Optional query parameters for filtering
|
|
10
|
+
* @returns Promise resolving to an array of starter kits
|
|
11
|
+
*/
|
|
12
|
+
getStarterKits(params?: GetStarterKitsRequest): Promise<StarterKit[]>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StarterKitsService = void 0;
|
|
4
|
+
const base_service_1 = require("../base/base-service");
|
|
5
|
+
class StarterKitsService extends base_service_1.BaseService {
|
|
6
|
+
/**
|
|
7
|
+
* Get starter kits with optional filtering
|
|
8
|
+
*
|
|
9
|
+
* GET /starter-kits/
|
|
10
|
+
*
|
|
11
|
+
* @param params Optional query parameters for filtering
|
|
12
|
+
* @returns Promise resolving to an array of starter kits
|
|
13
|
+
*/
|
|
14
|
+
async getStarterKits(params) {
|
|
15
|
+
const queryParams = new URLSearchParams();
|
|
16
|
+
if (params?.name) {
|
|
17
|
+
queryParams.append('name', params.name);
|
|
18
|
+
}
|
|
19
|
+
if (params?.repo_name) {
|
|
20
|
+
queryParams.append('repo_name', params.repo_name);
|
|
21
|
+
}
|
|
22
|
+
const url = `/starter-kits${queryParams.toString() ? `?${queryParams.toString()}` : ''}`;
|
|
23
|
+
const response = await this.get(url);
|
|
24
|
+
return response.data;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.StarterKitsService = StarterKitsService;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Starter Kit metadata
|
|
3
|
+
*/
|
|
4
|
+
export interface StarterKitMetadata {
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Starter Kit data structure
|
|
9
|
+
*/
|
|
10
|
+
export interface StarterKit {
|
|
11
|
+
id: string;
|
|
12
|
+
created_at: string;
|
|
13
|
+
updated_at: string;
|
|
14
|
+
name: string;
|
|
15
|
+
repo_name: string | null;
|
|
16
|
+
kit_name: string | null;
|
|
17
|
+
metadata: StarterKitMetadata | null;
|
|
18
|
+
project_structure: string | null;
|
|
19
|
+
ordinal: number | null;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Request parameters for getting starter kits
|
|
23
|
+
*/
|
|
24
|
+
export interface GetStarterKitsRequest {
|
|
25
|
+
name?: string;
|
|
26
|
+
repo_name?: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Response for getting starter kits
|
|
30
|
+
*/
|
|
31
|
+
export interface GetStarterKitsResponse {
|
|
32
|
+
status: 'success' | 'error';
|
|
33
|
+
data: StarterKit[];
|
|
34
|
+
}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { BaseService } from '../base/base-service';
|
|
2
|
-
import { CurrentSubscriptionResponse, UserSubscriptionsResponse, CancelSubscriptionRequest, CancelSubscriptionResponse } from '../../types';
|
|
2
|
+
import { CurrentSubscriptionResponse, UserSubscriptionsResponse, CancelSubscriptionRequest, CancelSubscriptionResponse, SubscriptionProductsResponse, CreateCheckoutSessionRequest, CreateCheckoutSessionResponse } from '../../types';
|
|
3
3
|
export declare class SubscriptionService extends BaseService {
|
|
4
4
|
constructor(config: any);
|
|
5
|
+
/**
|
|
6
|
+
* Create a Stripe checkout session for subscription purchase
|
|
7
|
+
* POST /subscriptions/create-checkout-session
|
|
8
|
+
*/
|
|
9
|
+
createCheckoutSession(request: CreateCheckoutSessionRequest): Promise<CreateCheckoutSessionResponse>;
|
|
5
10
|
/**
|
|
6
11
|
* Get the currently active subscription for the authenticated user
|
|
7
12
|
* GET /subscriptions/current
|
|
@@ -12,6 +17,11 @@ export declare class SubscriptionService extends BaseService {
|
|
|
12
17
|
* GET /subscriptions/
|
|
13
18
|
*/
|
|
14
19
|
getAllSubscriptions(): Promise<UserSubscriptionsResponse>;
|
|
20
|
+
/**
|
|
21
|
+
* Get all available subscription products and their prices
|
|
22
|
+
* GET /subscriptions/products
|
|
23
|
+
*/
|
|
24
|
+
getSubscriptionProducts(): Promise<SubscriptionProductsResponse>;
|
|
15
25
|
/**
|
|
16
26
|
* Cancel subscription but keep it active until the end of the current billing period
|
|
17
27
|
* POST /subscriptions/{subscription_id}/cancel
|
|
@@ -6,6 +6,13 @@ class SubscriptionService extends base_service_1.BaseService {
|
|
|
6
6
|
constructor(config) {
|
|
7
7
|
super(config);
|
|
8
8
|
}
|
|
9
|
+
/**
|
|
10
|
+
* Create a Stripe checkout session for subscription purchase
|
|
11
|
+
* POST /subscriptions/create-checkout-session
|
|
12
|
+
*/
|
|
13
|
+
async createCheckoutSession(request) {
|
|
14
|
+
return this.post('/subscriptions/create-checkout-session', request);
|
|
15
|
+
}
|
|
9
16
|
/**
|
|
10
17
|
* Get the currently active subscription for the authenticated user
|
|
11
18
|
* GET /subscriptions/current
|
|
@@ -20,6 +27,13 @@ class SubscriptionService extends base_service_1.BaseService {
|
|
|
20
27
|
async getAllSubscriptions() {
|
|
21
28
|
return this.get('/subscriptions/');
|
|
22
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Get all available subscription products and their prices
|
|
32
|
+
* GET /subscriptions/products
|
|
33
|
+
*/
|
|
34
|
+
async getSubscriptionProducts() {
|
|
35
|
+
return this.get('/subscriptions/products');
|
|
36
|
+
}
|
|
23
37
|
/**
|
|
24
38
|
* Cancel subscription but keep it active until the end of the current billing period
|
|
25
39
|
* POST /subscriptions/{subscription_id}/cancel
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseService } from '../base/base-service';
|
|
2
|
-
import { TaskGroup, ProjectTask, CreateTaskGroupRequest, UpdateTaskGroupRequest, CreateProjectTaskRequest, UpdateProjectTaskRequest, PaginatedTaskGroupsRequest, PaginatedTaskGroupsResponse, PaginatedProjectTasksRequest, PaginatedProjectTasksResponse, GenerateTasksRequest, GenerateTasksResponse, GetTasksByProjectRequest, GetTasksByProjectResponse, UpdateTaskRequest, UpdateTaskResponse } from './task-types';
|
|
2
|
+
import { TaskGroup, ProjectTask, CreateTaskGroupRequest, UpdateTaskGroupRequest, CreateProjectTaskRequest, UpdateProjectTaskRequest, ProjectTaskListResponse, PaginatedTaskGroupsRequest, PaginatedTaskGroupsResponse, PaginatedProjectTasksRequest, PaginatedProjectTasksResponse, GenerateTasksRequest, GenerateTasksResponse, GetTasksByProjectRequest, GetTasksByProjectResponse, UpdateTaskRequest, UpdateTaskResponse } from './task-types';
|
|
3
3
|
export declare class TaskService extends BaseService {
|
|
4
4
|
getAllTaskGroups(): Promise<TaskGroup[]>;
|
|
5
5
|
getPaginatedTaskGroups(params: PaginatedTaskGroupsRequest): Promise<PaginatedTaskGroupsResponse>;
|
|
@@ -27,4 +27,5 @@ export declare class TaskService extends BaseService {
|
|
|
27
27
|
generateTasks(request: GenerateTasksRequest): Promise<GenerateTasksResponse>;
|
|
28
28
|
getTasksByProject(request: GetTasksByProjectRequest): Promise<GetTasksByProjectResponse>;
|
|
29
29
|
updateTask(taskId: string, request: UpdateTaskRequest): Promise<UpdateTaskResponse>;
|
|
30
|
+
getProjectTasksbyCodespace(codespaceTaskId: string): Promise<ProjectTaskListResponse>;
|
|
30
31
|
}
|
|
@@ -130,5 +130,13 @@ class TaskService extends base_service_1.BaseService {
|
|
|
130
130
|
async updateTask(taskId, request) {
|
|
131
131
|
return this.put(`/project-tasks/${taskId}`, request);
|
|
132
132
|
}
|
|
133
|
+
// Get Project Tasks by Codespace
|
|
134
|
+
async getProjectTasksbyCodespace(codespaceTaskId) {
|
|
135
|
+
if (!codespaceTaskId) {
|
|
136
|
+
throw new Error('Codespace task ID is required');
|
|
137
|
+
}
|
|
138
|
+
const url = `/project-tasks/by-codespace/${codespaceTaskId}`;
|
|
139
|
+
return this.get(url);
|
|
140
|
+
}
|
|
133
141
|
}
|
|
134
142
|
exports.TaskService = TaskService;
|