gazill 2.1.0 → 2.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.
Files changed (73) hide show
  1. package/dist/commands/autoscale.d.ts +5 -0
  2. package/dist/commands/autoscale.d.ts.map +1 -0
  3. package/dist/commands/autoscale.js +140 -0
  4. package/dist/commands/autoscale.js.map +1 -0
  5. package/dist/commands/blob.d.ts +19 -0
  6. package/dist/commands/blob.d.ts.map +1 -0
  7. package/dist/commands/blob.js +383 -0
  8. package/dist/commands/blob.js.map +1 -0
  9. package/dist/commands/cron.d.ts +27 -0
  10. package/dist/commands/cron.d.ts.map +1 -0
  11. package/dist/commands/cron.js +333 -0
  12. package/dist/commands/cron.js.map +1 -0
  13. package/dist/commands/db.d.ts +21 -0
  14. package/dist/commands/db.d.ts.map +1 -0
  15. package/dist/commands/db.js +567 -0
  16. package/dist/commands/db.js.map +1 -0
  17. package/dist/commands/domains.d.ts +5 -0
  18. package/dist/commands/domains.d.ts.map +1 -0
  19. package/dist/commands/domains.js +239 -0
  20. package/dist/commands/domains.js.map +1 -0
  21. package/dist/commands/env.d.ts +4 -0
  22. package/dist/commands/env.d.ts.map +1 -0
  23. package/dist/commands/env.js +180 -0
  24. package/dist/commands/env.js.map +1 -0
  25. package/dist/commands/health.d.ts +7 -0
  26. package/dist/commands/health.d.ts.map +1 -0
  27. package/dist/commands/health.js +189 -0
  28. package/dist/commands/health.js.map +1 -0
  29. package/dist/commands/limits.d.ts +2 -0
  30. package/dist/commands/limits.d.ts.map +1 -0
  31. package/dist/commands/limits.js +186 -0
  32. package/dist/commands/limits.js.map +1 -0
  33. package/dist/commands/mysql.d.ts +15 -0
  34. package/dist/commands/mysql.d.ts.map +1 -0
  35. package/dist/commands/mysql.js +413 -0
  36. package/dist/commands/mysql.js.map +1 -0
  37. package/dist/commands/new.d.ts.map +1 -1
  38. package/dist/commands/new.js +29 -3
  39. package/dist/commands/new.js.map +1 -1
  40. package/dist/commands/promote.d.ts.map +1 -1
  41. package/dist/commands/promote.js +36 -9
  42. package/dist/commands/promote.js.map +1 -1
  43. package/dist/commands/redis.d.ts +15 -0
  44. package/dist/commands/redis.d.ts.map +1 -0
  45. package/dist/commands/redis.js +402 -0
  46. package/dist/commands/redis.js.map +1 -0
  47. package/dist/commands/rollback.d.ts +9 -0
  48. package/dist/commands/rollback.d.ts.map +1 -0
  49. package/dist/commands/rollback.js +154 -0
  50. package/dist/commands/rollback.js.map +1 -0
  51. package/dist/commands/status.d.ts.map +1 -1
  52. package/dist/commands/status.js +24 -1
  53. package/dist/commands/status.js.map +1 -1
  54. package/dist/commands/usage.d.ts.map +1 -1
  55. package/dist/commands/usage.js +20 -11
  56. package/dist/commands/usage.js.map +1 -1
  57. package/dist/commands/worker.d.ts +31 -0
  58. package/dist/commands/worker.d.ts.map +1 -0
  59. package/dist/commands/worker.js +380 -0
  60. package/dist/commands/worker.js.map +1 -0
  61. package/dist/index.js +362 -1
  62. package/dist/index.js.map +1 -1
  63. package/dist/lib/api.d.ts +46 -2
  64. package/dist/lib/api.d.ts.map +1 -1
  65. package/dist/lib/api.js +16 -0
  66. package/dist/lib/api.js.map +1 -1
  67. package/dist/shared/constants.d.ts +10 -0
  68. package/dist/shared/constants.d.ts.map +1 -1
  69. package/dist/shared/constants.js +11 -0
  70. package/dist/shared/constants.js.map +1 -1
  71. package/dist/shared/types.d.ts +40 -1
  72. package/dist/shared/types.d.ts.map +1 -1
  73. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -7,11 +7,23 @@ import { statusCommand } from './commands/status.js';
7
7
  import { logsCommand } from './commands/logs.js';
8
8
  import { promoteCommand } from './commands/promote.js';
9
9
  import { usageCommand } from './commands/usage.js';
10
+ import { limitsCommand } from './commands/limits.js';
11
+ import { envListCommand, envSetCommand, envDeleteCommand } from './commands/env.js';
12
+ import { domainsListCommand, domainsAddCommand, domainsRemoveCommand, domainsVerifyCommand } from './commands/domains.js';
13
+ import { autoscaleShowCommand, autoscaleEnableCommand, autoscaleDisableCommand, autoscaleMaxCommand } from './commands/autoscale.js';
14
+ import { dbCreateCommand, dbListCommand, dbConnectCommand, dbDeleteCommand, dbResizeCommand, dbBackupCreateCommand, dbBackupListCommand } from './commands/db.js';
15
+ import { blobEnableCommand, blobDisableCommand, blobListCommand, blobUploadCommand, blobDeleteCommand, blobUrlCommand, blobUsageCommand, blobInfoCommand } from './commands/blob.js';
16
+ import { cronListCommand, cronCreateCommand, cronUpdateCommand, cronDeleteCommand, cronRunCommand, cronHistoryCommand } from './commands/cron.js';
17
+ import { workerListCommand, workerCreateCommand, workerUpdateCommand, workerDeleteCommand, workerStartCommand, workerStopCommand, workerRestartCommand, workerLogsCommand } from './commands/worker.js';
18
+ import { healthCommand } from './commands/health.js';
19
+ import { rollbackCommand } from './commands/rollback.js';
20
+ import { mysqlCreateCommand, mysqlListCommand, mysqlConnectCommand, mysqlDeleteCommand, mysqlResizeCommand } from './commands/mysql.js';
21
+ import { redisCreateCommand, redisListCommand, redisConnectCommand, redisDeleteCommand, redisResizeCommand } from './commands/redis.js';
10
22
  const program = new Command();
11
23
  program
12
24
  .name('gazill')
13
25
  .description('Auto-deploy platform for developers')
14
- .version('1.0.0');
26
+ .version('2.2.0');
15
27
  program
16
28
  .command('login')
17
29
  .description('Authenticate with Gazill')
@@ -45,5 +57,354 @@ program
45
57
  .command('usage')
46
58
  .description('View current billing and usage')
47
59
  .action(usageCommand);
60
+ program
61
+ .command('limits [project]')
62
+ .description('View development environment limits')
63
+ .action(limitsCommand);
64
+ // Env commands
65
+ const envCommand = program
66
+ .command('env')
67
+ .description('Manage environment variables');
68
+ envCommand
69
+ .command('list [project]')
70
+ .description('List environment variables')
71
+ .action(envListCommand);
72
+ envCommand
73
+ .command('set <KEY=VALUE> [project]')
74
+ .description('Set an environment variable')
75
+ .action(envSetCommand);
76
+ envCommand
77
+ .command('delete <key> [project]')
78
+ .alias('rm')
79
+ .description('Delete an environment variable')
80
+ .action(envDeleteCommand);
81
+ // Domains commands
82
+ const domainsCommand = program
83
+ .command('domains')
84
+ .description('Manage custom domains');
85
+ domainsCommand
86
+ .command('list [project]')
87
+ .description('List custom domains')
88
+ .action(domainsListCommand);
89
+ domainsCommand
90
+ .command('add <domain> [project]')
91
+ .description('Add a custom domain')
92
+ .action(domainsAddCommand);
93
+ domainsCommand
94
+ .command('remove <domain> [project]')
95
+ .alias('rm')
96
+ .description('Remove a custom domain')
97
+ .action(domainsRemoveCommand);
98
+ domainsCommand
99
+ .command('verify <domain> [project]')
100
+ .description('Verify DNS and activate domain')
101
+ .action(domainsVerifyCommand);
102
+ // Autoscale commands
103
+ const autoscaleCommand = program
104
+ .command('autoscale')
105
+ .description('Manage production autoscaling');
106
+ autoscaleCommand
107
+ .command('show [project]')
108
+ .description('Show current autoscaling configuration')
109
+ .action(autoscaleShowCommand);
110
+ autoscaleCommand
111
+ .command('enable [project]')
112
+ .description('Enable autoscaling (set max to xl)')
113
+ .action(autoscaleEnableCommand);
114
+ autoscaleCommand
115
+ .command('disable [project]')
116
+ .description('Disable autoscaling (set max to small)')
117
+ .action(autoscaleDisableCommand);
118
+ autoscaleCommand
119
+ .command('max <size> [project]')
120
+ .description('Set max pod size (small|medium|large|xl)')
121
+ .action(autoscaleMaxCommand);
122
+ // Make "gazill autoscale" (without subcommand) show current status
123
+ autoscaleCommand
124
+ .action(autoscaleShowCommand);
125
+ // Database commands
126
+ const dbCommand = program
127
+ .command('db')
128
+ .description('Manage PostgreSQL databases');
129
+ dbCommand
130
+ .command('create [name]')
131
+ .description('Create a new PostgreSQL database')
132
+ .option('--size <size>', 'Database size (small|medium|large|xl)', 'small')
133
+ .option('--project <name>', 'Target project name')
134
+ .action(dbCreateCommand);
135
+ dbCommand
136
+ .command('list [project]')
137
+ .alias('ls')
138
+ .description('List all databases')
139
+ .action(dbListCommand);
140
+ dbCommand
141
+ .command('connect [name]')
142
+ .description('Show connection details for a database')
143
+ .option('--project <name>', 'Target project name')
144
+ .action(dbConnectCommand);
145
+ dbCommand
146
+ .command('delete [name]')
147
+ .alias('rm')
148
+ .description('Delete a database')
149
+ .option('--project <name>', 'Target project name')
150
+ .action(dbDeleteCommand);
151
+ dbCommand
152
+ .command('resize <size> [name]')
153
+ .description('Resize a database (small|medium|large|xl)')
154
+ .option('--project <name>', 'Target project name')
155
+ .action(dbResizeCommand);
156
+ // Database backup subcommands
157
+ const dbBackupCommand = dbCommand
158
+ .command('backup')
159
+ .description('Manage database backups');
160
+ dbBackupCommand
161
+ .command('create [name]')
162
+ .description('Create a manual backup')
163
+ .option('--project <name>', 'Target project name')
164
+ .action(dbBackupCreateCommand);
165
+ dbBackupCommand
166
+ .command('list [name]')
167
+ .alias('ls')
168
+ .description('List available backups')
169
+ .option('--project <name>', 'Target project name')
170
+ .action(dbBackupListCommand);
171
+ // Make "gazill db" (without subcommand) list databases
172
+ dbCommand
173
+ .action(dbListCommand);
174
+ // Blob storage commands
175
+ const blobCommand = program
176
+ .command('blob')
177
+ .description('Manage blob storage and CDN');
178
+ blobCommand
179
+ .command('enable [project]')
180
+ .description('Enable blob storage for a project')
181
+ .action(blobEnableCommand);
182
+ blobCommand
183
+ .command('disable [project]')
184
+ .description('Disable blob storage for a project')
185
+ .action(blobDisableCommand);
186
+ blobCommand
187
+ .command('list [project]')
188
+ .alias('ls')
189
+ .description('List files in blob storage')
190
+ .action(blobListCommand);
191
+ blobCommand
192
+ .command('upload <file>')
193
+ .description('Upload a file to blob storage')
194
+ .option('--project <name>', 'Target project name')
195
+ .option('--path <path>', 'Subdirectory path (e.g., avatars/)')
196
+ .option('--name <filename>', 'Override filename')
197
+ .action(blobUploadCommand);
198
+ blobCommand
199
+ .command('delete <filename>')
200
+ .alias('rm')
201
+ .description('Delete a file from blob storage')
202
+ .option('--project <name>', 'Target project name')
203
+ .option('--path <path>', 'Subdirectory path')
204
+ .action(blobDeleteCommand);
205
+ blobCommand
206
+ .command('url <filename>')
207
+ .description('Get CDN URL for a file')
208
+ .option('--project <name>', 'Target project name')
209
+ .option('--path <path>', 'Subdirectory path')
210
+ .action(blobUrlCommand);
211
+ blobCommand
212
+ .command('usage [project]')
213
+ .description('Show storage and bandwidth usage')
214
+ .action(blobUsageCommand);
215
+ blobCommand
216
+ .command('info [project]')
217
+ .description('Show storage configuration info')
218
+ .action(blobInfoCommand);
219
+ // Make "gazill blob" (without subcommand) show info
220
+ blobCommand
221
+ .action(blobInfoCommand);
222
+ // Cron job commands
223
+ const cronCommand = program
224
+ .command('cron')
225
+ .description('Manage cron jobs (scheduled tasks)');
226
+ cronCommand
227
+ .command('list [project]')
228
+ .alias('ls')
229
+ .description('List cron jobs')
230
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
231
+ .action(cronListCommand);
232
+ cronCommand
233
+ .command('create <name>')
234
+ .description('Create a cron job')
235
+ .option('--schedule <cron>', 'Cron schedule (e.g., "0 * * * *")')
236
+ .option('--endpoint <path>', 'HTTP endpoint (e.g., "/api/cron/cleanup")')
237
+ .option('--method <method>', 'HTTP method (default: POST)')
238
+ .option('--timeout <seconds>', 'Timeout in seconds')
239
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
240
+ .action(cronCreateCommand);
241
+ cronCommand
242
+ .command('update <name>')
243
+ .description('Update a cron job')
244
+ .option('--schedule <cron>', 'New cron schedule')
245
+ .option('--endpoint <path>', 'New HTTP endpoint')
246
+ .option('--enabled <bool>', 'Enable or disable (true/false)')
247
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
248
+ .action(cronUpdateCommand);
249
+ cronCommand
250
+ .command('delete <name>')
251
+ .alias('rm')
252
+ .description('Delete a cron job')
253
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
254
+ .action(cronDeleteCommand);
255
+ cronCommand
256
+ .command('run <name>')
257
+ .description('Trigger a cron job manually')
258
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
259
+ .action(cronRunCommand);
260
+ cronCommand
261
+ .command('history <name>')
262
+ .description('View execution history')
263
+ .option('--limit <number>', 'Number of executions to show', '10')
264
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
265
+ .action(cronHistoryCommand);
266
+ // Make "gazill cron" (without subcommand) list cron jobs
267
+ cronCommand
268
+ .action(cronListCommand);
269
+ // Worker commands
270
+ const workerCommand = program
271
+ .command('worker')
272
+ .description('Manage background workers');
273
+ workerCommand
274
+ .command('list [project]')
275
+ .alias('ls')
276
+ .description('List workers')
277
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
278
+ .action(workerListCommand);
279
+ workerCommand
280
+ .command('create <name>')
281
+ .description('Create a worker')
282
+ .option('--command <cmd>', 'Startup command (e.g., "node worker.js")')
283
+ .option('--restart <policy>', 'Restart policy (never, on-failure, always)', 'on-failure')
284
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
285
+ .action(workerCreateCommand);
286
+ workerCommand
287
+ .command('update <name>')
288
+ .description('Update a worker')
289
+ .option('--command <cmd>', 'New startup command')
290
+ .option('--restart <policy>', 'New restart policy')
291
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
292
+ .action(workerUpdateCommand);
293
+ workerCommand
294
+ .command('delete <name>')
295
+ .alias('rm')
296
+ .description('Delete a worker')
297
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
298
+ .action(workerDeleteCommand);
299
+ workerCommand
300
+ .command('start <name>')
301
+ .description('Start a worker')
302
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
303
+ .action(workerStartCommand);
304
+ workerCommand
305
+ .command('stop <name>')
306
+ .description('Stop a worker')
307
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
308
+ .action(workerStopCommand);
309
+ workerCommand
310
+ .command('restart <name>')
311
+ .description('Restart a worker')
312
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
313
+ .action(workerRestartCommand);
314
+ workerCommand
315
+ .command('logs <name>')
316
+ .description('View worker logs')
317
+ .option('--lines <number>', 'Number of lines to show', '100')
318
+ .option('--follow', 'Follow log output (not yet supported)')
319
+ .option('--env <environment>', 'Environment (dev or prod)', 'development')
320
+ .action(workerLogsCommand);
321
+ // Make "gazill worker" (without subcommand) list workers
322
+ workerCommand
323
+ .action(workerListCommand);
324
+ // Health command
325
+ program
326
+ .command('health [project]')
327
+ .description('Show or configure health check settings')
328
+ .option('--path <path>', 'Set health check path (e.g., /healthz)')
329
+ .option('--interval <seconds>', 'Set check interval (10-300 seconds)')
330
+ .option('--timeout <seconds>', 'Set timeout (1-30 seconds)')
331
+ .option('--retries <count>', 'Set retry count (1-10)')
332
+ .action(healthCommand);
333
+ // Rollback command
334
+ program
335
+ .command('rollback')
336
+ .description('Rollback to a previous deployment')
337
+ .option('--list', 'List available rollback targets')
338
+ .option('--version <tag>', 'Rollback to a specific version')
339
+ .option('--env <environment>', 'Environment (development or production)', 'development')
340
+ .action(rollbackCommand);
341
+ // MySQL commands
342
+ const mysqlCommand = program
343
+ .command('mysql')
344
+ .description('Manage MySQL databases');
345
+ mysqlCommand
346
+ .command('create [name]')
347
+ .description('Create a new MySQL database')
348
+ .option('--size <size>', 'Database size (small|medium|large|xl)', 'small')
349
+ .option('--project <name>', 'Target project name')
350
+ .action(mysqlCreateCommand);
351
+ mysqlCommand
352
+ .command('list [project]')
353
+ .alias('ls')
354
+ .description('List MySQL databases')
355
+ .action(mysqlListCommand);
356
+ mysqlCommand
357
+ .command('connect [name]')
358
+ .description('Show connection details for a MySQL database')
359
+ .option('--project <name>', 'Target project name')
360
+ .action(mysqlConnectCommand);
361
+ mysqlCommand
362
+ .command('delete [name]')
363
+ .alias('rm')
364
+ .description('Delete a MySQL database')
365
+ .option('--project <name>', 'Target project name')
366
+ .action(mysqlDeleteCommand);
367
+ mysqlCommand
368
+ .command('resize <size> [name]')
369
+ .description('Resize a MySQL database (small|medium|large|xl)')
370
+ .option('--project <name>', 'Target project name')
371
+ .action(mysqlResizeCommand);
372
+ // Make "gazill mysql" (without subcommand) list databases
373
+ mysqlCommand
374
+ .action(mysqlListCommand);
375
+ // Redis commands
376
+ const redisCommand = program
377
+ .command('redis')
378
+ .description('Manage Redis instances');
379
+ redisCommand
380
+ .command('create [name]')
381
+ .description('Create a new Redis instance')
382
+ .option('--size <size>', 'Instance size (small|medium|large|xl)', 'small')
383
+ .option('--project <name>', 'Target project name')
384
+ .action(redisCreateCommand);
385
+ redisCommand
386
+ .command('list [project]')
387
+ .alias('ls')
388
+ .description('List Redis instances')
389
+ .action(redisListCommand);
390
+ redisCommand
391
+ .command('connect [name]')
392
+ .description('Show connection details for a Redis instance')
393
+ .option('--project <name>', 'Target project name')
394
+ .action(redisConnectCommand);
395
+ redisCommand
396
+ .command('delete [name]')
397
+ .alias('rm')
398
+ .description('Delete a Redis instance')
399
+ .option('--project <name>', 'Target project name')
400
+ .action(redisDeleteCommand);
401
+ redisCommand
402
+ .command('resize <size> [name]')
403
+ .description('Resize a Redis instance (small|medium|large|xl)')
404
+ .option('--project <name>', 'Target project name')
405
+ .action(redisResizeCommand);
406
+ // Make "gazill redis" (without subcommand) list instances
407
+ redisCommand
408
+ .action(redisListCommand);
48
409
  program.parse();
49
410
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,qCAAqC,CAAC;KAClD,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,0BAA0B,CAAC;KACvC,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,qBAAqB,CAAC;KAClC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,qDAAqD,CAAC;KAClE,MAAM,CAAC,UAAU,CAAC,CAAC;AAEtB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,uCAAuC,CAAC;KACpD,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,wDAAwD,CAAC;KACrE,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,gCAAgC,CAAC;KAC7C,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC1H,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACrI,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAClK,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrL,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAClJ,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACxM,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACxI,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAExI,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,qCAAqC,CAAC;KAClD,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,0BAA0B,CAAC;KACvC,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,qBAAqB,CAAC;KAClC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,qDAAqD,CAAC;KAClE,MAAM,CAAC,UAAU,CAAC,CAAC;AAEtB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,uCAAuC,CAAC;KACpD,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,wDAAwD,CAAC;KACrE,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,gCAAgC,CAAC;KAC7C,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,eAAe;AACf,MAAM,UAAU,GAAG,OAAO;KACvB,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,8BAA8B,CAAC,CAAC;AAE/C,UAAU;KACP,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,UAAU;KACP,OAAO,CAAC,2BAA2B,CAAC;KACpC,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,UAAU;KACP,OAAO,CAAC,wBAAwB,CAAC;KACjC,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,gCAAgC,CAAC;KAC7C,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,mBAAmB;AACnB,MAAM,cAAc,GAAG,OAAO;KAC3B,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,uBAAuB,CAAC,CAAC;AAExC,cAAc;KACX,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,qBAAqB,CAAC;KAClC,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,cAAc;KACX,OAAO,CAAC,wBAAwB,CAAC;KACjC,WAAW,CAAC,qBAAqB,CAAC;KAClC,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,cAAc;KACX,OAAO,CAAC,2BAA2B,CAAC;KACpC,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAEhC,cAAc;KACX,OAAO,CAAC,2BAA2B,CAAC;KACpC,WAAW,CAAC,gCAAgC,CAAC;KAC7C,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAEhC,qBAAqB;AACrB,MAAM,gBAAgB,GAAG,OAAO;KAC7B,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,+BAA+B,CAAC,CAAC;AAEhD,gBAAgB;KACb,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,wCAAwC,CAAC;KACrD,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAEhC,gBAAgB;KACb,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAElC,gBAAgB;KACb,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,wCAAwC,CAAC;KACrD,MAAM,CAAC,uBAAuB,CAAC,CAAC;AAEnC,gBAAgB;KACb,OAAO,CAAC,sBAAsB,CAAC;KAC/B,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAE/B,mEAAmE;AACnE,gBAAgB;KACb,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAEhC,oBAAoB;AACpB,MAAM,SAAS,GAAG,OAAO;KACtB,OAAO,CAAC,IAAI,CAAC;KACb,WAAW,CAAC,6BAA6B,CAAC,CAAC;AAE9C,SAAS;KACN,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,eAAe,EAAE,uCAAuC,EAAE,OAAO,CAAC;KACzE,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,SAAS;KACN,OAAO,CAAC,gBAAgB,CAAC;KACzB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,SAAS;KACN,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,wCAAwC,CAAC;KACrD,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,SAAS;KACN,OAAO,CAAC,eAAe,CAAC;KACxB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,mBAAmB,CAAC;KAChC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,SAAS;KACN,OAAO,CAAC,sBAAsB,CAAC;KAC/B,WAAW,CAAC,2CAA2C,CAAC;KACxD,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,8BAA8B;AAC9B,MAAM,eAAe,GAAG,SAAS;KAC9B,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,yBAAyB,CAAC,CAAC;AAE1C,eAAe;KACZ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAEjC,eAAe;KACZ,OAAO,CAAC,aAAa,CAAC;KACtB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAE/B,uDAAuD;AACvD,SAAS;KACN,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,wBAAwB;AACxB,MAAM,WAAW,GAAG,OAAO;KACxB,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,6BAA6B,CAAC,CAAC;AAE9C,WAAW;KACR,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,WAAW;KACR,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,WAAW;KACR,OAAO,CAAC,gBAAgB,CAAC;KACzB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,WAAW;KACR,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,+BAA+B,CAAC;KAC5C,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,eAAe,EAAE,oCAAoC,CAAC;KAC7D,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;KAChD,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,WAAW;KACR,OAAO,CAAC,mBAAmB,CAAC;KAC5B,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,iCAAiC,CAAC;KAC9C,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC;KAC5C,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,WAAW;KACR,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC;KAC5C,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,WAAW;KACR,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,WAAW;KACR,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,iCAAiC,CAAC;KAC9C,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,oDAAoD;AACpD,WAAW;KACR,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,oBAAoB;AACpB,MAAM,WAAW,GAAG,OAAO;KACxB,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,oCAAoC,CAAC,CAAC;AAErD,WAAW;KACR,OAAO,CAAC,gBAAgB,CAAC;KACzB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,WAAW;KACR,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,mBAAmB,CAAC;KAChC,MAAM,CAAC,mBAAmB,EAAE,mCAAmC,CAAC;KAChE,MAAM,CAAC,mBAAmB,EAAE,2CAA2C,CAAC;KACxE,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC;KAC1D,MAAM,CAAC,qBAAqB,EAAE,oBAAoB,CAAC;KACnD,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,WAAW;KACR,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,mBAAmB,CAAC;KAChC,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;KAChD,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;KAChD,MAAM,CAAC,kBAAkB,EAAE,gCAAgC,CAAC;KAC5D,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,WAAW;KACR,OAAO,CAAC,eAAe,CAAC;KACxB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,mBAAmB,CAAC;KAChC,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,WAAW;KACR,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,WAAW;KACR,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,kBAAkB,EAAE,8BAA8B,EAAE,IAAI,CAAC;KAChE,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,yDAAyD;AACzD,WAAW;KACR,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,kBAAkB;AAClB,MAAM,aAAa,GAAG,OAAO;KAC1B,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,2BAA2B,CAAC,CAAC;AAE5C,aAAa;KACV,OAAO,CAAC,gBAAgB,CAAC;KACzB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,cAAc,CAAC;KAC3B,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,aAAa;KACV,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,iBAAiB,CAAC;KAC9B,MAAM,CAAC,iBAAiB,EAAE,0CAA0C,CAAC;KACrE,MAAM,CAAC,oBAAoB,EAAE,4CAA4C,EAAE,YAAY,CAAC;KACxF,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAE/B,aAAa;KACV,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,iBAAiB,CAAC;KAC9B,MAAM,CAAC,iBAAiB,EAAE,qBAAqB,CAAC;KAChD,MAAM,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;KAClD,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAE/B,aAAa;KACV,OAAO,CAAC,eAAe,CAAC;KACxB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,iBAAiB,CAAC;KAC9B,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAE/B,aAAa;KACV,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,aAAa;KACV,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,eAAe,CAAC;KAC5B,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,aAAa;KACV,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,kBAAkB,CAAC;KAC/B,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAEhC,aAAa;KACV,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,kBAAkB,CAAC;KAC/B,MAAM,CAAC,kBAAkB,EAAE,yBAAyB,EAAE,KAAK,CAAC;KAC5D,MAAM,CAAC,UAAU,EAAE,uCAAuC,CAAC;KAC3D,MAAM,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACzE,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,yDAAyD;AACzD,aAAa;KACV,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,iBAAiB;AACjB,OAAO;KACJ,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,eAAe,EAAE,wCAAwC,CAAC;KACjE,MAAM,CAAC,sBAAsB,EAAE,qCAAqC,CAAC;KACrE,MAAM,CAAC,qBAAqB,EAAE,4BAA4B,CAAC;KAC3D,MAAM,CAAC,mBAAmB,EAAE,wBAAwB,CAAC;KACrD,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,mBAAmB;AACnB,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,QAAQ,EAAE,iCAAiC,CAAC;KACnD,MAAM,CAAC,iBAAiB,EAAE,gCAAgC,CAAC;KAC3D,MAAM,CAAC,qBAAqB,EAAE,yCAAyC,EAAE,aAAa,CAAC;KACvF,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,iBAAiB;AACjB,MAAM,YAAY,GAAG,OAAO;KACzB,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,wBAAwB,CAAC,CAAC;AAEzC,YAAY;KACT,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,eAAe,EAAE,uCAAuC,EAAE,OAAO,CAAC;KACzE,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,YAAY;KACT,OAAO,CAAC,gBAAgB,CAAC;KACzB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,sBAAsB,CAAC;KACnC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,YAAY;KACT,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAE/B,YAAY;KACT,OAAO,CAAC,eAAe,CAAC;KACxB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,YAAY;KACT,OAAO,CAAC,sBAAsB,CAAC;KAC/B,WAAW,CAAC,iDAAiD,CAAC;KAC9D,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,0DAA0D;AAC1D,YAAY;KACT,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,iBAAiB;AACjB,MAAM,YAAY,GAAG,OAAO;KACzB,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,wBAAwB,CAAC,CAAC;AAEzC,YAAY;KACT,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,eAAe,EAAE,uCAAuC,EAAE,OAAO,CAAC;KACzE,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,YAAY;KACT,OAAO,CAAC,gBAAgB,CAAC;KACzB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,sBAAsB,CAAC;KACnC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,YAAY;KACT,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAE/B,YAAY;KACT,OAAO,CAAC,eAAe,CAAC;KACxB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,YAAY;KACT,OAAO,CAAC,sBAAsB,CAAC;KAC/B,WAAW,CAAC,iDAAiD,CAAC;KAC9D,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE9B,0DAA0D;AAC1D,YAAY;KACT,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO,CAAC,KAAK,EAAE,CAAC"}
package/dist/lib/api.d.ts CHANGED
@@ -16,14 +16,58 @@ export interface UsageResponse {
16
16
  year: number;
17
17
  month: number;
18
18
  totalPodHours: number;
19
- freeHoursRemaining: number;
20
- freeHoursTotal: number;
21
19
  billableHours: number;
22
20
  currentCost: string;
23
21
  estimatedMonthlyCost: string;
24
22
  };
23
+ freeCredit: {
24
+ total: number;
25
+ used: number;
26
+ remaining: number;
27
+ };
25
28
  currentHourlyRate: string;
26
29
  hasPaymentMethod: boolean;
27
30
  }
28
31
  export declare function getUsage(): Promise<UsageResponse>;
32
+ export interface PaymentMethodResponse {
33
+ hasPaymentMethod: boolean;
34
+ card?: {
35
+ brand: string;
36
+ last4: string;
37
+ };
38
+ }
39
+ export declare function getPaymentMethod(): Promise<PaymentMethodResponse>;
40
+ export interface AutoscaleResponse {
41
+ project: {
42
+ id: string;
43
+ name: string;
44
+ prodPodSize: string;
45
+ maxPodSize: string;
46
+ };
47
+ autoscalingEnabled: boolean;
48
+ message: string;
49
+ }
50
+ export declare function setAutoscale(projectId: string, maxPodSize: string): Promise<AutoscaleResponse>;
51
+ export interface LimitsResponse {
52
+ uniqueVisitors: {
53
+ used: number;
54
+ limit: number;
55
+ };
56
+ bandwidth: {
57
+ used: number;
58
+ limit: number;
59
+ resetsAt: string | null;
60
+ };
61
+ storage?: {
62
+ used: number;
63
+ limit: number;
64
+ };
65
+ concurrent: {
66
+ current: number;
67
+ limit: number;
68
+ };
69
+ sleeping: boolean;
70
+ lastRequestAt: string | null;
71
+ }
72
+ export declare function getLimits(projectId: string): Promise<LimitsResponse>;
29
73
  //# sourceMappingURL=api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,YAAY,EAEZ,UAAU,EACX,MAAM,oBAAoB,CAAC;AAyC5B,wBAAsB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAMnF;AAED,wBAAsB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAMnF;AAGD,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAKhF;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAIjE;AAED,wBAAsB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAIhH;AAED,wBAAsB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI7D;AAED,wBAAsB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAIzE;AAGD,wBAAsB,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAK5F;AAED,wBAAsB,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,GAAE,MAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAI3F;AAGD,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,EAAE,MAAM,CAAC;QACtB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,oBAAoB,EAAE,MAAM,CAAC;KAC9B,CAAC;IACF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,CAIvD"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"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"}
package/dist/lib/api.js CHANGED
@@ -82,4 +82,20 @@ export async function getUsage() {
82
82
  method: 'GET',
83
83
  });
84
84
  }
85
+ export async function getPaymentMethod() {
86
+ return request('/api/billing/payment-method', {
87
+ method: 'GET',
88
+ });
89
+ }
90
+ export async function setAutoscale(projectId, maxPodSize) {
91
+ return request(`/api/projects/${projectId}/autoscale`, {
92
+ method: 'PATCH',
93
+ body: { maxPodSize },
94
+ });
95
+ }
96
+ export async function getLimits(projectId) {
97
+ return request(`/api/projects/${projectId}/limits`, {
98
+ method: 'GET',
99
+ });
100
+ }
85
101
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,12 @@ export declare const MIN_PROJECT_NAME_LENGTH = 3;
8
8
  export declare const MAX_PROJECTS_PER_USER = 10;
9
9
  export declare const MAX_FILE_SIZE_BYTES: number;
10
10
  export declare const MAX_FILES_PER_DEPLOY = 1000;
11
+ export declare const DEV_MAX_CONCURRENT_VISITORS = 3;
12
+ export declare const DEV_MAX_UNIQUE_VISITORS = 50;
13
+ export declare const DEV_MAX_BANDWIDTH_BYTES: number;
14
+ export declare const DEV_MAX_STORAGE_BYTES: number;
15
+ export declare const DEV_SLEEP_AFTER_MINUTES = 30;
16
+ export declare const DEV_AUTO_DELETE_DAYS = 90;
11
17
  export declare const CONTAINER_MEMORY_LIMIT = "512m";
12
18
  export declare const CONTAINER_CPU_LIMIT = "0.5";
13
19
  export declare const CONTAINER_RESTART_POLICY = "unless-stopped";
@@ -25,4 +31,8 @@ export declare const PROJECT_STATUSES: readonly ["pending", "building", "running
25
31
  export type ProjectStatus = typeof PROJECT_STATUSES[number];
26
32
  export declare const DEPLOYMENT_STATUSES: readonly ["pending", "building", "deploying", "success", "failed"];
27
33
  export type DeploymentStatus = typeof DEPLOYMENT_STATUSES[number];
34
+ export declare const POD_SIZES: readonly ["small", "medium", "large", "xl"];
35
+ export type PodSize = typeof POD_SIZES[number];
36
+ export declare const HEALTH_CHECK_STATUSES: readonly ["healthy", "unhealthy", "unknown"];
37
+ export type HealthCheckStatus = typeof HEALTH_CHECK_STATUSES[number];
28
38
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/shared/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY,0BAA0B,CAAC;AACpD,eAAO,MAAM,WAAW,OAAO,CAAC;AAGhC,eAAO,MAAM,UAAU,mBAAmB,CAAC;AAC3C,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,eAAO,MAAM,WAAW,cAAc,CAAC;AAGvC,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,mBAAmB,QAAmB,CAAC;AACpD,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAGzC,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAC7C,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AACzC,eAAO,MAAM,wBAAwB,mBAAmB,CAAC;AAGzD,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,cAAc,OAAO,CAAC;AAGnC,eAAO,MAAM,oBAAoB,QAAiB,CAAC;AACnD,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,2BAA2B,QAAY,CAAC;AACrD,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAGjD,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,gBAAgB,QAAgB,CAAC;AAG9C,eAAO,MAAM,mBAAmB,oEAAqE,CAAC;AACtG,MAAM,MAAM,iBAAiB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAGnE,eAAO,MAAM,gBAAgB,iEAAkE,CAAC;AAChG,MAAM,MAAM,aAAa,GAAG,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAG5D,eAAO,MAAM,mBAAmB,oEAAqE,CAAC;AACtG,MAAM,MAAM,gBAAgB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/shared/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY,0BAA0B,CAAC;AACpD,eAAO,MAAM,WAAW,OAAO,CAAC;AAGhC,eAAO,MAAM,UAAU,mBAAmB,CAAC;AAC3C,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,eAAO,MAAM,WAAW,cAAc,CAAC;AAGvC,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,mBAAmB,QAAmB,CAAC;AACpD,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAGzC,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,uBAAuB,QAAyB,CAAC;AAC9D,eAAO,MAAM,qBAAqB,QAAoB,CAAC;AACvD,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAGvC,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAC7C,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AACzC,eAAO,MAAM,wBAAwB,mBAAmB,CAAC;AAGzD,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,cAAc,OAAO,CAAC;AAGnC,eAAO,MAAM,oBAAoB,QAAiB,CAAC;AACnD,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,2BAA2B,QAAY,CAAC;AACrD,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAGjD,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,gBAAgB,QAAgB,CAAC;AAG9C,eAAO,MAAM,mBAAmB,oEAAqE,CAAC;AACtG,MAAM,MAAM,iBAAiB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAGnE,eAAO,MAAM,gBAAgB,iEAAkE,CAAC;AAChG,MAAM,MAAM,aAAa,GAAG,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAG5D,eAAO,MAAM,mBAAmB,oEAAqE,CAAC;AACtG,MAAM,MAAM,gBAAgB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAGlE,eAAO,MAAM,SAAS,6CAA8C,CAAC;AACrE,MAAM,MAAM,OAAO,GAAG,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;AAG/C,eAAO,MAAM,qBAAqB,8CAA+C,CAAC;AAClF,MAAM,MAAM,iBAAiB,GAAG,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC"}
@@ -11,6 +11,13 @@ export const MIN_PROJECT_NAME_LENGTH = 3;
11
11
  export const MAX_PROJECTS_PER_USER = 10;
12
12
  export const MAX_FILE_SIZE_BYTES = 10 * 1024 * 1024; // 10MB
13
13
  export const MAX_FILES_PER_DEPLOY = 1000;
14
+ // Development Environment Limits
15
+ export const DEV_MAX_CONCURRENT_VISITORS = 3;
16
+ export const DEV_MAX_UNIQUE_VISITORS = 50;
17
+ export const DEV_MAX_BANDWIDTH_BYTES = 2 * 1024 * 1024 * 1024; // 2GB
18
+ export const DEV_MAX_STORAGE_BYTES = 100 * 1024 * 1024; // 100MB SQLite storage
19
+ export const DEV_SLEEP_AFTER_MINUTES = 30;
20
+ export const DEV_AUTO_DELETE_DAYS = 90;
14
21
  // Container Limits
15
22
  export const CONTAINER_MEMORY_LIMIT = '512m';
16
23
  export const CONTAINER_CPU_LIMIT = '0.5';
@@ -32,4 +39,8 @@ export const SUPPORTED_LANGUAGES = ['node', 'bun', 'deno', 'python', 'go', 'rust
32
39
  export const PROJECT_STATUSES = ['pending', 'building', 'running', 'stopped', 'error'];
33
40
  // Deployment Status
34
41
  export const DEPLOYMENT_STATUSES = ['pending', 'building', 'deploying', 'success', 'failed'];
42
+ // Pod Sizes
43
+ export const POD_SIZES = ['small', 'medium', 'large', 'xl'];
44
+ // Health Check Status
45
+ export const HEALTH_CHECK_STATUSES = ['healthy', 'unhealthy', 'unknown'];
35
46
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/shared/constants.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,MAAM,YAAY,GAAG,uBAAuB,CAAC;AACpD,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC;AAEhC,uBAAuB;AACvB,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAG,uBAAuB;AACrE,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC,CAAM,sBAAsB;AACpE,MAAM,CAAC,MAAM,WAAW,GAAG,WAAW,CAAC,CAAO,mBAAmB;AAEjE,iBAAiB;AACjB,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AACzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAEzC,mBAAmB;AACnB,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAC7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AACzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,gBAAgB,CAAC;AAEzD,kBAAkB;AAClB,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AAEnC,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AACjE,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW;AACjE,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAEjD,aAAa;AACb,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;AAE3D,sBAAsB;AACtB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAC;AAGtG,iBAAiB;AACjB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAGhG,oBAAoB;AACpB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAU,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/shared/constants.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,MAAM,YAAY,GAAG,uBAAuB,CAAC;AACpD,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC;AAEhC,uBAAuB;AACvB,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAG,uBAAuB;AACrE,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC,CAAM,sBAAsB;AACpE,MAAM,CAAC,MAAM,WAAW,GAAG,WAAW,CAAC,CAAO,mBAAmB;AAEjE,iBAAiB;AACjB,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AACzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACxC,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAEzC,iCAAiC;AACjC,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAC7C,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,MAAM;AACrE,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,uBAAuB;AAC/E,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEvC,mBAAmB;AACnB,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAC7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AACzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,gBAAgB,CAAC;AAEzD,kBAAkB;AAClB,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AAEnC,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AACjE,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW;AACjE,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAEjD,aAAa;AACb,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;AAE3D,sBAAsB;AACtB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAC;AAGtG,iBAAiB;AACjB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAGhG,oBAAoB;AACpB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAU,CAAC;AAGtG,YAAY;AACZ,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAU,CAAC;AAGrE,sBAAsB;AACtB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAU,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ProjectStatus, DeploymentStatus, SupportedLanguage } from './constants.js';
1
+ import type { ProjectStatus, DeploymentStatus, SupportedLanguage, PodSize, HealthCheckStatus } from './constants.js';
2
2
  export interface User {
3
3
  id: string;
4
4
  email: string;
@@ -31,13 +31,46 @@ export interface Project {
31
31
  devPort: number;
32
32
  devContainerId: string | null;
33
33
  devStatus: ProjectStatus;
34
+ uniqueVisitorCount: number;
35
+ monthlyBandwidthUsed: number;
36
+ bandwidthResetAt: Date | null;
37
+ lastRequestAt: Date | null;
38
+ isSleeping: boolean;
39
+ lastDeployAt: Date | null;
34
40
  prodPort: number | null;
35
41
  prodContainerId: string | null;
36
42
  prodStatus: ProjectStatus | null;
37
43
  promotedAt: Date | null;
44
+ prodPodSize: PodSize | null;
45
+ maxPodSize: PodSize | null;
46
+ lastScaledAt: Date | null;
47
+ healthCheckPath: string | null;
48
+ healthCheckIntervalSeconds: number | null;
49
+ healthCheckTimeoutSeconds: number | null;
50
+ healthCheckRetries: number | null;
51
+ lastHealthCheckAt: Date | null;
52
+ healthCheckStatus: HealthCheckStatus | null;
53
+ consecutiveHealthFailures: number | null;
38
54
  createdAt: Date;
39
55
  updatedAt: Date;
40
56
  }
57
+ export interface DevLimitsResponse {
58
+ uniqueVisitors: {
59
+ used: number;
60
+ limit: number;
61
+ };
62
+ bandwidth: {
63
+ used: number;
64
+ limit: number;
65
+ resetsAt: string | null;
66
+ };
67
+ concurrent: {
68
+ current: number;
69
+ limit: number;
70
+ };
71
+ sleeping: boolean;
72
+ lastRequestAt: string | null;
73
+ }
41
74
  export interface CreateProjectRequest {
42
75
  name: string;
43
76
  }
@@ -59,6 +92,12 @@ export interface Deployment {
59
92
  buildTimeMs: number | null;
60
93
  errorMessage: string | null;
61
94
  createdAt: Date;
95
+ imageTag: string | null;
96
+ isRollbackTarget: boolean;
97
+ isRollback: boolean;
98
+ retryCount: number;
99
+ previousContainerId: string | null;
100
+ triggeredRollback: boolean;
62
101
  }
63
102
  export interface DeployFile {
64
103
  path: string;