{"version":3,"file":"js/services.xxxxxxxxxxxxxxxxxxxx.js","mappings":"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","sources":["webpack://zenbusiness.com/./src/client/services/BaseAPIService.js","webpack://zenbusiness.com/./src/client/services/AccountService.js","webpack://zenbusiness.com/./src/client/services/converters/AccountConverter.js","webpack://zenbusiness.com/./src/client/services/FintechService.js","webpack://zenbusiness.com/./src/client/services/AmendmentService.js","webpack://zenbusiness.com/./src/client/services/AnnualReportService.js","webpack://zenbusiness.com/./src/client/services/CompanyService.js","webpack://zenbusiness.com/./src/client/services/ContactUsService.js","webpack://zenbusiness.com/./src/client/services/CorpStockService.js","webpack://zenbusiness.com/./src/client/services/DomainNameService.js","webpack://zenbusiness.com/./src/client/services/InitializationService.js","webpack://zenbusiness.com/./src/client/services/OrderService.js","webpack://zenbusiness.com/./src/client/services/converters/BaseDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/AccountingConverter.js","webpack://zenbusiness.com/./src/client/services/converters/WorryFreeDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/AnnualReportConverter.js","webpack://zenbusiness.com/./src/client/services/converters/AmendmentConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BankingConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BankingResolutionDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BusinessKitConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BeneficialOwnershipFilingConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BeneficialOwnershipFilingOngoingConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BOFModificationOrder.js","webpack://zenbusiness.com/./src/client/services/converters/OpAgreeDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BasicEmailConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BusLicDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/CoRADataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/AnonymityConverter.js","webpack://zenbusiness.com/./src/client/services/converters/CorporateDocsDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/CPAConsultConverter.js","webpack://zenbusiness.com/./src/client/services/converters/DomainNamePrivacyDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/DomainNameDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/EINDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/ExpediteDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/ExpediteUpsellDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/InitialCPAScreeningConverter.js","webpack://zenbusiness.com/./src/client/services/converters/NYPubDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/RegAgentDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/PlanLevelDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/SCorpDesignationConverter.js","webpack://zenbusiness.com/./src/client/services/converters/StaticWebsiteDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/TaxPreparationConverter.js","webpack://zenbusiness.com/./src/client/services/converters/AnnualReportServiceConverter.js","webpack://zenbusiness.com/./src/client/services/converters/Accountant1800Converter.js","webpack://zenbusiness.com/./src/client/services/converters/WebsiteToolsBundleConverter.js","webpack://zenbusiness.com/./src/client/services/converters/EINBusinessDocsBundleConverter.js","webpack://zenbusiness.com/./src/client/services/converters/ZBMProDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/TruicZBMProDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/ZbBankingPreferredDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/zbTaxAdviceConverter.js","webpack://zenbusiness.com/./src/client/services/converters/zbBizTaxPrepConverter.js","webpack://zenbusiness.com/./src/client/services/converters/zbTaxAdviceBizTaxPrepConverter.js","webpack://zenbusiness.com/./src/client/services/converters/einBizDocsOaBundleConverter.js","webpack://zenbusiness.com/./src/client/services/converters/bizDocsBlrBundleConverter.js","webpack://zenbusiness.com/./src/client/services/converters/CorpDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/DBAEntityDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/DBAEntityForExistingBusDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/DBAComplianceDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/DBAEntityAddOnDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/EINBankingDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/ExpenseTrackingAndTaxFilingDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/GoodStandingConverter.js","webpack://zenbusiness.com/./src/client/services/converters/LogoKitDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/DAODesignationConverter.js","webpack://zenbusiness.com/./src/client/services/converters/LLCDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/NameResDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/FutureFileDateConverter.js","webpack://zenbusiness.com/./src/client/services/converters/VirtualBusinesAddressDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/WFGInitialReportDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/VanityProductDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BankOfAmericaOfferConverter.js","webpack://zenbusiness.com/./src/client/services/converters/PostPurchaseDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/SMBWebsiteDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/SMBWebsiteEcommDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/SMBEcommAddonDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/SMBWebsiteOrEcommDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/VanityProductConverter.js","webpack://zenbusiness.com/./src/client/services/converters/ZBMPlaidDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/zbBizTaxPrepPriorYearConverter.js","webpack://zenbusiness.com/./src/client/services/RegistrationService.js","webpack://zenbusiness.com/./src/client/services/converters/StockSetupConverter.js","webpack://zenbusiness.com/./src/client/services/converters/DomainV2DataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/EmailV2DataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/TaxServicesDataConverter.js","webpack://zenbusiness.com/./src/client/services/converters/BusinessEntityDataConverter.js","webpack://zenbusiness.com/./src/client/services/BusinessEntityService.js","webpack://zenbusiness.com/./src/client/services/index.js"],"sourcesContent":["import _assign from 'lodash/assign';\nimport axios from 'axios';\n\nimport env from '../config';\nimport { API_ERRORS } from '../constants/apiConstants';\nimport { getAccessToken, getLoggedInEmail, getOBO, isLoggedIn } from '../utils/AuthService';\nimport { reportError } from '../utils/ReportingUtils';\n\nconst standardErrorMsgs = {\n  status400: 'This request is formatted badly.',\n  status401: 'You are not authorized for this action. Please sign in.',\n  status404: 'The object could not be found.'\n};\n\nconst authInterceptor = (config) => {\n  if (getAccessToken()) {\n    config.headers.Authorization = `Bearer ${getAccessToken()}`;\n  }\n  if (getLoggedInEmail()) {\n    config.headers.Email = getLoggedInEmail();\n  }\n  if (getOBO()) {\n    config.headers['x-on-behalf-of'] = getOBO();\n  }\n  return config;\n};\nconst authErrorInterceptor = (error) => { return Promise.reject(error); };\n\nconst createAxiosInstance = (baseURL) => {\n  const instance = axios.create({\n    baseURL,\n    timeout: env.api.timeout || 100000,\n    withCredentials: true\n  });\n  instance.interceptors.request.use(authInterceptor, authErrorInterceptor);\n  return instance;\n};\n\nconst service = createAxiosInstance(env.api.baseURL);\n// secureService routes through the VGS inbound proxy so SSN values are tokenized in transit.\n// api.secureBaseURL is the VGS proxy origin; api.baseURL is the path prefix (e.g. /r/api).\nif (!env.api.secureBaseURL) {\n  throw new Error('Cannot launch: misconfigured (missing SECURE_BASEURL)');\n}\nconst secureService = createAxiosInstance(\n  `${env.api.secureBaseURL.replace(/\\/$/, '')}${env.api.baseURL}`\n);\n\nexport default {\n\n  service,\n  secureService,\n\n  notifySentry(err, url, action) {\n    const metaData = { url };\n    let errorName = '';\n\n    if (err.response) {\n      const errorCode = err?.response?.data?.errorCode || err?.response?.data?.status || err?.response?.status || '500';\n      metaData.responseData = JSON.stringify(err.response.data, null, 4);\n      metaData.httpStatus = err.response.status;\n      errorName = action ? `${url} - ${action} - ${errorCode}` : `${url} - ${errorCode}`;\n    } else if (err.message) {\n      errorName = err.message.toLowerCase() === 'network error' ? 'Middleware Non-Responsive' : `${err.name} - ${err.message}`;\n    } else {\n      errorName = `${err.name} - Unknown (no message)`;\n    }\n    reportError(new Error(errorName), { metaData });\n  },\n\n  analyzeError(err, url) {\n    if (err.response) {\n      switch (err.response.status) {\n        case 400: {\n          this.notifySentry(err, url);\n          return err.response.data;\n        }\n        case 401: {\n          this.notifySentry(err, url);\n          return {\n            unauthorized: true,\n            message: err.response.data.errorMessage || this.getErrorMsg(err.response, {}),\n            status:  err.response.status\n          };\n        }\n        default: {\n          const message = err.response.data.errorMessage || this.getErrorMsg(err.response, {});\n          this.notifySentry(err, url);\n          return {\n            message,\n            status:  err.response.status\n          };\n        }\n      }\n    }\n\n    this.notifySentry(err, url);\n    return {\n      message: API_ERRORS.SERVER_ERROR\n    };\n  },\n\n  isNotLoggedIn() {\n    if (!isLoggedIn()) {\n      return {\n        unauthorized: true,\n        message: standardErrorMsgs.status401\n      };\n    }\n    return null;\n  },\n\n  getErrorMsg(data, errorMsgs) {\n    const msgs = _assign({}, standardErrorMsgs, {\n      status500: data ? data.errorMessage : API_ERRORS.SERVER_ERROR\n    }, errorMsgs);\n    return msgs[`status${data.status}`] || `Status code = ${data.status}`;\n  }\n};\n\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\nimport buildAccountData from './converters/AccountConverter';\n\nconst\n  convertPaymentMethod = (paymentMethod) => {\n    const { cardNumber: number, expMonth, expYear, cvc, isDefault, card_token } = paymentMethod;\n\n    return { number, exp_month: parseInt(expMonth, 10), exp_year: 2000 + parseInt(expYear, 10), cvc, default: isDefault, card_token };\n  };\n\nexport default _assign({\n\n  create(data) {\n    const url = 'account',\n      order = buildAccountData(data);\n\n    return this.service.post(url, order).then((response) => {\n      return Promise.resolve({\n        data: response.data\n      });\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  get() {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'account';\n    return this.service.get(url).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  exists(email) {\n    const url = 'account/exists';\n    return this.service.get(url, { params: { q: email } }).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  hasZBMoneyProSubscription() {\n    const url = 'account/has-zb-money-pro-subscription';\n    return this.service.get(url, {} ).then((response) => {\n      return Promise.resolve(response?.data?.zbmSubscriptionResponse?.hasZBMoneySubscription);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getPaymentMethods() {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'payment-methods';\n    return this.service.get(url).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  addPaymentMethod(data) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'payment-methods';\n    return this.service.post(url, convertPaymentMethod(data)).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  addPaymentMethodV2(data) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'payment-method-v2';\n    return this.service.post(url, convertPaymentMethod(data)).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  setPaymentMethodDefault(id) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'payment-methods/default';\n    return this.service.post(url, { id }).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getPlaidAccounts(token) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'plaid-accounts';\n    return this.service.post(url, { public_token: token }).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getPlaidLinkToken(plaidConfigLink, useFinancialAccountsV2) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'plaid-link';\n    return this.service.post(url, { plaidConfigLink, useFinancialAccountsV2 }).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  markCorpDocAsSeen(corpDocId) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `corporate-docs/${corpDocId}/mark-as-seen`;\n    return this.service.post(url).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  acceptTOS() {\n    const isNotLoggedIn = this.isNotLoggedIn(),\n      url = 'accept-tos';\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    return this.service.post(url).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  }\n\n}, BaseAPIService);\n","import { isPF, isTRUiC, getEntryPointGroup } from '../../utils/PartnerUtils';\nimport { getVisitUUID } from '../../utils/VisitorCookie';\n\n/* eslint-disable camelcase */\nconst buildAccountData = (registration) => {\n  const\n    { business, customer } = registration,\n    { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password } = customer,\n    { hasExistingBusiness: has_existing_business, name: business_entity_name, type, requestedJurisdiction: jurisdiction_code } = business;\n\n  const data = {\n    first_name,\n    middle_name,\n    last_name,\n    suffix,\n    email: email ? email.toLowerCase() : '',\n    phone,\n    password,\n    international: false,\n    signup_client: 'web_v2',\n    has_existing_business,\n    business_entity_name,\n    business_entity_type: type === 'CORP' ? 'corp' : 'llc',\n    jurisdiction_code,\n    source: window.zenIsMobile ? 'mobile' : 'web', // For lead\n    visit_uuid: getVisitUUID()\n  };\n\n  if (isTRUiC()) {\n    data.custom_flow = 'truic';\n    data.entry_point_group = 'truic';\n  } else if (isPF()) {\n    data.custom_flow = '';\n    data.entry_point_group = 'pf';\n  } else if (getEntryPointGroup()) {\n    data.custom_flow = '';\n    data.entry_point_group = getEntryPointGroup();\n  }\n  return data;\n};\n/* eslint-enable camelcase */\n\nexport default buildAccountData;\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\n\nexport default _assign({\n\n  getNAICS(filterCode) {\n    const url = 'naics';\n    return this.service.get(url, { params: { filterCode } }).then((response) => {\n      return Promise.resolve(response);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n  setPlaidHurdlrLink(payload) {\n    const url = 'plaid-hurdlr-link';\n    return this.service.post(url, { payload }).then((response) => {\n      return Promise.resolve(response);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n  syncPlaidAccounts(payload) {\n    const url = 'plaid-sync-accounts';\n    return this.service.post(url, { payload }).then((response) => {\n      return Promise.resolve(response);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n  getHurdlrSubscriptionTier() {\n    const url = 'hurdlr-subscription-tier';\n    return this.service.get(url).then((response) => {\n      return Promise.resolve(response);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n  resetPlaidLink(params) {\n    const url = 'plaid-link-reset';\n    return this.service.post(url, params).then((response) => {\n      return Promise.resolve(response);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n  plaidLinkRelink(data) {\n    const url = 'plaid-link-relink';\n\n    return this.service.delete(url, { data }).then((response) => {\n      return Promise.resolve(response);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getOrderTaskMigrationServices({ orderTaskUuid }) {\n    const url = 'service-for-migrate';\n    return this.service.post(url, { orderTaskUuid }).then((response) => {\n      return Promise.resolve(response);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  migrateMoneyPlan({\n    couponUuid,\n    orderTaskUuid,\n    plan,\n    planData,\n    term\n  }) {\n    const url = 'migrate-money-plan';\n    return this.service.post(url, {\n      couponUuid,\n      orderTaskUuid,\n      plan,\n      planData,\n      term\n    }).then((response) => {\n      return Promise.resolve(response);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  }\n}, BaseAPIService);\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\n\nexport default _assign({\n  getJurisdictionInfo(jurisdictionCode) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `annual-report/jurisdiction?jurisdictionCode=${jurisdictionCode}`;\n    return this.service.get(url)\n      .then((response) => { return Promise.resolve(response.data[jurisdictionCode]); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  }\n}, BaseAPIService);\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\n\nexport default _assign({\n  getJurisdictionInfo(jurisdictionCode) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `annual-report/jurisdiction?jurisdictionCode=${jurisdictionCode}`;\n    return this.service.get(url)\n      .then((response) => { return Promise.resolve(response.data[jurisdictionCode]); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  },\n  getComplianceEvent(uuid) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `/annual-report/compliance-event/${uuid}`;\n    return this.service.get(url)\n      .then((response) => { return Promise.resolve(response.data); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  },\n  checkEligibility(entityType, jurisdictionCode) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    if (!entityType || !jurisdictionCode) {\n      return Promise.resolve(false);\n    }\n    const url = `annual-report/check-eligibility?entityType=${entityType}&jurisdictionCode=${jurisdictionCode}`;\n    return this.service.get(url)\n      .then((response) => { return Promise.resolve(response.data.eligible); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  },\n  getRegisteredAgents(businessEntityUuid, jurisdictionCode) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `annual-report/registered-agents/${encodeURIComponent(businessEntityUuid)}?jurisdictionCode=${encodeURIComponent(jurisdictionCode)}`;\n    return this.service.get(url)\n      .then((response) => { return Promise.resolve(response.data); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  }\n}, BaseAPIService);\n","import _assign from 'lodash/assign';\nimport _forEach from 'lodash/forEach';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\n\nexport default _assign({\n\n\n  getCompanies() {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'business-entities';\n    return this.service.get(url).then((response) => {\n      if (response.data.errorMessage.indexOf('Unable') === 0) {\n        return Promise.reject(this.analyzeError({\n          response: {\n            status: 404,\n            data: {\n              errorMessage: response.data.errorMessage,\n              status: 404\n            }\n          }\n        }), url);\n      }\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getCompany(companyId) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n\n    const url = `business-entities/${companyId}`;\n    return this.service.get(url).then((response) => {\n      if (response.data.errorMessage.indexOf('Unable') === 0) {\n        return Promise.reject(this.analyzeError({\n          response: {\n            status: 404,\n            data: {\n              errorMessage: response.data.errorMessage,\n              status: 404\n            }\n          }\n        }), url);\n      }\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getFiles(companyId) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `business-entities/${companyId}/files`;\n    return this.service.get(url).then((response) => {\n      _forEach(response.data.files, (file) => {\n        file.business_entity_uuid = companyId;\n      });\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  }\n}, BaseAPIService);\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\n\nexport default _assign({\n\n  sendMessage(messageInfo) {\n    const url = 'contactUs';\n    return this.service.post(url, messageInfo).then(() => {\n      return Promise.resolve(true);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  }\n}, BaseAPIService);\n\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\n\nexport default _assign({\n  getStockFeeTotal(data) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'stock-setup/shares';\n    return this.service.post(url, data)\n      .then((response) => { return Promise.resolve(response.data); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  },\n\n  // Probe whether the jurisdiction has a variable stock fee calculator. Resolves\n  // { hasVariableFee: boolean }; the BFF normalizes an empty v4 list to false.\n  getVariableFeeExistence(jurisdiction) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'corp-stock-calculator';\n    return this.service.get(url, { params: { jurisdiction } })\n      .then((response) => { return Promise.resolve(response.data); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  },\n\n  // Live fee preview. POSTs to the v4 compute endpoint and unwraps zenapi's { fees: {...} } envelope\n  // so callers get the fee dict directly.\n  getCorpStockFee(jurisdiction, data) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'corp-stock-calculator/calculate';\n    return this.service.post(url, { jurisdiction, ...data })\n      .then((response) => { return Promise.resolve((response.data && response.data.fees) || response.data); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  },\n\n  // Billing for a formation order task. POSTs { account_uuid, fee_amount }; rejection preserves the\n  // status so the checkout can handle 422 (fee mismatch) / 409 (different fee already recorded).\n  addFeeCorpCalculator(orderTaskUuid, data) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `order-tasks/${orderTaskUuid}/corp-stock-fee`;\n    return this.service.post(url, data)\n      .then((response) => { return Promise.resolve(response.data); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  }\n}, BaseAPIService);\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\n\nexport default _assign({\n\n  check(domainName) {\n    const url = 'domainName';\n    return this.service.get(url, { params: { domainName } }).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n  suggest(domainName) {\n    const url = 'suggestions';\n    return this.service.get(url, { params: { domainName } }).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  }\n}, BaseAPIService);\n\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\nimport { initializeAuth0 } from '../utils/AuthService';\nimport { initializePlaid } from '../utils/PlaidService';\nimport { initialize as initializeShareASale } from '../utils/ShareASaleService';\nimport { initializeGoogleAds, initAvoRudderstack, identify, setRudderStackApiInfo } from '../utils/ThirdPartyTracking';\nimport { setFlows } from '../utils/FlowService';\nimport { initializeAPIKey as initializeGoogleMapsAPIKey } from '../utils/GoogleUtils';\nimport { initializeAPIKey as initializeStripeAPIKey } from '../utils/StripeService';\nimport { initializeSardine } from '../utils/SardineService';\nimport { setPartners } from '../utils/PartnerUtils';\nimport { setPlans } from '../utils/PlanService';\nimport { setProducts } from '../utils/ProductService';\nimport { setVisitor } from '../utils/VisitorCookie';\nimport { sanitizeRelativeUrl } from '../utils/UrlUtils';\n\nconst setWebsiteIfNull = (data) => {\n  if (!data.website) {\n    const origin = window.location.origin;\n    const pathname = window.location.pathname;\n\n    if (!origin || typeof origin !== 'string' || !origin.match(/^https?:\\/\\/[a-zA-Z0-9.-]+(?::[0-9]+)?$/)) {\n      data.website = '';\n      return;\n    }\n\n    const sanitizedPath = sanitizeRelativeUrl(pathname);\n    if (sanitizedPath === null) {\n      data.website = `${origin}/`;\n    } else {\n      data.website = `${origin}${sanitizedPath}`;\n    }\n  }\n};\n\nexport default _assign({\n\n  initialize(data) {\n    const url = 'initialization/initialize';\n    setWebsiteIfNull(data);\n    return this.service.post(url, data).then((response) => {\n      const { data: initData } = response;\n      initializeAuth0(initData);\n      setRudderStackApiInfo(initData);\n      initAvoRudderstack();\n      initializePlaid(initData);\n      initializeGoogleAds(initData);\n      initializeGoogleMapsAPIKey(initData);\n      initializeStripeAPIKey(initData);\n      initializeShareASale(initData);\n      initializeSardine(initData);\n      setPartners(initData);\n      setFlows(initData);\n      setPlans(initData);\n      setProducts(initData);\n      setVisitor(initData, data);\n      identify();\n      return Promise.resolve(initData);\n    }).catch((err) => {\n      Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getStateFees(stateCode) {\n    if (!stateCode) {\n      const url = 'initialization/stateFees';\n      return this.service.get(url).then((response) => {\n        return Promise.resolve(response.data);\n      }).catch((err) => {\n        return Promise.reject(this.analyzeError(err, url));\n      });\n    }\n\n    const url = `initialization/stateFees/${stateCode}`;\n    return this.service.get(url).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getExpediteFees(stateCode) {\n    if (!stateCode) {\n      const url = 'initialization/expediteFees';\n      return this.service.get(url).then((response) => {\n        return Promise.resolve(response.data);\n      }).catch((err) => {\n        return Promise.reject(this.analyzeError(err, url));\n      });\n    }\n\n    const url = `initialization/expediteFees/${stateCode}`;\n    return this.service.get(url).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  }\n\n}, BaseAPIService);\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\n\nexport default _assign({\n\n  getOrders() {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = 'orders';\n    return this.service.get(url).then((response) => {\n      if (response.data.errorMessage.indexOf('Unable') === 0) {\n        return Promise.reject(this.analyzeError({\n          response: {\n            status: 404,\n            data: {\n              errorMessage: response.data.errorMessage,\n              status: 404\n            }\n          }\n        }), url);\n      }\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getOperatingAgreement(orderId) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n\n    const url = `operating-agreement/${orderId}`;\n    return this.service.get(url).then((response) => {\n      if (response.data.errorMessage.indexOf('Unable') === 0) {\n        return Promise.reject(this.analyzeError({\n          response: {\n            status: 404,\n            data: {\n              errorMessage: response.data.errorMessage,\n              status: 404\n            }\n          }\n        }), url);\n      }\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  updateOrderTaskStatus(orderTaskUuid, status, subStatus) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n\n    const url = 'order-task/status';\n\n    return this.service.post(url, {\n      orderTaskUuid,\n      status,\n      subStatus\n    }).then((response) => {\n      return Promise.resolve(response);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getOrderTasksByCompany(businessEntityUuid) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `order-tasks/business-entity/${businessEntityUuid}`;\n    return this.service.get(url).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  // PATCH order_task_data fields (e.g. { authorized_shares, par_value }); wraps them in the\n  // `{ order_task_data: {...} }` envelope the endpoint expects (an unwrapped body silently no-ops).\n  patchOrderTaskData(orderTaskUuid, orderTaskData) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `order-tasks/${orderTaskUuid}`;\n    return this.service.patch(url, { order_task_data: orderTaskData }).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  }\n\n}, BaseAPIService);\n","import _assign from 'lodash/assign';\nimport _reduce from 'lodash/reduce';\nimport _mapKeys from 'lodash/mapKeys';\nimport _pickBy from 'lodash/pickBy';\nimport _isUndefined from 'lodash/isUndefined';\nimport _isNull from 'lodash/isNull';\nimport _isEmpty from 'lodash/isEmpty';\nimport _trim from 'lodash/trim';\nimport _camelCase from 'lodash/camelCase';\nimport { isTRUiC, getEntryPointGroup, isPF } from '../../utils/PartnerUtils';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport {\n  getBankingResolutionPrice,\n  getBasicEmailYearlyPrice,\n  getDomainNameYearlyPrice,\n  getDomainNamePrivacyYearlyPrice,\n  getEINPrice,\n  getExpeditePriorityPrice,\n  getExpediteRushPrice,\n  getNYPubPrice,\n  getOpAgreementPrice,\n  getRAYearlyPrice,\n  getStaticWebsiteYearlyPrice,\n  getWFGYearlyPrice,\n  isRecurlyEnabled\n} from '../../utils/ProductService';\nimport { getVisitUUID } from '../../utils/VisitorCookie';\n\nconst\n  managerTypeMap = {\n    AllOwners: 'All the owners (Member managed)',\n    SomeOwners: 'Only some of the owners (Manager managed)',\n    SomeManagers: 'Some or all of the owners and other managers (Manager managed)',\n    AllManagers: 'None of the owners, only other managers (Manager managed)'\n  },\n  getExpeditePrice = (expedite) => {\n    if (expedite === 'rush') {\n      return getExpediteRushPrice();\n    }\n    if (expedite === 'priority') {\n      return getExpeditePriorityPrice();\n    }\n    return 0;\n  },\n  // Remove any undefined or null values from an object\n  removeEmptyValues = (obj) => {\n    return _pickBy(obj, (v) => { return !_isUndefined(v) && !_isNull(v); });\n  };\n\n/* eslint-disable camelcase */\nexport const convertAddress = (address) => {\n  const\n    {\n      address_1,\n      address_2,\n      addressLine1,\n      addressLine2,\n      city,\n      county,\n      state,\n      country,\n      zipCode: zip,\n      lat,\n      lng,\n      addressIsGoogle: address_is_google,\n      email,\n      phoneNumber: phone\n    } = address || {};\n\n  return removeEmptyValues({\n    address_1: address_1 || addressLine1,\n    address_2: address_2 || addressLine2,\n    city,\n    county,\n    state,\n    country,\n    zip,\n    lat,\n    lng,\n    address_is_google,\n    email: email ? email.toLowerCase() : null,\n    phone\n  });\n};\n\nexport const convertMailingAddress = (address) => {\n  const\n    {\n      mailingAddressLine1: address_1,\n      mailingAddressLine2: address_2,\n      mailingCity: city,\n      mailingCounty: county,\n      mailingState: state,\n      mailingCountry: country,\n      mailingZipCode: zip,\n      phoneNumber: phone,\n      email\n    } = address;\n\n  return removeEmptyValues({ address_1, address_2, city, county, state, country, zip, email: email ? email.toLowerCase() : null, phone });\n};\n/* eslint-enable camelcase */\n\nexport const convertUser = (user) => {\n  const { firstName, middleName, lastName, name, suffix, companyName, careOf, outstandingJudgments = null } = user;\n\n  if (name) {\n    return _assign(convertAddress(user), { name });\n  }\n\n  return removeEmptyValues(_assign(convertAddress(user), {\n    first_name: firstName,\n    middle_name: middleName,\n    last_name: lastName,\n    suffix,\n    company_name: companyName,\n    care_of: careOf,\n    ...(outstandingJudgments !== null && {\n      outstanding_judgments: outstandingJudgments\n    })\n  }));\n};\n\nexport const convertUsers = (users) => {\n  return _reduce(users, (retval, value) => {\n    retval.push(convertUser(value));\n    return retval;\n  }, []);\n};\n\n// API-950: zenapi's ContactHandler rejects the order-task PATCH at process-fulfillment\n// when a contact dict is present but carries no identity field — it requires either a\n// full name (first_name AND last_name — a first name alone is not a person's identity),\n// a company_name, or an email. convertUser runs identity values through removeEmptyValues,\n// which strips null/undefined but NOT empty strings, so a blank contact serializes as\n// { first_name: '', company_name: '' }. That is \"present but invalid\" and slips past a\n// plain _isEmpty() guard. Callers should skip convertContact (and omit the `contact` key\n// entirely) when this returns false.\nexport const hasContactIdentity = (contact) => {\n  if (_isEmpty(contact)) {\n    return false;\n  }\n  const { firstName = '', lastName = '', companyName = '', email = '' } = contact;\n  const hasFullName = Boolean(_trim(firstName) && _trim(lastName));\n  return hasFullName || Boolean(_trim(companyName) || _trim(email));\n};\n\nexport const convertContact = (contact) => {\n  return {\n    contact: _assign(convertUser(contact), { is_principal: contact.isPrincipal })\n  };\n};\n\n// API-950: shared guard so callers don't repeat \"hasContactIdentity(contact) ? convertContact(contact) : {}\".\nexport const convertContactIfIdentified = (contact) => {\n  return hasContactIdentity(contact) ? convertContact(contact) : {};\n};\n\n/* eslint-disable no-nested-ternary */\nexport const calculateBusinessTotal = (business, purchase, filingFees, expediteFees) => {\n  const\n    { domesticJurisdiction, type } = business,\n    { bankingResolution, basicEmail, domainName, domainNamePrivacy } = purchase,\n    { ein, expedite, nyPublication, operatingAgreement, privacy, staticWebsite, worryFree,  planLevel } = purchase,\n    fees = filingFees[domesticJurisdiction],\n    exFees = { price: getExpeditePrice(expedite), fees: expediteFees[domesticJurisdiction][expedite].fees || 0 };\n\n  if (planLevel) {\n    const\n      plan = getPlanLevel(planLevel, domesticJurisdiction),\n      planPrices = type === 'CORP' ? plan.corp.prices : plan.llc.prices;\n\n    return (\n      (planPrices['1']) +\n      (fees[type === 'LLCX' ? 'llc_formation' : 'corp_formation'].fees) +\n      (bankingResolution && !plan.banking_resolution ? getBankingResolutionPrice() : 0) +\n      (basicEmail && !plan.basic_email ? getBasicEmailYearlyPrice() : 0) +\n      (domainName && !plan.domain_name_reg ? getDomainNameYearlyPrice() : 0) +\n      (domainNamePrivacy && !plan.domain_name_privacy ? getDomainNamePrivacyYearlyPrice() : 0) +\n      (ein && !plan.ein_creation ? getEINPrice() : 0) +\n      (plan.expedite !== expedite ? exFees.price + exFees.fees : 0) +\n      (nyPublication && !plan.ny_publication ? getNYPubPrice() : 0) +\n      (operatingAgreement && !plan.operating_agreement ? getOpAgreementPrice() : 0) +\n      (privacy ? getRAYearlyPrice() : 0) +\n      (staticWebsite ? getStaticWebsiteYearlyPrice() : 0) +\n      (worryFree ? getWFGYearlyPrice() : 0)\n    );\n  }\n\n  return (\n    (fees[type === 'LLCX' ? 'llc_formation' : 'corp_formation'].fees) +\n    (bankingResolution ? getBankingResolutionPrice() : 0) +\n    (basicEmail ? getBasicEmailYearlyPrice() : 0) +\n    (domainName ? getDomainNameYearlyPrice() : 0) +\n    (domainNamePrivacy ? getDomainNamePrivacyYearlyPrice() : 0) +\n    (ein ? getEINPrice() : 0) +\n    (exFees.price + exFees.fees) +\n    (nyPublication ? getNYPubPrice() : 0) +\n    (operatingAgreement ? getOpAgreementPrice() : 0) +\n    (privacy ? getRAYearlyPrice() : 0) +\n    (staticWebsite ? getStaticWebsiteYearlyPrice() : 0) +\n    (worryFree ? getWFGYearlyPrice() : 0)\n  );\n};\n\nexport const convertManagers = (managerReduce) => {\n  const { managers: managerList, managerType, managerCount } = managerReduce,\n    managers = convertUsers(managerList);\n\n  return {\n    managers,\n    manager_count: managerCount,\n    manager_type: managerTypeMap[managerType] || null\n  };\n};\n\nexport const convertMember = (user) => {\n  const { manager = false } = user;\n  return _assign(convertUser(user), { manager });\n};\n\nexport const convertMembers = (memberReduce) => {\n  const { members: memberList, memberCount } = memberReduce,\n    members = _reduce(memberList, (retval, value) => {\n      retval.push(convertMember(value));\n      return retval;\n    }, []);\n\n  return {\n    members,\n    member_count: memberCount\n  };\n};\n\nexport const convertDirector = (user) => {\n  const { title } = user;\n  return removeEmptyValues(_assign(convertUser(user), { title }));\n};\n\nexport const convertDirectors = (directorReduce) => {\n  const { directors: directorList, directorCount } = directorReduce,\n    directors = _reduce(directorList, (retval, value) => {\n      retval.push(convertDirector(value));\n      return retval;\n    }, []);\n\n  return {\n    directors,\n    director_count: directorCount\n  };\n};\n\nexport const convertOfficer = (user) => {\n  const { title } = user;\n  if (!title) {\n    return null;\n  }\n  return removeEmptyValues(_assign(convertUser(user), { title }));\n};\n\nexport const convertOfficers = (officerReduce) => {\n  const { officers: officerList } = officerReduce,\n    officers = _reduce(officerList, (retval, value) => {\n      const officer = convertOfficer(value);\n      if (officer) {\n        retval.push(convertOfficer(value));\n      }\n      return retval;\n    }, []);\n\n  return {\n    officers\n  };\n};\n\nexport const convertRegisteredAgent = (registeredAgent, business, purchase) => {\n  const { registeredAgent: ra, planLevel } = purchase,\n    { domesticJurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, domesticJurisdiction) : null;\n\n  if ((plan && plan.registered_agent_service) || ra) {\n    return { registered_agent: {} };\n  }\n  return {\n    registered_agent: convertUser(registeredAgent)\n  };\n};\n\nexport const convertAuthorizedSignatory = (authSig) => {\n  const skipCaseFix = ['address_1', 'address_2'];\n  const authSigFix = _mapKeys(authSig || {}, (v, k) => { return !skipCaseFix.includes(k) ? _camelCase(k) : k; });\n\n  // API-950/TRIAG-19196: never write an empty {} - orders-api persists it verbatim, and on\n  // re-read the empty dict gets fed through convertContact as a real contact.\n  return hasContactIdentity(authSigFix) ? {\n    authorized_signatory: removeEmptyValues(_assign(convertContact(authSigFix).contact, { title: authSigFix?.title }))\n  } : null;\n};\n\nexport const getPricingInformation = () => {\n\n  return { visit_uuid: getVisitUUID() };\n};\n\nexport const buildEntityName = (name, indicator) => {\n  return [name, indicator]\n    .map((el) => { return _trim(el); })\n    .filter(Boolean)\n    .join(' ');\n};\n\nexport const decorateAccount = (account) => {\n  account.is_recurly = isRecurlyEnabled();\n  if (isTRUiC()) {\n    account.custom_flow = 'truic';\n    account.entry_point_group = 'truic';\n  } if (isPF()) {\n    account.custom_flow = '';\n    account.entry_point_group = 'pf';\n  } else if (getEntryPointGroup()) {\n    account.custom_flow = '';\n    account.entry_point_group = getEntryPointGroup();\n  }\n  return account;\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getAccountingGrowAndScaleMonthlyPrice, getAccountingQuickStartMonthlyPrice, getAccountingUpAndRunningMonthlyPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { accountingGrowAndScale, accountingQuickStart, accountingUpAndRunning } = purchase,\n    { domesticJurisdiction: jurisdiction } = business;\n\n  if (standalone) {\n    if (accountingGrowAndScale) {\n      return { service: 'accounting_grow_and_scale', jurisdiction, price: getAccountingGrowAndScaleMonthlyPrice(), fees: 0, term: 12, period: 12, is_add_on: false };\n    }\n    if (accountingQuickStart) {\n      return { service: 'accounting_quick_start', jurisdiction, price: getAccountingQuickStartMonthlyPrice(), fees: 0, term: 12, period: 12, is_add_on: false };\n    }\n    if (accountingUpAndRunning) {\n      return { service: 'accounting_up_and_running', jurisdiction, price: getAccountingUpAndRunningMonthlyPrice(), fees: 0, term: 12, period: 12, is_add_on: false };\n    }\n  }\n\n  return null;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { accountingGrowAndScale, accountingQuickStart, accountingUpAndRunning } = purchase,\n    { domesticJurisdiction: jurisdiction, name: business_entity_name, type } = business,\n    business_entity_type = type === 'CORP' ? 'CORP' : 'LLC';\n\n  if (standalone) {\n    if (accountingGrowAndScale) {\n      return { service: 'accounting_grow_and_scale', standalone, jurisdiction, business_entity_name, business_entity_type };\n    }\n    if (accountingQuickStart) {\n      return { service: 'accounting_quick_start', standalone, jurisdiction, business_entity_name, business_entity_type };\n    }\n    if (accountingUpAndRunning) {\n      return { service: 'accounting_up_and_running', standalone, jurisdiction, business_entity_name, business_entity_type };\n    }\n  }\n\n  return null;\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      convertOrderData(registration, true)\n    ]),\n    orderItems = _compact([\n      convertOrderItem(registration, true)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.business.id\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { buildEntityName, convertAddress, convertContactIfIdentified, convertDirectors, convertManagers, convertMembers, convertOfficers, convertRegisteredAgent, getPricingInformation, decorateAccount } from './BaseDataConverter';\nimport { ACTIONS, URLS } from '../../constants/complete_wfg';\nimport { getPlanLevel, isAutoIncludedInPlan } from '../../utils/PlanService';\nimport { getWFGYearlyPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nconst getPricingAndCouponAmount = (registration) => {\n  const\n    { business, purchase, coupons } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'worry_free_service',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n  return { pricing, plan };\n};\n\n/* eslint-disable camelcase */\nconst\n  convertAccount = (registration) => {\n    const\n      { customer, lead } = registration,\n      { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password } = customer,\n      { leadUUID: lead_uuid } = lead,\n      { cardToken: card_token } = customer;\n\n    return decorateAccount({ lead_uuid, first_name, middle_name, last_name, suffix, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', card_token });\n  },\n  /* eslint-enable camelcase */\n\n  getEntityType = (type) => {\n    if (type === 'LLCX') {\n      return 'llc';\n    }\n    if (type === 'CORP') {\n      return 'corp';\n    }\n    return '';\n  };\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const\n    { amendment, annualReport, business, purchase } = registration,\n    { worryFree, planLevel } = purchase,\n    { domesticJurisdiction, requestedJurisdiction } = business,\n    jurisdiction = requestedJurisdiction || domesticJurisdiction,\n    service = 'worry_free_service',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    servicePricing = getPricingAndCouponAmount(registration);\n\n  if (plan && plan.worry_free_service) {\n    return { service, jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: 1, is_add_on: false };\n  }\n\n  const\n    wfFees = (jurisdiction ? filingFees[jurisdiction].worry_free_service : null) || { fees: 0 },\n    price = plan ? servicePricing.pricing.servicePrice : getWFGYearlyPrice(),\n    coupon = plan ? servicePricing.pricing.serviceCouponAmount : 0,\n    { fees } = wfFees,\n    term = 12,\n    period = 1;\n\n  if (standalone || worryFree || isAutoIncludedInPlan(plan, 'worry_free_service')) {\n    const orderItemObj = {\n      service,\n      price,\n      coupon,\n      fees,\n      term,\n      period,\n      jurisdiction,\n      is_add_on: !standalone && !!plan\n    };\n\n    if (amendment.useCredit) {\n      orderItemObj.credits = 1;\n      orderItemObj.credit_balance_uuid = amendment.creditUUID;\n    }\n\n    if (annualReport.useCredit) {\n      orderItemObj.credits = 1;\n      orderItemObj.credit_balance_uuid = annualReport.creditUUID;\n    }\n\n    return orderItemObj;\n  }\n  return null;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const { business, businessAddresses, contact, directors, managers, members, officers, order, page, purchase, registeredAgent } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isAutoIncluded = isAutoIncludedInPlan(plan, 'worry_free_service');\n\n  if (!(plan && plan.worry_free_service) && !purchase.worryFree && !standalone && !isAutoIncluded) {\n    return null;\n  }\n\n  const\n    { type, name, indicator = '', status, description: business_purpose } = business,\n    { phoneNumber: phone } = contact,\n    isLLC = type === 'LLCX',\n    isCorp = type === 'CORP',\n    { id = '' } = order,\n    { principal: principalAddress, mailing: mailingAddress, physical: physicalAddress } = businessAddresses,\n    { completedAction, completedUrl, completedActionIndex } = page;\n\n  if (!standalone) {\n    return { service: 'worry_free_service', jurisdiction, standalone: false, is_new_business: true, is_auto_included: isAutoIncluded };\n  }\n\n  const data = _assign({\n    service: 'worry_free_service',\n    standalone: true,\n    jurisdiction,\n    domestic_jurisdiction: jurisdiction,\n    entity_type: getEntityType(type),\n    entity_name: buildEntityName(name, indicator),\n    business_purpose,\n    is_new_business: false,\n    is_auto_included: isAutoIncluded,\n    principal_address: convertAddress(principalAddress),\n    mailing_address: convertAddress(mailingAddress),\n    address: convertAddress(physicalAddress),\n    phone,\n    estimated_formation_date: '',\n    activity: '',\n    // Used with standalone RA\n    domestic_entity: true,\n    foreign_jurisdictions: [],\n    domestic_filing_date: '',\n    state_id: ''\n  },\n  convertContactIfIdentified(contact),\n  isLLC ? convertManagers(managers) : {},\n  isCorp ? convertDirectors(directors) : {},\n  isLLC ? convertMembers(members) : {},\n  isCorp ? convertOfficers(officers) : {},\n  isLLC || isCorp ? convertRegisteredAgent(registeredAgent, business, { registeredAgent: false }) : {}\n  );\n\n  if (status === 'incomplete') {\n    data.completed_action = id ? completedAction : ACTIONS.START;\n    data.completed_url = id ? completedUrl : URLS.START;\n    data.completed_action_index = id ? completedActionIndex : 5400;\n  }\n  return data;\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, filingFees, isUpdate) => {\n  const\n    { business } = registration,\n    { status: orderStatus } = business,\n    orderData = _compact([\n      convertOrderData(registration, true)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData\n    }, getPricingInformation(registration.order));\n\n  if (isUpdate) {\n    order.order_uuid = registration.order.id;\n    return { order };\n  }\n\n  const\n    { id: businessId } = business,\n    accountId = registration.customer.id || '',\n    account = accountId ? null : convertAccount(registration);\n\n  order.order_items = _compact([\n    convertOrderItem(registration, true, filingFees)\n  ]);\n\n  if (accountId) {\n    if (businessId) {\n      order.business_entity_uuid = businessId;\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n  return {\n    account,\n    order\n  };\n};\n\n","import _assign from 'lodash/assign';\nimport _get from 'lodash/get';\nimport _isNil from 'lodash/isNil';\nimport _compact from 'lodash/compact';\nimport _isEmpty from 'lodash/isEmpty';\n\nimport { convertOrderData as convertWFGOrderData, convertOrderItem as convertWFGOrderItem } from './WorryFreeDataConverter';\nimport { convertAddress, convertDirectors, convertManagers, convertMembers, convertOfficers, convertUser, getPricingInformation } from './BaseDataConverter';\nimport { getAmendmentPrice, getAnnualReportPrice } from '../../utils/ProductService';\n\nconst isAnswerYes = (answer) => {\n  return answer === 'yes';\n};\n/* eslint-disable max-statements */\nexport const formNewARData = (updatedCompanyInfo, fieldRules) => {\n  const updatedInfo = {\n    business_entity_data: {}\n  };\n\n  if (updatedCompanyInfo.description && !fieldRules.business_purpose.requiresAmendment) {\n    updatedInfo.business_entity_data.business_purpose = updatedCompanyInfo.description;\n  }\n\n  if (updatedCompanyInfo.structure && !fieldRules.structure.requiresAmendment) {\n    updatedInfo.manager_type = updatedCompanyInfo.structure;\n    updatedInfo.business_entity_data.manager_type = updatedCompanyInfo.structure;\n  }\n\n  if (updatedCompanyInfo.managers && !fieldRules.managers.requiresAmendment) {\n    updatedInfo.business_entity_data.managers = convertManagers(updatedCompanyInfo).managers;\n  }\n\n  if (updatedCompanyInfo.members && !fieldRules.members.requiresAmendment) {\n    updatedInfo.business_entity_data.members = convertMembers(updatedCompanyInfo).members;\n  }\n\n  if (updatedCompanyInfo.directors && !fieldRules.directors.requiresAmendment) {\n    updatedInfo.business_entity_data.directors = convertDirectors(updatedCompanyInfo).directors;\n  }\n\n  if (updatedCompanyInfo.officers && !fieldRules.officers.requiresAmendment) {\n    updatedInfo.business_entity_data.officers = convertOfficers(updatedCompanyInfo).officers;\n  }\n\n  if (updatedCompanyInfo.addresses && !fieldRules.addresses.requiresAmendment) {\n    updatedInfo.business_entity_data.mailing_address = convertAddress(updatedCompanyInfo.addresses.mailing);\n    updatedInfo.business_entity_data.principal_address = convertAddress(updatedCompanyInfo.addresses.principal);\n    updatedInfo.business_entity_data.address = convertAddress(updatedCompanyInfo.addresses.physical);\n  }\n\n  if (updatedCompanyInfo.taxPreparer) {\n    updatedInfo.business_entity_data.tax_payer = convertUser(updatedCompanyInfo.taxPreparer);\n  }\n\n  if (updatedCompanyInfo.stockInfo && !fieldRules.stock_info.requiresAmendment) {\n    updatedInfo.business_entity_data.par_value = _get(updatedCompanyInfo.stockInfo, 'valuePerShare');\n    updatedInfo.business_entity_data.authorized_shares = _get(updatedCompanyInfo.stockInfo, 'authorizedShares');\n  }\n\n  if (updatedCompanyInfo.authorizedSignatory && !fieldRules.authorized_signatory.requiresAmendment) {\n    updatedInfo.business_entity_data.authorized_signatory = convertUser(updatedCompanyInfo.authorizedSignatory);\n  }\n\n  if (updatedCompanyInfo.paRaAuthorizedSignatoryConsent) {\n    updatedInfo.business_entity_data.pa_ra_authorized_signatory_consent = true;\n    if (updatedCompanyInfo.authorizedSignatory) {\n      updatedInfo.business_entity_data.authorized_signatory = convertUser(updatedCompanyInfo.authorizedSignatory);\n    }\n  }\n\n  if (updatedCompanyInfo.didDisposeOfProperty) {\n    updatedInfo.business_entity_data.sold_property = isAnswerYes(updatedCompanyInfo.didDisposeOfProperty);\n  }\n\n  if (updatedCompanyInfo.hadGrossSales) {\n    updatedInfo.business_entity_data.had_gross_sales = isAnswerYes(updatedCompanyInfo.hadGrossSales);\n  }\n\n  if (updatedCompanyInfo.hadGoodStanding) {\n    updatedInfo.business_entity_data.had_good_standing = isAnswerYes(updatedCompanyInfo.hadGoodStanding);\n  }\n\n  if (updatedCompanyInfo.liabilitySingleMember) {\n    updatedInfo.business_entity_data.liability_single_member = isAnswerYes(updatedCompanyInfo.liabilitySingleMember);\n  }\n\n  if (updatedCompanyInfo.privatelyHeld) {\n    updatedInfo.business_entity_data.privately_held = isAnswerYes(updatedCompanyInfo.privatelyHeld);\n  }\n\n  if (updatedCompanyInfo.stateBenefit) {\n    updatedInfo.business_entity_data.state_benefit = isAnswerYes(updatedCompanyInfo.stateBenefit);\n  }\n\n  if (updatedCompanyInfo.listGrossSales) {\n    updatedInfo.business_entity_data.list_gross_sales = updatedCompanyInfo.listGrossSales;\n  }\n\n  if (updatedCompanyInfo.maintainLicense) {\n    updatedInfo.business_entity_data.requires_license = isAnswerYes(updatedCompanyInfo.maintainLicense);\n  }\n\n  if (updatedCompanyInfo.makesLessThan) {\n    updatedInfo.business_entity_data.makes_less_than_amount = isAnswerYes(updatedCompanyInfo.makesLessThan);\n  }\n\n  if (updatedCompanyInfo.useProperty) {\n    updatedInfo.business_entity_data.own_or_lease_property = isAnswerYes(updatedCompanyInfo.useProperty);\n  }\n  if (updatedCompanyInfo.totalRevenue) {\n    updatedInfo.business_entity_data.total_revenue = updatedCompanyInfo.totalRevenue;\n  }\n  if (updatedCompanyInfo.ownsAnyOtherBusiness) {\n    updatedInfo.business_entity_data.owns_any_other_business = isAnswerYes(updatedCompanyInfo.ownsAnyOtherBusiness);\n  }\n  if (updatedCompanyInfo.companyDataOwns) {\n    updatedInfo.business_entity_data.company_data_owns = updatedCompanyInfo.companyDataOwns;\n  }\n  if (updatedCompanyInfo.companyDataOwnedBy) {\n    updatedInfo.business_entity_data.company_data_owned_by = updatedCompanyInfo.companyDataOwnedBy;\n  }\n  if (updatedCompanyInfo.isOwnedByAnyOtherBusiness) {\n    updatedInfo.business_entity_data.is_owned_by_any_other_business = isAnswerYes(updatedCompanyInfo.isOwnedByAnyOtherBusiness);\n  }\n  if (updatedCompanyInfo.hasEnteredIntoContract) {\n    updatedInfo.business_entity_data.has_entered_into_any_contract = isAnswerYes(updatedCompanyInfo.hasEnteredIntoContract);\n  }\n  if (updatedCompanyInfo.ownsRealProperty) {\n    updatedInfo.business_entity_data.owns_real_property = isAnswerYes(updatedCompanyInfo.ownsRealProperty);\n  }\n  if (updatedCompanyInfo.hasThereBeenATransferOfStock) {\n    updatedInfo.business_entity_data.has_there_been_a_transfer_of_stock = isAnswerYes(updatedCompanyInfo.hasThereBeenATransferOfStock);\n  }\n  if (updatedCompanyInfo.hasTransferOfStockBeenOverEqualFiftyPercent) {\n    updatedInfo.business_entity_data.has_transfer_of_stock_been_over_equal_fifty_percent = isAnswerYes(updatedCompanyInfo.hasTransferOfStockBeenOverEqualFiftyPercent);\n  }\n  if (updatedCompanyInfo.hasControllingInterestTransferFiledDepartmentRevenue) {\n    updatedInfo.business_entity_data.has_controlling_interest_transfer_filed_department_revenue = isAnswerYes(updatedCompanyInfo.hasControllingInterestTransferFiledDepartmentRevenue);\n  }\n  if (updatedCompanyInfo.holdsInterestInAgriculturalLand) {\n    updatedInfo.business_entity_data.holds_interest_in_agricultural_land = isAnswerYes(updatedCompanyInfo.holdsInterestInAgriculturalLand);\n  }\n  if (updatedCompanyInfo.isFamilyFarmLLC) {\n    updatedInfo.business_entity_data.is_a_family_llc = isAnswerYes(updatedCompanyInfo.isFamilyFarmLLC);\n  }\n\n  if (updatedCompanyInfo.naicsCode) {\n    updatedInfo.business_entity_data.naics_code = updatedCompanyInfo.naicsCode;\n  }\n  if (!_isNil(updatedCompanyInfo.numberOfStateEmployees)) {\n    updatedInfo.business_entity_data.number_of_state_employees = updatedCompanyInfo.numberOfStateEmployees;\n  }\n  if (!_isNil(updatedCompanyInfo.numberOfEmployees)) {\n    updatedInfo.business_entity_data.number_of_employees = updatedCompanyInfo.numberOfEmployees;\n  }\n  if (updatedCompanyInfo.scrapMetalDealer) {\n    updatedInfo.business_entity_data.scrap_metal_dealer = isAnswerYes(updatedCompanyInfo.scrapMetalDealer);\n  }\n  if (updatedCompanyInfo.currentlyExporting) {\n    updatedInfo.business_entity_data.currently_exporting = isAnswerYes(updatedCompanyInfo.currentlyExporting);\n  }\n  if (updatedCompanyInfo.topExportMarkets) {\n    updatedInfo.business_entity_data.top_export_markets = updatedCompanyInfo.topExportMarkets;\n  }\n  if (updatedCompanyInfo.beInterestedInExporting) {\n    updatedInfo.business_entity_data.be_interested_in_exporting = isAnswerYes(updatedCompanyInfo.beInterestedInExporting);\n  }\n  if (updatedCompanyInfo.isMinorityOwnedBusiness) {\n    updatedInfo.business_entity_data.is_minority_owned_business = updatedCompanyInfo.isMinorityOwnedBusiness;\n  }\n  if (updatedCompanyInfo.isWomanOwnedBusiness) {\n    updatedInfo.business_entity_data.is_woman_owned_business = updatedCompanyInfo.isWomanOwnedBusiness;\n  }\n  if (updatedCompanyInfo.ownMoreThanOneBusiness) {\n    updatedInfo.business_entity_data.own_more_than_one_business = isAnswerYes(updatedCompanyInfo.ownMoreThanOneBusiness);\n  }\n  if (!_isNil(updatedCompanyInfo.howManyBusinesses)) {\n    updatedInfo.business_entity_data.how_many_businesses = updatedCompanyInfo.howManyBusinesses;\n  }\n  if (!_isNil(updatedCompanyInfo.howManyCounties)) {\n    updatedInfo.business_entity_data.how_many_counties = updatedCompanyInfo.howManyCounties;\n  }\n  if (updatedCompanyInfo.doesEmployIndividualsWhoServeInForces) {\n    updatedInfo.business_entity_data.does_employ_individuals_who_serve_in_forces = updatedCompanyInfo.doesEmployIndividualsWhoServeInForces;\n  }\n  if (!_isNil(updatedCompanyInfo.howManyIndividuals)) {\n    updatedInfo.business_entity_data.how_many_individuals = updatedCompanyInfo.howManyIndividuals;\n  }\n  if (updatedCompanyInfo.doesOwnerServeInForces) {\n    updatedInfo.business_entity_data.does_owner_serve_in_forces = updatedCompanyInfo.doesOwnerServeInForces;\n  }\n  if (updatedCompanyInfo.getSupportFromWVSBDC) {\n    updatedInfo.business_entity_data.get_support_from_WVSBDC = isAnswerYes(updatedCompanyInfo.getSupportFromWVSBDC);\n  }\n  // US_DE\n  if (!_isEmpty(updatedCompanyInfo.issuedSharesAndGrossAssets)) {\n    const issuedShares = _get(updatedCompanyInfo.issuedSharesAndGrossAssets, 'issuedShares').replace(/,/g, '');\n    updatedInfo.business_entity_data.issued_shares = issuedShares;\n\n    const grossAssets = _get(updatedCompanyInfo.issuedSharesAndGrossAssets, 'grossAssets').substring(1).replace(/,/g, '');\n    updatedInfo.business_entity_data.gross_assets = grossAssets;\n  }\n  // US_AZ\n  if (!_isEmpty(updatedCompanyInfo.issuedShares)) {\n    const issuedShares = _get(updatedCompanyInfo.issuedShares, 'issuedShares').replace(/,/g, '');\n    updatedInfo.business_entity_data.issued_shares = issuedShares;\n\n    const issuedSharesClass = _get(updatedCompanyInfo.issuedShares, 'issuedSharesClass').substring(1).replace(/,/g, '');\n    updatedInfo.business_entity_data.issued_shares_class = issuedSharesClass;\n\n    const issuedSharesSeries = _get(updatedCompanyInfo.issuedShares, 'issuedSharesSeries').substring(2).replace(/,/g, '');\n    updatedInfo.business_entity_data.issued_shares_series = issuedSharesSeries;\n  }\n  // US_NJ\n  if (updatedCompanyInfo.workerCompensationInsuranceRequired) {\n    updatedInfo.business_entity_data.worker_compensation_insurance_required = isAnswerYes(updatedCompanyInfo.workerCompensationInsuranceRequired);\n  }\n  if (updatedCompanyInfo.isBusinessSelfInsured) {\n    updatedInfo.business_entity_data.is_business_self_insured = isAnswerYes(updatedCompanyInfo.isBusinessSelfInsured);\n  }\n  if (updatedCompanyInfo.selfInsuranceDetails) {\n    updatedInfo.business_entity_data.insurance_company = updatedCompanyInfo.selfInsuranceDetails.insuranceCompany;\n    updatedInfo.business_entity_data.policy_number = updatedCompanyInfo.selfInsuranceDetails.policyNumber;\n    updatedInfo.business_entity_data.coverage_start_date = updatedCompanyInfo.selfInsuranceDetails.coverageBegan;\n  }\n  // US_NY\n  if (updatedCompanyInfo.chiefExecutiveOfficer) {\n    updatedInfo.business_entity_data.chief_executive_officer = {\n      first_name: updatedCompanyInfo.chiefExecutiveOfficer.firstName,\n      middle_name: updatedCompanyInfo.chiefExecutiveOfficer.middleName,\n      last_name: updatedCompanyInfo.chiefExecutiveOfficer.lastName,\n      suffix: updatedCompanyInfo.chiefExecutiveOfficer.suffix,\n      title: updatedCompanyInfo.chiefExecutiveOfficer.title,\n      email: updatedCompanyInfo.chiefExecutiveOfficer.email,\n      phone: updatedCompanyInfo.chiefExecutiveOfficer.phoneNumber,\n      address_1: updatedCompanyInfo.chiefExecutiveOfficer.addressLine1,\n      address_2: updatedCompanyInfo.chiefExecutiveOfficer.addressLine2,\n      city: updatedCompanyInfo.chiefExecutiveOfficer.city,\n      state: updatedCompanyInfo.chiefExecutiveOfficer.state,\n      county: updatedCompanyInfo.chiefExecutiveOfficer.county,\n      country: updatedCompanyInfo.chiefExecutiveOfficer.country,\n      zip:  updatedCompanyInfo.chiefExecutiveOfficer.zipCode\n    };\n  }\n  if (updatedCompanyInfo.businessEntityPrincipalAddress) {\n    updatedInfo.business_entity_data.business_entity_principal_address = {\n      address_1: updatedCompanyInfo.businessEntityPrincipalAddress.addressLine1,\n      address_2: updatedCompanyInfo.businessEntityPrincipalAddress.addressLine2,\n      city: updatedCompanyInfo.businessEntityPrincipalAddress.city,\n      state: updatedCompanyInfo.businessEntityPrincipalAddress.state,\n      county: updatedCompanyInfo.businessEntityPrincipalAddress.county,\n      country: updatedCompanyInfo.businessEntityPrincipalAddress.country,\n      zip:  updatedCompanyInfo.businessEntityPrincipalAddress.zipCode\n    };\n  }\n  if (updatedCompanyInfo.numberOfDirectorsAndDirectorsAsWomen) {\n    updatedInfo.business_entity_data.number_of_directors = updatedCompanyInfo.numberOfDirectorsAndDirectorsAsWomen.numberOfDirectors;\n    updatedInfo.business_entity_data.number_of_directors_as_women = updatedCompanyInfo.numberOfDirectorsAndDirectorsAsWomen.numberOfDirectorsAsWomen;\n  }\n  //\n  if (updatedCompanyInfo.year) {\n    updatedInfo.business_entity_data.year = updatedCompanyInfo.year;\n  }\n  if (updatedCompanyInfo.ownedUSMilitaryVeteran) {\n    updatedInfo.business_entity_data.owned_us_military_veteran = isAnswerYes(updatedCompanyInfo.ownedUSMilitaryVeteran);\n  }\n  if (updatedCompanyInfo.ownedUSDisabledMilitaryVeteran) {\n    updatedInfo.business_entity_data.owned_us_disabled_military_veteran = isAnswerYes(updatedCompanyInfo.ownedUSDisabledMilitaryVeteran);\n  }\n  if (updatedCompanyInfo.netReceiptsLessThanOneMillion) {\n    updatedInfo.business_entity_data.net_receipts_less_than_one_million = isAnswerYes(updatedCompanyInfo.netReceiptsLessThanOneMillion);\n  }\n  if (updatedCompanyInfo.upToDateStockInformation) {\n    updatedInfo.business_entity_data.up_to_date_stock_information = isAnswerYes(updatedCompanyInfo.upToDateStockInformation);\n  }\n  if (updatedCompanyInfo.stockClass) {\n    updatedInfo.business_entity_data.stock_class = updatedCompanyInfo.stockClass;\n  }\n  if (updatedCompanyInfo.stockAdded) {\n    updatedInfo.business_entity_data.stock_added = updatedCompanyInfo.stockAdded.addedStock;\n    updatedInfo.business_entity_data.authorized_shares = updatedCompanyInfo.stockAdded.authorizedShares;\n    updatedInfo.business_entity_data.issued_shares = updatedCompanyInfo.stockAdded.issuedShares;\n  }\n  if (updatedCompanyInfo.corpTransacts) {\n    updatedInfo.business_entity_data.corp_transacts = updatedCompanyInfo.corpTransacts;\n  }\n  if (updatedCompanyInfo.corpOwnership) {\n    updatedInfo.business_entity_data.corp_ownership = updatedCompanyInfo.corpOwnership;\n  }\n  if (updatedCompanyInfo.isCombinedGroup) {\n    updatedInfo.business_entity_data.is_combined_group = isAnswerYes(updatedCompanyInfo.isCombinedGroup);\n  }\n  if (updatedCompanyInfo.isCombinedGroupTempLossPreserved) {\n    updatedInfo.business_entity_data.is_combined_group_temp_loss_preserved = isAnswerYes(updatedCompanyInfo.isCombinedGroupTempLossPreserved);\n  }\n  if (updatedCompanyInfo.isTieredPartnerRevAdjusted) {\n    updatedInfo.business_entity_data.is_tiered_partner_rev_adjusted = isAnswerYes(updatedCompanyInfo.isTieredPartnerRevAdjusted);\n  }\n  if (updatedCompanyInfo.isPassiveEntityTX) {\n    updatedInfo.business_entity_data.is_passive_entity_tx = isAnswerYes(updatedCompanyInfo.isPassiveEntityTX);\n  }\n  if (updatedCompanyInfo.isREITTX) {\n    updatedInfo.business_entity_data.is_reit_tx = isAnswerYes(updatedCompanyInfo.isREITTX);\n  }\n  if (updatedCompanyInfo.isNewVetOwnedTX) {\n    updatedInfo.business_entity_data.is_new_vet_owned_tx = isAnswerYes(updatedCompanyInfo.isNewVetOwnedTX);\n  }\n  if (updatedCompanyInfo.webFileId) {\n    updatedInfo.business_entity_data.web_file_id = updatedCompanyInfo.webFileId;\n  }\n  return updatedInfo;\n};\n\nconst formNewAmendmentData = (updatedCompanyInfo, fieldRules) => {\n  const updatedInfo = {\n    business_entity_data: {}\n  };\n\n  if (updatedCompanyInfo.name) {\n    updatedInfo.business_entity_name = updatedCompanyInfo.name;\n  }\n\n  if (updatedCompanyInfo.description && fieldRules.business_purpose.requiresAmendment) {\n    updatedInfo.business_entity_data.business_purpose = updatedCompanyInfo.description;\n  }\n\n  if (updatedCompanyInfo.structure && fieldRules.structure.requiresAmendment) {\n    updatedInfo.manager_type = updatedCompanyInfo.structure;\n    updatedInfo.business_entity_data.manager_type = updatedCompanyInfo.structure;\n  }\n\n  if (updatedCompanyInfo.managers && fieldRules.managers.requiresAmendment) {\n    updatedInfo.business_entity_data.managers = convertManagers(updatedCompanyInfo).managers;\n  }\n\n  if (updatedCompanyInfo.members && fieldRules.members.requiresAmendment) {\n    updatedInfo.business_entity_data.members = convertMembers(updatedCompanyInfo).members;\n  }\n\n  if (updatedCompanyInfo.directors && fieldRules.directors.requiresAmendment) {\n    updatedInfo.business_entity_data.directors = convertDirectors(updatedCompanyInfo).directors;\n  }\n\n  if (updatedCompanyInfo.officers && fieldRules.officers.requiresAmendment) {\n    updatedInfo.business_entity_data.officers = convertOfficers(updatedCompanyInfo).officers;\n  }\n\n  if (updatedCompanyInfo.addresses && fieldRules.addresses.requiresAmendment) {\n    updatedInfo.business_entity_data.mailing_address = convertAddress(updatedCompanyInfo.addresses.mailing);\n    updatedInfo.business_entity_data.principal_address = convertAddress(updatedCompanyInfo.addresses.principal);\n    updatedInfo.business_entity_data.address = convertAddress(updatedCompanyInfo.addresses.physical);\n  }\n\n  if (updatedCompanyInfo.stockInfo && fieldRules.stock_info.requiresAmendment) {\n    updatedInfo.business_entity_data.par_value = _get(updatedCompanyInfo.stockInfo, 'valuePerShare');\n    updatedInfo.business_entity_data.authorized_shares = _get(updatedCompanyInfo.stockInfo, 'authorizedShares');\n  }\n\n  if (updatedCompanyInfo.authorizedSignatory && fieldRules.authorized_signatory.requiresAmendment) {\n    updatedInfo.business_entity_data.authorized_signatory = convertUser(updatedCompanyInfo.authorizedSignatory);\n  }\n\n  return updatedInfo;\n};\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const\n    { annualReport } = registration,\n    {\n      filingJurisdiction: jurisdiction,\n      filingJurisdictionType: jurisdictionType,\n      originalCompanyInfo,\n      hasWFG,\n      hasARS,\n      isPurchasingWFG: isWorryFreeChecked\n    } = annualReport,\n    businessType = originalCompanyInfo.type,\n    service = businessType === 'CORP' ? 'corp_annual_report' : 'llc_annual_report';\n\n  // Get the fees for the jurisdiction type (domestic / foreign)\n  const jurisdictionTypeFees = filingFees[jurisdiction][service]?.[jurisdictionType];\n\n  // If the jurisdiction type fees are not found, use the flat fees\n  const fees = jurisdictionTypeFees?.fees ?? filingFees[jurisdiction][service].fees;\n\n  if (standalone) {\n    return { service, jurisdiction, price: (hasWFG || hasARS || isWorryFreeChecked) ? 0 : getAnnualReportPrice(), fees, is_add_on: false };\n  }\n\n  return null;\n};\n\nexport const convertAmendmentOrderItem = (registration, standalone, filingFees) => {\n  const\n    { annualReport } = registration,\n    { filingJurisdiction, originalCompanyInfo, useCredit, creditUUID } = annualReport,\n    fees = filingFees[filingJurisdiction][originalCompanyInfo.type === 'CORP' ? 'corp_amendment' : 'llc_amendment'].fees,\n    service = originalCompanyInfo.type === 'CORP' ? 'corp_amendment' : 'llc_amendment';\n\n  if (standalone) {\n    if (useCredit) {\n      return { service, jurisdiction: filingJurisdiction, price: 0, fees, is_add_on: false, credits: 1, credit_balance_uuid: creditUUID };\n    }\n    return { service, jurisdiction: filingJurisdiction, price: getAmendmentPrice(), fees, is_add_on: false };\n  }\n\n  return null;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone, isAmendment, fieldRules) => {\n  const\n    { annualReport } = registration,\n    { name: entity_name, originalCompanyInfo, filingJurisdiction: jurisdiction, updatedCompanyInfo, stateId, complianceEventUuid } = annualReport,\n    businessType = originalCompanyInfo.type,\n    service = businessType === 'CORP' ? `corp_${isAmendment ? 'amendment' : 'annual_report'}` : `llc_${isAmendment ? 'amendment' : 'annual_report'}`,\n    foreign_jurisdiction_objects = stateId ? [{ jurisdiction_code: jurisdiction, jurisdiction_filing_number: stateId }] : [];\n\n  return {\n    service,\n    standalone,\n    entity_name,\n    jurisdiction,\n    foreign_jurisdiction_objects,\n    compliance_event_uuid: complianceEventUuid,\n    new_data: isAmendment ? formNewAmendmentData(updatedCompanyInfo, fieldRules) : formNewARData(updatedCompanyInfo, fieldRules)\n  };\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, accountId, filingFees, fieldRules) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      convertOrderData(registration, true, false, fieldRules),\n      registration.annualReport.isPurchasingWFG ? convertWFGOrderData(registration, false, filingFees) : null,\n      registration.annualReport.didAddAmendment === 'yes' ? convertOrderData(registration, true, true, fieldRules) : null\n    ]),\n    orderItems = _compact([\n      convertOrderItem(registration, true, filingFees),\n      registration.annualReport.isPurchasingWFG ? convertWFGOrderItem(registration, false, filingFees) : null,\n      registration.annualReport.didAddAmendment === 'yes' ?  convertAmendmentOrderItem(registration, true, filingFees, false) : null\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.annualReport.originalCompanyInfo.id\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    business_entity_uuid: registration.annualReport.originalCompanyInfo.id,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _get from 'lodash/get';\nimport _compact from 'lodash/compact';\n\nimport { convertOrderData as convertWFGOrderData, convertOrderItem as convertWFGOrderItem } from './WorryFreeDataConverter';\nimport { convertAddress, convertDirectors, convertManagers, convertMembers, convertOfficers, convertUser, getPricingInformation } from './BaseDataConverter';\nimport { getAmendmentPrice, getAnnualReportPrice } from '../../utils/ProductService';\nimport { formNewARData } from './AnnualReportConverter';\n\n/* eslint-disable max-statements */\nconst formNewData = (updatedCompanyInfo) => {\n  const updatedInfo = {\n    business_entity_data: {}\n  };\n\n  if (updatedCompanyInfo.name) {\n    updatedInfo.business_entity_name = updatedCompanyInfo.name;\n  }\n\n  if (updatedCompanyInfo.description) {\n    updatedInfo.business_entity_data.business_purpose = updatedCompanyInfo.description;\n  }\n\n  if (updatedCompanyInfo.structure) {\n    updatedInfo.manager_type = updatedCompanyInfo.structure;\n    updatedInfo.business_entity_data.manager_type = updatedCompanyInfo.structure;\n  }\n\n  if (updatedCompanyInfo.managers) {\n    updatedInfo.business_entity_data.managers = convertManagers(updatedCompanyInfo).managers;\n  }\n\n  if (updatedCompanyInfo.members) {\n    updatedInfo.business_entity_data.members = convertMembers(updatedCompanyInfo).members;\n  }\n\n  if (updatedCompanyInfo.directors) {\n    updatedInfo.business_entity_data.directors = convertDirectors(updatedCompanyInfo).directors;\n  }\n\n  if (updatedCompanyInfo.officers) {\n    updatedInfo.business_entity_data.officers = convertOfficers(updatedCompanyInfo).officers;\n  }\n\n  if (updatedCompanyInfo.addresses) {\n    updatedInfo.business_entity_data.mailing_address = convertAddress(updatedCompanyInfo.addresses.mailing);\n    updatedInfo.business_entity_data.principal_address = convertAddress(updatedCompanyInfo.addresses.principal);\n    updatedInfo.business_entity_data.address = convertAddress(updatedCompanyInfo.addresses.physical);\n  }\n\n  if (updatedCompanyInfo.stockInfo) {\n    updatedInfo.business_entity_data.par_value = _get(updatedCompanyInfo.stockInfo, 'valuePerShare');\n    updatedInfo.business_entity_data.authorized_shares = _get(updatedCompanyInfo.stockInfo, 'authorizedShares');\n  }\n\n  if (updatedCompanyInfo.authorizedSignatory) {\n    updatedInfo.business_entity_data.authorized_signatory = convertUser(updatedCompanyInfo.authorizedSignatory);\n  }\n\n  if (updatedCompanyInfo.webFileId) {\n    updatedInfo.business_entity_data.web_file_id = updatedCompanyInfo.webFileId;\n  }\n\n  return updatedInfo;\n};\n/* eslint-enable max-statements */\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const\n    { amendment } = registration,\n    { filingJurisdiction, originalCompanyInfo, useCredit, creditUUID } = amendment,\n    fees = filingFees[filingJurisdiction][originalCompanyInfo.type === 'CORP' ? 'corp_amendment' : 'llc_amendment'].fees,\n    service = originalCompanyInfo.type === 'CORP' ? 'corp_amendment' : 'llc_amendment';\n\n  if (standalone) {\n    if (useCredit) {\n      return { service, jurisdiction: filingJurisdiction, price: 0, fees, is_add_on: false, credits: 1, credit_balance_uuid: creditUUID };\n    }\n    return { service, jurisdiction: filingJurisdiction, price: getAmendmentPrice(), fees, is_add_on: false };\n  }\n\n  return null;\n};\n\nexport const convertAnnualReportOrderItem = (registration, standalone, filingFees) => {\n  const\n    { amendment } = registration,\n    { filingJurisdiction, originalCompanyInfo, hasWFG, hasARS } = amendment,\n    fees = filingFees[filingJurisdiction][originalCompanyInfo.type === 'CORP' ? 'corp_annual_report' : 'llc_annual_report'].fees,\n    service = originalCompanyInfo.type === 'CORP' ? 'corp_annual_report' : 'llc_annual_report';\n\n  if (standalone) {\n    return { service, jurisdiction: filingJurisdiction, price: (hasWFG || hasARS) ? 0 : getAnnualReportPrice(), fees, is_add_on: false };\n  }\n\n  return null;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone, isAmendment, fieldRules) => {\n  const\n    { amendment } = registration,\n    { name: entity_name, originalCompanyInfo, filingJurisdiction: jurisdiction, updatedCompanyInfo } = amendment,\n    businessType = originalCompanyInfo.type,\n    service = businessType === 'CORP' ? `corp_${isAmendment ? 'amendment' : 'annual_report'}` : `llc_${isAmendment ? 'amendment' : 'annual_report'}`;\n\n  return {\n    service,\n    standalone,\n    entity_name,\n    jurisdiction,\n    new_data: isAmendment ? {\n      ...formNewData(updatedCompanyInfo),\n      ...(typeof amendment.changingOwnership === 'boolean' ? { changing_ownership: amendment.changingOwnership } : null)\n    } : formNewARData(updatedCompanyInfo, fieldRules)\n  };\n};\n\nexport const buildOrder = (registration, accountId, filingFees, fieldRules) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      convertOrderData(registration, true, !registration.amendment.didSelectOnlyAnnualReport || registration.amendment.didSelectOnlyAnnualReport === 'no', fieldRules),\n      registration.amendment.isPurchasingWFG ? convertWFGOrderData(registration, false, filingFees) : null\n    ]),\n    orderItems = _compact([\n      registration.amendment.didSelectOnlyAnnualReport === 'yes'\n        ?  convertAnnualReportOrderItem(registration, true, filingFees)\n        : convertOrderItem(registration, true, filingFees),\n      registration.amendment.isPurchasingWFG ? convertWFGOrderItem(registration, false, filingFees) : null\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.amendment.originalCompanyInfo.id\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    business_entity_uuid: registration.amendment.originalCompanyInfo.id,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\nimport _find from 'lodash/find';\nimport _map from 'lodash/map';\nimport _trim from 'lodash/trim';\nimport _isNumber from 'lodash/isNumber';\n\nimport { convertAddress, convertUser, getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getBankingYearlyPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\nimport { BANKING_ACTIVITY_LABEL_TO_NUMBER, BANKING_ACTIVITY_NUMBER_TO_LABEL, EIN_TO_BANKING_ACTIVITY_MAP } from '../../constants/register_banking';\n\nconst\n  convertOwner = (owner) => {\n    const { role, citizenship, residentCitizenAgeAck, ssn, ein, percent, dob, access, accountOwner } = owner,\n      ownershipPercentage = parseInt(percent, 10);\n\n    if (!access) {\n      return null;\n    }\n    return _assign(convertUser(owner), {\n      role,\n      citizenship,\n      resident_citizen_age_acknowledge: residentCitizenAgeAck,\n      ssn,\n      ein,\n      ownership_percentage: ownershipPercentage,\n      account_owner: accountOwner,\n      date_of_birth: dob?.replace(/\\//g, '-')\n    });\n  },\n  convertOwners = (owners) => {\n    return {\n      bank_account_members: _compact(_map(owners, (owner) => {\n        return convertOwner(owner);\n      }))\n    };\n  },\n  convertContact = (owners) => {\n    const user = _find(owners, (owner) => {\n      return owner.accountOwner;\n    });\n    if (!user) {\n      return null;\n    }\n    return convertUser(user);\n  };\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { banking, purchase, coupons } = registration,\n    { domesticJurisdiction: jurisdiction, inPlan } = banking,\n    { banking: purchaseBanking, planLevel } = purchase,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'banking',\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  if ((standalone && !inPlan) || (purchaseBanking && !planLevel)) {\n    // planLevel is coming thru from props for this standalone only; as a result pricing attempts fetch from plan\n    // reimplemented hardcoded until zapi price fetching is standardized\n    const\n      price = getBankingYearlyPrice(),\n      coupon = plan ? pricing.serviceCouponAmount : 0,\n      period = 1;\n\n    return { service, jurisdiction: _trim(jurisdiction), price, coupon, fees: 0, term: 12, period, is_add_on: false };\n  }\n\n  if ((standalone && inPlan) || (purchaseBanking && planLevel)) {\n    return { service, jurisdiction: _trim(jurisdiction), price: 0, coupon: 0, fees: 0, term: 12, period: 1, is_add_on: false };\n  }\n\n  return null;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { banking } = registration,\n    { businessType, name, description: business_purpose, domesticJurisdiction: jurisdiction, phoneNumber } = banking,\n    { ein, businessYears: business_years, businessActivity, businessActivityOther, dbas: business_dba_name, owners } = banking,\n    { accountType: account_type, routingNumber: routing_number, accountNumber: account_number, accountFullName: account_full_name, fundingAmount, publicToken: public_token } = banking,\n    service = 'banking',\n    address = convertAddress(banking),\n    contact = convertContact(owners),\n    naicsLabel = BANKING_ACTIVITY_NUMBER_TO_LABEL[businessActivity] || (!_isNumber(businessActivity) ? businessActivity : ''),\n    naicsCode = EIN_TO_BANKING_ACTIVITY_MAP[businessActivity] || BANKING_ACTIVITY_LABEL_TO_NUMBER[businessActivity] || (_isNumber(businessActivity) ? businessActivity : '');\n\n  return _assign(\n    { service,\n      standalone,\n      is_new_business: !standalone,\n      business_entity_name: name,\n      entity_name: name,\n      business_dba_name,\n      business_entity_type: businessType === 'CORP' ? 'CORP' : 'LLC',\n      ein,\n      phone: phoneNumber || contact.phoneNumber,\n      business_purpose,\n      naics: naicsLabel,\n      naics_description: businessActivityOther,\n      naics_code: naicsCode,\n      incorporation_state: _trim(jurisdiction),\n      jurisdiction: _trim(jurisdiction),\n      funding_amount: fundingAmount ? fundingAmount.substring(1).replace(/,/g, '') : '',\n      account_full_name,\n      terms_of_service_ack: true,\n      account_type,\n      account_number,\n      routing_number,\n      public_token,\n      business_entity_address: address,\n      business_entity_contact: contact,\n      business_years\n    }, convertOwners(owners)\n  );\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      convertOrderData(registration, true)\n    ]),\n    orderItems = _compact([\n      convertOrderItem(registration, true)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.banking.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getBankingResolutionPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { bankingResolution = false, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'banking_resolution',\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  if (plan && plan.banking_resolution) {\n    return { service, jurisdiction, price: 0, coupon: 0, fees: 0, is_add_on: false };\n  }\n\n  const\n    price = plan ? pricing.servicePrice : getBankingResolutionPrice(),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0;\n\n  if (standalone || bankingResolution) {\n    return { service, jurisdiction, price, coupon, fees, is_add_on: !standalone && !!plan };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if (!(plan && plan.banking_resolution) && !purchase.bankingResolution && !standalone) {\n    return null;\n  }\n\n  const\n    data = {\n      service: 'banking_resolution',\n      standalone,\n      jurisdiction,\n      is_new_business: !standalone\n    };\n\n  return data;\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.bankingResolution.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\n\nimport { getBusinessKitPrice } from '../../utils/ProductService';\nimport { getPricingInformation } from './BaseDataConverter';\n\nconst BUSINESS_KIT = 'business_kit';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, postpurchase } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { purchaseBusinessKit } = postpurchase,\n    service = BUSINESS_KIT,\n    price = getBusinessKitPrice();\n\n  if (purchaseBusinessKit) {\n    return { service, jurisdiction, price, fees: 0, is_add_on: false };\n  }\n\n  if (standalone) {\n    return { service, jurisdiction, price, fees: 0, is_add_on: false };\n  }\n\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    service = BUSINESS_KIT,\n    { business, postpurchase } = registration,\n    { requestedJurisdiction, type } = business,\n    { purchaseBusinessKit } = postpurchase;\n\n  if (standalone) {\n    return {\n      service,\n      standalone,\n      jurisdiction: requestedJurisdiction,\n      entity_type: type === 'LLCX' ? 'llc' : 'corp',\n      is_new_business: !standalone\n    };\n  }\n\n  return purchaseBusinessKit ? {\n    service,\n    business_kit: purchaseBusinessKit,\n    jurisdiction: requestedJurisdiction,\n    entity_type: type === 'LLCX' ? 'llc' : 'corp',\n    standalone: false\n  } : null;\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.businessKit.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\n\nimport { getBeneficialOwnershipFilingPrice, getIsBofSummer2024PromoEnabled } from '../../utils/ProductService';\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getCampaignName } from '../../utils/PartnerUtils';\n\nconst service = 'beneficial_ownership_filing';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, postpurchase, beneficialOwnershipFiling } = registration,\n    { requestedJurisdiction } = business,\n    { purchaseBOF } = postpurchase,\n    { domesticJurisdiction } = beneficialOwnershipFiling,\n    jurisdiction = domesticJurisdiction || requestedJurisdiction,\n    isBofSummer2024PromoEnabled = getIsBofSummer2024PromoEnabled(),\n    campaignName = getCampaignName(),\n    isBofSummer2024Campaign = campaignName === 'bofsummer2024',\n    isBofSummer2024Pricing = isBofSummer2024PromoEnabled && isBofSummer2024Campaign,\n    price = getBeneficialOwnershipFilingPrice(),\n    bofSummer2024OneTimeCoupon = Object.values(registration.coupons).find((item) => {\n      return item.external_coupon_id === '50_off_price_list';\n    }),\n    bofSummer2024PromoOneTimeCouponAmount = bofSummer2024OneTimeCoupon?.amount,\n    bofSummer2024PromoOneTimeCouponUuid = bofSummer2024OneTimeCoupon?.coupon_uuid;\n\n  if (purchaseBOF || standalone) {\n    return {\n      service,\n      ...(isBofSummer2024Pricing ? {\n        coupon: bofSummer2024PromoOneTimeCouponAmount,\n        coupon_uuid: bofSummer2024PromoOneTimeCouponUuid\n      } : {}),\n      jurisdiction,\n      price,\n      fees: 0,\n      is_add_on: false\n    };\n  }\n\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, postpurchase, beneficialOwnershipFiling } = registration,\n    { requestedJurisdiction, type: busType } = business,\n    { purchaseBOF } = postpurchase,\n    { domesticJurisdiction, type } = beneficialOwnershipFiling;\n\n  const entityType = (type || busType) === 'LLCX' ? 'llc' : 'corp';\n  const jurisdiction = domesticJurisdiction || requestedJurisdiction;\n\n  if (standalone) {\n    return {\n      service,\n      standalone,\n      jurisdiction,\n      entity_type: entityType,\n      is_new_business: !standalone\n    };\n  }\n\n  return purchaseBOF ? {\n    service,\n    beneficial_ownership_filing: purchaseBOF,\n    jurisdiction,\n    entity_type: entityType,\n    standalone: false\n  } : null;\n};\n\nexport const buildOrder = (registration, accountId, forPostPurchase) => {\n  const\n    orderStatus = 'incomplete',\n    orderData = [\n      convertOrderData(registration, !forPostPurchase)\n    ],\n    orderItems = [\n      convertOrderItem(registration, !forPostPurchase)\n    ],\n    businessId = forPostPurchase ? registration.business.id : registration.beneficialOwnershipFiling.companyId,\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: businessId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\n\nimport {\n  getBeneficialOwnershipFilingPrice,\n  getOngoingBofCompliancePrice,\n  getOngoingBofComplianceCoupon,\n  getIsBofSummer2024PromoEnabled\n} from '../../utils/ProductService';\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getCampaignName } from '../../utils/PartnerUtils';\n\nconst services = ['beneficial_ownership_filing', 'ongoing_bof_compliance'];\n\nexport const convertOrderItems = (registration, standalone) => {\n  const\n    { business, postpurchase, beneficialOwnershipFiling } = registration,\n    { requestedJurisdiction } = business,\n    { purchaseBOF } = postpurchase,\n    { domesticJurisdiction } = beneficialOwnershipFiling,\n    jurisdiction = domesticJurisdiction || requestedJurisdiction,\n    isBofSummer2024PromoEnabled = getIsBofSummer2024PromoEnabled(),\n    campaignName = getCampaignName(),\n    isBofSummer2024Campaign = campaignName === 'bofsummer2024',\n    isBofSummer2024Pricing = isBofSummer2024PromoEnabled && isBofSummer2024Campaign,\n    oneTimeFee = getBeneficialOwnershipFilingPrice(),\n    ongoingPrice = getOngoingBofCompliancePrice(),\n\n    coupon49Off = getOngoingBofComplianceCoupon(registration.coupons),\n    coupon49OffAmount = coupon49Off?.amount,\n    coupon49OffUuid = coupon49Off?.coupon_uuid,\n\n    bofSummer2024OneTimeCoupon = Object.values(registration.coupons).find((item) => {\n      return item.external_coupon_id === '99_off_price_list';\n    }),\n    bofSummer2024PromoOneTimeCouponAmount = bofSummer2024OneTimeCoupon?.amount,\n    bofSummer2024PromoOneTimeCouponUuid = bofSummer2024OneTimeCoupon?.coupon_uuid,\n\n    oneTimeCoupon = isBofSummer2024Pricing ? {\n      coupon: bofSummer2024PromoOneTimeCouponAmount,\n      coupon_uuid: bofSummer2024PromoOneTimeCouponUuid\n    } : {\n      coupon: coupon49OffAmount,\n      coupon_uuid: coupon49OffUuid\n    };\n\n  if (purchaseBOF || standalone) {\n    return services.map((service) => {\n      const isOngoing = service === 'ongoing_bof_compliance',\n        price = isOngoing ? ongoingPrice : oneTimeFee;\n\n      return {\n        service,\n        ...(isOngoing ? {} : oneTimeCoupon),\n        ...(isOngoing ? {\n          term: 12,\n          period: 1\n        } : {}),\n        jurisdiction,\n        price,\n        fees: 0,\n        is_add_on: !isOngoing\n      };\n    });\n  }\n\n  return [];\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, postpurchase, beneficialOwnershipFiling } = registration,\n    { requestedJurisdiction, type: busType } = business,\n    { purchaseBOF } = postpurchase,\n    { domesticJurisdiction, type } = beneficialOwnershipFiling;\n\n  const entityType = (type || busType) === 'LLCX' ? 'llc' : 'corp';\n  const jurisdiction = domesticJurisdiction || requestedJurisdiction;\n\n  if (standalone) {\n    return services.map((service) => {\n      return {\n        service,\n        standalone,\n        jurisdiction,\n        entity_type: entityType,\n        is_new_business: !standalone\n      };\n    });\n  }\n\n  return purchaseBOF ? services.map((service) => {\n    return {\n      service,\n      beneficial_ownership_filing: purchaseBOF,\n      jurisdiction,\n      entity_type: entityType,\n      standalone: false\n    };\n  }) : [];\n};\n\nexport const buildOrder = (registration, accountId, forPostPurchase) => {\n  const\n    orderStatus = 'incomplete',\n    orderData = convertOrderData(registration, !forPostPurchase),\n    orderItems = convertOrderItems(registration, !forPostPurchase),\n    businessId = forPostPurchase ? registration.business.id : registration.beneficialOwnershipFiling.companyId,\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: businessId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\n\nimport { getBofModificationPrice, getOngoingBofComplianceNoCouponPrice } from '../../utils/ProductService';\nimport { getPricingInformation } from './BaseDataConverter';\n\nconst services = ['bof_modification'];\n\nexport const convertOrderItem = (registration, standalone, hasOngoing) => {\n  const\n    { business, postpurchase, beneficialOwnershipFiling } = registration,\n    { requestedJurisdiction } = business,\n    { purchasebeneficialOwnershipFiling } = postpurchase,\n    { domesticJurisdiction } = beneficialOwnershipFiling,\n    bofModPrice = getBofModificationPrice(),\n    ongoingPrice = getOngoingBofComplianceNoCouponPrice(),\n    foundCoupon = Object.values(registration.coupons).find((item) => {\n      return item.external_coupon_id === 'bof_modification_99_off';\n    }),\n    couponAmount = foundCoupon?.amount,\n    couponUuid = foundCoupon?.coupon_uuid,\n    jurisdiction = domesticJurisdiction || requestedJurisdiction;\n\n  if (purchasebeneficialOwnershipFiling || standalone) {\n    return services.map((service) => {\n      const userOrderOngoingBofSubscription = services.includes('ongoing_bof_compliance');\n      const isOngoing = service === 'ongoing_bof_compliance';\n      const isModification = service === 'bof_modification';\n\n      let coupon = {};\n      if (isModification && (hasOngoing || userOrderOngoingBofSubscription)) {\n        coupon = {\n          coupon: couponAmount,\n          coupon_uuid: couponUuid\n        };\n      }\n\n      return {\n        ...coupon,\n        ...(isOngoing ? {\n          term: 12,\n          period: 1\n        } : {}),\n        service,\n        jurisdiction,\n        price: isOngoing ? ongoingPrice : bofModPrice,\n        fees: 0,\n        is_add_on: false\n      };\n    });\n  }\n\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, postpurchase, beneficialOwnershipFiling } = registration,\n    { requestedJurisdiction, type: busType } = business,\n    { purchasebeneficialOwnershipFiling } = postpurchase,\n    { domesticJurisdiction, type } = beneficialOwnershipFiling,\n    entityType = (type || busType) === 'LLCX' ? 'llc' : 'corp',\n    jurisdiction = domesticJurisdiction ?? requestedJurisdiction;\n\n  if (standalone) {\n    return services.map((service) => {\n      return {\n        service,\n        standalone,\n        jurisdiction,\n        entity_type: entityType,\n        is_new_business: !standalone\n      };\n    });\n  }\n\n  return purchasebeneficialOwnershipFiling ? services.map((service) => {\n    return {\n      service,\n      beneficial_ownership_filing: purchasebeneficialOwnershipFiling,\n      jurisdiction,\n      entity_type: entityType,\n      standalone: false\n    };\n  }) : null;\n};\n\nexport const buildOrder = (registration, accountId, isOngoing, hasOngoing) => {\n  if (isOngoing && !hasOngoing) {\n    services.push('ongoing_bof_compliance');\n  }\n\n  const\n    orderStatus = 'incomplete',\n    orderData = convertOrderData(registration, true),\n    orderItems = convertOrderItem(registration, true, hasOngoing),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.beneficialOwnershipFiling.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\nimport _map from 'lodash/map';\nimport { buildEntityName, convertUser, getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getOpAgreementPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nconst\n  buildFromFormation = (registration) => {\n    const\n      { business } = registration,\n      { name, indicator, type, domesticJurisdiction } = business,\n      isGeneric = true; // Is generic for everyone at this time. // type !== 'LLCX' || domesticJurisdiction !== 'TX';\n\n    const entityName = buildEntityName(name, indicator);\n    return {\n      service: 'operating_agreement',\n      standalone: false,\n      is_new_business: true,\n      business_entity_name: entityName,\n      business_entity_type: type === 'CORP' ? 'CORP' : 'LLC',\n      entity_type: type === 'LLCX' ? 'llc' : 'corp',\n      jurisdiction: domesticJurisdiction,\n      is_generic: isGeneric\n    };\n  };\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { operatingAgreement = false, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'operating_agreement',\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  if (plan && plan.operating_agreement) {\n    return { service, jurisdiction, price: 0, coupon: 0, fees: 0, is_add_on: false };\n  }\n  if (standalone || operatingAgreement) {\n    return {\n      service,\n      jurisdiction,\n      price: plan ? pricing.servicePrice : getOpAgreementPrice(),\n      coupon: plan ? pricing.serviceCouponAmount : 0,\n      fees: 0,\n      is_add_on: !standalone && !!plan\n    };\n  }\n  return null;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone, fromReg = false) => {\n  const\n    { business, purchase } = registration,\n    { planLevel } = purchase,\n    { domesticJurisdiction, requestedJurisdiction, type } = business,\n    plan = planLevel ? getPlanLevel(planLevel, fromReg ? requestedJurisdiction : domesticJurisdiction) : null,\n    service = 'operating_agreement';\n\n  if (!(plan && plan.operating_agreement) && !purchase.operatingAgreement && !standalone) {\n    return null;\n  }\n\n  if (fromReg) { // If bought as part of registration flow\n    return {\n      service,\n      standalone,\n      jurisdiction: requestedJurisdiction,\n      is_new_business: !standalone\n    };\n  }\n\n  if (!standalone) { // If bought as part of plan or ala-carte\n    return buildFromFormation(registration);\n  }\n\n  const\n    { operatingAgreement } = registration,\n    {\n      isGeneric: is_generic,\n      businessName: business_entity_name,\n      requestedJurisdiction: jurisdiction,\n      managers: initManagers,\n      members: initMembers,\n      llcBusinessAddress,\n      llcMailingAddress,\n      mailingAddressType,\n      mailingAddressLine1,\n      mailingAddressLine2,\n      mailingCity,\n      mailingCounty,\n      mailingState,\n      mailingZipCode,\n      businessEmail: email,\n      preemptiveRights: preemptive_rights,\n      rightOfFirstRefusal: right_of_first_refusal,\n      financialReportFrequency: financial_report_frequency,\n      internalFinancialAudit: internal_financial_audit,\n      taxAdvances: tax_advances,\n      dayToDayMajority: day_to_day_majority,\n      meetingOfMembersMajority: meeting_of_members_majority,\n      passActionWithoutMeetingMajority: pass_action_without_meeting_majority,\n      amendmentMajority: amendment_majority,\n      terminateCompanyMajority: terminate_company_majority,\n      amendOAorFormation: amend_oa_or_formation,\n      issueAdditionalMembership: issue_additional_membership,\n      appointRemoveAuditors: appoint_remove_auditors,\n      amendRelatedPartyAgreement: amend_related_party_agreement,\n      enterEquityTransactions: enter_equity_transactions,\n      enterAssetTransactions: enter_asset_transactions,\n      establishSubsidiary: establish_subsidiary,\n      offeringAndSecurities: offering_and_securities,\n      fundamentalBusinessTransaction: fundamental_business_transaction,\n      liquidateOrTerminate: liquidate_or_terminate,\n      cancelLiquidateOrTerminate: cancel_liquidate_or_terminate,\n      reinstateAfterTermination: reinstate_after_termination,\n      changeManager: change_manager,\n      membersRemoveManager: members_remove_manager,\n      fillManagerVacancy: fill_manager_vacancy,\n      capitalContributionApproval: capital_contribution_approval,\n      capitalContributionAmount: capital_contribution_amount,\n      makeInvestmentApproval: make_investment_approval,\n      makeInvestmentAmount: make_investment_amount,\n      incurIndebtednessApproval: incur_indebtedness_approval,\n      incurIndebtednessOneTimeAmount: incur_indebtedness_onetime_amount,\n      incurIndebtednessTotalAmount: incur_indebtedness_total_amount,\n      settleLawsuitApproval: settle_lawsuit_approval,\n      settleLawsuitAmount: settle_lawsuit_amount\n    } = operatingAgreement,\n    convertedLLCBusinessAddress = {\n      address_1: llcBusinessAddress.addressLine1,\n      address_2: llcBusinessAddress.addressLine2,\n      city: llcBusinessAddress.city,\n      state: llcBusinessAddress.state,\n      zip: llcBusinessAddress.zipCode\n    },\n    convertedLLCMailingAddress = {\n      address_1: llcMailingAddress.addressLine1,\n      address_2: llcMailingAddress.addressLine2,\n      city: llcMailingAddress.city,\n      state: llcMailingAddress.state,\n      zip: llcMailingAddress.zipCode\n    },\n    address = {\n      type: mailingAddressType,\n      address_1: mailingAddressLine1,\n      address_2: mailingAddressLine2,\n      city: mailingCity,\n      county: mailingCounty,\n      state: mailingState,\n      zip: mailingZipCode\n    },\n    managers = _map(initManagers, (manager) => {\n      return _assign(convertUser(manager), {\n        partnership_rep: manager.partnershipRep,\n        manager_notice: manager.managerNotice\n      });\n    }),\n    members = _map(initMembers, (member) => {\n      const { manager, title, membershipInterest, maritalStatus, spouseName, primaryMember, partnershipRep, officialNotice, managerNotice, emailDisabled, phoneNumberDisabled } = member;\n      return _assign(convertUser(member), {\n        manager,\n        title,\n        membership_interest: membershipInterest,\n        marital_status: maritalStatus,\n        spouse_name: spouseName,\n        primary_member: primaryMember,\n        partnership_rep: partnershipRep,\n        official_notice: officialNotice,\n        manager_notice: managerNotice,\n        email_disabled: emailDisabled,\n        phone_disabled: phoneNumberDisabled\n      });\n    });\n\n  return {\n    service,\n    standalone,\n    is_new_business: false,\n    business_entity_name,\n    business_entity_type: type === 'CORP' ? 'CORP' : 'LLC',\n    entity_type: type === 'LLCX' ? 'llc' : 'corp',\n    jurisdiction: jurisdiction || domesticJurisdiction,\n    is_generic,\n    llc_business_address: convertedLLCBusinessAddress,\n    llc_mailing_address: convertedLLCMailingAddress,\n    address,\n    members,\n    managers,\n    email,\n    preemptive_rights,\n    right_of_first_refusal,\n    financial_report_frequency,\n    internal_financial_audit,\n    tax_advances,\n    day_to_day_majority,\n    meeting_of_members_majority,\n    pass_action_without_meeting_majority,\n    amendment_majority,\n    terminate_company_majority,\n    amend_oa_or_formation,\n    issue_additional_membership,\n    appoint_remove_auditors,\n    amend_related_party_agreement,\n    enter_equity_transactions,\n    enter_asset_transactions,\n    establish_subsidiary,\n    offering_and_securities,\n    fundamental_business_transaction,\n    liquidate_or_terminate,\n    cancel_liquidate_or_terminate,\n    reinstate_after_termination,\n    change_manager,\n    members_remove_manager,\n    fill_manager_vacancy,\n    capital_contribution_approval,\n    capital_contribution_amount,\n    make_investment_approval,\n    make_investment_amount,\n    incur_indebtedness_approval,\n    incur_indebtedness_onetime_amount,\n    incur_indebtedness_total_amount,\n    settle_lawsuit_approval,\n    settle_lawsuit_amount\n  };\n};\n\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, accountId, isUpdate, fromReg = false) => {\n  const\n    { operatingAgreement } = registration,\n    { status: orderStatus, companyId } = operatingAgreement,\n    orderData = _compact([\n      convertOrderData(registration, true, fromReg)\n    ]),\n    orderItems = _compact([\n      convertOrderItem(registration, true)\n    ]),\n    order = _assign({\n      order_status: fromReg ? 'complete' : orderStatus,\n      order_data: orderData,\n      order_items: orderItems\n    }, getPricingInformation(registration.order));\n\n  if (!fromReg && isUpdate) {\n    order.order_uuid = registration.order.id;\n    return { order };\n  }\n\n  if (companyId) {\n    order.business_entity_uuid = companyId;\n  }\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _map from 'lodash/map';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel, isAutoIncludedInPlan } from '../../utils/PlanService';\nimport { getBasicEmailYearlyPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const purchasedEmails = (registration) => {\n  const { domainName, purchase } = registration,\n    { emailUserName, primary } = domainName,\n    { emailAddresses } = purchase;\n  if (emailAddresses && emailAddresses.length > 0) {\n    return _map(emailAddresses, (emailAddress) => {\n      return {\n        emailUserName: emailAddress.substring(0, emailAddress.lastIndexOf('@')),\n        emailDomain: emailAddress.substring(emailAddress.lastIndexOf('@') + 1)\n      };\n    });\n  }\n  return [{\n    emailUserName,\n    emailDomain: primary\n  }];\n};\n\nexport const convertOrderItem = (registration, standalone, websiteToolsStandalone) => {\n  const\n    { business, purchase, domainName, coupons } = registration,\n    { basicEmail, planLevel, websiteToolsBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    { emailInPlan } = domainName,\n    service = 'basic_email',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  if ((plan && plan.basic_email) || emailInPlan || websiteToolsBundle || websiteToolsStandalone) {\n    // eslint-disable-next-line no-unused-vars\n    return _map(purchasedEmails(registration), (_emailAddress) => {\n      return {\n        service,\n        jurisdiction,\n        price: 0,\n        coupon: 0,\n        fees: 0,\n        term: 12,\n        period: 1,\n        is_add_on: false,\n        ...(plan?.uuid && { affiliate_plan_option_uuid: plan.uuid })\n      };\n    });\n  }\n\n  const\n    price = plan ? pricing.servicePrice : getBasicEmailYearlyPrice(),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0,\n    term = 12,\n    period = 1;\n\n  if (standalone || basicEmail || isAutoIncludedInPlan(plan, 'basic_email')) {\n    // eslint-disable-next-line no-unused-vars\n    return _map(purchasedEmails(registration), (_emailAddress) => {\n      return {\n        service,\n        price,\n        coupon,\n        fees,\n        term,\n        period,\n        jurisdiction,\n        is_add_on: !standalone && !!plan\n      };\n    });\n  }\n  return [];\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, domainName, purchase } = registration,\n    { emailSkip } = domainName,\n    { planLevel, basicEmail } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'basic_email',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isAutoIncluded = isAutoIncludedInPlan(plan, 'basic_email');\n  if ((plan && plan.basic_email) || basicEmail || isAutoIncluded || standalone) {\n    return _map(purchasedEmails(registration), ({ emailUserName, emailDomain }) => {\n      return {\n        service,\n        jurisdiction,\n        standalone,\n        is_new_business: !standalone,\n        is_auto_included: isAutoIncluded,\n        email_address: emailUserName,\n        domain_name: emailDomain,\n        skip: emailSkip || false\n      };\n    });\n  }\n  return [];\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      ...convertOrderData(registration, true)\n    ],\n    orderItems = [\n      ...convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.domainName.companyId\n    }, getPricingInformation(registration.order));\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","/* eslint-disable camelcase */\nimport _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { buildEntityName, convertAddress, convertContactIfIdentified, convertDirectors, convertManagers, convertMembers, convertOfficers, convertRegisteredAgent, getPricingInformation, decorateAccount } from './BaseDataConverter';\nimport { ACTIONS, URLS } from '../../constants/complete_blr';\nimport { getBusinessLicensePrice } from '../../utils/ProductService';\nimport { ORDER_STATUSES } from '../../constants/ui';\n\nconst service = 'business_license_report';\nconst\n  /* eslint-disable camelcase */\n  convertAccount = (registration) => {\n    const\n      { customer, lead } = registration,\n      { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password } = customer,\n      { leadUUID: lead_uuid } = lead,\n      { cardToken: card_token } = customer;\n\n    return decorateAccount({ lead_uuid, first_name, middle_name, last_name, suffix, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', card_token });\n  };\n  /* eslint-enable camelcase */\n\nexport const convertBusinessData = (blr) => {\n  const { businessOutOfHome, businessIndustryId, businessIndustryLabel, hasEmployees, employeesCount, hasDBAs, existingCompany } = blr,\n    businessData = {\n    };\n\n  if (businessOutOfHome !== null) {\n    businessData.out_of_home = businessOutOfHome;\n  }\n  if (businessIndustryId !== null) {\n    businessData.industry_id = businessIndustryId;\n    businessData.industry_label = businessIndustryLabel;\n  }\n  if (hasDBAs !== null) {\n    businessData.has_trade_names = hasDBAs;\n  }\n  if (hasEmployees !== null) {\n    businessData.has_employees = hasEmployees;\n    businessData.employees_count = employeesCount;\n  }\n  businessData.existing_company = existingCompany || false;\n  return businessData;\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, postpurchase } = registration,\n    { purchaseBLR } = postpurchase,\n    { requestedJurisdiction: jurisdiction } = business;\n\n  if (standalone || purchaseBLR) {\n    return { service, jurisdiction, price: getBusinessLicensePrice(), fees: 0, is_add_on: false };\n  }\n  return null;\n};\n\n/* eslint-disable camelcase */\n/* eslint-disable max-statements */\nexport const convertOrderData = (registration, standalone) => {\n  const { business, businessAddresses, customer, contact, directors, managers, members, officers, postpurchase, purchase, registeredAgent, blr, order, page } = registration,\n    { purchaseBLR } = postpurchase,\n    { requestedJurisdiction: jurisdiction } = business;\n\n  if (!purchase.blr && !purchaseBLR && !standalone) {\n    return null;\n  }\n\n  const\n    { type, name, indicator, description: business_purpose, status } = business,\n    { mailing, physical, principal } = businessAddresses,\n    { dbas: trade_names, hasDBAs: has_trade_name, phoneNumber: phone, existingCompany } = blr,\n    { id = '' } = order,\n    { completedAction, completedUrl, completedActionIndex } = page,\n    isLLC = type === 'LLCX',\n    isCorp = type === 'CORP',\n    baseIndex = existingCompany ? 5901 : 5900,\n    baseUrl = existingCompany ? URLS.START_BLR_DATA : URLS.START_BUS_DATA,\n    baseAction = existingCompany ? ACTIONS.START_BLR_DATA : ACTIONS.START_BUS_DATA;\n\n  if (!standalone || existingCompany) {\n    const data = {\n      service,\n      jurisdiction,\n      standalone: false,\n      is_new_business: false,\n      is_auto_included: false,\n      has_trade_name,\n      trade_names,\n      business_data: convertBusinessData(blr)\n    };\n    if (standalone && status === 'incomplete') {\n      if (name) {\n        data.entity_name = name;\n      }\n      data.completed_action = id ? completedAction : baseAction;\n      data.completed_url = id ? completedUrl : baseUrl;\n      data.completed_action_index = id ? completedActionIndex : baseIndex;\n    }\n    return data;\n  }\n\n  const\n    data = _assign({\n      service,\n      standalone,\n      jurisdiction,\n      domestic_jurisdiction: jurisdiction,\n      entity_type: type === 'LLCX' ? 'llc' : 'corp',\n      entity_name: buildEntityName(name, indicator),\n      is_new_business: true,\n      address: convertAddress(physical),\n      mailing_address: convertAddress(mailing),\n      principal_address: convertAddress(principal),\n      first_name: contact ? contact.firstName : customer.firstName || '',\n      middle_name: contact ? contact.middleName : customer.middleName || '',\n      last_name: contact ? contact.lastName : customer.firstName || '',\n      suffix: contact ? contact.suffix : customer.suffix || '',\n      county: physical.county,\n      phone,\n      has_trade_name,\n      trade_names,\n      business_data: convertBusinessData(blr),\n      business_purpose\n    },\n    convertContactIfIdentified(contact),\n    isLLC ? convertManagers(managers) : {},\n    isCorp ? convertDirectors(directors) : {},\n    isLLC ? convertMembers(members) : {},\n    isCorp ? convertOfficers(officers) : {},\n    isLLC || isCorp ? convertRegisteredAgent(registeredAgent, business, { registeredAgent: false }) : {}\n    );\n\n  if (status === ORDER_STATUSES.incomplete) {\n    data.completed_action = id ? completedAction : baseAction;\n    data.completed_url = id ? completedUrl : baseUrl;\n    data.completed_action_index = id ? completedActionIndex : baseIndex;\n  }\n  return data;\n};\n\nexport const buildOrder = (registration, isUpdate) => {\n  const\n    { business, order: registrationOrder } = registration,\n    { status: orderStatus } = business,\n    orderData = _compact([\n      convertOrderData(registration, true)\n    ]);\n\n  const order = _assign({\n    order_status: orderStatus,\n    order_data: orderData\n  }, getPricingInformation(registration.order));\n\n\n  if (isUpdate) {\n    order.order_uuid = registrationOrder.id;\n    order.order_data[0].fulfillment_required = orderStatus === ORDER_STATUSES.incomplete;\n    if (orderStatus === ORDER_STATUSES.complete) {\n      order.order_status = registrationOrder.willMarkOrderCompleted\n        ? ORDER_STATUSES.complete\n        : ORDER_STATUSES.incomplete;\n    }\n    return { order };\n  }\n\n  const\n    { id: businessId } = business,\n    accountId = registration.customer.id || '',\n    account = accountId ? null : convertAccount(registration);\n\n  order.order_items = _compact([\n    convertOrderItem(registration, true)\n  ]);\n\n  if (accountId) {\n    if (businessId) {\n      order.business_entity_uuid = businessId;\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n  return {\n    account,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\nimport _reduce from 'lodash/reduce';\n\nimport { buildEntityName, convertAddress, convertContact, convertDirectors, convertManagers, convertMembers, convertOfficers, getPricingInformation, decorateAccount, hasContactIdentity } from './BaseDataConverter';\nimport { ACTIONS, URLS } from '../../constants/complete_cora';\nimport { getPlanLevel } from '../../utils/PlanService';\n\n/* eslint-disable camelcase */\nconst\n  convertAccount = (registration) => {\n    const\n      { customer, lead } = registration,\n      { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password } = customer,\n      { cardToken: card_token } = customer,\n      { leadUUID: lead_uuid } = lead;\n\n    return decorateAccount(_assign({ lead_uuid, first_name, middle_name, last_name, suffix, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', card_token }, convertAddress(customer)));\n  },\n  getEntityType = (type) => {\n    if (type === 'LLCX') {\n      return 'llc';\n    }\n    if (type === 'CORP') {\n      return 'corp';\n    }\n    return '';\n  },\n  createOrderItemsForJurisdiction = (planLevel, requestedJurisdiction, domesticJurisdiction, typeKey, isFormed, filingFees) => {\n    const plan = getPlanLevel(planLevel, requestedJurisdiction),\n      couponItem = plan.coupon,\n      coupon = couponItem ? couponItem.amount : 0,\n      jurisdiction = requestedJurisdiction,\n      jurKey = requestedJurisdiction === domesticJurisdiction ? 'domestic' : 'foreign',\n      prices = plan[typeKey].prices,\n      price = prices['1'],\n      fees = isFormed ? filingFees[requestedJurisdiction].change_of_registered_agent[typeKey][jurKey].fees : 0,\n      term = 12,\n      period = 1,\n      is_add_on = false,\n      items = [{\n        service: 'registered_agent_service',\n        jurisdiction,\n        price: 0,\n        coupon: 0,\n        fees: 0,\n        term,\n        period,\n        is_add_on\n      }];\n\n    if (isFormed) {\n      items.push({\n        service: 'change_of_registered_agent',\n        jurisdiction,\n        price: 0,\n        fees,\n        is_add_on\n      });\n    }\n    if (plan.worry_free_service) {\n      items.push({\n        service: 'worry_free_service',\n        jurisdiction,\n        price: 0,\n        fees: 0,\n        term,\n        period,\n        is_add_on\n      });\n    }\n    items.push({\n      service: plan.id,\n      jurisdiction: requestedJurisdiction,\n      price,\n      coupon,\n      fees: 0,\n      term,\n      period,\n      is_add_on,\n      affiliate_plan_option_uuid: plan.uuid\n    });\n\n    return items;\n  },\n\n  /* eslint-disable max-statements */\n  addBusinessData = (registration) => {\n    const\n      { business, businessAddresses, contact, cora, directors, managers, members, officers, order, page } = registration,\n      {\n        requestedJurisdictions,\n        domesticJurisdiction,\n        businessIndustry,\n        authorizedSignatory,\n        sopContact,\n        jurisdictionOrder,\n        existingJurisdictions,\n        filingDates,\n        stateIds,\n        statePINs,\n        pendingStates,\n        hasElectiveCEO,\n        electiveCEO,\n        domesticEntity,\n        hasFormation,\n        needsDomesticJurisdictionData,\n        needsPrincipals,\n        needsContact,\n        needsCoraContacts,\n        needsBusinessData,\n        needsBusinessIndustry,\n        needsAddresses,\n        needsPrincipalAddress\n      } = cora,\n      { type, name, indicator = '', status, description: business_purpose, businessOrderType } = business,\n      { principal, mailing, physical } = businessAddresses,\n      { phoneNumber: phone } = contact,\n      isLLC = type === 'LLCX',\n      isCorp = type === 'CORP',\n      domesticJurisdictionStatePIN = statePINs[domesticJurisdiction] || '',\n      domesticJurisdictionElectiveCEO = domesticJurisdiction === 'CA' ? electiveCEO : null,\n      isIncomplete = status === 'incomplete',\n      retVal = {};\n\n    // Add the items always included.\n    const fos = _reduce(requestedJurisdictions, (collect, reqJur) => {\n      if (reqJur !== domesticJurisdiction) {\n        const\n          fo = {\n            jurisdiction_code: reqJur\n          },\n          foFilingDate = filingDates[reqJur] || null,\n          foFilingNumber = stateIds[reqJur] || null,\n          foStatePIN = statePINs[reqJur] || null,\n          foElectiveCEO = reqJur === 'CA' ? electiveCEO : null;\n\n        if (foFilingDate) {\n          fo.jurisdiction_filing_date = foFilingDate;\n        }\n        if (foFilingNumber) {\n          fo.jurisdiction_filing_number = foFilingNumber;\n        }\n        if (foStatePIN || foElectiveCEO) {\n          fo.extra_state_info = {};\n          if (foStatePIN) {\n            fo.extra_state_info.state_pin = foStatePIN;\n          }\n          if (foElectiveCEO) {\n            fo.extra_state_info.elective_ceo = convertContact(foElectiveCEO).contact;\n          }\n        }\n        collect.push(fo);\n      }\n      return collect;\n    }, []);\n    if (fos.length) {\n      retVal.foreign_jurisdiction_objects = fos;\n    }\n\n    // Add the domestic jurisdiction data if needed.\n    if (needsDomesticJurisdictionData || isIncomplete) {\n      const djFilingDate = filingDates[domesticJurisdiction] || null,\n        djStateId = stateIds[domesticJurisdiction] || null;\n\n      if (djFilingDate) {\n        retVal.domestic_jurisdiction_filing_date = djFilingDate;\n      }\n      if (djStateId) {\n        retVal.domestic_jurisdiction_filing_number = djStateId;\n      }\n      if (domesticJurisdictionStatePIN || domesticJurisdictionElectiveCEO) {\n        retVal.domestic_jurisdiction_state_info = {};\n        if (domesticJurisdictionStatePIN) {\n          retVal.domestic_jurisdiction_state_info.jurisdiction_state_pin = domesticJurisdictionStatePIN;\n        }\n        if (domesticJurisdictionElectiveCEO) {\n          retVal.domestic_jurisdiction_state_info.jurisdiction_elective_ceo = convertContact(domesticJurisdictionElectiveCEO).contact;\n        }\n      }\n    }\n\n    if (needsBusinessData || isIncomplete) {\n      _assign(retVal, {\n        entity_type: getEntityType(type),\n        entity_name: buildEntityName(name, indicator),\n        business_purpose\n      });\n    }\n\n    if (needsBusinessIndustry || isIncomplete) {\n      retVal.business_industry = businessIndustry;\n    }\n\n    if (needsAddresses || isIncomplete) {\n      retVal.address = convertAddress(physical);\n      retVal.mailing_address = convertAddress(mailing);\n      retVal.phone = phone;\n    }\n\n    if (needsPrincipalAddress || needsAddresses || isIncomplete) {\n      retVal.principal_address = convertAddress(principal);\n    }\n\n    if (needsPrincipals || isIncomplete) {\n      if (isLLC) {\n        _assign(retVal, convertManagers(managers), convertMembers(members));\n      }\n      if (isCorp) {\n        _assign(retVal, convertDirectors(directors), convertOfficers(officers));\n      }\n    }\n\n    if (needsContact || isIncomplete) {\n      // API-949: the CoRA flow never dispatches setContactData, so registration.contact\n      // stays at its empty initial state. Fall back to authorizedSignatory so we POST\n      // real identity data instead of a blank contact template.\n      const hasContactData = contact && (contact.firstName || contact.companyName);\n      const contactSource = hasContactData ? contact : (authorizedSignatory || contact);\n      // API-934: only emit the contact when the chosen source satisfies the\n      // ContactHandler identity rule (first_name, company_name, or email). Emitting a\n      // blank contact 422s at process-fulfillment; omitting it (rather than writing\n      // null) leaves any existing backend contact untouched under per-task PATCH —\n      // important when slim re-hydration leaves redux state empty.\n      if (hasContactIdentity(contactSource)) {\n        _assign(retVal, convertContact(contactSource));\n      }\n    }\n\n    if (needsCoraContacts || isIncomplete) {\n      // API-949: never write an empty {} — orders-api persists it verbatim, and on\n      // re-read the empty dict gets fed through convertContact as a real contact.\n      // API-934: also reject identity-less contacts (blank name + email) — see\n      // hasContactIdentity above — so we never PATCH a contact that fails the\n      // ContactHandler at process-fulfillment.\n      _assign(retVal, {\n        authorized_signatory: hasContactIdentity(authorizedSignatory) ? _assign(convertContact(authorizedSignatory).contact, { title: authorizedSignatory.title }) : null,\n        sop_contact: hasContactIdentity(sopContact) ? convertContact(sopContact).contact : null\n      });\n    }\n\n    if (isIncomplete) {\n      const\n        { id = '' } = order,\n        { completedAction, completedUrl, completedActionIndex } = page;\n\n      _assign(retVal, {\n        needs_addresses: needsAddresses,\n        needs_business_data: needsBusinessData,\n        needs_business_industry: needsBusinessIndustry,\n        needs_contact: needsContact,\n        needs_cora_contacts: needsCoraContacts,\n        needs_domestic_jurisdiction_data: needsDomesticJurisdictionData,\n        needs_principal_address: needsPrincipalAddress,\n        needs_principals: needsPrincipals,\n        domestic_entity: domesticEntity,\n        has_elective_ceo: hasElectiveCEO,\n        has_existing_business: hasFormation,\n        completed_action: id ? completedAction : ACTIONS.START,\n        completed_url: id ? completedUrl : URLS.START,\n        completed_action_index: id ? completedActionIndex : 5500,\n        jurisdiction_order: jurisdictionOrder,\n        existing_jurisdictions: existingJurisdictions,\n        business_order_type: businessOrderType,\n        pending_states: pendingStates,\n        is_primary: true\n      });\n    }\n\n    return retVal;\n  },\n  /* eslint-enable max-statements */\n\n  createOrderDatasForJurisdiction = (requestedJurisdiction, includeBusinessData, registration) => {\n    const\n      { cora, purchase } = registration,\n      { domesticJurisdiction, pendingStates } = cora,\n      { planLevel } = purchase,\n      plan = getPlanLevel(planLevel, requestedJurisdiction),\n      jurisdiction = requestedJurisdiction,\n      isFormed = !pendingStates[jurisdiction],\n      datas = [],\n      raData = {\n        service: 'registered_agent_service',\n        jurisdiction: requestedJurisdiction,\n        domestic_jurisdiction: domesticJurisdiction,\n        standalone: includeBusinessData,\n        is_truic_ra: false,\n        is_new_business: false,\n        is_auto_included: false,\n        is_cora: true\n      };\n\n    if (includeBusinessData) {\n      _assign(raData, addBusinessData(registration));\n    }\n    datas.push(raData);\n\n    if (isFormed) {\n      datas.push({\n        service: 'change_of_registered_agent',\n        jurisdiction,\n        domestic_jurisdiction: domesticJurisdiction,\n        standalone: false,\n        is_new_business: false,\n        is_auto_included: false\n      });\n    }\n    if (plan.worry_free_service) {\n      datas.push({\n        service: 'worry_free_service',\n        jurisdiction,\n        is_auto_included: false\n      });\n    }\n    datas.push({\n      service: plan.id,\n      jurisdiction,\n      standalone: false,\n      is_new_business: false,\n      level: planLevel,\n      plan\n    });\n    return datas;\n  };\n\n// API-949: exported for unit tests covering the contact/authorizedSignatory fallback\nexport { addBusinessData };\n\nexport const convertOrderItems = (registration, filingFees) => {\n  const\n    { business, cora, purchase } = registration,\n    { type } = business,\n    { requestedJurisdictions, domesticJurisdiction, pendingStates, upsellDomJur } = cora,\n    { planLevel } = purchase,\n    typeKey = type === 'CORP' ? 'corp' : 'llc',\n    reqJurs = _reduce(requestedJurisdictions, (collect, reqJur) => {\n      if (reqJur === domesticJurisdiction) {\n        collect.unshift(reqJur);\n      } else {\n        collect.push(reqJur);\n      }\n      return collect;\n    }, []);\n\n  if (upsellDomJur) {\n    reqJurs.unshift(domesticJurisdiction);\n  }\n  const\n    datas = _reduce(reqJurs, (collect, requestedJurisdiction) => {\n      const isFormed = !pendingStates[requestedJurisdiction];\n\n      collect.push(...createOrderItemsForJurisdiction(planLevel, requestedJurisdiction, domesticJurisdiction, typeKey, isFormed, filingFees));\n      return collect;\n    }, []);\n\n  return datas;\n};\n\nconst convertOrderData = (registration) => {\n  const\n    { cora } = registration,\n    { requestedJurisdictions, domesticJurisdiction, upsellDomJur } = cora,\n    reqJurs = _reduce(requestedJurisdictions, (collect, reqJur) => {\n      if (reqJur === domesticJurisdiction) {\n        collect.unshift(reqJur);\n      } else {\n        collect.push(reqJur);\n      }\n      return collect;\n    }, []);\n\n  if (upsellDomJur) {\n    reqJurs.unshift(domesticJurisdiction);\n  }\n\n  const\n    items = _reduce(reqJurs, (collect, requestedJurisdiction, index) => {\n      collect.push(...createOrderDatasForJurisdiction(requestedJurisdiction, index === 0, registration));\n      return collect;\n    }, []);\n\n  return items;\n};\n\nexport const buildOrder = (registration, filingFees, isUpdate) => {\n  const\n    { business } = registration,\n    { status: orderStatus } = business,\n    orderData = _compact([\n      ...convertOrderData(registration)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData\n    }, getPricingInformation(registration.order));\n\n  if (isUpdate) {\n    order.order_uuid = registration.order.id;\n    return { order };\n  }\n\n  const\n    { id: businessId } = business,\n    accountId = registration.customer.id || '',\n    account = accountId ? null : convertAccount(registration, filingFees);\n\n  order.order_items = _compact([\n    ...convertOrderItems(registration, filingFees)\n  ]);\n\n  if (accountId) {\n    if (businessId) {\n      order.business_entity_uuid = businessId;\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n\n  return {\n    account,\n    order\n  };\n};\n","/*\nNOTE - anonymity can only be purchased as part of a purchase plan at this time. The price and fees will always be 0.\n*/\n\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getAnonymityYearlyPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const zenBusinessRegisteredAgent = {\n  first_name: '',\n  last_name: '',\n  company_name: 'ZenBusiness INC',\n  address_1: '5900 Balcones Drive',\n  address_2: 'STE 5000',\n  city: 'Austin',\n  state: 'TX',\n  zip: '78731',\n  phone: '',\n  email: ''\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { anonymity, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'anonymity',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  if (plan && plan.anonymity) {\n    return { service, jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: 1, is_add_on: false };\n  }\n\n  const\n    price = plan ? pricing.servicePrice : getAnonymityYearlyPrice(),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0,\n    term = 12,\n    period = 1;\n\n  if (standalone || anonymity) {\n    return { service, price, coupon, fees, term, period, jurisdiction, is_add_on: !standalone && !!plan };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { planLevel, anonymity } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'anonymity',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if ((plan && plan.anonymity) || anonymity) {\n    return { service, jurisdiction, standalone, is_new_business: !standalone, registered_agent: zenBusinessRegisteredAgent };\n  }\n  return null;\n};\n","import _assign from 'lodash/assign';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getCorporateDocsPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone, isPostPurchase) => {\n  const\n    { business, postpurchase, purchase } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { purchaseCD } = postpurchase,\n    { corporateDocs, planLevel, einBusinessDocsBundle } = purchase,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    fees = 0,\n    service = 'corporate_docs';\n\n  if (standalone) {\n    return { service, jurisdiction, price: getCorporateDocsPrice(), fees, is_add_on: false };\n  }\n  if (isPostPurchase) {\n    if (purchaseCD) {\n      return { service, jurisdiction, price: getCorporateDocsPrice(), fees, is_add_on: false };\n    }\n    return null;\n  }\n\n  if ((plan && plan.corporate_docs) || einBusinessDocsBundle) {\n    return { service, jurisdiction, price: 0, fees: 0, is_add_on: false };\n  }\n  if (corporateDocs) {\n    return { service, jurisdiction, price: getCorporateDocsPrice(), fees, is_add_on: false };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone, isPostPurchase) => {\n  const\n    service = 'corporate_docs',\n    { business, postpurchase, purchase } = registration,\n    { requestedJurisdiction } = business,\n    { purchaseCD } = postpurchase,\n    { planLevel, corporateDocs } = purchase,\n    plan = planLevel ? getPlanLevel(planLevel, requestedJurisdiction) : null,\n    isEnabled = standalone || (isPostPurchase && purchaseCD) || (!isPostPurchase && ((plan && plan.corporate_docs) || corporateDocs));\n\n  return isEnabled ? {\n    service,\n    jurisdiction: requestedJurisdiction,\n    standalone,\n    is_new_business: false\n  } : null;\n};\n\nexport const buildOrder = (registration, accountId, filingFees) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true, false)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true, false, filingFees)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.corpDocs.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n\n","/*\nNOTE - cpa consultation can only be purchased as part of a package at this time. The price and fees will always be 0.\n */\nimport _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getCPAConsultPrice } from '../../utils/ProductService';\n\nconst convertOrderItemStandalone = (jurisdiction, standalone) => {\n  if (!standalone) {\n    return null;\n  }\n  const\n    service = 'cpa_consult';\n\n  return { service, jurisdiction, price: 0, fees: 0, is_add_on: false };\n};\n\nconst convertOrderDataStandalone = (jurisdiction, standalone) => {\n  const\n    service = 'cpa_consult';\n\n  return standalone ? {\n    service,\n    jurisdiction,\n    standalone,\n    is_new_business: !standalone\n  } : null;\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { planLevel, cpaConsult } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'cpa_consult',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if (plan && plan.cpa_consult) {\n    return null; // Do not send if part of a plan - this must be activated from dashboard\n  }\n\n  const\n    price = getCPAConsultPrice(),\n    fees = 0;\n\n  if (standalone || cpaConsult) {\n    return { service, price, fees, jurisdiction, is_add_on: !standalone && !!plan };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { planLevel, cpaConsult } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'cpa_consult',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if (plan && plan.cpa_consult) {\n    return null; // Do not send if part of plan - this must be activated from the dashboard\n  }\n  return cpaConsult ? {\n    service,\n    jurisdiction,\n    standalone,\n    is_new_business: !standalone\n  } : null;\n};\n\nexport const buildOrder = (jurisdiction, companyId, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      convertOrderDataStandalone(jurisdiction, true)\n    ]),\n    orderItems = _compact([\n      convertOrderItemStandalone(jurisdiction, true)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: companyId\n    }, getPricingInformation({}));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _map from 'lodash/map';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel, isAutoIncludedInPlan } from '../../utils/PlanService';\nimport { getDomainNamePrivacyYearlyPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\nimport { purchasedDomains } from './DomainNameDataConverter';\n\nexport const convertOrderItem = (registration, standalone, websiteToolsStandalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { domainNamePrivacy, planLevel, websiteToolsBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'domain_name_privacy',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  if ((plan && plan.domain_name_privacy) || websiteToolsBundle || websiteToolsStandalone) {\n    // eslint-disable-next-line no-unused-vars\n    return _map(purchasedDomains(registration), (_domainName) => {\n      return {\n        service,\n        jurisdiction,\n        price: 0,\n        coupon: 0,\n        fees: 0,\n        term: 12,\n        period: 1,\n        is_add_on: false,\n        ...(plan?.uuid && { affiliate_plan_option_uuid: plan.uuid })\n      };\n    });\n  }\n\n  const\n    price = plan ? pricing.servicePrice : getDomainNamePrivacyYearlyPrice(),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0,\n    term = 12,\n    period = 1;\n\n  if (standalone || domainNamePrivacy || isAutoIncludedInPlan(plan, 'domain_name_privacy')) {\n    // eslint-disable-next-line no-unused-vars\n    return _map(purchasedDomains(registration), (_domainName) => {\n      return {\n        service,\n        jurisdiction,\n        price,\n        coupon,\n        fees,\n        term,\n        period,\n        is_add_on: !standalone && !!plan\n      };\n    });\n  }\n  return [];\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { planLevel, domainNamePrivacy } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'domain_name_privacy',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isAutoIncluded = isAutoIncludedInPlan(plan, 'domain_name_privacy');\n\n  if ((plan && plan.domain_name_privacy) || domainNamePrivacy || isAutoIncluded || standalone) {\n    return _map(purchasedDomains(registration), (domainName) => {\n      return {\n        service,\n        jurisdiction,\n        standalone,\n        is_new_business: !standalone,\n        is_auto_included: isAutoIncluded,\n        domain_name: domainName\n      };\n    });\n  }\n  return [];\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      ...convertOrderData(registration, true)\n    ],\n    orderItems = [\n      ...convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.domainName.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\nimport _map from 'lodash/map';\n\nimport { convertOrderItem as convertBasicEmailOrderItem, convertOrderData as convertBasicEmailOrderData } from './BasicEmailConverter';\nimport { convertOrderItem as convertDomainNamePrivacyOrderItem, convertOrderData as convertDomainNamePrivacyOrderData } from './DomainNamePrivacyDataConverter';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel, isAutoIncludedInPlan } from '../../utils/PlanService';\nimport { getDomainNameYearlyPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const purchasedDomains = (registration) => {\n  const { domainName, purchase } = registration,\n    { primary } = domainName,\n    { domainNames } = purchase;\n  if (domainNames && domainNames.length > 0) {\n    return domainNames;\n  }\n  return [primary];\n};\n\nexport const convertOrderItem = (registration, standalone, websiteToolsStandalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { domainName = false, planLevel, websiteToolsBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'domain_name_reg',\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n  if ((plan && plan.domain_name_reg) || websiteToolsBundle || websiteToolsStandalone) {\n    // eslint-disable-next-line no-unused-vars\n    return _map(purchasedDomains(registration), (_domainName) => {\n      return {\n        service,\n        jurisdiction,\n        price: 0,\n        coupon: 0,\n        fees: 0,\n        term: 12,\n        period: 1,\n        is_add_on: false,\n        ...(plan?.uuid && { affiliate_plan_option_uuid: plan.uuid })\n      };\n    });\n  }\n\n  const\n    price = plan ? pricing.servicePrice : getDomainNameYearlyPrice(),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0,\n    term = 12,\n    period = 1;\n\n  if (standalone || domainName || isAutoIncludedInPlan(plan, 'domain_name_reg')) {\n    // eslint-disable-next-line no-unused-vars\n    return _map(purchasedDomains(registration), (_domainName) => {\n      return { service, jurisdiction, price, coupon, fees, term, period, is_add_on: !standalone && !!plan };\n    });\n  }\n  return [];\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, domainName, purchase } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isAutoIncluded = isAutoIncludedInPlan(plan, 'domain_name_reg');\n\n  if (!(plan && plan.domain_name_reg) && !purchase.domainName && !standalone && !isAutoIncluded) {\n    return [];\n  }\n  const { alternates, verified, skip } = domainName;\n  return _map(purchasedDomains(registration), (primary) => {\n    return {\n      service: 'domain_name_reg',\n      standalone,\n      is_new_business: !standalone,\n      is_auto_included: isAutoIncluded,\n      jurisdiction,\n      primary,\n      alternates,\n      domain_verified: verified,\n      skip: skip || false\n    };\n  });\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      ...convertOrderData(registration, true),\n      ...convertBasicEmailOrderData(registration, false),\n      ...convertDomainNamePrivacyOrderData(registration, false)\n    ]),\n    orderItems = _compact([\n      ...convertOrderItem(registration, true),\n      ...convertBasicEmailOrderItem(registration, false),\n      ...convertDomainNamePrivacyOrderItem(registration, false)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.domainName.companyId\n    }, getPricingInformation(registration.order));\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { buildEntityName, convertAddress, convertUser, convertContactIfIdentified, getPricingInformation, decorateAccount } from './BaseDataConverter';\nimport { ACTIONS, URLS } from '../../constants/complete_ein';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getEINPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nconst getPricingAndCouponAmount = (registration) => {\n  const\n    { business, purchase, coupons } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'ein_creation',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n  return { pricing, plan };\n};\n\nconst\n  convertTaxData = (ein) => {\n    const { llcMarried, llcSingleMember, taxedAsSCorp } = ein,\n      taxInfo = {};\n\n    if (llcMarried !== null) {\n      taxInfo.members_are_married = llcMarried;\n    }\n    if (llcSingleMember !== null) {\n      taxInfo.taxed_as_single_member_llc = llcSingleMember;\n    }\n    if (taxedAsSCorp !== null) {\n      taxInfo.taxed_as_s_corp = taxedAsSCorp;\n    }\n\n    return taxInfo;\n  },\n\n  /* eslint-disable max-statements */\n  convertBusinessData = (ein) => {\n    const { gambling, atf, employeesW2, w2WagesPaidDate, w2AgriculturalEmployeeCount, w2OtherEmployeeCount, w2WagesLessThan1000, corpCareOf, corpClosingMonth, startDate } = ein,\n      { motorVehicle, motorVehicleWeight, businessForm720, businessActivity1, businessActivity2, businessActivity3, businessActivity4, businessActivity5, businessActivitySpecify } = ein,\n      businessData = {\n        activity: {\n          level_1: businessActivity1,\n          level_2: businessActivity2,\n          level_3: businessActivity3,\n          level_4: businessActivity4,\n          level_5: businessActivity5,\n          specify: businessActivitySpecify\n        }\n      };\n\n    if (startDate) {\n      const startDatePieces = startDate.split('/'),\n        startDateConverted = startDatePieces.length > 2 ? `${startDatePieces[2]}-${startDatePieces[0]}-${startDatePieces[1]}` : '';\n\n      businessData.start_date = startDateConverted;\n    }\n    if (gambling !== null) {\n      businessData.gambling = gambling;\n    }\n    if (atf !== null) {\n      businessData.alcohol_tobacco_firearms = atf;\n    }\n    if (employeesW2 !== null) {\n      businessData.employees_with_w2 = employeesW2;\n      if (employeesW2) {\n        businessData.w2_wages_paid_date = w2WagesPaidDate;\n        businessData.w2_agricultural_employees_count = w2AgriculturalEmployeeCount;\n        businessData.w2_other_employees_count = w2OtherEmployeeCount;\n        businessData.w2_wages_lt_1000 = w2WagesLessThan1000;\n      }\n    }\n    if (motorVehicle !== null) {\n      businessData.highway_vehicle = motorVehicle;\n      if (motorVehicleWeight !== null) {\n        businessData.highway_vehicle_over_55000 = motorVehicleWeight;\n      }\n    }\n    if (businessForm720 !== null) {\n      businessData.files_form_720 = businessForm720;\n    }\n    businessData.corp_care_of = corpCareOf;\n    businessData.corp_closing_month = corpClosingMonth;\n    return businessData;\n  },\n  /* eslint-enable max-statements */\n\n  convertResponsibleParty = (ein) => {\n    const\n      { responsibleParty, hasSSN } = ein;\n\n    let party = {};\n\n    if (responsibleParty) {\n      party = convertUser(responsibleParty);\n      if (responsibleParty.companyName) {\n        party.legal_name = responsibleParty.legalName;\n        party.ein_number = responsibleParty.ein;\n      } else {\n        party.suffix = responsibleParty.suffix || '';\n        party.previous_ein = responsibleParty.previousEin;\n        party.alternate_last_names = responsibleParty.alternateLastNames;\n      }\n      party.collect_data_from_user = responsibleParty.collectDataFromUser || false;\n      party.has_ssn = hasSSN;\n    }\n\n    return party;\n  },\n\n  /* eslint-disable camelcase */\n  convertAccount = (registration) => {\n    const\n      { customer, lead } = registration,\n      { firstName: first_name, middleName: middle_name, lastName: last_name, email, phoneNumber: phone, password } = customer,\n      { leadUUID: lead_uuid } = lead,\n      { cardToken: card_token } = customer;\n\n    return decorateAccount({ lead_uuid, first_name, middle_name, last_name, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', card_token });\n  };\n  /* eslint-enable camelcase */\n\nexport const convertSSN = (registration) => {\n  const\n    { ein } = registration,\n    { responsibleParty } = ein;\n\n  if (!responsibleParty || !responsibleParty.ssn) {\n    return {};\n  }\n\n  // order_ssn_tokenized is sent with the same plaintext value leaving the client. When this\n  // call is routed through the VGS inbound proxy (i.e. via postpurchase/create), VGS tokenizes\n  // it in transit so the BFF receives a token — hence the field name. order_ssn remains\n  // plaintext for backwards compatibility while the downstream migration is in progress.\n  //\n  // TODO: responsibleParty.ssn holds either an SSN or an ITIN (the collection field accepts both),\n  // but there is no tax_identifier_type signal here. The BFF currently forwards this as\n  // tax_identifier_type: 'ssn' unconditionally. Investigate emitting an order_ssn_tokenized_type\n  // field alongside order_ssn_tokenized so the BFF can set the correct type on the EIN OrderTask.\n  return { order_ssn: responsibleParty.ssn, order_ssn_tokenized: responsibleParty.ssn };\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { ein, planLevel, einBusinessDocsBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'ein_creation',\n    servicePricing = getPricingAndCouponAmount(registration);\n\n  if ((plan && plan.ein_creation) || einBusinessDocsBundle) {\n    return { service, jurisdiction, price: 0, coupon: 0, fees: 0, is_add_on: false };\n  }\n  if (standalone || ein) {\n    return {\n      service,\n      jurisdiction,\n      price: plan ? servicePricing.pricing.servicePrice : getEINPrice(),\n      coupon: plan ? servicePricing.pricing.serviceCouponAmount : 0,\n      fees: 0,\n      is_add_on: !standalone && !!plan\n    };\n  }\n  return null;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const { business, businessAddresses, contact, ein, members, order, page, purchase } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction, domesticJurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if (!(plan && plan.ein_creation) && !purchase.ein && !standalone) {\n    return null;\n  }\n\n  const\n    { type, name, indicator, status, description, id: businessId } = business,\n    { principal: principalAddress, mailing: mailingAddress, physical: physicalAddress } = businessAddresses,\n    { county } = physicalAddress,\n    { reason, dbas: trade_names, phoneNumber: phone } = ein,\n    { id = '' } = order,\n    { completedAction, completedUrl, completedActionIndex } = page,\n    memberCount = members.memberCount ? members.memberCount : ein.memberCount,\n    formationType = type === 'LLCX' ? 'llc' : 'corp',\n    entityType = type === 'SOLE' ? 'sole_prop' : formationType,\n    // API-1163: only include mailing_address when it has at least one meaningful field.\n    // businessAddresses.mailing starts as EMPTY_ADDRESS (all '' / 0), and convertAddress\n    // passes those through since removeEmptyValues only strips null/undefined. Omitting the\n    // field when blank leaves any previously-saved value in zenapi intact.\n    convertedMailing = convertAddress(mailingAddress),\n    mailingField = (convertedMailing.city || convertedMailing.state || convertedMailing.zip || convertedMailing.address_1)\n      ? { mailing_address: convertedMailing }\n      : {},\n    data = _assign({\n      service: 'ein_creation',\n      standalone,\n      jurisdiction,\n      domestic_jurisdiction: domesticJurisdiction,\n      type, // Keep for backward compatibility\n      entity_type: entityType,\n      is_new_business: !standalone,\n      reason: reason || 'Started New Business',\n      member_count: memberCount || null,\n      business_purpose: description,\n      address: convertAddress(physicalAddress),\n      principal_address: convertAddress(principalAddress),\n      county,\n      phone,\n      trade_names,\n      tax_info: convertTaxData(ein),\n      business_data: convertBusinessData(ein),\n      responsible_party: convertResponsibleParty(ein)\n    }, mailingField, convertContactIfIdentified(contact));\n\n  if (standalone) {\n    if (!businessId) {\n      data.entity_name = buildEntityName(name, indicator);\n    }\n    if (status === 'incomplete') {\n      if (businessId && name) {\n        data.entity_name = buildEntityName(name, indicator);\n      }\n      data.completed_action = id ? completedAction : ACTIONS.START_EIN;\n      data.completed_url = id ? completedUrl : URLS.START_EIN;\n      data.completed_action_index = id ? completedActionIndex : 5200;\n    }\n  }\n  return data;\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, isUpdate) => {\n  const\n    { business } = registration,\n    { status: orderStatus } = business,\n    orderData = _compact([\n      convertOrderData(registration, true)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData\n    }, convertSSN(registration), getPricingInformation(registration.order));\n\n  if (isUpdate) {\n    order.order_uuid = registration.order.id;\n    return { order };\n  }\n\n  const\n    { id: businessId } = business,\n    accountId = registration.customer.id || '',\n    account = accountId ? null : convertAccount(registration);\n\n  order.order_items = _compact([\n    convertOrderItem(registration, true)\n  ]);\n\n  if (accountId) {\n    if (businessId) {\n      order.business_entity_uuid = businessId;\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n  return {\n    account,\n    order\n  };\n};\n\n","import { getPlanLevel } from '../../utils/PlanService';\nimport { getExpeditePriorityPrice, getExpediteRushPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const convertOrderItem = (registration, standalone, expediteFees) => {\n  const\n    { business, purchase, coupons } = registration,\n    { expedite, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  // DJL - any add-ons will be represented by the ExpediteUpsellDataConverter\n  if (plan) {\n    if (plan.expedite === 'standard' || !plan.expedite) {\n      return null;\n    }\n    return { service: plan.expedite === 'rush' ? 'rush' : 'expedite', jurisdiction, price: 0, coupon: 0, fees: 0, is_add_on: false };\n  }\n\n  const\n    service = expedite === 'rush' ? 'rush' : 'expedite',\n    pricing = getPriceAndCouponForService(service, plan, coupons),\n    hardcodedPrice = expedite === 'rush' ? getExpediteRushPrice() : getExpeditePriorityPrice(),\n    price = plan ? pricing.servicePrice : hardcodedPrice,\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    exFees = expediteFees[jurisdiction][expedite],\n    { fees } = exFees;\n\n  if (expedite && expedite !== 'standard') {\n    return { service, jurisdiction, price, coupon, fees, is_add_on: false };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration) => {\n  const\n    { business, purchase } = registration,\n    { expedite, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  // DJL - any add-ons will be represented by the ExpediteUpsellDataConverter\n  if (plan) {\n    if (plan.expedite === 'standard' || !plan.expedite) {\n      return null;\n    }\n    return { service: plan.expedite === 'rush' ? 'rush' : 'expedite', jurisdiction };\n  }\n\n  const\n    service = expedite === 'rush' ? 'rush' : 'expedite';\n\n  return expedite && expedite !== 'standard' ? { service, jurisdiction } : null;\n};\n","import { getPlanLevel } from '../../utils/PlanService';\nimport { getExpeditePriorityPrice, getExpediteRushPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const convertOrderItem = (registration, standalone, expediteFees) => {\n  const\n    { business, purchase, coupons } = registration,\n    { expedite, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if (!plan || !expedite || plan.expedite === 'rush' || plan.expedite === expedite || (plan.expedite === 'priority' && expedite === 'standard')) {\n    return null;\n  }\n\n  const\n    baseService = expedite === 'rush' ? 'rush' : 'expedite',\n    service = plan.expedite === 'priority' && expedite === 'rush' ? 'expedite_to_rush_upgrade' : baseService,\n    pricing = getPriceAndCouponForService(service, plan, coupons),\n    hardcodedPrice = expedite === 'rush' ? getExpediteRushPrice() : getExpeditePriorityPrice(),\n    price = plan ? pricing.servicePrice : hardcodedPrice,\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    exFees = expediteFees[jurisdiction][expedite],\n    { fees } = exFees;\n\n  return { service, jurisdiction, price, coupon, fees, is_add_on: true };\n};\n\nexport const convertOrderData = (registration) => {\n  const\n    { business, purchase } = registration,\n    { expedite, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if (!plan || !expedite || plan.expedite === 'rush' || plan.expedite === expedite || (plan.expedite === 'priority' && expedite === 'standard')) {\n    return null;\n  }\n\n  const\n    baseService = expedite === 'rush' ? 'rush' : 'expedite',\n    service = plan.expedite === 'priority' && expedite === 'rush' ? 'expedite_to_rush_upgrade' : baseService;\n\n  return { service, jurisdiction };\n};\n","/*\nNOTE - cpa assessment can only be purchased as part of a package at this time. The price and fees will always be 0.\n */\nimport _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getInitialCPAScreeningPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nconst convertOrderItemStandalone = (jurisdiction, standalone) => {\n  if (!standalone) {\n    return null;\n  }\n  const\n    service = 'initial_cpa_screening';\n\n  return { service, jurisdiction, price: 0, coupon: 0, fees: 0, is_add_on: false };\n};\n\nconst convertOrderDataStandalone = (jurisdiction, standalone) => {\n  const\n    service = 'initial_cpa_screening';\n\n  return standalone ? {\n    service,\n    jurisdiction,\n    standalone,\n    is_new_business: !standalone\n  } : null;\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { planLevel, initialCPAScreening } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'initial_cpa_screening',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  if (plan && plan.initial_cpa_screening) {\n    return null; // Do not send if part of a plan - this must be activated from dashboard\n  }\n\n  const\n    price = plan ? pricing.servicePrice : getInitialCPAScreeningPrice(),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0;\n\n  if (standalone || initialCPAScreening) {\n    return { service, price, coupon, fees, jurisdiction, is_add_on: !standalone && !!plan };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { planLevel, initialCPAScreening } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'initial_cpa_screening',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if (plan && plan.initial_cpa_screening) {\n    return null; // Do not send if part of plan - this must be activated from the dashboard\n  }\n  return initialCPAScreening ? {\n    service,\n    jurisdiction,\n    standalone,\n    is_new_business: !standalone\n  } : null;\n};\n\nexport const buildOrder = (jurisdiction, companyId, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      convertOrderDataStandalone(jurisdiction, true)\n    ]),\n    orderItems = _compact([\n      convertOrderItemStandalone(jurisdiction, true)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: companyId\n    }, getPricingInformation({}));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { buildEntityName, convertAddress, convertContactIfIdentified, convertManagers, convertMembers, convertRegisteredAgent, getPricingInformation, decorateAccount } from './BaseDataConverter';\nimport { ACTIONS, URLS } from '../../constants/complete_nypub';\nimport { getNYPubPrice, getNYPubFees, getGAPubPrice, getPAPubPrice } from '../../utils/ProductService';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nconst getPricingAndCouponAmount = (registration) => {\n  const\n    { business, purchase, coupons } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'ny_publication',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  return { pricing, plan };\n};\n\n/* eslint-disable camelcase */\nconst convertAccount = (registration) => {\n  const\n    { customer, lead } = registration,\n    { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password } = customer,\n    { cardToken: card_token } = customer,\n    { leadUUID: lead_uuid } = lead;\n\n  return decorateAccount({ lead_uuid, first_name, middle_name, last_name, suffix, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', card_token });\n};\n/* eslint-enable camelcase */\n\nconst getPubFee = (registration, filingFees) => {\n\n  const { nypub } = registration,\n    { nyPubCountyCode, useAlbany, pubState } = nypub;\n\n  if (pubState === 'GA') {\n    return getGAPubPrice();\n  } if (pubState === 'PA') {\n    return getPAPubPrice();\n  }\n  return getNYPubFees(useAlbany || !nyPubCountyCode ? 'albany' : nyPubCountyCode, filingFees);\n\n};\n\nconst getEntityType = (type) => {\n  return type === 'CORP' ? 'corp' : 'llc';\n};\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const { business: { requestedJurisdiction: jurisdiction }, purchase: { nyPublication } } = registration,\n    service = 'ny_publication',\n    servicePricing = getPricingAndCouponAmount(registration),\n    fees = getPubFee(registration, filingFees);\n\n  if ((standalone || nyPublication) && (jurisdiction === 'NY' || jurisdiction === 'GA' || jurisdiction === 'PA')) {\n    return {\n      service,\n      price: servicePricing.plan ? servicePricing.pricing.servicePrice : getNYPubPrice(),\n      coupon: servicePricing.plan ? servicePricing.pricing.serviceCouponAmount : 0,\n      fees,\n      jurisdiction,\n      is_add_on: !standalone\n    };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, isLLC, isStandalone) => {\n  const { business, businessAddresses, contact, managers, members, nypub, purchase, order, page, registeredAgent } = registration;\n\n  if ((!purchase.nyPublication && !isStandalone) || (business.requestedJurisdiction !== 'NY' && business.requestedJurisdiction !== 'GA' && business.requestedJurisdiction !== 'PA')) {\n    return null;\n  }\n\n  const { requestedJurisdiction: jurisdiction, type, name, indicator, status, description } = business,\n    { mailing, physical, principal } = businessAddresses,\n    { nyPubCounty, useAlbany } = nypub,\n    { phoneNumber: phone } = contact,\n    { id = '' } = order,\n    { completedAction, completedUrl, completedActionIndex } = page;\n  let countyName = '';\n\n  countyName = (useAlbany || !nyPubCounty) ? 'Albany County' : nyPubCounty;\n\n  if (jurisdiction === 'GA' && registeredAgent.type === 'ZenBusiness') {\n    countyName = 'Fulton County';\n  } else if (jurisdiction === 'PA' && registeredAgent.type === 'ZenBusiness') {\n    countyName = 'Dauphin County';\n  }\n\n\n  const dat = _assign({\n    service: 'ny_publication',\n    standalone: isStandalone,\n    jurisdiction,\n    domestic_jurisdiction: jurisdiction,\n    ny_publication_county: countyName,\n    type: business.type, // Keep for backward compatibility\n    entity_type: getEntityType(type),\n    entity_name: buildEntityName(name, indicator),\n    business_purpose: description,\n    is_new_business: false,\n    principal_address: convertAddress(principal),\n    mailing_address: convertAddress(mailing),\n    address: convertAddress(physical),\n    first_name: contact ? contact.firstName : '',\n    last_name: contact ? contact.lastName : '',\n    phone,\n    estimated_formation_date: '',\n    activity: '',\n    // Used with standalone RA\n    domestic_entity: true,\n    foreign_jurisdictions: [],\n    domestic_filing_date: '',\n    state_id: ''\n  },\n  convertContactIfIdentified(contact),\n  convertManagers(managers),\n  convertMembers(members),\n  convertRegisteredAgent(registeredAgent, business, { registeredAgent: false })\n  );\n\n  if (isStandalone) {\n    dat.entity_name = name;\n    if (status === 'incomplete') {\n      dat.completed_action = id ? completedAction : ACTIONS.START;\n      dat.completed_url = id ? completedUrl : URLS.START;\n      dat.completed_action_index = id ? completedActionIndex : 5700;\n    }\n  }\n\n  return dat;\n};\n\nexport const buildOrder = (registration, isLLC, filingFees, isUpdate) => {\n  const\n    { business } = registration,\n    { status: orderStatus } = business,\n    orderData = _compact([\n      convertOrderData(registration, isLLC, true)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData\n    }, getPricingInformation(registration.order));\n\n  if (isUpdate) {\n    order.order_uuid = registration.order.id;\n    return { order };\n  }\n\n  const\n    { id: businessId } = business,\n    accountId = registration.customer.id || '',\n    account = accountId ? null : convertAccount(registration);\n\n  order.order_items = _compact([\n    convertOrderItem(registration, true, filingFees)\n  ]);\n\n  if (accountId) {\n    if (businessId) {\n      order.business_entity_uuid = businessId;\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n  return {\n    account,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { getPricingInformation, decorateAccount, convertUser } from './BaseDataConverter';\nimport { getPlanLevel, isAutoIncludedInPlan } from '../../utils/PlanService';\nimport { getRAYearlyPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nconst getPricingAndCouponAmount = (registration) => {\n  const\n    { business, purchase, coupons } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'registered_agent_service',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n  return { pricing, plan };\n};\n\n/* eslint-disable camelcase */\nconst\n  convertAccount = (registration) => {\n    const\n      { customer, lead } = registration,\n      { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password } = customer,\n      { cardNumber: number, expMonth, expYear, cvc } = customer,\n      { leadUUID: lead_uuid } = lead,\n      servicePricing = getPricingAndCouponAmount(registration),\n      amount = servicePricing ? servicePricing.pricing.servicePrice : getRAYearlyPrice(),\n      card = { number, exp_month: parseInt(expMonth, 10), exp_year: 2000 + parseInt(expYear, 10), cvc, amount, default: true };\n\n    return decorateAccount({ lead_uuid, first_name, middle_name, last_name, suffix, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', card });\n  };\n\nexport const zenBusinessRegisteredAgent = {\n  first_name: '',\n  middle_name: '',\n  last_name: '',\n  suffix: '',\n  company_name: '',\n  address_1: '',\n  address_2: '',\n  city: '',\n  county: '',\n  state: '',\n  state_name: '',\n  zip: '',\n  phone: '',\n  email: ''\n};\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const\n    { business, purchase, postpurchase: { purchaseRA } } = registration,\n    { registeredAgentService, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    privacyFees = filingFees[jurisdiction].registered_agent_service || { fees: 0 },\n    service = 'registered_agent_service',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    servicePricing = getPricingAndCouponAmount(registration);\n\n  if (plan && plan.registered_agent_service) {\n    return { service, jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: 1, is_add_on: false };\n  }\n\n  const\n    price = plan ? servicePricing.pricing.servicePrice : getRAYearlyPrice(),\n    coupon = plan ? servicePricing.pricing.serviceCouponAmount : 0,\n    { fees } = privacyFees,\n    term = 12,\n    period = 1;\n\n  if (standalone || registeredAgentService || isAutoIncludedInPlan(plan, 'registered_agent_service') || purchaseRA) {\n    return { service, price, coupon, fees, term, period, jurisdiction, is_add_on: !standalone && !!plan };\n  }\n  return null;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase, postpurchase: { purchaseRA }, registeredAgent } = registration,\n    { planLevel, registeredAgentService } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isAutoIncluded = isAutoIncludedInPlan(plan, 'registered_agent_service');\n\n  if (!(plan && plan.registered_agent_service) && !registeredAgentService && !standalone && !isAutoIncluded && !purchaseRA) {\n    return null;\n  }\n\n  const isZenBusiness = !registeredAgent || registeredAgent.type === 'ZenBusiness';\n\n  return {\n    service: 'registered_agent_service',\n    jurisdiction,\n    domestic_jurisdiction: jurisdiction,\n    standalone,\n    is_new_business: !standalone,\n    is_auto_included: isAutoIncluded,\n    registered_agent: isZenBusiness ? {} : convertUser(registeredAgent)\n  };\n};\n\nexport const buildOrder = (registration, filingFees, isUpdate) => {\n  const\n    { business } = registration,\n    { status: orderStatus } = business,\n    orderData = _compact([\n      convertOrderData(registration, true)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData\n    }, getPricingInformation(registration.order));\n\n  if (isUpdate) {\n    order.order_uuid = registration.order.id;\n    return { order };\n  }\n\n  const\n    { id: businessId } = business,\n    accountId = registration.customer.id || '',\n    account = accountId ? null : convertAccount(registration);\n\n  order.order_items = _compact([\n    convertOrderItem(registration, true, filingFees)\n  ]);\n\n  if (accountId) {\n    if (businessId) {\n      order.business_entity_uuid = businessId;\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n  return {\n    account,\n    order\n  };\n};\n\n","import { getPlanLevel } from '../../utils/PlanService';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { planLevel } = purchase,\n    { domesticJurisdiction, requestedJurisdiction, type } = business,\n    jurisdiction = requestedJurisdiction || domesticJurisdiction,\n    plan = getPlanLevel(planLevel, jurisdiction) || { corp: { prices: { 1: 0, 12: 0 } }, llc: { prices: { 1: 0, 12: 0 } } },\n    { prices } = plan[type === 'CORP' ? 'corp' : 'llc'], // fees are covered in the formation item\n    price = prices['1'],\n    service = plan.id,\n    uuid = plan.uuid,\n    recurring = plan.recurring,\n    term = 12,\n    period = 1,\n    coupon = plan.coupon ? plan.coupon.amount : 0;\n\n  if (standalone || planLevel) {\n    if (!recurring) {\n      return { service, affiliate_plan_option_uuid: uuid, price, coupon, fees: 0, jurisdiction, is_add_on: false };\n    }\n    return { service, affiliate_plan_option_uuid: uuid, price, coupon, fees: 0, term, period, jurisdiction, is_add_on: false };\n  }\n\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, plan: planReduce, purchase } = registration,\n    { planLevel } = purchase,\n    { domesticJurisdiction, requestedJurisdiction } = business,\n    jurisdiction = requestedJurisdiction || domesticJurisdiction,\n    plan = planReduce.plan || getPlanLevel(planLevel, jurisdiction) || { id: '' },\n    service = plan.id;\n\n  return planLevel ? {\n    service,\n    jurisdiction,\n    standalone,\n    is_new_business: !standalone,\n    level: planLevel,\n    plan\n  } : null;\n};\n","/*\nNOTE - s_corp_designation can only be purchased from S-Corp landing pages at this time.\n*/\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business } = registration,\n    { requestedJurisdiction: jurisdiction, isSCorp } = business,\n    service = 's_corp_designation';\n\n  if (standalone || isSCorp) {\n    return { service, jurisdiction, price: 0, coupon: 0, fees: 0, is_add_on: false };\n  }\n\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business } = registration,\n    { requestedJurisdiction: jurisdiction, isSCorp } = business,\n    service = 's_corp_designation';\n\n  if (standalone || isSCorp) {\n    return { service, jurisdiction, standalone, is_new_business: !standalone };\n  }\n  return null;\n};\n","import _assign from 'lodash/assign';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel, isAutoIncludedInPlan } from '../../utils/PlanService';\nimport { getStaticWebsiteYearlyPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const convertOrderItem = (registration, standalone, websiteToolsStandalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { staticWebsite = false, planLevel, websiteToolsBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'static_website',\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  if ((plan && plan.static_website) || websiteToolsBundle || websiteToolsStandalone) {\n    return {\n      service,\n      jurisdiction,\n      price: 0,\n      coupon: 0,\n      fees: 0,\n      term: 12,\n      period: 1,\n      is_add_on: false,\n      ...(plan?.uuid && { affiliate_plan_option_uuid: plan.uuid })\n    };\n  }\n\n  const\n    price = plan ? pricing.servicePrice : getStaticWebsiteYearlyPrice(),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0,\n    term = 12,\n    period = 1;\n\n  if (standalone || staticWebsite || isAutoIncludedInPlan(plan, 'static_website')) {\n    return { service, jurisdiction, price, coupon, fees, term, period, is_add_on: !standalone && !!plan };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isAutoIncluded = !standalone && isAutoIncludedInPlan(plan, 'static_website');\n\n  if (!(plan && plan.static_website) && !purchase.staticWebsite && !standalone && !isAutoIncluded) {\n    return null;\n  }\n\n  const\n    data = {\n      service: 'static_website',\n      standalone: false,\n      jurisdiction,\n      is_new_business: !standalone,\n      is_auto_included: isAutoIncluded\n    };\n\n  return data;\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.website.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","/*\nNOTE - tax preparation can only be purchased as part of a package at this time. The price and fees will always be 0.\n */\n\nimport { getPlanLevel, isAutoIncludedInPlan } from '../../utils/PlanService';\nimport { getTaxPreparationYearlyPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { planLevel, taxPreparation } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'tax_preparation',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if (plan && plan.tax_preparation) {\n    return { service, jurisdiction, price: 0, fees: 0, term: 12, period: 1, is_add_on: false };\n  }\n\n  const\n    price = getTaxPreparationYearlyPrice(),\n    fees = 0,\n    term = 12,\n    period = 1;\n\n  if (standalone || taxPreparation || isAutoIncludedInPlan(plan, 'tax_preparation')) {\n    return { service, jurisdiction, price, fees, term, period, is_add_on: !standalone && !!plan };\n  }\n\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { planLevel, taxPreparation } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'tax_preparation',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isAutoIncluded = isAutoIncludedInPlan(plan, 'tax_preparation');\n\n  return ((plan && plan.tax_preparation) || taxPreparation || isAutoIncluded) ? {\n    service,\n    jurisdiction,\n    standalone,\n    is_new_business: !standalone,\n    is_auto_included: isAutoIncluded\n  } : null;\n};\n","import { getPlanLevel, isAutoIncludedInPlan } from '../../utils/PlanService';\n\nexport const convertOrderItem = (registration) => {\n  const\n    { business, purchase } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'annual_report_service',\n    { planLevel } = purchase,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  // this product is not being sell as upsell so let's just check if its part of the plan\n  if (plan && plan.annual_report_service) {\n    return { service, jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: 1, is_add_on: false };\n  }\n\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, purchase } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'annual_report_service',\n    { planLevel } = purchase,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isAutoIncluded = isAutoIncludedInPlan(plan, 'annual_report_service');\n\n  // this product is not being sell as upsell so let's just check if its part of the plan\n  return (plan && plan.annual_report_service) ? {\n    service,\n    jurisdiction,\n    standalone,\n    is_new_business: true,\n    is_auto_included: isAutoIncluded\n  } : null;\n};\n","/* eslint-disable camelcase */\nimport _assign from 'lodash/assign';\nimport _capitalize from 'lodash/capitalize';\n\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getAccountant1800Price, isAccountant1800Enabled } from '../../utils/ProductService';\nimport { getEntryPointGroup } from '../../utils/PartnerUtils';\n\nconst getRemaginePlanName = (planLevel, industry, entity_type) => {\n  const type = entity_type.toUpperCase();\n  if (planLevel === 'level2') {\n    return `${_capitalize(industry)} ${type}`;\n  }\n  return `${planLevel === 'level3' ? 'Premium' : 'Starter'} ${type}`;\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n\n  if (!isAccountant1800Enabled()) {\n    return null;\n  }\n\n  const\n    { business: {\n      domesticJurisdiction: jurisdiction\n    },\n    purchase: {\n      planLevel, accountant1800\n    } } = registration,\n    service = '1800_accountant',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  // check plan\n  if (plan && plan['1800_accountant']) {\n    return {\n      service,\n      jurisdiction,\n      price: 0,\n      fees: 0,\n      coupon: 0,\n      period: 1,\n      term: 12,\n      is_add_on: false\n    };\n  }\n\n  // check standalone status\n  if (standalone || accountant1800) {\n    return {\n      service,\n      jurisdiction,\n      price: getAccountant1800Price(),\n      fees: 0,\n      coupon: 0,\n      period: 1,\n      term: 12,\n      is_add_on: false\n    };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n\n  if (!isAccountant1800Enabled()) {\n    return null;\n  }\n\n  const\n    { business: {\n      domesticJurisdiction: jurisdiction,\n      type: entity_type,\n      name: entity_name\n    },\n    customer: {\n      firstName: first_name,\n      lastName: last_name,\n      phoneNumber: phone,\n      email\n    },\n    remagine: {\n      industry\n    },\n    purchase: {\n      planLevel,\n      accountant1800\n    } } = registration,\n    service = '1800_accountant',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if ((plan && plan['1800_accountant']) || accountant1800 || standalone) {\n    const acc_entity_type = (entity_type === 'LLCX') ? 'llc' : 'corp';\n    const package_purchased = getEntryPointGroup() === 'pf' ? getRemaginePlanName(planLevel, industry, acc_entity_type) : '';\n    return {\n      service,\n      jurisdiction,\n      is_add_on: false,\n      phone,\n      acc_entity_type,\n      acc_entity_name: entity_name,\n      email,\n      acc_first_name: first_name,\n      acc_last_name: last_name,\n      industry,\n      package_purchased\n    };\n  }\n  return null;\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.domainName.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\nimport { getPlanLevel, getWebsiteToolsBundleYearlyPrice } from '../../utils/PlanService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\nimport { getPricingInformation } from './BaseDataConverter';\nimport { convertOrderItem as convertBasicEmailOrderItem, convertOrderData as convertBasicEmailOrderData } from './BasicEmailConverter';\nimport { convertOrderItem as convertDomainNameOrderItem, convertOrderData as convertDomainNameOrderData } from './DomainNameDataConverter';\nimport { convertOrderItem as convertDomainNamePrivacyOrderItem, convertOrderData as convertDomainNamePrivacyOrderData } from './DomainNamePrivacyDataConverter';\nimport { convertOrderItem as convertStaticWebsiteOrderItem, convertOrderData as convertStaticWebsiteOrderData } from './StaticWebsiteDataConverter';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { websiteToolsBundle = false, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction, type: businessType } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'website_tools_bundle',\n    pricing = getPriceAndCouponForService(service, plan, coupons),\n    term = 12,\n    period = 1;\n\n  const\n    price = plan ? pricing.servicePrice : getWebsiteToolsBundleYearlyPrice(businessType),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0;\n\n  if (standalone || websiteToolsBundle) {\n    return { service, jurisdiction, price, coupon, fees, term, period, is_add_on: !standalone };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase } = registration,\n    { websiteToolsBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business;\n\n  if (!standalone && !websiteToolsBundle) {\n    return null;\n  }\n\n  const\n    data = {\n      service: 'website_tools_bundle',\n      standalone: false,\n      jurisdiction,\n      is_new_business: !standalone,\n      is_auto_included: false\n    };\n\n  return data;\n};\n\nexport const buildOrder = (registration, accountId, filingFees) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      ...convertDomainNameOrderData(registration, true),\n      ...convertDomainNamePrivacyOrderData(registration, true),\n      ...convertBasicEmailOrderData(registration, true),\n      convertStaticWebsiteOrderData(registration, true),\n      convertOrderData(registration, true)\n    ]),\n    orderItems = _compact([\n      ...convertDomainNameOrderItem(registration, true, true),\n      ...convertDomainNamePrivacyOrderItem(registration, true, true),\n      ...convertBasicEmailOrderItem(registration, true, true),\n      convertStaticWebsiteOrderItem(registration, true, true),\n      convertOrderItem(registration, true, filingFees)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.domainName.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n\n","import { getPlanLevel, getEINBusinessDocsBundlePrice } from '../../utils/PlanService';\n\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { einBusinessDocsBundle = false, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction, type: businessType } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'ein_business_docs_bundle',\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  const\n    price = plan ? pricing.servicePrice : getEINBusinessDocsBundlePrice(businessType),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0;\n\n  if (standalone || einBusinessDocsBundle) {\n    return { service, jurisdiction, price, coupon, fees, is_add_on: !standalone };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase } = registration,\n    { einBusinessDocsBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business;\n\n  if (!standalone && !einBusinessDocsBundle) {\n    return null;\n  }\n\n  const\n    data = {\n      service: 'ein_business_docs_bundle',\n      standalone: false,\n      jurisdiction,\n      is_new_business: !standalone,\n      is_auto_included: false\n    };\n\n  return data;\n};\n","import _assign from 'lodash/assign';\nimport { getZBMProMonthlyPrice, getZBMProYearlyPrice } from '../../utils/ProductService';\nimport { getPricingInformation } from './BaseDataConverter';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, zbmPro, purchase } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { purchaseZBMPro: pfPurchaseZBMPro, zbmProMonthly: pfpppm } = purchase,\n    { zbmProMonthly: zbpm } = zbmPro,\n    zbmProMonthly = standalone ? zbpm : pfpppm,\n    service = 'zb_money_pro';\n\n  if (!standalone && !pfPurchaseZBMPro) {\n    return null;\n  }\n\n  return {\n    service,\n    price: zbmProMonthly ? getZBMProMonthlyPrice() : getZBMProYearlyPrice(),\n    jurisdiction: jurisdiction || 'TX',\n    fees: 0,\n    period: zbmProMonthly ? 12 : 1,\n    term: 12,\n    is_add_on: false\n  };\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const service = 'zb_money_pro',\n    { business, purchase } = registration,\n    { requestedJurisdiction } = business,\n    { purchaseZBMPro: pfPurchaseZBMPro } = purchase;\n\n  return (standalone || pfPurchaseZBMPro) ? {\n    service,\n    jurisdiction: requestedJurisdiction || 'TX'\n  } : null;\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.business.id\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport { getZBMProMonthlyPrice, getZBMProYearlyPrice } from '../../utils/ProductService';\nimport { getPricingInformation } from './BaseDataConverter';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, zbmPro, postpurchase } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { purchaseZBMPro, zbmProMonthly: pppm } = postpurchase,\n    { zbmProMonthly: zbpm } = zbmPro,\n    zbmProMonthly = standalone ? zbpm : pppm,\n    service = 'zb_money_pro';\n\n  if (!standalone && !purchaseZBMPro) {\n    return null;\n  }\n  return {\n    service,\n    jurisdiction: jurisdiction || 'TX',\n    price: zbmProMonthly ? getZBMProMonthlyPrice() : getZBMProYearlyPrice(),\n    fees: 0,\n    period: zbmProMonthly ? 12 : 1,\n    term: 12,\n    is_add_on: false\n  };\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const service = 'zb_money_pro',\n    { business, postpurchase } = registration,\n    { requestedJurisdiction } = business,\n    { purchaseZBMPro } = postpurchase;\n\n  return (standalone || purchaseZBMPro) ? {\n    service,\n    jurisdiction: requestedJurisdiction || 'TX'\n  } : null;\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.business.id\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getZbBankingPreferredMonthlyPrice } from '../../utils/ProductService';\nimport { getPlanLevel } from '../../utils/PlanService';\n\nconst service = 'zb_banking_preferred';\n\nfunction returnJurisdiction(registrationData) {\n  const { business, zbBankingPreferred } = registrationData || {};\n  return zbBankingPreferred?.domesticJurisdiction || business?.requestedJurisdiction || '';\n}\n\nexport const convertOrderItem = (registration, standalone) => {\n  const jurisdiction = returnJurisdiction(registration);\n  const\n    { postpurchase } = registration,\n    { purchaseZbBankingPreferredOffer } = postpurchase;\n\n  /** to add banking data, we need to ensure we are either in a standalone flow\n   * or if we are in post purchase, the banking offer has been selected\n   */\n  if (!standalone && !purchaseZbBankingPreferredOffer) {\n    return null;\n  }\n\n  return {\n    service,\n    jurisdiction,\n    price: getZbBankingPreferredMonthlyPrice(),\n    fees: 0,\n    period: 12,\n    // signifies that this is a recurring billing product: number of months it lasts from start\n    term: 12,\n    is_add_on: false\n  };\n};\n\n/**\n * Returns the order_data payload for the zb_banking_preferred service\n * @param {Object} registration - registration from state\n * @param {boolean} standalone - flag used by the standalone banking converter\n * @param {boolean} isPostPurchase  - flag used by the postpurchase data converter\n * @returns banking order_data payload or null\n */\nexport const convertOrderData = (registration, standalone, isPostPurchase) => {\n  const jurisdiction = returnJurisdiction(registration);\n  const\n    { postpurchase, purchase } = registration,\n    { planLevel } = purchase,\n    { purchaseZbBankingPreferredOffer } = postpurchase,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isInPlan = plan && !!plan?.service_prices?.zb_banking_preferred;\n\n  /**\n   * To add banking data, we need to ensure we are either in a standalone flow,\n   * or if we are in post purchase, the banking offer has been selected.\n   * Also, some plans now includes banking as addon so we need to check if it's included in the purchase.\n   * If neither is true, return null to signify not to add the product to order data\n   */\n  if (standalone || (isPostPurchase && purchaseZbBankingPreferredOffer) || (!isPostPurchase && isInPlan && purchase?.zbBankingPreferred)) {\n    return {\n      service,\n      jurisdiction,\n      standalone,\n      is_new_business: false\n    };\n  }\n  return null;\n};\n\nexport const buildOrder = (registration, accountId) => {\n\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.zbBankingPreferred.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n\n","import { getZbTaxAdviceMonthlyPrice, getZbTaxAdviceYearlyPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration) => {\n  const { business, purchase, postpurchase, taxServices } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { product } = taxServices,\n    { zbTaxAdvice, zbTaxAdviceBizTaxPrep } = purchase,\n    { purchaseTaxAdvice, taxAdviceMonthly, purchaseTaxAdviceBizTaxPrep, taxAdviceBizTaxPrepMonthly } = postpurchase,\n    isPrePurchase = zbTaxAdvice,\n    isBundled = zbTaxAdviceBizTaxPrep || purchaseTaxAdviceBizTaxPrep;\n\n  const isStandalone = ['zb_tax_advice', 'zb_tax_advice_biztax_prep'].includes(product);\n  const isMonthly = isStandalone || isPrePurchase || (purchaseTaxAdvice && taxAdviceMonthly) || (purchaseTaxAdviceBizTaxPrep && taxAdviceBizTaxPrepMonthly);\n\n  if (!isStandalone && !zbTaxAdvice && !purchaseTaxAdvice && !purchaseTaxAdviceBizTaxPrep) {\n    return null;\n  }\n\n  const isStandaloneBundle = product === 'zb_tax_advice_biztax_prep';\n  let price = 0;\n  if (!isStandaloneBundle && !isBundled) {\n    price = isMonthly ? getZbTaxAdviceMonthlyPrice() : getZbTaxAdviceYearlyPrice();\n  }\n\n  return {\n    fees: 0,\n    service: 'zb_tax_advice',\n    jurisdiction,\n    price,\n    period: isMonthly ? 12 : 1,\n    term: 12,\n    is_add_on: false\n  };\n};\n\n  /* eslint-disable camelcase */\nexport const convertOrderData = (registration) => {\n  const { business, purchase, postpurchase, taxServices } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { product } = taxServices,\n    { zbTaxAdvice } = purchase,\n    { purchaseTaxAdvice, purchaseTaxAdviceBizTaxPrep } = postpurchase;\n\n  const isStandalone = ['zb_tax_advice', 'zb_tax_advice_biztax_prep'].includes(product);\n\n  if (!isStandalone && !zbTaxAdvice && !purchaseTaxAdvice && !purchaseTaxAdviceBizTaxPrep) {\n    return null;\n  }\n\n  return {\n    service: 'zb_tax_advice',\n    jurisdiction\n  };\n};\n","import { getZbBizTaxPrepMonthlyPrice, getZbBizTaxPrepYearlyPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const { business, purchase, postpurchase, taxServices } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { product } = taxServices,\n    { zbBizTaxPrep, zbTaxAdviceBizTaxPrep } = purchase,\n    { purchaseTaxAdviceBizTaxPrep, taxAdviceBizTaxPrepMonthly } = postpurchase,\n    isPrePurchase = zbBizTaxPrep,\n    isBundled = zbTaxAdviceBizTaxPrep || purchaseTaxAdviceBizTaxPrep,\n    isMonthly = standalone || isPrePurchase || (purchaseTaxAdviceBizTaxPrep && taxAdviceBizTaxPrepMonthly);\n\n  const isStandaloneBundle = product === 'zb_tax_advice_biztax_prep';\n  const addStandaloneBundle = standalone && isStandaloneBundle;\n\n  if (!addStandaloneBundle && !zbBizTaxPrep && !purchaseTaxAdviceBizTaxPrep) {\n    return null;\n  }\n\n  let price = 0;\n  if (!isStandaloneBundle && !isBundled) {\n    price = isMonthly ? getZbBizTaxPrepMonthlyPrice() : getZbBizTaxPrepYearlyPrice();\n  }\n\n  return {\n    fees: 0,\n    service: 'zb_biztax_prep',\n    jurisdiction,\n    price,\n    period: isMonthly ? 12 : 1,\n    term: 12,\n    is_add_on: false\n  };\n};\n\n  /* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase, postpurchase, taxServices } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { product } = taxServices,\n    { zbBizTaxPrep } = purchase,\n    { purchaseTaxAdviceBizTaxPrep } = postpurchase;\n\n  const isStandaloneBundle = product === 'zb_tax_advice_biztax_prep';\n  const addStandaloneBundle = standalone && isStandaloneBundle;\n\n  if (!addStandaloneBundle && !zbBizTaxPrep && !purchaseTaxAdviceBizTaxPrep) {\n    return null;\n  }\n\n  return {\n    service: 'zb_biztax_prep',\n    jurisdiction\n  };\n};\n","import { getZbTaxAdviceBizTaxPrepMonthlyPrice, getZbTaxAdviceBizTaxPrepYearlyPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const { business, purchase, postpurchase, taxServices } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { product } = taxServices,\n    { zbTaxAdviceBizTaxPrep } = purchase,\n    { purchaseTaxAdviceBizTaxPrep, taxAdviceBizTaxPrepMonthly } = postpurchase,\n    isPrePurchase = zbTaxAdviceBizTaxPrep,\n    isMonthly = standalone || isPrePurchase || (purchaseTaxAdviceBizTaxPrep && taxAdviceBizTaxPrepMonthly);\n\n  const isStandaloneBundle = product === 'zb_tax_advice_biztax_prep';\n  const addStandaloneBundle = standalone && isStandaloneBundle;\n\n  if (!addStandaloneBundle &&\n    !zbTaxAdviceBizTaxPrep &&\n    !purchaseTaxAdviceBizTaxPrep\n  ) {\n    return null;\n  }\n\n  const price = isMonthly ? getZbTaxAdviceBizTaxPrepMonthlyPrice() : getZbTaxAdviceBizTaxPrepYearlyPrice();\n\n  return {\n    fees: 0,\n    service: 'zb_tax_advice_biztax_prep',\n    jurisdiction,\n    price,\n    period: isMonthly ? 12 : 1,\n    term: 12,\n    is_add_on: false\n  };\n};\n\n  /* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase, postpurchase, taxServices } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { product } = taxServices,\n    { zbTaxAdviceBizTaxPrep } = purchase,\n    { purchaseTaxAdviceBizTaxPrep } = postpurchase;\n\n  const isStandaloneBundle = product === 'zb_tax_advice_biztax_prep';\n  const addStandaloneBundle = standalone && isStandaloneBundle;\n\n  if (!addStandaloneBundle && !zbTaxAdviceBizTaxPrep && !purchaseTaxAdviceBizTaxPrep) {\n    return null;\n  }\n\n  return {\n    service: 'zb_tax_advice_biztax_prep',\n    jurisdiction\n  };\n};\n","import { getPlanLevel, getEINBizDocsOaBundlePrice } from '../../utils/PlanService';\n\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { einBizDocsOaBundle, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction, type: businessType } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'ein_bizdocs_oa_bundle',\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  const\n    price = plan ? pricing.servicePrice : getEINBizDocsOaBundlePrice(businessType),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0;\n\n  if (!standalone && !einBizDocsOaBundle) {\n    return null;\n  }\n  return { service, jurisdiction, price, coupon, fees, is_add_on: !standalone };\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase } = registration,\n    { einBizDocsOaBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'ein_bizdocs_oa_bundle';\n\n  if (!standalone && !einBizDocsOaBundle) {\n    return null;\n  }\n\n  return {\n    service,\n    standalone: false,\n    jurisdiction,\n    is_new_business: !standalone,\n    is_auto_included: false\n  };\n};\n","import { getPlanLevel, getBizDocsBlrBundlePrice } from '../../utils/PlanService';\n\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { bizDocsBlrBundle, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction, type: businessType } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'bizdocs_blr_bundle',\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  const\n    price = plan ? pricing.servicePrice : getBizDocsBlrBundlePrice(businessType),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0;\n\n  if (!standalone && !bizDocsBlrBundle) {\n    return null;\n  }\n\n  return { service, jurisdiction, price, coupon, fees, is_add_on: !standalone };\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase } = registration,\n    { bizDocsBlrBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'bizdocs_blr_bundle';\n\n  if (!standalone && !bizDocsBlrBundle) {\n    return null;\n  }\n\n  return {\n    service,\n    jurisdiction,\n    standalone: false,\n    is_new_business: !standalone,\n    is_auto_included: false\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\nimport _capitalize from 'lodash/capitalize';\n\nimport {\n  buildEntityName, convertAddress, convertContactIfIdentified, convertDirectors, convertOfficers,\n  convertRegisteredAgent, convertAuthorizedSignatory, calculateBusinessTotal, getPricingInformation, decorateAccount\n} from './BaseDataConverter';\nimport { convertOrderItem as convertAnonymityOrderItem, convertOrderData as convertAnonymityOrderData } from './AnonymityConverter';\nimport { convertOrderItem as convertBankingOrderItem, convertOrderData as convertBankingOrderData } from './BankingConverter';\nimport { convertOrderItem as convertBankingResolutionOrderItem, convertOrderData as convertBankingResolutionOrderData } from './BankingResolutionDataConverter';\nimport { convertOrderItem as convertBasicEmailOrderItem, convertOrderData as convertBasicEmailOrderData } from './BasicEmailConverter';\nimport { convertBusinessData as convertBLRBusinessData } from './BusLicDataConverter';\nimport { convertOrderItem as convertOpAgreementOrderItem, convertOrderData as convertOpAgreementOrderData } from './OpAgreeDataConverter';\nimport { convertOrderItem as convertCorpDocsOrderItem, convertOrderData as convertCorpDocsOrderData } from './CorporateDocsDataConverter';\nimport { convertOrderItem as convertCPAConsultOrderItem, convertOrderData as convertCPAConsultOrderData } from './CPAConsultConverter';\nimport { convertOrderItem as convertDomainNameOrderItem, convertOrderData as convertDomainNameOrderData } from './DomainNameDataConverter';\nimport { convertOrderItem as convertDomainNamePrivacyOrderItem, convertOrderData as convertDomainNamePrivacyOrderData } from './DomainNamePrivacyDataConverter';\nimport { convertOrderItem as convertEINOrderItem, convertOrderData as convertEINOrderData, convertSSN } from './EINDataConverter';\nimport { convertOrderItem as convertExpediteOrderItem, convertOrderData as convertExpediteOrderData } from './ExpediteDataConverter';\nimport { convertOrderItem as convertExpediteUpsellOrderItem, convertOrderData as convertExpediteUpsellOrderData } from './ExpediteUpsellDataConverter';\nimport { convertOrderItem as convertInitialCPAScreeningOrderItem, convertOrderData as convertInitialCPAScreeningOrderData } from './InitialCPAScreeningConverter';\nimport { convertOrderItem as convertNYPubOrderItem, convertOrderData as convertNYPubOrderData } from './NYPubDataConverter';\nimport { convertOrderItem as convertRegAgentOrderItem, convertOrderData as convertRegAgentOrderData } from './RegAgentDataConverter';\nimport { convertOrderItem as convertPlanLevelOrderItem, convertOrderData as convertPlanLevelOrderData } from './PlanLevelDataConverter';\nimport { convertOrderItem as convertSCorpDesignationOrderItem, convertOrderData as convertSCorpDesignationOrderData } from './SCorpDesignationConverter';\nimport { convertOrderItem as convertStaticWebsiteOrderItem, convertOrderData as convertStaticWebsiteOrderData } from './StaticWebsiteDataConverter';\nimport { convertOrderItem as convertTaxPreparationOrderItem, convertOrderData as convertTaxPreparationOrderData } from './TaxPreparationConverter';\nimport { convertOrderItem as convertWorryFreeOrderItem, convertOrderData as convertWorryFreeOrderData } from './WorryFreeDataConverter';\nimport { convertOrderItem as convertAnnualReportServiceOrderItem, convertOrderData as convertAnnualReportServiceOrderData } from './AnnualReportServiceConverter';\nimport { convertOrderItem as convertAccountant1800OrderItem, convertOrderData as convertAccountant1800OrderData } from './Accountant1800Converter';\nimport { convertOrderItem as convertWebsiteToolsBundleOrderItem, convertOrderData as convertWebsiteToolsBundleOrderData } from './WebsiteToolsBundleConverter';\nimport { convertOrderItem as convertEINDocsBundleOrderItem, convertOrderData as convertEINDocsBundleOrderData } from './EINBusinessDocsBundleConverter';\nimport { convertOrderItem as convertZBMProOrderItem, convertOrderData as convertZBMProOrderData } from './ZBMProDataConverter';\nimport { convertOrderItem as convertTruicZBMProOrderItem, convertOrderData as convertTruicZBMProOrderData } from './TruicZBMProDataConverter';\nimport { convertOrderItem as convertZbBankingPreferredOrderItem, convertOrderData as convertZbBankingPreferredOrderData } from './ZbBankingPreferredDataConverter';\nimport { convertOrderItem as convertZbTaxAdviceOrderItem, convertOrderData as convertZbTaxAdviceOrderData } from './zbTaxAdviceConverter';\nimport { convertOrderItem as convertZbBizPrepOrderItem, convertOrderData as convertZbBizPrepOrderData } from './zbBizTaxPrepConverter';\nimport { convertOrderItem as convertZbTaxAdviceBizTaxPrepOrderItem, convertOrderData as convertZbTaxAdviceBizTaxPrepOrderData } from './zbTaxAdviceBizTaxPrepConverter';\nimport { convertOrderItem as convertEinBizDocsOaBundleOrderItem, convertOrderData as convertEinBizDocsOaBundleOrderData } from './einBizDocsOaBundleConverter';\nimport { convertOrderItem as convertBizDocsBlrBundleOrderItem, convertOrderData as convertBizDocsBlrBundleOrderData } from './bizDocsBlrBundleConverter';\n\nimport { ACTIONS, URLS } from '../../constants/complete_corp';\nimport { getEntryPointGroup, isPF } from '../../utils/PartnerUtils';\n\nconst getRemaginePlanName = (planLevel, industry) => {\n  if (planLevel === 'level2') {\n    return `${_capitalize(industry)} Corporation`;\n  }\n  return `${planLevel === 'level3' ? 'Premium' : 'Starter'} Corporation`;\n};\n\nconst\n  /* eslint-disable camelcase */\n  convertAccount = (registration, filingFees, expediteFees) => {\n    const\n      { business, customer, lead, purchase } = registration,\n      { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password } = customer,\n      { cardNumber: number, cardToken: card_token, expMonth, expYear, cvc } = customer,\n      { leadUUID: lead_uuid } = lead;\n\n    const amount = calculateBusinessTotal(business, purchase, filingFees, expediteFees),\n      card = { number, exp_month: parseInt(expMonth, 10), exp_year: 2000 + parseInt(expYear, 10), cvc, amount, default: true },\n      cardOrToken = card_token ? { card_token } : { card };\n    return decorateAccount(_assign({ lead_uuid, first_name, middle_name, last_name, suffix, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', ...cardOrToken }, convertAddress(customer)));\n  };\n/* eslint-enable camelcase */\n\nexport const convertOrderItem = (registration, filingFees) => {\n  const\n    { business } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'corp_formation',\n    typeFees = filingFees[jurisdiction].corp_formation,\n    price = typeFees.price,\n    fees = typeFees.fees;\n\n  return { service, price, fees, jurisdiction, is_add_on: false };\n};\n\n/* eslint-disable camelcase, max-statements */\nexport const convertOrderData = (registration, isInternational) => {\n  const\n    { blr, business, businessAddresses, contact, directors, officers, order, registeredAgent, remagine, page, purchase, postpurchase } = registration,\n    { name, indicator, alternates, description: business_purpose, requestedJurisdiction: jurisdiction, phoneNumber: phone } = business,\n    { status, authorizedShares, valuePerShare, businessActiivty: activity, domesticJurisdiction, foreignJurisdictions, authorizedSignatory, hasMoreThanOneShare } = business,\n    { goals, hasEmployees, homeBased, industry, launchStatus, priorExperience } = remagine,\n    { estimatedFormationDate = '', planLevel } = purchase,\n    { id = '' } = order,\n    { completedAction, completedUrl, completedActionIndex } = page,\n    authSharesNum = authorizedShares.replace(/,/g, ''),\n    valuePerShareNum = valuePerShare.substring(1).replace(/,/g, ''),\n    { principal: principalAddress, mailing: mailingAddress, physical: physicalAddress } = businessAddresses,\n    entityName = buildEntityName(name, indicator),\n    service = 'corp_formation',\n    data = _assign(\n      {\n        service,\n        entity_name: entityName,\n        alternates,\n        business_purpose,\n        jurisdiction,\n        principal_address: convertAddress(principalAddress),\n        mailing_address: convertAddress(mailingAddress),\n        address: convertAddress(physicalAddress),\n        phone,\n        estimated_formation_date: estimatedFormationDate,\n        authorized_shares: authSharesNum,\n        has_more_than_one_share: hasMoreThanOneShare,\n        par_value: valuePerShareNum,\n        activity,\n\n        // Personalization data\n        goals,\n        has_employees: hasEmployees,\n        home_based: homeBased,\n        industry,\n        launch_status: launchStatus,\n        prior_experience: priorExperience,\n\n        // Used with standalone RA\n        domestic_jurisdiction: domesticJurisdiction,\n        domestic_entity: true,\n        foreign_jurisdictions: foreignJurisdictions,\n        domestic_filing_date: '',\n        state_id: '',\n        plan_partner: getEntryPointGroup() || '',\n        entry_point_group: getEntryPointGroup() || ''\n      },\n      isPF() ? { plan_name: getRemaginePlanName(planLevel, industry) } : {},\n      convertAuthorizedSignatory(authorizedSignatory),\n      convertContactIfIdentified(contact),\n      convertDirectors(directors),\n      convertOfficers(officers),\n      convertRegisteredAgent(registeredAgent, business, isInternational ? { registeredAgent: true } : purchase)\n    );\n\n  if (status === 'incomplete') {\n    if (postpurchase.purchaseBLR !== null) {\n      data.purchase_blr = postpurchase.purchaseBLR;\n      if (postpurchase.purchaseBLR) {\n        data.blr_data = { business_data: convertBLRBusinessData(blr) };\n      }\n    }\n    if (postpurchase.purchaseRA !== null) {\n      data.purchase_ra = postpurchase.purchaseRA;\n    }\n    if (postpurchase.purchaseDBAEntity !== null) {\n      data.purchase_dba_entity = postpurchase.purchaseDBAEntity;\n      data.dba_entities = postpurchase.dbaEntities;\n      if (postpurchase.purchaseDBACompliance !== null) {\n        data.purchase_dba_compliance = postpurchase.purchaseDBACompliance;\n      }\n    }\n    if (postpurchase.purchaseCD !== null) {\n      data.purchase_cd = postpurchase.purchaseCD;\n    }\n    if (postpurchase.purchaseBankOfAmericaOffer !== null) {\n      data.purchase_bank_of_america_offer = postpurchase.purchaseBankOfAmericaOffer;\n    }\n    if (postpurchase.purchaseZbBankingPreferredOffer !== null) {\n      data.purchase_zb_banking_preferred_offer = postpurchase.purchaseZbBankingPreferredOffer;\n    }\n    if (postpurchase.purchaseFFD !== null) {\n      data.purchase_ffd = postpurchase.purchaseFFD;\n      data.filing_action = postpurchase.filingAction;\n      data.future_filing_date = postpurchase.futureFilingDate;\n    }\n    if (postpurchase.purchaseWFGIR !== null) {\n      data.purchase_wfgir = postpurchase.purchaseWFGIR;\n    }\n    if (postpurchase.purchaseVBA !== null) {\n      data.purchase_vba = postpurchase.purchaseVBA;\n    }\n    if (postpurchase.purchaseVanityProduct !== null) {\n      data.purchase_vanity_product = postpurchase.purchaseVanityProduct;\n    }\n    if (postpurchase.purchaseTaxAdviceBizTaxPrep !== null || postpurchase.purchaseTaxAdvice !== null) {\n      data.purchase_tax_advice = postpurchase.purchaseTaxAdvice;\n      data.tax_advice_monthly = postpurchase.taxAdviceMonthly;\n      data.purchase_tax_advice_biztax_prep = postpurchase.purchaseTaxAdviceBizTaxPrep;\n      data.tax_advice_biztax_prep_monthly = postpurchase.taxAdviceBizTaxPrepMonthly;\n    }\n    if (postpurchase.purchaseZBMPro !== null) {\n      data.purchase_zbmpro = postpurchase.purchaseZBMPro;\n      data.zbmpro_monthly = postpurchase.zbmProMonthly;\n    }\n    if (postpurchase.purchaseBusinessKit !== null) {\n      data.purchase_business_kit = postpurchase.purchaseBusinessKit;\n    }\n    if (postpurchase.purchaseBOF !== null) {\n      data.purchase_bof = postpurchase.purchaseBOF;\n      data.bof_ongoing = postpurchase.bofOngoing;\n    }\n    if (postpurchase.purchaseExpenseTrackerAndTaxFiling !== null) {\n      data.expense_tracking_with_tax_filing = postpurchase.purchaseExpenseTrackerAndTaxFiling;\n    }\n    data.completed_action = id ? completedAction : ACTIONS.START_COMP;\n    data.completed_url = id ? completedUrl : URLS.START_COMP;\n    data.completed_action_index = id ? completedActionIndex : 5100;\n  }\n  return data;\n};\n/* eslint-enable camelcase, max-statements */\n\nexport const buildOrderData = (registration, filingFees, expediteFees) => {\n  const\n    { purchase: { banking } } = registration;\n\n  return _compact([\n    convertOrderData(registration),\n    convertRegAgentOrderData(registration, false, filingFees),\n    convertAnonymityOrderData(registration, false, filingFees),\n    convertBankingResolutionOrderData(registration, false),\n    ...convertBasicEmailOrderData(registration, false),\n    convertCorpDocsOrderData(registration, false, false),\n    ...convertDomainNameOrderData(registration, false),\n    ...convertDomainNamePrivacyOrderData(registration, false),\n    convertEINOrderData(registration, false),\n    convertNYPubOrderData(registration, false),\n    convertExpediteOrderData(registration, false, expediteFees),\n    convertExpediteUpsellOrderData(registration, false, expediteFees),\n    convertStaticWebsiteOrderData(registration, false, filingFees),\n    convertWorryFreeOrderData(registration, false, filingFees),\n    convertOpAgreementOrderData(registration, false, filingFees),\n    convertTaxPreparationOrderData(registration, false, filingFees),\n    convertCPAConsultOrderData(registration, false, filingFees),\n    convertInitialCPAScreeningOrderData(registration, false, filingFees),\n    convertSCorpDesignationOrderData(registration, false, filingFees),\n    convertPlanLevelOrderData(registration, false),\n    convertAnnualReportServiceOrderData(registration, false),\n    banking ? convertBankingOrderData(registration, false) : null,\n    convertAccountant1800OrderData(registration),\n    convertEINDocsBundleOrderData(registration, false, filingFees),\n    convertWebsiteToolsBundleOrderData(registration, false, filingFees),\n    convertZBMProOrderData(registration, false, filingFees),\n    convertTruicZBMProOrderData(registration, false, filingFees),\n    convertZbBankingPreferredOrderData(registration, false),\n    convertZbTaxAdviceOrderData(registration, false),\n    convertZbBizPrepOrderData(registration, false),\n    convertZbTaxAdviceBizTaxPrepOrderData(registration, false),\n    convertEinBizDocsOaBundleOrderData(registration, false),\n    convertBizDocsBlrBundleOrderData(registration, false)\n  ]);\n};\n\nexport const buildOrder = (registration, filingFees, expediteFees, isUpdate) => {\n  const\n    { business, purchase, remagine: { useBNR = false } } = registration,\n    { status: businessStatus } = business,\n    { banking } = purchase,\n    orderStatus = businessStatus,\n    orderData = buildOrderData(registration, filingFees, expediteFees),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData\n    }, convertSSN(registration), getPricingInformation(registration.order));\n\n  if (isUpdate) {\n    order.order_uuid = registration.order.id;\n    return { order };\n  }\n\n  const\n    { id: businessId } = business,\n    accountId = registration.customer.id || '',\n    account = accountId ? null : convertAccount(registration, filingFees, expediteFees);\n\n  order.order_items = _compact([\n    convertOrderItem(registration, filingFees),\n    convertRegAgentOrderItem(registration, false, filingFees),\n    convertAnonymityOrderItem(registration, false, filingFees),\n    convertBankingResolutionOrderItem(registration, false, filingFees),\n    ...convertBasicEmailOrderItem(registration, false),\n    convertCorpDocsOrderItem(registration, false, false, filingFees),\n    ...convertDomainNameOrderItem(registration, false),\n    ...convertDomainNamePrivacyOrderItem(registration, false),\n    convertEINOrderItem(registration, false, filingFees),\n    convertExpediteOrderItem(registration, false, expediteFees),\n    convertExpediteUpsellOrderItem(registration, false, expediteFees),\n    convertNYPubOrderItem(registration, false, filingFees),\n    convertStaticWebsiteOrderItem(registration, false),\n    convertWorryFreeOrderItem(registration, false, filingFees),\n    convertOpAgreementOrderItem(registration, false, filingFees),\n    convertTaxPreparationOrderItem(registration, false, filingFees),\n    convertCPAConsultOrderItem(registration, false, filingFees),\n    convertInitialCPAScreeningOrderItem(registration, false, filingFees),\n    convertSCorpDesignationOrderItem(registration, false, filingFees),\n    convertPlanLevelOrderItem(registration, false),\n    convertAnnualReportServiceOrderItem(registration, false),\n    banking ? convertBankingOrderItem(registration, false) : null,\n    convertAccountant1800OrderItem(registration),\n    convertEINDocsBundleOrderItem(registration, false, filingFees),\n    convertWebsiteToolsBundleOrderItem(registration, false),\n    convertZBMProOrderItem(registration, false, filingFees),\n    convertTruicZBMProOrderItem(registration, false, filingFees),\n    convertZbBankingPreferredOrderItem(registration, false),\n    convertZbTaxAdviceOrderItem(registration, false),\n    convertZbBizPrepOrderItem(registration, false, filingFees),\n    convertZbTaxAdviceBizTaxPrepOrderItem(registration, false, filingFees),\n    convertEinBizDocsOaBundleOrderItem(registration, false),\n    convertBizDocsBlrBundleOrderItem(registration, false)\n  ]);\n\n  if (accountId) {\n    if (businessId) {\n      order.business_entity_uuid = businessId;\n    }\n    if (useBNR) {\n      return {\n        account_uuid: accountId,\n        business_entity_uuid: businessId,\n        order\n      };\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n  return {\n    account,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { convertAddress, convertRegisteredAgent, convertDirectors, convertMembers, getPricingInformation, decorateAccount, convertContact } from './BaseDataConverter';\nimport { convertOrderItem as convertEINOrderItem, convertOrderData as convertEINOrderData, convertSSN } from './EINDataConverter';\nimport { convertOrderItem as convertStaticWebsiteOrderItem, convertOrderData as convertStaticWebsiteOrderData } from './StaticWebsiteDataConverter';\nimport { ACTIONS, URLS } from '../../constants/complete_dbaentity';\n\nimport {\n  getDBAEntityPrice,\n  getDBAEntityFees\n} from '../../utils/ProductService';\n\n/* eslint-disable camelcase */\n\nconst\n  getEntityType = (businessType) => {\n    if (businessType === 'CORP') {\n      return 'corp';\n    }\n    if (businessType === 'SOLE') {\n      return 'sole_prop';\n    }\n    return 'llc';\n  },\n  convertAccount = (registration) => {\n    const\n      { customer, lead } = registration,\n      { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password, cardToken: card_token } = customer,\n      { leadUUID: lead_uuid } = lead;\n\n    return decorateAccount(_assign({ lead_uuid, first_name, middle_name, last_name, suffix, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', card_token }));\n  };\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const\n    { dbaEntity } = registration,\n    { domesticJurisdiction: jurisdiction, county, city } = dbaEntity,\n    fees = getDBAEntityFees(jurisdiction, county, city, filingFees) || 0,\n    service = 'dba_entity';\n\n  return { service, jurisdiction, price: getDBAEntityPrice(), fees, is_add_on: false };\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    service = 'dba_entity',\n    { businessAddresses, dbaEntity, directors, members, registeredAgent, page } = registration,\n    { completedAction, completedUrl, completedActionIndex } = page,\n    {\n      status,\n      authorizedSignatory,\n      companyId: id,\n      county,\n      city,\n      businessType,\n      businessName: entity_name,\n      parentType: parent_type,\n      dbaName: dba_name,\n      businessDescription: business_purpose,\n      businessIndustry: business_industry,\n      ownerCount: owner_count = 0,\n      stateFilingDate: jurisdiction_filing_date,\n      stateFilingNumber: jurisdiction_filing_number,\n      domesticJurisdiction: domestic_jurisdiction,\n      hasEIN: has_ein,\n      ein,\n      spFirstName,\n      spMiddleName,\n      spLastName,\n      spSuffix\n    } = dbaEntity,\n    { mailing: mailingAddress, physical: physicalAddress, principal: principalAddress } = businessAddresses,\n    entity_type = getEntityType(businessType),\n    isLLC = entity_type === 'llc',\n    isCorp = entity_type === 'corp',\n    isSoleProp = entity_type === 'sole_prop';\n\n  const data = _assign(\n    {\n      service,\n      entity_type,\n      jurisdiction: domestic_jurisdiction,\n      county,\n      city,\n      parent_type,\n      dba_name,\n      principal_address: convertAddress(principalAddress),\n      mailing_address: convertAddress(mailingAddress),\n      address: convertAddress(physicalAddress),\n      business_purpose,\n      business_industry,\n      owner_count,\n      jurisdiction_filing_date,\n      jurisdiction_filing_number,\n      domestic_entity: true,\n      domestic_jurisdiction,\n      has_ein,\n      ein,\n      standalone,\n      is_new_business: false,\n      authorized_signatory: authorizedSignatory ? _assign(convertContact(authorizedSignatory).contact, { title: authorizedSignatory.title }) : null\n    },\n    isCorp ? convertDirectors(directors) : {},\n    isCorp ? { officers: [] } : {},\n    isLLC || isSoleProp ? convertMembers(members) : {},\n    isLLC ? { managers: [] } : {},\n    isSoleProp ? { sole_proprietor: { first_name: spFirstName, middle_name: spMiddleName, last_name: spLastName, suffix: spSuffix } } : {},\n    !isSoleProp ? convertRegisteredAgent(registeredAgent, {}, { registeredAgent: false, planLevel: '' }) : {});\n\n  if (standalone) {\n    if (!id) {\n      data.entity_name = entity_name;\n    }\n    if (status === 'incomplete') {\n      if (id && entity_name) {\n        data.entity_name = entity_name;\n      }\n      data.completed_action = id ? completedAction : ACTIONS.START;\n      data.completed_url = id ? completedUrl : URLS.START;\n      data.completed_action_index = id ? completedActionIndex : 5800;\n    }\n  }\n  return data;\n};\n\nexport const buildOrder = (registration, filingFees, isUpdate) => {\n  const\n    { dbaEntity } = registration,\n    { status: orderStatus } = dbaEntity;\n\n  const orderData = _compact([\n      convertOrderData(registration, true),\n      convertEINOrderData(registration, false),\n      convertStaticWebsiteOrderData(registration, false)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData\n    }, convertSSN(registration), getPricingInformation(registration.order));\n\n  if (isUpdate) {\n    order.order_uuid = registration.order.id;\n    return { order };\n  }\n\n  const\n    { companyId, simulatedCompanyId } = dbaEntity,\n    accountId = registration.customer.id || '',\n    account = accountId ? null : convertAccount(registration);\n\n  order.order_items = _compact([\n    convertOrderItem(registration, true, filingFees),\n    convertEINOrderItem(registration, false, filingFees),\n    convertStaticWebsiteOrderItem(registration, false)\n  ]);\n\n  if (accountId) {\n    if (companyId || simulatedCompanyId) {\n      order.business_entity_uuid = companyId || simulatedCompanyId;\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n  return {\n    account,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport { getPricingInformation } from './BaseDataConverter';\nimport { isDBAEntityEnabled, getDBAEntityPrice, getDBAEntityFees } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const { domesticJurisdiction } = registration.dbaEntity;\n  const service = 'dba_entity';\n\n  if (!isDBAEntityEnabled()) {\n    return null;\n  }\n\n  return {\n    service,\n    jurisdiction: domesticJurisdiction,\n    price: getDBAEntityPrice(),\n    fees: getDBAEntityFees(domesticJurisdiction, '', '', filingFees) || 0,\n    is_add_on: false\n  };\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    service = 'dba_entity',\n    { dbaEntity } = registration,\n    { domesticJurisdiction, dbaName } = dbaEntity;\n\n  if (!isDBAEntityEnabled()) {\n    return null;\n  }\n\n  return {\n    service,\n    jurisdiction: domesticJurisdiction,\n    dba_name: dbaName,\n    county: '',\n    city: '',\n    standalone,\n    is_new_business: false\n  };\n};\n\nexport const buildOrder = (registration, accountId, filingFees) => {\n  const\n    orderStatus = 'complete',\n    orderData = [ convertOrderData(registration, true) ],\n    orderItems = [ convertOrderItem(registration, true, filingFees) ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.dbaEntity.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n\n","import { isDBAComplianceEnabled, getDBAComplianceYearlyPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone, filingFees, fromDBAStandalone) => {\n  const\n    { business, postpurchase, dbaEntity } = registration,\n    { inProgress, requestedJurisdiction, dbaCompliance } = dbaEntity,\n    { requestedJurisdiction: ppRequestedJurisdiction } = business,\n    { purchaseDBACompliance: ppPurchaseDBACompliance } = postpurchase,\n    jurisdiction = inProgress || fromDBAStandalone ? requestedJurisdiction : ppRequestedJurisdiction,\n    purchaseDBACompliance = inProgress || fromDBAStandalone ? dbaCompliance : ppPurchaseDBACompliance,\n    typeFees = filingFees[jurisdiction].dba_compliance,\n    fees = typeFees ? typeFees.fees : 0,\n    service = 'dba_compliance';\n\n  if (!isDBAComplianceEnabled() || !purchaseDBACompliance) {\n    return null;\n  }\n  return { service, jurisdiction, price: getDBAComplianceYearlyPrice(), fees, term: 12, period: 1, is_add_on: false };\n};\n\nexport const convertOrderData = (registration, standalone, fromDBAStandalone) => {\n  const\n    service = 'dba_compliance',\n    { business, postpurchase, dbaEntity } = registration,\n    { inProgress, requestedJurisdiction, dbaCompliance } = dbaEntity,\n    { requestedJurisdiction: ppRequestedJurisdiction } = business,\n    { purchaseDBACompliance: ppPurchaseDBACompliance } = postpurchase,\n    jurisdiction = inProgress || fromDBAStandalone ? requestedJurisdiction : ppRequestedJurisdiction,\n    purchaseDBACompliance = inProgress || fromDBAStandalone ? dbaCompliance : ppPurchaseDBACompliance;\n\n  return purchaseDBACompliance && isDBAComplianceEnabled() ? {\n    service,\n    jurisdiction,\n    standalone,\n    is_new_business: false\n  } : null;\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\nimport _map from 'lodash/map';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { convertOrderItem as convertDBAComplianceOrderItem, convertOrderData as convertDBAComplianceOrderData } from './DBAComplianceDataConverter';\nimport { isDBAEntityEnabled, getDBAEntityPrice, getDBAEntityFees } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const\n    { business, postpurchase, dbaEntity } = registration,\n    { inProgress, requestedJurisdiction, dbaEntities: saEntities } = dbaEntity,\n    { requestedJurisdiction: busReqJurisdiction } = business,\n    { purchaseDBAEntity, dbaEntities: ppEntities } = postpurchase,\n    jurisdiction = inProgress ? requestedJurisdiction : busReqJurisdiction,\n    dbaEntities = inProgress ? saEntities : ppEntities,\n    service = 'dba_entity';\n\n  if (!isDBAEntityEnabled() || !(inProgress || purchaseDBAEntity)) {\n    return [];\n  }\n  return _map(dbaEntities, (entity) => {\n    const { county, city } = entity,\n      fees = getDBAEntityFees(jurisdiction, county, city, filingFees) || 0;\n\n    return { service, jurisdiction, price: getDBAEntityPrice(), fees, is_add_on: false };\n  });\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    service = 'dba_entity',\n    { business, postpurchase, dbaEntity } = registration,\n    { inProgress, requestedJurisdiction, dbaEntities: saEntities } = dbaEntity,\n    { requestedJurisdiction: busReqJurisdiction } = business,\n    { purchaseDBAEntity, dbaEntities: ppEntities } = postpurchase,\n    jurisdiction = inProgress ? requestedJurisdiction : busReqJurisdiction,\n    dbaEntities = inProgress ? saEntities : ppEntities;\n\n  if (!isDBAEntityEnabled() || !(inProgress || purchaseDBAEntity)) {\n    return [];\n  }\n\n  return _map(dbaEntities, (entity) => {\n    return {\n      service,\n      jurisdiction,\n      dba_name: entity.name,\n      county: entity.county,\n      city: entity.city,\n      standalone,\n      is_new_business: false\n    };\n  });\n};\n\nexport const buildOrder = (registration, accountId, filingFees) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      ...convertOrderData(registration, true),\n      convertDBAComplianceOrderData(registration, false)\n    ]),\n    orderItems = _compact([\n      ...convertOrderItem(registration, true, filingFees),\n      convertDBAComplianceOrderItem(registration, false, filingFees)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.dbaEntity.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { buildEntityName, convertAddress, convertUser, convertContactIfIdentified, getPricingInformation } from './BaseDataConverter';\nimport { convertSSN } from './EINDataConverter';\nimport { ACTIONS, URLS } from '../../constants/complete_ein';\nimport { getPlanLevel } from '../../utils/PlanService';\nimport { getEINPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\nimport { getOrder } from '../../utils/selectors';\n\nconst getPricingAndCouponAmount = (registration) => {\n  const\n    { business, purchase, coupons } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    service = 'ein_creation',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n  return { pricing, plan };\n};\n\nconst\n  convertTaxData = (ein) => {\n    const { llcMarried, llcSingleMember, taxedAsSCorp } = ein,\n      taxInfo = {};\n\n    if (llcMarried !== null) {\n      taxInfo.members_are_married = llcMarried;\n    }\n    if (llcSingleMember !== null) {\n      taxInfo.taxed_as_single_member_llc = llcSingleMember;\n    }\n    if (taxedAsSCorp !== null) {\n      taxInfo.taxed_as_s_corp = taxedAsSCorp;\n    }\n\n    return taxInfo;\n  },\n\n  /* eslint-disable max-statements */\n  convertBusinessData = (ein) => {\n    const { gambling, atf, employeesW2, w2WagesPaidDate, w2AgriculturalEmployeeCount, w2OtherEmployeeCount, w2WagesLessThan1000, corpCareOf, corpClosingMonth, startDate } = ein,\n      { motorVehicle, motorVehicleWeight, businessForm720, businessActivity1, businessActivity2, businessActivity3, businessActivity4, businessActivity5, businessActivitySpecify } = ein,\n      businessData = {\n        activity: {\n          level_1: businessActivity1,\n          level_2: businessActivity2,\n          level_3: businessActivity3,\n          level_4: businessActivity4,\n          level_5: businessActivity5,\n          specify: businessActivitySpecify\n        }\n      };\n\n    if (startDate) {\n      const startDatePieces = startDate.split('/'),\n        startDateConverted = startDatePieces.length > 2 ? `${startDatePieces[2]}-${startDatePieces[0]}-${startDatePieces[1]}` : '';\n\n      businessData.start_date = startDateConverted;\n    }\n    if (gambling !== null) {\n      businessData.gambling = gambling;\n    }\n    if (atf !== null) {\n      businessData.alcohol_tobacco_firearms = atf;\n    }\n    if (employeesW2 !== null) {\n      businessData.employees_with_w2 = employeesW2;\n      if (employeesW2) {\n        businessData.w2_wages_paid_date = w2WagesPaidDate;\n        businessData.w2_agricultural_employees_count = w2AgriculturalEmployeeCount;\n        businessData.w2_other_employees_count = w2OtherEmployeeCount;\n        businessData.w2_wages_lt_1000 = w2WagesLessThan1000;\n      }\n    }\n    if (motorVehicle !== null) {\n      businessData.highway_vehicle = motorVehicle;\n      if (motorVehicleWeight !== null) {\n        businessData.highway_vehicle_over_55000 = motorVehicleWeight;\n      }\n    }\n    if (businessForm720 !== null) {\n      businessData.files_form_720 = businessForm720;\n    }\n    businessData.corp_care_of = corpCareOf;\n    businessData.corp_closing_month = corpClosingMonth;\n    return businessData;\n  },\n  /* eslint-enable max-statements */\n\n  convertResponsibleParty = (banking) => {\n    const { responsibleParty, hasITIN } = banking;\n\n    let party = {};\n\n    if (responsibleParty) {\n      party = convertUser(responsibleParty);\n      if (responsibleParty.companyName) {\n        party.legal_name = responsibleParty.legalName;\n        party.ein_number = responsibleParty.ein;\n      } else {\n        party.suffix = responsibleParty.suffix || '';\n        party.previous_ein = responsibleParty.previousEin;\n        party.alternate_last_names = responsibleParty.alternateLastNames;\n      }\n      party.collect_data_from_user = responsibleParty.collectDataFromUser || false;\n      party.has_ssn = hasITIN;\n    }\n\n    return party;\n  };\n\nexport const convertOrderItem = (state, standalone) => {\n  const\n    { registration } = state,\n    business = getOrder(state, 'business'),\n    { purchase } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'ein_creation',\n    servicePricing = getPricingAndCouponAmount(registration);\n\n  return {\n    service,\n    jurisdiction,\n    price: plan ? servicePricing.pricing.servicePrice : getEINPrice(),\n    coupon: plan ? servicePricing.pricing.serviceCouponAmount : 0,\n    fees: 0,\n    is_add_on: !standalone && !!plan\n  };\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (state, standalone) => {\n  const { registration } = state;\n  const { contact, ein, members, order, page, purchase, banking } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = getOrder(state, 'business'),\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null;\n\n  if (!(plan && plan.ein_creation) && !purchase.ein && !standalone) {\n    return null;\n  }\n\n  const\n    { type, name, indicator, status, description, id: businessId } = getOrder(state, 'business'),\n    { principal: principalAddress, mailing: mailingAddress, physical: physicalAddress } = getOrder(state, 'businessAddresses'),\n    { county } = physicalAddress,\n    { reason, dbas: trade_names, phoneNumber: phone } = ein,\n    { id = '' } = order,\n    { completedAction, completedUrl, completedActionIndex } = page,\n    memberCount = members.memberCount ? members.memberCount : ein.memberCount,\n    formationType = type === 'LLCX' ? 'llc' : 'corp',\n    entityType = type === 'SOLE' ? 'sole_prop' : formationType,\n    data = _assign({\n      service: 'ein_creation',\n      standalone,\n      jurisdiction,\n      domestic_jurisdiction: jurisdiction,\n      type, // Keep for backward compatibility\n      entity_type: entityType,\n      is_new_business: !standalone,\n      reason: reason || 'Started New Business',\n      member_count: memberCount || null,\n      business_purpose: description,\n      address: convertAddress(physicalAddress),\n      mailing_address: convertAddress(mailingAddress),\n      principal_address: convertAddress(principalAddress),\n      county,\n      phone,\n      trade_names,\n      tax_info: convertTaxData(ein),\n      business_data: convertBusinessData(ein),\n      responsible_party: convertResponsibleParty(banking)\n    }, convertContactIfIdentified(contact));\n\n  if (standalone) {\n    if (!businessId) {\n      data.entity_name = buildEntityName(name, indicator);\n    }\n    if (status === 'incomplete') {\n      if (businessId && name) {\n        data.entity_name = buildEntityName(name, indicator);\n      }\n      data.completed_action = id ? completedAction : ACTIONS.START_EIN;\n      data.completed_url = id ? completedUrl : URLS.START_EIN;\n      data.completed_action_index = id ? completedActionIndex : 5200;\n    }\n  }\n  return data;\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (state, isUpdate) => {\n  const\n    status = 'complete',\n    { registration } = state,\n    { banking } = registration,\n    orderData = _compact([\n      convertOrderData(state, true)\n    ]),\n    order = _assign({\n      order_status: status,\n      order_data: orderData\n    }, convertSSN(registration), getPricingInformation(registration.order));\n\n  const\n    { companyId: businessId } = banking,\n    accountId = registration.customer.id || '';\n\n  order.order_items = _compact([\n    convertOrderItem(state, true)\n  ]);\n\n  if (isUpdate) {\n    order.order_uuid = registration.order.id;\n  }\n\n  return {\n    business_entity_uuid: businessId,\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport { getExpenseTrackerAndTaxFilingPlanYearlyPrice } from '../../utils/PlanService';\nimport { getPricingInformation } from './BaseDataConverter';\n\nexport const convertOrderItem = (registration) => {\n  const\n    { business, postpurchase, purchase } = registration,\n    { requestedJurisdiction: jurisdiction, type: businessType } = business,\n    { purchaseExpenseTrackerAndTaxFiling } = postpurchase,\n    { expenseTrackerNTaxFiling : registerExpenseTrackerNTaxFiling } = purchase,\n    service = 'expense_tracking_with_tax_filing',\n    flow = purchaseExpenseTrackerAndTaxFiling || registerExpenseTrackerNTaxFiling;\n\n  if (!flow) {\n    return [];\n  }\n  return [{\n    service,\n    jurisdiction: jurisdiction || 'TX',\n    price: getExpenseTrackerAndTaxFilingPlanYearlyPrice(businessType),\n    fees: 0,\n    term: 12,\n    period: 1,\n    is_add_on: false\n  },\n  {\n    service: 'expense_tracking',\n    jurisdiction: jurisdiction || 'TX',\n    price: 0,\n    fees: 0,\n    term: 12,\n    period: 1,\n    is_add_on: false\n  },\n  {\n    service: 'tax_filing',\n    jurisdiction: jurisdiction || 'TX',\n    price: 0,\n    fees: 0,\n    term: 12,\n    period: 1,\n    is_add_on: false\n  }];\n};\n\nexport const convertOrderData = (registration) => {\n  const service = 'expense_tracking_with_tax_filing',\n    { business, postpurchase, purchase } = registration,\n    { requestedJurisdiction } = business,\n    { purchaseExpenseTrackerAndTaxFiling } = postpurchase,\n    { expenseTrackerNTaxFiling : registerExpenseTrackerNTaxFiling } = purchase,\n    flow = purchaseExpenseTrackerAndTaxFiling || registerExpenseTrackerNTaxFiling;\n\n  return flow ? [{\n    service,\n    jurisdiction: requestedJurisdiction || 'TX'\n  },\n  {\n    service: 'expense_tracking',\n    jurisdiction: requestedJurisdiction || 'TX'\n  },\n  {\n    service: 'tax_filing',\n    jurisdiction: requestedJurisdiction || 'TX'\n  }] : [];\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData =\n      convertOrderData(registration, true),\n    orderItems =\n      convertOrderItem(registration, true),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.business.id\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getGoodStandingPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const\n    { goodStanding } = registration,\n    { state: jurisdiction, useCredit, creditUUID  } = goodStanding,\n    fees = filingFees[jurisdiction].standard_good_standing.fees,\n    service = 'standard_good_standing';\n\n  if (standalone) {\n    if (useCredit) {\n      return { service, jurisdiction, price: 0, fees, is_add_on: false, credits: 1, credit_balance_uuid: creditUUID };\n    }\n    return { service, jurisdiction, price: getGoodStandingPrice(), fees, is_add_on: false };\n  }\n\n  return null;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { goodStanding } = registration,\n    { businessType, name: entity_name, domesticJurisdiction: formation_jurisdiction, state: jurisdiction } = goodStanding,\n    service = 'standard_good_standing';\n\n  return {\n    service,\n    standalone,\n    entity_name,\n    business_entity_name: entity_name,\n    business_entity_type: businessType === 'CORP' ? 'CORP' : 'LLC',\n    jurisdiction,\n    formation_jurisdiction\n  };\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, accountId, filingFees) => {\n  const\n    orderStatus = 'complete',\n    orderData = _compact([\n      convertOrderData(registration, true)\n    ]),\n    orderItems = _compact([\n      convertOrderItem(registration, true, filingFees)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.goodStanding.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPlanLevel, isAutoIncludedInPlan } from '../../utils/PlanService';\nimport { getLogoKitPrice } from '../../utils/ProductService';\nimport { getPriceAndCouponForService } from '../../utils/PricingUtils';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, purchase, coupons } = registration,\n    { logoKit = false, planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    service = 'logo_kit',\n    pricing = getPriceAndCouponForService(service, plan, coupons);\n\n  if ((plan && plan.logo_kit) || logoKit) {\n    return { service, jurisdiction, price: 0, coupon: 0, fees: 0, is_add_on: false };\n  }\n\n  const\n    price = plan ? pricing.servicePrice : getLogoKitPrice(),\n    coupon = plan ? pricing.serviceCouponAmount : 0,\n    fees = 0;\n\n  if (standalone || logoKit || isAutoIncludedInPlan(plan, 'logo_kit')) {\n    return { service, jurisdiction, price, coupon, fees, is_add_on: !standalone && !!plan };\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, purchase } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    isAutoIncluded = !standalone && isAutoIncludedInPlan(plan, 'logo_kit');\n\n  if (!(plan && plan.logo_kit) && !purchase.logoKit && !standalone && !isAutoIncluded) {\n    return null;\n  }\n\n  const\n    data = {\n      service: 'logo_kit',\n      standalone: false,\n      jurisdiction,\n      is_new_business: !standalone,\n      is_auto_included: isAutoIncluded\n    };\n\n  return data;\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.logoKit.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","export const convertOrderItem = (registration) => {\n  const\n    { business } = registration,\n    {\n      requestedJurisdiction: jurisdiction,\n      isDAO,\n      daoMemberManaged,\n      daoRestriction,\n      daoSmartContractLink\n    } = business,\n    service = 'dao_designation';\n  if (isDAO) {\n    // console.log('dao order item', { service, jurisdiction, price: 0, coupon: 0, fees: 0, is_add_on: false, dao_smart_contract_managed: !daoMemberManaged, dao_notice_approved: daoRestriction });\n    return {\n      service,\n      jurisdiction,\n      price: 0,\n      coupon: 0,\n      fees: 0,\n      is_add_on: false,\n      dao_smart_contract_managed: !daoMemberManaged,\n      dao_notice_approved: daoRestriction,\n      dao_smart_contract_link: daoSmartContractLink\n    };\n  }\n\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business } = registration,\n    {\n      requestedJurisdiction: jurisdiction,\n      isDAO,\n      daoMemberManaged,\n      daoRestriction,\n      daoSmartContractLink\n    } = business,\n    service = 'dao_designation';\n\n  if (isDAO) {\n    // console.log('dao order data', { service, jurisdiction, standalone, is_new_business: !standalone, dao_smart_contract_managed: !daoMemberManaged, dao_notice_approved: daoRestriction });\n    return {\n      service,\n      jurisdiction,\n      standalone,\n      is_new_business:\n      !standalone,\n      dao_smart_contract_managed: !daoMemberManaged,\n      dao_notice_approved: daoRestriction,\n      dao_smart_contract_link: daoSmartContractLink\n    };\n  }\n  return null;\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\nimport _capitalize from 'lodash/capitalize';\n\nimport {\n  buildEntityName, convertAddress, convertContactIfIdentified, convertManagers, convertMembers,\n  convertRegisteredAgent, convertAuthorizedSignatory, calculateBusinessTotal, getPricingInformation, decorateAccount\n} from './BaseDataConverter';\nimport { convertOrderItem as convertAnonymityOrderItem, convertOrderData as convertAnonymityOrderData } from './AnonymityConverter';\nimport { convertOrderItem as convertBankingOrderItem, convertOrderData as convertBankingOrderData } from './BankingConverter';\nimport { convertOrderItem as convertBankingResolutionOrderItem, convertOrderData as convertBankingResolutionOrderData } from './BankingResolutionDataConverter';\nimport { convertOrderItem as convertBasicEmailOrderItem, convertOrderData as convertBasicEmailOrderData } from './BasicEmailConverter';\nimport { convertBusinessData as convertBLRBusinessData, convertOrderData as convertBLROrderData } from './BusLicDataConverter';\nimport { convertOrderItem as convertCorpDocsOrderItem, convertOrderData as convertCorpDocsOrderData } from './CorporateDocsDataConverter';\nimport { convertOrderItem as convertCPAConsultOrderItem, convertOrderData as convertCPAConsultOrderData } from './CPAConsultConverter';\nimport { convertOrderItem as convertDomainNameOrderItem, convertOrderData as convertDomainNameOrderData } from './DomainNameDataConverter';\nimport { convertOrderItem as convertDomainNamePrivacyOrderItem, convertOrderData as convertDomainNamePrivacyOrderData } from './DomainNamePrivacyDataConverter';\nimport { convertOrderItem as convertEINDocsBundleOrderItem, convertOrderData as convertEINDocsBundleOrderData } from './EINBusinessDocsBundleConverter';\nimport { convertOrderItem as convertEINOrderItem, convertOrderData as convertEINOrderData, convertSSN } from './EINDataConverter';\nimport { convertOrderItem as convertExpediteOrderItem, convertOrderData as convertExpediteOrderData } from './ExpediteDataConverter';\nimport { convertOrderItem as convertExpediteUpsellOrderItem, convertOrderData as convertExpediteUpsellOrderData } from './ExpediteUpsellDataConverter';\nimport { convertOrderItem as convertInitialCPAScreeningOrderItem, convertOrderData as convertInitialCPAScreeningOrderData } from './InitialCPAScreeningConverter';\nimport { convertOrderItem as convertNYPubOrderItem, convertOrderData as convertNYPubOrderData } from './NYPubDataConverter';\nimport { convertOrderItem as convertOpAgreeOrderItem, convertOrderData as convertOpAgreeOrderData } from './OpAgreeDataConverter';\nimport { convertOrderItem as convertRegAgentOrderItem, convertOrderData as convertRegAgentOrderData } from './RegAgentDataConverter';\nimport { convertOrderItem as convertPlanLevelOrderItem, convertOrderData as convertPlanLevelOrderData } from './PlanLevelDataConverter';\nimport { convertOrderItem as convertSCorpDesignationOrderItem, convertOrderData as convertSCorpDesignationOrderData } from './SCorpDesignationConverter';\nimport { convertOrderItem as convertStaticWebsiteOrderItem, convertOrderData as convertStaticWebsiteOrderData } from './StaticWebsiteDataConverter';\nimport { convertOrderItem as convertTaxPreparationOrderItem, convertOrderData as convertTaxPreparationOrderData } from './TaxPreparationConverter';\nimport { convertOrderItem as convertWebsiteToolsBundleOrderItem, convertOrderData as convertWebsiteToolsBundleOrderData } from './WebsiteToolsBundleConverter';\nimport { convertOrderItem as convertWorryFreeOrderItem, convertOrderData as convertWorryFreeOrderData } from './WorryFreeDataConverter';\nimport { convertOrderItem as convertAnnualReportServiceOrderItem, convertOrderData as convertAnnualReportServiceOrderData } from './AnnualReportServiceConverter';\nimport { convertOrderItem as convertAccountant1800OrderItem, convertOrderData as convertAccountant1800OrderData } from './Accountant1800Converter';\nimport { convertOrderItem as convertDAODesignationOrderItem, convertOrderData as convertDAODesignationOrderData } from './DAODesignationConverter';\nimport { convertOrderItem as convertZBMProOrderItem, convertOrderData as convertZBMProOrderData } from './ZBMProDataConverter';\nimport { convertOrderItem as convertZbBankingPreferredOrderItem, convertOrderData as convertZbBankingPreferredOrderData } from './ZbBankingPreferredDataConverter';\nimport { convertOrderItem as convertZbTaxAdviceOrderItem, convertOrderData as convertZbTaxAdviceOrderData } from './zbTaxAdviceConverter';\nimport { convertOrderItem as convertZbBizPrepOrderItem, convertOrderData as convertZbBizPrepOrderData } from './zbBizTaxPrepConverter';\nimport { convertOrderItem as convertZbTaxAdviceBizTaxPrepOrderItem, convertOrderData as convertZbTaxAdviceBizTaxPrepOrderData } from './zbTaxAdviceBizTaxPrepConverter';\nimport { convertOrderItem as convertEinBizDocsOaBundleOrderItem, convertOrderData as convertEinBizDocsOaBundleOrderData } from './einBizDocsOaBundleConverter';\nimport { convertOrderItem as convertBizDocsBlrBundleOrderItem, convertOrderData as convertBizDocsBlrBundleOrderData } from './bizDocsBlrBundleConverter';\n\nimport { ACTIONS, URLS } from '../../constants/complete_llc';\nimport { getEntryPointGroup } from '../../utils/PartnerUtils';\n\nconst getRemaginePlanName = (planLevel, industry) => {\n  if (planLevel === 'level2') {\n    return `${_capitalize(industry)} LLC`;\n  }\n  return `${planLevel === 'level3' ? 'Premium' : 'Starter'} LLC`;\n};\n/* eslint-disable camelcase */\nconst\n  convertAccount = (registration, filingFees, expediteFees) => {\n    const\n      { business, customer, lead, purchase } = registration,\n      { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password } = customer,\n      { cardNumber: number, cardToken: card_token, expMonth, expYear, cvc } = customer,\n      // todo: confirm if we even need amount in a credit card order, because we don't in card_token orders\n      amount = calculateBusinessTotal(business, purchase, filingFees, expediteFees),\n      card = { number, exp_month: parseInt(expMonth, 10), exp_year: 2000 + parseInt(expYear, 10), cvc, amount, default: true },\n      { leadUUID: lead_uuid } = lead;\n\n    const cardOrToken = card_token ? { card_token } : { card };\n    return decorateAccount(_assign({ lead_uuid, first_name, middle_name, last_name, suffix, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', ...cardOrToken }, convertAddress(customer)));\n  };\n/* eslint-enable camelcase */\n\nexport const convertOrderItem = (registration, filingFees) => {\n  const\n    { business } = registration,\n    { requestedJurisdiction: jurisdiction, formationCounty } = business,\n    service = 'llc_formation',\n    typeFees = filingFees[jurisdiction].llc_formation,\n    price = typeFees.price,\n    fees = typeFees.fees;\n\n  return { service, price, fees, jurisdiction, is_add_on: false, formation_county: formationCounty };\n};\n\n/* eslint-disable camelcase, max-statements */\nexport const convertOrderData = (registration, isInternational) => {\n  const\n    { blr, business, businessAddresses, contact, managers, members, order, registeredAgent, remagine, page, purchase, postpurchase } = registration,\n    { name, indicator, alternates, description: business_purpose, requestedJurisdiction: jurisdiction = 'NC', phoneNumber: phone, status } = business,\n    { businessActivity: activity, domesticJurisdiction, foreignJurisdictions, authorizedSignatory, formationCounty } = business,\n    { goals, hasEmployees, homeBased, industry, launchStatus, priorExperience } = remagine,\n    { estimatedFormationDate = '', planLevel } = purchase,\n    { id = '' } = order,\n    { completedAction, completedUrl, completedActionIndex } = page,\n    entityName = buildEntityName(name, indicator),\n    service = 'llc_formation',\n    { principal: principalAddress, mailing: mailingAddress, physical: physicalAddress } = businessAddresses,\n    data = _assign(\n      {\n        service,\n        entity_name: entityName,\n        alternates,\n        business_purpose,\n        jurisdiction,\n        principal_address: convertAddress(principalAddress),\n        mailing_address: convertAddress(mailingAddress),\n        address: convertAddress(physicalAddress),\n        phone,\n        estimated_formation_date: estimatedFormationDate,\n        activity,\n\n        // Personalization data\n        goals,\n        has_employees: hasEmployees,\n        home_based: homeBased,\n        industry,\n        launch_status: launchStatus,\n        prior_experience: priorExperience,\n\n        // Used with standalone RA\n        domestic_jurisdiction: domesticJurisdiction,\n        domestic_entity: true,\n        foreign_jurisdictions: foreignJurisdictions,\n        domestic_filing_date: '',\n        state_id: '',\n        plan_partner: getEntryPointGroup() || '',\n        entry_point_group: getEntryPointGroup() || '',\n\n        // Capture formation county for NY LLCs\n        formation_county:\n          !formationCounty.length && !!registration?.nypub?.nyPubCountyCode\n            ? registration.nypub.nyPubCountyCode\n            : formationCounty\n      },\n      getEntryPointGroup() === 'pf' ? { plan_name: getRemaginePlanName(planLevel, industry) } : {},\n      convertAuthorizedSignatory(authorizedSignatory),\n      convertContactIfIdentified(contact),\n      convertManagers(managers),\n      convertMembers(members),\n      convertRegisteredAgent(registeredAgent, business, isInternational ? { registeredAgent: true } : purchase)\n    );\n\n  if (status === 'incomplete') {\n    if (postpurchase.purchaseBLR !== null) {\n      data.purchase_blr = postpurchase.purchaseBLR;\n      if (postpurchase.purchaseBLR) {\n        data.blr_data = { business_data: convertBLRBusinessData(blr) };\n      }\n    }\n    if (postpurchase.purchaseRA !== null) {\n      data.purchase_ra = postpurchase.purchaseRA;\n    }\n    if (postpurchase.purchaseDBAEntity !== null) {\n      data.purchase_dba_entity = postpurchase.purchaseDBAEntity;\n      data.dba_entities = postpurchase.dbaEntities;\n      if (postpurchase.purchaseDBACompliance !== null) {\n        data.purchase_dba_compliance = postpurchase.purchaseDBACompliance;\n      }\n    }\n    if (postpurchase.purchaseCD !== null) {\n      data.purchase_cd = postpurchase.purchaseCD;\n    }\n    if (postpurchase.purchaseBankOfAmericaOffer !== null) {\n      data.purchase_bank_of_america_offer = postpurchase.purchaseBankOfAmericaOffer;\n    }\n    if (postpurchase.purchaseZbBankingPreferredOffer !== null) {\n      data.purchase_zb_banking_preferred_offer = postpurchase.purchaseZbBankingPreferredOffer;\n    }\n    if (postpurchase.purchaseFFD !== null) {\n      data.purchase_ffd = postpurchase.purchaseFFD;\n      data.filing_action = postpurchase.filingAction;\n      data.future_filing_date = postpurchase.futureFilingDate;\n    }\n    if (postpurchase.purchaseWFGIR !== null) {\n      data.purchase_wfgir = postpurchase.purchaseWFGIR;\n    }\n    if (postpurchase.purchaseVBA !== null) {\n      data.purchase_vba = postpurchase.purchaseVBA;\n    }\n    if (postpurchase.purchaseVanityProduct !== null) {\n      data.purchase_vanity_product = postpurchase.purchaseVanityProduct;\n    }\n    if (postpurchase.purchaseTaxAdviceBizTaxPrep !== null || postpurchase.purchaseTaxAdvice !== null) {\n      data.purchase_tax_advice = postpurchase.purchaseTaxAdvice;\n      data.tax_advice_monthly = postpurchase.taxAdviceMonthly;\n      data.purchase_tax_advice_biztax_prep = postpurchase.purchaseTaxAdviceBizTaxPrep;\n      data.tax_advice_biztax_prep_monthly = postpurchase.taxAdviceBizTaxPrepMonthly;\n    }\n    if (postpurchase.purchaseZBMPro !== null) {\n      data.purchase_zbmpro = postpurchase.purchaseZBMPro;\n      data.zbmpro_monthly = postpurchase.zbmProMonthly;\n    }\n    if (postpurchase.purchaseBusinessKit !== null) {\n      data.purchase_business_kit = postpurchase.purchaseBusinessKit;\n    }\n    if (postpurchase.purchaseBOF !== null) {\n      data.purchase_bof = postpurchase.purchaseBOF;\n      data.bof_ongoing = postpurchase.bofOngoing;\n    }\n    if (postpurchase.purchaseExpenseTrackerAndTaxFiling !== null) {\n      data.expense_tracking_with_tax_filing = postpurchase.purchaseExpenseTrackerAndTaxFiling;\n    }\n    data.completed_action = id ? completedAction : ACTIONS.START_COMP;\n    data.completed_url = id ? completedUrl : URLS.START_COMP;\n    data.completed_action_index = id ? completedActionIndex : 5000;\n  }\n  return data;\n};\n/* eslint-enable camelcase, max-statements */\n\nexport const buildOrderData = (registration, filingFees, expediteFees) => {\n  const\n    { purchase: { banking } } = registration;\n\n  return _compact([\n    convertOrderData(registration),\n    convertRegAgentOrderData(registration, false, filingFees),\n    convertAnonymityOrderData(registration, false, filingFees),\n    ...convertBasicEmailOrderData(registration, false),\n    convertBankingResolutionOrderData(registration, false),\n    convertCorpDocsOrderData(registration, false, false),\n    ...convertDomainNameOrderData(registration, false),\n    ...convertDomainNamePrivacyOrderData(registration, false),\n    convertEINOrderData(registration, false),\n    convertNYPubOrderData(registration, false),\n    convertOpAgreeOrderData(registration, false),\n    convertExpediteOrderData(registration, false, expediteFees),\n    convertExpediteUpsellOrderData(registration, false, expediteFees),\n    convertSCorpDesignationOrderData(registration, false, filingFees),\n    convertDAODesignationOrderData(registration, false, filingFees),\n    convertStaticWebsiteOrderData(registration, false, filingFees),\n    convertWorryFreeOrderData(registration, false, filingFees),\n    convertTaxPreparationOrderData(registration, false, filingFees),\n    convertCPAConsultOrderData(registration, false, filingFees),\n    convertInitialCPAScreeningOrderData(registration, false, filingFees),\n    convertPlanLevelOrderData(registration, false),\n    convertAnnualReportServiceOrderData(registration, false),\n    banking ? convertBankingOrderData(registration, false) : null,\n    convertEINDocsBundleOrderData(registration, false, filingFees),\n    convertWebsiteToolsBundleOrderData(registration, false, filingFees),\n    convertAccountant1800OrderData(registration),\n    convertZBMProOrderData(registration, false, filingFees),\n    convertBLROrderData(registration, false,),\n    convertZbBankingPreferredOrderData(registration, false),\n    convertZbTaxAdviceOrderData(registration, false),\n    convertZbBizPrepOrderData(registration, false),\n    convertZbTaxAdviceBizTaxPrepOrderData(registration, false),\n    convertEinBizDocsOaBundleOrderData(registration, false, filingFees),\n    convertBizDocsBlrBundleOrderData(registration, false, filingFees)\n  ]);\n};\n\nexport const buildOrder = (registration, filingFees, expediteFees, isUpdate) => {\n  const\n    { business, purchase, remagine: { useBNR = false } } = registration,\n    { status: orderStatus } = business,\n    { banking } = purchase,\n    orderData = buildOrderData(registration, filingFees, expediteFees),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData\n    }, convertSSN(registration), getPricingInformation(registration.order));\n  if (isUpdate) {\n    order.order_uuid = registration.order.id;\n    return { order };\n  }\n\n  const\n    { id: businessId, isDAO } = business,\n    accountId = registration.customer.id || '',\n    account = accountId ? null : convertAccount(registration, filingFees, expediteFees);\n\n  order.order_items = _compact([\n    convertOrderItem(registration, filingFees),\n    convertRegAgentOrderItem(registration, false, filingFees),\n    convertAnonymityOrderItem(registration, false, filingFees),\n    convertBankingResolutionOrderItem(registration, false, filingFees),\n    ...convertBasicEmailOrderItem(registration, false),\n    convertCorpDocsOrderItem(registration, false, false, filingFees),\n    ...convertDomainNameOrderItem(registration, false),\n    ...convertDomainNamePrivacyOrderItem(registration, false),\n    convertEINOrderItem(registration, false, filingFees),\n    convertNYPubOrderItem(registration, false, filingFees),\n    !isDAO ? convertOpAgreeOrderItem(registration, false, filingFees) : null,\n    convertExpediteOrderItem(registration, false, expediteFees),\n    convertExpediteUpsellOrderItem(registration, false, expediteFees),\n    convertSCorpDesignationOrderItem(registration, false, filingFees),\n    convertDAODesignationOrderItem(registration, false, filingFees),\n    convertStaticWebsiteOrderItem(registration, false),\n    convertWorryFreeOrderItem(registration, false, filingFees),\n    convertTaxPreparationOrderItem(registration, false, filingFees),\n    convertCPAConsultOrderItem(registration, false, filingFees),\n    convertInitialCPAScreeningOrderItem(registration, false, filingFees),\n    convertPlanLevelOrderItem(registration, false),\n    convertAnnualReportServiceOrderItem(registration, false),\n    banking ? convertBankingOrderItem(registration, false) : null,\n    convertEINDocsBundleOrderItem(registration, false, filingFees),\n    convertWebsiteToolsBundleOrderItem(registration, false),\n    convertAccountant1800OrderItem(registration),\n    convertZBMProOrderItem(registration, false, filingFees),\n    convertZbBankingPreferredOrderItem(registration, false),\n    convertZbTaxAdviceOrderItem(registration, false, filingFees),\n    convertZbBizPrepOrderItem(registration, false, filingFees),\n    convertZbTaxAdviceBizTaxPrepOrderItem(registration, false, filingFees),\n    convertEinBizDocsOaBundleOrderItem(registration, false),\n    convertBizDocsBlrBundleOrderItem(registration, false)\n  ]);\n\n  if (accountId) {\n    if (businessId) {\n      order.business_entity_uuid = businessId;\n    }\n    if (useBNR) {\n      return {\n        account_uuid: accountId,\n        business_entity_uuid: businessId,\n        order\n      };\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n  return {\n    account,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\nimport { buildEntityName, convertAddress, convertContactIfIdentified, getPricingInformation, decorateAccount } from './BaseDataConverter';\nimport { getNameResPrice } from '../../utils/ProductService';\n\n/* eslint-disable camelcase */\nconst\n  convertAccount = (registration) => {\n    const\n      { customer, lead } = registration,\n      { firstName: first_name, middleName: middle_name, lastName: last_name, suffix, email, phoneNumber: phone, password } = customer,\n      { cardToken: card_token } = customer,\n      { leadUUID: lead_uuid } = lead;\n\n    return decorateAccount({ lead_uuid, first_name, middle_name, last_name, suffix, email: email ? email.toLowerCase() : '', phone, password, international: false, signup_client: 'web_v2', card_token });\n  };\n/* eslint-enable camelcase */\n\nexport const convertOrderItem = (registration, filingFees) => {\n  const\n    { business, purchase } = registration,\n    { nameReservation } = purchase,\n    { requestedJurisdiction: jurisdiction, type } = business,\n    service = 'entity_name_reservation',\n    price = getNameResPrice(),\n    nameReservationFees = filingFees[jurisdiction].entity_name_reservation[type === 'CORP' ? 'corp' : 'llc'],\n    { fees } = nameReservationFees;\n\n  return nameReservation ? { service, price, fees, jurisdiction, is_add_on: false } : null;\n};\n\nexport const convertOrderData = (registration) => {\n  const { business, businessAddresses, contact, purchase } = registration;\n\n  if (!purchase.nameReservation) {\n    return null;\n  }\n\n  const\n    { requestedJurisdiction: jurisdiction, type, name, indicator } = business,\n    { principal, mailing } = businessAddresses,\n    { phoneNumber: phone } = contact;\n\n  return _assign({\n    service: 'entity_name_reservation',\n    standalone: true,\n    jurisdiction,\n    domestic_jurisdiction: jurisdiction,\n    entity_type: type === 'LLCX' ? 'llc' : 'corp',\n    entity_name: buildEntityName(name, indicator),\n    is_new_business: true,\n    address: convertAddress(principal),\n    mailing_address: convertAddress(mailing),\n    first_name: contact ? contact.firstName : '',\n    last_name: contact ? contact.lastName : '',\n    phone\n  }, convertContactIfIdentified(contact));\n};\n\nexport const buildOrder = (registration, filingFees) => {\n  const\n    accountId = registration.customer.id,\n    businessId = registration.business.id,\n    account = accountId ? null : convertAccount(registration),\n    orderStatus = 'complete',\n    orderItems = _compact([\n      convertOrderItem(registration, filingFees)\n    ]),\n    orderData = _compact([\n      convertOrderData(registration)\n    ]),\n    order = _assign({\n      order_status: orderStatus,\n      order_items: orderItems,\n      order_data: orderData\n    }, getPricingInformation(registration.order));\n\n  if (accountId) {\n    if (businessId) {\n      return {\n        account_uuid: accountId,\n        business_entity_uuid: businessId,\n        order\n      };\n    }\n    return {\n      account_uuid: accountId,\n      order\n    };\n  }\n  return {\n    account,\n    order\n  };\n};\n","import { buildEntityName } from './BaseDataConverter';\nimport { getFutureFileDatePrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration) => {\n  const\n    { business, postpurchase } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { purchaseFFD } = postpurchase,\n    service = 'future_file_date';\n\n  if (!purchaseFFD) {\n    return null;\n  }\n  return { service, jurisdiction, price: getFutureFileDatePrice(), fees: 0, is_add_on: false };\n};\n\nexport const convertOrderData = (registration) => {\n  const\n    service = 'future_file_date',\n    { business, postpurchase } = registration,\n    { requestedJurisdiction, name, indicator } = business,\n    { futureFilingDate, filingAction, purchaseFFD } = postpurchase;\n\n  return purchaseFFD ? {\n    service,\n    jurisdiction: requestedJurisdiction,\n    entity_name: buildEntityName(name, indicator),\n    future_filing_date: futureFilingDate,\n    filing_action: filingAction,\n    standalone: false,\n    is_new_business: false\n  } : null;\n};\n","import { getVirtualBusinessAddressPrice } from '../../utils/ProductService';\n\nconst SERVICE = 'virtual_business_address';\n\nexport const convertOrderItem = (registration, standalone, isPostPurchase) => {\n  const\n    { business, postpurchase } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { purchaseVBA } = postpurchase,\n    fees = 0,\n    term = 12,\n    period = 12;\n\n\n  if (standalone) {\n    return { service: SERVICE, jurisdiction, price: getVirtualBusinessAddressPrice(), fees, is_add_on: false, term, period };\n  }\n  if (isPostPurchase) {\n    if (purchaseVBA) {\n      return { service: SERVICE, jurisdiction, price: getVirtualBusinessAddressPrice(), fees, is_add_on: false, term, period };\n    }\n    return null;\n  }\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone, isPostPurchase) => {\n  const\n    { business, postpurchase } = registration,\n    { requestedJurisdiction } = business,\n    { purchaseVBA } = postpurchase,\n    isEnabled = standalone || (isPostPurchase && purchaseVBA);\n\n  return isEnabled ? {\n    service: SERVICE,\n    jurisdiction: requestedJurisdiction,\n    standalone,\n    is_new_business: false\n  } : null;\n};\n","import _assign from 'lodash/assign';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getWFGInitialReportPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration, standalone, filingFees) => {\n  const\n    { business, postpurchase, purchase } = registration,\n    { requestedJurisdiction: jurisdiction, type } = business,\n    { purchaseWFGIR } = postpurchase,\n    { worryFree, annualReportService } = purchase,\n    stateFees = filingFees[jurisdiction] ? filingFees[jurisdiction].wfg_initial_report : null,\n    typeFees = stateFees ? stateFees[type === 'CORP' ? 'corp' : 'llc'] : null,\n    fees = typeFees ? typeFees.domestic.fees : 0,\n    service = 'wfg_initial_report';\n\n  if (!standalone && !purchaseWFGIR) {\n    return null;\n  }\n  return { service, jurisdiction, price: (annualReportService || worryFree) ? 0 : getWFGInitialReportPrice(), fees, is_add_on: false };\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    service = 'wfg_initial_report',\n    { business, postpurchase } = registration,\n    { requestedJurisdiction } = business,\n    { purchaseWFGIR } = postpurchase;\n\n  return purchaseWFGIR || standalone ? {\n    service,\n    jurisdiction: requestedJurisdiction,\n    standalone: false,\n    is_new_business: false\n  } : null;\n};\n\nexport const buildOrder = (registration, accountId, filingFees) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true, filingFees)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.wfgir.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n\n","import { getPostPurchaseVanityProduct } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration) => {\n  const vanityProduct = getPostPurchaseVanityProduct();\n\n  const\n    { business, postpurchase } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { purchaseVanityProduct } = postpurchase;\n\n\n  if (!vanityProduct || !purchaseVanityProduct) {\n    return null;\n  }\n  const price = vanityProduct.price || vanityProduct.priceWithoutCoupon || 0;\n  if (vanityProduct.priceIsMonthly) {\n    return { service: vanityProduct.productKey, jurisdiction, price, fees: 0, term: 12, period: 12, is_add_on: false };\n  }\n  if (vanityProduct.priceIsYearly) {\n    return { service: vanityProduct.productKey, jurisdiction, price, fees: 0, term: 12, period: 1, is_add_on: false };\n  }\n  return { service: vanityProduct.productKey, jurisdiction, price, fees: 0, is_add_on: false };\n};\n\nexport const convertOrderData = (registration) => {\n  const vanityProduct = getPostPurchaseVanityProduct();\n\n  if (!vanityProduct) return null;\n\n  const\n    service = vanityProduct.productKey,\n    { business, postpurchase } = registration,\n    { requestedJurisdiction, type } = business,\n    { purchaseVanityProduct } = postpurchase;\n\n  return purchaseVanityProduct ? {\n    service,\n    vanity_product: purchaseVanityProduct,\n    jurisdiction: requestedJurisdiction,\n    entity_type: type === 'LLCX' ? 'llc' : 'corp',\n    standalone: false\n  } : null;\n};\n","import _assign from 'lodash/assign';\n\nimport { getPricingInformation } from './BaseDataConverter';\n\nexport const convertOrderItem = (registration) => {\n\n  const\n    { business: { domesticJurisdiction },\n      postpurchase: { purchaseBankOfAmericaOffer }\n    } = registration,\n    service = 'bank_of_america_offer';\n\n  if (purchaseBankOfAmericaOffer) {\n    return {\n      service,\n      jurisdiction: domesticJurisdiction,\n      bankOfAmericaOffer: purchaseBankOfAmericaOffer,\n      coupon: 0,\n      fees: 0,\n      is_add_on: false,\n      price: 0\n    };\n  }\n\n  return null;\n\n};\n\nexport const convertOrderData = (registration) => {\n  const\n    { business: { domesticJurisdiction, type, name },\n      customer: { firstName, lastName, phoneNumber }, // TODO: add email once fixed\n      postpurchase: { purchaseBankOfAmericaOffer }\n    } = registration,\n    service = 'bank_of_america_offer';\n\n  if (purchaseBankOfAmericaOffer) {\n    return {\n      // email,\n      bankOfAmericaOffer: purchaseBankOfAmericaOffer,\n      jurisdiction: domesticJurisdiction,\n      lead_type: 'ZenBusiness Referral',\n      service,\n      boa_entity_name: name,\n      boa_entity_type: (type === 'LLCX') ? 'llc' : 'corp',\n      first_name: firstName,\n      last_name: lastName,\n      phone: phoneNumber\n    };\n  }\n\n  return null;\n\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.domainName.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { buildOrderData as buildCorpOrderData } from './CorpDataConverter';\nimport { convertSSN } from './EINDataConverter';\nimport { convertOrderItem as convertBLROrderItem, convertOrderData as convertBLROrderData } from './BusLicDataConverter';\nimport { convertOrderItem as convertRAorderItem, convertOrderData as convertRAorderData } from './RegAgentDataConverter';\nimport { convertOrderItem as convertFutureFileDateOrderItem, convertOrderData as convertFutureFileDateOrderData } from './FutureFileDateConverter';\nimport { convertOrderItem as convertBusinessKitOrderItem, convertOrderData as convertBusinessKitOrderData } from './BusinessKitConverter';\nimport { convertOrderItem as convertBOFOrderItem, convertOrderData as convertBOFOrderData } from './BeneficialOwnershipFilingConverter';\nimport { convertOrderItems as convertBOFOngoingOrderItems, convertOrderData as convertBOFOngoingOrderData } from './BeneficialOwnershipFilingOngoingConverter';\nimport { convertOrderItem as convertCorporateDocsOrderItem, convertOrderData as convertCorporateDocsOrderData } from './CorporateDocsDataConverter';\nimport { convertOrderItem as convertDBAComplianceOrderItem, convertOrderData as convertDBAComplianceOrderData } from './DBAComplianceDataConverter';\nimport { convertOrderItem as convertDBAEntityAddOnOrderItem, convertOrderData as convertDBAEntityAddOnOrderData } from './DBAEntityAddOnDataConverter';\nimport { convertOrderItem as convertExpenseTrackingAndTaxFilingOrderItem, convertOrderData as convertExpenseTrackingAndTaxFilingOrderData } from './ExpenseTrackingAndTaxFilingDataConverter';\nimport { buildOrderData as buildLLCOrderData } from './LLCDataConverter';\nimport { convertOrderItem as convertVirtualBusinessAddressOrderItem, convertOrderData as convertVirtualBusinessAddressOrderData } from './VirtualBusinesAddressDataConverter';\nimport { convertOrderItem as convertWFGInitialReportOrderItem, convertOrderData as convertWFGInitialReportOrderData } from './WFGInitialReportDataConverter';\nimport { convertOrderItem as convertVanityProductOrderItem, convertOrderData as convertVanityProductOrderData } from './VanityProductDataConverter';\nimport { convertOrderItem as convertBankOfAmericaOfferOrderItem, convertOrderData as convertBankOfAmericaOfferOrderData } from './BankOfAmericaOfferConverter';\nimport { convertOrderItem as convertTruicOrderItem, convertOrderData as convertTruicOrderData } from './TruicZBMProDataConverter';\nimport { convertOrderItem as convertZbBankingPreferredOrderItem, convertOrderData as convertZbBankingPreferredOrderData } from './ZbBankingPreferredDataConverter';\nimport { convertOrderItem as convertZbBizTaxPrepOrderItem, convertOrderData as convertZbBizTaxPrepOrderData } from './zbBizTaxPrepConverter';\nimport { convertOrderItem as convertZbTaxAdviceOrderItem, convertOrderData as convertZbTaxAdviceOrderData } from './zbTaxAdviceConverter';\nimport { convertOrderItem as convertZbTaxAdviceBizTaxPrepOrderItem, convertOrderData as convertZbTaxAdviceBizTaxPrepOrderData } from './zbTaxAdviceBizTaxPrepConverter';\n\n// API-925: the stock step writes authorized_shares/par_value to the order-task, not the main\n// order. Redux can re-hydrate these as '' from GET /orders, so createPostPurchase may build\n// existing_order_data with empty share fields. Never send them empty — that would clobber the\n// values the stock step already wrote in zenapi (its handler turns '' into None). Omitting the\n// field leaves the saved value intact.\nconst FORMATION_SERVICES = ['corp_formation', 'llc_formation'];\n\nexport const stripEmptyShareFields = (orderData) => {\n  if (!Array.isArray(orderData)) {\n    return orderData;\n  }\n  return orderData.map((entry) => {\n    if (!entry || !FORMATION_SERVICES.includes(entry.service)) {\n      return entry;\n    }\n    const cleaned = { ...entry };\n    if (cleaned.authorized_shares === '') {\n      delete cleaned.authorized_shares;\n    }\n    if (cleaned.par_value === '') {\n      delete cleaned.par_value;\n    }\n    return cleaned;\n  });\n};\n\nexport const buildOrderData = (registration) => {\n  const { postpurchase: { bofOngoing = false } } = registration;\n  const bofData = bofOngoing ? convertBOFOngoingOrderData(registration, false, true) : [ convertBOFOrderData(registration, false, true) ];\n  const orderData = _compact([\n    !registration.purchase.blr ? convertBLROrderData(registration, false) : null,\n    !registration.purchase.registeredAgentService ? convertRAorderData(registration, false) : null,\n    convertDBAComplianceOrderData(registration, false),\n    ...convertDBAEntityAddOnOrderData(registration, false),\n    convertFutureFileDateOrderData(registration, false),\n    convertBusinessKitOrderData(registration, false),\n//    ...bofData,\n    convertCorporateDocsOrderData(registration, false, true),\n    convertWFGInitialReportOrderData(registration, false),\n    convertBankOfAmericaOfferOrderData(registration, false),\n    convertVirtualBusinessAddressOrderData(registration, false, true),\n    ...convertExpenseTrackingAndTaxFilingOrderData(registration, false),\n    convertVanityProductOrderData(registration, false),\n    convertTruicOrderData(registration, false),\n    convertZbBankingPreferredOrderData(registration, false, true),\n    convertZbBizTaxPrepOrderData(registration, false),\n    convertZbTaxAdviceOrderData(registration, false),\n    convertZbTaxAdviceBizTaxPrepOrderData(registration, false)\n  ]);\n\n  if (orderData.length) {\n    return orderData;\n  }\n\n  // We only want to return BOF data if there are no other order data.\n  return bofData;\n};\n\nexport const buildOrder = (registration, filingFees, expediteFees) => {\n  const\n    { business, customer } = registration,\n    { id: accountId } = customer,\n    { type, id: businessId } = business,\n    { id: orderId } = registration.order,\n    orderData = buildOrderData(registration),\n    { postpurchase: { bofOngoing = false } } = registration,\n    bofItems = bofOngoing ? convertBOFOngoingOrderItems(registration, false, true) : [ convertBOFOrderItem(registration, false, true) ],\n    orderItems = _compact([\n      !registration.purchase.blr ? convertBLROrderItem(registration, false, filingFees) : null,\n      !registration.purchase.registeredAgentService ? convertRAorderItem(registration, false, filingFees) : null,\n      convertDBAComplianceOrderItem(registration, false, filingFees),\n      ...convertDBAEntityAddOnOrderItem(registration, false, filingFees),\n      convertFutureFileDateOrderItem(registration, false, filingFees),\n      convertBusinessKitOrderItem(registration, false, filingFees),\n//      ...bofItems,\n      convertCorporateDocsOrderItem(registration, false, true, filingFees),\n      convertWFGInitialReportOrderItem(registration, false, filingFees),\n      convertBankOfAmericaOfferOrderItem(registration, false, filingFees),\n      convertVirtualBusinessAddressOrderItem(registration, false, true, filingFees),\n      ...convertExpenseTrackingAndTaxFilingOrderItem(registration, false, filingFees),\n      convertVanityProductOrderItem(registration, false, filingFees),\n      convertTruicOrderItem(registration, false, filingFees),\n      convertZbBankingPreferredOrderItem(registration, false),\n      convertZbBizTaxPrepOrderItem(registration, false),\n      convertZbTaxAdviceOrderItem(registration, false),\n      convertZbTaxAdviceBizTaxPrepOrderItem(registration, false)\n    ]),\n    existingOrderData = stripEmptyShareFields(type === 'CORP' ? buildCorpOrderData(registration, filingFees, expediteFees) : buildLLCOrderData(registration, filingFees, expediteFees)),\n    order = _assign({\n      order_status: 'complete',\n      order_data: orderData,\n      existing_order_data: existingOrderData,\n      existing_order_uuid: orderId,\n      previous_purchase_order_uuid: orderId,\n      order_items: orderItems,\n      business_entity_uuid: businessId\n    }, convertSSN(registration), getPricingInformation(registration.order));\n\n  // We only want to return BOF items if there are no other order items.\n  if (!orderItems.length) {\n    order.order_items = bofItems;\n    order.order_status = 'incomplete';\n  }\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPackage } from '../../utils/PlanService';\nimport {\n  getSMBWebsiteMonthlyPrice,\n  getSMBWebsiteYearlyPrice\n} from '../../utils/ProductService';\n\n\nconst getIntervalData = (yearlyInterval) => {\n  const data = { service: '', price: 0, term: 12, period: yearlyInterval ? 1 : 12, coupon: '', affiliatePlanOptionUUID: '' };\n  data.service = 'static_website';\n  data.price = yearlyInterval ? getSMBWebsiteYearlyPrice() : getSMBWebsiteMonthlyPrice();\n  const pkg = getPackage(data.service, yearlyInterval ? 'annual' : 'monthly');\n  data.affiliatePlanOptionUUID = pkg?.uuid;\n  return data;\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n  if (!standalone) {\n    return null;\n  }\n\n  const\n    { smbWebsite } = registration,\n    { yearlyInterval, jurisdiction } = smbWebsite,\n    { service, price, term, period, coupon, affiliatePlanOptionUUID } = getIntervalData(yearlyInterval),\n    items = [];\n\n  items.push({ service, jurisdiction, price, coupon, fees: 0, term, period, is_add_on: false, affiliate_plan_option_uuid: affiliatePlanOptionUUID });\n\n  return items;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { smbWebsite } = registration,\n    { jurisdiction, yearlyInterval } = smbWebsite,\n    { service } = getIntervalData(yearlyInterval),\n    items = [];\n\n  items.push({ service, standalone, is_new_business: false, is_auto_included: false, jurisdiction });\n\n\n  return items;\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = convertOrderData(registration, true),\n    orderItems = convertOrderItem(registration, true),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.smbWebsite.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPackage } from '../../utils/PlanService';\nimport {\n  getSMBWebsiteEcommMonthlyPrice,\n  getSMBWebsiteEcommYearlyPrice\n} from '../../utils/ProductService';\n\n\nconst getIntervalData = (yearlyInterval) => {\n  const data = { service: '', price: 0, term: 12, period: yearlyInterval ? 1 : 12, coupon: '', affiliatePlanOptionUUID: '' };\n  data.service = 'smb_website_ecomm_bundle';\n  data.price = yearlyInterval ? getSMBWebsiteEcommYearlyPrice() : getSMBWebsiteEcommMonthlyPrice();\n  const pkg = getPackage(data.service, yearlyInterval ? 'annual' : 'monthly');\n  data.coupon = pkg.coupon ? pkg.coupon.coupon_uuid : null;\n  data.affiliatePlanOptionUUID = pkg.uuid;\n  return data;\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n  if (!standalone) {\n    return null;\n  }\n\n  const\n    { smbWebsiteEcomm } = registration,\n    { yearlyInterval, jurisdiction } = smbWebsiteEcomm,\n    { service, price, term, period, coupon, affiliatePlanOptionUUID } = getIntervalData(yearlyInterval),\n    items = [];\n\n  items.push({ service, jurisdiction, price, coupon, fees: 0, term, period, is_add_on: false, affiliate_plan_option_uuid: affiliatePlanOptionUUID });\n  items.push({ service: 'static_website', jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: yearlyInterval ? 1 : 12, is_add_on: false });\n  items.push({ service: 'smb_ecomm_addon', jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: yearlyInterval ? 1 : 12, is_add_on: false });\n\n  return items;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { smbWebsiteEcomm } = registration,\n    { jurisdiction, yearlyInterval } = smbWebsiteEcomm,\n    { service } = getIntervalData(yearlyInterval),\n    items = [];\n\n  items.push({ service, standalone, is_new_business: false, is_auto_included: false, jurisdiction });\n  items.push({ service: 'static_website', standalone, is_new_business: false, is_auto_included: false, jurisdiction });\n  items.push({ service: 'smb_ecomm_addon', standalone, is_new_business: false, is_auto_included: false, jurisdiction });\n\n\n  return items;\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = convertOrderData(registration, true),\n    orderItems = convertOrderItem(registration, true),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.smbWebsiteEcomm.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPackage } from '../../utils/PlanService';\nimport {\n  getSMBEcommAddonMonthlyPrice,\n  getSMBEcommAddonYearlyPrice\n} from '../../utils/ProductService';\n\n\nconst getIntervalData = (yearlyInterval) => {\n  const data = { service: '', price: 0, term: 12, period: yearlyInterval ? 1 : 12, coupon: '', affiliatePlanOptionUUID: '' };\n  data.service = 'smb_ecomm_addon';\n  data.price = yearlyInterval ? getSMBEcommAddonYearlyPrice() : getSMBEcommAddonMonthlyPrice();\n  const pkg = getPackage(data.service, yearlyInterval ? 'annual' : 'monthly');\n  data.affiliatePlanOptionUUID = pkg?.uuid;\n  return data;\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n  if (!standalone) {\n    return null;\n  }\n\n  const\n    { smbEcommAddon } = registration,\n    { yearlyInterval, jurisdiction } = smbEcommAddon,\n    { service, price, term, period, coupon, affiliatePlanOptionUUID } = getIntervalData(yearlyInterval),\n    items = [];\n\n  items.push({ service, jurisdiction, price, coupon, fees: 0, term, period, is_add_on: false, affiliate_plan_option_uuid: affiliatePlanOptionUUID });\n\n  return items;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { smbEcommAddon } = registration,\n    { jurisdiction, yearlyInterval } = smbEcommAddon,\n    { service } = getIntervalData(yearlyInterval),\n    items = [];\n\n  items.push({ service, standalone, is_new_business: false, is_auto_included: false, jurisdiction });\n\n  return items;\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = convertOrderData(registration, true),\n    orderItems = convertOrderItem(registration, true),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.smbEcommAddon.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n\n","import _assign from 'lodash/assign';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { getPackage } from '../../utils/PlanService';\nimport {\n  getSMBWebsiteEcommMonthlyPrice,\n  getSMBWebsiteEcommYearlyPrice,\n  getSMBWebsiteMonthlyPrice,\n  getSMBWebsiteYearlyPrice\n} from '../../utils/ProductService';\n\nconst getPackageData = (chooseEcomm, yearlyInterval) => {\n  const data = { service: '', price: 0, term: 12, period: yearlyInterval ? 1 : 12, coupon: '', affiliatePlanOptionUUID: '' };\n\n  if (chooseEcomm) {\n    data.service = 'smb_website_ecomm_bundle';\n    data.price = yearlyInterval ? getSMBWebsiteEcommYearlyPrice() : getSMBWebsiteEcommMonthlyPrice();\n  } else {\n    data.service = 'static_website';\n    data.price = yearlyInterval ? getSMBWebsiteYearlyPrice() : getSMBWebsiteMonthlyPrice();\n  }\n  const pkg = getPackage(data.service, yearlyInterval ? 'annual' : 'monthly');\n  data.affiliatePlanOptionUUID = pkg?.uuid;\n  return data;\n};\n\nexport const convertOrderItem = (registration, standalone) => {\n  if (!standalone) {\n    return null;\n  }\n\n  const\n    { smbWebsiteOrEcomm } = registration,\n    { chooseEcomm, yearlyInterval, jurisdiction } = smbWebsiteOrEcomm,\n    { service, price, term, period, coupon, affiliatePlanOptionUUID } = getPackageData(chooseEcomm, yearlyInterval),\n    items = [];\n\n  if (chooseEcomm) {\n    items.push({ service, jurisdiction, price, coupon, fees: 0, term, period, is_add_on: false, affiliate_plan_option_uuid: affiliatePlanOptionUUID });\n    items.push({ service: 'static_website', jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: yearlyInterval ? 1 : 12, is_add_on: false });\n    items.push({ service: 'smb_ecomm_addon', jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: yearlyInterval ? 1 : 12, is_add_on: false });\n  } else {\n    items.push({ service, jurisdiction, price, coupon, fees: 0, term, period, is_add_on: false, affiliate_plan_option_uuid: affiliatePlanOptionUUID });\n  }\n\n  return items;\n};\n\n/* eslint-disable camelcase */\nexport const convertOrderData = (registration, standalone) => {\n  if (!standalone) {\n    return null;\n  }\n\n  const\n    { smbWebsiteOrEcomm } = registration,\n    { chooseEcomm, yearlyInterval, jurisdiction } = smbWebsiteOrEcomm,\n    { service, price, term, period, coupon, affiliatePlanOptionUUID } = getPackageData(chooseEcomm, yearlyInterval),\n    items = [];\n\n  if (chooseEcomm) {\n    items.push({ service, jurisdiction, price, coupon, fees: 0, term, period, is_add_on: false, affiliate_plan_option_uuid: affiliatePlanOptionUUID });\n    items.push({ service: 'static_website', jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: yearlyInterval ? 1 : 12, is_add_on: false });\n    items.push({ service: 'smb_ecomm_addon', jurisdiction, price: 0, coupon: 0, fees: 0, term: 12, period: yearlyInterval ? 1 : 12, is_add_on: false });\n  } else {\n    items.push({ service, jurisdiction, price, coupon, fees: 0, term, period, is_add_on: false, affiliate_plan_option_uuid: affiliatePlanOptionUUID });\n  }\n\n  return items;\n};\n/* eslint-enable camelcase */\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = convertOrderData(registration, true),\n    orderItems = convertOrderItem(registration, true),\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.smbWebsiteOrEcomm.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\n\nimport { getVanityProductPrice } from '../../utils/ProductService';\nimport { getPricingInformation } from './BaseDataConverter';\n\nexport const convertOrderItem = (registration, standalone) => {\n  const\n    { business, vanityProduct } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { vanityKey: service, vanityUrlId } = vanityProduct,\n    price = getVanityProductPrice(vanityUrlId);\n\n  if (vanityProduct.vanityProduct) {\n    return { service, jurisdiction, price, fees: 0, is_add_on: false };\n  }\n\n  if (standalone) {\n    return { service, jurisdiction, price, fees: 0, is_add_on: false };\n  }\n\n  return null;\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const\n    { business, vanityProduct } = registration,\n    { requestedJurisdiction, type } = business,\n    { vanityKey: service } = vanityProduct;\n\n  if (standalone) {\n    return {\n      service,\n      standalone,\n      jurisdiction: requestedJurisdiction,\n      entity_type: type === 'LLCX' ? 'llc' : 'corp',\n      is_new_business: !standalone\n    };\n  }\n\n  return vanityProduct.vanityProduct ? {\n    service,\n    vanity_product: vanityProduct.vanityProduct,\n    jurisdiction: requestedJurisdiction,\n    entity_type: type === 'LLCX' ? 'llc' : 'corp',\n    standalone: false\n  } : null;\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.vanityProduct.companyId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\nimport { getZBMProMonthlyPrice, getZBMProYearlyPrice } from '../../utils/ProductService';\nimport { getPricingInformation } from './BaseDataConverter';\n\nexport const convertOrderItem = (registration, standalone) => {\n  let price = 0,\n    term = 12;\n  const\n    { business, zbmPlaid } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { accountType: service, zbmProMonthly } = zbmPlaid;\n\n  if (!standalone) {\n    return null;\n  }\n\n  if (service === 'pro') {\n    price = zbmProMonthly ? getZBMProMonthlyPrice() : getZBMProYearlyPrice();\n    term = zbmProMonthly ? 1 : 12;\n  }\n\n  return {\n    service: `zb_money_${service}`,\n    jurisdiction: jurisdiction || 'TX',\n    price,\n    fees: 0,\n    term,\n    period: 1,\n    is_add_on: false\n  };\n};\n\nexport const convertOrderData = (registration, standalone) => {\n  const { business, zbmPlaid } = registration,\n    { requestedJurisdiction } = business,\n    { accountType: service, publicTokens } = zbmPlaid;\n\n\n  return standalone ? {\n    service: `zb_money_${service}`,\n    jurisdiction: requestedJurisdiction || 'TX',\n    plaid_public_tokens: [ ...publicTokens ]\n  } : null;\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    orderStatus = 'complete',\n    orderData = [\n      convertOrderData(registration, true)\n    ],\n    orderItems = [\n      convertOrderItem(registration, true)\n    ],\n    order = _assign({\n      order_status: orderStatus,\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: registration.business.id\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import { getZbBizTaxPrepPriorYearPrice } from '../../utils/ProductService';\n\nexport const convertOrderItem = (registration) => {\n  const { business, taxServices } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { product } = taxServices;\n\n  if (product !== 'zb_biztax_prep_prior_year') {\n    return null;\n  }\n\n  const price = getZbBizTaxPrepPriorYearPrice();\n\n  return {\n    fees: 0,\n    service: 'zb_biztax_prep_prior_year',\n    jurisdiction,\n    price,\n    is_add_on: false\n  };\n};\n\n  /* eslint-disable camelcase */\nexport const convertOrderData = (registration) => {\n  const { business, taxServices } = registration,\n    { requestedJurisdiction: jurisdiction } = business,\n    { product } = taxServices;\n\n  if (product !== 'zb_biztax_prep_prior_year') {\n    return null;\n  }\n\n  return {\n    service: 'zb_biztax_prep_prior_year',\n    jurisdiction\n  };\n};\n","/* eslint-disable no-await-in-loop */\n/* eslint-disable max-statements */\nimport _assign from 'lodash/assign';\nimport _find from 'lodash/find';\nimport _forEach from 'lodash/forEach';\nimport _isEmpty from 'lodash/isEmpty';\nimport Promise from 'promise';\nimport { validate as validateUuid } from 'uuid';\nimport BaseAPIService from './BaseAPIService';\nimport { buildOrder as buildAccountingOrder } from './converters/AccountingConverter';\nimport { buildOrder as buildAmendmentOrder } from './converters/AmendmentConverter';\nimport { buildOrder as buildAnnualReportOrder } from './converters/AnnualReportConverter';\nimport { buildOrder as buildBankingOrder } from './converters/BankingConverter';\nimport { buildOrder as buildBankingResolutionOrder } from './converters/BankingResolutionDataConverter';\nimport { buildOrder as buildBusinessKitOrder } from './converters/BusinessKitConverter';\nimport { buildOrder as buildBeneficialOwnershipFilingOrder } from './converters/BeneficialOwnershipFilingConverter';\nimport { buildOrder as buildBeneficialOwnershipFilingOngoingOrder } from './converters/BeneficialOwnershipFilingOngoingConverter';\nimport { buildOrder as buildBOFModificationOrder } from './converters/BOFModificationOrder';\nimport { buildOrder as buildOperatingAgreementOrder } from './converters/OpAgreeDataConverter';\nimport { buildOrder as buildBasicEmailOrder } from './converters/BasicEmailConverter';\nimport { buildOrder as buildBusLicOrder } from './converters/BusLicDataConverter';\nimport { buildOrder as buildCoRAOrder } from './converters/CoRADataConverter';\nimport { buildOrder as buildCorpOrder } from './converters/CorpDataConverter';\nimport { buildOrder as buildCorpDocsOrder } from './converters/CorporateDocsDataConverter';\nimport { buildOrder as buildDBAEntityOrder } from './converters/DBAEntityDataConverter';\nimport { buildOrder as buildDBAEntityForExistingBusOrder } from './converters/DBAEntityForExistingBusDataConverter';\nimport { buildOrder as buildDBAEntityAddOnOrder } from './converters/DBAEntityAddOnDataConverter';\nimport { buildOrder as buildDomainV2Order } from './converters/DomainV2DataConverter';\nimport { buildOrder as buildEmailV2Order } from './converters/EmailV2DataConverter';\nimport { buildOrder as buildDomainNameOrder } from './converters/DomainNameDataConverter';\nimport { buildOrder as buildDomainNamePrivacyOrder } from './converters/DomainNamePrivacyDataConverter';\nimport { buildOrder as buildEINBankingOrder } from './converters/EINBankingDataConverter';\nimport { buildOrder as buildEINOrder } from './converters/EINDataConverter';\nimport { buildOrder as buildExpenseTrackerNTaxFilingOrder } from './converters/ExpenseTrackingAndTaxFilingDataConverter';\nimport { buildOrder as buildGoodStandingOrder } from './converters/GoodStandingConverter';\nimport { buildOrder as buildLogoKitOrder } from './converters/LogoKitDataConverter';\nimport { buildOrder as buildInitialCPAScreeningOrder } from './converters/InitialCPAScreeningConverter';\nimport { buildOrder as buildLLCOrder } from './converters/LLCDataConverter';\nimport { buildOrder as buildNameResOrder } from './converters/NameResDataConverter';\nimport { buildOrder as buildNYPubOrder } from './converters/NYPubDataConverter';\nimport { buildOrder as buildPostPurchaseOrder } from './converters/PostPurchaseDataConverter';\nimport { buildOrder as buildRAOrder } from './converters/RegAgentDataConverter';\nimport { buildOrder as buildSMBWebsiteOrder } from './converters/SMBWebsiteDataConverter';\nimport { buildOrder as buildSMBWebsiteEcommOrder } from './converters/SMBWebsiteEcommDataConverter';\nimport { buildOrder as buildSMBEcommAddonOrder } from './converters/SMBEcommAddonDataConverter';\nimport { buildOrder as buildSMBWebsiteOrEcommOrder } from './converters/SMBWebsiteOrEcommDataConverter';\nimport { buildOrder as buildStaticWebsiteOrder } from './converters/StaticWebsiteDataConverter';\nimport { buildOrder as buildStockSetupOrder } from './converters/StockSetupConverter';\nimport { buildOrder as buildWebsiteToolsBundleOrder } from './converters/WebsiteToolsBundleConverter';\nimport { buildOrder as buildWFGOrder } from './converters/WorryFreeDataConverter';\nimport { buildOrder as buildWFGInitialReportOrder } from './converters/WFGInitialReportDataConverter';\nimport { buildOrder as buildVanityProductOrder } from './converters/VanityProductConverter';\nimport { buildOrder as buildZBMProOrder } from './converters/ZBMProDataConverter';\nimport { buildOrder as buildZBMPlaidOrder } from './converters/ZBMPlaidDataConverter';\nimport { buildOrder as buildTruicZBMProOrder } from './converters/TruicZBMProDataConverter';\nimport { buildOrder as buildZbBankingPreferredOrder } from './converters/ZbBankingPreferredDataConverter';\nimport { buildOrder as buildTaxServicesOrder } from './converters/TaxServicesDataConverter';\nimport {  getOrderTracking, trackEvent } from '../utils/ThirdPartyTracking';\nimport { getEntryPointGroup } from '../utils/PartnerUtils';\nimport { getAffiliatePricingUUID, getAffiliatePricingUUIDByPrice } from '../utils/ProductService';\nimport { getIsFreeAccount } from '../utils/FreeAccountUtils';\nimport { cleanOrderData } from '../utils/OrderUtils';\nimport { setOrderDataSentDuringRegistration, validateOrderDataSentDuringRegistration } from '../utils/OrderDataTrackService';\nimport { getVisitUUID } from '../utils/VisitorCookie';\nimport { reportError } from '../utils/ReportingUtils';\nimport { allHandledPaymentErrors } from '../utils/PaymentUtils';\n\nconst\n  processCreateError = (err, action, url) => {\n    if (err && err.isAuth0) {\n      return Promise.reject(err);\n    }\n    if (err.response) {\n      const errorCode = err.response.data.errorCode || 500;\n      if (!allHandledPaymentErrors[errorCode]) {\n        // Before calling sentry, check to see if it is a handled payment error\n        BaseAPIService.notifySentry(err, url, action);\n      }\n      return Promise.reject({\n        errorCode,\n        error: err.response.data.error\n      });\n    }\n    BaseAPIService.notifySentry(err, url, action);\n    return Promise.reject({\n      errorCode: 500,\n      error: 'Client Error'\n    });\n  },\n  addPricingIds = (data) => {\n    const { order: { order_items: orderItems = [] } } = data,\n      planItem = _find(orderItems, (item) => {\n        return item.service.indexOf('_plan_') !== -1;\n      }),\n      affiliatePlanOptionUUID = planItem ? planItem.affiliate_plan_option_uuid : null;\n\n    _forEach(orderItems, (item) => {\n      if (item === planItem) {\n        return;\n      }\n      // zb_money_pro is outside the plan, so even though we are looking at something that\n      // has an affiliatePlanOptionUUID, we want to retrieve the affiliatePricingUUID for this\n      // specific item\n      const plans = [\n        'zb_money_pro',\n        'zb_tax_advice',\n        'zb_biztax_prep',\n        'zb_tax_advice_biztax_prep'\n      ];\n\n      if (plans.includes(item?.service ?? '')) {\n        const affiliatePricingUUID = getAffiliatePricingUUID(item.service, item.term, item.period);\n        if (affiliatePricingUUID) {\n          item.affiliate_pricing_uuid = affiliatePricingUUID;\n        }\n      } else if (affiliatePlanOptionUUID) {\n        item.affiliate_plan_option_uuid = affiliatePlanOptionUUID;\n      } else {\n        const affiliatePricingUUID = getAffiliatePricingUUID(item.service, item.term, item.period);\n        if (affiliatePricingUUID) {\n          item.affiliate_pricing_uuid = affiliatePricingUUID;\n        }\n      }\n    });\n\n    // BOF with coupon has same key as BOF without coupon. When purchasing BOF Ongoing\n    // we need to make sure we use the service with the coupon\n    const bofKey = 'beneficial_ownership_filing';\n    const ongoingKey = 'ongoing_bof_compliance';\n    const hasBOF = orderItems.some((item) => { return item.service === bofKey; });\n    const hasOngoingBOF = orderItems.some((item) => { return item.service === ongoingKey; });\n\n    if (hasBOF && hasOngoingBOF) {\n      const bofOrderItem = data.order.order_items.find(({ service }) => {\n        return service === bofKey;\n      });\n      bofOrderItem.affiliate_pricing_uuid = getAffiliatePricingUUID(bofKey, null, null, bofOrderItem.coupon_uuid);\n\n      // Make sure to use the $49 ongoing bof instead of the $99\n      const ongoingOrderItem = data.order.order_items.find(({ service }) => {\n        return service === ongoingKey;\n      });\n      ongoingOrderItem.affiliate_pricing_uuid = getAffiliatePricingUUIDByPrice(ongoingKey, 49);\n    } else if (!hasBOF && hasOngoingBOF) {\n      // If just buying ongoing BOF without the filing (standalone), use the $99 price\n      const ongoingOrderItem = data.order.order_items.find(({ service }) => {\n        return service === ongoingKey;\n      });\n      ongoingOrderItem.affiliate_pricing_uuid = getAffiliatePricingUUIDByPrice(ongoingKey, 99);\n    }\n\n    // BOF modification has same key as BOF mod without coupon. When using coupon,\n    // we need to make sure we use the service with the coupon\n    const bofModKey = 'bof_modification';\n    const hasBOFMod = orderItems.some((item) => { return item.service === bofModKey; });\n\n    if (hasBOFMod) {\n      const bofModOrderItem = data.order.order_items.find(({ service }) => {\n        return service === bofModKey;\n      });\n      bofModOrderItem.affiliate_pricing_uuid = getAffiliatePricingUUID(bofModKey, null, null, bofModOrderItem.coupon_uuid || null);\n    }\n\n    return data;\n  },\n  leadCreation = async (lead, service, analyzeError) => {\n    // Add the affiliateId and the bannerId if in local storage\n    const url = 'registration/lead',\n      leadData = _assign({ affiliate_id: '', banner_id: '' }, lead);\n\n    if (window.localStorage) {\n      leadData.affiliate_id = window.localStorage.getItem('affiliateId') || '';\n      leadData.banner_id = window.localStorage.getItem('bannerId') || '';\n    }\n    const entryPoint = getEntryPointGroup() || 'zb';\n    const leadTracking = {\n      flow_name: entryPoint.toLowerCase(),\n      device_type: window.zenIsMobile ? window.mobileDeviceType : 'desktop',\n      user_type: getIsFreeAccount() ? 'free_account' : 'flow'\n    };\n    const dataWithTracking = {\n      ...leadData,\n      lead_tracking: leadTracking\n    };\n\n    if (!validateUuid(dataWithTracking.visit_uuid)) {\n      dataWithTracking.visit_uuid = getVisitUUID();\n    }\n\n    let times = 2;\n    let errTrack;\n    while (times > 0) {\n      try {\n        const response = await service.post(url, dataWithTracking);\n        const { data } = response;\n        if (data.lead_created) {\n          const eventLabel = leadTracking.flow_name === 'pf' ? `${leadTracking.flow_name}-${leadTracking.device_type}` : leadTracking.flow_name;\n          trackEvent('Lead', 'complete', eventLabel);\n        }\n        return Promise.resolve(data);\n      } catch (err) {\n        errTrack = err;\n        times -= 1;\n        await new Promise((resolve) => { return setTimeout(resolve, 100); });\n      }\n    }\n    return Promise.reject(analyzeError(errTrack, url));\n  },\n  checkAccountData = async (account, service, order) => {\n    // Some order fail because the account doesn't include the lead_uuid, let's validate it.\n    if (!_isEmpty(account.lead_uuid)) {\n      return { ...account };\n    }\n    const leadFromLS = window.localStorage ? JSON.parse(window.localStorage.getItem('registration/lead') || '{}').leadUUID || '' : '';\n    if (!_isEmpty(leadFromLS)) {\n      return { ...account, lead_uuid: leadFromLS };\n    }\n    try {\n      // if we are not able to find the lead_uuid, let's try to ask the BE for one.\n      const formationOrderData = (order.order_data || [])\n        .find((od) => { return ['llc_formation', 'corp_formation'].includes(od?.service || ''); }) || {};\n\n      const { entity_name: entityName = '', jurisdiction = '', service: formationOrderService  } = formationOrderData;\n      let entityType = '';\n      if (formationOrderService) {\n        entityType = formationOrderService === 'llc_formation' ? 'LLCX' : 'CORP';\n      }\n\n      const { email, first_name, last_name, phone = '' } = account;\n      const leadInfo = {\n        email,\n        first_name,\n        last_name,\n        phone,\n        entity_name: entityName,\n        entity_type: entityType,\n        lead_source: 'web',\n        searchstate: jurisdiction,\n        selected_state: jurisdiction\n      };\n      const { lead_uuid: leadUuid = '' } = await leadCreation(leadInfo, service, (err, url) => {\n        reportError(err, {\n          responseData: JSON.stringify(err?.response?.data || {}, null, 4),\n          httpStatus: err?.response?.status || 404,\n          url\n        });\n      });\n      return { ...account, lead_uuid: leadUuid };\n    } catch (ex) {\n      //return the account as it is.\n      return { ...account };\n    }\n\n  },\n  createFormation = async (service, order, type) => {\n    try {\n      const orderTracking = getOrderTracking('flow');\n      const orderData = { ...order, order: { ...order.order, order_tracking: orderTracking } };\n      // before send the order verify it doesn't have null prices and order_data and order_items are equivalent.\n      orderData.order = cleanOrderData(orderData.order);\n      if (orderData.account) {\n        orderData.account = await checkAccountData(orderData.account, service, orderData.order);\n      }\n\n      const activeService = 'order_ssn_tokenized' in orderData.order ? BaseAPIService.secureService : BaseAPIService.service;\n      const formation = await activeService.post('registration/create', addPricingIds(orderData));\n      const {\n        data: {\n          data: responseData,\n          data: {\n            id = ''\n          }\n        }\n      } = formation;\n      // preserve in memory which services were sent this will be used by the update service.\n      setOrderDataSentDuringRegistration(orderData.order.order_data, id);\n      return Promise.resolve({\n        data: responseData\n      });\n    } catch (err) {\n      return processCreateError(err, type, 'registration/create');\n    }\n  },\n  createStockOrder = (service, order, type, isNotLoggedIn) => {\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n\n    const orderTracking = getOrderTracking('cust_dashboard');\n    const orderData = { ...order, order: { ...order.order, order_tracking: orderTracking } };\n    return service.post('stock-setup/post', orderData)\n      .then((response) => {\n        const {\n          data: {\n            data: responseData\n          }\n        } = response;\n        return Promise.resolve({\n          data: responseData\n        });\n      })\n      .catch((err) => {\n        return processCreateError(err, type, 'stock-setup/post');\n      });\n  },\n  createDomainOrderV2 = (service, order, type, isNotLoggedIn) => {\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n\n    const orderData = { ...order };\n    return service.post('domainsV2/create', orderData)\n      .then((response) => {\n        const {\n          data: {\n            data: responseData\n          }\n        } = response;\n        return Promise.resolve({\n          data: responseData\n        });\n      })\n      .catch((err) => {\n        return processCreateError(err, type, 'domainsV2/create');\n      });\n  },\n  createSkippedEmail = (service, order, type, isNotLoggedIn) => {\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n\n    const orderData = { ...order };\n    return service.post('email/create_skipped_email', orderData)\n      .then((response) => {\n        const {\n          data: {\n            data: responseData\n          }\n        } = response;\n        return Promise.resolve({\n          data: responseData\n        });\n      })\n      .catch((err) => {\n        return processCreateError(err, type, 'email/create_skipped_email');\n      });\n  },\n  createStandalone = (service, order, type) => {\n    const orderTracking = getOrderTracking('cust_dashboard');\n    const orderData = { ...order, order: { ...order.order, order_tracking: orderTracking } };\n    const activeService = 'order_ssn_tokenized' in orderData.order ? BaseAPIService.secureService : BaseAPIService.service;\n    return activeService.post('registration/create', addPricingIds(orderData)).then((response) => {\n      const {\n        data: {\n          data: responseData\n        }\n      } = response;\n      return Promise.resolve({\n        data: responseData\n      });\n    }).catch((err) => {\n      return processCreateError(err, type, 'registration/create');\n    });\n  },\n  createDashboardStandalone = (service, order, type, isNotLoggedIn) => {\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n\n    const orderTracking = getOrderTracking('cust_dashboard');\n    const orderData = { ...order, order: { ...order.order, order_tracking: orderTracking } };\n    const activeService = 'order_ssn_tokenized' in orderData.order ? BaseAPIService.secureService : BaseAPIService.service;\n    return activeService.post('registration/create', addPricingIds(orderData)).then((response) => {\n      const {\n        data: {\n          data: responseData\n        }\n      } = response;\n      return Promise.resolve({\n        data: responseData\n      });\n    }).catch((err) => {\n      return processCreateError(err, type, 'registration/create');\n    });\n  },\n  updateOrder = (service, payload, type, isNotLoggedIn, validateOrderDataSent, tokenHeader) => {\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    // apply the verification againts in-memory order_data dictionary only if it's required\n    if (validateOrderDataSent) {\n      payload.order.order_data = validateOrderDataSentDuringRegistration(payload.order.order_data, payload.order.order_uuid);\n    }\n    const activeService = 'order_ssn_tokenized' in payload.order ? BaseAPIService.secureService : BaseAPIService.service;\n    return activeService.post('registration/update', payload, tokenHeader).then((response) => {\n      const { data: responseData } = response.data;\n      return Promise.resolve({\n        data: responseData\n      });\n    }).catch((err) => {\n      return processCreateError(err, type, 'registration/update');\n    });\n  };\n\n\nexport default _assign({\n\n  async createLead(lead) {\n    return leadCreation(lead, this.service, this.analyzeError);\n  },\n\n  updateLead(leadUuid, lead) {\n    // Add the affiliateId and the bannerId if in local storage\n    const url = `registration/lead/${leadUuid}`;\n    return this.service.post(url, lead).then((response) => {\n      const { data } = response;\n      return Promise.resolve(data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  createLLC(data, filingFees, expediteFees) {\n    return createFormation(this.service, buildLLCOrder(data, filingFees, expediteFees, false), 'createLLC');\n  },\n\n  updateLLC(data, filingFees, expediteFees) {\n    return updateOrder(this.service, buildLLCOrder(data, filingFees, expediteFees, true), 'updateLLC', this.isNotLoggedIn(), true);\n  },\n\n  createCorp(data, filingFees, expediteFees) {\n    return createFormation(this.service, buildCorpOrder(data, filingFees, expediteFees, false), 'createCorp');\n  },\n\n  updateCorp(data, filingFees, expediteFees) {\n    return updateOrder(this.service, buildCorpOrder(data, filingFees, expediteFees, true), 'updateCorp', this.isNotLoggedIn(), true);\n  },\n\n  updateStockSetup(data, companyId, stockInfo, corpFormationId) {\n    return createStockOrder(this.service, buildStockSetupOrder(data, stockInfo, companyId, corpFormationId), 'updateStockSetup', this.isNotLoggedIn(), true);\n  },\n\n  createDBAEntity(data, filingFees) {\n    return createStandalone(this.service, buildDBAEntityOrder(data, filingFees, false), 'createDBAEntity');\n  },\n\n  createDBAEntityForExistingBus(data, filingFees, accountId) {\n    return createDashboardStandalone(this.service, buildDBAEntityForExistingBusOrder(data, accountId, filingFees), 'createDBAEntity', this.isNotLoggedIn());\n  },\n\n  updateDBAEntity(data, filingFees) {\n    return updateOrder(this.service, buildDBAEntityOrder(data, filingFees, true), 'updateDBAEntity', this.isNotLoggedIn());\n  },\n\n  createEIN(data) {\n    return createStandalone(this.service, buildEINOrder(data, false), 'createEIN');\n  },\n\n  updateEIN(data) {\n    return updateOrder(this.service, buildEINOrder(data, true), 'updateEIN', this.isNotLoggedIn());\n  },\n\n  createBusinessLicense(data) {\n    return createStandalone(this.service, buildBusLicOrder(data, false), 'createBusinessLicense');\n  },\n\n  updateBusinessLicense(data) {\n    return updateOrder(this.service, buildBusLicOrder(data, true), 'updateBusinessLicense', this.isNotLoggedIn());\n  },\n\n  createRA(data, filingFees) {\n    return createStandalone(this.service, buildRAOrder(data, filingFees, false), 'createRA');\n  },\n\n  updateRA(data, filingFees) {\n    return updateOrder(this.service, buildRAOrder(data, filingFees, true), 'updateRA', this.isNotLoggedIn());\n  },\n\n  createCoRA(data, filingFees) {\n    return createStandalone(this.service, buildCoRAOrder(data, filingFees, false), 'createRA');\n  },\n\n  updateCoRA(data, filingFees) {\n    return updateOrder(this.service, buildCoRAOrder(data, filingFees, true), 'updateRA', this.isNotLoggedIn());\n  },\n\n  createWFG(data, filingFees) {\n    return createStandalone(this.service, buildWFGOrder(data, filingFees, false), 'createWFG');\n  },\n\n  updateWFG(data, filingFees) {\n    return updateOrder(this.service, buildWFGOrder(data, filingFees, true), 'updateWFG', this.isNotLoggedIn());\n  },\n\n  createNameReservation(data, filingFees) {\n    return createStandalone(this.service, buildNameResOrder(data, filingFees, false), 'createNameReservation');\n  },\n\n  createNyPubLLC(data, filingFees) {\n    return createStandalone(this.service, buildNYPubOrder(data, true, filingFees), 'createNYPubLLC');\n  },\n\n  updateNyPubLLC(data, filingFees) {\n    return updateOrder(this.service, buildNYPubOrder(data, true, filingFees, true), 'updateNYPubLLC', this.isNotLoggedIn());\n  },\n\n  createAccounting(data, accountId) {\n    return createDashboardStandalone(this.service, buildAccountingOrder(data, accountId), 'createAccounting', this.isNotLoggedIn());\n  },\n\n  createAmendment(data, accountId, filingFees, fieldRules) {\n    return createDashboardStandalone(this.service, buildAmendmentOrder(data, accountId, filingFees, fieldRules), 'createAmendment', this.isNotLoggedIn());\n  },\n\n  createAnnualReport(data, accountId, filingFees, fieldRules) {\n    return createDashboardStandalone(this.service, buildAnnualReportOrder(data, accountId, filingFees, fieldRules), 'createAnnualReport', this.isNotLoggedIn());\n  },\n\n  createDBAEntityAddOn(data, accountId, filingFees) {\n    return createDashboardStandalone(this.service, buildDBAEntityAddOnOrder(data, accountId, filingFees), 'createDBAEntity', this.isNotLoggedIn());\n  },\n\n  createGoodStanding(data, accountId, filingFees) {\n    return createDashboardStandalone(this.service, buildGoodStandingOrder(data, accountId, filingFees), 'createGoodStanding', this.isNotLoggedIn());\n  },\n\n  createInitialCPAScreening(domesticJurisdiction, companyId, accountId) {\n    return createDashboardStandalone(this.service, buildInitialCPAScreeningOrder(domesticJurisdiction, companyId, accountId), 'createInitialCPAScreening', this.isNotLoggedIn());\n  },\n\n  createLogoKit(data, accountId) {\n    return createDashboardStandalone(this.service, buildLogoKitOrder(data, accountId), 'createLogoKit', this.isNotLoggedIn());\n  },\n\n  createStaticWebsite(data, accountId) {\n    return createDashboardStandalone(this.service, buildStaticWebsiteOrder(data, accountId), 'createStaticWebsite', this.isNotLoggedIn());\n  },\n\n  createExpenseTrackerNTaxFiling(data, accountId) {\n    return createDashboardStandalone(this.service, buildExpenseTrackerNTaxFilingOrder(data, accountId), 'createExpenseTrackerNTaxFiling', this.isNotLoggedIn());\n  },\n\n  createWFGInitialReport(data, accountId, filingFees) {\n    return createDashboardStandalone(this.service, buildWFGInitialReportOrder(data, accountId, filingFees), 'createWFGInitialReport', this.isNotLoggedIn());\n  },\n\n  createBankingResolution(data, accountId) {\n    return createDashboardStandalone(this.service, buildBankingResolutionOrder(data, accountId), 'createBankingResolution', this.isNotLoggedIn());\n  },\n\n  createBusinessKit(data, accountId) {\n    return createDashboardStandalone(this.service, buildBusinessKitOrder(data, accountId), 'createBusinessKit', this.isNotLoggedIn());\n  },\n\n  createBeneficialOwnershipFiling(data, accountId, filingFees, isOngoing, isMod, hasOngoing) {\n    let orderData = buildBeneficialOwnershipFilingOrder(data, accountId);\n\n    if (isMod) {\n      orderData = buildBOFModificationOrder(data, accountId, isOngoing, hasOngoing);\n    } else if (!isMod && isOngoing) {\n      orderData = buildBeneficialOwnershipFilingOngoingOrder(data, accountId);\n    }\n\n    return createDashboardStandalone(\n      this.service,\n      orderData,\n      'createBeneficialOwnershipFiling',\n      this.isNotLoggedIn()\n    );\n  },\n\n  createBeneficialOwnershipFilingModification(data, accountId, isOngoing, hasOngoing) {\n    const orderData = buildBOFModificationOrder(data, accountId, isOngoing, hasOngoing);\n\n    return createDashboardStandalone(\n      this.service,\n      orderData,\n      'createBeneficialOwnershipFilingModification',\n      this.isNotLoggedIn()\n    );\n  },\n\n  createOperatingAgreement(data, accountId) {\n    return createDashboardStandalone(this.service, buildOperatingAgreementOrder(data, accountId, false, true), 'createOperatingAgreement', this.isNotLoggedIn());\n  },\n\n  createBasicEmail(data, accountId, filingFees) {\n    return createDashboardStandalone(this.service, buildBasicEmailOrder(data, accountId, filingFees), 'createBasicEmail', this.isNotLoggedIn());\n  },\n\n  createCorpDocs(data, accountId, filingFees) {\n    return createDashboardStandalone(this.service, buildCorpDocsOrder(data, accountId, filingFees), 'createCorpDocs', this.isNotLoggedIn());\n  },\n\n  createDomainName(data, accountId, filingFees) {\n    return createDashboardStandalone(this.service, buildDomainNameOrder(data, accountId, filingFees), 'createDomainName', this.isNotLoggedIn());\n  },\n\n  createDomainNameV2(isExternal, companyID, domainName, orderUuid) {\n    return createDomainOrderV2(this.service, buildDomainV2Order(isExternal, companyID, domainName, orderUuid), 'createDomainNameV2', this.isNotLoggedIn());\n  },\n\n  createEmail(data) {\n    return createSkippedEmail(this.service, buildEmailV2Order(data.businessEntityUuid, data.orderUuid, data.emailAddresses[0]), 'createEmail', this.isNotLoggedIn());\n  },\n\n  createDomainNamePrivacy(data, accountId, filingFees) {\n    return createDashboardStandalone(this.service, buildDomainNamePrivacyOrder(data, accountId, filingFees), 'createDomainNamePrivacy', this.isNotLoggedIn());\n  },\n\n  createBanking(data, accountId) {\n    return createDashboardStandalone(this.service, buildBankingOrder(data.registration, accountId), 'createBanking', this.isNotLoggedIn());\n  },\n\n  createSMBWebsite(data, accountId) {\n    return createDashboardStandalone(this.service, buildSMBWebsiteOrder(data, accountId), 'createSMBWebsite', this.isNotLoggedIn());\n  },\n\n  createSMBWebsiteEcomm(data, accountId) {\n    return createDashboardStandalone(this.service, buildSMBWebsiteEcommOrder(data, accountId), 'createSMBWebsiteEcomm', this.isNotLoggedIn());\n  },\n\n  createSMBEcommAddon(data, accountId) {\n    return createDashboardStandalone(this.service, buildSMBEcommAddonOrder(data, accountId), 'createSMBEcommAddon', this.isNotLoggedIn());\n  },\n\n  createSMBWebsiteOrEcomm(data, accountId) {\n    return createDashboardStandalone(this.service, buildSMBWebsiteOrEcommOrder(data, accountId), 'createSMBWebsiteOrEcomm', this.isNotLoggedIn());\n  },\n\n  createVanityProduct(data, accountId) {\n    return createDashboardStandalone(this.service, buildVanityProductOrder(data, accountId), 'createVanityProduct', this.isNotLoggedIn());\n  },\n\n  createWebsiteToolsBundle(data, accountId) {\n    return createDashboardStandalone(this.service, buildWebsiteToolsBundleOrder(data, accountId), 'createWebsiteToolsBundle', this.isNotLoggedIn());\n  },\n\n  createZBMPro(data, accountId) {\n    return createDashboardStandalone(this.service, buildZBMProOrder(data, accountId), 'createZBMPro', this.isNotLoggedIn());\n  },\n\n  createZBMPlaid(data, accountId) {\n    return createDashboardStandalone(this.service, buildZBMPlaidOrder(data, accountId), 'createZBMPlaid', this.isNotLoggedIn());\n  },\n\n  createTruicZBMPro(data, accountId) {\n    return createDashboardStandalone(this.service, buildTruicZBMProOrder(data, accountId), 'createZBMPro', this.isNotLogged());\n  },\n\n  createEINBanking(data) {\n    return createStandalone(this.service, buildEINBankingOrder(data, false), 'createEINBanking');\n  },\n\n  createZbBankingPreferred(data, accountId, filingFees) {\n    return createDashboardStandalone(this.service, buildZbBankingPreferredOrder(data, accountId, filingFees), 'createZbBankingPreferred', this.isNotLoggedIn());\n  },\n\n  createTaxServices(data, accountId) {\n    return createDashboardStandalone(this.service, buildTaxServicesOrder(data, accountId), 'createTaxServices', this.isNotLoggedIn());\n  },\n  createPostPurchase(data, filingFees, expediteFees) {\n    const order = buildPostPurchaseOrder(data, filingFees, expediteFees);\n    order.order.existing_order_data = validateOrderDataSentDuringRegistration(order.order.existing_order_data, order.order.existing_order_uuid);\n    const orderTracking = getOrderTracking('post-purchase');\n    const orderData = { ...order, order: { ...order.order, order_tracking: orderTracking } };\n    const activeService = 'order_ssn_tokenized' in order.order ? BaseAPIService.secureService : BaseAPIService.service;\n    return activeService.post('postpurchase/create', addPricingIds(orderData)).then((response) => {\n      const {\n        data: {\n          data: responseData\n        }\n      } = response;\n      return Promise.resolve({\n        data: responseData\n      });\n    }).catch((err) => {\n      return processCreateError(err, 'createPostPurchase', 'postpurchase/create');\n    });\n  },\n\n  createPostPurchaseBOF(data) {\n    const\n      { postpurchase, customer } = data,\n      { id: accountId } = customer,\n      { bofOngoing } = postpurchase;\n\n    return createDashboardStandalone(\n      this.service,\n      bofOngoing\n        ? buildBeneficialOwnershipFilingOngoingOrder(data, accountId, true)\n        : buildBeneficialOwnershipFilingOrder(data, accountId, true),\n      'createBeneficialOwnershipFiling',\n      this.isNotLoggedIn()\n    );\n  },\n\n  validateBusinessName(name, jurisdiction, type) {\n    const url = 'registration/validateName';\n\n    return this.service.get(url, { params: { name, jurisdiction, type } }).then((response) => {\n      const { data } = response;\n      return Promise.resolve(data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n\n  }\n}, BaseAPIService);\n","// eslint-disable-next-line import/prefer-default-export\nexport const buildOrder = (data, stockInfo, companyID, corpFormationId) => {\n  return {\n    companyId: companyID,\n    ...stockInfo,\n    ...data.customer,\n    corpFormationId\n  };\n};\n","// business entity UUID, isExternal, domain name as arguments\n// eslint-disable-next-line import/prefer-default-export\nexport const buildOrder = (isExternal, companyID, domainName, orderUuid) => {\n  return {\n    business_entity_uuid: companyID,\n    is_external: isExternal,\n    domain_name: domainName,\n    order_uuid: orderUuid\n  };\n};\n","// business entity UUID, isExternal, domain name as arguments\n// eslint-disable-next-line import/prefer-default-export\nexport const buildOrder = (companyId, orderUuid, email) => {\n  return {\n    emailAddress: email,\n    business_entity_uuid: companyId,\n    order_uuid: orderUuid\n  };\n};\n","import _assign from 'lodash/assign';\nimport _compact from 'lodash/compact';\n\nimport { getPricingInformation } from './BaseDataConverter';\nimport { convertOrderItem as convertZbBizTaxPrepOrderItem, convertOrderData as convertZbBizTaxPrepOrderData } from './zbBizTaxPrepConverter';\nimport { convertOrderItem as convertZbTaxAdviceOrderItem, convertOrderData as convertZbTaxAdviceOrderData } from './zbTaxAdviceConverter';\nimport { convertOrderItem as convertZbTaxAdviceBizTaxPrepOrderItem, convertOrderData as convertZbTaxAdviceBizTaxPrepOrderData } from './zbTaxAdviceBizTaxPrepConverter';\nimport { convertOrderItem as convertZbBizTaxPrep2023OrderItem, convertOrderData as convertZbBizTaxPrep2023OrderData } from './zbBizTaxPrepPriorYearConverter';\n\nexport const buildOrderData = (registration) => {\n  return _compact([\n    convertZbBizTaxPrepOrderData(registration, true),\n    convertZbTaxAdviceOrderData(registration, true),\n    convertZbTaxAdviceBizTaxPrepOrderData(registration, true),\n    convertZbBizTaxPrep2023OrderData(registration, true)\n  ]);\n};\n\nexport const buildOrder = (registration, accountId) => {\n  const\n    { business } = registration,\n    //{ id: accountId } = customer,\n    { id: businessId } = business,\n    orderData = buildOrderData(registration),\n    orderItems = _compact([\n      convertZbBizTaxPrepOrderItem(registration, true),\n      convertZbTaxAdviceOrderItem(registration, true),\n      convertZbTaxAdviceBizTaxPrepOrderItem(registration, true),\n      convertZbBizTaxPrep2023OrderItem(registration, true)\n    ]),\n    order = _assign({\n      order_status: 'complete',\n      order_data: orderData,\n      order_items: orderItems,\n      business_entity_uuid: businessId\n    }, getPricingInformation(registration.order));\n\n  return {\n    account_uuid: accountId,\n    order\n  };\n};\n","import _assign from 'lodash/assign';\n\nimport { buildEntityName, convertAddress, convertContactIfIdentified, convertDirectors, convertManagers, convertMembers, convertOfficers, convertRegisteredAgent } from './BaseDataConverter';\n\nconst\n  getEntityType = (type) => {\n    if (type === 'LLCX') {\n      return 'llc';\n    }\n    if (type === 'CORP') {\n      return 'corp';\n    }\n    return '';\n  };\n\n/* eslint-disable camelcase */\nexport const convertBusinessData = (registration) => {\n  const { business, businessAddresses, contact, directors, managers, members, officers, registeredAgent } = registration,\n    { domesticJurisdiction: domestic_jurisdiction } = business,\n    { principal: principalAddress, mailing: mailingAddress, physical: physicalAddress } = businessAddresses,\n    { type, name, indicator = '', description: business_purpose } = business,\n    isLLC = type === 'LLCX',\n    isCorp = type === 'CORP',\n    data = _assign({\n      jurisdiction: domestic_jurisdiction,\n      domestic_jurisdiction,\n      business_purpose,\n      entity_name: buildEntityName(name, indicator),\n      principal_address: convertAddress(principalAddress),\n      mailing_address: convertAddress(mailingAddress),\n      address: convertAddress(physicalAddress)\n    },\n    convertContactIfIdentified(contact),\n    isLLC ? convertManagers(managers) : {},\n    isCorp ? convertDirectors(directors) : {},\n    isLLC ? convertMembers(members) : {},\n    isCorp ? convertOfficers(officers) : {},\n    convertRegisteredAgent(registeredAgent, business, { registeredAgent: false }));\n\n  return data;\n};\n\nexport const buildBusinessData = (registration, isUpdate) => {\n  const\n    { business } = registration,\n    { name, indicator = '', type, domesticJurisdiction } = business,\n    business_entity_name = buildEntityName(name, indicator);\n\n  if (isUpdate) {\n    return {\n      business_entity_name,\n      business_entity_data: convertBusinessData(registration)\n    };\n  }\n\n  return {\n    business_entity_name,\n    business_entity_type: getEntityType(type),\n    jurisdiction_code: domesticJurisdiction\n  };\n};\n\nexport const buildContactsData = (registration) => {\n  const { contact } = registration;\n  const createdDate = new Date().toISOString();\n  return [{\n    contact_types: [\n      'primary'\n    ],\n    deleted: false,\n    first_name: contact.firstName,\n    middle_name: contact.middleName,\n    last_name: contact.lastName,\n    suffix: contact.suffix,\n    company_name: contact.companyName,\n    email: contact.email,\n    phone: contact.phoneNumber,\n    address_1: contact.addressLine1,\n    address_2: contact.addressLine2,\n    city: contact.city,\n    state: contact.state,\n    zip: contact.zipCode,\n    county: contact.county,\n    country: contact.country,\n    created_datetime: createdDate,\n    updated_datetime: createdDate\n  }];\n};\n/* eslint-enable camelcase */\n","import _assign from 'lodash/assign';\nimport Promise from 'promise';\n\nimport BaseAPIService from './BaseAPIService';\nimport { buildBusinessData, buildContactsData } from './converters/BusinessEntityDataConverter';\n\nexport default _assign({\n\n  getBusinessEntity(entityId) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `business-entities/${entityId}`;\n    return this.service.get(url).then((response) => {\n      if (response.data.errorMessage.indexOf('Unable') === 0) {\n        return Promise.reject(this.analyzeError({\n          response: {\n            status: 404,\n            data: {\n              errorMessage: response.data.errorMessage,\n              status: 404\n            }\n          }\n        }), url);\n      }\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getFiles(entityId) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `business-entities/${entityId}/files`;\n    return this.service.get(url).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  create(data) {\n    const url = 'business-entities';\n\n    return this.service.post(url, buildBusinessData(data, false)).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  update(data, businessEntityId) {\n    const url = `business-entities/${businessEntityId}`;\n    return this.service.put(url, buildBusinessData(data, true)).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  updateContacts(data) {\n    const { business: { id } } = data;\n    const url = `business-entities/${id}/contacts`;\n    return this.service.put(url, buildContactsData(data)).then((response) => {\n      return Promise.resolve(response.data);\n    }).catch((err) => {\n      return Promise.reject(this.analyzeError(err, url));\n    });\n  },\n\n  getComplianceEvents(data, businessEntityId) {\n    const isNotLoggedIn = this.isNotLoggedIn();\n    if (isNotLoggedIn) {\n      return Promise.reject(isNotLoggedIn);\n    }\n    const url = `business-entities/${businessEntityId}/compliance-events`;\n    return this.service.get(url)\n      .then((response) => { return Promise.resolve(response.data); })\n      .catch((err) => { return Promise.reject(this.analyzeError(err, url)); });\n  }\n}, BaseAPIService);\n","import account from './AccountService';\nimport fintech from './FintechService';\nimport amendment from './AmendmentService';\nimport annualReport from './AnnualReportService';\nimport companies from './CompanyService';\nimport contactUs from './ContactUsService';\nimport corpStock from './CorpStockService';\nimport domainName from './DomainNameService';\nimport initialization from './InitializationService';\nimport orders from './OrderService';\nimport registration from './RegistrationService';\nimport businessEntities from './BusinessEntityService';\n\nexport const accountService = account;\nexport const fintechService = fintech;\nexport const amendmentService = amendment;\nexport const annualReportService = annualReport;\nexport const companyService = companies;\nexport const contactUsService = contactUs;\nexport const corpStockService = corpStock;\nexport const domainNameService = domainName;\nexport const initializationService = initialization;\nexport const registrationService = registration;\nexport const orderService = orders;\nexport const businessEntityService = businessEntities;\n"],"names":["standardErrorMsgs","status400","status401","status404","authInterceptor","config","getAccessToken","headers","Authorization","getLoggedInEmail","Email","getOBO","authErrorInterceptor","error","Promise","reject","createAxiosInstance","baseURL","instance","axios","create","timeout","env","api","withCredentials","interceptors","request","use","service","secureBaseURL","Error","secureService","replace","notifySentry","err","url","action","metaData","errorName","response","errorCode","data","status","responseData","JSON","stringify","httpStatus","message","toLowerCase","name","reportError","analyzeError","this","unauthorized","errorMessage","getErrorMsg","API_ERRORS","SERVER_ERROR","isNotLoggedIn","isLoggedIn","errorMsgs","_assign","status500","convertPaymentMethod","paymentMethod","cardNumber","number","expMonth","expYear","cvc","isDefault","card_token","exp_month","parseInt","exp_year","default","order","registration","business","customer","firstName","first_name","middleName","middle_name","lastName","last_name","suffix","email","phoneNumber","phone","password","hasExistingBusiness","has_existing_business","business_entity_name","type","requestedJurisdiction","jurisdiction_code","international","signup_client","business_entity_type","source","window","zenIsMobile","visit_uuid","getVisitUUID","isTRUiC","custom_flow","entry_point_group","isPF","getEntryPointGroup","buildAccountData","post","then","catch","get","exists","params","q","hasZBMoneyProSubscription","zbmSubscriptionResponse","hasZBMoneySubscription","getPaymentMethods","addPaymentMethod","addPaymentMethodV2","setPaymentMethodDefault","id","getPlaidAccounts","token","public_token","getPlaidLinkToken","plaidConfigLink","useFinancialAccountsV2","markCorpDocAsSeen","corpDocId","acceptTOS","BaseAPIService","getNAICS","filterCode","setPlaidHurdlrLink","payload","syncPlaidAccounts","getHurdlrSubscriptionTier","resetPlaidLink","plaidLinkRelink","delete","getOrderTaskMigrationServices","_ref","orderTaskUuid","migrateMoneyPlan","_ref2","couponUuid","plan","planData","term","getJurisdictionInfo","jurisdictionCode","getComplianceEvent","uuid","checkEligibility","entityType","eligible","getRegisteredAgents","businessEntityUuid","encodeURIComponent","getCompanies","indexOf","getCompany","companyId","getFiles","_forEach","files","file","business_entity_uuid","sendMessage","messageInfo","getStockFeeTotal","getVariableFeeExistence","jurisdiction","getCorpStockFee","fees","addFeeCorpCalculator","check","domainName","suggest","initialize","website","origin","location","pathname","match","sanitizedPath","sanitizeRelativeUrl","setWebsiteIfNull","initData","initializeAuth0","setRudderStackApiInfo","initAvoRudderstack","initializePlaid","initializeGoogleAds","initializeGoogleMapsAPIKey","initializeStripeAPIKey","initializeShareASale","initializeSardine","setPartners","setFlows","setPlans","setProducts","setVisitor","identify","getStateFees","stateCode","getExpediteFees","getOrders","getOperatingAgreement","orderId","updateOrderTaskStatus","subStatus","getOrderTasksByCompany","patchOrderTaskData","orderTaskData","patch","order_task_data","managerTypeMap","AllOwners","SomeOwners","SomeManagers","AllManagers","removeEmptyValues","obj","_pickBy","v","_isUndefined","_isNull","convertAddress","address","address_1","address_2","addressLine1","addressLine2","city","county","state","country","zipCode","zip","lat","lng","addressIsGoogle","address_is_google","convertUser","user","companyName","careOf","outstandingJudgments","company_name","care_of","outstanding_judgments","hasContactIdentity","contact","_isEmpty","Boolean","_trim","convertContact","is_principal","isPrincipal","convertContactIfIdentified","calculateBusinessTotal","purchase","filingFees","expediteFees","domesticJurisdiction","bankingResolution","basicEmail","domainNamePrivacy","ein","expedite","nyPublication","operatingAgreement","privacy","staticWebsite","worryFree","planLevel","exFees","getExpediteRushPrice","getExpeditePriorityPrice","getExpeditePrice","getPlanLevel","corp","prices","llc","banking_resolution","getBankingResolutionPrice","basic_email","getBasicEmailYearlyPrice","domain_name_reg","getDomainNameYearlyPrice","domain_name_privacy","getDomainNamePrivacyYearlyPrice","ein_creation","getEINPrice","ny_publication","getNYPubPrice","operating_agreement","getOpAgreementPrice","getRAYearlyPrice","getStaticWebsiteYearlyPrice","getWFGYearlyPrice","convertManagers","managerReduce","managers","managerList","managerType","managerCount","users","_reduce","retval","value","push","manager_count","manager_type","convertMembers","memberReduce","members","memberList","memberCount","manager","convertMember","member_count","convertDirectors","directorReduce","directors","directorList","directorCount","title","convertDirector","director_count","convertOfficer","convertOfficers","officerReduce","officers","officerList","convertRegisteredAgent","registeredAgent","ra","registered_agent_service","registered_agent","convertAuthorizedSignatory","authSig","skipCaseFix","authSigFix","_mapKeys","k","includes","_camelCase","authorized_signatory","getPricingInformation","buildEntityName","indicator","map","el","filter","join","decorateAccount","account","is_recurly","isRecurlyEnabled","convertOrderItem","standalone","accountingGrowAndScale","accountingQuickStart","accountingUpAndRunning","price","getAccountingGrowAndScaleMonthlyPrice","period","is_add_on","getAccountingQuickStartMonthlyPrice","getAccountingUpAndRunningMonthlyPrice","convertOrderData","getEntityType","amendment","annualReport","servicePricing","coupons","pricing","getPriceAndCouponForService","getPricingAndCouponAmount","worry_free_service","coupon","wfFees","servicePrice","serviceCouponAmount","isAutoIncludedInPlan","orderItemObj","useCredit","credits","credit_balance_uuid","creditUUID","businessAddresses","page","isAutoIncluded","description","business_purpose","isLLC","isCorp","principal","principalAddress","mailing","mailingAddress","physical","physicalAddress","completedAction","completedUrl","completedActionIndex","is_new_business","is_auto_included","domestic_jurisdiction","entity_type","entity_name","principal_address","mailing_address","estimated_formation_date","activity","domestic_entity","foreign_jurisdictions","domestic_filing_date","state_id","completed_action","ACTIONS","START","completed_url","URLS","completed_action_index","buildOrder","isUpdate","orderStatus","orderData","_compact","order_status","order_data","order_uuid","businessId","accountId","lead","leadUUID","lead_uuid","cardToken","convertAccount","order_items","account_uuid","isAnswerYes","answer","formNewARData","updatedCompanyInfo","fieldRules","updatedInfo","business_entity_data","requiresAmendment","structure","addresses","taxPreparer","tax_payer","stockInfo","stock_info","par_value","_get","authorized_shares","authorizedSignatory","paRaAuthorizedSignatoryConsent","pa_ra_authorized_signatory_consent","didDisposeOfProperty","sold_property","hadGrossSales","had_gross_sales","hadGoodStanding","had_good_standing","liabilitySingleMember","liability_single_member","privatelyHeld","privately_held","stateBenefit","state_benefit","listGrossSales","list_gross_sales","maintainLicense","requires_license","makesLessThan","makes_less_than_amount","useProperty","own_or_lease_property","totalRevenue","total_revenue","ownsAnyOtherBusiness","owns_any_other_business","companyDataOwns","company_data_owns","companyDataOwnedBy","company_data_owned_by","isOwnedByAnyOtherBusiness","is_owned_by_any_other_business","hasEnteredIntoContract","has_entered_into_any_contract","ownsRealProperty","owns_real_property","hasThereBeenATransferOfStock","has_there_been_a_transfer_of_stock","hasTransferOfStockBeenOverEqualFiftyPercent","has_transfer_of_stock_been_over_equal_fifty_percent","hasControllingInterestTransferFiledDepartmentRevenue","has_controlling_interest_transfer_filed_department_revenue","holdsInterestInAgriculturalLand","holds_interest_in_agricultural_land","isFamilyFarmLLC","is_a_family_llc","naicsCode","naics_code","_isNil","numberOfStateEmployees","number_of_state_employees","numberOfEmployees","number_of_employees","scrapMetalDealer","scrap_metal_dealer","currentlyExporting","currently_exporting","topExportMarkets","top_export_markets","beInterestedInExporting","be_interested_in_exporting","isMinorityOwnedBusiness","is_minority_owned_business","isWomanOwnedBusiness","is_woman_owned_business","ownMoreThanOneBusiness","own_more_than_one_business","howManyBusinesses","how_many_businesses","howManyCounties","how_many_counties","doesEmployIndividualsWhoServeInForces","does_employ_individuals_who_serve_in_forces","howManyIndividuals","how_many_individuals","doesOwnerServeInForces","does_owner_serve_in_forces","getSupportFromWVSBDC","get_support_from_WVSBDC","issuedSharesAndGrossAssets","issuedShares","issued_shares","grossAssets","substring","gross_assets","issuedSharesClass","issued_shares_class","issuedSharesSeries","issued_shares_series","workerCompensationInsuranceRequired","worker_compensation_insurance_required","isBusinessSelfInsured","is_business_self_insured","selfInsuranceDetails","insurance_company","insuranceCompany","policy_number","policyNumber","coverage_start_date","coverageBegan","chiefExecutiveOfficer","chief_executive_officer","businessEntityPrincipalAddress","business_entity_principal_address","numberOfDirectorsAndDirectorsAsWomen","number_of_directors","numberOfDirectors","number_of_directors_as_women","numberOfDirectorsAsWomen","year","ownedUSMilitaryVeteran","owned_us_military_veteran","ownedUSDisabledMilitaryVeteran","owned_us_disabled_military_veteran","netReceiptsLessThanOneMillion","net_receipts_less_than_one_million","upToDateStockInformation","up_to_date_stock_information","stockClass","stock_class","stockAdded","stock_added","addedStock","authorizedShares","corpTransacts","corp_transacts","corpOwnership","corp_ownership","isCombinedGroup","is_combined_group","isCombinedGroupTempLossPreserved","is_combined_group_temp_loss_preserved","isTieredPartnerRevAdjusted","is_tiered_partner_rev_adjusted","isPassiveEntityTX","is_passive_entity_tx","isREITTX","is_reit_tx","isNewVetOwnedTX","is_new_vet_owned_tx","webFileId","web_file_id","formNewAmendmentData","filingJurisdiction","filingJurisdictionType","jurisdictionType","originalCompanyInfo","hasWFG","hasARS","isPurchasingWFG","isWorryFreeChecked","jurisdictionTypeFees","getAnnualReportPrice","convertAmendmentOrderItem","getAmendmentPrice","isAmendment","stateId","complianceEventUuid","foreign_jurisdiction_objects","jurisdiction_filing_number","compliance_event_uuid","new_data","formNewData","convertAnnualReportOrderItem","changingOwnership","changing_ownership","banking","inPlan","purchaseBanking","getBankingYearlyPrice","businessType","businessYears","business_years","businessActivity","businessActivityOther","dbas","business_dba_name","owners","accountType","account_type","routingNumber","routing_number","accountNumber","account_number","accountFullName","account_full_name","fundingAmount","publicToken","_find","owner","accountOwner","naicsLabel","BANKING_ACTIVITY_NUMBER_TO_LABEL","_isNumber","EIN_TO_BANKING_ACTIVITY_MAP","BANKING_ACTIVITY_LABEL_TO_NUMBER","naics","naics_description","incorporation_state","funding_amount","terms_of_service_ack","business_entity_address","business_entity_contact","bank_account_members","_map","role","citizenship","residentCitizenAgeAck","ssn","percent","dob","access","ownershipPercentage","resident_citizen_age_acknowledge","ownership_percentage","account_owner","date_of_birth","convertOwner","convertOwners","BUSINESS_KIT","postpurchase","purchaseBusinessKit","getBusinessKitPrice","business_kit","beneficialOwnershipFiling","purchaseBOF","isBofSummer2024PromoEnabled","getIsBofSummer2024PromoEnabled","campaignName","getCampaignName","isBofSummer2024Pricing","getBeneficialOwnershipFilingPrice","bofSummer2024OneTimeCoupon","Object","values","find","item","external_coupon_id","bofSummer2024PromoOneTimeCouponAmount","amount","bofSummer2024PromoOneTimeCouponUuid","coupon_uuid","busType","beneficial_ownership_filing","forPostPurchase","orderItems","services","convertOrderItems","oneTimeFee","ongoingPrice","getOngoingBofCompliancePrice","coupon49Off","getOngoingBofComplianceCoupon","coupon49OffAmount","coupon49OffUuid","oneTimeCoupon","isOngoing","hasOngoing","purchasebeneficialOwnershipFiling","bofModPrice","getBofModificationPrice","getOngoingBofComplianceNoCouponPrice","foundCoupon","couponAmount","userOrderOngoingBofSubscription","fromReg","arguments","length","undefined","is_generic","buildFromFormation","isGeneric","businessName","initManagers","initMembers","llcBusinessAddress","llcMailingAddress","mailingAddressType","mailingAddressLine1","mailingAddressLine2","mailingCity","mailingCounty","mailingState","mailingZipCode","businessEmail","preemptiveRights","preemptive_rights","rightOfFirstRefusal","right_of_first_refusal","financialReportFrequency","financial_report_frequency","internalFinancialAudit","internal_financial_audit","taxAdvances","tax_advances","dayToDayMajority","day_to_day_majority","meetingOfMembersMajority","meeting_of_members_majority","passActionWithoutMeetingMajority","pass_action_without_meeting_majority","amendmentMajority","amendment_majority","terminateCompanyMajority","terminate_company_majority","amendOAorFormation","amend_oa_or_formation","issueAdditionalMembership","issue_additional_membership","appointRemoveAuditors","appoint_remove_auditors","amendRelatedPartyAgreement","amend_related_party_agreement","enterEquityTransactions","enter_equity_transactions","enterAssetTransactions","enter_asset_transactions","establishSubsidiary","establish_subsidiary","offeringAndSecurities","offering_and_securities","fundamentalBusinessTransaction","fundamental_business_transaction","liquidateOrTerminate","liquidate_or_terminate","cancelLiquidateOrTerminate","cancel_liquidate_or_terminate","reinstateAfterTermination","reinstate_after_termination","changeManager","change_manager","membersRemoveManager","members_remove_manager","fillManagerVacancy","fill_manager_vacancy","capitalContributionApproval","capital_contribution_approval","capitalContributionAmount","capital_contribution_amount","makeInvestmentApproval","make_investment_approval","makeInvestmentAmount","make_investment_amount","incurIndebtednessApproval","incur_indebtedness_approval","incurIndebtednessOneTimeAmount","incur_indebtedness_onetime_amount","incurIndebtednessTotalAmount","incur_indebtedness_total_amount","settleLawsuitApproval","settle_lawsuit_approval","settleLawsuitAmount","settle_lawsuit_amount","convertedLLCBusinessAddress","convertedLLCMailingAddress","partnership_rep","partnershipRep","manager_notice","managerNotice","llc_business_address","llc_mailing_address","member","membershipInterest","maritalStatus","spouseName","primaryMember","officialNotice","emailDisabled","phoneNumberDisabled","membership_interest","marital_status","spouse_name","primary_member","official_notice","email_disabled","phone_disabled","purchasedEmails","emailUserName","primary","emailAddresses","emailAddress","lastIndexOf","emailDomain","websiteToolsStandalone","websiteToolsBundle","emailInPlan","_emailAddress","affiliate_plan_option_uuid","emailSkip","email_address","domain_name","skip","convertBusinessData","blr","businessOutOfHome","businessIndustryId","businessIndustryLabel","hasEmployees","employeesCount","hasDBAs","existingCompany","businessData","out_of_home","industry_id","industry_label","has_trade_names","has_employees","employees_count","existing_company","purchaseBLR","getBusinessLicensePrice","trade_names","has_trade_name","baseIndex","baseUrl","START_BLR_DATA","START_BUS_DATA","baseAction","business_data","ORDER_STATUSES","incomplete","registrationOrder","fulfillment_required","complete","willMarkOrderCompleted","cora","requestedJurisdictions","pendingStates","upsellDomJur","typeKey","reqJurs","collect","reqJur","unshift","datas","isFormed","createOrderItemsForJurisdiction","couponItem","jurKey","change_of_registered_agent","items","index","createOrderDatasForJurisdiction","includeBusinessData","raData","is_truic_ra","is_cora","businessIndustry","sopContact","jurisdictionOrder","existingJurisdictions","filingDates","stateIds","statePINs","hasElectiveCEO","electiveCEO","domesticEntity","hasFormation","needsDomesticJurisdictionData","needsPrincipals","needsContact","needsCoraContacts","needsBusinessData","needsBusinessIndustry","needsAddresses","needsPrincipalAddress","businessOrderType","domesticJurisdictionStatePIN","domesticJurisdictionElectiveCEO","isIncomplete","retVal","fos","fo","foFilingDate","foFilingNumber","foStatePIN","foElectiveCEO","jurisdiction_filing_date","extra_state_info","state_pin","elective_ceo","djFilingDate","djStateId","domestic_jurisdiction_filing_date","domestic_jurisdiction_filing_number","domestic_jurisdiction_state_info","jurisdiction_state_pin","jurisdiction_elective_ceo","business_industry","contactSource","sop_contact","needs_addresses","needs_business_data","needs_business_industry","needs_contact","needs_cora_contacts","needs_domestic_jurisdiction_data","needs_principal_address","needs_principals","has_elective_ceo","jurisdiction_order","existing_jurisdictions","business_order_type","pending_states","is_primary","addBusinessData","level","zenBusinessRegisteredAgent","anonymity","getAnonymityYearlyPrice","isPostPurchase","purchaseCD","corporateDocs","einBusinessDocsBundle","getCorporateDocsPrice","corporate_docs","cpaConsult","cpa_consult","getCPAConsultPrice","purchasedDomains","_domainName","domainNames","alternates","verified","domain_verified","convertTaxData","llcMarried","llcSingleMember","taxedAsSCorp","taxInfo","members_are_married","taxed_as_single_member_llc","taxed_as_s_corp","gambling","atf","employeesW2","w2WagesPaidDate","w2AgriculturalEmployeeCount","w2OtherEmployeeCount","w2WagesLessThan1000","corpCareOf","corpClosingMonth","startDate","motorVehicle","motorVehicleWeight","businessForm720","businessActivity1","businessActivity2","businessActivity3","businessActivity4","businessActivity5","businessActivitySpecify","level_1","level_2","level_3","level_4","level_5","specify","startDatePieces","split","startDateConverted","start_date","alcohol_tobacco_firearms","employees_with_w2","w2_wages_paid_date","w2_agricultural_employees_count","w2_other_employees_count","w2_wages_lt_1000","highway_vehicle","highway_vehicle_over_55000","files_form_720","corp_care_of","corp_closing_month","convertResponsibleParty","responsibleParty","hasSSN","party","legal_name","legalName","ein_number","previous_ein","previousEin","alternate_last_names","alternateLastNames","collect_data_from_user","collectDataFromUser","has_ssn","convertSSN","order_ssn","order_ssn_tokenized","reason","convertedMailing","mailingField","tax_info","responsible_party","START_EIN","hardcodedPrice","baseService","convertOrderItemStandalone","convertOrderDataStandalone","initialCPAScreening","initial_cpa_screening","getInitialCPAScreeningPrice","getPubFee","nypub","nyPubCountyCode","useAlbany","pubState","getGAPubPrice","getPAPubPrice","getNYPubFees","isStandalone","nyPubCounty","countyName","dat","ny_publication_county","purchaseRA","registeredAgentService","privacyFees","card","recurring","planReduce","isSCorp","static_website","taxPreparation","tax_preparation","getTaxPreparationYearlyPrice","annual_report_service","isAccountant1800Enabled","accountant1800","getAccountant1800Price","remagine","industry","acc_entity_type","package_purchased","getRemaginePlanName","toUpperCase","_capitalize","acc_entity_name","acc_first_name","acc_last_name","getWebsiteToolsBundleYearlyPrice","getEINBusinessDocsBundlePrice","zbmPro","purchaseZBMPro","pfPurchaseZBMPro","zbmProMonthly","pfpppm","zbpm","getZBMProMonthlyPrice","getZBMProYearlyPrice","pppm","returnJurisdiction","registrationData","zbBankingPreferred","purchaseZbBankingPreferredOffer","getZbBankingPreferredMonthlyPrice","service_prices","zb_banking_preferred","taxServices","product","zbTaxAdvice","zbTaxAdviceBizTaxPrep","purchaseTaxAdvice","taxAdviceMonthly","purchaseTaxAdviceBizTaxPrep","taxAdviceBizTaxPrepMonthly","isPrePurchase","isBundled","isMonthly","getZbTaxAdviceMonthlyPrice","getZbTaxAdviceYearlyPrice","zbBizTaxPrep","isStandaloneBundle","getZbBizTaxPrepMonthlyPrice","getZbBizTaxPrepYearlyPrice","getZbTaxAdviceBizTaxPrepMonthlyPrice","getZbTaxAdviceBizTaxPrepYearlyPrice","einBizDocsOaBundle","getEINBizDocsOaBundlePrice","bizDocsBlrBundle","getBizDocsBlrBundlePrice","typeFees","corp_formation","isInternational","valuePerShare","businessActiivty","foreignJurisdictions","hasMoreThanOneShare","goals","homeBased","launchStatus","priorExperience","estimatedFormationDate","authSharesNum","valuePerShareNum","entityName","has_more_than_one_share","home_based","launch_status","prior_experience","plan_partner","plan_name","purchase_blr","blr_data","convertBLRBusinessData","purchase_ra","purchaseDBAEntity","purchase_dba_entity","dba_entities","dbaEntities","purchaseDBACompliance","purchase_dba_compliance","purchase_cd","purchaseBankOfAmericaOffer","purchase_bank_of_america_offer","purchase_zb_banking_preferred_offer","purchaseFFD","purchase_ffd","filing_action","filingAction","future_filing_date","futureFilingDate","purchaseWFGIR","purchase_wfgir","purchaseVBA","purchase_vba","purchaseVanityProduct","purchase_vanity_product","purchase_tax_advice","tax_advice_monthly","purchase_tax_advice_biztax_prep","tax_advice_biztax_prep_monthly","purchase_zbmpro","zbmpro_monthly","purchase_business_kit","purchase_bof","bof_ongoing","bofOngoing","purchaseExpenseTrackerAndTaxFiling","expense_tracking_with_tax_filing","START_COMP","buildOrderData","convertRegAgentOrderData","convertAnonymityOrderData","convertBankingResolutionOrderData","convertBasicEmailOrderData","convertCorpDocsOrderData","convertDomainNameOrderData","convertDomainNamePrivacyOrderData","convertEINOrderData","convertNYPubOrderData","convertExpediteOrderData","convertExpediteUpsellOrderData","convertStaticWebsiteOrderData","convertWorryFreeOrderData","convertOpAgreementOrderData","convertTaxPreparationOrderData","convertCPAConsultOrderData","convertInitialCPAScreeningOrderData","convertSCorpDesignationOrderData","convertPlanLevelOrderData","convertAnnualReportServiceOrderData","convertBankingOrderData","convertAccountant1800OrderData","convertEINDocsBundleOrderData","convertWebsiteToolsBundleOrderData","convertZBMProOrderData","convertTruicZBMProOrderData","convertZbBankingPreferredOrderData","convertZbTaxAdviceOrderData","convertZbBizPrepOrderData","convertZbTaxAdviceBizTaxPrepOrderData","convertEinBizDocsOaBundleOrderData","convertBizDocsBlrBundleOrderData","useBNR","businessStatus","cardOrToken","convertRegAgentOrderItem","convertAnonymityOrderItem","convertBankingResolutionOrderItem","convertBasicEmailOrderItem","convertCorpDocsOrderItem","convertDomainNameOrderItem","convertDomainNamePrivacyOrderItem","convertEINOrderItem","convertExpediteOrderItem","convertExpediteUpsellOrderItem","convertNYPubOrderItem","convertStaticWebsiteOrderItem","convertWorryFreeOrderItem","convertOpAgreementOrderItem","convertTaxPreparationOrderItem","convertCPAConsultOrderItem","convertInitialCPAScreeningOrderItem","convertSCorpDesignationOrderItem","convertPlanLevelOrderItem","convertAnnualReportServiceOrderItem","convertBankingOrderItem","convertAccountant1800OrderItem","convertEINDocsBundleOrderItem","convertWebsiteToolsBundleOrderItem","convertZBMProOrderItem","convertTruicZBMProOrderItem","convertZbBankingPreferredOrderItem","convertZbTaxAdviceOrderItem","convertZbBizPrepOrderItem","convertZbTaxAdviceBizTaxPrepOrderItem","convertEinBizDocsOaBundleOrderItem","convertBizDocsBlrBundleOrderItem","dbaEntity","getDBAEntityFees","getDBAEntityPrice","parentType","parent_type","dbaName","dba_name","businessDescription","ownerCount","owner_count","stateFilingDate","stateFilingNumber","hasEIN","has_ein","spFirstName","spMiddleName","spLastName","spSuffix","isSoleProp","sole_proprietor","simulatedCompanyId","isDBAEntityEnabled","fromDBAStandalone","inProgress","dbaCompliance","ppRequestedJurisdiction","ppPurchaseDBACompliance","dba_compliance","isDBAComplianceEnabled","getDBAComplianceYearlyPrice","saEntities","busReqJurisdiction","ppEntities","entity","hasITIN","getOrder","expenseTrackerNTaxFiling","registerExpenseTrackerNTaxFiling","getExpenseTrackerAndTaxFilingPlanYearlyPrice","goodStanding","standard_good_standing","getGoodStandingPrice","formation_jurisdiction","logoKit","logo_kit","getLogoKitPrice","isDAO","daoMemberManaged","daoRestriction","daoSmartContractLink","dao_smart_contract_managed","dao_notice_approved","dao_smart_contract_link","formationCounty","llc_formation","formation_county","convertOpAgreeOrderData","convertDAODesignationOrderData","convertBLROrderData","convertOpAgreeOrderItem","convertDAODesignationOrderItem","nameReservation","getNameResPrice","nameReservationFees","entity_name_reservation","getFutureFileDatePrice","SERVICE","getVirtualBusinessAddressPrice","annualReportService","stateFees","wfg_initial_report","domestic","getWFGInitialReportPrice","vanityProduct","getPostPurchaseVanityProduct","priceWithoutCoupon","priceIsMonthly","productKey","priceIsYearly","vanity_product","bankOfAmericaOffer","lead_type","boa_entity_name","boa_entity_type","FORMATION_SERVICES","getIntervalData","yearlyInterval","affiliatePlanOptionUUID","getSMBWebsiteYearlyPrice","getSMBWebsiteMonthlyPrice","pkg","getPackage","getSMBWebsiteEcommYearlyPrice","getSMBWebsiteEcommMonthlyPrice","getSMBEcommAddonYearlyPrice","getSMBEcommAddonMonthlyPrice","getPackageData","chooseEcomm","vanityKey","vanityUrlId","getVanityProductPrice","zbmPlaid","publicTokens","plaid_public_tokens","getZbBizTaxPrepPriorYearPrice","processCreateError","isAuth0","allHandledPaymentErrors","addPricingIds","planItem","affiliatePricingUUID","getAffiliatePricingUUID","affiliate_pricing_uuid","bofKey","ongoingKey","hasBOF","some","hasOngoingBOF","bofOrderItem","ongoingOrderItem","getAffiliatePricingUUIDByPrice","_ref3","bofModKey","bofModOrderItem","_ref4","leadCreation","async","leadData","affiliate_id","banner_id","localStorage","getItem","leadTracking","flow_name","device_type","mobileDeviceType","user_type","getIsFreeAccount","dataWithTracking","lead_tracking","validateUuid","errTrack","times","lead_created","eventLabel","trackEvent","resolve","setTimeout","createFormation","orderTracking","getOrderTracking","order_tracking","cleanOrderData","leadFromLS","parse","formationOrderData","od","formationOrderService","leadInfo","lead_source","searchstate","selected_state","leadUuid","ex","checkAccountData","activeService","formation","setOrderDataSentDuringRegistration","createStandalone","createDashboardStandalone","updateOrder","validateOrderDataSent","tokenHeader","validateOrderDataSentDuringRegistration","createLead","updateLead","createLLC","buildLLCOrder","updateLLC","createCorp","buildCorpOrder","updateCorp","updateStockSetup","corpFormationId","createStockOrder","companyID","buildStockSetupOrder","createDBAEntity","buildDBAEntityOrder","createDBAEntityForExistingBus","buildDBAEntityForExistingBusOrder","updateDBAEntity","createEIN","buildEINOrder","updateEIN","createBusinessLicense","buildBusLicOrder","updateBusinessLicense","createRA","buildRAOrder","updateRA","createCoRA","buildCoRAOrder","updateCoRA","createWFG","buildWFGOrder","updateWFG","createNameReservation","buildNameResOrder","createNyPubLLC","buildNYPubOrder","updateNyPubLLC","createAccounting","buildAccountingOrder","createAmendment","didSelectOnlyAnnualReport","convertWFGOrderData","convertWFGOrderItem","buildAmendmentOrder","createAnnualReport","didAddAmendment","buildAnnualReportOrder","createDBAEntityAddOn","convertDBAComplianceOrderData","convertDBAComplianceOrderItem","buildDBAEntityAddOnOrder","createGoodStanding","buildGoodStandingOrder","createInitialCPAScreening","buildInitialCPAScreeningOrder","createLogoKit","buildLogoKitOrder","createStaticWebsite","buildStaticWebsiteOrder","createExpenseTrackerNTaxFiling","buildExpenseTrackerNTaxFilingOrder","createWFGInitialReport","wfgir","buildWFGInitialReportOrder","createBankingResolution","buildBankingResolutionOrder","createBusinessKit","businessKit","buildBusinessKitOrder","createBeneficialOwnershipFiling","isMod","buildBeneficialOwnershipFilingOrder","buildBOFModificationOrder","buildBeneficialOwnershipFilingOngoingOrder","createBeneficialOwnershipFilingModification","createOperatingAgreement","buildOperatingAgreementOrder","createBasicEmail","buildBasicEmailOrder","createCorpDocs","corpDocs","buildCorpDocsOrder","createDomainName","buildDomainNameOrder","createDomainNameV2","isExternal","orderUuid","createDomainOrderV2","is_external","buildDomainV2Order","createEmail","createSkippedEmail","createDomainNamePrivacy","buildDomainNamePrivacyOrder","createBanking","buildBankingOrder","createSMBWebsite","smbWebsite","buildSMBWebsiteOrder","createSMBWebsiteEcomm","smbWebsiteEcomm","buildSMBWebsiteEcommOrder","createSMBEcommAddon","smbEcommAddon","buildSMBEcommAddonOrder","createSMBWebsiteOrEcomm","smbWebsiteOrEcomm","buildSMBWebsiteOrEcommOrder","createVanityProduct","buildVanityProductOrder","createWebsiteToolsBundle","buildWebsiteToolsBundleOrder","createZBMPro","buildZBMProOrder","createZBMPlaid","buildZBMPlaidOrder","createTruicZBMPro","buildTruicZBMProOrder","isNotLogged","createEINBanking","buildEINBankingOrder","createZbBankingPreferred","buildZbBankingPreferredOrder","createTaxServices","convertZbBizTaxPrepOrderData","convertZbBizTaxPrep2023OrderData","convertZbBizTaxPrepOrderItem","convertZbBizTaxPrep2023OrderItem","buildTaxServicesOrder","createPostPurchase","bofData","convertBOFOngoingOrderData","convertBOFOrderData","convertRAorderData","convertDBAEntityAddOnOrderData","convertFutureFileDateOrderData","convertBusinessKitOrderData","convertCorporateDocsOrderData","convertWFGInitialReportOrderData","convertBankOfAmericaOfferOrderData","convertVirtualBusinessAddressOrderData","convertExpenseTrackingAndTaxFilingOrderData","convertVanityProductOrderData","convertTruicOrderData","bofItems","convertBOFOngoingOrderItems","convertBOFOrderItem","convertBLROrderItem","convertRAorderItem","convertDBAEntityAddOnOrderItem","convertFutureFileDateOrderItem","convertBusinessKitOrderItem","convertCorporateDocsOrderItem","convertWFGInitialReportOrderItem","convertBankOfAmericaOfferOrderItem","convertVirtualBusinessAddressOrderItem","convertExpenseTrackingAndTaxFilingOrderItem","convertVanityProductOrderItem","convertTruicOrderItem","existingOrderData","Array","isArray","entry","cleaned","stripEmptyShareFields","buildCorpOrderData","buildLLCOrderData","existing_order_data","existing_order_uuid","previous_purchase_order_uuid","buildPostPurchaseOrder","createPostPurchaseBOF","validateBusinessName","buildBusinessData","getBusinessEntity","entityId","update","businessEntityId","put","updateContacts","createdDate","Date","toISOString","contact_types","deleted","created_datetime","updated_datetime","buildContactsData","getComplianceEvents","accountService","fintechService","fintech","amendmentService","companyService","companies","contactUsService","contactUs","corpStockService","corpStock","domainNameService","initializationService","initialization","registrationService","orderService","orders","businessEntityService","businessEntities"],"sourceRoot":""}