@sayren/store-sdk 0.33.0 → 0.35.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 +1205 -681
- package/dist/index.mjs +292 -27
- package/package.json +1 -1
- package/src/client.ts +91 -5
- package/src/http.ts +1 -1
- package/src/index.ts +3 -0
- package/src/schemas/category.ts +25 -0
- package/src/schemas/locale.ts +39 -0
- package/src/schemas/market.ts +24 -0
- package/src/schemas/order.ts +9 -2
- package/src/schemas/payment.ts +2 -2
- package/src/schemas/points.ts +2 -5
- package/src/schemas/product-info.ts +190 -0
- package/src/schemas/product-localization.ts +76 -0
- package/src/schemas/product.ts +41 -2
- package/src/schemas/store.ts +11 -0
- package/src/schemas/storefront-hosting.ts +6 -10
package/dist/index.mjs
CHANGED
|
@@ -170,7 +170,7 @@ const errorDetailSchema = z.object({
|
|
|
170
170
|
*/
|
|
171
171
|
docs: z.url().optional().catch(void 0),
|
|
172
172
|
/**
|
|
173
|
-
* 에러 코드별 보조 데이터(선택). 예: 관리 API `LIVE_GATE_NOT_MET
|
|
173
|
+
* 에러 코드별 보조 데이터(선택). 예: 관리 API `LIVE_GATE_NOT_MET`의
|
|
174
174
|
* `{ conditions: LiveGateCondition[] }`. 형태는 에러 코드마다 다르므로 소비측이 코드별 스키마로 다시 파싱한다
|
|
175
175
|
*/
|
|
176
176
|
details: z.record(z.string(), z.unknown()).optional().catch(void 0)
|
|
@@ -357,6 +357,36 @@ const myAccountSchema = z.object({
|
|
|
357
357
|
createdAt: z.string()
|
|
358
358
|
});
|
|
359
359
|
//#endregion
|
|
360
|
+
//#region src/schemas/locale.ts
|
|
361
|
+
/**
|
|
362
|
+
* 언어 코드 (이슈 #134) — BCP 47의 언어[-문자][-지역]까지 받는다(`ko`·`en`·`en-US`·`zh-Hant-TW`).
|
|
363
|
+
* 대소문자는 표준 표기로 맞춘다(언어 소문자, 문자 첫 글자 대문자, 지역 대문자). 맞지 않으면 null이다.
|
|
364
|
+
*/
|
|
365
|
+
const LOCALE_PATTERN = /^([a-z]{2,3})(?:-([a-z]{4}))?(?:-([a-z]{2}))?$/;
|
|
366
|
+
function normalizeLocale(value) {
|
|
367
|
+
const match = value?.trim().replace(/_/g, "-").toLowerCase().match(LOCALE_PATTERN);
|
|
368
|
+
if (!match) return null;
|
|
369
|
+
const [, language, script, region] = match;
|
|
370
|
+
return [
|
|
371
|
+
language,
|
|
372
|
+
script ? `${script[0]?.toUpperCase()}${script.slice(1)}` : null,
|
|
373
|
+
region ? region.toUpperCase() : null
|
|
374
|
+
].filter(Boolean).join("-");
|
|
375
|
+
}
|
|
376
|
+
/** 상점 기본 언어 — 옛 상점과 언어를 정하지 않은 상점의 값이다 */
|
|
377
|
+
const DEFAULT_STORE_LOCALE = "ko";
|
|
378
|
+
const localeCodeSchema = z.string().max(35).transform((value, ctx) => {
|
|
379
|
+
const normalized = normalizeLocale(value);
|
|
380
|
+
if (normalized === null) {
|
|
381
|
+
ctx.addIssue({
|
|
382
|
+
code: "custom",
|
|
383
|
+
message: "언어는 BCP 47 언어 코드입니다(예: ko·en·en-US)"
|
|
384
|
+
});
|
|
385
|
+
return z.NEVER;
|
|
386
|
+
}
|
|
387
|
+
return normalized;
|
|
388
|
+
}).describe("언어(BCP 47, 예: ko·en·en-US·zh-Hant-TW)");
|
|
389
|
+
//#endregion
|
|
360
390
|
//#region src/schemas/currency.ts
|
|
361
391
|
const INT4_MAX = 2147483647;
|
|
362
392
|
/** Stripe 카드 외 결제 상한이 8자리(999,999.99)라 2자리 통화는 이 값이 int4보다 먼저 걸린다 */
|
|
@@ -1680,7 +1710,8 @@ const updateStoreRequestSchema = z.object({
|
|
|
1680
1710
|
termsVersion: policyVersionSchema.optional().describe("이용약관 버전. 올리면 이 약관에 동의한 구매자에게 재동의를 요구한다(`GET /storefront/v1/me`의 `reconsentRequired`)"),
|
|
1681
1711
|
privacyVersion: policyVersionSchema.optional().describe("개인정보 수집이용 동의 버전. 올리면 구매자에게 재동의를 요구한다"),
|
|
1682
1712
|
termsUrl: policyDocumentUrlSchema.optional().describe("이용약관 문서 주소(https). 동의 시점의 값이 동의 이력에 복사된다. `null`을 주면 지운다"),
|
|
1683
|
-
privacyUrl: policyDocumentUrlSchema.optional().describe("개인정보 수집이용 동의 문서 주소(https). `null`을 주면 지운다")
|
|
1713
|
+
privacyUrl: policyDocumentUrlSchema.optional().describe("개인정보 수집이용 동의 문서 주소(https). `null`을 주면 지운다"),
|
|
1714
|
+
defaultLocale: localeCodeSchema.optional().describe("상점 기본 언어(이슈 #134). 상품·카테고리 필드가 이 언어 값이고 번역이 없는 칸은 이 값으로 보인다. 바꿔도 저장된 값은 그대로다")
|
|
1684
1715
|
}).refine((value) => Object.values(value).some((v) => v !== void 0), { message: "최소 1개 필드가 필요합니다" });
|
|
1685
1716
|
const storeSchema = z.object({
|
|
1686
1717
|
storeId: z.string(),
|
|
@@ -1711,6 +1742,7 @@ const storeSchema = z.object({
|
|
|
1711
1742
|
termsUrl: z.string().nullable().describe("이용약관 문서 주소. 정하지 않았으면 null이고 동의 이력에도 주소가 남지 않는다"),
|
|
1712
1743
|
privacyUrl: z.string().nullable().describe("개인정보 수집이용 동의 문서 주소"),
|
|
1713
1744
|
memberCount: z.number().int(),
|
|
1745
|
+
defaultLocale: z.string().optional().default("ko").describe("상점 기본 언어(이슈 #134, BCP 47). 서버는 항상 싣는다"),
|
|
1714
1746
|
createdAt: z.string()
|
|
1715
1747
|
});
|
|
1716
1748
|
const storeMemberSchema = z.object({
|
|
@@ -1813,7 +1845,6 @@ const sellerAddressRequestSchema = z.object({
|
|
|
1813
1845
|
* 공개 전환·슬러그 변경·호스팅 끄기는 승인(`APPROVAL_REQUIRED`)이다 — 구매자가 보는 화면을 바꾸는 쓰기다.
|
|
1814
1846
|
*
|
|
1815
1847
|
* 오류 코드:
|
|
1816
|
-
* - 403 `STOREFRONT_HOSTING_DISABLED` — 플랫폼 스위치가 꺼져 새 사이트를 만들 수 없다
|
|
1817
1848
|
* - 404 `STOREFRONT_SITE_NOT_FOUND` · `STOREFRONT_TEMPLATE_NOT_FOUND` · `STOREFRONT_VERSION_NOT_FOUND`
|
|
1818
1849
|
* - 409 `STOREFRONT_SITE_EXISTS` — 이미 사이트가 있다(상점당 1개)
|
|
1819
1850
|
* - 409 `STOREFRONT_SLUG_TAKEN` — 다른 사이트가 쓰거나 보류 중인 슬러그다
|
|
@@ -1830,7 +1861,7 @@ const sellerAddressRequestSchema = z.object({
|
|
|
1830
1861
|
* - 503 `STOREFRONT_PREVIEW_NOT_CONFIGURED` — 미리보기 서명 키가 설정되지 않았다
|
|
1831
1862
|
*
|
|
1832
1863
|
* 편집(M2b, `/v1/storefront/site/editing`·`files/**`·`checks/**`·`verify`·`builds/**`, 버전 만들기):
|
|
1833
|
-
* - 403 `STOREFRONT_EDITING_DISABLED` —
|
|
1864
|
+
* - 403 `STOREFRONT_EDITING_DISABLED` — 편집을 쓸 수 없어 셀러 템플릿으로 사이트를 만들 수 없다(사이트 만들기)
|
|
1834
1865
|
* - 503 `STOREFRONT_EDITING_NOT_CONFIGURED` — 편집 Sandbox가 설정되지 않았다
|
|
1835
1866
|
* - 409 `EDIT_CAPACITY_FULL` — 플랫폼 전체 동시 편집 상한에 걸렸다. `error.details.retryAfterSeconds` 뒤에 다시 한다
|
|
1836
1867
|
* - 409 `EDIT_SESSION_REQUIRED` — 편집 미리보기 링크: 편집 환경이 없다
|
|
@@ -2060,11 +2091,11 @@ const storefrontSiteSchema = z.object({
|
|
|
2060
2091
|
createdAt: z.string(),
|
|
2061
2092
|
updatedAt: z.string()
|
|
2062
2093
|
});
|
|
2063
|
-
/** `GET /v1/storefront/site` —
|
|
2094
|
+
/** `GET /v1/storefront/site` — 호스팅 설정과 현재 사이트(없으면 null. 끈 사이트는 싣지 않는다) */
|
|
2064
2095
|
const storefrontHostingSchema = z.object({
|
|
2065
|
-
enabled: z.boolean().describe("새 사이트를 만들 수 있는가 (
|
|
2096
|
+
enabled: z.boolean().describe("새 사이트를 만들 수 있는가 (항상 true)"),
|
|
2066
2097
|
domain: z.string().describe("호스팅 도메인 (예: `sayren.co`). 사이트 주소는 `{slug}.{domain}`"),
|
|
2067
|
-
editingEnabled: z.boolean().describe("파일 편집·버전 만들기를 쓸 수 있는가 (
|
|
2098
|
+
editingEnabled: z.boolean().describe("파일 편집·버전 만들기를 쓸 수 있는가 (Sandbox 설정)"),
|
|
2068
2099
|
site: storefrontSiteSchema.nullable()
|
|
2069
2100
|
});
|
|
2070
2101
|
const storefrontSlugAvailabilitySchema = z.object({
|
|
@@ -2340,7 +2371,7 @@ const storefrontSiteDomainSchema = z.object({
|
|
|
2340
2371
|
});
|
|
2341
2372
|
/** `GET /v1/storefront/site/domains` — 사이트의 주소 목록(기본 주소 + 내 도메인)과 연결 설정 */
|
|
2342
2373
|
const storefrontSiteDomainsSchema = z.object({
|
|
2343
|
-
enabled: z.boolean().describe("내 도메인을 추가할 수 있는가 (
|
|
2374
|
+
enabled: z.boolean().describe("내 도메인을 추가할 수 있는가 (항상 true)"),
|
|
2344
2375
|
limit: z.number().int().min(0).describe("상점당 내 도메인 수 상한 (해제한 도메인은 세지 않는다)"),
|
|
2345
2376
|
target: z.string().describe("CNAME 대상 (예: `sites.sayren.co`)"),
|
|
2346
2377
|
domains: z.array(storefrontSiteDomainSchema).describe("대표 주소 먼저, 그다음 추가한 순서")
|
|
@@ -2449,7 +2480,7 @@ const storefrontDevLogsSchema = z.object({
|
|
|
2449
2480
|
at: z.string()
|
|
2450
2481
|
});
|
|
2451
2482
|
const storefrontEditingSchema = z.object({
|
|
2452
|
-
enabled: z.boolean().describe("편집을 쓸 수 있는가 (
|
|
2483
|
+
enabled: z.boolean().describe("편집을 쓸 수 있는가 (Sandbox 설정)"),
|
|
2453
2484
|
session: storefrontEditSessionSchema.nullable().describe("열린 편집 환경. 잠들었거나 닫았으면 null"),
|
|
2454
2485
|
capacity: z.object({
|
|
2455
2486
|
limit: z.number().int().describe("플랫폼 전체 동시 편집 환경 상한"),
|
|
@@ -4198,11 +4229,11 @@ const POINT_ENTRY_TYPES = [
|
|
|
4198
4229
|
const pointPolicyNoticeSchema = z.enum(["REVIEW_REWARD_PAUSED", "POINTS_AVAILABLE"]).nullable().describe("상점에 보일 안내. `REVIEW_REWARD_PAUSED`: 지난 90일에 리뷰 적립이 있었는데 적립금 기본값이 끔으로 바뀌어 리뷰 자동 적립(500원 + 사진 500원)이 멈췄다. `POINTS_AVAILABLE`: 적립금 설정을 열었으니 다시 켤 수 있다. 안내할 것이 없으면 null");
|
|
4199
4230
|
/** `GET /v1/store/point-policy` 응답 */
|
|
4200
4231
|
const storePointPolicySchema = z.object({
|
|
4201
|
-
available: z.boolean().describe("적립금 설정을 바꿀 수 있는가.
|
|
4232
|
+
available: z.boolean().describe("적립금 설정을 바꿀 수 있는가. 지금은 늘 true다(이전 응답 호환 필드)"),
|
|
4202
4233
|
configured: z.boolean().describe("셀러가 정책을 저장한 적이 있는가. false면 기본(모두 끔)이다"),
|
|
4203
4234
|
reviewReward: reviewRewardPolicySchema.describe("리뷰 적립. 정하지 않았으면 끔·0원"),
|
|
4204
4235
|
purchaseEarn: purchaseEarnPolicySchema.describe("구매 적립. 구매확정 때 주문상품 실결제 금액(배송비 제외) × 적립률을 준다. 정하지 않았으면 끔·0"),
|
|
4205
|
-
useAvailable: z.boolean().optional().default(false).describe("적립금 사용(결제에 쓰기)을 켤 수 있는가 (#93).
|
|
4236
|
+
useAvailable: z.boolean().optional().default(false).describe("적립금 사용(결제에 쓰기)을 켤 수 있는가 (#93). 지금은 늘 true다. 필드가 없는 이전 응답은 false로 읽는다"),
|
|
4206
4237
|
use: pointUsePolicySchema.optional().default(POINT_POLICY_DEFAULTS.use).describe("적립금 사용 규칙. 적용 순서는 즉시할인 → 쿠폰 → 적립금이다. 정하지 않았으면 끔. 필드가 없는 이전 응답은 끔으로 읽는다"),
|
|
4207
4238
|
expiryDays: pointPolicySchema.shape.expiryDays,
|
|
4208
4239
|
notice: pointPolicyNoticeSchema
|
|
@@ -4307,6 +4338,118 @@ function splitRefund(input) {
|
|
|
4307
4338
|
};
|
|
4308
4339
|
}
|
|
4309
4340
|
//#endregion
|
|
4341
|
+
//#region src/schemas/product-info.ts
|
|
4342
|
+
/**
|
|
4343
|
+
* 상품정보제공 고시·인증 정보·안내 섹션 (이슈 #135).
|
|
4344
|
+
*
|
|
4345
|
+
* **코드 값은 문자열이다.** 품목군(`schemaId`)·인증 종류·대상·면제 사유는 플랫폼 코드 표(서버 DB)가 원천이고, 코드가 늘어도 이 SDK의
|
|
4346
|
+
* 계약이 깨지지 않게 zod enum으로 막지 않는다. 서버가 코드 표에 있는지 검사한다(없으면 400 `INVALID_INFO_CODE`).
|
|
4347
|
+
* enum으로 두는 값은 서버가 그 값으로 분기하는 인증 상태(`CERTIFICATION_STATUSES`)뿐이다.
|
|
4348
|
+
*/
|
|
4349
|
+
/**
|
|
4350
|
+
* 칸 값의 출처 — 셀러가 비운 칸을 서버가 채운다. 서버가 분기하는 값이라 형태가 정해져 있지만, 새 출처가 늘 수 있어 응답은 열린 객체다.
|
|
4351
|
+
* - `legal`: 법정 문구(`text`). 셀러가 적지 않는다
|
|
4352
|
+
* - `option`: 이름이 `names` 중 하나인 조합 옵션명의 값 목록
|
|
4353
|
+
* - `store`: 상점 필드(`field`, 예: `customerCenterPhone`)
|
|
4354
|
+
*/
|
|
4355
|
+
const infoFieldSourceSchema = z.looseObject({
|
|
4356
|
+
type: z.string(),
|
|
4357
|
+
text: z.string().optional(),
|
|
4358
|
+
names: z.array(z.string()).optional(),
|
|
4359
|
+
field: z.string().optional()
|
|
4360
|
+
});
|
|
4361
|
+
const infoSchemaFieldSchema = z.object({
|
|
4362
|
+
key: z.string(),
|
|
4363
|
+
label: z.string(),
|
|
4364
|
+
required: z.boolean().describe("법정 필수 칸인가. 서버는 비어 있어도 막지 않는다(표시는 「상품상세 참조」)"),
|
|
4365
|
+
maxLength: z.number().int(),
|
|
4366
|
+
source: infoFieldSourceSchema.nullable().optional().describe("값 출처. 없으면 셀러가 적는 칸")
|
|
4367
|
+
});
|
|
4368
|
+
/** 정형 정보 스키마 — 고시 품목군 하나(`kind: "notice"`). 칸 구성은 버전마다 고정이고 상품은 저장한 버전으로 표시된다 */
|
|
4369
|
+
const infoSchemaSchema = z.object({
|
|
4370
|
+
schemaId: z.string().describe("품목군 코드(예: `WEAR`)"),
|
|
4371
|
+
version: z.number().int(),
|
|
4372
|
+
kind: z.string().describe("스키마 종류. 지금은 `notice`(상품정보제공 고시)"),
|
|
4373
|
+
name: z.string(),
|
|
4374
|
+
fallback: z.string().describe("비운 칸의 표시 문구(예: 「상품상세 참조」)"),
|
|
4375
|
+
fields: z.array(infoSchemaFieldSchema).describe("칸. 배열 순서가 표시 순서다")
|
|
4376
|
+
});
|
|
4377
|
+
/** 플랫폼 코드 하나 — 코드 묶음(`setId`) 안에서 유일하다. `attrs`는 묶음마다 다른 부가 정보다 */
|
|
4378
|
+
const platformCodeSchema = z.object({
|
|
4379
|
+
code: z.string(),
|
|
4380
|
+
label: z.string(),
|
|
4381
|
+
attrs: z.record(z.string(), z.unknown()).describe("부가 정보. `certification.subject`는 `kinds`(이 대상을 충족하는 인증 종류)·`exemptions`(허용 면제 사유)를 싣는다")
|
|
4382
|
+
});
|
|
4383
|
+
/** 코드 묶음 — `GET /v1/codes/{setId}` */
|
|
4384
|
+
const PLATFORM_CODE_SETS = {
|
|
4385
|
+
certificationKind: "certification.kind",
|
|
4386
|
+
certificationSubject: "certification.subject",
|
|
4387
|
+
certificationExemption: "certification.exemption"
|
|
4388
|
+
};
|
|
4389
|
+
const productNoticeSchema = z.object({
|
|
4390
|
+
schemaId: z.string(),
|
|
4391
|
+
version: z.number().int(),
|
|
4392
|
+
values: z.record(z.string(), z.string()).describe("칸 키 → 셀러가 적은 값. 비운 칸은 없다")
|
|
4393
|
+
});
|
|
4394
|
+
const MAX_NOTICE_VALUE_LENGTH = 1500;
|
|
4395
|
+
const productNoticeRequestSchema = z.object({
|
|
4396
|
+
schemaId: z.string().trim().min(1).max(50).describe("품목군 코드(`GET /v1/info-schemas`)"),
|
|
4397
|
+
version: z.number().int().positive().optional().describe("품목군 버전. 생략하면 현재 버전"),
|
|
4398
|
+
values: z.record(z.string().max(50), z.string().max(MAX_NOTICE_VALUE_LENGTH)).default({}).describe("칸 키 → 값. 출처가 `legal`인 칸은 받지 않는다(400). 빈 문자열은 비운 칸으로 저장하지 않는다. 칸 길이는 스키마 `maxLength`")
|
|
4399
|
+
});
|
|
4400
|
+
/** 인증 대상 상태 — 서버가 분기한다(대상이면 인증서 필수, 면제면 사유 필수) */
|
|
4401
|
+
const CERTIFICATION_STATUSES = [
|
|
4402
|
+
"REQUIRED",
|
|
4403
|
+
"NOT_REQUIRED",
|
|
4404
|
+
"EXEMPT"
|
|
4405
|
+
];
|
|
4406
|
+
const MAX_CERTIFICATION_ITEMS = 20;
|
|
4407
|
+
const productCertificationsSchema = z.object({
|
|
4408
|
+
subjects: z.array(z.object({
|
|
4409
|
+
subject: z.string().describe("인증 대상 코드(`certification.subject`)"),
|
|
4410
|
+
status: z.string().describe("`REQUIRED`·`NOT_REQUIRED`·`EXEMPT`. 값이 늘 수 있어 문자열이다"),
|
|
4411
|
+
exemption: z.string().nullable().describe("면제 사유 코드. `EXEMPT`일 때만 있다")
|
|
4412
|
+
})).describe("인증 대상 여부. 없는 대상은 `NOT_REQUIRED`다"),
|
|
4413
|
+
items: z.array(z.object({
|
|
4414
|
+
kind: z.string().describe("인증 종류 코드(`certification.kind`)"),
|
|
4415
|
+
agency: z.string().nullable().describe("인증 기관"),
|
|
4416
|
+
number: z.string().describe("인증 번호")
|
|
4417
|
+
})).describe("인증서. 배열 순서가 표시 순서다")
|
|
4418
|
+
});
|
|
4419
|
+
const productCertificationsRequestSchema = z.object({
|
|
4420
|
+
subjects: z.array(z.object({
|
|
4421
|
+
subject: z.string().trim().min(1).max(50),
|
|
4422
|
+
status: z.enum(CERTIFICATION_STATUSES),
|
|
4423
|
+
exemption: z.string().trim().min(1).max(50).nullish()
|
|
4424
|
+
})).max(20).default([]).describe("인증 대상 여부. `REQUIRED`인데 그 대상의 인증 종류(`attrs.kinds`) 인증서가 `items`에 없으면 400 `CERTIFICATION_REQUIRED`, `EXEMPT`인데 사유가 없거나 대상이 허용하지 않는 사유면 400 `CERTIFICATION_EXEMPTION_INVALID`"),
|
|
4425
|
+
items: z.array(z.object({
|
|
4426
|
+
kind: z.string().trim().min(1).max(50),
|
|
4427
|
+
agency: z.string().trim().max(100).nullish(),
|
|
4428
|
+
number: z.string().trim().min(1).max(100)
|
|
4429
|
+
})).max(20).default([])
|
|
4430
|
+
});
|
|
4431
|
+
/** 상품 하나에 연결할 수 있는 안내 섹션 수 */
|
|
4432
|
+
const MAX_PRODUCT_INFO_SECTIONS = 10;
|
|
4433
|
+
const MAX_INFO_SECTION_TITLE = 100;
|
|
4434
|
+
/**
|
|
4435
|
+
* 안내 섹션 — 사이즈 가이드·세탁 안내처럼 여러 상품이 같이 쓰는 글이다. **상품은 연결만 한다**(복사가 아니다).
|
|
4436
|
+
* 섹션을 고치면 연결된 모든 상품의 표시가 바뀐다.
|
|
4437
|
+
*/
|
|
4438
|
+
const infoSectionSchema = z.object({
|
|
4439
|
+
infoSectionId: z.string(),
|
|
4440
|
+
title: z.string(),
|
|
4441
|
+
body: z.string().describe("본문 HTML(상세설명과 같은 정화 규칙)"),
|
|
4442
|
+
bodyJson: z.string().nullable().describe("에디터 복원용 직렬화 상태"),
|
|
4443
|
+
assignedProductCount: z.number().int().describe("이 섹션을 연결한 상품 수"),
|
|
4444
|
+
createdAt: z.string(),
|
|
4445
|
+
updatedAt: z.string()
|
|
4446
|
+
});
|
|
4447
|
+
const infoSectionRequestSchema = z.object({
|
|
4448
|
+
title: z.string().trim().min(1).max(100),
|
|
4449
|
+
body: z.string().default(""),
|
|
4450
|
+
bodyJson: z.string().nullable().optional()
|
|
4451
|
+
});
|
|
4452
|
+
//#endregion
|
|
4310
4453
|
//#region src/schemas/stay.ts
|
|
4311
4454
|
/**
|
|
4312
4455
|
* 날짜별 재고·가격(이슈 #118) — 숙박·회차처럼 날짜마다 재고와 가격이 다른 상품. 상품 `inventoryMode: "DATED"`이면 조합(객실) × 날짜
|
|
@@ -4739,6 +4882,9 @@ const productSchema = productSummarySchema.extend({
|
|
|
4739
4882
|
* 할인이 없으면 null이다. 이 필드를 싣기 전 서버의 응답에는 없으므로 optional이다.
|
|
4740
4883
|
*/
|
|
4741
4884
|
discount: discountSchema.nullable().optional().describe("설정된 즉시할인. GET /v1/products/{productId}/discount 응답과 같은 형태다. 할인이 없으면 null"),
|
|
4885
|
+
notice: productNoticeSchema.nullable().optional().describe("상품정보제공 고시(이슈 #135). 없으면 null. 서버는 항상 싣는다"),
|
|
4886
|
+
certifications: productCertificationsSchema.nullable().optional().describe("인증 정보(이슈 #135). 없으면 null. 서버는 항상 싣는다"),
|
|
4887
|
+
infoSectionIds: z.array(z.string()).optional().default([]).describe("연결한 안내 섹션 id(이슈 #135). 배열 순서가 표시 순서다. 서버는 항상 싣는다"),
|
|
4742
4888
|
createdAt: z.string().optional()
|
|
4743
4889
|
});
|
|
4744
4890
|
/** 상품 하나에 등록할 수 있는 이미지 최대 장수 — 첫 장이 대표(썸네일)다 */
|
|
@@ -4831,8 +4977,8 @@ const productVariantRequestSchema = z.object({
|
|
|
4831
4977
|
const optionModelRequestSchema = z.object({
|
|
4832
4978
|
optionGroups: z.array(optionGroupRequestSchema).max(3).default([]),
|
|
4833
4979
|
variants: z.array(productVariantRequestSchema).min(1).max(500),
|
|
4834
|
-
addonGroups: z.array(addonGroupRequestSchema).max(5).optional().describe("추가 선택 옵션명 전체(이슈 #59). 주면 통째로 바꾸고, 생략하면 등록은 없음·수정은 현재 값을 그대로 둔다. 끄려면 빈 배열을
|
|
4835
|
-
customInputs: z.array(customInputRequestSchema).max(5).optional().describe("직접 입력 항목 전체(이슈 #59). 배열 순서가 표시 순서다. 주면 통째로 바꾸고, 생략하면 등록은 없음·수정은 현재 값을 그대로 둔다. 항목명에 개인정보성 단어(`CUSTOM_INPUT_FORBIDDEN_WORDS`)가 있으면 400 `CUSTOM_INPUT_LABEL_FORBIDDEN
|
|
4980
|
+
addonGroups: z.array(addonGroupRequestSchema).max(5).optional().describe("추가 선택 옵션명 전체(이슈 #59). 주면 통째로 바꾸고, 생략하면 등록은 없음·수정은 현재 값을 그대로 둔다. 끄려면 빈 배열을 보낸다"),
|
|
4981
|
+
customInputs: z.array(customInputRequestSchema).max(5).optional().describe("직접 입력 항목 전체(이슈 #59). 배열 순서가 표시 순서다. 주면 통째로 바꾸고, 생략하면 등록은 없음·수정은 현재 값을 그대로 둔다. 항목명에 개인정보성 단어(`CUSTOM_INPUT_FORBIDDEN_WORDS`)가 있으면 400 `CUSTOM_INPUT_LABEL_FORBIDDEN`이다"),
|
|
4836
4982
|
optionSort: optionSortSchema.optional().describe("옵션 값 정렬 순서(이슈 #59). 서버가 이 순서로 값의 `sortOrder`를 다시 매긴다. 생략하면 등록은 `REGISTERED`, 수정은 현재 값이다")
|
|
4837
4983
|
});
|
|
4838
4984
|
/** GET /products/{productId}/options 응답 */
|
|
@@ -4893,6 +5039,9 @@ const productWriteShape = {
|
|
|
4893
5039
|
value: z.string()
|
|
4894
5040
|
})).optional(),
|
|
4895
5041
|
refundPolicy: productRefundPolicyPatchSchema.nullish().describe("상품별 환불 정책 — 준 항목만 상점 기본을 덮어쓴다. `null`이나 생략은 상점 기본을 그대로 쓴다는 뜻이다. 반품·교환 배송비(`returnDeliveryFee`·`exchangeDeliveryFee`)는 배송 상품에만 줄 수 있다(다른 유형은 400)"),
|
|
5042
|
+
notice: productNoticeRequestSchema.nullable().optional().describe("상품정보제공 고시(이슈 #135). `null`은 지운다. 등록에서 생략하면 없음, 전체 수정(PUT)에서 생략하면 지금 값을 유지한다"),
|
|
5043
|
+
certifications: productCertificationsRequestSchema.nullable().optional().describe("인증 정보(이슈 #135). `null`은 지운다. 등록에서 생략하면 없음, 전체 수정(PUT)에서 생략하면 지금 값을 유지한다"),
|
|
5044
|
+
infoSectionIds: z.array(z.string().min(1)).max(10).optional().describe("연결할 안내 섹션 id(이슈 #135). 배열 순서가 표시 순서다. 이 상점의 섹션이 아니면 400 `INFO_SECTION_NOT_FOUND`. 전체 수정(PUT)에서 생략하면 지금 연결을 유지한다"),
|
|
4896
5045
|
...optionModelRequestSchema.shape,
|
|
4897
5046
|
sourceOptionSetIds: z.array(z.string()).max(10).optional().describe("쓰기 전용(이슈 #59) — 이 저장으로 옵션을 불러온 저장 옵션 id. 상품 저장과 같은 트랜잭션에서 불러오기 기록을 남겨 저장 옵션의 `importedProductCount`를 센다. 없는 id는 무시한다"),
|
|
4898
5047
|
inventoryMode: inventoryModeSchema.optional().describe("재고 방식(이슈 #118). `DATED`면 날짜별 달력(`PUT /products/{id}/calendar`)이 재고·가격이고 주문서 줄은 숙박 기간(`stay`)을 받는다. 생략하면 등록은 `STANDARD`, 수정은 지금 값. 판매 이력이 있으면 바꿀 수 없다(409 `INVENTORY_MODE_LOCKED`)"),
|
|
@@ -6557,6 +6706,25 @@ const categoryListQuerySchema = z.object({
|
|
|
6557
6706
|
});
|
|
6558
6707
|
/** `DELETE /v1/categories/{categoryId}` 쿼리 — OpenAPI 문서용 형태 */
|
|
6559
6708
|
const categoryDeleteQuerySchema = z.object({ strategy: categoryDeleteStrategySchema.optional().describe("하위 카테고리·연결 상품 처리 방식. 생략하면 둘 중 하나라도 있을 때 409 `CATEGORY_NOT_EMPTY`다. `reparent`는 직계 자식을 삭제할 카테고리의 부모로 옮기고, `cascade`는 서브트리를 삭제하고 연결 상품을 미분류로 둔다") });
|
|
6709
|
+
/**
|
|
6710
|
+
* 카테고리 번역 (이슈 #134) — 언어 하나의 이름·SEO. 카테고리 필드(`name`·`meta*`)는 상점 기본 언어 값이고 번역 레코드가 언어별 값이다.
|
|
6711
|
+
* 비운 칸(null)은 스토어프론트가 기본 언어 값으로 대체한다(칸 단위 대체).
|
|
6712
|
+
*/
|
|
6713
|
+
const categoryLocalizationSchema = z.object({
|
|
6714
|
+
locale: z.string().describe("언어(BCP 47)"),
|
|
6715
|
+
name: z.string().nullable().describe("이름. null이면 기본 언어 이름"),
|
|
6716
|
+
metaTitle: z.string().nullable(),
|
|
6717
|
+
metaDescription: z.string().nullable(),
|
|
6718
|
+
metaKeywords: z.string().nullable(),
|
|
6719
|
+
updatedAt: z.string()
|
|
6720
|
+
});
|
|
6721
|
+
/** `PUT /v1/categories/{categoryId}/localizations/{locale}` 본문 — 레코드 전체를 바꾼다. 빠진 칸은 null(기본 언어 값으로 대체)이다 */
|
|
6722
|
+
const categoryLocalizationRequestSchema = z.strictObject({
|
|
6723
|
+
name: z.string().trim().min(1).max(100).nullable().optional(),
|
|
6724
|
+
metaTitle: z.string().max(100).nullable().optional(),
|
|
6725
|
+
metaDescription: z.string().max(300).nullable().optional(),
|
|
6726
|
+
metaKeywords: z.string().max(200).nullable().optional()
|
|
6727
|
+
});
|
|
6560
6728
|
//#endregion
|
|
6561
6729
|
//#region src/schemas/collection.ts
|
|
6562
6730
|
/**
|
|
@@ -8512,6 +8680,8 @@ const loginProviderTestSchema = z.object({
|
|
|
8512
8680
|
*
|
|
8513
8681
|
* 스토어프론트는 요청마다 도메인(`X-Storefront-Host`) → 구매자 국가(`X-Buyer-Country`) → 기본 권역 순으로 권역을 고르고, 주문서가 그 권역·통화를 굳힌다.
|
|
8514
8682
|
* 외화 권역은 적립금을 켤 수 없다(적립금은 기본 통화 단위다).
|
|
8683
|
+
*
|
|
8684
|
+
* 권역은 언어도 정한다(이슈 #134). `locales`는 이 권역 스토어프론트가 내는 언어이고 첫 언어가 대표 언어다. 비어 있으면 상점 기본 언어 하나다.
|
|
8515
8685
|
*/
|
|
8516
8686
|
const countryCodeSchema = z.string().regex(/^[A-Za-z]{2}$/, "국가는 ISO 3166-1 alpha-2 두 글자입니다").transform((value) => value.toUpperCase()).describe("국가(ISO 3166-1 alpha-2, 예: KR·US·JP)");
|
|
8517
8687
|
const hostnameSchema = z.string().min(1).max(253).regex(/^[A-Za-z0-9.-]+$/, "도메인은 호스트 이름만 입력합니다(예: shop.example.com)").transform((value) => value.toLowerCase().replace(/\.$/, "")).describe("연결 도메인(호스트 이름). 셀러가 직접 호스팅하는 스토어프론트가 `X-Storefront-Host`로 보낸다");
|
|
@@ -8524,7 +8694,8 @@ const marketSchema = z.object({
|
|
|
8524
8694
|
domains: z.array(z.string()).describe("이 권역에 연결한 도메인"),
|
|
8525
8695
|
couponsEnabled: z.boolean().describe("이 권역 주문서에서 쿠폰을 쓸 수 있는가"),
|
|
8526
8696
|
pointsEnabled: z.boolean().describe("이 권역 주문서에서 적립금을 쓸 수 있는가. 외화 권역은 늘 false다"),
|
|
8527
|
-
archivedAt: z.string().nullable().describe("보관 시각. 보관한 권역은 판정에서 빠지고 그 국가·도메인은 풀린다")
|
|
8697
|
+
archivedAt: z.string().nullable().describe("보관 시각. 보관한 권역은 판정에서 빠지고 그 국가·도메인은 풀린다"),
|
|
8698
|
+
locales: z.array(z.string()).optional().default([]).describe("이 권역 언어(이슈 #134). 첫 언어가 대표 언어다. 비어 있으면 상점 기본 언어 하나다. 서버는 항상 싣는다")
|
|
8528
8699
|
});
|
|
8529
8700
|
const createMarketRequestSchema = z.strictObject({
|
|
8530
8701
|
name: z.string().trim().min(1).max(50),
|
|
@@ -8532,14 +8703,16 @@ const createMarketRequestSchema = z.strictObject({
|
|
|
8532
8703
|
countries: z.array(countryCodeSchema).min(1).max(250),
|
|
8533
8704
|
domains: z.array(hostnameSchema).max(20).optional(),
|
|
8534
8705
|
couponsEnabled: z.boolean().optional().describe("기본 false"),
|
|
8535
|
-
pointsEnabled: z.boolean().optional().describe("기본 false. 외화 권역은 true로 둘 수 없다")
|
|
8706
|
+
pointsEnabled: z.boolean().optional().describe("기본 false. 외화 권역은 true로 둘 수 없다"),
|
|
8707
|
+
locales: z.array(localeCodeSchema).max(20).optional().describe("이 권역 언어(이슈 #134). 주면 목록 전체를 바꾼다. 첫 언어가 대표 언어다. 비우면 상점 기본 언어 하나다")
|
|
8536
8708
|
});
|
|
8537
8709
|
const updateMarketRequestSchema = z.strictObject({
|
|
8538
8710
|
name: z.string().trim().min(1).max(50).optional(),
|
|
8539
8711
|
countries: z.array(countryCodeSchema).max(250).optional().describe("주면 국가 목록 전체를 바꾼다. 다른 권역의 국가는 그 권역에서 먼저 빼야 한다"),
|
|
8540
8712
|
domains: z.array(hostnameSchema).max(20).optional().describe("주면 도메인 목록 전체를 바꾼다"),
|
|
8541
8713
|
couponsEnabled: z.boolean().optional(),
|
|
8542
|
-
pointsEnabled: z.boolean().optional().describe("외화 권역은 true로 둘 수 없다")
|
|
8714
|
+
pointsEnabled: z.boolean().optional().describe("외화 권역은 true로 둘 수 없다"),
|
|
8715
|
+
locales: z.array(localeCodeSchema).max(20).optional().describe("이 권역 언어(이슈 #134). 주면 목록 전체를 바꾼다. 첫 언어가 대표 언어다. 비우면 상점 기본 언어 하나다")
|
|
8543
8716
|
});
|
|
8544
8717
|
//#endregion
|
|
8545
8718
|
//#region src/schemas/payment.ts
|
|
@@ -8751,7 +8924,7 @@ const liveGateConditionCodeSchema = z.enum([
|
|
|
8751
8924
|
"PLATFORM_LIVE_ENABLED",
|
|
8752
8925
|
"NOT_TEMPLATE_STORE",
|
|
8753
8926
|
"NOT_DEVELOPMENT_STORE"
|
|
8754
|
-
]).describe("라이브 개방 조건. `TEST_CONNECTION`=TEST 세트 연결 테스트 성공, `SANDBOX_PAYMENT`=현재 TEST 세트로 샌드박스 결제 1건 승인, `SANDBOX_REFUND`=그 샌드박스 결제의 환불 1건 성공, `LIVE_CONNECTION`=LIVE 세트 연결 테스트 성공, `PLATFORM_LIVE_ENABLED`=플랫폼이 실결제를 열어
|
|
8927
|
+
]).describe("라이브 개방 조건. `TEST_CONNECTION`=TEST 세트 연결 테스트 성공, `SANDBOX_PAYMENT`=현재 TEST 세트로 샌드박스 결제 1건 승인, `SANDBOX_REFUND`=그 샌드박스 결제의 환불 1건 성공, `LIVE_CONNECTION`=LIVE 세트 연결 테스트 성공, `PLATFORM_LIVE_ENABLED`=플랫폼이 실결제를 열어 둠(늘 충족), `NOT_TEMPLATE_STORE`=템플릿 상점이 아님(템플릿 상점에만 싣고 늘 미충족), `NOT_DEVELOPMENT_STORE`=앱 개발 상점이 아님(앱 개발 상점에만 싣고 늘 미충족)");
|
|
8755
8928
|
const liveGateConditionSchema = z.object({
|
|
8756
8929
|
code: liveGateConditionCodeSchema,
|
|
8757
8930
|
met: z.boolean().describe("충족 여부"),
|
|
@@ -8763,7 +8936,7 @@ const liveGateSchema = z.object({
|
|
|
8763
8936
|
openedAt: z.string().nullable().describe("마지막으로 라이브로 전환한 시각. 없으면 null")
|
|
8764
8937
|
});
|
|
8765
8938
|
/**
|
|
8766
|
-
* 409 `LIVE_GATE_NOT_MET
|
|
8939
|
+
* 409 `LIVE_GATE_NOT_MET`의 `ApiError.details` 형태.
|
|
8767
8940
|
* 응답 파싱용이라 관대하다 — 알 수 없는 키는 버리고, 형태가 다르면 safeParse 실패로 처리한다.
|
|
8768
8941
|
*/
|
|
8769
8942
|
const liveGateErrorDetailsSchema = z.object({ conditions: z.array(liveGateConditionSchema).describe("라이브 개방 조건별 충족 여부 (순서 고정)") });
|
|
@@ -9136,6 +9309,7 @@ const orderSchema = z.object({
|
|
|
9136
9309
|
}),
|
|
9137
9310
|
currency: z.string().optional().describe("주문 통화(ISO 4217, 이슈 #130). 금액 필드는 모두 이 통화의 최소 단위다. 외화 주문이 생기면 이 값을 확인한다. 없으면 KRW다. 서버는 항상 싣는다"),
|
|
9138
9311
|
testPayment: z.boolean().describe("테스트 결제(샌드박스 결제) 주문인가. true면 실제로 돈이 오가지 않았습니다. 상품을 발송하지 않도록 주의하십시오"),
|
|
9312
|
+
locale: z.string().nullable().optional().describe("구매 언어(이슈 #134, BCP 47). 주문상품의 상품명·옵션 이름은 구매자가 이 언어로 본 값이다. null이면 상점 기본 언어다(언어 기능 이전 주문 포함)"),
|
|
9139
9313
|
items: z.array(orderItemSchema)
|
|
9140
9314
|
});
|
|
9141
9315
|
/** 주문 목록 응답 — `GET /v1/orders` */
|
|
@@ -9146,12 +9320,12 @@ const testPaymentQuery = z.enum(["true", "false"]).optional().describe("테스
|
|
|
9146
9320
|
const pageQuery = { page: z.string().optional().describe("페이지 번호 (1부터, 기본 1)") };
|
|
9147
9321
|
/**
|
|
9148
9322
|
* `GET /v1/orders` 쿼리 — OpenAPI 문서용 형태(값은 쿼리 문자열). 검증 규칙은 서버가 적용한다:
|
|
9149
|
-
* `orderNo` 없이 `orderedFrom` 누락 400 `MISSING_PARAMETER`, 날짜·`orderNo` 형식 오류 400 `INVALID_PARAMETER`,
|
|
9323
|
+
* `orderNo` 없이 `orderedFrom` 누락 400 `MISSING_PARAMETER`, 날짜·`orderNo` 형식 오류 400 `INVALID_PARAMETER`, 366일 초과 400 `RANGE_TOO_WIDE`,
|
|
9150
9324
|
* `testPayment`가 `true`·`false`가 아니면 400 `INVALID_PARAMETER`
|
|
9151
9325
|
*/
|
|
9152
9326
|
const orderListQuerySchema = z.object({
|
|
9153
9327
|
orderedFrom: z.string().optional().describe("조회 시작 시각 (ISO 8601 날짜 또는 일시, 포함). `orderNo`가 없으면 필수"),
|
|
9154
|
-
orderedTo: z.string().optional().describe("조회 끝 시각 (ISO 8601, 포함). 생략하면 orderedFrom부터 31일. 기간은 최대
|
|
9328
|
+
orderedTo: z.string().optional().describe("조회 끝 시각 (ISO 8601, 포함). 생략하면 orderedFrom부터 31일. 기간은 최대 366일"),
|
|
9155
9329
|
status: orderItemStatusSchema.optional().describe("주문상품 상태 필터 — 이 상태의 주문상품이 하나라도 있는 주문"),
|
|
9156
9330
|
keyword: z.string().optional().describe("주문 id·주문번호(일치, 하이픈 허용)·주문자명·수령인명(포함) 검색"),
|
|
9157
9331
|
orderNo: z.string().optional().describe("주문번호 조회(이슈 #107) — 숫자 14자리, 하이픈 허용(`2610-0284-7315-92`). 주면 기간 조건 없이 그 주문만 찾습니다. 형식이 아니면 400 `INVALID_PARAMETER`"),
|
|
@@ -9316,6 +9490,69 @@ const purchaseDecisionExtendResultSchema = z.object({
|
|
|
9316
9490
|
*/
|
|
9317
9491
|
const addressChangeRequestListSchema = z.array(z.record(z.string(), z.unknown())).describe("배송지 변경 요청 목록 (현재 항상 빈 배열)");
|
|
9318
9492
|
//#endregion
|
|
9493
|
+
//#region src/schemas/product-localization.ts
|
|
9494
|
+
/**
|
|
9495
|
+
* 상품 번역 (이슈 #134) — 언어 하나의 상품명·상세설명·이미지·옵션 이름. 상품 필드는 상점 기본 언어 값이고 번역 레코드가 언어별 값이다.
|
|
9496
|
+
* 비운 칸(null)은 스토어프론트가 기본 언어 값으로 대체한다(칸 단위 대체). 이미지는 목록 통째로 대체한다.
|
|
9497
|
+
* 옵션은 id가 원천이다 — 값 id·추가금·재고는 언어와 무관하고 이름만 언어별이다.
|
|
9498
|
+
*/
|
|
9499
|
+
const translatedOptionValueSchema = z.object({
|
|
9500
|
+
valueId: z.string(),
|
|
9501
|
+
name: z.string().nullable().describe("값 이름. null이면 기본 언어 이름")
|
|
9502
|
+
});
|
|
9503
|
+
const translatedOptionGroupSchema = z.object({
|
|
9504
|
+
groupId: z.string(),
|
|
9505
|
+
name: z.string().nullable().describe("옵션명. null이면 기본 언어 이름"),
|
|
9506
|
+
values: z.array(translatedOptionValueSchema)
|
|
9507
|
+
});
|
|
9508
|
+
const translatedCustomInputSchema = z.object({
|
|
9509
|
+
inputId: z.string(),
|
|
9510
|
+
label: z.string().nullable().describe("항목명. null이면 기본 언어 항목명"),
|
|
9511
|
+
placeholder: z.string().nullable().describe("입력 안내. null이면 기본 언어 안내")
|
|
9512
|
+
});
|
|
9513
|
+
/**
|
|
9514
|
+
* 조회 응답 — 지금 상품의 옵션명·값·직접 입력 항목을 모두 싣고 번역하지 않은 칸은 null이다.
|
|
9515
|
+
* `optionGroups`는 조합 옵션, `addonGroups`는 추가 선택이다(상품 응답과 같은 구분)
|
|
9516
|
+
*/
|
|
9517
|
+
const productLocalizationSchema = z.object({
|
|
9518
|
+
locale: z.string().describe("언어(BCP 47)"),
|
|
9519
|
+
name: z.string().nullable().describe("상품명. null이면 기본 언어 상품명"),
|
|
9520
|
+
description: z.string().nullable().describe("상세설명(HTML). null이면 기본 언어 상세설명"),
|
|
9521
|
+
descriptionJson: z.string().nullable().describe("상세설명 에디터 상태(재편집 복원용)"),
|
|
9522
|
+
images: z.array(z.string()).nullable().describe("이미지 목록. null이면 기본 언어 목록"),
|
|
9523
|
+
optionGroups: z.array(translatedOptionGroupSchema),
|
|
9524
|
+
addonGroups: z.array(translatedOptionGroupSchema),
|
|
9525
|
+
customInputs: z.array(translatedCustomInputSchema),
|
|
9526
|
+
updatedAt: z.string()
|
|
9527
|
+
});
|
|
9528
|
+
const translatedNameSchema = z.string().trim().min(1).max(50).nullable().optional();
|
|
9529
|
+
const translatedOptionGroupRequestSchema = z.strictObject({
|
|
9530
|
+
groupId: z.string(),
|
|
9531
|
+
name: translatedNameSchema,
|
|
9532
|
+
values: z.array(z.strictObject({
|
|
9533
|
+
valueId: z.string(),
|
|
9534
|
+
name: translatedNameSchema
|
|
9535
|
+
})).optional()
|
|
9536
|
+
});
|
|
9537
|
+
/**
|
|
9538
|
+
* `PUT /v1/products/{productId}/localizations/{locale}` 본문 — 레코드 전체를 바꾼다. 빠진 칸은 null(기본 언어 값으로 대체)이다.
|
|
9539
|
+
* 옵션은 번역할 id만 보낸다. 상품에 없는 id는 400 `PRODUCT_LOCALIZATION_TARGET_NOT_FOUND`다.
|
|
9540
|
+
* 번역한 옵션명·값 이름도 기본 언어와 같은 규칙(대소문자·앞뒤 공백 무시 유일)이고 겹치면 400 `INVALID_OPTION_MODEL`이다
|
|
9541
|
+
*/
|
|
9542
|
+
const productLocalizationRequestSchema = z.strictObject({
|
|
9543
|
+
name: z.string().trim().min(1).max(100).nullable().optional(),
|
|
9544
|
+
description: z.string().nullable().optional(),
|
|
9545
|
+
descriptionJson: z.string().nullable().optional(),
|
|
9546
|
+
images: z.array(productImageUrlSchema).min(1).max(10).nullable().optional(),
|
|
9547
|
+
optionGroups: z.array(translatedOptionGroupRequestSchema).optional(),
|
|
9548
|
+
addonGroups: z.array(translatedOptionGroupRequestSchema).optional(),
|
|
9549
|
+
customInputs: z.array(z.strictObject({
|
|
9550
|
+
inputId: z.string(),
|
|
9551
|
+
label: z.string().trim().min(1).max(30).nullable().optional(),
|
|
9552
|
+
placeholder: z.string().trim().min(1).max(100).nullable().optional()
|
|
9553
|
+
})).optional()
|
|
9554
|
+
});
|
|
9555
|
+
//#endregion
|
|
9319
9556
|
//#region src/schemas/saved-option-set.ts
|
|
9320
9557
|
/**
|
|
9321
9558
|
* 저장 옵션 (이슈 #59) — 자주 쓰는 옵션 구성을 이름 붙여 두고 상품 등록에서 불러온다.
|
|
@@ -9808,6 +10045,12 @@ function createStoreClient(options) {
|
|
|
9808
10045
|
update: (productId, body) => storeHttp.request("PUT", path`/products/${productId}`, productSchema, { body: productReplaceRequestSchema.parse(body) }),
|
|
9809
10046
|
patch: (productId, body) => storeHttp.requestVoid("PATCH", path`/products/${productId}`, { body: productPatchRequestSchema.parse(body) }),
|
|
9810
10047
|
remove: (productId) => storeHttp.requestVoid("DELETE", path`/products/${productId}`),
|
|
10048
|
+
/** 번역(이슈 #134) — 언어별 상품명·상세설명·이미지·옵션 이름 */
|
|
10049
|
+
localizations: {
|
|
10050
|
+
list: (productId) => storeHttp.request("GET", path`/products/${productId}/localizations`, z.array(productLocalizationSchema)),
|
|
10051
|
+
put: (productId, locale, body) => storeHttp.request("PUT", path`/products/${productId}/localizations/${locale}`, productLocalizationSchema, { body: productLocalizationRequestSchema.parse(body) }),
|
|
10052
|
+
remove: (productId, locale) => storeHttp.requestVoid("DELETE", path`/products/${productId}/localizations/${locale}`)
|
|
10053
|
+
},
|
|
9811
10054
|
bulkUpdateStatus: (productIds, status, idempotencyKey) => storeHttp.request("POST", "/products/bulk/status", bulkResultSchema, {
|
|
9812
10055
|
body: {
|
|
9813
10056
|
productIds,
|
|
@@ -9848,6 +10091,23 @@ function createStoreClient(options) {
|
|
|
9848
10091
|
saveFromProduct: (body) => storeHttp.request("POST", "/saved-option-sets/from-product", savedOptionSetFromProductResultSchema, { body: savedOptionSetFromProductRequestSchema.parse(body) })
|
|
9849
10092
|
},
|
|
9850
10093
|
/**
|
|
10094
|
+
* 상품정보제공 고시 품목군(이슈 #135) — 플랫폼 코드 표. 현재 버전만 싣는다. 권한은 상품 조회(`product:r`)다
|
|
10095
|
+
*/
|
|
10096
|
+
infoSchemas: { list: (params) => storeHttp.request("GET", "/info-schemas", z.array(infoSchemaSchema), { query: params }) },
|
|
10097
|
+
/** 플랫폼 코드 묶음(이슈 #135) — 인증 종류·대상·면제 사유(`PLATFORM_CODE_SETS`). 권한은 상품 조회(`product:r`)다 */
|
|
10098
|
+
codes: { list: (setId) => storeHttp.request("GET", path`/codes/${setId}`, z.array(platformCodeSchema)) },
|
|
10099
|
+
/**
|
|
10100
|
+
* 안내 섹션(이슈 #135) — 여러 상품이 같이 쓰는 글. 상품은 `infoSectionIds`로 연결만 하고, 섹션을 고치면 연결 상품 전체가 바뀐다.
|
|
10101
|
+
* 지우면 연결도 풀린다. 권한은 상품과 같다(`product:r`·`product:rw`)
|
|
10102
|
+
*/
|
|
10103
|
+
infoSections: {
|
|
10104
|
+
list: () => storeHttp.request("GET", "/info-sections", z.array(infoSectionSchema)),
|
|
10105
|
+
get: (infoSectionId) => storeHttp.request("GET", path`/info-sections/${infoSectionId}`, infoSectionSchema),
|
|
10106
|
+
create: (body) => storeHttp.request("POST", "/info-sections", infoSectionSchema, { body: infoSectionRequestSchema.parse(body) }),
|
|
10107
|
+
update: (infoSectionId, body) => storeHttp.request("PUT", path`/info-sections/${infoSectionId}`, infoSectionSchema, { body: infoSectionRequestSchema.parse(body) }),
|
|
10108
|
+
remove: (infoSectionId) => storeHttp.requestVoid("DELETE", path`/info-sections/${infoSectionId}`)
|
|
10109
|
+
},
|
|
10110
|
+
/**
|
|
9851
10111
|
* 컬렉션 (이슈 #83) — 상품을 어디에 보여 줄지 정하는 묶음(다대다). 권한은 카테고리와 같다(`category:r`·`category:rw`).
|
|
9852
10112
|
* 쓰기마다 `revision`이 오른다. 수정 본문에 읽은 `revision`을 주면 그 사이 다른 수정이 있을 때 409 `COLLECTION_CHANGED`다.
|
|
9853
10113
|
*/
|
|
@@ -9879,7 +10139,13 @@ function createStoreClient(options) {
|
|
|
9879
10139
|
headers: idempotency(idempotencyKey)
|
|
9880
10140
|
}),
|
|
9881
10141
|
update: (categoryId, body) => storeHttp.request("PATCH", path`/categories/${categoryId}`, categorySchema, { body: categoryPatchRequestSchema.parse(body) }),
|
|
9882
|
-
remove: (categoryId, opts) => storeHttp.requestVoid("DELETE", path`/categories/${categoryId}`, { query: opts?.strategy ? { strategy: opts.strategy } : {} })
|
|
10142
|
+
remove: (categoryId, opts) => storeHttp.requestVoid("DELETE", path`/categories/${categoryId}`, { query: opts?.strategy ? { strategy: opts.strategy } : {} }),
|
|
10143
|
+
/** 번역(이슈 #134) — 언어별 이름·SEO */
|
|
10144
|
+
localizations: {
|
|
10145
|
+
list: (categoryId) => storeHttp.request("GET", path`/categories/${categoryId}/localizations`, z.array(categoryLocalizationSchema)),
|
|
10146
|
+
put: (categoryId, locale, body) => storeHttp.request("PUT", path`/categories/${categoryId}/localizations/${locale}`, categoryLocalizationSchema, { body: categoryLocalizationRequestSchema.parse(body) }),
|
|
10147
|
+
remove: (categoryId, locale) => storeHttp.requestVoid("DELETE", path`/categories/${categoryId}/localizations/${locale}`)
|
|
10148
|
+
}
|
|
9883
10149
|
},
|
|
9884
10150
|
orders: {
|
|
9885
10151
|
/**
|
|
@@ -10094,7 +10360,7 @@ listHistory: (params) => storeHttp.request("GET", "/points/history", pageSchema(
|
|
|
10094
10360
|
listPointHistory: (customerId, params) => storeHttp.request("GET", path`/customers/${customerId}/points/history`, pageSchema(pointEntrySchema), { query: params }),
|
|
10095
10361
|
/**
|
|
10096
10362
|
* `POST /v1/customers/{customerId}/points/adjustments` (201) — 스코프 `promotion:rw`. 양수 지급, 음수 차감. `idempotencyKey`가 필수다.
|
|
10097
|
-
* 에러: 409 `POINT_BALANCE_INSUFFICIENT
|
|
10363
|
+
* 에러: 409 `POINT_BALANCE_INSUFFICIENT`, 400 `POINT_EXPIRY_REQUIRED`. 에이전트 요청은 승인 대상이다
|
|
10098
10364
|
*/
|
|
10099
10365
|
adjustPoints: (customerId, body, idempotencyKey) => storeHttp.request("POST", path`/customers/${customerId}/points/adjustments`, pointAdjustmentResultSchema, {
|
|
10100
10366
|
body: pointAdjustmentRequestSchema.parse(body),
|
|
@@ -10253,14 +10519,13 @@ get: (params) => storeHttp.request("GET", "/sales-report", salesReportSchema, {
|
|
|
10253
10519
|
* - 409 `PAYMENT_PROVIDER_INCOMPLETE`: 켜려는데 활성 환경(샌드박스면 TEST, 아니면 LIVE) 세트가 없거나 불완전
|
|
10254
10520
|
* - 409 `LIVE_GATE_NOT_MET`: `sandboxMode: false`(라이브 전환)인데 개방 조건 미충족. `ApiError.details`가
|
|
10255
10521
|
* `{ conditions: LiveGateCondition[] }`(조건별 `met`)이다. `liveGateErrorDetailsSchema`로 파싱한다
|
|
10256
|
-
* - 409 `LIVE_PAYMENTS_DISABLED`: 플랫폼 실결제 스위치만 미충족. `details`는 위와 같다
|
|
10257
10522
|
*
|
|
10258
10523
|
* `sandboxMode: true`는 항상 허용되고 즉시 실결제가 멈춘다.
|
|
10259
10524
|
*/
|
|
10260
10525
|
updateProvider: updatePaymentProvider,
|
|
10261
10526
|
/**
|
|
10262
10527
|
* 샌드박스 스위치만 바꾼다 — `updateProvider(provider, { sandboxMode })`와 같다.
|
|
10263
|
-
* `false`(라이브 전환)는 409 `LIVE_GATE_NOT_MET
|
|
10528
|
+
* `false`(라이브 전환)는 409 `LIVE_GATE_NOT_MET`(`ApiError.details.conditions`)가 날 수 있다.
|
|
10264
10529
|
*/
|
|
10265
10530
|
setSandboxMode: (provider, sandboxMode) => updatePaymentProvider(provider, { sandboxMode }),
|
|
10266
10531
|
/**
|
|
@@ -10490,7 +10755,7 @@ list: (params) => storeHttp.request("GET", "/audit-logs", auditLogPageSchema, {
|
|
|
10490
10755
|
getStoreTemplate: () => storeHttp.request("GET", "/storefront/template", storeTemplateSchema),
|
|
10491
10756
|
/** `PUT /v1/storefront/template` — 템플릿 이름·소개·썸네일을 바꾼다(템플릿 상점만) */
|
|
10492
10757
|
updateStoreTemplate: (body) => storeHttp.request("PUT", "/storefront/template", storeTemplateSchema, { body: updateStoreTemplateRequestSchema.parse(body) }),
|
|
10493
|
-
/** `GET /v1/storefront/site` —
|
|
10758
|
+
/** `GET /v1/storefront/site` — 호스팅 설정과 현재 사이트(없으면 `site: null`) */
|
|
10494
10759
|
get: () => storeHttp.request("GET", "/storefront/site", storefrontHostingSchema),
|
|
10495
10760
|
/** `GET /v1/storefront/slug-availability?slug=` — 슬러그를 쓸 수 있는가 */
|
|
10496
10761
|
checkSlug: (slug) => storeHttp.request("GET", "/storefront/slug-availability", storefrontSlugAvailabilitySchema, { query: { slug } }),
|
|
@@ -10626,7 +10891,7 @@ listPublic: () => storeHttp.request("GET", "/public/plans", publicPlansSchema) }
|
|
|
10626
10891
|
getPointPolicy: () => storeHttp.request("GET", "/store/point-policy", storePointPolicySchema),
|
|
10627
10892
|
/**
|
|
10628
10893
|
* `PUT /v1/store/point-policy` — 스코프 `promotion:rw`. 준 항목만 바꾼다. 에이전트 요청은 승인 대상이다.
|
|
10629
|
-
* 에러:
|
|
10894
|
+
* 에러: 400 `POINT_EXPIRY_REQUIRED`(리뷰 적립을 켜는데 유효 기간이 없음)
|
|
10630
10895
|
*/
|
|
10631
10896
|
updatePointPolicy: (body) => storeHttp.request("PUT", "/store/point-policy", storePointPolicySchema, { body: updatePointPolicyRequestSchema.parse(body) }),
|
|
10632
10897
|
listMembers: () => storeHttp.request("GET", "/store/members", z.array(storeMemberSchema)),
|
|
@@ -10979,4 +11244,4 @@ function createStoreSession(options) {
|
|
|
10979
11244
|
};
|
|
10980
11245
|
}
|
|
10981
11246
|
//#endregion
|
|
10982
|
-
export { AI_AGENT_NOTES_DIR, AI_AGENT_PHASES, AI_DESIGN_BOARDS_MAX, AI_DESIGN_BOARD_FILE_PATTERN, AI_DESIGN_BOARD_KINDS, AI_DESIGN_CANVAS_PATH, AI_DESIGN_CONFIRM_APPROVE, AI_DESIGN_DIR, AI_DESIGN_VIEWPORTS, AI_MESSAGE_MAX_ATTACHMENTS, AI_MESSAGE_MAX_CHARS, AI_RUN_ACTIVE_STATUSES, AI_RUN_FILE_CHANGES_RETENTION_DAYS, AI_SETUP_CONFIRM_APPROVE, AI_TODOS_MAX, AI_TODO_STATUSES, APPROVAL_ALREADY_DECIDED_CODE, APPROVAL_REQUIRED_CODE, APP_CAPABILITIES, APP_DEPLOY_KEY_PATTERN, APP_DEPLOY_KEY_PREFIX, APP_EVENTS_MAX, APP_EVENT_SCOPES, APP_EVENT_TYPES, APP_FLOW_EVENT_PATTERN, APP_FLOW_ITEMS_MAX, APP_FLOW_NOTIFICATION_PATTERN, APP_HANDLE_PATTERN, APP_HTTP_KEY_PATTERN, APP_ICON_CONTENT_TYPES, APP_ICON_MAX_BYTES, APP_ICON_MIN_PX, APP_LIFECYCLE_EVENT_TYPES, APP_NETWORK_DENIED_SUFFIXES, APP_NETWORK_HOSTS_MAX, APP_PUBLIC_HTTP_MAX, APP_README_MAX_BYTES, APP_RESERVED_HANDLES, APP_SCHEDULES_MAX, APP_SCHEDULE_INTERVALS, APP_SCHEDULE_NAME_PATTERN, APP_SECRETS_MAX, APP_SECRET_NAME_PATTERN, APP_SECRET_PATTERNS, APP_SERVER_BUNDLE_MAX_GZIP_BYTES, APP_SETTINGS_MAX_FIELDS, APP_SETTING_FIELD_TYPES, APP_SETTING_KEY_PATTERN, APP_STORAGE_KEY_PATTERN, APP_STORAGE_MAX_BYTES, APP_STORAGE_MAX_KEYS, APP_TOOL_NAME_PATTERN, APP_UI_MAX_BYTES, APP_UI_MAX_FILES, ApiError, ApprovalPendingError, BASE_CURRENCY, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, COLLECTION_BEST_SELLING_DAYS, COLLECTION_PREVIEW_SIZE, COLLECTION_PRODUCT_SORTS, COLLECTION_SALES_SORT_DEFAULT_DAYS, COLLECTION_SLUG_PATTERN, COLLECTION_TYPES, COUPON_CODE_PATTERN, COUPON_CONDITIONS_DEFAULTS, COUPON_TARGET_ALL, COUPON_TARGET_LIST_MAX, CURRENCIES, CURRENCY_CODES, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, DEDICATED_EASY_PAY_PROVIDER, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, InvalidPriceUnitError, KAKAOPAY_TEST_CID, KNOWN_WEBHOOK_EVENT_TYPES, KRW_MONEY_RULES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, MAX_COLLECTIONS, MAX_COLLECTION_BEST_SELLING_TOP, MAX_COLLECTION_CREATED_WITHIN_DAYS, MAX_COLLECTION_DESCRIPTION, MAX_COLLECTION_PRODUCTS, MAX_COLLECTION_PRODUCTS_PER_ADD, MAX_COLLECTION_RULES, MAX_COLLECTION_RULE_CATEGORIES, MAX_COLLECTION_TITLE, MAX_CUSTOM_INPUTS, MAX_CUSTOM_INPUT_LENGTH, MAX_INVENTORY_OPERATION_LINES, MAX_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, MAX_SAVED_OPTION_SETS, MAX_SAVED_OPTION_SET_NAME, MAX_STAY_NIGHTS, MAX_VALUES_PER_GROUP, MAX_VARIANTS, MCP_TELEMETRY_MAX_RESULTS, MIN_PAYMENT_AMOUNT, NON_INSTALLABLE_SCOPES, NO_COUPON_SETTLEMENT, NO_SHIPPING_BUNDLE_KEY, PAYMENT_ROUTING_EXCLUSION_CODES, PAYPAL_CURRENCIES, POINT_ADJUSTMENT_MAX, POINT_EARN_RATE_BP_MAX, POINT_ENTRY_TYPES, POINT_EXPIRY_DAYS_MAX, POINT_EXPIRY_DAYS_MIN, POINT_LOT_SOURCES, POINT_POLICY_DEFAULTS, POINT_REVIEW_REWARD_MAX, POINT_USE_UNITS, PORTONE_CHANNEL_NAME_MAX_LENGTH, PORTONE_MAX_CHANNELS, PORTONE_MIN_CHANNELS, REFUND_POLICY_DEFAULTS, REFUND_POLICY_DELIVERY_FEE_KEYS, REMOTE_AREA_ZIP_RANGES, RESERVED_STOREFRONT_SLUGS, RESERVED_STORE_CODES, SCOPE_DESCRIPTIONS, SHIPPING_POLICY_DEFAULTS, STARTER_SELLER_TASKS, STARTER_STAGES, STOREFRONT_BLOCKED_PATH_SEGMENTS, STOREFRONT_BUILD_STAGES, STOREFRONT_BUILD_TERMINAL_STATUSES, STOREFRONT_CHECK_TERMINAL_STATUSES, STOREFRONT_CLOSED_SITE_HOLD_DAYS, STOREFRONT_CUSTOM_DOMAIN_LIMIT_DEFAULT, STOREFRONT_DOMAIN_DNS_GRACE_DAYS, STOREFRONT_DOMAIN_DNS_WAIT_DAYS, STOREFRONT_DOMAIN_TXT_LABEL, STOREFRONT_EDIT_ACTIVITY_TIMEOUT_MINUTES, STOREFRONT_EDIT_CAPACITY, STOREFRONT_EDIT_IDLE_MINUTES, STOREFRONT_EDIT_PREVIEW_SUFFIX, STOREFRONT_EDIT_START_STAGES, STOREFRONT_FILE_BATCH_MAX, STOREFRONT_FILE_MAX_BYTES, STOREFRONT_PATH_SEGMENT_PATTERN, STOREFRONT_PLATFORM_DOMAINS, STOREFRONT_PUBLIC_SUFFIXES, STOREFRONT_SEARCH_REGEX_MAX_LENGTH, STOREFRONT_SHOWCASE_SLUG_PREFIX, STOREFRONT_SITE_CREATE_LIMIT, STOREFRONT_SLUG_CHANGE_LIMIT, STOREFRONT_SLUG_CHANGE_WINDOW_DAYS, STOREFRONT_SLUG_HOLD_DAYS, STOREFRONT_SLUG_PATTERN, STOREFRONT_SOURCE_BLOB_BATCH_MAX, STOREFRONT_SOURCE_PART_BYTES, STOREFRONT_WORKSPACE_MAX_BYTES, STOREFRONT_WORKSPACE_MAX_FILES, STORE_CODE_PATTERN, STORE_DRAFT_ATTACHMENT_MAX_BYTES, STORE_DRAFT_MAX_ATTACHMENTS, STORE_DRAFT_RETENTION_DAYS, STORE_ROLE_SCOPES, STORE_SCOPE_RESOURCES, STORE_SESSION_KEYS, STORE_SHOP_TYPES, TEMPLATE_STORE_LOCKED_BUSINESS_FIELDS, TOSS_WIDGET_CLIENT_KEY_PATTERN, TOSS_WIDGET_KEY_MESSAGE, TOSS_WIDGET_SECRET_KEY_PATTERN, UPLOAD_PURPOSE_LIMITS, VARIANT_COUNT_WARNING, VARIANT_STOCK_EXCLUSIVE_MESSAGE, WEBHOOK_DEFAULT_TOLERANCE_SEC, WEBHOOK_DELIVERY_ID_HEADER, WEBHOOK_EVENT_ID_HEADER, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_FAILURE_REASONS, WEBHOOK_HEADERS, WEBHOOK_PAYLOAD_EXCERPT_MAX_BYTES, WEBHOOK_RESOURCE_TYPES, WEBHOOK_SIGNATURE_HEADER, WEBHOOK_USER_AGENT, addStorefrontDomainRequestSchema, additionalCurrencyPriceSchema, additionalCurrencyPricesSchema, addonGroupRequestSchema, addonGroupSchema, addonValueRequestSchema, addonValueSchema, addressChangeRequestListSchema, addressTypeSchema, agentPolicyDecisionSchema, aiActivitySchema, aiAgentPhaseSchema, aiAttachmentSchema, aiChoiceOptionSchema, aiConversationFileChangesSchema, aiConversationSchema, aiConversationSummarySchema, aiDesignBoardSchema, aiDesignCanvasSchema, aiDesignConfirmBoardSchema, aiDesignSelectionSchema, aiFileChangeKindSchema, aiFocusAreaSchema, aiFocusSchema, aiMessagePartSchema, aiMessageSchema, aiPreviewSelectionSchema, aiRunChangesSchema, aiRunChangesStatusSchema, aiRunFileDiffSchema, aiRunRevertConflictDetailsSchema, aiRunRevertResultSchema, aiRunSchema, aiRunStatusSchema, aiSetupConfirmItemSchema, aiStreamAccessSchema, aiStreamEventSchema, aiStreamRecordSchema, aiTodoSchema, aiToolChangeSchema, allocateByWeight, analyticsChannelSchema, analyticsCheckoutOutcomeSchema, analyticsCheckoutSchema, analyticsDeviceRowSchema, analyticsDevicesSchema, analyticsFunnelStepSchema, analyticsOriginSchema, analyticsOverviewSchema, analyticsPagesQuerySchema, analyticsPagesSchema, analyticsProductRowSchema, analyticsProductSortSchema, analyticsProductsQuerySchema, analyticsProductsSchema, analyticsRangeQuerySchema, analyticsRealtimeSchema, analyticsSearchQuerySchema, analyticsSearchSchema, analyticsSourceGroupBySchema, analyticsSourceRowSchema, analyticsSourcesQuerySchema, analyticsSourcesSchema, analyticsTotalsSchema, apiLogErrorSchema, apiLogListQuerySchema, apiLogPageSchema, apiLogPrincipalSchema, apiLogPrincipalTypeSchema, apiLogSchema, apiLogStatusFilterSchema, apiLogSummarySchema, appArtifactUploadSchema, appBuildSchema, appBuildStageSchema, appCapabilitiesOf, appDeployKeyCreateSchema, appDeployKeyCreatedSchema, appDeployKeySchema, appDevTokenSchema, appDistributionSchema, appEventTypeSchema, appFlowEventSchema, appFlowEventSummarySchema, appFlowNotificationSchema, appFlowNotificationSummarySchema, appFlowParamSchema, appFlowSummaryOf, appHandleSchema, appHttpKeyMatches, appIconProblem, appInstallRequestSchema, appInstallationActivitySchema, appInstallationAppSchema, appInstallationRunSchema, appInstallationSchema, appInstallationSelfSchema, appInstallationSettingsSchema, appInstallationSettingsUpdateSchema, appInstallationStatusSchema, appInvocationSchema, appListingReviewSchema, appListingReviewStatusSchema, appListingSchema, appManifestProblems, appManifestSchema, appManifestWidens, appNetworkHostProblem, appNetworkHostSchema, appReleaseResultSchema, appRuntimeSchema, appScheduleIntervalLabel, appScheduleListOf, appScheduleSummarySchema, appScopeSchema, appSecretSummarySchema, appSessionSchema, appSettingFieldSchema, appStatusSchema, appStorageEntrySchema, appStorageKeysSchema, appStorageListQuerySchema, appStoragePutSchema, appToolCallSchema, appToolInputSchema, appToolListOf, appToolResultSchema, appToolSchema, appToolSummarySchema, appVersionSchema, appVersionStatusSchema, appVisibilitySchema, approvalDecisionRequestSchema, approvalListQuerySchema, approvalPageSchema, approvalRequestSchema, approvalStatusSchema, approveClaimResultSchema, assertSaleUnit, auditActorSchema, auditActorTypeSchema, auditLogListQuerySchema, auditLogOutcomeSchema, auditLogPageSchema, auditLogSchema, auditLogSourceSchema, bestSellingRuleOf, brandBriefProductSourceSchema, brandBriefReferenceSchema, brandBriefSchema, brandBriefViewSchema, buildAuthorizeUrl, buildQuery, bulkResultSchema, businessInfoPatchShape, businessInfoResponseShape, businessNumberSchema, calendarDateSchema, calendarDaySchema, calendarQuerySchema, cancelBySellerRequestSchema, cancelBySellerResultSchema, carrierSchema, cashReceiptSchema, categoryAttributeSchema, categoryCreateRequestSchema, categoryDeleteQuerySchema, categoryDeleteStrategySchema, categoryListQuerySchema, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeStorefrontTemplateRequestSchema, changeTypeSchema, claimCollectCompleteRequestSchema, claimDetailSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, claimRedeliveryRequestSchema, claimReturnAddressSchema, claimSchema, claimStatusSchema, claimTypeSchema, claimWebhookEventDataSchema, claimWebhookEventSchema, collectionCreateRequestSchema, collectionListQuerySchema, collectionPageSchema, collectionPatchRequestSchema, collectionPreviewRequestSchema, collectionPreviewSchema, collectionProductListQuerySchema, collectionProductSchema, collectionProductSortRequestSchema, collectionProductsAddRequestSchema, collectionProductsReplaceRequestSchema, collectionRuleCategoryIds, collectionRuleSchema, collectionRuleViewSchema, collectionRulesPredicate, collectionRulesSchema, collectionSchema, collectionStateCountsSchema, collectionStateOf, collectionStateSchema, commerceFlowCheckSchema, commerceFlowSchema, commerceFlowSummarySchema, commerceFlowVersionViewSchema, commerceNumberField, compareBySales, consentActionSchema, consentKindSchema, consentSourceSchema, couponBenefitSchema, couponConditionsInputSchema, couponConditionsSchema, couponDiscountOf, couponIssueListQuerySchema, couponIssueMethodSchema, couponIssueSchema, couponIssueStatusSchema, couponKindSchema, couponListQuerySchema, couponRedemptionListQuerySchema, couponRedemptionSchema, couponRejectReasonSchema, couponRuleSchema, couponSchema, couponStatsSchema, couponStatusSchema, couponTargetInputSchema, couponTargetSchema, createAiConversationRequestSchema, createAiConversationResponseSchema, createCommerceFlowRequestSchema, createCouponRequestSchema, createMarketRequestSchema, createPkcePair, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontVersionRequestSchema, currencyCodeSchema, currencyRefundFeesSchema, currencyShippingPolicySchema, currencySpecOf, customInputLabelForbiddenWord, customInputRequestSchema, customInputSchema, customInputValueSchema, customerAddressSchema, customerConsentListQuerySchema, customerConsentSchema, customerConsentStateSchema, customerConsentsSchema, customerCouponSchema, customerDelegationRequestSchema, customerDelegationSchema, customerDetailSchema, customerInquiryCategorySchema, customerInquiryListQuerySchema, customerListQuerySchema, customerOrderSchema, customerPointsSchema, customerSortSchema, customerStatsSchema, customerSummarySchema, customerWithdrawalBlockedDetailsSchema, defaultFulfillmentMethodOf, deleteStorefrontFileRequestSchema, deliveryBundleKeyOf, deliveryFeeWaiverSchema, deliveryInfoSchema, deliveryMethodSchema, deliveryStatusSchema, deliveryTypeSchema, descendantCategoryIdsOf, describeScope, devStoreSchema, developerAppCreateSchema, developerAppSchema, developerInstallationSchema, developerOrgSchema, developerStoreSchema, disableStorefrontHostingRequestSchema, discountRequestSchema, discountSchema, dispatchRequestSchema, easyPayProviderResponseSchema, easyPayProviderSchema, eventTypeSchema, exchangeAuthorizationCode, floorToSaleUnit, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowFieldValueSchema, flowInputFieldSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fromDecimalString, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryAdjustmentLineSchema, inventoryAdjustmentReasonSchema, inventoryAdjustmentRequestSchema, inventoryChangedWebhookEventDataSchema, inventoryChangedWebhookEventSchema, inventoryLevelListQuerySchema, inventoryLevelPageSchema, inventoryLevelSchema, inventoryLocationRequestSchema, inventoryLocationSchema, inventoryModeSchema, inventoryMovementKindSchema, inventoryMovementListQuerySchema, inventoryMovementPageSchema, inventoryMovementSchema, inventoryOperationResultSchema, inventoryTransferRequestSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isAiDesignPath, isCouponTargetLine, isCurrencyCode, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isSaleUnitPrice, isShowcaseStorefrontSlug, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, kakaoPayCredentialsInputSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, marketSchema, maskedSecretSchema, matchesCollectionRules, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, minPaymentOf, minorToMajor, moneyRulesOf, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, naverPayCredentialsInputSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, normalizeStorefrontHostname, normalizeStorefrontPath, oauthTokenResponseSchema, openFulfillmentUnion, optionGroupKindSchema, optionGroupRequestSchema, optionGroupSchema, optionModelRequestSchema, optionModelSchema, optionSelectionSchema, optionSortSchema, optionValueRequestSchema, optionValueSchema, orderCanceledWebhookEventDataSchema, orderCanceledWebhookEventSchema, orderDiscountSchema, orderFlowActionResultSchema, orderFulfilledWebhookEventDataSchema, orderFulfilledWebhookEventSchema, orderItemFlowSchema, orderItemFulfillmentSchema, orderItemFulfillmentSnapshotResponseSchema, orderItemFulfillmentSnapshotSchema, orderItemListQuerySchema, orderItemMemoResultSchema, orderItemPageSchema, orderItemSchema, orderItemStatusSchema, orderListQuerySchema, orderSchema, orderSummaryPageSchema, orderSummarySchema, orderWebhookEventDataSchema, orderWebhookEventSchema, pageInfoSchema, pageQueryShape, pageSchema, parseOrderNo, parseWebhookEvent, payPalCredentialsInputSchema, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, paymentStatusProviderSchema, paymentStatusSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderResponseSchema, pgProviderSchema, pgVerificationResultSchema, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCreateRequestSchema, productCurrencyPriceSchema, productCurrencyPricesSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productListQuerySchema, productOutOfStockWebhookEventDataSchema, productOutOfStockWebhookEventSchema, productPatchRequestSchema, productRefundPolicyOverride, productRefundPolicyPatchSchema, productReplaceRequestSchema, productSchema, productSortSchema, productStatusSchema, productSummarySchema, productVariantRequestSchema, productVariantSchema, proratedPaidRefundBase, proratedPointRefund, proratedRefundBase, publicPlanSchema, publicPlansSchema, publishStorefrontVersionRequestSchema, purchaseDecisionExtendResultSchema, purchaseDecisionRequestResultSchema, purchaseEarnPolicySchema, purchaseEarnRateOf, putBrandBriefRequestSchema, quoteDelivery, quotePricing, rankBestSelling, refreshUserToken, refundPolicyPatchSchema, refundPolicySchema, rejectClaimRequestSchema, remoteAreaLabelOf, remoteAreaOf, remoteAreaSchema, remoteSurchargeOf, replaceStorefrontSourceRequestSchema, replayFlowRequestSchema, replayFlowResultSchema, requiresCollection, requiresShipping, resolvePointPolicy, resolveRefundPolicy, resolveShippingPolicy, resolvedFlowSchema, responsePlanCodeSchema, responsePointEntryTypeSchema, reviewListQuerySchema, reviewReportResultSchema, reviewRewardPointOf, reviewRewardPolicySchema, reviewSchema, reviewSortSchema, reviewWebhookEventDataSchema, reviewWebhookEventSchema, rollbackStorefrontRequestSchema, runStorefrontCheckRequestSchema, salesReportCurrencySchema, salesReportGroupBySchema, salesReportQuerySchema, salesReportRowSchema, salesReportSchema, salesTotalsSchema, saveFlowDraftRequestSchema, saveFlowSecretRequestSchema, saveLoginProviderRequestSchema, savedCustomInputRequestSchema, savedCustomInputSchema, savedOptionGroupRequestSchema, savedOptionGroupSchema, savedOptionSetCompositionSchema, savedOptionSetFromProductRequestSchema, savedOptionSetFromProductResultSchema, savedOptionSetListQuerySchema, savedOptionSetRequestSchema, savedOptionSetSchema, savedOptionSetSortSchema, savedOptionValueRequestSchema, savedOptionValueSchema, scopeAccessSchema, scopesCoverEvent, searchStorefrontFilesRequestSchema, sellerAddressListQuerySchema, sellerAddressRequestSchema, sellerAddressSchema, sellerCancelPreviewSchema, sellerCustomerInquirySchema, sendAiMessageRequestSchema, sendAiMessageResponseSchema, setCalendarRequestSchema, setPlatformTestKeysRequestSchema, setStorefrontVisibilityRequestSchema, settleCouponShortfall, settlementDetailQuerySchema, settlementDetailSchema, settlementListQuerySchema, settlementStatusSchema, settlementSummarySchema, settlementWithDetailsSchema, shippingAddressSchema, shippingCurrencyPriceSchema, shippingCurrencyPricesSchema, shippingPolicyPatchSchema, shippingPolicySchema, simulateFlowRequestSchema, simulateFlowResultSchema, simulationStepSchema, splitRefund, starterSellerTaskSchema, starterStageSchema, starterStatusSchema, starterStoreInfoFieldSchema, stayRangeSchema, staySnapshotSchema, storeAppDetailSchema, storeAppSchema, storeCodeSchema, storeDraftPreviewSchema, storeDraftSchema, storeIndustrySchema, storeMemberRoleUpdatedSchema, storeMemberSchema, storePointPolicySchema, storeRoleSchema, storeSchema, storeScopeResourceSchema, storeSetupBriefSchema, storeShopTypeSchema, storeSubscriptionSchema, storeTemplateSchema, storedAdditionalCurrencyPriceSchema, storedProductCurrencyPriceSchema, storedShippingCurrencyPriceSchema, storefrontBuildDependenciesSchema, storefrontBuildListQuerySchema, storefrontBuildSchema, storefrontBuildStatusSchema, storefrontCheckSchema, storefrontCheckStatusSchema, storefrontCustomDomainStatusSchema, storefrontCustomHostnameProblem, storefrontDependencyFindingSchema, storefrontDeploymentLogSchema, storefrontDeploymentSchema, storefrontDeploymentStepSchema, storefrontDevLogsSchema, storefrontDnsRecordSchema, storefrontDomainSchema, storefrontDomainTxtNameOf, storefrontEditPreviewLabelOf, storefrontEditPreviewSchema, storefrontEditSessionSchema, storefrontEditSessionStatusSchema, storefrontEditingSchema, storefrontFileConflictDetailsSchema, storefrontFileContentQuerySchema, storefrontFileContentSchema, storefrontFileDeleteResultSchema, storefrontFileEncodingSchema, storefrontFileEntrySchema, storefrontFileHashSchema, storefrontFileListQuerySchema, storefrontFileListSchema, storefrontFileMoveResultSchema, storefrontFilePathSchema, storefrontFileSearchResultSchema, storefrontFileWriteResultSchema, storefrontHostingSchema, storefrontPreviewLinkSchema, storefrontProvisioningSchema, storefrontRuleResultSchema, storefrontRuleSeveritySchema, storefrontSiteDomainSchema, storefrontSiteDomainsSchema, storefrontSiteSchema, storefrontSiteSnapshotSchema, storefrontSiteStatusSchema, storefrontSlugAvailabilityQuerySchema, storefrontSlugAvailabilitySchema, storefrontSlugSchema, storefrontSourceArchivePartSchema, storefrontSourceArchiveQuerySchema, storefrontSourceBlobsResultSchema, storefrontSourceModeSchema, storefrontSourceRefSchema, storefrontSourceReplacedSchema, storefrontSourceSchema, storefrontSuspensionSchema, storefrontTemplateSchema, storefrontVerifyReportSchema, storefrontVersionCreatedSchema, storefrontVersionPreviewLabelOf, storefrontVersionSchema, storefrontVersionStatusSchema, storefrontVisibilitySchema, subscriptionLimitsSchema, subscriptionStatusSchema, subscriptionUsageSchema, toDecimalString, toMinor, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMarketRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, updateStoreTemplateRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourceBlobsRequestSchema, uploadTicketSchema, upsertKakaoPayProviderRequestSchema, upsertNaverPayProviderRequestSchema, upsertPayPalProviderRequestSchema, upsertPortOneProviderRequestSchema, upsertTossPaymentsProviderRequestSchema, variantStockRequestSchema, variantStockSchema, verifyPaymentProviderRequestSchema, webhookCreatedSchema, webhookDeliveryDetailSchema, webhookDeliveryErrorCodeSchema, webhookDeliveryListQuerySchema, webhookDeliveryResourceSchema, webhookDeliverySchema, webhookDeliveryStatusSchema, webhookEventSchema, webhookFailureReasonSchema, webhookRedeliverFailedResultSchema, webhookRequestHeaderSchema, webhookRequestSchema, webhookResourceTypeSchema, webhookSchema, webhookSecretRotatedSchema, webhookStatusSchema, webhookTestRequestSchema, webhookTestResultSchema, withdrawCustomerRequestSchema, writeDryRunResultSchema, writePreviewSchema, writeStorefrontFilesRequestSchema };
|
|
11247
|
+
export { AI_AGENT_NOTES_DIR, AI_AGENT_PHASES, AI_DESIGN_BOARDS_MAX, AI_DESIGN_BOARD_FILE_PATTERN, AI_DESIGN_BOARD_KINDS, AI_DESIGN_CANVAS_PATH, AI_DESIGN_CONFIRM_APPROVE, AI_DESIGN_DIR, AI_DESIGN_VIEWPORTS, AI_MESSAGE_MAX_ATTACHMENTS, AI_MESSAGE_MAX_CHARS, AI_RUN_ACTIVE_STATUSES, AI_RUN_FILE_CHANGES_RETENTION_DAYS, AI_SETUP_CONFIRM_APPROVE, AI_TODOS_MAX, AI_TODO_STATUSES, APPROVAL_ALREADY_DECIDED_CODE, APPROVAL_REQUIRED_CODE, APP_CAPABILITIES, APP_DEPLOY_KEY_PATTERN, APP_DEPLOY_KEY_PREFIX, APP_EVENTS_MAX, APP_EVENT_SCOPES, APP_EVENT_TYPES, APP_FLOW_EVENT_PATTERN, APP_FLOW_ITEMS_MAX, APP_FLOW_NOTIFICATION_PATTERN, APP_HANDLE_PATTERN, APP_HTTP_KEY_PATTERN, APP_ICON_CONTENT_TYPES, APP_ICON_MAX_BYTES, APP_ICON_MIN_PX, APP_LIFECYCLE_EVENT_TYPES, APP_NETWORK_DENIED_SUFFIXES, APP_NETWORK_HOSTS_MAX, APP_PUBLIC_HTTP_MAX, APP_README_MAX_BYTES, APP_RESERVED_HANDLES, APP_SCHEDULES_MAX, APP_SCHEDULE_INTERVALS, APP_SCHEDULE_NAME_PATTERN, APP_SECRETS_MAX, APP_SECRET_NAME_PATTERN, APP_SECRET_PATTERNS, APP_SERVER_BUNDLE_MAX_GZIP_BYTES, APP_SETTINGS_MAX_FIELDS, APP_SETTING_FIELD_TYPES, APP_SETTING_KEY_PATTERN, APP_STORAGE_KEY_PATTERN, APP_STORAGE_MAX_BYTES, APP_STORAGE_MAX_KEYS, APP_TOOL_NAME_PATTERN, APP_UI_MAX_BYTES, APP_UI_MAX_FILES, ApiError, ApprovalPendingError, BASE_CURRENCY, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, CERTIFICATION_STATUSES, COLLECTION_BEST_SELLING_DAYS, COLLECTION_PREVIEW_SIZE, COLLECTION_PRODUCT_SORTS, COLLECTION_SALES_SORT_DEFAULT_DAYS, COLLECTION_SLUG_PATTERN, COLLECTION_TYPES, COUPON_CODE_PATTERN, COUPON_CONDITIONS_DEFAULTS, COUPON_TARGET_ALL, COUPON_TARGET_LIST_MAX, CURRENCIES, CURRENCY_CODES, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, DEDICATED_EASY_PAY_PROVIDER, DEFAULT_STORE_LOCALE, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, InvalidPriceUnitError, KAKAOPAY_TEST_CID, KNOWN_WEBHOOK_EVENT_TYPES, KRW_MONEY_RULES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, MAX_CERTIFICATION_ITEMS, MAX_COLLECTIONS, MAX_COLLECTION_BEST_SELLING_TOP, MAX_COLLECTION_CREATED_WITHIN_DAYS, MAX_COLLECTION_DESCRIPTION, MAX_COLLECTION_PRODUCTS, MAX_COLLECTION_PRODUCTS_PER_ADD, MAX_COLLECTION_RULES, MAX_COLLECTION_RULE_CATEGORIES, MAX_COLLECTION_TITLE, MAX_CUSTOM_INPUTS, MAX_CUSTOM_INPUT_LENGTH, MAX_INFO_SECTION_TITLE, MAX_INVENTORY_OPERATION_LINES, MAX_NOTICE_VALUE_LENGTH, MAX_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, MAX_PRODUCT_INFO_SECTIONS, MAX_SAVED_OPTION_SETS, MAX_SAVED_OPTION_SET_NAME, MAX_STAY_NIGHTS, MAX_VALUES_PER_GROUP, MAX_VARIANTS, MCP_TELEMETRY_MAX_RESULTS, MIN_PAYMENT_AMOUNT, NON_INSTALLABLE_SCOPES, NO_COUPON_SETTLEMENT, NO_SHIPPING_BUNDLE_KEY, PAYMENT_ROUTING_EXCLUSION_CODES, PAYPAL_CURRENCIES, PLATFORM_CODE_SETS, POINT_ADJUSTMENT_MAX, POINT_EARN_RATE_BP_MAX, POINT_ENTRY_TYPES, POINT_EXPIRY_DAYS_MAX, POINT_EXPIRY_DAYS_MIN, POINT_LOT_SOURCES, POINT_POLICY_DEFAULTS, POINT_REVIEW_REWARD_MAX, POINT_USE_UNITS, PORTONE_CHANNEL_NAME_MAX_LENGTH, PORTONE_MAX_CHANNELS, PORTONE_MIN_CHANNELS, REFUND_POLICY_DEFAULTS, REFUND_POLICY_DELIVERY_FEE_KEYS, REMOTE_AREA_ZIP_RANGES, RESERVED_STOREFRONT_SLUGS, RESERVED_STORE_CODES, SCOPE_DESCRIPTIONS, SHIPPING_POLICY_DEFAULTS, STARTER_SELLER_TASKS, STARTER_STAGES, STOREFRONT_BLOCKED_PATH_SEGMENTS, STOREFRONT_BUILD_STAGES, STOREFRONT_BUILD_TERMINAL_STATUSES, STOREFRONT_CHECK_TERMINAL_STATUSES, STOREFRONT_CLOSED_SITE_HOLD_DAYS, STOREFRONT_CUSTOM_DOMAIN_LIMIT_DEFAULT, STOREFRONT_DOMAIN_DNS_GRACE_DAYS, STOREFRONT_DOMAIN_DNS_WAIT_DAYS, STOREFRONT_DOMAIN_TXT_LABEL, STOREFRONT_EDIT_ACTIVITY_TIMEOUT_MINUTES, STOREFRONT_EDIT_CAPACITY, STOREFRONT_EDIT_IDLE_MINUTES, STOREFRONT_EDIT_PREVIEW_SUFFIX, STOREFRONT_EDIT_START_STAGES, STOREFRONT_FILE_BATCH_MAX, STOREFRONT_FILE_MAX_BYTES, STOREFRONT_PATH_SEGMENT_PATTERN, STOREFRONT_PLATFORM_DOMAINS, STOREFRONT_PUBLIC_SUFFIXES, STOREFRONT_SEARCH_REGEX_MAX_LENGTH, STOREFRONT_SHOWCASE_SLUG_PREFIX, STOREFRONT_SITE_CREATE_LIMIT, STOREFRONT_SLUG_CHANGE_LIMIT, STOREFRONT_SLUG_CHANGE_WINDOW_DAYS, STOREFRONT_SLUG_HOLD_DAYS, STOREFRONT_SLUG_PATTERN, STOREFRONT_SOURCE_BLOB_BATCH_MAX, STOREFRONT_SOURCE_PART_BYTES, STOREFRONT_WORKSPACE_MAX_BYTES, STOREFRONT_WORKSPACE_MAX_FILES, STORE_CODE_PATTERN, STORE_DRAFT_ATTACHMENT_MAX_BYTES, STORE_DRAFT_MAX_ATTACHMENTS, STORE_DRAFT_RETENTION_DAYS, STORE_ROLE_SCOPES, STORE_SCOPE_RESOURCES, STORE_SESSION_KEYS, STORE_SHOP_TYPES, TEMPLATE_STORE_LOCKED_BUSINESS_FIELDS, TOSS_WIDGET_CLIENT_KEY_PATTERN, TOSS_WIDGET_KEY_MESSAGE, TOSS_WIDGET_SECRET_KEY_PATTERN, UPLOAD_PURPOSE_LIMITS, VARIANT_COUNT_WARNING, VARIANT_STOCK_EXCLUSIVE_MESSAGE, WEBHOOK_DEFAULT_TOLERANCE_SEC, WEBHOOK_DELIVERY_ID_HEADER, WEBHOOK_EVENT_ID_HEADER, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_FAILURE_REASONS, WEBHOOK_HEADERS, WEBHOOK_PAYLOAD_EXCERPT_MAX_BYTES, WEBHOOK_RESOURCE_TYPES, WEBHOOK_SIGNATURE_HEADER, WEBHOOK_USER_AGENT, addStorefrontDomainRequestSchema, additionalCurrencyPriceSchema, additionalCurrencyPricesSchema, addonGroupRequestSchema, addonGroupSchema, addonValueRequestSchema, addonValueSchema, addressChangeRequestListSchema, addressTypeSchema, agentPolicyDecisionSchema, aiActivitySchema, aiAgentPhaseSchema, aiAttachmentSchema, aiChoiceOptionSchema, aiConversationFileChangesSchema, aiConversationSchema, aiConversationSummarySchema, aiDesignBoardSchema, aiDesignCanvasSchema, aiDesignConfirmBoardSchema, aiDesignSelectionSchema, aiFileChangeKindSchema, aiFocusAreaSchema, aiFocusSchema, aiMessagePartSchema, aiMessageSchema, aiPreviewSelectionSchema, aiRunChangesSchema, aiRunChangesStatusSchema, aiRunFileDiffSchema, aiRunRevertConflictDetailsSchema, aiRunRevertResultSchema, aiRunSchema, aiRunStatusSchema, aiSetupConfirmItemSchema, aiStreamAccessSchema, aiStreamEventSchema, aiStreamRecordSchema, aiTodoSchema, aiToolChangeSchema, allocateByWeight, analyticsChannelSchema, analyticsCheckoutOutcomeSchema, analyticsCheckoutSchema, analyticsDeviceRowSchema, analyticsDevicesSchema, analyticsFunnelStepSchema, analyticsOriginSchema, analyticsOverviewSchema, analyticsPagesQuerySchema, analyticsPagesSchema, analyticsProductRowSchema, analyticsProductSortSchema, analyticsProductsQuerySchema, analyticsProductsSchema, analyticsRangeQuerySchema, analyticsRealtimeSchema, analyticsSearchQuerySchema, analyticsSearchSchema, analyticsSourceGroupBySchema, analyticsSourceRowSchema, analyticsSourcesQuerySchema, analyticsSourcesSchema, analyticsTotalsSchema, apiLogErrorSchema, apiLogListQuerySchema, apiLogPageSchema, apiLogPrincipalSchema, apiLogPrincipalTypeSchema, apiLogSchema, apiLogStatusFilterSchema, apiLogSummarySchema, appArtifactUploadSchema, appBuildSchema, appBuildStageSchema, appCapabilitiesOf, appDeployKeyCreateSchema, appDeployKeyCreatedSchema, appDeployKeySchema, appDevTokenSchema, appDistributionSchema, appEventTypeSchema, appFlowEventSchema, appFlowEventSummarySchema, appFlowNotificationSchema, appFlowNotificationSummarySchema, appFlowParamSchema, appFlowSummaryOf, appHandleSchema, appHttpKeyMatches, appIconProblem, appInstallRequestSchema, appInstallationActivitySchema, appInstallationAppSchema, appInstallationRunSchema, appInstallationSchema, appInstallationSelfSchema, appInstallationSettingsSchema, appInstallationSettingsUpdateSchema, appInstallationStatusSchema, appInvocationSchema, appListingReviewSchema, appListingReviewStatusSchema, appListingSchema, appManifestProblems, appManifestSchema, appManifestWidens, appNetworkHostProblem, appNetworkHostSchema, appReleaseResultSchema, appRuntimeSchema, appScheduleIntervalLabel, appScheduleListOf, appScheduleSummarySchema, appScopeSchema, appSecretSummarySchema, appSessionSchema, appSettingFieldSchema, appStatusSchema, appStorageEntrySchema, appStorageKeysSchema, appStorageListQuerySchema, appStoragePutSchema, appToolCallSchema, appToolInputSchema, appToolListOf, appToolResultSchema, appToolSchema, appToolSummarySchema, appVersionSchema, appVersionStatusSchema, appVisibilitySchema, approvalDecisionRequestSchema, approvalListQuerySchema, approvalPageSchema, approvalRequestSchema, approvalStatusSchema, approveClaimResultSchema, assertSaleUnit, auditActorSchema, auditActorTypeSchema, auditLogListQuerySchema, auditLogOutcomeSchema, auditLogPageSchema, auditLogSchema, auditLogSourceSchema, bestSellingRuleOf, brandBriefProductSourceSchema, brandBriefReferenceSchema, brandBriefSchema, brandBriefViewSchema, buildAuthorizeUrl, buildQuery, bulkResultSchema, businessInfoPatchShape, businessInfoResponseShape, businessNumberSchema, calendarDateSchema, calendarDaySchema, calendarQuerySchema, cancelBySellerRequestSchema, cancelBySellerResultSchema, carrierSchema, cashReceiptSchema, categoryAttributeSchema, categoryCreateRequestSchema, categoryDeleteQuerySchema, categoryDeleteStrategySchema, categoryListQuerySchema, categoryLocalizationRequestSchema, categoryLocalizationSchema, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeStorefrontTemplateRequestSchema, changeTypeSchema, claimCollectCompleteRequestSchema, claimDetailSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, claimRedeliveryRequestSchema, claimReturnAddressSchema, claimSchema, claimStatusSchema, claimTypeSchema, claimWebhookEventDataSchema, claimWebhookEventSchema, collectionCreateRequestSchema, collectionListQuerySchema, collectionPageSchema, collectionPatchRequestSchema, collectionPreviewRequestSchema, collectionPreviewSchema, collectionProductListQuerySchema, collectionProductSchema, collectionProductSortRequestSchema, collectionProductsAddRequestSchema, collectionProductsReplaceRequestSchema, collectionRuleCategoryIds, collectionRuleSchema, collectionRuleViewSchema, collectionRulesPredicate, collectionRulesSchema, collectionSchema, collectionStateCountsSchema, collectionStateOf, collectionStateSchema, commerceFlowCheckSchema, commerceFlowSchema, commerceFlowSummarySchema, commerceFlowVersionViewSchema, commerceNumberField, compareBySales, consentActionSchema, consentKindSchema, consentSourceSchema, couponBenefitSchema, couponConditionsInputSchema, couponConditionsSchema, couponDiscountOf, couponIssueListQuerySchema, couponIssueMethodSchema, couponIssueSchema, couponIssueStatusSchema, couponKindSchema, couponListQuerySchema, couponRedemptionListQuerySchema, couponRedemptionSchema, couponRejectReasonSchema, couponRuleSchema, couponSchema, couponStatsSchema, couponStatusSchema, couponTargetInputSchema, couponTargetSchema, createAiConversationRequestSchema, createAiConversationResponseSchema, createCommerceFlowRequestSchema, createCouponRequestSchema, createMarketRequestSchema, createPkcePair, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontVersionRequestSchema, currencyCodeSchema, currencyRefundFeesSchema, currencyShippingPolicySchema, currencySpecOf, customInputLabelForbiddenWord, customInputRequestSchema, customInputSchema, customInputValueSchema, customerAddressSchema, customerConsentListQuerySchema, customerConsentSchema, customerConsentStateSchema, customerConsentsSchema, customerCouponSchema, customerDelegationRequestSchema, customerDelegationSchema, customerDetailSchema, customerInquiryCategorySchema, customerInquiryListQuerySchema, customerListQuerySchema, customerOrderSchema, customerPointsSchema, customerSortSchema, customerStatsSchema, customerSummarySchema, customerWithdrawalBlockedDetailsSchema, defaultFulfillmentMethodOf, deleteStorefrontFileRequestSchema, deliveryBundleKeyOf, deliveryFeeWaiverSchema, deliveryInfoSchema, deliveryMethodSchema, deliveryStatusSchema, deliveryTypeSchema, descendantCategoryIdsOf, describeScope, devStoreSchema, developerAppCreateSchema, developerAppSchema, developerInstallationSchema, developerOrgSchema, developerStoreSchema, disableStorefrontHostingRequestSchema, discountRequestSchema, discountSchema, dispatchRequestSchema, easyPayProviderResponseSchema, easyPayProviderSchema, eventTypeSchema, exchangeAuthorizationCode, floorToSaleUnit, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowFieldValueSchema, flowInputFieldSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fromDecimalString, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, infoFieldSourceSchema, infoSchemaFieldSchema, infoSchemaSchema, infoSectionRequestSchema, infoSectionSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryAdjustmentLineSchema, inventoryAdjustmentReasonSchema, inventoryAdjustmentRequestSchema, inventoryChangedWebhookEventDataSchema, inventoryChangedWebhookEventSchema, inventoryLevelListQuerySchema, inventoryLevelPageSchema, inventoryLevelSchema, inventoryLocationRequestSchema, inventoryLocationSchema, inventoryModeSchema, inventoryMovementKindSchema, inventoryMovementListQuerySchema, inventoryMovementPageSchema, inventoryMovementSchema, inventoryOperationResultSchema, inventoryTransferRequestSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isAiDesignPath, isCouponTargetLine, isCurrencyCode, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isSaleUnitPrice, isShowcaseStorefrontSlug, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, kakaoPayCredentialsInputSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, localeCodeSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, marketSchema, maskedSecretSchema, matchesCollectionRules, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, minPaymentOf, minorToMajor, moneyRulesOf, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, naverPayCredentialsInputSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, normalizeLocale, normalizeStorefrontHostname, normalizeStorefrontPath, oauthTokenResponseSchema, openFulfillmentUnion, optionGroupKindSchema, optionGroupRequestSchema, optionGroupSchema, optionModelRequestSchema, optionModelSchema, optionSelectionSchema, optionSortSchema, optionValueRequestSchema, optionValueSchema, orderCanceledWebhookEventDataSchema, orderCanceledWebhookEventSchema, orderDiscountSchema, orderFlowActionResultSchema, orderFulfilledWebhookEventDataSchema, orderFulfilledWebhookEventSchema, orderItemFlowSchema, orderItemFulfillmentSchema, orderItemFulfillmentSnapshotResponseSchema, orderItemFulfillmentSnapshotSchema, orderItemListQuerySchema, orderItemMemoResultSchema, orderItemPageSchema, orderItemSchema, orderItemStatusSchema, orderListQuerySchema, orderSchema, orderSummaryPageSchema, orderSummarySchema, orderWebhookEventDataSchema, orderWebhookEventSchema, pageInfoSchema, pageQueryShape, pageSchema, parseOrderNo, parseWebhookEvent, payPalCredentialsInputSchema, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, paymentStatusProviderSchema, paymentStatusSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderResponseSchema, pgProviderSchema, pgVerificationResultSchema, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, platformCodeSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCertificationsRequestSchema, productCertificationsSchema, productCreateRequestSchema, productCurrencyPriceSchema, productCurrencyPricesSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productListQuerySchema, productLocalizationRequestSchema, productLocalizationSchema, productNoticeRequestSchema, productNoticeSchema, productOutOfStockWebhookEventDataSchema, productOutOfStockWebhookEventSchema, productPatchRequestSchema, productRefundPolicyOverride, productRefundPolicyPatchSchema, productReplaceRequestSchema, productSchema, productSortSchema, productStatusSchema, productSummarySchema, productVariantRequestSchema, productVariantSchema, proratedPaidRefundBase, proratedPointRefund, proratedRefundBase, publicPlanSchema, publicPlansSchema, publishStorefrontVersionRequestSchema, purchaseDecisionExtendResultSchema, purchaseDecisionRequestResultSchema, purchaseEarnPolicySchema, purchaseEarnRateOf, putBrandBriefRequestSchema, quoteDelivery, quotePricing, rankBestSelling, refreshUserToken, refundPolicyPatchSchema, refundPolicySchema, rejectClaimRequestSchema, remoteAreaLabelOf, remoteAreaOf, remoteAreaSchema, remoteSurchargeOf, replaceStorefrontSourceRequestSchema, replayFlowRequestSchema, replayFlowResultSchema, requiresCollection, requiresShipping, resolvePointPolicy, resolveRefundPolicy, resolveShippingPolicy, resolvedFlowSchema, responsePlanCodeSchema, responsePointEntryTypeSchema, reviewListQuerySchema, reviewReportResultSchema, reviewRewardPointOf, reviewRewardPolicySchema, reviewSchema, reviewSortSchema, reviewWebhookEventDataSchema, reviewWebhookEventSchema, rollbackStorefrontRequestSchema, runStorefrontCheckRequestSchema, salesReportCurrencySchema, salesReportGroupBySchema, salesReportQuerySchema, salesReportRowSchema, salesReportSchema, salesTotalsSchema, saveFlowDraftRequestSchema, saveFlowSecretRequestSchema, saveLoginProviderRequestSchema, savedCustomInputRequestSchema, savedCustomInputSchema, savedOptionGroupRequestSchema, savedOptionGroupSchema, savedOptionSetCompositionSchema, savedOptionSetFromProductRequestSchema, savedOptionSetFromProductResultSchema, savedOptionSetListQuerySchema, savedOptionSetRequestSchema, savedOptionSetSchema, savedOptionSetSortSchema, savedOptionValueRequestSchema, savedOptionValueSchema, scopeAccessSchema, scopesCoverEvent, searchStorefrontFilesRequestSchema, sellerAddressListQuerySchema, sellerAddressRequestSchema, sellerAddressSchema, sellerCancelPreviewSchema, sellerCustomerInquirySchema, sendAiMessageRequestSchema, sendAiMessageResponseSchema, setCalendarRequestSchema, setPlatformTestKeysRequestSchema, setStorefrontVisibilityRequestSchema, settleCouponShortfall, settlementDetailQuerySchema, settlementDetailSchema, settlementListQuerySchema, settlementStatusSchema, settlementSummarySchema, settlementWithDetailsSchema, shippingAddressSchema, shippingCurrencyPriceSchema, shippingCurrencyPricesSchema, shippingPolicyPatchSchema, shippingPolicySchema, simulateFlowRequestSchema, simulateFlowResultSchema, simulationStepSchema, splitRefund, starterSellerTaskSchema, starterStageSchema, starterStatusSchema, starterStoreInfoFieldSchema, stayRangeSchema, staySnapshotSchema, storeAppDetailSchema, storeAppSchema, storeCodeSchema, storeDraftPreviewSchema, storeDraftSchema, storeIndustrySchema, storeMemberRoleUpdatedSchema, storeMemberSchema, storePointPolicySchema, storeRoleSchema, storeSchema, storeScopeResourceSchema, storeSetupBriefSchema, storeShopTypeSchema, storeSubscriptionSchema, storeTemplateSchema, storedAdditionalCurrencyPriceSchema, storedProductCurrencyPriceSchema, storedShippingCurrencyPriceSchema, storefrontBuildDependenciesSchema, storefrontBuildListQuerySchema, storefrontBuildSchema, storefrontBuildStatusSchema, storefrontCheckSchema, storefrontCheckStatusSchema, storefrontCustomDomainStatusSchema, storefrontCustomHostnameProblem, storefrontDependencyFindingSchema, storefrontDeploymentLogSchema, storefrontDeploymentSchema, storefrontDeploymentStepSchema, storefrontDevLogsSchema, storefrontDnsRecordSchema, storefrontDomainSchema, storefrontDomainTxtNameOf, storefrontEditPreviewLabelOf, storefrontEditPreviewSchema, storefrontEditSessionSchema, storefrontEditSessionStatusSchema, storefrontEditingSchema, storefrontFileConflictDetailsSchema, storefrontFileContentQuerySchema, storefrontFileContentSchema, storefrontFileDeleteResultSchema, storefrontFileEncodingSchema, storefrontFileEntrySchema, storefrontFileHashSchema, storefrontFileListQuerySchema, storefrontFileListSchema, storefrontFileMoveResultSchema, storefrontFilePathSchema, storefrontFileSearchResultSchema, storefrontFileWriteResultSchema, storefrontHostingSchema, storefrontPreviewLinkSchema, storefrontProvisioningSchema, storefrontRuleResultSchema, storefrontRuleSeveritySchema, storefrontSiteDomainSchema, storefrontSiteDomainsSchema, storefrontSiteSchema, storefrontSiteSnapshotSchema, storefrontSiteStatusSchema, storefrontSlugAvailabilityQuerySchema, storefrontSlugAvailabilitySchema, storefrontSlugSchema, storefrontSourceArchivePartSchema, storefrontSourceArchiveQuerySchema, storefrontSourceBlobsResultSchema, storefrontSourceModeSchema, storefrontSourceRefSchema, storefrontSourceReplacedSchema, storefrontSourceSchema, storefrontSuspensionSchema, storefrontTemplateSchema, storefrontVerifyReportSchema, storefrontVersionCreatedSchema, storefrontVersionPreviewLabelOf, storefrontVersionSchema, storefrontVersionStatusSchema, storefrontVisibilitySchema, subscriptionLimitsSchema, subscriptionStatusSchema, subscriptionUsageSchema, toDecimalString, toMinor, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMarketRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, updateStoreTemplateRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourceBlobsRequestSchema, uploadTicketSchema, upsertKakaoPayProviderRequestSchema, upsertNaverPayProviderRequestSchema, upsertPayPalProviderRequestSchema, upsertPortOneProviderRequestSchema, upsertTossPaymentsProviderRequestSchema, variantStockRequestSchema, variantStockSchema, verifyPaymentProviderRequestSchema, webhookCreatedSchema, webhookDeliveryDetailSchema, webhookDeliveryErrorCodeSchema, webhookDeliveryListQuerySchema, webhookDeliveryResourceSchema, webhookDeliverySchema, webhookDeliveryStatusSchema, webhookEventSchema, webhookFailureReasonSchema, webhookRedeliverFailedResultSchema, webhookRequestHeaderSchema, webhookRequestSchema, webhookResourceTypeSchema, webhookSchema, webhookSecretRotatedSchema, webhookStatusSchema, webhookTestRequestSchema, webhookTestResultSchema, withdrawCustomerRequestSchema, writeDryRunResultSchema, writePreviewSchema, writeStorefrontFilesRequestSchema };
|