@remoteoss/remote-flows 1.48.0 → 1.49.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CheckboxFieldDefault-JXNMWIRK.js +2 -0
- package/dist/CountryFieldDefault-SO4WS7KE.js +2 -0
- package/dist/DatePickerFieldDefault-AZHJN2U6.js +2 -0
- package/dist/FileUploadFieldDefault-QHOKNCU2.js +2 -0
- package/dist/ForcedValueFieldDefault-BEOC4MYU.js +2 -0
- package/dist/MultiSelectFieldDefault-QKXVTGF2.js +2 -0
- package/dist/RadioGroupFieldDefault-ZHHXDUUU.js +2 -0
- package/dist/SelectFieldDefault-FWQ7D6DU.js +2 -0
- package/dist/TelFieldDefault-RA7IBELJ.js +2 -0
- package/dist/TextAreaFieldDefault-NEFWXEE2.js +2 -0
- package/dist/TextFieldDefault-RXNU36AX.js +2 -0
- package/dist/TimeFieldDefault-KIJNBWYF.js +2 -0
- package/dist/ZendeskTriggerButtonDefault-L4BVVXHA.js +2 -0
- package/dist/ZendeskTriggerButtonDefault-L4BVVXHA.js.map +1 -0
- package/dist/{chunk-364G255Q.js → chunk-2IL6T6EB.js} +2 -2
- package/dist/{chunk-5IMEZZMR.js → chunk-2LR5N626.js} +2 -2
- package/dist/{chunk-4E5YP5GD.js → chunk-36GVXD2Z.js} +2 -2
- package/dist/{chunk-WI4YITIC.js → chunk-3VTHNE4H.js} +2 -2
- package/dist/{chunk-ISETCY2V.js → chunk-4O5HJBUC.js} +2 -2
- package/dist/{chunk-CHTCJQJ3.js → chunk-4ONGXCN3.js} +2 -2
- package/dist/{chunk-NKGJZNXL.js → chunk-4XK4QHOA.js} +2 -2
- package/dist/{chunk-TFBJMECV.js → chunk-4Y2INBAI.js} +2 -2
- package/dist/{chunk-RJ7BWEDB.js → chunk-5AF5WV3R.js} +2 -2
- package/dist/{chunk-FXVLXN2B.js → chunk-5BIMRKQB.js} +2 -2
- package/dist/chunk-5FEJD2N7.js +2 -0
- package/dist/chunk-5FEJD2N7.js.map +1 -0
- package/dist/{chunk-VY64RMAF.js → chunk-5IRUNNZB.js} +2 -2
- package/dist/{chunk-Q2JINYSB.js → chunk-5MH23AST.js} +2 -2
- package/dist/chunk-5TOSVOLY.js +2 -0
- package/dist/chunk-5TOSVOLY.js.map +1 -0
- package/dist/{chunk-4F7TGLUT.js → chunk-64C6G646.js} +2 -2
- package/dist/chunk-6AHENEHD.js +2 -0
- package/dist/chunk-6AHENEHD.js.map +1 -0
- package/dist/{chunk-7YACR6OA.js → chunk-6IDUDCVS.js} +2 -2
- package/dist/{chunk-X536XUYT.js → chunk-6IQJJCQ3.js} +2 -2
- package/dist/chunk-6L77BWCI.js +2 -0
- package/dist/{chunk-UOA3M7EJ.js.map → chunk-6L77BWCI.js.map} +1 -1
- package/dist/{chunk-5YOH2HJ5.js → chunk-6S5Q2OKC.js} +2 -2
- package/dist/{chunk-CNQXPZJB.js → chunk-6THYSEJ7.js} +2 -2
- package/dist/{chunk-RPRRMRCO.js → chunk-6WO4PRGN.js} +2 -2
- package/dist/{chunk-3YILMVSP.js → chunk-7GO4BHOI.js} +2 -2
- package/dist/{chunk-4IDFJ6DS.js → chunk-7HGU72GB.js} +2 -2
- package/dist/chunk-7IIQUZTH.js +2 -0
- package/dist/chunk-7IIQUZTH.js.map +1 -0
- package/dist/{chunk-AFKB7Z3G.js → chunk-AP6MKHTF.js} +2 -2
- package/dist/{chunk-YQZ3B2CT.js → chunk-B5GH36QL.js} +2 -2
- package/dist/{chunk-VBWACHT3.js → chunk-BQNZUM27.js} +2 -2
- package/dist/{chunk-GVQ7UXVW.js → chunk-BVMAUJC2.js} +2 -2
- package/dist/{chunk-GTZ35W3E.js → chunk-BWM2MYPE.js} +2 -2
- package/dist/{chunk-VWWVLK5C.js → chunk-C2HZNBMZ.js} +2 -2
- package/dist/{chunk-WXTEP5PE.js → chunk-CNSE26GY.js} +2 -2
- package/dist/chunk-CQVOBIXJ.js +2 -0
- package/dist/chunk-CQVOBIXJ.js.map +1 -0
- package/dist/{chunk-C3YSF5RT.js → chunk-CRH5V5JI.js} +2 -2
- package/dist/{chunk-ZGGEJ3FD.js → chunk-CSXL7LMW.js} +2 -2
- package/dist/{chunk-DHS5QMH6.js → chunk-D5LOZT54.js} +2 -2
- package/dist/chunk-DN6BXTAC.js +2 -0
- package/dist/{chunk-6VBUWE25.js → chunk-DSYQY3K6.js} +2 -2
- package/dist/{chunk-UEJU2A57.js → chunk-EEZFRK2I.js} +2 -2
- package/dist/{chunk-FJNQ64SB.js → chunk-F3UUYQGY.js} +2 -2
- package/dist/{chunk-7EOTDIJI.js → chunk-F7ZDULRC.js} +2 -2
- package/dist/{chunk-HNJ7ZFEU.js → chunk-FDTOQHOJ.js} +2 -2
- package/dist/{chunk-OPGC7BSY.js → chunk-FJD5GFO4.js} +2 -2
- package/dist/{chunk-Q4X35JRA.js → chunk-FORYAPUZ.js} +2 -2
- package/dist/{chunk-7G6XS63Q.js → chunk-GJJFAGAC.js} +2 -2
- package/dist/chunk-GKSG4TTI.js +2 -0
- package/dist/{chunk-GMCJXDUP.js.map → chunk-GKSG4TTI.js.map} +1 -1
- package/dist/{chunk-GSGCFKOZ.js → chunk-GM3UWUVL.js} +2 -2
- package/dist/chunk-GPWQPJQ7.js +2 -0
- package/dist/chunk-GPWQPJQ7.js.map +1 -0
- package/dist/{chunk-7PWXGPXZ.js → chunk-H5OZSXSY.js} +2 -2
- package/dist/{chunk-U74P6WCT.js → chunk-I4CKTODX.js} +2 -2
- package/dist/{chunk-XGECMN4V.js → chunk-IF42CZJH.js} +2 -2
- package/dist/{chunk-7ZQYMDNU.js → chunk-ILX6RI7K.js} +2 -2
- package/dist/{chunk-ZMBPKARZ.js → chunk-IUY4BDUY.js} +2 -2
- package/dist/chunk-IXS65MGJ.js +2 -0
- package/dist/chunk-IXS65MGJ.js.map +1 -0
- package/dist/{chunk-RDDQ5XMI.js → chunk-J5BG6GTH.js} +2 -2
- package/dist/chunk-JKHJR6HK.js +2 -0
- package/dist/chunk-JKHJR6HK.js.map +1 -0
- package/dist/{chunk-HCL7WLOR.js → chunk-JLM4O7ZW.js} +2 -2
- package/dist/{chunk-H3JVB7GS.js → chunk-JMFCG5KA.js} +2 -2
- package/dist/{chunk-2FI5CCXQ.js → chunk-JQ3SLOUP.js} +2 -2
- package/dist/{chunk-KBD6W5FL.js → chunk-KJCCB44M.js} +2 -2
- package/dist/chunk-KPJ5YKXS.js +2 -0
- package/dist/{chunk-QN6OMOUW.js.map → chunk-KPJ5YKXS.js.map} +1 -1
- package/dist/{chunk-KFTMJ253.js → chunk-KX4JZXZV.js} +2 -2
- package/dist/{chunk-5BJXFWKN.js → chunk-KZ5ZQTBF.js} +2 -2
- package/dist/{chunk-B7XTWLRI.js → chunk-LBNS4VT7.js} +2 -2
- package/dist/{chunk-PQHXX3ZN.js → chunk-LF3FMXGV.js} +2 -2
- package/dist/chunk-M3TA5X2H.js +2 -0
- package/dist/chunk-M3TA5X2H.js.map +1 -0
- package/dist/chunk-MXF3IXNU.js +2 -0
- package/dist/{chunk-SL5WZ76A.js.map → chunk-MXF3IXNU.js.map} +1 -1
- package/dist/chunk-MYO3DIES.js +2 -0
- package/dist/chunk-MYO3DIES.js.map +1 -0
- package/dist/{chunk-MS63VN5N.js → chunk-MZUPTP2B.js} +2 -2
- package/dist/{chunk-JBAKDTGM.js → chunk-NF2WEMTU.js} +2 -2
- package/dist/chunk-NPVSJYM6.js +2 -0
- package/dist/chunk-NPVSJYM6.js.map +1 -0
- package/dist/{chunk-FLX72WFD.js → chunk-OU2JUD4J.js} +2 -2
- package/dist/{chunk-CETQLSZY.js → chunk-OUUH3EQY.js} +2 -2
- package/dist/{chunk-VT5V3C6T.js → chunk-PFNDDLHG.js} +2 -2
- package/dist/chunk-POWC7LZN.js +2 -0
- package/dist/chunk-POWC7LZN.js.map +1 -0
- package/dist/{chunk-JP5GXWXT.js → chunk-PRFHWAQZ.js} +2 -2
- package/dist/{chunk-IN6QZASY.js → chunk-QEHEOSJT.js} +2 -2
- package/dist/{chunk-QA6YA4OB.js → chunk-QHJ3BYJN.js} +2 -2
- package/dist/chunk-QSF4XFSV.js +2 -0
- package/dist/{chunk-QJHSN6MG.js.map → chunk-QSF4XFSV.js.map} +1 -1
- package/dist/{chunk-EP3DUVMU.js → chunk-QYKJU45J.js} +2 -2
- package/dist/chunk-R4J4TF5F.js +2 -0
- package/dist/chunk-R4J4TF5F.js.map +1 -0
- package/dist/{chunk-76TJCXAW.js → chunk-RK5ZEDOE.js} +2 -2
- package/dist/{chunk-6VEWI4G2.js → chunk-RKP7EEAB.js} +2 -2
- package/dist/{chunk-32UP2UFU.js → chunk-RRZRQAIT.js} +2 -2
- package/dist/{chunk-UTQDJNOV.js → chunk-S2QXSX4Q.js} +2 -2
- package/dist/{chunk-XAIBLWDF.js → chunk-SH35XDFY.js} +2 -2
- package/dist/{chunk-ONUE4K6F.js → chunk-SXPBC2FP.js} +2 -2
- package/dist/{chunk-TYCOSAU4.js → chunk-TO2GYQR2.js} +2 -2
- package/dist/{chunk-TVNBMBTY.js → chunk-TWLFK7DD.js} +2 -2
- package/dist/chunk-TXOCMI5I.js +2 -0
- package/dist/{chunk-LWLFJAG6.js.map → chunk-TXOCMI5I.js.map} +1 -1
- package/dist/{chunk-DH2NHUZU.js → chunk-TZRUHUW5.js} +2 -2
- package/dist/{chunk-WXKFXIMQ.js → chunk-U6SMLAQI.js} +2 -2
- package/dist/{chunk-OKABTWB3.js → chunk-UUN3PLDE.js} +2 -2
- package/dist/{chunk-OK2ZZ6NK.js → chunk-V2KDZU2F.js} +2 -2
- package/dist/{chunk-XI55YG73.js → chunk-VNMUML3T.js} +2 -2
- package/dist/{chunk-XI55YG73.js.map → chunk-VNMUML3T.js.map} +1 -1
- package/dist/{chunk-PZWP6ZVL.js → chunk-VQVE3QA2.js} +2 -2
- package/dist/{chunk-KBYI7L5E.js → chunk-WGDZTF7Y.js} +2 -2
- package/dist/{chunk-Q2MGM4I2.js → chunk-X7FILZJH.js} +2 -2
- package/dist/{chunk-OLBMZGOC.js → chunk-X7HD2YL7.js} +2 -2
- package/dist/{chunk-SNEUIWQE.js → chunk-XTVXWH3Q.js} +2 -2
- package/dist/chunk-XXQBX7ND.js +2 -0
- package/dist/chunk-XXQBX7ND.js.map +1 -0
- package/dist/{chunk-EACCMXD5.js → chunk-YLSASLPB.js} +2 -2
- package/dist/{chunk-5OEO67O2.js → chunk-ZAOE2DGD.js} +2 -2
- package/dist/{chunk-XCQI5O67.js → chunk-ZYDBHR63.js} +2 -2
- package/dist/chunk-ZZLLPFLS.js +2 -0
- package/dist/{chunk-WLZRAEPQ.js.map → chunk-ZZLLPFLS.js.map} +1 -1
- package/dist/default-components.d.ts +2 -2
- package/dist/default-components.js +1 -1
- package/dist/default-components.js.map +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.d.ts +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +3 -3
- package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentForm.d.ts +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
- package/dist/flows/ContractAmendment/context.d.ts +3 -3
- package/dist/flows/ContractAmendment/hooks.d.ts +3 -3
- package/dist/flows/ContractAmendment/hooks.js +1 -1
- package/dist/flows/ContractAmendment/index.d.ts +3 -3
- package/dist/flows/ContractAmendment/index.js +1 -1
- package/dist/flows/ContractAmendment/types.d.ts +3 -3
- package/dist/flows/ContractAmendment/utils.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/ContractorOnboarding.d.ts +6 -5
- package/dist/flows/ContractorOnboarding/ContractorOnboarding.js +1 -1
- package/dist/flows/ContractorOnboarding/api.d.ts +445 -192
- package/dist/flows/ContractorOnboarding/api.js +1 -1
- package/dist/flows/ContractorOnboarding/components/BasicInformationStep.d.ts +4 -4
- package/dist/flows/ContractorOnboarding/components/BasicInformationStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.d.ts +6 -5
- package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/ContractOriginStep.d.ts +3 -3
- package/dist/flows/ContractorOnboarding/components/ContractOriginStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/ContractPreviewHeader.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/ContractPreviewStatement.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.d.ts +6 -5
- package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.d.ts +6 -5
- package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.js +1 -1
- package/dist/flows/ContractorOnboarding/components/CreateInvoiceScheduleStep.d.ts +23 -0
- package/dist/flows/ContractorOnboarding/components/CreateInvoiceScheduleStep.js +2 -0
- package/dist/flows/ContractorOnboarding/components/CreateInvoiceScheduleStep.js.map +1 -0
- package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.d.ts +6 -5
- package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/InvoiceScheduleStep.d.ts +28 -0
- package/dist/flows/ContractorOnboarding/components/InvoiceScheduleStep.js +2 -0
- package/dist/flows/ContractorOnboarding/components/InvoiceScheduleStep.js.map +1 -0
- package/dist/flows/ContractorOnboarding/components/OnboardingInvite.d.ts +3 -3
- package/dist/flows/ContractorOnboarding/components/OnboardingInvite.js +1 -1
- package/dist/flows/ContractorOnboarding/components/PricingPlan.d.ts +6 -5
- package/dist/flows/ContractorOnboarding/components/PricingPlan.js +1 -1
- package/dist/flows/ContractorOnboarding/components/SaveDraftButton.d.ts +3 -3
- package/dist/flows/ContractorOnboarding/components/SelectCountryStep.d.ts +4 -4
- package/dist/flows/ContractorOnboarding/components/SelectCountryStep.js +1 -1
- package/dist/flows/ContractorOnboarding/context.d.ts +32 -14
- package/dist/flows/ContractorOnboarding/hooks.d.ts +7 -6
- package/dist/flows/ContractorOnboarding/hooks.js +1 -1
- package/dist/flows/ContractorOnboarding/index.d.ts +6 -5
- package/dist/flows/ContractorOnboarding/index.js +1 -1
- package/dist/flows/ContractorOnboarding/invoiceScheduleConstants.d.ts +15 -0
- package/dist/flows/ContractorOnboarding/invoiceScheduleConstants.js +2 -0
- package/dist/flows/ContractorOnboarding/invoiceScheduleConstants.js.map +1 -0
- package/dist/flows/ContractorOnboarding/jsfModify.d.ts +6 -5
- package/dist/flows/ContractorOnboarding/jsfModify.js +1 -1
- package/dist/flows/ContractorOnboarding/json-schemas/createInvoiceSchedule.d.ts +103 -0
- package/dist/flows/ContractorOnboarding/json-schemas/createInvoiceSchedule.js +2 -0
- package/dist/flows/ContractorOnboarding/json-schemas/createInvoiceSchedule.js.map +1 -0
- package/dist/flows/ContractorOnboarding/json-schemas/invoiceSchedule.d.ts +28 -0
- package/dist/flows/ContractorOnboarding/json-schemas/invoiceSchedule.js +2 -0
- package/dist/flows/ContractorOnboarding/json-schemas/invoiceSchedule.js.map +1 -0
- package/dist/flows/ContractorOnboarding/types.d.ts +6 -5
- package/dist/flows/ContractorOnboarding/utils.d.ts +24 -6
- package/dist/flows/ContractorOnboarding/utils.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +3 -3
- package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +3 -3
- package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
- package/dist/flows/CostCalculator/EstimationResults/EstimationResults.d.ts +3 -3
- package/dist/flows/CostCalculator/EstimationResults/EstimationResults.js +1 -1
- package/dist/flows/CostCalculator/SummaryResults/SummaryResults.d.ts +3 -3
- package/dist/flows/CostCalculator/api.d.ts +3 -3
- package/dist/flows/CostCalculator/api.js +1 -1
- package/dist/flows/CostCalculator/components/SalaryField.d.ts +2 -2
- package/dist/flows/CostCalculator/components/SalaryField.js +1 -1
- package/dist/flows/CostCalculator/context.d.ts +3 -3
- package/dist/flows/CostCalculator/hooks.d.ts +3 -3
- package/dist/flows/CostCalculator/hooks.js +1 -1
- package/dist/flows/CostCalculator/index.d.ts +3 -3
- package/dist/flows/CostCalculator/index.js +1 -1
- package/dist/flows/CostCalculator/types.d.ts +3 -3
- package/dist/flows/CostCalculator/utils.d.ts +3 -3
- package/dist/flows/CostCalculator/utils.js +1 -1
- package/dist/flows/CreateCompany/CreateCompany.d.ts +4 -4
- package/dist/flows/CreateCompany/CreateCompany.js +1 -1
- package/dist/flows/CreateCompany/api.d.ts +3 -3
- package/dist/flows/CreateCompany/api.js +1 -1
- package/dist/flows/CreateCompany/components/AddressDetailsStep.d.ts +4 -4
- package/dist/flows/CreateCompany/components/AddressDetailsStep.js +1 -1
- package/dist/flows/CreateCompany/components/CompanyBasicInformationStep.d.ts +4 -4
- package/dist/flows/CreateCompany/components/CompanyBasicInformationStep.js +1 -1
- package/dist/flows/CreateCompany/components/CreateCompanyForm.d.ts +2 -2
- package/dist/flows/CreateCompany/components/CreateCompanyForm.js +1 -1
- package/dist/flows/CreateCompany/context.d.ts +4 -4
- package/dist/flows/CreateCompany/hooks.d.ts +4 -4
- package/dist/flows/CreateCompany/hooks.js +1 -1
- package/dist/flows/CreateCompany/index.d.ts +4 -4
- package/dist/flows/CreateCompany/index.js +1 -1
- package/dist/flows/CreateCompany/types.d.ts +4 -4
- package/dist/flows/JsonSchemaPlayground/JsonSchemaPlaygroundFlow.d.ts +3 -3
- package/dist/flows/JsonSchemaPlayground/JsonSchemaPlaygroundFlow.js +1 -1
- package/dist/flows/JsonSchemaPlayground/JsonSchemaPlaygroundForm.d.ts +2 -2
- package/dist/flows/JsonSchemaPlayground/JsonSchemaPlaygroundForm.js +1 -1
- package/dist/flows/JsonSchemaPlayground/context.d.ts +3 -3
- package/dist/flows/JsonSchemaPlayground/hooks.d.ts +3 -3
- package/dist/flows/JsonSchemaPlayground/index.d.ts +3 -3
- package/dist/flows/JsonSchemaPlayground/index.js +1 -1
- package/dist/flows/JsonSchemaPlayground/types.d.ts +3 -3
- package/dist/flows/Onboarding/OnboardingFlow.d.ts +4 -4
- package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
- package/dist/flows/Onboarding/api.d.ts +4 -4
- package/dist/flows/Onboarding/api.js +1 -1
- package/dist/flows/Onboarding/components/AnnualGrossSalary.d.ts +2 -2
- package/dist/flows/Onboarding/components/AnnualGrossSalary.js +1 -1
- package/dist/flows/Onboarding/components/BasicInformationStep.d.ts +4 -4
- package/dist/flows/Onboarding/components/BasicInformationStep.js +1 -1
- package/dist/flows/Onboarding/components/BenefitsStep.d.ts +4 -4
- package/dist/flows/Onboarding/components/BenefitsStep.js +1 -1
- package/dist/flows/Onboarding/components/ContractDetailsStep.d.ts +4 -4
- package/dist/flows/Onboarding/components/ContractDetailsStep.js +1 -1
- package/dist/flows/Onboarding/components/EmploymentAgreementInfoContent.js +1 -1
- package/dist/flows/Onboarding/components/EngagementAgreementDetailsStep.d.ts +4 -4
- package/dist/flows/Onboarding/components/EngagementAgreementDetailsStep.js +1 -1
- package/dist/flows/Onboarding/components/OnboardingForm.d.ts +4 -4
- package/dist/flows/Onboarding/components/OnboardingForm.js +1 -1
- package/dist/flows/Onboarding/components/OnboardingInvite.d.ts +3 -3
- package/dist/flows/Onboarding/components/OnboardingInvite.js +1 -1
- package/dist/flows/Onboarding/components/PreOnboardingRequirements.d.ts +4 -4
- package/dist/flows/Onboarding/components/PreOnboardingRequirements.js +1 -1
- package/dist/flows/Onboarding/components/PreviewEmploymentAgreementStep.js +1 -1
- package/dist/flows/Onboarding/components/ReviewStep.d.ts +4 -4
- package/dist/flows/Onboarding/components/SaveDraftButton.d.ts +3 -3
- package/dist/flows/Onboarding/components/SelectCountryStep.d.ts +4 -4
- package/dist/flows/Onboarding/components/SelectCountryStep.js +1 -1
- package/dist/flows/Onboarding/context.d.ts +4 -4
- package/dist/flows/Onboarding/hooks.d.ts +4 -4
- package/dist/flows/Onboarding/hooks.js +1 -1
- package/dist/flows/Onboarding/index.d.ts +4 -4
- package/dist/flows/Onboarding/index.js +1 -1
- package/dist/flows/Onboarding/types.d.ts +4 -4
- package/dist/flows/Onboarding/utils.d.ts +4 -4
- package/dist/flows/PayrollAdminOnboarding/PayrollAdminOnboardingFlow.d.ts +4 -4
- package/dist/flows/PayrollAdminOnboarding/PayrollAdminOnboardingFlow.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/api.d.ts +2 -2
- package/dist/flows/PayrollAdminOnboarding/api.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/AdministrativeDetailsStep.d.ts +3 -3
- package/dist/flows/PayrollAdminOnboarding/components/AdministrativeDetailsStep.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/ContractDetailsStep.d.ts +3 -3
- package/dist/flows/PayrollAdminOnboarding/components/ContractDetailsStep.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/InvitationStep.d.ts +3 -3
- package/dist/flows/PayrollAdminOnboarding/components/InvitationStep.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/PayrollAdminForm.d.ts +2 -2
- package/dist/flows/PayrollAdminOnboarding/components/PayrollAdminForm.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/SelectCountryStep.d.ts +3 -3
- package/dist/flows/PayrollAdminOnboarding/components/SelectCountryStep.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/useStepSubmitHandler.d.ts +3 -3
- package/dist/flows/PayrollAdminOnboarding/context.d.ts +4 -4
- package/dist/flows/PayrollAdminOnboarding/hooks.d.ts +4 -4
- package/dist/flows/PayrollAdminOnboarding/hooks.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/index.d.ts +4 -4
- package/dist/flows/PayrollAdminOnboarding/index.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/types.d.ts +4 -4
- package/dist/flows/PayrollEmployeeOnboarding/PayrollEmployeeOnboardingFlow.d.ts +4 -4
- package/dist/flows/PayrollEmployeeOnboarding/PayrollEmployeeOnboardingFlow.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/api.d.ts +3 -3
- package/dist/flows/PayrollEmployeeOnboarding/api.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/BankAccountStep.d.ts +3 -3
- package/dist/flows/PayrollEmployeeOnboarding/components/BankAccountStep.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/FederalTaxesStep.d.ts +3 -3
- package/dist/flows/PayrollEmployeeOnboarding/components/FederalTaxesStep.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/HomeAddressStep.d.ts +3 -3
- package/dist/flows/PayrollEmployeeOnboarding/components/HomeAddressStep.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/PayrollEmployeeForm.d.ts +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/components/PayrollEmployeeForm.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/PersonalDetailsStep.d.ts +3 -3
- package/dist/flows/PayrollEmployeeOnboarding/components/PersonalDetailsStep.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/StateTaxesStep.d.ts +3 -3
- package/dist/flows/PayrollEmployeeOnboarding/components/StateTaxesStep.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/useEmployeeStepSubmitHandler.d.ts +3 -3
- package/dist/flows/PayrollEmployeeOnboarding/context.d.ts +4 -4
- package/dist/flows/PayrollEmployeeOnboarding/hooks.d.ts +4 -4
- package/dist/flows/PayrollEmployeeOnboarding/hooks.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/index.d.ts +4 -4
- package/dist/flows/PayrollEmployeeOnboarding/index.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/types.d.ts +4 -4
- package/dist/flows/Termination/AdditionalDetailsForm.d.ts +4 -4
- package/dist/flows/Termination/AdditionalDetailsForm.js +1 -1
- package/dist/flows/Termination/EmployeeComunicationForm.d.ts +4 -4
- package/dist/flows/Termination/EmployeeComunicationForm.js +1 -1
- package/dist/flows/Termination/PaidTimeOffForm.d.ts +4 -4
- package/dist/flows/Termination/PaidTimeOffForm.js +1 -1
- package/dist/flows/Termination/TerminationDetailsForm.d.ts +4 -4
- package/dist/flows/Termination/TerminationDetailsForm.js +1 -1
- package/dist/flows/Termination/TerminationFlow.d.ts +4 -4
- package/dist/flows/Termination/TerminationFlow.js +1 -1
- package/dist/flows/Termination/TerminationForm.d.ts +4 -4
- package/dist/flows/Termination/TerminationForm.js +1 -1
- package/dist/flows/Termination/api.d.ts +5 -5
- package/dist/flows/Termination/api.js +1 -1
- package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInformationFees.js +1 -1
- package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOff.d.ts +6 -6
- package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.d.ts +6 -6
- package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.js +1 -1
- package/dist/flows/Termination/components/PaidTimeOff/types.d.ts +6 -6
- package/dist/flows/Termination/components/TerminationDialogInfoContent/TerminationDialogInfoContent.js +1 -1
- package/dist/flows/Termination/context.d.ts +4 -4
- package/dist/flows/Termination/hooks.d.ts +4 -4
- package/dist/flows/Termination/hooks.js +1 -1
- package/dist/flows/Termination/index.d.ts +6 -6
- package/dist/flows/Termination/index.js +1 -1
- package/dist/flows/Termination/json-schemas/jsonSchema.js +1 -1
- package/dist/flows/Termination/json-schemas/schema.d.ts +4 -4
- package/dist/flows/Termination/json-schemas/schema.js +1 -1
- package/dist/flows/Termination/types.d.ts +4 -4
- package/dist/flows/Termination/utils.d.ts +4 -4
- package/dist/flows/types.d.ts +8 -3
- package/dist/flows/useStepState.js +1 -1
- package/dist/flows/utils.d.ts +2 -2
- package/dist/index.d.ts +16 -14
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/internals.d.ts +4 -4
- package/dist/internals.js +1 -1
- package/dist/{mutations-D7wGden5.d.ts → mutations-DQjVuza-.d.ts} +1 -1
- package/dist/{remoteFlows-Do_hGrKi.d.ts → remoteFlows-B_JbhzWp.d.ts} +28 -2
- package/dist/{types-BSn99OzF.d.ts → types-1mH_uuoA.d.ts} +2 -2
- package/dist/{types-CZpddZC4.d.ts → types-B0iYt6RL.d.ts} +63 -14
- package/dist/{types-BhMTFN9Y.d.ts → types-B93nzmoE.d.ts} +1 -1
- package/dist/{types-CiQ08J9g.d.ts → types-BFzhRUSU.d.ts} +2 -2
- package/dist/{types-aNjp47fZ.d.ts → types-CdC2MYpf.d.ts} +2 -2
- package/dist/{types-BpETJhdu.d.ts → types-Clzf4xjV.d.ts} +3 -3
- package/dist/{types-BgwIacP2.d.ts → types-CoYsxVTI.d.ts} +1 -1
- package/dist/{types-CzmaeZs2.d.ts → types-D3U8Wi3X.d.ts} +3 -3
- package/dist/{types.gen-C4K7xky-.d.ts → types.gen-BmtA4XNd.d.ts} +230 -1
- package/dist/{utils-BU5K1WH5.d.ts → utils-DJgzqxq4.d.ts} +1 -1
- package/package.json +1 -1
- package/dist/CheckboxFieldDefault-6B33T4XR.js +0 -2
- package/dist/CountryFieldDefault-TVGOKASR.js +0 -2
- package/dist/DatePickerFieldDefault-TH427OH5.js +0 -2
- package/dist/FileUploadFieldDefault-WB7ITN3G.js +0 -2
- package/dist/ForcedValueFieldDefault-QH76S3ZL.js +0 -2
- package/dist/MultiSelectFieldDefault-T26SUE3J.js +0 -2
- package/dist/RadioGroupFieldDefault-ZNWHLCZP.js +0 -2
- package/dist/SelectFieldDefault-LFXATOYZ.js +0 -2
- package/dist/TelFieldDefault-4FJVSZRV.js +0 -2
- package/dist/TextAreaFieldDefault-QRU4Z4V2.js +0 -2
- package/dist/TextFieldDefault-LFKGGEU3.js +0 -2
- package/dist/TimeFieldDefault-RU75LZ2T.js +0 -2
- package/dist/chunk-3OLZMSGR.js +0 -2
- package/dist/chunk-3OLZMSGR.js.map +0 -1
- package/dist/chunk-5MPW7QWT.js +0 -2
- package/dist/chunk-7RLRU3VM.js +0 -2
- package/dist/chunk-7RLRU3VM.js.map +0 -1
- package/dist/chunk-7UWA3JTM.js +0 -2
- package/dist/chunk-7UWA3JTM.js.map +0 -1
- package/dist/chunk-GMCJXDUP.js +0 -2
- package/dist/chunk-LWLFJAG6.js +0 -2
- package/dist/chunk-MREG2JYT.js +0 -2
- package/dist/chunk-MREG2JYT.js.map +0 -1
- package/dist/chunk-PJ2MZ6FH.js +0 -2
- package/dist/chunk-PJ2MZ6FH.js.map +0 -1
- package/dist/chunk-QJHSN6MG.js +0 -2
- package/dist/chunk-QN6OMOUW.js +0 -2
- package/dist/chunk-SL5WZ76A.js +0 -2
- package/dist/chunk-UOA3M7EJ.js +0 -2
- package/dist/chunk-WLZRAEPQ.js +0 -2
- package/dist/chunk-XPVYX7LE.js +0 -2
- package/dist/chunk-XPVYX7LE.js.map +0 -1
- package/dist/chunk-XZMPAJRL.js +0 -2
- package/dist/chunk-XZMPAJRL.js.map +0 -1
- /package/dist/{CheckboxFieldDefault-6B33T4XR.js.map → CheckboxFieldDefault-JXNMWIRK.js.map} +0 -0
- /package/dist/{CountryFieldDefault-TVGOKASR.js.map → CountryFieldDefault-SO4WS7KE.js.map} +0 -0
- /package/dist/{DatePickerFieldDefault-TH427OH5.js.map → DatePickerFieldDefault-AZHJN2U6.js.map} +0 -0
- /package/dist/{FileUploadFieldDefault-WB7ITN3G.js.map → FileUploadFieldDefault-QHOKNCU2.js.map} +0 -0
- /package/dist/{ForcedValueFieldDefault-QH76S3ZL.js.map → ForcedValueFieldDefault-BEOC4MYU.js.map} +0 -0
- /package/dist/{MultiSelectFieldDefault-T26SUE3J.js.map → MultiSelectFieldDefault-QKXVTGF2.js.map} +0 -0
- /package/dist/{RadioGroupFieldDefault-ZNWHLCZP.js.map → RadioGroupFieldDefault-ZHHXDUUU.js.map} +0 -0
- /package/dist/{SelectFieldDefault-LFXATOYZ.js.map → SelectFieldDefault-FWQ7D6DU.js.map} +0 -0
- /package/dist/{TelFieldDefault-4FJVSZRV.js.map → TelFieldDefault-RA7IBELJ.js.map} +0 -0
- /package/dist/{TextAreaFieldDefault-QRU4Z4V2.js.map → TextAreaFieldDefault-NEFWXEE2.js.map} +0 -0
- /package/dist/{TextFieldDefault-LFKGGEU3.js.map → TextFieldDefault-RXNU36AX.js.map} +0 -0
- /package/dist/{TimeFieldDefault-RU75LZ2T.js.map → TimeFieldDefault-KIJNBWYF.js.map} +0 -0
- /package/dist/{chunk-364G255Q.js.map → chunk-2IL6T6EB.js.map} +0 -0
- /package/dist/{chunk-5IMEZZMR.js.map → chunk-2LR5N626.js.map} +0 -0
- /package/dist/{chunk-4E5YP5GD.js.map → chunk-36GVXD2Z.js.map} +0 -0
- /package/dist/{chunk-WI4YITIC.js.map → chunk-3VTHNE4H.js.map} +0 -0
- /package/dist/{chunk-ISETCY2V.js.map → chunk-4O5HJBUC.js.map} +0 -0
- /package/dist/{chunk-CHTCJQJ3.js.map → chunk-4ONGXCN3.js.map} +0 -0
- /package/dist/{chunk-NKGJZNXL.js.map → chunk-4XK4QHOA.js.map} +0 -0
- /package/dist/{chunk-TFBJMECV.js.map → chunk-4Y2INBAI.js.map} +0 -0
- /package/dist/{chunk-RJ7BWEDB.js.map → chunk-5AF5WV3R.js.map} +0 -0
- /package/dist/{chunk-FXVLXN2B.js.map → chunk-5BIMRKQB.js.map} +0 -0
- /package/dist/{chunk-VY64RMAF.js.map → chunk-5IRUNNZB.js.map} +0 -0
- /package/dist/{chunk-Q2JINYSB.js.map → chunk-5MH23AST.js.map} +0 -0
- /package/dist/{chunk-4F7TGLUT.js.map → chunk-64C6G646.js.map} +0 -0
- /package/dist/{chunk-7YACR6OA.js.map → chunk-6IDUDCVS.js.map} +0 -0
- /package/dist/{chunk-X536XUYT.js.map → chunk-6IQJJCQ3.js.map} +0 -0
- /package/dist/{chunk-5YOH2HJ5.js.map → chunk-6S5Q2OKC.js.map} +0 -0
- /package/dist/{chunk-CNQXPZJB.js.map → chunk-6THYSEJ7.js.map} +0 -0
- /package/dist/{chunk-RPRRMRCO.js.map → chunk-6WO4PRGN.js.map} +0 -0
- /package/dist/{chunk-3YILMVSP.js.map → chunk-7GO4BHOI.js.map} +0 -0
- /package/dist/{chunk-4IDFJ6DS.js.map → chunk-7HGU72GB.js.map} +0 -0
- /package/dist/{chunk-AFKB7Z3G.js.map → chunk-AP6MKHTF.js.map} +0 -0
- /package/dist/{chunk-YQZ3B2CT.js.map → chunk-B5GH36QL.js.map} +0 -0
- /package/dist/{chunk-VBWACHT3.js.map → chunk-BQNZUM27.js.map} +0 -0
- /package/dist/{chunk-GVQ7UXVW.js.map → chunk-BVMAUJC2.js.map} +0 -0
- /package/dist/{chunk-GTZ35W3E.js.map → chunk-BWM2MYPE.js.map} +0 -0
- /package/dist/{chunk-VWWVLK5C.js.map → chunk-C2HZNBMZ.js.map} +0 -0
- /package/dist/{chunk-WXTEP5PE.js.map → chunk-CNSE26GY.js.map} +0 -0
- /package/dist/{chunk-C3YSF5RT.js.map → chunk-CRH5V5JI.js.map} +0 -0
- /package/dist/{chunk-ZGGEJ3FD.js.map → chunk-CSXL7LMW.js.map} +0 -0
- /package/dist/{chunk-DHS5QMH6.js.map → chunk-D5LOZT54.js.map} +0 -0
- /package/dist/{chunk-5MPW7QWT.js.map → chunk-DN6BXTAC.js.map} +0 -0
- /package/dist/{chunk-6VBUWE25.js.map → chunk-DSYQY3K6.js.map} +0 -0
- /package/dist/{chunk-UEJU2A57.js.map → chunk-EEZFRK2I.js.map} +0 -0
- /package/dist/{chunk-FJNQ64SB.js.map → chunk-F3UUYQGY.js.map} +0 -0
- /package/dist/{chunk-7EOTDIJI.js.map → chunk-F7ZDULRC.js.map} +0 -0
- /package/dist/{chunk-HNJ7ZFEU.js.map → chunk-FDTOQHOJ.js.map} +0 -0
- /package/dist/{chunk-OPGC7BSY.js.map → chunk-FJD5GFO4.js.map} +0 -0
- /package/dist/{chunk-Q4X35JRA.js.map → chunk-FORYAPUZ.js.map} +0 -0
- /package/dist/{chunk-7G6XS63Q.js.map → chunk-GJJFAGAC.js.map} +0 -0
- /package/dist/{chunk-GSGCFKOZ.js.map → chunk-GM3UWUVL.js.map} +0 -0
- /package/dist/{chunk-7PWXGPXZ.js.map → chunk-H5OZSXSY.js.map} +0 -0
- /package/dist/{chunk-U74P6WCT.js.map → chunk-I4CKTODX.js.map} +0 -0
- /package/dist/{chunk-XGECMN4V.js.map → chunk-IF42CZJH.js.map} +0 -0
- /package/dist/{chunk-7ZQYMDNU.js.map → chunk-ILX6RI7K.js.map} +0 -0
- /package/dist/{chunk-ZMBPKARZ.js.map → chunk-IUY4BDUY.js.map} +0 -0
- /package/dist/{chunk-RDDQ5XMI.js.map → chunk-J5BG6GTH.js.map} +0 -0
- /package/dist/{chunk-HCL7WLOR.js.map → chunk-JLM4O7ZW.js.map} +0 -0
- /package/dist/{chunk-H3JVB7GS.js.map → chunk-JMFCG5KA.js.map} +0 -0
- /package/dist/{chunk-2FI5CCXQ.js.map → chunk-JQ3SLOUP.js.map} +0 -0
- /package/dist/{chunk-KBD6W5FL.js.map → chunk-KJCCB44M.js.map} +0 -0
- /package/dist/{chunk-KFTMJ253.js.map → chunk-KX4JZXZV.js.map} +0 -0
- /package/dist/{chunk-5BJXFWKN.js.map → chunk-KZ5ZQTBF.js.map} +0 -0
- /package/dist/{chunk-B7XTWLRI.js.map → chunk-LBNS4VT7.js.map} +0 -0
- /package/dist/{chunk-PQHXX3ZN.js.map → chunk-LF3FMXGV.js.map} +0 -0
- /package/dist/{chunk-MS63VN5N.js.map → chunk-MZUPTP2B.js.map} +0 -0
- /package/dist/{chunk-JBAKDTGM.js.map → chunk-NF2WEMTU.js.map} +0 -0
- /package/dist/{chunk-FLX72WFD.js.map → chunk-OU2JUD4J.js.map} +0 -0
- /package/dist/{chunk-CETQLSZY.js.map → chunk-OUUH3EQY.js.map} +0 -0
- /package/dist/{chunk-VT5V3C6T.js.map → chunk-PFNDDLHG.js.map} +0 -0
- /package/dist/{chunk-JP5GXWXT.js.map → chunk-PRFHWAQZ.js.map} +0 -0
- /package/dist/{chunk-IN6QZASY.js.map → chunk-QEHEOSJT.js.map} +0 -0
- /package/dist/{chunk-QA6YA4OB.js.map → chunk-QHJ3BYJN.js.map} +0 -0
- /package/dist/{chunk-EP3DUVMU.js.map → chunk-QYKJU45J.js.map} +0 -0
- /package/dist/{chunk-76TJCXAW.js.map → chunk-RK5ZEDOE.js.map} +0 -0
- /package/dist/{chunk-6VEWI4G2.js.map → chunk-RKP7EEAB.js.map} +0 -0
- /package/dist/{chunk-32UP2UFU.js.map → chunk-RRZRQAIT.js.map} +0 -0
- /package/dist/{chunk-UTQDJNOV.js.map → chunk-S2QXSX4Q.js.map} +0 -0
- /package/dist/{chunk-XAIBLWDF.js.map → chunk-SH35XDFY.js.map} +0 -0
- /package/dist/{chunk-ONUE4K6F.js.map → chunk-SXPBC2FP.js.map} +0 -0
- /package/dist/{chunk-TYCOSAU4.js.map → chunk-TO2GYQR2.js.map} +0 -0
- /package/dist/{chunk-TVNBMBTY.js.map → chunk-TWLFK7DD.js.map} +0 -0
- /package/dist/{chunk-DH2NHUZU.js.map → chunk-TZRUHUW5.js.map} +0 -0
- /package/dist/{chunk-WXKFXIMQ.js.map → chunk-U6SMLAQI.js.map} +0 -0
- /package/dist/{chunk-OKABTWB3.js.map → chunk-UUN3PLDE.js.map} +0 -0
- /package/dist/{chunk-OK2ZZ6NK.js.map → chunk-V2KDZU2F.js.map} +0 -0
- /package/dist/{chunk-PZWP6ZVL.js.map → chunk-VQVE3QA2.js.map} +0 -0
- /package/dist/{chunk-KBYI7L5E.js.map → chunk-WGDZTF7Y.js.map} +0 -0
- /package/dist/{chunk-Q2MGM4I2.js.map → chunk-X7FILZJH.js.map} +0 -0
- /package/dist/{chunk-OLBMZGOC.js.map → chunk-X7HD2YL7.js.map} +0 -0
- /package/dist/{chunk-SNEUIWQE.js.map → chunk-XTVXWH3Q.js.map} +0 -0
- /package/dist/{chunk-EACCMXD5.js.map → chunk-YLSASLPB.js.map} +0 -0
- /package/dist/{chunk-5OEO67O2.js.map → chunk-ZAOE2DGD.js.map} +0 -0
- /package/dist/{chunk-XCQI5O67.js.map → chunk-ZYDBHR63.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as d,d as S}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{c as d,d as S}from"./chunk-BQNZUM27.js";import{a as u}from"./chunk-HN5HLFTB.js";import{a as f}from"./chunk-KSHK3ZPX.js";import{b as C}from"./chunk-KFYWUBRS.js";import{f as y}from"./chunk-AUPAAQUT.js";import{a as o}from"./chunk-P37U34EQ.js";import{useEffect as T,useId as U,useState as I}from"react";import{jsx as k}from"react/jsx-runtime";var l=o((n,e,r)=>r&&r[e]?r[e]:n[e]?n[e]/100:0,"getDefaultManagementFee"),A=o((n,e,r,g)=>!e&&!r?.management_fee&&n?l(u,n,g):e&&!r?.management_fee?"":r?.management_fee,"getManagementFee"),W=o(({estimationOptions:n=d,defaultValues:e={countryRegionSlug:"",regionSlug:"",currencySlug:"",salary:"",benefits:{},management:{management_fee:""}},options:r,render:g,version:_="standard"})=>{let p=U(),[R,m]=I("USD"),F=o(s=>{m(s);let a=l(u,s,n.managementFees);a&&c.setValue("management.management_fee",a.toString())},"onCurrencyChange"),t=S({defaultRegion:e.countryRegionSlug,defaultCurrency:e.currencySlug,defaultSalary:e.salary,estimationOptions:n,version:_,options:{...r,onCurrencyChange:F}}),K=C(t.handleValidation),b=A(R,e.currencySlug,e.management,n.managementFees),{countryRegionSlug:v,currencySlug:h,salary:D,benefits:P,hiringBudget:B,age:E,contractDurationType:M,regionSlug:w,...x}=e,c=y({resolver:K,defaultValues:{country:v,currency:h,region:w,salary:D,salary_conversion:"",salary_converted:void 0,hiring_budget:B||"employee_annual_salary",age:E,contract_duration_type:M,management:{management_fee:b?.toString()||""},benefits:P,estimation_title:n.title,...x},shouldUnregister:!1,mode:"onBlur"});return T(()=>{if(e.currencySlug&&t.currencies&&n.includeManagementFee&&!e.management?.management_fee){let a=t.currencies.find(i=>i.value===e.currencySlug)?.label;if(a){m(a);let i=l(u,a,n.managementFees);c.setValue("management.management_fee",i?.toString()||"")}}},[e.currencySlug,t.currencies,n.includeManagementFee,n.managementFees,e.management?.management_fee,c]),k(f.Provider,{value:{form:c,formId:p,costCalculatorBag:t},children:g(t)})},"CostCalculatorFlow");export{W as a};
|
|
2
|
+
//# sourceMappingURL=chunk-AP6MKHTF.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-5IRUNNZB.js";import{b as a}from"./chunk-MRYRNB7Y.js";import{a as i}from"./chunk-P37U34EQ.js";import{jsx as s}from"react/jsx-runtime";function d({onSubmit:m}){let{terminationBag:o}=a(),r=i(async t=>{let n=await o?.parseFormValues(t);await m?.(n),o?.next()},"handleSubmit");return s(e,{defaultValues:o.fieldValues,onSubmit:r})}i(d,"PaidTimeOffForm");export{d as a};
|
|
2
|
+
//# sourceMappingURL=chunk-B5GH36QL.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as ee}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as ee}from"./chunk-MXF3IXNU.js";import{a as C}from"./chunk-HN5HLFTB.js";import{a as z}from"./chunk-VFRHMNLJ.js";import{a as W,b as X,c as Y,f as Z}from"./chunk-ILX6RI7K.js";import{a as I}from"./chunk-KFYWUBRS.js";import{c as te}from"./chunk-7HGU72GB.js";import{a as Q}from"./chunk-XFVXRCMH.js";import{b as G,h as M}from"./chunk-C4HFMTSB.js";import{a as o}from"./chunk-P37U34EQ.js";import{number as Te,object as le}from"yup";import{useCallback as we,useEffect as ne,useMemo as Re,useRef as Pe,useState as j}from"react";import{string as re,ValidationError as ie}from"yup";import{jsx as ae}from"react/jsx-runtime";var O={title:"Estimation",includeBenefits:!1,includeCostBreakdowns:!1,includePremiumBenefits:!1,enableCurrencyConversion:!1,includeEstimationTitle:!1,includeManagementFee:!1},xe=o(t=>Q(z.data.schema,void 0,t),"useStaticSchema");function Be(t,i){if(typeof t=="object"&&t!==null&&"title"in t){let l=t.title;if(l)return l}return i==="my_hiring_budget"?"Hiring budget":"Employee's annual salary"}o(Be,"getSalaryTitle");var Qe=o(({defaultRegion:t,defaultCurrency:i,defaultSalary:l,estimationOptions:s,options:n,version:a}={estimationOptions:O})=>{let c=Pe({fields:{}}),[k,h]=j(t),[w,R]=j(),[m,q]=j(),[H,ce]=j(),{data:_,isLoading:ue}=W({includePremiumBenefits:s.includePremiumBenefits}),{data:d,isLoading:me}=X(),de=k||w?.value,{data:P,isLoading:fe}=Z(de,{includePremiumBenefits:s.includePremiumBenefits,options:n}),U=Y(),{mutateAsync:ge}=G(U),b=w?.currency,p=n?.jsfModify?.fields?.salary,F=p&&typeof p=="object"&&"presentation"in p?p.presentation:void 0,L=we(()=>{let e=b&&m?b!==m:!1;return b!==m?{from:m,to:b,shouldSwapOrder:e}:{from:b,to:m,shouldSwapOrder:e}},[b,m]),D=s.showManagementFee,J=s.includeEstimationTitle,$=n?.features?.includes("split_salary_description")??!1,ye=Re(()=>{let{from:e,to:r,shouldSwapOrder:u}=L(),g=Be(p,H);return{fields:{salary:{...p,title:g,presentation:{salary_conversion_properties:{label:F?.salary_conversion_properties?.label,description:F?.salary_conversion_properties?.description},currencies:{from:e,to:r},Component:o(y=>ae(ee,{...y,shouldSwapOrder:u,conversionType:a==="marketing"?"no_spread":"spread",defaultValue:l,splitDescription:$}),"Component")}},hiring_budget:{...n?.jsfModify?.fields?.hiring_budget,presentation:{hidden:a=="marketing"}},management:{...n?.jsfModify?.fields?.management,properties:{...n?.jsfModify?.fields?.management?.properties,management_fee:{...n?.jsfModify?.fields?.management?.properties?.management_fee,"x-jsf-presentation":{inputType:"money",additionalProps:{currency:m||"USD"}}}},presentation:{...typeof n?.jsfModify?.fields?.management=="object"?(n?.jsfModify?.fields?.management)["x-jsf-presentation"]:{},hidden:!D,Component:o(y=>ae(te,{...y,variant:"inset",features:{toggle:{enabled:!0,stateField:"management._expanded",labels:{expand:"Define",collapse:"Remove"}}}}),"Component")}},estimation_title:{...n?.jsfModify?.fields?.estimation_title,"x-jsf-presentation":{hidden:!J}}}}},[L,p,H,F?.salary_conversion_properties?.label,F?.salary_conversion_properties?.description,n?.jsfModify?.fields?.hiring_budget,n?.jsfModify?.fields?.management,n?.jsfModify?.fields?.estimation_title,a,m,D,J,l,$]),f=xe({jsfModify:{fields:{...n?.jsfModify?.fields,...ye?.fields}}});ne(()=>{if(t&&_){let e=_.find(({value:r})=>r===t);e&&R(e)}},[t,_]),ne(()=>{if(i&&d){let e=d.find(({value:r})=>r===i);e&&q(e.label)}},[i,d]);async function pe(e){return ge(se(e,s,a))}o(pe,"onSubmit");function Ce(e){let r=_?.find(({value:u})=>u===e);r&&r.childRegions.length===0&&r.hasAdditionalFields?h(r.regionSlug):h(void 0),R(r)}o(Ce,"onCountryChange");function _e(e){h(e)}o(_e,"onRegionChange");function be(e){ce(e.target.value)}o(be,"onHiringBudgetChange");function Se(e){let r=d?.find(u=>u.value===e)?.label;q(r),n?.onCurrencyChange?.(r||"")}o(Se,"onChangeCurrency");let S=f.fields.find(e=>e.name==="region");if(S){let e=w?.childRegions.map(r=>({value:r.slug,label:r.name}))??[];S.options=e,S.isVisible=e.length>0,S.required=e.length>0,S.onChange=_e,S.schema=e.length>0?re().transform(r=>typeof r=="string"?r:"").required("Region is required"):re()}if(d){let e=f.fields.find(r=>r.name==="currency");e&&(e.options=d,e.onChange=Se)}let v=f.fields.find(e=>e.name==="hiring_budget");if(v&&(v.onChange=be),_){let e=f.fields.find(r=>r.name==="country");e&&(e.options=_,e.onChange=Ce)}let Ee=o(()=>{R(void 0),h(t)},"resetForm"),N=[...f.fields.filter(e=>e.name!=="management"),...P?.fields||[],...f.fields.filter(e=>e.name==="management")],K=oe(f.fields,m||"USD",s.includeEstimationTitle);async function he(e){let r=null;n?.onValidation?.(e);let u=await M(e,N);try{await K.validate(u,{abortEarly:!1}),r={formErrors:{},yupError:new ie([],e)}}catch(E){let B=I(E);r={formErrors:Object.entries(B).reduce((T,[A,V])=>({...T,[A]:V.message}),{}),yupError:E}}let g=P?.handleValidation(u),y=[...r?.yupError.inner||[],...g?.yupError?.inner||[]],x={...r?.yupError?.value||{},...g?.yupError?.value||{}};return{formErrors:{...r?.formErrors||{},...g?.formErrors||{}},yupError:new ie(y,x)}}return o(he,"handleValidation"),{stepState:{current:0,total:1,isLastStep:!0},fields:N,validationSchema:K,parseFormValues:o(async e=>{let{country:r,region:u,currency:g,salary_converted:y,hiring_budget:x,salary_conversion:E,management:B,estimation_title:T,...A}=e,V=e.salary;y==="salary_conversion"&&(V=E);let Fe=await M({country:r,region:u,salary:V,salary_converted:y,salary_conversion:E,hiring_budget:x,currency:g,management:B,estimation_title:T},f.fields),Ve=await M(A,P?.fields||[]),Me={currency_code:d?.find(je=>je.value===g)?.label};return{...Fe,...Ve,...Me}},"parseFormValues"),handleValidation:he,isSubmitting:U.isPending,isLoading:ue&&me&&fe,onSubmit:pe,resetForm:Ee,currencies:d,meta:{fields:c.current?.fields}}},"useCostCalculator");function oe(t,i,l){let s=t.reduce((n,a)=>(a.name==="salary"||a.name==="salary_conversion"?n[a.name]=a.schema.when("salary_converted",{is:o(c=>c===a.name,"is"),then:o(c=>c.required("Required field"),"then"),otherwise:o(c=>c.optional(),"otherwise")}):a.name==="management"?n[a.name]=le({management_fee:Te().transform(c=>isNaN(c)?void 0:c).min(0,"Management fee must be greater than or equal to 0").max(i?C[i]:C.USD,()=>`Management fee cannot exceed ${(i?C[i]:C.USD)/100} ${i}`)}):a.name==="estimation_title"&&l?n[a.name]=a.schema.required("Required field"):n[a.name]=a.schema,n),{});return le(s)}o(oe,"buildValidationSchema");function Ae(t){let i="benefit-";return Object.keys(t).reduce((l,s)=>{let n=t[s];if(n==="none")return l;let c={benefit_group_slug:s.replace(i,""),benefit_tier_slug:n};return[...l,c]},[])}o(Ae,"formatBenefits");function Oe(t,i,l){let s=Number(t.management?.management_fee),n=t.currency_code;return{...{region_slug:t.region||t.country,employment_term:t.contract_duration_type??"fixed",title:t.estimation_title||i.title,age:t.age??void 0,...t.benefits&&{benefits:Ae(t.benefits)},...i.includeManagementFee&&s&&{discount:{quoted_amount:i.showManagementFee?s:C[n]||C.USD,text:""}}},...ke(t,l)}}o(Oe,"mapValueToEmployment");function ke(t,i){let l=i==="marketing"||t.salary_converted==="salary_conversion",s=i==="standard"&&t.salary_converted==="salary",n=t.hiring_budget==="my_hiring_budget";if(l){let a=t.salary_converted==="salary_conversion";return n?{annual_total_cost_in_employer_currency:t.salary}:{[a?"annual_gross_salary_in_employer_currency":"annual_gross_salary"]:t.salary}}return s?n?{annual_total_cost:t.salary}:{annual_gross_salary:t.salary}:{}}o(ke,"getSalaryFields");function se(t,i=O,l="standard"){let s=Array.isArray(t)?t:[t];if(s.length===0)throw new Error("At least one employment value is required");return s.length>1&&new Set(s.map(a=>a.currency)).size>1&&console.warn("Multiple currencies detected in array. Using currency from first employment."),{employer_currency_slug:s[0].currency,include_benefits:i.includeBenefits,include_cost_breakdowns:i.includeCostBreakdowns,include_premium_benefits:i.includePremiumBenefits,include_management_fee:i.includeManagementFee,employments:s.map(n=>Oe(n,i,l))}}o(se,"buildPayload");export{oe as a,se as b,O as c,Qe as d};
|
|
2
|
+
//# sourceMappingURL=chunk-BQNZUM27.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a}from"./chunk-CNSE26GY.js";import{b as i}from"./chunk-PGWKJ6FK.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as d}from"react/jsx-runtime";function y({onSubmit:s,onSuccess:c,onError:t}){let{onboardingBag:o}=i(),u=e(async n=>{try{await s?.({countryCode:n.country});let r=await o.onSubmit(n);if(r?.data){await c?.(r?.data),o?.next();return}r?.error&&t?.({error:r.error,rawError:r.rawError,fieldErrors:[]})}catch(r){t?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit"),l=o.stepState.values?.select_country||o.initialValues.select_country;return d(a,{defaultValues:l,onSubmit:u})}e(y,"SelectCountryStep");export{y as a};
|
|
2
|
+
//# sourceMappingURL=chunk-BVMAUJC2.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a}from"./chunk-WGDZTF7Y.js";import{m as s}from"./chunk-AUPAAQUT.js";import{a as n}from"./chunk-P37U34EQ.js";import{jsx as t,jsxs as c}from"react/jsx-runtime";function u({fieldData:d}){let{name:e,title:o,description:r,meta:p}=d,i=`forced-value-${e}-title`,l=`forced-value-${e}-description`;return c("div",{role:"group","aria-labelledby":o?i:void 0,"aria-describedby":r?l:void 0,children:[o&&t("p",{id:i,className:`text-sm RemoteFlows__ForcedValue__Title__${e}`,dangerouslySetInnerHTML:{__html:o}}),t(s,{as:"span",id:l,className:`text-xs RemoteFlows__ForcedValue__Description__${e}`,helpCenter:t(a,{className:"RemoteFlows__ForcedValue__HelpCenterLink",helpCenter:p?.helpCenter}),children:r})]})}n(u,"ForcedValueFieldDefault");export{u as a};
|
|
2
|
+
//# sourceMappingURL=chunk-BWM2MYPE.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as b}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as b}from"./chunk-WGDZTF7Y.js";import{a as g}from"./chunk-2QVO3BVI.js";import{a as h,b as N,c as T,d as $,e as v,f as S}from"./chunk-QRSWXKRV.js";import{j as C,k as p,n as F,o as y}from"./chunk-AUPAAQUT.js";import{a as _}from"./chunk-P37U34EQ.js";import{jsx as e,jsxs as t}from"react/jsx-runtime";function B({field:f,fieldState:r,fieldData:n}){let{name:m,label:s,description:c,options:i,onChangeCountryCode:d,onChangePhoneNumber:w,currentCountry:o,nationalPhoneNumber:I}=n,R=o?`${o.name}-${o.dialCode}`:"";return t(C,{"data-field":m,className:`RemoteFlows__TelField__Item__${m}`,children:[s&&e(p,{className:"RemoteFlows__TelField__Label",children:s}),t("div",{className:"flex gap-2",children:[e("div",{className:"w-[180px]",children:t(h,{value:R,onValueChange:l=>{let a=i?.find(u=>`${u.label}-${u.meta?.countryCode}`===l);a&&d&&d({name:a.label,dialCode:a.meta?.countryCode||"",pattern:a.pattern||""})},children:[e($,{className:"RemoteFlows__TelField__CountrySelect","aria-invalid":!!r.error,"aria-label":"Country code",children:e("span",{className:"absolute",children:e(T,{placeholder:"Country code *",children:o&&`${o.name} +${o.dialCode}`})})}),e(v,{className:"RemoteFlows__TelField__CountryContent",children:e(N,{className:"RemoteFlows__TelField__CountryGroup",children:i?.map((l,a)=>t(S,{value:`${l.label}-${l.meta?.countryCode}`,className:"RemoteFlows__TelField__CountryItem",children:[l.label," +",l.meta?.countryCode]},`${l.label}-${l.meta?.countryCode}-${a}`))})})]})}),e("div",{className:"flex-1",children:e(g,{...f,type:"tel",value:I||"",onChange:w,className:"RemoteFlows__TelField__Input",placeholder:"Employee's phone number *","aria-invalid":!!r.error,"aria-label":"Phone number"})})]}),(c||n.meta?.helpCenter)&&e(F,{className:"RemoteFlows__TelField__Description",helpCenter:e(b,{helpCenter:n.meta?.helpCenter}),children:c}),r.error&&e(y,{})]})}_(B,"TelFieldDefault");export{B as a};
|
|
2
|
+
//# sourceMappingURL=chunk-C2HZNBMZ.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as f}from"./chunk-PGWKJ6FK.js";import{a as l}from"./chunk-UZFEJMO6.js";import{a as d}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as f}from"./chunk-PGWKJ6FK.js";import{a as l}from"./chunk-UZFEJMO6.js";import{a as d}from"./chunk-TO2GYQR2.js";import{h as m}from"./chunk-AUPAAQUT.js";import{c as s}from"./chunk-C4HFMTSB.js";import{a as t}from"./chunk-P37U34EQ.js";import{useEffect as k}from"react";import{jsx as c}from"react/jsx-runtime";import{createElement as w}from"react";function R({defaultValues:p,onSubmit:F,components:u}){let{formId:S,onboardingBag:e}=f(),r=l({handleValidation:e.handleValidation,defaultValues:p,checkFieldUpdates:e.checkFieldUpdates});k(()=>{e.employmentId&&e?.checkFieldUpdates(r.getValues())},[]);let g=t(async(a,y)=>{let n=y?.nativeEvent;if(n?.isDraftSubmission){let{onSuccess:E,onError:i}=n.draftCallbacks;try{let o=await e.onSubmit(a);if(o?.data)E?.();else if(o?.error){let b=e.stepState.currentStep.name,h=e.meta?.fields?.[b],P=s(o?.fieldErrors||[],h);i?.({error:o.error,rawError:o.rawError,fieldErrors:P})}}catch(o){i?.({error:o,rawError:o,fieldErrors:[]})}}else await F(a)},"handleSubmit");return w(m,{...r,key:`form-${e.stepState.currentStep.name}`},c("form",{id:S,onSubmit:r.handleSubmit(g),className:"space-y-4 RemoteFlows__OnboardingForm",children:c(d,{components:u,fields:e.fields,fieldsets:e.meta.fieldsets,fieldValues:e.fieldValues})}))}t(R,"OnboardingForm");export{R as a};
|
|
2
|
+
//# sourceMappingURL=chunk-CNSE26GY.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as tn,b as nn,c as rn}from"./chunk-ZZLLPFLS.js";import{A as Xt,B as Yt,C as Zt,D as en,a as ht,b as Ct,c as Ot,d as Ft,e as Dt,f as At,g as Tt,h as Rt,j as kt,k as qt,l as Lt,m as jt,n as xt,o as Bt,p as Nt,q as Qt,r as Jt,s as Ut,t as Kt,u as Gt,v as $t,w as Ht,x as zt,z as Wt}from"./chunk-IXS65MGJ.js";import{a as wt,b as Pt,f as It,g as Et,h as Vt,i as Mt}from"./chunk-7IIQUZTH.js";import{a as N,b as me,c as h,d as St,g as vt}from"./chunk-PB6UQ4A4.js";import{a as yt,b as gt}from"./chunk-POWC7LZN.js";import{f as pt,i as ft,j as _t}from"./chunk-KPJ5YKXS.js";import{Z as mt}from"./chunk-VNMUML3T.js";import{a as lt,b as S,d as ut,h as m,i as v,u as L,v as C}from"./chunk-C4HFMTSB.js";import{a as bt}from"./chunk-M3TA5X2H.js";import{e as dt}from"./chunk-H2O4CVKF.js";import{a as g}from"./chunk-P37U34EQ.js";import{useCallback as an,useEffect as V,useMemo as a,useRef as sn,useState as w}from"react";import cn from"lodash.omit";import{useQuery as bi}from"@tanstack/react-query";var hi=g(()=>{let{client:G}=dt(),{data:Q}=Ot(),f=Ft(Q)?Q?.company?.id??"":"";return bi({queryKey:["legal-entities",f],queryFn:g(()=>mt({client:G,path:{company_id:f},query:{page_size:100}}),"queryFn"),select:g(J=>J.data?.data?.legal_entities,"select"),enabled:!!f})},"useLegalEntities"),on=g(()=>{let{data:G}=hi();return G?.find(Q=>Q.is_default)},"useDefaultLegalEntity");var Si={select_country:null,basic_information:"employment_basic_information",contract_origin:null,invoice_schedule:null,create_invoice_schedule:null,contract_details:null,eligibility_questionnaire:null,pricing_plan:null,contract_preview:null,review:null},vi={employment_basic_information:"basic_information"},ln={remote_contract:"provided_by_remote"},Ci={provided_by_remote:"remote_contract"},Xi=g(({countryCode:G,externalId:Q,employmentId:f,skipSteps:J,options:u,initialValues:s})=>{let un=u?.excludeProducts||[],Pe=sn(u?.onContractReviewed);V(()=>{Pe.current=u?.onContractReviewed},[u?.onContractReviewed]);let[p,Ie]=w(G||null),[r,dn]=w(f),[P,Ee]=w(void 0),oe=sn({select_country:{},basic_information:{},contract_origin:{},invoice_schedule:{},create_invoice_schedule:{},contract_details:{},contract_preview:{},pricing_plan:{},eligibility_questionnaire:{}}),[$,mn]=w(void 0),[Ve,Me]=w(!1),[Oe,pn]=w(!0),[Fe,fn]=w(!0),[De,_n]=w(!0),[j,yn]=w(!1),[Ae,gn]=w(!1),[pe,Te]=w(null),{steps:bn,stepsArray:hn}=a(()=>wt({includeSelectCountry:!J?.includes("select_country"),includeContractOrigin:De,includeInvoiceSchedule:j,includeCreateInvoiceSchedule:Ae,includeEligibilityQuestionnaire:Ve,includeContractDetails:Fe,includeContractPreview:Oe}),[De,j,Ae,Ve,Fe,Oe,J]),{fieldValues:l,stepState:t,setFieldValues:fe,previousStep:Sn,nextStep:vn,goToStep:H,setStepValues:Re}=bt(bn);V(()=>{pe&&(H(pe),Te(null))},[pe,H]);let{data:c,isLoading:Cn,refetch:ke}=yt({employmentId:r,queryParams:{exclude_files:!0}}),{data:ae,refetch:wn}=gt({employmentId:r,enabled:!!r}),Pn=on(),{data:qe}=Yt({options:{queryOptions:{enabled:t.currentStep.name==="review"}}}),{status:x}=c||{},k=x&&It.includes(x),In=x&&!Et.includes(x),En=a(()=>x&&["invited","initiated"].includes(x)?"invited":"not_invited",[x]),Le=ft(),je=_t(p,u),_e=qt(),xe=Ct(),{mutateAsync:Be}=xt(_e,xe,l),Ne=Jt(),Qe=Ut(),Je=Gt(),Ue=Zt(),Ke=en(),{mutateAsyncOrThrow:Vn}=S(je),Ge=At(),$e=kt(),He=Kt(),{mutateAsyncOrThrow:Mn}=S(Le),{mutateAsyncOrThrow:On}=S(_e),{mutateAsyncOrThrow:Fn}=S(Ge),{mutateAsyncOrThrow:ze}=S($e),{mutateAsyncOrThrow:Dn}=S(Ne),{mutateAsyncOrThrow:We}=S(Qe),{mutateAsyncOrThrow:An}=S(He),{mutateAsyncOrThrow:Tn}=S(Je),{mutateAsyncOrThrow:Rn}=S(Ue),{mutateAsyncOrThrow:kn}=S(Ke);f&&c?.country?.code&&!p&&Ie(c.country.code);let{selectCountryForm:U,isLoading:qn,countries:Xe}=Xt({jsfModify:u?.jsfModify?.select_country}),ye=a(()=>Xe?.find(e=>e.value===p),[Xe,p]),Ln=a(()=>ye?.label,[ye]),jn=t.currentStep.name==="pricing_plan"||!!f&&k,{form:M,isLoading:xn,contractorSubscriptions:se,filteredContractorSubscriptions:z,refetch:ge,isEligibilityQuestionnaireBlocked:W}=jt(r,ye,{jsonSchemaVersion:u?.jsonSchemaVersion,queryOptions:{enabled:jn},excludeProducts:un,jsfModify:u?.jsfModify?.pricing_plan}),B=a(()=>!!se?.find(e=>e.product.identifier===h)?.eligibility_questionnaire?.submitted_at,[se]),Ye=a(()=>B?!1:$===h,[B,$]),Ze=c?.contractor_type!=="cor",et=(t.currentStep.name==="contract_origin"?l.contract_origin:void 0)??t.values?.contract_origin?.contract_origin??ae?.contract_origin,Bn=ln[et]??et,K=$===N&&Bn==="provided_by_customer";V(()=>{fn(!K)},[K]),V(()=>{Me(!K&&Ye)},[K,Ye]),V(()=>{pn(!K&&Ze)},[K,Ze]);let ce=a(()=>se?.find(e=>e.product.identifier===h)?.eligibility_questionnaire?.responses,[se]),Nn=Si[t.currentStep.name]||"contractor_basic_information",Qn=vi[Nn],Jn=c?.[Qn]||{},Un=g(({form:e,options:n={},query:o={},jsonSchemaVersion:d})=>{let q=Object.keys(l).length>0?{...s,...t.values?.[t.currentStep.name],...l}:{...s,...Jn};return pt({countryCode:p,form:e,fieldValues:q,query:o,options:{...n,queryOptions:{enabled:n.queryOptions?.enabled??!0}},jsonSchemaVersion:d})},"useJSONSchema"),Kn=!!(p&&(t.currentStep.name==="basic_information"||f)),Gn=!!(p==="GBR"&&f&&t.currentStep.name==="basic_information"),{data:X,isLoading:$n}=Bt(f,{enabled:Gn}),{data:le,isLoading:Hn}=Nt(r,{enabled:!!r});V(()=>{le&&le.length>0&&!P&&Ee(le[0].id)},[le,P]);let{data:I,isLoading:zn}=Un({form:"contractor_basic_information",options:{jsfModify:nn(p,Ln,u),queryOptions:{enabled:Kn}},jsonSchemaVersion:Mt(u)}),Wn=a(()=>Pt(c?.basic_information?.provisional_start_date,l?.service_duration?.provisional_start_date),[c?.basic_information?.provisional_start_date,l?.service_duration?.provisional_start_date]),y=a(()=>{let e={standard:N,plus:me,cor:h};if(l.subscription)return l.subscription;let n=t.values?.pricing_plan?.subscription;if(n&&!W)return n;if(B&&!W)return h;if(W&&B)return N;if(z&&z.length>0)return e[c?.contractor_type]||N},[l,t.values,B,c?.contractor_type,W,z]);V(()=>{y&&y!==$&&mn(y)},[y,$]),V(()=>{_n(!J?.includes("contract_origin")&&y===N)},[J,y]),V(()=>{yn(u?.features?.includes("create_invoice_schedule")??!1)},[u?.features]);let Xn=a(()=>({...ce,...s,...t.values?.eligibility_questionnaire,...l}),[ce,s,t.values?.eligibility_questionnaire,l]),Yn=a(()=>y===h&&t.currentStep.name==="eligibility_questionnaire"||!!f&&k&&y===h,[y,t.currentStep.name,f,k]),{data:O,isLoading:Zn}=Qt({options:{queryOptions:{enabled:Yn},jsfModify:u?.jsfModify?.eligibility_questionnaire},fieldValues:Xn}),ei=!!(p&&t.currentStep.name==="contract_details"||k),{data:E,isLoading:ti}=ht({countryCode:p,fieldValues:l,employmentId:r,options:{queryOptions:{enabled:ei},jsfModify:tn(u?.jsfModify?.contract_details,Wn,y,l,y===h)}}),ni=a(()=>t.currentStep.name==="contract_preview"||!!f&&k,[t.currentStep.name,f,k]),{data:F}=Dt({fieldValues:l,options:{queryOptions:{enabled:ni},jsfModify:rn(u,l)}}),{data:D}=$t({fieldValues:l,options:{jsfModify:u?.jsfModify?.contract_origin}}),A=Ht({enabled:j&&t.currentStep.name==="invoice_schedule",jsfModify:u?.jsfModify?.invoice_schedule}),{data:b,isLoading:ii,refetch:tt}=Wt({employmentId:r,options:{queryOptions:{enabled:j&&!!r&&t.currentStep.name==="invoice_schedule"}}}),{data:T,isLoading:ri}=zt({enabled:j&&t.currentStep.name==="create_invoice_schedule",employmentId:r,jsfModify:u?.jsfModify?.create_invoice_schedule}),{data:be,isLoading:oi,refetch:ai}=Tt({employmentId:r,contractDocumentId:P,options:{queryOptions:{enabled:!!P}}}),{hasCompanySignedContract:si}=Rt({employmentId:r,contractDocumentId:P,options:{queryOptions:{enabled:!!P}}}),i=a(()=>({select_country:U?.fields||[],basic_information:I?.fields||[],contract_origin:D?.fields||[],invoice_schedule:A?.fields||[],create_invoice_schedule:T?.fields||[],pricing_plan:M?.fields||[],eligibility_questionnaire:O?.fields||[],contract_details:E?.fields||[],contract_preview:F?.fields||[],review:[]}),[U?.fields,I?.fields,D?.fields,A?.fields,T?.fields,M?.fields,E?.fields,F?.fields,O?.fields]),ci={select_country:null,basic_information:I?.meta["x-jsf-fieldsets"],contract_origin:null,invoice_schedule:null,create_invoice_schedule:null,pricing_plan:null,contract_details:E?.meta["x-jsf-fieldsets"],eligibility_questionnaire:null,contract_preview:null,review:null},li={select_country:U?.meta?.["x-jsf-presentation"],basic_information:I?.meta?.["x-jsf-presentation"],contract_origin:D?.meta?.["x-jsf-presentation"],invoice_schedule:A?.meta?.["x-jsf-presentation"],create_invoice_schedule:T?.meta?.["x-jsf-presentation"],pricing_plan:M?.meta?.["x-jsf-presentation"],eligibility_questionnaire:O?.meta?.["x-jsf-presentation"],contract_details:E?.meta?.["x-jsf-presentation"],contract_preview:F?.meta?.["x-jsf-presentation"],review:null},{country:ui,basic_information:ue={},contract_details:nt={}}=c||{},it=ui?.code,Y=a(()=>v(i.select_country,{country:p||it||""}),[i.select_country,p,it]),he=a(()=>X?.content?ut(X.content,X.name):null,[X?.content,X?.name]),Z=a(()=>{let e={...s,...ue,ir35:c?.contract_details?.ir_35,nationality_status:c?.contract_details?.nationality,...he&&{ir35_sds_file:[he]}};return v(i.basic_information,e)},[s,ue,c?.contract_details?.ir_35,c?.contract_details?.nationality,he,i.basic_information]),rt=a(()=>{let e={...s,contract_origin:ln[ae?.contract_origin]??ae?.contract_origin};return v(i.contract_origin,e)},[i.contract_origin,s,ae?.contract_origin]),ot=a(()=>{let e={...s,...b&&{invoice_schedule_preference:"schedule"}};return v(i.invoice_schedule,e)},[i.invoice_schedule,s,b]),at=a(()=>{if(b){let n={currency:b.currency,periodicity:b.periodicity,start_date:b.start_date,number:b.number,note:b.note,nr_occurrences:b.nr_occurrences};return b.items?.forEach((o,d)=>{let _=d+1;n[`item_${_}_description`]=o.description,n[`item_${_}_amount`]=o.amount}),v(i.create_invoice_schedule,n)}let e={...s};return v(i.create_invoice_schedule,e)},[i.create_invoice_schedule,s,b]),ee=a(()=>{let n={...{service_duration:{provisional_start_date:ue.provisional_start_date}},...s,...nt};return v(i.contract_details,n)},[i.contract_details,nt,s,ue]),te=a(()=>{let e=be?.contract_document?.signatories?.find(o=>o.type==="company"),n={...s,signature:e?.signature};return v(i.contract_preview,n)},[i.contract_preview,s,be]),ne=a(()=>{let n={...{subscription:y},...s};return v(i.pricing_plan,n)},[i.pricing_plan,s,y]),ie=a(()=>{let e={...s,...ce};return v(i.eligibility_questionnaire,e)},[i.eligibility_questionnaire,s,ce]),di=a(()=>({select_country:Y,basic_information:Z,contract_origin:rt,invoice_schedule:ot,create_invoice_schedule:at,contract_details:ee,contract_preview:te,pricing_plan:ne,eligibility_questionnaire:ie}),[Y,Z,rt,ot,at,ee,te,ne,ie]),Se=!!(f&&k&&t.currentStep.name!=="review"),ve=qn||zn||Cn||ti||xn||oi||$n||Hn||Zn||ri||ii,st=a(()=>{let n=c?.contractor_type==="cor"||i.contract_preview.length>0;return!!(Se&&!ve&&P&&i.basic_information.length>0&&i.contract_details.length>0&&n)},[Se,ve,P,i.basic_information.length,i.contract_details.length,i.contract_preview.length,c?.contractor_type]);V(()=>{st&&(oe.current={select_country:L(Y,i.select_country,{skipMoneyConversion:!0}),basic_information:L(Z,i.basic_information,{skipMoneyConversion:!0}),contract_origin:{},invoice_schedule:{},create_invoice_schedule:{},contract_details:L(ee,i.contract_details,{skipMoneyConversion:!0}),contract_preview:L(te,i.contract_preview,{skipMoneyConversion:!0}),pricing_plan:L(ne,i.pricing_plan,{skipMoneyConversion:!0}),eligibility_questionnaire:L(ie,i.eligibility_questionnaire,{skipMoneyConversion:!0})},Re({select_country:Y,basic_information:Z,contract_origin:{},invoice_schedule:{},create_invoice_schedule:{},contract_details:ee,contract_preview:te,pricing_plan:ne,eligibility_questionnaire:ie,review:{}}),H("review"))},[st,H,Y,Z,ee,Re,i.select_country,i.basic_information,i.contract_details,i.pricing_plan,ne,i.contract_preview,te,i.eligibility_questionnaire,ie]);let mi=g(e=>{H(e)},"goTo"),ct=g(async e=>U&&t.currentStep.name==="select_country"?e:I&&t.currentStep.name==="basic_information"?await m(e,I?.fields,{isPartialValidation:!1}):E&&t.currentStep.name==="contract_details"?await m(e,E?.fields,{isPartialValidation:!1}):F&&t.currentStep.name==="contract_preview"?await m(e,F?.fields,{isPartialValidation:!1}):M&&t.currentStep.name==="pricing_plan"?await m(e,M?.fields,{isPartialValidation:!1}):O&&t.currentStep.name==="eligibility_questionnaire"?await m(e,O?.fields,{isPartialValidation:!1}):D&&t.currentStep.name==="contract_origin"?await m(e,D?.fields,{isPartialValidation:!1}):A&&t.currentStep.name==="invoice_schedule"?await m(e,A?.fields,{isPartialValidation:!1}):T&&t.currentStep.name==="create_invoice_schedule"?await m(e,T?.fields,{isPartialValidation:!1}):{},"parseFormValues"),pi=g(e=>{if(!lt(e))return null;let n=e.normalizedErrors.services_and_deliverables,o=Array.isArray(n)?n[0]:n;return o?.source===vt?{error:o.error,source:o.source,skippable:o.skippable}:null},"extractAiValidationError");async function fi(e){let n=t.currentStep.name,o=await ct(e);switch(n in oe.current&&(oe.current[n]=L(o,i[n])),t.currentStep.name){case"select_country":return Ie(o.country),Promise.resolve({data:{countryCode:o.country}});case"basic_information":{let d=!r&&p,_=r&&p&&c?.country&&c?.country.code!==p;if(d||_){let we={basic_information:cn(o,"nationality_status","ir35","ir35_sds_file"),type:"contractor",country_code:p,external_id:Q},de=await Mn(we),R=de?.data?.employment?.id;if(!R)throw C("Employment ID not found");return await Be({employmentId:R}),dn(R),de}else if(r){let q=cn(o,"nationality_status","ir35","ir35_sds_file");return await Be({employmentId:r}),Vn({employmentId:r,basic_information:q})}return}case"contract_details":{let{services_and_deliverables_ai_warning:d,services_and_deliverables_error_skippable:_,...q}=o,we=l.services_and_deliverables_error_skippable===!0,de={contract_document:q,skip_ai_checks:we};try{let R=await On({employmentId:r,payload:de}),re=R?.data?.contract_document?.id;if(!re)throw C("Contract document ID not found");return Ee(re),R}catch(R){let re=pi(R);throw re&&fe({...e,services_and_deliverables_ai_warning:Vt(y===h),services_and_deliverables_error_skippable:re.skippable}),R}}case"contract_preview":{if(si)return Promise.resolve({data:{contract_document:{id:P}}});let d=await Fn({employmentId:r,contractDocumentId:P,payload:{signature:o.signature}});return await ai(),d}case"pricing_plan":{if(e.subscription===St)return Promise.resolve({data:{subscription:e.subscription}});if(z.length===0)throw C("No available subscriptions.");if(!e.subscription&&z.length>0)throw C("Please select a subscription plan.");if(W&&[h,me].includes(e.subscription))throw C(`This individual is not eligible for ${Lt[e.subscription]}.`);if(B&&e.subscription!==h)try{await An({employmentId:r}),await ge()}catch(_){if(_?.response?.status!==404)throw _;await ge()}if(e.subscription==N)return ze({employmentId:r,payload:{operation:"downgrade"}});if(e.subscription==me)return ze({employmentId:r,payload:{operation:"upgrade"}});if(e.subscription==h)return B&&c?.contractor_type!=="cor"?We({employmentId:r}):Promise.resolve({data:{subscription:e.subscription}});throw C("invalid selection")}case"contract_origin":{let d=Ci[o.contract_origin]??o.contract_origin,_=o.contract_origin==="provided_by_customer"?"contractor_agreement":"contractor_services_agreement";return await Tn({employmentId:r,contractOrigin:d,templateType:_}),await wn(),{data:{contractOrigin:e.contract_origin}}}case"invoice_schedule":{let d=e.invoice_schedule_preference==="schedule";return gn(d),{data:{invoiceSchedulePreference:e.invoice_schedule_preference}}}case"create_invoice_schedule":{if(!r)throw C("Employment ID is required");if(b?.id){let q=await kn({scheduleId:b.id,values:o});return await tt(),q}let d=await Rn({employmentId:r,values:o}),_=d?.data?.failures;if(_&&_.length>0)throw C("Failed to create invoice schedule");return await tt(),d}case"eligibility_questionnaire":try{if((await Dn({employmentId:r,payload:o}))?.data?.is_blocking)throw Me(!1),Te("pricing_plan"),C("This individual is not eligible for Contractor of Record.");return await We({employmentId:r})}finally{await ge()}default:throw C("Invalid step state")}}g(fi,"onSubmit");let _i=g(()=>{Pe.current?.()},"markContractAsReviewed"),yi=g(()=>{r&&ke(),vn()},"handleNextStep"),Ce=an(async e=>{if(t.currentStep.name==="select_country")return U.handleValidation(e);if(I&&t.currentStep.name==="basic_information"){let n=await m(e,I?.fields,{isPartialValidation:!1});return I?.handleValidation(n)}if(E&&t.currentStep.name==="contract_details"){let n=await m(e,E?.fields,{isPartialValidation:!1});return E?.handleValidation(n)}if(F&&t.currentStep.name==="contract_preview"){let n=await m(e,F?.fields,{isPartialValidation:!0});return F?.handleValidation(n)}if(M&&t.currentStep.name==="pricing_plan"){let n=await m(e,M?.fields,{isPartialValidation:!1});return M?.handleValidation(n)}if(O&&t.currentStep.name==="eligibility_questionnaire"){let n=await m(e,O?.fields,{isPartialValidation:!1});return O?.handleValidation(n)}if(D&&t.currentStep.name==="contract_origin"){let n=await m(e,D?.fields,{isPartialValidation:!1});return D?.handleValidation(n)}if(A&&t.currentStep.name==="invoice_schedule"){let n=await m(e,A?.fields,{isPartialValidation:!1});return A?.handleValidation(n)}if(T&&t.currentStep.name==="create_invoice_schedule"){let n=await m(e,T?.fields,{isPartialValidation:!1});return T?.handleValidation(n)}return null},[t.currentStep.name,U,I,E,F,M,O,D,A,T]),gi=an(async e=>{fe(e),j&&["invoice_schedule","create_invoice_schedule"].includes(t.currentStep.name)&&await Ce(e)},[fe,j,t,Ce]);return{isLoading:ve||Se,fieldValues:l,stepState:t,checkFieldUpdates:gi,markContractAsReviewed:_i,back:Sn,next:yi,goTo:mi,onSubmit:fi,fields:i[t.currentStep.name],meta:{fields:oe.current,fieldsets:ci[t.currentStep.name],presentation:li[t.currentStep.name]},parseFormValues:ct,canSkipAiValidation:l.services_and_deliverables_error_skippable===!0,handleValidation:Ce,initialValues:di,employmentId:r,refetchEmployment:ke,isSubmitting:Le.isPending||je.isPending||_e.isPending||Ge.isPending||$e.isPending||xe.isPending||Ne.isPending||Qe.isPending||He.isPending||Je.isPending||Ue.isPending||Ke.isPending,documentPreviewPdf:be,canInvite:In,isEmploymentReadOnly:k,invitedStatus:En,employment:c,defaultLegalEntity:Pn,needsCompanyVerification:qe?.some(e=>e.type==="verify_company")??!1,needsRemotePaymentsSetup:qe?.some(e=>e.type==="setup_remote_payments")??!1,steps:hn}},"useContractorOnboarding");export{Xi as a};
|
|
2
|
+
//# sourceMappingURL=chunk-CQVOBIXJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/flows/ContractorOnboarding/hooks.tsx","../src/common/api/legal-entities.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { FieldValues } from 'react-hook-form';\nimport omit from 'lodash.omit';\nimport { $TSFixMe, JSFFields, NestedMeta } from '@/src/types/remoteFlows';\nimport {\n CreateContractDocument,\n Employment,\n EmploymentCreateParams,\n} from '@/src/client/types.gen';\nimport {\n getInitialValues,\n parseJSFToValidate,\n} from '@/src/components/form/utils';\nimport { ValidationResult } from '@remoteoss/remote-json-schema-form-kit';\nimport {\n useCreateContractorContractDocument,\n useGetContractDocumentSignatureSchema,\n usePostManageContractorSubscriptions,\n useContractorSubscriptionSchemaField,\n useGetShowContractDocument,\n useSignContractDocument,\n useUpdateUKandSaudiFields,\n useGetIR35File,\n useGetContractDocuments,\n useGetEligibilityQuestionnaire,\n usePostCreateEligibilityQuestionnaire,\n usePostManageContractorCorSubscription,\n useDeleteContractorCorSubscription,\n useCountriesSchemaField,\n CONTRACT_PRODUCT_TITLES,\n useHasCompanySignedContract,\n useCompanyOpenTasks,\n useSetContractOrigin,\n useGetContractOriginSchema,\n useGetInvoiceScheduleSchema,\n useGetCreateInvoiceScheduleSchema,\n useCreateInvoiceSchedule,\n useUpdateInvoiceSchedule,\n useGetExistingInvoiceSchedule,\n} from '@/src/flows/ContractorOnboarding/api';\nimport { useContractorContractDetailsSchema } from '@/src/common/api/contractor-contract-details';\nimport {\n ContractorOnboardingFlowProps,\n ContractorOnboardingHookOptions,\n} from '@/src/flows/ContractorOnboarding/types';\nimport {\n buildSteps,\n calculateProvisionalStartDateDescription,\n reviewStepAllowedEmploymentStatus,\n disabledInviteButtonEmploymentStatus,\n StepKeys,\n getBasicInformationSchemaVersion,\n} from '@/src/flows/ContractorOnboarding/utils';\nimport {\n useCreateEmployment,\n useJSONSchemaForm,\n useUpdateEmployment,\n} from '@/src/flows/Onboarding/api';\nimport { FlowOptions, JSFModify, JSONSchemaFormType } from '@/src/flows/types';\nimport { useStepState } from '@/src/flows/useStepState';\nimport { mutationToPromise, isMutationError } from '@/src/lib/mutations';\nimport { createStructuredError, prettifyFormValues } from '@/src/lib/utils';\nimport { JSFFieldset } from '@/src/types/remoteFlows';\nimport {\n contractorStandardProductIdentifier,\n contractorPlusProductIdentifier,\n corProductIdentifier,\n eorProductIdentifier,\n REMOTE_AI_ERROR_SOURCE,\n} from '@/src/flows/ContractorOnboarding/constants';\nimport {\n buildBasicInformationJsfModify,\n buildContractDetailsJsfModify,\n buildContractPreviewJsfModify,\n} from '@/src/flows/ContractorOnboarding/jsfModify';\nimport { transformAiErrorResponse } from '@/src/flows/ContractorOnboarding/utils';\nimport { AiValidationError } from '@/src/flows/ContractorOnboarding/types';\nimport { useUploadFile } from '@/src/common/api/files';\nimport { dataURLtoFile } from '@/src/lib/files';\nimport {\n useEmploymentQuery,\n useBasicInformationQuery,\n} from '@/src/common/api/employment';\nimport { useDefaultLegalEntity } from '@/src/common/api/legal-entities';\n\ntype useContractorOnboardingProps = Omit<\n ContractorOnboardingFlowProps,\n 'render' | 'options'\n> & {\n options: ContractorOnboardingHookOptions;\n};\n\nconst stepToFormSchemaMap: Record<StepKeys, JSONSchemaFormType | null> = {\n select_country: null,\n basic_information: 'employment_basic_information',\n contract_origin: null,\n invoice_schedule: null,\n create_invoice_schedule: null,\n contract_details: null,\n eligibility_questionnaire: null,\n pricing_plan: null,\n contract_preview: null,\n review: null,\n};\n\nconst jsonSchemaToEmployment: Partial<\n Record<JSONSchemaFormType, keyof Employment>\n> = {\n employment_basic_information: 'basic_information',\n};\n\nconst contractOriginMapping: Record<string, string> = {\n remote_contract: 'provided_by_remote',\n // Add other mappings as needed\n};\n\n// Inverse mapping: frontend -> backend\nconst contractOriginToBackend: Record<string, string> = {\n provided_by_remote: 'remote_contract',\n // Add other mappings as needed\n};\n\nexport const useContractorOnboarding = ({\n countryCode,\n externalId,\n employmentId,\n skipSteps,\n options,\n initialValues: onboardingInitialValues,\n}: useContractorOnboardingProps) => {\n const excludeProducts = options?.excludeProducts || [];\n\n const onContractReviewedRef = useRef(options?.onContractReviewed);\n\n useEffect(() => {\n onContractReviewedRef.current = options?.onContractReviewed;\n }, [options?.onContractReviewed]);\n\n const [internalCountryCode, setInternalCountryCode] = useState<string | null>(\n countryCode || null,\n );\n const [internalEmploymentId, setInternalEmploymentId] = useState<\n string | undefined\n >(employmentId);\n const [internalContractDocumentId, setInternalContractDocumentId] = useState<\n string | undefined\n >(undefined);\n const fieldsMetaRef = useRef<{\n select_country: NestedMeta;\n basic_information: NestedMeta;\n contract_origin: NestedMeta;\n invoice_schedule: NestedMeta;\n create_invoice_schedule: NestedMeta;\n contract_details: NestedMeta;\n contract_preview: NestedMeta;\n pricing_plan: NestedMeta;\n eligibility_questionnaire: NestedMeta;\n }>({\n select_country: {},\n basic_information: {},\n contract_origin: {},\n invoice_schedule: {},\n create_invoice_schedule: {},\n contract_details: {},\n contract_preview: {},\n pricing_plan: {},\n eligibility_questionnaire: {},\n });\n\n const [selectedProduct, setSelectedProduct] = useState<string | undefined>(\n undefined,\n );\n\n const [includeEligibilityQuestionnaire, setIncludeEligibilityQuestionnaire] =\n useState<boolean>(false);\n\n const [includeContractPreview, setIncludeContractPreview] =\n useState<boolean>(true);\n\n const [includeContractDetails, setIncludeContractDetails] =\n useState<boolean>(true);\n\n const [includeContractOrigin, setIncludeContractOrigin] =\n useState<boolean>(true);\n\n const [includeInvoiceSchedule, setIncludeInvoiceSchedule] =\n useState<boolean>(false);\n\n const [includeCreateInvoiceSchedule, setIncludeCreateInvoiceSchedule] =\n useState<boolean>(false);\n\n const [pendingNavigationStep, setPendingNavigationStep] =\n useState<StepKeys | null>(null);\n\n const { steps, stepsArray } = useMemo(\n () =>\n buildSteps({\n includeSelectCountry: !skipSteps?.includes('select_country'),\n includeContractOrigin: includeContractOrigin,\n includeInvoiceSchedule: includeInvoiceSchedule,\n includeCreateInvoiceSchedule: includeCreateInvoiceSchedule,\n includeEligibilityQuestionnaire: includeEligibilityQuestionnaire,\n includeContractDetails: includeContractDetails,\n includeContractPreview: includeContractPreview,\n }),\n [\n includeContractOrigin,\n includeInvoiceSchedule,\n includeCreateInvoiceSchedule,\n includeEligibilityQuestionnaire,\n includeContractDetails,\n includeContractPreview,\n skipSteps,\n ],\n );\n\n const {\n fieldValues,\n stepState,\n setFieldValues,\n previousStep,\n nextStep,\n goToStep,\n setStepValues,\n } = useStepState(steps);\n\n useEffect(() => {\n if (pendingNavigationStep) {\n // Now steps have been updated\n goToStep(pendingNavigationStep);\n setPendingNavigationStep(null);\n }\n }, [pendingNavigationStep, goToStep]);\n\n const {\n data: employment,\n isLoading: isLoadingEmployment,\n refetch: refetchEmployment,\n } = useEmploymentQuery({\n employmentId: internalEmploymentId as string,\n queryParams: { exclude_files: true },\n });\n\n const { data: basicInformation, refetch: refetchBasicInformation } =\n useBasicInformationQuery({\n employmentId: internalEmploymentId as string,\n enabled: !!internalEmploymentId,\n });\n\n const defaultLegalEntity = useDefaultLegalEntity();\n\n const { data: openTasks } = useCompanyOpenTasks({\n options: {\n queryOptions: {\n enabled: stepState.currentStep.name === 'review',\n },\n },\n });\n\n const { status: employmentStatus } = employment || {};\n\n const isEmploymentReadOnly =\n employmentStatus &&\n reviewStepAllowedEmploymentStatus.includes(employmentStatus);\n\n const canInvite =\n employmentStatus &&\n !disabledInviteButtonEmploymentStatus.includes(employmentStatus);\n\n const invitedStatus: 'invited' | 'not_invited' = useMemo(() => {\n const invitedStatuses = ['invited', 'initiated'];\n const isInvited =\n employmentStatus && invitedStatuses.includes(employmentStatus);\n\n return isInvited ? 'invited' : 'not_invited';\n }, [employmentStatus]);\n\n const createEmploymentMutation = useCreateEmployment();\n const updateEmploymentMutation = useUpdateEmployment(\n internalCountryCode as string,\n options as $TSFixMe, // TODO: done it as its shared between contractor and onboarding flows\n );\n const createContractorContractDocumentMutation =\n useCreateContractorContractDocument();\n const uploadFileMutation = useUploadFile();\n const { mutateAsync: updateUKandSaudiFieldsMutation } =\n useUpdateUKandSaudiFields(\n createContractorContractDocumentMutation,\n uploadFileMutation,\n fieldValues,\n );\n const createEligibilityQuestionnaireMutation =\n usePostCreateEligibilityQuestionnaire();\n const manageContractorCorSubscriptionMutation =\n usePostManageContractorCorSubscription();\n const setContractOriginMutation = useSetContractOrigin();\n const createInvoiceScheduleMutation = useCreateInvoiceSchedule();\n const updateInvoiceScheduleMutation = useUpdateInvoiceSchedule();\n\n const { mutateAsyncOrThrow: updateEmploymentMutationAsync } =\n mutationToPromise(updateEmploymentMutation);\n const signContractDocumentMutation = useSignContractDocument();\n const manageContractorSubscriptionMutation =\n usePostManageContractorSubscriptions();\n const deleteContractorCorSubscriptionMutation =\n useDeleteContractorCorSubscription();\n\n const { mutateAsyncOrThrow: createEmploymentMutationAsync } =\n mutationToPromise(createEmploymentMutation);\n\n const { mutateAsyncOrThrow: createContractorContractDocumentMutationAsync } =\n mutationToPromise(createContractorContractDocumentMutation);\n\n const { mutateAsyncOrThrow: signContractDocumentMutationAsync } =\n mutationToPromise(signContractDocumentMutation);\n\n const { mutateAsyncOrThrow: manageContractorSubscriptionMutationAsync } =\n mutationToPromise(manageContractorSubscriptionMutation);\n\n const { mutateAsyncOrThrow: createEligibilityQuestionnaireMutationAsync } =\n mutationToPromise(createEligibilityQuestionnaireMutation);\n\n const { mutateAsyncOrThrow: manageContractorCorSubscriptionMutationAsync } =\n mutationToPromise(manageContractorCorSubscriptionMutation);\n\n const { mutateAsyncOrThrow: deleteContractorCorSubscriptionMutationAsync } =\n mutationToPromise(deleteContractorCorSubscriptionMutation);\n\n const { mutateAsyncOrThrow: setContractOriginMutationAsync } =\n mutationToPromise(setContractOriginMutation);\n\n const { mutateAsyncOrThrow: createInvoiceScheduleMutationAsync } =\n mutationToPromise(createInvoiceScheduleMutation);\n\n const { mutateAsyncOrThrow: updateInvoiceScheduleMutationAsync } =\n mutationToPromise(updateInvoiceScheduleMutation);\n\n // if the employment is loaded, country code has not been set yet\n // we set the internal country code with the employment country code\n if (employmentId && employment?.country?.code && !internalCountryCode) {\n setInternalCountryCode(employment.country.code);\n }\n\n const {\n selectCountryForm,\n isLoading: isLoadingCountries,\n countries,\n } = useCountriesSchemaField({\n jsfModify: options?.jsfModify?.select_country,\n });\n\n const selectedCountry = useMemo(() => {\n return countries?.find((country) => country.value === internalCountryCode);\n }, [countries, internalCountryCode]);\n\n const countryName = useMemo(() => {\n return selectedCountry?.label;\n }, [selectedCountry]);\n\n const isPricingPlanEnabled =\n stepState.currentStep.name === 'pricing_plan' ||\n (Boolean(employmentId) && isEmploymentReadOnly);\n\n const {\n form: selectContractorSubscriptionForm,\n isLoading: isLoadingContractorSubscriptions,\n contractorSubscriptions,\n filteredContractorSubscriptions,\n refetch: refetchContractorSubscriptions,\n isEligibilityQuestionnaireBlocked,\n } = useContractorSubscriptionSchemaField(\n internalEmploymentId as string,\n selectedCountry,\n {\n jsonSchemaVersion: options?.jsonSchemaVersion,\n queryOptions: {\n enabled: isPricingPlanEnabled,\n },\n excludeProducts: excludeProducts,\n jsfModify: options?.jsfModify?.pricing_plan,\n },\n );\n\n const hasEligibilityQuestionnaireSubmitted = useMemo(() => {\n return Boolean(\n contractorSubscriptions?.find(\n (subscription) =>\n subscription.product.identifier === corProductIdentifier,\n )?.eligibility_questionnaire?.submitted_at,\n );\n }, [contractorSubscriptions]);\n\n const shouldIncludeEligibilityQuestionnaire = useMemo(() => {\n if (hasEligibilityQuestionnaireSubmitted) return false;\n return selectedProduct === corProductIdentifier;\n }, [hasEligibilityQuestionnaireSubmitted, selectedProduct]);\n\n const shouldIncludeContractPreview = employment?.contractor_type !== 'cor';\n\n const rawContractOrigin =\n (stepState.currentStep.name === 'contract_origin'\n ? fieldValues.contract_origin\n : undefined) ??\n stepState.values?.contract_origin?.contract_origin ??\n basicInformation?.contract_origin;\n\n const selectedContractOrigin =\n contractOriginMapping[rawContractOrigin] ?? rawContractOrigin;\n\n const isContractProvidedByCustomer =\n selectedProduct === contractorStandardProductIdentifier &&\n selectedContractOrigin === 'provided_by_customer';\n\n useEffect(() => {\n setIncludeContractDetails(!isContractProvidedByCustomer);\n }, [isContractProvidedByCustomer]);\n\n useEffect(() => {\n setIncludeEligibilityQuestionnaire(\n !isContractProvidedByCustomer && shouldIncludeEligibilityQuestionnaire,\n );\n }, [isContractProvidedByCustomer, shouldIncludeEligibilityQuestionnaire]);\n\n useEffect(() => {\n setIncludeContractPreview(\n !isContractProvidedByCustomer && shouldIncludeContractPreview,\n );\n }, [isContractProvidedByCustomer, shouldIncludeContractPreview]);\n\n const eligibilityAnswers = useMemo(() => {\n return contractorSubscriptions?.find(\n (subscription) =>\n subscription.product.identifier === corProductIdentifier,\n )?.eligibility_questionnaire?.responses;\n }, [contractorSubscriptions]);\n\n const formType =\n stepToFormSchemaMap[stepState.currentStep.name] ||\n 'contractor_basic_information';\n const employmentKey = jsonSchemaToEmployment[formType] as keyof Employment;\n const serverEmploymentData = (employment?.[employmentKey] || {}) as Record<\n string,\n unknown\n >;\n\n const useJSONSchema = ({\n form,\n options: jsonSchemaOptions = {},\n query = {},\n jsonSchemaVersion,\n }: {\n form: JSONSchemaFormType;\n options?: {\n jsfModify?: JSFModify;\n queryOptions?: { enabled?: boolean };\n jsonSchemaVersion?: FlowOptions['jsonSchemaVersion'];\n };\n query?: Record<string, string>;\n jsonSchemaVersion?: number | 'latest';\n }) => {\n const hasUserEnteredAnyValues = Object.keys(fieldValues).length > 0;\n // when you write on the fields, the values are stored in the fieldValues state\n // when values are stored in the stepState is when the user has navigated to the step\n // and then we have the values from the server and the onboardingInitialValues that the user can inject,\n const mergedFormValues = hasUserEnteredAnyValues\n ? {\n ...onboardingInitialValues,\n ...stepState.values?.[stepState.currentStep.name], // Restore values for the current step\n ...fieldValues,\n }\n : {\n ...onboardingInitialValues,\n ...serverEmploymentData,\n };\n\n return useJSONSchemaForm({\n countryCode: internalCountryCode as string,\n form: form,\n fieldValues: mergedFormValues,\n query,\n options: {\n ...jsonSchemaOptions,\n queryOptions: {\n enabled: jsonSchemaOptions.queryOptions?.enabled ?? true,\n },\n },\n jsonSchemaVersion,\n });\n };\n\n const isBasicInformationDetailsEnabled = Boolean(\n internalCountryCode &&\n (stepState.currentStep.name === 'basic_information' ||\n Boolean(employmentId)),\n );\n\n const isIR35FileEnabled = Boolean(\n internalCountryCode === 'GBR' &&\n employmentId &&\n stepState.currentStep.name === 'basic_information',\n );\n\n const { data: ir35File, isLoading: isLoadingIR35File } = useGetIR35File(\n employmentId as string,\n {\n enabled: isIR35FileEnabled,\n },\n );\n\n const { data: contractDocuments, isLoading: isLoadingContractDocuments } =\n useGetContractDocuments(internalEmploymentId as string, {\n enabled: Boolean(internalEmploymentId),\n });\n\n useEffect(() => {\n if (\n contractDocuments &&\n contractDocuments.length > 0 &&\n !internalContractDocumentId\n ) {\n setInternalContractDocumentId(contractDocuments[0].id);\n }\n }, [contractDocuments, internalContractDocumentId]);\n\n const {\n data: basicInformationForm,\n isLoading: isLoadingBasicInformationForm,\n } = useJSONSchema({\n form: 'contractor_basic_information',\n options: {\n jsfModify: buildBasicInformationJsfModify(\n internalCountryCode as string,\n countryName,\n options,\n ),\n queryOptions: {\n enabled: isBasicInformationDetailsEnabled,\n },\n },\n jsonSchemaVersion: getBasicInformationSchemaVersion(options),\n });\n\n const descriptionProvisionalStartDate = useMemo(() => {\n return calculateProvisionalStartDateDescription(\n employment?.basic_information?.provisional_start_date as string,\n fieldValues?.service_duration?.provisional_start_date as string,\n );\n }, [\n employment?.basic_information?.provisional_start_date,\n fieldValues?.service_duration?.provisional_start_date,\n ]);\n\n /**\n * When the user selects COR, the data isn't saved yet in the BE\n * We need to use the internalState to know what has happened\n */\n const selectedPricingPlan = useMemo(() => {\n const subscriptions = {\n standard: contractorStandardProductIdentifier,\n plus: contractorPlusProductIdentifier,\n cor: corProductIdentifier,\n };\n\n // HIGHEST PRIORITY: Current form value (user is actively selecting)\n if (fieldValues.subscription) {\n return fieldValues.subscription;\n }\n\n // SECOND: Previously submitted value in this session\n const subscription = stepState.values?.pricing_plan?.subscription;\n if (subscription && !isEligibilityQuestionnaireBlocked) {\n return subscription;\n }\n\n // THIRD: Backend state (eligibility submitted or employment contractor_type)\n if (\n hasEligibilityQuestionnaireSubmitted &&\n !isEligibilityQuestionnaireBlocked\n ) {\n return corProductIdentifier;\n }\n\n // Fourth: If the eligibility questionnaire is blocked and has been submitted, return the standard product\n if (\n isEligibilityQuestionnaireBlocked &&\n hasEligibilityQuestionnaireSubmitted\n ) {\n return contractorStandardProductIdentifier;\n }\n\n // Fifth: If there are no available subscriptions, return undefined\n const hasAvailableSubscriptions =\n filteredContractorSubscriptions &&\n filteredContractorSubscriptions.length > 0;\n\n if (!hasAvailableSubscriptions) {\n return undefined;\n }\n\n // FALLBACK: Employment contractor_type or default\n return (\n subscriptions[\n employment?.contractor_type as keyof typeof subscriptions\n ] || contractorStandardProductIdentifier\n );\n }, [\n fieldValues,\n stepState.values,\n hasEligibilityQuestionnaireSubmitted,\n employment?.contractor_type,\n isEligibilityQuestionnaireBlocked,\n filteredContractorSubscriptions,\n ]);\n\n useEffect(() => {\n if (selectedPricingPlan && selectedPricingPlan !== selectedProduct) {\n setSelectedProduct(selectedPricingPlan);\n }\n }, [selectedPricingPlan, selectedProduct]);\n\n useEffect(() => {\n setIncludeContractOrigin(\n !skipSteps?.includes('contract_origin') &&\n selectedPricingPlan === contractorStandardProductIdentifier,\n );\n }, [skipSteps, selectedPricingPlan]);\n\n useEffect(() => {\n setIncludeInvoiceSchedule(\n options?.features?.includes('create_invoice_schedule') ?? false,\n );\n }, [options?.features]);\n\n const eligibilityFields = useMemo(() => {\n return {\n ...eligibilityAnswers,\n ...onboardingInitialValues,\n ...stepState.values?.eligibility_questionnaire,\n ...fieldValues,\n };\n }, [\n eligibilityAnswers,\n onboardingInitialValues,\n stepState.values?.eligibility_questionnaire,\n fieldValues,\n ]);\n\n const isEligibilityQuestionnaireEnabled = useMemo(() => {\n return (\n (selectedPricingPlan === corProductIdentifier &&\n stepState.currentStep.name === 'eligibility_questionnaire') ||\n (Boolean(employmentId) &&\n isEmploymentReadOnly &&\n selectedPricingPlan === corProductIdentifier)\n );\n }, [\n selectedPricingPlan,\n stepState.currentStep.name,\n employmentId,\n isEmploymentReadOnly,\n ]);\n\n const {\n data: eligibilityQuestionnaireForm,\n isLoading: isLoadingEligibilityQuestionnaire,\n } = useGetEligibilityQuestionnaire({\n options: {\n queryOptions: {\n enabled: isEligibilityQuestionnaireEnabled,\n },\n jsfModify: options?.jsfModify?.eligibility_questionnaire,\n },\n fieldValues: eligibilityFields,\n });\n\n const isContractorOnboardingDetailsEnabled = Boolean(\n (internalCountryCode &&\n stepState.currentStep.name === 'contract_details') ||\n isEmploymentReadOnly,\n );\n\n const {\n data: contractorOnboardingDetailsForm,\n isLoading: isLoadingContractorOnboardingDetailsForm,\n } = useContractorContractDetailsSchema({\n countryCode: internalCountryCode as string,\n fieldValues: fieldValues,\n employmentId: internalEmploymentId as string,\n options: {\n queryOptions: {\n enabled: isContractorOnboardingDetailsEnabled,\n },\n jsfModify: buildContractDetailsJsfModify(\n options?.jsfModify?.contract_details,\n descriptionProvisionalStartDate,\n selectedPricingPlan,\n fieldValues,\n selectedPricingPlan === corProductIdentifier,\n ),\n },\n });\n\n const isSignatureSchemaEnabled = useMemo(() => {\n return (\n stepState.currentStep.name === 'contract_preview' ||\n (Boolean(employmentId) && isEmploymentReadOnly)\n );\n }, [stepState.currentStep.name, employmentId, isEmploymentReadOnly]);\n\n const { data: signatureSchemaForm } = useGetContractDocumentSignatureSchema({\n fieldValues: fieldValues,\n options: {\n queryOptions: {\n enabled: isSignatureSchemaEnabled,\n },\n jsfModify: buildContractPreviewJsfModify(options, fieldValues),\n },\n });\n\n const { data: contractOriginForm } = useGetContractOriginSchema({\n fieldValues: fieldValues,\n options: {\n jsfModify: options?.jsfModify?.contract_origin,\n },\n });\n\n const invoiceScheduleForm = useGetInvoiceScheduleSchema({\n enabled:\n includeInvoiceSchedule &&\n stepState.currentStep.name === 'invoice_schedule',\n jsfModify: options?.jsfModify?.invoice_schedule,\n });\n\n const {\n data: existingInvoiceSchedule,\n isLoading: isLoadingInvoiceSchedules,\n refetch: refetchInvoiceSchedule,\n } = useGetExistingInvoiceSchedule({\n employmentId: internalEmploymentId as string,\n options: {\n queryOptions: {\n enabled:\n includeInvoiceSchedule &&\n Boolean(internalEmploymentId) &&\n stepState.currentStep.name === 'invoice_schedule',\n },\n },\n });\n\n const {\n data: createInvoiceScheduleForm,\n isLoading: isLoadingCreateInvoiceScheduleForm,\n } = useGetCreateInvoiceScheduleSchema({\n enabled:\n includeInvoiceSchedule &&\n stepState.currentStep.name === 'create_invoice_schedule',\n employmentId: internalEmploymentId,\n jsfModify: options?.jsfModify?.create_invoice_schedule,\n });\n\n const {\n data: documentPreviewPdf,\n isLoading: isLoadingDocumentPreviewForm,\n refetch: refetchDocumentPreviewForm,\n } = useGetShowContractDocument({\n employmentId: internalEmploymentId as string,\n contractDocumentId: internalContractDocumentId as string,\n options: {\n queryOptions: {\n enabled: Boolean(internalContractDocumentId),\n },\n },\n });\n\n const { hasCompanySignedContract } = useHasCompanySignedContract({\n employmentId: internalEmploymentId as string,\n contractDocumentId: internalContractDocumentId as string,\n options: {\n queryOptions: {\n enabled: Boolean(internalContractDocumentId),\n },\n },\n });\n\n const stepFields: Record<StepKeys, JSFFields> = useMemo(\n () => ({\n select_country: selectCountryForm?.fields || [],\n basic_information: basicInformationForm?.fields || [],\n contract_origin: contractOriginForm?.fields || [],\n invoice_schedule: invoiceScheduleForm?.fields || [],\n create_invoice_schedule: createInvoiceScheduleForm?.fields || [],\n pricing_plan: selectContractorSubscriptionForm?.fields || [],\n eligibility_questionnaire: eligibilityQuestionnaireForm?.fields || [],\n contract_details: contractorOnboardingDetailsForm?.fields || [],\n contract_preview: signatureSchemaForm?.fields || [],\n review: [],\n }),\n [\n selectCountryForm?.fields,\n basicInformationForm?.fields,\n contractOriginForm?.fields,\n invoiceScheduleForm?.fields,\n createInvoiceScheduleForm?.fields,\n selectContractorSubscriptionForm?.fields,\n contractorOnboardingDetailsForm?.fields,\n signatureSchemaForm?.fields,\n eligibilityQuestionnaireForm?.fields,\n ],\n );\n\n const stepFieldsWithFlatFieldsets: Record<\n StepKeys,\n JSFFieldset | null | undefined\n > = {\n select_country: null,\n basic_information: basicInformationForm?.meta['x-jsf-fieldsets'],\n contract_origin: null,\n invoice_schedule: null,\n create_invoice_schedule: null,\n pricing_plan: null,\n contract_details: contractorOnboardingDetailsForm?.meta['x-jsf-fieldsets'],\n eligibility_questionnaire: null,\n contract_preview: null,\n review: null,\n };\n\n const stepPresentation: Record<\n StepKeys,\n Record<string, unknown> | null | undefined\n > = {\n select_country: selectCountryForm?.meta?.['x-jsf-presentation'],\n basic_information: basicInformationForm?.meta?.['x-jsf-presentation'],\n contract_origin: contractOriginForm?.meta?.['x-jsf-presentation'],\n invoice_schedule: invoiceScheduleForm?.meta?.['x-jsf-presentation'],\n create_invoice_schedule:\n createInvoiceScheduleForm?.meta?.['x-jsf-presentation'],\n pricing_plan:\n selectContractorSubscriptionForm?.meta?.['x-jsf-presentation'],\n eligibility_questionnaire:\n eligibilityQuestionnaireForm?.meta?.['x-jsf-presentation'],\n contract_details:\n contractorOnboardingDetailsForm?.meta?.['x-jsf-presentation'],\n contract_preview: signatureSchemaForm?.meta?.['x-jsf-presentation'],\n review: null,\n };\n\n const {\n country,\n basic_information: employmentBasicInformation = {},\n contract_details: employmentContractDetails = {},\n } = employment || {};\n\n const employmentCountryCode = country?.code;\n\n const selectCountryInitialValues = useMemo(\n () =>\n getInitialValues(stepFields.select_country, {\n country: internalCountryCode || employmentCountryCode || '',\n }),\n [stepFields.select_country, internalCountryCode, employmentCountryCode],\n );\n\n // memoize file conversion to avoid re-converting the file on every render\n // noticed performance issues when not doing memoizing individually\n const convertedIr35File = useMemo(() => {\n if (!ir35File?.content) return null;\n return dataURLtoFile(ir35File.content as unknown as string, ir35File.name);\n }, [ir35File?.content, ir35File?.name]);\n\n const basicInformationInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n ...employmentBasicInformation,\n ir35: employment?.contract_details?.ir_35,\n nationality_status: employment?.contract_details?.nationality,\n ...(convertedIr35File && {\n ir35_sds_file: [convertedIr35File],\n }),\n };\n\n return getInitialValues(stepFields.basic_information, initialValues);\n }, [\n onboardingInitialValues,\n employmentBasicInformation,\n employment?.contract_details?.ir_35,\n employment?.contract_details?.nationality,\n convertedIr35File,\n stepFields.basic_information,\n ]);\n\n const contractOriginInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n contract_origin:\n contractOriginMapping[basicInformation?.contract_origin as string] ??\n basicInformation?.contract_origin,\n };\n return getInitialValues(stepFields.contract_origin, initialValues);\n }, [\n stepFields.contract_origin,\n onboardingInitialValues,\n basicInformation?.contract_origin,\n ]);\n\n const invoiceScheduleInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n // If an existing schedule exists, default to 'schedule' preference\n ...(existingInvoiceSchedule && {\n invoice_schedule_preference: 'schedule',\n }),\n };\n return getInitialValues(stepFields.invoice_schedule, initialValues);\n }, [\n stepFields.invoice_schedule,\n onboardingInitialValues,\n existingInvoiceSchedule,\n ]);\n\n const createInvoiceScheduleInitialValues = useMemo(() => {\n // If an existing schedule exists, transform it to form values\n if (existingInvoiceSchedule) {\n const formValues: Record<string, unknown> = {\n currency: existingInvoiceSchedule.currency,\n periodicity: existingInvoiceSchedule.periodicity,\n start_date: existingInvoiceSchedule.start_date,\n number: existingInvoiceSchedule.number,\n note: existingInvoiceSchedule.note,\n nr_occurrences: existingInvoiceSchedule.nr_occurrences,\n };\n\n existingInvoiceSchedule.items?.forEach((item, index: number) => {\n const itemNumber = index + 1;\n formValues[`item_${itemNumber}_description`] = item.description;\n formValues[`item_${itemNumber}_amount`] = item.amount;\n });\n\n return getInitialValues(stepFields.create_invoice_schedule, formValues);\n }\n\n const initialValues = {\n ...onboardingInitialValues,\n };\n return getInitialValues(stepFields.create_invoice_schedule, initialValues);\n }, [\n stepFields.create_invoice_schedule,\n onboardingInitialValues,\n existingInvoiceSchedule,\n ]);\n\n const contractDetailsInitialValues = useMemo(() => {\n const hardcodedValues = {\n service_duration: {\n provisional_start_date:\n employmentBasicInformation.provisional_start_date,\n },\n };\n const initialValues = {\n ...hardcodedValues,\n ...onboardingInitialValues,\n ...employmentContractDetails,\n };\n\n return getInitialValues(stepFields.contract_details, initialValues);\n }, [\n stepFields.contract_details,\n employmentContractDetails,\n onboardingInitialValues,\n employmentBasicInformation,\n ]);\n\n const contractPreviewInitialValues = useMemo(() => {\n const signature = documentPreviewPdf?.contract_document?.signatories?.find(\n (signatory) => signatory.type === 'company',\n );\n const initialValues = {\n ...onboardingInitialValues,\n signature: signature?.signature,\n };\n\n return getInitialValues(stepFields.contract_preview, initialValues);\n }, [\n stepFields.contract_preview,\n onboardingInitialValues,\n documentPreviewPdf,\n ]);\n\n const pricingPlanInitialValues = useMemo(() => {\n const preselectedPricingPlan = {\n subscription: selectedPricingPlan,\n };\n const initialValues = {\n ...preselectedPricingPlan,\n ...onboardingInitialValues,\n };\n\n return getInitialValues(stepFields.pricing_plan, initialValues);\n }, [stepFields.pricing_plan, onboardingInitialValues, selectedPricingPlan]);\n\n const eligibilityQuestionnaireInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n ...eligibilityAnswers,\n };\n return getInitialValues(\n stepFields.eligibility_questionnaire,\n initialValues,\n );\n }, [\n stepFields.eligibility_questionnaire,\n onboardingInitialValues,\n eligibilityAnswers,\n ]);\n\n const initialValues = useMemo(() => {\n return {\n select_country: selectCountryInitialValues,\n basic_information: basicInformationInitialValues,\n contract_origin: contractOriginInitialValues,\n invoice_schedule: invoiceScheduleInitialValues,\n create_invoice_schedule: createInvoiceScheduleInitialValues,\n contract_details: contractDetailsInitialValues,\n contract_preview: contractPreviewInitialValues,\n pricing_plan: pricingPlanInitialValues,\n eligibility_questionnaire: eligibilityQuestionnaireInitialValues,\n };\n }, [\n selectCountryInitialValues,\n basicInformationInitialValues,\n contractOriginInitialValues,\n invoiceScheduleInitialValues,\n createInvoiceScheduleInitialValues,\n contractDetailsInitialValues,\n contractPreviewInitialValues,\n pricingPlanInitialValues,\n eligibilityQuestionnaireInitialValues,\n ]);\n\n const shouldHandleReadOnlyEmployment = Boolean(\n employmentId &&\n isEmploymentReadOnly &&\n stepState.currentStep.name !== 'review',\n );\n\n const initialLoading =\n isLoadingCountries ||\n isLoadingBasicInformationForm ||\n isLoadingEmployment ||\n isLoadingContractorOnboardingDetailsForm ||\n isLoadingContractorSubscriptions ||\n isLoadingDocumentPreviewForm ||\n isLoadingIR35File ||\n isLoadingContractDocuments ||\n isLoadingEligibilityQuestionnaire ||\n isLoadingCreateInvoiceScheduleForm ||\n isLoadingInvoiceSchedules;\n\n const isNavigatingToReview = useMemo(() => {\n const isCor = employment?.contractor_type === 'cor';\n const hasContractPreviewFields =\n isCor || stepFields.contract_preview.length > 0;\n\n return Boolean(\n shouldHandleReadOnlyEmployment &&\n !initialLoading &&\n Boolean(internalContractDocumentId) &&\n stepFields.basic_information.length > 0 &&\n stepFields.contract_details.length > 0 &&\n hasContractPreviewFields,\n );\n }, [\n shouldHandleReadOnlyEmployment,\n initialLoading,\n internalContractDocumentId,\n stepFields.basic_information.length,\n stepFields.contract_details.length,\n stepFields.contract_preview.length,\n employment?.contractor_type,\n ]);\n\n useEffect(() => {\n if (isNavigatingToReview) {\n fieldsMetaRef.current = {\n select_country: prettifyFormValues(\n selectCountryInitialValues,\n stepFields.select_country,\n { skipMoneyConversion: true },\n ),\n basic_information: prettifyFormValues(\n basicInformationInitialValues,\n stepFields.basic_information,\n { skipMoneyConversion: true },\n ),\n contract_origin: {},\n invoice_schedule: {},\n create_invoice_schedule: {},\n contract_details: prettifyFormValues(\n contractDetailsInitialValues,\n stepFields.contract_details,\n { skipMoneyConversion: true },\n ),\n contract_preview: prettifyFormValues(\n contractPreviewInitialValues,\n stepFields.contract_preview,\n { skipMoneyConversion: true },\n ),\n pricing_plan: prettifyFormValues(\n pricingPlanInitialValues,\n stepFields.pricing_plan,\n { skipMoneyConversion: true },\n ),\n eligibility_questionnaire: prettifyFormValues(\n eligibilityQuestionnaireInitialValues,\n stepFields.eligibility_questionnaire,\n { skipMoneyConversion: true },\n ),\n };\n\n setStepValues({\n select_country: selectCountryInitialValues,\n basic_information: basicInformationInitialValues,\n contract_origin: {},\n invoice_schedule: {},\n create_invoice_schedule: {},\n contract_details: contractDetailsInitialValues,\n contract_preview: contractPreviewInitialValues,\n pricing_plan: pricingPlanInitialValues,\n eligibility_questionnaire: eligibilityQuestionnaireInitialValues,\n review: {},\n });\n goToStep('review');\n }\n }, [\n isNavigatingToReview,\n goToStep,\n selectCountryInitialValues,\n basicInformationInitialValues,\n contractDetailsInitialValues,\n setStepValues,\n stepFields.select_country,\n stepFields.basic_information,\n stepFields.contract_details,\n stepFields.pricing_plan,\n pricingPlanInitialValues,\n stepFields.contract_preview,\n contractPreviewInitialValues,\n stepFields.eligibility_questionnaire,\n eligibilityQuestionnaireInitialValues,\n ]);\n\n const goTo = (step: StepKeys) => {\n goToStep(step);\n };\n\n const parseFormValues = async (values: FieldValues) => {\n if (selectCountryForm && stepState.currentStep.name === 'select_country') {\n return values;\n }\n\n if (\n basicInformationForm &&\n stepState.currentStep.name === 'basic_information'\n ) {\n return await parseJSFToValidate(values, basicInformationForm?.fields, {\n isPartialValidation: false,\n });\n }\n\n if (\n contractorOnboardingDetailsForm &&\n stepState.currentStep.name === 'contract_details'\n ) {\n return await parseJSFToValidate(\n values,\n contractorOnboardingDetailsForm?.fields,\n {\n isPartialValidation: false,\n },\n );\n }\n\n if (\n signatureSchemaForm &&\n stepState.currentStep.name === 'contract_preview'\n ) {\n return await parseJSFToValidate(values, signatureSchemaForm?.fields, {\n isPartialValidation: false,\n });\n }\n\n if (\n selectContractorSubscriptionForm &&\n stepState.currentStep.name === 'pricing_plan'\n ) {\n return await parseJSFToValidate(\n values,\n selectContractorSubscriptionForm?.fields,\n {\n isPartialValidation: false,\n },\n );\n }\n\n if (\n eligibilityQuestionnaireForm &&\n stepState.currentStep.name === 'eligibility_questionnaire'\n ) {\n return await parseJSFToValidate(\n values,\n eligibilityQuestionnaireForm?.fields,\n {\n isPartialValidation: false,\n },\n );\n }\n\n if (\n contractOriginForm &&\n stepState.currentStep.name === 'contract_origin'\n ) {\n return await parseJSFToValidate(values, contractOriginForm?.fields, {\n isPartialValidation: false,\n });\n }\n\n if (\n invoiceScheduleForm &&\n stepState.currentStep.name === 'invoice_schedule'\n ) {\n return await parseJSFToValidate(values, invoiceScheduleForm?.fields, {\n isPartialValidation: false,\n });\n }\n\n if (\n createInvoiceScheduleForm &&\n stepState.currentStep.name === 'create_invoice_schedule'\n ) {\n return await parseJSFToValidate(\n values,\n createInvoiceScheduleForm?.fields,\n {\n isPartialValidation: false,\n },\n );\n }\n\n return {};\n };\n\n /**\n * Extracts AI validation error from the error response\n * @param error - The error object from the API call\n * @returns The AI validation error if found, null otherwise\n */\n const extractAiValidationError = (\n error: unknown,\n ): AiValidationError | null => {\n if (!isMutationError(error)) {\n return null;\n }\n\n const rawError = error.normalizedErrors.services_and_deliverables;\n\n // The backend's normalize_errors wraps non-list values in an array,\n // so the AI validation error object arrives as a single-element array.\n const servicesAndDeliverablesError = (\n Array.isArray(rawError) ? rawError[0] : rawError\n ) as\n | {\n error: string[];\n source: string;\n skippable: boolean;\n }\n | undefined;\n\n if (servicesAndDeliverablesError?.source === REMOTE_AI_ERROR_SOURCE) {\n return {\n error: servicesAndDeliverablesError.error,\n source: servicesAndDeliverablesError.source,\n skippable: servicesAndDeliverablesError.skippable,\n };\n }\n return null;\n };\n\n async function onSubmit(values: FieldValues) {\n const currentStepName = stepState.currentStep.name;\n const parsedValues = await parseFormValues(values);\n\n if (currentStepName in fieldsMetaRef.current) {\n fieldsMetaRef.current[\n currentStepName as keyof typeof fieldsMetaRef.current\n ] = prettifyFormValues(parsedValues, stepFields[currentStepName]);\n }\n switch (stepState.currentStep.name) {\n case 'select_country': {\n setInternalCountryCode(parsedValues.country);\n return Promise.resolve({ data: { countryCode: parsedValues.country } });\n }\n case 'basic_information': {\n const isEmploymentNotLoaded =\n !internalEmploymentId && internalCountryCode;\n const hasChangedCountry =\n internalEmploymentId &&\n internalCountryCode &&\n employment?.country &&\n employment?.country.code !== internalCountryCode;\n\n if (isEmploymentNotLoaded || hasChangedCountry) {\n const basicInformationParsedValues = omit(\n parsedValues,\n 'nationality_status',\n 'ir35',\n 'ir35_sds_file',\n );\n const basicInformationPayload: EmploymentCreateParams = {\n basic_information: basicInformationParsedValues,\n type: 'contractor',\n country_code: internalCountryCode,\n external_id: externalId,\n };\n const response = await createEmploymentMutationAsync(\n basicInformationPayload,\n );\n const employmentId = response?.data?.employment?.id;\n if (!employmentId) {\n throw createStructuredError('Employment ID not found');\n }\n\n await updateUKandSaudiFieldsMutation({\n employmentId: employmentId as string,\n });\n\n // Only update state (triggers queries with fully consistent backend state) if not caused a bug\n // if one of the updateUKandSaudiFieldsMutation fails with a 422 for example\n setInternalEmploymentId(employmentId);\n\n return response;\n } else if (internalEmploymentId) {\n const basicInformationParsedValues = omit(\n parsedValues,\n 'nationality_status',\n 'ir35',\n 'ir35_sds_file',\n );\n\n await updateUKandSaudiFieldsMutation({\n employmentId: internalEmploymentId,\n });\n return updateEmploymentMutationAsync({\n employmentId: internalEmploymentId,\n basic_information: basicInformationParsedValues,\n });\n }\n\n return;\n }\n case 'contract_details': {\n const {\n services_and_deliverables_ai_warning:\n _servicesAndDeliverablesAiWarning,\n services_and_deliverables_error_skippable:\n _servicesAndDeliverablesErrorSkippable,\n ...contractDetailsData\n } = parsedValues;\n\n const shouldSkipAiChecks =\n fieldValues.services_and_deliverables_error_skippable === true;\n const payload: CreateContractDocument = {\n contract_document: contractDetailsData,\n skip_ai_checks: shouldSkipAiChecks,\n };\n\n try {\n const response = await createContractorContractDocumentMutationAsync({\n employmentId: internalEmploymentId as string,\n payload,\n });\n const contractDocumentId = response?.data?.contract_document?.id;\n if (!contractDocumentId) {\n throw createStructuredError('Contract document ID not found');\n }\n setInternalContractDocumentId(contractDocumentId);\n\n return response;\n } catch (error) {\n const aiError = extractAiValidationError(error);\n if (aiError) {\n const isContractorOfRecord =\n selectedPricingPlan === corProductIdentifier;\n setFieldValues({\n ...values,\n services_and_deliverables_ai_warning:\n transformAiErrorResponse(isContractorOfRecord),\n services_and_deliverables_error_skippable: aiError.skippable,\n });\n }\n\n throw error;\n }\n }\n\n case 'contract_preview': {\n if (hasCompanySignedContract) {\n return Promise.resolve({\n data: {\n contract_document: {\n id: internalContractDocumentId,\n },\n },\n });\n }\n const response = await signContractDocumentMutationAsync({\n employmentId: internalEmploymentId as string,\n contractDocumentId: internalContractDocumentId as string,\n payload: {\n signature: parsedValues.signature,\n },\n });\n await refetchDocumentPreviewForm();\n return response;\n }\n case 'pricing_plan': {\n if (values.subscription === eorProductIdentifier) {\n // EOR selection - no API call needed at this step\n return Promise.resolve({\n data: {\n subscription: values.subscription,\n },\n });\n }\n // If there are no available contractor subscriptions, throw an error\n if (filteredContractorSubscriptions.length === 0) {\n throw createStructuredError('No available subscriptions.');\n }\n\n if (\n !values.subscription &&\n filteredContractorSubscriptions.length > 0\n ) {\n throw createStructuredError('Please select a subscription plan.');\n }\n\n const blockedProductsEligibility = [\n corProductIdentifier,\n contractorPlusProductIdentifier,\n ];\n\n if (\n isEligibilityQuestionnaireBlocked &&\n blockedProductsEligibility.includes(values.subscription)\n ) {\n throw createStructuredError(\n `This individual is not eligible for ${\n CONTRACT_PRODUCT_TITLES[\n values.subscription as keyof typeof CONTRACT_PRODUCT_TITLES\n ]\n }.`,\n );\n }\n\n if (\n hasEligibilityQuestionnaireSubmitted &&\n values.subscription !== corProductIdentifier\n ) {\n try {\n await deleteContractorCorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n });\n await refetchContractorSubscriptions();\n } catch (error) {\n if ((error as $TSFixMe)?.response?.status !== 404) {\n throw error;\n }\n // Still refetch to update the UI state\n await refetchContractorSubscriptions();\n }\n }\n\n if (values.subscription == contractorStandardProductIdentifier) {\n return manageContractorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n payload: {\n operation: 'downgrade',\n },\n });\n } else if (values.subscription == contractorPlusProductIdentifier) {\n return manageContractorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n payload: {\n operation: 'upgrade',\n },\n });\n } else if (values.subscription == corProductIdentifier) {\n if (\n hasEligibilityQuestionnaireSubmitted &&\n employment?.contractor_type !== 'cor'\n ) {\n return manageContractorCorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n });\n } else {\n return Promise.resolve({\n data: { subscription: values.subscription },\n });\n }\n }\n\n throw createStructuredError('invalid selection');\n }\n\n case 'contract_origin': {\n // provided_by_remote -> remote_contract to maintain retrocompatibility with the backend\n // provided_by_remote doesn't exist in the backend, so we need to map it to remote_contract\n const contractOrigin: $TSFixMe =\n contractOriginToBackend[parsedValues.contract_origin] ??\n parsedValues.contract_origin;\n const templateType =\n parsedValues.contract_origin === 'provided_by_customer'\n ? 'contractor_agreement'\n : 'contractor_services_agreement';\n await setContractOriginMutationAsync({\n employmentId: internalEmploymentId as string,\n contractOrigin,\n templateType,\n });\n // Refetch basic information to get the updated contract_origin from server\n await refetchBasicInformation();\n\n return {\n data: { contractOrigin: values.contract_origin },\n };\n }\n\n case 'invoice_schedule': {\n // Show create_invoice_schedule step only when user selects 'schedule'\n const shouldShowCreateStep =\n values.invoice_schedule_preference === 'schedule';\n setIncludeCreateInvoiceSchedule(shouldShowCreateStep);\n\n return {\n data: {\n invoiceSchedulePreference: values.invoice_schedule_preference,\n },\n };\n }\n\n case 'create_invoice_schedule': {\n if (!internalEmploymentId) {\n throw createStructuredError('Employment ID is required');\n }\n\n // Use update if we have an existing schedule, otherwise create\n if (existingInvoiceSchedule?.id) {\n const response = await updateInvoiceScheduleMutationAsync({\n scheduleId: existingInvoiceSchedule.id,\n values: parsedValues,\n });\n await refetchInvoiceSchedule();\n return response;\n }\n\n const response = await createInvoiceScheduleMutationAsync({\n employmentId: internalEmploymentId,\n values: parsedValues,\n });\n\n const failures = response?.data?.failures;\n if (failures && failures.length > 0) {\n throw createStructuredError('Failed to create invoice schedule');\n }\n\n await refetchInvoiceSchedule();\n return response;\n }\n\n case 'eligibility_questionnaire': {\n try {\n const response = await createEligibilityQuestionnaireMutationAsync({\n employmentId: internalEmploymentId as string,\n payload: parsedValues,\n });\n\n const isEligibilityQuestionnaireBlocked = response?.data?.is_blocking;\n\n if (isEligibilityQuestionnaireBlocked) {\n setIncludeEligibilityQuestionnaire(false);\n setPendingNavigationStep('pricing_plan');\n throw createStructuredError(\n 'This individual is not eligible for Contractor of Record.',\n );\n }\n\n return await manageContractorCorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n });\n } finally {\n // Always refetch to keep state in sync, even on error\n await refetchContractorSubscriptions();\n }\n }\n\n default: {\n throw createStructuredError('Invalid step state');\n }\n }\n }\n\n const markContractAsReviewed = () => {\n // Notify parent to sync form state\n onContractReviewedRef.current?.();\n };\n\n const handleNextStep = () => {\n if (internalEmploymentId) {\n refetchEmployment();\n }\n nextStep();\n };\n\n const handleValidation = useCallback(\n async (values: FieldValues): Promise<ValidationResult | null> => {\n if (stepState.currentStep.name === 'select_country') {\n return selectCountryForm.handleValidation(values);\n }\n\n if (\n basicInformationForm &&\n stepState.currentStep.name === 'basic_information'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n basicInformationForm?.fields,\n { isPartialValidation: false },\n );\n return basicInformationForm?.handleValidation(parsedValues);\n }\n\n if (\n contractorOnboardingDetailsForm &&\n stepState.currentStep.name === 'contract_details'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n contractorOnboardingDetailsForm?.fields,\n { isPartialValidation: false },\n );\n return contractorOnboardingDetailsForm?.handleValidation(parsedValues);\n }\n\n if (\n signatureSchemaForm &&\n stepState.currentStep.name === 'contract_preview'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n signatureSchemaForm?.fields,\n { isPartialValidation: true },\n );\n return signatureSchemaForm?.handleValidation(parsedValues);\n }\n\n if (\n selectContractorSubscriptionForm &&\n stepState.currentStep.name === 'pricing_plan'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n selectContractorSubscriptionForm?.fields,\n { isPartialValidation: false },\n );\n return selectContractorSubscriptionForm?.handleValidation(parsedValues);\n }\n\n if (\n eligibilityQuestionnaireForm &&\n stepState.currentStep.name === 'eligibility_questionnaire'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n eligibilityQuestionnaireForm?.fields,\n { isPartialValidation: false },\n );\n return eligibilityQuestionnaireForm?.handleValidation(parsedValues);\n }\n\n if (\n contractOriginForm &&\n stepState.currentStep.name === 'contract_origin'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n contractOriginForm?.fields,\n { isPartialValidation: false },\n );\n return contractOriginForm?.handleValidation(parsedValues);\n }\n\n if (\n invoiceScheduleForm &&\n stepState.currentStep.name === 'invoice_schedule'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n invoiceScheduleForm?.fields,\n { isPartialValidation: false },\n );\n return invoiceScheduleForm?.handleValidation(parsedValues);\n }\n\n if (\n createInvoiceScheduleForm &&\n stepState.currentStep.name === 'create_invoice_schedule'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n createInvoiceScheduleForm?.fields,\n { isPartialValidation: false },\n );\n return createInvoiceScheduleForm?.handleValidation(parsedValues);\n }\n\n return null;\n },\n [\n stepState.currentStep.name,\n selectCountryForm,\n basicInformationForm,\n contractorOnboardingDetailsForm,\n signatureSchemaForm,\n selectContractorSubscriptionForm,\n eligibilityQuestionnaireForm,\n contractOriginForm,\n invoiceScheduleForm,\n createInvoiceScheduleForm,\n ],\n );\n\n const checkFieldUpdates = useCallback(\n async (values: FieldValues) => {\n setFieldValues(values);\n // new steps or refactor ones should rely on json-schema-form-mutability\n // instead of passing fieldValues\n const stepsUsingHandleValidation = [\n 'invoice_schedule',\n 'create_invoice_schedule',\n ];\n\n if (\n includeInvoiceSchedule &&\n stepsUsingHandleValidation.includes(stepState.currentStep.name)\n ) {\n await handleValidation(values);\n }\n },\n [setFieldValues, includeInvoiceSchedule, stepState, handleValidation],\n );\n\n const isLoading = initialLoading || shouldHandleReadOnlyEmployment;\n\n return {\n /**\n * Loading state indicating if the flow is loading data\n */\n isLoading,\n\n /**\n * Current state of the form fields for the current step.\n */\n fieldValues,\n\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState,\n\n /**\n * Function to update the current form field values\n * @param values - New form values to set\n */\n checkFieldUpdates,\n\n /**\n * Function to mark the contract as reviewed\n * @param values - New form values to check\n * @returns {boolean}\n */\n markContractAsReviewed,\n\n /**\n * Function to handle going back to the previous step\n * @returns {void}\n */\n back: previousStep,\n\n /**\n * Function to handle going to the next step\n * @returns {void}\n */\n next: handleNextStep,\n\n /**\n * Function to handle going to a specific step\n * @param step The step to go to.\n * @returns {void}\n */\n goTo: goTo,\n\n /**\n * Function to handle form submission\n * @param values - Form values to submit\n * @returns Promise resolving to the mutation result\n */\n onSubmit,\n\n /**\n * Array of form fields from the onboarding schema\n */\n fields: stepFields[stepState.currentStep.name],\n\n /**\n * Fields metadata for each step\n */\n meta: {\n fields: fieldsMetaRef.current,\n fieldsets: stepFieldsWithFlatFieldsets[stepState.currentStep.name],\n presentation: stepPresentation[stepState.currentStep.name],\n },\n\n /**\n * Function to parse form values before submission\n * @param values - Form values to parse\n * @returns Parsed form values\n */\n parseFormValues,\n\n /**\n * Indicates whether AI validation errors can be skipped (user can continue at their own risk).\n * True when there's a skippable AI validation error on services_and_deliverables field.\n * @returns {boolean}\n */\n canSkipAiValidation:\n fieldValues.services_and_deliverables_error_skippable === true,\n\n /**\n * Function to validate form values against the onboarding schema\n * @param values - Form values to validate\n * @returns Validation result or null if no schema is available\n */\n handleValidation,\n\n /**\n * Initial form values\n */\n initialValues,\n\n /**\n * Employment id\n */\n employmentId: internalEmploymentId,\n\n /**\n * Function to refetch the employment data\n * @returns {void}\n */\n refetchEmployment: refetchEmployment,\n\n /**\n * Loading state indicating if the onboarding mutation is in progress\n */\n isSubmitting:\n createEmploymentMutation.isPending ||\n updateEmploymentMutation.isPending ||\n createContractorContractDocumentMutation.isPending ||\n signContractDocumentMutation.isPending ||\n manageContractorSubscriptionMutation.isPending ||\n uploadFileMutation.isPending ||\n createEligibilityQuestionnaireMutation.isPending ||\n manageContractorCorSubscriptionMutation.isPending ||\n deleteContractorCorSubscriptionMutation.isPending ||\n setContractOriginMutation.isPending ||\n createInvoiceScheduleMutation.isPending ||\n updateInvoiceScheduleMutation.isPending,\n\n /**\n * Document preview PDF data\n */\n documentPreviewPdf,\n\n /**\n * let's the user know if the company can invite employees\n * @returns {boolean}\n */\n canInvite,\n\n /**\n * let's the user know that the employment cannot be edited, happens when employment.status is invited\n * @returns {boolean}\n */\n isEmploymentReadOnly,\n /**\n * let's the user know if the employment is invited or not\n * @returns {'invited' | 'not_invited'}\n */\n invitedStatus,\n\n /**\n * Employment data\n * @returns {Employment}\n */\n employment,\n\n /**\n * Default legal entity\n * @returns {CompanyLegalEntity}\n */\n defaultLegalEntity,\n\n /**\n * Whether the company needs to complete KYB verification before contractors can be paid.\n * Use this to show a company verification nudge banner on the review step.\n */\n needsCompanyVerification:\n openTasks?.some((a) => a.type === 'verify_company') ?? false,\n\n /**\n * Whether the company needs to set up Remote Payments.\n * Use this to show a Remote Payments setup nudge banner on the review step.\n */\n needsRemotePaymentsSetup:\n openTasks?.some((a) => a.type === 'setup_remote_payments') ?? false,\n\n /**\n * Steps array\n * @returns {Array<{name: string, index: number, visible: boolean, label: string}>}\n */\n steps: stepsArray,\n };\n};\n","import { useQuery } from '@tanstack/react-query';\nimport {\n getV1CompaniesCompanyIdLegalEntities,\n CompanyLegalEntity,\n} from '@/src/client';\nimport { Client } from '@/src/client/client';\nimport { useClient } from '@/src/context';\nimport { useIdentity } from '@/src/common/api/identity';\nimport { hasCompany } from '@/src/common/api/companies';\n\n/**\n * Hook to get the legal entities for a company\n * @param companyId - The company ID\n * @returns The legal entities\n */\nexport const useLegalEntities = () => {\n const { client } = useClient();\n const { data: identity } = useIdentity();\n const companyId = hasCompany(identity) ? (identity?.company?.id ?? '') : '';\n\n return useQuery({\n queryKey: ['legal-entities', companyId],\n queryFn: () =>\n getV1CompaniesCompanyIdLegalEntities({\n client: client as Client,\n path: {\n company_id: companyId,\n },\n query: {\n page_size: 100,\n },\n }),\n select: (data) => data.data?.data?.legal_entities,\n enabled: !!companyId,\n });\n};\n\nexport const useDefaultLegalEntity = () => {\n const { data: legalEntities } = useLegalEntities();\n return legalEntities?.find(\n (legalEntity: CompanyLegalEntity) => legalEntity.is_default,\n );\n};\n"],"mappings":"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","names":["useCallback","useEffect","useMemo","useRef","useState","omit","useQuery","useLegalEntities","__name","client","useClient","identity","useIdentity","companyId","hasCompany","useQuery","getV1CompaniesCompanyIdLegalEntities","data","useDefaultLegalEntity","legalEntities","legalEntity","stepToFormSchemaMap","jsonSchemaToEmployment","contractOriginMapping","contractOriginToBackend","useContractorOnboarding","__name","countryCode","externalId","employmentId","skipSteps","options","onboardingInitialValues","excludeProducts","onContractReviewedRef","useRef","useEffect","internalCountryCode","setInternalCountryCode","useState","internalEmploymentId","setInternalEmploymentId","internalContractDocumentId","setInternalContractDocumentId","fieldsMetaRef","selectedProduct","setSelectedProduct","includeEligibilityQuestionnaire","setIncludeEligibilityQuestionnaire","includeContractPreview","setIncludeContractPreview","includeContractDetails","setIncludeContractDetails","includeContractOrigin","setIncludeContractOrigin","includeInvoiceSchedule","setIncludeInvoiceSchedule","includeCreateInvoiceSchedule","setIncludeCreateInvoiceSchedule","pendingNavigationStep","setPendingNavigationStep","steps","stepsArray","useMemo","buildSteps","fieldValues","stepState","setFieldValues","previousStep","nextStep","goToStep","setStepValues","useStepState","employment","isLoadingEmployment","refetchEmployment","useEmploymentQuery","basicInformation","refetchBasicInformation","useBasicInformationQuery","defaultLegalEntity","useDefaultLegalEntity","openTasks","useCompanyOpenTasks","employmentStatus","isEmploymentReadOnly","reviewStepAllowedEmploymentStatus","canInvite","disabledInviteButtonEmploymentStatus","invitedStatus","createEmploymentMutation","useCreateEmployment","updateEmploymentMutation","useUpdateEmployment","createContractorContractDocumentMutation","useCreateContractorContractDocument","uploadFileMutation","useUploadFile","updateUKandSaudiFieldsMutation","useUpdateUKandSaudiFields","createEligibilityQuestionnaireMutation","usePostCreateEligibilityQuestionnaire","manageContractorCorSubscriptionMutation","usePostManageContractorCorSubscription","setContractOriginMutation","useSetContractOrigin","createInvoiceScheduleMutation","useCreateInvoiceSchedule","updateInvoiceScheduleMutation","useUpdateInvoiceSchedule","updateEmploymentMutationAsync","mutationToPromise","signContractDocumentMutation","useSignContractDocument","manageContractorSubscriptionMutation","usePostManageContractorSubscriptions","deleteContractorCorSubscriptionMutation","useDeleteContractorCorSubscription","createEmploymentMutationAsync","createContractorContractDocumentMutationAsync","signContractDocumentMutationAsync","manageContractorSubscriptionMutationAsync","createEligibilityQuestionnaireMutationAsync","manageContractorCorSubscriptionMutationAsync","deleteContractorCorSubscriptionMutationAsync","setContractOriginMutationAsync","createInvoiceScheduleMutationAsync","updateInvoiceScheduleMutationAsync","selectCountryForm","isLoadingCountries","countries","useCountriesSchemaField","selectedCountry","country","countryName","isPricingPlanEnabled","selectContractorSubscriptionForm","isLoadingContractorSubscriptions","contractorSubscriptions","filteredContractorSubscriptions","refetchContractorSubscriptions","isEligibilityQuestionnaireBlocked","useContractorSubscriptionSchemaField","hasEligibilityQuestionnaireSubmitted","subscription","corProductIdentifier","shouldIncludeEligibilityQuestionnaire","shouldIncludeContractPreview","rawContractOrigin","selectedContractOrigin","isContractProvidedByCustomer","contractorStandardProductIdentifier","eligibilityAnswers","formType","employmentKey","serverEmploymentData","useJSONSchema","form","jsonSchemaOptions","query","jsonSchemaVersion","mergedFormValues","useJSONSchemaForm","isBasicInformationDetailsEnabled","isIR35FileEnabled","ir35File","isLoadingIR35File","useGetIR35File","contractDocuments","isLoadingContractDocuments","useGetContractDocuments","basicInformationForm","isLoadingBasicInformationForm","buildBasicInformationJsfModify","getBasicInformationSchemaVersion","descriptionProvisionalStartDate","calculateProvisionalStartDateDescription","selectedPricingPlan","subscriptions","contractorPlusProductIdentifier","eligibilityFields","isEligibilityQuestionnaireEnabled","eligibilityQuestionnaireForm","isLoadingEligibilityQuestionnaire","useGetEligibilityQuestionnaire","isContractorOnboardingDetailsEnabled","contractorOnboardingDetailsForm","isLoadingContractorOnboardingDetailsForm","useContractorContractDetailsSchema","buildContractDetailsJsfModify","isSignatureSchemaEnabled","signatureSchemaForm","useGetContractDocumentSignatureSchema","buildContractPreviewJsfModify","contractOriginForm","useGetContractOriginSchema","invoiceScheduleForm","useGetInvoiceScheduleSchema","existingInvoiceSchedule","isLoadingInvoiceSchedules","refetchInvoiceSchedule","useGetExistingInvoiceSchedule","createInvoiceScheduleForm","isLoadingCreateInvoiceScheduleForm","useGetCreateInvoiceScheduleSchema","documentPreviewPdf","isLoadingDocumentPreviewForm","refetchDocumentPreviewForm","useGetShowContractDocument","hasCompanySignedContract","useHasCompanySignedContract","stepFields","stepFieldsWithFlatFieldsets","stepPresentation","employmentBasicInformation","employmentContractDetails","employmentCountryCode","selectCountryInitialValues","getInitialValues","convertedIr35File","dataURLtoFile","basicInformationInitialValues","initialValues","contractOriginInitialValues","invoiceScheduleInitialValues","createInvoiceScheduleInitialValues","formValues","item","index","itemNumber","contractDetailsInitialValues","contractPreviewInitialValues","signature","signatory","pricingPlanInitialValues","eligibilityQuestionnaireInitialValues","shouldHandleReadOnlyEmployment","initialLoading","isNavigatingToReview","hasContractPreviewFields","prettifyFormValues","goTo","step","parseFormValues","values","parseJSFToValidate","extractAiValidationError","error","isMutationError","rawError","servicesAndDeliverablesError","REMOTE_AI_ERROR_SOURCE","onSubmit","currentStepName","parsedValues","isEmploymentNotLoaded","hasChangedCountry","basicInformationPayload","omit","response","createStructuredError","basicInformationParsedValues","_servicesAndDeliverablesAiWarning","_servicesAndDeliverablesErrorSkippable","contractDetailsData","shouldSkipAiChecks","payload","contractDocumentId","aiError","transformAiErrorResponse","eorProductIdentifier","CONTRACT_PRODUCT_TITLES","contractOrigin","templateType","shouldShowCreateStep","failures","markContractAsReviewed","handleNextStep","handleValidation","useCallback","checkFieldUpdates","a"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as V}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as V}from"./chunk-WGDZTF7Y.js";import{n as X}from"./chunk-KPJ5YKXS.js";import{a as L}from"./chunk-A7U3KJIP.js";import{c as A,n as U}from"./chunk-AUPAAQUT.js";import{e as G,f as N,g as D}from"./chunk-C4HFMTSB.js";import{b as J}from"./chunk-H2O4CVKF.js";import{a as n,b as u,c as ke}from"./chunk-P37U34EQ.js";var _=u((Fn,z)=>{"use strict";function Me(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}n(Me,"isObject");z.exports=Me});var Q=u((Mn,K)=>{"use strict";var Ne=typeof global=="object"&&global&&global.Object===Object&&global;K.exports=Ne});var $=u((Nn,Y)=>{"use strict";var De=Q(),Le=typeof self=="object"&&self&&self.Object===Object&&self,_e=De||Le||Function("return this")();Y.exports=_e});var ee=u((Dn,Z)=>{"use strict";var $e=$(),He=n(function(){return $e.Date.now()},"now");Z.exports=He});var te=u((_n,ne)=>{"use strict";var We=/\s/;function Be(e){for(var t=e.length;t--&&We.test(e.charAt(t)););return t}n(Be,"trimmedEndIndex");ne.exports=Be});var oe=u((Hn,re)=>{"use strict";var Ae=te(),Ge=/^\s+/;function Je(e){return e&&e.slice(0,Ae(e)+1).replace(Ge,"")}n(Je,"baseTrim");re.exports=Je});var H=u((Bn,ie)=>{"use strict";var Ue=$(),Ve=Ue.Symbol;ie.exports=Ve});var ue=u((An,ce)=>{"use strict";var se=H(),ae=Object.prototype,Xe=ae.hasOwnProperty,ze=ae.toString,R=se?se.toStringTag:void 0;function Ke(e){var t=Xe.call(e,R),r=e[R];try{e[R]=void 0;var o=!0}catch{}var s=ze.call(e);return o&&(t?e[R]=r:delete e[R]),s}n(Ke,"getRawTag");ce.exports=Ke});var fe=u((Jn,le)=>{"use strict";var Qe=Object.prototype,Ye=Qe.toString;function Ze(e){return Ye.call(e)}n(Ze,"objectToString");le.exports=Ze});var ge=u((Vn,pe)=>{"use strict";var de=H(),en=ue(),nn=fe(),tn="[object Null]",rn="[object Undefined]",me=de?de.toStringTag:void 0;function on(e){return e==null?e===void 0?rn:tn:me&&me in Object(e)?en(e):nn(e)}n(on,"baseGetTag");pe.exports=on});var be=u((zn,ve)=>{"use strict";function sn(e){return e!=null&&typeof e=="object"}n(sn,"isObjectLike");ve.exports=sn});var ye=u((Qn,Ce)=>{"use strict";var an=ge(),cn=be(),un="[object Symbol]";function ln(e){return typeof e=="symbol"||cn(e)&&an(e)==un}n(ln,"isSymbol");Ce.exports=ln});var Se=u((Zn,xe)=>{"use strict";var fn=oe(),he=_(),dn=ye(),Te=NaN,mn=/^[-+]0x[0-9a-f]+$/i,pn=/^0b[01]+$/i,gn=/^0o[0-7]+$/i,vn=parseInt;function bn(e){if(typeof e=="number")return e;if(dn(e))return Te;if(he(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=he(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=fn(e);var r=pn.test(e);return r||gn.test(e)?vn(e.slice(2),r?2:8):mn.test(e)?Te:+e}n(bn,"toNumber");xe.exports=bn});var Ee=u((nt,Oe)=>{"use strict";var Cn=_(),W=ee(),je=Se(),yn="Expected a function",hn=Math.max,Tn=Math.min;function xn(e,t,r){var o,s,p,l,a,f,h=0,d=!1,g=!1,j=!0;if(typeof e!="function")throw new TypeError(yn);t=je(t)||0,Cn(r)&&(d=!!r.leading,g="maxWait"in r,p=g?hn(je(r.maxWait)||0,t):p,j="trailing"in r?!!r.trailing:j);function m(i){var v=o,T=s;return o=s=void 0,h=i,l=e.apply(T,v),l}n(m,"invokeFunc");function P(i){return h=i,a=setTimeout(x,t),d?m(i):l}n(P,"leadingEdge");function I(i){var v=i-f,T=i-h,w=t-v;return g?Tn(w,p-T):w}n(I,"remainingWait");function O(i){var v=i-f,T=i-h;return f===void 0||v>=t||v<0||g&&T>=p}n(O,"shouldInvoke");function x(){var i=W();if(O(i))return E(i);a=setTimeout(x,I(i))}n(x,"timerExpired");function E(i){return a=void 0,j&&o?m(i):(o=s=void 0,l)}n(E,"trailingEdge");function b(){a!==void 0&&clearTimeout(a),h=0,o=f=s=a=void 0}n(b,"cancel");function q(){return a===void 0?l:E(W())}n(q,"flush");function S(){var i=W(),v=O(i);if(o=arguments,s=this,f=i,v){if(a===void 0)return P(f);if(g)return clearTimeout(a),a=setTimeout(x,t),m(f)}return a===void 0&&(a=setTimeout(x,t)),l}return n(S,"debounced"),S.cancel=b,S.flush=q,S}n(xn,"debounce");Oe.exports=xn});import{useState as On,useCallback as En,useEffect as Ie,useRef as Rn}from"react";import Pn from"lodash.omit";var Pe=ke(Ee(),1);import{useCallback as Sn,useEffect as jn,useRef as Re}from"react";function B(e,t){let r=Re(e);jn(()=>{r.current=e},[e]);let o=Re((0,Pe.default)(s=>{r.current(s)},t)).current;return Sn(s=>{o(s)},[o])}n(B,"useDebounce");import{Fragment as wn,jsx as y,jsxs as qe}from"react/jsx-runtime";var In=n(({description:e,helpCenter:t,toggle:r,className:o})=>qe("span",{className:o,children:[y(U,{as:"span",helpCenter:t,children:e})," ",r]}),"DescriptionWithConversion"),qn=n(({showConversion:e,targetCurrency:t,className:r,onClick:o})=>{let{components:s}=J(),p=e?`Hide ${t} conversion`:`Show ${t} conversion`,l=s?.button;if(!l)throw new Error("Button component not found");return y(l,{className:r,"data-type":"inline",onClick:o,children:p})},"ConversionToggle"),bt=n(({sourceCurrency:e,targetCurrency:t,mainFieldName:r,conversionFieldName:o,conversionProperties:s,classNamePrefix:p,description:l,conversionType:a="spread",meta:f,splitDescription:h=!1,...d})=>{let[g,j]=On(!1),{setValue:m,watch:P}=A(),I=P(r||d.name),O=Rn(!0),x=e&&t&&e!==t,{mutateAsync:E}=X({type:a}),b=`${d.name}_converted`;Ie(()=>{m(b,r||d.name)},[m,r,d.name,b]),Ie(()=>{if(O.current){O.current=!1;return}m(o,"")},[e,o,m]);let q=En(async(c,C,k)=>{if(!(!c||isNaN(c)||c<=0))return E({source_currency:C,target_currency:k,amount:c})},[E]),S=B(async c=>{let C=N(c),M=1/((await q(C,t,e))?.data?.data.conversion_data?.exchange_rate??1),Fe=G(Number(C)*M);m(o,D(Fe))},500),i=B(async c=>{let C=N(c),M=(await q(C,t,e))?.data?.data.conversion_data.target_amount;m(r||d.name,D(M))},500),v=n(c=>{m(b,r||d.name),g&&S(c.target.value)},"handleMainFieldChange"),T=n(c=>{m(b,o),i(c.target.value)},"handleConversionFieldChange"),w=n(c=>{c.preventDefault(),j(C=>!C),!g&&I&&S(I)},"toggleConversion"),F=x?y(qn,{targetCurrency:t,showConversion:g,className:`${p}-button`,onClick:w}):null,we=h?{meta:f,description:l,descriptionSuffix:F}:{meta:F?Pn(f,"helpCenter"):f,description:F?y(In,{description:l,helpCenter:y(V,{helpCenter:f?.helpCenter}),toggle:F,className:`${p}-description`}):l};return qe(wn,{children:[y(L,{...d,...we,name:r||d.name,additionalProps:{currency:e},type:"text",inputMode:"decimal",pattern:"^[0-9.]*$",maxLength:15,onChange:v}),g&&y(L,{additionalProps:{currency:t},name:o,label:s?.label||"Conversion",description:s?.description,type:"text",inputMode:"decimal",pattern:"^[0-9.]*$",maxLength:15,onChange:T}),y("input",{type:"hidden",name:b,value:P(b)||r||d.name})]})},"CurrencyConversionField");export{bt as a};
|
|
2
|
+
//# sourceMappingURL=chunk-CRH5V5JI.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as t}from"./chunk-4MI7BMM5.js";import{a}from"./chunk-UZFEJMO6.js";import{a as r}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as t}from"./chunk-4MI7BMM5.js";import{a}from"./chunk-UZFEJMO6.js";import{a as r}from"./chunk-TO2GYQR2.js";import{h as m}from"./chunk-AUPAAQUT.js";import{a as n}from"./chunk-P37U34EQ.js";import{useEffect as p}from"react";import{jsx as i}from"react/jsx-runtime";import{createElement as h}from"react";var k=n(({onSubmit:d,className:l,components:c})=>{let{formId:u,playgroundBag:e}=t(),o=a({handleValidation:e.handleValidation,defaultValues:e.initialValues,checkFieldUpdates:e.checkFieldUpdates});p(()=>{e.checkFieldUpdates(o.getValues())},[]);let f=n(async s=>{await e.handleSubmit(s),d?.(s)},"handleFormSubmit");return h(m,{...o,key:`form-${e.selectedSchema}-${e.resetKey}`},i("form",{id:u,onSubmit:o.handleSubmit(f),className:l,children:i(r,{components:c,fields:e.fields??[],fieldValues:e.fieldValues,fieldsets:e.meta["x-jsf-fieldsets"]})}))},"JsonSchemaPlaygroundForm");export{k as a};
|
|
2
|
+
//# sourceMappingURL=chunk-CSXL7LMW.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-CRH5V5JI.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as a}from"react/jsx-runtime";var c=e(({currency:n,desiredCurrency:o,annual_gross_salary_conversion_properties:r,splitDescription:i,...t})=>a(s,{...t,sourceCurrency:n,targetCurrency:o,splitDescription:i,conversionFieldName:"annual_gross_salary_conversion",conversionProperties:{...r,description:r?.description||"Estimated amount. This is an estimation. We calculate conversions based on spot rates that are subject to fluctuation over time."},classNamePrefix:"RemoteFlows-AnnualGrossSalary",conversionType:"no_spread"}),"AnnualGrossSalary");export{c as a};
|
|
2
|
+
//# sourceMappingURL=chunk-D5LOZT54.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as i}from"./chunk-LMYJ6V44.js";import{a as o}from"./chunk-TC7EQZJK.js";import{a as m}from"./chunk-NX7MM6XR.js";import{a as e}from"./chunk-ZXGAFQXW.js";var p={employee_communication:o,termination_details:e,paid_time_off:m,additional_information:i};export{p as a};
|
|
2
|
+
//# sourceMappingURL=chunk-DN6BXTAC.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as c}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as c}from"./chunk-WGDZTF7Y.js";import{a as _}from"./chunk-2HQDOWW2.js";import{j as a,k as i,l as s,n,o as F}from"./chunk-AUPAAQUT.js";import{n as p}from"./chunk-C4HFMTSB.js";import{a as t}from"./chunk-P37U34EQ.js";import{jsx as e,jsxs as U}from"react/jsx-runtime";function R({field:l,fieldState:C,fieldData:o}){let{name:r,label:d,description:m,multiple:f,accept:u}=o;return U(a,{"data-field":r,className:`RemoteFlows__FileUpload__Item__${r}`,children:[e(i,{className:"RemoteFlows__FileUpload__Label",children:d}),e(s,{children:e(_,{onChange:l.onChange,multiple:f,className:p("RemoteFlows__FileUpload__Input"),accept:u,files:l.value})}),(m||o.meta?.helpCenter)&&e("div",{className:"flex items-center justify-between",children:e(n,{className:"RemoteFlows__FileUpload__Description",helpCenter:e(c,{helpCenter:o.meta?.helpCenter}),children:m})}),C.error&&e(F,{className:"RemoteFlows__FileUpload__Error"})]})}t(R,"FileUploadFieldDefault");export{R as a};
|
|
2
|
+
//# sourceMappingURL=chunk-DSYQY3K6.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as e}from"./chunk-ZAOE2DGD.js";import{a as r}from"./chunk-APUJLKUM.js";import{b as n}from"./chunk-WCJZAOZR.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as i}from"react/jsx-runtime";function p(a){let{adminBag:t}=n(),l=r(a),s={...t.initialValues?.basic_information,...t.stepState.values?.select_country};return i(e,{onSubmit:l,defaultValues:s},t.countryCode??"no-country")}o(p,"SelectCountryStep");export{p as a};
|
|
2
|
+
//# sourceMappingURL=chunk-EEZFRK2I.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as _}from"./chunk-5WIBTOCI.js";import{a as h}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as _}from"./chunk-5WIBTOCI.js";import{a as h}from"./chunk-3VTHNE4H.js";import{a as l}from"./chunk-XFVXRCMH.js";import{F as p,L as y,fa as f,pa as C}from"./chunk-VNMUML3T.js";import{e as c}from"./chunk-H2O4CVKF.js";import{a as n}from"./chunk-P37U34EQ.js";import{useMutation as F}from"@tanstack/react-query";import{useQuery as u}from"@tanstack/react-query";var b=n(e=>{let{client:o}=c();return u({...e,queryKey:["company-currencies"],retry:!1,queryFn:n(async()=>{let r=await f({client:o});if(r.error||!r.data)throw new Error("Failed to fetch company currencies");return r},"queryFn"),select:n(({data:r})=>r?.data?.company_currencies.map(t=>({value:t.code,label:t.code}))||[],"select")})},"useCompanyCurrencies"),A=n(()=>{let{client:e}=c();return F({mutationFn:n(o=>C({client:e,headers:{Authorization:""},body:o,query:{action:"send_create_password_email"}}),"mutationFn")})},"useCreateCompanyRequest"),I=n(()=>{let{client:e}=c();return F({mutationFn:n(({companyId:o,payload:r,jsonSchemaVersion:t})=>p({client:e,headers:{Authorization:""},path:{company_id:o},body:r,query:{address_details_json_schema_version:t}}),"mutationFn")})},"useUpdateCompanyRequest"),P=n(e=>{let{client:o}=c(),{data:r,isLoading:t}=u({...h(o,"create-company-countries"),select:n(i=>i.data?.data?.filter(s=>s.eor_onboarding).map(s=>({label:s.name,value:s.code}))||[],"select"),enabled:e?.queryOptions?.enabled}),{data:a,isLoading:m}=b(e?.queryOptions),d=l(_.data.schema,{},e);if(r){let i=d.fields.find(s=>s.name==="country_code");i&&(i.options=r)}if(a){let i=d.fields.find(s=>s.name==="desired_currency");i&&(i.options=a)}return{isLoading:t||m,companyBasicInformationForm:d}},"useCountriesSchemaField"),z=n(({countryCode:e,fieldValues:o,options:r})=>{let{client:t}=c();return u({queryKey:["company-address-details-schema",e],retry:!1,queryFn:n(async()=>{if(!e)throw new Error("Country code is required");let a=await y({client:t,headers:{Authorization:""},path:{country_code:e,form:"address_details"},query:{json_schema_version:r?.jsonSchemaVersion?.form_schema?.address_details||"latest"}});if(a.error||!a.data)throw new Error("Failed to fetch address details schema");return a},"queryFn"),enabled:r?.queryOptions?.enabled&&!!e,select:n(({data:a})=>{let m=a?.data||{};return l(m,o,r)},"select")})},"useAddressDetailsSchema");export{A as a,I as b,P as c,z as d};
|
|
2
|
+
//# sourceMappingURL=chunk-F3UUYQGY.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as r}from"./chunk-SLEK47CR.js";import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as r}from"./chunk-SLEK47CR.js";import{a as t}from"./chunk-GKSG4TTI.js";import{a as f}from"./chunk-QYKJU45J.js";import{a as e}from"./chunk-J5BG6GTH.js";import{a as p}from"./chunk-B5GH36QL.js";import{a as n}from"./chunk-YUNA3QKT.js";import{a}from"./chunk-6WO4PRGN.js";import{a as m}from"./chunk-MRYRNB7Y.js";import{a as i}from"./chunk-P37U34EQ.js";import{useId as c}from"react";import{jsx as F}from"react/jsx-runtime";var k=i(({employmentId:l,render:T,options:d,initialValues:s})=>{let u=c(),o=t({employmentId:l,options:d,initialValues:s});return F(m.Provider,{value:{formId:u,terminationBag:o},children:T({terminationBag:o,components:{SubmitButton:r,Back:n,EmployeeComunicationStep:e,TerminationDetailsStep:a,PaidTimeOffStep:p,AdditionalDetailsStep:f}})})},"TerminationFlow");export{k as a};
|
|
2
|
+
//# sourceMappingURL=chunk-F7ZDULRC.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as N,b as j,c as D,d as O}from"./chunk-F3UUYQGY.js";import{a as I}from"./chunk-A3LRPGV3.js";import{b as v}from"./chunk-NW3D7CPK.js";import{b as C,h as p,i as b,u as R,v as F}from"./chunk-C4HFMTSB.js";import{a as k}from"./chunk-M3TA5X2H.js";import{a as c}from"./chunk-P37U34EQ.js";import{useMemo as S,useRef as ee,useState as A}from"react";var pe=c(({countryCode:L,options:u,initialValues:l})=>{let P=N(),g=j(),{mutateAsync:q}=C(P),{mutateAsync:J}=C(g),[y,U]=A(L||null),[f,B]=A(null),w=ee({company_basic_information:{},address_details:{}}),{fieldValues:V,stepState:a,setFieldValues:W,previousStep:z,nextStep:G,goToStep:H}=k(I),{companyBasicInformationForm:d,isLoading:K}=D({jsfModify:u?.jsfModify?.company_basic_information,queryOptions:{enabled:a.currentStep.name==="company_basic_information"}}),{data:s,isLoading:Q}=O({countryCode:y,fieldValues:a.currentStep.name==="address_details"?{...a.values?.address_details||{},...V}:a.values?.address_details||{},options:{...u,jsfModify:u?.jsfModify?.address_details,queryOptions:{enabled:a.currentStep.name==="address_details"&&!!y&&!!f}}}),i=S(()=>({company_basic_information:d?.fields||[],address_details:s?.fields||[]}),[d?.fields,s?.fields]),X={company_basic_information:null,address_details:s?.meta?.["x-jsf-fieldsets"]||null},h=S(()=>b(i.company_basic_information,{...l,country_code:y||l?.country_code||""}),[i.company_basic_information,y,l]),E=S(()=>b(i.address_details,l||{}),[i.address_details,l]),Y=S(()=>({company_basic_information:h,address_details:E}),[h,E]),Z=c(o=>{H(o)},"goTo"),M=c(async o=>{let r=a.currentStep.name,e=i[r];return d&&r==="company_basic_information"?await p(o,e,{isPartialValidation:!1}):s&&r==="address_details"?await p(o,e,{isPartialValidation:!1}):{}},"parseFormValues");async function $(o){let r=a.currentStep.name,e=await M(o);switch(r in w.current&&(w.current[r]=R(e,i[r])),a.currentStep.name){case"company_basic_information":{if(U(e.country_code),f)return Promise.resolve({data:{countryCode:e.country_code??"",companyOwnerEmail:e.company_owner_email??"",companyOwnerName:e.company_owner_name??"",desiredCurrency:e.desired_currency??"",name:e.name??"",phoneNumber:e.phone_number??"",taxNumber:e.tax_number??""}});let x={country_code:e.country_code,company_owner_email:e.company_owner_email,company_owner_name:e.company_owner_name,desired_currency:e.desired_currency,name:e.name,phone_number:e.phone_number,tax_number:e.tax_number,terms_of_service_accepted_at:v()},n=await q(x);if(n.error)return Promise.resolve({data:null,error:n.error,rawError:n.rawError,fieldErrors:n.fieldErrors});let m=n.data?.data,_,t;if(m)if("data"in m&&m.data){let T=m.data.company;t=T,_=T?.id}else"company"in m&&(t=m.company,_=t?.id);return _&&B(_),Promise.resolve({data:{countryCode:t?.country_code??e.country_code??"",companyOwnerEmail:t?.company_owner_email??e.company_owner_email??"",companyOwnerName:t?.company_owner_name??e.company_owner_name??"",desiredCurrency:t?.desired_currency??e.desired_currency??"",name:t?.name??e.name??"",phoneNumber:t?.phone_number??e.phone_number??"",taxNumber:t?.tax_number??e.tax_number??""}})}case"address_details":{if(!f)throw F("Company ID is required to update address details");let n=await J({companyId:f,payload:{address_details:e},jsonSchemaVersion:u?.jsonSchemaVersion?.form_schema?.address_details});return n.error?Promise.resolve({data:null,error:n.error,rawError:n.rawError,fieldErrors:n.fieldErrors}):Promise.resolve({data:n.data})}default:throw F("Invalid step state")}}return c($,"onSubmit"),{isLoading:K||Q,isSubmitting:P.isPending||g.isPending,fieldValues:V,stepState:a,checkFieldUpdates:W,back:z,next:G,goTo:Z,onSubmit:$,fields:i[a.currentStep.name],meta:{fields:w.current,fieldsets:X[a.currentStep.name]},parseFormValues:M,handleValidation:c(async o=>{if(a.currentStep.name==="company_basic_information"&&d){let r=await p(o,d.fields,{isPartialValidation:!1});return d.handleValidation(r)}if(a.currentStep.name==="address_details"&&s){let r=await p(o,s.fields,{isPartialValidation:!1});return s.handleValidation(r)}return null},"handleValidation"),initialValues:Y}},"useCreateCompany");export{pe as a};
|
|
2
|
+
//# sourceMappingURL=chunk-FDTOQHOJ.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as m,b as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as m,b as s}from"./chunk-GPWQPJQ7.js";import{n as e}from"./chunk-C4HFMTSB.js";import{a as t}from"./chunk-P37U34EQ.js";import{Fragment as a,jsx as n,jsxs as o}from"react/jsx-runtime";var l=t(()=>o(a,{children:[n("div",{className:e("RemoteFlows__EmploymentAgreementInfoContent__InfoBox"),children:n("p",{className:e("RemoteFlows__EmploymentAgreementInfoContent__InfoBoxText"),children:"You are previewing a draft version of our employment agreement template for this specific hire in this specific country, based on the selections you made on the previous screens."})}),n("p",{className:e("RemoteFlows__EmploymentAgreementInfoContent__Description"),children:"Remote's agreements are drafted by local employment and labor law experts to ensure compliance, balance, and efficiency."}),o("div",{children:[n("p",{className:e("RemoteFlows__EmploymentAgreementInfoContent__WarningTitle"),children:"We strongly discourage customizations or redlining."}),n("p",{className:e("RemoteFlows__EmploymentAgreementInfoContent__Description"),children:"Modifying agreements can:"}),o("ul",{className:e("RemoteFlows__EmploymentAgreementInfoContent__List list-disc list-inside"),children:[n("li",{className:e("RemoteFlows__EmploymentAgreementInfoContent__ListItem"),children:"Create compliance risks"}),n("li",{className:e("RemoteFlows__EmploymentAgreementInfoContent__ListItem"),children:"Jeopardize enforceability"}),n("li",{className:e("RemoteFlows__EmploymentAgreementInfoContent__ListItem"),children:"Increase the risk of misemployment"})]})]}),n("p",{className:e("RemoteFlows__EmploymentAgreementInfoContent__Description"),children:"If you have questions or believe a change is necessary, please do not invite the employee. Instead, save this invitation as a draft and contact your Account Executive or Customer Success Manager at Remote."}),o("p",{className:e("RemoteFlows__EmploymentAgreementInfoContent__Description"),children:["If neither is available, please reach out to"," ",n("a",{href:"mailto:help@remote.com",className:e("RemoteFlows__EmploymentAgreementInfoContent__Link"),target:"_blank",rel:"noopener noreferrer",children:"help@remote.com \u2197"}),". Our Legal team will review and, where possible, align your needs with local compliance requirements, before inviting the employee, ensuring a smooth onboarding process."]}),o("p",{className:e("RemoteFlows__EmploymentAgreementInfoContent__Description"),children:["For guidance, see our"," ",n("a",{className:e("RemoteFlows__EmploymentAgreementInfoContent__Link"),href:s(m.employmentAgreements),target:"_blank",rel:"noopener noreferrer",children:"Agreement Engagement Guide \u2197"})," ","to understand what can (and can't) be modified."]})]}),"EmploymentAgreementInfoContent");export{l as a};
|
|
2
|
+
//# sourceMappingURL=chunk-FJD5GFO4.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as t}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as t}from"./chunk-CNSE26GY.js";import{b as o}from"./chunk-PGWKJ6FK.js";import{a as n}from"./chunk-P37U34EQ.js";import{jsx as r}from"react/jsx-runtime";function u(){let{onboardingBag:e}=o();return r(t,{defaultValues:{},onSubmit:n(async()=>{e?.next()},"handleSubmit")})}n(u,"PreviewEmploymentAgreementStep");export{u as a};
|
|
2
|
+
//# sourceMappingURL=chunk-FORYAPUZ.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as m}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as m}from"./chunk-CNSE26GY.js";import{b as a}from"./chunk-PGWKJ6FK.js";import{c as s,i as t}from"./chunk-C4HFMTSB.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function P({components:d,onSubmit:l,onError:i,onSuccess:f}){let{onboardingBag:o}=a(),p=o.fields??[],c=t(p,o.initialValues.benefits);return E(m,{defaultValues:c,components:d,onSubmit:e(async n=>{try{await l?.(n);let r=await o.onSubmit(n);if(r?.data){await f?.(r.data),o?.next();return}if(r?.error){let u=s(r?.fieldErrors||[],o.meta?.fields?.benefits);i?.({error:r.error,rawError:r.rawError,fieldErrors:u})}}catch(r){i?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit")})}e(P,"BenefitsStep");export{P as a};
|
|
2
|
+
//# sourceMappingURL=chunk-GJJFAGAC.js.map
|