@brimble/models 3.8.45 → 3.8.47

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 (387) hide show
  1. package/dist/activity-log.d.ts +9 -0
  2. package/dist/activity-log.js +61 -0
  3. package/dist/app-message.d.ts +9 -0
  4. package/dist/app-message.js +14 -0
  5. package/dist/auto-scaling.d.ts +9 -0
  6. package/dist/auto-scaling.js +63 -0
  7. package/dist/card.d.ts +9 -0
  8. package/dist/card.js +41 -0
  9. package/dist/cashier_subscription.d.ts +9 -0
  10. package/dist/cashier_subscription.js +27 -0
  11. package/dist/cashier_subscription_item.d.ts +9 -0
  12. package/dist/cashier_subscription_item.js +17 -0
  13. package/dist/collab-annotation.d.ts +9 -0
  14. package/dist/collab-annotation.js +31 -0
  15. package/dist/collab-comment.d.ts +9 -0
  16. package/dist/collab-comment.js +19 -0
  17. package/dist/collab-integration.d.ts +9 -0
  18. package/dist/collab-integration.js +17 -0
  19. package/dist/collab-push-subscription.d.ts +9 -0
  20. package/dist/collab-push-subscription.js +14 -0
  21. package/dist/collab-settings.d.ts +9 -0
  22. package/dist/collab-settings.js +24 -0
  23. package/dist/collab-share-token.d.ts +9 -0
  24. package/dist/collab-share-token.js +11 -0
  25. package/dist/compute.d.ts +9 -0
  26. package/dist/compute.js +82 -0
  27. package/dist/db-image.d.ts +9 -0
  28. package/dist/db-image.js +67 -0
  29. package/dist/domain/dns.d.ts +9 -0
  30. package/dist/domain/dns.js +33 -0
  31. package/dist/domain/index.d.ts +9 -0
  32. package/dist/domain/index.js +109 -0
  33. package/dist/domain/renewal.d.ts +9 -0
  34. package/dist/domain/renewal.js +21 -0
  35. package/dist/domain/transfer.d.ts +9 -0
  36. package/dist/domain/transfer.js +99 -0
  37. package/dist/enum/index.d.ts +271 -0
  38. package/dist/enum/index.js +319 -0
  39. package/dist/env.d.ts +9 -0
  40. package/dist/env.js +34 -0
  41. package/dist/environment-variable.d.ts +9 -0
  42. package/dist/environment-variable.js +16 -0
  43. package/dist/follower.d.ts +9 -0
  44. package/dist/follower.js +15 -0
  45. package/dist/following.d.ts +9 -0
  46. package/dist/following.js +15 -0
  47. package/dist/framework.d.ts +9 -0
  48. package/dist/framework.js +84 -0
  49. package/dist/idempotency.d.ts +9 -0
  50. package/{idempotency.ts → dist/idempotency.js} +8 -13
  51. package/{index.ts → dist/index.d.ts} +6 -174
  52. package/dist/index.js +232 -0
  53. package/dist/integration.d.ts +9 -0
  54. package/dist/integration.js +35 -0
  55. package/dist/intention.d.ts +9 -0
  56. package/dist/intention.js +36 -0
  57. package/dist/invoice.d.ts +9 -0
  58. package/dist/invoice.js +28 -0
  59. package/dist/job.d.ts +10 -0
  60. package/dist/job.js +62 -0
  61. package/dist/license.d.ts +9 -0
  62. package/dist/license.js +75 -0
  63. package/dist/load-balancer-port.d.ts +9 -0
  64. package/dist/load-balancer-port.js +27 -0
  65. package/dist/logs.d.ts +9 -0
  66. package/dist/logs.js +40 -0
  67. package/dist/member-permission.d.ts +9 -0
  68. package/dist/member-permission.js +9 -0
  69. package/dist/member.d.ts +9 -0
  70. package/dist/member.js +40 -0
  71. package/dist/object-storage-usage-segment.d.ts +9 -0
  72. package/dist/object-storage-usage-segment.js +46 -0
  73. package/dist/ownership-transfer.d.ts +9 -0
  74. package/dist/ownership-transfer.js +35 -0
  75. package/dist/permission.d.ts +9 -0
  76. package/dist/permission.js +12 -0
  77. package/dist/plan_configuration.d.ts +10 -0
  78. package/{plan_configuration.ts → dist/plan_configuration.js} +13 -21
  79. package/dist/project/connection.d.ts +9 -0
  80. package/dist/project/connection.js +14 -0
  81. package/dist/project/index.d.ts +16 -0
  82. package/dist/project/index.js +256 -0
  83. package/dist/project/preview.d.ts +9 -0
  84. package/dist/project/preview.js +37 -0
  85. package/dist/project-environment.d.ts +9 -0
  86. package/dist/project-environment.js +13 -0
  87. package/dist/project-tag-assignment.d.ts +9 -0
  88. package/dist/project-tag-assignment.js +32 -0
  89. package/dist/project_analytics.d.ts +9 -0
  90. package/dist/project_analytics.js +18 -0
  91. package/dist/provider.d.ts +9 -0
  92. package/dist/provider.js +10 -0
  93. package/dist/region.d.ts +9 -0
  94. package/dist/region.js +17 -0
  95. package/dist/role.d.ts +9 -0
  96. package/dist/role.js +11 -0
  97. package/dist/sandbox-activity.d.ts +9 -0
  98. package/dist/sandbox-activity.js +49 -0
  99. package/dist/sandbox-image.d.ts +9 -0
  100. package/dist/sandbox-image.js +31 -0
  101. package/dist/sandbox-snapshot-usage-segment.d.ts +9 -0
  102. package/dist/sandbox-snapshot-usage-segment.js +49 -0
  103. package/dist/sandbox-snapshot.d.ts +9 -0
  104. package/dist/sandbox-snapshot.js +51 -0
  105. package/dist/sandbox-usage-segment.d.ts +9 -0
  106. package/dist/sandbox-usage-segment.js +57 -0
  107. package/dist/sandbox.d.ts +9 -0
  108. package/dist/sandbox.js +132 -0
  109. package/dist/server.d.ts +9 -0
  110. package/dist/server.js +101 -0
  111. package/dist/settings.d.ts +9 -0
  112. package/dist/settings.js +49 -0
  113. package/dist/storage.d.ts +36 -0
  114. package/dist/storage.js +82 -0
  115. package/dist/subscription.d.ts +9 -0
  116. package/dist/subscription.js +82 -0
  117. package/dist/tag.d.ts +9 -0
  118. package/dist/tag.js +29 -0
  119. package/dist/team.d.ts +9 -0
  120. package/dist/team.js +82 -0
  121. package/dist/token.d.ts +9 -0
  122. package/dist/token.js +36 -0
  123. package/dist/types/activity-log.d.ts +18 -0
  124. package/dist/types/activity-log.js +2 -0
  125. package/dist/types/app-message.d.ts +15 -0
  126. package/dist/types/app-message.js +2 -0
  127. package/dist/types/auto-scaling-group.d.ts +20 -0
  128. package/dist/types/auto-scaling-group.js +2 -0
  129. package/dist/types/card.d.ts +12 -0
  130. package/dist/types/card.js +2 -0
  131. package/dist/types/cashier_subscription.d.ts +27 -0
  132. package/dist/types/cashier_subscription.js +2 -0
  133. package/dist/types/collab-annotation.d.ts +27 -0
  134. package/dist/types/collab-annotation.js +2 -0
  135. package/dist/types/collab-comment.d.ts +20 -0
  136. package/dist/types/collab-comment.js +2 -0
  137. package/{types/collab-integration.ts → dist/types/collab-integration.d.ts} +7 -8
  138. package/dist/types/collab-integration.js +2 -0
  139. package/dist/types/collab-push-subscription.d.ts +12 -0
  140. package/dist/types/collab-push-subscription.js +2 -0
  141. package/dist/types/collab-settings.d.ts +16 -0
  142. package/dist/types/collab-settings.js +2 -0
  143. package/{types/collab-share-token.ts → dist/types/collab-share-token.d.ts} +7 -8
  144. package/dist/types/collab-share-token.js +2 -0
  145. package/dist/types/compute.d.ts +48 -0
  146. package/dist/types/compute.js +2 -0
  147. package/dist/types/db-image.d.ts +25 -0
  148. package/dist/types/db-image.js +2 -0
  149. package/dist/types/domain/dns.d.ts +12 -0
  150. package/dist/types/domain/dns.js +2 -0
  151. package/dist/types/domain/index.d.ts +35 -0
  152. package/dist/types/domain/index.js +2 -0
  153. package/{types/domain/renewal.ts → dist/types/domain/renewal.d.ts} +0 -1
  154. package/dist/types/domain/renewal.js +2 -0
  155. package/dist/types/domain/transfer.d.ts +27 -0
  156. package/dist/types/domain/transfer.js +2 -0
  157. package/dist/types/env.d.ts +13 -0
  158. package/dist/types/env.js +2 -0
  159. package/{types/environment-variable.ts → dist/types/environment-variable.d.ts} +7 -8
  160. package/dist/types/environment-variable.js +2 -0
  161. package/{types/following.ts → dist/types/following.d.ts} +2 -3
  162. package/dist/types/following.js +2 -0
  163. package/dist/types/framework.d.ts +39 -0
  164. package/dist/types/framework.js +2 -0
  165. package/dist/types/git.d.ts +14 -0
  166. package/dist/types/git.js +2 -0
  167. package/dist/types/idempotency.d.ts +10 -0
  168. package/dist/types/idempotency.js +2 -0
  169. package/{types/index.ts → dist/types/index.d.ts} +5 -26
  170. package/dist/types/index.js +2 -0
  171. package/{types/installed_integration.ts → dist/types/installed_integration.d.ts} +3 -6
  172. package/dist/types/installed_integration.js +2 -0
  173. package/dist/types/integration.d.ts +14 -0
  174. package/dist/types/integration.js +2 -0
  175. package/dist/types/intention.d.ts +13 -0
  176. package/dist/types/intention.js +2 -0
  177. package/dist/types/invoice.d.ts +15 -0
  178. package/dist/types/invoice.js +2 -0
  179. package/dist/types/job.d.ts +19 -0
  180. package/dist/types/job.js +2 -0
  181. package/dist/types/license.d.ts +18 -0
  182. package/dist/types/license.js +2 -0
  183. package/{types/load-balancer-port.ts → dist/types/load-balancer-port.d.ts} +7 -8
  184. package/dist/types/load-balancer-port.js +2 -0
  185. package/dist/types/logs.d.ts +35 -0
  186. package/dist/types/logs.js +2 -0
  187. package/{types/member-permission.ts → dist/types/member-permission.d.ts} +3 -6
  188. package/dist/types/member-permission.js +2 -0
  189. package/dist/types/member.d.ts +18 -0
  190. package/dist/types/member.js +2 -0
  191. package/dist/types/object-storage-usage-segment.d.ts +23 -0
  192. package/dist/types/object-storage-usage-segment.js +2 -0
  193. package/dist/types/ownership-transfer.d.ts +12 -0
  194. package/dist/types/ownership-transfer.js +2 -0
  195. package/{types/permission.ts → dist/types/permission.d.ts} +8 -14
  196. package/dist/types/permission.js +2 -0
  197. package/dist/types/plan_configuration.d.ts +55 -0
  198. package/dist/types/plan_configuration.js +2 -0
  199. package/{types/project/connection.ts → dist/types/project/connection.d.ts} +2 -3
  200. package/dist/types/project/connection.js +2 -0
  201. package/dist/types/project/index.d.ts +100 -0
  202. package/dist/types/project/index.js +2 -0
  203. package/dist/types/project/preview.d.ts +21 -0
  204. package/dist/types/project/preview.js +2 -0
  205. package/dist/types/project-environment.d.ts +13 -0
  206. package/dist/types/project-environment.js +2 -0
  207. package/{types/project-tag-assignment.ts → dist/types/project-tag-assignment.d.ts} +6 -7
  208. package/dist/types/project-tag-assignment.js +2 -0
  209. package/dist/types/project_analytics.d.ts +11 -0
  210. package/dist/types/project_analytics.js +2 -0
  211. package/{types/provider.ts → dist/types/provider.d.ts} +4 -5
  212. package/dist/types/provider.js +2 -0
  213. package/dist/types/region.d.ts +15 -0
  214. package/dist/types/region.js +2 -0
  215. package/{types/role.ts → dist/types/role.d.ts} +4 -8
  216. package/dist/types/role.js +2 -0
  217. package/dist/types/sandbox-activity.d.ts +14 -0
  218. package/dist/types/sandbox-activity.js +2 -0
  219. package/dist/types/sandbox-image.d.ts +9 -0
  220. package/dist/types/sandbox-image.js +2 -0
  221. package/dist/types/sandbox-snapshot-usage-segment.d.ts +16 -0
  222. package/dist/types/sandbox-snapshot-usage-segment.js +2 -0
  223. package/dist/types/sandbox-snapshot.d.ts +16 -0
  224. package/dist/types/sandbox-snapshot.js +2 -0
  225. package/dist/types/sandbox-usage-segment.d.ts +25 -0
  226. package/dist/types/sandbox-usage-segment.js +2 -0
  227. package/dist/types/sandbox.d.ts +41 -0
  228. package/dist/types/sandbox.js +2 -0
  229. package/dist/types/server.d.ts +32 -0
  230. package/dist/types/server.js +2 -0
  231. package/dist/types/settings.d.ts +11 -0
  232. package/dist/types/settings.js +2 -0
  233. package/dist/types/storage.d.ts +79 -0
  234. package/dist/types/storage.js +2 -0
  235. package/dist/types/subscription.d.ts +33 -0
  236. package/dist/types/subscription.js +2 -0
  237. package/{types/tag.ts → dist/types/tag.d.ts} +6 -7
  238. package/dist/types/tag.js +2 -0
  239. package/dist/types/team.d.ts +24 -0
  240. package/dist/types/team.js +2 -0
  241. package/{types/token.ts → dist/types/token.d.ts} +6 -7
  242. package/dist/types/token.js +2 -0
  243. package/dist/types/user.d.ts +44 -0
  244. package/dist/types/user.js +2 -0
  245. package/dist/types/volume-usage-segment.d.ts +16 -0
  246. package/dist/types/volume-usage-segment.js +2 -0
  247. package/dist/types/volume.d.ts +20 -0
  248. package/dist/types/volume.js +2 -0
  249. package/dist/types/wallet.d.ts +8 -0
  250. package/dist/types/wallet.js +2 -0
  251. package/{types/webhook-category.ts → dist/types/webhook-category.d.ts} +1 -2
  252. package/dist/types/webhook-category.js +2 -0
  253. package/{types/webhook-event.ts → dist/types/webhook-event.d.ts} +1 -2
  254. package/dist/types/webhook-event.js +2 -0
  255. package/{types/webhook-setting.ts → dist/types/webhook-setting.d.ts} +1 -2
  256. package/dist/types/webhook-setting.js +2 -0
  257. package/dist/user.d.ts +9 -0
  258. package/dist/user.js +70 -0
  259. package/dist/volume-usage-segment.d.ts +9 -0
  260. package/dist/volume-usage-segment.js +46 -0
  261. package/dist/volume.d.ts +9 -0
  262. package/dist/volume.js +48 -0
  263. package/dist/wallet.d.ts +9 -0
  264. package/dist/wallet.js +26 -0
  265. package/dist/webhook-category.d.ts +9 -0
  266. package/dist/webhook-category.js +10 -0
  267. package/dist/webhook-event.d.ts +9 -0
  268. package/dist/webhook-event.js +19 -0
  269. package/dist/webhook-setting.d.ts +9 -0
  270. package/dist/webhook-setting.js +50 -0
  271. package/package.json +6 -2
  272. package/.claude/settings.local.json +0 -7
  273. package/.eslintrc.js +0 -26
  274. package/.prettierrc +0 -4
  275. package/activity-log.ts +0 -66
  276. package/app-message.ts +0 -18
  277. package/auto-scaling.ts +0 -72
  278. package/card.ts +0 -45
  279. package/cashier_subscription.ts +0 -35
  280. package/cashier_subscription_item.ts +0 -25
  281. package/collab-annotation.ts +0 -36
  282. package/collab-comment.ts +0 -27
  283. package/collab-integration.ts +0 -21
  284. package/collab-push-subscription.ts +0 -19
  285. package/collab-settings.ts +0 -29
  286. package/collab-share-token.ts +0 -15
  287. package/compute.ts +0 -88
  288. package/db-image.ts +0 -71
  289. package/domain/dns.ts +0 -34
  290. package/domain/index.ts +0 -113
  291. package/domain/renewal.ts +0 -25
  292. package/domain/transfer.ts +0 -112
  293. package/enum/index.ts +0 -315
  294. package/env.ts +0 -38
  295. package/environment-variable.ts +0 -21
  296. package/follower.ts +0 -19
  297. package/following.ts +0 -19
  298. package/framework.ts +0 -88
  299. package/integration.ts +0 -39
  300. package/intention.ts +0 -40
  301. package/invoice.ts +0 -36
  302. package/job.ts +0 -30
  303. package/load-balancer-port.ts +0 -31
  304. package/logs.ts +0 -44
  305. package/member-permission.ts +0 -13
  306. package/member.ts +0 -44
  307. package/object-storage-usage-segment.ts +0 -59
  308. package/ownership-transfer.ts +0 -42
  309. package/permission.ts +0 -13
  310. package/project/connection.ts +0 -21
  311. package/project/index.ts +0 -264
  312. package/project/preview.ts +0 -41
  313. package/project-environment.ts +0 -18
  314. package/project-tag-assignment.ts +0 -40
  315. package/project_analytics.ts +0 -26
  316. package/provider.ts +0 -11
  317. package/region.ts +0 -18
  318. package/role.ts +0 -12
  319. package/sandbox-activity.ts +0 -53
  320. package/sandbox-image.ts +0 -35
  321. package/sandbox-snapshot-usage-segment.ts +0 -61
  322. package/sandbox-snapshot.ts +0 -55
  323. package/sandbox-usage-segment.ts +0 -69
  324. package/sandbox.ts +0 -134
  325. package/server.ts +0 -105
  326. package/settings.ts +0 -53
  327. package/storage.ts +0 -117
  328. package/subscription.ts +0 -86
  329. package/tag.ts +0 -34
  330. package/team.ts +0 -86
  331. package/token.ts +0 -40
  332. package/tsconfig.json +0 -14
  333. package/types/activity-log.ts +0 -19
  334. package/types/app-message.ts +0 -16
  335. package/types/auto-scaling-group.ts +0 -21
  336. package/types/card.ts +0 -20
  337. package/types/cashier_subscription.ts +0 -29
  338. package/types/collab-annotation.ts +0 -28
  339. package/types/collab-comment.ts +0 -22
  340. package/types/collab-push-subscription.ts +0 -10
  341. package/types/collab-settings.ts +0 -17
  342. package/types/compute.ts +0 -51
  343. package/types/db-image.ts +0 -19
  344. package/types/domain/dns.ts +0 -13
  345. package/types/domain/index.ts +0 -36
  346. package/types/domain/transfer.ts +0 -32
  347. package/types/env.ts +0 -14
  348. package/types/framework.ts +0 -41
  349. package/types/git.ts +0 -15
  350. package/types/idempotency.ts +0 -12
  351. package/types/integration.ts +0 -24
  352. package/types/intention.ts +0 -14
  353. package/types/invoice.ts +0 -16
  354. package/types/job.ts +0 -20
  355. package/types/license.ts +0 -19
  356. package/types/logs.ts +0 -36
  357. package/types/member.ts +0 -19
  358. package/types/object-storage-usage-segment.ts +0 -26
  359. package/types/ownership-transfer.ts +0 -13
  360. package/types/plan_configuration.ts +0 -56
  361. package/types/project/index.ts +0 -101
  362. package/types/project/preview.ts +0 -22
  363. package/types/project-environment.ts +0 -14
  364. package/types/project_analytics.ts +0 -12
  365. package/types/region.ts +0 -16
  366. package/types/sandbox-activity.ts +0 -15
  367. package/types/sandbox-image.ts +0 -10
  368. package/types/sandbox-snapshot-usage-segment.ts +0 -18
  369. package/types/sandbox-snapshot.ts +0 -17
  370. package/types/sandbox-usage-segment.ts +0 -28
  371. package/types/sandbox.ts +0 -43
  372. package/types/server.ts +0 -59
  373. package/types/settings.ts +0 -19
  374. package/types/storage.ts +0 -91
  375. package/types/subscription.ts +0 -34
  376. package/types/team.ts +0 -25
  377. package/types/user.ts +0 -45
  378. package/types/volume-usage-segment.ts +0 -18
  379. package/types/volume.ts +0 -21
  380. package/types/wallet.ts +0 -9
  381. package/user.ts +0 -75
  382. package/volume-usage-segment.ts +0 -59
  383. package/volume.ts +0 -53
  384. package/wallet.ts +0 -27
  385. package/webhook-category.ts +0 -11
  386. package/webhook-event.ts +0 -20
  387. package/webhook-setting.ts +0 -48
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mongoose_1 = require("mongoose");
4
+ const enum_1 = require("./enum");
5
+ const sandboxSnapshotSchema = new mongoose_1.Schema({
6
+ user_id: {
7
+ type: mongoose_1.Schema.Types.ObjectId,
8
+ ref: "User",
9
+ required: true,
10
+ index: true,
11
+ },
12
+ team: {
13
+ type: mongoose_1.Schema.Types.ObjectId,
14
+ ref: "Team",
15
+ default: null,
16
+ index: true,
17
+ },
18
+ sandbox_id: {
19
+ type: mongoose_1.Schema.Types.ObjectId,
20
+ ref: "Sandbox",
21
+ required: true,
22
+ index: true,
23
+ },
24
+ name: {
25
+ type: String,
26
+ required: true,
27
+ match: /^[a-z0-9-]{1,40}$/,
28
+ },
29
+ image_tag: {
30
+ type: String,
31
+ required: true,
32
+ },
33
+ source_template: {
34
+ type: String,
35
+ required: true,
36
+ },
37
+ status: {
38
+ type: String,
39
+ enum: Object.values(enum_1.SANDBOX_SNAPSHOT_STATUS),
40
+ default: enum_1.SANDBOX_SNAPSHOT_STATUS.CREATING,
41
+ },
42
+ failure_reason: {
43
+ type: String,
44
+ default: null,
45
+ },
46
+ size_bytes: {
47
+ type: Number,
48
+ default: null,
49
+ },
50
+ }, { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } });
51
+ exports.default = (0, mongoose_1.model)("SandboxSnapshot", sandboxSnapshotSchema);
@@ -0,0 +1,9 @@
1
+ import { ISandboxUsageSegment } from "./types/sandbox-usage-segment";
2
+ declare const _default: import("mongoose").Model<ISandboxUsageSegment, {}, {}, {}, import("mongoose").Document<unknown, {}, ISandboxUsageSegment, {}, import("mongoose").DefaultSchemaOptions> & ISandboxUsageSegment & Required<{
3
+ _id: import("mongoose").Types.ObjectId;
4
+ }> & {
5
+ __v: number;
6
+ } & {
7
+ id: string;
8
+ }, any, ISandboxUsageSegment>;
9
+ export default _default;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mongoose_1 = require("mongoose");
4
+ const sandboxUsageSegmentSchema = new mongoose_1.Schema({
5
+ sandbox_id: {
6
+ type: mongoose_1.Schema.Types.ObjectId,
7
+ ref: "Sandbox",
8
+ required: true,
9
+ index: true,
10
+ },
11
+ user_id: {
12
+ type: mongoose_1.Schema.Types.ObjectId,
13
+ ref: "User",
14
+ required: true,
15
+ index: true,
16
+ },
17
+ team_id: {
18
+ type: mongoose_1.Schema.Types.ObjectId,
19
+ ref: "Team",
20
+ required: false,
21
+ index: true,
22
+ default: null,
23
+ },
24
+ current: {
25
+ cpu: { type: Number, required: true },
26
+ memory: { type: Number, required: true },
27
+ storage: { type: Number, required: true },
28
+ },
29
+ costs: {
30
+ startDate: { type: Date, required: true },
31
+ endDate: { type: Date, default: null },
32
+ },
33
+ billed: {
34
+ type: Boolean,
35
+ default: false,
36
+ index: true,
37
+ },
38
+ region: {
39
+ type: String,
40
+ required: false,
41
+ },
42
+ template: {
43
+ type: String,
44
+ required: false,
45
+ },
46
+ }, {
47
+ timestamps: true,
48
+ });
49
+ sandboxUsageSegmentSchema.index({ user_id: 1, billed: 1, "costs.endDate": 1 });
50
+ sandboxUsageSegmentSchema.index({ team_id: 1, billed: 1, "costs.endDate": 1 });
51
+ sandboxUsageSegmentSchema.index({ sandbox_id: 1, "costs.endDate": 1 });
52
+ sandboxUsageSegmentSchema.index({ sandbox_id: 1 }, {
53
+ unique: true,
54
+ partialFilterExpression: { "costs.endDate": null },
55
+ name: "uniq_open_sandbox_usage_segment_per_sandbox",
56
+ });
57
+ exports.default = (0, mongoose_1.model)("SandboxUsageSegment", sandboxUsageSegmentSchema, "sandbox_usage_segments");
@@ -0,0 +1,9 @@
1
+ import { ISandbox } from "./types/sandbox";
2
+ declare const _default: import("mongoose").Model<ISandbox, {}, {}, {}, import("mongoose").Document<unknown, {}, ISandbox, {}, import("mongoose").DefaultSchemaOptions> & ISandbox & Required<{
3
+ _id: import("mongoose").Types.ObjectId;
4
+ }> & {
5
+ __v: number;
6
+ } & {
7
+ id: string;
8
+ }, any, ISandbox>;
9
+ export default _default;
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mongoose_1 = require("mongoose");
4
+ const enum_1 = require("./enum");
5
+ const sandboxSchema = new mongoose_1.Schema({
6
+ name: {
7
+ type: String,
8
+ required: true
9
+ },
10
+ user_id: {
11
+ type: mongoose_1.Schema.Types.ObjectId,
12
+ ref: "User",
13
+ required: true,
14
+ },
15
+ team: {
16
+ type: mongoose_1.Schema.Types.ObjectId,
17
+ ref: "Team",
18
+ default: null,
19
+ },
20
+ project_environment: {
21
+ type: mongoose_1.Schema.Types.ObjectId,
22
+ ref: "ProjectEnvironment",
23
+ default: null,
24
+ },
25
+ template: {
26
+ type: String,
27
+ required: true,
28
+ },
29
+ status: {
30
+ type: String,
31
+ enum: Object.values(enum_1.SANDBOX_STATUS),
32
+ required: true,
33
+ default: enum_1.SANDBOX_STATUS.STARTING,
34
+ },
35
+ nomad_job_id: {
36
+ type: String,
37
+ required: true,
38
+ },
39
+ nomad_alloc_id: {
40
+ type: String,
41
+ default: null,
42
+ },
43
+ region: {
44
+ type: mongoose_1.Schema.Types.ObjectId,
45
+ ref: "Region",
46
+ required: true,
47
+ },
48
+ specs: {
49
+ cpu: { type: Number, default: 500 },
50
+ memory: { type: Number, default: 512 },
51
+ disk: { type: Number, default: 2 },
52
+ },
53
+ created_at: {
54
+ type: Date,
55
+ default: Date.now,
56
+ },
57
+ last_activity_at: {
58
+ type: Date,
59
+ default: Date.now,
60
+ },
61
+ expires_at: {
62
+ type: Date,
63
+ required: true,
64
+ },
65
+ destroyed_at: {
66
+ type: Date,
67
+ default: null,
68
+ },
69
+ destroy_reason: {
70
+ type: String,
71
+ enum: Object.values(enum_1.SANDBOX_DESTROY_REASON),
72
+ default: null,
73
+ },
74
+ auto_destroy: {
75
+ type: Boolean,
76
+ default: false,
77
+ },
78
+ destroy_timeout: {
79
+ type: String,
80
+ default: null,
81
+ },
82
+ one_shot: {
83
+ type: Boolean,
84
+ default: false,
85
+ },
86
+ block_outbound: {
87
+ type: Boolean,
88
+ default: false,
89
+ },
90
+ persistent: {
91
+ type: Boolean,
92
+ default: false,
93
+ },
94
+ persistent_disk_gb: {
95
+ type: Number,
96
+ default: null,
97
+ },
98
+ csi_volume_id: {
99
+ type: String,
100
+ default: null,
101
+ },
102
+ paused_at: {
103
+ type: Date,
104
+ default: null,
105
+ },
106
+ image_override: {
107
+ type: String,
108
+ default: null,
109
+ },
110
+ from_snapshot: {
111
+ type: mongoose_1.Schema.Types.ObjectId,
112
+ ref: "SandboxSnapshot",
113
+ default: null,
114
+ },
115
+ snapshot_mode: {
116
+ type: String,
117
+ enum: ["automatic", "manual"],
118
+ default: "manual",
119
+ },
120
+ snapshot_frequency: {
121
+ type: String,
122
+ default: null,
123
+ },
124
+ isDeleted: {
125
+ type: Boolean,
126
+ default: false,
127
+ },
128
+ });
129
+ sandboxSchema.index({ user_id: 1, status: 1, isDeleted: 1 });
130
+ sandboxSchema.index({ expires_at: 1 });
131
+ sandboxSchema.index({ last_activity_at: 1, status: 1 });
132
+ exports.default = (0, mongoose_1.model)("Sandbox", sandboxSchema);
@@ -0,0 +1,9 @@
1
+ import { IServer } from "./types";
2
+ declare const _default: import("mongoose").Model<IServer, {}, {}, {}, import("mongoose").Document<unknown, {}, IServer, {}, import("mongoose").DefaultSchemaOptions> & IServer & Required<{
3
+ _id: import("mongoose").Types.ObjectId;
4
+ }> & {
5
+ __v: number;
6
+ } & {
7
+ id: string;
8
+ }, any, IServer>;
9
+ export default _default;
package/dist/server.js ADDED
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mongoose_1 = require("mongoose");
4
+ const enum_1 = require("./enum");
5
+ const serverSchema = new mongoose_1.Schema({
6
+ name: {
7
+ type: String,
8
+ required: true,
9
+ },
10
+ url: String,
11
+ grpc_address: String,
12
+ userId: {
13
+ type: mongoose_1.Schema.Types.ObjectId,
14
+ ref: "User",
15
+ required: true,
16
+ },
17
+ teamId: {
18
+ type: mongoose_1.Schema.Types.ObjectId,
19
+ ref: "Team",
20
+ required: false,
21
+ },
22
+ domain: {
23
+ required: false,
24
+ type: String,
25
+ },
26
+ webhook_url: String,
27
+ ip_address: {
28
+ type: String,
29
+ required: true,
30
+ },
31
+ ipv6: String,
32
+ private_ip_address: {
33
+ type: String,
34
+ required: true,
35
+ },
36
+ tunnel_token: {
37
+ type: String,
38
+ required: false,
39
+ },
40
+ type: String,
41
+ status: {
42
+ type: String,
43
+ enum: Object.values(enum_1.SERVER_STATUS),
44
+ default: enum_1.SERVER_STATUS.Active,
45
+ },
46
+ protocol: {
47
+ type: String,
48
+ enum: Object.values(enum_1.SERVER_PROTOCOL),
49
+ default: enum_1.SERVER_PROTOCOL.TCP,
50
+ },
51
+ default: Boolean,
52
+ is_custom_provision: {
53
+ type: Boolean,
54
+ default: true,
55
+ },
56
+ region: {
57
+ type: mongoose_1.Schema.Types.ObjectId,
58
+ ref: "Region",
59
+ required: true,
60
+ },
61
+ tag: String,
62
+ plugin_id: {
63
+ type: String,
64
+ required: false,
65
+ },
66
+ firewall_id: {
67
+ required: false,
68
+ type: String,
69
+ },
70
+ provider: {
71
+ type: String,
72
+ required: true,
73
+ },
74
+ provider_location: {
75
+ type: String,
76
+ required: false,
77
+ },
78
+ provider_identifier: {
79
+ type: String,
80
+ required: false,
81
+ },
82
+ topology_path: {
83
+ type: String,
84
+ required: false,
85
+ },
86
+ specifications: {
87
+ type: Object,
88
+ default: {},
89
+ select: true,
90
+ },
91
+ cert_storage_path: {
92
+ type: String,
93
+ required: false,
94
+ },
95
+ meta: {
96
+ type: Object,
97
+ default: {},
98
+ select: true,
99
+ },
100
+ }, { timestamps: true });
101
+ exports.default = (0, mongoose_1.model)("Server", serverSchema);
@@ -0,0 +1,9 @@
1
+ import { ISettings } from "./types";
2
+ declare const _default: import("mongoose").Model<ISettings, {}, {}, {}, import("mongoose").Document<unknown, {}, ISettings, {}, import("mongoose").DefaultSchemaOptions> & ISettings & Required<{
3
+ _id: import("mongoose").Types.ObjectId;
4
+ }> & {
5
+ __v: number;
6
+ } & {
7
+ id: string;
8
+ }, any, ISettings>;
9
+ export default _default;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mongoose_1 = require("mongoose");
4
+ const settingsSchema = new mongoose_1.Schema({
5
+ vaultEnabled: {
6
+ type: Boolean,
7
+ default: false,
8
+ },
9
+ maintenanceMode: {
10
+ type: Boolean,
11
+ default: false,
12
+ },
13
+ enableSecretRotation: {
14
+ type: String,
15
+ required: false,
16
+ },
17
+ domainPromoEnabled: {
18
+ type: Boolean,
19
+ default: false,
20
+ },
21
+ buildsEnabled: {
22
+ type: Boolean,
23
+ default: false,
24
+ },
25
+ minimumBuildMinutes: {
26
+ type: Number,
27
+ required: false,
28
+ },
29
+ enableLogging: {
30
+ type: Boolean,
31
+ default: false,
32
+ },
33
+ postHogEnabled: {
34
+ type: Boolean,
35
+ default: false
36
+ },
37
+ webhookEnabled: {
38
+ type: Boolean,
39
+ default: false,
40
+ },
41
+ metaSettings: {
42
+ type: Object,
43
+ required: false,
44
+ },
45
+ }, {
46
+ timestamps: true,
47
+ collection: "app_settings",
48
+ });
49
+ exports.default = (0, mongoose_1.model)("Settings", settingsSchema, "app_settings");
@@ -0,0 +1,36 @@
1
+ import { IStorageBucket, IStorageCredential, IStorageObject, IStorageToken, IStorageUpload } from "./types/storage";
2
+ export declare const StorageBucket: import("mongoose").Model<IStorageBucket, {}, {}, {}, import("mongoose").Document<unknown, {}, IStorageBucket, {}, import("mongoose").DefaultSchemaOptions> & IStorageBucket & Required<{
3
+ _id: import("mongoose").Types.ObjectId;
4
+ }> & {
5
+ __v: number;
6
+ } & {
7
+ id: string;
8
+ }, any, IStorageBucket>;
9
+ export declare const StorageObject: import("mongoose").Model<IStorageObject, {}, {}, {}, import("mongoose").Document<unknown, {}, IStorageObject, {}, import("mongoose").DefaultSchemaOptions> & IStorageObject & Required<{
10
+ _id: import("mongoose").Types.ObjectId;
11
+ }> & {
12
+ __v: number;
13
+ } & {
14
+ id: string;
15
+ }, any, IStorageObject>;
16
+ export declare const StorageUpload: import("mongoose").Model<IStorageUpload, {}, {}, {}, import("mongoose").Document<unknown, {}, IStorageUpload, {}, import("mongoose").DefaultSchemaOptions> & IStorageUpload & Required<{
17
+ _id: import("mongoose").Types.ObjectId;
18
+ }> & {
19
+ __v: number;
20
+ } & {
21
+ id: string;
22
+ }, any, IStorageUpload>;
23
+ export declare const StorageToken: import("mongoose").Model<IStorageToken, {}, {}, {}, import("mongoose").Document<unknown, {}, IStorageToken, {}, import("mongoose").DefaultSchemaOptions> & IStorageToken & Required<{
24
+ _id: import("mongoose").Types.ObjectId;
25
+ }> & {
26
+ __v: number;
27
+ } & {
28
+ id: string;
29
+ }, any, IStorageToken>;
30
+ export declare const StorageCredential: import("mongoose").Model<IStorageCredential, {}, {}, {}, import("mongoose").Document<unknown, {}, IStorageCredential, {}, import("mongoose").DefaultSchemaOptions> & IStorageCredential & Required<{
31
+ _id: import("mongoose").Types.ObjectId;
32
+ }> & {
33
+ __v: number;
34
+ } & {
35
+ id: string;
36
+ }, any, IStorageCredential>;
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StorageCredential = exports.StorageToken = exports.StorageUpload = exports.StorageObject = exports.StorageBucket = void 0;
4
+ const mongoose_1 = require("mongoose");
5
+ const enum_1 = require("./enum");
6
+ const storageBucketSchema = new mongoose_1.Schema({
7
+ name: { type: String, required: true, trim: true },
8
+ project: { type: mongoose_1.Schema.Types.ObjectId, ref: "Project", required: false, index: true },
9
+ user_id: { type: mongoose_1.Schema.Types.ObjectId, ref: "User", required: false, index: true },
10
+ team: { type: mongoose_1.Schema.Types.ObjectId, ref: "Team", required: false, index: true },
11
+ bucket_name: { type: String, required: true, unique: true },
12
+ is_public: { type: Boolean, default: false },
13
+ versioning: { type: Boolean, default: false },
14
+ provider: { type: String, default: "tigris" },
15
+ region: { type: String, default: "auto" },
16
+ storage_used: { type: Number, default: 0 },
17
+ reserved_bytes: { type: Number, default: 0 },
18
+ quota: { type: Number, required: true },
19
+ status: { type: String, enum: Object.values(enum_1.StorageBucketStatus), default: enum_1.StorageBucketStatus.Active },
20
+ }, { timestamps: true });
21
+ storageBucketSchema.index({ user_id: 1, team: 1, name: 1 }, { unique: true, name: "uniq_storage_bucket_owner_name" });
22
+ storageBucketSchema.index({ user_id: 1, updatedAt: -1 }, { name: "idx_storage_bucket_user_updated_at" });
23
+ storageBucketSchema.index({ team: 1, updatedAt: -1 }, { name: "idx_storage_bucket_team_updated_at" });
24
+ const storageObjectSchema = new mongoose_1.Schema({
25
+ bucket: { type: mongoose_1.Schema.Types.ObjectId, ref: "StorageBucket", required: true, index: true },
26
+ project: { type: mongoose_1.Schema.Types.ObjectId, ref: "Project", required: false, index: true },
27
+ key: { type: String, required: true },
28
+ path: { type: String, required: true },
29
+ content_type: { type: String },
30
+ size: { type: Number, default: 0 },
31
+ etag: { type: String },
32
+ public_url: { type: String },
33
+ last_modified: { type: Date },
34
+ }, { timestamps: true });
35
+ storageObjectSchema.index({ bucket: 1, key: 1 }, { unique: true, name: "uniq_storage_object_bucket_key" });
36
+ const storageUploadSchema = new mongoose_1.Schema({
37
+ bucket: { type: mongoose_1.Schema.Types.ObjectId, ref: "StorageBucket", required: true, index: true },
38
+ project: { type: mongoose_1.Schema.Types.ObjectId, ref: "Project", required: false, index: true },
39
+ key: { type: String, required: true },
40
+ path: { type: String, required: true },
41
+ upload_id: { type: String, index: true },
42
+ content_type: { type: String },
43
+ size: { type: Number, required: true },
44
+ status: { type: String, enum: Object.values(enum_1.StorageUploadStatus), default: enum_1.StorageUploadStatus.Pending, index: true },
45
+ expires_at: { type: Date, required: true, index: true },
46
+ completed_at: { type: Date },
47
+ }, { timestamps: true });
48
+ const storageTokenSchema = new mongoose_1.Schema({
49
+ name: { type: String, required: true, trim: true },
50
+ token_hash: { type: String, required: true, unique: true },
51
+ prefix: { type: String, required: true },
52
+ project: { type: mongoose_1.Schema.Types.ObjectId, ref: "Project", required: false, index: true },
53
+ buckets: [{ type: mongoose_1.Schema.Types.ObjectId, ref: "StorageBucket" }],
54
+ user_id: { type: mongoose_1.Schema.Types.ObjectId, ref: "User", required: false, index: true },
55
+ team: { type: mongoose_1.Schema.Types.ObjectId, ref: "Team", required: false, index: true },
56
+ permissions: [{ type: String, enum: ["read", "write", "delete", "list", "admin"], required: true }],
57
+ status: { type: String, enum: Object.values(enum_1.StorageTokenStatus), default: enum_1.StorageTokenStatus.Active },
58
+ last_used_at: { type: Date },
59
+ expires_at: { type: Date },
60
+ }, { timestamps: true });
61
+ storageTokenSchema.index({ project: 1, status: 1 }, { name: "idx_storage_token_project_status" });
62
+ const storageCredentialSchema = new mongoose_1.Schema({
63
+ name: { type: String, required: true, trim: true },
64
+ bucket: { type: mongoose_1.Schema.Types.ObjectId, ref: "StorageBucket", required: true, index: true },
65
+ project: { type: mongoose_1.Schema.Types.ObjectId, ref: "Project", required: false, index: true },
66
+ user_id: { type: mongoose_1.Schema.Types.ObjectId, ref: "User", required: false, index: true },
67
+ team: { type: mongoose_1.Schema.Types.ObjectId, ref: "Team", required: false, index: true },
68
+ provider: { type: String, default: "tigris" },
69
+ provider_org_id: { type: String, required: true },
70
+ access_key_id: { type: String, required: true, unique: true },
71
+ policy_names: [{ type: String }],
72
+ role: { type: String, enum: Object.values(enum_1.StorageCredentialRole), required: true },
73
+ status: { type: String, enum: Object.values(enum_1.StorageCredentialStatus), default: enum_1.StorageCredentialStatus.Active, index: true },
74
+ last_rotated_at: { type: Date },
75
+ revoked_at: { type: Date },
76
+ }, { timestamps: true });
77
+ storageCredentialSchema.index({ bucket: 1, status: 1, updatedAt: -1 }, { name: "idx_storage_credential_bucket_status_updated_at" });
78
+ exports.StorageBucket = (0, mongoose_1.model)("StorageBucket", storageBucketSchema);
79
+ exports.StorageObject = (0, mongoose_1.model)("StorageObject", storageObjectSchema);
80
+ exports.StorageUpload = (0, mongoose_1.model)("StorageUpload", storageUploadSchema);
81
+ exports.StorageToken = (0, mongoose_1.model)("StorageToken", storageTokenSchema);
82
+ exports.StorageCredential = (0, mongoose_1.model)("StorageCredential", storageCredentialSchema);
@@ -0,0 +1,9 @@
1
+ import { ISubscription } from "./types";
2
+ declare const _default: import("mongoose").Model<ISubscription, {}, {}, {}, import("mongoose").Document<unknown, {}, ISubscription, {}, import("mongoose").DefaultSchemaOptions> & ISubscription & Required<{
3
+ _id: import("mongoose").Types.ObjectId;
4
+ }> & {
5
+ __v: number;
6
+ } & {
7
+ id: string;
8
+ }, any, ISubscription>;
9
+ export default _default;
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mongoose_1 = require("mongoose");
4
+ const enum_1 = require("./enum");
5
+ const subscriptionSchema = new mongoose_1.Schema({
6
+ initial_start_date: {
7
+ type: String,
8
+ required: true,
9
+ },
10
+ due_amount: {
11
+ type: Number,
12
+ default: 0
13
+ },
14
+ team_id: {
15
+ type: mongoose_1.Schema.Types.ObjectId,
16
+ ref: "Team",
17
+ },
18
+ admin_id: {
19
+ type: mongoose_1.Schema.Types.ObjectId,
20
+ required: true,
21
+ ref: "User",
22
+ },
23
+ billable_id: {
24
+ type: mongoose_1.Schema.Types.ObjectId,
25
+ required: true,
26
+ ref: "User",
27
+ },
28
+ project_id: {
29
+ type: mongoose_1.Schema.Types.ObjectId,
30
+ required: false,
31
+ ref: "Project",
32
+ default: null,
33
+ },
34
+ plan_type: {
35
+ type: String,
36
+ enum: Object.values(enum_1.SUBSCRIPTION_PLAN_TYPE),
37
+ default: enum_1.SUBSCRIPTION_PLAN_TYPE.FreePlan,
38
+ },
39
+ status: {
40
+ type: String,
41
+ enum: Object.values(enum_1.SUBSCRIPTION_STATUS),
42
+ default: enum_1.SUBSCRIPTION_STATUS.ACTIVE,
43
+ },
44
+ grafana_org_id: String,
45
+ specifications: {
46
+ type: Object,
47
+ default: {},
48
+ select: true,
49
+ },
50
+ amount: Number,
51
+ debit_date: String,
52
+ start_date: String,
53
+ expiry_date: String,
54
+ reminder_date: String,
55
+ transaction_retries: Number,
56
+ downgraded: {
57
+ default: false,
58
+ type: Boolean
59
+ },
60
+ is_pending_downgrade: {
61
+ type: Boolean,
62
+ default: false,
63
+ },
64
+ disabled_at: {
65
+ required: false,
66
+ type: Date,
67
+ },
68
+ trigger_created: {
69
+ type: Boolean,
70
+ default: false,
71
+ },
72
+ trigger_created_at: {
73
+ type: String,
74
+ },
75
+ job_identifier: {
76
+ type: String,
77
+ },
78
+ }, {
79
+ timestamps: true,
80
+ collection: "subscriptions",
81
+ });
82
+ exports.default = (0, mongoose_1.model)("Subscription", subscriptionSchema);
package/dist/tag.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ import { ITag } from "./types";
2
+ declare const _default: import("mongoose").Model<ITag, {}, {}, {}, import("mongoose").Document<unknown, {}, ITag, {}, import("mongoose").DefaultSchemaOptions> & ITag & Required<{
3
+ _id: import("mongoose").Types.ObjectId;
4
+ }> & {
5
+ __v: number;
6
+ } & {
7
+ id: string;
8
+ }, any, ITag>;
9
+ export default _default;
package/dist/tag.js ADDED
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mongoose_1 = require("mongoose");
4
+ const tagSchema = new mongoose_1.Schema({
5
+ name: {
6
+ type: String,
7
+ required: true,
8
+ trim: true,
9
+ },
10
+ color: {
11
+ type: String,
12
+ required: true,
13
+ },
14
+ teamId: {
15
+ type: mongoose_1.Schema.Types.ObjectId,
16
+ ref: "Team",
17
+ default: null,
18
+ },
19
+ createdBy: {
20
+ type: mongoose_1.Schema.Types.ObjectId,
21
+ ref: "User",
22
+ required: true,
23
+ },
24
+ }, {
25
+ timestamps: true,
26
+ collection: "tags",
27
+ });
28
+ tagSchema.index({ teamId: 1, name: 1 }, { unique: true });
29
+ exports.default = (0, mongoose_1.model)("Tag", tagSchema);