@sayren/store-sdk 0.60.2 → 0.62.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1550,9 +1550,8 @@ const sellerAddressRequestSchema = strictRequest(z$1.object({
1550
1550
  * - 409 `SOURCE_CHANGED` — 작업 트리가 내려받은 뒤(`expectedBaseRef`) 바뀌었고 같은 파일을 서로 다르게 고쳤다(상점 플랫폼·AI 편집). 겹치지 않으면 서버가
1551
1551
  * 3-way 병합한다(응답 `merged`). `error.details.currentRef`·`conflicts`(충돌 파일)
1552
1552
  * - 409 `EDIT_SESSION_OPEN` — 편집 환경이 열려 있다. `endEditSession: true`로 끄고 진행할 수 있다
1553
- * - 409 `SOURCE_BLOBS_MISSING` — 올리지 않은 파일 내용이 있다(`error.details.hashes`). `POST source/blobs`로 올리고 다시 한다
1553
+ * - 409 `SOURCE_BLOBS_MISSING` — 올리지 않은 파일 내용이 있다(`error.details.hashes`). 묶음으로 올리고(`POST source/uploads`·`source/pack`) `pack`을 실어 다시 한다
1554
1554
  * - 409 `DEPENDENCY_REJECTED` — 쓸 수 없는 npm 의존성이다(`error.details.rejected: [{ name, version, reason, detail }]`)
1555
- * - 413 `SOURCE_TOO_MANY_NEW_FILES` — 묶음 없이(`pack` 생략) 새 내용이 800개를 넘는다(`error.details.max`). 묶음으로 올린다
1556
1555
  * - 400 `DEPENDENCY_FILES_MISMATCH` — `packageJson`·`lockfile` 내용이 목록의 해시와 다르거나 빠졌다
1557
1556
  * - 400 `INVALID_SOURCE_REF` · `BLOB_HASH_MISMATCH` · `INVALID_FILE_PATH`(`.env*`·작업 트리 밖 경로)
1558
1557
  * - 404 `STOREFRONT_SOURCE_NOT_FOUND` — 그 스냅샷이 없다
@@ -1693,6 +1692,7 @@ const storefrontSiteSnapshotSchema = z$1.object({
1693
1692
  });
1694
1693
  const storefrontSiteSchema = z$1.object({
1695
1694
  siteId: z$1.string(),
1695
+ autoPublish: z$1.boolean().nullable().optional().describe("배포 뒤 바로 게시 — CLI `sayren deploy`·Git 운영 브랜치 push가 만든 버전을 곧바로 게시한다. null이면 소스의 `sayren.json` `deploy.production`, 그것도 없으면 저장만. 상점 플랫폼에서 OWNER·ADMIN만 바꾼다"),
1696
1696
  deployWithoutApproval: z$1.boolean().optional().describe("승인 없이 배포 — 켜져 있으면 AI 에이전트의 발행·되돌리기가 승인 없이 실행된다. 상점 플랫폼에서 OWNER·ADMIN만 바꾼다"),
1697
1697
  slug: z$1.string().describe("주소 슬러그"),
1698
1698
  hostname: z$1.string().describe("대표 호스트 이름"),
@@ -2422,8 +2422,6 @@ const storefrontVersionCreatedSchema = z$1.object({
2422
2422
  const createStorefrontEditPreviewLinkRequestSchema = strictRequest(z$1.object({ path: z$1.string().max(512).optional().describe("열 경로 (`/`로 시작). 생략하면 `/`") }));
2423
2423
  /** 압축 파일 조각 하나의 최대 크기(바이트) */
2424
2424
  const STOREFRONT_SOURCE_PART_BYTES = 4194304;
2425
- /** 내용 올리기 한 번의 최대 파일 수 */
2426
- const STOREFRONT_SOURCE_BLOB_BATCH_MAX = 200;
2427
2425
  /** 작업 트리 파일 수 상한 */
2428
2426
  const STOREFRONT_WORKSPACE_MAX_FILES = 2e3;
2429
2427
  /** 작업 트리 스냅샷 키 — `sources/{siteId}/{sha256}.tgz` */
@@ -2460,29 +2458,26 @@ const storefrontSourceArchivePartSchema = z$1.object({
2460
2458
  totalBytes: z$1.number().int().min(0),
2461
2459
  content: z$1.string().describe("조각 내용 (base64)")
2462
2460
  });
2463
- /** `POST /v1/storefront/site/source/blobs` — 파일 내용 올리기(해시 키, 다시 올려도 안전하다). 작업 트리는 바뀌지 않는다 */
2464
- const uploadStorefrontSourceBlobsRequestSchema = strictRequest(z$1.object({ blobs: z$1.array(z$1.object({
2461
+ /**
2462
+ * `POST /v1/storefront/site/source/pack` — 묶음(tar.gz, 항목 이름 = 내용 sha256)을 api를 거쳐 올린다. 저장소 직접 올리기(`POST source/uploads`)를
2463
+ * 쓸 수 없는 환경(503 `SOURCE_UPLOAD_UNAVAILABLE`)에서만 쓴다. 다시 올려도 안전하다. 작업 트리는 바뀌지 않는다
2464
+ */
2465
+ const uploadStorefrontSourcePackRequestSchema = strictRequest(z$1.object({
2466
+ hash: storefrontFileHashSchema.describe("묶음(tar.gz) 바이트의 sha256"),
2467
+ content: z$1.string().describe("묶음 바이트 (base64)")
2468
+ }));
2469
+ const storefrontSourcePackSchema = z$1.object({
2465
2470
  hash: storefrontFileHashSchema,
2466
- content: z$1.string().describe("파일 내용 (base64, 1MiB까지)")
2467
- })).min(1).max(200) }));
2468
- const storefrontSourceBlobsResultSchema = z$1.object({
2469
- stored: z$1.number().int().min(0).describe("새로 올린 수"),
2470
- existing: z$1.number().int().min(0).describe("이미 있던 수")
2471
+ size: z$1.number().int().min(1).describe("묶음 바이트 수 (`PUT source`의 `pack.size`)")
2471
2472
  });
2472
2473
  /**
2473
- * `POST /v1/storefront/site/source/uploads` — 파일 내용을 저장소에 직접 올릴 서명 주소(#181). 내용은 api를 거치지 않는다.
2474
- * 주소마다 `PUT`으로 그 해시의 바이트를 보내고 응답의 `headers`를 그대로 싣는다(저장소가 크기·해시를 검증한다).
2474
+ * `POST /v1/storefront/site/source/uploads` — 묶음을 저장소에 직접 올릴 서명 주소(#181·#351). 내용은 api를 거치지 않는다.
2475
+ * 주소로 `PUT`해 묶음 바이트를 보내고 응답의 `headers`를 그대로 싣는다(저장소가 크기·해시를 검증한다).
2475
2476
  */
2476
- const createStorefrontSourceUploadsRequestSchema = strictRequest(z$1.object({
2477
- blobs: z$1.array(z$1.object({
2478
- hash: storefrontFileHashSchema,
2479
- size: z$1.number().int().min(0).max(STOREFRONT_FILE_MAX_BYTES).describe("내용 바이트 수")
2480
- })).min(1).max(STOREFRONT_WORKSPACE_MAX_FILES).optional().describe("파일 내용 하나씩 올릴 주소"),
2481
- pack: z$1.object({
2482
- hash: storefrontFileHashSchema.describe("묶음(tar.gz) 바이트의 sha256"),
2483
- size: z$1.number().int().min(1).max(STOREFRONT_SOURCE_PACK_MAX_BYTES)
2484
- }).optional().describe("빠진 파일 내용을 묶은 tar.gz 하나를 올릴 주소. 항목 이름은 내용의 sha256이다. 응답 `uploads`는 하나이고 `hash`가 묶음 해시다")
2485
- }).refine((body) => body.blobs === void 0 !== (body.pack === void 0), { message: "blobs와 pack 중 하나만 싣습니다" }));
2477
+ const createStorefrontSourceUploadsRequestSchema = strictRequest(z$1.object({ pack: z$1.object({
2478
+ hash: storefrontFileHashSchema.describe("묶음(tar.gz) 바이트의 sha256"),
2479
+ size: z$1.number().int().min(1).max(STOREFRONT_SOURCE_PACK_MAX_BYTES)
2480
+ }).describe("빠진 파일 내용을 묶은 tar.gz 하나. 항목 이름은 내용의 sha256이다. 응답 `uploads`는 하나이고 `hash`가 묶음 해시다") }));
2486
2481
  const storefrontSourceUploadsSchema = z$1.object({
2487
2482
  uploads: z$1.array(z$1.object({
2488
2483
  hash: storefrontFileHashSchema,
@@ -2508,7 +2503,7 @@ const replaceStorefrontSourceRequestSchema = strictRequest(z$1.object({
2508
2503
  pack: z$1.object({
2509
2504
  hash: storefrontFileHashSchema,
2510
2505
  size: z$1.number().int().min(1).max(STOREFRONT_SOURCE_PACK_MAX_BYTES)
2511
- }).nullable().optional().describe("새 내용을 올린 묶음(`POST source/uploads`의 `pack`). null이면 묶음으로 올릴 것이라 하나씩 올린 내용을 찾지 않고 빠진 내용만 409 `SOURCE_BLOBS_MISSING`으로 알린다. 생략하면 하나씩 올린 내용을 읽는다(새 내용 800개까지)")
2506
+ }).nullable().optional().describe("새 내용을 올린 묶음(`POST source/uploads`·`source/pack`). 생략·null이면 지금 작업 트리에 없는 내용을 409 `SOURCE_BLOBS_MISSING`으로 알린다")
2512
2507
  }));
2513
2508
  const storefrontSourceReplacedSchema = z$1.object({
2514
2509
  sourceRef: storefrontSourceRefSchema.describe("새 작업 트리(버전 만들기의 `expectedSourceRef`). 다음 올리기의 기준은 `uploadedRef`다"),
@@ -2567,6 +2562,15 @@ const connectStorefrontGitRequestSchema = strictRequest(z$1.object({
2567
2562
  productionBranch: z$1.string().min(1).max(200).regex(/^[A-Za-z0-9._-]+(\/[A-Za-z0-9._-]+)*$/).optional().describe("운영 배포 브랜치(생략하면 저장소 기본 브랜치)"),
2568
2563
  rootDirectory: z$1.string().max(200).regex(/^$|^[A-Za-z0-9._-]+(\/[A-Za-z0-9._-]+)*$/).refine((v) => !v.split("/").some((seg) => seg === "." || seg === ".."), "상대 경로만").optional().describe("저장소 안 사이트 루트(생략하면 저장소 루트)")
2569
2564
  }));
2565
+ /** `PUT /v1/storefront/site/auto-publish` — 배포 뒤 바로 게시(#356). null이면 `sayren.json` `deploy.production`을 따른다 */
2566
+ const setStorefrontAutoPublishRequestSchema = strictRequest(z$1.object({ autoPublish: z$1.boolean().nullable() }));
2567
+ /**
2568
+ * 배포(CLI `sayren deploy`·Git 운영 브랜치 push)가 만든 버전을 바로 게시하는가(#356) — 사이트 설정(`autoPublish`)이 있으면 그것,
2569
+ * 없으면 소스의 `sayren.json` `deploy.production`, 그것도 없으면 저장만. CLI `--production`은 이 판정과 무관하게 게시한다
2570
+ */
2571
+ function resolveStorefrontDeployProduction(siteSetting, projectSetting) {
2572
+ return siteSetting ?? projectSetting ?? false;
2573
+ }
2570
2574
  /** `PUT /v1/storefront/site/deploy-approval` — 승인 없이 배포(#138) */
2571
2575
  const setStorefrontDeployApprovalRequestSchema = strictRequest(z$1.object({ deployWithoutApproval: z$1.boolean() }));
2572
2576
  //#endregion
@@ -12935,11 +12939,14 @@ list: (params) => storeHttp.request("GET", "/audit-logs", auditLogPageSchema, {
12935
12939
  getSource: () => storeHttp.request("GET", "/storefront/site/source", storefrontSourceSchema),
12936
12940
  /** `GET /v1/storefront/site/source/archive?sourceRef=&part=` — 압축 파일 조각(base64, 4MiB까지) */
12937
12941
  getSourceArchive: (params) => storeHttp.request("GET", "/storefront/site/source/archive", storefrontSourceArchivePartSchema, { query: storefrontSourceArchiveQuerySchema.parse(params) }),
12938
- /** `POST /v1/storefront/site/source/blobs` — 파일 내용 올리기(해시 키). 작업 트리는 바뀌지 않는다 */
12939
- uploadSourceBlobs: (body) => storeHttp.request("POST", "/storefront/site/source/blobs", storefrontSourceBlobsResultSchema, { body: uploadStorefrontSourceBlobsRequestSchema.parse(body) }),
12940
12942
  /**
12941
- * `POST /v1/storefront/site/source/uploads` — 파일 내용을 저장소에 직접 올릴 서명 PUT 주소(#181). 503 `SOURCE_UPLOAD_UNAVAILABLE`이면
12942
- * `uploadSourceBlobs`로 올린다
12943
+ * `POST /v1/storefront/site/source/pack` — 묶음을 api를 거쳐 올린다. `createSourceUploads`가 503 `SOURCE_UPLOAD_UNAVAILABLE`일 때만 쓴다.
12944
+ * 작업 트리는 바뀌지 않는다
12945
+ */
12946
+ uploadSourcePack: (body) => storeHttp.request("POST", "/storefront/site/source/pack", storefrontSourcePackSchema, { body: uploadStorefrontSourcePackRequestSchema.parse(body) }),
12947
+ /**
12948
+ * `POST /v1/storefront/site/source/uploads` — 묶음을 저장소에 직접 올릴 서명 PUT 주소(#181·#351). 503 `SOURCE_UPLOAD_UNAVAILABLE`이면
12949
+ * `uploadSourcePack`으로 올린다
12943
12950
  */
12944
12951
  createSourceUploads: (body) => storeHttp.request("POST", "/storefront/site/source/uploads", storefrontSourceUploadsSchema, { body: createStorefrontSourceUploadsRequestSchema.parse(body) }),
12945
12952
  /**
@@ -12947,6 +12954,8 @@ list: (params) => storeHttp.request("GET", "/audit-logs", auditLogPageSchema, {
12947
12954
  * `SOURCE_BLOBS_MISSING`(`details.hashes`를 올리고 다시)
12948
12955
  */
12949
12956
  replaceSource: (body) => storeHttp.request("PUT", "/storefront/site/source", storefrontSourceReplacedSchema, { body: replaceStorefrontSourceRequestSchema.parse(body) }),
12957
+ /** `PUT /v1/storefront/site/auto-publish` — 배포 뒤 바로 게시(상점 플랫폼 OWNER·ADMIN 전용, #356) */
12958
+ setAutoPublish: (body) => storeHttp.request("PUT", "/storefront/site/auto-publish", storefrontSiteSchema, { body: setStorefrontAutoPublishRequestSchema.parse(body) }),
12950
12959
  /** `PUT /v1/storefront/site/deploy-approval` — 승인 없이 배포(상점 플랫폼 OWNER·ADMIN 전용) */
12951
12960
  setDeployApproval: (body) => storeHttp.request("PUT", "/storefront/site/deploy-approval", storefrontSiteSchema, { body: setStorefrontDeployApprovalRequestSchema.parse(body) }),
12952
12961
  /** `GET /v1/storefront/site/git` — Git 원천(발행 소스를 둔 저장소)과 상태(#138) */
@@ -13534,4 +13543,4 @@ function createStoreSession(options) {
13534
13543
  };
13535
13544
  }
13536
13545
  //#endregion
13537
- export { AI_AGENTS, AI_AGENT_NOTES_DIR, AI_AGENT_PHASES, AI_DESIGN_BOARDS_MAX, AI_DESIGN_BOARD_FILE_PATTERN, AI_DESIGN_BOARD_KINDS, AI_DESIGN_CANVAS_PATH, AI_DESIGN_CONFIRM_APPROVE, AI_DESIGN_DIR, AI_DESIGN_GUIDE_PATH, AI_DESIGN_VIEWPORTS, AI_MESSAGE_MAX_ATTACHMENTS, AI_MESSAGE_MAX_CHARS, AI_RUN_ACTIVE_STATUSES, AI_RUN_FILE_CHANGES_RETENTION_DAYS, AI_RUN_RESUME_CHOICE, AI_SETUP_CONFIRM_APPROVE, AI_SITEMAP_PATH, AI_TODOS_MAX, AI_TODO_STATUSES, AI_TOOL_CHANGE_LINE_MAX, AI_TOOL_CHANGE_RANGES_MAX, APPROVAL_ALREADY_DECIDED_CODE, APPROVAL_REQUIRED_CODE, APP_CAPABILITIES, APP_DEPLOY_KEY_PATTERN, APP_DEPLOY_KEY_PREFIX, APP_EVENTS_MAX, APP_EVENT_SCOPES, APP_EVENT_TYPES, APP_FLOW_EVENT_PATTERN, APP_FLOW_ITEMS_MAX, APP_FLOW_NOTIFICATION_PATTERN, APP_HANDLE_PATTERN, APP_HTTP_KEY_PATTERN, APP_ICON_CONTENT_TYPES, APP_ICON_MAX_BYTES, APP_ICON_MIN_PX, APP_LIFECYCLE_EVENT_TYPES, APP_NETWORK_DENIED_SUFFIXES, APP_NETWORK_HOSTS_MAX, APP_PUBLIC_HTTP_MAX, APP_README_MAX_BYTES, APP_RESERVED_HANDLES, APP_SCHEDULES_MAX, APP_SCHEDULE_INTERVALS, APP_SCHEDULE_NAME_PATTERN, APP_SECRETS_MAX, APP_SECRET_NAME_PATTERN, APP_SECRET_PATTERNS, APP_SERVER_BUNDLE_MAX_GZIP_BYTES, APP_SETTINGS_MAX_FIELDS, APP_SETTING_FIELD_TYPES, APP_SETTING_KEY_PATTERN, APP_STORAGE_KEY_PATTERN, APP_STORAGE_MAX_BYTES, APP_STORAGE_MAX_KEYS, APP_TOOL_NAME_PATTERN, APP_UI_MAX_BYTES, APP_UI_MAX_FILES, ApiError, ApprovalPendingError, BASE_CURRENCY, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, CERTIFICATION_STATUSES, COLLECTION_BEST_SELLING_DAYS, COLLECTION_PREVIEW_SIZE, COLLECTION_PRODUCT_SORTS, COLLECTION_SALES_SORT_DEFAULT_DAYS, COLLECTION_SLUG_PATTERN, COLLECTION_TYPES, CONDITION_OPERATORS_BY_TYPE, COUPON_CODE_PATTERN, COUPON_CONDITIONS_DEFAULTS, COUPON_CONDITION_FIELDS, COUPON_LINE_CONDITIONS, COUPON_ORDER_CONDITIONS, COUPON_REWARD_KINDS, COUPON_REWARD_TIER_MAX, COUPON_STACKING_DEFAULTS, COUPON_TARGET_ALL, COUPON_TARGET_LIST_MAX, COUPON_TARGET_RULES_ALL, COUPON_TIME_ZONE, COUPON_WEEKDAYS, CURRENCIES, CURRENCY_CODES, CUSTOMER_BIRTHDATE_PATTERN, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, DEDICATED_EASY_PAY_PROVIDER, DEFAULT_CONDITION_LIMITS, DEFAULT_STORE_LOCALE, EMPTY_CONDITION_GROUP, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, InvalidPriceUnitError, KAKAOPAY_TEST_CID, KNOWN_WEBHOOK_EVENT_TYPES, KRW_MONEY_RULES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, MAX_CERTIFICATION_ITEMS, MAX_COLLECTIONS, MAX_COLLECTION_BEST_SELLING_TOP, MAX_COLLECTION_CREATED_WITHIN_DAYS, MAX_COLLECTION_DESCRIPTION, MAX_COLLECTION_PRODUCTS, MAX_COLLECTION_PRODUCTS_PER_ADD, MAX_COLLECTION_RULES, MAX_COLLECTION_RULE_CATEGORIES, MAX_COLLECTION_TITLE, MAX_CUSTOM_INPUTS, MAX_CUSTOM_INPUT_LENGTH, MAX_INFO_SECTION_TITLE, MAX_INVENTORY_OPERATION_LINES, MAX_NOTICE_TEMPLATE_NAME, MAX_NOTICE_VALUE_LENGTH, MAX_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, MAX_PRODUCT_IMPORT_ITEMS, MAX_PRODUCT_IMPORT_ITEMS_PER_REQUEST, MAX_PRODUCT_INFO_SECTIONS, MAX_PRODUCT_LOOKUP, MAX_SAVED_OPTION_SETS, MAX_SAVED_OPTION_SET_NAME, MAX_STAY_NIGHTS, MAX_VALUES_PER_GROUP, MAX_VARIANTS, MCP_TELEMETRY_MAX_RESULTS, MIN_PAYMENT_AMOUNT, NON_INSTALLABLE_SCOPES, NO_COUPON_SETTLEMENT, NO_SHIPPING_BUNDLE_KEY, PAYMENT_ROUTING_EXCLUSION_CODES, PAYPAL_CURRENCIES, PLATFORM_CODE_SETS, POINT_ADJUSTMENT_MAX, POINT_EARN_RATE_BP_MAX, POINT_ENTRY_TYPES, POINT_EXPIRY_DAYS_MAX, POINT_EXPIRY_DAYS_MIN, POINT_LOT_SOURCES, POINT_POLICY_DEFAULTS, POINT_REVIEW_REWARD_MAX, POINT_USE_UNITS, PORTONE_CHANNEL_NAME_MAX_LENGTH, PORTONE_MAX_CHANNELS, PORTONE_MIN_CHANNELS, REFUND_POLICY_DEFAULTS, REFUND_POLICY_DELIVERY_FEE_KEYS, REMOTE_AREA_ZIP_RANGES, RESERVED_STOREFRONT_SLUGS, RESERVED_STORE_CODES, SAYREN_API_BASE_URL, SAYREN_API_ORIGIN, SCOPE_DESCRIPTIONS, SHIPPING_POLICY_DEFAULTS, STARTER_SELLER_TASKS, STARTER_STAGES, STOREFRONT_BLOCKED_PATH_SEGMENTS, STOREFRONT_BUILD_STAGES, STOREFRONT_BUILD_TERMINAL_STATUSES, STOREFRONT_CHECK_TERMINAL_STATUSES, STOREFRONT_CLOSED_SITE_HOLD_DAYS, STOREFRONT_CUSTOM_DOMAIN_LIMIT_DEFAULT, STOREFRONT_DOMAIN_DNS_GRACE_DAYS, STOREFRONT_DOMAIN_DNS_WAIT_DAYS, STOREFRONT_DOMAIN_TXT_LABEL, STOREFRONT_EDIT_ACTIVITY_TIMEOUT_MINUTES, STOREFRONT_EDIT_CAPACITY, STOREFRONT_EDIT_IDLE_MINUTES, STOREFRONT_EDIT_PREVIEW_SUFFIX, STOREFRONT_EDIT_START_STAGES, STOREFRONT_FILE_BATCH_MAX, STOREFRONT_FILE_MAX_BYTES, STOREFRONT_PATH_SEGMENT_PATTERN, STOREFRONT_PLATFORM_DOMAINS, STOREFRONT_PUBLIC_SUFFIXES, STOREFRONT_SEARCH_REGEX_MAX_LENGTH, STOREFRONT_SITE_CREATE_LIMIT, STOREFRONT_SITE_VAR_KEY_PATTERN, STOREFRONT_SITE_VAR_LIMIT, STOREFRONT_SITE_VAR_MAX_BYTES, STOREFRONT_SITE_VAR_RESERVED_NAMES, STOREFRONT_SITE_VAR_RESERVED_PREFIX, STOREFRONT_SLUG_CHANGE_LIMIT, STOREFRONT_SLUG_CHANGE_WINDOW_DAYS, STOREFRONT_SLUG_HOLD_DAYS, STOREFRONT_SLUG_PATTERN, STOREFRONT_SOURCE_BLOB_BATCH_MAX, STOREFRONT_SOURCE_PACK_MAX_BYTES, STOREFRONT_SOURCE_PART_BYTES, STOREFRONT_WORKSPACE_MAX_BYTES, STOREFRONT_WORKSPACE_MAX_FILES, STORE_CODE_PATTERN, STORE_DRAFT_ATTACHMENT_MAX_BYTES, STORE_DRAFT_MAX_ATTACHMENTS, STORE_DRAFT_RETENTION_DAYS, STORE_ROLE_SCOPES, STORE_SCOPE_RESOURCES, STORE_SESSION_KEYS, STORE_SHOP_TYPES, TOSS_WIDGET_CLIENT_KEY_PATTERN, TOSS_WIDGET_KEY_MESSAGE, TOSS_WIDGET_SECRET_KEY_PATTERN, UPLOAD_PURPOSE_LIMITS, VARIANT_COUNT_WARNING, VARIANT_STOCK_EXCLUSIVE_MESSAGE, VOUCHER_COUNT_MAX, VOUCHER_PREFIX_PATTERN, WEBHOOK_DEFAULT_TOLERANCE_SEC, WEBHOOK_DELIVERY_ID_HEADER, WEBHOOK_EVENT_ID_HEADER, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_FAILURE_REASONS, WEBHOOK_HEADERS, WEBHOOK_PAYLOAD_EXCERPT_MAX_BYTES, WEBHOOK_RESOURCE_TYPES, WEBHOOK_SIGNATURE_HEADER, WEBHOOK_USER_AGENT, addStorefrontDomainRequestSchema, additionalCurrencyPriceSchema, additionalCurrencyPricesSchema, addonGroupRequestSchema, addonGroupSchema, addonValueRequestSchema, addonValueSchema, addressChangeRequestListSchema, addressTypeSchema, agentPolicyDecisionSchema, aiActivitySchema, aiAgentPhaseSchema, aiAgentSchema, aiAttachmentSchema, aiChoiceOptionSchema, aiConversationFileChangesSchema, aiConversationSchema, aiConversationSummarySchema, aiDesignBoardSchema, aiDesignCanvasSchema, aiDesignConfirmBoardSchema, aiDesignSelectionSchema, aiFileChangeKindSchema, aiFocusAreaSchema, aiFocusSchema, aiMessagePartSchema, aiMessageSchema, aiPreviewSelectionSchema, aiRunChangesSchema, aiRunChangesStatusSchema, aiRunFileDiffSchema, aiRunRevertConflictDetailsSchema, aiRunRevertResultSchema, aiRunSchema, aiRunStatusSchema, aiSetupConfirmItemSchema, aiStreamAccessSchema, aiStreamEventSchema, aiStreamRecordSchema, aiTodoSchema, aiToolChangeSchema, allocateByWeight, analyticsChannelSchema, analyticsCheckoutOutcomeSchema, analyticsCheckoutSchema, analyticsDeviceRowSchema, analyticsDevicesSchema, analyticsFunnelStepSchema, analyticsOriginSchema, analyticsOverviewSchema, analyticsPagesQuerySchema, analyticsPagesSchema, analyticsProductRowSchema, analyticsProductSortSchema, analyticsProductsQuerySchema, analyticsProductsSchema, analyticsRangeQuerySchema, analyticsRealtimeSchema, analyticsSearchQuerySchema, analyticsSearchSchema, analyticsSourceGroupBySchema, analyticsSourceRowSchema, analyticsSourcesQuerySchema, analyticsSourcesSchema, analyticsTotalsSchema, anyConditionHolds, apiLogErrorSchema, apiLogListQuerySchema, apiLogPageSchema, apiLogPrincipalSchema, apiLogPrincipalTypeSchema, apiLogSchema, apiLogStatusFilterSchema, apiLogSummarySchema, appArtifactUploadSchema, appBuildSchema, appBuildStageSchema, appCapabilitiesOf, appDeployKeyCreateSchema, appDeployKeyCreatedSchema, appDeployKeySchema, appDevTokenSchema, appDistributionSchema, appEventTypeSchema, appFlowEventSchema, appFlowEventSummarySchema, appFlowNotificationSchema, appFlowNotificationSummarySchema, appFlowParamSchema, appFlowSummaryOf, appHandleSchema, appHttpKeyMatches, appIconProblem, appInstallRequestSchema, appInstallationActivitySchema, appInstallationAppSchema, appInstallationRunSchema, appInstallationSchema, appInstallationSelfSchema, appInstallationSettingsSchema, appInstallationSettingsUpdateSchema, appInstallationStatusSchema, appInvocationSchema, appListingReviewSchema, appListingReviewStatusSchema, appListingSchema, appManifestProblems, appManifestSchema, appManifestWidens, appNetworkHostProblem, appNetworkHostSchema, appReleaseResultSchema, appRuntimeSchema, appScheduleIntervalLabel, appScheduleListOf, appScheduleSummarySchema, appScopeSchema, appSecretSummarySchema, appSessionSchema, appSettingFieldSchema, appStatusSchema, appStorageEntrySchema, appStorageKeysSchema, appStorageListQuerySchema, appStoragePutSchema, appToolCallSchema, appToolInputSchema, appToolListOf, appToolResultSchema, appToolSchema, appToolSummarySchema, appVersionSchema, appVersionStatusSchema, appVisibilitySchema, applyFlowOperationsRequestSchema, approvalDecisionRequestSchema, approvalListQuerySchema, approvalPageSchema, approvalRequestSchema, approvalStatusSchema, approveClaimResultSchema, assertSaleUnit, assumeCouponFactRules, auditActorSchema, auditActorTypeSchema, auditLogListQuerySchema, auditLogOutcomeSchema, auditLogPageSchema, auditLogSchema, auditLogSourceSchema, bestCouponSelection, bestSellingRuleOf, birthdateFactOf, brandBriefProductSourceSchema, brandBriefReferenceSchema, brandBriefSchema, brandBriefViewSchema, buildAuthorizeUrl, buildQuery, bulkResultSchema, businessInfoPatchShape, businessInfoResponseShape, businessNumberSchema, calendarDateSchema, calendarDaySchema, calendarQuerySchema, cancelBySellerRequestSchema, cancelBySellerResultSchema, canonicalLocale, canonicalizeConditionGroup, canonicalizeConditionRule, canonicalizeCouponStacking, canonicalizeCouponTargetRules, canonicalizeCouponTargetTree, canonicalizeCouponTrees, carrierSchema, cashReceiptSchema, categoryAttributeSchema, categoryCreateRequestSchema, categoryDeleteQuerySchema, categoryDeleteStrategySchema, categoryListQuerySchema, categoryLocalizationRequestSchema, categoryLocalizationSchema, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeTypeSchema, claimCollectCompleteRequestSchema, claimDetailSchema, claimFlowEditSessionRequestSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, claimRedeliveryRequestSchema, claimReturnAddressSchema, claimSchema, claimStatusSchema, claimTypeSchema, claimWebhookEventDataSchema, claimWebhookEventSchema, collectionCreateRequestSchema, collectionListQuerySchema, collectionLocalizationRequestSchema, collectionLocalizationSchema, collectionPageSchema, collectionPatchRequestSchema, collectionPreviewRequestSchema, collectionPreviewSchema, collectionProductListQuerySchema, collectionProductSchema, collectionProductSortRequestSchema, collectionProductsAddRequestSchema, collectionProductsReplaceRequestSchema, collectionRuleCategoryIds, collectionRuleSchema, collectionRuleViewSchema, collectionRulesPredicate, collectionRulesSchema, collectionSchema, collectionStateCountsSchema, collectionStateOf, collectionStateSchema, commerceFlowCheckSchema, commerceFlowSchema, commerceFlowSummarySchema, commerceFlowVersionViewSchema, commerceNumberField, compareBySales, conditionCatalog, conditionFields, conditionGroupSchema, conditionIssues, conditionRuleSchema, conditionValueSchema, connectStorefrontGitRequestSchema, consentActionSchema, consentKindSchema, consentSourceSchema, couponAudienceMatches, couponBenefitOfReward, couponBenefitSchema, couponClaimFactsOf, couponConditionTreeSchema, couponConditionsInputSchema, couponConditionsSchema, couponCustomerFactNames, couponDiscountOf, couponDistributionSchema, couponFactsSchema, couponIssueListQuerySchema, couponIssueMethodSchema, couponIssueSchema, couponIssueStatusSchema, couponKindSchema, couponLineContextOf, couponLineMatches, couponListQuerySchema, couponPointRewardOf, couponRedemptionListQuerySchema, couponRedemptionSchema, couponRejectReasonSchema, couponRequestRuleIssues, couponRequirementsOf, couponRewardSchema, couponRuleDiscountOf, couponRuleIssues, couponRuleSchema, couponRulesFromLegacy, couponSchema, couponStackingOf, couponStackingSchema, couponStatsSchema, couponStatusSchema, couponTargetInputSchema, couponTargetRulesFromTree, couponTargetRulesSchema, couponTargetSchema, couponTargetTreeFromRules, couponTargetTreeMatches, couponTargetTreeOf, couponTargetTreeSchema, couponTierOf, couponTimeFactsAt, couponTodayAt, couponTreesOf, couponVoucherCodesSchema, couponVoucherInputSchema, couponsCombinable, createAiConversationRequestSchema, createAiConversationResponseSchema, createCommerceFlowRequestSchema, createCouponRequestSchema, createMarketRequestSchema, createOrderRequestSchema, createPkcePair, createSellerCheckoutRequestSchema, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontSourceUploadsRequestSchema, createStorefrontVersionRequestSchema, createdOrderSchema, currencyCodeSchema, currencyRefundFeesSchema, currencyShippingPolicySchema, currencySpecOf, customInputLabelForbiddenWord, customInputRequestSchema, customInputSchema, customInputValueSchema, customerAddressSchema, customerConsentListQuerySchema, customerConsentSchema, customerConsentStateSchema, customerConsentsSchema, customerCouponSchema, customerDelegationRequestSchema, customerDelegationSchema, customerDetailSchema, customerInquiryCategorySchema, customerInquiryListQuerySchema, customerListQuerySchema, customerOrderSchema, customerPointsSchema, customerSortSchema, customerStatsSchema, customerSummarySchema, customerUserinfoAddressSchema, customerUserinfoInputSchema, customerUserinfoSchema, customerWithdrawalBlockedDetailsSchema, daysBetween, defaultFulfillmentMethodOf, deleteStorefrontFileRequestSchema, deliveryBundleKeyOf, deliveryFeeWaiverSchema, deliveryInfoSchema, deliveryMethodSchema, deliveryStatusSchema, deliveryTypeSchema, descendantCategoryIdsOf, describeCouponGroup, describeCouponRule, describeCouponTargetRules, describeCouponTargetTree, describeScope, devStoreSchema, developerAppCreateSchema, developerAppSchema, developerInstallationSchema, developerOrgSchema, developerStoreSchema, directOrderShippingAddressSchema, disableStorefrontHostingRequestSchema, discountRequestSchema, discountSchema, dispatchRequestSchema, easyPayProviderResponseSchema, easyPayProviderSchema, evaluateCondition, evaluateConditionNode, evaluateCouponEligibility, eventTypeSchema, exchangeAuthorizationCode, floorToSaleUnit, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowAuthoringGuideSchema, flowDraftEdgesSchema, flowDraftNodeSchema, flowDraftNodesSchema, flowDraftOperationSchema, flowEditSessionViewSchema, flowFieldValueSchema, flowInputFieldSchema, flowIssueSchema, flowNodeIdSchema, flowNodeTypeDetailSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowOperationsResultSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fromDecimalString, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, infoFieldSourceSchema, infoSchemaFieldSchema, infoSchemaSchema, infoSectionLocalizationRequestSchema, infoSectionLocalizationSchema, infoSectionRequestSchema, infoSectionSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryAdjustmentLineSchema, inventoryAdjustmentReasonSchema, inventoryAdjustmentRequestSchema, inventoryChangedWebhookEventDataSchema, inventoryChangedWebhookEventSchema, inventoryLevelListQuerySchema, inventoryLevelPageSchema, inventoryLevelSchema, inventoryLocationRequestSchema, inventoryLocationSchema, inventoryModeSchema, inventoryMovementKindSchema, inventoryMovementListQuerySchema, inventoryMovementPageSchema, inventoryMovementSchema, inventoryOperationResultSchema, inventoryTransferRequestSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isAiChoiceAnswer, isAiDesignPath, isAiWorkspaceDocPath, isConditionGroup, isCouponTargetLine, isCurrencyCode, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isSaleUnitPrice, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, kakaoPayCredentialsInputSchema, legacyFromCouponRules, linkStorefrontGitInstallationRequestSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, localeCodeSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, marketSchema, maskedSecretSchema, matchesCollectionRules, maxWeightAssignment, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, minPaymentOf, minorToMajor, moneyRulesOf, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, naverPayCredentialsInputSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, normalizeLocale, normalizeStorefrontHostname, normalizeStorefrontPath, noticeTemplateRequestSchema, noticeTemplateSchema, oauthTokenResponseSchema, openFulfillmentUnion, optionGroupKindSchema, optionGroupRequestSchema, optionGroupSchema, optionModelRequestSchema, optionModelSchema, optionSelectionSchema, optionSortSchema, optionValueRequestSchema, optionValueSchema, orderCanceledWebhookEventDataSchema, orderCanceledWebhookEventSchema, orderDiscountSchema, orderFlowActionResultSchema, orderFulfilledWebhookEventDataSchema, orderFulfilledWebhookEventSchema, orderItemFlowSchema, orderItemFulfillmentSchema, orderItemFulfillmentSnapshotResponseSchema, orderItemFulfillmentSnapshotSchema, orderItemListQuerySchema, orderItemMemoResultSchema, orderItemPageSchema, orderItemSchema, orderItemStatusSchema, orderListQuerySchema, orderPaymentAddedWebhookEventDataSchema, orderPaymentAddedWebhookEventSchema, orderPaymentRequestedWebhookEventDataSchema, orderPaymentRequestedWebhookEventSchema, orderPaymentSchema, orderSchema, orderSummaryPageSchema, orderSummarySchema, orderWebhookEventDataSchema, orderWebhookEventSchema, pageInfoSchema, pageQueryShape, pageSchema, parseOrderNo, parseWebhookEvent, payPalCredentialsInputSchema, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, paymentStatusProviderSchema, paymentStatusSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderResponseSchema, pgProviderSchema, pgVerificationResultSchema, pickCouponFacts, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, platformCodeSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCertificationsRequestSchema, productCertificationsSchema, productCreateRequestSchema, productCurrencyPriceSchema, productCurrencyPricesSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productImportErrorSchema, productImportItemSchema, productImportItemsRequestSchema, productImportSchema, productImportStatusSchema, productListQuerySchema, productLocalizationNeedsTranslation, productLocalizationRequestSchema, productLocalizationSchema, productLookupRequestSchema, productNoticeRequestSchema, productNoticeSchema, productOutOfStockWebhookEventDataSchema, productOutOfStockWebhookEventSchema, productPatchRequestSchema, productRefundPolicyOverride, productRefundPolicyPatchSchema, productReplaceRequestSchema, productSchema, productSortSchema, productStatusSchema, productSummarySchema, productVariantRequestSchema, productVariantSchema, proratedPaidRefundBase, proratedPointRefund, proratedRefundBase, publicPlanSchema, publicPlansSchema, publishStorefrontVersionRequestSchema, purchaseDecisionExtendResultSchema, purchaseDecisionRequestResultSchema, purchaseEarnPolicySchema, purchaseEarnRateOf, putBrandBriefRequestSchema, putStorefrontSiteVarRequestSchema, quoteDelivery, quotePricing, rankBestSelling, recomputeOrderCoupons, refreshUserToken, refundPolicyPatchSchema, refundPolicySchema, rejectClaimRequestSchema, remoteAreaLabelOf, remoteAreaOf, remoteAreaSchema, remoteSurchargeOf, replaceStorefrontSourceRequestSchema, replayFlowRequestSchema, replayFlowResultSchema, requiresCollection, requiresShipping, resolvePointPolicy, resolveRefundPolicy, resolveShippingPolicy, resolvedFlowSchema, responsePlanCodeSchema, responsePointEntryTypeSchema, reviewListQuerySchema, reviewReportResultSchema, reviewRewardPointOf, reviewRewardPolicySchema, reviewSchema, reviewSortSchema, reviewWebhookEventDataSchema, reviewWebhookEventSchema, rollbackStorefrontRequestSchema, runStorefrontCheckRequestSchema, salesReportCurrencySchema, salesReportGroupBySchema, salesReportQuerySchema, salesReportRowSchema, salesReportSchema, salesTotalsSchema, saveFlowDraftRequestSchema, saveFlowSecretRequestSchema, saveLoginProviderRequestSchema, savedCustomInputRequestSchema, savedCustomInputSchema, savedOptionGroupRequestSchema, savedOptionGroupSchema, savedOptionSetCompositionSchema, savedOptionSetFromProductRequestSchema, savedOptionSetFromProductResultSchema, savedOptionSetListQuerySchema, savedOptionSetLocalizationRequestSchema, savedOptionSetLocalizationSchema, savedOptionSetRequestSchema, savedOptionSetSchema, savedOptionSetSortSchema, savedOptionValueRequestSchema, savedOptionValueSchema, scopeAccessSchema, scopesCoverEvent, searchStorefrontFilesRequestSchema, sellerAddressListQuerySchema, sellerAddressRequestSchema, sellerAddressSchema, sellerCancelPreviewSchema, sellerCheckoutLineSchema, sellerCheckoutPageSchema, sellerCheckoutSchema, sellerCustomerInquirySchema, sendAiMessageRequestSchema, sendAiMessageResponseSchema, setCalendarRequestSchema, setPlatformTestKeysRequestSchema, setStorefrontDeployApprovalRequestSchema, setStorefrontVisibilityRequestSchema, settleCouponShortfall, settlementDetailQuerySchema, settlementDetailSchema, settlementListQuerySchema, settlementStatusSchema, settlementSummarySchema, settlementWithDetailsSchema, shippingAddressSchema, shippingCurrencyPriceSchema, shippingCurrencyPricesSchema, shippingOrderItemListQuerySchema, shippingOrderItemPageSchema, shippingOrderItemSchema, shippingPolicyPatchSchema, shippingPolicySchema, simulateFlowRequestSchema, simulateFlowResultSchema, simulationStepSchema, splitRefund, starterSellerTaskSchema, starterStageSchema, starterStatusSchema, starterStoreInfoFieldSchema, stayRangeSchema, staySnapshotSchema, storeAppDetailSchema, storeAppSchema, storeCodeSchema, storeDraftPreviewSchema, storeDraftSchema, storeIndustrySchema, storeMemberRoleUpdatedSchema, storeMemberSchema, storePointPolicySchema, storeRoleSchema, storeSchema, storeScopeResourceSchema, storeSetupBriefSchema, storeShopTypeSchema, storeSubscriptionSchema, storedAdditionalCurrencyPriceSchema, storedProductCurrencyPriceSchema, storedShippingCurrencyPriceSchema, storefrontBuildDependenciesSchema, storefrontBuildListQuerySchema, storefrontBuildSchema, storefrontBuildStatusSchema, storefrontCheckSchema, storefrontCheckStatusSchema, storefrontCustomDomainStatusSchema, storefrontCustomHostnameProblem, storefrontDependencyFindingSchema, storefrontDeploymentLogSchema, storefrontDeploymentSchema, storefrontDeploymentStepSchema, storefrontDevLogsSchema, storefrontDnsRecordSchema, storefrontDomainSchema, storefrontDomainTxtNameOf, storefrontEditFailureSchema, storefrontEditPreviewLabelOf, storefrontEditPreviewSchema, storefrontEditSessionSchema, storefrontEditSessionStatusSchema, storefrontEditingSchema, storefrontFileConflictDetailsSchema, storefrontFileContentQuerySchema, storefrontFileContentSchema, storefrontFileDeleteResultSchema, storefrontFileEncodingSchema, storefrontFileEntrySchema, storefrontFileHashSchema, storefrontFileListQuerySchema, storefrontFileListSchema, storefrontFileMoveResultSchema, storefrontFilePathSchema, storefrontFileSearchResultSchema, storefrontFileWriteResultSchema, storefrontGitConnectStateSchema, storefrontGitMergeRequestSchema, storefrontGitMergeSchema, storefrontGitRepositorySchema, storefrontGitStatusSchema, storefrontHostingSchema, storefrontInitialSourceSchema, storefrontPreviewLinkSchema, storefrontProvisioningSchema, storefrontRuleResultSchema, storefrontRuleSeveritySchema, storefrontSiteDomainSchema, storefrontSiteDomainsSchema, storefrontSiteSchema, storefrontSiteSnapshotSchema, storefrontSiteStatusSchema, storefrontSiteVarKeyProblem, storefrontSiteVarSchema, storefrontSiteVarsSchema, storefrontSlugAvailabilityQuerySchema, storefrontSlugAvailabilitySchema, storefrontSlugSchema, storefrontSourceArchivePartSchema, storefrontSourceArchiveQuerySchema, storefrontSourceBlobsResultSchema, storefrontSourceRefSchema, storefrontSourceReplacedSchema, storefrontSourceSchema, storefrontSourceUploadsSchema, storefrontSuspensionSchema, storefrontVerifyReportSchema, storefrontVersionCreatedSchema, storefrontVersionPreviewLabelOf, storefrontVersionSchema, storefrontVersionStatusSchema, storefrontVisibilitySchema, subscriptionLimitsSchema, subscriptionStatusSchema, subscriptionUsageSchema, toDecimalString, toMinor, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateCustomerRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMarketRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourceBlobsRequestSchema, uploadTicketSchema, upsertKakaoPayProviderRequestSchema, upsertNaverPayProviderRequestSchema, upsertPayPalProviderRequestSchema, upsertPortOneProviderRequestSchema, upsertTossPaymentsProviderRequestSchema, variantStockRequestSchema, variantStockSchema, verifyPaymentProviderRequestSchema, webhookCreatedSchema, webhookDeliveryDetailSchema, webhookDeliveryErrorCodeSchema, webhookDeliveryListQuerySchema, webhookDeliveryResourceSchema, webhookDeliverySchema, webhookDeliveryStatusSchema, webhookEventSchema, webhookFailureReasonSchema, webhookRedeliverFailedResultSchema, webhookRequestHeaderSchema, webhookRequestSchema, webhookResourceTypeSchema, webhookSchema, webhookSecretRotatedSchema, webhookStatusSchema, webhookTestRequestSchema, webhookTestResultSchema, withdrawCustomerRequestSchema, writeDryRunResultSchema, writePreviewSchema, writeStorefrontFilesRequestSchema };
13546
+ export { AI_AGENTS, AI_AGENT_NOTES_DIR, AI_AGENT_PHASES, AI_DESIGN_BOARDS_MAX, AI_DESIGN_BOARD_FILE_PATTERN, AI_DESIGN_BOARD_KINDS, AI_DESIGN_CANVAS_PATH, AI_DESIGN_CONFIRM_APPROVE, AI_DESIGN_DIR, AI_DESIGN_GUIDE_PATH, AI_DESIGN_VIEWPORTS, AI_MESSAGE_MAX_ATTACHMENTS, AI_MESSAGE_MAX_CHARS, AI_RUN_ACTIVE_STATUSES, AI_RUN_FILE_CHANGES_RETENTION_DAYS, AI_RUN_RESUME_CHOICE, AI_SETUP_CONFIRM_APPROVE, AI_SITEMAP_PATH, AI_TODOS_MAX, AI_TODO_STATUSES, AI_TOOL_CHANGE_LINE_MAX, AI_TOOL_CHANGE_RANGES_MAX, APPROVAL_ALREADY_DECIDED_CODE, APPROVAL_REQUIRED_CODE, APP_CAPABILITIES, APP_DEPLOY_KEY_PATTERN, APP_DEPLOY_KEY_PREFIX, APP_EVENTS_MAX, APP_EVENT_SCOPES, APP_EVENT_TYPES, APP_FLOW_EVENT_PATTERN, APP_FLOW_ITEMS_MAX, APP_FLOW_NOTIFICATION_PATTERN, APP_HANDLE_PATTERN, APP_HTTP_KEY_PATTERN, APP_ICON_CONTENT_TYPES, APP_ICON_MAX_BYTES, APP_ICON_MIN_PX, APP_LIFECYCLE_EVENT_TYPES, APP_NETWORK_DENIED_SUFFIXES, APP_NETWORK_HOSTS_MAX, APP_PUBLIC_HTTP_MAX, APP_README_MAX_BYTES, APP_RESERVED_HANDLES, APP_SCHEDULES_MAX, APP_SCHEDULE_INTERVALS, APP_SCHEDULE_NAME_PATTERN, APP_SECRETS_MAX, APP_SECRET_NAME_PATTERN, APP_SECRET_PATTERNS, APP_SERVER_BUNDLE_MAX_GZIP_BYTES, APP_SETTINGS_MAX_FIELDS, APP_SETTING_FIELD_TYPES, APP_SETTING_KEY_PATTERN, APP_STORAGE_KEY_PATTERN, APP_STORAGE_MAX_BYTES, APP_STORAGE_MAX_KEYS, APP_TOOL_NAME_PATTERN, APP_UI_MAX_BYTES, APP_UI_MAX_FILES, ApiError, ApprovalPendingError, BASE_CURRENCY, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, CERTIFICATION_STATUSES, COLLECTION_BEST_SELLING_DAYS, COLLECTION_PREVIEW_SIZE, COLLECTION_PRODUCT_SORTS, COLLECTION_SALES_SORT_DEFAULT_DAYS, COLLECTION_SLUG_PATTERN, COLLECTION_TYPES, CONDITION_OPERATORS_BY_TYPE, COUPON_CODE_PATTERN, COUPON_CONDITIONS_DEFAULTS, COUPON_CONDITION_FIELDS, COUPON_LINE_CONDITIONS, COUPON_ORDER_CONDITIONS, COUPON_REWARD_KINDS, COUPON_REWARD_TIER_MAX, COUPON_STACKING_DEFAULTS, COUPON_TARGET_ALL, COUPON_TARGET_LIST_MAX, COUPON_TARGET_RULES_ALL, COUPON_TIME_ZONE, COUPON_WEEKDAYS, CURRENCIES, CURRENCY_CODES, CUSTOMER_BIRTHDATE_PATTERN, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, DEDICATED_EASY_PAY_PROVIDER, DEFAULT_CONDITION_LIMITS, DEFAULT_STORE_LOCALE, EMPTY_CONDITION_GROUP, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, InvalidPriceUnitError, KAKAOPAY_TEST_CID, KNOWN_WEBHOOK_EVENT_TYPES, KRW_MONEY_RULES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, MAX_CERTIFICATION_ITEMS, MAX_COLLECTIONS, MAX_COLLECTION_BEST_SELLING_TOP, MAX_COLLECTION_CREATED_WITHIN_DAYS, MAX_COLLECTION_DESCRIPTION, MAX_COLLECTION_PRODUCTS, MAX_COLLECTION_PRODUCTS_PER_ADD, MAX_COLLECTION_RULES, MAX_COLLECTION_RULE_CATEGORIES, MAX_COLLECTION_TITLE, MAX_CUSTOM_INPUTS, MAX_CUSTOM_INPUT_LENGTH, MAX_INFO_SECTION_TITLE, MAX_INVENTORY_OPERATION_LINES, MAX_NOTICE_TEMPLATE_NAME, MAX_NOTICE_VALUE_LENGTH, MAX_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, MAX_PRODUCT_IMPORT_ITEMS, MAX_PRODUCT_IMPORT_ITEMS_PER_REQUEST, MAX_PRODUCT_INFO_SECTIONS, MAX_PRODUCT_LOOKUP, MAX_SAVED_OPTION_SETS, MAX_SAVED_OPTION_SET_NAME, MAX_STAY_NIGHTS, MAX_VALUES_PER_GROUP, MAX_VARIANTS, MCP_TELEMETRY_MAX_RESULTS, MIN_PAYMENT_AMOUNT, NON_INSTALLABLE_SCOPES, NO_COUPON_SETTLEMENT, NO_SHIPPING_BUNDLE_KEY, PAYMENT_ROUTING_EXCLUSION_CODES, PAYPAL_CURRENCIES, PLATFORM_CODE_SETS, POINT_ADJUSTMENT_MAX, POINT_EARN_RATE_BP_MAX, POINT_ENTRY_TYPES, POINT_EXPIRY_DAYS_MAX, POINT_EXPIRY_DAYS_MIN, POINT_LOT_SOURCES, POINT_POLICY_DEFAULTS, POINT_REVIEW_REWARD_MAX, POINT_USE_UNITS, PORTONE_CHANNEL_NAME_MAX_LENGTH, PORTONE_MAX_CHANNELS, PORTONE_MIN_CHANNELS, REFUND_POLICY_DEFAULTS, REFUND_POLICY_DELIVERY_FEE_KEYS, REMOTE_AREA_ZIP_RANGES, RESERVED_STOREFRONT_SLUGS, RESERVED_STORE_CODES, SAYREN_API_BASE_URL, SAYREN_API_ORIGIN, SCOPE_DESCRIPTIONS, SHIPPING_POLICY_DEFAULTS, STARTER_SELLER_TASKS, STARTER_STAGES, STOREFRONT_BLOCKED_PATH_SEGMENTS, STOREFRONT_BUILD_STAGES, STOREFRONT_BUILD_TERMINAL_STATUSES, STOREFRONT_CHECK_TERMINAL_STATUSES, STOREFRONT_CLOSED_SITE_HOLD_DAYS, STOREFRONT_CUSTOM_DOMAIN_LIMIT_DEFAULT, STOREFRONT_DOMAIN_DNS_GRACE_DAYS, STOREFRONT_DOMAIN_DNS_WAIT_DAYS, STOREFRONT_DOMAIN_TXT_LABEL, STOREFRONT_EDIT_ACTIVITY_TIMEOUT_MINUTES, STOREFRONT_EDIT_CAPACITY, STOREFRONT_EDIT_IDLE_MINUTES, STOREFRONT_EDIT_PREVIEW_SUFFIX, STOREFRONT_EDIT_START_STAGES, STOREFRONT_FILE_BATCH_MAX, STOREFRONT_FILE_MAX_BYTES, STOREFRONT_PATH_SEGMENT_PATTERN, STOREFRONT_PLATFORM_DOMAINS, STOREFRONT_PUBLIC_SUFFIXES, STOREFRONT_SEARCH_REGEX_MAX_LENGTH, STOREFRONT_SITE_CREATE_LIMIT, STOREFRONT_SITE_VAR_KEY_PATTERN, STOREFRONT_SITE_VAR_LIMIT, STOREFRONT_SITE_VAR_MAX_BYTES, STOREFRONT_SITE_VAR_RESERVED_NAMES, STOREFRONT_SITE_VAR_RESERVED_PREFIX, STOREFRONT_SLUG_CHANGE_LIMIT, STOREFRONT_SLUG_CHANGE_WINDOW_DAYS, STOREFRONT_SLUG_HOLD_DAYS, STOREFRONT_SLUG_PATTERN, STOREFRONT_SOURCE_PACK_MAX_BYTES, STOREFRONT_SOURCE_PART_BYTES, STOREFRONT_WORKSPACE_MAX_BYTES, STOREFRONT_WORKSPACE_MAX_FILES, STORE_CODE_PATTERN, STORE_DRAFT_ATTACHMENT_MAX_BYTES, STORE_DRAFT_MAX_ATTACHMENTS, STORE_DRAFT_RETENTION_DAYS, STORE_ROLE_SCOPES, STORE_SCOPE_RESOURCES, STORE_SESSION_KEYS, STORE_SHOP_TYPES, TOSS_WIDGET_CLIENT_KEY_PATTERN, TOSS_WIDGET_KEY_MESSAGE, TOSS_WIDGET_SECRET_KEY_PATTERN, UPLOAD_PURPOSE_LIMITS, VARIANT_COUNT_WARNING, VARIANT_STOCK_EXCLUSIVE_MESSAGE, VOUCHER_COUNT_MAX, VOUCHER_PREFIX_PATTERN, WEBHOOK_DEFAULT_TOLERANCE_SEC, WEBHOOK_DELIVERY_ID_HEADER, WEBHOOK_EVENT_ID_HEADER, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_FAILURE_REASONS, WEBHOOK_HEADERS, WEBHOOK_PAYLOAD_EXCERPT_MAX_BYTES, WEBHOOK_RESOURCE_TYPES, WEBHOOK_SIGNATURE_HEADER, WEBHOOK_USER_AGENT, addStorefrontDomainRequestSchema, additionalCurrencyPriceSchema, additionalCurrencyPricesSchema, addonGroupRequestSchema, addonGroupSchema, addonValueRequestSchema, addonValueSchema, addressChangeRequestListSchema, addressTypeSchema, agentPolicyDecisionSchema, aiActivitySchema, aiAgentPhaseSchema, aiAgentSchema, aiAttachmentSchema, aiChoiceOptionSchema, aiConversationFileChangesSchema, aiConversationSchema, aiConversationSummarySchema, aiDesignBoardSchema, aiDesignCanvasSchema, aiDesignConfirmBoardSchema, aiDesignSelectionSchema, aiFileChangeKindSchema, aiFocusAreaSchema, aiFocusSchema, aiMessagePartSchema, aiMessageSchema, aiPreviewSelectionSchema, aiRunChangesSchema, aiRunChangesStatusSchema, aiRunFileDiffSchema, aiRunRevertConflictDetailsSchema, aiRunRevertResultSchema, aiRunSchema, aiRunStatusSchema, aiSetupConfirmItemSchema, aiStreamAccessSchema, aiStreamEventSchema, aiStreamRecordSchema, aiTodoSchema, aiToolChangeSchema, allocateByWeight, analyticsChannelSchema, analyticsCheckoutOutcomeSchema, analyticsCheckoutSchema, analyticsDeviceRowSchema, analyticsDevicesSchema, analyticsFunnelStepSchema, analyticsOriginSchema, analyticsOverviewSchema, analyticsPagesQuerySchema, analyticsPagesSchema, analyticsProductRowSchema, analyticsProductSortSchema, analyticsProductsQuerySchema, analyticsProductsSchema, analyticsRangeQuerySchema, analyticsRealtimeSchema, analyticsSearchQuerySchema, analyticsSearchSchema, analyticsSourceGroupBySchema, analyticsSourceRowSchema, analyticsSourcesQuerySchema, analyticsSourcesSchema, analyticsTotalsSchema, anyConditionHolds, apiLogErrorSchema, apiLogListQuerySchema, apiLogPageSchema, apiLogPrincipalSchema, apiLogPrincipalTypeSchema, apiLogSchema, apiLogStatusFilterSchema, apiLogSummarySchema, appArtifactUploadSchema, appBuildSchema, appBuildStageSchema, appCapabilitiesOf, appDeployKeyCreateSchema, appDeployKeyCreatedSchema, appDeployKeySchema, appDevTokenSchema, appDistributionSchema, appEventTypeSchema, appFlowEventSchema, appFlowEventSummarySchema, appFlowNotificationSchema, appFlowNotificationSummarySchema, appFlowParamSchema, appFlowSummaryOf, appHandleSchema, appHttpKeyMatches, appIconProblem, appInstallRequestSchema, appInstallationActivitySchema, appInstallationAppSchema, appInstallationRunSchema, appInstallationSchema, appInstallationSelfSchema, appInstallationSettingsSchema, appInstallationSettingsUpdateSchema, appInstallationStatusSchema, appInvocationSchema, appListingReviewSchema, appListingReviewStatusSchema, appListingSchema, appManifestProblems, appManifestSchema, appManifestWidens, appNetworkHostProblem, appNetworkHostSchema, appReleaseResultSchema, appRuntimeSchema, appScheduleIntervalLabel, appScheduleListOf, appScheduleSummarySchema, appScopeSchema, appSecretSummarySchema, appSessionSchema, appSettingFieldSchema, appStatusSchema, appStorageEntrySchema, appStorageKeysSchema, appStorageListQuerySchema, appStoragePutSchema, appToolCallSchema, appToolInputSchema, appToolListOf, appToolResultSchema, appToolSchema, appToolSummarySchema, appVersionSchema, appVersionStatusSchema, appVisibilitySchema, applyFlowOperationsRequestSchema, approvalDecisionRequestSchema, approvalListQuerySchema, approvalPageSchema, approvalRequestSchema, approvalStatusSchema, approveClaimResultSchema, assertSaleUnit, assumeCouponFactRules, auditActorSchema, auditActorTypeSchema, auditLogListQuerySchema, auditLogOutcomeSchema, auditLogPageSchema, auditLogSchema, auditLogSourceSchema, bestCouponSelection, bestSellingRuleOf, birthdateFactOf, brandBriefProductSourceSchema, brandBriefReferenceSchema, brandBriefSchema, brandBriefViewSchema, buildAuthorizeUrl, buildQuery, bulkResultSchema, businessInfoPatchShape, businessInfoResponseShape, businessNumberSchema, calendarDateSchema, calendarDaySchema, calendarQuerySchema, cancelBySellerRequestSchema, cancelBySellerResultSchema, canonicalLocale, canonicalizeConditionGroup, canonicalizeConditionRule, canonicalizeCouponStacking, canonicalizeCouponTargetRules, canonicalizeCouponTargetTree, canonicalizeCouponTrees, carrierSchema, cashReceiptSchema, categoryAttributeSchema, categoryCreateRequestSchema, categoryDeleteQuerySchema, categoryDeleteStrategySchema, categoryListQuerySchema, categoryLocalizationRequestSchema, categoryLocalizationSchema, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeTypeSchema, claimCollectCompleteRequestSchema, claimDetailSchema, claimFlowEditSessionRequestSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, claimRedeliveryRequestSchema, claimReturnAddressSchema, claimSchema, claimStatusSchema, claimTypeSchema, claimWebhookEventDataSchema, claimWebhookEventSchema, collectionCreateRequestSchema, collectionListQuerySchema, collectionLocalizationRequestSchema, collectionLocalizationSchema, collectionPageSchema, collectionPatchRequestSchema, collectionPreviewRequestSchema, collectionPreviewSchema, collectionProductListQuerySchema, collectionProductSchema, collectionProductSortRequestSchema, collectionProductsAddRequestSchema, collectionProductsReplaceRequestSchema, collectionRuleCategoryIds, collectionRuleSchema, collectionRuleViewSchema, collectionRulesPredicate, collectionRulesSchema, collectionSchema, collectionStateCountsSchema, collectionStateOf, collectionStateSchema, commerceFlowCheckSchema, commerceFlowSchema, commerceFlowSummarySchema, commerceFlowVersionViewSchema, commerceNumberField, compareBySales, conditionCatalog, conditionFields, conditionGroupSchema, conditionIssues, conditionRuleSchema, conditionValueSchema, connectStorefrontGitRequestSchema, consentActionSchema, consentKindSchema, consentSourceSchema, couponAudienceMatches, couponBenefitOfReward, couponBenefitSchema, couponClaimFactsOf, couponConditionTreeSchema, couponConditionsInputSchema, couponConditionsSchema, couponCustomerFactNames, couponDiscountOf, couponDistributionSchema, couponFactsSchema, couponIssueListQuerySchema, couponIssueMethodSchema, couponIssueSchema, couponIssueStatusSchema, couponKindSchema, couponLineContextOf, couponLineMatches, couponListQuerySchema, couponPointRewardOf, couponRedemptionListQuerySchema, couponRedemptionSchema, couponRejectReasonSchema, couponRequestRuleIssues, couponRequirementsOf, couponRewardSchema, couponRuleDiscountOf, couponRuleIssues, couponRuleSchema, couponRulesFromLegacy, couponSchema, couponStackingOf, couponStackingSchema, couponStatsSchema, couponStatusSchema, couponTargetInputSchema, couponTargetRulesFromTree, couponTargetRulesSchema, couponTargetSchema, couponTargetTreeFromRules, couponTargetTreeMatches, couponTargetTreeOf, couponTargetTreeSchema, couponTierOf, couponTimeFactsAt, couponTodayAt, couponTreesOf, couponVoucherCodesSchema, couponVoucherInputSchema, couponsCombinable, createAiConversationRequestSchema, createAiConversationResponseSchema, createCommerceFlowRequestSchema, createCouponRequestSchema, createMarketRequestSchema, createOrderRequestSchema, createPkcePair, createSellerCheckoutRequestSchema, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontSourceUploadsRequestSchema, createStorefrontVersionRequestSchema, createdOrderSchema, currencyCodeSchema, currencyRefundFeesSchema, currencyShippingPolicySchema, currencySpecOf, customInputLabelForbiddenWord, customInputRequestSchema, customInputSchema, customInputValueSchema, customerAddressSchema, customerConsentListQuerySchema, customerConsentSchema, customerConsentStateSchema, customerConsentsSchema, customerCouponSchema, customerDelegationRequestSchema, customerDelegationSchema, customerDetailSchema, customerInquiryCategorySchema, customerInquiryListQuerySchema, customerListQuerySchema, customerOrderSchema, customerPointsSchema, customerSortSchema, customerStatsSchema, customerSummarySchema, customerUserinfoAddressSchema, customerUserinfoInputSchema, customerUserinfoSchema, customerWithdrawalBlockedDetailsSchema, daysBetween, defaultFulfillmentMethodOf, deleteStorefrontFileRequestSchema, deliveryBundleKeyOf, deliveryFeeWaiverSchema, deliveryInfoSchema, deliveryMethodSchema, deliveryStatusSchema, deliveryTypeSchema, descendantCategoryIdsOf, describeCouponGroup, describeCouponRule, describeCouponTargetRules, describeCouponTargetTree, describeScope, devStoreSchema, developerAppCreateSchema, developerAppSchema, developerInstallationSchema, developerOrgSchema, developerStoreSchema, directOrderShippingAddressSchema, disableStorefrontHostingRequestSchema, discountRequestSchema, discountSchema, dispatchRequestSchema, easyPayProviderResponseSchema, easyPayProviderSchema, evaluateCondition, evaluateConditionNode, evaluateCouponEligibility, eventTypeSchema, exchangeAuthorizationCode, floorToSaleUnit, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowAuthoringGuideSchema, flowDraftEdgesSchema, flowDraftNodeSchema, flowDraftNodesSchema, flowDraftOperationSchema, flowEditSessionViewSchema, flowFieldValueSchema, flowInputFieldSchema, flowIssueSchema, flowNodeIdSchema, flowNodeTypeDetailSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowOperationsResultSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fromDecimalString, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, infoFieldSourceSchema, infoSchemaFieldSchema, infoSchemaSchema, infoSectionLocalizationRequestSchema, infoSectionLocalizationSchema, infoSectionRequestSchema, infoSectionSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryAdjustmentLineSchema, inventoryAdjustmentReasonSchema, inventoryAdjustmentRequestSchema, inventoryChangedWebhookEventDataSchema, inventoryChangedWebhookEventSchema, inventoryLevelListQuerySchema, inventoryLevelPageSchema, inventoryLevelSchema, inventoryLocationRequestSchema, inventoryLocationSchema, inventoryModeSchema, inventoryMovementKindSchema, inventoryMovementListQuerySchema, inventoryMovementPageSchema, inventoryMovementSchema, inventoryOperationResultSchema, inventoryTransferRequestSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isAiChoiceAnswer, isAiDesignPath, isAiWorkspaceDocPath, isConditionGroup, isCouponTargetLine, isCurrencyCode, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isSaleUnitPrice, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, kakaoPayCredentialsInputSchema, legacyFromCouponRules, linkStorefrontGitInstallationRequestSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, localeCodeSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, marketSchema, maskedSecretSchema, matchesCollectionRules, maxWeightAssignment, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, minPaymentOf, minorToMajor, moneyRulesOf, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, naverPayCredentialsInputSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, normalizeLocale, normalizeStorefrontHostname, normalizeStorefrontPath, noticeTemplateRequestSchema, noticeTemplateSchema, oauthTokenResponseSchema, openFulfillmentUnion, optionGroupKindSchema, optionGroupRequestSchema, optionGroupSchema, optionModelRequestSchema, optionModelSchema, optionSelectionSchema, optionSortSchema, optionValueRequestSchema, optionValueSchema, orderCanceledWebhookEventDataSchema, orderCanceledWebhookEventSchema, orderDiscountSchema, orderFlowActionResultSchema, orderFulfilledWebhookEventDataSchema, orderFulfilledWebhookEventSchema, orderItemFlowSchema, orderItemFulfillmentSchema, orderItemFulfillmentSnapshotResponseSchema, orderItemFulfillmentSnapshotSchema, orderItemListQuerySchema, orderItemMemoResultSchema, orderItemPageSchema, orderItemSchema, orderItemStatusSchema, orderListQuerySchema, orderPaymentAddedWebhookEventDataSchema, orderPaymentAddedWebhookEventSchema, orderPaymentRequestedWebhookEventDataSchema, orderPaymentRequestedWebhookEventSchema, orderPaymentSchema, orderSchema, orderSummaryPageSchema, orderSummarySchema, orderWebhookEventDataSchema, orderWebhookEventSchema, pageInfoSchema, pageQueryShape, pageSchema, parseOrderNo, parseWebhookEvent, payPalCredentialsInputSchema, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, paymentStatusProviderSchema, paymentStatusSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderResponseSchema, pgProviderSchema, pgVerificationResultSchema, pickCouponFacts, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, platformCodeSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCertificationsRequestSchema, productCertificationsSchema, productCreateRequestSchema, productCurrencyPriceSchema, productCurrencyPricesSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productImportErrorSchema, productImportItemSchema, productImportItemsRequestSchema, productImportSchema, productImportStatusSchema, productListQuerySchema, productLocalizationNeedsTranslation, productLocalizationRequestSchema, productLocalizationSchema, productLookupRequestSchema, productNoticeRequestSchema, productNoticeSchema, productOutOfStockWebhookEventDataSchema, productOutOfStockWebhookEventSchema, productPatchRequestSchema, productRefundPolicyOverride, productRefundPolicyPatchSchema, productReplaceRequestSchema, productSchema, productSortSchema, productStatusSchema, productSummarySchema, productVariantRequestSchema, productVariantSchema, proratedPaidRefundBase, proratedPointRefund, proratedRefundBase, publicPlanSchema, publicPlansSchema, publishStorefrontVersionRequestSchema, purchaseDecisionExtendResultSchema, purchaseDecisionRequestResultSchema, purchaseEarnPolicySchema, purchaseEarnRateOf, putBrandBriefRequestSchema, putStorefrontSiteVarRequestSchema, quoteDelivery, quotePricing, rankBestSelling, recomputeOrderCoupons, refreshUserToken, refundPolicyPatchSchema, refundPolicySchema, rejectClaimRequestSchema, remoteAreaLabelOf, remoteAreaOf, remoteAreaSchema, remoteSurchargeOf, replaceStorefrontSourceRequestSchema, replayFlowRequestSchema, replayFlowResultSchema, requiresCollection, requiresShipping, resolvePointPolicy, resolveRefundPolicy, resolveShippingPolicy, resolveStorefrontDeployProduction, resolvedFlowSchema, responsePlanCodeSchema, responsePointEntryTypeSchema, reviewListQuerySchema, reviewReportResultSchema, reviewRewardPointOf, reviewRewardPolicySchema, reviewSchema, reviewSortSchema, reviewWebhookEventDataSchema, reviewWebhookEventSchema, rollbackStorefrontRequestSchema, runStorefrontCheckRequestSchema, salesReportCurrencySchema, salesReportGroupBySchema, salesReportQuerySchema, salesReportRowSchema, salesReportSchema, salesTotalsSchema, saveFlowDraftRequestSchema, saveFlowSecretRequestSchema, saveLoginProviderRequestSchema, savedCustomInputRequestSchema, savedCustomInputSchema, savedOptionGroupRequestSchema, savedOptionGroupSchema, savedOptionSetCompositionSchema, savedOptionSetFromProductRequestSchema, savedOptionSetFromProductResultSchema, savedOptionSetListQuerySchema, savedOptionSetLocalizationRequestSchema, savedOptionSetLocalizationSchema, savedOptionSetRequestSchema, savedOptionSetSchema, savedOptionSetSortSchema, savedOptionValueRequestSchema, savedOptionValueSchema, scopeAccessSchema, scopesCoverEvent, searchStorefrontFilesRequestSchema, sellerAddressListQuerySchema, sellerAddressRequestSchema, sellerAddressSchema, sellerCancelPreviewSchema, sellerCheckoutLineSchema, sellerCheckoutPageSchema, sellerCheckoutSchema, sellerCustomerInquirySchema, sendAiMessageRequestSchema, sendAiMessageResponseSchema, setCalendarRequestSchema, setPlatformTestKeysRequestSchema, setStorefrontAutoPublishRequestSchema, setStorefrontDeployApprovalRequestSchema, setStorefrontVisibilityRequestSchema, settleCouponShortfall, settlementDetailQuerySchema, settlementDetailSchema, settlementListQuerySchema, settlementStatusSchema, settlementSummarySchema, settlementWithDetailsSchema, shippingAddressSchema, shippingCurrencyPriceSchema, shippingCurrencyPricesSchema, shippingOrderItemListQuerySchema, shippingOrderItemPageSchema, shippingOrderItemSchema, shippingPolicyPatchSchema, shippingPolicySchema, simulateFlowRequestSchema, simulateFlowResultSchema, simulationStepSchema, splitRefund, starterSellerTaskSchema, starterStageSchema, starterStatusSchema, starterStoreInfoFieldSchema, stayRangeSchema, staySnapshotSchema, storeAppDetailSchema, storeAppSchema, storeCodeSchema, storeDraftPreviewSchema, storeDraftSchema, storeIndustrySchema, storeMemberRoleUpdatedSchema, storeMemberSchema, storePointPolicySchema, storeRoleSchema, storeSchema, storeScopeResourceSchema, storeSetupBriefSchema, storeShopTypeSchema, storeSubscriptionSchema, storedAdditionalCurrencyPriceSchema, storedProductCurrencyPriceSchema, storedShippingCurrencyPriceSchema, storefrontBuildDependenciesSchema, storefrontBuildListQuerySchema, storefrontBuildSchema, storefrontBuildStatusSchema, storefrontCheckSchema, storefrontCheckStatusSchema, storefrontCustomDomainStatusSchema, storefrontCustomHostnameProblem, storefrontDependencyFindingSchema, storefrontDeploymentLogSchema, storefrontDeploymentSchema, storefrontDeploymentStepSchema, storefrontDevLogsSchema, storefrontDnsRecordSchema, storefrontDomainSchema, storefrontDomainTxtNameOf, storefrontEditFailureSchema, storefrontEditPreviewLabelOf, storefrontEditPreviewSchema, storefrontEditSessionSchema, storefrontEditSessionStatusSchema, storefrontEditingSchema, storefrontFileConflictDetailsSchema, storefrontFileContentQuerySchema, storefrontFileContentSchema, storefrontFileDeleteResultSchema, storefrontFileEncodingSchema, storefrontFileEntrySchema, storefrontFileHashSchema, storefrontFileListQuerySchema, storefrontFileListSchema, storefrontFileMoveResultSchema, storefrontFilePathSchema, storefrontFileSearchResultSchema, storefrontFileWriteResultSchema, storefrontGitConnectStateSchema, storefrontGitMergeRequestSchema, storefrontGitMergeSchema, storefrontGitRepositorySchema, storefrontGitStatusSchema, storefrontHostingSchema, storefrontInitialSourceSchema, storefrontPreviewLinkSchema, storefrontProvisioningSchema, storefrontRuleResultSchema, storefrontRuleSeveritySchema, storefrontSiteDomainSchema, storefrontSiteDomainsSchema, storefrontSiteSchema, storefrontSiteSnapshotSchema, storefrontSiteStatusSchema, storefrontSiteVarKeyProblem, storefrontSiteVarSchema, storefrontSiteVarsSchema, storefrontSlugAvailabilityQuerySchema, storefrontSlugAvailabilitySchema, storefrontSlugSchema, storefrontSourceArchivePartSchema, storefrontSourceArchiveQuerySchema, storefrontSourcePackSchema, storefrontSourceRefSchema, storefrontSourceReplacedSchema, storefrontSourceSchema, storefrontSourceUploadsSchema, storefrontSuspensionSchema, storefrontVerifyReportSchema, storefrontVersionCreatedSchema, storefrontVersionPreviewLabelOf, storefrontVersionSchema, storefrontVersionStatusSchema, storefrontVisibilitySchema, subscriptionLimitsSchema, subscriptionStatusSchema, subscriptionUsageSchema, toDecimalString, toMinor, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateCustomerRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMarketRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourcePackRequestSchema, uploadTicketSchema, upsertKakaoPayProviderRequestSchema, upsertNaverPayProviderRequestSchema, upsertPayPalProviderRequestSchema, upsertPortOneProviderRequestSchema, upsertTossPaymentsProviderRequestSchema, variantStockRequestSchema, variantStockSchema, verifyPaymentProviderRequestSchema, webhookCreatedSchema, webhookDeliveryDetailSchema, webhookDeliveryErrorCodeSchema, webhookDeliveryListQuerySchema, webhookDeliveryResourceSchema, webhookDeliverySchema, webhookDeliveryStatusSchema, webhookEventSchema, webhookFailureReasonSchema, webhookRedeliverFailedResultSchema, webhookRequestHeaderSchema, webhookRequestSchema, webhookResourceTypeSchema, webhookSchema, webhookSecretRotatedSchema, webhookStatusSchema, webhookTestRequestSchema, webhookTestResultSchema, withdrawCustomerRequestSchema, writeDryRunResultSchema, writePreviewSchema, writeStorefrontFilesRequestSchema };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sayren/store-sdk",
3
- "version": "0.60.2",
3
+ "version": "0.62.0",
4
4
  "main": "./dist/index.mjs",
5
5
  "types": "./dist/index.d.mts",
6
6
  "exports": {
package/src/client.ts CHANGED
@@ -446,9 +446,11 @@ import {
446
446
  rollbackStorefrontRequestSchema,
447
447
  runStorefrontCheckRequestSchema,
448
448
  type SearchStorefrontFilesRequest,
449
+ type SetStorefrontAutoPublishRequest,
449
450
  type SetStorefrontDeployApprovalRequest,
450
451
  type SetStorefrontVisibilityRequest,
451
452
  searchStorefrontFilesRequestSchema,
453
+ setStorefrontAutoPublishRequestSchema,
452
454
  setStorefrontDeployApprovalRequestSchema,
453
455
  setStorefrontVisibilityRequestSchema,
454
456
  storefrontBuildSchema,
@@ -474,15 +476,15 @@ import {
474
476
  storefrontSlugAvailabilitySchema,
475
477
  storefrontSourceArchivePartSchema,
476
478
  storefrontSourceArchiveQuerySchema,
477
- storefrontSourceBlobsResultSchema,
479
+ storefrontSourcePackSchema,
478
480
  storefrontSourceReplacedSchema,
479
481
  storefrontSourceSchema,
480
482
  storefrontSourceUploadsSchema,
481
483
  storefrontVerifyReportSchema,
482
484
  storefrontVersionCreatedSchema,
483
485
  storefrontVersionSchema,
484
- type UploadStorefrontSourceBlobsRequest,
485
- uploadStorefrontSourceBlobsRequestSchema,
486
+ type UploadStorefrontSourcePackRequest,
487
+ uploadStorefrontSourcePackRequestSchema,
486
488
  type WriteStorefrontFilesRequest,
487
489
  writeStorefrontFilesRequestSchema,
488
490
  } from "./schemas/storefront-hosting";
@@ -2532,17 +2534,17 @@ export function createStoreClient(options: StoreClientOptions) {
2532
2534
  storefrontSourceArchivePartSchema,
2533
2535
  { query: storefrontSourceArchiveQuerySchema.parse(params) as Query },
2534
2536
  ),
2535
- /** `POST /v1/storefront/site/source/blobs` — 파일 내용 올리기(해시 키). 작업 트리는 바뀌지 않는다 */
2536
- uploadSourceBlobs: (body: UploadStorefrontSourceBlobsRequest) =>
2537
- storeHttp.request(
2538
- "POST",
2539
- "/storefront/site/source/blobs",
2540
- storefrontSourceBlobsResultSchema,
2541
- { body: uploadStorefrontSourceBlobsRequestSchema.parse(body) },
2542
- ),
2543
2537
  /**
2544
- * `POST /v1/storefront/site/source/uploads` — 파일 내용을 저장소에 직접 올릴 서명 PUT 주소(#181). 503 `SOURCE_UPLOAD_UNAVAILABLE`이면
2545
- * `uploadSourceBlobs`로 올린다
2538
+ * `POST /v1/storefront/site/source/pack` — 묶음을 api를 거쳐 올린다. `createSourceUploads`가 503 `SOURCE_UPLOAD_UNAVAILABLE`일 때만 쓴다.
2539
+ * 작업 트리는 바뀌지 않는다
2540
+ */
2541
+ uploadSourcePack: (body: UploadStorefrontSourcePackRequest) =>
2542
+ storeHttp.request("POST", "/storefront/site/source/pack", storefrontSourcePackSchema, {
2543
+ body: uploadStorefrontSourcePackRequestSchema.parse(body),
2544
+ }),
2545
+ /**
2546
+ * `POST /v1/storefront/site/source/uploads` — 묶음을 저장소에 직접 올릴 서명 PUT 주소(#181·#351). 503 `SOURCE_UPLOAD_UNAVAILABLE`이면
2547
+ * `uploadSourcePack`으로 올린다
2546
2548
  */
2547
2549
  createSourceUploads: (body: CreateStorefrontSourceUploadsRequest) =>
2548
2550
  storeHttp.request(
@@ -2561,6 +2563,11 @@ export function createStoreClient(options: StoreClientOptions) {
2561
2563
  storeHttp.request("PUT", "/storefront/site/source", storefrontSourceReplacedSchema, {
2562
2564
  body: replaceStorefrontSourceRequestSchema.parse(body),
2563
2565
  }),
2566
+ /** `PUT /v1/storefront/site/auto-publish` — 배포 뒤 바로 게시(상점 플랫폼 OWNER·ADMIN 전용, #356) */
2567
+ setAutoPublish: (body: SetStorefrontAutoPublishRequest) =>
2568
+ storeHttp.request("PUT", "/storefront/site/auto-publish", storefrontSiteSchema, {
2569
+ body: setStorefrontAutoPublishRequestSchema.parse(body),
2570
+ }),
2564
2571
  /** `PUT /v1/storefront/site/deploy-approval` — 승인 없이 배포(상점 플랫폼 OWNER·ADMIN 전용) */
2565
2572
  setDeployApproval: (body: SetStorefrontDeployApprovalRequest) =>
2566
2573
  storeHttp.request("PUT", "/storefront/site/deploy-approval", storefrontSiteSchema, {
@@ -50,9 +50,8 @@ import { strictRequest } from "./strict";
50
50
  * - 409 `SOURCE_CHANGED` — 작업 트리가 내려받은 뒤(`expectedBaseRef`) 바뀌었고 같은 파일을 서로 다르게 고쳤다(상점 플랫폼·AI 편집). 겹치지 않으면 서버가
51
51
  * 3-way 병합한다(응답 `merged`). `error.details.currentRef`·`conflicts`(충돌 파일)
52
52
  * - 409 `EDIT_SESSION_OPEN` — 편집 환경이 열려 있다. `endEditSession: true`로 끄고 진행할 수 있다
53
- * - 409 `SOURCE_BLOBS_MISSING` — 올리지 않은 파일 내용이 있다(`error.details.hashes`). `POST source/blobs`로 올리고 다시 한다
53
+ * - 409 `SOURCE_BLOBS_MISSING` — 올리지 않은 파일 내용이 있다(`error.details.hashes`). 묶음으로 올리고(`POST source/uploads`·`source/pack`) `pack`을 실어 다시 한다
54
54
  * - 409 `DEPENDENCY_REJECTED` — 쓸 수 없는 npm 의존성이다(`error.details.rejected: [{ name, version, reason, detail }]`)
55
- * - 413 `SOURCE_TOO_MANY_NEW_FILES` — 묶음 없이(`pack` 생략) 새 내용이 800개를 넘는다(`error.details.max`). 묶음으로 올린다
56
55
  * - 400 `DEPENDENCY_FILES_MISMATCH` — `packageJson`·`lockfile` 내용이 목록의 해시와 다르거나 빠졌다
57
56
  * - 400 `INVALID_SOURCE_REF` · `BLOB_HASH_MISMATCH` · `INVALID_FILE_PATH`(`.env*`·작업 트리 밖 경로)
58
57
  * - 404 `STOREFRONT_SOURCE_NOT_FOUND` — 그 스냅샷이 없다
@@ -291,6 +290,13 @@ export type StorefrontSiteSnapshot = z.infer<typeof storefrontSiteSnapshotSchema
291
290
 
292
291
  export const storefrontSiteSchema = z.object({
293
292
  siteId: z.string(),
293
+ autoPublish: z
294
+ .boolean()
295
+ .nullable()
296
+ .optional()
297
+ .describe(
298
+ "배포 뒤 바로 게시 — CLI `sayren deploy`·Git 운영 브랜치 push가 만든 버전을 곧바로 게시한다. null이면 소스의 `sayren.json` `deploy.production`, 그것도 없으면 저장만. 상점 플랫폼에서 OWNER·ADMIN만 바꾼다",
299
+ ),
294
300
  deployWithoutApproval: z
295
301
  .boolean()
296
302
  .optional()
@@ -1479,12 +1485,10 @@ export type CreateStorefrontEditPreviewLinkRequest = z.infer<
1479
1485
  // 1. `GET source` — 지금 작업 트리를 고정하고(`sourceRef`) 압축 파일 크기를 알린다
1480
1486
  // 2. `GET source/archive?sourceRef=&part=` — 압축 파일(tar.gz)을 4MiB씩 받는다
1481
1487
  // 3. `PUT source` — 바꾼 뒤 트리 전체 목록(경로·해시·크기)과 `package.json`·`pnpm-lock.yaml` 내용을 보낸다(의존성 판정). 서버에 없는 내용은 409 `SOURCE_BLOBS_MISSING`이
1482
- // 알려 주고, `POST source/blobs`로 올린 뒤 다시 보낸다. `expectedBaseRef`(내려받은 `sourceRef`)가 지금과 다르면 409 `SOURCE_CHANGED`
1488
+ // 알려 주고, 빠진 내용을 묶음(tar.gz) 하나로 올린 뒤(`POST source/uploads` 서명 주소, 쓸 수 없으면 `POST source/pack`) `pack`을 실어 다시 보낸다. `expectedBaseRef`(내려받은 `sourceRef`)가 지금과 다르면 409 `SOURCE_CHANGED`
1483
1489
 
1484
1490
  /** 압축 파일 조각 하나의 최대 크기(바이트) */
1485
1491
  export const STOREFRONT_SOURCE_PART_BYTES = 4 * 1024 * 1024;
1486
- /** 내용 올리기 한 번의 최대 파일 수 */
1487
- export const STOREFRONT_SOURCE_BLOB_BATCH_MAX = 200;
1488
1492
  /** 작업 트리 파일 수 상한 */
1489
1493
  export const STOREFRONT_WORKSPACE_MAX_FILES = 2000;
1490
1494
 
@@ -1533,61 +1537,41 @@ export const storefrontSourceArchivePartSchema = z.object({
1533
1537
  });
1534
1538
  export type StorefrontSourceArchivePart = z.infer<typeof storefrontSourceArchivePartSchema>;
1535
1539
 
1536
- /** `POST /v1/storefront/site/source/blobs` — 파일 내용 올리기(해시 키, 다시 올려도 안전하다). 작업 트리는 바뀌지 않는다 */
1537
- export const uploadStorefrontSourceBlobsRequestSchema = strictRequest(
1540
+ /**
1541
+ * `POST /v1/storefront/site/source/pack` — 묶음(tar.gz, 항목 이름 = 내용 sha256)을 api를 거쳐 올린다. 저장소 직접 올리기(`POST source/uploads`)를
1542
+ * 쓸 수 없는 환경(503 `SOURCE_UPLOAD_UNAVAILABLE`)에서만 쓴다. 다시 올려도 안전하다. 작업 트리는 바뀌지 않는다
1543
+ */
1544
+ export const uploadStorefrontSourcePackRequestSchema = strictRequest(
1538
1545
  z.object({
1539
- blobs: z
1540
- .array(
1541
- z.object({
1542
- hash: storefrontFileHashSchema,
1543
- content: z.string().describe("파일 내용 (base64, 1MiB까지)"),
1544
- }),
1545
- )
1546
- .min(1)
1547
- .max(STOREFRONT_SOURCE_BLOB_BATCH_MAX),
1546
+ hash: storefrontFileHashSchema.describe("묶음(tar.gz) 바이트의 sha256"),
1547
+ content: z.string().describe("묶음 바이트 (base64)"),
1548
1548
  }),
1549
1549
  );
1550
- export type UploadStorefrontSourceBlobsRequest = z.infer<
1551
- typeof uploadStorefrontSourceBlobsRequestSchema
1550
+ export type UploadStorefrontSourcePackRequest = z.infer<
1551
+ typeof uploadStorefrontSourcePackRequestSchema
1552
1552
  >;
1553
1553
 
1554
- export const storefrontSourceBlobsResultSchema = z.object({
1555
- stored: z.number().int().min(0).describe("새로 올린 수"),
1556
- existing: z.number().int().min(0).describe("이미 있던 수"),
1554
+ export const storefrontSourcePackSchema = z.object({
1555
+ hash: storefrontFileHashSchema,
1556
+ size: z.number().int().min(1).describe("묶음 바이트 수 (`PUT source`의 `pack.size`)"),
1557
1557
  });
1558
- export type StorefrontSourceBlobsResult = z.infer<typeof storefrontSourceBlobsResultSchema>;
1558
+ export type StorefrontSourcePack = z.infer<typeof storefrontSourcePackSchema>;
1559
1559
 
1560
1560
  /**
1561
- * `POST /v1/storefront/site/source/uploads` — 파일 내용을 저장소에 직접 올릴 서명 주소(#181). 내용은 api를 거치지 않는다.
1562
- * 주소마다 `PUT`으로 그 해시의 바이트를 보내고 응답의 `headers`를 그대로 싣는다(저장소가 크기·해시를 검증한다).
1561
+ * `POST /v1/storefront/site/source/uploads` — 묶음을 저장소에 직접 올릴 서명 주소(#181·#351). 내용은 api를 거치지 않는다.
1562
+ * 주소로 `PUT`해 묶음 바이트를 보내고 응답의 `headers`를 그대로 싣는다(저장소가 크기·해시를 검증한다).
1563
1563
  */
1564
1564
  export const createStorefrontSourceUploadsRequestSchema = strictRequest(
1565
- z
1566
- .object({
1567
- blobs: z
1568
- .array(
1569
- z.object({
1570
- hash: storefrontFileHashSchema,
1571
- size: z.number().int().min(0).max(STOREFRONT_FILE_MAX_BYTES).describe("내용 바이트 수"),
1572
- }),
1573
- )
1574
- .min(1)
1575
- .max(STOREFRONT_WORKSPACE_MAX_FILES)
1576
- .optional()
1577
- .describe("파일 내용 하나씩 올릴 주소"),
1578
- pack: z
1579
- .object({
1580
- hash: storefrontFileHashSchema.describe("묶음(tar.gz) 바이트의 sha256"),
1581
- size: z.number().int().min(1).max(STOREFRONT_SOURCE_PACK_MAX_BYTES),
1582
- })
1583
- .optional()
1584
- .describe(
1585
- "빠진 파일 내용을 묶은 tar.gz 하나를 올릴 주소. 항목 이름은 내용의 sha256이다. 응답 `uploads`는 하나이고 `hash`가 묶음 해시다",
1586
- ),
1587
- })
1588
- .refine((body) => (body.blobs === undefined) !== (body.pack === undefined), {
1589
- message: "blobs와 pack 중 하나만 싣습니다",
1590
- }),
1565
+ z.object({
1566
+ pack: z
1567
+ .object({
1568
+ hash: storefrontFileHashSchema.describe("묶음(tar.gz) 바이트의 sha256"),
1569
+ size: z.number().int().min(1).max(STOREFRONT_SOURCE_PACK_MAX_BYTES),
1570
+ })
1571
+ .describe(
1572
+ "빠진 파일 내용을 묶은 tar.gz 하나. 항목 이름은 내용의 sha256이다. 응답 `uploads`는 하나이고 `hash`가 묶음 해시다",
1573
+ ),
1574
+ }),
1591
1575
  );
1592
1576
  export type CreateStorefrontSourceUploadsRequest = z.infer<
1593
1577
  typeof createStorefrontSourceUploadsRequestSchema
@@ -1655,7 +1639,7 @@ export const replaceStorefrontSourceRequestSchema = strictRequest(
1655
1639
  .nullable()
1656
1640
  .optional()
1657
1641
  .describe(
1658
- "새 내용을 올린 묶음(`POST source/uploads`의 `pack`). null이면 묶음으로 올릴 것이라 하나씩 올린 내용을 찾지 않고 빠진 내용만 409 `SOURCE_BLOBS_MISSING`으로 알린다. 생략하면 하나씩 올린 내용을 읽는다(새 내용 800개까지)",
1642
+ "새 내용을 올린 묶음(`POST source/uploads`·`source/pack`). 생략·null이면 지금 작업 트리에 없는 내용을 409 `SOURCE_BLOBS_MISSING`으로 알린다",
1659
1643
  ),
1660
1644
  }),
1661
1645
  );
@@ -1807,6 +1791,25 @@ export const connectStorefrontGitRequestSchema = strictRequest(
1807
1791
  );
1808
1792
  export type ConnectStorefrontGitRequest = z.infer<typeof connectStorefrontGitRequestSchema>;
1809
1793
 
1794
+ /** `PUT /v1/storefront/site/auto-publish` — 배포 뒤 바로 게시(#356). null이면 `sayren.json` `deploy.production`을 따른다 */
1795
+ export const setStorefrontAutoPublishRequestSchema = strictRequest(
1796
+ z.object({
1797
+ autoPublish: z.boolean().nullable(),
1798
+ }),
1799
+ );
1800
+ export type SetStorefrontAutoPublishRequest = z.infer<typeof setStorefrontAutoPublishRequestSchema>;
1801
+
1802
+ /**
1803
+ * 배포(CLI `sayren deploy`·Git 운영 브랜치 push)가 만든 버전을 바로 게시하는가(#356) — 사이트 설정(`autoPublish`)이 있으면 그것,
1804
+ * 없으면 소스의 `sayren.json` `deploy.production`, 그것도 없으면 저장만. CLI `--production`은 이 판정과 무관하게 게시한다
1805
+ */
1806
+ export function resolveStorefrontDeployProduction(
1807
+ siteSetting: boolean | null | undefined,
1808
+ projectSetting: boolean | null | undefined,
1809
+ ): boolean {
1810
+ return siteSetting ?? projectSetting ?? false;
1811
+ }
1812
+
1810
1813
  /** `PUT /v1/storefront/site/deploy-approval` — 승인 없이 배포(#138) */
1811
1814
  export const setStorefrontDeployApprovalRequestSchema = strictRequest(
1812
1815
  z.object({