{"version":3,"sources":["../../src/ecom-v1-checkout-settings-checkout-settings.public.ts","../../src/ecom-v1-checkout-settings-checkout-settings.universal.ts","../../src/ecom-v1-checkout-settings-checkout-settings.http.ts","../../src/ecom-v1-checkout-settings-checkout-settings.context.ts"],"sourcesContent":["import { renameKeysFromRESTResponseToSDKResponse } from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { transformRESTImageToSDKImage } from '@wix/sdk-runtime/transformations/image';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { EventDefinition, HttpClient } from '@wix/sdk-types';\nimport {\n  CheckoutSettings,\n  CheckoutSettingsUpdatedEnvelope,\n  GetCheckoutSettingsResponse,\n  GetCheckoutSettingsResponseNonNullableFields,\n  UpdateCheckoutSettingsResponse,\n  UpdateCheckoutSettingsResponseNonNullableFields,\n  getCheckoutSettings as universalGetCheckoutSettings,\n  updateCheckoutSettings as universalUpdateCheckoutSettings,\n} from './ecom-v1-checkout-settings-checkout-settings.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/ecom' };\n\nexport function getCheckoutSettings(\n  httpClient: HttpClient\n): GetCheckoutSettingsSignature {\n  return () =>\n    universalGetCheckoutSettings(\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GetCheckoutSettingsSignature {\n  /**\n   * Retrieves the sites' checkout settings.\n   *\n   *\n   * The `getCheckoutSettings()` function returns a Promise that resolves to checkout settings.\n   * @returns The requested checkout settings.\n   */\n  (): Promise<\n    GetCheckoutSettingsResponse & GetCheckoutSettingsResponseNonNullableFields\n  >;\n}\n\nexport function updateCheckoutSettings(\n  httpClient: HttpClient\n): UpdateCheckoutSettingsSignature {\n  return (checkoutSettings: CheckoutSettings) =>\n    universalUpdateCheckoutSettings(\n      checkoutSettings,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface UpdateCheckoutSettingsSignature {\n  /**\n   * Updates the sites' checkout settings.\n   *\n   *\n   * The `updateCheckoutSettings()` function returns a Promise that resolves to the newly updated checkout settings.\n   * @param - Checkout settings to update.\n   * @returns The updated checkout settings.\n   */\n  (checkoutSettings: CheckoutSettings): Promise<\n    UpdateCheckoutSettingsResponse &\n      UpdateCheckoutSettingsResponseNonNullableFields\n  >;\n}\n\nexport const onCheckoutSettingsUpdated = EventDefinition(\n  'wix.ecom.v1.checkout_settings_updated',\n  true,\n  (event: CheckoutSettingsUpdatedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'entity.createdDate' },\n            { path: 'entity.updatedDate' },\n            { path: 'metadata.eventTime' },\n          ],\n        },\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: [{ path: 'entity.checkoutBrand.header.logo.image' }],\n        },\n      ])\n    )\n)<CheckoutSettingsUpdatedEnvelope>();\n\nexport {\n  ActionEvent,\n  Alignment,\n  BaseEventMetadata,\n  CheckboxField,\n  CheckoutBrand,\n  CheckoutFields,\n  CheckoutHeader,\n  CheckoutPolicies,\n  CheckoutSettings,\n  CheckoutSettingsUpdatedEnvelope,\n  ContactUsPolicy,\n  CustomCheckoutPolicy,\n  DeleteCheckoutSettingsRequest,\n  DeleteCheckoutSettingsResponse,\n  DigitalItemPolicy,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  Empty,\n  EntityCreatedEvent,\n  EntityDeletedEvent,\n  EntityUpdatedEvent,\n  EventMetadata,\n  FocalPoint,\n  GetCheckoutSettingsRequest,\n  GetCheckoutSettingsResponse,\n  GetCheckoutSettingsResponseNonNullableFields,\n  GiftCardProviderWasProvisioned,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  ListCheckoutSettingsRequest,\n  ListCheckoutSettingsResponse,\n  Logo,\n  LogoSize,\n  MessageEnvelope,\n  PrivacyPolicy,\n  RestoreInfo,\n  ReturnPolicy,\n  TermsAndConditionsPolicy,\n  UpdateCheckoutSettingsRequest,\n  UpdateCheckoutSettingsResponse,\n  UpdateCheckoutSettingsResponseNonNullableFields,\n  WebhookIdentityType,\n} from './ecom-v1-checkout-settings-checkout-settings.universal.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n  renameKeysFromSDKRequestToRESTRequest,\n  renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient } from '@wix/sdk-types';\nimport * as ambassadorWixEcomV1CheckoutSettings from './ecom-v1-checkout-settings-checkout-settings.http.js';\nimport { transformSDKImageToRESTImage } from '@wix/sdk-runtime/transformations/image';\nimport { transformRESTImageToSDKImage } from '@wix/sdk-runtime/transformations/image';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\n\nexport interface CheckoutSettings {\n  /** Checkout policies. */\n  checkoutPolicies?: CheckoutPolicies;\n  /** Settings that apply to checkout fields and the checkout process. */\n  checkoutFields?: CheckoutFields;\n  /** Checkout brand settings. */\n  checkoutBrand?: CheckoutBrand;\n  /**\n   * Date and time the checkout settings were created.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the checkout settings were updated.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n}\n\nexport interface CheckoutPolicies {\n  /** Terms and conditions. */\n  termsAndConditions?: TermsAndConditionsPolicy;\n  /** Privacy policy. */\n  privacyPolicy?: PrivacyPolicy;\n  /** Return policy. */\n  returnPolicy?: ReturnPolicy;\n  /** Digital item policy. */\n  digitalItemPolicy?: DigitalItemPolicy;\n  /** \"Contact us\" information. */\n  contactUs?: ContactUsPolicy;\n  /** Custom policy. */\n  customPolicy?: CustomCheckoutPolicy;\n}\n\nexport interface TermsAndConditionsPolicy {\n  /**\n   * Whether the terms & conditions policy is visible to the customer in the checkout page. <br><br>\n   *\n   * Default: `false`\n   */\n  visible?: boolean | null;\n  /** Terms and conditions policy content. */\n  content?: string | null;\n}\n\nexport interface PrivacyPolicy {\n  /**\n   * Whether the privacy policy is visible to the customer in the checkout page. <br><br>\n   *\n   * Default: `false`\n   */\n  visible?: boolean | null;\n  /** Privacy policy content. */\n  content?: string | null;\n}\n\nexport interface ReturnPolicy {\n  /**\n   * Whether the return policy is visible to the customer in the checkout page. <br><br>\n   *\n   * Default: `false`\n   */\n  visible?: boolean | null;\n  /** Return policy content. */\n  content?: string | null;\n}\n\nexport interface DigitalItemPolicy {\n  /**\n   * Whether the digital item policy is visible to the customer in the checkout page. <br><br>\n   *\n   * Default: `false`\n   */\n  visible?: boolean | null;\n  /** Digital item policy content. */\n  content?: string | null;\n}\n\nexport interface ContactUsPolicy {\n  /**\n   * Whether the contact us policy is visible to the customer in the checkout page. <br><br>\n   *\n   * Default: `false`\n   */\n  visible?: boolean | null;\n  /** Contact us policy content. */\n  content?: string | null;\n}\n\nexport interface CustomCheckoutPolicy {\n  /**\n   * Whether the policy is visible to the customer on the checkout page.\n   * Default: `false`.\n   */\n  visible?: boolean | null;\n  /** Policy content. */\n  content?: string | null;\n  /** Policy title. */\n  title?: string | null;\n}\n\nexport interface CheckoutFields {\n  /**\n   * Subscription checkbox.\n   * Default:\n   * - `visible`: `false`,\n   * - `checkedByDefault`: `false`\n   */\n  subscriptionCheckbox?: CheckboxField;\n  /**\n   * Policy agreement checkbox.\n   * Default:\n   * - `visible`: `true`,\n   * - `checkedByDefault`: `true`\n   */\n  policyAgreementCheckbox?: CheckboxField;\n  /**\n   * Whether the ability to redeem a gift card is enabled.\n   * Default: `false`.\n   */\n  giftCardRedeemEnabled?: boolean | null;\n  /**\n   * Whether to allow for MIT transactions.\n   * Default: `false`.\n   */\n  mitEnabled?: boolean | null;\n  /**\n   * Whether to allow for Auth & Capture transactions. <br><br>\n   *\n   * Default: `false`\n   */\n  delayCaptureEnabled?: boolean | null;\n  /**\n   * Whether to automatically capture the transaction before the authorization expires.\n   *\n   * Default: `true`\n   * >**Note:** this setting is only relevant when `delay_capture_enabled: true`.\n   */\n  captureBeforeExpiryEnabled?: boolean | null;\n}\n\nexport interface CheckboxField {\n  /** Whether the checkbox is visible to the customer. */\n  visible?: boolean | null;\n  /** Whether the checkbox is checked by default. */\n  checkedByDefault?: boolean | null;\n}\n\nexport interface CheckoutBrand {\n  /** Checkout header. */\n  header?: CheckoutHeader;\n}\n\nexport interface CheckoutHeader {\n  /**\n   * Textual content to be included in the header (e.g. Business Name)\n   * TODO: update maxLength validation once limitation is known\n   */\n  text?: string | null;\n  /** Specifications for when a logo is included in the header. */\n  logo?: Logo;\n  /**\n   * Alignment within the header.\n   *\n   * >**Note:** `SIDE` alignment is decided depending on the locale's language. For example, scripts like Hebrew and Arabic will automatically align right-to-left.\n   */\n  alignment?: Alignment;\n  /**\n   * Whether to display the 'Checkout' label within the header.\n   * Depending on the locale, the label may be translated.\n   */\n  displayCheckoutLabel?: boolean | null;\n}\n\nexport interface Logo {\n  /** Size of the logo. */\n  size?: LogoSize;\n}\n\nexport interface FocalPoint {\n  /** X-coordinate of the focal point. */\n  x?: number;\n  /** Y-coordinate of the focal point. */\n  y?: number;\n  /** crop by height */\n  height?: number | null;\n  /** crop by width */\n  width?: number | null;\n}\n\nexport enum LogoSize {\n  UNKNOWN_LOGO_SIZE = 'UNKNOWN_LOGO_SIZE',\n  SMALL = 'SMALL',\n  MEDIUM = 'MEDIUM',\n  LARGE = 'LARGE',\n}\n\nexport enum Alignment {\n  UNKNOWN_ALIGNMENT = 'UNKNOWN_ALIGNMENT',\n  SIDE = 'SIDE',\n  CENTER = 'CENTER',\n}\n\nexport interface GetCheckoutSettingsRequest {}\n\nexport interface GetCheckoutSettingsResponse {\n  /** Checkout settings. */\n  checkoutSettings?: CheckoutSettings;\n}\n\nexport interface UpdateCheckoutSettingsRequest {\n  /** Checkout settings to update. */\n  checkoutSettings: CheckoutSettings;\n}\n\nexport interface UpdateCheckoutSettingsResponse {\n  /** The updated checkout settings. */\n  checkoutSettings?: CheckoutSettings;\n}\n\nexport interface ListCheckoutSettingsRequest {}\n\nexport interface ListCheckoutSettingsResponse {\n  /** List of retrieved checkout settings. */\n  checkoutSettings?: CheckoutSettings[];\n}\n\nexport interface GiftCardProviderWasProvisioned {\n  /** The gift card provider which was installed */\n  providerAppDefId?: string;\n  providerInstanceId?: string;\n}\n\nexport interface Empty {}\n\nexport interface DeleteCheckoutSettingsRequest {}\n\nexport interface DeleteCheckoutSettingsResponse {}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n  /**\n   * Unique event ID.\n   * Allows clients to ignore duplicate webhooks.\n   */\n  _id?: string;\n  /**\n   * Assumes actions are also always typed to an entity_type\n   * Example: wix.stores.catalog.product, wix.bookings.session, wix.payments.transaction\n   */\n  entityFqdn?: string;\n  /**\n   * This is top level to ease client code dispatching of messages (switch on entity_fqdn+slug)\n   * This is although the created/updated/deleted notion is duplication of the oneof types\n   * Example: created/updated/deleted/started/completed/email_opened\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example: 2020-04-26T13:57:50.699Z */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number defining the order of updates to the underlying entity.\n   * For example, given that some entity was updated at 16:00 and than again at 16:01,\n   * it is guaranteed that the sequence number of the second update is strictly higher than the first.\n   * As the consumer, you can use this value to ensure that you handle messages in the correct order.\n   * To do so, you will need to persist this number on your end, and compare the sequence number from the\n   * message against the one you have stored. Given that the stored number is higher, you should ignore the message.\n   */\n  entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n  entity?: string;\n}\n\nexport interface RestoreInfo {\n  deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n  /**\n   * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n   * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n   * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n   */\n  currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n  /** Entity that was deleted */\n  deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n  body?: string;\n}\n\nexport interface MessageEnvelope {\n  /** App instance ID. */\n  instanceId?: string | null;\n  /** Event type. */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n  /** Stringify payload. */\n  data?: string;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n  /** ID of a site visitor that has not logged in to the site. */\n  anonymousVisitorId?: string;\n  /** ID of a site visitor that has logged in to the site. */\n  memberId?: string;\n  /** ID of a Wix user (site owner, contributor, etc.). */\n  wixUserId?: string;\n  /** ID of an app. */\n  appId?: string;\n  /** @readonly */\n  identityType?: WebhookIdentityType;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n  /** ID of a site visitor that has not logged in to the site. */\n  anonymousVisitorId?: string;\n  /** ID of a site visitor that has logged in to the site. */\n  memberId?: string;\n  /** ID of a Wix user (site owner, contributor, etc.). */\n  wixUserId?: string;\n  /** ID of an app. */\n  appId?: string;\n}\n\nexport enum WebhookIdentityType {\n  UNKNOWN = 'UNKNOWN',\n  ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n  MEMBER = 'MEMBER',\n  WIX_USER = 'WIX_USER',\n  APP = 'APP',\n}\n\ninterface LogoNonNullableFields {\n  /** @internal */\n  image: string;\n  size: LogoSize;\n}\n\ninterface CheckoutHeaderNonNullableFields {\n  logo?: LogoNonNullableFields;\n  alignment: Alignment;\n}\n\ninterface CheckoutBrandNonNullableFields {\n  header?: CheckoutHeaderNonNullableFields;\n}\n\ninterface CheckoutSettingsNonNullableFields {\n  checkoutBrand?: CheckoutBrandNonNullableFields;\n}\n\nexport interface GetCheckoutSettingsResponseNonNullableFields {\n  checkoutSettings?: CheckoutSettingsNonNullableFields;\n}\n\nexport interface UpdateCheckoutSettingsResponseNonNullableFields {\n  checkoutSettings?: CheckoutSettingsNonNullableFields;\n}\n\nexport interface BaseEventMetadata {\n  /** App instance ID. */\n  instanceId?: string | null;\n  /** Event type. */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n}\n\nexport interface EventMetadata extends BaseEventMetadata {\n  /**\n   * Unique event ID.\n   * Allows clients to ignore duplicate webhooks.\n   */\n  _id?: string;\n  /**\n   * Assumes actions are also always typed to an entity_type\n   * Example: wix.stores.catalog.product, wix.bookings.session, wix.payments.transaction\n   */\n  entityFqdn?: string;\n  /**\n   * This is top level to ease client code dispatching of messages (switch on entity_fqdn+slug)\n   * This is although the created/updated/deleted notion is duplication of the oneof types\n   * Example: created/updated/deleted/started/completed/email_opened\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example: 2020-04-26T13:57:50.699Z */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number defining the order of updates to the underlying entity.\n   * For example, given that some entity was updated at 16:00 and than again at 16:01,\n   * it is guaranteed that the sequence number of the second update is strictly higher than the first.\n   * As the consumer, you can use this value to ensure that you handle messages in the correct order.\n   * To do so, you will need to persist this number on your end, and compare the sequence number from the\n   * message against the one you have stored. Given that the stored number is higher, you should ignore the message.\n   */\n  entityEventSequence?: string | null;\n}\n\nexport interface CheckoutSettingsUpdatedEnvelope {\n  entity: CheckoutSettings;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when checkout settings are updated.\n * @permissionScope Manage Stores - all permissions\n * @permissionScopeId SCOPE.DC-STORES-MEGA.MANAGE-STORES\n * @permissionScope Read eCommerce - all read permissions\n * @permissionScopeId SCOPE.DC-ECOM-MEGA.READ-ECOM\n * @permissionScope Read Orders\n * @permissionScopeId SCOPE.DC-STORES.READ-ORDERS\n * @permissionScope Read Stores - all read permissions\n * @permissionScopeId SCOPE.DC-STORES-MEGA.READ-STORES\n * @permissionScope Manage Restaurants - all permissions\n * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES\n * @permissionScope Manage eCommerce - all permissions\n * @permissionScopeId SCOPE.DC-ECOM-MEGA.MANAGE-ECOM\n * @permissionScope Manage Orders\n * @permissionScopeId SCOPE.DC-STORES.MANAGE-ORDERS\n * @permissionId ECOM.READ_CHECKOUT_SETTINGS\n * @webhook\n * @eventType wix.ecom.v1.checkout_settings_updated\n */\nexport declare function onCheckoutSettingsUpdated(\n  handler: (event: CheckoutSettingsUpdatedEnvelope) => void | Promise<void>\n): void;\n\n/**\n * Retrieves the sites' checkout settings.\n *\n *\n * The `getCheckoutSettings()` function returns a Promise that resolves to checkout settings.\n * @public\n * @permissionId ECOM.READ_CHECKOUT_SETTINGS\n * @permissionScope Manage Stores - all permissions\n * @permissionScopeId SCOPE.DC-STORES-MEGA.MANAGE-STORES\n * @permissionScope Read eCommerce - all read permissions\n * @permissionScopeId SCOPE.DC-ECOM-MEGA.READ-ECOM\n * @permissionScope Read Orders\n * @permissionScopeId SCOPE.DC-STORES.READ-ORDERS\n * @permissionScope Read Stores - all read permissions\n * @permissionScopeId SCOPE.DC-STORES-MEGA.READ-STORES\n * @permissionScope Manage Restaurants - all permissions\n * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES\n * @permissionScope Manage eCommerce - all permissions\n * @permissionScopeId SCOPE.DC-ECOM-MEGA.MANAGE-ECOM\n * @permissionScope Manage Orders\n * @permissionScopeId SCOPE.DC-STORES.MANAGE-ORDERS\n * @applicableIdentity APP\n * @applicableIdentity VISITOR\n * @returns The requested checkout settings.\n * @fqn wix.ecom.checkout_settings.api.v1.CheckoutSettingsService.GetCheckoutSettings\n */\nexport async function getCheckoutSettings(): Promise<\n  GetCheckoutSettingsResponse & GetCheckoutSettingsResponseNonNullableFields\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[0] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({});\n\n  const reqOpts =\n    ambassadorWixEcomV1CheckoutSettings.getCheckoutSettings(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: [{ path: 'checkoutSettings.checkoutBrand.header.logo.image' }],\n        },\n      ])\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {},\n        singleArgumentUnchanged: false,\n      },\n      []\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Updates the sites' checkout settings.\n *\n *\n * The `updateCheckoutSettings()` function returns a Promise that resolves to the newly updated checkout settings.\n * @param checkoutSettings - Checkout settings to update.\n * @public\n * @requiredField checkoutSettings\n * @permissionId ECOM.UPDATE_CHECKOUT_SETTINGS\n * @permissionScope Manage Stores - all permissions\n * @permissionScopeId SCOPE.DC-STORES-MEGA.MANAGE-STORES\n * @permissionScope Manage Restaurants - all permissions\n * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES\n * @permissionScope Manage eCommerce - all permissions\n * @permissionScopeId SCOPE.DC-ECOM-MEGA.MANAGE-ECOM\n * @permissionScope Manage Orders\n * @permissionScopeId SCOPE.DC-STORES.MANAGE-ORDERS\n * @applicableIdentity APP\n * @returns The updated checkout settings.\n * @fqn wix.ecom.checkout_settings.api.v1.CheckoutSettingsService.UpdateCheckoutSettings\n */\nexport async function updateCheckoutSettings(\n  checkoutSettings: CheckoutSettings\n): Promise<\n  UpdateCheckoutSettingsResponse &\n    UpdateCheckoutSettingsResponseNonNullableFields\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest({\n      checkoutSettings: checkoutSettings,\n    }),\n    [\n      {\n        transformFn: transformSDKImageToRESTImage,\n        paths: [{ path: 'checkoutSettings.checkoutBrand.header.logo.image' }],\n      },\n    ]\n  );\n\n  const reqOpts =\n    ambassadorWixEcomV1CheckoutSettings.updateCheckoutSettings(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTImageToSDKImage,\n          paths: [{ path: 'checkoutSettings.checkoutBrand.header.logo.image' }],\n        },\n      ])\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { checkoutSettings: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['checkoutSettings']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKFloatToRESTFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformSDKFieldMaskToRESTFieldMask } from '@wix/sdk-runtime/transformations/field-mask';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixEcomCheckoutSettingsApiV1CheckoutSettingsServiceUrl(\n  opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n  const domainToMappings = {\n    'api._api_base_domain_': [\n      {\n        srcPath: '/checkout-settings',\n        destPath: '',\n      },\n    ],\n    'manage._base_domain_': [\n      {\n        srcPath: '/ecom/v1/checkout-settings',\n        destPath: '/v1/checkout-settings',\n      },\n    ],\n    'www.wixapis.com': [\n      {\n        srcPath: '/ecom/v1/checkout-settings',\n        destPath: '/v1/checkout-settings',\n      },\n    ],\n  };\n\n  return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_ecom_checkout-settings';\n\n/**\n * Retrieves the sites' checkout settings.\n *\n *\n * The `getCheckoutSettings()` function returns a Promise that resolves to checkout settings.\n */\nexport function getCheckoutSettings(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __getCheckoutSettings({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.ecom.v1.checkout_settings',\n      method: 'GET' as any,\n      methodFqn:\n        'wix.ecom.checkout_settings.api.v1.CheckoutSettingsService.GetCheckoutSettings',\n      packageName: PACKAGE_NAME,\n      url: resolveWixEcomCheckoutSettingsApiV1CheckoutSettingsServiceUrl({\n        protoPath: '/v1/checkout-settings',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'checkoutSettings.createdDate' },\n              { path: 'checkoutSettings.updatedDate' },\n              {\n                path: 'checkoutSettings.checkoutBrand.header.logo.image.urlExpirationDate',\n              },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              {\n                path: 'checkoutSettings.checkoutBrand.header.logo.image.focalPoint.x',\n              },\n              {\n                path: 'checkoutSettings.checkoutBrand.header.logo.image.focalPoint.y',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __getCheckoutSettings;\n}\n\n/**\n * Updates the sites' checkout settings.\n *\n *\n * The `updateCheckoutSettings()` function returns a Promise that resolves to the newly updated checkout settings.\n */\nexport function updateCheckoutSettings(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __updateCheckoutSettings({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFieldMaskToRESTFieldMask,\n        paths: [{ path: 'fieldMask' }],\n      },\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'checkoutSettings.createdDate' },\n          { path: 'checkoutSettings.updatedDate' },\n          {\n            path: 'checkoutSettings.checkoutBrand.header.logo.image.urlExpirationDate',\n          },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          {\n            path: 'checkoutSettings.checkoutBrand.header.logo.image.focalPoint.x',\n          },\n          {\n            path: 'checkoutSettings.checkoutBrand.header.logo.image.focalPoint.y',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.ecom.v1.checkout_settings',\n      method: 'PATCH' as any,\n      methodFqn:\n        'wix.ecom.checkout_settings.api.v1.CheckoutSettingsService.UpdateCheckoutSettings',\n      packageName: PACKAGE_NAME,\n      url: resolveWixEcomCheckoutSettingsApiV1CheckoutSettingsServiceUrl({\n        protoPath: '/v1/checkout-settings',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'checkoutSettings.createdDate' },\n              { path: 'checkoutSettings.updatedDate' },\n              {\n                path: 'checkoutSettings.checkoutBrand.header.logo.image.urlExpirationDate',\n              },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              {\n                path: 'checkoutSettings.checkoutBrand.header.logo.image.focalPoint.x',\n              },\n              {\n                path: 'checkoutSettings.checkoutBrand.header.logo.image.focalPoint.y',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __updateCheckoutSettings;\n}\n","import {\n  getCheckoutSettings as publicGetCheckoutSettings,\n  updateCheckoutSettings as publicUpdateCheckoutSettings,\n} from './ecom-v1-checkout-settings-checkout-settings.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { createEventModule } from '@wix/sdk-runtime/event-definition-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\nimport { onCheckoutSettingsUpdated as publicOnCheckoutSettingsUpdated } from './ecom-v1-checkout-settings-checkout-settings.public.js';\n\nexport const getCheckoutSettings: MaybeContext<\n  BuildRESTFunction<typeof publicGetCheckoutSettings> &\n    typeof publicGetCheckoutSettings\n> = /*#__PURE__*/ createRESTModule(publicGetCheckoutSettings);\nexport const updateCheckoutSettings: MaybeContext<\n  BuildRESTFunction<typeof publicUpdateCheckoutSettings> &\n    typeof publicUpdateCheckoutSettings\n> = /*#__PURE__*/ createRESTModule(publicUpdateCheckoutSettings);\n/**\n * Triggered when checkout settings are updated.\n */\nexport const onCheckoutSettingsUpdated: ReturnType<\n  typeof createEventModule<typeof publicOnCheckoutSettingsUpdated>\n> = createEventModule(publicOnCheckoutSettingsUpdated);\n\nexport {\n  LogoSize,\n  Alignment,\n  WebhookIdentityType,\n} from './ecom-v1-checkout-settings-checkout-settings.universal.js';\nexport {\n  CheckoutSettings,\n  CheckoutPolicies,\n  TermsAndConditionsPolicy,\n  PrivacyPolicy,\n  ReturnPolicy,\n  DigitalItemPolicy,\n  ContactUsPolicy,\n  CustomCheckoutPolicy,\n  CheckoutFields,\n  CheckboxField,\n  CheckoutBrand,\n  CheckoutHeader,\n  Logo,\n  FocalPoint,\n  GetCheckoutSettingsRequest,\n  GetCheckoutSettingsResponse,\n  UpdateCheckoutSettingsRequest,\n  UpdateCheckoutSettingsResponse,\n  ListCheckoutSettingsRequest,\n  ListCheckoutSettingsResponse,\n  GiftCardProviderWasProvisioned,\n  Empty,\n  DeleteCheckoutSettingsRequest,\n  DeleteCheckoutSettingsResponse,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  EntityCreatedEvent,\n  RestoreInfo,\n  EntityUpdatedEvent,\n  EntityDeletedEvent,\n  ActionEvent,\n  MessageEnvelope,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  GetCheckoutSettingsResponseNonNullableFields,\n  UpdateCheckoutSettingsResponseNonNullableFields,\n  BaseEventMetadata,\n  EventMetadata,\n  CheckoutSettingsUpdatedEnvelope,\n} from './ecom-v1-checkout-settings-checkout-settings.universal.js';\n"],"mappings":"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","names":["renameKeysFromRESTResponseToSDKResponse","transformRESTImageToSDKImage","transformRESTTimestampToSDKTimestamp","transformPaths","payload","transformPaths","LogoSize","Alignment","WebhookIdentityType","getCheckoutSettings","updateCheckoutSettings","getCheckoutSettings","updateCheckoutSettings","renameKeysFromRESTResponseToSDKResponse","transformPaths","transformRESTTimestampToSDKTimestamp","transformRESTImageToSDKImage","getCheckoutSettings","updateCheckoutSettings","onCheckoutSettingsUpdated"]}