{"version":3,"sources":["../../src/email-marketing-v1-account-details-account-details.universal.ts","../../src/email-marketing-v1-account-details-account-details.http.ts"],"sourcesContent":["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, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixEmailMarketingV1AccountDetails from './email-marketing-v1-account-details-account-details.http.js';\n\n/**\n * An account can be active or in some state of suspension (warned/suspended/banned).\n * If a user is in a state of suspension they must visit their email marketing account in the dashboard and follow the instructions.\n */\nexport interface AccountDetails {\n  /** Account status. */\n  status?: EnumWithLiterals;\n  /** Current premium package information. */\n  package?: Package;\n  /** Quota period and usage. */\n  quotaPeriod?: QuotaPeriod;\n  /** Max number of recipients for an email marketing campaign. Exceeding this limit may lead to campaigns being rejected. */\n  maxCampaignAudienceSize?: number;\n}\n\nexport enum Enum {\n  /** Able to use email marketing normally. */\n  ACTIVE = 'ACTIVE',\n  /** Must explicitly agree to terms of use to activate the account. */\n  WARNED = 'WARNED',\n  /** Must fill out compliance questionnaire, unable to use email marketing. */\n  SUSPENDED = 'SUSPENDED',\n  /** Must fill out compliance questionnaire, unable to use email marketing. */\n  BANNED = 'BANNED',\n  /** Must fill out compliance questionnaire to activate the account. */\n  SUSPENDED_AUTOLIFT = 'SUSPENDED_AUTOLIFT',\n}\n\n/** @enumType */\nexport type EnumWithLiterals =\n  | Enum\n  | 'ACTIVE'\n  | 'WARNED'\n  | 'SUSPENDED'\n  | 'BANNED'\n  | 'SUSPENDED_AUTOLIFT';\n\nexport interface Package {\n  /** Package ID. */\n  _id?: string;\n  /** Package group. */\n  group?: string;\n  /** Allocated quota per month. */\n  monthlyQuotaAllocation?: Quota;\n}\n\nexport interface Quota {\n  /** Number of allocated marketing campaigns per month (-1 means unlimited). */\n  campaigns?: number;\n  /** Number of allocated individual emails per month. */\n  emails?: number;\n}\n\nexport enum BillingCycle {\n  UNKNOWN = 'UNKNOWN',\n  TWO_YEARS = 'TWO_YEARS',\n  YEARLY = 'YEARLY',\n  MONTHLY = 'MONTHLY',\n}\n\n/** @enumType */\nexport type BillingCycleWithLiterals =\n  | BillingCycle\n  | 'UNKNOWN'\n  | 'TWO_YEARS'\n  | 'YEARLY'\n  | 'MONTHLY';\n\nexport interface QuotaPeriod {\n  /** Current quota period start date. */\n  dateFrom?: Date | null;\n  /** Current quota period end date - after which quota will roll over. */\n  dateTo?: Date | null;\n  /** Information about allocated quota already used in this period. */\n  quotaUsage?: Quota;\n}\n\nexport interface Features {\n  multipleSenderDetails?: boolean;\n  removeWixBranding?: boolean;\n  scheduling?: boolean;\n}\n\nexport enum Rank {\n  /** No reputation has been established (new site or didn't have enough traffic in the recent time period). */\n  NEW = 'NEW',\n  /** Has traffic and it's quality is good. */\n  GOOD = 'GOOD',\n  /** Has traffic but it's quality is bad. */\n  BAD = 'BAD',\n}\n\n/** @enumType */\nexport type RankWithLiterals = Rank | 'NEW' | 'GOOD' | 'BAD';\n\nexport interface GetAccountDetailsRequest {}\n\nexport interface GetAccountDetailsResponse {\n  /** Current account details. */\n  accountDetails?: AccountDetails;\n}\n\nexport interface GetComplianceDetailsRequest {}\n\nexport interface GetComplianceDetailsResponse {\n  /** Current compliance details. */\n  complianceDetails?: ComplianceDetails;\n}\n\nexport interface ComplianceDetails\n  extends ComplianceDetailsProductOptionsOneOf {\n  emailMarketingOptions?: EmailMarketingOptions;\n  automationOptions?: AutomationOptions;\n  /** Account status. */\n  status?: EnumWithLiterals;\n  /**\n   * Suspension reasons.\n   * @maxSize 10\n   * @maxLength 100\n   */\n  suspensionReasons?: string[];\n  /**\n   * Support ticket id.\n   * @format GUID\n   */\n  supportTicketId?: string | null;\n  /** product */\n  product?: ProductWithLiterals;\n  /**\n   * reasons for the restriction action\n   * @maxSize 10\n   */\n  restrictionReasons?: RestrictionReason[];\n}\n\n/** @oneof */\nexport interface ComplianceDetailsProductOptionsOneOf {\n  emailMarketingOptions?: EmailMarketingOptions;\n  automationOptions?: AutomationOptions;\n}\n\nexport enum Product {\n  UNSPECIFIED = 'UNSPECIFIED',\n  EMAIL_MARKETING = 'EMAIL_MARKETING',\n  AUTOMATION = 'AUTOMATION',\n}\n\n/** @enumType */\nexport type ProductWithLiterals =\n  | Product\n  | 'UNSPECIFIED'\n  | 'EMAIL_MARKETING'\n  | 'AUTOMATION';\n\nexport interface EmailMarketingOptions {\n  /** @format GUID */\n  campaignId?: string | null;\n}\n\nexport interface AutomationOptions {\n  /** @format GUID */\n  automationId?: string | null;\n  /** @format GUID */\n  campaignId?: string | null;\n}\n\nexport interface RestrictionReason extends RestrictionReasonTypeOneOf {\n  content?: ContentWithLiterals;\n  senderReputation?: SenderReputationWithLiterals;\n  statistics?: StatisticsWithLiterals;\n  value?: string | null;\n}\n\n/** @oneof */\nexport interface RestrictionReasonTypeOneOf {\n  content?: ContentWithLiterals;\n  senderReputation?: SenderReputationWithLiterals;\n  statistics?: StatisticsWithLiterals;\n}\n\nexport enum Content {\n  TEXT = 'TEXT',\n  LINK = 'LINK',\n  IMAGE = 'IMAGE',\n  EMAIL_SUBJECT = 'EMAIL_SUBJECT',\n  SENDER_NAME = 'SENDER_NAME',\n  SENDER_EMAIL = 'SENDER_EMAIL',\n}\n\n/** @enumType */\nexport type ContentWithLiterals =\n  | Content\n  | 'TEXT'\n  | 'LINK'\n  | 'IMAGE'\n  | 'EMAIL_SUBJECT'\n  | 'SENDER_NAME'\n  | 'SENDER_EMAIL';\n\nexport enum SenderReputation {\n  DOMAIN_BLOCKLISTED = 'DOMAIN_BLOCKLISTED',\n  SENDER_EMAIL_PATTERN = 'SENDER_EMAIL_PATTERN',\n  SENDER_EMAIL_DISPOSABLE = 'SENDER_EMAIL_DISPOSABLE',\n  SENDER_EMAIL_UNDELIVERABLE = 'SENDER_EMAIL_UNDELIVERABLE',\n  DNS_RECORDS_INCOMPLETE = 'DNS_RECORDS_INCOMPLETE',\n  OTHER = 'OTHER',\n}\n\n/** @enumType */\nexport type SenderReputationWithLiterals =\n  | SenderReputation\n  | 'DOMAIN_BLOCKLISTED'\n  | 'SENDER_EMAIL_PATTERN'\n  | 'SENDER_EMAIL_DISPOSABLE'\n  | 'SENDER_EMAIL_UNDELIVERABLE'\n  | 'DNS_RECORDS_INCOMPLETE'\n  | 'OTHER';\n\nexport enum Statistics {\n  SPAM_COMPLAINTS = 'SPAM_COMPLAINTS',\n  BOUNCES = 'BOUNCES',\n  LOW_ENGAGEMENT = 'LOW_ENGAGEMENT',\n  SPAM_TRAPS = 'SPAM_TRAPS',\n}\n\n/** @enumType */\nexport type StatisticsWithLiterals =\n  | Statistics\n  | 'SPAM_COMPLAINTS'\n  | 'BOUNCES'\n  | 'LOW_ENGAGEMENT'\n  | 'SPAM_TRAPS';\n\nexport interface RespondRequest {\n  action?: ActionWithLiterals;\n  supportTicketData?: SupportTicketData;\n}\n\nexport enum Action {\n  AGREE_TO_TERMS = 'AGREE_TO_TERMS',\n  OPEN_TICKET = 'OPEN_TICKET',\n  FILL_FORM = 'FILL_FORM',\n  ANSWER_QUESTIONS = 'ANSWER_QUESTIONS',\n  FILL_AUTOLIFT_FORM = 'FILL_AUTOLIFT_FORM',\n  FILL_SHORT_FORM = 'FILL_SHORT_FORM',\n  FILL_SHORT_AUTOLIFT_FORM = 'FILL_SHORT_AUTOLIFT_FORM',\n}\n\n/** @enumType */\nexport type ActionWithLiterals =\n  | Action\n  | 'AGREE_TO_TERMS'\n  | 'OPEN_TICKET'\n  | 'FILL_FORM'\n  | 'ANSWER_QUESTIONS'\n  | 'FILL_AUTOLIFT_FORM'\n  | 'FILL_SHORT_FORM'\n  | 'FILL_SHORT_AUTOLIFT_FORM';\n\nexport interface SupportTicketData {\n  /** @maxLength 200 */\n  subject?: string;\n  /** @maxLength 20000 */\n  body?: string;\n  /** @maxLength 20000 */\n  agentReplyBody?: string | null;\n}\n\nexport interface RespondResponse {\n  /**\n   * ID of the support ticket created (optional).\n   * @format GUID\n   */\n  supportTicketId?: string | null;\n}\n\n/**\n * Retrieves email marketing account details.\n * @public\n * @permissionId Shoutout.Manage\n * @applicableIdentity APP\n * @fqn wix.emailmarketing.api.v1.AccountDetailsService.Get\n */\nexport async function getAccountDetails(): Promise<\n  NonNullablePaths<\n    GetAccountDetailsResponse,\n    | `accountDetails.status`\n    | `accountDetails.package._id`\n    | `accountDetails.package.group`\n    | `accountDetails.package.monthlyQuotaAllocation.campaigns`\n    | `accountDetails.package.monthlyQuotaAllocation.emails`\n    | `accountDetails.maxCampaignAudienceSize`,\n    5\n  >\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 = ambassadorWixEmailMarketingV1AccountDetails.get(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\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","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\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 resolveWixEmailmarketingApiV1AccountDetailsServiceUrl(\n  opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n  const domainToMappings = {\n    'manage._base_domain_': [\n      {\n        srcPath: '/_api/shoutout/v1/account-details',\n        destPath: '/v1/account-details',\n      },\n    ],\n    'www.wixapis.com': [\n      {\n        srcPath: '/email-marketing/v1/account-details',\n        destPath: '/v1/account-details',\n      },\n    ],\n    '*.dev.wix-code.com': [\n      {\n        srcPath: '/email-marketing/v1/account-details',\n        destPath: '/v1/account-details',\n      },\n    ],\n    _: [\n      {\n        srcPath: '/email-marketing/v1/account-details',\n        destPath: '/v1/account-details',\n      },\n    ],\n    'payments.base44.com': [\n      {\n        srcPath: '/_api/shoutout/v1/account-details',\n        destPath: '/v1/account-details',\n      },\n    ],\n  };\n\n  return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_email-marketing_account-details';\n\n/** Retrieves email marketing account details. */\nexport function get(payload: object): RequestOptionsFactory<any> {\n  function __get({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.email_marketing.v1.account_details',\n      method: 'GET' as any,\n      methodFqn: 'wix.emailmarketing.api.v1.AccountDetailsService.Get',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixEmailmarketingApiV1AccountDetailsServiceUrl({\n        protoPath: '/v1/account-details',\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: 'accountDetails.quotaPeriod.dateFrom' },\n              { path: 'accountDetails.quotaPeriod.dateTo' },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __get;\n}\n"],"mappings":";AAAA,SAAS,kBAAkB,yBAAyB;AACpD;AAAA,EACE;AAAA,EACA;AAAA,OACK;;;ACJP,SAAS,yBAAyB;AAClC,SAAS,4CAA4C;AACrD,SAAS,sBAAsB;AAC/B,SAAS,kBAAkB;AAI3B,SAAS,sDACP,MACA;AACA,QAAM,mBAAmB;AAAA,IACvB,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,mBAAmB;AAAA,MACjB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,sBAAsB;AAAA,MACpB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,GAAG;AAAA,MACD;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,uBAAuB;AAAA,MACrB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAEA,SAAO,WAAW,OAAO,OAAO,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAC7D;AAEA,IAAM,eAAe;AAGd,SAAS,IAAI,SAA6C;AAC/D,WAAS,MAAM,EAAE,KAAK,GAAQ;AAC5B,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WAAW;AAAA,MACX,aAAa;AAAA,MACb,kBAAkB;AAAA,QAChB,wBAAwB;AAAA,MAC1B;AAAA,MACA,KAAK,sDAAsD;AAAA,QACzD,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,QAAQ,kBAAkB,OAAO;AAAA,MACjC,mBAAmB,CAACA,aAClB,eAAeA,UAAS;AAAA,QACtB;AAAA,UACE,aAAa;AAAA,UACb,OAAO;AAAA,YACL,EAAE,MAAM,sCAAsC;AAAA,YAC9C,EAAE,MAAM,oCAAoC;AAAA,UAC9C;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACL;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;;;AD1DO,IAAK,OAAL,kBAAKC,UAAL;AAEL,EAAAA,MAAA,YAAS;AAET,EAAAA,MAAA,YAAS;AAET,EAAAA,MAAA,eAAY;AAEZ,EAAAA,MAAA,YAAS;AAET,EAAAA,MAAA,wBAAqB;AAVX,SAAAA;AAAA,GAAA;AAsCL,IAAK,eAAL,kBAAKC,kBAAL;AACL,EAAAA,cAAA,aAAU;AACV,EAAAA,cAAA,eAAY;AACZ,EAAAA,cAAA,YAAS;AACT,EAAAA,cAAA,aAAU;AAJA,SAAAA;AAAA,GAAA;AA8BL,IAAK,OAAL,kBAAKC,UAAL;AAEL,EAAAA,MAAA,SAAM;AAEN,EAAAA,MAAA,UAAO;AAEP,EAAAA,MAAA,SAAM;AANI,SAAAA;AAAA,GAAA;AA0DL,IAAK,UAAL,kBAAKC,aAAL;AACL,EAAAA,SAAA,iBAAc;AACd,EAAAA,SAAA,qBAAkB;AAClB,EAAAA,SAAA,gBAAa;AAHH,SAAAA;AAAA,GAAA;AAuCL,IAAK,UAAL,kBAAKC,aAAL;AACL,EAAAA,SAAA,UAAO;AACP,EAAAA,SAAA,UAAO;AACP,EAAAA,SAAA,WAAQ;AACR,EAAAA,SAAA,mBAAgB;AAChB,EAAAA,SAAA,iBAAc;AACd,EAAAA,SAAA,kBAAe;AANL,SAAAA;AAAA,GAAA;AAmBL,IAAK,mBAAL,kBAAKC,sBAAL;AACL,EAAAA,kBAAA,wBAAqB;AACrB,EAAAA,kBAAA,0BAAuB;AACvB,EAAAA,kBAAA,6BAA0B;AAC1B,EAAAA,kBAAA,gCAA6B;AAC7B,EAAAA,kBAAA,4BAAyB;AACzB,EAAAA,kBAAA,WAAQ;AANE,SAAAA;AAAA,GAAA;AAmBL,IAAK,aAAL,kBAAKC,gBAAL;AACL,EAAAA,YAAA,qBAAkB;AAClB,EAAAA,YAAA,aAAU;AACV,EAAAA,YAAA,oBAAiB;AACjB,EAAAA,YAAA,gBAAa;AAJH,SAAAA;AAAA,GAAA;AAoBL,IAAK,SAAL,kBAAKC,YAAL;AACL,EAAAA,QAAA,oBAAiB;AACjB,EAAAA,QAAA,iBAAc;AACd,EAAAA,QAAA,eAAY;AACZ,EAAAA,QAAA,sBAAmB;AACnB,EAAAA,QAAA,wBAAqB;AACrB,EAAAA,QAAA,qBAAkB;AAClB,EAAAA,QAAA,8BAA2B;AAPjB,SAAAA;AAAA,GAAA;AA6CZ,eAAsB,oBAWpB;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,UAAU,sCAAsC,CAAC,CAAC;AAExD,QAAM,UAAsD,IAAI,OAAO;AAEvE,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,WAAO,wCAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,mBAAmB;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,CAAC;AAAA,QAC3B,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC;AAAA,IACH;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;","names":["payload","Enum","BillingCycle","Rank","Product","Content","SenderReputation","Statistics","Action"]}