@veritas-lex/contract-analysis-package 1.2.3

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 (214) hide show
  1. package/README.md +181 -0
  2. package/dist/auth/auth-core.module.d.ts +21 -0
  3. package/dist/auth/auth-core.module.d.ts.map +1 -0
  4. package/dist/auth/auth-core.module.js +56 -0
  5. package/dist/auth/auth-core.module.js.map +1 -0
  6. package/dist/auth/decorators/current-user.decorator.d.ts +2 -0
  7. package/dist/auth/decorators/current-user.decorator.d.ts.map +1 -0
  8. package/dist/auth/decorators/current-user.decorator.js +9 -0
  9. package/dist/auth/decorators/current-user.decorator.js.map +1 -0
  10. package/dist/auth/decorators/public.decorator.d.ts +3 -0
  11. package/dist/auth/decorators/public.decorator.d.ts.map +1 -0
  12. package/dist/auth/decorators/public.decorator.js +8 -0
  13. package/dist/auth/decorators/public.decorator.js.map +1 -0
  14. package/dist/auth/guards/jwt-auth.guard.d.ts +11 -0
  15. package/dist/auth/guards/jwt-auth.guard.d.ts.map +1 -0
  16. package/dist/auth/guards/jwt-auth.guard.js +39 -0
  17. package/dist/auth/guards/jwt-auth.guard.js.map +1 -0
  18. package/dist/auth/index.d.ts +7 -0
  19. package/dist/auth/index.d.ts.map +1 -0
  20. package/dist/auth/index.js +15 -0
  21. package/dist/auth/index.js.map +1 -0
  22. package/dist/auth/interfaces/jwt-payload.interface.d.ts +24 -0
  23. package/dist/auth/interfaces/jwt-payload.interface.d.ts.map +1 -0
  24. package/dist/auth/interfaces/jwt-payload.interface.js +3 -0
  25. package/dist/auth/interfaces/jwt-payload.interface.js.map +1 -0
  26. package/dist/auth/strategies/base-jwt.strategy.d.ts +47 -0
  27. package/dist/auth/strategies/base-jwt.strategy.d.ts.map +1 -0
  28. package/dist/auth/strategies/base-jwt.strategy.js +162 -0
  29. package/dist/auth/strategies/base-jwt.strategy.js.map +1 -0
  30. package/dist/bootstrap/configure-app.d.ts +50 -0
  31. package/dist/bootstrap/configure-app.d.ts.map +1 -0
  32. package/dist/bootstrap/configure-app.js +117 -0
  33. package/dist/bootstrap/configure-app.js.map +1 -0
  34. package/dist/bootstrap/index.d.ts +3 -0
  35. package/dist/bootstrap/index.d.ts.map +1 -0
  36. package/dist/bootstrap/index.js +6 -0
  37. package/dist/bootstrap/index.js.map +1 -0
  38. package/dist/config/app.config.d.ts +37 -0
  39. package/dist/config/app.config.d.ts.map +1 -0
  40. package/dist/config/app.config.js +28 -0
  41. package/dist/config/app.config.js.map +1 -0
  42. package/dist/config/database.config.d.ts +48 -0
  43. package/dist/config/database.config.d.ts.map +1 -0
  44. package/dist/config/database.config.js +34 -0
  45. package/dist/config/database.config.js.map +1 -0
  46. package/dist/config/doc.config.d.ts +31 -0
  47. package/dist/config/doc.config.d.ts.map +1 -0
  48. package/dist/config/doc.config.js +22 -0
  49. package/dist/config/doc.config.js.map +1 -0
  50. package/dist/config/index.d.ts +17 -0
  51. package/dist/config/index.d.ts.map +1 -0
  52. package/dist/config/index.js +26 -0
  53. package/dist/config/index.js.map +1 -0
  54. package/dist/config/jwt.config.d.ts +19 -0
  55. package/dist/config/jwt.config.d.ts.map +1 -0
  56. package/dist/config/jwt.config.js +28 -0
  57. package/dist/config/jwt.config.js.map +1 -0
  58. package/dist/config/logging.config.d.ts +33 -0
  59. package/dist/config/logging.config.d.ts.map +1 -0
  60. package/dist/config/logging.config.js +106 -0
  61. package/dist/config/logging.config.js.map +1 -0
  62. package/dist/config/redis.config.d.ts +19 -0
  63. package/dist/config/redis.config.d.ts.map +1 -0
  64. package/dist/config/redis.config.js +16 -0
  65. package/dist/config/redis.config.js.map +1 -0
  66. package/dist/config/security.config.d.ts +66 -0
  67. package/dist/config/security.config.d.ts.map +1 -0
  68. package/dist/config/security.config.js +66 -0
  69. package/dist/config/security.config.js.map +1 -0
  70. package/dist/config/storage.config.d.ts +20 -0
  71. package/dist/config/storage.config.d.ts.map +1 -0
  72. package/dist/config/storage.config.js +17 -0
  73. package/dist/config/storage.config.js.map +1 -0
  74. package/dist/config/validation.config.d.ts +62 -0
  75. package/dist/config/validation.config.d.ts.map +1 -0
  76. package/dist/config/validation.config.js +139 -0
  77. package/dist/config/validation.config.js.map +1 -0
  78. package/dist/constants/enums.d.ts +76 -0
  79. package/dist/constants/enums.d.ts.map +1 -0
  80. package/dist/constants/enums.js +92 -0
  81. package/dist/constants/enums.js.map +1 -0
  82. package/dist/constants/file-validation.constants.d.ts +28 -0
  83. package/dist/constants/file-validation.constants.d.ts.map +1 -0
  84. package/dist/constants/file-validation.constants.js +81 -0
  85. package/dist/constants/file-validation.constants.js.map +1 -0
  86. package/dist/constants/index.d.ts +6 -0
  87. package/dist/constants/index.d.ts.map +1 -0
  88. package/dist/constants/index.js +26 -0
  89. package/dist/constants/index.js.map +1 -0
  90. package/dist/constants/pii-classifications.constants.d.ts +27 -0
  91. package/dist/constants/pii-classifications.constants.d.ts.map +1 -0
  92. package/dist/constants/pii-classifications.constants.js +68 -0
  93. package/dist/constants/pii-classifications.constants.js.map +1 -0
  94. package/dist/database/base.entity.d.ts +6 -0
  95. package/dist/database/base.entity.d.ts.map +1 -0
  96. package/dist/database/base.entity.js +32 -0
  97. package/dist/database/base.entity.js.map +1 -0
  98. package/dist/database/database.module.d.ts +32 -0
  99. package/dist/database/database.module.d.ts.map +1 -0
  100. package/dist/database/database.module.js +69 -0
  101. package/dist/database/database.module.js.map +1 -0
  102. package/dist/database/entities/base-audit-log.entity.d.ts +21 -0
  103. package/dist/database/entities/base-audit-log.entity.d.ts.map +1 -0
  104. package/dist/database/entities/base-audit-log.entity.js +90 -0
  105. package/dist/database/entities/base-audit-log.entity.js.map +1 -0
  106. package/dist/database/entities/base-contract-chunk.entity.d.ts +18 -0
  107. package/dist/database/entities/base-contract-chunk.entity.d.ts.map +1 -0
  108. package/dist/database/entities/base-contract-chunk.entity.js +71 -0
  109. package/dist/database/entities/base-contract-chunk.entity.js.map +1 -0
  110. package/dist/database/entities/base-contract-event.entity.d.ts +16 -0
  111. package/dist/database/entities/base-contract-event.entity.d.ts.map +1 -0
  112. package/dist/database/entities/base-contract-event.entity.js +66 -0
  113. package/dist/database/entities/base-contract-event.entity.js.map +1 -0
  114. package/dist/database/entities/base-contract-key-date-rule.entity.d.ts +31 -0
  115. package/dist/database/entities/base-contract-key-date-rule.entity.d.ts.map +1 -0
  116. package/dist/database/entities/base-contract-key-date-rule.entity.js +140 -0
  117. package/dist/database/entities/base-contract-key-date-rule.entity.js.map +1 -0
  118. package/dist/database/entities/base-contract-pii-replacement.entity.d.ts +18 -0
  119. package/dist/database/entities/base-contract-pii-replacement.entity.d.ts.map +1 -0
  120. package/dist/database/entities/base-contract-pii-replacement.entity.js +67 -0
  121. package/dist/database/entities/base-contract-pii-replacement.entity.js.map +1 -0
  122. package/dist/database/entities/base-contract-red-flag.entity.d.ts +27 -0
  123. package/dist/database/entities/base-contract-red-flag.entity.d.ts.map +1 -0
  124. package/dist/database/entities/base-contract-red-flag.entity.js +114 -0
  125. package/dist/database/entities/base-contract-red-flag.entity.js.map +1 -0
  126. package/dist/database/entities/base-contract-task.entity.d.ts +20 -0
  127. package/dist/database/entities/base-contract-task.entity.d.ts.map +1 -0
  128. package/dist/database/entities/base-contract-task.entity.js +87 -0
  129. package/dist/database/entities/base-contract-task.entity.js.map +1 -0
  130. package/dist/database/entities/base-contract-text.entity.d.ts +19 -0
  131. package/dist/database/entities/base-contract-text.entity.d.ts.map +1 -0
  132. package/dist/database/entities/base-contract-text.entity.js +77 -0
  133. package/dist/database/entities/base-contract-text.entity.js.map +1 -0
  134. package/dist/database/entities/base-contract.entity.d.ts +56 -0
  135. package/dist/database/entities/base-contract.entity.d.ts.map +1 -0
  136. package/dist/database/entities/base-contract.entity.js +221 -0
  137. package/dist/database/entities/base-contract.entity.js.map +1 -0
  138. package/dist/database/entities/base-job.entity.d.ts +21 -0
  139. package/dist/database/entities/base-job.entity.d.ts.map +1 -0
  140. package/dist/database/entities/base-job.entity.js +89 -0
  141. package/dist/database/entities/base-job.entity.js.map +1 -0
  142. package/dist/database/entities/base-qna-question.entity.d.ts +22 -0
  143. package/dist/database/entities/base-qna-question.entity.d.ts.map +1 -0
  144. package/dist/database/entities/base-qna-question.entity.js +92 -0
  145. package/dist/database/entities/base-qna-question.entity.js.map +1 -0
  146. package/dist/database/entities/base-scoring-criteria.entity.d.ts +57 -0
  147. package/dist/database/entities/base-scoring-criteria.entity.d.ts.map +1 -0
  148. package/dist/database/entities/base-scoring-criteria.entity.js +376 -0
  149. package/dist/database/entities/base-scoring-criteria.entity.js.map +1 -0
  150. package/dist/database/entities/base-users-profile.entity.d.ts +32 -0
  151. package/dist/database/entities/base-users-profile.entity.d.ts.map +1 -0
  152. package/dist/database/entities/base-users-profile.entity.js +91 -0
  153. package/dist/database/entities/base-users-profile.entity.js.map +1 -0
  154. package/dist/database/entities/index.d.ts +16 -0
  155. package/dist/database/entities/index.d.ts.map +1 -0
  156. package/dist/database/entities/index.js +37 -0
  157. package/dist/database/entities/index.js.map +1 -0
  158. package/dist/database/entities/qna-question-template.entity.d.ts +30 -0
  159. package/dist/database/entities/qna-question-template.entity.d.ts.map +1 -0
  160. package/dist/database/entities/qna-question-template.entity.js +145 -0
  161. package/dist/database/entities/qna-question-template.entity.js.map +1 -0
  162. package/dist/database/entities/qna-response.entity.d.ts +29 -0
  163. package/dist/database/entities/qna-response.entity.d.ts.map +1 -0
  164. package/dist/database/entities/qna-response.entity.js +129 -0
  165. package/dist/database/entities/qna-response.entity.js.map +1 -0
  166. package/dist/database/index.d.ts +7 -0
  167. package/dist/database/index.d.ts.map +1 -0
  168. package/dist/database/index.js +32 -0
  169. package/dist/database/index.js.map +1 -0
  170. package/dist/database/redis.module.d.ts +12 -0
  171. package/dist/database/redis.module.d.ts.map +1 -0
  172. package/dist/database/redis.module.js +40 -0
  173. package/dist/database/redis.module.js.map +1 -0
  174. package/dist/database/redis.provider.d.ts +15 -0
  175. package/dist/database/redis.provider.d.ts.map +1 -0
  176. package/dist/database/redis.provider.js +42 -0
  177. package/dist/database/redis.provider.js.map +1 -0
  178. package/dist/dto/api-response.dto.d.ts +36 -0
  179. package/dist/dto/api-response.dto.d.ts.map +1 -0
  180. package/dist/dto/api-response.dto.js +88 -0
  181. package/dist/dto/api-response.dto.js.map +1 -0
  182. package/dist/dto/index.d.ts +2 -0
  183. package/dist/dto/index.d.ts.map +1 -0
  184. package/dist/dto/index.js +6 -0
  185. package/dist/dto/index.js.map +1 -0
  186. package/dist/filters/all-exceptions.filter.d.ts +43 -0
  187. package/dist/filters/all-exceptions.filter.d.ts.map +1 -0
  188. package/dist/filters/all-exceptions.filter.js +123 -0
  189. package/dist/filters/all-exceptions.filter.js.map +1 -0
  190. package/dist/filters/index.d.ts +3 -0
  191. package/dist/filters/index.d.ts.map +1 -0
  192. package/dist/filters/index.js +6 -0
  193. package/dist/filters/index.js.map +1 -0
  194. package/dist/helpers/crypto.service.d.ts +53 -0
  195. package/dist/helpers/crypto.service.d.ts.map +1 -0
  196. package/dist/helpers/crypto.service.js +153 -0
  197. package/dist/helpers/crypto.service.js.map +1 -0
  198. package/dist/helpers/index.d.ts +2 -0
  199. package/dist/helpers/index.d.ts.map +1 -0
  200. package/dist/helpers/index.js +6 -0
  201. package/dist/helpers/index.js.map +1 -0
  202. package/dist/index.d.ts +17 -0
  203. package/dist/index.d.ts.map +1 -0
  204. package/dist/index.js +86 -0
  205. package/dist/index.js.map +1 -0
  206. package/dist/swagger/index.d.ts +2 -0
  207. package/dist/swagger/index.d.ts.map +1 -0
  208. package/dist/swagger/index.js +6 -0
  209. package/dist/swagger/index.js.map +1 -0
  210. package/dist/swagger/swagger.d.ts +16 -0
  211. package/dist/swagger/swagger.d.ts.map +1 -0
  212. package/dist/swagger/swagger.js +59 -0
  213. package/dist/swagger/swagger.js.map +1 -0
  214. package/package.json +63 -0
@@ -0,0 +1,376 @@
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.BaseScoringCriteriaEntity = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ /**
15
+ * Abstract base ScoringCriteria entity matching
16
+ * `contract_red_flags_scoring_criteria` in database.sql.
17
+ *
18
+ * Cascade: user-level → organization-level → system defaults.
19
+ */
20
+ let BaseScoringCriteriaEntity = class BaseScoringCriteriaEntity {
21
+ id;
22
+ userId;
23
+ organizationId;
24
+ industry;
25
+ // ── Low Risk Thresholds ────────────────────────────────────────────
26
+ lowRiskPriceIncreaseMax;
27
+ lowRiskAuditFrequency;
28
+ lowRiskAuditNoticeDays;
29
+ lowRiskRenewalNoticeDays;
30
+ lowRiskLiabilityCapMinPercent;
31
+ lowRiskPaymentTermsDays;
32
+ lowRiskDataRetentionDays;
33
+ lowRiskWarrantyMonths;
34
+ lowRiskIndemnityCapped;
35
+ lowRiskIpOwnershipClear;
36
+ lowRiskTerminationNoticeDays;
37
+ // ── Medium Risk Thresholds ─────────────────────────────────────────
38
+ mediumRiskPriceIncreaseMin;
39
+ mediumRiskPriceIncreaseMax;
40
+ mediumRiskAuditFrequency;
41
+ mediumRiskRenewalNoticeDaysMin;
42
+ mediumRiskRenewalNoticeDaysMax;
43
+ mediumRiskLiabilityCapMinPercent;
44
+ mediumRiskLiabilityCapMaxPercent;
45
+ mediumRiskAuditNoticeDays;
46
+ mediumRiskPaymentTermsDays;
47
+ mediumRiskDataRetentionDays;
48
+ mediumRiskWarrantyMonths;
49
+ mediumRiskIndemnityBroad;
50
+ mediumRiskIpAmbiguity;
51
+ mediumRiskTerminationNoticeDays;
52
+ // ── High Risk Thresholds ───────────────────────────────────────────
53
+ highRiskPriceIncreasePercent;
54
+ highRiskPriceIncreaseNoCap;
55
+ highRiskAuditFrequencyMaxMonths;
56
+ highRiskNoAuditRights;
57
+ highRiskRenewalNoticeDays;
58
+ highRiskAutoRenewalNoExit;
59
+ highRiskLiabilityCapMaxPercent;
60
+ highRiskNoLiabilityCap;
61
+ highRiskNoDataProtection;
62
+ highRiskNoTerminationNotice;
63
+ highRiskUnlimitedIndemnity;
64
+ highRiskPerpetualIpGrant;
65
+ highRiskUnilateralModification;
66
+ // ── Modifiers ──────────────────────────────────────────────────────
67
+ vagueKeywords;
68
+ isEnterpriseStrict;
69
+ captureLowRisk;
70
+ lowRiskThreshold;
71
+ createdAt;
72
+ updatedAt;
73
+ };
74
+ exports.BaseScoringCriteriaEntity = BaseScoringCriteriaEntity;
75
+ __decorate([
76
+ (0, typeorm_1.PrimaryGeneratedColumn)("uuid"),
77
+ __metadata("design:type", String)
78
+ ], BaseScoringCriteriaEntity.prototype, "id", void 0);
79
+ __decorate([
80
+ (0, typeorm_1.Column)({ name: "user_id", type: "uuid", nullable: true }),
81
+ __metadata("design:type", String)
82
+ ], BaseScoringCriteriaEntity.prototype, "userId", void 0);
83
+ __decorate([
84
+ (0, typeorm_1.Column)({ name: "organization_id", type: "text", default: "default" }),
85
+ __metadata("design:type", String)
86
+ ], BaseScoringCriteriaEntity.prototype, "organizationId", void 0);
87
+ __decorate([
88
+ (0, typeorm_1.Column)({ type: "text" }),
89
+ __metadata("design:type", String)
90
+ ], BaseScoringCriteriaEntity.prototype, "industry", void 0);
91
+ __decorate([
92
+ (0, typeorm_1.Column)({ name: "low_risk_price_increase_max", type: "int", default: 5 }),
93
+ __metadata("design:type", Number)
94
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskPriceIncreaseMax", void 0);
95
+ __decorate([
96
+ (0, typeorm_1.Column)({ name: "low_risk_audit_frequency", type: "int", default: 2 }),
97
+ __metadata("design:type", Number)
98
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskAuditFrequency", void 0);
99
+ __decorate([
100
+ (0, typeorm_1.Column)({ name: "low_risk_audit_notice_days", type: "int", default: 30 }),
101
+ __metadata("design:type", Number)
102
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskAuditNoticeDays", void 0);
103
+ __decorate([
104
+ (0, typeorm_1.Column)({ name: "low_risk_renewal_notice_days", type: "int", default: 90 }),
105
+ __metadata("design:type", Number)
106
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskRenewalNoticeDays", void 0);
107
+ __decorate([
108
+ (0, typeorm_1.Column)({
109
+ name: "low_risk_liability_cap_min_percent",
110
+ type: "int",
111
+ default: 100,
112
+ }),
113
+ __metadata("design:type", Number)
114
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskLiabilityCapMinPercent", void 0);
115
+ __decorate([
116
+ (0, typeorm_1.Column)({ name: "low_risk_payment_terms_days", type: "int", default: 45 }),
117
+ __metadata("design:type", Number)
118
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskPaymentTermsDays", void 0);
119
+ __decorate([
120
+ (0, typeorm_1.Column)({ name: "low_risk_data_retention_days", type: "int", default: 30 }),
121
+ __metadata("design:type", Number)
122
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskDataRetentionDays", void 0);
123
+ __decorate([
124
+ (0, typeorm_1.Column)({ name: "low_risk_warranty_months", type: "int", default: 12 }),
125
+ __metadata("design:type", Number)
126
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskWarrantyMonths", void 0);
127
+ __decorate([
128
+ (0, typeorm_1.Column)({
129
+ name: "low_risk_indemnity_capped",
130
+ type: "boolean",
131
+ default: true,
132
+ }),
133
+ __metadata("design:type", Boolean)
134
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskIndemnityCapped", void 0);
135
+ __decorate([
136
+ (0, typeorm_1.Column)({
137
+ name: "low_risk_ip_ownership_clear",
138
+ type: "boolean",
139
+ default: true,
140
+ }),
141
+ __metadata("design:type", Boolean)
142
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskIpOwnershipClear", void 0);
143
+ __decorate([
144
+ (0, typeorm_1.Column)({
145
+ name: "low_risk_termination_notice_days",
146
+ type: "int",
147
+ default: 30,
148
+ }),
149
+ __metadata("design:type", Number)
150
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskTerminationNoticeDays", void 0);
151
+ __decorate([
152
+ (0, typeorm_1.Column)({ name: "medium_risk_price_increase_min", type: "int", default: 5 }),
153
+ __metadata("design:type", Number)
154
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskPriceIncreaseMin", void 0);
155
+ __decorate([
156
+ (0, typeorm_1.Column)({
157
+ name: "medium_risk_price_increase_max",
158
+ type: "int",
159
+ default: 15,
160
+ }),
161
+ __metadata("design:type", Number)
162
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskPriceIncreaseMax", void 0);
163
+ __decorate([
164
+ (0, typeorm_1.Column)({ name: "medium_risk_audit_frequency", type: "int", default: 1 }),
165
+ __metadata("design:type", Number)
166
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskAuditFrequency", void 0);
167
+ __decorate([
168
+ (0, typeorm_1.Column)({
169
+ name: "medium_risk_renewal_notice_days_min",
170
+ type: "int",
171
+ default: 30,
172
+ }),
173
+ __metadata("design:type", Number)
174
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskRenewalNoticeDaysMin", void 0);
175
+ __decorate([
176
+ (0, typeorm_1.Column)({
177
+ name: "medium_risk_renewal_notice_days_max",
178
+ type: "int",
179
+ default: 90,
180
+ }),
181
+ __metadata("design:type", Number)
182
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskRenewalNoticeDaysMax", void 0);
183
+ __decorate([
184
+ (0, typeorm_1.Column)({
185
+ name: "medium_risk_liability_cap_min_percent",
186
+ type: "int",
187
+ default: 50,
188
+ }),
189
+ __metadata("design:type", Number)
190
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskLiabilityCapMinPercent", void 0);
191
+ __decorate([
192
+ (0, typeorm_1.Column)({
193
+ name: "medium_risk_liability_cap_max_percent",
194
+ type: "int",
195
+ default: 100,
196
+ }),
197
+ __metadata("design:type", Number)
198
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskLiabilityCapMaxPercent", void 0);
199
+ __decorate([
200
+ (0, typeorm_1.Column)({ name: "medium_risk_audit_notice_days", type: "int", default: 15 }),
201
+ __metadata("design:type", Number)
202
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskAuditNoticeDays", void 0);
203
+ __decorate([
204
+ (0, typeorm_1.Column)({
205
+ name: "medium_risk_payment_terms_days",
206
+ type: "int",
207
+ default: 60,
208
+ }),
209
+ __metadata("design:type", Number)
210
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskPaymentTermsDays", void 0);
211
+ __decorate([
212
+ (0, typeorm_1.Column)({
213
+ name: "medium_risk_data_retention_days",
214
+ type: "int",
215
+ default: 60,
216
+ }),
217
+ __metadata("design:type", Number)
218
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskDataRetentionDays", void 0);
219
+ __decorate([
220
+ (0, typeorm_1.Column)({ name: "medium_risk_warranty_months", type: "int", default: 6 }),
221
+ __metadata("design:type", Number)
222
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskWarrantyMonths", void 0);
223
+ __decorate([
224
+ (0, typeorm_1.Column)({
225
+ name: "medium_risk_indemnity_broad",
226
+ type: "boolean",
227
+ default: true,
228
+ }),
229
+ __metadata("design:type", Boolean)
230
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskIndemnityBroad", void 0);
231
+ __decorate([
232
+ (0, typeorm_1.Column)({
233
+ name: "medium_risk_ip_ambiguity",
234
+ type: "boolean",
235
+ default: true,
236
+ }),
237
+ __metadata("design:type", Boolean)
238
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskIpAmbiguity", void 0);
239
+ __decorate([
240
+ (0, typeorm_1.Column)({
241
+ name: "medium_risk_termination_notice_days",
242
+ type: "int",
243
+ default: 15,
244
+ }),
245
+ __metadata("design:type", Number)
246
+ ], BaseScoringCriteriaEntity.prototype, "mediumRiskTerminationNoticeDays", void 0);
247
+ __decorate([
248
+ (0, typeorm_1.Column)({
249
+ name: "high_risk_price_increase_percent",
250
+ type: "int",
251
+ default: 15,
252
+ }),
253
+ __metadata("design:type", Number)
254
+ ], BaseScoringCriteriaEntity.prototype, "highRiskPriceIncreasePercent", void 0);
255
+ __decorate([
256
+ (0, typeorm_1.Column)({
257
+ name: "high_risk_price_increase_no_cap",
258
+ type: "boolean",
259
+ default: true,
260
+ }),
261
+ __metadata("design:type", Boolean)
262
+ ], BaseScoringCriteriaEntity.prototype, "highRiskPriceIncreaseNoCap", void 0);
263
+ __decorate([
264
+ (0, typeorm_1.Column)({
265
+ name: "high_risk_audit_frequency_max_months",
266
+ type: "int",
267
+ default: 36,
268
+ }),
269
+ __metadata("design:type", Number)
270
+ ], BaseScoringCriteriaEntity.prototype, "highRiskAuditFrequencyMaxMonths", void 0);
271
+ __decorate([
272
+ (0, typeorm_1.Column)({
273
+ name: "high_risk_no_audit_rights",
274
+ type: "boolean",
275
+ default: true,
276
+ }),
277
+ __metadata("design:type", Boolean)
278
+ ], BaseScoringCriteriaEntity.prototype, "highRiskNoAuditRights", void 0);
279
+ __decorate([
280
+ (0, typeorm_1.Column)({ name: "high_risk_renewal_notice_days", type: "int", default: 30 }),
281
+ __metadata("design:type", Number)
282
+ ], BaseScoringCriteriaEntity.prototype, "highRiskRenewalNoticeDays", void 0);
283
+ __decorate([
284
+ (0, typeorm_1.Column)({
285
+ name: "high_risk_auto_renewal_no_exit",
286
+ type: "boolean",
287
+ default: true,
288
+ }),
289
+ __metadata("design:type", Boolean)
290
+ ], BaseScoringCriteriaEntity.prototype, "highRiskAutoRenewalNoExit", void 0);
291
+ __decorate([
292
+ (0, typeorm_1.Column)({
293
+ name: "high_risk_liability_cap_max_percent",
294
+ type: "int",
295
+ default: 50,
296
+ }),
297
+ __metadata("design:type", Number)
298
+ ], BaseScoringCriteriaEntity.prototype, "highRiskLiabilityCapMaxPercent", void 0);
299
+ __decorate([
300
+ (0, typeorm_1.Column)({
301
+ name: "high_risk_no_liability_cap",
302
+ type: "boolean",
303
+ default: true,
304
+ }),
305
+ __metadata("design:type", Boolean)
306
+ ], BaseScoringCriteriaEntity.prototype, "highRiskNoLiabilityCap", void 0);
307
+ __decorate([
308
+ (0, typeorm_1.Column)({
309
+ name: "high_risk_no_data_protection",
310
+ type: "boolean",
311
+ default: true,
312
+ }),
313
+ __metadata("design:type", Boolean)
314
+ ], BaseScoringCriteriaEntity.prototype, "highRiskNoDataProtection", void 0);
315
+ __decorate([
316
+ (0, typeorm_1.Column)({
317
+ name: "high_risk_no_termination_notice",
318
+ type: "boolean",
319
+ default: true,
320
+ }),
321
+ __metadata("design:type", Boolean)
322
+ ], BaseScoringCriteriaEntity.prototype, "highRiskNoTerminationNotice", void 0);
323
+ __decorate([
324
+ (0, typeorm_1.Column)({
325
+ name: "high_risk_unlimited_indemnity",
326
+ type: "boolean",
327
+ default: true,
328
+ }),
329
+ __metadata("design:type", Boolean)
330
+ ], BaseScoringCriteriaEntity.prototype, "highRiskUnlimitedIndemnity", void 0);
331
+ __decorate([
332
+ (0, typeorm_1.Column)({
333
+ name: "high_risk_perpetual_ip_grant",
334
+ type: "boolean",
335
+ default: true,
336
+ }),
337
+ __metadata("design:type", Boolean)
338
+ ], BaseScoringCriteriaEntity.prototype, "highRiskPerpetualIpGrant", void 0);
339
+ __decorate([
340
+ (0, typeorm_1.Column)({
341
+ name: "high_risk_unilateral_modification",
342
+ type: "boolean",
343
+ default: true,
344
+ }),
345
+ __metadata("design:type", Boolean)
346
+ ], BaseScoringCriteriaEntity.prototype, "highRiskUnilateralModification", void 0);
347
+ __decorate([
348
+ (0, typeorm_1.Column)({ name: "vague_keywords", type: "text", array: true, nullable: true }),
349
+ __metadata("design:type", Array)
350
+ ], BaseScoringCriteriaEntity.prototype, "vagueKeywords", void 0);
351
+ __decorate([
352
+ (0, typeorm_1.Column)({ name: "is_enterprise_strict", type: "boolean", default: true }),
353
+ __metadata("design:type", Boolean)
354
+ ], BaseScoringCriteriaEntity.prototype, "isEnterpriseStrict", void 0);
355
+ __decorate([
356
+ (0, typeorm_1.Column)({ name: "capture_low_risk", type: "boolean", default: true }),
357
+ __metadata("design:type", Boolean)
358
+ ], BaseScoringCriteriaEntity.prototype, "captureLowRisk", void 0);
359
+ __decorate([
360
+ (0, typeorm_1.Column)({ name: "low_risk_threshold", type: "int", default: 20 }),
361
+ __metadata("design:type", Number)
362
+ ], BaseScoringCriteriaEntity.prototype, "lowRiskThreshold", void 0);
363
+ __decorate([
364
+ (0, typeorm_1.CreateDateColumn)({ type: "timestamptz", name: "created_at" }),
365
+ __metadata("design:type", Date)
366
+ ], BaseScoringCriteriaEntity.prototype, "createdAt", void 0);
367
+ __decorate([
368
+ (0, typeorm_1.UpdateDateColumn)({ type: "timestamptz", name: "updated_at" }),
369
+ __metadata("design:type", Date)
370
+ ], BaseScoringCriteriaEntity.prototype, "updatedAt", void 0);
371
+ exports.BaseScoringCriteriaEntity = BaseScoringCriteriaEntity = __decorate([
372
+ (0, typeorm_1.Unique)(["userId", "organizationId", "industry"]),
373
+ (0, typeorm_1.Index)(["userId"]),
374
+ (0, typeorm_1.Index)(["organizationId", "industry"])
375
+ ], BaseScoringCriteriaEntity);
376
+ //# sourceMappingURL=base-scoring-criteria.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-scoring-criteria.entity.js","sourceRoot":"","sources":["../../../src/database/entities/base-scoring-criteria.entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * User tier enum for AI model selection tiers.
3
+ * Matches the `user_tier` Postgres enum in database.sql.
4
+ */
5
+ export declare enum UserTier {
6
+ FREE = "free",
7
+ PROFESSIONAL = "professional",
8
+ ENTERPRISE = "enterprise"
9
+ }
10
+ /**
11
+ * Abstract base for the `users_profile` table.
12
+ *
13
+ * Both APIs share this table:
14
+ * - contract-analysis-api → `User` (with relations to Organisation, etc.)
15
+ * - ai-analysis-api → `UsersProfile` (standalone)
16
+ *
17
+ * Uses @PrimaryColumn (not @PrimaryGeneratedColumn) because the PK references
18
+ * Supabase `auth.users(id)` — it is NOT auto-generated.
19
+ */
20
+ export declare abstract class BaseUsersProfileEntity {
21
+ id: string;
22
+ fullName?: string;
23
+ email?: string;
24
+ companyName?: string;
25
+ profession?: string;
26
+ accountType: string;
27
+ tier: UserTier;
28
+ isActive: boolean;
29
+ createdAt: Date;
30
+ updatedAt: Date;
31
+ }
32
+ //# sourceMappingURL=base-users-profile.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-users-profile.entity.d.ts","sourceRoot":"","sources":["../../../src/database/entities/base-users-profile.entity.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,oBAAY,QAAQ;IAClB,IAAI,SAAS;IACb,YAAY,iBAAiB;IAC7B,UAAU,eAAe;CAC1B;AAED;;;;;;;;;GASG;AACH,8BAAsB,sBAAsB;IAE1C,EAAE,EAAE,MAAM,CAAC;IAGX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,EAAE,MAAM,CAAC;IAOpB,IAAI,EAAE,QAAQ,CAAC;IAGf,QAAQ,EAAE,OAAO,CAAC;IAGlB,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;CACjB"}
@@ -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.BaseUsersProfileEntity = exports.UserTier = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ /**
15
+ * User tier enum for AI model selection tiers.
16
+ * Matches the `user_tier` Postgres enum in database.sql.
17
+ */
18
+ var UserTier;
19
+ (function (UserTier) {
20
+ UserTier["FREE"] = "free";
21
+ UserTier["PROFESSIONAL"] = "professional";
22
+ UserTier["ENTERPRISE"] = "enterprise";
23
+ })(UserTier || (exports.UserTier = UserTier = {}));
24
+ /**
25
+ * Abstract base for the `users_profile` table.
26
+ *
27
+ * Both APIs share this table:
28
+ * - contract-analysis-api → `User` (with relations to Organisation, etc.)
29
+ * - ai-analysis-api → `UsersProfile` (standalone)
30
+ *
31
+ * Uses @PrimaryColumn (not @PrimaryGeneratedColumn) because the PK references
32
+ * Supabase `auth.users(id)` — it is NOT auto-generated.
33
+ */
34
+ class BaseUsersProfileEntity {
35
+ id;
36
+ fullName;
37
+ email;
38
+ companyName;
39
+ profession;
40
+ accountType;
41
+ tier;
42
+ isActive;
43
+ createdAt;
44
+ updatedAt;
45
+ }
46
+ exports.BaseUsersProfileEntity = BaseUsersProfileEntity;
47
+ __decorate([
48
+ (0, typeorm_1.PrimaryColumn)("uuid"),
49
+ __metadata("design:type", String)
50
+ ], BaseUsersProfileEntity.prototype, "id", void 0);
51
+ __decorate([
52
+ (0, typeorm_1.Column)({ name: "full_name", type: "text", nullable: true }),
53
+ __metadata("design:type", String)
54
+ ], BaseUsersProfileEntity.prototype, "fullName", void 0);
55
+ __decorate([
56
+ (0, typeorm_1.Column)({ type: "text", nullable: true }),
57
+ __metadata("design:type", String)
58
+ ], BaseUsersProfileEntity.prototype, "email", void 0);
59
+ __decorate([
60
+ (0, typeorm_1.Column)({ name: "company_name", type: "text", nullable: true }),
61
+ __metadata("design:type", String)
62
+ ], BaseUsersProfileEntity.prototype, "companyName", void 0);
63
+ __decorate([
64
+ (0, typeorm_1.Column)({ type: "text", nullable: true }),
65
+ __metadata("design:type", String)
66
+ ], BaseUsersProfileEntity.prototype, "profession", void 0);
67
+ __decorate([
68
+ (0, typeorm_1.Column)({ name: "account_type", type: "text", default: "user" }),
69
+ __metadata("design:type", String)
70
+ ], BaseUsersProfileEntity.prototype, "accountType", void 0);
71
+ __decorate([
72
+ (0, typeorm_1.Column)({
73
+ type: "enum",
74
+ enum: UserTier,
75
+ default: UserTier.FREE,
76
+ }),
77
+ __metadata("design:type", String)
78
+ ], BaseUsersProfileEntity.prototype, "tier", void 0);
79
+ __decorate([
80
+ (0, typeorm_1.Column)({ name: "is_active", type: "boolean", default: true }),
81
+ __metadata("design:type", Boolean)
82
+ ], BaseUsersProfileEntity.prototype, "isActive", void 0);
83
+ __decorate([
84
+ (0, typeorm_1.CreateDateColumn)({ name: "created_at", type: "timestamptz" }),
85
+ __metadata("design:type", Date)
86
+ ], BaseUsersProfileEntity.prototype, "createdAt", void 0);
87
+ __decorate([
88
+ (0, typeorm_1.UpdateDateColumn)({ name: "updated_at", type: "timestamptz" }),
89
+ __metadata("design:type", Date)
90
+ ], BaseUsersProfileEntity.prototype, "updatedAt", void 0);
91
+ //# sourceMappingURL=base-users-profile.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-users-profile.entity.js","sourceRoot":"","sources":["../../../src/database/entities/base-users-profile.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAKiB;AAEjB;;;GAGG;AACH,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,yCAA6B,CAAA;IAC7B,qCAAyB,CAAA;AAC3B,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB;AAED;;;;;;;;;GASG;AACH,MAAsB,sBAAsB;IAE1C,EAAE,CAAS;IAGX,QAAQ,CAAU;IAGlB,KAAK,CAAU;IAGf,WAAW,CAAU;IAGrB,UAAU,CAAU;IAGpB,WAAW,CAAS;IAOpB,IAAI,CAAW;IAGf,QAAQ,CAAU;IAGlB,SAAS,CAAO;IAGhB,SAAS,CAAO;CACjB;AAlCD,wDAkCC;AAhCC;IADC,IAAA,uBAAa,EAAC,MAAM,CAAC;;kDACX;AAGX;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;wDAC1C;AAGlB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDAC1B;AAGf;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2DAC1C;AAGrB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;0DACrB;AAGpB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;;2DAC5C;AAOpB;IALC,IAAA,gBAAM,EAAC;QACN,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,QAAQ,CAAC,IAAI;KACvB,CAAC;;oDACa;AAGf;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;wDAC5C;AAGlB;IADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;8BACnD,IAAI;yDAAC;AAGhB;IADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;8BACnD,IAAI;yDAAC"}
@@ -0,0 +1,16 @@
1
+ export { BaseUsersProfileEntity, UserTier } from "./base-users-profile.entity";
2
+ export { BaseContractEntity, PiiEntity } from "./base-contract.entity";
3
+ export { BaseJobEntity } from "./base-job.entity";
4
+ export { BaseContractTextEntity } from "./base-contract-text.entity";
5
+ export { BaseContractChunkEntity } from "./base-contract-chunk.entity";
6
+ export { BaseContractRedFlagEntity } from "./base-contract-red-flag.entity";
7
+ export { BaseContractPiiReplacementEntity } from "./base-contract-pii-replacement.entity";
8
+ export { BaseContractTaskEntity } from "./base-contract-task.entity";
9
+ export { BaseContractKeyDateRuleEntity } from "./base-contract-key-date-rule.entity";
10
+ export { BaseContractEventEntity } from "./base-contract-event.entity";
11
+ export { BaseAuditLogEntity } from "./base-audit-log.entity";
12
+ export { BaseQnaQuestionEntity } from "./base-qna-question.entity";
13
+ export { BaseScoringCriteriaEntity } from "./base-scoring-criteria.entity";
14
+ export { QnaQuestionTemplate } from "./qna-question-template.entity";
15
+ export { QnaResponse } from "./qna-response.entity";
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/database/entities/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.QnaResponse = exports.QnaQuestionTemplate = exports.BaseScoringCriteriaEntity = exports.BaseQnaQuestionEntity = exports.BaseAuditLogEntity = exports.BaseContractEventEntity = exports.BaseContractKeyDateRuleEntity = exports.BaseContractTaskEntity = exports.BaseContractPiiReplacementEntity = exports.BaseContractRedFlagEntity = exports.BaseContractChunkEntity = exports.BaseContractTextEntity = exports.BaseJobEntity = exports.BaseContractEntity = exports.UserTier = exports.BaseUsersProfileEntity = void 0;
4
+ // ── Abstract base entities (extend with @Entity in each API) ─────────
5
+ var base_users_profile_entity_1 = require("./base-users-profile.entity");
6
+ Object.defineProperty(exports, "BaseUsersProfileEntity", { enumerable: true, get: function () { return base_users_profile_entity_1.BaseUsersProfileEntity; } });
7
+ Object.defineProperty(exports, "UserTier", { enumerable: true, get: function () { return base_users_profile_entity_1.UserTier; } });
8
+ var base_contract_entity_1 = require("./base-contract.entity");
9
+ Object.defineProperty(exports, "BaseContractEntity", { enumerable: true, get: function () { return base_contract_entity_1.BaseContractEntity; } });
10
+ var base_job_entity_1 = require("./base-job.entity");
11
+ Object.defineProperty(exports, "BaseJobEntity", { enumerable: true, get: function () { return base_job_entity_1.BaseJobEntity; } });
12
+ var base_contract_text_entity_1 = require("./base-contract-text.entity");
13
+ Object.defineProperty(exports, "BaseContractTextEntity", { enumerable: true, get: function () { return base_contract_text_entity_1.BaseContractTextEntity; } });
14
+ var base_contract_chunk_entity_1 = require("./base-contract-chunk.entity");
15
+ Object.defineProperty(exports, "BaseContractChunkEntity", { enumerable: true, get: function () { return base_contract_chunk_entity_1.BaseContractChunkEntity; } });
16
+ var base_contract_red_flag_entity_1 = require("./base-contract-red-flag.entity");
17
+ Object.defineProperty(exports, "BaseContractRedFlagEntity", { enumerable: true, get: function () { return base_contract_red_flag_entity_1.BaseContractRedFlagEntity; } });
18
+ var base_contract_pii_replacement_entity_1 = require("./base-contract-pii-replacement.entity");
19
+ Object.defineProperty(exports, "BaseContractPiiReplacementEntity", { enumerable: true, get: function () { return base_contract_pii_replacement_entity_1.BaseContractPiiReplacementEntity; } });
20
+ var base_contract_task_entity_1 = require("./base-contract-task.entity");
21
+ Object.defineProperty(exports, "BaseContractTaskEntity", { enumerable: true, get: function () { return base_contract_task_entity_1.BaseContractTaskEntity; } });
22
+ var base_contract_key_date_rule_entity_1 = require("./base-contract-key-date-rule.entity");
23
+ Object.defineProperty(exports, "BaseContractKeyDateRuleEntity", { enumerable: true, get: function () { return base_contract_key_date_rule_entity_1.BaseContractKeyDateRuleEntity; } });
24
+ var base_contract_event_entity_1 = require("./base-contract-event.entity");
25
+ Object.defineProperty(exports, "BaseContractEventEntity", { enumerable: true, get: function () { return base_contract_event_entity_1.BaseContractEventEntity; } });
26
+ var base_audit_log_entity_1 = require("./base-audit-log.entity");
27
+ Object.defineProperty(exports, "BaseAuditLogEntity", { enumerable: true, get: function () { return base_audit_log_entity_1.BaseAuditLogEntity; } });
28
+ var base_qna_question_entity_1 = require("./base-qna-question.entity");
29
+ Object.defineProperty(exports, "BaseQnaQuestionEntity", { enumerable: true, get: function () { return base_qna_question_entity_1.BaseQnaQuestionEntity; } });
30
+ var base_scoring_criteria_entity_1 = require("./base-scoring-criteria.entity");
31
+ Object.defineProperty(exports, "BaseScoringCriteriaEntity", { enumerable: true, get: function () { return base_scoring_criteria_entity_1.BaseScoringCriteriaEntity; } });
32
+ // ── Concrete entities (use directly in both APIs) ────────────────────
33
+ var qna_question_template_entity_1 = require("./qna-question-template.entity");
34
+ Object.defineProperty(exports, "QnaQuestionTemplate", { enumerable: true, get: function () { return qna_question_template_entity_1.QnaQuestionTemplate; } });
35
+ var qna_response_entity_1 = require("./qna-response.entity");
36
+ Object.defineProperty(exports, "QnaResponse", { enumerable: true, get: function () { return qna_response_entity_1.QnaResponse; } });
37
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/database/entities/index.ts"],"names":[],"mappings":";;;AAAA,wEAAwE;AACxE,yEAA+E;AAAtE,mIAAA,sBAAsB,OAAA;AAAE,qHAAA,QAAQ,OAAA;AACzC,+DAAuE;AAA9D,0HAAA,kBAAkB,OAAA;AAC3B,qDAAkD;AAAzC,gHAAA,aAAa,OAAA;AACtB,yEAAqE;AAA5D,mIAAA,sBAAsB,OAAA;AAC/B,2EAAuE;AAA9D,qIAAA,uBAAuB,OAAA;AAChC,iFAA4E;AAAnE,0IAAA,yBAAyB,OAAA;AAClC,+FAA0F;AAAjF,wJAAA,gCAAgC,OAAA;AACzC,yEAAqE;AAA5D,mIAAA,sBAAsB,OAAA;AAC/B,2FAAqF;AAA5E,mJAAA,6BAA6B,OAAA;AACtC,2EAAuE;AAA9D,qIAAA,uBAAuB,OAAA;AAChC,iEAA6D;AAApD,2HAAA,kBAAkB,OAAA;AAC3B,uEAAmE;AAA1D,iIAAA,qBAAqB,OAAA;AAC9B,+EAA2E;AAAlE,yIAAA,yBAAyB,OAAA;AAElC,wEAAwE;AACxE,+EAAqE;AAA5D,mIAAA,mBAAmB,OAAA;AAC5B,6DAAoD;AAA3C,kHAAA,WAAW,OAAA"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Q&A Question Template Entity (Global Master Templates)
3
+ *
4
+ * Stores master question templates filtered by contract type.
5
+ * Questions are copied to `contract_qna_questions` based on detected contract type.
6
+ *
7
+ * This entity is identical across both APIs and is exported directly
8
+ * from the shared package — no API-specific extensions needed.
9
+ */
10
+ export declare class QnaQuestionTemplate {
11
+ id: string;
12
+ contractTypeKey?: string;
13
+ category: string;
14
+ questionKey: string;
15
+ language: string;
16
+ questionText: string;
17
+ responseSchema?: Record<string, unknown>;
18
+ isActive: boolean;
19
+ isMandatory: boolean;
20
+ displayOrder: number;
21
+ version: number;
22
+ description?: string;
23
+ processingStrategy: "full_context" | "rag" | "hybrid" | "grouped";
24
+ clauseTypeHints?: string[] | null;
25
+ questionGroup?: string | null;
26
+ groupOrder: number;
27
+ createdAt: Date;
28
+ updatedAt: Date;
29
+ }
30
+ //# sourceMappingURL=qna-question-template.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qna-question-template.entity.d.ts","sourceRoot":"","sources":["../../../src/database/entities/qna-question-template.entity.ts"],"names":[],"mappings":"AASA;;;;;;;;GAQG;AACH,qBAMa,mBAAmB;IAE9B,EAAE,EAAE,MAAM,CAAC;IAQX,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,QAAQ,EAAE,MAAM,CAAC;IAGjB,WAAW,EAAE,MAAM,CAAC;IAGpB,QAAQ,EAAE,MAAM,CAAC;IAGjB,YAAY,EAAE,MAAM,CAAC;IAGrB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAGzC,QAAQ,EAAE,OAAO,CAAC;IAGlB,WAAW,EAAE,OAAO,CAAC;IAGrB,YAAY,EAAE,MAAM,CAAC;IAGrB,OAAO,EAAE,MAAM,CAAC;IAGhB,WAAW,CAAC,EAAE,MAAM,CAAC;IAUrB,kBAAkB,EAAE,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAC;IAQlE,eAAe,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAQlC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG9B,UAAU,EAAE,MAAM,CAAC;IAGnB,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;CACjB"}