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