@yolo-croket-dev/entity-v2 0.3.35 → 0.3.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yolo-croket-dev/entity-v2",
3
- "version": "0.3.35",
3
+ "version": "0.3.37",
4
4
  "main": "index.js",
5
5
  "author": "Yolo Co., Ltd.",
6
6
  "description": "크로켓 nest 용 entity-v3",
@@ -190,6 +190,10 @@ export interface AdditionalPaymentRequestInfo {
190
190
  requestedDate: Date;
191
191
  /** 현재 유효한 추가금 결제 시도의 PTL. Original 환불 시 이 시도만 무효화한다. */
192
192
  activeAdditionalPaymentPayTryLogId?: Types.ObjectId | string;
193
+ /** 여러 init 중 현재 Original을 선점한 결제 시도 토큰. 이전 결제창 callback을 무효화한다. */
194
+ activeAdditionalPaymentAttemptId?: Types.ObjectId | string;
195
+ /** 현재 Additional 결제 시도 토큰을 선점한 시각. 운영 추적 및 장애 복구에 사용한다. */
196
+ activeAdditionalPaymentInitDate?: Date;
193
197
  /** Original 환불로 활성 Additional PTL을 무효화한 시각. */
194
198
  activeAdditionalPaymentInvalidatedDate?: Date;
195
199
  /**
@@ -15,6 +15,35 @@ export interface UserSensitiveIdentityCi {
15
15
  provider: CiProvider;
16
16
  verifiedAt: Date;
17
17
  }
18
+ /**
19
+ * @author 홍준
20
+ * @description 사용자 본인인증 개인정보의 AES-256-GCM 저장 구조
21
+ * @process 검색이 필요한 필드만 선택적으로 HMAC을 포함하고 원문과 키는 저장하지 않는다.
22
+ */
23
+ export interface UserSensitiveIdentityEncryptedValue {
24
+ algorithm: 'AES-256-GCM';
25
+ authTag: string;
26
+ ciphertext: string;
27
+ iv: string;
28
+ keyVersion: string;
29
+ lookupHmac?: string;
30
+ }
31
+ /**
32
+ * @author 홍준
33
+ * @description 본인인증 공급자가 확인한 개인정보 암호문 묶음
34
+ * @process 공급자가 반환한 필드만 저장하고 검증 공급자와 시각을 함께 보존한다.
35
+ */
36
+ export interface UserSensitiveIdentityCertification {
37
+ birthday?: UserSensitiveIdentityEncryptedValue;
38
+ carrier?: UserSensitiveIdentityEncryptedValue;
39
+ di?: UserSensitiveIdentityEncryptedValue;
40
+ foreigner?: UserSensitiveIdentityEncryptedValue;
41
+ gender?: UserSensitiveIdentityEncryptedValue;
42
+ name?: UserSensitiveIdentityEncryptedValue;
43
+ phone?: UserSensitiveIdentityEncryptedValue;
44
+ provider: CiProvider;
45
+ verifiedAt: Date;
46
+ }
18
47
  /**
19
48
  * @author 홍준
20
49
  * @description 사용자 민감 식별정보 전용 엔티티
@@ -24,6 +53,7 @@ export default interface UserSensitiveIdentityEntity {
24
53
  _id: Types.ObjectId;
25
54
  userId: Types.ObjectId;
26
55
  ci: UserSensitiveIdentityCi;
56
+ certification?: UserSensitiveIdentityCertification;
27
57
  createdAt?: Date;
28
58
  updatedAt?: Date;
29
59
  }