@sayren/storefront-sdk 0.18.1 → 0.18.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { pt as ApiError, t as createStorefrontClient } from "../client-C91Y801B.mjs";
1
+ import { t as createStorefrontClient, yt as ApiError } from "../client-nLYVG_HJ.mjs";
2
2
  //#region src/auth/index.ts
3
3
  /** 소셜 로그인 실패 — 구매자가 취소했거나(`access_denied`) state가 맞지 않는다 */
4
4
  var IdpCallbackError = class extends Error {
@@ -320,9 +320,10 @@ const productCardSchema = z.object({
320
320
  productId: z.string(),
321
321
  name: z.string(),
322
322
  thumbnailUrl: z.url().nullable().describe("대표 이미지 주소. 등록된 이미지가 없으면 null"),
323
- salePrice: z.number().int().describe("판매가. 원(KRW) 단위 정수"),
324
- discountedPrice: z.number().int().nullable().describe("즉시 할인 적용가. 원 단위. 할인이 없으면 null"),
325
- discountRate: z.number().int().nullable().describe("할인율(%). 할인이 없으면 null"),
323
+ salePrice: z.number().int().describe("판매가. 원(KRW) 단위 정수. 즉시할인이 없으면 구매자가 내는 한 개 가격(옵션 추가금 제외)이고, 즉시할인의 기준 가격이다"),
324
+ discountedPrice: z.number().int().nullable().describe("즉시할인 적용가. 원 단위. 판매가에 즉시할인을 적용한 값이고, 있으면 이 값이 구매자가 내는 한 개 가격이다. 할인이 없으면 null"),
325
+ discountRate: z.number().int().nullable().describe("즉시할인율(%). 판매가 대비 `discountedPrice`의 할인율이다(정가 기준이 아니다). 할인이 없으면 null"),
326
+ originalPrice: z.number().int().nullable().optional().default(null).describe("정가(할인 전 표시 가격, 이슈 #82). 원 단위. 셀러가 상품에 적은 비교용 가격이고 결제 금액 계산에 쓰지 않는다. 구매자가 내는 가격은 `discountedPrice ?? salePrice`다. 정가가 그 가격보다 클 때 「정가 취소선 + 할인율 + 판매가」로 보이면 되고, 이때 할인율은 `round((1 - (discountedPrice ?? salePrice) / originalPrice) × 100)`이다. 판매가와 크기를 검증하지 않으므로 작거나 같으면 표시하지 않는다. 정하지 않았으면 null. 서버는 항상 싣는다"),
326
327
  freeShipping: z.boolean().describe("무료배송 배지. 배송 상품이고 배송비가 무료일 때만 true다(배송이 없는 상품은 false)"),
327
328
  fulfillment: productCardFulfillmentSchema,
328
329
  averageRating: z.number(),
@@ -536,6 +537,17 @@ const createCustomerInquiryRequestSchema = z.object({
536
537
  });
537
538
  //#endregion
538
539
  //#region src/schemas/inquiry.ts
540
+ /**
541
+ * 상품 문의 유형(이슈 #85) — 관리 API 상품 문의의 `category`와 같은 값이다.
542
+ * `PRODUCT` 상품(사이즈·소재 등), `DELIVERY` 배송, `RETURN` 반품, `EXCHANGE` 교환, `ETC` 기타
543
+ */
544
+ const productInquiryCategorySchema = z.enum([
545
+ "PRODUCT",
546
+ "DELIVERY",
547
+ "RETURN",
548
+ "EXCHANGE",
549
+ "ETC"
550
+ ]);
539
551
  const publicInquirySchema = z.object({
540
552
  inquiryId: z.string(),
541
553
  content: z.string().nullable(),
@@ -546,11 +558,16 @@ const publicInquirySchema = z.object({
546
558
  content: z.string().nullable(),
547
559
  answeredAt: z.string()
548
560
  }).nullable(),
549
- createdAt: z.string()
561
+ createdAt: z.string(),
562
+ productId: z.string().nullable().optional().default(null).describe("문의한 상품 id. 서버는 항상 싣는다(옛 서버 응답이면 null)"),
563
+ productName: z.string().nullable().optional().default(null).describe("문의한 상품의 지금 이름. 상품이 지워졌으면 null. 서버는 항상 싣는다"),
564
+ thumbnailUrl: z.url().nullable().optional().default(null).describe("문의한 상품의 대표 이미지 주소. 이미지가 없거나 상품이 지워졌으면 null. 서버는 항상 싣는다"),
565
+ category: productInquiryCategorySchema.optional().default("PRODUCT").describe("문의 유형. `PRODUCT`(상품)·`DELIVERY`(배송)·`RETURN`(반품)·`EXCHANGE`(교환)·`ETC`(기타). 서버는 항상 싣는다")
550
566
  });
551
567
  const createInquiryRequestSchema = z.object({
552
568
  content: z.string().min(1).max(1e3),
553
- secret: z.boolean().default(false)
569
+ secret: z.boolean().default(false),
570
+ category: productInquiryCategorySchema.optional().describe("문의 유형(이슈 #85). `PRODUCT`(상품)·`DELIVERY`(배송)·`RETURN`(반품)·`EXCHANGE`(교환)·`ETC`(기타). 생략하면 `PRODUCT`다")
554
571
  });
555
572
  /** `POST /products/{productId}/inquiries` 응답 */
556
573
  const createInquiryResultSchema = z.object({
@@ -697,6 +714,7 @@ const publicReviewSchema = z.object({
697
714
  content: z.string(),
698
715
  images: z.array(z.url()),
699
716
  optionName: z.string().nullable(),
717
+ variantId: z.string().nullable().optional().describe("리뷰를 쓴 주문상품의 옵션(조합) id(이슈 #91). 상품 상세 `variants[].variantId`와 같은 값이고 리뷰 목록의 `variantId` 필터 키다. 옵션 없는 상품도 기본 조합 id가 있다. 주문상품을 찾지 못한 리뷰는 null이다. 서버는 항상 싣는다"),
700
718
  writerMaskedName: z.string(),
701
719
  sellerReply: z.object({
702
720
  content: z.string(),
@@ -709,6 +727,28 @@ const reviewSummarySchema = z.object({
709
727
  totalCount: z.number().int(),
710
728
  distribution: z.record(z.string(), z.number().int())
711
729
  });
730
+ /**
731
+ * 내가 쓴 리뷰 (이슈 #95) — `GET /me/reviews`. 수정·삭제(`PUT`·`DELETE /me/reviews/{reviewId}`)에 쓰는 `reviewId`와 상품 링크를 싣는다.
732
+ * 상품 정보는 주문 시점 값이고, 주문상품을 찾지 못하면 지금 상품의 값이다. 둘 다 없으면 null이다.
733
+ */
734
+ const myReviewSchema = z.object({
735
+ reviewId: z.string(),
736
+ productId: z.string(),
737
+ productName: z.string().nullable().describe("주문 시점 상품명. 찾지 못하면 null"),
738
+ thumbnailUrl: z.url().nullable().describe("주문 시점 대표 이미지. 없으면 null"),
739
+ optionName: z.string().nullable(),
740
+ rating: z.number().int().min(1).max(5),
741
+ content: z.string(),
742
+ images: z.array(z.url()),
743
+ sellerReply: z.object({
744
+ content: z.string(),
745
+ repliedAt: z.string()
746
+ }).nullable(),
747
+ blinded: z.boolean().describe("판매자가 가린 리뷰. true면 상품 리뷰 목록에 보이지 않는다(작성자에게만 보인다)"),
748
+ editable: z.boolean().describe("지금 수정할 수 있는가. 작성 후 30일까지다. 지나면 `PUT /me/reviews/{reviewId}`가 409 `PERIOD_EXPIRED`다"),
749
+ editableUntil: z.string().describe("수정 기한(ISO 8601)"),
750
+ createdAt: z.string()
751
+ });
712
752
  const writableReviewSchema = z.object({
713
753
  orderItemId: z.string(),
714
754
  productId: z.string(),
@@ -731,6 +771,37 @@ const updateReviewRequestSchema = z.object({
731
771
  content: z.string().min(10).max(2e3).optional(),
732
772
  images: z.array(z.url()).max(5).optional()
733
773
  }).refine((value) => Object.values(value).some((v) => v !== void 0), { message: "최소 1개 필드가 필요합니다" });
774
+ /** 리뷰 정렬 — `helpful`은 도움 데이터가 없어 평점 높은 순과 같다 */
775
+ const productReviewSortSchema = z.enum([
776
+ "latest",
777
+ "ratingDesc",
778
+ "ratingAsc",
779
+ "helpful"
780
+ ]);
781
+ /** `GET /products/{productId}/reviews` 쿼리 — 문서용이다. 쿼리 문자열이라 값은 문자열로 받는다 */
782
+ const productReviewQuerySchema = z.object({
783
+ rating: z.string().optional().describe("이 평점(1~5)의 리뷰만"),
784
+ hasImage: z.string().optional().describe("`true`면 사진이 있는 리뷰만"),
785
+ variantId: z.string().optional().describe("이 옵션(조합)으로 산 리뷰만(이슈 #91). 상품 상세 `variants[].variantId`이고 리뷰 응답의 `variantId`와 같은 값이다. 다른 필터와 함께 쓰면 모두 만족하는 리뷰만 온다"),
786
+ sort: z.string().optional().describe("정렬. `latest`(기본)·`ratingDesc`·`ratingAsc`·`helpful`(평점 높은 순과 같다)"),
787
+ page: z.string().optional().describe("페이지 번호 (1부터)"),
788
+ size: z.string().optional().describe("페이지 크기")
789
+ });
790
+ /**
791
+ * 리뷰 사진 업로드 자리 발급 (이슈 #96) — `POST /me/uploads`(구매자 로그인). 파일 바이트는 api를 거치지 않는다.
792
+ * 응답 `uploadUrl`에 파일을 그대로 PUT하면 `url`이 공개 주소가 되고, 그 주소를 리뷰 작성·수정의 `images`에 넣는다.
793
+ * 형식·크기 제한은 관리 API 상품 이미지(`product-image`)와 같은 정지 이미지 규칙이다(값은 API 문서). 서버가 객체 키를 정하므로 파일명은 확장자만 쓰인다.
794
+ */
795
+ const reviewImageUploadRequestSchema = z.object({
796
+ filename: z.string().min(1).max(255).describe("파일명. 확장자로 형식을 판정하고 이름은 저장하지 않는다"),
797
+ purpose: z.enum(["review-image"]).default("review-image").describe("업로드 용도. 지금은 `review-image`(리뷰 사진)뿐이다"),
798
+ size: z.number().int().positive().optional().describe("파일 바이트 크기. 주면 크기 상한을 발급 전에 검사한다")
799
+ });
800
+ /** 업로드 자리 — `uploadUrl`은 1시간 유효하다 */
801
+ const uploadTicketSchema = z.object({
802
+ url: z.url().describe("업로드가 끝나면 공개될 주소. 리뷰의 `images`에 넣는다"),
803
+ uploadUrl: z.url().describe("파일 바이트를 그대로 PUT할 주소. 1시간 유효")
804
+ });
734
805
  /** `GET /products/{productId}/reviews` 응답 — 리뷰 페이지와 평점 분포 */
735
806
  const reviewPageSchema = pageSchema(publicReviewSchema).extend({ summary: reviewSummarySchema.optional() });
736
807
  /** `PUT /me/reviews/{reviewId}` 응답 */
@@ -741,6 +812,11 @@ const updateReviewResultSchema = z.object({
741
812
  //#endregion
742
813
  //#region src/schemas/store.ts
743
814
  /**
815
+ * 사업자 정보 필드(이슈 #81) — 전자상거래법 표기(푸터)용이다. 셀러가 정하지 않았으면 null이고, 그 항목은 표시하지 않으면 된다.
816
+ * 옛 서버 응답에 없으면 null로 읽는다.
817
+ */
818
+ const businessText = (description) => z.string().nullable().optional().default(null).describe(`${description}. 정하지 않았으면 null. 서버는 항상 싣는다`);
819
+ /**
744
820
  * 상점 공개 설정 — `GET /store`. 스토어프론트가 화면을 그릴 때 읽는 값만 담는다.
745
821
  */
746
822
  const storefrontStoreSchema = z.object({
@@ -749,6 +825,14 @@ const storefrontStoreSchema = z.object({
749
825
  logoUrl: z.string().nullable(),
750
826
  customerCenterPhone: z.string().nullable(),
751
827
  businessHours: z.string().nullable(),
828
+ businessName: businessText("상호(사업자등록증의 상호). 상점명(`name`)과 다를 수 있다"),
829
+ representativeName: businessText("대표자명"),
830
+ businessNumber: businessText("사업자등록번호. 관리 API로 저장한 값은 숫자 10자리(하이픈 없음)이고 표시할 때 `123-45-67890`으로 끊으면 된다"),
831
+ mailOrderSalesNumber: businessText("통신판매업 신고번호. 셀러가 적은 그대로다"),
832
+ businessAddress: businessText("사업장 주소"),
833
+ customerCenterEmail: businessText("고객센터 이메일"),
834
+ privacyOfficerName: businessText("개인정보 보호책임자 성명"),
835
+ privacyOfficerEmail: businessText("개인정보 보호책임자 이메일"),
752
836
  /**
753
837
  * 비회원 주문 허용. false면 로그인하지 않은 구매자의 주문서 생성·결제 요청이 403 `GUEST_CHECKOUT_DISABLED`다.
754
838
  * 장바구니 담기는 된다 — 주문 버튼을 로그인 안내로 바꾸면 된다
@@ -850,6 +934,7 @@ get: () => http.request("GET", "/store", storefrontStoreSchema) },
850
934
  listCategories: () => http.request("GET", "/categories", z.array(categoryNodeSchema)),
851
935
  searchProducts: (params) => http.request("GET", "/products", productPageSchema, { query: params }),
852
936
  getProduct: (productId) => http.request("GET", path`/products/${productId}`, productDetailSchema),
937
+ /** 상품 리뷰 목록 — `variantId`로 옵션(조합)별 리뷰만 받는다(상품 상세 `variants[].variantId`) */
853
938
  listProductReviews: (productId, params) => http.request("GET", path`/products/${productId}/reviews`, reviewPageSchema, { query: params }),
854
939
  listProductInquiries: (productId, params) => http.request("GET", path`/products/${productId}/inquiries`, pageSchema(publicInquirySchema), { query: params }),
855
940
  createInquiry: (productId, body) => http.requestVoid("POST", path`/products/${productId}/inquiries`, { body })
@@ -947,7 +1032,14 @@ get: () => http.request("GET", "/store", storefrontStoreSchema) },
947
1032
  removeWishlist: (productId) => http.requestVoid("DELETE", path`/me/wishlist/${productId}`)
948
1033
  },
949
1034
  reviews: {
1035
+ /** 내가 쓴 리뷰 — 최신순. 수정·삭제는 항목의 `reviewId`로 한다(이슈 #95) */
1036
+ listMine: (params) => http.request("GET", "/me/reviews", pageSchema(myReviewSchema), { query: params }),
950
1037
  listWritable: () => http.request("GET", "/me/reviews/writable", z.array(writableReviewSchema)),
1038
+ /**
1039
+ * 리뷰 사진 업로드 자리(이슈 #96) — 응답 `uploadUrl`에 파일을 PUT한 뒤 `url`을 `create`·`update`의 `images`에 넣는다.
1040
+ * 형식·크기가 맞지 않으면 400 `UNSUPPORTED_FILE_TYPE`·413 `FILE_TOO_LARGE`, 연타하면 429 `TOO_MANY_REQUESTS`다
1041
+ */
1042
+ createImageUpload: (body) => http.request("POST", "/me/uploads", uploadTicketSchema, { body: reviewImageUploadRequestSchema.parse(body) }),
951
1043
  create: (orderItemId, body) => http.request("POST", path`/me/order-items/${orderItemId}/review`, createReviewResultSchema, { body: createReviewRequestSchema.parse(body) }),
952
1044
  update: (reviewId, body) => http.requestVoid("PUT", path`/me/reviews/${reviewId}`, { body: updateReviewRequestSchema.parse(body) }),
953
1045
  remove: (reviewId) => http.requestVoid("DELETE", path`/me/reviews/${reviewId}`)
@@ -965,4 +1057,4 @@ get: () => http.request("GET", "/store", storefrontStoreSchema) },
965
1057
  };
966
1058
  }
967
1059
  //#endregion
968
- export { updateCartItemRequestSchema as $, consentSourceSchema as A, categoryNodeSchema as B, createInquiryResultSchema as C, customerInquirySchema as D, customerInquiryCategorySchema as E, claimReturnAddressSchema as F, productSortSchema as G, productDetailSchema as H, claimTypeSchema as I, pageInfoSchema as J, claimStatusSchema as K, createClaimRequestSchema as L, consentUpdateRequestSchema as M, memberConsentsSchema as N, consentActionSchema as O, claimReasonSchema as P, cartSchema as Q, createClaimResultSchema as R, createInquiryRequestSchema as S, createCustomerInquiryRequestSchema as T, productFacetsSchema as U, productCardSchema as V, productPageSchema as W, addCartItemRequestSchema as X, pageSchema as Y, cartItemSchema as Z, memberAddressRequestSchema as _, publicReviewSchema as a, linkIdentityRequestSchema as at, updateProfileRequestSchema as b, updateReviewRequestSchema as c, signupRequestSchema as ct, deliveryTrackingSchema as d, withdrawRequestSchema as dt, anonymousSessionSchema as et, myOrderItemSchema as f, withdrawalBlockedDetailsSchema as ft, trackingStageResponseSchema as g, unwrapData as gt, purchaseDecisionResultSchema as h, toApiError as ht, createReviewResultSchema as i, idpTokenRequestSchema as it, consentStateSchema as j, consentKindSchema as k, updateReviewResultSchema as l, socialProviderSchema as lt, orderShippingAddressSchema as m, buildQuery as mt, storefrontStoreSchema as n, idpAuthorizeRequestSchema as nt, reviewPageSchema as o, loginRequestSchema as ot, myOrderSchema as p, ApiError as pt, orderItemStatusSchema as q, createReviewRequestSchema as r, idpAuthorizeResponseSchema as rt, reviewSummarySchema as s, memberIdentitiesSchema as st, createStorefrontClient as t, idpAgreementsSchema as tt, writableReviewSchema as u, tokenPairSchema as ut, memberAddressSchema as v, publicInquirySchema as w, wishlistAddResultSchema as x, memberSchema as y, myClaimSchema as z };
1060
+ export { orderItemStatusSchema as $, publicInquirySchema as A, claimReasonSchema as B, memberAddressSchema as C, createInquiryRequestSchema as D, wishlistAddResultSchema as E, consentKindSchema as F, myClaimSchema as G, claimTypeSchema as H, consentSourceSchema as I, productDetailSchema as J, categoryNodeSchema as K, consentStateSchema as L, customerInquiryCategorySchema as M, customerInquirySchema as N, createInquiryResultSchema as O, consentActionSchema as P, claimStatusSchema as Q, consentUpdateRequestSchema as R, memberAddressRequestSchema as S, unwrapData as St, updateProfileRequestSchema as T, createClaimRequestSchema as U, claimReturnAddressSchema as V, createClaimResultSchema as W, productPageSchema as X, productFacetsSchema as Y, productSortSchema as Z, myOrderItemSchema as _, withdrawRequestSchema as _t, myReviewSchema as a, updateCartItemRequestSchema as at, purchaseDecisionResultSchema as b, buildQuery as bt, publicReviewSchema as c, idpAuthorizeRequestSchema as ct, reviewSummarySchema as d, linkIdentityRequestSchema as dt, pageInfoSchema as et, updateReviewRequestSchema as f, loginRequestSchema as ft, deliveryTrackingSchema as g, tokenPairSchema as gt, writableReviewSchema as h, socialProviderSchema as ht, createReviewResultSchema as i, cartSchema as it, createCustomerInquiryRequestSchema as j, productInquiryCategorySchema as k, reviewImageUploadRequestSchema as l, idpAuthorizeResponseSchema as lt, uploadTicketSchema as m, signupRequestSchema as mt, storefrontStoreSchema as n, addCartItemRequestSchema as nt, productReviewQuerySchema as o, anonymousSessionSchema as ot, updateReviewResultSchema as p, memberIdentitiesSchema as pt, productCardSchema as q, createReviewRequestSchema as r, cartItemSchema as rt, productReviewSortSchema as s, idpAgreementsSchema as st, createStorefrontClient as t, pageSchema as tt, reviewPageSchema as u, idpTokenRequestSchema as ut, myOrderSchema as v, withdrawalBlockedDetailsSchema as vt, memberSchema as w, trackingStageResponseSchema as x, toApiError as xt, orderShippingAddressSchema as y, ApiError as yt, memberConsentsSchema as z };
@@ -241,6 +241,7 @@ declare const productCardSchema: z.ZodObject<{
241
241
  salePrice: z.ZodNumber;
242
242
  discountedPrice: z.ZodNullable<z.ZodNumber>;
243
243
  discountRate: z.ZodNullable<z.ZodNumber>;
244
+ originalPrice: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
244
245
  freeShipping: z.ZodBoolean;
245
246
  fulfillment: z.ZodObject<{
246
247
  type: z.ZodString;
@@ -258,6 +259,7 @@ declare const productDetailSchema: z.ZodObject<{
258
259
  salePrice: z.ZodNumber;
259
260
  discountedPrice: z.ZodNullable<z.ZodNumber>;
260
261
  discountRate: z.ZodNullable<z.ZodNumber>;
262
+ originalPrice: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
261
263
  freeShipping: z.ZodBoolean;
262
264
  averageRating: z.ZodNumber;
263
265
  reviewCount: z.ZodNumber;
@@ -326,12 +328,12 @@ declare const productDetailSchema: z.ZodObject<{
326
328
  }, z.core.$strip>;
327
329
  type ProductDetail = z.infer<typeof productDetailSchema>;
328
330
  declare const productSortSchema: z.ZodEnum<{
329
- latest: "latest";
330
- ratingDesc: "ratingDesc";
331
331
  reviewCount: "reviewCount";
332
332
  recommend: "recommend";
333
+ latest: "latest";
333
334
  priceAsc: "priceAsc";
334
335
  priceDesc: "priceDesc";
336
+ ratingDesc: "ratingDesc";
335
337
  }>;
336
338
  type ProductSort = z.infer<typeof productSortSchema>;
337
339
  interface ProductSearchParams extends PageParams {
@@ -367,6 +369,7 @@ declare const productPageSchema: z.ZodObject<{
367
369
  salePrice: z.ZodNumber;
368
370
  discountedPrice: z.ZodNullable<z.ZodNumber>;
369
371
  discountRate: z.ZodNullable<z.ZodNumber>;
372
+ originalPrice: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
370
373
  freeShipping: z.ZodBoolean;
371
374
  fulfillment: z.ZodObject<{
372
375
  type: z.ZodString;
@@ -1039,9 +1042,9 @@ type PaymentMessage = z.infer<typeof paymentMessageSchema>;
1039
1042
  //#endregion
1040
1043
  //#region src/schemas/claim.d.ts
1041
1044
  declare const claimTypeSchema: z.ZodEnum<{
1042
- CANCEL: "CANCEL";
1043
1045
  RETURN: "RETURN";
1044
1046
  EXCHANGE: "EXCHANGE";
1047
+ CANCEL: "CANCEL";
1045
1048
  }>;
1046
1049
  type ClaimType = z.infer<typeof claimTypeSchema>;
1047
1050
  declare const claimReasonSchema: z.ZodEnum<{
@@ -1055,9 +1058,9 @@ declare const claimReasonSchema: z.ZodEnum<{
1055
1058
  type ClaimReason = z.infer<typeof claimReasonSchema>;
1056
1059
  declare const createClaimRequestSchema: z.ZodObject<{
1057
1060
  type: z.ZodEnum<{
1058
- CANCEL: "CANCEL";
1059
1061
  RETURN: "RETURN";
1060
1062
  EXCHANGE: "EXCHANGE";
1063
+ CANCEL: "CANCEL";
1061
1064
  }>;
1062
1065
  reason: z.ZodEnum<{
1063
1066
  CHANGE_OF_MIND: "CHANGE_OF_MIND";
@@ -1103,9 +1106,9 @@ type ClaimReturnAddress = z.infer<typeof claimReturnAddressSchema>;
1103
1106
  declare const myClaimSchema: z.ZodObject<{
1104
1107
  claimId: z.ZodString;
1105
1108
  type: z.ZodEnum<{
1106
- CANCEL: "CANCEL";
1107
1109
  RETURN: "RETURN";
1108
1110
  EXCHANGE: "EXCHANGE";
1111
+ CANCEL: "CANCEL";
1109
1112
  }>;
1110
1113
  status: z.ZodEnum<{
1111
1114
  COMPLETED: "COMPLETED";
@@ -1393,22 +1396,22 @@ declare const myCouponListQuerySchema: z.ZodObject<{
1393
1396
  //#endregion
1394
1397
  //#region src/schemas/customer-inquiry.d.ts
1395
1398
  declare const customerInquiryCategorySchema: z.ZodEnum<{
1399
+ DELIVERY: "DELIVERY";
1396
1400
  RETURN: "RETURN";
1397
1401
  EXCHANGE: "EXCHANGE";
1398
- DELIVERY: "DELIVERY";
1399
- PAYMENT: "PAYMENT";
1400
1402
  ETC: "ETC";
1403
+ PAYMENT: "PAYMENT";
1401
1404
  }>;
1402
1405
  type CustomerInquiryCategory = z.infer<typeof customerInquiryCategorySchema>;
1403
1406
  /** 구매자 본인 뷰 — 마스킹 없이 본인 데이터, 셀러 답변(수정횟수 제외) */
1404
1407
  declare const customerInquirySchema: z.ZodObject<{
1405
1408
  inquiryId: z.ZodString;
1406
1409
  category: z.ZodEnum<{
1410
+ DELIVERY: "DELIVERY";
1407
1411
  RETURN: "RETURN";
1408
1412
  EXCHANGE: "EXCHANGE";
1409
- DELIVERY: "DELIVERY";
1410
- PAYMENT: "PAYMENT";
1411
1413
  ETC: "ETC";
1414
+ PAYMENT: "PAYMENT";
1412
1415
  }>;
1413
1416
  title: z.ZodString;
1414
1417
  content: z.ZodString;
@@ -1423,11 +1426,11 @@ declare const customerInquirySchema: z.ZodObject<{
1423
1426
  type CustomerInquiry = z.infer<typeof customerInquirySchema>;
1424
1427
  declare const createCustomerInquiryRequestSchema: z.ZodObject<{
1425
1428
  category: z.ZodEnum<{
1429
+ DELIVERY: "DELIVERY";
1426
1430
  RETURN: "RETURN";
1427
1431
  EXCHANGE: "EXCHANGE";
1428
- DELIVERY: "DELIVERY";
1429
- PAYMENT: "PAYMENT";
1430
1432
  ETC: "ETC";
1433
+ PAYMENT: "PAYMENT";
1431
1434
  }>;
1432
1435
  title: z.ZodString;
1433
1436
  content: z.ZodString;
@@ -1436,6 +1439,18 @@ declare const createCustomerInquiryRequestSchema: z.ZodObject<{
1436
1439
  type CreateCustomerInquiryRequest = z.infer<typeof createCustomerInquiryRequestSchema>;
1437
1440
  //#endregion
1438
1441
  //#region src/schemas/inquiry.d.ts
1442
+ /**
1443
+ * 상품 문의 유형(이슈 #85) — 관리 API 상품 문의의 `category`와 같은 값이다.
1444
+ * `PRODUCT` 상품(사이즈·소재 등), `DELIVERY` 배송, `RETURN` 반품, `EXCHANGE` 교환, `ETC` 기타
1445
+ */
1446
+ declare const productInquiryCategorySchema: z.ZodEnum<{
1447
+ PRODUCT: "PRODUCT";
1448
+ DELIVERY: "DELIVERY";
1449
+ RETURN: "RETURN";
1450
+ EXCHANGE: "EXCHANGE";
1451
+ ETC: "ETC";
1452
+ }>;
1453
+ type ProductInquiryCategory = z.infer<typeof productInquiryCategorySchema>;
1439
1454
  declare const publicInquirySchema: z.ZodObject<{
1440
1455
  inquiryId: z.ZodString;
1441
1456
  content: z.ZodNullable<z.ZodString>;
@@ -1447,11 +1462,28 @@ declare const publicInquirySchema: z.ZodObject<{
1447
1462
  answeredAt: z.ZodString;
1448
1463
  }, z.core.$strip>>;
1449
1464
  createdAt: z.ZodString;
1465
+ productId: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
1466
+ productName: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
1467
+ thumbnailUrl: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodURL>>>;
1468
+ category: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
1469
+ PRODUCT: "PRODUCT";
1470
+ DELIVERY: "DELIVERY";
1471
+ RETURN: "RETURN";
1472
+ EXCHANGE: "EXCHANGE";
1473
+ ETC: "ETC";
1474
+ }>>>;
1450
1475
  }, z.core.$strip>;
1451
1476
  type PublicInquiry = z.infer<typeof publicInquirySchema>;
1452
1477
  declare const createInquiryRequestSchema: z.ZodObject<{
1453
1478
  content: z.ZodString;
1454
1479
  secret: z.ZodDefault<z.ZodBoolean>;
1480
+ category: z.ZodOptional<z.ZodEnum<{
1481
+ PRODUCT: "PRODUCT";
1482
+ DELIVERY: "DELIVERY";
1483
+ RETURN: "RETURN";
1484
+ EXCHANGE: "EXCHANGE";
1485
+ ETC: "ETC";
1486
+ }>>;
1455
1487
  }, z.core.$strip>;
1456
1488
  type CreateInquiryRequest = z.infer<typeof createInquiryRequestSchema>;
1457
1489
  /** `POST /products/{productId}/inquiries` 응답 */
@@ -1514,6 +1546,7 @@ declare const publicReviewSchema: z.ZodObject<{
1514
1546
  content: z.ZodString;
1515
1547
  images: z.ZodArray<z.ZodURL>;
1516
1548
  optionName: z.ZodNullable<z.ZodString>;
1549
+ variantId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1517
1550
  writerMaskedName: z.ZodString;
1518
1551
  sellerReply: z.ZodNullable<z.ZodObject<{
1519
1552
  content: z.ZodString;
@@ -1528,6 +1561,29 @@ declare const reviewSummarySchema: z.ZodObject<{
1528
1561
  distribution: z.ZodRecord<z.ZodString, z.ZodNumber>;
1529
1562
  }, z.core.$strip>;
1530
1563
  type ReviewSummary = z.infer<typeof reviewSummarySchema>;
1564
+ /**
1565
+ * 내가 쓴 리뷰 (이슈 #95) — `GET /me/reviews`. 수정·삭제(`PUT`·`DELETE /me/reviews/{reviewId}`)에 쓰는 `reviewId`와 상품 링크를 싣는다.
1566
+ * 상품 정보는 주문 시점 값이고, 주문상품을 찾지 못하면 지금 상품의 값이다. 둘 다 없으면 null이다.
1567
+ */
1568
+ declare const myReviewSchema: z.ZodObject<{
1569
+ reviewId: z.ZodString;
1570
+ productId: z.ZodString;
1571
+ productName: z.ZodNullable<z.ZodString>;
1572
+ thumbnailUrl: z.ZodNullable<z.ZodURL>;
1573
+ optionName: z.ZodNullable<z.ZodString>;
1574
+ rating: z.ZodNumber;
1575
+ content: z.ZodString;
1576
+ images: z.ZodArray<z.ZodURL>;
1577
+ sellerReply: z.ZodNullable<z.ZodObject<{
1578
+ content: z.ZodString;
1579
+ repliedAt: z.ZodString;
1580
+ }, z.core.$strip>>;
1581
+ blinded: z.ZodBoolean;
1582
+ editable: z.ZodBoolean;
1583
+ editableUntil: z.ZodString;
1584
+ createdAt: z.ZodString;
1585
+ }, z.core.$strip>;
1586
+ type MyReview = z.infer<typeof myReviewSchema>;
1531
1587
  declare const writableReviewSchema: z.ZodObject<{
1532
1588
  orderItemId: z.ZodString;
1533
1589
  productId: z.ZodString;
@@ -1554,6 +1610,50 @@ declare const updateReviewRequestSchema: z.ZodObject<{
1554
1610
  images: z.ZodOptional<z.ZodArray<z.ZodURL>>;
1555
1611
  }, z.core.$strip>;
1556
1612
  type UpdateReviewRequest = z.infer<typeof updateReviewRequestSchema>;
1613
+ /** 리뷰 정렬 — `helpful`은 도움 데이터가 없어 평점 높은 순과 같다 */
1614
+ declare const productReviewSortSchema: z.ZodEnum<{
1615
+ latest: "latest";
1616
+ ratingDesc: "ratingDesc";
1617
+ ratingAsc: "ratingAsc";
1618
+ helpful: "helpful";
1619
+ }>;
1620
+ type ProductReviewSort = z.infer<typeof productReviewSortSchema>;
1621
+ /** `GET /products/{productId}/reviews` 쿼리 — 문서용이다. 쿼리 문자열이라 값은 문자열로 받는다 */
1622
+ declare const productReviewQuerySchema: z.ZodObject<{
1623
+ rating: z.ZodOptional<z.ZodString>;
1624
+ hasImage: z.ZodOptional<z.ZodString>;
1625
+ variantId: z.ZodOptional<z.ZodString>;
1626
+ sort: z.ZodOptional<z.ZodString>;
1627
+ page: z.ZodOptional<z.ZodString>;
1628
+ size: z.ZodOptional<z.ZodString>;
1629
+ }, z.core.$strip>;
1630
+ /** 리뷰 목록 조회 파라미터 — `catalog.listProductReviews` */
1631
+ interface ProductReviewParams extends PageParams {
1632
+ rating?: number;
1633
+ hasImage?: boolean;
1634
+ /** 이 옵션(조합)으로 산 리뷰만 — 상품 상세 `variants[].variantId` */
1635
+ variantId?: string;
1636
+ sort?: ProductReviewSort;
1637
+ }
1638
+ /**
1639
+ * 리뷰 사진 업로드 자리 발급 (이슈 #96) — `POST /me/uploads`(구매자 로그인). 파일 바이트는 api를 거치지 않는다.
1640
+ * 응답 `uploadUrl`에 파일을 그대로 PUT하면 `url`이 공개 주소가 되고, 그 주소를 리뷰 작성·수정의 `images`에 넣는다.
1641
+ * 형식·크기 제한은 관리 API 상품 이미지(`product-image`)와 같은 정지 이미지 규칙이다(값은 API 문서). 서버가 객체 키를 정하므로 파일명은 확장자만 쓰인다.
1642
+ */
1643
+ declare const reviewImageUploadRequestSchema: z.ZodObject<{
1644
+ filename: z.ZodString;
1645
+ purpose: z.ZodDefault<z.ZodEnum<{
1646
+ "review-image": "review-image";
1647
+ }>>;
1648
+ size: z.ZodOptional<z.ZodNumber>;
1649
+ }, z.core.$strip>;
1650
+ type ReviewImageUploadRequest = z.input<typeof reviewImageUploadRequestSchema>;
1651
+ /** 업로드 자리 — `uploadUrl`은 1시간 유효하다 */
1652
+ declare const uploadTicketSchema: z.ZodObject<{
1653
+ url: z.ZodURL;
1654
+ uploadUrl: z.ZodURL;
1655
+ }, z.core.$strip>;
1656
+ type UploadTicket = z.infer<typeof uploadTicketSchema>;
1557
1657
  /** `GET /products/{productId}/reviews` 응답 — 리뷰 페이지와 평점 분포 */
1558
1658
  declare const reviewPageSchema: z.ZodObject<{
1559
1659
  page: z.ZodNumber;
@@ -1566,6 +1666,7 @@ declare const reviewPageSchema: z.ZodObject<{
1566
1666
  content: z.ZodString;
1567
1667
  images: z.ZodArray<z.ZodURL>;
1568
1668
  optionName: z.ZodNullable<z.ZodString>;
1669
+ variantId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1569
1670
  writerMaskedName: z.ZodString;
1570
1671
  sellerReply: z.ZodNullable<z.ZodObject<{
1571
1672
  content: z.ZodString;
@@ -1771,6 +1872,14 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
1771
1872
  logoUrl: string | null;
1772
1873
  customerCenterPhone: string | null;
1773
1874
  businessHours: string | null;
1875
+ businessName: string | null;
1876
+ representativeName: string | null;
1877
+ businessNumber: string | null;
1878
+ mailOrderSalesNumber: string | null;
1879
+ businessAddress: string | null;
1880
+ customerCenterEmail: string | null;
1881
+ privacyOfficerName: string | null;
1882
+ privacyOfficerEmail: string | null;
1774
1883
  guestCheckout: boolean;
1775
1884
  loginMethods: ("password" | "kakao" | "naver" | "google")[];
1776
1885
  checkoutAvailable: boolean;
@@ -1792,6 +1901,7 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
1792
1901
  salePrice: number;
1793
1902
  discountedPrice: number | null;
1794
1903
  discountRate: number | null;
1904
+ originalPrice: number | null;
1795
1905
  freeShipping: boolean;
1796
1906
  fulfillment: {
1797
1907
  type: string;
@@ -1820,6 +1930,7 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
1820
1930
  salePrice: number;
1821
1931
  discountedPrice: number | null;
1822
1932
  discountRate: number | null;
1933
+ originalPrice: number | null;
1823
1934
  freeShipping: boolean;
1824
1935
  averageRating: number;
1825
1936
  reviewCount: number;
@@ -1879,11 +1990,8 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
1879
1990
  name: string;
1880
1991
  }[];
1881
1992
  }>;
1882
- listProductReviews: (productId: string, params?: PageParams & {
1883
- rating?: number;
1884
- hasImage?: boolean;
1885
- sort?: "latest" | "ratingDesc" | "ratingAsc" | "helpful";
1886
- }) => Promise<{
1993
+ /** 상품 리뷰 목록 — `variantId`로 옵션(조합)별 리뷰만 받는다(상품 상세 `variants[].variantId`) */
1994
+ listProductReviews: (productId: string, params?: ProductReviewParams) => Promise<{
1887
1995
  page: number;
1888
1996
  size: number;
1889
1997
  totalElements: number;
@@ -1900,6 +2008,7 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
1900
2008
  repliedAt: string;
1901
2009
  } | null;
1902
2010
  createdAt: string;
2011
+ variantId?: string | null | undefined;
1903
2012
  }[];
1904
2013
  summary?: {
1905
2014
  averageRating: number;
@@ -1923,6 +2032,10 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
1923
2032
  answeredAt: string;
1924
2033
  } | null;
1925
2034
  createdAt: string;
2035
+ productId: string | null;
2036
+ productName: string | null;
2037
+ thumbnailUrl: string | null;
2038
+ category: "PRODUCT" | "DELIVERY" | "RETURN" | "EXCHANGE" | "ETC";
1926
2039
  }[];
1927
2040
  }>;
1928
2041
  createInquiry: (productId: string, body: CreateInquiryRequest) => Promise<void>;
@@ -2575,7 +2688,7 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
2575
2688
  totalPages: number;
2576
2689
  contents: {
2577
2690
  claimId: string;
2578
- type: "CANCEL" | "RETURN" | "EXCHANGE";
2691
+ type: "RETURN" | "EXCHANGE" | "CANCEL";
2579
2692
  status: "COMPLETED" | "REQUESTED" | "HELD" | "COLLECTING" | "COLLECTED" | "REDELIVERING" | "APPROVED" | "REJECTED" | "WITHDRAWN";
2580
2693
  orderItemId: string;
2581
2694
  productName: string;
@@ -2697,6 +2810,7 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
2697
2810
  salePrice: number;
2698
2811
  discountedPrice: number | null;
2699
2812
  discountRate: number | null;
2813
+ originalPrice: number | null;
2700
2814
  freeShipping: boolean;
2701
2815
  fulfillment: {
2702
2816
  type: string;
@@ -2711,6 +2825,31 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
2711
2825
  removeWishlist: (productId: string) => Promise<void>;
2712
2826
  };
2713
2827
  reviews: {
2828
+ /** 내가 쓴 리뷰 — 최신순. 수정·삭제는 항목의 `reviewId`로 한다(이슈 #95) */
2829
+ listMine: (params?: PageParams) => Promise<{
2830
+ page: number;
2831
+ size: number;
2832
+ totalElements: number;
2833
+ totalPages: number;
2834
+ contents: {
2835
+ reviewId: string;
2836
+ productId: string;
2837
+ productName: string | null;
2838
+ thumbnailUrl: string | null;
2839
+ optionName: string | null;
2840
+ rating: number;
2841
+ content: string;
2842
+ images: string[];
2843
+ sellerReply: {
2844
+ content: string;
2845
+ repliedAt: string;
2846
+ } | null;
2847
+ blinded: boolean;
2848
+ editable: boolean;
2849
+ editableUntil: string;
2850
+ createdAt: string;
2851
+ }[];
2852
+ }>;
2714
2853
  listWritable: () => Promise<{
2715
2854
  orderItemId: string;
2716
2855
  productId: string;
@@ -2719,6 +2858,14 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
2719
2858
  thumbnailUrl: string | null;
2720
2859
  writableUntil: string;
2721
2860
  }[]>;
2861
+ /**
2862
+ * 리뷰 사진 업로드 자리(이슈 #96) — 응답 `uploadUrl`에 파일을 PUT한 뒤 `url`을 `create`·`update`의 `images`에 넣는다.
2863
+ * 형식·크기가 맞지 않으면 400 `UNSUPPORTED_FILE_TYPE`·413 `FILE_TOO_LARGE`, 연타하면 429 `TOO_MANY_REQUESTS`다
2864
+ */
2865
+ createImageUpload: (body: ReviewImageUploadRequest) => Promise<{
2866
+ url: string;
2867
+ uploadUrl: string;
2868
+ }>;
2722
2869
  create: (orderItemId: string, body: CreateReviewRequest) => Promise<{
2723
2870
  reviewId: string;
2724
2871
  rewardPoint: number;
@@ -2745,6 +2892,10 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
2745
2892
  answeredAt: string;
2746
2893
  } | null;
2747
2894
  createdAt: string;
2895
+ productId: string | null;
2896
+ productName: string | null;
2897
+ thumbnailUrl: string | null;
2898
+ category: "PRODUCT" | "DELIVERY" | "RETURN" | "EXCHANGE" | "ETC";
2748
2899
  }[];
2749
2900
  }>;
2750
2901
  };
@@ -2773,7 +2924,7 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
2773
2924
  customerInquiries: {
2774
2925
  create: (body: CreateCustomerInquiryRequest) => Promise<{
2775
2926
  inquiryId: string;
2776
- category: "RETURN" | "EXCHANGE" | "DELIVERY" | "PAYMENT" | "ETC";
2927
+ category: "DELIVERY" | "RETURN" | "EXCHANGE" | "ETC" | "PAYMENT";
2777
2928
  title: string;
2778
2929
  content: string;
2779
2930
  orderItemId: string | null;
@@ -2794,7 +2945,7 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
2794
2945
  totalPages: number;
2795
2946
  contents: {
2796
2947
  inquiryId: string;
2797
- category: "RETURN" | "EXCHANGE" | "DELIVERY" | "PAYMENT" | "ETC";
2948
+ category: "DELIVERY" | "RETURN" | "EXCHANGE" | "ETC" | "PAYMENT";
2798
2949
  title: string;
2799
2950
  content: string;
2800
2951
  orderItemId: string | null;
@@ -2808,7 +2959,7 @@ declare function createStorefrontClient(options: StorefrontClientOptions): {
2808
2959
  }>;
2809
2960
  get: (inquiryId: string) => Promise<{
2810
2961
  inquiryId: string;
2811
- category: "RETURN" | "EXCHANGE" | "DELIVERY" | "PAYMENT" | "ETC";
2962
+ category: "DELIVERY" | "RETURN" | "EXCHANGE" | "ETC" | "PAYMENT";
2812
2963
  title: string;
2813
2964
  content: string;
2814
2965
  orderItemId: string | null;
@@ -3231,6 +3382,14 @@ declare const storefrontStoreSchema: z.ZodObject<{
3231
3382
  logoUrl: z.ZodNullable<z.ZodString>;
3232
3383
  customerCenterPhone: z.ZodNullable<z.ZodString>;
3233
3384
  businessHours: z.ZodNullable<z.ZodString>;
3385
+ businessName: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
3386
+ representativeName: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
3387
+ businessNumber: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
3388
+ mailOrderSalesNumber: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
3389
+ businessAddress: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
3390
+ customerCenterEmail: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
3391
+ privacyOfficerName: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
3392
+ privacyOfficerEmail: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
3234
3393
  guestCheckout: z.ZodBoolean;
3235
3394
  loginMethods: z.ZodArray<z.ZodEnum<{
3236
3395
  password: "password";
@@ -3250,4 +3409,4 @@ declare const storefrontStoreSchema: z.ZodObject<{
3250
3409
  }, z.core.$strip>;
3251
3410
  type StorefrontStore = z.infer<typeof storefrontStoreSchema>;
3252
3411
  //#endregion
3253
- export { CreateReviewRequest as $, cashReceiptAvailable as $n, productCardFulfillmentSchema as $r, myCouponSchema as $t, ANALYTICS_MAX_BATCH_BYTES as A, CheckoutDelivery as An, ProductSearchParams as Ar, publicInquirySchema as At, analyticsBatchSchema as B, PAYMENT_STATUS_VALUES as Bn, PageInfo as Br, CouponApplication as Bt, PurchaseDecisionResult as C, createClaimResultSchema as Cn, shippingAddressInputSchema as Cr, updateProfileRequestSchema as Ct, orderShippingAddressSchema as D, CashReceiptIdentityType as Dn, ProductDetail as Dr, PublicInquiry as Dt, myOrderSchema as E, CASH_RECEIPT_METHODS as En, ProductCard as Er, CreateInquiryResult as Et, AnalyticsBatch as F, EasyPayProvider as Fn, productFacetsSchema as Fr, customerInquiryCategorySchema as Ft, StorefrontClient as G, PaymentStart as Gn, pageSchema as Gr, applicableCouponSchema as Gt, analyticsClientEventSchema as H, PaymentMessage as Hn, claimStatusSchema as Hr, MAX_COUPONS_PER_CHECKOUT as Ht, AnalyticsClientEvent as I, GuestInfo as In, productPageSchema as Ir, customerInquirySchema as It, STOREFRONT_SESSION_KEYS as J, RemoteArea as Jn, ProductCardFulfillment as Jr, couponApplicationListSchema as Jt, StorefrontClientOptions as K, PaymentStatus as Kn, LineFulfillment as Kr, checkoutPricingRequestSchema as Kt, AnalyticsClientEventName as L, KnownPaymentResult as Ln, productSortSchema as Lr, ApplicableCoupon as Lt, ANALYTICS_SESSION_HEADER as M, CreateCheckoutRequest as Mn, categoryNodeSchema as Mr, CustomerInquiry as Mt, ANALYTICS_VISITOR_COOKIE as N, DeliveryQuoteRequest as Nn, productCardSchema as Nr, CustomerInquiryCategory as Nt, purchaseDecisionResultSchema as O, CashReceiptRequest as On, ProductFacets as Or, createInquiryRequestSchema as Ot, ANALYTICS_VISITOR_HEADER as P, DeliveryQuoteResult as Pn, productDetailSchema as Pr, createCustomerInquiryRequestSchema as Pt, createStorefrontSession as Q, availablePaymentOptionSchema as Qn, myOrderItemFulfillmentSnapshotSchema as Qr, myCouponListQuerySchema as Qt, AnalyticsEventName as R, KnownPaymentStatus as Rn, ClaimStatus as Rr, CheckoutPricing as Rt, OrderShippingAddress as S, createClaimRequestSchema as Sn, retryPaymentRequestSchema as Sr, memberSchema as St, myOrderItemSchema as T, AvailablePaymentOption as Tn, CategoryNode as Tr, CreateInquiryRequest as Tt, analyticsIdSchema as U, PaymentMethod as Un, orderItemStatusSchema as Ur, MIN_PAYMENT_AMOUNT as Ut, analyticsClientEventNameSchema as V, PaymentFailureCategory as Vn, PageParams as Vr, CouponResult as Vt, analyticsServerEventNameSchema as W, PaymentOption as Wn, pageInfoSchema as Wr, MyCoupon as Wt, StorefrontSession as X, ShippingAddressInput as Xn, UnknownFulfillmentView as Xr, couponBenefitViewSchema as Xt, SessionStorage as Y, RetryPaymentRequest as Yn, ProductFulfillmentView as Yr, couponApplicationSchema as Yt, StorefrontSessionOptions as Z, StartPaymentRequest as Zn, lineFulfillmentSchema as Zr, couponResultSchema as Zt, normalizeCustomInputValue as _, CreateClaimResult as _n, paymentStartSchema as _r, MemberAddressRequest as _t, CustomInputEntry as a, addCartItemRequestSchema as ai, ConsentUpdateRequest as an, createCheckoutRequestSchema as ar, UpdateReviewResult as at, MyOrder as b, claimReturnAddressSchema as bn, remoteAreaSchema as br, memberAddressRequestSchema as bt, OptionSelectionView as c, updateCartItemRequestSchema as ci, consentKindSchema as cn, easyPayProviderResponseSchema as cr, createReviewResultSchema as ct, customInputEntrySchema as d, consentUpdateRequestSchema as dn, paymentFailureCategorySchema as dr, reviewSummarySchema as dt, productFulfillmentViewSchema as ei, pricingAmountsSchema as en, cashReceiptIdentityTypeOf as er, CreateReviewResult as et, customInputLength as f, memberConsentsSchema as fn, paymentMessageSchema as fr, updateReviewRequestSchema as ft, lineSelectionResponseShape as g, CreateClaimRequest as gn, paymentOptionSchema as gr, MemberAddress as gt, lineSelectionRequestShape as h, ClaimType as hn, paymentOptionListSchema as hr, Member as ht, AddonSelection as i, UpdateCartItemRequest as ii, ConsentState as in, checkoutSessionSchema as ir, UpdateReviewRequest as it, ANALYTICS_SESSION_COOKIE as j, CheckoutSession as jn, ProductSort as jr, CreateCustomerInquiryRequest as jt, trackingStageResponseSchema as k, CashReceiptType as kn, ProductPage as kr, createInquiryResultSchema as kt, addonGroupViewSchema as l, analyticsIdsFromCookie as li, consentSourceSchema as ln, easyPayProviderSchema as lr, publicReviewSchema as lt, customInputViewSchema as m, ClaimReturnAddress as mn, paymentOptionKey as mr, writableReviewSchema as mt, storefrontStoreSchema as n, Cart as ni, ConsentKind as nn, cashReceiptTypeSchema as nr, ReviewPage as nt, CustomInputValueView as o, cartItemSchema as oi, MemberConsents as on, deliveryQuoteRequestSchema as or, WritableReview as ot, customInputValueViewSchema as p, ClaimReason as pn, paymentMethodSchema as pr, updateReviewResultSchema as pt, createStorefrontClient as q, PgProvider as qn, MyOrderItemFulfillmentSnapshot as qr, checkoutPricingSchema as qt, AddonGroupView as r, CartItem as ri, ConsentSource as rn, checkoutDeliverySchema as rr, ReviewSummary as rt, CustomInputView as s, cartSchema as si, consentActionSchema as sn, deliveryQuoteSchema as sr, createReviewRequestSchema as st, StorefrontStore as t, AddCartItemRequest as ti, ConsentAction as tn, cashReceiptRequestSchema as tr, PublicReview as tt, addonSelectionSchema as u, consentStateSchema as un, guestInfoSchema as ur, reviewPageSchema as ut, optionSelectionViewSchema as v, MyClaim as vn, paymentStatusSchema as vr, UpdateProfileRequest as vt, deliveryTrackingSchema as w, myClaimSchema as wn, startPaymentRequestSchema as wr, wishlistAddResultSchema as wt, MyOrderItem as x, claimTypeSchema as xn, residentNumberLike as xr, memberAddressSchema as xt, DeliveryTracking as y, claimReasonSchema as yn, pgProviderSchema as yr, WishlistAddResult as yt, AnalyticsServerEventName as z, PAYMENT_RESULT_VALUES as zn, OrderItemStatus as zr, CheckoutPricingRequest as zt };
3412
+ export { CreateReviewRequest as $, PaymentFailureCategory as $n, PageParams as $r, CouponResult as $t, ANALYTICS_MAX_BATCH_BYTES as A, MyClaim as An, paymentStatusSchema as Ar, memberAddressRequestSchema as At, analyticsBatchSchema as B, CashReceiptRequest as Bn, ProductFacets as Br, createInquiryResultSchema as Bt, PurchaseDecisionResult as C, consentUpdateRequestSchema as Cn, paymentFailureCategorySchema as Cr, uploadTicketSchema as Ct, orderShippingAddressSchema as D, ClaimType as Dn, paymentOptionListSchema as Dr, MemberAddressRequest as Dt, myOrderSchema as E, ClaimReturnAddress as En, paymentOptionKey as Er, MemberAddress as Et, AnalyticsBatch as F, createClaimResultSchema as Fn, shippingAddressInputSchema as Fr, CreateInquiryRequest as Ft, StorefrontClient as G, DeliveryQuoteRequest as Gn, productCardSchema as Gr, CustomerInquiryCategory as Gt, analyticsClientEventSchema as H, CheckoutDelivery as Hn, ProductSearchParams as Hr, publicInquirySchema as Ht, AnalyticsClientEvent as I, myClaimSchema as In, startPaymentRequestSchema as Ir, CreateInquiryResult as It, STOREFRONT_SESSION_KEYS as J, GuestInfo as Jn, productPageSchema as Jr, customerInquirySchema as Jt, StorefrontClientOptions as K, DeliveryQuoteResult as Kn, productDetailSchema as Kr, createCustomerInquiryRequestSchema as Kt, AnalyticsClientEventName as L, AvailablePaymentOption as Ln, CategoryNode as Lr, ProductInquiryCategory as Lt, ANALYTICS_SESSION_HEADER as M, claimReturnAddressSchema as Mn, remoteAreaSchema as Mr, memberSchema as Mt, ANALYTICS_VISITOR_COOKIE as N, claimTypeSchema as Nn, residentNumberLike as Nr, updateProfileRequestSchema as Nt, purchaseDecisionResultSchema as O, CreateClaimRequest as On, paymentOptionSchema as Or, UpdateProfileRequest as Ot, ANALYTICS_VISITOR_HEADER as P, createClaimRequestSchema as Pn, retryPaymentRequestSchema as Pr, wishlistAddResultSchema as Pt, createStorefrontSession as Q, PAYMENT_STATUS_VALUES as Qn, PageInfo as Qr, CouponApplication as Qt, AnalyticsEventName as R, CASH_RECEIPT_METHODS as Rn, ProductCard as Rr, PublicInquiry as Rt, OrderShippingAddress as S, consentStateSchema as Sn, guestInfoSchema as Sr, updateReviewResultSchema as St, myOrderItemSchema as T, ClaimReason as Tn, paymentMethodSchema as Tr, Member as Tt, analyticsIdSchema as U, CheckoutSession as Un, ProductSort as Ur, CreateCustomerInquiryRequest as Ut, analyticsClientEventNameSchema as V, CashReceiptType as Vn, ProductPage as Vr, productInquiryCategorySchema as Vt, analyticsServerEventNameSchema as W, CreateCheckoutRequest as Wn, categoryNodeSchema as Wr, CustomerInquiry as Wt, StorefrontSession as X, KnownPaymentStatus as Xn, ClaimStatus as Xr, CheckoutPricing as Xt, SessionStorage as Y, KnownPaymentResult as Yn, productSortSchema as Yr, ApplicableCoupon as Yt, StorefrontSessionOptions as Z, PAYMENT_RESULT_VALUES as Zn, OrderItemStatus as Zr, CheckoutPricingRequest as Zt, normalizeCustomInputValue as _, addCartItemRequestSchema as _i, ConsentUpdateRequest as _n, createCheckoutRequestSchema as _r, publicReviewSchema as _t, CustomInputEntry as a, MyOrderItemFulfillmentSnapshot as ai, checkoutPricingSchema as an, PgProvider as ar, ReviewImageUploadRequest as at, MyOrder as b, updateCartItemRequestSchema as bi, consentKindSchema as bn, easyPayProviderResponseSchema as br, reviewSummarySchema as bt, OptionSelectionView as c, UnknownFulfillmentView as ci, couponBenefitViewSchema as cn, ShippingAddressInput as cr, UpdateReviewRequest as ct, customInputEntrySchema as d, productCardFulfillmentSchema as di, myCouponSchema as dn, cashReceiptAvailable as dr, WritableReview as dt, claimStatusSchema as ei, MAX_COUPONS_PER_CHECKOUT as en, PaymentMessage as er, CreateReviewResult as et, customInputLength as f, productFulfillmentViewSchema as fi, pricingAmountsSchema as fn, cashReceiptIdentityTypeOf as fr, createReviewRequestSchema as ft, lineSelectionResponseShape as g, UpdateCartItemRequest as gi, ConsentState as gn, checkoutSessionSchema as gr, productReviewSortSchema as gt, lineSelectionRequestShape as h, CartItem as hi, ConsentSource as hn, checkoutDeliverySchema as hr, productReviewQuerySchema as ht, AddonSelection as i, LineFulfillment as ii, checkoutPricingRequestSchema as in, PaymentStatus as ir, PublicReview as it, ANALYTICS_SESSION_COOKIE as j, claimReasonSchema as jn, pgProviderSchema as jr, memberAddressSchema as jt, trackingStageResponseSchema as k, CreateClaimResult as kn, paymentStartSchema as kr, WishlistAddResult as kt, addonGroupViewSchema as l, lineFulfillmentSchema as li, couponResultSchema as ln, StartPaymentRequest as lr, UpdateReviewResult as lt, customInputViewSchema as m, Cart as mi, ConsentKind as mn, cashReceiptTypeSchema as mr, myReviewSchema as mt, storefrontStoreSchema as n, pageInfoSchema as ni, MyCoupon as nn, PaymentOption as nr, ProductReviewParams as nt, CustomInputValueView as o, ProductCardFulfillment as oi, couponApplicationListSchema as on, RemoteArea as or, ReviewPage as ot, customInputValueViewSchema as p, AddCartItemRequest as pi, ConsentAction as pn, cashReceiptRequestSchema as pr, createReviewResultSchema as pt, createStorefrontClient as q, EasyPayProvider as qn, productFacetsSchema as qr, customerInquiryCategorySchema as qt, AddonGroupView as r, pageSchema as ri, applicableCouponSchema as rn, PaymentStart as rr, ProductReviewSort as rt, CustomInputView as s, ProductFulfillmentView as si, couponApplicationSchema as sn, RetryPaymentRequest as sr, ReviewSummary as st, StorefrontStore as t, orderItemStatusSchema as ti, MIN_PAYMENT_AMOUNT as tn, PaymentMethod as tr, MyReview as tt, addonSelectionSchema as u, myOrderItemFulfillmentSnapshotSchema as ui, myCouponListQuerySchema as un, availablePaymentOptionSchema as ur, UploadTicket as ut, optionSelectionViewSchema as v, cartItemSchema as vi, MemberConsents as vn, deliveryQuoteRequestSchema as vr, reviewImageUploadRequestSchema as vt, deliveryTrackingSchema as w, memberConsentsSchema as wn, paymentMessageSchema as wr, writableReviewSchema as wt, MyOrderItem as x, analyticsIdsFromCookie as xi, consentSourceSchema as xn, easyPayProviderSchema as xr, updateReviewRequestSchema as xt, DeliveryTracking as y, cartSchema as yi, consentActionSchema as yn, deliveryQuoteSchema as yr, reviewPageSchema as yt, AnalyticsServerEventName as z, CashReceiptIdentityType as zn, ProductDetail as zr, createInquiryRequestSchema as zt };
package/dist/index.d.mts CHANGED
@@ -1,3 +1,3 @@
1
1
  import { C as loginRequestSchema, D as tokenPairSchema, E as socialProviderSchema, O as withdrawRequestSchema, S as linkIdentityRequestSchema, T as signupRequestSchema, _ as anonymousSessionSchema, a as AnonymousSession, b as idpAuthorizeResponseSchema, c as IdpTokenRequest, d as MemberIdentities, f as SignupRequest, g as WithdrawalBlockedDetails, h as WithdrawRequest, i as buildQuery, k as withdrawalBlockedDetailsSchema, l as LinkIdentityRequest, m as TokenPair, n as Query, o as IdpAgreements, p as SocialProvider, r as TokenSource, s as IdpAuthorizeRequest, t as ApiError, u as LoginRequest, v as idpAgreementsSchema, w as memberIdentitiesSchema, x as idpTokenRequestSchema, y as idpAuthorizeRequestSchema } from "./http-1ab7tP4-.mjs";
2
- import { $ as CreateReviewRequest, $n as cashReceiptAvailable, $r as productCardFulfillmentSchema, $t as myCouponSchema, A as ANALYTICS_MAX_BATCH_BYTES, An as CheckoutDelivery, Ar as ProductSearchParams, At as publicInquirySchema, B as analyticsBatchSchema, Bn as PAYMENT_STATUS_VALUES, Br as PageInfo, Bt as CouponApplication, C as PurchaseDecisionResult, Cn as createClaimResultSchema, Cr as shippingAddressInputSchema, Ct as updateProfileRequestSchema, D as orderShippingAddressSchema, Dn as CashReceiptIdentityType, Dr as ProductDetail, Dt as PublicInquiry, E as myOrderSchema, En as CASH_RECEIPT_METHODS, Er as ProductCard, Et as CreateInquiryResult, F as AnalyticsBatch, Fn as EasyPayProvider, Fr as productFacetsSchema, Ft as customerInquiryCategorySchema, G as StorefrontClient, Gn as PaymentStart, Gr as pageSchema, Gt as applicableCouponSchema, H as analyticsClientEventSchema, Hn as PaymentMessage, Hr as claimStatusSchema, Ht as MAX_COUPONS_PER_CHECKOUT, I as AnalyticsClientEvent, In as GuestInfo, Ir as productPageSchema, It as customerInquirySchema, J as STOREFRONT_SESSION_KEYS, Jn as RemoteArea, Jr as ProductCardFulfillment, Jt as couponApplicationListSchema, K as StorefrontClientOptions, Kn as PaymentStatus, Kr as LineFulfillment, Kt as checkoutPricingRequestSchema, L as AnalyticsClientEventName, Ln as KnownPaymentResult, Lr as productSortSchema, Lt as ApplicableCoupon, M as ANALYTICS_SESSION_HEADER, Mn as CreateCheckoutRequest, Mr as categoryNodeSchema, Mt as CustomerInquiry, N as ANALYTICS_VISITOR_COOKIE, Nn as DeliveryQuoteRequest, Nr as productCardSchema, Nt as CustomerInquiryCategory, O as purchaseDecisionResultSchema, On as CashReceiptRequest, Or as ProductFacets, Ot as createInquiryRequestSchema, P as ANALYTICS_VISITOR_HEADER, Pn as DeliveryQuoteResult, Pr as productDetailSchema, Pt as createCustomerInquiryRequestSchema, Q as createStorefrontSession, Qn as availablePaymentOptionSchema, Qr as myOrderItemFulfillmentSnapshotSchema, Qt as myCouponListQuerySchema, R as AnalyticsEventName, Rn as KnownPaymentStatus, Rr as ClaimStatus, Rt as CheckoutPricing, S as OrderShippingAddress, Sn as createClaimRequestSchema, Sr as retryPaymentRequestSchema, St as memberSchema, T as myOrderItemSchema, Tn as AvailablePaymentOption, Tr as CategoryNode, Tt as CreateInquiryRequest, U as analyticsIdSchema, Un as PaymentMethod, Ur as orderItemStatusSchema, Ut as MIN_PAYMENT_AMOUNT, V as analyticsClientEventNameSchema, Vn as PaymentFailureCategory, Vr as PageParams, Vt as CouponResult, W as analyticsServerEventNameSchema, Wn as PaymentOption, Wr as pageInfoSchema, Wt as MyCoupon, X as StorefrontSession, Xn as ShippingAddressInput, Xr as UnknownFulfillmentView, Xt as couponBenefitViewSchema, Y as SessionStorage, Yn as RetryPaymentRequest, Yr as ProductFulfillmentView, Yt as couponApplicationSchema, Z as StorefrontSessionOptions, Zn as StartPaymentRequest, Zr as lineFulfillmentSchema, Zt as couponResultSchema, _ as normalizeCustomInputValue, _n as CreateClaimResult, _r as paymentStartSchema, _t as MemberAddressRequest, a as CustomInputEntry, ai as addCartItemRequestSchema, an as ConsentUpdateRequest, ar as createCheckoutRequestSchema, at as UpdateReviewResult, b as MyOrder, bn as claimReturnAddressSchema, br as remoteAreaSchema, bt as memberAddressRequestSchema, c as OptionSelectionView, ci as updateCartItemRequestSchema, cn as consentKindSchema, cr as easyPayProviderResponseSchema, ct as createReviewResultSchema, d as customInputEntrySchema, dn as consentUpdateRequestSchema, dr as paymentFailureCategorySchema, dt as reviewSummarySchema, ei as productFulfillmentViewSchema, en as pricingAmountsSchema, er as cashReceiptIdentityTypeOf, et as CreateReviewResult, f as customInputLength, fn as memberConsentsSchema, fr as paymentMessageSchema, ft as updateReviewRequestSchema, g as lineSelectionResponseShape, gn as CreateClaimRequest, gr as paymentOptionSchema, gt as MemberAddress, h as lineSelectionRequestShape, hn as ClaimType, hr as paymentOptionListSchema, ht as Member, i as AddonSelection, ii as UpdateCartItemRequest, in as ConsentState, ir as checkoutSessionSchema, it as UpdateReviewRequest, j as ANALYTICS_SESSION_COOKIE, jn as CheckoutSession, jr as ProductSort, jt as CreateCustomerInquiryRequest, k as trackingStageResponseSchema, kn as CashReceiptType, kr as ProductPage, kt as createInquiryResultSchema, l as addonGroupViewSchema, li as analyticsIdsFromCookie, ln as consentSourceSchema, lr as easyPayProviderSchema, lt as publicReviewSchema, m as customInputViewSchema, mn as ClaimReturnAddress, mr as paymentOptionKey, mt as writableReviewSchema, n as storefrontStoreSchema, ni as Cart, nn as ConsentKind, nr as cashReceiptTypeSchema, nt as ReviewPage, o as CustomInputValueView, oi as cartItemSchema, on as MemberConsents, or as deliveryQuoteRequestSchema, ot as WritableReview, p as customInputValueViewSchema, pn as ClaimReason, pr as paymentMethodSchema, pt as updateReviewResultSchema, q as createStorefrontClient, qn as PgProvider, qr as MyOrderItemFulfillmentSnapshot, qt as checkoutPricingSchema, r as AddonGroupView, ri as CartItem, rn as ConsentSource, rr as checkoutDeliverySchema, rt as ReviewSummary, s as CustomInputView, si as cartSchema, sn as consentActionSchema, sr as deliveryQuoteSchema, st as createReviewRequestSchema, t as StorefrontStore, ti as AddCartItemRequest, tn as ConsentAction, tr as cashReceiptRequestSchema, tt as PublicReview, u as addonSelectionSchema, un as consentStateSchema, ur as guestInfoSchema, ut as reviewPageSchema, v as optionSelectionViewSchema, vn as MyClaim, vr as paymentStatusSchema, vt as UpdateProfileRequest, w as deliveryTrackingSchema, wn as myClaimSchema, wr as startPaymentRequestSchema, wt as wishlistAddResultSchema, x as MyOrderItem, xn as claimTypeSchema, xr as residentNumberLike, xt as memberAddressSchema, y as DeliveryTracking, yn as claimReasonSchema, yr as pgProviderSchema, yt as WishlistAddResult, z as AnalyticsServerEventName, zn as PAYMENT_RESULT_VALUES, zr as OrderItemStatus, zt as CheckoutPricingRequest } from "./index-DJYqxHSY.mjs";
3
- export { ANALYTICS_MAX_BATCH_BYTES, ANALYTICS_SESSION_COOKIE, ANALYTICS_SESSION_HEADER, ANALYTICS_VISITOR_COOKIE, ANALYTICS_VISITOR_HEADER, AddCartItemRequest, AddonGroupView, AddonSelection, AnalyticsBatch, AnalyticsClientEvent, AnalyticsClientEventName, AnalyticsEventName, AnalyticsServerEventName, AnonymousSession, ApiError, ApplicableCoupon, AvailablePaymentOption, CASH_RECEIPT_METHODS, Cart, CartItem, CashReceiptIdentityType, CashReceiptRequest, CashReceiptType, CategoryNode, CheckoutDelivery, CheckoutPricing, CheckoutPricingRequest, CheckoutSession, ClaimReason, ClaimReturnAddress, ClaimStatus, ClaimType, ConsentAction, ConsentKind, ConsentSource, ConsentState, ConsentUpdateRequest, CouponApplication, CouponResult, CreateCheckoutRequest, CreateClaimRequest, CreateClaimResult, CreateCustomerInquiryRequest, CreateInquiryRequest, CreateInquiryResult, CreateReviewRequest, CreateReviewResult, CustomInputEntry, CustomInputValueView, CustomInputView, CustomerInquiry, CustomerInquiryCategory, DeliveryQuoteRequest, DeliveryQuoteResult, DeliveryTracking, EasyPayProvider, GuestInfo, IdpAgreements, IdpAuthorizeRequest, IdpTokenRequest, KnownPaymentResult, KnownPaymentStatus, LineFulfillment, LinkIdentityRequest, LoginRequest, MAX_COUPONS_PER_CHECKOUT, MIN_PAYMENT_AMOUNT, Member, MemberAddress, MemberAddressRequest, MemberConsents, MemberIdentities, MyClaim, MyCoupon, MyOrder, MyOrderItem, MyOrderItemFulfillmentSnapshot, OptionSelectionView, OrderItemStatus, OrderShippingAddress, PAYMENT_RESULT_VALUES, PAYMENT_STATUS_VALUES, PageInfo, PageParams, PaymentFailureCategory, PaymentMessage, PaymentMethod, PaymentOption, PaymentStart, PaymentStatus, PgProvider, ProductCard, ProductCardFulfillment, ProductDetail, ProductFacets, ProductFulfillmentView, ProductPage, ProductSearchParams, ProductSort, PublicInquiry, PublicReview, PurchaseDecisionResult, type Query, RemoteArea, RetryPaymentRequest, ReviewPage, ReviewSummary, STOREFRONT_SESSION_KEYS, type SessionStorage, ShippingAddressInput, SignupRequest, SocialProvider, StartPaymentRequest, type StorefrontClient, type StorefrontClientOptions, type StorefrontSession, type StorefrontSessionOptions, StorefrontStore, TokenPair, type TokenSource, UnknownFulfillmentView, UpdateCartItemRequest, UpdateProfileRequest, UpdateReviewRequest, UpdateReviewResult, WishlistAddResult, WithdrawRequest, WithdrawalBlockedDetails, WritableReview, addCartItemRequestSchema, addonGroupViewSchema, addonSelectionSchema, analyticsBatchSchema, analyticsClientEventNameSchema, analyticsClientEventSchema, analyticsIdSchema, analyticsIdsFromCookie, analyticsServerEventNameSchema, anonymousSessionSchema, applicableCouponSchema, availablePaymentOptionSchema, buildQuery, cartItemSchema, cartSchema, cashReceiptAvailable, cashReceiptIdentityTypeOf, cashReceiptRequestSchema, cashReceiptTypeSchema, categoryNodeSchema, checkoutDeliverySchema, checkoutPricingRequestSchema, checkoutPricingSchema, checkoutSessionSchema, claimReasonSchema, claimReturnAddressSchema, claimStatusSchema, claimTypeSchema, consentActionSchema, consentKindSchema, consentSourceSchema, consentStateSchema, consentUpdateRequestSchema, couponApplicationListSchema, couponApplicationSchema, couponBenefitViewSchema, couponResultSchema, createCheckoutRequestSchema, createClaimRequestSchema, createClaimResultSchema, createCustomerInquiryRequestSchema, createInquiryRequestSchema, createInquiryResultSchema, createReviewRequestSchema, createReviewResultSchema, createStorefrontClient, createStorefrontSession, customInputEntrySchema, customInputLength, customInputValueViewSchema, customInputViewSchema, customerInquiryCategorySchema, customerInquirySchema, deliveryQuoteRequestSchema, deliveryQuoteSchema, deliveryTrackingSchema, easyPayProviderResponseSchema, easyPayProviderSchema, guestInfoSchema, idpAgreementsSchema, idpAuthorizeRequestSchema, idpAuthorizeResponseSchema, idpTokenRequestSchema, lineFulfillmentSchema, lineSelectionRequestShape, lineSelectionResponseShape, linkIdentityRequestSchema, loginRequestSchema, memberAddressRequestSchema, memberAddressSchema, memberConsentsSchema, memberIdentitiesSchema, memberSchema, myClaimSchema, myCouponListQuerySchema, myCouponSchema, myOrderItemFulfillmentSnapshotSchema, myOrderItemSchema, myOrderSchema, normalizeCustomInputValue, optionSelectionViewSchema, orderItemStatusSchema, orderShippingAddressSchema, pageInfoSchema, pageSchema, paymentFailureCategorySchema, paymentMessageSchema, paymentMethodSchema, paymentOptionKey, paymentOptionListSchema, paymentOptionSchema, paymentStartSchema, paymentStatusSchema, pgProviderSchema, pricingAmountsSchema, productCardFulfillmentSchema, productCardSchema, productDetailSchema, productFacetsSchema, productFulfillmentViewSchema, productPageSchema, productSortSchema, publicInquirySchema, publicReviewSchema, purchaseDecisionResultSchema, remoteAreaSchema, residentNumberLike, retryPaymentRequestSchema, reviewPageSchema, reviewSummarySchema, shippingAddressInputSchema, signupRequestSchema, socialProviderSchema, startPaymentRequestSchema, storefrontStoreSchema, tokenPairSchema, trackingStageResponseSchema, updateCartItemRequestSchema, updateProfileRequestSchema, updateReviewRequestSchema, updateReviewResultSchema, wishlistAddResultSchema, withdrawRequestSchema, withdrawalBlockedDetailsSchema, writableReviewSchema };
2
+ import { $ as CreateReviewRequest, $n as PaymentFailureCategory, $r as PageParams, $t as CouponResult, A as ANALYTICS_MAX_BATCH_BYTES, An as MyClaim, Ar as paymentStatusSchema, At as memberAddressRequestSchema, B as analyticsBatchSchema, Bn as CashReceiptRequest, Br as ProductFacets, Bt as createInquiryResultSchema, C as PurchaseDecisionResult, Cn as consentUpdateRequestSchema, Cr as paymentFailureCategorySchema, Ct as uploadTicketSchema, D as orderShippingAddressSchema, Dn as ClaimType, Dr as paymentOptionListSchema, Dt as MemberAddressRequest, E as myOrderSchema, En as ClaimReturnAddress, Er as paymentOptionKey, Et as MemberAddress, F as AnalyticsBatch, Fn as createClaimResultSchema, Fr as shippingAddressInputSchema, Ft as CreateInquiryRequest, G as StorefrontClient, Gn as DeliveryQuoteRequest, Gr as productCardSchema, Gt as CustomerInquiryCategory, H as analyticsClientEventSchema, Hn as CheckoutDelivery, Hr as ProductSearchParams, Ht as publicInquirySchema, I as AnalyticsClientEvent, In as myClaimSchema, Ir as startPaymentRequestSchema, It as CreateInquiryResult, J as STOREFRONT_SESSION_KEYS, Jn as GuestInfo, Jr as productPageSchema, Jt as customerInquirySchema, K as StorefrontClientOptions, Kn as DeliveryQuoteResult, Kr as productDetailSchema, Kt as createCustomerInquiryRequestSchema, L as AnalyticsClientEventName, Ln as AvailablePaymentOption, Lr as CategoryNode, Lt as ProductInquiryCategory, M as ANALYTICS_SESSION_HEADER, Mn as claimReturnAddressSchema, Mr as remoteAreaSchema, Mt as memberSchema, N as ANALYTICS_VISITOR_COOKIE, Nn as claimTypeSchema, Nr as residentNumberLike, Nt as updateProfileRequestSchema, O as purchaseDecisionResultSchema, On as CreateClaimRequest, Or as paymentOptionSchema, Ot as UpdateProfileRequest, P as ANALYTICS_VISITOR_HEADER, Pn as createClaimRequestSchema, Pr as retryPaymentRequestSchema, Pt as wishlistAddResultSchema, Q as createStorefrontSession, Qn as PAYMENT_STATUS_VALUES, Qr as PageInfo, Qt as CouponApplication, R as AnalyticsEventName, Rn as CASH_RECEIPT_METHODS, Rr as ProductCard, Rt as PublicInquiry, S as OrderShippingAddress, Sn as consentStateSchema, Sr as guestInfoSchema, St as updateReviewResultSchema, T as myOrderItemSchema, Tn as ClaimReason, Tr as paymentMethodSchema, Tt as Member, U as analyticsIdSchema, Un as CheckoutSession, Ur as ProductSort, Ut as CreateCustomerInquiryRequest, V as analyticsClientEventNameSchema, Vn as CashReceiptType, Vr as ProductPage, Vt as productInquiryCategorySchema, W as analyticsServerEventNameSchema, Wn as CreateCheckoutRequest, Wr as categoryNodeSchema, Wt as CustomerInquiry, X as StorefrontSession, Xn as KnownPaymentStatus, Xr as ClaimStatus, Xt as CheckoutPricing, Y as SessionStorage, Yn as KnownPaymentResult, Yr as productSortSchema, Yt as ApplicableCoupon, Z as StorefrontSessionOptions, Zn as PAYMENT_RESULT_VALUES, Zr as OrderItemStatus, Zt as CheckoutPricingRequest, _ as normalizeCustomInputValue, _i as addCartItemRequestSchema, _n as ConsentUpdateRequest, _r as createCheckoutRequestSchema, _t as publicReviewSchema, a as CustomInputEntry, ai as MyOrderItemFulfillmentSnapshot, an as checkoutPricingSchema, ar as PgProvider, at as ReviewImageUploadRequest, b as MyOrder, bi as updateCartItemRequestSchema, bn as consentKindSchema, br as easyPayProviderResponseSchema, bt as reviewSummarySchema, c as OptionSelectionView, ci as UnknownFulfillmentView, cn as couponBenefitViewSchema, cr as ShippingAddressInput, ct as UpdateReviewRequest, d as customInputEntrySchema, di as productCardFulfillmentSchema, dn as myCouponSchema, dr as cashReceiptAvailable, dt as WritableReview, ei as claimStatusSchema, en as MAX_COUPONS_PER_CHECKOUT, er as PaymentMessage, et as CreateReviewResult, f as customInputLength, fi as productFulfillmentViewSchema, fn as pricingAmountsSchema, fr as cashReceiptIdentityTypeOf, ft as createReviewRequestSchema, g as lineSelectionResponseShape, gi as UpdateCartItemRequest, gn as ConsentState, gr as checkoutSessionSchema, gt as productReviewSortSchema, h as lineSelectionRequestShape, hi as CartItem, hn as ConsentSource, hr as checkoutDeliverySchema, ht as productReviewQuerySchema, i as AddonSelection, ii as LineFulfillment, in as checkoutPricingRequestSchema, ir as PaymentStatus, it as PublicReview, j as ANALYTICS_SESSION_COOKIE, jn as claimReasonSchema, jr as pgProviderSchema, jt as memberAddressSchema, k as trackingStageResponseSchema, kn as CreateClaimResult, kr as paymentStartSchema, kt as WishlistAddResult, l as addonGroupViewSchema, li as lineFulfillmentSchema, ln as couponResultSchema, lr as StartPaymentRequest, lt as UpdateReviewResult, m as customInputViewSchema, mi as Cart, mn as ConsentKind, mr as cashReceiptTypeSchema, mt as myReviewSchema, n as storefrontStoreSchema, ni as pageInfoSchema, nn as MyCoupon, nr as PaymentOption, nt as ProductReviewParams, o as CustomInputValueView, oi as ProductCardFulfillment, on as couponApplicationListSchema, or as RemoteArea, ot as ReviewPage, p as customInputValueViewSchema, pi as AddCartItemRequest, pn as ConsentAction, pr as cashReceiptRequestSchema, pt as createReviewResultSchema, q as createStorefrontClient, qn as EasyPayProvider, qr as productFacetsSchema, qt as customerInquiryCategorySchema, r as AddonGroupView, ri as pageSchema, rn as applicableCouponSchema, rr as PaymentStart, rt as ProductReviewSort, s as CustomInputView, si as ProductFulfillmentView, sn as couponApplicationSchema, sr as RetryPaymentRequest, st as ReviewSummary, t as StorefrontStore, ti as orderItemStatusSchema, tn as MIN_PAYMENT_AMOUNT, tr as PaymentMethod, tt as MyReview, u as addonSelectionSchema, ui as myOrderItemFulfillmentSnapshotSchema, un as myCouponListQuerySchema, ur as availablePaymentOptionSchema, ut as UploadTicket, v as optionSelectionViewSchema, vi as cartItemSchema, vn as MemberConsents, vr as deliveryQuoteRequestSchema, vt as reviewImageUploadRequestSchema, w as deliveryTrackingSchema, wn as memberConsentsSchema, wr as paymentMessageSchema, wt as writableReviewSchema, x as MyOrderItem, xi as analyticsIdsFromCookie, xn as consentSourceSchema, xr as easyPayProviderSchema, xt as updateReviewRequestSchema, y as DeliveryTracking, yi as cartSchema, yn as consentActionSchema, yr as deliveryQuoteSchema, yt as reviewPageSchema, z as AnalyticsServerEventName, zn as CashReceiptIdentityType, zr as ProductDetail, zt as createInquiryRequestSchema } from "./index-jE8JxvGj.mjs";
3
+ export { ANALYTICS_MAX_BATCH_BYTES, ANALYTICS_SESSION_COOKIE, ANALYTICS_SESSION_HEADER, ANALYTICS_VISITOR_COOKIE, ANALYTICS_VISITOR_HEADER, AddCartItemRequest, AddonGroupView, AddonSelection, AnalyticsBatch, AnalyticsClientEvent, AnalyticsClientEventName, AnalyticsEventName, AnalyticsServerEventName, AnonymousSession, ApiError, ApplicableCoupon, AvailablePaymentOption, CASH_RECEIPT_METHODS, Cart, CartItem, CashReceiptIdentityType, CashReceiptRequest, CashReceiptType, CategoryNode, CheckoutDelivery, CheckoutPricing, CheckoutPricingRequest, CheckoutSession, ClaimReason, ClaimReturnAddress, ClaimStatus, ClaimType, ConsentAction, ConsentKind, ConsentSource, ConsentState, ConsentUpdateRequest, CouponApplication, CouponResult, CreateCheckoutRequest, CreateClaimRequest, CreateClaimResult, CreateCustomerInquiryRequest, CreateInquiryRequest, CreateInquiryResult, CreateReviewRequest, CreateReviewResult, CustomInputEntry, CustomInputValueView, CustomInputView, CustomerInquiry, CustomerInquiryCategory, DeliveryQuoteRequest, DeliveryQuoteResult, DeliveryTracking, EasyPayProvider, GuestInfo, IdpAgreements, IdpAuthorizeRequest, IdpTokenRequest, KnownPaymentResult, KnownPaymentStatus, LineFulfillment, LinkIdentityRequest, LoginRequest, MAX_COUPONS_PER_CHECKOUT, MIN_PAYMENT_AMOUNT, Member, MemberAddress, MemberAddressRequest, MemberConsents, MemberIdentities, MyClaim, MyCoupon, MyOrder, MyOrderItem, MyOrderItemFulfillmentSnapshot, MyReview, OptionSelectionView, OrderItemStatus, OrderShippingAddress, PAYMENT_RESULT_VALUES, PAYMENT_STATUS_VALUES, PageInfo, PageParams, PaymentFailureCategory, PaymentMessage, PaymentMethod, PaymentOption, PaymentStart, PaymentStatus, PgProvider, ProductCard, ProductCardFulfillment, ProductDetail, ProductFacets, ProductFulfillmentView, ProductInquiryCategory, ProductPage, ProductReviewParams, ProductReviewSort, ProductSearchParams, ProductSort, PublicInquiry, PublicReview, PurchaseDecisionResult, type Query, RemoteArea, RetryPaymentRequest, ReviewImageUploadRequest, ReviewPage, ReviewSummary, STOREFRONT_SESSION_KEYS, type SessionStorage, ShippingAddressInput, SignupRequest, SocialProvider, StartPaymentRequest, type StorefrontClient, type StorefrontClientOptions, type StorefrontSession, type StorefrontSessionOptions, StorefrontStore, TokenPair, type TokenSource, UnknownFulfillmentView, UpdateCartItemRequest, UpdateProfileRequest, UpdateReviewRequest, UpdateReviewResult, UploadTicket, WishlistAddResult, WithdrawRequest, WithdrawalBlockedDetails, WritableReview, addCartItemRequestSchema, addonGroupViewSchema, addonSelectionSchema, analyticsBatchSchema, analyticsClientEventNameSchema, analyticsClientEventSchema, analyticsIdSchema, analyticsIdsFromCookie, analyticsServerEventNameSchema, anonymousSessionSchema, applicableCouponSchema, availablePaymentOptionSchema, buildQuery, cartItemSchema, cartSchema, cashReceiptAvailable, cashReceiptIdentityTypeOf, cashReceiptRequestSchema, cashReceiptTypeSchema, categoryNodeSchema, checkoutDeliverySchema, checkoutPricingRequestSchema, checkoutPricingSchema, checkoutSessionSchema, claimReasonSchema, claimReturnAddressSchema, claimStatusSchema, claimTypeSchema, consentActionSchema, consentKindSchema, consentSourceSchema, consentStateSchema, consentUpdateRequestSchema, couponApplicationListSchema, couponApplicationSchema, couponBenefitViewSchema, couponResultSchema, createCheckoutRequestSchema, createClaimRequestSchema, createClaimResultSchema, createCustomerInquiryRequestSchema, createInquiryRequestSchema, createInquiryResultSchema, createReviewRequestSchema, createReviewResultSchema, createStorefrontClient, createStorefrontSession, customInputEntrySchema, customInputLength, customInputValueViewSchema, customInputViewSchema, customerInquiryCategorySchema, customerInquirySchema, deliveryQuoteRequestSchema, deliveryQuoteSchema, deliveryTrackingSchema, easyPayProviderResponseSchema, easyPayProviderSchema, guestInfoSchema, idpAgreementsSchema, idpAuthorizeRequestSchema, idpAuthorizeResponseSchema, idpTokenRequestSchema, lineFulfillmentSchema, lineSelectionRequestShape, lineSelectionResponseShape, linkIdentityRequestSchema, loginRequestSchema, memberAddressRequestSchema, memberAddressSchema, memberConsentsSchema, memberIdentitiesSchema, memberSchema, myClaimSchema, myCouponListQuerySchema, myCouponSchema, myOrderItemFulfillmentSnapshotSchema, myOrderItemSchema, myOrderSchema, myReviewSchema, normalizeCustomInputValue, optionSelectionViewSchema, orderItemStatusSchema, orderShippingAddressSchema, pageInfoSchema, pageSchema, paymentFailureCategorySchema, paymentMessageSchema, paymentMethodSchema, paymentOptionKey, paymentOptionListSchema, paymentOptionSchema, paymentStartSchema, paymentStatusSchema, pgProviderSchema, pricingAmountsSchema, productCardFulfillmentSchema, productCardSchema, productDetailSchema, productFacetsSchema, productFulfillmentViewSchema, productInquiryCategorySchema, productPageSchema, productReviewQuerySchema, productReviewSortSchema, productSortSchema, publicInquirySchema, publicReviewSchema, purchaseDecisionResultSchema, remoteAreaSchema, residentNumberLike, retryPaymentRequestSchema, reviewImageUploadRequestSchema, reviewPageSchema, reviewSummarySchema, shippingAddressInputSchema, signupRequestSchema, socialProviderSchema, startPaymentRequestSchema, storefrontStoreSchema, tokenPairSchema, trackingStageResponseSchema, updateCartItemRequestSchema, updateProfileRequestSchema, updateReviewRequestSchema, updateReviewResultSchema, uploadTicketSchema, wishlistAddResultSchema, withdrawRequestSchema, withdrawalBlockedDetailsSchema, writableReviewSchema };
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { a as ANALYTICS_VISITOR_HEADER, c as analyticsClientEventSchema, i as ANALYTICS_VISITOR_COOKIE, l as analyticsIdSchema, n as ANALYTICS_SESSION_COOKIE, o as analyticsBatchSchema, r as ANALYTICS_SESSION_HEADER, s as analyticsClientEventNameSchema, t as ANALYTICS_MAX_BATCH_BYTES, u as analyticsServerEventNameSchema } from "./analytics-CgD70OqH.mjs";
2
2
  import { t as analyticsIdsFromCookie } from "./analytics-ids-COElZiI3.mjs";
3
- import { $ as updateCartItemRequestSchema, A as consentSourceSchema, B as categoryNodeSchema, C as createInquiryResultSchema, D as customerInquirySchema, E as customerInquiryCategorySchema, F as claimReturnAddressSchema, G as productSortSchema, H as productDetailSchema, I as claimTypeSchema, J as pageInfoSchema, K as claimStatusSchema, L as createClaimRequestSchema, M as consentUpdateRequestSchema, N as memberConsentsSchema, O as consentActionSchema, P as claimReasonSchema, Q as cartSchema, R as createClaimResultSchema, S as createInquiryRequestSchema, T as createCustomerInquiryRequestSchema, U as productFacetsSchema, V as productCardSchema, W as productPageSchema, X as addCartItemRequestSchema, Y as pageSchema, Z as cartItemSchema, _ as memberAddressRequestSchema, a as publicReviewSchema, at as linkIdentityRequestSchema, b as updateProfileRequestSchema, c as updateReviewRequestSchema, ct as signupRequestSchema, d as deliveryTrackingSchema, dt as withdrawRequestSchema, et as anonymousSessionSchema, f as myOrderItemSchema, ft as withdrawalBlockedDetailsSchema, g as trackingStageResponseSchema, gt as unwrapData, h as purchaseDecisionResultSchema, ht as toApiError, i as createReviewResultSchema, it as idpTokenRequestSchema, j as consentStateSchema, k as consentKindSchema, l as updateReviewResultSchema, lt as socialProviderSchema, m as orderShippingAddressSchema, mt as buildQuery, n as storefrontStoreSchema, nt as idpAuthorizeRequestSchema, o as reviewPageSchema, ot as loginRequestSchema, p as myOrderSchema, pt as ApiError, q as orderItemStatusSchema, r as createReviewRequestSchema, rt as idpAuthorizeResponseSchema, s as reviewSummarySchema, st as memberIdentitiesSchema, t as createStorefrontClient, tt as idpAgreementsSchema, u as writableReviewSchema, ut as tokenPairSchema, v as memberAddressSchema, w as publicInquirySchema, x as wishlistAddResultSchema, y as memberSchema, z as myClaimSchema } from "./client-C91Y801B.mjs";
3
+ import { $ as orderItemStatusSchema, A as publicInquirySchema, B as claimReasonSchema, C as memberAddressSchema, D as createInquiryRequestSchema, E as wishlistAddResultSchema, F as consentKindSchema, G as myClaimSchema, H as claimTypeSchema, I as consentSourceSchema, J as productDetailSchema, K as categoryNodeSchema, L as consentStateSchema, M as customerInquiryCategorySchema, N as customerInquirySchema, O as createInquiryResultSchema, P as consentActionSchema, Q as claimStatusSchema, R as consentUpdateRequestSchema, S as memberAddressRequestSchema, St as unwrapData, T as updateProfileRequestSchema, U as createClaimRequestSchema, V as claimReturnAddressSchema, W as createClaimResultSchema, X as productPageSchema, Y as productFacetsSchema, Z as productSortSchema, _ as myOrderItemSchema, _t as withdrawRequestSchema, a as myReviewSchema, at as updateCartItemRequestSchema, b as purchaseDecisionResultSchema, bt as buildQuery, c as publicReviewSchema, ct as idpAuthorizeRequestSchema, d as reviewSummarySchema, dt as linkIdentityRequestSchema, et as pageInfoSchema, f as updateReviewRequestSchema, ft as loginRequestSchema, g as deliveryTrackingSchema, gt as tokenPairSchema, h as writableReviewSchema, ht as socialProviderSchema, i as createReviewResultSchema, it as cartSchema, j as createCustomerInquiryRequestSchema, k as productInquiryCategorySchema, l as reviewImageUploadRequestSchema, lt as idpAuthorizeResponseSchema, m as uploadTicketSchema, mt as signupRequestSchema, n as storefrontStoreSchema, nt as addCartItemRequestSchema, o as productReviewQuerySchema, ot as anonymousSessionSchema, p as updateReviewResultSchema, pt as memberIdentitiesSchema, q as productCardSchema, r as createReviewRequestSchema, rt as cartItemSchema, s as productReviewSortSchema, st as idpAgreementsSchema, t as createStorefrontClient, tt as pageSchema, u as reviewPageSchema, ut as idpTokenRequestSchema, v as myOrderSchema, vt as withdrawalBlockedDetailsSchema, w as memberSchema, x as trackingStageResponseSchema, xt as toApiError, y as orderShippingAddressSchema, yt as ApiError, z as memberConsentsSchema } from "./client-nLYVG_HJ.mjs";
4
4
  import { $ as lineFulfillmentSchema, A as startPaymentRequestSchema, B as myCouponListQuerySchema, C as paymentStartSchema, D as residentNumberLike, E as remoteAreaSchema, F as checkoutPricingSchema, G as customInputEntrySchema, H as pricingAmountsSchema, I as couponApplicationListSchema, J as customInputViewSchema, K as customInputLength, L as couponApplicationSchema, M as MIN_PAYMENT_AMOUNT, N as applicableCouponSchema, O as retryPaymentRequestSchema, P as checkoutPricingRequestSchema, Q as optionSelectionViewSchema, R as couponBenefitViewSchema, S as paymentOptionSchema, T as pgProviderSchema, U as addonGroupViewSchema, V as myCouponSchema, W as addonSelectionSchema, X as lineSelectionResponseShape, Y as lineSelectionRequestShape, Z as normalizeCustomInputValue, _ as paymentFailureCategorySchema, a as cashReceiptAvailable, b as paymentOptionKey, c as cashReceiptTypeSchema, d as createCheckoutRequestSchema, et as myOrderItemFulfillmentSnapshotSchema, f as deliveryQuoteRequestSchema, g as guestInfoSchema, h as easyPayProviderSchema, i as availablePaymentOptionSchema, j as MAX_COUPONS_PER_CHECKOUT, k as shippingAddressInputSchema, l as checkoutDeliverySchema, m as easyPayProviderResponseSchema, n as PAYMENT_RESULT_VALUES, nt as productFulfillmentViewSchema, o as cashReceiptIdentityTypeOf, p as deliveryQuoteSchema, q as customInputValueViewSchema, r as PAYMENT_STATUS_VALUES, s as cashReceiptRequestSchema, t as CASH_RECEIPT_METHODS, tt as productCardFulfillmentSchema, u as checkoutSessionSchema, v as paymentMessageSchema, w as paymentStatusSchema, x as paymentOptionListSchema, y as paymentMethodSchema, z as couponResultSchema } from "./checkout-PJk8g5DY.mjs";
5
5
  //#region src/session.ts
6
6
  /** 세션 키 상수 — SDK가 소유한다. store-sdk와 겹치지 않는 별도 네임스페이스. */
@@ -125,4 +125,4 @@ function createStorefrontSession(options) {
125
125
  };
126
126
  }
127
127
  //#endregion
128
- export { ANALYTICS_MAX_BATCH_BYTES, ANALYTICS_SESSION_COOKIE, ANALYTICS_SESSION_HEADER, ANALYTICS_VISITOR_COOKIE, ANALYTICS_VISITOR_HEADER, ApiError, CASH_RECEIPT_METHODS, MAX_COUPONS_PER_CHECKOUT, MIN_PAYMENT_AMOUNT, PAYMENT_RESULT_VALUES, PAYMENT_STATUS_VALUES, STOREFRONT_SESSION_KEYS, addCartItemRequestSchema, addonGroupViewSchema, addonSelectionSchema, analyticsBatchSchema, analyticsClientEventNameSchema, analyticsClientEventSchema, analyticsIdSchema, analyticsIdsFromCookie, analyticsServerEventNameSchema, anonymousSessionSchema, applicableCouponSchema, availablePaymentOptionSchema, buildQuery, cartItemSchema, cartSchema, cashReceiptAvailable, cashReceiptIdentityTypeOf, cashReceiptRequestSchema, cashReceiptTypeSchema, categoryNodeSchema, checkoutDeliverySchema, checkoutPricingRequestSchema, checkoutPricingSchema, checkoutSessionSchema, claimReasonSchema, claimReturnAddressSchema, claimStatusSchema, claimTypeSchema, consentActionSchema, consentKindSchema, consentSourceSchema, consentStateSchema, consentUpdateRequestSchema, couponApplicationListSchema, couponApplicationSchema, couponBenefitViewSchema, couponResultSchema, createCheckoutRequestSchema, createClaimRequestSchema, createClaimResultSchema, createCustomerInquiryRequestSchema, createInquiryRequestSchema, createInquiryResultSchema, createReviewRequestSchema, createReviewResultSchema, createStorefrontClient, createStorefrontSession, customInputEntrySchema, customInputLength, customInputValueViewSchema, customInputViewSchema, customerInquiryCategorySchema, customerInquirySchema, deliveryQuoteRequestSchema, deliveryQuoteSchema, deliveryTrackingSchema, easyPayProviderResponseSchema, easyPayProviderSchema, guestInfoSchema, idpAgreementsSchema, idpAuthorizeRequestSchema, idpAuthorizeResponseSchema, idpTokenRequestSchema, lineFulfillmentSchema, lineSelectionRequestShape, lineSelectionResponseShape, linkIdentityRequestSchema, loginRequestSchema, memberAddressRequestSchema, memberAddressSchema, memberConsentsSchema, memberIdentitiesSchema, memberSchema, myClaimSchema, myCouponListQuerySchema, myCouponSchema, myOrderItemFulfillmentSnapshotSchema, myOrderItemSchema, myOrderSchema, normalizeCustomInputValue, optionSelectionViewSchema, orderItemStatusSchema, orderShippingAddressSchema, pageInfoSchema, pageSchema, paymentFailureCategorySchema, paymentMessageSchema, paymentMethodSchema, paymentOptionKey, paymentOptionListSchema, paymentOptionSchema, paymentStartSchema, paymentStatusSchema, pgProviderSchema, pricingAmountsSchema, productCardFulfillmentSchema, productCardSchema, productDetailSchema, productFacetsSchema, productFulfillmentViewSchema, productPageSchema, productSortSchema, publicInquirySchema, publicReviewSchema, purchaseDecisionResultSchema, remoteAreaSchema, residentNumberLike, retryPaymentRequestSchema, reviewPageSchema, reviewSummarySchema, shippingAddressInputSchema, signupRequestSchema, socialProviderSchema, startPaymentRequestSchema, storefrontStoreSchema, tokenPairSchema, trackingStageResponseSchema, updateCartItemRequestSchema, updateProfileRequestSchema, updateReviewRequestSchema, updateReviewResultSchema, wishlistAddResultSchema, withdrawRequestSchema, withdrawalBlockedDetailsSchema, writableReviewSchema };
128
+ export { ANALYTICS_MAX_BATCH_BYTES, ANALYTICS_SESSION_COOKIE, ANALYTICS_SESSION_HEADER, ANALYTICS_VISITOR_COOKIE, ANALYTICS_VISITOR_HEADER, ApiError, CASH_RECEIPT_METHODS, MAX_COUPONS_PER_CHECKOUT, MIN_PAYMENT_AMOUNT, PAYMENT_RESULT_VALUES, PAYMENT_STATUS_VALUES, STOREFRONT_SESSION_KEYS, addCartItemRequestSchema, addonGroupViewSchema, addonSelectionSchema, analyticsBatchSchema, analyticsClientEventNameSchema, analyticsClientEventSchema, analyticsIdSchema, analyticsIdsFromCookie, analyticsServerEventNameSchema, anonymousSessionSchema, applicableCouponSchema, availablePaymentOptionSchema, buildQuery, cartItemSchema, cartSchema, cashReceiptAvailable, cashReceiptIdentityTypeOf, cashReceiptRequestSchema, cashReceiptTypeSchema, categoryNodeSchema, checkoutDeliverySchema, checkoutPricingRequestSchema, checkoutPricingSchema, checkoutSessionSchema, claimReasonSchema, claimReturnAddressSchema, claimStatusSchema, claimTypeSchema, consentActionSchema, consentKindSchema, consentSourceSchema, consentStateSchema, consentUpdateRequestSchema, couponApplicationListSchema, couponApplicationSchema, couponBenefitViewSchema, couponResultSchema, createCheckoutRequestSchema, createClaimRequestSchema, createClaimResultSchema, createCustomerInquiryRequestSchema, createInquiryRequestSchema, createInquiryResultSchema, createReviewRequestSchema, createReviewResultSchema, createStorefrontClient, createStorefrontSession, customInputEntrySchema, customInputLength, customInputValueViewSchema, customInputViewSchema, customerInquiryCategorySchema, customerInquirySchema, deliveryQuoteRequestSchema, deliveryQuoteSchema, deliveryTrackingSchema, easyPayProviderResponseSchema, easyPayProviderSchema, guestInfoSchema, idpAgreementsSchema, idpAuthorizeRequestSchema, idpAuthorizeResponseSchema, idpTokenRequestSchema, lineFulfillmentSchema, lineSelectionRequestShape, lineSelectionResponseShape, linkIdentityRequestSchema, loginRequestSchema, memberAddressRequestSchema, memberAddressSchema, memberConsentsSchema, memberIdentitiesSchema, memberSchema, myClaimSchema, myCouponListQuerySchema, myCouponSchema, myOrderItemFulfillmentSnapshotSchema, myOrderItemSchema, myOrderSchema, myReviewSchema, normalizeCustomInputValue, optionSelectionViewSchema, orderItemStatusSchema, orderShippingAddressSchema, pageInfoSchema, pageSchema, paymentFailureCategorySchema, paymentMessageSchema, paymentMethodSchema, paymentOptionKey, paymentOptionListSchema, paymentOptionSchema, paymentStartSchema, paymentStatusSchema, pgProviderSchema, pricingAmountsSchema, productCardFulfillmentSchema, productCardSchema, productDetailSchema, productFacetsSchema, productFulfillmentViewSchema, productInquiryCategorySchema, productPageSchema, productReviewQuerySchema, productReviewSortSchema, productSortSchema, publicInquirySchema, publicReviewSchema, purchaseDecisionResultSchema, remoteAreaSchema, residentNumberLike, retryPaymentRequestSchema, reviewImageUploadRequestSchema, reviewPageSchema, reviewSummarySchema, shippingAddressInputSchema, signupRequestSchema, socialProviderSchema, startPaymentRequestSchema, storefrontStoreSchema, tokenPairSchema, trackingStageResponseSchema, updateCartItemRequestSchema, updateProfileRequestSchema, updateReviewRequestSchema, updateReviewResultSchema, uploadTicketSchema, wishlistAddResultSchema, withdrawRequestSchema, withdrawalBlockedDetailsSchema, writableReviewSchema };
@@ -1,4 +1,4 @@
1
- import { Gn as PaymentStart, In as GuestInfo, Kn as PaymentStatus, On as CashReceiptRequest, Wn as PaymentOption, Xn as ShippingAddressInput, Zn as StartPaymentRequest, q as createStorefrontClient } from "../index-DJYqxHSY.mjs";
1
+ import { Bn as CashReceiptRequest, Jn as GuestInfo, cr as ShippingAddressInput, ir as PaymentStatus, lr as StartPaymentRequest, nr as PaymentOption, q as createStorefrontClient, rr as PaymentStart } from "../index-jE8JxvGj.mjs";
2
2
  //#region src/payments/index.d.ts
3
3
  /**
4
4
  * 스토어프론트 결제 — 브라우저 전용(`@sayren/storefront-sdk/payments`).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sayren/storefront-sdk",
3
- "version": "0.18.1",
3
+ "version": "0.18.3",
4
4
  "main": "./dist/index.mjs",
5
5
  "types": "./dist/index.d.mts",
6
6
  "exports": {
package/src/client.ts CHANGED
@@ -91,9 +91,14 @@ import {
91
91
  type CreateReviewRequest,
92
92
  createReviewRequestSchema,
93
93
  createReviewResultSchema,
94
+ myReviewSchema,
95
+ type ProductReviewParams,
96
+ type ReviewImageUploadRequest,
97
+ reviewImageUploadRequestSchema,
94
98
  reviewPageSchema,
95
99
  type UpdateReviewRequest,
96
100
  updateReviewRequestSchema,
101
+ uploadTicketSchema,
97
102
  writableReviewSchema,
98
103
  } from "./schemas/review";
99
104
  import { storefrontStoreSchema } from "./schemas/store";
@@ -243,14 +248,8 @@ export function createStorefrontClient(options: StorefrontClientOptions) {
243
248
  http.request("GET", "/products", productPageSchema, { query: params as Query }),
244
249
  getProduct: (productId: string) =>
245
250
  http.request("GET", path`/products/${productId}`, productDetailSchema),
246
- listProductReviews: (
247
- productId: string,
248
- params?: PageParams & {
249
- rating?: number;
250
- hasImage?: boolean;
251
- sort?: "latest" | "ratingDesc" | "ratingAsc" | "helpful";
252
- },
253
- ) =>
251
+ /** 상품 리뷰 목록 — `variantId`로 옵션(조합)별 리뷰만 받는다(상품 상세 `variants[].variantId`) */
252
+ listProductReviews: (productId: string, params?: ProductReviewParams) =>
254
253
  http.request("GET", path`/products/${productId}/reviews`, reviewPageSchema, {
255
254
  query: params as Query,
256
255
  }),
@@ -412,8 +411,21 @@ export function createStorefrontClient(options: StorefrontClientOptions) {
412
411
  },
413
412
 
414
413
  reviews: {
414
+ /** 내가 쓴 리뷰 — 최신순. 수정·삭제는 항목의 `reviewId`로 한다(이슈 #95) */
415
+ listMine: (params?: PageParams) =>
416
+ http.request("GET", "/me/reviews", pageSchema(myReviewSchema), {
417
+ query: params as Query,
418
+ }),
415
419
  listWritable: () =>
416
420
  http.request("GET", "/me/reviews/writable", z.array(writableReviewSchema)),
421
+ /**
422
+ * 리뷰 사진 업로드 자리(이슈 #96) — 응답 `uploadUrl`에 파일을 PUT한 뒤 `url`을 `create`·`update`의 `images`에 넣는다.
423
+ * 형식·크기가 맞지 않으면 400 `UNSUPPORTED_FILE_TYPE`·413 `FILE_TOO_LARGE`, 연타하면 429 `TOO_MANY_REQUESTS`다
424
+ */
425
+ createImageUpload: (body: ReviewImageUploadRequest) =>
426
+ http.request("POST", "/me/uploads", uploadTicketSchema, {
427
+ body: reviewImageUploadRequestSchema.parse(body),
428
+ }),
417
429
  create: (orderItemId: string, body: CreateReviewRequest) =>
418
430
  http.request(
419
431
  "POST",
@@ -23,13 +23,38 @@ export const productCardSchema = z.object({
23
23
  productId: z.string(),
24
24
  name: z.string(),
25
25
  thumbnailUrl: z.url().nullable().describe("대표 이미지 주소. 등록된 이미지가 없으면 null"),
26
- salePrice: z.number().int().describe("판매가. 원(KRW) 단위 정수"),
26
+ salePrice: z
27
+ .number()
28
+ .int()
29
+ .describe(
30
+ "판매가. 원(KRW) 단위 정수. 즉시할인이 없으면 구매자가 내는 한 개 가격(옵션 추가금 제외)이고, 즉시할인의 기준 가격이다",
31
+ ),
27
32
  discountedPrice: z
28
33
  .number()
29
34
  .int()
30
35
  .nullable()
31
- .describe("즉시 할인 적용가. 원 단위. 할인이 없으면 null"),
32
- discountRate: z.number().int().nullable().describe("할인율(%). 할인이 없으면 null"),
36
+ .describe(
37
+ "즉시할인 적용가. 원 단위. 판매가에 즉시할인을 적용한 값이고, 있으면 이 값이 구매자가 내는 한 개 가격이다. 할인이 없으면 null",
38
+ ),
39
+ discountRate: z
40
+ .number()
41
+ .int()
42
+ .nullable()
43
+ .describe(
44
+ "즉시할인율(%). 판매가 대비 `discountedPrice`의 할인율이다(정가 기준이 아니다). 할인이 없으면 null",
45
+ ),
46
+ originalPrice: z
47
+ .number()
48
+ .int()
49
+ .nullable()
50
+ .optional()
51
+ .default(null)
52
+ .describe(
53
+ "정가(할인 전 표시 가격, 이슈 #82). 원 단위. 셀러가 상품에 적은 비교용 가격이고 결제 금액 계산에 쓰지 않는다. " +
54
+ "구매자가 내는 가격은 `discountedPrice ?? salePrice`다. 정가가 그 가격보다 클 때 「정가 취소선 + 할인율 + 판매가」로 보이면 되고, " +
55
+ "이때 할인율은 `round((1 - (discountedPrice ?? salePrice) / originalPrice) × 100)`이다. 판매가와 크기를 검증하지 않으므로 " +
56
+ "작거나 같으면 표시하지 않는다. 정하지 않았으면 null. 서버는 항상 싣는다",
57
+ ),
33
58
  freeShipping: z
34
59
  .boolean()
35
60
  .describe("무료배송 배지. 배송 상품이고 배송비가 무료일 때만 true다(배송이 없는 상품은 false)"),
@@ -1,5 +1,19 @@
1
1
  import { z } from "zod";
2
2
 
3
+ /**
4
+ * 상품 문의 유형(이슈 #85) — 관리 API 상품 문의의 `category`와 같은 값이다.
5
+ * `PRODUCT` 상품(사이즈·소재 등), `DELIVERY` 배송, `RETURN` 반품, `EXCHANGE` 교환, `ETC` 기타
6
+ */
7
+ export const productInquiryCategorySchema = z.enum([
8
+ "PRODUCT",
9
+ "DELIVERY",
10
+ "RETURN",
11
+ "EXCHANGE",
12
+ "ETC",
13
+ ]);
14
+
15
+ export type ProductInquiryCategory = z.infer<typeof productInquiryCategorySchema>;
16
+
3
17
  export const publicInquirySchema = z.object({
4
18
  inquiryId: z.string(),
5
19
  content: z.string().nullable(),
@@ -13,6 +27,33 @@ export const publicInquirySchema = z.object({
13
27
  })
14
28
  .nullable(),
15
29
  createdAt: z.string(),
30
+ // ── 이슈 #85: 어느 상품의 문의인지(「내 상품 문의」에서 상품으로 돌아가기)와 문의 유형. 옛 서버 응답에 없으면 기본값으로 읽는다 ──
31
+ productId: z
32
+ .string()
33
+ .nullable()
34
+ .optional()
35
+ .default(null)
36
+ .describe("문의한 상품 id. 서버는 항상 싣는다(옛 서버 응답이면 null)"),
37
+ productName: z
38
+ .string()
39
+ .nullable()
40
+ .optional()
41
+ .default(null)
42
+ .describe("문의한 상품의 지금 이름. 상품이 지워졌으면 null. 서버는 항상 싣는다"),
43
+ thumbnailUrl: z
44
+ .url()
45
+ .nullable()
46
+ .optional()
47
+ .default(null)
48
+ .describe(
49
+ "문의한 상품의 대표 이미지 주소. 이미지가 없거나 상품이 지워졌으면 null. 서버는 항상 싣는다",
50
+ ),
51
+ category: productInquiryCategorySchema
52
+ .optional()
53
+ .default("PRODUCT")
54
+ .describe(
55
+ "문의 유형. `PRODUCT`(상품)·`DELIVERY`(배송)·`RETURN`(반품)·`EXCHANGE`(교환)·`ETC`(기타). 서버는 항상 싣는다",
56
+ ),
16
57
  });
17
58
 
18
59
  export type PublicInquiry = z.infer<typeof publicInquirySchema>;
@@ -20,6 +61,11 @@ export type PublicInquiry = z.infer<typeof publicInquirySchema>;
20
61
  export const createInquiryRequestSchema = z.object({
21
62
  content: z.string().min(1).max(1000),
22
63
  secret: z.boolean().default(false),
64
+ category: productInquiryCategorySchema
65
+ .optional()
66
+ .describe(
67
+ "문의 유형(이슈 #85). `PRODUCT`(상품)·`DELIVERY`(배송)·`RETURN`(반품)·`EXCHANGE`(교환)·`ETC`(기타). 생략하면 `PRODUCT`다",
68
+ ),
23
69
  });
24
70
 
25
71
  export type CreateInquiryRequest = z.infer<typeof createInquiryRequestSchema>;
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- import { pageSchema } from "./common";
2
+ import { type PageParams, pageSchema } from "./common";
3
3
 
4
4
  export const publicReviewSchema = z.object({
5
5
  reviewId: z.string(),
@@ -7,6 +7,14 @@ export const publicReviewSchema = z.object({
7
7
  content: z.string(),
8
8
  images: z.array(z.url()),
9
9
  optionName: z.string().nullable(),
10
+ variantId: z
11
+ .string()
12
+ .nullable()
13
+ .optional()
14
+ .describe(
15
+ "리뷰를 쓴 주문상품의 옵션(조합) id(이슈 #91). 상품 상세 `variants[].variantId`와 같은 값이고 리뷰 목록의 `variantId` 필터 키다. " +
16
+ "옵션 없는 상품도 기본 조합 id가 있다. 주문상품을 찾지 못한 리뷰는 null이다. 서버는 항상 싣는다",
17
+ ),
10
18
  writerMaskedName: z.string(),
11
19
  sellerReply: z
12
20
  .object({
@@ -27,6 +35,39 @@ export const reviewSummarySchema = z.object({
27
35
 
28
36
  export type ReviewSummary = z.infer<typeof reviewSummarySchema>;
29
37
 
38
+ /**
39
+ * 내가 쓴 리뷰 (이슈 #95) — `GET /me/reviews`. 수정·삭제(`PUT`·`DELETE /me/reviews/{reviewId}`)에 쓰는 `reviewId`와 상품 링크를 싣는다.
40
+ * 상품 정보는 주문 시점 값이고, 주문상품을 찾지 못하면 지금 상품의 값이다. 둘 다 없으면 null이다.
41
+ */
42
+ export const myReviewSchema = z.object({
43
+ reviewId: z.string(),
44
+ productId: z.string(),
45
+ productName: z.string().nullable().describe("주문 시점 상품명. 찾지 못하면 null"),
46
+ thumbnailUrl: z.url().nullable().describe("주문 시점 대표 이미지. 없으면 null"),
47
+ optionName: z.string().nullable(),
48
+ rating: z.number().int().min(1).max(5),
49
+ content: z.string(),
50
+ images: z.array(z.url()),
51
+ sellerReply: z
52
+ .object({
53
+ content: z.string(),
54
+ repliedAt: z.string(),
55
+ })
56
+ .nullable(),
57
+ blinded: z
58
+ .boolean()
59
+ .describe("판매자가 가린 리뷰. true면 상품 리뷰 목록에 보이지 않는다(작성자에게만 보인다)"),
60
+ editable: z
61
+ .boolean()
62
+ .describe(
63
+ "지금 수정할 수 있는가. 작성 후 30일까지다. 지나면 `PUT /me/reviews/{reviewId}`가 409 `PERIOD_EXPIRED`다",
64
+ ),
65
+ editableUntil: z.string().describe("수정 기한(ISO 8601)"),
66
+ createdAt: z.string(),
67
+ });
68
+
69
+ export type MyReview = z.infer<typeof myReviewSchema>;
70
+
30
71
  export const writableReviewSchema = z.object({
31
72
  orderItemId: z.string(),
32
73
  productId: z.string(),
@@ -65,6 +106,72 @@ export const updateReviewRequestSchema = z
65
106
 
66
107
  export type UpdateReviewRequest = z.infer<typeof updateReviewRequestSchema>;
67
108
 
109
+ /** 리뷰 정렬 — `helpful`은 도움 데이터가 없어 평점 높은 순과 같다 */
110
+ export const productReviewSortSchema = z.enum(["latest", "ratingDesc", "ratingAsc", "helpful"]);
111
+
112
+ export type ProductReviewSort = z.infer<typeof productReviewSortSchema>;
113
+
114
+ /** `GET /products/{productId}/reviews` 쿼리 — 문서용이다. 쿼리 문자열이라 값은 문자열로 받는다 */
115
+ export const productReviewQuerySchema = z.object({
116
+ rating: z.string().optional().describe("이 평점(1~5)의 리뷰만"),
117
+ hasImage: z.string().optional().describe("`true`면 사진이 있는 리뷰만"),
118
+ variantId: z
119
+ .string()
120
+ .optional()
121
+ .describe(
122
+ "이 옵션(조합)으로 산 리뷰만(이슈 #91). 상품 상세 `variants[].variantId`이고 리뷰 응답의 `variantId`와 같은 값이다. " +
123
+ "다른 필터와 함께 쓰면 모두 만족하는 리뷰만 온다",
124
+ ),
125
+ sort: z
126
+ .string()
127
+ .optional()
128
+ .describe("정렬. `latest`(기본)·`ratingDesc`·`ratingAsc`·`helpful`(평점 높은 순과 같다)"),
129
+ page: z.string().optional().describe("페이지 번호 (1부터)"),
130
+ size: z.string().optional().describe("페이지 크기"),
131
+ });
132
+
133
+ /** 리뷰 목록 조회 파라미터 — `catalog.listProductReviews` */
134
+ export interface ProductReviewParams extends PageParams {
135
+ rating?: number;
136
+ hasImage?: boolean;
137
+ /** 이 옵션(조합)으로 산 리뷰만 — 상품 상세 `variants[].variantId` */
138
+ variantId?: string;
139
+ sort?: ProductReviewSort;
140
+ }
141
+
142
+ /**
143
+ * 리뷰 사진 업로드 자리 발급 (이슈 #96) — `POST /me/uploads`(구매자 로그인). 파일 바이트는 api를 거치지 않는다.
144
+ * 응답 `uploadUrl`에 파일을 그대로 PUT하면 `url`이 공개 주소가 되고, 그 주소를 리뷰 작성·수정의 `images`에 넣는다.
145
+ * 형식·크기 제한은 관리 API 상품 이미지(`product-image`)와 같은 정지 이미지 규칙이다(값은 API 문서). 서버가 객체 키를 정하므로 파일명은 확장자만 쓰인다.
146
+ */
147
+ export const reviewImageUploadRequestSchema = z.object({
148
+ filename: z
149
+ .string()
150
+ .min(1)
151
+ .max(255)
152
+ .describe("파일명. 확장자로 형식을 판정하고 이름은 저장하지 않는다"),
153
+ purpose: z
154
+ .enum(["review-image"])
155
+ .default("review-image")
156
+ .describe("업로드 용도. 지금은 `review-image`(리뷰 사진)뿐이다"),
157
+ size: z
158
+ .number()
159
+ .int()
160
+ .positive()
161
+ .optional()
162
+ .describe("파일 바이트 크기. 주면 크기 상한을 발급 전에 검사한다"),
163
+ });
164
+
165
+ export type ReviewImageUploadRequest = z.input<typeof reviewImageUploadRequestSchema>;
166
+
167
+ /** 업로드 자리 — `uploadUrl`은 1시간 유효하다 */
168
+ export const uploadTicketSchema = z.object({
169
+ url: z.url().describe("업로드가 끝나면 공개될 주소. 리뷰의 `images`에 넣는다"),
170
+ uploadUrl: z.url().describe("파일 바이트를 그대로 PUT할 주소. 1시간 유효"),
171
+ });
172
+
173
+ export type UploadTicket = z.infer<typeof uploadTicketSchema>;
174
+
68
175
  /** `GET /products/{productId}/reviews` 응답 — 리뷰 페이지와 평점 분포 */
69
176
  export const reviewPageSchema = pageSchema(publicReviewSchema).extend({
70
177
  summary: reviewSummarySchema.optional(),
@@ -1,5 +1,17 @@
1
1
  import { z } from "zod";
2
2
 
3
+ /**
4
+ * 사업자 정보 필드(이슈 #81) — 전자상거래법 표기(푸터)용이다. 셀러가 정하지 않았으면 null이고, 그 항목은 표시하지 않으면 된다.
5
+ * 옛 서버 응답에 없으면 null로 읽는다.
6
+ */
7
+ const businessText = (description: string) =>
8
+ z
9
+ .string()
10
+ .nullable()
11
+ .optional()
12
+ .default(null)
13
+ .describe(`${description}. 정하지 않았으면 null. 서버는 항상 싣는다`);
14
+
3
15
  /**
4
16
  * 상점 공개 설정 — `GET /store`. 스토어프론트가 화면을 그릴 때 읽는 값만 담는다.
5
17
  */
@@ -9,6 +21,16 @@ export const storefrontStoreSchema = z.object({
9
21
  logoUrl: z.string().nullable(),
10
22
  customerCenterPhone: z.string().nullable(),
11
23
  businessHours: z.string().nullable(),
24
+ businessName: businessText("상호(사업자등록증의 상호). 상점명(`name`)과 다를 수 있다"),
25
+ representativeName: businessText("대표자명"),
26
+ businessNumber: businessText(
27
+ "사업자등록번호. 관리 API로 저장한 값은 숫자 10자리(하이픈 없음)이고 표시할 때 `123-45-67890`으로 끊으면 된다",
28
+ ),
29
+ mailOrderSalesNumber: businessText("통신판매업 신고번호. 셀러가 적은 그대로다"),
30
+ businessAddress: businessText("사업장 주소"),
31
+ customerCenterEmail: businessText("고객센터 이메일"),
32
+ privacyOfficerName: businessText("개인정보 보호책임자 성명"),
33
+ privacyOfficerEmail: businessText("개인정보 보호책임자 이메일"),
12
34
  /**
13
35
  * 비회원 주문 허용. false면 로그인하지 않은 구매자의 주문서 생성·결제 요청이 403 `GUEST_CHECKOUT_DISABLED`다.
14
36
  * 장바구니 담기는 된다 — 주문 버튼을 로그인 안내로 바꾸면 된다