{"version":3,"file":"static/939.ea28991b8c3c03ba7f5f.js","mappings":"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","sources":["webpack://react-buy-vs-build-calculator/./src/config/index.ts","webpack://react-buy-vs-build-calculator/./src/config/urls/api.ts","webpack://react-buy-vs-build-calculator/./src/api/interceptors.ts","webpack://react-buy-vs-build-calculator/./src/api/setup.ts","webpack://react-buy-vs-build-calculator/./src/utils/calculator/calculator.ts","webpack://react-buy-vs-build-calculator/./src/utils/countryOptions.ts","webpack://react-buy-vs-build-calculator/./src/utils/hubspot.ts","webpack://react-buy-vs-build-calculator/./src/components/Button/Button.tsx","webpack://react-buy-vs-build-calculator/./src/components/Buttons/Buttons.tsx","webpack://react-buy-vs-build-calculator/./src/components/Buttons/Buttons.module.scss","webpack://react-buy-vs-build-calculator/./src/components/SelectInput/index.tsx","webpack://react-buy-vs-build-calculator/./src/components/SelectInput/SelectInput.tsx","webpack://react-buy-vs-build-calculator/./src/components/TextInput/index.ts","webpack://react-buy-vs-build-calculator/./src/components/TextInput/TextInput.tsx","webpack://react-buy-vs-build-calculator/./src/components/FormContext/steps/steps.module.scss","webpack://react-buy-vs-build-calculator/./src/components/FormContext/steps/StepOne.tsx","webpack://react-buy-vs-build-calculator/./src/components/RadioButton/RadioButton.tsx","webpack://react-buy-vs-build-calculator/./src/components/FormContext/steps/StepTwo.tsx","webpack://react-buy-vs-build-calculator/./src/components/FormContext/steps/StepThree.tsx","webpack://react-buy-vs-build-calculator/./src/components/FormContext/steps/StepFour.tsx","webpack://react-buy-vs-build-calculator/./src/components/tables/tables.module.scss","webpack://react-buy-vs-build-calculator/./src/components/tables/TeamMembers.tsx","webpack://react-buy-vs-build-calculator/./src/components/tables/IntegrationTypes.tsx","webpack://react-buy-vs-build-calculator/./src/components/tables/UseCases.tsx","webpack://react-buy-vs-build-calculator/./src/components/tables/TechStackConditions.tsx","webpack://react-buy-vs-build-calculator/./src/components/tables/IntegrationExperiences.tsx","webpack://react-buy-vs-build-calculator/./src/components/FormContext/steps/Results.tsx","webpack://react-buy-vs-build-calculator/./src/components/FormContext/FormContext.tsx","webpack://react-buy-vs-build-calculator/./src/api/buyVsBuild.ts","webpack://react-buy-vs-build-calculator/./src/components/FormContext/FormContext.module.scss","webpack://react-buy-vs-build-calculator/./src/components/NetworkOfLogos/NetworkOfLogos.tsx","webpack://react-buy-vs-build-calculator/./src/components/LandingPage/LandingPage.module.scss","webpack://react-buy-vs-build-calculator/./src/components/LandingPage/LandingPage.tsx","webpack://react-buy-vs-build-calculator/./src/pages/Home/Home.module.scss","webpack://react-buy-vs-build-calculator/./src/pages/Home/Home.tsx","webpack://react-buy-vs-build-calculator/./src/components/App/App.tsx","webpack://react-buy-vs-build-calculator/./src/components/App/App.module.scss"],"sourcesContent":["/**\n * Note: if you will be using this app as a micro frontend within the Portal\n * you will need to rename AppConfig to something else (e.g. `MyAppConfig`)\n * so values aren't overwritten by portal-ui pipeline variables\n */\ninterface AppConfig {\n ENVIRONMENT: \"Local\" | \"Integration\";\n AMPLITUDE_API_KEY: string;\n PUBLIC_API_URL: string;\n IDENTITY_SERVER_URL: string;\n USER_MANAGEMENT_URL: string;\n BUY_VS_BUILD_API_URL: string;\n APP_CLIENT_COOKIE_NAME: string;\n}\n\ninterface ConfigWindow extends Window {\n AppConfig: AppConfig;\n}\n\ndeclare let window: ConfigWindow;\n\nconst config: AppConfig = window.AppConfig || {\n ENVIRONMENT: \"Local\",\n AMPLITUDE_API_KEY: \"\",\n PUBLIC_API_URL: \"https://api-integration.codat.io\",\n IDENTITY_SERVER_URL: \"https://identity-integration.codat.io\",\n USER_MANAGEMENT_URL: \"https://users-integration.codat.io\",\n BUY_VS_BUILD_API_URL: \"https://buy-vs-build-api-local.codat.io\",\n APP_CLIENT_COOKIE_NAME: \"\", // Update this with the name of your app\n};\n\nexport default config;\n","const auth = \"/auth\";\nconst api = {\n auth: {\n userstate: `${auth}/userstate`,\n },\n calculation: \"/calculation\",\n};\n\nexport default api;\n","import { AxiosRequestConfig, AxiosResponse } from \"axios\";\nimport { Options, UseAxios, UseAxiosResult } from \"axios-hooks\";\nimport { stringify } from \"query-string\";\n\nimport config from \"config\";\nimport { api } from \"config/urls\";\n\nimport { UserState } from \"./public\";\nimport { ApiError } from \"./shared\";\n\nconst clientSelectUrl = `${config.IDENTITY_SERVER_URL}/select`;\n\nexport const useApiRequest = (\n useAxios: UseAxios,\n serviceName: string,\n requestConfig: AxiosRequestConfig | string,\n options?: Options\n): UseAxiosResult => {\n const resolveConfig = (requestConfig: AxiosRequestConfig | string) => {\n const result =\n typeof requestConfig === \"object\"\n ? {\n ...requestConfig,\n headers: {\n ...(requestConfig.headers || {}),\n },\n }\n : {\n url: requestConfig,\n headers: {},\n };\n\n return result;\n };\n\n const result = useAxios(\n resolveConfig(requestConfig),\n options\n );\n\n const error = result[0].error;\n const data = error?.response?.data;\n const service = data?.service;\n\n if (error && data && service === serviceName) {\n const { statusCode } = data;\n\n if (statusCode === 401) {\n error.isAuthError = true;\n }\n\n if (statusCode === 402 && data.error === \"Payment Required\") {\n error.isAuthError = true;\n }\n\n if (statusCode === 403) {\n error.isAuthError = true;\n }\n }\n\n return result;\n};\n\nexport const handleAuthStateResponse = (response: AxiosResponse): void => {\n if (response.config.url === api.auth.userstate) {\n const userState: UserState = response.data;\n if (userState.id === \"00000000-0000-0000-0000-000000000000\") {\n redirect(clientSelectUrl);\n }\n }\n};\n\nconst redirect = (url: string, state?: string) => {\n window.location.assign(\n `${url}?${stringify({\n redirectUrl: window.location.href,\n state,\n })}`\n );\n};\n","import axios, { AxiosInstance, AxiosRequestConfig } from \"axios\";\nimport { Options, UseAxios, makeUseAxios } from \"axios-hooks\";\n\nimport config from \"config\";\n\nimport { useApiRequest } from \"./interceptors\";\nimport { ApiError } from \"./shared\";\n\ninterface Api {\n instance: AxiosInstance;\n useAxios: UseAxios;\n}\n\nconst publicInstance = axios.create({\n withCredentials: true,\n headers: { \"Content-Type\": \"application/json;charset=UTF-8\" },\n baseURL: config.PUBLIC_API_URL,\n});\n\nconst buyVsBuildInstance = axios.create({\n headers: { \"Content-Type\": \"application/json;charset=UTF-8\" },\n baseURL: config.BUY_VS_BUILD_API_URL,\n});\n\nconst api = {\n public: {\n instance: publicInstance,\n useAxios: makeUseAxios({\n axios: publicInstance,\n defaultOptions: { useCache: false },\n }),\n } as Api,\n buyVsBuild: {\n instance: buyVsBuildInstance,\n useAxios: makeUseAxios({\n axios: buyVsBuildInstance,\n defaultOptions: { useCache: false },\n }),\n } as Api,\n};\n\nconst makeUseApiRequest =\n (useAxios: UseAxios, serviceName: string) =>\n (\n requestConfig: AxiosRequestConfig | string,\n options?: Options\n ) => {\n return useApiRequest(\n useAxios,\n serviceName,\n requestConfig,\n options\n );\n };\n\nexport const usePublicApi = makeUseApiRequest(api.public.useAxios, \"PublicApi\");\n\nexport const useBuyVsBuildApi = makeUseApiRequest(\n api.buyVsBuild.useAxios,\n \"BuyVsBuildApi\"\n);\n\nexport default api;\n","const numberOfEngineers = 1;\nconst numberOfBas = 1;\nconst numberOfQas = 1;\n\nconst engineerTimeAllocation = 1.0;\nconst baTimeAllocation = 0.25;\nconst qaTimeAllocation = 1.0;\n\nconst cloudIntegrationInitialTime = 2;\nconst desktopIntegrationInitialTime = 4;\nconst erpIntegrationInitialTime = 6;\nconst commerceIntegrationInitialTime = 2;\nconst bankingIntegrationInitialTime = 1;\n\nconst cloudIntegrationSubsequentTime = 1.5;\nconst desktopIntegrationSubsequentTime = 3;\nconst erpIntegrationSubsequentTime = 4.5;\nconst commerceIntegrationSubsequentTime = 1.5;\nconst bankingIntegrationSubsequentTime = 0.8;\n\nconst cloudIntegrationMaintenanceTime = 3;\nconst desktopIntegrationMaintenanceTime = 3;\nconst erpIntegrationMaintenanceTime = 3;\nconst commerceIntegrationMaintenanceTime = 3;\nconst bankingIntegrationMaintenanceTime = 3;\n\nconst cloudIntegrationMaintenancePercent = 0.05;\nconst desktopIntegrationMaintenancePercent = 0.075;\nconst erpIntegrationMaintenancePercent = 0.05;\nconst commerceIntegrationMaintenancePercent = 0.05;\nconst bankingIntegrationMaintenancePercent = 0.05;\n\nconst noExperienceAdditionalTime = 2;\nconst legacyTechStackAdditionalTime = 2;\n\nexport type Location = \"US\" | \"UK\" | \"AUS\" | \"Other\";\n\nexport type UseCase =\n | \"Underwriting\"\n | \"Commerce\"\n | \"Expense\"\n | \"Payables & Receivables\"\n | \"Dashboarding\"\n | \"Other\";\n\nexport type TechStack = \"modern\" | \"legacy\";\n\nexport interface FormInputs {\n location: Location;\n useCase: UseCase;\n techStack: TechStack;\n isExperiencedBuildingIntegrations: boolean;\n cloudAccountingIntegrationsCount: number;\n desktopAccountingIntegrationsCount: number;\n enterpriseResourcePlannerIntegrationsCount: number;\n commerceIntegrationsCount: number;\n bankingIntegrationsCount: number;\n}\n\nexport interface CountrySalaries {\n engineerTotalSalary: number;\n baTotalSalary: number;\n supportTotalSalary: number;\n qaTotalSalary: number;\n}\n\nexport interface CalculationResults {\n initialBuildTime: number;\n initialBuildCost: number;\n annualMaintenanceTime: number;\n annualMaintenanceCost: number;\n totalYearOneCost: number;\n}\n\nexport default function calculateCosts(formInputs: FormInputs) {\n const salaries = getSalaries(formInputs.location);\n const initialBuildTime = calculateInitialBuildTime(formInputs);\n const initialBuildCost: number = calculateInitialBuildCost(\n initialBuildTime,\n salaries\n );\n const annualMaintenanceTime = calculateTotalAnnualMaintenanceTime(formInputs);\n const annualMaintenanceCost: number = calculateAnnualMaintenanceCost(\n annualMaintenanceTime,\n salaries,\n formInputs\n );\n\n const results: CalculationResults = {\n initialBuildTime: initialBuildTime,\n initialBuildCost: initialBuildCost,\n annualMaintenanceTime: annualMaintenanceTime,\n annualMaintenanceCost: annualMaintenanceCost,\n totalYearOneCost: initialBuildCost + annualMaintenanceCost,\n };\n return results;\n}\n\nfunction getSalaries(location: Location): CountrySalaries {\n switch (location) {\n case \"US\":\n case \"Other\":\n return {\n engineerTotalSalary: 221000,\n baTotalSalary: 195000,\n supportTotalSalary: 195000,\n qaTotalSalary: 195000,\n };\n case \"UK\":\n return {\n engineerTotalSalary: 104000,\n baTotalSalary: 97500,\n supportTotalSalary: 78000,\n qaTotalSalary: 97500,\n };\n case \"AUS\":\n return {\n engineerTotalSalary: 260000,\n baTotalSalary: 234000,\n supportTotalSalary: 234000,\n qaTotalSalary: 234000,\n };\n }\n}\n\nfunction calculateInitialBuildTime(formInputs: FormInputs): number {\n const integrationsInitialTime = sumIntegrationsInitialTime(formInputs);\n if (integrationsInitialTime === 0) {\n return 0;\n }\n return (\n getUseCaseMultiplier(formInputs.useCase) * integrationsInitialTime +\n (formInputs.isExperiencedBuildingIntegrations\n ? 0\n : noExperienceAdditionalTime) +\n (formInputs.techStack == \"legacy\" ? legacyTechStackAdditionalTime : 0)\n );\n}\n\nfunction getUseCaseMultiplier(useCase: UseCase): number {\n switch (useCase) {\n case \"Underwriting\":\n return 1;\n case \"Commerce\":\n return 2;\n case \"Expense\":\n return 2;\n case \"Payables & Receivables\":\n return 2;\n case \"Dashboarding\":\n return 1;\n case \"Other\":\n return 2;\n }\n}\n\nfunction sumIntegrationsInitialTime(formInputs: FormInputs): number {\n return (\n getIntegrationTime(\n formInputs.cloudAccountingIntegrationsCount,\n cloudIntegrationInitialTime,\n cloudIntegrationSubsequentTime\n ) +\n getIntegrationTime(\n formInputs.desktopAccountingIntegrationsCount,\n desktopIntegrationInitialTime,\n desktopIntegrationSubsequentTime\n ) +\n getIntegrationTime(\n formInputs.enterpriseResourcePlannerIntegrationsCount,\n erpIntegrationInitialTime,\n erpIntegrationSubsequentTime\n ) +\n getIntegrationTime(\n formInputs.commerceIntegrationsCount,\n commerceIntegrationInitialTime,\n commerceIntegrationSubsequentTime\n ) +\n getIntegrationTime(\n formInputs.bankingIntegrationsCount,\n bankingIntegrationInitialTime,\n bankingIntegrationSubsequentTime\n )\n );\n}\n\nfunction getIntegrationTime(\n numberOfIntegrations: number,\n integrationInitialTime: number,\n integrationSubsequentTime: number\n): number {\n return (\n Math.min(numberOfIntegrations, 1) * integrationInitialTime +\n Math.max(numberOfIntegrations - 1, 0) * integrationSubsequentTime\n );\n}\n\nfunction calculateInitialBuildCost(\n timeToBuild: number,\n salaries: CountrySalaries\n): number {\n const engineerCost = calculateInitialStaffCost(\n timeToBuild,\n salaries.engineerTotalSalary,\n engineerTimeAllocation,\n numberOfEngineers\n );\n const baCost = calculateInitialStaffCost(\n timeToBuild,\n salaries.baTotalSalary,\n baTimeAllocation,\n numberOfBas\n );\n const qaCost = calculateInitialStaffCost(\n timeToBuild,\n salaries.qaTotalSalary,\n qaTimeAllocation,\n numberOfQas\n );\n return engineerCost + baCost + qaCost;\n}\n\nfunction calculateInitialStaffCost(\n timeToBuild: number,\n salary: number,\n timeAllocation: number,\n numberOfStaff: number\n) {\n return ((timeToBuild * timeAllocation) / 52) * salary * numberOfStaff;\n}\n\nfunction calculateTotalAnnualMaintenanceTime(formInputs: FormInputs): number {\n return (\n sumIntegrationTotalMaintenanceTime(\n formInputs.cloudAccountingIntegrationsCount,\n cloudIntegrationMaintenanceTime\n ) +\n sumIntegrationTotalMaintenanceTime(\n formInputs.desktopAccountingIntegrationsCount,\n desktopIntegrationMaintenanceTime\n ) +\n sumIntegrationTotalMaintenanceTime(\n formInputs.enterpriseResourcePlannerIntegrationsCount,\n erpIntegrationMaintenanceTime\n ) +\n sumIntegrationTotalMaintenanceTime(\n formInputs.commerceIntegrationsCount,\n commerceIntegrationMaintenanceTime\n ) +\n sumIntegrationTotalMaintenanceTime(\n formInputs.bankingIntegrationsCount,\n bankingIntegrationMaintenanceTime\n )\n );\n}\n\nfunction sumIntegrationTotalMaintenanceTime(\n numberOfIntegrations: number,\n integrationMaintenanceTime: number\n): number {\n return (\n Math.round(numberOfIntegrations * integrationMaintenanceTime * 10) / 10\n );\n}\n\nfunction calculateAnnualMaintenanceCost(\n totalMaintenanceTime: number,\n salaries: CountrySalaries,\n formInputs: FormInputs\n): number {\n const engineeringCost =\n (totalMaintenanceTime / 52) *\n salaries.engineerTotalSalary *\n numberOfEngineers;\n const supportPersonnelRequiredPercent =\n getTotalSupportPersonnelRequiredPercent(formInputs);\n const supportCost =\n supportPersonnelRequiredPercent * salaries.supportTotalSalary;\n const qaCost =\n (totalMaintenanceTime / 52) * salaries.qaTotalSalary * numberOfQas;\n return engineeringCost + supportCost + qaCost;\n}\n\nfunction getTotalSupportPersonnelRequiredPercent(formInputs: FormInputs) {\n return (\n formInputs.cloudAccountingIntegrationsCount *\n cloudIntegrationMaintenancePercent +\n formInputs.desktopAccountingIntegrationsCount *\n desktopIntegrationMaintenancePercent +\n formInputs.enterpriseResourcePlannerIntegrationsCount *\n erpIntegrationMaintenancePercent +\n formInputs.commerceIntegrationsCount *\n commerceIntegrationMaintenancePercent +\n formInputs.bankingIntegrationsCount * bankingIntegrationMaintenancePercent\n );\n}\n","export type Countries = \"US\" | \"UK\" | \"Australia\";\n\nexport function getCountry(country: Countries | undefined) {\n switch (country) {\n case \"US\":\n return \"US\";\n case \"UK\":\n return \"UK\";\n case \"Australia\":\n return \"AUS\";\n default:\n return \"US\";\n }\n}\n\nexport function getCurrency(country: Countries) {\n switch (country) {\n case \"US\":\n return \"usd\";\n case \"UK\":\n return \"gbp\";\n case \"Australia\":\n return \"aud\";\n default:\n return \"usd\";\n }\n}\n","import Cookies from \"universal-cookie\";\n\nimport { Location, TechStack } from \"./calculator/calculator\";\n\nexport interface FormData {\n companyName: string;\n firstName: string;\n lastName: string;\n email: string;\n country: Location;\n primaryUseCase: string;\n hasExperience: boolean;\n techStack: TechStack;\n cloudAccountingIntegrations: number;\n desktopAccountingIntegrations: number;\n enterpriseResourcePlannerIntegrations: number;\n commerceIntegrations: number;\n bankingIntegrations: number;\n marketingOptIn: boolean;\n}\n\ntype HubspotFieldName =\n | \"company\"\n | \"Calc_region\"\n | \"Calc_usecase\"\n | \"Calc_experience\"\n | \"Calc_techstack\"\n | \"Calc_integrations\"\n | \"Calc_cloudaccounting\"\n | \"Calc_desktopaccounting\"\n | \"Calc_erp\"\n | \"Calc_commerce\"\n | \"Calc_banking\"\n | \"firstname\"\n | \"lastname\"\n | \"email\"\n | \"hasoptedoutofemail\";\n\ninterface HubspotField {\n objectTypeId: \"0-1\";\n name: HubspotFieldName;\n value: string | number | boolean;\n}\n\ninterface HubspotFormContext {\n hutk: string;\n pageUri: string;\n pageName: \"Buy vs. Build Calculator\";\n}\n\nexport function formatHubspotFormFields(data: FormData): HubspotField[] {\n const {\n companyName,\n email,\n country,\n primaryUseCase,\n hasExperience,\n techStack,\n cloudAccountingIntegrations,\n desktopAccountingIntegrations,\n enterpriseResourcePlannerIntegrations,\n commerceIntegrations,\n bankingIntegrations,\n marketingOptIn,\n firstName,\n lastName,\n } = data;\n\n return [\n {\n objectTypeId: \"0-1\",\n name: \"company\",\n value: companyName,\n },\n {\n objectTypeId: \"0-1\",\n name: \"firstname\",\n value: firstName,\n },\n {\n objectTypeId: \"0-1\",\n name: \"lastname\",\n value: lastName,\n },\n {\n objectTypeId: \"0-1\",\n name: \"email\",\n value: email,\n },\n {\n objectTypeId: \"0-1\",\n name: \"Calc_region\",\n value: country,\n },\n {\n objectTypeId: \"0-1\",\n name: \"Calc_usecase\",\n value: primaryUseCase,\n },\n {\n objectTypeId: \"0-1\",\n name: \"Calc_experience\",\n value: hasExperience,\n },\n {\n objectTypeId: \"0-1\",\n name: \"Calc_techstack\",\n value: techStack,\n },\n {\n objectTypeId: \"0-1\",\n name: \"Calc_cloudaccounting\",\n value: cloudAccountingIntegrations,\n },\n {\n objectTypeId: \"0-1\",\n name: \"Calc_desktopaccounting\",\n value: desktopAccountingIntegrations,\n },\n {\n objectTypeId: \"0-1\",\n name: \"Calc_erp\",\n value: enterpriseResourcePlannerIntegrations,\n },\n {\n objectTypeId: \"0-1\",\n name: \"Calc_commerce\",\n value: commerceIntegrations,\n },\n {\n objectTypeId: \"0-1\",\n name: \"Calc_banking\",\n value: bankingIntegrations,\n },\n {\n objectTypeId: \"0-1\",\n // This field is confusingly named, but is received by Hubspot as \"Email Opt in Status\"\n name: \"hasoptedoutofemail\",\n value: marketingOptIn,\n },\n ];\n}\n\nexport function getHubspotFormContext(): HubspotFormContext {\n const cookies = new Cookies();\n const hubspotCookie = cookies.get(\"hubspotutk\");\n return {\n hutk: hubspotCookie,\n pageUri: window.location.origin,\n pageName: \"Buy vs. Build Calculator\",\n };\n}\n\nexport function getHubspotFormData({\n fields,\n context,\n}: {\n fields: HubspotField[];\n context: HubspotFormContext;\n}) {\n return {\n fields,\n context,\n };\n}\n\nconst HUBSPOT_PORTAL_ID = 25731646;\nconst HUBSPOT_FORM_ID = \"a119837f-d78c-4755-bbc4-21016ae3e71a\";\n\nexport function getHubspotFormUrl() {\n return `https://api.hsforms.com/submissions/v3/integration/submit/${HUBSPOT_PORTAL_ID}/${HUBSPOT_FORM_ID}`;\n}\n","import { useAnalytics } from \"@codat/analytics\";\nimport { Button as OrchardButton } from \"@codat/orchard-ui\";\nimport { ButtonProps as OrchardButtonProps } from \"@codat/orchard-ui/dist/es/components/Button\";\nimport React, { forwardRef } from \"react\";\n\nexport interface ButtonProps extends OrchardButtonProps {\n buttonName: string;\n eventProperties?: Record;\n}\n\nconst Button = forwardRef(\n function Button(props, ref) {\n const { buttonName, eventProperties, onClick, ...buttonProps } = props;\n const { sendEvent } = useAnalytics();\n\n const handleOnClickWithTracking = (\n e: React.MouseEvent\n ) => {\n if (onClick) {\n onClick(e);\n }\n sendEvent(`${buttonName} Button - Click`, eventProperties);\n };\n\n return (\n }\n />\n );\n }\n);\n\nexport default Button;\n","import { Tooltip } from \"@codat/orchard-ui\";\nimport React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { useFormContext } from \"react-hook-form\";\nimport { animated, useSpringRef, useTransition } from \"react-spring\";\n\nimport Button, { ButtonProps } from \"components/Button\";\nimport { steps } from \"components/FormContext/FormContext\";\n\nimport styles from \"./Buttons.module.scss\";\n\ninterface ButtonsProps {\n step: number;\n setStep: React.Dispatch>;\n isAnimating: boolean;\n}\n\nconst Buttons = ({ step, setStep, isAnimating }: ButtonsProps) => {\n const [shouldDisableButton, setShouldDisableButton] = useState(false);\n const [showTooltip, setShowTooltip] = useState(false);\n const buttonsRef = useSpringRef();\n const { getValues, watch, formState } = useFormContext();\n\n const formValues = getValues();\n const integrations = Object.values(watch(\"integrations\"));\n\n const integrationsCount = useMemo(() => {\n return integrations.reduce((acc: number, v) => acc + Number(v), 0);\n }, [integrations]);\n\n const hasNextButton = !!step;\n\n const fade = useTransition(hasNextButton, {\n ref: buttonsRef,\n keys: null,\n from: { opacity: 0 },\n enter: { opacity: 1 },\n leave: { opacity: 0, position: \"absolute\" },\n });\n\n const goToNextStep = useCallback(() => {\n setStep(step + 1);\n }, [step, setStep]);\n\n const goToPreviousStep = useCallback(() => {\n setStep(Math.max(step - 1, 0));\n }, [step, setStep]);\n\n useEffect(() => {\n buttonsRef.start();\n }, [step, buttonsRef]);\n\n useEffect(() => {\n switch (step) {\n case steps.COMPANY_DETAILS:\n setShouldDisableButton(\n !formValues.companyName || !formValues.primaryUseCase\n );\n break;\n case steps.INTEGRATIONS_EXPERIENCE:\n setShouldDisableButton(\n !formValues.hasExperience || !formValues.techStack\n );\n break;\n case steps.REQUIRED_INTEGRATIONS:\n setShouldDisableButton(!integrationsCount);\n break;\n case steps.CONTACT_DETAILS:\n setShouldDisableButton(!formState.isValid);\n break;\n default:\n setShouldDisableButton(false);\n }\n }, [step, formValues, formState, integrationsCount]);\n\n useEffect(() => {\n if (integrationsCount > 0) {\n setShowTooltip(false);\n }\n }, [integrationsCount]);\n\n const getPrimaryButtonProps = useCallback(\n (\n step: number\n ): Pick<\n ButtonProps,\n | \"onClick\"\n | \"label\"\n | \"type\"\n | \"disabled\"\n | \"buttonName\"\n | \"eventProperties\"\n > => {\n switch (step) {\n case steps.COMPANY_DETAILS:\n case steps.INTEGRATIONS_EXPERIENCE:\n case steps.REQUIRED_INTEGRATIONS:\n return {\n onClick: goToNextStep,\n label: \"Next\",\n type: \"button\",\n disabled: shouldDisableButton,\n buttonName: \"Next\",\n eventProperties: { currentStep: step },\n };\n case steps.CONTACT_DETAILS:\n return {\n label: \"Submit\",\n type: isAnimating ? \"button\" : \"submit\",\n disabled: shouldDisableButton,\n buttonName: \"Submit\",\n eventProperties: { currentStep: step },\n };\n default:\n return {\n buttonName: \"\",\n };\n }\n },\n [shouldDisableButton, goToNextStep, isAnimating]\n );\n\n return (\n
\n <>\n {fade(\n (style) =>\n hasNextButton && (\n \n \n \n )\n )}\n \n Please select at least one integration\n
\n }\n >\n \n setShowTooltip(\n step === steps.REQUIRED_INTEGRATIONS && shouldDisableButton\n )\n }\n onMouseLeave={() => setShowTooltip(false)}\n className={styles.nextBtnWrapper}\n >\n \n \n \n UK\n \n \n \n Australia\n \n \n uc.value === primaryUseCase)}\n handleSelectedItemChange={(item) => {\n clearErrors(\"primaryUseCase\");\n setValue(\"primaryUseCase\", item?.value);\n }}\n onBlur={() => {\n if (!primaryUseCase) {\n setError(\"primaryUseCase\", {\n message: \"Primary use case is required\",\n type: \"required\",\n });\n }\n }}\n error={!!formState.errors.primaryUseCase}\n errorMessage={formState.errors.primaryUseCase?.message?.toString()}\n inputName=\"Primary Use Case\"\n />\n \n );\n};\n","import { useAnalytics } from \"@codat/analytics\";\nimport {\n RadioButton as OrchardRadioButton,\n RadioButtonProps as OrchardRadioProps,\n} from \"@codat/orchard-ui\";\nimport { InputHTMLAttributes, forwardRef } from \"react\";\n\nexport type RadioButtonProps = OrchardRadioProps &\n InputHTMLAttributes & {\n buttonName: string;\n eventProperties?: Record;\n };\n\nconst RadioButton = forwardRef(\n function RadioButton(\n { buttonName, eventProperties, onChange, ...props }: RadioButtonProps,\n ref\n ) {\n const { sendEvent } = useAnalytics();\n\n const handleOnChange = (e: React.ChangeEvent) => {\n if (onChange) {\n onChange(e);\n }\n sendEvent(`${buttonName} Radio Button - Change`, {\n checked: e.target.checked,\n ...eventProperties,\n });\n };\n\n return (\n \n );\n }\n);\n\nexport default RadioButton;\n","import { Typography } from \"@codat/orchard-ui\";\nimport classNames from \"classnames\";\nimport { Controller, useFormContext } from \"react-hook-form\";\n\nimport RadioButton from \"components/RadioButton\";\n\nimport styles from \"./steps.module.scss\";\n\nexport const StepTwo = () => {\n const { setValue, formState, watch, setError, clearErrors } =\n useFormContext();\n\n const hasExperience = watch(\"hasExperience\");\n const techStack = watch(\"techStack\");\n return (\n
\n
\n \n We also need a few details about your tech infrastructure and\n experience.\n \n
\n \n Does your company have experience building integrations?*\n \n {formState.errors?.hasExperience && (\n \n {formState.errors?.hasExperience?.message?.toString()}\n \n )}\n
\n
\n (\n {\n clearErrors(\"hasExperience\");\n setValue(\"hasExperience\", e.target.value);\n }}\n onBlur={() => {\n if (!hasExperience) {\n setError(\"hasExperience\", {\n message: \"Experience level is required\",\n });\n } else {\n clearErrors(\"hasExperience\");\n }\n }}\n buttonName=\"Experience\"\n eventProperties={{ value: \"Yes\" }}\n />\n )}\n />\n (\n {\n clearErrors(\"hasExperience\");\n setValue(\"hasExperience\", e.target.value);\n }}\n onBlur={() => {\n if (!hasExperience) {\n setError(\"hasExperience\", {\n message: \"Tech stack is required\",\n });\n } else {\n clearErrors(\"hasExperience\");\n }\n }}\n buttonName=\"Experience\"\n eventProperties={{ value: \"No\" }}\n />\n )}\n />\n
\n
\n
\n
\n \n How would you describe your tech stack?*\n \n {formState.errors?.techStack && (\n \n {formState.errors?.techStack?.message?.toString()}\n \n )}\n
\n
\n (\n {\n clearErrors(\"techStack\");\n setValue(\"techStack\", e.target.value);\n }}\n onBlur={() => {\n if (!techStack) {\n setError(\"techStack\", {\n message: \"Tech stack is required\",\n });\n } else {\n clearErrors(\"techStack\");\n }\n }}\n buttonName=\"Tech Stack\"\n eventProperties={{ value: \"Modern\" }}\n />\n )}\n />\n (\n {\n clearErrors(\"techStack\");\n setValue(\"techStack\", e.target.value);\n }}\n onBlur={() => {\n if (!techStack) {\n setError(\"techStack\", {\n message: \"Tech stack is required\",\n });\n } else {\n clearErrors(\"techStack\");\n }\n }}\n buttonName=\"Tech Stack\"\n eventProperties={{ value: \"Legacy\" }}\n />\n )}\n />\n
\n
\n
\n );\n};\n","import { Typography } from \"@codat/orchard-ui\";\nimport { useFormContext } from \"react-hook-form\";\n\nimport TextInput from \"components/TextInput\";\n\nimport styles from \"./steps.module.scss\";\n\nexport const StepThree = () => {\n const { register } = useFormContext();\n\n return (\n
\n \n Finally, tell us about the integrations you plan to build.\n \n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n );\n};\n","import { useAnalytics } from \"@codat/analytics\";\nimport { Checkbox, Typography } from \"@codat/orchard-ui\";\nimport { useCallback } from \"react\";\nimport { useFormContext } from \"react-hook-form\";\n\nimport TextInput from \"components/TextInput\";\n\nimport styles from \"./steps.module.scss\";\n\nexport const StepFour = () => {\n const { register, formState, watch, setValue } = useFormContext();\n const { sendEvent } = useAnalytics();\n\n const marketingOptIn = watch(\"marketingOptIn\");\n\n const onMarketingCheckboxChange = useCallback(\n (e: React.ChangeEvent) => {\n sendEvent(\"Marketing Opt-in Checkbox - Click\", {\n checked: e.target.checked,\n });\n setValue(\"marketingOptIn\", e.target.checked);\n },\n [sendEvent, setValue]\n );\n\n return (\n
\n
\n \n Thanks for providing some information about your project.\n \n \n To reveal your estimate and get a personalized breakdown of the\n figures, please complete the form below.\n \n
\n
\n \n \n \n \n
\n
\n );\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"leftAlign\":\"leftAlign__iu9Ox9lx\",\"centerAlign\":\"centerAlign__I0AUNz_v\",\"smallPrint\":\"smallPrint__itb_w11q\",\"table\":\"table__WOEVw7IT\"};","import { ColumnDefinition, DataTable, RowInfo } from \"@codat/orchard-ui\";\n\nimport styles from \"./tables.module.scss\";\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst Cell = ({ value }: any) => (\n
{value}
\n);\nconst SalaryCell = ({ value }: any) => (\n
\n
{value.uk}
\n
{value.us}
\n
{value.aus}
\n
\n);\n\nconst data = [\n {\n title: \"Software Engineer x1\",\n salaryUS: \"US $221,000\",\n salaryUK: \"UK £104,000\",\n salaryAus: \"AUS $260,000\",\n buildTime: \"100%\",\n maintenanceTime: \"2%\",\n },\n {\n title: \"Business Analysts x1\",\n salaryUS: \"US $195,000\",\n salaryUK: \"UK £97,500\",\n salaryAus: \"AUS $234,000\",\n buildTime: \"25%\",\n maintenanceTime: \"0%\",\n },\n {\n title: \"Quality assurance engineer x1\",\n salaryUS: \"US $195,000\",\n salaryUK: \"UK £97,500\",\n salaryAus: \"AUS $234,000\",\n buildTime: \"100%\",\n maintenanceTime: \"2%\",\n },\n {\n title: \"Technical support engineer x1\",\n salaryUS: \"US $195,000\",\n salaryUK: \"UK £78,000\",\n salaryAus: \"AUS $234,000\",\n buildTime: \"0%\",\n maintenanceTime: \"25%\",\n },\n];\n\nconst columnDefs: ColumnDefinition<\n \"team-member\" | \"salaries\" | \"build-time\" | \"maintenance-time\"\n>[] = [\n {\n key: \"team-member\",\n label: \"Team members\",\n component: Cell,\n align: \"left\",\n headerAlign: \"left\",\n },\n {\n key: \"salaries\",\n label: (\n
\n Salaries* (incl. Benefits & indirect employee costs)\n
\n ),\n component: SalaryCell,\n headerAlign: \"center\",\n align: \"center\",\n },\n {\n key: \"build-time\",\n label:
% dedicated time (build)
,\n component: Cell,\n align: \"center\",\n },\n {\n key: \"maintenance-time\",\n label: (\n
% dedicated time (maintenance)
\n ),\n component: Cell,\n },\n];\n\nconst tableRows: RowInfo[] = data.map((item) => {\n return {\n data: [\n {\n key: \"team-member\",\n value: item.title,\n },\n {\n key: \"salaries\",\n value: {\n uk: item.salaryUK,\n us: item.salaryUS,\n aus: item.salaryAus,\n },\n },\n { key: \"build-time\", value: \"100%\" },\n { key: \"maintenance-time\", value: \"2%\" },\n ],\n };\n});\n\nexport const TeamMembers = () => {\n return (\n
\n \n
\n );\n};\n","import { ColumnDefinition, DataTable, RowInfo } from \"@codat/orchard-ui\";\n\nimport styles from \"./tables.module.scss\";\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst IntegrationTypeCell = ({ value }: any) => (\n
\n
{value.banking}
\n
{value.cloud}
\n
{value.desktop}
\n
{value.commerce}
\n
{value.erp}
\n
\n);\nconst ComplexityCell = ({ value }: any) => (\n
\n
{value.lowerComplexity}
\n

\n

\n

\n
{value.higherComplexity}
\n
\n);\nconst InitialIntegrationBuildTimeCell = ({ value }: any) => (\n
\n
{value.oneWeek}
\n
{value.twoWeeks}
\n
{value.fourWeeks}
\n
{value.twoWeeks}
\n
{value.sixWeeks}
\n
\n);\nconst SubsequentIntegrationsBuildTimeCell = ({ value }: any) => (\n
\n
{value.onePointFiveWeeks}
\n
{value.onePointFiveWeeks}
\n
{value.threeWeeks}
\n
{value.onePointFiveWeeks}
\n
{value.fourPointFiveWeeks}
\n
\n);\nconst MaintenanceEngineeringTimeCell = ({ value }: any) => (\n
\n
{value.threeWeeks}
\n
{value.threeWeeks}
\n
{value.threeWeeks}
\n
{value.threeWeeks}
\n
{value.threeWeeks}
\n
\n);\nconst MaintenancePercentageSupportEngineerTimeCell = ({ value }: any) => (\n
\n
{value.fivePercent}
\n
{value.fivePercent}
\n
{value.sevenPointFivePercent}
\n
{value.fivePercent}
\n
{value.fivePercent}
\n
\n);\n\nconst data = [\n {\n banking: \"Open Banking\",\n cloud: \"Cloud\",\n desktop: \"Desktop\",\n commerce: \"Commerce\",\n erp: \"ERP\",\n oneWeek: \"1 week\",\n onePointFiveWeeks: \"1.5 weeks\",\n twoWeeks: \"2 weeks\",\n threeWeeks: \"3 weeks\",\n fourWeeks: \"4 weeks\",\n fourPointFiveWeeks: \"4.5 weeks\",\n sixWeeks: \"6 weeks\",\n fivePercent: \"5%\",\n sevenPointFivePercent: \"7.5%\",\n higherComplexity: \"Higher complexity\",\n lowerComplexity: \"Lower complexity\",\n },\n];\n\nconst columnDefs: ColumnDefinition[] = [\n {\n key: \"integration-type\",\n label: \"Integration type\",\n component: IntegrationTypeCell,\n headerAlign: \"center\",\n },\n {\n key: \"complexity\",\n label:
Complexity
,\n component: ComplexityCell,\n headerAlign: \"center\",\n },\n {\n key: \"initial-integration-build-time\",\n label: (\n
Initial integration build time
\n ),\n component: InitialIntegrationBuildTimeCell,\n headerAlign: \"center\",\n },\n {\n key: \"subsequent-integrations-build-time\",\n label: (\n
\n Subsequent integrations build time\n
\n ),\n component: SubsequentIntegrationsBuildTimeCell,\n headerAlign: \"center\",\n },\n {\n key: \"maintenance-engineering-time\",\n label: (\n
\n Engineering time annually to maintain\n
\n ),\n component: MaintenanceEngineeringTimeCell,\n headerAlign: \"center\",\n },\n {\n key: \"maintenance-percentage-support-engineer-time\",\n label: (\n
\n % of Support Engineer time to maintain\n
\n ),\n component: MaintenancePercentageSupportEngineerTimeCell,\n headerAlign: \"center\",\n },\n];\n\nconst tableRows: RowInfo[] = data.map((item) => {\n return {\n data: [\n {\n key: \"integration-type\",\n value: {\n banking: item.banking,\n cloud: item.cloud,\n desktop: item.desktop,\n commerce: item.commerce,\n erp: item.erp,\n },\n },\n {\n key: \"complexity\",\n value: {\n lowerComplexity: item.lowerComplexity,\n higherComplexity: item.higherComplexity,\n },\n },\n {\n key: \"initial-integration-build-time\",\n value: {\n oneWeek: item.oneWeek,\n twoWeeks: item.twoWeeks,\n fourWeeks: item.fourWeeks,\n sixWeeks: item.sixWeeks,\n },\n },\n {\n key: \"subsequent-integrations-build-time\",\n value: {\n onePointFiveWeeks: item.onePointFiveWeeks,\n threeWeeks: item.threeWeeks,\n fourPointFiveWeeks: item.fourPointFiveWeeks,\n },\n },\n {\n key: \"maintenance-engineering-time\",\n value: {\n threeWeeks: item.threeWeeks,\n },\n },\n {\n key: \"maintenance-percentage-support-engineer-time\",\n value: {\n fivePercent: item.fivePercent,\n sevenPointFivePercent: item.sevenPointFivePercent,\n },\n },\n ],\n };\n});\n\nexport const IntegrationTypes = () => {\n return (\n
\n \n
\n );\n};\n","import { ColumnDefinition, DataTable, RowInfo } from \"@codat/orchard-ui\";\n\nimport styles from \"./tables.module.scss\";\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst UseCaseCell = ({ value }: any) => (\n
\n
{value.dashboarding}
\n
{value.underwriting}
\n
{value.commerce}
\n
{value.expense}
\n
{value.payablesAndReceivables}
\n
{value.other}
\n
\n);\nconst BuildTimeCell = ({ value }: any) => (\n
\n
{value.oneWeek}
\n
{value.oneWeek}
\n
{value.twoWeeks}
\n
{value.twoWeeks}
\n
{value.twoWeeks}
\n
{value.twoWeeks}
\n
\n);\nconst ComplexityCell = ({ value }: any) => (\n
\n
{value.lowerComplexity}
\n

\n

\n

\n

\n
{value.higherComplexity}
\n
\n);\n\nconst data = [\n {\n dashboarding: \"Dashboarding\",\n underwriting: \"Underwriting\",\n commerce: \"Commerce\",\n expense: \"Expenses\",\n payablesAndReceivables: \"Payables & Receivables\",\n other: \"Other\",\n oneWeek: \"1 week\",\n twoWeeks: \"2 weeks\",\n higherComplexity: \"Higher complexity\",\n lowerComplexity: \"Lower complexity\",\n },\n];\n\nconst columnDefs: ColumnDefinition[] = [\n {\n key: \"use-case\",\n label:
Use case
,\n component: UseCaseCell,\n headerAlign: \"left\",\n },\n {\n key: \"complexity\",\n label: \"Complexity\",\n component: ComplexityCell,\n headerAlign: \"center\",\n },\n {\n key: \"additional-build-time\",\n label: \"Additional build time\",\n component: BuildTimeCell,\n headerAlign: \"center\",\n },\n];\n\nconst tableRows: RowInfo[] = data.map((item) => {\n return {\n data: [\n {\n key: \"use-case\",\n value: {\n dashboarding: item.dashboarding,\n underwriting: item.underwriting,\n commerce: item.commerce,\n expense: item.expense,\n payablesAndReceivables: item.payablesAndReceivables,\n other: item.other,\n },\n },\n {\n key: \"complexity\",\n value: {\n lowerComplexity: item.lowerComplexity,\n higherComplexity: item.higherComplexity,\n },\n },\n {\n key: \"additional-build-time\",\n value: {\n oneWeek: item.oneWeek,\n twoWeeks: item.twoWeeks,\n },\n },\n ],\n };\n});\n\nexport const UseCases = () => {\n return (\n
\n \n
\n );\n};\n","import { ColumnDefinition, DataTable, RowInfo } from \"@codat/orchard-ui\";\n\nimport styles from \"./tables.module.scss\";\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst TechStackConditionCell = ({ value }: any) => (\n
\n
{value.cloudBasedInfrastructure}
\n
{value.onPremInfrastructure}
\n
\n);\nconst BuildTimeCell = ({ value }: any) => (\n
\n
{value.zeroWeeks}
\n
{value.twoWeeks}
\n
\n);\nconst ComplexityCell = ({ value }: any) => (\n
\n
{value.lowerComplexity}
\n

\n
{value.higherComplexity}
\n
\n);\n\nconst data = [\n {\n cloudBasedInfrastructure: \"Cloud based infrastructure\",\n onPremInfrastructure: \"On premises infrastructure\",\n zeroWeeks: \"0 weeks\",\n twoWeeks: \"2 weeks\",\n higherComplexity: \"Higher complexity\",\n lowerComplexity: \"Lower complexity\",\n },\n];\n\nconst columnDefs: ColumnDefinition[] = [\n {\n key: \"tech-stack-condition\",\n label: \"Tech stack condition\",\n component: TechStackConditionCell,\n headerAlign: \"left\",\n },\n {\n key: \"complexity\",\n label: \"Complexity\",\n component: ComplexityCell,\n headerAlign: \"center\",\n },\n {\n key: \"additional-build-time\",\n label: \"Additional build time\",\n component: BuildTimeCell,\n headerAlign: \"center\",\n },\n];\n\nconst tableRows: RowInfo[] = data.map((item) => {\n return {\n data: [\n {\n key: \"tech-stack-condition\",\n value: {\n cloudBasedInfrastructure: item.cloudBasedInfrastructure,\n onPremInfrastructure: item.onPremInfrastructure,\n },\n },\n {\n key: \"complexity\",\n value: {\n lowerComplexity: item.lowerComplexity,\n higherComplexity: item.higherComplexity,\n },\n },\n {\n key: \"additional-build-time\",\n value: {\n zeroWeeks: item.zeroWeeks,\n twoWeeks: item.twoWeeks,\n },\n },\n ],\n };\n});\n\nexport const TechStackConditions = () => {\n return (\n
\n \n
\n );\n};\n","import { ColumnDefinition, DataTable, RowInfo } from \"@codat/orchard-ui\";\n\nimport styles from \"./tables.module.scss\";\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst IntegrationExperienceCell = ({ value }: any) => (\n
\n
{value.previousExperience}
\n
{value.noExperience}
\n
\n);\nconst BuildTimeCell = ({ value }: any) => (\n
\n
{value.zeroWeeks}
\n
{value.twoWeeks}
\n
\n);\nconst ComplexityCell = ({ value }: any) => (\n
\n
{value.lowerComplexity}
\n

\n
{value.higherComplexity}
\n
\n);\n\nconst data = [\n {\n previousExperience: \"Previous experience\",\n noExperience: \"No experience\",\n zeroWeeks: \"0 weeks\",\n twoWeeks: \"2 weeks\",\n higherComplexity: \"Higher complexity\",\n lowerComplexity: \"Lower complexity\",\n },\n];\n\nconst columnDefs: ColumnDefinition[] = [\n {\n key: \"integration-experience\",\n label: \"Integration experience\",\n component: IntegrationExperienceCell,\n headerAlign: \"left\",\n },\n {\n key: \"complexity\",\n label: \"Complexity\",\n component: ComplexityCell,\n headerAlign: \"center\",\n },\n {\n key: \"additional-build-time\",\n label: \"Additional build time\",\n component: BuildTimeCell,\n headerAlign: \"center\",\n },\n];\n\nconst tableRows: RowInfo[] = data.map((item) => {\n return {\n data: [\n {\n key: \"integration-experience\",\n value: {\n previousExperience: item.previousExperience,\n noExperience: item.noExperience,\n },\n },\n {\n key: \"complexity\",\n value: {\n lowerComplexity: item.lowerComplexity,\n higherComplexity: item.higherComplexity,\n },\n },\n {\n key: \"additional-build-time\",\n value: {\n zeroWeeks: item.zeroWeeks,\n twoWeeks: item.twoWeeks,\n },\n },\n ],\n };\n});\n\nexport const IntegrationExperiences = () => {\n return (\n
\n \n
\n );\n};\n","import { useAnalytics } from \"@codat/analytics\";\nimport { Accordion, Typography } from \"@codat/orchard-ui\";\nimport classNames from \"classnames\";\nimport { useCallback } from \"react\";\nimport { useFormContext } from \"react-hook-form\";\nimport calculateCosts, { FormInputs } from \"utils/calculator/calculator\";\nimport { Countries, getCurrency } from \"utils/countryOptions\";\n\nimport {\n IntegrationExperiences,\n IntegrationTypes,\n TeamMembers,\n TechStackConditions,\n UseCases,\n} from \"components/tables\";\n\nimport tableStyles from \"../../tables/tables.module.scss\";\nimport { UseCase } from \"../FormContext\";\nimport styles from \"./steps.module.scss\";\n\nfunction formatAsCurrency(val: number, currency: \"gbp\" | \"usd\" | \"aud\") {\n return new Intl.NumberFormat(\"en-US\", {\n style: \"currency\",\n currency,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n }).format(val);\n}\n\nconst getUseCase = (useCase: UseCase) => {\n switch (useCase) {\n case \"Create a financial management dashboard for SMBs\":\n case \"Build an SMB lending journey\":\n return \"Underwriting\";\n case \"Reconcile commerce data for SMBs\":\n case \"Other\":\n return \"Commerce\";\n case \"Reconcile expense data for SMBs\":\n case \"Automate payables or receivables for SMBs\":\n return \"Expense\";\n default:\n return \"Commerce\";\n }\n};\n\nfunction getCountry(country: Countries | undefined) {\n switch (country) {\n case \"US\":\n return \"US\";\n case \"UK\":\n return \"UK\";\n case \"Australia\":\n return \"AUS\";\n default:\n return \"US\";\n }\n}\n\nexport const Results = () => {\n const { watch, getValues } = useFormContext();\n const { sendEvent } = useAnalytics();\n\n const country = watch(\"country\");\n const currency = getCurrency(country);\n\n const values = getValues();\n\n const calculatorInputs: FormInputs = {\n location: getCountry(values.country),\n useCase: getUseCase(values.primaryUseCase),\n techStack: values.techStack ?? \"legacy\",\n isExperiencedBuildingIntegrations: values.hasExperience === \"yes\",\n cloudAccountingIntegrationsCount: Number(\n values.integrations.cloudAccounting\n ),\n desktopAccountingIntegrationsCount: Number(\n values.integrations.desktopAccounting\n ),\n enterpriseResourcePlannerIntegrationsCount: Number(values.integrations.erp),\n commerceIntegrationsCount: Number(values.integrations.commerce),\n bankingIntegrationsCount: Number(values.integrations.banking),\n };\n\n const { totalYearOneCost, initialBuildTime } =\n calculateCosts(calculatorInputs);\n\n const sendAccordionClickEvent = useCallback(\n (name: \"Resourcing\" | \"Use-case\" | \"Infrastructure\") => () =>\n sendEvent(`Results - ${name} Logic Accordion - Click`),\n [sendEvent]\n );\n\n return (\n
\n \n We've estimated that completing this in-house project will cost\n \n \n {formatAsCurrency(totalYearOneCost, currency)}\n \n \n and take you\n \n \n {`${initialBuildTime.toFixed()} weeks`}\n \n *\n \n \n
\n \n *Please note, this is the minimum engineering time and does not\n include planning or testing.\n \n\n \n However, your build could be significantly faster and cheaper with\n Codat's help.{\" \"}\n \n Get in touch with our expert team\n {\" \"}\n to learn more, or{\" \"}\n \n sign up to test out our universal API for free.\n \n \n \n Or scroll down to learn more about how we calculated your estimate.\n \n
\n Resourcing logic
}\n data-testid=\"resourcing-logic\"\n onClick={sendAccordionClickEvent(\"Resourcing\")}\n >\n \n We have based your estimate on having 1 software engineer, 1\n business analyst, 1 quality assurance engineer and 1 technical\n support engineer in a team.\n \n \n \n * Based on average salary data sourced from Radford Global\n Compensation Database, January 2023.\n \n \n Use case logic
}\n data-testid=\"use-case-logic\"\n onClick={sendAccordionClickEvent(\"Use-case\")}\n >\n \n \n \n Infrastructure logic
}\n data-testid=\"infrastructure-logic\"\n onClick={sendAccordionClickEvent(\"Infrastructure\")}\n >\n \n \n \n \n \n \n );\n};\n","import { useAnalytics } from \"@codat/analytics\";\nimport { StepProgressBar } from \"@codat/orchard-ui\";\nimport {\n AnimatedProps,\n AnimationResult,\n animated,\n useSpringRef,\n useTransition,\n} from \"@react-spring/web\";\nimport { useSendSummaryEmail } from \"api/buyVsBuild\";\nimport classNames from \"classnames\";\nimport React, { CSSProperties, useCallback, useEffect, useState } from \"react\";\nimport { FormProvider, useForm } from \"react-hook-form\";\nimport calculateCosts, { FormInputs } from \"utils/calculator/calculator\";\nimport { Countries, getCountry, getCurrency } from \"utils/countryOptions\";\nimport {\n formatHubspotFormFields,\n getHubspotFormContext,\n getHubspotFormData,\n getHubspotFormUrl,\n} from \"utils/hubspot\";\n\nimport Buttons from \"components/Buttons\";\n\nimport styles from \"./FormContext.module.scss\";\nimport { Results, StepFour, StepOne, StepThree, StepTwo } from \"./steps\";\n\nexport type UseCase =\n | \"Create a financial management dashboard for SMBs\"\n | \"Build an SMB lending journey\"\n | \"Automate payables or receivables for SMBs\"\n | \"Reconcile commerce data for SMBs\"\n | \"Reconcile expense data for SMBs\"\n | \"Other\";\n\nexport interface Integrations {\n cloudAccounting: number;\n desktopAccounting: number;\n erp: number;\n commerce: number;\n banking: number;\n}\n\ninterface FormValues {\n companyName: string;\n country: Countries;\n primaryUseCase: UseCase;\n techStack: \"modern\" | \"legacy\";\n integrations: Integrations;\n firstName: string;\n lastName: string;\n email: string;\n hasExperience: \"yes\" | \"no\";\n marketingOptIn: boolean;\n}\n\nconst defaultValues: Partial = {\n integrations: {\n cloudAccounting: 0,\n desktopAccounting: 0,\n erp: 0,\n commerce: 0,\n banking: 0,\n },\n marketingOptIn: false,\n};\n\nconst getUseCase = (useCase: UseCase) => {\n switch (useCase) {\n case \"Create a financial management dashboard for SMBs\":\n case \"Build an SMB lending journey\":\n return \"Underwriting\";\n case \"Reconcile commerce data for SMBs\":\n case \"Other\":\n return \"Commerce\";\n case \"Reconcile expense data for SMBs\":\n case \"Automate payables or receivables for SMBs\":\n return \"Expense\";\n default:\n return \"Commerce\";\n }\n};\n\nexport const enum steps {\n COMPANY_DETAILS = 0,\n INTEGRATIONS_EXPERIENCE = 1,\n REQUIRED_INTEGRATIONS = 2,\n CONTACT_DETAILS = 3,\n RESULTS = 4,\n}\n\nconst forms: ((\n props: AnimatedProps<{\n style: CSSProperties;\n onGetStarted?: () => void;\n }>\n) => React.ReactElement)[] = [\n ({ style }) => (\n \n \n \n ),\n ({ style }) => (\n \n \n \n ),\n ({ style }) => (\n \n \n \n ),\n ({ style }) => (\n \n \n \n ),\n ({ style }) => (\n \n \n \n ),\n];\n\nconst FormContext = () => {\n const [step, setStep] = useState(0);\n const [isAnimating, setIsAnimating] = useState(false);\n const [, sendSummaryEmail] = useSendSummaryEmail();\n const form = useForm({ defaultValues, mode: \"onBlur\" });\n const { sendEvent } = useAnalytics();\n\n const transRef = useSpringRef();\n\n const handleRest = useCallback(\n (state: AnimationResult<{ get: () => { opacity?: number } }>) => {\n if (state.value.opacity === 1) {\n if (step === steps.CONTACT_DETAILS) {\n setIsAnimating(false);\n }\n if (step === steps.RESULTS) {\n sendEvent(\"Results - Page view\");\n return;\n }\n sendEvent(`Form Step ${step + 1} - Page view`);\n }\n },\n [step, sendEvent]\n );\n\n const transitions = useTransition(step, {\n ref: transRef,\n keys: null,\n from: { opacity: 0, transform: \"translate3d(100%, 0, 0)\" },\n enter: { opacity: 1, transform: \"translate3d(0, 0, 0)\" },\n leave: { opacity: 0, transform: \"translate3d(-50%, 0, 0)\" },\n trail: 200,\n onRest: handleRest,\n });\n\n useEffect(() => {\n setIsAnimating(true);\n transRef.start();\n }, [step, transRef]);\n\n const onSubmit = async (formData: FormValues) => {\n try {\n const {\n companyName,\n firstName,\n lastName,\n email,\n primaryUseCase,\n country,\n integrations,\n techStack,\n hasExperience,\n marketingOptIn,\n } = formData;\n\n const calculatorInputs: FormInputs = {\n location: getCountry(country),\n useCase: getUseCase(primaryUseCase),\n techStack: techStack ?? \"legacy\",\n isExperiencedBuildingIntegrations: hasExperience === \"yes\",\n cloudAccountingIntegrationsCount: Number(integrations.cloudAccounting),\n desktopAccountingIntegrationsCount: Number(\n integrations.desktopAccounting\n ),\n enterpriseResourcePlannerIntegrationsCount: Number(integrations.erp),\n commerceIntegrationsCount: Number(integrations.commerce),\n bankingIntegrationsCount: Number(integrations.banking),\n };\n\n const calculationResults = calculateCosts(calculatorInputs);\n\n const fields = formatHubspotFormFields({\n companyName,\n firstName,\n lastName,\n email,\n country: getCountry(country),\n primaryUseCase: getUseCase(primaryUseCase),\n hasExperience: hasExperience === \"yes\",\n techStack,\n cloudAccountingIntegrations: Number(integrations.cloudAccounting),\n desktopAccountingIntegrations: Number(integrations.desktopAccounting),\n enterpriseResourcePlannerIntegrations: Number(integrations.erp),\n commerceIntegrations: Number(integrations.commerce),\n bankingIntegrations: Number(integrations.banking),\n marketingOptIn,\n });\n\n const context = getHubspotFormContext();\n\n fetch(getHubspotFormUrl(), {\n method: \"POST\",\n mode: \"cors\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(\n getHubspotFormData({\n fields,\n context,\n })\n ),\n });\n\n sendSummaryEmail({\n data: {\n firstName,\n lastName,\n email,\n companyName,\n primaryUseCase,\n cloudAccountingIntegrations: integrations.cloudAccounting,\n desktopAccountingIntegrations: integrations.desktopAccounting,\n erpIntegrations: integrations.erp,\n commerceIntegrations: integrations.commerce,\n bankingIntegrations: integrations.banking,\n techStack: techStack ?? \"legacy\",\n hasExperience: hasExperience === \"yes\",\n currency: getCurrency(country),\n cost: calculationResults.totalYearOneCost,\n buildTimeInWeeks: calculationResults.initialBuildTime,\n },\n });\n } catch (err) {\n console.error(err); // eslint-disable-line no-console\n }\n\n setStep(step + 1);\n };\n\n return (\n \n
\n
\n {step !== steps.RESULTS && (\n \n )}\n
\n \n {transitions((style, i) => {\n const FormStep = forms[i];\n return ;\n })}\n \n {step !== steps.RESULTS && (\n \n )}\n \n
\n );\n};\n\nexport default FormContext;\n","import api from \"config/urls/api\";\n\nimport { useBuyVsBuildApi } from \"./setup\";\nimport { ApiError } from \"./shared\";\n\nexport type Calculation = {\n firstName: string;\n lastName: string;\n email: string;\n currency: string;\n cost: number;\n buildTimeInWeeks: number;\n companyName: string;\n primaryUseCase: string;\n cloudAccountingIntegrations: number;\n desktopAccountingIntegrations: number;\n erpIntegrations: number;\n commerceIntegrations: number;\n bankingIntegrations: number;\n techStack: string;\n};\n\nexport const useSendSummaryEmail = () => {\n return useBuyVsBuildApi(\n {\n url: api.calculation,\n method: \"POST\",\n },\n { manual: true }\n );\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"container\":\"container__vcWMYKp6\",\"form\":\"form__o7apjYgL\",\"resultsPage\":\"resultsPage__TcHiKDmg\",\"progressBar\":\"progressBar__rT3eWiwG\"};","export const NetworkOfLogos = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default NetworkOfLogos;\n","// extracted by mini-css-extract-plugin\nexport default {\"title\":\"title__x1B9G842\",\"container\":\"container__TmgkT0kZ\",\"landingPage\":\"landingPage__FpdGtgTn\",\"splashWrapper\":\"splashWrapper__Vg2GLkyE\",\"blurbHeading\":\"blurbHeading__ErxZqxfP\"};","import { useAnalytics } from \"@codat/analytics\";\nimport { Typography } from \"@codat/orchard-ui\";\nimport { Dispatch, SetStateAction, useEffect } from \"react\";\n\nimport Button from \"components/Button\";\nimport { NetworkOfLogos } from \"components/NetworkOfLogos\";\n\nimport styles from \"./LandingPage.module.scss\";\n\nexport const LandingPage = ({\n onGetStarted,\n}: {\n onGetStarted: Dispatch>;\n}) => {\n const { sendPageViewEvent } = useAnalytics();\n\n useEffect(() => {\n sendPageViewEvent(\"Landing\");\n }, [sendPageViewEvent]);\n\n return (\n
\n
\n
\n \n
\n \n Codat's cost to build calculator\n \n \n Tell us about your project to get a breakdown of how long it could\n take and how much it could cost to build the integrations you need\n from scratch.\n \n onGetStarted((step) => step + 1)}\n buttonName=\"Get Started\"\n />\n
\n
\n
\n
\n );\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"pageContent\":\"pageContent__VVUWoUhb\"};","import { EventContextProvider, useAnalytics } from \"@codat/analytics\";\nimport { useEffect, useState } from \"react\";\nimport { animated, useSpringRef, useTransition } from \"react-spring\";\nimport Cookies from \"universal-cookie\";\n\nimport FormContext from \"components/FormContext/FormContext\";\nimport { LandingPage } from \"components/LandingPage\";\n\nimport styles from \"./Home.module.scss\";\n\nconst Home: React.FC = () => {\n const [showLandingPage, setShowLandingPage] = useState(true);\n const [showForm, setShowForm] = useState(false);\n const fadeRef = useSpringRef();\n const { setUserProperties } = useAnalytics();\n\n const cookies = new Cookies();\n const hubspotCookieValue = cookies.get(\"hubspotutk\");\n const UAClientId = cookies.get(\"_ga\")?.split(\".\").slice(-2).join(\".\");\n\n const handleRest = () => setShowForm(true);\n\n useEffect(() => {\n setUserProperties({\n hubspotId: hubspotCookieValue,\n UAClientId,\n });\n }, [hubspotCookieValue, UAClientId, setUserProperties]);\n\n useEffect(() => {\n fadeRef.start();\n }, [fadeRef, showLandingPage]);\n\n const fade = useTransition(showLandingPage, {\n ref: fadeRef,\n keys: null,\n enter: { opacity: 1 },\n leave: { opacity: 0 },\n onRest: handleRest,\n });\n\n return (\n
\n
\n {fade(\n (style, show) =>\n show && (\n \n \n {\n setShowLandingPage(false);\n }}\n />\n \n \n )\n )}\n {showForm && }\n
\n
\n );\n};\n\nexport default Home;\n","import \"../../../node_modules/@codat/orchard-ui/dist/index.css\";\nimport \"../../index.css\";\n\nimport { AnalyticsProvider } from \"@codat/analytics\";\nimport { OrchardProvider } from \"@codat/orchard-ui\";\nimport * as React from \"react\";\n\nimport config from \"config\";\nimport Home from \"pages/Home\";\n\nimport styles from \"./App.module.scss\";\n\nconst App: React.FC = () => (\n
\n \n \n \n \n \n
\n);\n\nexport default App;\n","// extracted by mini-css-extract-plugin\nexport default {\"app\":\"app__fyIrOXou\"};"],"names":["window","AppConfig","ENVIRONMENT","AMPLITUDE_API_KEY","PUBLIC_API_URL","IDENTITY_SERVER_URL","USER_MANAGEMENT_URL","BUY_VS_BUILD_API_URL","APP_CLIENT_COOKIE_NAME","config","publicInstance","axios","withCredentials","headers","baseURL","buyVsBuildInstance","api","public","instance","useAxios","makeUseAxios","defaultOptions","useCache","buyVsBuild","makeUseApiRequest","serviceName","requestConfig","options","useApiRequest","result","url","resolveConfig","error","data","response","service","statusCode","isAuthError","useBuyVsBuildApi","numberOfEngineers","numberOfBas","numberOfQas","engineerTimeAllocation","baTimeAllocation","qaTimeAllocation","cloudIntegrationInitialTime","desktopIntegrationInitialTime","erpIntegrationInitialTime","commerceIntegrationInitialTime","bankingIntegrationInitialTime","cloudIntegrationSubsequentTime","desktopIntegrationSubsequentTime","erpIntegrationSubsequentTime","commerceIntegrationSubsequentTime","bankingIntegrationSubsequentTime","cloudIntegrationMaintenanceTime","desktopIntegrationMaintenanceTime","erpIntegrationMaintenanceTime","commerceIntegrationMaintenanceTime","bankingIntegrationMaintenanceTime","cloudIntegrationMaintenancePercent","desktopIntegrationMaintenancePercent","erpIntegrationMaintenancePercent","commerceIntegrationMaintenancePercent","bankingIntegrationMaintenancePercent","noExperienceAdditionalTime","legacyTechStackAdditionalTime","calculateCosts","formInputs","salaries","location","engineerTotalSalary","baTotalSalary","supportTotalSalary","qaTotalSalary","getSalaries","initialBuildTime","integrationsInitialTime","getIntegrationTime","cloudAccountingIntegrationsCount","desktopAccountingIntegrationsCount","enterpriseResourcePlannerIntegrationsCount","commerceIntegrationsCount","bankingIntegrationsCount","sumIntegrationsInitialTime","useCase","getUseCaseMultiplier","isExperiencedBuildingIntegrations","techStack","calculateInitialBuildTime","initialBuildCost","timeToBuild","calculateInitialStaffCost","calculateInitialBuildCost","annualMaintenanceTime","sumIntegrationTotalMaintenanceTime","calculateTotalAnnualMaintenanceTime","annualMaintenanceCost","totalMaintenanceTime","engineeringCost","supportPersonnelRequiredPercent","getTotalSupportPersonnelRequiredPercent","calculateAnnualMaintenanceCost","totalYearOneCost","numberOfIntegrations","integrationInitialTime","integrationSubsequentTime","Math","min","max","salary","timeAllocation","numberOfStaff","integrationMaintenanceTime","round","getCountry","country","getCurrency","getHubspotFormData","fields","context","forwardRef","props","ref","buttonName","eventProperties","onClick","buttonProps","sendEvent","useAnalytics","_jsx","OrchardButton","e","Buttons","step","setStep","isAnimating","shouldDisableButton","setShouldDisableButton","useState","showTooltip","setShowTooltip","buttonsRef","useSpringRef","getValues","watch","formState","useFormContext","formValues","integrations","Object","values","integrationsCount","useMemo","reduce","acc","v","Number","hasNextButton","fade","useTransition","keys","from","opacity","enter","leave","position","goToNextStep","useCallback","goToPreviousStep","useEffect","start","steps","COMPANY_DETAILS","companyName","primaryUseCase","INTEGRATIONS_EXPERIENCE","hasExperience","REQUIRED_INTEGRATIONS","CONTACT_DETAILS","isValid","getPrimaryButtonProps","label","type","disabled","currentStep","className","children","_jsxs","_Fragment","style","animated","Button","variant","Tooltip","placement","isOpen","content","onMouseEnter","onMouseLeave","inputName","handleSelectedItemChange","selectInputProps","OrchardSelectInput","selectedItem","value","textInputProps","OrchardTextInput","onFocus","handleOnFocusWithTracking","useCases","StepOne","register","setValue","setError","clearErrors","flagButtonStyles","val","classNames","onCountryClick","Typography","as","styles","TextInput","id","placeholder","required","errors","errorMessage","message","toString","FlagIcon","SelectInput","showLabel","preferredPopoverPositions","items","initialSelectedItem","find","uc","item","onBlur","onChange","OrchardRadioButton","checked","target","StepTwo","Controller","name","render","field","RadioButton","StepThree","inputClassName","description","StepFour","marketingOptIn","onMarketingCheckboxChange","firstName","lastName","pattern","email","Checkbox","Cell","columnDefs","key","component","align","headerAlign","SalaryCell","uk","us","aus","tableRows","title","salaryUS","salaryUK","salaryAus","buildTime","maintenanceTime","map","TeamMembers","DataTable","rowsInfo","IntegrationTypeCell","banking","cloud","desktop","commerce","erp","ComplexityCell","lowerComplexity","higherComplexity","InitialIntegrationBuildTimeCell","oneWeek","twoWeeks","fourWeeks","sixWeeks","SubsequentIntegrationsBuildTimeCell","onePointFiveWeeks","threeWeeks","fourPointFiveWeeks","MaintenanceEngineeringTimeCell","MaintenancePercentageSupportEngineerTimeCell","fivePercent","sevenPointFivePercent","IntegrationTypes","UseCaseCell","dashboarding","underwriting","expense","payablesAndReceivables","other","BuildTimeCell","UseCases","TechStackConditionCell","cloudBasedInfrastructure","onPremInfrastructure","zeroWeeks","TechStackConditions","IntegrationExperienceCell","previousExperience","noExperience","IntegrationExperiences","formatAsCurrency","currency","Intl","NumberFormat","minimumFractionDigits","maximumFractionDigits","format","getUseCase","Results","calculatorInputs","cloudAccounting","desktopAccounting","sendAccordionClickEvent","toFixed","href","Accordion","header","tableStyles","defaultValues","forms","FormContext","setIsAnimating","sendSummaryEmail","method","manual","form","useForm","mode","transRef","handleRest","state","RESULTS","transitions","transform","trail","onRest","FormProvider","onSubmit","handleSubmit","async","formData","calculationResults","cloudAccountingIntegrations","desktopAccountingIntegrations","enterpriseResourcePlannerIntegrations","commerceIntegrations","bankingIntegrations","objectTypeId","formatHubspotFormFields","hutk","Cookies","get","pageUri","origin","pageName","fetch","body","JSON","stringify","erpIntegrations","cost","buildTimeInWeeks","err","console","StepProgressBar","length","color","i","FormStep","NetworkOfLogos","viewBox","fill","xmlns","xmlnsXlink","d","stroke","strokeWidth","filter","strokeMiterlimit","strokeLinecap","strokeLinejoin","x","y","width","height","rx","shapeRendering","fillRule","clipRule","clipPath","cx","cy","r","ry","filterUnits","colorInterpolationFilters","floodOpacity","in","in2","dx","stdDeviation","dy","operator","patternContentUnits","xlinkHref","LandingPage","onGetStarted","sendPageViewEvent","Home","showLandingPage","setShowLandingPage","showForm","setShowForm","fadeRef","setUserProperties","cookies","hubspotCookieValue","UAClientId","split","slice","join","hubspotId","show","EventContextProvider","App","OrchardProvider","appId","AnalyticsProvider","appName","apiKey"],"sourceRoot":""}