clhq-postgres-module 1.1.0-alpha.100

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 (123) hide show
  1. package/dist/config/data-source.d.ts +3 -0
  2. package/dist/config/data-source.js +27 -0
  3. package/dist/config/typeorm.config.d.ts +2 -0
  4. package/dist/config/typeorm.config.js +27 -0
  5. package/dist/entities/ai-usage.entity.d.ts +15 -0
  6. package/dist/entities/ai-usage.entity.js +67 -0
  7. package/dist/entities/asset.entity.d.ts +48 -0
  8. package/dist/entities/asset.entity.js +180 -0
  9. package/dist/entities/audio-waveform.entity.d.ts +27 -0
  10. package/dist/entities/audio-waveform.entity.js +64 -0
  11. package/dist/entities/auth-session.entity.d.ts +13 -0
  12. package/dist/entities/auth-session.entity.js +61 -0
  13. package/dist/entities/comment.entity.d.ts +16 -0
  14. package/dist/entities/comment.entity.js +72 -0
  15. package/dist/entities/credit-allocation.entity.d.ts +23 -0
  16. package/dist/entities/credit-allocation.entity.js +91 -0
  17. package/dist/entities/credit-consumption-log.entity.d.ts +32 -0
  18. package/dist/entities/credit-consumption-log.entity.js +127 -0
  19. package/dist/entities/credit-transaction.entity.d.ts +20 -0
  20. package/dist/entities/credit-transaction.entity.js +89 -0
  21. package/dist/entities/editor-project.entity.d.ts +60 -0
  22. package/dist/entities/editor-project.entity.js +173 -0
  23. package/dist/entities/effect.entity.d.ts +20 -0
  24. package/dist/entities/effect.entity.js +74 -0
  25. package/dist/entities/index.d.ts +28 -0
  26. package/dist/entities/index.js +46 -0
  27. package/dist/entities/invite.entity.d.ts +20 -0
  28. package/dist/entities/invite.entity.js +85 -0
  29. package/dist/entities/payment-transaction.entity.d.ts +27 -0
  30. package/dist/entities/payment-transaction.entity.js +91 -0
  31. package/dist/entities/plan.entity.d.ts +19 -0
  32. package/dist/entities/plan.entity.js +79 -0
  33. package/dist/entities/referral-event.entity.d.ts +41 -0
  34. package/dist/entities/referral-event.entity.js +170 -0
  35. package/dist/entities/reward-rule.entity.d.ts +13 -0
  36. package/dist/entities/reward-rule.entity.js +63 -0
  37. package/dist/entities/stripe-webhook.entity.d.ts +17 -0
  38. package/dist/entities/stripe-webhook.entity.js +67 -0
  39. package/dist/entities/subscription-plan.entity.d.ts +37 -0
  40. package/dist/entities/subscription-plan.entity.js +160 -0
  41. package/dist/entities/subscription-usage.entity.d.ts +14 -0
  42. package/dist/entities/subscription-usage.entity.js +65 -0
  43. package/dist/entities/user-onboarding.entity.d.ts +10 -0
  44. package/dist/entities/user-onboarding.entity.js +49 -0
  45. package/dist/entities/user-profile.entity.d.ts +39 -0
  46. package/dist/entities/user-profile.entity.js +165 -0
  47. package/dist/entities/user-subscription.entity.d.ts +46 -0
  48. package/dist/entities/user-subscription.entity.js +151 -0
  49. package/dist/entities/user.entity.d.ts +41 -0
  50. package/dist/entities/user.entity.js +163 -0
  51. package/dist/entities/video-filmstrip.entity.d.ts +29 -0
  52. package/dist/entities/video-filmstrip.entity.js +64 -0
  53. package/dist/entities/video-render.entity.d.ts +21 -0
  54. package/dist/entities/video-render.entity.js +79 -0
  55. package/dist/entities/video-subtitle.entity.d.ts +28 -0
  56. package/dist/entities/video-subtitle.entity.js +68 -0
  57. package/dist/entities/video-transcode.entity.d.ts +16 -0
  58. package/dist/entities/video-transcode.entity.js +64 -0
  59. package/dist/entities/workspace-member.entity.d.ts +19 -0
  60. package/dist/entities/workspace-member.entity.js +70 -0
  61. package/dist/entities/workspace.entity.d.ts +17 -0
  62. package/dist/entities/workspace.entity.js +75 -0
  63. package/dist/index.d.ts +5 -0
  64. package/dist/index.js +21 -0
  65. package/dist/postgres.module.d.ts +2 -0
  66. package/dist/postgres.module.js +63 -0
  67. package/dist/repositories/ai-usage.repository.d.ts +12 -0
  68. package/dist/repositories/ai-usage.repository.js +56 -0
  69. package/dist/repositories/asset.repository.d.ts +22 -0
  70. package/dist/repositories/asset.repository.js +128 -0
  71. package/dist/repositories/audio-waveform.repository.d.ts +24 -0
  72. package/dist/repositories/audio-waveform.repository.js +57 -0
  73. package/dist/repositories/auth-session.repository.d.ts +10 -0
  74. package/dist/repositories/auth-session.repository.js +46 -0
  75. package/dist/repositories/base.repository.d.ts +18 -0
  76. package/dist/repositories/base.repository.js +53 -0
  77. package/dist/repositories/comment.repository.d.ts +14 -0
  78. package/dist/repositories/comment.repository.js +76 -0
  79. package/dist/repositories/credit-transaction.repository.d.ts +9 -0
  80. package/dist/repositories/credit-transaction.repository.js +49 -0
  81. package/dist/repositories/editor-project.repository.d.ts +31 -0
  82. package/dist/repositories/editor-project.repository.js +193 -0
  83. package/dist/repositories/effect.repository.d.ts +10 -0
  84. package/dist/repositories/effect.repository.js +47 -0
  85. package/dist/repositories/index.d.ts +26 -0
  86. package/dist/repositories/index.js +55 -0
  87. package/dist/repositories/invite.repository.d.ts +12 -0
  88. package/dist/repositories/invite.repository.js +60 -0
  89. package/dist/repositories/payment-transaction.repository.d.ts +10 -0
  90. package/dist/repositories/payment-transaction.repository.js +49 -0
  91. package/dist/repositories/plan.repository.d.ts +10 -0
  92. package/dist/repositories/plan.repository.js +48 -0
  93. package/dist/repositories/referral-event.repository.d.ts +37 -0
  94. package/dist/repositories/referral-event.repository.js +154 -0
  95. package/dist/repositories/repository.module.d.ts +2 -0
  96. package/dist/repositories/repository.module.js +77 -0
  97. package/dist/repositories/reward-rule.repository.d.ts +10 -0
  98. package/dist/repositories/reward-rule.repository.js +48 -0
  99. package/dist/repositories/stripe-webhook.repository.d.ts +10 -0
  100. package/dist/repositories/stripe-webhook.repository.js +53 -0
  101. package/dist/repositories/subscription-plan.repository.d.ts +15 -0
  102. package/dist/repositories/subscription-plan.repository.js +77 -0
  103. package/dist/repositories/subscription-usage.repository.d.ts +9 -0
  104. package/dist/repositories/subscription-usage.repository.js +50 -0
  105. package/dist/repositories/user-onboarding.repository.d.ts +10 -0
  106. package/dist/repositories/user-onboarding.repository.js +56 -0
  107. package/dist/repositories/user-profile.repository.d.ts +9 -0
  108. package/dist/repositories/user-profile.repository.js +41 -0
  109. package/dist/repositories/user-subscription.repository.d.ts +16 -0
  110. package/dist/repositories/user-subscription.repository.js +90 -0
  111. package/dist/repositories/user.repository.d.ts +17 -0
  112. package/dist/repositories/user.repository.js +89 -0
  113. package/dist/repositories/video-filmstrip.repository.d.ts +24 -0
  114. package/dist/repositories/video-filmstrip.repository.js +57 -0
  115. package/dist/repositories/video-render.repository.d.ts +28 -0
  116. package/dist/repositories/video-render.repository.js +63 -0
  117. package/dist/repositories/video-transcode.repository.d.ts +23 -0
  118. package/dist/repositories/video-transcode.repository.js +52 -0
  119. package/dist/repositories/workspace-member.repository.d.ts +13 -0
  120. package/dist/repositories/workspace-member.repository.js +79 -0
  121. package/dist/repositories/workspace.repository.d.ts +13 -0
  122. package/dist/repositories/workspace.repository.js +64 -0
  123. package/package.json +65 -0
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreditAllocation = exports.CreditAllocationStatus = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const user_entity_1 = require("./user.entity");
15
+ var CreditAllocationStatus;
16
+ (function (CreditAllocationStatus) {
17
+ CreditAllocationStatus["ACTIVE"] = "active";
18
+ CreditAllocationStatus["EXPIRED"] = "expired";
19
+ CreditAllocationStatus["UPGRADED"] = "upgraded";
20
+ CreditAllocationStatus["CANCELLED"] = "cancelled";
21
+ })(CreditAllocationStatus || (exports.CreditAllocationStatus = CreditAllocationStatus = {}));
22
+ let CreditAllocation = class CreditAllocation {
23
+ };
24
+ exports.CreditAllocation = CreditAllocation;
25
+ __decorate([
26
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
27
+ __metadata("design:type", String)
28
+ ], CreditAllocation.prototype, "id", void 0);
29
+ __decorate([
30
+ (0, typeorm_1.Column)({ name: 'user_id' }),
31
+ __metadata("design:type", String)
32
+ ], CreditAllocation.prototype, "userId", void 0);
33
+ __decorate([
34
+ (0, typeorm_1.ManyToOne)(() => user_entity_1.User),
35
+ (0, typeorm_1.JoinColumn)({ name: 'user_id' }),
36
+ __metadata("design:type", user_entity_1.User)
37
+ ], CreditAllocation.prototype, "user", void 0);
38
+ __decorate([
39
+ (0, typeorm_1.Column)({ name: 'plan_id', length: 50 }),
40
+ __metadata("design:type", String)
41
+ ], CreditAllocation.prototype, "planId", void 0);
42
+ __decorate([
43
+ (0, typeorm_1.Column)({ name: 'credits_allocated' }),
44
+ __metadata("design:type", Number)
45
+ ], CreditAllocation.prototype, "creditsAllocated", void 0);
46
+ __decorate([
47
+ (0, typeorm_1.Column)({ name: 'credits_remaining' }),
48
+ __metadata("design:type", Number)
49
+ ], CreditAllocation.prototype, "creditsRemaining", void 0);
50
+ __decorate([
51
+ (0, typeorm_1.Column)({ name: 'ai_credits_allocated', default: 0 }),
52
+ __metadata("design:type", Number)
53
+ ], CreditAllocation.prototype, "aiCreditsAllocated", void 0);
54
+ __decorate([
55
+ (0, typeorm_1.Column)({ name: 'ai_credits_remaining', default: 0 }),
56
+ __metadata("design:type", Number)
57
+ ], CreditAllocation.prototype, "aiCreditsRemaining", void 0);
58
+ __decorate([
59
+ (0, typeorm_1.Column)({ name: 'period_start' }),
60
+ __metadata("design:type", Date)
61
+ ], CreditAllocation.prototype, "periodStart", void 0);
62
+ __decorate([
63
+ (0, typeorm_1.Column)({ name: 'period_end' }),
64
+ __metadata("design:type", Date)
65
+ ], CreditAllocation.prototype, "periodEnd", void 0);
66
+ __decorate([
67
+ (0, typeorm_1.Column)({ name: 'rollover_credits', default: 0 }),
68
+ __metadata("design:type", Number)
69
+ ], CreditAllocation.prototype, "rolloverCredits", void 0);
70
+ __decorate([
71
+ (0, typeorm_1.Column)({
72
+ type: 'enum',
73
+ enum: CreditAllocationStatus,
74
+ default: CreditAllocationStatus.ACTIVE,
75
+ }),
76
+ __metadata("design:type", String)
77
+ ], CreditAllocation.prototype, "status", void 0);
78
+ __decorate([
79
+ (0, typeorm_1.CreateDateColumn)({ name: 'created_at' }),
80
+ __metadata("design:type", Date)
81
+ ], CreditAllocation.prototype, "createdAt", void 0);
82
+ __decorate([
83
+ (0, typeorm_1.UpdateDateColumn)({ name: 'updated_at' }),
84
+ __metadata("design:type", Date)
85
+ ], CreditAllocation.prototype, "updatedAt", void 0);
86
+ exports.CreditAllocation = CreditAllocation = __decorate([
87
+ (0, typeorm_1.Entity)('credit_allocations'),
88
+ (0, typeorm_1.Index)(['userId'], { unique: false }),
89
+ (0, typeorm_1.Index)(['periodStart', 'periodEnd'], { unique: false }),
90
+ (0, typeorm_1.Index)(['status'], { unique: false })
91
+ ], CreditAllocation);
@@ -0,0 +1,32 @@
1
+ import { User } from './user.entity';
2
+ import { CreditAllocation } from './credit-allocation.entity';
3
+ import { CreditTransaction } from './credit-transaction.entity';
4
+ export declare enum ConsumptionStatus {
5
+ PENDING = "pending",
6
+ RESERVED = "reserved",
7
+ COMPLETED = "completed",
8
+ FAILED = "failed",
9
+ REFUNDED = "refunded"
10
+ }
11
+ export declare class CreditConsumptionLog {
12
+ id: string;
13
+ userId: string;
14
+ user: User;
15
+ allocationId?: string;
16
+ allocation?: CreditAllocation;
17
+ transactionId?: string;
18
+ transaction?: CreditTransaction;
19
+ operationType: string;
20
+ operationId?: string;
21
+ baseCredits: number;
22
+ modifierCredits: number;
23
+ totalCredits: number;
24
+ operationParams: Record<string, any>;
25
+ status: ConsumptionStatus;
26
+ startedAt: Date;
27
+ completedAt?: Date;
28
+ resultUrl?: string;
29
+ errorMessage?: string;
30
+ createdAt: Date;
31
+ updatedAt: Date;
32
+ }
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreditConsumptionLog = exports.ConsumptionStatus = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const user_entity_1 = require("./user.entity");
15
+ const credit_allocation_entity_1 = require("./credit-allocation.entity");
16
+ const credit_transaction_entity_1 = require("./credit-transaction.entity");
17
+ var ConsumptionStatus;
18
+ (function (ConsumptionStatus) {
19
+ ConsumptionStatus["PENDING"] = "pending";
20
+ ConsumptionStatus["RESERVED"] = "reserved";
21
+ ConsumptionStatus["COMPLETED"] = "completed";
22
+ ConsumptionStatus["FAILED"] = "failed";
23
+ ConsumptionStatus["REFUNDED"] = "refunded";
24
+ })(ConsumptionStatus || (exports.ConsumptionStatus = ConsumptionStatus = {}));
25
+ let CreditConsumptionLog = class CreditConsumptionLog {
26
+ };
27
+ exports.CreditConsumptionLog = CreditConsumptionLog;
28
+ __decorate([
29
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
30
+ __metadata("design:type", String)
31
+ ], CreditConsumptionLog.prototype, "id", void 0);
32
+ __decorate([
33
+ (0, typeorm_1.Column)({ name: 'user_id' }),
34
+ __metadata("design:type", String)
35
+ ], CreditConsumptionLog.prototype, "userId", void 0);
36
+ __decorate([
37
+ (0, typeorm_1.ManyToOne)(() => user_entity_1.User),
38
+ (0, typeorm_1.JoinColumn)({ name: 'user_id' }),
39
+ __metadata("design:type", user_entity_1.User)
40
+ ], CreditConsumptionLog.prototype, "user", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.Column)({ name: 'allocation_id', nullable: true }),
43
+ __metadata("design:type", String)
44
+ ], CreditConsumptionLog.prototype, "allocationId", void 0);
45
+ __decorate([
46
+ (0, typeorm_1.ManyToOne)(() => credit_allocation_entity_1.CreditAllocation, { nullable: true }),
47
+ (0, typeorm_1.JoinColumn)({ name: 'allocation_id' }),
48
+ __metadata("design:type", credit_allocation_entity_1.CreditAllocation)
49
+ ], CreditConsumptionLog.prototype, "allocation", void 0);
50
+ __decorate([
51
+ (0, typeorm_1.Column)({ name: 'transaction_id', nullable: true }),
52
+ __metadata("design:type", String)
53
+ ], CreditConsumptionLog.prototype, "transactionId", void 0);
54
+ __decorate([
55
+ (0, typeorm_1.ManyToOne)(() => credit_transaction_entity_1.CreditTransaction, { nullable: true }),
56
+ (0, typeorm_1.JoinColumn)({ name: 'transaction_id' }),
57
+ __metadata("design:type", credit_transaction_entity_1.CreditTransaction)
58
+ ], CreditConsumptionLog.prototype, "transaction", void 0);
59
+ __decorate([
60
+ (0, typeorm_1.Column)({ name: 'operation_type', length: 50 }),
61
+ __metadata("design:type", String)
62
+ ], CreditConsumptionLog.prototype, "operationType", void 0);
63
+ __decorate([
64
+ (0, typeorm_1.Column)({ name: 'operation_id', length: 100, nullable: true }),
65
+ __metadata("design:type", String)
66
+ ], CreditConsumptionLog.prototype, "operationId", void 0);
67
+ __decorate([
68
+ (0, typeorm_1.Column)({ name: 'base_credits', type: 'decimal', precision: 10, scale: 2 }),
69
+ __metadata("design:type", Number)
70
+ ], CreditConsumptionLog.prototype, "baseCredits", void 0);
71
+ __decorate([
72
+ (0, typeorm_1.Column)({
73
+ name: 'modifier_credits',
74
+ type: 'decimal',
75
+ precision: 10,
76
+ scale: 2,
77
+ default: 0,
78
+ }),
79
+ __metadata("design:type", Number)
80
+ ], CreditConsumptionLog.prototype, "modifierCredits", void 0);
81
+ __decorate([
82
+ (0, typeorm_1.Column)({ name: 'total_credits', type: 'decimal', precision: 10, scale: 2 }),
83
+ __metadata("design:type", Number)
84
+ ], CreditConsumptionLog.prototype, "totalCredits", void 0);
85
+ __decorate([
86
+ (0, typeorm_1.Column)({ name: 'operation_params', type: 'jsonb', default: {} }),
87
+ __metadata("design:type", Object)
88
+ ], CreditConsumptionLog.prototype, "operationParams", void 0);
89
+ __decorate([
90
+ (0, typeorm_1.Column)({
91
+ type: 'enum',
92
+ enum: ConsumptionStatus,
93
+ default: ConsumptionStatus.PENDING,
94
+ }),
95
+ __metadata("design:type", String)
96
+ ], CreditConsumptionLog.prototype, "status", void 0);
97
+ __decorate([
98
+ (0, typeorm_1.Column)({ name: 'started_at', default: () => 'NOW()' }),
99
+ __metadata("design:type", Date)
100
+ ], CreditConsumptionLog.prototype, "startedAt", void 0);
101
+ __decorate([
102
+ (0, typeorm_1.Column)({ name: 'completed_at', nullable: true }),
103
+ __metadata("design:type", Date)
104
+ ], CreditConsumptionLog.prototype, "completedAt", void 0);
105
+ __decorate([
106
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
107
+ __metadata("design:type", String)
108
+ ], CreditConsumptionLog.prototype, "resultUrl", void 0);
109
+ __decorate([
110
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
111
+ __metadata("design:type", String)
112
+ ], CreditConsumptionLog.prototype, "errorMessage", void 0);
113
+ __decorate([
114
+ (0, typeorm_1.CreateDateColumn)({ name: 'created_at' }),
115
+ __metadata("design:type", Date)
116
+ ], CreditConsumptionLog.prototype, "createdAt", void 0);
117
+ __decorate([
118
+ (0, typeorm_1.UpdateDateColumn)({ name: 'updated_at' }),
119
+ __metadata("design:type", Date)
120
+ ], CreditConsumptionLog.prototype, "updatedAt", void 0);
121
+ exports.CreditConsumptionLog = CreditConsumptionLog = __decorate([
122
+ (0, typeorm_1.Entity)('credit_consumption_log'),
123
+ (0, typeorm_1.Index)(['userId'], { unique: false }),
124
+ (0, typeorm_1.Index)(['operationType'], { unique: false }),
125
+ (0, typeorm_1.Index)(['status'], { unique: false }),
126
+ (0, typeorm_1.Index)(['createdAt'], { unique: false })
127
+ ], CreditConsumptionLog);
@@ -0,0 +1,20 @@
1
+ import { User } from './user.entity';
2
+ export declare class CreditTransaction {
3
+ id: string;
4
+ userId: string;
5
+ user: User;
6
+ amount: number;
7
+ type: string;
8
+ description?: string;
9
+ stripePaymentIntentId?: string;
10
+ source?: string;
11
+ referenceId?: string;
12
+ expiresAt?: Date;
13
+ operationType?: string;
14
+ operationId?: string;
15
+ reservationId?: string;
16
+ status: string;
17
+ metadata: Record<string, any>;
18
+ createdAt: Date;
19
+ updatedAt: Date;
20
+ }
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreditTransaction = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const user_entity_1 = require("./user.entity");
15
+ let CreditTransaction = class CreditTransaction {
16
+ };
17
+ exports.CreditTransaction = CreditTransaction;
18
+ __decorate([
19
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
20
+ __metadata("design:type", String)
21
+ ], CreditTransaction.prototype, "id", void 0);
22
+ __decorate([
23
+ (0, typeorm_1.Column)({ name: 'user_id' }),
24
+ __metadata("design:type", String)
25
+ ], CreditTransaction.prototype, "userId", void 0);
26
+ __decorate([
27
+ (0, typeorm_1.ManyToOne)(() => user_entity_1.User),
28
+ (0, typeorm_1.JoinColumn)({ name: 'user_id' }),
29
+ __metadata("design:type", user_entity_1.User)
30
+ ], CreditTransaction.prototype, "user", void 0);
31
+ __decorate([
32
+ (0, typeorm_1.Column)({ type: 'decimal', precision: 10, scale: 2 }),
33
+ __metadata("design:type", Number)
34
+ ], CreditTransaction.prototype, "amount", void 0);
35
+ __decorate([
36
+ (0, typeorm_1.Column)({ length: 50 }),
37
+ __metadata("design:type", String)
38
+ ], CreditTransaction.prototype, "type", void 0);
39
+ __decorate([
40
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
41
+ __metadata("design:type", String)
42
+ ], CreditTransaction.prototype, "description", void 0);
43
+ __decorate([
44
+ (0, typeorm_1.Column)({ name: 'stripe_payment_intent_id', nullable: true }),
45
+ __metadata("design:type", String)
46
+ ], CreditTransaction.prototype, "stripePaymentIntentId", void 0);
47
+ __decorate([
48
+ (0, typeorm_1.Column)({ length: 50, nullable: true }),
49
+ __metadata("design:type", String)
50
+ ], CreditTransaction.prototype, "source", void 0);
51
+ __decorate([
52
+ (0, typeorm_1.Column)({ name: 'reference_id', type: 'uuid', nullable: true }),
53
+ __metadata("design:type", String)
54
+ ], CreditTransaction.prototype, "referenceId", void 0);
55
+ __decorate([
56
+ (0, typeorm_1.Column)({ name: 'expires_at', type: 'timestamp', nullable: true }),
57
+ __metadata("design:type", Date)
58
+ ], CreditTransaction.prototype, "expiresAt", void 0);
59
+ __decorate([
60
+ (0, typeorm_1.Column)({ name: 'operation_type', length: 50, nullable: true }),
61
+ __metadata("design:type", String)
62
+ ], CreditTransaction.prototype, "operationType", void 0);
63
+ __decorate([
64
+ (0, typeorm_1.Column)({ name: 'operation_id', length: 100, nullable: true }),
65
+ __metadata("design:type", String)
66
+ ], CreditTransaction.prototype, "operationId", void 0);
67
+ __decorate([
68
+ (0, typeorm_1.Column)({ name: 'reservation_id', type: 'uuid', nullable: true }),
69
+ __metadata("design:type", String)
70
+ ], CreditTransaction.prototype, "reservationId", void 0);
71
+ __decorate([
72
+ (0, typeorm_1.Column)({ length: 20, default: 'completed' }),
73
+ __metadata("design:type", String)
74
+ ], CreditTransaction.prototype, "status", void 0);
75
+ __decorate([
76
+ (0, typeorm_1.Column)({ type: 'jsonb', default: {} }),
77
+ __metadata("design:type", Object)
78
+ ], CreditTransaction.prototype, "metadata", void 0);
79
+ __decorate([
80
+ (0, typeorm_1.CreateDateColumn)({ name: 'created_at' }),
81
+ __metadata("design:type", Date)
82
+ ], CreditTransaction.prototype, "createdAt", void 0);
83
+ __decorate([
84
+ (0, typeorm_1.UpdateDateColumn)({ name: 'updated_at' }),
85
+ __metadata("design:type", Date)
86
+ ], CreditTransaction.prototype, "updatedAt", void 0);
87
+ exports.CreditTransaction = CreditTransaction = __decorate([
88
+ (0, typeorm_1.Entity)('credit_transactions')
89
+ ], CreditTransaction);
@@ -0,0 +1,60 @@
1
+ import { User } from './user.entity';
2
+ import { Workspace } from './workspace.entity';
3
+ export declare enum ProjectStatus {
4
+ DRAFT = "draft",
5
+ IN_PROGRESS = "in_progress",
6
+ COMPLETED = "completed",
7
+ ARCHIVED = "archived",
8
+ DELETED = "deleted"
9
+ }
10
+ export declare enum ProjectVisibility {
11
+ PRIVATE = "private",
12
+ PUBLIC = "public",
13
+ WORKSPACE = "workspace"
14
+ }
15
+ export declare class EditorProject {
16
+ id: string;
17
+ title: string;
18
+ description: string;
19
+ workspaceId: string;
20
+ ownerId: string;
21
+ timelineS3Key: string;
22
+ timelineCompressed: boolean;
23
+ durationMs: number;
24
+ fps: number;
25
+ resolutionWidth: number;
26
+ resolutionHeight: number;
27
+ backgroundColor: string;
28
+ aspectRatio: {
29
+ label: string;
30
+ width: number;
31
+ height: number;
32
+ resolutionWidth?: number;
33
+ resolutionHeight?: number;
34
+ isCustom?: boolean;
35
+ };
36
+ status: ProjectStatus;
37
+ visibility: ProjectVisibility;
38
+ isTemplate: boolean;
39
+ isFavorite: boolean;
40
+ thumbnailUrl: string;
41
+ collaboratorIds: string[];
42
+ tags: string[];
43
+ templateCategory: string;
44
+ isPremiumTemplate: boolean;
45
+ templateUsageCount: number;
46
+ settings: {
47
+ autoSave?: boolean;
48
+ gridSnap?: boolean;
49
+ showTimecode?: boolean;
50
+ previewQuality?: 'low' | 'medium' | 'high';
51
+ audioLevels?: boolean;
52
+ };
53
+ metadata: Record<string, unknown>;
54
+ lastOpenedAt: Date;
55
+ lastEditedBy: string;
56
+ createdAt: Date;
57
+ updatedAt: Date;
58
+ workspace: Workspace;
59
+ owner: User;
60
+ }
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.EditorProject = exports.ProjectVisibility = exports.ProjectStatus = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const user_entity_1 = require("./user.entity");
15
+ const workspace_entity_1 = require("./workspace.entity");
16
+ var ProjectStatus;
17
+ (function (ProjectStatus) {
18
+ ProjectStatus["DRAFT"] = "draft";
19
+ ProjectStatus["IN_PROGRESS"] = "in_progress";
20
+ ProjectStatus["COMPLETED"] = "completed";
21
+ ProjectStatus["ARCHIVED"] = "archived";
22
+ ProjectStatus["DELETED"] = "deleted";
23
+ })(ProjectStatus || (exports.ProjectStatus = ProjectStatus = {}));
24
+ var ProjectVisibility;
25
+ (function (ProjectVisibility) {
26
+ ProjectVisibility["PRIVATE"] = "private";
27
+ ProjectVisibility["PUBLIC"] = "public";
28
+ ProjectVisibility["WORKSPACE"] = "workspace";
29
+ })(ProjectVisibility || (exports.ProjectVisibility = ProjectVisibility = {}));
30
+ let EditorProject = class EditorProject {
31
+ };
32
+ exports.EditorProject = EditorProject;
33
+ __decorate([
34
+ (0, typeorm_1.Column)({ primary: true, type: 'varchar', length: 255 }),
35
+ __metadata("design:type", String)
36
+ ], EditorProject.prototype, "id", void 0);
37
+ __decorate([
38
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
39
+ __metadata("design:type", String)
40
+ ], EditorProject.prototype, "title", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
43
+ __metadata("design:type", String)
44
+ ], EditorProject.prototype, "description", void 0);
45
+ __decorate([
46
+ (0, typeorm_1.Column)({ name: 'workspace_id', type: 'uuid', nullable: true }),
47
+ __metadata("design:type", String)
48
+ ], EditorProject.prototype, "workspaceId", void 0);
49
+ __decorate([
50
+ (0, typeorm_1.Column)({ name: 'owner_id', type: 'uuid', nullable: true }),
51
+ __metadata("design:type", String)
52
+ ], EditorProject.prototype, "ownerId", void 0);
53
+ __decorate([
54
+ (0, typeorm_1.Column)({ name: 'timeline_s3_key', type: 'text', nullable: true }),
55
+ __metadata("design:type", String)
56
+ ], EditorProject.prototype, "timelineS3Key", void 0);
57
+ __decorate([
58
+ (0, typeorm_1.Column)({ name: 'timeline_compressed', type: 'boolean', default: true }),
59
+ __metadata("design:type", Boolean)
60
+ ], EditorProject.prototype, "timelineCompressed", void 0);
61
+ __decorate([
62
+ (0, typeorm_1.Column)({ name: 'duration_ms', type: 'integer', default: 0 }),
63
+ __metadata("design:type", Number)
64
+ ], EditorProject.prototype, "durationMs", void 0);
65
+ __decorate([
66
+ (0, typeorm_1.Column)({ type: 'integer', default: 30 }),
67
+ __metadata("design:type", Number)
68
+ ], EditorProject.prototype, "fps", void 0);
69
+ __decorate([
70
+ (0, typeorm_1.Column)({ name: 'resolution_width', type: 'integer', default: 1920 }),
71
+ __metadata("design:type", Number)
72
+ ], EditorProject.prototype, "resolutionWidth", void 0);
73
+ __decorate([
74
+ (0, typeorm_1.Column)({ name: 'resolution_height', type: 'integer', default: 1080 }),
75
+ __metadata("design:type", Number)
76
+ ], EditorProject.prototype, "resolutionHeight", void 0);
77
+ __decorate([
78
+ (0, typeorm_1.Column)({ name: 'background_color', type: 'varchar', length: 50, default: '#000000' }),
79
+ __metadata("design:type", String)
80
+ ], EditorProject.prototype, "backgroundColor", void 0);
81
+ __decorate([
82
+ (0, typeorm_1.Column)({ name: 'aspect_ratio', type: 'jsonb', nullable: true }),
83
+ __metadata("design:type", Object)
84
+ ], EditorProject.prototype, "aspectRatio", void 0);
85
+ __decorate([
86
+ (0, typeorm_1.Column)({
87
+ type: 'enum',
88
+ enum: ProjectStatus,
89
+ default: ProjectStatus.DRAFT,
90
+ }),
91
+ __metadata("design:type", String)
92
+ ], EditorProject.prototype, "status", void 0);
93
+ __decorate([
94
+ (0, typeorm_1.Column)({
95
+ type: 'enum',
96
+ enum: ProjectVisibility,
97
+ default: ProjectVisibility.PRIVATE,
98
+ }),
99
+ __metadata("design:type", String)
100
+ ], EditorProject.prototype, "visibility", void 0);
101
+ __decorate([
102
+ (0, typeorm_1.Column)({ name: 'is_template', type: 'boolean', default: false }),
103
+ __metadata("design:type", Boolean)
104
+ ], EditorProject.prototype, "isTemplate", void 0);
105
+ __decorate([
106
+ (0, typeorm_1.Column)({ name: 'is_favorite', type: 'boolean', default: false }),
107
+ __metadata("design:type", Boolean)
108
+ ], EditorProject.prototype, "isFavorite", void 0);
109
+ __decorate([
110
+ (0, typeorm_1.Column)({ name: 'thumbnail_url', type: 'text', nullable: true }),
111
+ __metadata("design:type", String)
112
+ ], EditorProject.prototype, "thumbnailUrl", void 0);
113
+ __decorate([
114
+ (0, typeorm_1.Column)({ name: 'collaborator_ids', type: 'jsonb', nullable: true }),
115
+ __metadata("design:type", Array)
116
+ ], EditorProject.prototype, "collaboratorIds", void 0);
117
+ __decorate([
118
+ (0, typeorm_1.Column)({ type: 'jsonb', nullable: true }),
119
+ __metadata("design:type", Array)
120
+ ], EditorProject.prototype, "tags", void 0);
121
+ __decorate([
122
+ (0, typeorm_1.Column)({ name: 'template_category', type: 'varchar', length: 100, nullable: true }),
123
+ __metadata("design:type", String)
124
+ ], EditorProject.prototype, "templateCategory", void 0);
125
+ __decorate([
126
+ (0, typeorm_1.Column)({ name: 'is_premium_template', type: 'boolean', default: false }),
127
+ __metadata("design:type", Boolean)
128
+ ], EditorProject.prototype, "isPremiumTemplate", void 0);
129
+ __decorate([
130
+ (0, typeorm_1.Column)({ name: 'template_usage_count', type: 'integer', default: 0 }),
131
+ __metadata("design:type", Number)
132
+ ], EditorProject.prototype, "templateUsageCount", void 0);
133
+ __decorate([
134
+ (0, typeorm_1.Column)({ type: 'jsonb', nullable: true }),
135
+ __metadata("design:type", Object)
136
+ ], EditorProject.prototype, "settings", void 0);
137
+ __decorate([
138
+ (0, typeorm_1.Column)({ type: 'jsonb', nullable: true }),
139
+ __metadata("design:type", Object)
140
+ ], EditorProject.prototype, "metadata", void 0);
141
+ __decorate([
142
+ (0, typeorm_1.Column)({ name: 'last_opened_at', type: 'timestamp', nullable: true }),
143
+ __metadata("design:type", Date)
144
+ ], EditorProject.prototype, "lastOpenedAt", void 0);
145
+ __decorate([
146
+ (0, typeorm_1.Column)({ name: 'last_edited_by', type: 'uuid', nullable: true }),
147
+ __metadata("design:type", String)
148
+ ], EditorProject.prototype, "lastEditedBy", void 0);
149
+ __decorate([
150
+ (0, typeorm_1.CreateDateColumn)({ name: 'created_at' }),
151
+ __metadata("design:type", Date)
152
+ ], EditorProject.prototype, "createdAt", void 0);
153
+ __decorate([
154
+ (0, typeorm_1.UpdateDateColumn)({ name: 'updated_at' }),
155
+ __metadata("design:type", Date)
156
+ ], EditorProject.prototype, "updatedAt", void 0);
157
+ __decorate([
158
+ (0, typeorm_1.ManyToOne)(() => workspace_entity_1.Workspace, (workspace) => workspace.projects),
159
+ (0, typeorm_1.JoinColumn)({ name: 'workspace_id' }),
160
+ __metadata("design:type", workspace_entity_1.Workspace)
161
+ ], EditorProject.prototype, "workspace", void 0);
162
+ __decorate([
163
+ (0, typeorm_1.ManyToOne)(() => user_entity_1.User, (user) => user.projects),
164
+ (0, typeorm_1.JoinColumn)({ name: 'owner_id' }),
165
+ __metadata("design:type", user_entity_1.User)
166
+ ], EditorProject.prototype, "owner", void 0);
167
+ exports.EditorProject = EditorProject = __decorate([
168
+ (0, typeorm_1.Entity)('editor_projects'),
169
+ (0, typeorm_1.Index)(['workspaceId']),
170
+ (0, typeorm_1.Index)(['ownerId']),
171
+ (0, typeorm_1.Index)(['status']),
172
+ (0, typeorm_1.Index)(['lastOpenedAt'])
173
+ ], EditorProject);
@@ -0,0 +1,20 @@
1
+ export declare enum EffectType {
2
+ TRANSITION = "transition",
3
+ FILTER = "filter",
4
+ ANIMATION = "animation",
5
+ TEXT_EFFECT = "text_effect",
6
+ OVERLAY = "overlay"
7
+ }
8
+ export declare class Effect {
9
+ id: string;
10
+ name: string;
11
+ description: string;
12
+ effectType: EffectType;
13
+ config: Record<string, any>;
14
+ thumbnailUrl: string;
15
+ isActive: boolean;
16
+ isPremium: boolean;
17
+ usageCount: number;
18
+ createdAt: Date;
19
+ updatedAt: Date;
20
+ }