@sayren/store-sdk 0.49.0 → 0.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +17 -6
- package/dist/index.mjs +8 -0
- package/package.json +1 -1
- package/src/schemas/coupon.ts +17 -0
package/dist/index.d.mts
CHANGED
|
@@ -167,8 +167,8 @@ export declare const auditLogPageSchema: z$1.ZodObject<{
|
|
|
167
167
|
export type AuditLogPage = z$1.infer<typeof auditLogPageSchema>;
|
|
168
168
|
export declare const agentPolicyDecisionSchema: z$1.ZodEnum<{
|
|
169
169
|
DENIED: "DENIED";
|
|
170
|
-
APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
|
|
171
170
|
ALLOW: "ALLOW";
|
|
171
|
+
APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
|
|
172
172
|
}>;
|
|
173
173
|
export type AgentPolicyDecision = z$1.infer<typeof agentPolicyDecisionSchema>;
|
|
174
174
|
export declare const writePreviewSchema: z$1.ZodObject<{
|
|
@@ -193,8 +193,8 @@ export declare const writeDryRunResultSchema: z$1.ZodObject<{
|
|
|
193
193
|
dryRun: z$1.ZodLiteral<true>;
|
|
194
194
|
decision: z$1.ZodEnum<{
|
|
195
195
|
DENIED: "DENIED";
|
|
196
|
-
APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
|
|
197
196
|
ALLOW: "ALLOW";
|
|
197
|
+
APPROVAL_REQUIRED: "APPROVAL_REQUIRED";
|
|
198
198
|
}>;
|
|
199
199
|
reason: z$1.ZodNullable<z$1.ZodString>;
|
|
200
200
|
preview: z$1.ZodObject<{
|
|
@@ -8291,6 +8291,7 @@ export declare function couponRequestRuleIssues(body: {
|
|
|
8291
8291
|
perOrderLimit: number;
|
|
8292
8292
|
};
|
|
8293
8293
|
perMemberUseLimit?: number | null;
|
|
8294
|
+
dailyIssueLimit?: number | null;
|
|
8294
8295
|
issueStartsAt?: string | null;
|
|
8295
8296
|
issueEndsAt?: string | null;
|
|
8296
8297
|
visibleFrom?: string | null;
|
|
@@ -8379,6 +8380,7 @@ export declare const createCouponRequestSchema: z$1.ZodObject<{
|
|
|
8379
8380
|
endsAt: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodISODateTime>>;
|
|
8380
8381
|
validDaysAfterIssue: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8381
8382
|
totalIssueLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8383
|
+
dailyIssueLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8382
8384
|
totalUseLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8383
8385
|
perMemberIssueLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8384
8386
|
perMemberUseLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
@@ -8460,6 +8462,7 @@ export declare const updateCouponRequestSchema: z$1.ZodObject<{
|
|
|
8460
8462
|
endsAt: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodISODateTime>>;
|
|
8461
8463
|
validDaysAfterIssue: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8462
8464
|
totalIssueLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8465
|
+
dailyIssueLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8463
8466
|
totalUseLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8464
8467
|
perMemberIssueLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
8465
8468
|
perMemberUseLimit: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>;
|
|
@@ -8501,6 +8504,7 @@ export declare const couponSchema: z$1.ZodObject<{
|
|
|
8501
8504
|
endsAt: z$1.ZodNullable<z$1.ZodString>;
|
|
8502
8505
|
validDaysAfterIssue: z$1.ZodNullable<z$1.ZodNumber>;
|
|
8503
8506
|
totalIssueLimit: z$1.ZodNullable<z$1.ZodNumber>;
|
|
8507
|
+
dailyIssueLimit: z$1.ZodDefault<z$1.ZodOptional<z$1.ZodNullable<z$1.ZodNumber>>>;
|
|
8504
8508
|
totalUseLimit: z$1.ZodNullable<z$1.ZodNumber>;
|
|
8505
8509
|
perMemberIssueLimit: z$1.ZodNullable<z$1.ZodNumber>;
|
|
8506
8510
|
perMemberUseLimit: z$1.ZodNullable<z$1.ZodNumber>;
|
|
@@ -22138,6 +22142,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
22138
22142
|
endsAt: string | null;
|
|
22139
22143
|
validDaysAfterIssue: number | null;
|
|
22140
22144
|
totalIssueLimit: number | null;
|
|
22145
|
+
dailyIssueLimit: number | null;
|
|
22141
22146
|
totalUseLimit: number | null;
|
|
22142
22147
|
perMemberIssueLimit: number | null;
|
|
22143
22148
|
perMemberUseLimit: number | null;
|
|
@@ -22207,6 +22212,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
22207
22212
|
endsAt: string | null;
|
|
22208
22213
|
validDaysAfterIssue: number | null;
|
|
22209
22214
|
totalIssueLimit: number | null;
|
|
22215
|
+
dailyIssueLimit: number | null;
|
|
22210
22216
|
totalUseLimit: number | null;
|
|
22211
22217
|
perMemberIssueLimit: number | null;
|
|
22212
22218
|
perMemberUseLimit: number | null;
|
|
@@ -22275,6 +22281,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
22275
22281
|
endsAt: string | null;
|
|
22276
22282
|
validDaysAfterIssue: number | null;
|
|
22277
22283
|
totalIssueLimit: number | null;
|
|
22284
|
+
dailyIssueLimit: number | null;
|
|
22278
22285
|
totalUseLimit: number | null;
|
|
22279
22286
|
perMemberIssueLimit: number | null;
|
|
22280
22287
|
perMemberUseLimit: number | null;
|
|
@@ -22343,6 +22350,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
22343
22350
|
endsAt: string | null;
|
|
22344
22351
|
validDaysAfterIssue: number | null;
|
|
22345
22352
|
totalIssueLimit: number | null;
|
|
22353
|
+
dailyIssueLimit: number | null;
|
|
22346
22354
|
totalUseLimit: number | null;
|
|
22347
22355
|
perMemberIssueLimit: number | null;
|
|
22348
22356
|
perMemberUseLimit: number | null;
|
|
@@ -22411,6 +22419,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
22411
22419
|
endsAt: string | null;
|
|
22412
22420
|
validDaysAfterIssue: number | null;
|
|
22413
22421
|
totalIssueLimit: number | null;
|
|
22422
|
+
dailyIssueLimit: number | null;
|
|
22414
22423
|
totalUseLimit: number | null;
|
|
22415
22424
|
perMemberIssueLimit: number | null;
|
|
22416
22425
|
perMemberUseLimit: number | null;
|
|
@@ -22479,6 +22488,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
22479
22488
|
endsAt: string | null;
|
|
22480
22489
|
validDaysAfterIssue: number | null;
|
|
22481
22490
|
totalIssueLimit: number | null;
|
|
22491
|
+
dailyIssueLimit: number | null;
|
|
22482
22492
|
totalUseLimit: number | null;
|
|
22483
22493
|
perMemberIssueLimit: number | null;
|
|
22484
22494
|
perMemberUseLimit: number | null;
|
|
@@ -22547,6 +22557,7 @@ export declare function createStoreClient(options: StoreClientOptions): {
|
|
|
22547
22557
|
endsAt: string | null;
|
|
22548
22558
|
validDaysAfterIssue: number | null;
|
|
22549
22559
|
totalIssueLimit: number | null;
|
|
22560
|
+
dailyIssueLimit: number | null;
|
|
22550
22561
|
totalUseLimit: number | null;
|
|
22551
22562
|
perMemberIssueLimit: number | null;
|
|
22552
22563
|
perMemberUseLimit: number | null;
|
|
@@ -29767,10 +29778,10 @@ export declare const storeIndustrySchema: z$1.ZodEnum<{
|
|
|
29767
29778
|
export type StoreIndustry = z$1.infer<typeof storeIndustrySchema>;
|
|
29768
29779
|
/** 상품 자료 — 인터뷰의 「상품 자료」 답. 상품 등록 단계의 방법을 고른다 */
|
|
29769
29780
|
export declare const brandBriefProductSourceSchema: z$1.ZodEnum<{
|
|
29781
|
+
NONE: "NONE";
|
|
29770
29782
|
SPREADSHEET: "SPREADSHEET";
|
|
29771
29783
|
EXISTING_STORE: "EXISTING_STORE";
|
|
29772
29784
|
PHOTOS: "PHOTOS";
|
|
29773
|
-
NONE: "NONE";
|
|
29774
29785
|
}>;
|
|
29775
29786
|
export type BrandBriefProductSource = z$1.infer<typeof brandBriefProductSourceSchema>;
|
|
29776
29787
|
export declare const BRAND_BRIEF_MAX_REFERENCES = 5;
|
|
@@ -29795,10 +29806,10 @@ export declare const brandBriefSchema: z$1.ZodObject<{
|
|
|
29795
29806
|
summary: z$1.ZodString;
|
|
29796
29807
|
}, z$1.core.$strip>>;
|
|
29797
29808
|
productSource: z$1.ZodNullable<z$1.ZodEnum<{
|
|
29809
|
+
NONE: "NONE";
|
|
29798
29810
|
SPREADSHEET: "SPREADSHEET";
|
|
29799
29811
|
EXISTING_STORE: "EXISTING_STORE";
|
|
29800
29812
|
PHOTOS: "PHOTOS";
|
|
29801
|
-
NONE: "NONE";
|
|
29802
29813
|
}>>;
|
|
29803
29814
|
notes: z$1.ZodNullable<z$1.ZodString>;
|
|
29804
29815
|
}, z$1.core.$strip>;
|
|
@@ -29818,10 +29829,10 @@ export declare const putBrandBriefRequestSchema: z$1.ZodObject<{
|
|
|
29818
29829
|
summary: z$1.ZodString;
|
|
29819
29830
|
}, z$1.core.$strip>>>;
|
|
29820
29831
|
productSource: z$1.ZodDefault<z$1.ZodNullable<z$1.ZodEnum<{
|
|
29832
|
+
NONE: "NONE";
|
|
29821
29833
|
SPREADSHEET: "SPREADSHEET";
|
|
29822
29834
|
EXISTING_STORE: "EXISTING_STORE";
|
|
29823
29835
|
PHOTOS: "PHOTOS";
|
|
29824
|
-
NONE: "NONE";
|
|
29825
29836
|
}>>>;
|
|
29826
29837
|
notes: z$1.ZodDefault<z$1.ZodNullable<z$1.ZodString>>;
|
|
29827
29838
|
}, z$1.core.$strip>;
|
|
@@ -29842,10 +29853,10 @@ export declare const brandBriefViewSchema: z$1.ZodObject<{
|
|
|
29842
29853
|
summary: z$1.ZodString;
|
|
29843
29854
|
}, z$1.core.$strip>>;
|
|
29844
29855
|
productSource: z$1.ZodNullable<z$1.ZodEnum<{
|
|
29856
|
+
NONE: "NONE";
|
|
29845
29857
|
SPREADSHEET: "SPREADSHEET";
|
|
29846
29858
|
EXISTING_STORE: "EXISTING_STORE";
|
|
29847
29859
|
PHOTOS: "PHOTOS";
|
|
29848
|
-
NONE: "NONE";
|
|
29849
29860
|
}>>;
|
|
29850
29861
|
notes: z$1.ZodNullable<z$1.ZodString>;
|
|
29851
29862
|
}, z$1.core.$strip>>;
|
package/dist/index.mjs
CHANGED
|
@@ -9158,6 +9158,7 @@ const descriptions = {
|
|
|
9158
9158
|
validDaysAfterIssue: "발급 후 유효 일수 — 발급형(`MANUAL`·`DOWNLOAD`·`SIGNUP`) 쿠폰만. 쿠폰 종료일과 둘 중 먼저 끝나는 쪽이 적용된다",
|
|
9159
9159
|
totalIssueLimit: "총 발급 수 한도. 생략하면 무제한. 다운로드·회원가입 쿠폰은 한도에 닿으면 더 발급하지 않는다",
|
|
9160
9160
|
totalUseLimit: "총 사용 수 한도. 결제 중인 예약도 센다. 생략하면 무제한",
|
|
9161
|
+
dailyIssueLimit: "하루 발급 수 한도(이슈 #222) — 한국 시간 0시 기준 하루마다 이 장수까지 발급한다(받기·회원가입·셀러 지급). 생략하면 없다. 코드 입력형에는 두지 않는다",
|
|
9161
9162
|
perMemberIssueLimit: "1인 발급 수 한도(셀러 지급·다운로드). 생략하면 1인 1장. 회원가입 쿠폰은 1장 고정이라 1만 받는다",
|
|
9162
9163
|
perMemberUseLimit: "1인 사용 수 한도(코드 입력형). 생략하면 무제한. 비회원에게 여는 쿠폰은 둘 수 없다",
|
|
9163
9164
|
eligibility: "사용 조건 트리(이슈 #222) — `{ combinator: and|or, rules: [{ field, operator, value } | 그룹] }`, 그룹 3단·규칙 50개까지. 주면 `conditions`의 최소 주문 금액·첫 구매를 쓰지 않는다(`conditions`에는 `memberOnly`만 둔다). 필드 목록은 `COUPON_CONDITION_FIELDS`",
|
|
@@ -9211,6 +9212,10 @@ function couponRequestRuleIssues(body) {
|
|
|
9211
9212
|
path: ["stacking", "perOrderLimit"],
|
|
9212
9213
|
message: "한 주문에 두 장 이상은 상품 쿠폰만 쓸 수 있습니다"
|
|
9213
9214
|
});
|
|
9215
|
+
if (body.issueMethod === "CODE" && body.dailyIssueLimit != null) issues.push({
|
|
9216
|
+
path: ["dailyIssueLimit"],
|
|
9217
|
+
message: "하루 발급 한도는 발급형(셀러 지급·받기·회원가입) 쿠폰에만 둡니다"
|
|
9218
|
+
});
|
|
9214
9219
|
if (body.issueMethod !== "DOWNLOAD" && (body.issueStartsAt != null || body.issueEndsAt != null || body.visibleFrom != null)) issues.push({
|
|
9215
9220
|
path: ["issueStartsAt"],
|
|
9216
9221
|
message: "받기 기간·노출 시작은 받기 쿠폰에만 둡니다"
|
|
@@ -9258,6 +9263,7 @@ const createCouponRequestSchema = strictRequest(z$1.strictObject({
|
|
|
9258
9263
|
endsAt: couponTimeField(descriptions.endsAt),
|
|
9259
9264
|
validDaysAfterIssue: z$1.number().int().min(1).max(3650).nullable().optional().describe(descriptions.validDaysAfterIssue),
|
|
9260
9265
|
totalIssueLimit: limitField(descriptions.totalIssueLimit),
|
|
9266
|
+
dailyIssueLimit: limitField(descriptions.dailyIssueLimit),
|
|
9261
9267
|
totalUseLimit: limitField(descriptions.totalUseLimit),
|
|
9262
9268
|
perMemberIssueLimit: limitField(descriptions.perMemberIssueLimit),
|
|
9263
9269
|
perMemberUseLimit: limitField(descriptions.perMemberUseLimit),
|
|
@@ -9301,6 +9307,7 @@ const updateCouponRequestSchema = strictRequest(z$1.strictObject({
|
|
|
9301
9307
|
endsAt: couponTimeField(descriptions.endsAt),
|
|
9302
9308
|
validDaysAfterIssue: z$1.number().int().min(1).max(3650).nullable().optional(),
|
|
9303
9309
|
totalIssueLimit: limitField(descriptions.totalIssueLimit),
|
|
9310
|
+
dailyIssueLimit: limitField(descriptions.dailyIssueLimit),
|
|
9304
9311
|
totalUseLimit: limitField(descriptions.totalUseLimit),
|
|
9305
9312
|
perMemberIssueLimit: limitField(descriptions.perMemberIssueLimit),
|
|
9306
9313
|
perMemberUseLimit: limitField(descriptions.perMemberUseLimit),
|
|
@@ -9324,6 +9331,7 @@ const couponSchema = z$1.object({
|
|
|
9324
9331
|
endsAt: z$1.string().nullable(),
|
|
9325
9332
|
validDaysAfterIssue: z$1.number().int().nullable(),
|
|
9326
9333
|
totalIssueLimit: z$1.number().int().nullable(),
|
|
9334
|
+
dailyIssueLimit: z$1.number().int().nullable().optional().default(null).describe("하루 발급 수 한도(한국 시간 0시 기준). 없으면 null. 서버는 항상 싣는다"),
|
|
9327
9335
|
totalUseLimit: z$1.number().int().nullable(),
|
|
9328
9336
|
perMemberIssueLimit: z$1.number().int().nullable(),
|
|
9329
9337
|
perMemberUseLimit: z$1.number().int().nullable(),
|
package/package.json
CHANGED
package/src/schemas/coupon.ts
CHANGED
|
@@ -70,6 +70,8 @@ const descriptions = {
|
|
|
70
70
|
totalIssueLimit:
|
|
71
71
|
"총 발급 수 한도. 생략하면 무제한. 다운로드·회원가입 쿠폰은 한도에 닿으면 더 발급하지 않는다",
|
|
72
72
|
totalUseLimit: "총 사용 수 한도. 결제 중인 예약도 센다. 생략하면 무제한",
|
|
73
|
+
dailyIssueLimit:
|
|
74
|
+
"하루 발급 수 한도(이슈 #222) — 한국 시간 0시 기준 하루마다 이 장수까지 발급한다(받기·회원가입·셀러 지급). 생략하면 없다. 코드 입력형에는 두지 않는다",
|
|
73
75
|
perMemberIssueLimit:
|
|
74
76
|
"1인 발급 수 한도(셀러 지급·다운로드). 생략하면 1인 1장. 회원가입 쿠폰은 1장 고정이라 1만 받는다",
|
|
75
77
|
perMemberUseLimit:
|
|
@@ -123,6 +125,7 @@ export function couponRequestRuleIssues(body: {
|
|
|
123
125
|
audience?: CouponRuleTrees["eligibility"];
|
|
124
126
|
stacking?: { perOrderLimit: number };
|
|
125
127
|
perMemberUseLimit?: number | null;
|
|
128
|
+
dailyIssueLimit?: number | null;
|
|
126
129
|
issueStartsAt?: string | null;
|
|
127
130
|
issueEndsAt?: string | null;
|
|
128
131
|
visibleFrom?: string | null;
|
|
@@ -164,6 +167,11 @@ export function couponRequestRuleIssues(body: {
|
|
|
164
167
|
path: ["stacking", "perOrderLimit"],
|
|
165
168
|
message: "한 주문에 두 장 이상은 상품 쿠폰만 쓸 수 있습니다",
|
|
166
169
|
});
|
|
170
|
+
if (body.issueMethod === "CODE" && body.dailyIssueLimit != null)
|
|
171
|
+
issues.push({
|
|
172
|
+
path: ["dailyIssueLimit"],
|
|
173
|
+
message: "하루 발급 한도는 발급형(셀러 지급·받기·회원가입) 쿠폰에만 둡니다",
|
|
174
|
+
});
|
|
167
175
|
if (
|
|
168
176
|
body.issueMethod !== "DOWNLOAD" &&
|
|
169
177
|
(body.issueStartsAt != null || body.issueEndsAt != null || body.visibleFrom != null)
|
|
@@ -243,6 +251,7 @@ export const createCouponRequestSchema = strictRequest(
|
|
|
243
251
|
.optional()
|
|
244
252
|
.describe(descriptions.validDaysAfterIssue),
|
|
245
253
|
totalIssueLimit: limitField(descriptions.totalIssueLimit),
|
|
254
|
+
dailyIssueLimit: limitField(descriptions.dailyIssueLimit),
|
|
246
255
|
totalUseLimit: limitField(descriptions.totalUseLimit),
|
|
247
256
|
perMemberIssueLimit: limitField(descriptions.perMemberIssueLimit),
|
|
248
257
|
perMemberUseLimit: limitField(descriptions.perMemberUseLimit),
|
|
@@ -315,6 +324,7 @@ export const updateCouponRequestSchema = strictRequest(
|
|
|
315
324
|
endsAt: couponTimeField(descriptions.endsAt),
|
|
316
325
|
validDaysAfterIssue: z.number().int().min(1).max(3650).nullable().optional(),
|
|
317
326
|
totalIssueLimit: limitField(descriptions.totalIssueLimit),
|
|
327
|
+
dailyIssueLimit: limitField(descriptions.dailyIssueLimit),
|
|
318
328
|
totalUseLimit: limitField(descriptions.totalUseLimit),
|
|
319
329
|
perMemberIssueLimit: limitField(descriptions.perMemberIssueLimit),
|
|
320
330
|
perMemberUseLimit: limitField(descriptions.perMemberUseLimit),
|
|
@@ -345,6 +355,13 @@ export const couponSchema = z.object({
|
|
|
345
355
|
endsAt: z.string().nullable(),
|
|
346
356
|
validDaysAfterIssue: z.number().int().nullable(),
|
|
347
357
|
totalIssueLimit: z.number().int().nullable(),
|
|
358
|
+
dailyIssueLimit: z
|
|
359
|
+
.number()
|
|
360
|
+
.int()
|
|
361
|
+
.nullable()
|
|
362
|
+
.optional()
|
|
363
|
+
.default(null)
|
|
364
|
+
.describe("하루 발급 수 한도(한국 시간 0시 기준). 없으면 null. 서버는 항상 싣는다"),
|
|
348
365
|
totalUseLimit: z.number().int().nullable(),
|
|
349
366
|
perMemberIssueLimit: z.number().int().nullable(),
|
|
350
367
|
perMemberUseLimit: z.number().int().nullable(),
|