{"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\n// Builds the plan-gated price:0 order item shared across converters.\n// activePlan must be derived from activePlanLevel (cancellation-filtered) — never planLevel directly —\n// so a cancelled plan cannot authorise a $0 price. affiliate_plan_option_uuid is included only when\n// the plan has a uuid, giving zenapi a reference to validate the $0 price against plan pricing.\n// Pass service-specific fields (coupon, fees, term, period) via extras.\nexport const buildPlanGatedZeroItem = (service, jurisdiction, activePlan, extras = {}) => {\n  return {\n    service,\n    jurisdiction,\n    price: 0,\n    is_add_on: false,\n    ...(activePlan && activePlan.uuid ? { affiliate_plan_option_uuid: activePlan.uuid } : {}),\n    ...extras\n  };\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 {\n  buildEntityName, buildPlanGatedZeroItem, convertAddress, convertContactIfIdentified, convertDirectors,\n  convertManagers, convertMembers, convertOfficers, convertRegisteredAgent, getPricingInformation, decorateAccount\n} 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\n// The compliance-report flows pass the jurisdiction being filed in, because\n// business.requestedJurisdiction is pinned to the entity's domestic jurisdiction and is never\n// advanced when a foreign one is chosen. A jurisdiction is always a short code, so anything else is\n// a stray positional argument rather than an override - which is exactly how the formation flows\n// once fed their unused `filingFees` into this slot. Ignore it and fall back, rather than writing a\n// non-jurisdiction into an order payload.\nconst resolveJurisdiction = (jurisdictionOverride, ...fallbacks) => {\n  const override = typeof jurisdictionOverride === 'string' && jurisdictionOverride ? jurisdictionOverride : null;\n\n  return override || fallbacks.find(Boolean) || undefined;\n};\n\nconst getPricingAndCouponAmount = (registration, jurisdictionOverride) => {\n  const\n    { business, purchase, coupons } = registration,\n    { activePlanLevel } = purchase,\n    { requestedJurisdiction } = business,\n    jurisdiction = resolveJurisdiction(jurisdictionOverride, requestedJurisdiction),\n    service = 'worry_free_service',\n    activePlan = activePlanLevel ? getPlanLevel(activePlanLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, activePlan, coupons);\n  return { pricing, plan: activePlan };\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, jurisdictionOverride) => {\n  const\n    { amendment, annualReport, business, purchase } = registration,\n    { worryFree, planLevel, activePlanLevel } = purchase,\n    { domesticJurisdiction, requestedJurisdiction } = business,\n    jurisdiction = resolveJurisdiction(jurisdictionOverride, requestedJurisdiction, domesticJurisdiction),\n    service = 'worry_free_service',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    activePlan = activePlanLevel ? getPlanLevel(activePlanLevel, jurisdiction) : null,\n    servicePricing = getPricingAndCouponAmount(registration, jurisdictionOverride);\n\n  if (activePlan && activePlan.worry_free_service) {\n    return buildPlanGatedZeroItem(service, jurisdiction, activePlan, { coupon: 0, fees: 0, term: 12, period: 1 });\n  }\n\n  const\n    wfFees = (jurisdiction ? filingFees[jurisdiction].worry_free_service : null) || { fees: 0 },\n    price = activePlan ? servicePricing.pricing.servicePrice : getWFGYearlyPrice(),\n    coupon = activePlan ? 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 && !!activePlan\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, jurisdictionOverride) => {\n  const { business, businessAddresses, contact, directors, managers, members, officers, order, page, purchase, registeredAgent } = registration,\n    { planLevel } = purchase,\n    { requestedJurisdiction } = business,\n    jurisdiction = resolveJurisdiction(jurisdictionOverride, requestedJurisdiction),\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      hasPurchasedWFC,\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 || hasPurchasedWFC) ? 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    // Worry-Free must attach to the jurisdiction being filed in, not the entity's domestic one.\n    // business.requestedJurisdiction is pinned to the domestic jurisdiction on SET_COMPANY and is\n    // never advanced when a foreign jurisdiction is chosen, so the WFG converters have to be told.\n    { filingJurisdiction } = registration.annualReport,\n    orderData = _compact([\n      convertOrderData(registration, true, false, fieldRules),\n      registration.annualReport.isPurchasingWFG ? convertWFGOrderData(registration, false, filingJurisdiction) : 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, filingJurisdiction) : 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    // Same as the annual report flow: business.requestedJurisdiction is not advanced for a foreign\n    // filing, so the WFG converters are given the jurisdiction actually being filed in.\n    { filingJurisdiction } = registration.amendment,\n    orderData = _compact([\n      convertOrderData(registration, true, !registration.amendment.didSelectOnlyAnnualReport || registration.amendment.didSelectOnlyAnnualReport === 'no', fieldRules),\n      registration.amendment.isPurchasingWFG ? convertWFGOrderData(registration, false, filingJurisdiction) : 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, filingJurisdiction) : 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 { buildPlanGatedZeroItem, 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, activePlanLevel, activeWebsiteToolsBundle } = purchase,\n    { requestedJurisdiction: jurisdiction } = business,\n    { emailInPlan } = domainName,\n    service = 'basic_email',\n    plan = planLevel ? getPlanLevel(planLevel, jurisdiction) : null,\n    activePlan = activePlanLevel ? getPlanLevel(activePlanLevel, jurisdiction) : null,\n    pricing = getPriceAndCouponForService(service, activePlan, coupons);\n\n  if ((activePlan && activePlan.basic_email) || emailInPlan || activeWebsiteToolsBundle || websiteToolsStandalone) {\n    // eslint-disable-next-line no-unused-vars\n    return _map(purchasedEmails(registration), (_emailAddress) => {\n      return buildPlanGatedZeroItem(service, jurisdiction, activePlan, { coupon: 0, fees: 0, term: 12, period: 1 });\n    });\n  }\n\n  const\n    price = activePlan ? pricing.servicePrice : getBasicEmailYearlyPrice(),\n    coupon = activePlan ? 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 && !!activePlan\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 _get from 'lodash/get';\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 ? _get(filingFees, [requestedJurisdiction, 'change_of_registered_agent', typeKey, jurKey, 'fees'], 0) : 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    return _assign(\n      { account_uuid: accountId, order },\n      businessId ? { business_entity_uuid: businessId } : {}\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 { buildPlanGatedZeroItem } from './BaseDataConverter';\nimport { 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    { activePlanLevel } = purchase,\n    activePlan = activePlanLevel ? getPlanLevel(activePlanLevel, jurisdiction) : null;\n\n  if (activePlan && activePlan.annual_report_service) {\n    return buildPlanGatedZeroItem(service, jurisdiction, activePlan, { coupon: 0, fees: 0, term: 12, period: 1 });\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      if (postpurchase.purchaseFFD && postpurchase.futureFilingDate) {\n        data.future_filing_date = postpurchase.futureFilingDate;\n      }\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),\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      if (postpurchase.purchaseFFD && postpurchase.futureFilingDate) {\n        data.future_filing_date = postpurchase.futureFilingDate;\n      }\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),\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';\nimport _get from 'lodash/get';\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    fees = _get(filingFees, [jurisdiction, 'wfg_initial_report', type === 'CORP' ? 'corp' : 'llc', '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), 'createCoRA');\n  },\n\n  updateCoRA(data, filingFees) {\n    return updateOrder(this.service, buildCoRAOrder(data, filingFees, true), 'updateCoRA', 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), 'createTruicZBMPro', this.isNotLoggedIn());\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","buildPlanGatedZeroItem","activePlan","extras","arguments","length","undefined","price","is_add_on","affiliate_plan_option_uuid","buildEntityName","indicator","map","el","filter","join","decorateAccount","account","is_recurly","isRecurlyEnabled","convertOrderItem","standalone","accountingGrowAndScale","accountingQuickStart","accountingUpAndRunning","getAccountingGrowAndScaleMonthlyPrice","period","getAccountingQuickStartMonthlyPrice","getAccountingUpAndRunningMonthlyPrice","convertOrderData","resolveJurisdiction","jurisdictionOverride","override","_len","fallbacks","Array","_key","find","getEntityType","amendment","annualReport","activePlanLevel","servicePricing","getPricingAndCouponAmount","coupons","pricing","getPriceAndCouponForService","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","hasPurchasedWFC","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","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","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","activeWebsiteToolsBundle","emailInPlan","_emailAddress","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","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","websiteToolsBundle","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","futureFilingDate","future_filing_date","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","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","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","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":""}