@remoteoss/remote-flows 1.52.0 → 1.53.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/README.md +1 -0
- package/dist/CheckboxFieldDefault-IAB3SNK3.js +2 -0
- package/dist/CountryFieldDefault-BVEQY5Q6.js +2 -0
- package/dist/DatePickerFieldDefault-AZFURBQX.js +2 -0
- package/dist/EmailFieldDefault-R7LQD4WN.js +2 -0
- package/dist/FileUploadFieldDefault-WSBZKLNC.js +2 -0
- package/dist/ForcedValueFieldDefault-N3IS2F36.js +2 -0
- package/dist/MultiSelectFieldDefault-XW2WTPDC.js +2 -0
- package/dist/NumberFieldDefault-U5SJAHHQ.js +2 -0
- package/dist/RadioGroupFieldDefault-SXO7A5NI.js +2 -0
- package/dist/SelectFieldDefault-7NL7VFYH.js +2 -0
- package/dist/TelFieldDefault-VDUP2THF.js +2 -0
- package/dist/TextAreaFieldDefault-JEVFVXO7.js +2 -0
- package/dist/TextFieldDefault-EMXPSK7U.js +2 -0
- package/dist/TimeFieldDefault-4WDEHMIJ.js +2 -0
- package/dist/WorkScheduleFieldDefault-YFHD6UUW.js +2 -0
- package/dist/{chunk-UWIUECXU.js → chunk-2BH4CIY3.js} +2 -2
- package/dist/{chunk-YRRX7EOU.js → chunk-2IUT7KWS.js} +2 -2
- package/dist/{chunk-3WRO57UF.js → chunk-3BB4KEIH.js} +2 -2
- package/dist/{chunk-OJ4TXF6G.js → chunk-3CZLKNIW.js} +2 -2
- package/dist/{chunk-MGCW2SS4.js → chunk-3DPDFOYO.js} +2 -2
- package/dist/{chunk-335N2CVQ.js → chunk-3JH25AAF.js} +2 -2
- package/dist/chunk-46IKKWMK.js +2 -0
- package/dist/chunk-46IKKWMK.js.map +1 -0
- package/dist/{chunk-YANQP45B.js → chunk-4FKQXGBR.js} +2 -2
- package/dist/{chunk-4KIOOLOG.js → chunk-4ULD4YI7.js} +2 -2
- package/dist/chunk-4VEKBKZP.js +2 -0
- package/dist/chunk-4VEKBKZP.js.map +1 -0
- package/dist/{chunk-EQOOVJ7K.js → chunk-4X5DGXVM.js} +2 -2
- package/dist/{chunk-I53YCEOC.js → chunk-5POY6QBR.js} +2 -2
- package/dist/{chunk-QIY6K2FB.js → chunk-5QTSHKLK.js} +2 -2
- package/dist/{chunk-JKNE2D47.js → chunk-625V5NV7.js} +2 -2
- package/dist/chunk-677YKNHH.js +2 -0
- package/dist/chunk-677YKNHH.js.map +1 -0
- package/dist/chunk-6FLU37JM.js +2 -0
- package/dist/chunk-6FLU37JM.js.map +1 -0
- package/dist/{chunk-JUSQGITN.js → chunk-7DQOA753.js} +2 -2
- package/dist/{chunk-6OLV37C2.js → chunk-7JZWL4DI.js} +2 -2
- package/dist/chunk-7LP2MXCW.js +2 -0
- package/dist/{chunk-TUIEY7ZM.js.map → chunk-7LP2MXCW.js.map} +1 -1
- package/dist/{chunk-4BFGSBOK.js → chunk-A4WXUJPL.js} +2 -2
- package/dist/chunk-A74I763T.js +2 -0
- package/dist/chunk-A74I763T.js.map +1 -0
- package/dist/{chunk-OT5JE2SM.js → chunk-AVFWX6M6.js} +2 -2
- package/dist/chunk-B6WW4RCM.js +2 -0
- package/dist/chunk-B6WW4RCM.js.map +1 -0
- package/dist/{chunk-GF4MSLVP.js → chunk-BQKSMAW3.js} +2 -2
- package/dist/chunk-BZ7YOEB6.js +2 -0
- package/dist/chunk-BZ7YOEB6.js.map +1 -0
- package/dist/{chunk-FFRROEPQ.js → chunk-C3LOTWEB.js} +2 -2
- package/dist/chunk-CKDQYT7E.js +2 -0
- package/dist/{chunk-ZULOHKU6.js.map → chunk-CKDQYT7E.js.map} +1 -1
- package/dist/{chunk-ROVMQ5NT.js → chunk-CKOXMDGX.js} +2 -2
- package/dist/chunk-CYAISKZB.js +2 -0
- package/dist/chunk-CYAISKZB.js.map +1 -0
- package/dist/{chunk-VRZJWJGM.js → chunk-DAZQJZOF.js} +2 -2
- package/dist/{chunk-HKNQKO5Y.js → chunk-DC4ZTOZE.js} +2 -2
- package/dist/{chunk-ADL2ZH54.js → chunk-EEGKPPQK.js} +2 -2
- package/dist/chunk-EWRSIBE2.js +2 -0
- package/dist/{chunk-LY5PCHQ2.js.map → chunk-EWRSIBE2.js.map} +1 -1
- package/dist/{chunk-3DOSHTJS.js → chunk-F3YBR2IP.js} +2 -2
- package/dist/{chunk-MOOSPB2G.js → chunk-FB23WOLZ.js} +2 -2
- package/dist/chunk-FIPWWOZY.js +2 -0
- package/dist/chunk-FIPWWOZY.js.map +1 -0
- package/dist/{chunk-MZFT4MWM.js → chunk-FZMUZRZN.js} +2 -2
- package/dist/{chunk-B2WE3PSY.js → chunk-G4TPPC5G.js} +2 -2
- package/dist/chunk-GA7B6FUD.js +1 -0
- package/dist/{chunk-I5NW7AQZ.js → chunk-GFGO7E5V.js} +2 -2
- package/dist/{chunk-2L6AB46E.js → chunk-GYMFEHNM.js} +2 -2
- package/dist/{chunk-XLHTMWJ3.js → chunk-GZGBZT7Y.js} +2 -2
- package/dist/{chunk-OAX6TPIP.js → chunk-H4ZSTP7B.js} +2 -2
- package/dist/{chunk-KD7UBTZG.js → chunk-HDFNGXCV.js} +2 -2
- package/dist/chunk-HO5OVZ7J.js +2 -0
- package/dist/chunk-HO5OVZ7J.js.map +1 -0
- package/dist/chunk-IBHCQXIL.js +2 -0
- package/dist/chunk-IBHCQXIL.js.map +1 -0
- package/dist/{chunk-KSSQR2CS.js → chunk-IPQZBMOO.js} +2 -2
- package/dist/{chunk-NVOUXFGX.js → chunk-IRQJR7KU.js} +2 -2
- package/dist/{chunk-SDPYDCS7.js → chunk-IYH7D5ET.js} +2 -2
- package/dist/{chunk-WNOQNNRR.js → chunk-JIGRVBQS.js} +2 -2
- package/dist/{chunk-5FST4WDH.js → chunk-KSCJNGWW.js} +2 -2
- package/dist/chunk-KUQJG26N.js +2 -0
- package/dist/{chunk-PJAHLEOR.js → chunk-KXTESNWQ.js} +2 -2
- package/dist/chunk-L2GAD6S5.js +2 -0
- package/dist/chunk-L2GAD6S5.js.map +1 -0
- package/dist/chunk-L74V3INS.js +2 -0
- package/dist/chunk-L74V3INS.js.map +1 -0
- package/dist/{chunk-WU66SHVJ.js → chunk-LOFKF243.js} +2 -2
- package/dist/{chunk-BYD4TSDD.js → chunk-LRXKF2LC.js} +2 -2
- package/dist/{chunk-L7FN3XPX.js → chunk-M2UGSIVQ.js} +2 -2
- package/dist/{chunk-BQGTMOIQ.js → chunk-N2WIEKM6.js} +2 -2
- package/dist/chunk-NEVSZEMH.js +2 -0
- package/dist/chunk-NEVSZEMH.js.map +1 -0
- package/dist/{chunk-IJS67A57.js → chunk-NHWKX4ED.js} +2 -2
- package/dist/{chunk-LJ32QPJF.js → chunk-NWY6UVCV.js} +2 -2
- package/dist/chunk-OMNDZQ4X.js +2 -0
- package/dist/chunk-OMNDZQ4X.js.map +1 -0
- package/dist/{chunk-SV35IBBH.js → chunk-PDOPI7HR.js} +2 -2
- package/dist/{chunk-3NC2JJM3.js → chunk-PEBKJFMW.js} +2 -2
- package/dist/{chunk-GIBD2ZCJ.js → chunk-PSK3Z52M.js} +2 -2
- package/dist/{chunk-J244N33S.js → chunk-QB6GQW3J.js} +2 -2
- package/dist/{chunk-4AQMMGXK.js → chunk-QFBZ7JTG.js} +2 -2
- package/dist/{chunk-LIZMNUQI.js → chunk-QFLUUNBA.js} +2 -2
- package/dist/{chunk-DIPYFRXX.js → chunk-QIAMSVGB.js} +2 -2
- package/dist/{chunk-LXABE3VR.js → chunk-QNEGC7RZ.js} +2 -2
- package/dist/{chunk-77LDJPXF.js → chunk-QOGWAKHP.js} +2 -2
- package/dist/{chunk-4UN7DBEV.js → chunk-R2NQ3F6J.js} +2 -2
- package/dist/{chunk-463G2HDA.js → chunk-R5THYINT.js} +2 -2
- package/dist/{chunk-6RPIMHYS.js → chunk-R6U3F3O3.js} +2 -2
- package/dist/{chunk-KFIUXU6I.js → chunk-RWPZYB5B.js} +2 -2
- package/dist/{chunk-PJDHQ4ZQ.js → chunk-SQ5OMBOV.js} +2 -2
- package/dist/{chunk-6TLBBS6E.js → chunk-SQKFUT6T.js} +2 -2
- package/dist/{chunk-APSKAXM2.js → chunk-SSPK7NGT.js} +2 -2
- package/dist/{chunk-3BDWVNHX.js → chunk-THUEI7J4.js} +2 -2
- package/dist/chunk-TJOQF7N6.js +2 -0
- package/dist/chunk-TJOQF7N6.js.map +1 -0
- package/dist/{chunk-GSUGHAHA.js → chunk-TNWH6PVQ.js} +2 -2
- package/dist/chunk-TSR7O3QD.js +2 -0
- package/dist/chunk-TSR7O3QD.js.map +1 -0
- package/dist/{chunk-3CGFAN3F.js → chunk-TSX5CPGE.js} +2 -2
- package/dist/chunk-U7X7AHH4.js +2 -0
- package/dist/{chunk-GNVGW65D.js.map → chunk-U7X7AHH4.js.map} +1 -1
- package/dist/{chunk-XPLWBO73.js → chunk-UA22Q6DY.js} +2 -2
- package/dist/{chunk-WHY2WNWH.js → chunk-UGQJQM72.js} +2 -2
- package/dist/{chunk-5DPOL3DT.js → chunk-UX5LWYEO.js} +2 -2
- package/dist/chunk-VC3W5YDI.js +2 -0
- package/dist/chunk-VC3W5YDI.js.map +1 -0
- package/dist/{chunk-I65OXH33.js → chunk-VCJHB56K.js} +2 -2
- package/dist/{chunk-5NN5RWBG.js → chunk-VJTAVPZX.js} +2 -2
- package/dist/{chunk-QMMNXGQF.js → chunk-W5S3F2WP.js} +2 -2
- package/dist/chunk-WBKBVV3X.js +2 -0
- package/dist/chunk-WBKBVV3X.js.map +1 -0
- package/dist/{chunk-7Y4NHODP.js → chunk-WLJX4B55.js} +2 -2
- package/dist/{chunk-B677Q3B3.js → chunk-WNGIJIV2.js} +2 -2
- package/dist/chunk-X2CSXDCG.js +2 -0
- package/dist/chunk-X2CSXDCG.js.map +1 -0
- package/dist/chunk-XCVZRNIN.js +2 -0
- package/dist/{chunk-MNHXHKTE.js.map → chunk-XCVZRNIN.js.map} +1 -1
- package/dist/{chunk-ZJ55AKB6.js → chunk-YCJGDPBN.js} +2 -2
- package/dist/{chunk-H4NJGAN4.js → chunk-YFQNP2SL.js} +2 -2
- package/dist/{chunk-PKORRCMX.js → chunk-YJTKDCA6.js} +2 -2
- package/dist/{chunk-POIDXI3T.js → chunk-YUR2E2H3.js} +2 -2
- package/dist/{chunk-SUGZPBET.js → chunk-YUS4SJPV.js} +2 -2
- package/dist/{chunk-235XZBTZ.js → chunk-YVQ4Q626.js} +2 -2
- package/dist/chunk-ZI7EPJT7.js +2 -0
- package/dist/chunk-ZI7EPJT7.js.map +1 -0
- package/dist/{chunk-HDTQOERP.js → chunk-ZLTZKUXL.js} +2 -2
- package/dist/{chunk-57Y5XQ3D.js → chunk-ZQGG2KNM.js} +2 -2
- package/dist/default-components.js +1 -1
- package/dist/default-components.js.map +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentBack.d.ts +2 -2
- package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.d.ts +2 -2
- package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.js +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +2 -2
- package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentForm.d.ts +2 -2
- package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentSubmit.d.ts +2 -2
- package/dist/flows/ContractAmendment/context.d.ts +4 -4
- package/dist/flows/ContractAmendment/hooks.d.ts +2 -2
- package/dist/flows/ContractAmendment/index.js +1 -1
- package/dist/flows/ContractDocument/ContractDocumentFlow.d.ts +13 -0
- package/dist/flows/ContractDocument/ContractDocumentFlow.js +2 -0
- package/dist/flows/ContractDocument/ContractDocumentFlow.js.map +1 -0
- package/dist/flows/ContractDocument/context.d.ts +38 -0
- package/dist/flows/ContractDocument/context.js +2 -0
- package/dist/flows/ContractDocument/context.js.map +1 -0
- package/dist/flows/ContractDocument/hooks.d.ts +5 -0
- package/dist/flows/ContractDocument/hooks.js +2 -0
- package/dist/flows/ContractDocument/hooks.js.map +1 -0
- package/dist/flows/ContractDocument/index.d.ts +6 -0
- package/dist/flows/ContractDocument/index.js +2 -0
- package/dist/flows/ContractDocument/index.js.map +1 -0
- package/dist/flows/ContractDocument/types.d.ts +5 -0
- package/dist/flows/ContractDocument/types.js +1 -0
- package/dist/flows/ContractDocument/types.js.map +1 -0
- package/dist/flows/ContractDocument/utils.d.ts +15 -0
- package/dist/flows/ContractDocument/utils.js +2 -0
- package/dist/flows/ContractDocument/utils.js.map +1 -0
- package/dist/flows/ContractorOnboarding/ContractorOnboarding.d.ts +4 -4
- package/dist/flows/ContractorOnboarding/ContractorOnboarding.js +1 -1
- package/dist/flows/ContractorOnboarding/api.js +1 -1
- package/dist/flows/ContractorOnboarding/components/BasicInformationStep.d.ts +3 -3
- package/dist/flows/ContractorOnboarding/components/BasicInformationStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/ContractOriginStep.d.ts +2 -2
- 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 +2 -2
- package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/ContractReviewButton.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.d.ts +4 -4
- package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.js +1 -1
- package/dist/flows/ContractorOnboarding/components/CreateInvoiceScheduleStep.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/CreateInvoiceScheduleStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/InvoiceScheduleStep.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/InvoiceScheduleStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/OnboardingBack.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/OnboardingInvite.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/OnboardingInvite.js +1 -1
- package/dist/flows/ContractorOnboarding/components/OnboardingSubmit.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/PreviewInvoiceButton.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/PricingPlan.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/PricingPlan.js +1 -1
- package/dist/flows/ContractorOnboarding/components/SaveDraftButton.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/SelectCountryStep.d.ts +3 -3
- package/dist/flows/ContractorOnboarding/components/SelectCountryStep.js +1 -1
- package/dist/flows/ContractorOnboarding/components/SkipInvoiceScheduleButton.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/components/StatementOfWorkDisclaimer.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/context.d.ts +6 -6
- package/dist/flows/ContractorOnboarding/hooks.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/hooks.js +1 -1
- package/dist/flows/ContractorOnboarding/index.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/index.js +1 -1
- package/dist/flows/ContractorOnboarding/jsfModify.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/types.d.ts +2 -2
- package/dist/flows/ContractorOnboarding/utils.d.ts +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 +2 -2
- package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorResetButton.d.ts +2 -2
- package/dist/flows/CostCalculator/CostCalculatorSubmitButton.d.ts +2 -2
- package/dist/flows/CostCalculator/EstimationResults/EstimationResults.d.ts +2 -2
- package/dist/flows/CostCalculator/SummaryResults/SummaryResults.d.ts +2 -2
- 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 +2 -2
- package/dist/flows/CostCalculator/hooks.js +1 -1
- package/dist/flows/CostCalculator/index.js +1 -1
- package/dist/flows/CostCalculator/utils.js +1 -1
- package/dist/flows/CreateCompany/CreateCompany.d.ts +3 -3
- package/dist/flows/CreateCompany/CreateCompany.js +1 -1
- package/dist/flows/CreateCompany/components/AddressDetailsStep.d.ts +1 -1
- package/dist/flows/CreateCompany/components/AddressDetailsStep.js +1 -1
- package/dist/flows/CreateCompany/components/CompanyBasicInformationStep.d.ts +1 -1
- 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/components/CreateCompanySubmit.d.ts +2 -2
- package/dist/flows/CreateCompany/context.d.ts +4 -4
- package/dist/flows/CreateCompany/hooks.d.ts +1 -1
- package/dist/flows/CreateCompany/hooks.js +1 -1
- package/dist/flows/CreateCompany/index.d.ts +1 -1
- package/dist/flows/CreateCompany/index.js +1 -1
- package/dist/flows/CreateCompany/types.d.ts +1 -1
- package/dist/flows/InvoiceSchedule/InvoiceScheduleFlow.d.ts +3 -3
- package/dist/flows/InvoiceSchedule/InvoiceScheduleForm.d.ts +2 -2
- package/dist/flows/InvoiceSchedule/InvoiceScheduleForm.js +1 -1
- package/dist/flows/InvoiceSchedule/InvoiceSchedulePreviewButton.d.ts +2 -2
- package/dist/flows/InvoiceSchedule/InvoiceScheduleSubmitButton.d.ts +2 -2
- package/dist/flows/InvoiceSchedule/context.d.ts +2 -2
- package/dist/flows/InvoiceSchedule/index.js +1 -1
- 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/JsonSchemaPlaygroundResetButton.d.ts +2 -2
- package/dist/flows/JsonSchemaPlayground/JsonSchemaPlaygroundSubmitButton.d.ts +2 -2
- package/dist/flows/JsonSchemaPlayground/context.d.ts +2 -2
- package/dist/flows/JsonSchemaPlayground/index.js +1 -1
- package/dist/flows/Onboarding/OnboardingFlow.d.ts +3 -3
- package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
- package/dist/flows/Onboarding/api.d.ts +1 -1
- 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 +1 -1
- package/dist/flows/Onboarding/components/BasicInformationStep.js +1 -1
- package/dist/flows/Onboarding/components/BenefitsStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/BenefitsStep.js +1 -1
- package/dist/flows/Onboarding/components/ContractDetailsStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/ContractDetailsStep.js +1 -1
- package/dist/flows/Onboarding/components/DailySchedule/DailySchedule.d.ts +2 -2
- package/dist/flows/Onboarding/components/DailySchedule/DailySchedule.js +1 -1
- package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleContainer.d.ts +2 -2
- package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleContainer.js +1 -1
- package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleEditForm.d.ts +15 -0
- package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleEditForm.js +2 -0
- package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleEditForm.js.map +1 -0
- package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleHoursErrorBanner.d.ts +2 -2
- package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleSummaryBody.d.ts +2 -2
- package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleSummaryBody.js +1 -1
- package/dist/flows/Onboarding/components/DailySchedule/EditEmployeeWorkingHoursDialog.d.ts +21 -0
- package/dist/flows/Onboarding/components/DailySchedule/EditEmployeeWorkingHoursDialog.js +2 -0
- package/dist/flows/Onboarding/components/DailySchedule/EditEmployeeWorkingHoursDialog.js.map +1 -0
- package/dist/flows/Onboarding/components/DailySchedule/constants.d.ts +10 -0
- package/dist/flows/Onboarding/components/DailySchedule/constants.js +2 -0
- package/dist/flows/Onboarding/components/DailySchedule/constants.js.map +1 -0
- package/dist/flows/Onboarding/components/DailySchedule/types.d.ts +78 -5
- package/dist/flows/Onboarding/components/DailySchedule/useDailyScheduleEditForm.d.ts +54 -0
- package/dist/flows/Onboarding/components/DailySchedule/useDailyScheduleEditForm.js +2 -0
- package/dist/flows/Onboarding/components/DailySchedule/useDailyScheduleEditForm.js.map +1 -0
- package/dist/flows/Onboarding/components/DailySchedule/utils.d.ts +14 -2
- package/dist/flows/Onboarding/components/DailySchedule/utils.js +1 -1
- package/dist/flows/Onboarding/components/EmploymentAgreementInfoContent.d.ts +2 -2
- package/dist/flows/Onboarding/components/EmploymentAgreementInfoContent.js +1 -1
- package/dist/flows/Onboarding/components/EngagementAgreementDetailsStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/EngagementAgreementDetailsStep.js +1 -1
- package/dist/flows/Onboarding/components/EquityPriceDetails.d.ts +2 -2
- package/dist/flows/Onboarding/components/OnboardingBack.d.ts +2 -2
- package/dist/flows/Onboarding/components/OnboardingForm.d.ts +3 -3
- package/dist/flows/Onboarding/components/OnboardingForm.js +1 -1
- package/dist/flows/Onboarding/components/OnboardingInvite.d.ts +2 -2
- package/dist/flows/Onboarding/components/OnboardingInvite.js +1 -1
- package/dist/flows/Onboarding/components/OnboardingSubmit.d.ts +2 -2
- package/dist/flows/Onboarding/components/PreOnboardingRequirements.d.ts +1 -1
- package/dist/flows/Onboarding/components/PreOnboardingRequirements.js +1 -1
- package/dist/flows/Onboarding/components/PreviewEmploymentAgreementStep.d.ts +2 -2
- package/dist/flows/Onboarding/components/PreviewEmploymentAgreementStep.js +1 -1
- package/dist/flows/Onboarding/components/ReviewStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/SaveDraftButton.d.ts +2 -2
- package/dist/flows/Onboarding/components/SelectCountryStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/SelectCountryStep.js +1 -1
- package/dist/flows/Onboarding/context.d.ts +5 -5
- package/dist/flows/Onboarding/hooks.d.ts +1 -1
- package/dist/flows/Onboarding/hooks.js +1 -1
- package/dist/flows/Onboarding/index.d.ts +1 -1
- package/dist/flows/Onboarding/index.js +1 -1
- package/dist/flows/Onboarding/types.d.ts +1 -1
- package/dist/flows/Onboarding/utils.d.ts +1 -1
- package/dist/flows/PayrollAdminOnboarding/PayrollAdminOnboardingFlow.d.ts +4 -4
- package/dist/flows/PayrollAdminOnboarding/PayrollAdminOnboardingFlow.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/AdministrativeDetailsStep.d.ts +2 -2
- package/dist/flows/PayrollAdminOnboarding/components/AdministrativeDetailsStep.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/BackButton.d.ts +2 -2
- package/dist/flows/PayrollAdminOnboarding/components/ContractDetailsStep.d.ts +2 -2
- package/dist/flows/PayrollAdminOnboarding/components/ContractDetailsStep.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/InvitationStep.d.ts +2 -2
- 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 +2 -2
- package/dist/flows/PayrollAdminOnboarding/components/SelectCountryStep.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/components/SubmitButton.d.ts +2 -2
- package/dist/flows/PayrollAdminOnboarding/context.d.ts +4 -4
- package/dist/flows/PayrollAdminOnboarding/hooks.d.ts +2 -2
- package/dist/flows/PayrollAdminOnboarding/index.d.ts +2 -2
- package/dist/flows/PayrollAdminOnboarding/index.js +1 -1
- package/dist/flows/PayrollAdminOnboarding/types.d.ts +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/PayrollEmployeeOnboardingFlow.d.ts +4 -4
- package/dist/flows/PayrollEmployeeOnboarding/PayrollEmployeeOnboardingFlow.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/BackButton.d.ts +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/components/BankAccountStep.d.ts +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/components/BankAccountStep.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/FederalTaxesStep.d.ts +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/components/FederalTaxesStep.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/HomeAddressStep.d.ts +2 -2
- 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 +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/components/PersonalDetailsStep.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/StateTaxesStep.d.ts +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/components/StateTaxesStep.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/components/SubmitButton.d.ts +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/context.d.ts +4 -4
- package/dist/flows/PayrollEmployeeOnboarding/hooks.d.ts +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/hooks.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/index.d.ts +2 -2
- package/dist/flows/PayrollEmployeeOnboarding/index.js +1 -1
- package/dist/flows/PayrollEmployeeOnboarding/types.d.ts +2 -2
- package/dist/flows/Termination/AdditionalDetailsForm.d.ts +1 -1
- package/dist/flows/Termination/AdditionalDetailsForm.js +1 -1
- package/dist/flows/Termination/EmployeeComunicationForm.d.ts +1 -1
- package/dist/flows/Termination/EmployeeComunicationForm.js +1 -1
- package/dist/flows/Termination/PaidTimeOffForm.d.ts +1 -1
- package/dist/flows/Termination/PaidTimeOffForm.js +1 -1
- package/dist/flows/Termination/TerminationBack.d.ts +2 -2
- package/dist/flows/Termination/TerminationDetailsForm.d.ts +1 -1
- package/dist/flows/Termination/TerminationDetailsForm.js +1 -1
- package/dist/flows/Termination/TerminationFlow.d.ts +3 -3
- package/dist/flows/Termination/TerminationFlow.js +1 -1
- package/dist/flows/Termination/TerminationForm.d.ts +3 -3
- package/dist/flows/Termination/TerminationForm.js +1 -1
- package/dist/flows/Termination/TerminationSubmit.d.ts +2 -2
- package/dist/flows/Termination/api.d.ts +2 -2
- package/dist/flows/Termination/api.js +1 -1
- package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInfomationContainer.d.ts +2 -2
- package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInformation.d.ts +2 -2
- package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInformationFees.d.ts +2 -2
- package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOff.d.ts +4 -4
- package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOff.js +1 -1
- package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.d.ts +4 -4
- package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.js +1 -1
- package/dist/flows/Termination/components/PaidTimeOff/types.d.ts +2 -2
- package/dist/flows/Termination/components/TerminationDialogInfoContent/TerminationDialogInfoContent.d.ts +2 -2
- package/dist/flows/Termination/components/TerminationDialogInfoContent/TerminationDialogInfoContent.js +1 -1
- package/dist/flows/Termination/components/TerminationReasonsDetailContent/TerminationReasonsDetailContent.d.ts +2 -2
- package/dist/flows/Termination/context.d.ts +5 -5
- package/dist/flows/Termination/hooks.d.ts +1 -1
- package/dist/flows/Termination/hooks.js +1 -1
- package/dist/flows/Termination/index.d.ts +2 -2
- 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 +1 -1
- package/dist/flows/Termination/json-schemas/schema.js +1 -1
- package/dist/flows/Termination/types.d.ts +1 -1
- package/dist/flows/Termination/utils.d.ts +1 -1
- package/dist/flows/Termination/utils.js +1 -1
- package/dist/flows/useStepState.d.ts +2 -2
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +17 -11
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/internals.d.ts +62 -59
- package/dist/internals.js +1 -1
- package/dist/styles.css +1 -1
- package/dist/styles.css.map +1 -1
- package/dist/{types-B2hGbfw_.d.ts → types-B3gx0d05.d.ts} +4 -4
- package/dist/{types-C3sJ1GdL.d.ts → types-CUM3UF3m.d.ts} +8 -8
- package/dist/{types-CTIVW_BN.d.ts → types-DFnvapWX.d.ts} +15 -10
- package/dist/{types-DKfzko2j.d.ts → types-DhMtx0eA.d.ts} +4 -4
- package/dist/{types-p2MsBnGq.d.ts → types-KKMzDO4l.d.ts} +3 -3
- package/dist/{types-Ce5Sou3Z.d.ts → types-PlplBXal.d.ts} +9 -9
- package/dist/types-Q5jEmNSC.d.ts +62 -0
- package/package.json +6 -2
- package/dist/CheckboxFieldDefault-23VE43PP.js +0 -2
- package/dist/CountryFieldDefault-FVAAL55P.js +0 -2
- package/dist/DatePickerFieldDefault-KXEMGK5B.js +0 -2
- package/dist/EmailFieldDefault-OFHDLOOT.js +0 -2
- package/dist/FileUploadFieldDefault-GX22C22E.js +0 -2
- package/dist/ForcedValueFieldDefault-ESITCZWK.js +0 -2
- package/dist/MultiSelectFieldDefault-DAUBH5JV.js +0 -2
- package/dist/NumberFieldDefault-MXZD7YVE.js +0 -2
- package/dist/RadioGroupFieldDefault-QFUUJGSR.js +0 -2
- package/dist/SelectFieldDefault-3QTJE222.js +0 -2
- package/dist/TelFieldDefault-5U5X37LI.js +0 -2
- package/dist/TextAreaFieldDefault-JX2MVJVY.js +0 -2
- package/dist/TextFieldDefault-WCUD6XYS.js +0 -2
- package/dist/TimeFieldDefault-UNF7PKLT.js +0 -2
- package/dist/WorkScheduleFieldDefault-2A2RCDXV.js +0 -2
- package/dist/chunk-2EXX7BNU.js +0 -2
- package/dist/chunk-2EXX7BNU.js.map +0 -1
- package/dist/chunk-3B7FASV7.js +0 -2
- package/dist/chunk-3B7FASV7.js.map +0 -1
- package/dist/chunk-7PEZVTSQ.js +0 -2
- package/dist/chunk-7PEZVTSQ.js.map +0 -1
- package/dist/chunk-7TELDH6M.js +0 -2
- package/dist/chunk-7TELDH6M.js.map +0 -1
- package/dist/chunk-ANPNVWCB.js +0 -2
- package/dist/chunk-C7KVPEVX.js +0 -2
- package/dist/chunk-C7KVPEVX.js.map +0 -1
- package/dist/chunk-COQVI5OD.js +0 -2
- package/dist/chunk-COQVI5OD.js.map +0 -1
- package/dist/chunk-EP3BNRH3.js +0 -2
- package/dist/chunk-EP3BNRH3.js.map +0 -1
- package/dist/chunk-FIJSNO57.js +0 -2
- package/dist/chunk-FIJSNO57.js.map +0 -1
- package/dist/chunk-GNVGW65D.js +0 -2
- package/dist/chunk-LY5PCHQ2.js +0 -2
- package/dist/chunk-MNHXHKTE.js +0 -2
- package/dist/chunk-NQSJBVFL.js +0 -2
- package/dist/chunk-NQSJBVFL.js.map +0 -1
- package/dist/chunk-SMCLTRJW.js +0 -2
- package/dist/chunk-SMCLTRJW.js.map +0 -1
- package/dist/chunk-TUIEY7ZM.js +0 -2
- package/dist/chunk-UBWNTSWS.js +0 -2
- package/dist/chunk-UBWNTSWS.js.map +0 -1
- package/dist/chunk-ZULOHKU6.js +0 -2
- package/dist/flows/Onboarding/json-schemas/selectCountryStep.d.ts +0 -27
- package/dist/flows/Onboarding/json-schemas/selectCountryStep.js +0 -2
- /package/dist/{CheckboxFieldDefault-23VE43PP.js.map → CheckboxFieldDefault-IAB3SNK3.js.map} +0 -0
- /package/dist/{CountryFieldDefault-FVAAL55P.js.map → CountryFieldDefault-BVEQY5Q6.js.map} +0 -0
- /package/dist/{DatePickerFieldDefault-KXEMGK5B.js.map → DatePickerFieldDefault-AZFURBQX.js.map} +0 -0
- /package/dist/{EmailFieldDefault-OFHDLOOT.js.map → EmailFieldDefault-R7LQD4WN.js.map} +0 -0
- /package/dist/{FileUploadFieldDefault-GX22C22E.js.map → FileUploadFieldDefault-WSBZKLNC.js.map} +0 -0
- /package/dist/{ForcedValueFieldDefault-ESITCZWK.js.map → ForcedValueFieldDefault-N3IS2F36.js.map} +0 -0
- /package/dist/{MultiSelectFieldDefault-DAUBH5JV.js.map → MultiSelectFieldDefault-XW2WTPDC.js.map} +0 -0
- /package/dist/{NumberFieldDefault-MXZD7YVE.js.map → NumberFieldDefault-U5SJAHHQ.js.map} +0 -0
- /package/dist/{RadioGroupFieldDefault-QFUUJGSR.js.map → RadioGroupFieldDefault-SXO7A5NI.js.map} +0 -0
- /package/dist/{SelectFieldDefault-3QTJE222.js.map → SelectFieldDefault-7NL7VFYH.js.map} +0 -0
- /package/dist/{TelFieldDefault-5U5X37LI.js.map → TelFieldDefault-VDUP2THF.js.map} +0 -0
- /package/dist/{TextAreaFieldDefault-JX2MVJVY.js.map → TextAreaFieldDefault-JEVFVXO7.js.map} +0 -0
- /package/dist/{TextFieldDefault-WCUD6XYS.js.map → TextFieldDefault-EMXPSK7U.js.map} +0 -0
- /package/dist/{TimeFieldDefault-UNF7PKLT.js.map → TimeFieldDefault-4WDEHMIJ.js.map} +0 -0
- /package/dist/{WorkScheduleFieldDefault-2A2RCDXV.js.map → WorkScheduleFieldDefault-YFHD6UUW.js.map} +0 -0
- /package/dist/{chunk-UWIUECXU.js.map → chunk-2BH4CIY3.js.map} +0 -0
- /package/dist/{chunk-YRRX7EOU.js.map → chunk-2IUT7KWS.js.map} +0 -0
- /package/dist/{chunk-3WRO57UF.js.map → chunk-3BB4KEIH.js.map} +0 -0
- /package/dist/{chunk-OJ4TXF6G.js.map → chunk-3CZLKNIW.js.map} +0 -0
- /package/dist/{chunk-MGCW2SS4.js.map → chunk-3DPDFOYO.js.map} +0 -0
- /package/dist/{chunk-335N2CVQ.js.map → chunk-3JH25AAF.js.map} +0 -0
- /package/dist/{chunk-YANQP45B.js.map → chunk-4FKQXGBR.js.map} +0 -0
- /package/dist/{chunk-4KIOOLOG.js.map → chunk-4ULD4YI7.js.map} +0 -0
- /package/dist/{chunk-EQOOVJ7K.js.map → chunk-4X5DGXVM.js.map} +0 -0
- /package/dist/{chunk-I53YCEOC.js.map → chunk-5POY6QBR.js.map} +0 -0
- /package/dist/{chunk-QIY6K2FB.js.map → chunk-5QTSHKLK.js.map} +0 -0
- /package/dist/{chunk-JKNE2D47.js.map → chunk-625V5NV7.js.map} +0 -0
- /package/dist/{chunk-JUSQGITN.js.map → chunk-7DQOA753.js.map} +0 -0
- /package/dist/{chunk-6OLV37C2.js.map → chunk-7JZWL4DI.js.map} +0 -0
- /package/dist/{chunk-4BFGSBOK.js.map → chunk-A4WXUJPL.js.map} +0 -0
- /package/dist/{chunk-OT5JE2SM.js.map → chunk-AVFWX6M6.js.map} +0 -0
- /package/dist/{chunk-GF4MSLVP.js.map → chunk-BQKSMAW3.js.map} +0 -0
- /package/dist/{chunk-FFRROEPQ.js.map → chunk-C3LOTWEB.js.map} +0 -0
- /package/dist/{chunk-ROVMQ5NT.js.map → chunk-CKOXMDGX.js.map} +0 -0
- /package/dist/{chunk-VRZJWJGM.js.map → chunk-DAZQJZOF.js.map} +0 -0
- /package/dist/{chunk-HKNQKO5Y.js.map → chunk-DC4ZTOZE.js.map} +0 -0
- /package/dist/{chunk-ADL2ZH54.js.map → chunk-EEGKPPQK.js.map} +0 -0
- /package/dist/{chunk-3DOSHTJS.js.map → chunk-F3YBR2IP.js.map} +0 -0
- /package/dist/{chunk-MOOSPB2G.js.map → chunk-FB23WOLZ.js.map} +0 -0
- /package/dist/{chunk-MZFT4MWM.js.map → chunk-FZMUZRZN.js.map} +0 -0
- /package/dist/{chunk-B2WE3PSY.js.map → chunk-G4TPPC5G.js.map} +0 -0
- /package/dist/{flows/Onboarding/json-schemas/selectCountryStep.js.map → chunk-GA7B6FUD.js.map} +0 -0
- /package/dist/{chunk-I5NW7AQZ.js.map → chunk-GFGO7E5V.js.map} +0 -0
- /package/dist/{chunk-2L6AB46E.js.map → chunk-GYMFEHNM.js.map} +0 -0
- /package/dist/{chunk-XLHTMWJ3.js.map → chunk-GZGBZT7Y.js.map} +0 -0
- /package/dist/{chunk-OAX6TPIP.js.map → chunk-H4ZSTP7B.js.map} +0 -0
- /package/dist/{chunk-KD7UBTZG.js.map → chunk-HDFNGXCV.js.map} +0 -0
- /package/dist/{chunk-KSSQR2CS.js.map → chunk-IPQZBMOO.js.map} +0 -0
- /package/dist/{chunk-NVOUXFGX.js.map → chunk-IRQJR7KU.js.map} +0 -0
- /package/dist/{chunk-SDPYDCS7.js.map → chunk-IYH7D5ET.js.map} +0 -0
- /package/dist/{chunk-WNOQNNRR.js.map → chunk-JIGRVBQS.js.map} +0 -0
- /package/dist/{chunk-5FST4WDH.js.map → chunk-KSCJNGWW.js.map} +0 -0
- /package/dist/{chunk-ANPNVWCB.js.map → chunk-KUQJG26N.js.map} +0 -0
- /package/dist/{chunk-PJAHLEOR.js.map → chunk-KXTESNWQ.js.map} +0 -0
- /package/dist/{chunk-WU66SHVJ.js.map → chunk-LOFKF243.js.map} +0 -0
- /package/dist/{chunk-BYD4TSDD.js.map → chunk-LRXKF2LC.js.map} +0 -0
- /package/dist/{chunk-L7FN3XPX.js.map → chunk-M2UGSIVQ.js.map} +0 -0
- /package/dist/{chunk-BQGTMOIQ.js.map → chunk-N2WIEKM6.js.map} +0 -0
- /package/dist/{chunk-IJS67A57.js.map → chunk-NHWKX4ED.js.map} +0 -0
- /package/dist/{chunk-LJ32QPJF.js.map → chunk-NWY6UVCV.js.map} +0 -0
- /package/dist/{chunk-SV35IBBH.js.map → chunk-PDOPI7HR.js.map} +0 -0
- /package/dist/{chunk-3NC2JJM3.js.map → chunk-PEBKJFMW.js.map} +0 -0
- /package/dist/{chunk-GIBD2ZCJ.js.map → chunk-PSK3Z52M.js.map} +0 -0
- /package/dist/{chunk-J244N33S.js.map → chunk-QB6GQW3J.js.map} +0 -0
- /package/dist/{chunk-4AQMMGXK.js.map → chunk-QFBZ7JTG.js.map} +0 -0
- /package/dist/{chunk-LIZMNUQI.js.map → chunk-QFLUUNBA.js.map} +0 -0
- /package/dist/{chunk-DIPYFRXX.js.map → chunk-QIAMSVGB.js.map} +0 -0
- /package/dist/{chunk-LXABE3VR.js.map → chunk-QNEGC7RZ.js.map} +0 -0
- /package/dist/{chunk-77LDJPXF.js.map → chunk-QOGWAKHP.js.map} +0 -0
- /package/dist/{chunk-4UN7DBEV.js.map → chunk-R2NQ3F6J.js.map} +0 -0
- /package/dist/{chunk-463G2HDA.js.map → chunk-R5THYINT.js.map} +0 -0
- /package/dist/{chunk-6RPIMHYS.js.map → chunk-R6U3F3O3.js.map} +0 -0
- /package/dist/{chunk-KFIUXU6I.js.map → chunk-RWPZYB5B.js.map} +0 -0
- /package/dist/{chunk-PJDHQ4ZQ.js.map → chunk-SQ5OMBOV.js.map} +0 -0
- /package/dist/{chunk-6TLBBS6E.js.map → chunk-SQKFUT6T.js.map} +0 -0
- /package/dist/{chunk-APSKAXM2.js.map → chunk-SSPK7NGT.js.map} +0 -0
- /package/dist/{chunk-3BDWVNHX.js.map → chunk-THUEI7J4.js.map} +0 -0
- /package/dist/{chunk-GSUGHAHA.js.map → chunk-TNWH6PVQ.js.map} +0 -0
- /package/dist/{chunk-3CGFAN3F.js.map → chunk-TSX5CPGE.js.map} +0 -0
- /package/dist/{chunk-XPLWBO73.js.map → chunk-UA22Q6DY.js.map} +0 -0
- /package/dist/{chunk-WHY2WNWH.js.map → chunk-UGQJQM72.js.map} +0 -0
- /package/dist/{chunk-5DPOL3DT.js.map → chunk-UX5LWYEO.js.map} +0 -0
- /package/dist/{chunk-I65OXH33.js.map → chunk-VCJHB56K.js.map} +0 -0
- /package/dist/{chunk-5NN5RWBG.js.map → chunk-VJTAVPZX.js.map} +0 -0
- /package/dist/{chunk-QMMNXGQF.js.map → chunk-W5S3F2WP.js.map} +0 -0
- /package/dist/{chunk-7Y4NHODP.js.map → chunk-WLJX4B55.js.map} +0 -0
- /package/dist/{chunk-B677Q3B3.js.map → chunk-WNGIJIV2.js.map} +0 -0
- /package/dist/{chunk-ZJ55AKB6.js.map → chunk-YCJGDPBN.js.map} +0 -0
- /package/dist/{chunk-H4NJGAN4.js.map → chunk-YFQNP2SL.js.map} +0 -0
- /package/dist/{chunk-PKORRCMX.js.map → chunk-YJTKDCA6.js.map} +0 -0
- /package/dist/{chunk-POIDXI3T.js.map → chunk-YUR2E2H3.js.map} +0 -0
- /package/dist/{chunk-SUGZPBET.js.map → chunk-YUS4SJPV.js.map} +0 -0
- /package/dist/{chunk-235XZBTZ.js.map → chunk-YVQ4Q626.js.map} +0 -0
- /package/dist/{chunk-HDTQOERP.js.map → chunk-ZLTZKUXL.js.map} +0 -0
- /package/dist/{chunk-57Y5XQ3D.js.map → chunk-ZQGG2KNM.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/flows/ContractorOnboarding/api.ts","../src/common/api/files.ts","../src/common/api/companies.ts","../src/common/api/identity.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport {\n CompanyAction,\n CreateContractDocument,\n getV1CompaniesCompanyIdActions,\n getV1ContractorsEmploymentsEmploymentIdContractDocumentsId,\n getV1ContractorsEmploymentsEmploymentIdContractorSubscriptions,\n ManageContractorPlusSubscriptionOperationsParams,\n postV1ContractorsEmploymentsEmploymentIdContractDocuments,\n postV1ContractorsEmploymentsEmploymentIdContractorPlusSubscription,\n postV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSign,\n SignContractDocument,\n getV1EmploymentsEmploymentIdContractDocuments,\n EligibilityQuestionnaireJsonSchemaResponse,\n getV1ContractorsSchemasEligibilityQuestionnaire,\n SubmitEligibilityQuestionnaireRequest,\n postV1ContractorsEligibilityQuestionnaire,\n postV1ContractorsEmploymentsEmploymentIdContractorCorSubscription,\n postV1EmploymentsEmploymentIdContractOrigin,\n deleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscription,\n Country,\n PostV1EmploymentsEmploymentIdContractOriginData,\n} from '@/src/client';\nimport { useClient } from '@/src/context';\nimport { signatureSchema } from '@/src/flows/ContractorOnboarding/json-schemas/signature';\nimport { contractOriginSchema } from '@/src/flows/ContractorOnboarding/json-schemas/contractOrigin';\nimport { invoiceScheduleSchema } from '@/src/flows/ContractorOnboarding/json-schemas/invoiceSchedule';\nimport { selectContractorSubscriptionStepSchema } from '@/src/flows/ContractorOnboarding/json-schemas/selectContractorSubscriptionStep';\nimport {\n JSONSchemaFormResultWithFieldsets,\n FlowOptions,\n JSFModify,\n} from '@/src/flows/types';\nimport { clearBase64Data } from '@/src/lib/utils';\nimport { Client } from '@/src/client/client';\nimport { createHeadlessForm } from '@/src/common/createHeadlessForm';\nimport { useMutation, useQuery } from '@tanstack/react-query';\nimport { FieldValues } from 'react-hook-form';\nimport {\n contractorPlusProductIdentifier,\n contractorStandardProductIdentifier,\n corProductIdentifier,\n eorProductIdentifier,\n FEATURES_BY_IDENTIFIER,\n IR35_FILE_SUBTYPE,\n ProductType,\n} from '@/src/flows/ContractorOnboarding/constants';\nimport { $TSFixMe, JSFField } from '@/src/types/remoteFlows';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport {\n useDownloadFile,\n useEmploymentFiles,\n useUploadFile,\n} from '@/src/common/api/files';\nimport { convertFromCents } from '@/src/components/form/utils';\nimport { countriesOptions } from '@/src/common/api/countries';\nimport {\n buildSelectCountryJsfModify,\n selectCountryStepSchema,\n} from '@/src/common/selectCountryStep';\nimport { shouldIncludeProduct } from '@/src/flows/ContractorOnboarding/utils';\nimport { useCompanyPricingPlans, hasCompany } from '@/src/common/api/companies';\nimport { useIdentity } from '@/src/common/api/identity';\n\n/**\n * Get the contract document signature schema\n * @param fieldValues - The field values\n * @param options - The options\n * @returns The contract document signature schema\n */\nexport const useGetContractDocumentSignatureSchema = ({\n fieldValues,\n options,\n}: {\n fieldValues: FieldValues;\n options?: { queryOptions?: { enabled?: boolean }; jsfModify?: JSFModify };\n}) => {\n return useQuery({\n queryKey: [\n 'contract-document-signature',\n fieldValues.review_completed,\n options?.jsfModify,\n ],\n queryFn: async () => {\n return createHeadlessForm(signatureSchema, fieldValues, {\n jsfModify: options?.jsfModify,\n });\n },\n enabled: options?.queryOptions?.enabled,\n });\n};\n\n/**\n * Signs the contract document\n * @param employmentId - The employment ID\n * @param contractDocumentId - The contract document ID\n * @param payload - The payload\n * @returns The signed contract document\n */\nexport const useSignContractDocument = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n contractDocumentId,\n payload,\n }: {\n employmentId: string;\n contractDocumentId: string;\n payload: SignContractDocument;\n }) => {\n return postV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSign(\n {\n client: client as Client,\n body: payload,\n path: {\n employment_id: employmentId,\n contract_document_id: contractDocumentId,\n },\n },\n );\n },\n });\n};\n\n/**\n * Get the contract document for a given employment and contract document ID\n * @param employmentId - The employment ID\n * @param contractDocumentId - The contract document ID\n * @returns The contract document\n */\nexport const useGetShowContractDocument = ({\n employmentId,\n contractDocumentId,\n options,\n}: {\n employmentId: string;\n contractDocumentId: string;\n options?: { queryOptions?: { enabled?: boolean }; jsfModify?: JSFModify };\n}) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['contract-document', employmentId, contractDocumentId],\n queryFn: async () => {\n return getV1ContractorsEmploymentsEmploymentIdContractDocumentsId({\n client: client as Client,\n path: { employment_id: employmentId, id: contractDocumentId },\n });\n },\n enabled: options?.queryOptions?.enabled,\n select: ({ data }) => {\n return {\n ...data?.data,\n contract_document: {\n ...data?.data?.contract_document,\n content: clearBase64Data(\n data?.data?.contract_document?.content as $TSFixMe,\n ),\n },\n };\n },\n });\n};\n\nexport const useHasCompanySignedContract = ({\n employmentId,\n contractDocumentId,\n options,\n}: {\n employmentId: string;\n contractDocumentId: string;\n options?: { queryOptions?: { enabled?: boolean } };\n}) => {\n const { data: documentPreviewPdf } = useGetShowContractDocument({\n employmentId,\n contractDocumentId,\n options: {\n queryOptions: {\n enabled: options?.queryOptions?.enabled,\n },\n },\n });\n\n const hasCompanySignedContract =\n documentPreviewPdf?.contract_document?.signatories?.some(\n (signatory) =>\n signatory.type === 'company' && signatory.status === 'signed',\n );\n\n return {\n hasCompanySignedContract,\n };\n};\n/**\n * Get the contractor subscriptions for the given employment id\n * @param employmentId - The employment ID\n * @returns The contractor subscriptions available\n */\nexport const useGetContractorSubscriptions = ({\n employmentId,\n options,\n}: {\n employmentId: string;\n options?: { queryOptions?: { enabled?: boolean } };\n}) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['contractor-subscriptions', employmentId],\n queryFn: async () => {\n return getV1ContractorsEmploymentsEmploymentIdContractorSubscriptions({\n client: client as Client,\n path: { employment_id: employmentId },\n });\n },\n enabled: options?.queryOptions?.enabled,\n select: ({ data }) => {\n return data?.data;\n },\n });\n};\n\n/**\n * Upgrade or downgrade contractor subscription\n */\nexport const usePostManageContractorSubscriptions = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n payload,\n }: {\n employmentId: string;\n payload: ManageContractorPlusSubscriptionOperationsParams;\n }) => {\n return postV1ContractorsEmploymentsEmploymentIdContractorPlusSubscription(\n {\n client: client as Client,\n body: payload,\n path: {\n employment_id: employmentId,\n },\n },\n );\n },\n });\n};\n\n/**\n * Saves the contractor details data\n * @param employmentId - The employment ID\n * @param payload - The payload\n * @returns The contractor contract document\n */\nexport const useCreateContractorContractDocument = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n payload,\n }: {\n employmentId: string;\n payload: CreateContractDocument;\n }) => {\n return postV1ContractorsEmploymentsEmploymentIdContractDocuments({\n client: client as Client,\n body: payload,\n path: {\n employment_id: employmentId,\n },\n });\n },\n });\n};\n\nexport const CONTRACT_PRODUCT_TITLES = {\n [contractorStandardProductIdentifier]: 'Contractor Management',\n [contractorPlusProductIdentifier]: 'Contractor Management Plus',\n [corProductIdentifier]: 'Contractor of Record',\n};\n\nconst useEorSubscription = (options?: { enabled?: boolean }) => {\n const { data: pricingPlans, isLoading: isLoadingPricingPlans } =\n useCompanyPricingPlans({\n enabled: options?.enabled,\n });\n\n const eorPricingPlan = pricingPlans?.find(\n (plan) => plan.product.name === 'EOR Monthly',\n );\n\n const eorSubscription = eorPricingPlan\n ? {\n product: {\n identifier: eorProductIdentifier,\n short_name: 'EOR',\n },\n currency: eorPricingPlan.price.currency,\n price: {\n amount: convertFromCents(eorPricingPlan.price.amount),\n },\n features: [\n 'Contract between Remote and employee',\n 'Remote manages onboarding, payroll, and compliance',\n 'Manages taxes, benefits, and time-off tracking',\n 'Handles contracts, transfers, and terminations',\n ],\n description: 'Enables hiring in countries without a local entity',\n label: 'Employer of Record',\n value: eorProductIdentifier,\n }\n : null;\n\n return { eorSubscription, isLoading: isLoadingPricingPlans };\n};\n\ntype SelectedCountry =\n | (Pick<Country, 'eor_onboarding' | 'contractor_products_available'> & {\n label: string;\n })\n | undefined;\n\nconst addEorToFieldOptions = (\n fieldOptions: $TSFixMe[],\n eorSubscription: ReturnType<typeof useEorSubscription>['eorSubscription'],\n excludeProducts?: ProductType[],\n) => {\n if (\n eorSubscription &&\n shouldIncludeProduct(eorProductIdentifier, excludeProducts)\n ) {\n fieldOptions.push({\n label: eorSubscription.label,\n value: eorSubscription.value,\n description: eorSubscription.description,\n meta: {\n features: eorSubscription.features,\n price: {\n amount: eorSubscription.price.amount,\n currencyCode: eorSubscription.currency?.code ?? '',\n },\n },\n disabled: false,\n });\n }\n return fieldOptions;\n};\n\nexport const useContractorSubscriptionSchemaField = (\n employmentId: string,\n selectedCountry: SelectedCountry,\n options?: FlowOptions & {\n queryOptions?: { enabled?: boolean };\n excludeProducts?: ProductType[];\n },\n) => {\n const {\n data: contractorSubscriptions,\n isLoading,\n refetch,\n } = useGetContractorSubscriptions({\n employmentId: employmentId,\n options: {\n queryOptions: options?.queryOptions,\n },\n });\n\n const filteredContractorSubscriptions = useMemo(\n () =>\n contractorSubscriptions?.filter((subscription) =>\n shouldIncludeProduct(\n subscription.product.identifier ?? '',\n options?.excludeProducts,\n ),\n ) ?? [],\n [contractorSubscriptions, options?.excludeProducts],\n );\n\n // maximum number of subscriptions\n const MAXIMUM_CONTRACTOR_SUBSCRIPTIONS_COUNT = 3;\n\n const isMissingSubscriptions = contractorSubscriptions\n ? contractorSubscriptions?.length < MAXIMUM_CONTRACTOR_SUBSCRIPTIONS_COUNT\n : false;\n\n const corSubscription = contractorSubscriptions?.find(\n (subscription) => subscription.product.identifier === corProductIdentifier,\n );\n\n const isEligibilityQuestionnaireBlocked =\n corSubscription?.eligibility_questionnaire?.is_blocking;\n\n const showEorSubscription =\n (isMissingSubscriptions || isEligibilityQuestionnaireBlocked) &&\n selectedCountry?.eor_onboarding &&\n !options?.excludeProducts?.includes('eor');\n\n const { eorSubscription, isLoading: isLoadingEorSubscription } =\n useEorSubscription({\n enabled: showEorSubscription,\n });\n\n const hasAvailableOptions =\n filteredContractorSubscriptions.length > 0 ||\n (showEorSubscription && eorSubscription !== null);\n\n const form = createHeadlessForm(\n selectContractorSubscriptionStepSchema.data.schema,\n {},\n {\n ...options,\n jsfModify: {\n ...options?.jsfModify,\n // If no filtered subscriptions are available, make the subscription field optional\n required: hasAvailableOptions\n ? options?.jsfModify?.required\n : (existingRequired: string[]) =>\n existingRequired.filter(\n (fieldName: string) => fieldName !== 'subscription',\n ),\n },\n },\n );\n\n const field: JSFField | undefined = form.fields.find(\n (field) => field.name === 'subscription',\n ) as JSFField | undefined;\n\n if (field) {\n // Start with contractor management options\n const contractorOptions = filteredContractorSubscriptions.map((opts) => {\n const product = opts.product;\n const price = opts.price.amount;\n const currencyCode = opts.currency.code;\n const title =\n CONTRACT_PRODUCT_TITLES[\n product.identifier as keyof typeof CONTRACT_PRODUCT_TITLES\n ] ?? '';\n const label = title;\n const value = product.identifier ?? '';\n const description = product.description ?? '';\n\n if (!product.description) {\n console.error(\n `[Data Integrity] Missing description for product: ${product.identifier}`,\n { product },\n );\n }\n\n const features =\n product.features ??\n FEATURES_BY_IDENTIFIER[\n product.identifier as keyof typeof FEATURES_BY_IDENTIFIER\n ] ??\n [];\n const meta = {\n features,\n price: {\n amount: convertFromCents(price),\n currencyCode: currencyCode,\n },\n };\n return {\n label,\n value,\n description,\n meta,\n disabled:\n isEligibilityQuestionnaireBlocked &&\n product.identifier !== contractorStandardProductIdentifier,\n };\n });\n\n // Sort contractor options\n contractorOptions.sort((a, b) => a.label.localeCompare(b.label));\n\n // Build otherSubscriptions (EOR) with separator metadata\n const otherOptions: $TSFixMe[] = [];\n if (showEorSubscription) {\n addEorToFieldOptions(\n otherOptions as unknown as $TSFixMe[],\n eorSubscription,\n options?.excludeProducts,\n );\n\n // Add separator metadata to first \"other\" option\n // only the first option to avoid problems when iterating over the options\n if (otherOptions.length > 0) {\n otherOptions[0].meta = {\n ...otherOptions[0].meta,\n groupSeparator: {\n show: true,\n },\n };\n }\n }\n\n // Combine all options into the single field\n field.options = [...contractorOptions, ...otherOptions];\n }\n\n return {\n isLoading: isLoading || isLoadingEorSubscription,\n form,\n contractorSubscriptions,\n filteredContractorSubscriptions,\n refetch,\n isEligibilityQuestionnaireBlocked,\n };\n};\n\nexport const useUpdateUKandSaudiFields = (\n createContractorContractDocumentMutation: ReturnType<\n typeof useCreateContractorContractDocument\n >,\n uploadFileMutation: ReturnType<typeof useUploadFile>,\n parsedValues: FieldValues,\n) => {\n const { mutateAsyncOrThrow: uploadFileMutationAsync } =\n mutationToPromise(uploadFileMutation);\n const { mutateAsyncOrThrow: createContractorContractDocumentMutationAsync } =\n mutationToPromise(createContractorContractDocumentMutation);\n\n return {\n mutateAsync: async ({ employmentId }: { employmentId: string }) => {\n const {\n nationality_status: nationalityStatus,\n ir35: ir35Status,\n ir35_sds_file: ir35SdsFile,\n } = parsedValues;\n const ir35ContractDetailsPayload = {\n contract_document: {\n ir_35: ir35Status,\n },\n };\n const nationalityContractDetailsPayload = {\n contract_document: {\n nationality: nationalityStatus,\n },\n };\n if (ir35Status) {\n await createContractorContractDocumentMutationAsync({\n employmentId: employmentId,\n payload: ir35ContractDetailsPayload,\n });\n\n if (ir35SdsFile) {\n return uploadFileMutationAsync({\n employment_id: employmentId,\n file: ir35SdsFile,\n sub_type: IR35_FILE_SUBTYPE,\n });\n }\n return Promise.resolve();\n }\n // nationality status is sent for the countries SAU, KWT, OMN, QAT, BHR\n if (nationalityStatus) {\n return createContractorContractDocumentMutationAsync({\n employmentId: employmentId,\n payload: nationalityContractDetailsPayload,\n });\n }\n\n return Promise.resolve();\n },\n };\n};\n\nexport const useGetIR35File = (\n employmentId: string,\n options?: { enabled?: boolean },\n) => {\n const { data: ir35Files, isLoading: isLoadingFiles } = useEmploymentFiles(\n employmentId,\n {\n sub_type: IR35_FILE_SUBTYPE,\n },\n {\n ...options,\n select: ({ data }) =>\n data?.files?.filter((file) => file.sub_type === IR35_FILE_SUBTYPE),\n },\n );\n const id = ir35Files?.[0]?.id;\n\n const downloadQuery = useDownloadFile(id as string);\n\n return {\n ...downloadQuery,\n isLoading: isLoadingFiles || downloadQuery.isLoading,\n };\n};\n\n/**\n * Get the contract documents for a given employment\n * @param employmentId - The employment ID\n * @param options - The options\n * @returns The contract documents\n */\nexport const useGetContractDocuments = (\n employmentId: string,\n options?: { enabled?: boolean },\n) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['contract-documents', employmentId],\n queryFn: async () => {\n return getV1EmploymentsEmploymentIdContractDocuments({\n client: client as Client,\n path: { employment_id: employmentId },\n });\n },\n enabled: options?.enabled,\n select: ({ data }) => {\n return data?.data?.contract_documents;\n },\n });\n};\n\nexport const useGetEligibilityQuestionnaire = ({\n options,\n fieldValues,\n}: {\n options?: FlowOptions & { queryOptions?: { enabled?: boolean } };\n fieldValues: FieldValues;\n}) => {\n const { client } = useClient();\n return useQuery<\n EligibilityQuestionnaireJsonSchemaResponse['data'],\n Error,\n JSONSchemaFormResultWithFieldsets\n >({\n queryKey: ['eligibility-questionnaire'],\n queryFn: async (): Promise<\n EligibilityQuestionnaireJsonSchemaResponse['data']\n > => {\n const response = await getV1ContractorsSchemasEligibilityQuestionnaire({\n client: client as Client,\n query: {\n type: 'contractor_of_record',\n json_schema_version: 1,\n },\n });\n\n // Extract the data from the response wrapper\n if (response.error) {\n throw new Error('Failed to fetch eligibility questionnaire');\n }\n\n return response.data\n .data as EligibilityQuestionnaireJsonSchemaResponse['data'];\n },\n select: (data: EligibilityQuestionnaireJsonSchemaResponse['data']) => {\n const schema = data?.schema || {};\n return createHeadlessForm(schema, fieldValues, {\n jsfModify: options?.jsfModify,\n });\n },\n enabled: options?.queryOptions?.enabled,\n });\n};\n\nexport const usePostCreateEligibilityQuestionnaire = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n payload,\n }: {\n employmentId: string;\n payload: SubmitEligibilityQuestionnaireRequest['responses'];\n }) => {\n return postV1ContractorsEligibilityQuestionnaire({\n client: client as Client,\n body: {\n employment_slug: employmentId,\n responses: payload,\n type: 'contractor_of_record',\n },\n query: {\n json_schema_version: 1, // TODO: json_schema_version should be dynamic but fixed for now\n },\n });\n },\n });\n};\n\nexport const usePostManageContractorCorSubscription = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({ employmentId }: { employmentId: string }) => {\n return postV1ContractorsEmploymentsEmploymentIdContractorCorSubscription({\n client: client as Client,\n path: {\n employment_id: employmentId,\n },\n });\n },\n });\n};\n\nexport const useDeleteContractorCorSubscription = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({ employmentId }: { employmentId: string }) => {\n return deleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscription(\n {\n client: client as Client,\n path: { employment_id: employmentId },\n },\n );\n },\n });\n};\n\nexport const useSetContractOrigin = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n contractOrigin,\n templateType,\n }: {\n employmentId: string;\n contractOrigin: PostV1EmploymentsEmploymentIdContractOriginData['body']['contract_origin'];\n templateType: PostV1EmploymentsEmploymentIdContractOriginData['body']['template_type'];\n }) => {\n return postV1EmploymentsEmploymentIdContractOrigin({\n client: client as Client,\n path: {\n employment_id: employmentId,\n },\n body: {\n contract_origin: contractOrigin,\n template_type: templateType,\n },\n });\n },\n });\n};\n\nexport const useGetContractOriginSchema = ({\n fieldValues,\n options,\n}: {\n fieldValues: FieldValues;\n options?: { queryOptions?: { enabled?: boolean }; jsfModify?: JSFModify };\n}) => {\n return useQuery({\n queryKey: ['contract-origin-schema', options?.jsfModify],\n queryFn: async () => {\n return createHeadlessForm(contractOriginSchema, fieldValues, {\n jsfModify: options?.jsfModify,\n });\n },\n enabled: options?.queryOptions?.enabled,\n });\n};\n\n// Invoice-schedule API hooks are shared with the standalone InvoiceSchedule flow and live in\n// src/common/invoice-schedules. Re-exported here so existing imports keep resolving.\nexport {\n invoiceSchedulesOptions,\n useCreateInvoiceSchedule,\n useGetCreateInvoiceScheduleSchema,\n useGetExistingInvoiceSchedule,\n usePreviewContractorInvoice,\n useSkipInvoiceSchedule,\n useUpdateInvoiceSchedule,\n} from '@/src/common/invoice-schedules/api';\n\nexport const useGetInvoiceScheduleSchema = ({\n enabled,\n jsfModify,\n}: {\n enabled?: boolean;\n jsfModify?: JSFModify;\n}) => {\n return useMemo(() => {\n if (!enabled) return null;\n return createHeadlessForm(\n invoiceScheduleSchema,\n {},\n {\n jsfModify,\n },\n );\n }, [enabled, jsfModify]);\n};\n\nexport const useCountriesSchemaField = (\n options?: Omit<FlowOptions, 'jsonSchemaVersion'> & {\n queryOptions?: { enabled?: boolean };\n },\n) => {\n const { client } = useClient();\n const { data: countries, isLoading } = useQuery({\n ...countriesOptions(client as Client, 'contractor-onboarding-countries'),\n select: (response) => {\n return (\n response.data?.data?.map((country) => {\n return {\n label: country.name,\n value: country.code,\n eor_onboarding: country.eor_onboarding,\n contractor_products_available:\n country.contractor_products_available,\n };\n }) || []\n );\n },\n enabled: options?.queryOptions?.enabled,\n });\n\n const selectCountryForm = useMemo(\n () =>\n createHeadlessForm(\n selectCountryStepSchema.data.schema,\n {},\n {\n jsfModify: buildSelectCountryJsfModify(countries, options?.jsfModify),\n },\n ),\n [countries, options?.jsfModify],\n );\n\n return {\n isLoading,\n selectCountryForm,\n countries,\n };\n};\n\nexport const useCompanyOpenTasks = ({\n options,\n}: {\n options?: { queryOptions?: { enabled?: boolean } };\n} = {}) => {\n const { data: identity } = useIdentity();\n const companyId = hasCompany(identity) ? (identity?.company?.id ?? '') : '';\n const { client } = useClient();\n\n return useQuery({\n queryKey: ['company-open-tasks', companyId],\n queryFn: () =>\n getV1CompaniesCompanyIdActions({\n client: client as Client,\n path: { company_id: companyId },\n }),\n select: ({ data }) => data?.data?.actions ?? ([] as CompanyAction[]),\n enabled: (options?.queryOptions?.enabled ?? true) && !!companyId,\n });\n};\n","import { useMutation, useQuery, UseQueryOptions } from '@tanstack/react-query';\nimport { Client } from '@/src/client/client';\nimport {\n getV1EmploymentsEmploymentIdFiles,\n getV1FilesId,\n postV1Documents,\n} from '@/src/client/sdk.gen';\nimport {\n GetV1EmploymentsEmploymentIdFilesData,\n GetV1EmploymentsEmploymentIdFilesErrors,\n File as ApiFile,\n ListFilesResponse,\n PostV1DocumentsData,\n} from '@/src/client/types.gen';\nimport { useClient } from '@/src/context';\n\n/**\n * Hook to upload a file associated with a specified employment.\n * @returns A mutation result for uploading employee files.\n */\nexport const useUploadFile = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (params: PostV1DocumentsData['body']) => {\n return postV1Documents({\n client: client as Client,\n body: params,\n headers: {\n Authorization: ``,\n },\n });\n },\n });\n};\n\n/**\n * Hook to download a file by its ID.\n * @param id - The ID of the file to download.\n * @returns A query result containing the file data.\n */\nexport const useDownloadFile = (id: string) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['download-file', id],\n queryFn: async () => {\n const result = await getV1FilesId({\n client: client as Client,\n path: { id: id },\n });\n\n if (result.error) {\n throw result.error;\n }\n\n return result.data;\n },\n select: ({ data }) => data?.file,\n enabled: !!id,\n });\n};\n\n/**\n * Hook to retrieve files associated with a specific employment.\n * @param employmentId - The ID of the employment to retrieve files for.\n * @param queryParams - The query parameters to filter the files.\n * @param queryOptions - Optional TanStack Query options to customize the query behavior.\n * @returns A query result containing the employment files.\n */\nexport const useEmploymentFiles = (\n employmentId: string,\n queryParams: GetV1EmploymentsEmploymentIdFilesData['query'],\n queryOptions?: Omit<\n UseQueryOptions<\n ListFilesResponse,\n GetV1EmploymentsEmploymentIdFilesErrors,\n ApiFile[] | undefined,\n unknown[]\n >,\n 'queryKey' | 'queryFn'\n >,\n) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['employment-files', employmentId],\n queryFn: async () => {\n const result = await getV1EmploymentsEmploymentIdFiles({\n client: client as Client,\n path: { employment_id: employmentId },\n query: queryParams,\n });\n\n if (result.error) {\n throw result.error;\n }\n\n return result.data;\n },\n ...queryOptions,\n });\n};\n","import { useQuery } from '@tanstack/react-query';\nimport { useClient } from '@/src/context';\nimport {\n getV1CompaniesCompanyIdPricingPlans,\n IdentityCurrentResponse,\n} from '@/src/client';\nimport { Client } from '@/src/client/client';\nimport { useIdentity } from '@/src/common/api/identity';\n\nexport function hasCompany(\n identity: IdentityCurrentResponse['data'] | undefined,\n): identity is Extract<\n IdentityCurrentResponse['data'],\n { company: { id: string } }\n> {\n return identity != null && 'company' in identity;\n}\n\nexport const useCompanyPricingPlans = (\n queryOptions: { enabled?: boolean } = { enabled: true },\n) => {\n const { data: identity } = useIdentity();\n const companyId = hasCompany(identity) ? (identity?.company?.id ?? '') : '';\n const { client } = useClient();\n return useQuery({\n queryKey: ['pricing-plans', companyId],\n queryFn: () =>\n getV1CompaniesCompanyIdPricingPlans({\n client: client as Client,\n path: { company_id: companyId },\n }),\n select: (data) => data.data?.data?.pricing_plans,\n enabled: Boolean(queryOptions?.enabled) && !!companyId,\n });\n};\n","import { useQuery } from '@tanstack/react-query';\nimport { getV1IdentityCurrent } from '@/src/client';\nimport { useClient } from '@/src/context';\nimport { Client } from '@/src/client/client';\n\nexport const useIdentity = () => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['identity'],\n queryFn: () =>\n getV1IdentityCurrent({\n client: client as Client,\n headers: { Authorization: `` },\n }),\n select: (data) => data.data?.data,\n });\n};\n"],"mappings":"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","names":["useMemo","useMutation","useQuery","useMutation","useQuery","useUploadFile","__name","client","useClient","useMutation","params","postV1Documents","useDownloadFile","id","useQuery","result","getV1FilesId","data","useEmploymentFiles","employmentId","queryParams","queryOptions","getV1EmploymentsEmploymentIdFiles","useQuery","useQuery","useIdentity","__name","client","useClient","useQuery","getV1IdentityCurrent","data","hasCompany","identity","__name","useCompanyPricingPlans","queryOptions","useIdentity","companyId","client","useClient","useQuery","getV1CompaniesCompanyIdPricingPlans","data","useGetContractDocumentSignatureSchema","__name","fieldValues","options","useQuery","createHeadlessForm","signatureSchema","useSignContractDocument","client","useClient","useMutation","employmentId","contractDocumentId","payload","postV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSign","useGetShowContractDocument","getV1ContractorsEmploymentsEmploymentIdContractDocumentsId","data","clearBase64Data","useHasCompanySignedContract","documentPreviewPdf","signatory","useGetContractorSubscriptions","getV1ContractorsEmploymentsEmploymentIdContractorSubscriptions","usePostManageContractorSubscriptions","postV1ContractorsEmploymentsEmploymentIdContractorPlusSubscription","useCreateContractorContractDocument","postV1ContractorsEmploymentsEmploymentIdContractDocuments","CONTRACT_PRODUCT_TITLES","contractorStandardProductIdentifier","contractorPlusProductIdentifier","corProductIdentifier","useEorSubscription","pricingPlans","isLoadingPricingPlans","useCompanyPricingPlans","eorPricingPlan","plan","eorProductIdentifier","convertFromCents","addEorToFieldOptions","fieldOptions","eorSubscription","excludeProducts","shouldIncludeProduct","useContractorSubscriptionSchemaField","selectedCountry","contractorSubscriptions","isLoading","refetch","filteredContractorSubscriptions","useMemo","subscription","isMissingSubscriptions","isEligibilityQuestionnaireBlocked","showEorSubscription","isLoadingEorSubscription","hasAvailableOptions","form","selectContractorSubscriptionStepSchema","existingRequired","fieldName","field","contractorOptions","opts","product","price","currencyCode","label","value","description","meta","FEATURES_BY_IDENTIFIER","a","b","otherOptions","useUpdateUKandSaudiFields","createContractorContractDocumentMutation","uploadFileMutation","parsedValues","uploadFileMutationAsync","mutationToPromise","createContractorContractDocumentMutationAsync","nationalityStatus","ir35Status","ir35SdsFile","ir35ContractDetailsPayload","nationalityContractDetailsPayload","IR35_FILE_SUBTYPE","useGetIR35File","ir35Files","isLoadingFiles","useEmploymentFiles","file","id","downloadQuery","useDownloadFile","useGetContractDocuments","getV1EmploymentsEmploymentIdContractDocuments","useGetEligibilityQuestionnaire","response","getV1ContractorsSchemasEligibilityQuestionnaire","schema","usePostCreateEligibilityQuestionnaire","postV1ContractorsEligibilityQuestionnaire","usePostManageContractorCorSubscription","postV1ContractorsEmploymentsEmploymentIdContractorCorSubscription","useDeleteContractorCorSubscription","deleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscription","useSetContractOrigin","contractOrigin","templateType","postV1EmploymentsEmploymentIdContractOrigin","useGetContractOriginSchema","contractOriginSchema","useGetInvoiceScheduleSchema","enabled","jsfModify","invoiceScheduleSchema","useCountriesSchemaField","countries","countriesOptions","country","selectCountryForm","selectCountryStepSchema","buildSelectCountryJsfModify","useCompanyOpenTasks","identity","useIdentity","companyId","hasCompany","getV1CompaniesCompanyIdActions"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as r}from"./chunk-X2CSXDCG.js";import{a as n}from"./chunk-A74I763T.js";import{a as t}from"./chunk-P37U34EQ.js";import{useId as e}from"react";import{jsx as u}from"react/jsx-runtime";var D=t(({render:c})=>{let m=e(),o=n();return u(r.Provider,{value:{formId:m,contractDocumentBag:o},children:c(o)})},"ContractDocumentFlow");export{D as a};
|
|
2
|
+
//# sourceMappingURL=chunk-IBHCQXIL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/flows/ContractDocument/ContractDocumentFlow.tsx"],"sourcesContent":["import { useId } from 'react';\nimport { ContractDocumentContext } from '@/src/flows/ContractDocument/context';\nimport { useContractDocument } from '@/src/flows/ContractDocument/hooks';\nimport { ContractDocumentFlowProps } from '@/src/flows/ContractDocument/types';\n\n/**\n * Standalone contract-document flow: contract details, then contract preview. Mount it\n * anywhere — it does not depend on the contractor onboarding flow.\n */\nexport const ContractDocumentFlow = ({ render }: ContractDocumentFlowProps) => {\n const formId = useId();\n const contractDocumentBag = useContractDocument();\n\n return (\n <ContractDocumentContext.Provider value={{ formId, contractDocumentBag }}>\n {render(contractDocumentBag)}\n </ContractDocumentContext.Provider>\n );\n};\n"],"mappings":"wHAAA,OAAS,SAAAA,MAAa,QAclB,cAAAC,MAAA,oBALG,IAAMC,EAAuBC,EAAA,CAAC,CAAE,OAAAC,CAAO,IAAiC,CAC7E,IAAMC,EAASC,EAAM,EACfC,EAAsBC,EAAoB,EAEhD,OACEP,EAACQ,EAAwB,SAAxB,CAAiC,MAAO,CAAE,OAAAJ,EAAQ,oBAAAE,CAAoB,EACpE,SAAAH,EAAOG,CAAmB,EAC7B,CAEJ,EAToC","names":["useId","jsx","ContractDocumentFlow","__name","render","formId","useId","contractDocumentBag","useContractDocument","ContractDocumentContext"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as B}from"./chunk-PVORGGT3.js";import{b as ne,c as re,f as ie}from"./chunk-GSUGHAHA.js";import{a as te}from"./chunk-BUR3X6FL.js";import{a as oe}from"./chunk-2L6AB46E.js";import{a as G}from"./chunk-3OHORFIX.js";import{c as x,h as ee}from"./chunk-C7KVPEVX.js";import{e as h}from"./chunk-SRLBVFNQ.js";import{l as Y,m as j,n as V,r as O}from"./chunk-C4HFMTSB.js";import{b as S,c as T}from"./chunk-H2O4CVKF.js";import{a as r}from"./chunk-P37U34EQ.js";import{Fragment as ro,useEffect as io,useRef as _e}from"react";import H from"lodash.omit";import{jsx as le}from"react/jsx-runtime";function se({description:e,label:o,name:t,minDate:n,maxDate:i,onChange:l,component:m,...s}){let{components:F}=S(),{control:c}=h(),f=T(),d;s.meta?.mot&&typeof s.meta.mot=="number"?d=Y(s.meta.mot):typeof n=="string"&&(d=new Date(`${n}T00:00:00`));let C;return i&&(C=new Date(`${i}T23:59:59`)),le(x,{control:c,name:t,render:({field:p,fieldState:g})=>{let u=m||F?.date;if(!u)throw new Error(`Date picker component not found for field ${t}`);let P={description:e,label:o,name:t,onChange:l,transformHtml:f,...d&&{minDate:d.toISOString()},...C&&{maxDate:C.toISOString()},...s};return le(u,{field:{...p,onChange:r(y=>{p.onChange(y),l?.(y)},"onChange")},fieldState:g,fieldData:P})}})}r(se,"DatePickerField");import{jsx as me}from"react/jsx-runtime";var Oe=r((e,o)=>{if(!o)return null;for(let t of e)if(t instanceof File&&t.size>o){let n=Math.round(o/1048576),i=Math.round(t.size/(1024*1024));return`File "${t.name}" exceeds maximum size of ${n}MB (file is ${i}MB)`}return null},"validateFileSize");function ae({name:e,description:o,label:t,multiple:n=!1,onChange:i,component:l,accept:m,maxSize:s,...F}){let{components:c}=S(),{control:f,setError:d,clearErrors:C}=h(),p=T(),g=r(async(u,P)=>{let y=Oe(u,s);if(y){d(e,{message:y});return}C(e),P.onChange(u),i?.(u)},"handleOnChange");return me(x,{control:f,name:e,render:({field:u,fieldState:P})=>{let y=l||c.file;if(!y)throw new Error(`File upload component not found for field ${e}`);let R={name:e,description:o,label:t,multiple:n,accept:m,maxFileSize:s,transformHtml:p,...F};return me(y,{field:{...u,value:u.value,onChange:r(async w=>g(w,u),"onChange")},fieldState:P,fieldData:R})}})}r(ae,"FileUploadField");import{jsx as de}from"react/jsx-runtime";function J({component:e,onChange:o,...t}){let{components:n}=S(),{control:i}=h(),l=T();return de(x,{control:i,name:t.name,render:({field:m,fieldState:s})=>{let F=e||n.number;if(!F)throw new Error(`Number component not found for field ${t.name}`);let c={onChange:o,transformHtml:l,...t};return de(F,{field:{...m,onChange:r(f=>{m.onChange(f),o?.(f)},"onChange")},fieldState:s,fieldData:c})}})}r(J,"NumberField");import{jsx as pe}from"react/jsx-runtime";function ce({name:e,defaultValue:o,description:t,label:n,options:i,onChange:l,component:m,...s}){let{components:F}=S(),{control:c}=h(),f=T();return pe(x,{control:c,name:e,defaultValue:o,render:({field:d,fieldState:C})=>{let p=m||F?.radio;if(!p)throw new Error(`Radio group component not found for field ${e}`);let g={name:e,defaultValue:o,description:t,label:n,options:i,transformHtml:f,...s};return pe(p,{field:{...d,onChange:r(u=>{d.onChange(u),l?.(u)},"onChange")},fieldState:C,fieldData:g})}})}r(ce,"RadioGroupField");import{jsx as ue}from"react/jsx-runtime";function Fe({label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,component:m,...s}){let{control:F}=h(),{components:c}=S(),f=T();return ue(x,{defaultValue:n,control:F,name:o,render:({field:d,fieldState:C})=>{let p=m||c?.select;if(!p)throw new Error(`Select component not found for field ${o}`);let g={label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,transformHtml:f,...s};return ue(p,{field:{...d,onChange:r(u=>{let y=(Array.isArray(s.jsonType)?s.jsonType.includes("number"):s.jsonType==="number")?Number(u):u;d.onChange(y),l?.(y)},"onChange")},fieldState:C,fieldData:g})}})}r(Fe,"SelectField");import{jsx as fe}from"react/jsx-runtime";function Ce({label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,$meta:m,component:s,...F}){let{control:c}=h(),{components:f}=S(),d=T();return fe(x,{defaultValue:n,control:c,name:o,render:({field:C,fieldState:p})=>{let g=s||f.countries;if(!g)throw new Error(`Country component not found for field ${o}`);let u={label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,$meta:m,transformHtml:d,...F};return fe(g,{field:{...C,onChange:r(P=>{C.onChange(P),l?.(P)},"onChange")},fieldState:p,fieldData:u})}})}r(Ce,"CountryField");import{jsx as ge}from"react/jsx-runtime";function he({name:e,description:o,label:t,onChange:n,maxLength:i,component:l,...m}){let{components:s}=S(),{control:F}=h(),c=T();return ge(x,{control:F,name:e,render:({field:f,fieldState:d})=>{let C=l||s.textarea;if(!C)throw new Error(`Text area component not found for field ${e}`);let p={name:e,description:o,label:t,maxLength:i,transformHtml:c,...m};return ge(C,{field:{...f,onChange:r(g=>{f.onChange(g),n?.(g)},"onChange")},fieldState:d,fieldData:p})}})}r(he,"TextAreaField");import{jsx as Se}from"react/jsx-runtime";function Te({component:e,onChange:o,...t}){let{components:n}=S(),{control:i}=h(),l=T();return Se(x,{control:i,name:t.name,render:({field:m,fieldState:s})=>{let F=e||n.email;if(!F)throw new Error(`Email component not found for field ${t.name}`);let c={onChange:o,transformHtml:l,...t};return Se(F,{field:{...m,onChange:r(f=>{m.onChange(f),o?.(f)},"onChange")},fieldState:s,fieldData:c})}})}r(Te,"EmailField");import{useEffect as Ge}from"react";import{jsx as xe}from"react/jsx-runtime";function ye(e){let{control:o,setValue:t}=h();return Ge(()=>{e.const!==void 0&&e.const===e.default&&e.name&&t(e.name,e.const)},[e.const,e.default,e.name,t]),xe(x,{control:o,name:e.name,render:({field:n})=>xe("input",{...n,type:"hidden"})})}r(ye,"HiddenField");import{useEffect as Ue,useState as Ze}from"react";import{jsx as Pe}from"react/jsx-runtime";function be(e){let{components:o}=S(),{setValue:t,control:n,watch:i}=h(),l=T(),m=i(e.name),[s,F]=Ze(m),{workHoursSummary:c,breakSummary:f}=re(s),d=ne(s);Ue(()=>{t(e.name,s)},[s,e.name,t]);function C(u){F(u)}r(C,"onSubmit");let p=e.component||o["work-schedule"];if(!p)throw new Error(`Work schedule component not found for field ${e.name}`);let g={...e,onSubmit:C,currentSchedule:s,transformHtml:l,defaultFormattedValue:{workHoursSummary:c,breakSummary:f,totalWorkHours:d}};return Pe(x,{control:n,name:e.name,render:({field:u,fieldState:P})=>Pe(p,{field:{...u,onChange:r(y=>{u.onChange(y),e.onChange?.(y)},"onChange")},fieldState:P,fieldData:g})})}r(be,"WorkScheduleField");import{jsx as $e}from"react/jsx-runtime";function De({label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,component:m,...s}){let{control:F}=h(),{components:c}=S(),f=T();return $e(x,{defaultValue:n,control:F,name:o,render:({field:d,fieldState:C})=>{let p=m||c?.["multi-select"];if(!p)throw new Error(`Multi select component not found for field ${o}`);let g={label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,transformHtml:f,...s};return $e(p,{field:{...d,onChange:r(u=>{d.onChange(u),l?.(u)},"onChange")},fieldState:C,fieldData:g})}})}r(De,"MultiSelectField");import{jsx as Ke}from"react/jsx-runtime";var Ee=r(e=>Ke(J,{maxLength:15,...e}),"MoneyField");import{useMemo as I,useCallback as Re,useState as qe,useEffect as Qe,useRef as Xe}from"react";import{jsx as U}from"react/jsx-runtime";function Ye(e){return e.replace(/\s/g,"")}r(Ye,"removeSpaces");function ve(e="",o){let t=new RegExp(`^(\\+|00)(\\d{${o?.dialCode?.length??0}})(.*)$`),n=e?.match(t);if(!n)return{prefix:"",dialCode:"",phoneNumber:e};let[,i,l,m]=n;return{prefix:i,dialCode:l,phoneNumber:m}}r(ve,"getStructuredNumberFromInternationalNumber");function we({dialCodes:e,dialCodeMaxLength:o},t){let{prefix:n}=ve(t);if(n)for(let i=o+n.length;i>n.length;i--){let l=t.slice(n.length,i);if(e[l])return e[l]}}r(we,"getCountryFromPhoneNumber");function Me(e){let o={},t=0;return e.forEach(n=>{n.areaCodes?n.areaCodes.forEach(i=>{let l=n.dialCode+i;o[l]=n,l.length>t&&(t=l.length)}):(o[n.dialCode]=n,n.dialCode.length>t&&(t=n.dialCode.length))}),{dialCodes:o,dialCodeMaxLength:t}}r(Me,"getCountryDataByCountryCode");function je(e=""){let o=/\(([^)]+)\)/g,t=e.match(o);if(t?.length===2)return t[1].replace(/\(|\)/g,"").split("|")}r(je,"getAreaCodesFromPattern");function eo(e){return e.map(o=>({name:o.label,dialCode:o.meta.countryCode,pattern:o.pattern,areaCodes:je(o.pattern)}))}r(eo,"transformSchemaToCountries");function oo({field:e,fieldState:o,fieldData:t,component:n,onChangeCountryCode:i,onChangePhoneNumber:l}){let{value:m}=e,{options:s}=t,F=I(()=>eo(s),[s]),c=I(()=>Me(F),[F]),f=Xe(!1),[d,C]=qe(()=>we(Me(F),m||""));Qe(()=>{if((!m||m==="+")&&(f.current=!1),f.current)return;let R=we(c,m||"");C(R)},[m,c]);let{prefix:p,phoneNumber:g}=I(()=>ve(m,d),[m,d]),u=Re(R=>{if(!R)return;let w=`+${R.dialCode}${g}`;f.current=!0,C(R),e.onChange(w),i&&i(R)},[g,e,i]),P=Re(R=>{let w=Ye(R.target.value),D;if(d?D=`${p}${d.dialCode}${w}`:D=`${p}${w}`,e.onChange(D),l){let L={target:{value:D,name:e.name}};l(L)}},[d,p,e,l]),y=I(()=>({...t,onChangeCountryCode:u,onChangePhoneNumber:P,currentCountry:d,nationalPhoneNumber:g}),[t,u,P,d,g]);return U(n,{field:e,fieldState:o,fieldData:y})}r(oo,"TelFieldRenderer");function Ne({name:e,description:o,label:t,onChangeCountryCode:n,onChangePhoneNumber:i,component:l,...m}){let{components:s}=S(),{control:F}=h(),c=T();return U(x,{control:F,name:e,render:({field:f,fieldState:d})=>{let C=l||s.tel;if(!C)throw new Error(`Tel component not found for field ${e}`);let p={name:e,description:o,label:t,transformHtml:c,...m};return U(oo,{field:f,fieldState:d,fieldData:p,component:C,onChangeCountryCode:n,onChangePhoneNumber:i})}})}r(Ne,"TelField");import{jsx as ke}from"react/jsx-runtime";function Ve({name:e,description:o,label:t,type:n,onChange:i,component:l,maxLength:m,...s}){let{components:F}=S(),{control:c}=h(),f=T();return ke(x,{control:c,name:e,render:({field:d,fieldState:C})=>{let p=l||F?.time;if(!p)throw new Error(`Time component not found for field ${e}`);let g={name:e,description:o,label:t,type:n,onChange:i,maxLength:m,transformHtml:f,...s};return ke(p,{field:{...d,onChange:r(u=>{d.onChange(u),i?.(u)},"onChange")},fieldState:C,fieldData:g})}})}r(Ve,"TimeField");var Z={checkbox:ie,text:oe,email:Te,money:Ee,select:Fe,"multi-select":De,radio:ce,number:J,file:ae,date:se,textarea:he,countries:Ce,hidden:ye,tel:Ne,time:Ve,"work-schedule":be};import{useEffect as to}from"react";import{jsx as no}from"react/jsx-runtime";function He({name:e,value:o,description:t,statement:n,label:i,helpCenter:l}){let{setValue:m}=h(),{components:s}=S(),F=T();to(()=>{m(e,o)},[e,o,m]);let c=n?.description||t,f=n?.title?O(n.title):O(i);if(!c&&!n?.title)return null;let C=s?.forcedValue;if(!C)throw new Error(`Forced value component not found for field ${e}`);return no(C,{fieldData:{name:e,value:o,title:f,description:c,meta:{helpCenter:l},transformHtml:F}})}r(He,"ForcedValueField");import{Fragment as K,jsx as b,jsxs as N}from"react/jsx-runtime";function We({label:e,name:o,fields:t,description:n,components:i,statement:l,isFlatFieldset:m,extra:s,variant:F="outset",features:c,meta:f,Component:d,...C}){let{helpCenter:p}=f||{},{watch:g,setValue:u,trigger:P,formState:y}=h(),{components:R}=S(),w=c?.toggle?.stateField,D=w?g(w):c?.toggle?.defaultExpanded??!0,L=t.map(({name:a})=>`${o}.${a}`),Ae=t.some(a=>a.calculateDynamicProperties),_=g(L),Be=Ae?g():_,q=_e(_),k=_e(null),Je=r(()=>{w&&u(w,!D)},"toggleExpanded");io(()=>{let a=_,v=q.current,E=y.isSubmitted||y.submitCount>0,W=!1;for(let M=0;M<a.length;M++)if(a[M]!==void 0&&v[M]!==a[M]){W=!0;break}return W&&E&&(k.current&&clearTimeout(k.current),k.current=setTimeout(()=>{P()},50)),q.current=[...a],()=>{k.current&&clearTimeout(k.current)}},[_,P,y.isSubmitted,y.submitCount]);let Ie=R?.fieldsetToggle||te,Q=`${o}-content`,X=`${o}-header`;return d?b(d,{...C,name:o,value:g(o),setValue:a=>{u(o,a)}}):N("fieldset",{className:V("border-1 border-input p-4 rounded-xl","RemoteFlows__FieldSetField",`RemoteFlows__FieldSetField__${o}`),children:[b("legend",{className:V("text-sm font-semibold px-2",F==="inset"&&"hidden"),children:e}),p?.callToAction&&p?.id&&F==="outset"&&b(G,{className:"RemoteFlows__FieldSetField__HelpCenterLink mb-3",zendeskId:p.id,children:p.callToAction}),F==="inset"&&N(K,{children:[N("div",{className:"RemoteFlows__FieldSetField__Header",id:X,"data-state":D?"expanded":"collapsed","aria-expanded":D,children:[b("h3",{className:V("RemoteFlows__FieldSetField__Title"),children:e}),c?.toggle?.enabled&&b(Ie,{isExpanded:D,onToggle:Je,"aria-expanded":D,"aria-controls":Q,"aria-label":`${D?"Hide":"Show"} ${e}`,className:V("RemoteFlows__FieldSetField__Toggle",c.toggle?.className),children:D?c.toggle.labels?.collapse??"Remove":c.toggle.labels?.expand??"Define"})]}),p?.callToAction&&p?.id&&b(G,{className:"RemoteFlows__FieldSetField__HelpCenterLink mb-3",zendeskId:p.id,children:p.callToAction})]}),D&&N("div",{id:Q,"aria-labelledby":X,role:"region",children:[n?b(ee,{as:"div",className:"mb-5 RemoteFlows__FieldSetField__Description",children:n}):null,N("div",{className:"grid gap-4",children:[t.map(a=>{if(a.calculateDynamicProperties&&(a={...a,...a.calculateDynamicProperties(Be,a)||{}}),a.isVisible===!1||a.deprecated)return null;let v=a.type,E=`${m?a.name:`${o}.${a.name}`}`,W=j(a),M=r(($,A)=>a.WrapperComponent?b(a.WrapperComponent,{children:$},A):b(ro,{children:$},A),"wrapWithCustomWrapper");if(W){let $=H(a,"WrapperComponent");return M(b(He,{name:E,description:$.description,value:$.const,statement:$.statement,label:$.label,helpCenter:$.meta?.helpCenter}),E)}if(v==="fieldset"){let $=H(a,"WrapperComponent");return M(b(We,{...$,name:E,components:i}),E)}if(v==="fieldset-flat"){let $=H(a,"WrapperComponent");return M(b(We,{...$,name:E,components:i,isFlatFieldset:!0}),E)}let z=Z[v];if(a.Component){let{Component:$}=a,A=H(a,"WrapperComponent");return M(N(K,{children:[b($,{...A,value:g(E),setValue:ze=>{u(E,ze)}}),a.statement?b(B,{...a.statement}):null,a.extra?a.extra:null]}),E)}if(!z)return N("p",{className:"error",children:["Field type ",v," not supported"]});v==="select"&&a.multiple&&(z=Z["multi-select"]);let Le=H(a,"WrapperComponent");return M(N(K,{children:[b(z,{...Le,name:E,component:i?.[v]}),a.statement?b(B,{...a.statement}):null,a.extra?a.extra:null]}),E)}),s||null,l?b(B,{...l}):null]})]})]})}r(We,"FieldSetField");export{Z as a,He as b,We as c};
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as B}from"./chunk-PVORGGT3.js";import{a as te}from"./chunk-BUR3X6FL.js";import{b as ne,c as re,f as ie}from"./chunk-TNWH6PVQ.js";import{a as oe}from"./chunk-GYMFEHNM.js";import{a as G}from"./chunk-3OHORFIX.js";import{b as x,g as ee}from"./chunk-NEVSZEMH.js";import{e as h}from"./chunk-SRLBVFNQ.js";import{l as Y,m as j,n as V,r as O}from"./chunk-C4HFMTSB.js";import{b as S,c as T}from"./chunk-H2O4CVKF.js";import{a as r}from"./chunk-P37U34EQ.js";import{Fragment as ro,useEffect as io,useRef as _e}from"react";import H from"lodash.omit";import{jsx as le}from"react/jsx-runtime";function se({description:e,label:o,name:t,minDate:n,maxDate:i,onChange:l,component:m,...s}){let{components:F}=S(),{control:c}=h(),f=T(),d;s.meta?.mot&&typeof s.meta.mot=="number"?d=Y(s.meta.mot):typeof n=="string"&&(d=new Date(`${n}T00:00:00`));let C;return i&&(C=new Date(`${i}T23:59:59`)),le(x,{control:c,name:t,render:({field:p,fieldState:g})=>{let u=m||F?.date;if(!u)throw new Error(`Date picker component not found for field ${t}`);let P={description:e,label:o,name:t,onChange:l,transformHtml:f,...d&&{minDate:d.toISOString()},...C&&{maxDate:C.toISOString()},...s};return le(u,{field:{...p,onChange:r(y=>{p.onChange(y),l?.(y)},"onChange")},fieldState:g,fieldData:P})}})}r(se,"DatePickerField");import{jsx as me}from"react/jsx-runtime";var Oe=r((e,o)=>{if(!o)return null;for(let t of e)if(t instanceof File&&t.size>o){let n=Math.round(o/1048576),i=Math.round(t.size/(1024*1024));return`File "${t.name}" exceeds maximum size of ${n}MB (file is ${i}MB)`}return null},"validateFileSize");function ae({name:e,description:o,label:t,multiple:n=!1,onChange:i,component:l,accept:m,maxSize:s,...F}){let{components:c}=S(),{control:f,setError:d,clearErrors:C}=h(),p=T(),g=r(async(u,P)=>{let y=Oe(u,s);if(y){d(e,{message:y});return}C(e),P.onChange(u),i?.(u)},"handleOnChange");return me(x,{control:f,name:e,render:({field:u,fieldState:P})=>{let y=l||c.file;if(!y)throw new Error(`File upload component not found for field ${e}`);let R={name:e,description:o,label:t,multiple:n,accept:m,maxFileSize:s,transformHtml:p,...F};return me(y,{field:{...u,value:u.value,onChange:r(async w=>g(w,u),"onChange")},fieldState:P,fieldData:R})}})}r(ae,"FileUploadField");import{jsx as de}from"react/jsx-runtime";function J({component:e,onChange:o,...t}){let{components:n}=S(),{control:i}=h(),l=T();return de(x,{control:i,name:t.name,render:({field:m,fieldState:s})=>{let F=e||n.number;if(!F)throw new Error(`Number component not found for field ${t.name}`);let c={onChange:o,transformHtml:l,...t};return de(F,{field:{...m,onChange:r(f=>{m.onChange(f),o?.(f)},"onChange")},fieldState:s,fieldData:c})}})}r(J,"NumberField");import{jsx as pe}from"react/jsx-runtime";function ce({name:e,defaultValue:o,description:t,label:n,options:i,onChange:l,component:m,...s}){let{components:F}=S(),{control:c}=h(),f=T();return pe(x,{control:c,name:e,defaultValue:o,render:({field:d,fieldState:C})=>{let p=m||F?.radio;if(!p)throw new Error(`Radio group component not found for field ${e}`);let g={name:e,defaultValue:o,description:t,label:n,options:i,transformHtml:f,...s};return pe(p,{field:{...d,onChange:r(u=>{d.onChange(u),l?.(u)},"onChange")},fieldState:C,fieldData:g})}})}r(ce,"RadioGroupField");import{jsx as ue}from"react/jsx-runtime";function Fe({label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,component:m,...s}){let{control:F}=h(),{components:c}=S(),f=T();return ue(x,{defaultValue:n,control:F,name:o,render:({field:d,fieldState:C})=>{let p=m||c?.select;if(!p)throw new Error(`Select component not found for field ${o}`);let g={label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,transformHtml:f,...s};return ue(p,{field:{...d,onChange:r(u=>{let y=(Array.isArray(s.jsonType)?s.jsonType.includes("number"):s.jsonType==="number")?Number(u):u;d.onChange(y),l?.(y)},"onChange")},fieldState:C,fieldData:g})}})}r(Fe,"SelectField");import{jsx as fe}from"react/jsx-runtime";function Ce({label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,$meta:m,component:s,...F}){let{control:c}=h(),{components:f}=S(),d=T();return fe(x,{defaultValue:n,control:c,name:o,render:({field:C,fieldState:p})=>{let g=s||f.countries;if(!g)throw new Error(`Country component not found for field ${o}`);let u={label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,$meta:m,transformHtml:d,...F};return fe(g,{field:{...C,onChange:r(P=>{C.onChange(P),l?.(P)},"onChange")},fieldState:p,fieldData:u})}})}r(Ce,"CountryField");import{jsx as ge}from"react/jsx-runtime";function he({name:e,description:o,label:t,onChange:n,maxLength:i,component:l,...m}){let{components:s}=S(),{control:F}=h(),c=T();return ge(x,{control:F,name:e,render:({field:f,fieldState:d})=>{let C=l||s.textarea;if(!C)throw new Error(`Text area component not found for field ${e}`);let p={name:e,description:o,label:t,maxLength:i,transformHtml:c,...m};return ge(C,{field:{...f,onChange:r(g=>{f.onChange(g),n?.(g)},"onChange")},fieldState:d,fieldData:p})}})}r(he,"TextAreaField");import{jsx as Se}from"react/jsx-runtime";function Te({component:e,onChange:o,...t}){let{components:n}=S(),{control:i}=h(),l=T();return Se(x,{control:i,name:t.name,render:({field:m,fieldState:s})=>{let F=e||n.email;if(!F)throw new Error(`Email component not found for field ${t.name}`);let c={onChange:o,transformHtml:l,...t};return Se(F,{field:{...m,onChange:r(f=>{m.onChange(f),o?.(f)},"onChange")},fieldState:s,fieldData:c})}})}r(Te,"EmailField");import{useEffect as Ge}from"react";import{jsx as xe}from"react/jsx-runtime";function ye(e){let{control:o,setValue:t}=h();return Ge(()=>{e.const!==void 0&&e.const===e.default&&e.name&&t(e.name,e.const)},[e.const,e.default,e.name,t]),xe(x,{control:o,name:e.name,render:({field:n})=>xe("input",{...n,type:"hidden"})})}r(ye,"HiddenField");import{useEffect as Ue,useState as Ze}from"react";import{jsx as Pe}from"react/jsx-runtime";function be(e){let{components:o}=S(),{setValue:t,control:n,watch:i}=h(),l=T(),m=i(e.name),[s,F]=Ze(m),{workHoursSummary:c,breakSummary:f}=re(s),d=ne(s);Ue(()=>{t(e.name,s)},[s,e.name,t]);function C(u){F(u)}r(C,"onSubmit");let p=e.component||o["work-schedule"];if(!p)throw new Error(`Work schedule component not found for field ${e.name}`);let g={...e,onSubmit:C,currentSchedule:s,transformHtml:l,defaultFormattedValue:{workHoursSummary:c,breakSummary:f,totalWorkHours:d}};return Pe(x,{control:n,name:e.name,render:({field:u,fieldState:P})=>Pe(p,{field:{...u,onChange:r(y=>{u.onChange(y),e.onChange?.(y)},"onChange")},fieldState:P,fieldData:g})})}r(be,"WorkScheduleField");import{jsx as $e}from"react/jsx-runtime";function De({label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,component:m,...s}){let{control:F}=h(),{components:c}=S(),f=T();return $e(x,{defaultValue:n,control:F,name:o,render:({field:d,fieldState:C})=>{let p=m||c?.["multi-select"];if(!p)throw new Error(`Multi select component not found for field ${o}`);let g={label:e,name:o,options:t,defaultValue:n,description:i,onChange:l,transformHtml:f,...s};return $e(p,{field:{...d,onChange:r(u=>{d.onChange(u),l?.(u)},"onChange")},fieldState:C,fieldData:g})}})}r(De,"MultiSelectField");import{jsx as Ke}from"react/jsx-runtime";var Ee=r(e=>Ke(J,{maxLength:15,...e}),"MoneyField");import{useMemo as I,useCallback as Re,useState as qe,useEffect as Qe,useRef as Xe}from"react";import{jsx as U}from"react/jsx-runtime";function Ye(e){return e.replace(/\s/g,"")}r(Ye,"removeSpaces");function ve(e="",o){let t=new RegExp(`^(\\+|00)(\\d{${o?.dialCode?.length??0}})(.*)$`),n=e?.match(t);if(!n)return{prefix:"",dialCode:"",phoneNumber:e};let[,i,l,m]=n;return{prefix:i,dialCode:l,phoneNumber:m}}r(ve,"getStructuredNumberFromInternationalNumber");function we({dialCodes:e,dialCodeMaxLength:o},t){let{prefix:n}=ve(t);if(n)for(let i=o+n.length;i>n.length;i--){let l=t.slice(n.length,i);if(e[l])return e[l]}}r(we,"getCountryFromPhoneNumber");function Me(e){let o={},t=0;return e.forEach(n=>{n.areaCodes?n.areaCodes.forEach(i=>{let l=n.dialCode+i;o[l]=n,l.length>t&&(t=l.length)}):(o[n.dialCode]=n,n.dialCode.length>t&&(t=n.dialCode.length))}),{dialCodes:o,dialCodeMaxLength:t}}r(Me,"getCountryDataByCountryCode");function je(e=""){let o=/\(([^)]+)\)/g,t=e.match(o);if(t?.length===2)return t[1].replace(/\(|\)/g,"").split("|")}r(je,"getAreaCodesFromPattern");function eo(e){return e.map(o=>({name:o.label,dialCode:o.meta.countryCode,pattern:o.pattern,areaCodes:je(o.pattern)}))}r(eo,"transformSchemaToCountries");function oo({field:e,fieldState:o,fieldData:t,component:n,onChangeCountryCode:i,onChangePhoneNumber:l}){let{value:m}=e,{options:s}=t,F=I(()=>eo(s),[s]),c=I(()=>Me(F),[F]),f=Xe(!1),[d,C]=qe(()=>we(Me(F),m||""));Qe(()=>{if((!m||m==="+")&&(f.current=!1),f.current)return;let R=we(c,m||"");C(R)},[m,c]);let{prefix:p,phoneNumber:g}=I(()=>ve(m,d),[m,d]),u=Re(R=>{if(!R)return;let w=`+${R.dialCode}${g}`;f.current=!0,C(R),e.onChange(w),i&&i(R)},[g,e,i]),P=Re(R=>{let w=Ye(R.target.value),D;if(d?D=`${p}${d.dialCode}${w}`:D=`${p}${w}`,e.onChange(D),l){let L={target:{value:D,name:e.name}};l(L)}},[d,p,e,l]),y=I(()=>({...t,onChangeCountryCode:u,onChangePhoneNumber:P,currentCountry:d,nationalPhoneNumber:g}),[t,u,P,d,g]);return U(n,{field:e,fieldState:o,fieldData:y})}r(oo,"TelFieldRenderer");function Ne({name:e,description:o,label:t,onChangeCountryCode:n,onChangePhoneNumber:i,component:l,...m}){let{components:s}=S(),{control:F}=h(),c=T();return U(x,{control:F,name:e,render:({field:f,fieldState:d})=>{let C=l||s.tel;if(!C)throw new Error(`Tel component not found for field ${e}`);let p={name:e,description:o,label:t,transformHtml:c,...m};return U(oo,{field:f,fieldState:d,fieldData:p,component:C,onChangeCountryCode:n,onChangePhoneNumber:i})}})}r(Ne,"TelField");import{jsx as ke}from"react/jsx-runtime";function Ve({name:e,description:o,label:t,type:n,onChange:i,component:l,maxLength:m,...s}){let{components:F}=S(),{control:c}=h(),f=T();return ke(x,{control:c,name:e,render:({field:d,fieldState:C})=>{let p=l||F?.time;if(!p)throw new Error(`Time component not found for field ${e}`);let g={name:e,description:o,label:t,type:n,onChange:i,maxLength:m,transformHtml:f,...s};return ke(p,{field:{...d,onChange:r(u=>{d.onChange(u),i?.(u)},"onChange")},fieldState:C,fieldData:g})}})}r(Ve,"TimeField");var Z={checkbox:ie,text:oe,email:Te,money:Ee,select:Fe,"multi-select":De,radio:ce,number:J,file:ae,date:se,textarea:he,countries:Ce,hidden:ye,tel:Ne,time:Ve,"work-schedule":be};import{useEffect as to}from"react";import{jsx as no}from"react/jsx-runtime";function He({name:e,value:o,description:t,statement:n,label:i,helpCenter:l}){let{setValue:m}=h(),{components:s}=S(),F=T();to(()=>{m(e,o)},[e,o,m]);let c=n?.description||t,f=n?.title?O(n.title):O(i);if(!c&&!n?.title)return null;let C=s?.forcedValue;if(!C)throw new Error(`Forced value component not found for field ${e}`);return no(C,{fieldData:{name:e,value:o,title:f,description:c,meta:{helpCenter:l},transformHtml:F}})}r(He,"ForcedValueField");import{Fragment as K,jsx as b,jsxs as N}from"react/jsx-runtime";function We({label:e,name:o,fields:t,description:n,components:i,statement:l,isFlatFieldset:m,extra:s,variant:F="outset",features:c,meta:f,Component:d,...C}){let{helpCenter:p}=f||{},{watch:g,setValue:u,trigger:P,formState:y}=h(),{components:R}=S(),w=c?.toggle?.stateField,D=w?g(w):c?.toggle?.defaultExpanded??!0,L=t.map(({name:a})=>`${o}.${a}`),Ae=t.some(a=>a.calculateDynamicProperties),_=g(L),Be=Ae?g():_,q=_e(_),k=_e(null),Je=r(()=>{w&&u(w,!D)},"toggleExpanded");io(()=>{let a=_,v=q.current,E=y.isSubmitted||y.submitCount>0,W=!1;for(let M=0;M<a.length;M++)if(a[M]!==void 0&&v[M]!==a[M]){W=!0;break}return W&&E&&(k.current&&clearTimeout(k.current),k.current=setTimeout(()=>{P()},50)),q.current=[...a],()=>{k.current&&clearTimeout(k.current)}},[_,P,y.isSubmitted,y.submitCount]);let Ie=R?.fieldsetToggle||te,Q=`${o}-content`,X=`${o}-header`;return d?b(d,{...C,name:o,value:g(o),setValue:a=>{u(o,a)}}):N("fieldset",{className:V("border-1 border-input p-4 rounded-xl","RemoteFlows__FieldSetField",`RemoteFlows__FieldSetField__${o}`),children:[b("legend",{className:V("text-sm font-semibold px-2",F==="inset"&&"hidden"),children:e}),p?.callToAction&&p?.id&&F==="outset"&&b(G,{className:"RemoteFlows__FieldSetField__HelpCenterLink mb-3",zendeskId:p.id,children:p.callToAction}),F==="inset"&&N(K,{children:[N("div",{className:"RemoteFlows__FieldSetField__Header",id:X,"data-state":D?"expanded":"collapsed","aria-expanded":D,children:[b("h3",{className:V("RemoteFlows__FieldSetField__Title"),children:e}),c?.toggle?.enabled&&b(Ie,{isExpanded:D,onToggle:Je,"aria-expanded":D,"aria-controls":Q,"aria-label":`${D?"Hide":"Show"} ${e}`,className:V("RemoteFlows__FieldSetField__Toggle",c.toggle?.className),children:D?c.toggle.labels?.collapse??"Remove":c.toggle.labels?.expand??"Define"})]}),p?.callToAction&&p?.id&&b(G,{className:"RemoteFlows__FieldSetField__HelpCenterLink mb-3",zendeskId:p.id,children:p.callToAction})]}),D&&N("div",{id:Q,"aria-labelledby":X,role:"region",children:[n?b(ee,{as:"div",className:"mb-5 RemoteFlows__FieldSetField__Description",children:n}):null,N("div",{className:"grid gap-4",children:[t.map(a=>{if(a.calculateDynamicProperties&&(a={...a,...a.calculateDynamicProperties(Be,a)||{}}),a.isVisible===!1||a.deprecated)return null;let v=a.type,E=`${m?a.name:`${o}.${a.name}`}`,W=j(a),M=r(($,A)=>a.WrapperComponent?b(a.WrapperComponent,{children:$},A):b(ro,{children:$},A),"wrapWithCustomWrapper");if(W){let $=H(a,"WrapperComponent");return M(b(He,{name:E,description:$.description,value:$.const,statement:$.statement,label:$.label,helpCenter:$.meta?.helpCenter}),E)}if(v==="fieldset"){let $=H(a,"WrapperComponent");return M(b(We,{...$,name:E,components:i}),E)}if(v==="fieldset-flat"){let $=H(a,"WrapperComponent");return M(b(We,{...$,name:E,components:i,isFlatFieldset:!0}),E)}let z=Z[v];if(a.Component){let{Component:$}=a,A=H(a,"WrapperComponent");return M(N(K,{children:[b($,{...A,value:g(E),setValue:ze=>{u(E,ze)}}),a.statement?b(B,{...a.statement}):null,a.extra?a.extra:null]}),E)}if(!z)return N("p",{className:"error",children:["Field type ",v," not supported"]});v==="select"&&a.multiple&&(z=Z["multi-select"]);let Le=H(a,"WrapperComponent");return M(N(K,{children:[b(z,{...Le,name:E,component:i?.[v]}),a.statement?b(B,{...a.statement}):null,a.extra?a.extra:null]}),E)}),s||null,l?b(B,{...l}):null]})]})]})}r(We,"FieldSetField");export{Z as a,He as b,We as c};
|
|
2
|
+
//# sourceMappingURL=chunk-IPQZBMOO.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as _}from"./chunk-E7Y3YBZH.js";import{a as c}from"./chunk-2QVO3BVI.js";import{
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as _}from"./chunk-E7Y3YBZH.js";import{a as c}from"./chunk-2QVO3BVI.js";import{d as i,e as p,f as a,h as s,i as F}from"./chunk-NEVSZEMH.js";import{a as n}from"./chunk-P37U34EQ.js";import{jsx as e,jsxs as d}from"react/jsx-runtime";function w({field:o,fieldState:C,fieldData:m}){let{name:t,label:r,description:l}=m;return d(i,{"data-field":t,className:`RemoteFlows__TimeField__Item__${t}`,children:[r&&e(p,{className:"RemoteFlows__TimeField__Label",children:r}),e(a,{children:e(c,{...o,type:"time",value:o.value??"",onChange:T=>{o.onChange(T)},className:"RemoteFlows__TimeField__Input",placeholder:r})}),(l||m.meta?.helpCenter)&&e(s,{className:"RemoteFlows__TimeField__Description",helpCenter:e(_,{helpCenter:m.meta?.helpCenter}),children:l}),C.error&&e(F,{className:"RemoteFlows__TimeField__Error"})]})}n(w,"TimeFieldDefault");export{w as a};
|
|
2
|
+
//# sourceMappingURL=chunk-IRQJR7KU.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as P,b as k,c as N}from"./chunk-B3MEKP45.js";import{a as C}from"./chunk-E7Y3YBZH.js";import{a as u,b as F}from"./chunk-LKHRHBFP.js";import{
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as P,b as k,c as N}from"./chunk-B3MEKP45.js";import{a as C}from"./chunk-E7Y3YBZH.js";import{a as u,b as F}from"./chunk-LKHRHBFP.js";import{d as v,e as x,f as b,h as D,i as w}from"./chunk-NEVSZEMH.js";import{n as a}from"./chunk-C4HFMTSB.js";import{a as n}from"./chunk-P37U34EQ.js";import{CalendarIcon as T}from"lucide-react";import{format as Y}from"date-fns";import{ChevronLeft as O,ChevronRight as V}from"lucide-react";import{DayPicker as B}from"react-day-picker";import{jsx as p}from"react/jsx-runtime";function R({className:t,classNames:m,showOutsideDays:c=!0,...r}){return p(B,{showOutsideDays:c,className:a("p-3",t),classNames:{months:"flex flex-col sm:flex-row gap-2",month:"flex flex-col gap-4",caption:"flex justify-center pt-1 relative items-center w-full",caption_label:"text-sm font-medium",nav:"flex items-center gap-1",nav_button:a(u({variant:"outline"}),"size-7 bg-transparent p-0 opacity-50 hover:opacity-100"),nav_button_previous:"absolute left-1",nav_button_next:"absolute right-1",table:"w-full border-collapse space-x-1",head_row:"flex",head_cell:"text-muted-foreground rounded-md w-8 font-normal text-[0.8rem]",row:"flex w-full mt-2",cell:a("relative p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-accent [&:has([aria-selected].day-range-end)]:rounded-r-md",r.mode==="range"?"[&:has(>.day-range-end)]:rounded-r-md [&:has(>.day-range-start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md":"[&:has([aria-selected])]:rounded-md"),day:a(u({variant:"ghost"}),"size-8 p-0 font-normal aria-selected:opacity-100"),day_range_start:"day-range-start aria-selected:bg-primary aria-selected:text-primary-foreground",day_range_end:"day-range-end aria-selected:bg-primary aria-selected:text-primary-foreground",day_selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground",day_today:"bg-accent text-accent-foreground",day_outside:"day-outside text-muted-foreground aria-selected:text-muted-foreground",day_disabled:"text-muted-foreground opacity-50",day_range_middle:"aria-selected:bg-accent aria-selected:text-accent-foreground",day_hidden:"invisible",...m},components:{IconLeft:n(({className:l,...o})=>p(O,{className:a("size-4",l),...o}),"IconLeft"),IconRight:n(({className:l,...o})=>p(V,{className:a("size-4",l),...o}),"IconRight")},...r})}n(R,"Calendar");import{useState as $}from"react";import{Fragment as E,jsx as e,jsxs as f}from"react/jsx-runtime";function re({field:t,fieldData:m,fieldState:c}){let{name:r,label:l,description:o,minDate:g,maxDate:y}=m,d=g?new Date(g):void 0,i=y?new Date(y):void 0,[M,_]=$(!1),I=new Date().getFullYear(),h=d?d.getFullYear():1900,L=Math.max(h,i?i.getFullYear():I+10);return f(v,{"data-field":r,className:`flex flex-col RemoteFlows__DatePickerField__Item__${r}`,children:[e(x,{className:"RemoteFlows__DatePickerField__Label",children:l}),f(P,{open:M,onOpenChange:_,children:[e(k,{asChild:!0,children:e(b,{children:e("div",{children:f(F,{type:"button",variant:"outline",className:a("w-full pl-3 text-left font-normal",!t.value&&"text-muted-foreground"),"data-testid":`date-picker-button-${r}`,children:[t.value&&e(E,{children:Y(t.value,"yyyy-MM-dd")}),e(T,{className:"ml-auto h-4 w-4 opacity-50"})]})})})}),e(N,{className:"w-auto p-0 RemoteFlows__DatepickerField__PopoverContent",align:"start",children:e(R,{mode:"single",captionLayout:"dropdown",fromYear:h,toYear:L,className:"RemoteFlows__DatepickerField__Calendar",selected:t.value?new Date(t.value):void 0,onDayClick:s=>{let z=Y(s,"yyyy-MM-dd");t.onChange(z),_(!1)},defaultMonth:t.value?new Date(t.value):i??d,disabled:s=>!!(d&&s<d||i&&s>i)})})]}),o?e(D,{helpCenter:e(C,{helpCenter:m.meta?.helpCenter}),children:o}):null,c.error&&e(w,{className:"RemoteFlows__DatePickerField__Error"})]})}n(re,"DatePickerFieldDefault");export{re as a};
|
|
2
|
+
//# sourceMappingURL=chunk-IYH7D5ET.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a}from"./chunk-VEQWK7QQ.js";import{a as e}from"./chunk-AOE6FXVP.js";import{a as r}from"./chunk-YE6NRJ2L.js";import{a as t}from"./chunk-SYZIGZ2F.js";var i={data:{version:7,schema:{additionalProperties:!1,allOf:[...e.data.schema.allOf,...t.data.schema.allOf,...r.data.schema.allOf,...a.data.schema.allOf],properties:{...e.data.schema.properties,...t.data.schema.properties,...r.data.schema.properties,...a.data.schema.properties},required:[...e.data.schema.required,...t.data.schema.required,...r.data.schema.required,...a.data.schema.required],type:"object","x-jsf-order":[...e.data.schema["x-jsf-order"],...t.data.schema["x-jsf-order"],...r.data.schema["x-jsf-order"],...a.data.schema["x-jsf-order"]],"x-rmt-meta":{jsfOldVersion:!0}}}};export{i as a};
|
|
2
|
+
//# sourceMappingURL=chunk-JIGRVBQS.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-C3LOTWEB.js";import{b as n}from"./chunk-Q3ALCPJN.js";import{x as i}from"./chunk-C4HFMTSB.js";import{a as t}from"./chunk-P37U34EQ.js";import{jsx as c}from"react/jsx-runtime";function F({onSubmit:m,onSuccess:d,onError:p}){let{contractorOnboardingBag:r}=n(),l=t(async(a,v)=>{try{let e=await r.parseFormValues(a);await m?.(e);let o=await r.onSubmit(a);if(o?.data){await d?.(o?.data),r?.next();return}}catch(e){let o=i(e,r.meta?.fields?.contract_preview,v);p?.(o)}},"handleSubmit"),u=r.stepState.values?.contract_preview||r.initialValues.contract_preview;return c("div",{className:"space-y-4",children:c(s,{defaultValues:u,onSubmit:l})})}t(F,"ContractPreviewStep");export{F as a};
|
|
2
|
+
//# sourceMappingURL=chunk-KSCJNGWW.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as i}from"./chunk-VEQWK7QQ.js";import{a as o}from"./chunk-AOE6FXVP.js";import{a as m}from"./chunk-YE6NRJ2L.js";import{a as e}from"./chunk-SYZIGZ2F.js";var p={employee_communication:o,termination_details:e,paid_time_off:m,additional_information:i};export{p as a};
|
|
2
|
+
//# sourceMappingURL=chunk-KUQJG26N.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-YPBPOUGX.js";import{a as r}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-YPBPOUGX.js";import{a as r}from"./chunk-LOFKF243.js";import{b as t}from"./chunk-SS2SYDCB.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as n}from"react/jsx-runtime";function d(l){let{employeeBag:e}=t(),a=s(l);return n(r,{onSubmit:a,defaultValues:{...e.initialValues?.home_address,...e.stepState.values?.home_address}})}o(d,"HomeAddressStep");export{d as a};
|
|
2
|
+
//# sourceMappingURL=chunk-KXTESNWQ.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as v}from"./chunk-VC3W5YDI.js";import{a as h}from"./chunk-6FLU37JM.js";import{a as p}from"./chunk-RJXFAG4D.js";import{a as n}from"./chunk-7LP2MXCW.js";import{a as u}from"./chunk-JJUOWS3K.js";import{a as i}from"./chunk-2QVO3BVI.js";import{b as s}from"./chunk-LKHRHBFP.js";import{a as c}from"./chunk-ZI7EPJT7.js";import{a as m}from"./chunk-P37U34EQ.js";import{RotateCcw as k}from"lucide-react";import{jsx as e,jsxs as o}from"react/jsx-runtime";var H=m(({state:r,actions:l,subtractBreaksFromWorkHours:_})=>{let{close:y,cancel:g}=v(),F=m(async()=>{await l.save(),l.validate()&&y()},"handleSave");return o("div",{className:"space-y-4 RemoteFlows__DailyScheduleForm",children:[e("p",{className:"text-gray-600 text-sm mb-4 RemoteFlows__DailyScheduleForm__Description",children:"The times displayed are in the employee's time zone in the 24-hour format."}),o("div",{className:"grid grid-cols-12 gap-4 text-sm font-medium text-gray-500 uppercase tracking-wide RemoteFlows__DailyScheduleForm__Header",children:[e("div",{className:"col-span-3"}),e("div",{className:"col-span-3 text-center",children:"Start"}),e("div",{className:"col-span-3 text-center",children:"End"}),e("div",{className:"col-span-3 text-center",children:"Break (minutes)"})]}),e("div",{className:"RemoteFlows__DailyScheduleForm__Rows",children:r.rows.map((a,t)=>o("div",{className:"grid grid-cols-12 gap-4 items-center py-2 RemoteFlows__DailyScheduleForm__Row",children:[e("div",{className:"col-span-3",children:o("div",{className:"flex items-center gap-2",children:[e(u,{id:`schedule-${t}-checked`,checked:a.checked,onCheckedChange:()=>l.toggleDay(t)}),e(c,{htmlFor:`schedule-${t}-checked`,children:h[a.day]})]})}),e("div",{className:"col-span-3",children:e(i,{type:"text",value:a.start_time,onChange:d=>l.updateRow(t,"start_time",d.target.value),onBlur:l.handleBlur,disabled:!a.checked,placeholder:"HH:mm","aria-invalid":!!r.getFieldError(t,"start_time"),className:r.getFieldError(t,"start_time")?"border-destructive":""})}),e("div",{className:"col-span-3",children:e(i,{type:"text",value:a.end_time,onChange:d=>l.updateRow(t,"end_time",d.target.value),onBlur:l.handleBlur,disabled:!a.checked,placeholder:"HH:mm","aria-invalid":!!r.getFieldError(t,"end_time"),className:r.getFieldError(t,"end_time")?"border-destructive":""})}),e("div",{className:"col-span-2",children:e(i,{type:"number",value:a.break_duration_minutes,onChange:d=>l.updateRow(t,"break_duration_minutes",d.target.value),onBlur:l.handleBlur,disabled:!a.checked,placeholder:"Minutes","aria-invalid":!!r.getFieldError(t,"break_duration_minutes"),className:r.getFieldError(t,"break_duration_minutes")?"border-destructive":""})}),e("div",{className:"col-span-1 text-center text-sm text-gray-500 RemoteFlows__DailyScheduleForm__Row__Hours",children:a.checked&&a.hours>0?`${a.hours}h`:"-"})]},a.day))}),e("div",{className:"rounded-lg border p-4 RemoteFlows__DailyScheduleForm__Preview",children:e(n,{days:r.unsavedSummaryDays,subtractBreaksFromWorkHours:_})}),e(p,{error:r.hoursRangeError}),r.formError?e("p",{className:"text-destructive text-sm mb-0",children:r.formError}):null,!r.formError&&r.hasFieldErrors&&e("p",{className:"text-destructive text-sm mb-0",children:"Please check the form for errors. Time fields must use HH:mm format (e.g., 09:00), and all checked days must have start time, end time, and break duration filled in."}),o("div",{className:"flex items-center gap-4 pt-4",children:[r.isDirty&&o(s,{type:"button",variant:"ghost",className:"gap-2 RemoteFlows__DailyScheduleForm__ResetButton",onClick:l.reset,children:[e(k,{className:"h-4 w-4"}),"Reset to default"]}),o("div",{className:"flex gap-4 ml-auto",children:[e(s,{type:"button",variant:"outline",onClick:g,children:"Cancel"}),e(s,{type:"button",onClick:F,disabled:!!r.hoursRangeError,children:"Save schedule"})]})]})]})},"DailyScheduleEditForm");export{H as a};
|
|
2
|
+
//# sourceMappingURL=chunk-L2GAD6S5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/flows/Onboarding/components/DailySchedule/DailyScheduleEditForm.tsx"],"sourcesContent":["import { DailyScheduleSummaryBody } from '@/src/flows/Onboarding/components/DailySchedule/DailyScheduleSummaryBody';\nimport { DailyScheduleHoursErrorBanner } from '@/src/flows/Onboarding/components/DailySchedule/DailyScheduleHoursErrorBanner';\nimport { Button } from '@/src/components/ui/button';\nimport { RotateCcw } from 'lucide-react';\nimport { useDailyScheduleEditForm } from '@/src/flows/Onboarding/components/DailySchedule/useDailyScheduleEditForm';\nimport { useDialogControl } from '@/src/flows/Onboarding/components/DailySchedule/EditEmployeeWorkingHoursDialog';\nimport { WEEKDAY_LABELS } from '@/src/flows/Onboarding/components/DailySchedule/constants';\nimport { Checkbox } from '@/src/components/ui/checkbox';\nimport { Input } from '@/src/components/ui/input';\nimport { Label } from '@/src/components/ui/label';\n\ntype DailyScheduleEditFormProps = ReturnType<\n typeof useDailyScheduleEditForm\n> & {\n subtractBreaksFromWorkHours: boolean;\n};\n\nexport const DailyScheduleEditForm = ({\n state,\n actions,\n subtractBreaksFromWorkHours,\n}: DailyScheduleEditFormProps) => {\n const { close, cancel } = useDialogControl();\n\n const handleSave = async () => {\n await actions.save();\n // Only close if validation passed\n if (actions.validate()) {\n close();\n }\n };\n\n return (\n <div className='space-y-4 RemoteFlows__DailyScheduleForm'>\n <p className='text-gray-600 text-sm mb-4 RemoteFlows__DailyScheduleForm__Description'>\n The times displayed are in the employee's time zone in the 24-hour\n format.\n </p>\n\n <div className='grid grid-cols-12 gap-4 text-sm font-medium text-gray-500 uppercase tracking-wide RemoteFlows__DailyScheduleForm__Header'>\n <div className='col-span-3'></div>\n <div className='col-span-3 text-center'>Start</div>\n <div className='col-span-3 text-center'>End</div>\n <div className='col-span-3 text-center'>Break (minutes)</div>\n </div>\n\n <div className='RemoteFlows__DailyScheduleForm__Rows'>\n {state.rows.map((row, index) => (\n <div\n key={row.day}\n className='grid grid-cols-12 gap-4 items-center py-2 RemoteFlows__DailyScheduleForm__Row'\n >\n <div className='col-span-3'>\n <div className='flex items-center gap-2'>\n <Checkbox\n id={`schedule-${index}-checked`}\n checked={row.checked}\n onCheckedChange={() => actions.toggleDay(index)}\n />\n <Label htmlFor={`schedule-${index}-checked`}>\n {WEEKDAY_LABELS[row.day]}\n </Label>\n </div>\n </div>\n <div className='col-span-3'>\n <Input\n type='text'\n value={row.start_time}\n onChange={(e) =>\n actions.updateRow(index, 'start_time', e.target.value)\n }\n onBlur={actions.handleBlur}\n disabled={!row.checked}\n placeholder='HH:mm'\n aria-invalid={!!state.getFieldError(index, 'start_time')}\n className={\n state.getFieldError(index, 'start_time')\n ? 'border-destructive'\n : ''\n }\n />\n </div>\n <div className='col-span-3'>\n <Input\n type='text'\n value={row.end_time}\n onChange={(e) =>\n actions.updateRow(index, 'end_time', e.target.value)\n }\n onBlur={actions.handleBlur}\n disabled={!row.checked}\n placeholder='HH:mm'\n aria-invalid={!!state.getFieldError(index, 'end_time')}\n className={\n state.getFieldError(index, 'end_time')\n ? 'border-destructive'\n : ''\n }\n />\n </div>\n <div className='col-span-2'>\n <Input\n type='number'\n value={row.break_duration_minutes}\n onChange={(e) =>\n actions.updateRow(\n index,\n 'break_duration_minutes',\n e.target.value,\n )\n }\n onBlur={actions.handleBlur}\n disabled={!row.checked}\n placeholder='Minutes'\n aria-invalid={\n !!state.getFieldError(index, 'break_duration_minutes')\n }\n className={\n state.getFieldError(index, 'break_duration_minutes')\n ? 'border-destructive'\n : ''\n }\n />\n </div>\n <div className='col-span-1 text-center text-sm text-gray-500 RemoteFlows__DailyScheduleForm__Row__Hours'>\n {row.checked ? (row.hours > 0 ? `${row.hours}h` : '-') : '-'}\n </div>\n </div>\n ))}\n </div>\n\n <div className='rounded-lg border p-4 RemoteFlows__DailyScheduleForm__Preview'>\n <DailyScheduleSummaryBody\n days={state.unsavedSummaryDays}\n subtractBreaksFromWorkHours={subtractBreaksFromWorkHours}\n />\n </div>\n\n <DailyScheduleHoursErrorBanner error={state.hoursRangeError} />\n\n {state.formError ? (\n <p className='text-destructive text-sm mb-0'>{state.formError}</p>\n ) : null}\n\n {!state.formError && state.hasFieldErrors && (\n <p className='text-destructive text-sm mb-0'>\n Please check the form for errors. Time fields must use HH:mm format\n (e.g., 09:00), and all checked days must have start time, end time,\n and break duration filled in.\n </p>\n )}\n\n <div className='flex items-center gap-4 pt-4'>\n {state.isDirty && (\n <Button\n type='button'\n variant='ghost'\n className='gap-2 RemoteFlows__DailyScheduleForm__ResetButton'\n onClick={actions.reset}\n >\n <RotateCcw className='h-4 w-4' />\n Reset to default\n </Button>\n )}\n <div className='flex gap-4 ml-auto'>\n <Button type='button' variant='outline' onClick={cancel}>\n Cancel\n </Button>\n <Button\n type='button'\n onClick={handleSave}\n disabled={!!state.hoursRangeError}\n >\n Save schedule\n </Button>\n </div>\n </div>\n </div>\n );\n};\n"],"mappings":"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","names":["RotateCcw","jsx","jsxs","DailyScheduleEditForm","__name","state","actions","subtractBreaksFromWorkHours","close","cancel","useDialogControl","handleSave","row","index","Checkbox","Label","WEEKDAY_LABELS","Input","e","DailyScheduleSummaryBody","DailyScheduleHoursErrorBanner","Button","RotateCcw"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as h}from"./chunk-SGE4DLC3.js";import{a as i}from"./chunk-P37U34EQ.js";import _ from"lodash.groupby";var S=/^([01]\d|2[0-3]):([0-5]\d)$/,y=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"];function R(e){let{subtract_breaks_in_work_hours:t,country_name:n,default_start_time:r,default_end_time:u,default_break_duration_minutes:a,default_schedule:l,work_hours_per_week:s,work_days:m=y}=e;return{subtractBreaksFromWorkHours:t,countryName:n,defaultStartTime:r,defaultEndTime:u,defaultBreakDurationMinutes:a,defaultSchedule:l,workHoursPerWeekConfig:s,availableWorkDays:m}}i(R,"getDefaultsFromSchema");var W="core_business_hours",p="full_time",b="part_time";function N(e,{scheduleType:t,workSchedule:n}){let r=t===W?1:void 0;return n===p?{minimum:r??e.full_time.minimum,maximum:e.full_time.maximum}:n===b?{minimum:r??e.part_time.minimum,maximum:e.part_time.maximum}:{minimum:r??e.baseline.minimum,maximum:e.baseline.maximum}}i(N,"getWorkHoursBounds");var d=60;function k(e){let[t,n]=e.split(":").map(r=>parseInt(r,10));return t*d+n}i(k,"convertTimeStringToMinutes");function H(e){let t=e/d,n=t.toString().split(".")[1];return!n||n.length<=2?t:Math.floor(t*100)/100}i(H,"convertMinutesToHours");function L(e,t,n){if(!e||!t||!S.test(e)||!S.test(t))return 0;let r=k(e),a=k(t)-r-(n||0);return a<0?0:H(a)}i(L,"calculateWorkingHours");function T(e,t){let n=t.indexOf(e),r=null;for(;n<t.length&&!r;){let u=t[n],a=t[n+1];if(a===void 0){r=u;break}y[y.indexOf(u)+1]!==a&&(r=u),n+=1}return r}i(T,"findLastConsecutiveDay");function g(e){return e.replace(":","h")}i(g,"formatTimeLabel");function c(e){return e.charAt(0).toUpperCase()+e.slice(1)}i(c,"capitalizeDay");function E(e){return e.flatMap((t,n)=>{let r={text:c(t),bold:!0};return n===0?[r]:[{text:n===e.length-1?" and ":", "},r]})}i(E,"boldDayListSegments");function $(e,t){let[n,r]=e.split("|"),u=t.map(f=>f.day),a=u[0],l=T(a,u),s=l!==null&&u.indexOf(l)===u.length-1,m=[{text:"from "},{text:g(n),bold:!0},{text:" to "},{text:g(r),bold:!0}];return u.length===1?{key:e,segments:[{text:c(a),bold:!0},{text:", "},...m]}:s?{key:e,segments:[{text:c(a),bold:!0},{text:" to "},{text:c(l),bold:!0},{text:", "},...m]}:{key:e,segments:[...E(u),{text:", "},...m]}}i($,"buildWorkHoursLine");function I(e){let t=e.map(c);return t.length===1?t[0]:t.length===2?`${t[0]} and ${t[1]}`:`${t.slice(0,-1).join(", ")} and ${t[t.length-1]}`}i(I,"formatDayListText");function B(e){if(e<d)return`${e}m`;let t=Math.floor(e/d),n=e%d;return n>0?`${t}h${n}m`:`${t}h`}i(B,"formatBreakDurationLabel");function M(e,t,n){let r=B(Number(e));if(n)return{key:e,segments:[{text:"With "},{text:`${r} daily breaks`,bold:!0}]};let u=I(t.map(a=>a.day));return{key:e,segments:[{text:"With "},{text:r,bold:!0},{text:` break on ${u}.`}]}}i(M,"buildBreakLine");function O(e,t){return e.reduce((n,r)=>n+L(r.start_time,r.end_time,t?r.break_duration_minutes:0),0)}i(O,"calculateTotalWeeklyHours");function A(e,t){let n=[...e].sort((o,D)=>y.indexOf(o.day)-y.indexOf(D.day)),r=O(n,t),u=n.filter(o=>S.test(o.start_time)&&S.test(o.end_time)),a=_(u,o=>`${o.start_time}|${o.end_time}`),l=Object.entries(a).map(([o,D])=>$(o,D)),s=n.filter(o=>o.break_duration_minutes>0),m=_(s,o=>String(o.break_duration_minutes)),f=[...new Set(s.map(o=>String(o.break_duration_minutes)))],x=f.map(o=>M(o,m[o],f.length===1));return{workHoursLines:l,breakLines:x,totalWeeklyHours:r}}i(A,"buildDailyScheduleSummary");function w({value:e,defaultSchedule:t}){return e!==void 0?e:{selected_days:t.map(n=>n.day),schedule:t.reduce((n,r)=>({...n,[r.day]:{start_time:r.start_time,end_time:r.end_time,break_duration_minutes:r.break_duration_minutes}}),{})}}i(w,"resolveDailyScheduleValue");function V(e,t){let{selected_days:n,schedule:r}=w({value:e,defaultSchedule:t});return n.map(a=>{let l=r[a];return{day:a,start_time:l?.start_time??"",end_time:l?.end_time??"",break_duration_minutes:l?.break_duration_minutes??0}})}i(V,"getDailyScheduleSummaryDays");function C(e){return e===p?"a full-time employee":e===b?"a part-time employee":"an employee"}i(C,"workScheduleCopy");function j({totalWeeklyHours:e,workHoursBounds:t,countryName:n,workSchedule:r}){if(e===0)return null;let{minimum:u,maximum:a}=t;if(e>=u&&e<=a)return null;let l=h({number:a,singular:"hour",plural:"hours",followCopyGuidelines:!1}),s=u===a?l:`between ${u} and ${l}`;return{header:"Work hours outside of weekly range",message:`The work week for ${C(r)} in ${n} is ${s}.`}}i(j,"getDailyScheduleHoursError");export{S as a,y as b,R as c,N as d,k as e,H as f,L as g,O as h,A as i,w as j,V as k,j as l};
|
|
2
|
+
//# sourceMappingURL=chunk-L74V3INS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/flows/Onboarding/components/DailySchedule/utils.ts"],"sourcesContent":["// Code comes from our platform codebase, go there to see the original source\n\nimport groupBy from 'lodash.groupby';\n\nimport {\n DailyScheduleDefaultDay,\n DailyScheduleDefaults,\n DailyScheduleHoursError,\n DailyScheduleMetadata,\n DailyScheduleSummaryDay,\n DailyScheduleSummaryLine,\n DailyScheduleSummarySegment,\n DailyScheduleValue,\n Weekday,\n WorkHoursBoundsInput,\n WorkHoursPerWeekConfig,\n WorkHoursRange,\n} from '@/src/flows/Onboarding/components/DailySchedule/types';\nimport { getSingularPluralUnit } from '@/src/lib/i18n';\n\nexport const TIME_PATTERN = /^([01]\\d|2[0-3]):([0-5]\\d)$/;\n\nexport const DAYS_OF_THE_WEEK: Weekday[] = [\n 'monday',\n 'tuesday',\n 'wednesday',\n 'thursday',\n 'friday',\n 'saturday',\n 'sunday',\n];\n\n/**\n * Normalizes the raw `daily_schedule['x-jsf-presentation'].metadata` block\n * into the camelCase shape the container/render-prop payload uses.\n */\nexport function getDefaultsFromSchema(\n metadata: DailyScheduleMetadata,\n): DailyScheduleDefaults {\n const {\n subtract_breaks_in_work_hours: subtractBreaksFromWorkHours,\n country_name: countryName,\n default_start_time: defaultStartTime,\n default_end_time: defaultEndTime,\n default_break_duration_minutes: defaultBreakDurationMinutes,\n default_schedule: defaultSchedule,\n work_hours_per_week: workHoursPerWeekConfig,\n work_days: availableWorkDays = DAYS_OF_THE_WEEK,\n } = metadata;\n\n return {\n subtractBreaksFromWorkHours,\n countryName,\n defaultStartTime,\n defaultEndTime,\n defaultBreakDurationMinutes,\n defaultSchedule,\n workHoursPerWeekConfig,\n availableWorkDays,\n };\n}\n\nconst SCHEDULE_TYPE_BUSINESS_HOURS = 'core_business_hours';\nconst WORK_SCHEDULE_FULL_TIME = 'full_time';\nconst WORK_SCHEDULE_PART_TIME = 'part_time';\n\n/**\n * Resolves the allowed weekly-hours range for the current `schedule_type`/\n * `work_schedule` selection. For core business hours, the minimum drops to 1\n * because the real validation lives on the `work_hours_per_week` field itself.\n */\nexport function getWorkHoursBounds(\n workHoursPerWeekConfig: WorkHoursPerWeekConfig,\n { scheduleType, workSchedule }: WorkHoursBoundsInput,\n): WorkHoursRange {\n const minimumOverride =\n scheduleType === SCHEDULE_TYPE_BUSINESS_HOURS ? 1 : undefined;\n\n if (workSchedule === WORK_SCHEDULE_FULL_TIME) {\n return {\n minimum: minimumOverride ?? workHoursPerWeekConfig.full_time.minimum,\n maximum: workHoursPerWeekConfig.full_time.maximum,\n };\n }\n\n if (workSchedule === WORK_SCHEDULE_PART_TIME) {\n return {\n minimum: minimumOverride ?? workHoursPerWeekConfig.part_time.minimum,\n maximum: workHoursPerWeekConfig.part_time.maximum,\n };\n }\n\n return {\n minimum: minimumOverride ?? workHoursPerWeekConfig.baseline.minimum,\n maximum: workHoursPerWeekConfig.baseline.maximum,\n };\n}\n\nconst MINUTES_IN_HOUR = 60;\n\nexport function convertTimeStringToMinutes(time: string): number {\n const [hours, minutes] = time.split(':').map((part) => parseInt(part, 10));\n\n return hours * MINUTES_IN_HOUR + minutes;\n}\n\nexport function convertMinutesToHours(timeInMinutes: number): number {\n const totalHours = timeInMinutes / MINUTES_IN_HOUR;\n const decimals = totalHours.toString().split('.')[1];\n\n if (!decimals || decimals.length <= 2) {\n return totalHours;\n }\n\n // Aligns with json-schema-form's own rounding behavior (2 decimal places max).\n return Math.floor(totalHours * 100) / 100;\n}\n\n/** Total working hours for a day, given its start/end time and break duration. */\nexport function calculateWorkingHours(\n startTime: string | undefined,\n endTime: string | undefined,\n breakDurationMinutes?: number | null,\n): number {\n if (\n !startTime ||\n !endTime ||\n !TIME_PATTERN.test(startTime) ||\n !TIME_PATTERN.test(endTime)\n ) {\n return 0;\n }\n\n const startTimeInMinutes = convertTimeStringToMinutes(startTime);\n const endTimeInMinutes = convertTimeStringToMinutes(endTime);\n const totalTimeInMinutes =\n endTimeInMinutes - startTimeInMinutes - (breakDurationMinutes || 0);\n\n if (totalTimeInMinutes < 0) {\n return 0;\n }\n\n return convertMinutesToHours(totalTimeInMinutes);\n}\n\nfunction findLastConsecutiveDay(\n startDay: Weekday,\n days: Weekday[],\n): Weekday | null {\n let index = days.indexOf(startDay);\n let lastConsecutiveDay: Weekday | null = null;\n\n while (index < days.length && !lastConsecutiveDay) {\n const currentDay = days[index];\n const nextDay = days[index + 1];\n if (nextDay === undefined) {\n lastConsecutiveDay = currentDay;\n break;\n }\n const nextDayInWeek =\n DAYS_OF_THE_WEEK[DAYS_OF_THE_WEEK.indexOf(currentDay) + 1];\n\n if (nextDayInWeek !== nextDay) {\n lastConsecutiveDay = currentDay;\n }\n\n index += 1;\n }\n\n return lastConsecutiveDay;\n}\n\nfunction formatTimeLabel(time: string): string {\n return time.replace(':', 'h');\n}\n\nfunction capitalizeDay(day: Weekday): string {\n return day.charAt(0).toUpperCase() + day.slice(1);\n}\n\nfunction boldDayListSegments(days: Weekday[]): DailyScheduleSummarySegment[] {\n return days.flatMap((day, index) => {\n const dayLabel: DailyScheduleSummarySegment = {\n text: capitalizeDay(day),\n bold: true,\n };\n\n if (index === 0) {\n return [dayLabel];\n }\n\n const joiner = index === days.length - 1 ? ' and ' : ', ';\n return [{ text: joiner }, dayLabel];\n });\n}\n\nfunction buildWorkHoursLine(\n timeKey: string,\n daysInGroup: DailyScheduleSummaryDay[],\n): DailyScheduleSummaryLine {\n const [startTime, endTime] = timeKey.split('|');\n const dayNames = daysInGroup.map((day) => day.day);\n const startDay = dayNames[0];\n const lastConsecutiveDay = findLastConsecutiveDay(startDay, dayNames);\n const allDaysAreConsecutive =\n lastConsecutiveDay !== null &&\n dayNames.indexOf(lastConsecutiveDay) === dayNames.length - 1;\n\n const timeSegments: DailyScheduleSummarySegment[] = [\n { text: 'from ' },\n { text: formatTimeLabel(startTime), bold: true },\n { text: ' to ' },\n { text: formatTimeLabel(endTime), bold: true },\n ];\n\n if (dayNames.length === 1) {\n return {\n key: timeKey,\n segments: [\n { text: capitalizeDay(startDay), bold: true },\n { text: ', ' },\n ...timeSegments,\n ],\n };\n }\n\n if (allDaysAreConsecutive) {\n return {\n key: timeKey,\n segments: [\n { text: capitalizeDay(startDay), bold: true },\n { text: ' to ' },\n { text: capitalizeDay(lastConsecutiveDay), bold: true },\n { text: ', ' },\n ...timeSegments,\n ],\n };\n }\n\n return {\n key: timeKey,\n segments: [\n ...boldDayListSegments(dayNames),\n { text: ', ' },\n ...timeSegments,\n ],\n };\n}\n\n/** \"Monday\" / \"Monday and Tuesday\" / \"Monday, Tuesday and Wednesday\" (plain text). */\nfunction formatDayListText(days: Weekday[]): string {\n const names = days.map(capitalizeDay);\n\n if (names.length === 1) {\n return names[0];\n }\n\n if (names.length === 2) {\n return `${names[0]} and ${names[1]}`;\n }\n\n return `${names.slice(0, -1).join(', ')} and ${names[names.length - 1]}`;\n}\n\nfunction formatBreakDurationLabel(minutes: number): string {\n if (minutes < MINUTES_IN_HOUR) {\n return `${minutes}m`;\n }\n\n const hours = Math.floor(minutes / MINUTES_IN_HOUR);\n const remainingMinutes = minutes % MINUTES_IN_HOUR;\n\n return remainingMinutes > 0 ? `${hours}h${remainingMinutes}m` : `${hours}h`;\n}\n\nfunction buildBreakLine(\n breakDurationMinutes: string,\n daysInGroup: DailyScheduleSummaryDay[],\n isOnlyGroup: boolean,\n): DailyScheduleSummaryLine {\n const breakLabel = formatBreakDurationLabel(Number(breakDurationMinutes));\n\n if (isOnlyGroup) {\n return {\n key: breakDurationMinutes,\n segments: [\n { text: 'With ' },\n { text: `${breakLabel} daily breaks`, bold: true },\n ],\n };\n }\n\n const dayListText = formatDayListText(daysInGroup.map((day) => day.day));\n\n return {\n key: breakDurationMinutes,\n segments: [\n { text: 'With ' },\n { text: breakLabel, bold: true },\n { text: ` break on ${dayListText}.` },\n ],\n };\n}\n\ntype DailyScheduleSummary = {\n workHoursLines: DailyScheduleSummaryLine[];\n breakLines: DailyScheduleSummaryLine[];\n totalWeeklyHours: number;\n};\n\nexport function calculateTotalWeeklyHours(\n days: DailyScheduleSummaryDay[],\n subtractBreaksFromWorkHours: boolean,\n): number {\n return days.reduce(\n (total, day) =>\n total +\n calculateWorkingHours(\n day.start_time,\n day.end_time,\n subtractBreaksFromWorkHours ? day.break_duration_minutes : 0,\n ),\n 0,\n );\n}\n\n/**\n * Groups a schedule's selected days into Dragon-style summary lines: runs of\n * consecutive days sharing the same start/end time collapse into one line\n * (e.g. \"Monday to Friday, from 09h00 to 18h00\"), and likewise for shared\n * break durations (e.g. \"With 1h daily breaks\").\n */\nexport function buildDailyScheduleSummary(\n days: DailyScheduleSummaryDay[],\n subtractBreaksFromWorkHours: boolean,\n): DailyScheduleSummary {\n const orderedDays = [...days].sort(\n (a, b) => DAYS_OF_THE_WEEK.indexOf(a.day) - DAYS_OF_THE_WEEK.indexOf(b.day),\n );\n\n const totalWeeklyHours = calculateTotalWeeklyHours(\n orderedDays,\n subtractBreaksFromWorkHours,\n );\n\n const daysWithCompleteTimes = orderedDays.filter(\n (day) =>\n TIME_PATTERN.test(day.start_time) && TIME_PATTERN.test(day.end_time),\n );\n\n const groupedByTime = groupBy(\n daysWithCompleteTimes,\n (day) => `${day.start_time}|${day.end_time}`,\n );\n const workHoursLines = Object.entries(groupedByTime).map(\n ([timeKey, daysInGroup]) => buildWorkHoursLine(timeKey, daysInGroup),\n );\n\n const daysWithBreaks = orderedDays.filter(\n (day) => day.break_duration_minutes > 0,\n );\n const groupedByBreak = groupBy(daysWithBreaks, (day) =>\n String(day.break_duration_minutes),\n );\n // Object.entries would reorder purely-numeric keys (\"30\", \"60\", ...)\n // ascending numerically regardless of insertion order, so walk the\n // group keys in the order their first day appears instead.\n const breakDurationKeysInOrder = [\n ...new Set(daysWithBreaks.map((day) => String(day.break_duration_minutes))),\n ];\n\n const breakLines = breakDurationKeysInOrder.map((breakDurationMinutes) =>\n buildBreakLine(\n breakDurationMinutes,\n groupedByBreak[breakDurationMinutes],\n breakDurationKeysInOrder.length === 1,\n ),\n );\n\n return { workHoursLines, breakLines, totalWeeklyHours };\n}\n\n/**\n * The schedule to display/edit: the field's saved `value` when present,\n * otherwise a schedule built from the metadata's `default_schedule` — so the\n * summary and the edit modal show sensible defaults before the employer has\n * saved anything (create flow), not just after (edit flow).\n */\nexport function resolveDailyScheduleValue({\n value,\n defaultSchedule,\n}: {\n value: DailyScheduleValue | undefined;\n defaultSchedule: DailyScheduleDefaultDay[];\n}): DailyScheduleValue {\n if (value !== undefined) {\n return value;\n }\n\n return {\n selected_days: defaultSchedule.map((day) => day.day),\n schedule: defaultSchedule.reduce(\n (acc, day) => ({\n ...acc,\n [day.day]: {\n start_time: day.start_time,\n end_time: day.end_time,\n break_duration_minutes: day.break_duration_minutes,\n },\n }),\n {},\n ),\n };\n}\n\n/**\n * Returns the days of the week that are selected in the daily schedule, and the start/end time and break duration for each day.\n * If the daily schedule is not set, it returns the default schedule.\n * @param value - The daily schedule value.\n * @param defaultSchedule - The default schedule.\n * @returns The days of the week that are selected in the daily schedule, and the start/end time and break duration for each day.\n */\nexport function getDailyScheduleSummaryDays(\n value: DailyScheduleValue | undefined,\n defaultSchedule: DailyScheduleDefaultDay[],\n): DailyScheduleSummaryDay[] {\n const { selected_days: selectedDays, schedule } = resolveDailyScheduleValue({\n value,\n defaultSchedule,\n });\n const summaryDays: DailyScheduleSummaryDay[] = selectedDays.map((day) => {\n const daySchedule = schedule[day];\n return {\n day,\n start_time: daySchedule?.start_time ?? '',\n end_time: daySchedule?.end_time ?? '',\n break_duration_minutes: daySchedule?.break_duration_minutes ?? 0,\n };\n });\n\n return summaryDays;\n}\n\nfunction workScheduleCopy(workSchedule: string | undefined): string {\n if (workSchedule === WORK_SCHEDULE_FULL_TIME) {\n return 'a full-time employee';\n }\n\n if (workSchedule === WORK_SCHEDULE_PART_TIME) {\n return 'a part-time employee';\n }\n\n return 'an employee';\n}\n\n/**\n * Ported from Platform's `DailyScheduleError.jsx`: flags a schedule whose total\n * weekly hours fall outside the country/work-schedule's allowed range, e.g.\n * \"Work hours outside of weekly range - The work week for a full-time\n * employee in Germany is between 31 and 48 hours.\"\n */\nexport function getDailyScheduleHoursError({\n totalWeeklyHours,\n workHoursBounds,\n countryName,\n workSchedule,\n}: {\n totalWeeklyHours: number;\n workHoursBounds: WorkHoursRange;\n countryName: string;\n workSchedule: string | undefined;\n}): DailyScheduleHoursError | null {\n if (totalWeeklyHours === 0) {\n return null;\n }\n\n const { minimum, maximum } = workHoursBounds;\n\n if (totalWeeklyHours >= minimum && totalWeeklyHours <= maximum) {\n return null;\n }\n\n const maxHoursCopy = getSingularPluralUnit({\n number: maximum,\n singular: 'hour',\n plural: 'hours',\n followCopyGuidelines: false,\n });\n const rangeCopy =\n minimum === maximum\n ? maxHoursCopy\n : `between ${minimum} and ${maxHoursCopy}`;\n\n return {\n header: 'Work hours outside of weekly range',\n message: `The work week for ${workScheduleCopy(workSchedule)} in ${countryName} is ${rangeCopy}.`,\n };\n}\n"],"mappings":"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","names":["groupBy","TIME_PATTERN","DAYS_OF_THE_WEEK","getDefaultsFromSchema","metadata","subtractBreaksFromWorkHours","countryName","defaultStartTime","defaultEndTime","defaultBreakDurationMinutes","defaultSchedule","workHoursPerWeekConfig","availableWorkDays","__name","SCHEDULE_TYPE_BUSINESS_HOURS","WORK_SCHEDULE_FULL_TIME","WORK_SCHEDULE_PART_TIME","getWorkHoursBounds","scheduleType","workSchedule","minimumOverride","MINUTES_IN_HOUR","convertTimeStringToMinutes","time","hours","minutes","part","convertMinutesToHours","timeInMinutes","totalHours","decimals","calculateWorkingHours","startTime","endTime","breakDurationMinutes","startTimeInMinutes","totalTimeInMinutes","findLastConsecutiveDay","startDay","days","index","lastConsecutiveDay","currentDay","nextDay","formatTimeLabel","capitalizeDay","day","boldDayListSegments","dayLabel","buildWorkHoursLine","timeKey","daysInGroup","dayNames","allDaysAreConsecutive","timeSegments","formatDayListText","names","formatBreakDurationLabel","remainingMinutes","buildBreakLine","isOnlyGroup","breakLabel","dayListText","calculateTotalWeeklyHours","total","buildDailyScheduleSummary","orderedDays","a","b","totalWeeklyHours","daysWithCompleteTimes","groupedByTime","groupBy","workHoursLines","daysWithBreaks","groupedByBreak","breakDurationKeysInOrder","breakLines","resolveDailyScheduleValue","value","acc","getDailyScheduleSummaryDays","selectedDays","schedule","daySchedule","workScheduleCopy","getDailyScheduleHoursError","workHoursBounds","minimum","maximum","maxHoursCopy","getSingularPluralUnit","rangeCopy"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as s}from"./chunk-SS2SYDCB.js";import{a as t}from"./chunk-AFTFDGSD.js";import{a as l}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as s}from"./chunk-SS2SYDCB.js";import{a as t}from"./chunk-AFTFDGSD.js";import{a as l}from"./chunk-VJTAVPZX.js";import{a as m}from"./chunk-NEVSZEMH.js";import{a as r}from"./chunk-P37U34EQ.js";import{jsx as i}from"react/jsx-runtime";import{createElement as p}from"react";function c({onSubmit:a,defaultValues:n}){let{formId:d,employeeBag:e}=s(),o=t({handleValidation:e.handleValidation,defaultValues:n??{},checkFieldUpdates:e.setFieldValues});return p(m,{...o,key:`form-${e.stepState.currentStep.name}`},i("form",{id:d,onSubmit:o.handleSubmit(f=>a(f,o)),className:"space-y-4 RemoteFlows__PayrollEmployeeForm",children:i(l,{fields:e.fields,fieldsets:e.meta["x-jsf-fieldsets"],fieldValues:e.fieldValues})}))}r(c,"PayrollEmployeeForm");export{c as a};
|
|
2
|
+
//# sourceMappingURL=chunk-LOFKF243.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as n}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as n}from"./chunk-U7X7AHH4.js";import{b as e}from"./chunk-MRYRNB7Y.js";import{a as r}from"./chunk-P37U34EQ.js";import{jsx as u}from"react/jsx-runtime";function F({onSubmit:t,onSuccess:s,onError:m}){let{terminationBag:o}=e(),d=r(async a=>{let l=await o?.parseFormValues(a,!0);await t?.(l);let i=await o?.onSubmit(a);i?.error?m?.(i.rawError):i?.data&&await s?.(i.data)},"handleSubmit");return u(n,{defaultValues:o.fieldValues,fields:o?.fields,onSubmit:d})}r(F,"AdditionalDetailsForm");export{F as a};
|
|
2
|
+
//# sourceMappingURL=chunk-LRXKF2LC.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a}from"./chunk-2BH4CIY3.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-M2UGSIVQ.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as f}from"./chunk-76ZDXC2T.js";import{b as p}from"./chunk-KFYWUBRS.js";import{a as c}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as f}from"./chunk-76ZDXC2T.js";import{b as p}from"./chunk-KFYWUBRS.js";import{a as c}from"./chunk-VJTAVPZX.js";import{a as d}from"./chunk-NEVSZEMH.js";import{i as a}from"./chunk-SRLBVFNQ.js";import{a as t}from"./chunk-P37U34EQ.js";import{useEffect as y,useRef as b}from"react";import{jsx as l}from"react/jsx-runtime";import{createElement as g}from"react";function B({defaultValues:s,onSubmit:u,components:F}){let{formId:C,createCompanyBag:o}=f(),m=b(s),h=p(o.handleValidation),r=a({resolver:h,defaultValues:s,shouldUnregister:!1,mode:"onBlur"});y(()=>{let n=r?.watch(e=>{Object.keys(e).some(i=>e[i]!==m.current[i])&&(o?.checkFieldUpdates(e),m.current={...e})});return()=>n?.unsubscribe()},[]);let S=t(async n=>{await u(n)},"handleSubmit");return g(d,{...r,key:`form-${o.stepState.currentStep.name}`},l("form",{id:C,onSubmit:r.handleSubmit(S),className:"space-y-4 RemoteFlows__OnboardingForm",children:l(c,{components:F,fields:o.fields,fieldsets:o.meta.fieldsets,fieldValues:o.fieldValues})}))}t(B,"CreateCompanyForm");export{B as a};
|
|
2
|
+
//# sourceMappingURL=chunk-N2WIEKM6.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as I}from"./chunk-ZI7EPJT7.js";import{c as R,d as x,e as C,f as T}from"./chunk-SRLBVFNQ.js";import{n as d,r as P}from"./chunk-C4HFMTSB.js";import{c as N}from"./chunk-H2O4CVKF.js";import{a as m}from"./chunk-P37U34EQ.js";import*as r from"react";import{Fragment as h,jsx as i,jsxs as F}from"react/jsx-runtime";var w=T,f=r.createContext({}),z=m(({...e})=>i(f.Provider,{value:{name:e.name},children:i(x,{...e})}),"FormField"),D=m(({name:e,children:t})=>i(f.Provider,{value:{name:e},children:t}),"FormFieldNameProvider"),u=m(()=>{let e=r.useContext(f),t=r.useContext(V),{getFieldState:o}=C(),n=R({name:e.name}),s=o(e.name,n);if(!e)throw new Error("useFormField should be used within <FormField>");let{id:a}=t;return{id:a,name:e.name,formItemId:`${a}-form-item`,formDescriptionId:`${a}-form-item-description`,formMessageId:`${a}-form-item-message`,...s}},"useFormField"),V=r.createContext({});function O({className:e,...t}){let o=r.useId();return i(V.Provider,{value:{id:o},children:i("div",{"data-slot":"form-item",...t,className:d("grid gap-2",e)})})}m(O,"FormItem");function W({className:e,...t}){let{error:o,formItemId:n}=u();return i(I,{"data-slot":"form-label","data-error":!!o,className:d("text-base-color mb-1 data-[error=true]:text-destructive",e),htmlFor:n,...t})}m(W,"FormLabel");var v=r.forwardRef(({children:e,...t},o)=>{let{error:n,formItemId:s,formDescriptionId:a,formMessageId:l}=u(),c={"data-slot":"form-control",id:s,"aria-describedby":n?`${a} ${l}`:`${a}`,"aria-invalid":!!n,...t};return r.isValidElement(e)?r.cloneElement(e,{...e.props,...c,ref:o}):i(h,{children:e})});v.displayName="FormControl";function b({helpCenter:e,className:t,children:o,as:n,id:s,...a}){let l=n||"p",c=N();if(typeof o=="string"){let p=P(o);if(c){let g=c(p);return F(l,{"data-slot":"form-description",id:s,className:d("text-base-color text-xs",t),"data-transformed":"true","data-sanitized":"true",...a,children:[g," ",e&&e]})}return F(l,{"data-slot":"form-description",id:s,className:d("text-base-color text-xs",t),"data-sanitized":"true","data-children-type":"string",...a,children:[i("span",{dangerouslySetInnerHTML:{__html:p}})," ",e&&e]})}return F(l,{"data-slot":"form-description",id:s,className:d("text-base-color text-xs",t),"data-sanitized":"false","data-children-type":"other",...a,children:[typeof o=="function"?o():o,e&&e]})}m(b,"BaseFormDescription");function _({...e}){let{formDescriptionId:t}=u();return i(b,{id:t,...e})}m(_,"FormDescription");function k({className:e,...t}){let{error:o,formMessageId:n}=u(),s=o?String(o?.message??""):t.children;return s?i("p",{"data-slot":"form-message",id:n,className:d("text-destructive text-sm",e),...t,children:s}):null}m(k,"FormMessage");export{w as a,z as b,D as c,O as d,W as e,v as f,b as g,_ as h,k as i};
|
|
2
|
+
//# sourceMappingURL=chunk-NEVSZEMH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/ui/form.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Controller,\n ControllerProps,\n FieldPath,\n FieldValues,\n FormProvider,\n useFormContext,\n useFormState,\n} from 'react-hook-form';\n\nimport { cn, sanitizeHtml } from '@/src/lib/utils';\nimport { Label } from '@/src/components/ui/label';\nimport { useTransformer } from '@/src/context';\n\nconst Form = FormProvider;\n\ntype FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> = {\n name: TName;\n};\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>(\n {} as FormFieldContextValue,\n);\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n );\n};\n\n/**\n * Names the field for `FormLabel`, `FormControl` and `FormMessage` without registering a\n * controller for it.\n *\n * `FormField` is what normally supplies this, but a component supplied through\n * `x-jsf-presentation.Component` is rendered on its own — it already receives `value` and\n * `setValue` as props, so wrapping it in a `Controller` would take over the value handling it\n * was given. This provides only the missing name, so those three components can find the\n * field's error the way they do everywhere else.\n */\nconst FormFieldNameProvider = ({\n name,\n children,\n}: {\n name: string;\n children: React.ReactNode;\n}) => (\n <FormFieldContext.Provider value={{ name }}>\n {children}\n </FormFieldContext.Provider>\n);\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext);\n const itemContext = React.useContext(FormItemContext);\n const { getFieldState } = useFormContext();\n const formState = useFormState({ name: fieldContext.name });\n const fieldState = getFieldState(fieldContext.name, formState);\n\n if (!fieldContext) {\n throw new Error('useFormField should be used within <FormField>');\n }\n\n const { id } = itemContext;\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n };\n};\n\ntype FormItemContextValue = {\n id: string;\n};\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue,\n);\n\nfunction FormItem({ className, ...props }: React.ComponentProps<'div'>) {\n const id = React.useId();\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div\n data-slot='form-item'\n {...props}\n className={cn('grid gap-2', className)}\n />\n </FormItemContext.Provider>\n );\n}\n\nfunction FormLabel({ className, ...props }: React.ComponentProps<'label'>) {\n const { error, formItemId } = useFormField();\n\n return (\n <Label\n data-slot='form-label'\n data-error={!!error}\n className={cn(\n 'text-base-color mb-1 data-[error=true]:text-destructive',\n className,\n )}\n htmlFor={formItemId}\n {...props}\n />\n );\n}\n\nconst FormControl = React.forwardRef<\n HTMLElement,\n React.HTMLAttributes<HTMLElement> & { children?: React.ReactNode }\n>(({ children, ...props }, ref) => {\n const { error, formItemId, formDescriptionId, formMessageId } =\n useFormField();\n\n const controlProps = {\n 'data-slot': 'form-control',\n id: formItemId,\n 'aria-describedby': !error\n ? `${formDescriptionId}`\n : `${formDescriptionId} ${formMessageId}`,\n 'aria-invalid': !!error,\n ...props,\n };\n\n if (!React.isValidElement(children)) {\n return <>{children}</>;\n }\n\n return React.cloneElement(\n children as React.ReactElement<Record<string, unknown>>,\n // WE NEED TO FIX: react-hooks/refs - Passing a ref to a function may read its value during render\n // oxlint-disable-next-line react-hooks/refs\n { ...(children.props as object), ...controlProps, ref },\n );\n});\n\nFormControl.displayName = 'FormControl';\n\nexport function BaseFormDescription<T extends React.ElementType = 'p'>({\n helpCenter,\n className,\n children,\n as,\n id,\n ...props\n}: React.ComponentProps<'p'> & {\n helpCenter?: React.ReactNode;\n children?: React.ReactNode | (() => React.ReactNode);\n as?: T;\n id?: string;\n} & Omit<React.ComponentPropsWithoutRef<T>, 'children' | 'className' | 'id'>) {\n const Component = as || 'p';\n const transformHtmlToComponents = useTransformer();\n // we check if children is a string, happens in 95% of the cases I believe\n if (typeof children === 'string') {\n const sanitized = sanitizeHtml(children);\n // if we have a transformer, we use it to transform the children\n if (transformHtmlToComponents) {\n const transformed = transformHtmlToComponents(sanitized);\n return (\n <Component\n data-slot='form-description'\n id={id}\n className={cn('text-base-color text-xs', className)}\n data-transformed='true'\n data-sanitized='true'\n {...props}\n >\n {transformed} {helpCenter && helpCenter}\n </Component>\n );\n }\n // if we don't have a transformer, we sanitize the children and render it as a string\n return (\n <Component\n data-slot='form-description'\n id={id}\n className={cn('text-base-color text-xs', className)}\n data-sanitized='true'\n data-children-type='string'\n {...props}\n >\n <span dangerouslySetInnerHTML={{ __html: sanitized }} />{' '}\n {helpCenter && helpCenter}\n </Component>\n );\n }\n\n // this happens when in theory we pass a ReactNode, I don't really know if this case works in the real world\n // I believe we added when we started but scared to remove it\n return (\n <Component\n data-slot='form-description'\n id={id}\n className={cn('text-base-color text-xs', className)}\n data-sanitized='false'\n data-children-type='other'\n {...props}\n >\n {typeof children === 'function' ? children() : children}\n {helpCenter && helpCenter}\n </Component>\n );\n}\n\nfunction FormDescription<T extends React.ElementType = 'p'>({\n ...props\n}: React.ComponentProps<'p'> & {\n helpCenter?: React.ReactNode;\n children?: React.ReactNode | (() => React.ReactNode);\n as?: T;\n} & Omit<React.ComponentPropsWithoutRef<T>, 'children' | 'className' | 'id'>) {\n const { formDescriptionId } = useFormField();\n return <BaseFormDescription id={formDescriptionId} {...props} />;\n}\n\nfunction FormMessage({ className, ...props }: React.ComponentProps<'p'>) {\n const { error, formMessageId } = useFormField();\n const body = error ? String(error?.message ?? '') : props.children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n data-slot='form-message'\n id={formMessageId}\n className={cn('text-destructive text-sm', className)}\n {...props}\n >\n {body}\n </p>\n );\n}\n\nexport {\n Form,\n FormControl,\n FormDescription,\n FormField,\n FormFieldNameProvider,\n FormItem,\n FormLabel,\n FormMessage,\n useFormField,\n};\n"],"mappings":"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","names":["React","Fragment","jsx","jsxs","Form","FormProvider","FormFieldContext","FormField","__name","props","Controller","FormFieldNameProvider","name","children","useFormField","fieldContext","itemContext","FormItemContext","getFieldState","useFormContext","formState","useFormState","fieldState","id","FormItem","className","cn","FormLabel","error","formItemId","Label","FormControl","ref","formDescriptionId","formMessageId","controlProps","BaseFormDescription","helpCenter","as","Component","transformHtmlToComponents","useTransformer","sanitized","sanitizeHtml","transformed","FormDescription","FormMessage","body"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-C3LOTWEB.js";import{b as e}from"./chunk-Q3ALCPJN.js";import{x as a}from"./chunk-C4HFMTSB.js";import{a as i}from"./chunk-P37U34EQ.js";import{jsx as g}from"react/jsx-runtime";function E({components:m,onSubmit:p,onSuccess:l,onError:c}){let{contractorOnboardingBag:r}=e(),d=i(async(t,P)=>{try{let n=await r.parseFormValues(t);await p?.(n);let o=await r.onSubmit(t);if(o?.data){await l?.(o?.data),r?.next();return}}catch(n){let o=a(n,r.meta?.fields?.pricing_plan,P);c?.(o)}},"handleSubmit"),u=r.stepState.values?.pricing_plan||r.initialValues.pricing_plan;return g(s,{components:m,defaultValues:u,onSubmit:d})}i(E,"PricingPlanStep");export{E as a};
|
|
2
|
+
//# sourceMappingURL=chunk-NHWKX4ED.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as S}from"./chunk-E7Y3YBZH.js";import{a as d,b as C,c as u,d as g,e as b,f as v}from"./chunk-QRSWXKRV.js";import{
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as S}from"./chunk-E7Y3YBZH.js";import{a as d,b as C,c as u,d as g,e as b,f as v}from"./chunk-QRSWXKRV.js";import{d as n,e as i,f as _,h as F,i as p}from"./chunk-NEVSZEMH.js";import{a as c}from"./chunk-P37U34EQ.js";import{jsx as e,jsxs as N}from"react/jsx-runtime";function f({field:r,fieldState:a,fieldData:t}){let{name:m,label:o,description:s,options:h}=t;return N(n,{"data-field":m,className:`RemoteFlows__SelectField__Item__${m}`,children:[e(i,{className:"RemoteFlows__SelectField__Label",children:o}),e(_,{children:e("div",{className:"relative",children:N(d,{value:r.value||"",onValueChange:l=>{r.onChange(l)},children:[e(g,{className:"RemoteFlows__SelectField__Trigger","aria-invalid":!!a.error,"aria-label":o,children:e("span",{className:"absolute",children:e(u,{placeholder:o})})}),e(b,{className:"RemoteFlows__SelectField__Content",children:e(C,{className:"RemoteFlows__SelectField__Group",children:h?.map(l=>e(v,{value:l.value,className:"RemoteFlows__SelectField__SelectItem",disabled:l.disabled,children:l.label},l.value))})})]})})}),(s||t.meta?.helpCenter)&&e(F,{helpCenter:e(S,{helpCenter:t.meta?.helpCenter}),children:s}),a.error&&e(p,{})]})}c(f,"SelectFieldDefault");export{f as a};
|
|
2
|
+
//# sourceMappingURL=chunk-NWY6UVCV.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as At,b as Bt,c as xt,d as Nt,e as Qt,f as Jt,g as Ut,i as Kt,j as Gt,k as $t,l as Ht,m as zt,n as Wt,o as Xt,p as Yt,q as Zt,r as en,s as tn,t as nn,u as on,v as rn,w as an,x as sn}from"./chunk-HO5OVZ7J.js";import{a as vt,b as St,d as Ct,e as wt,f as Pt,g as It,h as Vt}from"./chunk-IYWSUSS2.js";import{a as cn,b as ln,c as un}from"./chunk-FF5OB2GF.js";import{a as kt,b as Tt,f as Rt,g as qt,h as Lt,i as jt}from"./chunk-TDKKCSKV.js";import{a as Q,b as pe,c as S,d as Ft,g as Dt}from"./chunk-PB6UQ4A4.js";import{a as Et,b as Mt}from"./chunk-R23HFBV4.js";import{f as gt,i as ht,j as bt}from"./chunk-46IKKWMK.js";import{Z as yt}from"./chunk-DAUDKN32.js";import{a as pt,b,d as mt,h as d,i as C,t as ft,u as j,v}from"./chunk-C4HFMTSB.js";import{a as Ot}from"./chunk-M3TA5X2H.js";import{e as _t}from"./chunk-H2O4CVKF.js";import{a as _}from"./chunk-P37U34EQ.js";import{useCallback as pn,useEffect as E,useMemo as a,useRef as mn,useState as w}from"react";import fn from"lodash.omit";import{useQuery as Ei}from"@tanstack/react-query";var Mi=_(()=>{let{client:$}=_t(),{data:J}=Bt(),y=xt(J)?J?.company?.id??"":"";return Ei({queryKey:["legal-entities",y],queryFn:_(()=>yt({client:$,path:{company_id:y},query:{page_size:100}}),"queryFn"),select:_(U=>U.data?.data?.legal_entities,"select"),enabled:!!y})},"useLegalEntities"),dn=_(()=>{let{data:$}=Mi();return $?.find(J=>J.is_default)},"useDefaultLegalEntity");var Oi={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},Fi={employment_basic_information:"basic_information"},_n={remote_contract:"provided_by_remote"},Di={provided_by_remote:"remote_contract"},ao=_(({countryCode:$,externalId:J,employmentId:y,skipSteps:U,options:p,initialValues:c})=>{let yn=p?.excludeProducts||[],Ee=mn(p?.onContractReviewed);E(()=>{Ee.current=p?.onContractReviewed},[p?.onContractReviewed]);let[m,Me]=w($||null),[o,gn]=w(y),[P,Oe]=w(void 0),re=mn({select_country:{},basic_information:{},contract_origin:{},invoice_schedule:{},create_invoice_schedule:{},contract_details:{},contract_preview:{},pricing_plan:{},eligibility_questionnaire:{}}),[H,hn]=w(void 0),[Fe,De]=w(!1),[Ae,bn]=w(!0),[ke,vn]=w(!0),[Te,Sn]=w(!0),[B,Cn]=w(!1),[Re,qe]=w(!1),[me,Le]=w(null),{steps:wn,stepsArray:Pn}=a(()=>kt({includeSelectCountry:!U?.includes("select_country"),includeContractOrigin:Te,includeInvoiceSchedule:B,includeCreateInvoiceSchedule:Re,includeEligibilityQuestionnaire:Fe,includeContractDetails:ke,includeContractPreview:Ae}),[Te,B,Re,Fe,ke,Ae,U]),{fieldValues:l,stepState:t,setFieldValues:fe,previousStep:In,nextStep:Vn,goToStep:K,setStepValues:_e}=Ot(wn);E(()=>{me&&(K(me),Le(null))},[me,K]);let{data:u,isLoading:En,refetch:je}=Et({employmentId:o,queryParams:{exclude_files:!0}}),{data:ae,refetch:Mn}=Mt({employmentId:o,enabled:!!o}),On=dn(),{data:Be}=sn({options:{queryOptions:{enabled:t.currentStep.name==="review"}}}),{status:x}=u||{},R=x&&Rt.includes(x),Fn=x&&!qt.includes(x),Dn=a(()=>x&&["invited","initiated"].includes(x)?"invited":"not_invited",[x]),xe=ht(),Ne=bt(m,p),ye=Gt(),Qe=At(),{mutateAsync:Je}=zt(ye,Qe,l),Ue=Zt(),Ke=en(),Ge=nn(),$e=wt(),He=Pt(),ze=It(),We=Vt(),{mutateAsyncOrThrow:An}=b(Ne),Xe=Qt(),Ye=Kt(),Ze=tn(),{mutateAsyncOrThrow:kn}=b(xe),{mutateAsyncOrThrow:Tn}=b(ye),{mutateAsyncOrThrow:Rn}=b(Xe),{mutateAsyncOrThrow:et}=b(Ye),{mutateAsyncOrThrow:qn}=b(Ue),{mutateAsyncOrThrow:tt}=b(Ke),{mutateAsyncOrThrow:Ln}=b(Ze),{mutateAsyncOrThrow:jn}=b(Ge),{mutateAsyncOrThrow:Bn}=b($e),{mutateAsyncOrThrow:xn}=b(He),{mutateAsyncOrThrow:Nn}=b(ze),{mutateAsyncOrThrow:Qn}=b(We);y&&u?.country?.code&&!m&&Me(u.country.code);let{selectCountryForm:q,isLoading:Jn,countries:nt}=an({jsfModify:p?.jsfModify?.select_country}),ge=a(()=>nt?.find(e=>e.value===m),[nt,m]),Un=a(()=>ge?.label,[ge]),Kn=t.currentStep.name==="pricing_plan"||!!y&&R,{form:M,isLoading:Gn,contractorSubscriptions:se,filteredContractorSubscriptions:z,refetch:he,isEligibilityQuestionnaireBlocked:W}=Ht(o,ge,{jsonSchemaVersion:p?.jsonSchemaVersion,queryOptions:{enabled:Kn},excludeProducts:yn,jsfModify:p?.jsfModify?.pricing_plan}),N=a(()=>!!se?.find(e=>e.product.identifier===S)?.eligibility_questionnaire?.submitted_at,[se]),it=a(()=>N?!1:H===S,[N,H]),ot=u?.contractor_type!=="cor",rt=(t.currentStep.name==="contract_origin"?l.contract_origin:void 0)??t.values?.contract_origin?.contract_origin??ae?.contract_origin,$n=_n[rt]??rt,G=H===Q&&$n==="provided_by_customer";E(()=>{vn(!G)},[G]),E(()=>{De(!G&&it)},[G,it]),E(()=>{bn(!G&&ot)},[G,ot]);let ce=a(()=>se?.find(e=>e.product.identifier===S)?.eligibility_questionnaire?.responses,[se]),Hn=Oi[t.currentStep.name]||"contractor_basic_information",zn=Fi[Hn],Wn=u?.[zn]||{},Xn=_(({form:e,options:n={},query:r={},jsonSchemaVersion:s})=>{let L=Object.keys(l).length>0?{...c,...t.values?.[t.currentStep.name],...l}:{...c,...Wn};return gt({countryCode:m,form:e,fieldValues:L,query:r,options:{...n,queryOptions:{enabled:n.queryOptions?.enabled??!0}},jsonSchemaVersion:s})},"useJSONSchema"),Yn=!!(m&&(t.currentStep.name==="basic_information"||y)),Zn=!!(m==="GBR"&&y&&t.currentStep.name==="basic_information"),{data:X,isLoading:ei}=Wt(y,{enabled:Zn}),{data:le,isLoading:ti}=Xt(o,{enabled:!!o});E(()=>{le&&le.length>0&&!P&&Oe(le[0].id)},[le,P]);let{data:I,isLoading:ni}=Xn({form:"contractor_basic_information",options:{jsfModify:ln(m,Un,p),queryOptions:{enabled:Yn}},jsonSchemaVersion:jt(p)}),ii=a(()=>Tt(u?.basic_information?.provisional_start_date,l?.service_duration?.provisional_start_date),[u?.basic_information?.provisional_start_date,l?.service_duration?.provisional_start_date]),h=a(()=>{let e={standard:Q,plus:pe,cor:S};if(l.subscription)return l.subscription;let n=t.values?.pricing_plan?.subscription;if(n&&!W)return n;if(N&&!W)return S;if(W&&N)return Q;if(z&&z.length>0)return e[u?.contractor_type]||Q},[l,t.values,N,u?.contractor_type,W,z]);E(()=>{h&&h!==H&&hn(h)},[h,H]),E(()=>{Sn(!U?.includes("contract_origin")&&h===Q)},[U,h]),E(()=>{Cn(p?.features?.includes("create_invoice_schedule")??!1)},[p?.features]);let oi=a(()=>({...ce,...c,...t.values?.eligibility_questionnaire,...l}),[ce,c,t.values?.eligibility_questionnaire,l]),ri=a(()=>h===S&&t.currentStep.name==="eligibility_questionnaire"||!!y&&R&&h===S,[h,t.currentStep.name,y,R]),{data:O,isLoading:ai}=Yt({options:{queryOptions:{enabled:ri},jsfModify:p?.jsfModify?.eligibility_questionnaire},fieldValues:oi}),si=!!(m&&t.currentStep.name==="contract_details"||R),{data:V,isLoading:ci}=vt({countryCode:m,fieldValues:l,employmentId:o,options:{queryOptions:{enabled:si},jsfModify:cn(p?.jsfModify?.contract_details,ii,h,l,h===S)}}),li=a(()=>t.currentStep.name==="contract_preview"||!!y&&R,[t.currentStep.name,y,R]),{data:F}=Nt({fieldValues:l,options:{queryOptions:{enabled:li},jsfModify:un(p,l)}}),{data:D}=on({fieldValues:l,options:{jsfModify:p?.jsfModify?.contract_origin}}),A=rn({enabled:B&&t.currentStep.name==="invoice_schedule",jsfModify:p?.jsfModify?.invoice_schedule}),{data:f,isLoading:ui,refetch:be}=Ct({employmentId:o,options:{queryOptions:{enabled:B&&!!o&&t.currentStep.name==="invoice_schedule"}}}),{data:k,isLoading:di}=St({enabled:B&&t.currentStep.name==="create_invoice_schedule",employmentId:o,jsfModify:p?.jsfModify?.create_invoice_schedule,fieldValues:l}),{data:ve,isLoading:pi,refetch:mi}=Jt({employmentId:o,contractDocumentId:P,options:{queryOptions:{enabled:!!P}}}),{hasCompanySignedContract:fi}=Ut({employmentId:o,contractDocumentId:P,options:{queryOptions:{enabled:!!P}}}),i=a(()=>({select_country:q?.fields||[],basic_information:I?.fields||[],contract_origin:D?.fields||[],invoice_schedule:A?.fields||[],create_invoice_schedule:k?.fields||[],pricing_plan:M?.fields||[],eligibility_questionnaire:O?.fields||[],contract_details:V?.fields||[],contract_preview:F?.fields||[],review:[]}),[q?.fields,I?.fields,D?.fields,A?.fields,k?.fields,M?.fields,V?.fields,F?.fields,O?.fields]),_i={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:V?.meta["x-jsf-fieldsets"],eligibility_questionnaire:null,contract_preview:null,review:null},yi={select_country:q?.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:k?.meta?.["x-jsf-presentation"],pricing_plan:M?.meta?.["x-jsf-presentation"],eligibility_questionnaire:O?.meta?.["x-jsf-presentation"],contract_details:V?.meta?.["x-jsf-presentation"],contract_preview:F?.meta?.["x-jsf-presentation"],review:null},{country:gi,basic_information:ue={},contract_details:at={}}=u||{},st=gi?.code,Y=a(()=>C(i.select_country,{country:m||st||""}),[i.select_country,m,st]),Se=a(()=>X?.content?mt(X.content,X.name):null,[X?.content,X?.name]),Z=a(()=>{let e={...c,...ue,ir35:u?.contract_details?.ir_35,nationality_status:u?.contract_details?.nationality,...Se&&{ir35_sds_file:[Se]}};return C(i.basic_information,e)},[c,ue,u?.contract_details?.ir_35,u?.contract_details?.nationality,Se,i.basic_information]),ct=a(()=>{let e={...c,contract_origin:_n[ae?.contract_origin]??ae?.contract_origin};return C(i.contract_origin,e)},[i.contract_origin,c,ae?.contract_origin]),lt=a(()=>{let e={...c,...f&&{invoice_schedule_preference:"schedule"}};return C(i.invoice_schedule,e)},[i.invoice_schedule,c,f]),ut=a(()=>{if(f){let n={currency:f.currency,periodicity:f.periodicity,start_date:f.start_date,number:f.number,note:f.note,nr_occurrences:f.nr_occurrences};return f.items?.forEach((r,s)=>{let g=s+1;n[`item_${g}_description`]=r.description,n[`item_${g}_amount`]=r.amount}),C(i.create_invoice_schedule,n)}let e={...c};return C(i.create_invoice_schedule,e)},[i.create_invoice_schedule,c,f]),ee=a(()=>{let n={...{service_duration:{provisional_start_date:ue.provisional_start_date}},...c,...at};return C(i.contract_details,n)},[i.contract_details,at,c,ue]),te=a(()=>{let e=ve?.contract_document?.signatories?.find(r=>r.type==="company"),n={...c,signature:e?.signature};return C(i.contract_preview,n)},[i.contract_preview,c,ve]),ne=a(()=>{let n={...{subscription:h},...c};return C(i.pricing_plan,n)},[i.pricing_plan,c,h]),ie=a(()=>{let e={...c,...ce};return C(i.eligibility_questionnaire,e)},[i.eligibility_questionnaire,c,ce]),hi=a(()=>({select_country:Y,basic_information:Z,contract_origin:ct,invoice_schedule:lt,create_invoice_schedule:ut,contract_details:ee,contract_preview:te,pricing_plan:ne,eligibility_questionnaire:ie}),[Y,Z,ct,lt,ut,ee,te,ne,ie]),Ce=!!(y&&R&&t.currentStep.name!=="review"),we=Jn||ni||En||ci||Gn||pi||ei||ti||ai||di||ui,dt=a(()=>{let n=u?.contractor_type==="cor"||i.contract_preview.length>0;return!!(Ce&&!we&&P&&i.basic_information.length>0&&i.contract_details.length>0&&n)},[Ce,we,P,i.basic_information.length,i.contract_details.length,i.contract_preview.length,u?.contractor_type]);E(()=>{dt&&(re.current={select_country:j(Y,i.select_country,{skipMoneyConversion:!0}),basic_information:j(Z,i.basic_information,{skipMoneyConversion:!0}),contract_origin:{},invoice_schedule:{},create_invoice_schedule:{},contract_details:j(ee,i.contract_details,{skipMoneyConversion:!0}),contract_preview:j(te,i.contract_preview,{skipMoneyConversion:!0}),pricing_plan:j(ne,i.pricing_plan,{skipMoneyConversion:!0}),eligibility_questionnaire:j(ie,i.eligibility_questionnaire,{skipMoneyConversion:!0})},_e({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:{}}),K("review"))},[dt,K,Y,Z,ee,_e,i.select_country,i.basic_information,i.contract_details,i.pricing_plan,ne,i.contract_preview,te,i.eligibility_questionnaire,ie]);let bi=_(e=>{K(e)},"goTo"),Pe=_(async e=>q&&t.currentStep.name==="select_country"?await d(e,q.fields,{isPartialValidation:!1}):I&&t.currentStep.name==="basic_information"?await d(e,I?.fields,{isPartialValidation:!1}):V&&t.currentStep.name==="contract_details"?await d(e,V?.fields,{isPartialValidation:!1}):F&&t.currentStep.name==="contract_preview"?await d(e,F?.fields,{isPartialValidation:!1}):M&&t.currentStep.name==="pricing_plan"?await d(e,M?.fields,{isPartialValidation:!1}):O&&t.currentStep.name==="eligibility_questionnaire"?await d(e,O?.fields,{isPartialValidation:!1}):D&&t.currentStep.name==="contract_origin"?await d(e,D?.fields,{isPartialValidation:!1}):A&&t.currentStep.name==="invoice_schedule"?await d(e,A?.fields,{isPartialValidation:!1}):k&&t.currentStep.name==="create_invoice_schedule"?await d(e,k?.fields,{isPartialValidation:!1}):{},"parseFormValues"),vi=_(e=>{if(!pt(e))return null;let n=e.normalizedErrors.services_and_deliverables,r=Array.isArray(n)?n[0]:n;return r?.source===Dt?{error:r.error,source:r.source,skippable:r.skippable}:null},"extractAiValidationError");async function Si(e){let n=t.currentStep.name,r=await Pe(e);switch(n in re.current&&(re.current[n]=j(r,i[n])),t.currentStep.name){case"select_country":return Me(r.country),Promise.resolve({data:{countryCode:r.country}});case"basic_information":{let s=!o&&m,g=o&&m&&u?.country&&u?.country.code!==m;if(s||g){let Ve={basic_information:fn(r,"nationality_status","ir35","ir35_sds_file"),type:"contractor",country_code:m,external_id:J},de=await kn(Ve),T=de?.data?.employment?.id;if(!T)throw v("Employment ID not found");return await Je({employmentId:T}),gn(T),de}else if(o){let L=fn(r,"nationality_status","ir35","ir35_sds_file");return await Je({employmentId:o}),An({employmentId:o,basic_information:L})}return}case"contract_details":{let{services_and_deliverables_ai_warning:s,services_and_deliverables_error_skippable:g,...L}=r,Ve=l.services_and_deliverables_error_skippable===!0,de={contract_document:L,skip_ai_checks:Ve};try{let T=await Tn({employmentId:o,payload:de}),oe=T?.data?.contract_document?.id;if(!oe)throw v("Contract document ID not found");return Oe(oe),T}catch(T){let oe=vi(T);throw oe&&fe({...e,services_and_deliverables_ai_warning:Lt(h===S),services_and_deliverables_error_skippable:oe.skippable}),T}}case"contract_preview":{if(fi)return Promise.resolve({data:{contract_document:{id:P}}});let s=await Rn({employmentId:o,contractDocumentId:P,payload:{signature:r.signature}});return await mi(),s}case"pricing_plan":{if(e.subscription===Ft)return Promise.resolve({data:{subscription:e.subscription}});if(z.length===0)throw v("No available subscriptions.");if(!e.subscription&&z.length>0)throw v("Please select a subscription plan.");if(W&&[S,pe].includes(e.subscription))throw v(`This individual is not eligible for ${$t[e.subscription]}.`);if(N&&e.subscription!==S)try{await Ln({employmentId:o}),await he()}catch(g){if(g?.response?.status!==404)throw g;await he()}if(e.subscription==Q)return et({employmentId:o,payload:{operation:"downgrade"}});if(e.subscription==pe)return et({employmentId:o,payload:{operation:"upgrade"}});if(e.subscription==S)return N&&u?.contractor_type!=="cor"?tt({employmentId:o}):Promise.resolve({data:{subscription:e.subscription}});throw v("invalid selection")}case"contract_origin":{let s=Di[r.contract_origin]??r.contract_origin,g=r.contract_origin==="provided_by_customer"?"contractor_agreement":"contractor_services_agreement";return await jn({employmentId:o,contractOrigin:s,templateType:g}),await Mn(),{data:{contractOrigin:e.contract_origin}}}case"invoice_schedule":{let s=e.invoice_schedule_preference==="schedule";return qe(s),{data:{invoiceSchedulePreference:e.invoice_schedule_preference}}}case"create_invoice_schedule":{if(!o)throw v("Employment ID is required");if(f?.id){let L=await xn({scheduleId:f.id,values:r});return await be(),L}let s=await Bn({employmentId:o,values:r}),g=s?.data?.failures;if(g&&g.length>0)throw v("Failed to create invoice schedule");return await be(),s}case"eligibility_questionnaire":try{if((await qn({employmentId:o,payload:r}))?.data?.is_blocking)throw De(!1),Le("pricing_plan"),v("This individual is not eligible for Contractor of Record.");return await tt({employmentId:o})}finally{await he()}default:throw v("Invalid step state")}}_(Si,"onSubmit");let Ci=_(()=>{Ee.current?.()},"markContractAsReviewed"),wi=_(async()=>{if(!f?.id)throw v("No invoice schedule to skip");await Nn({scheduleId:f.id}),await be(),qe(!1),_e({...t.values,invoice_schedule:{},create_invoice_schedule:{}}),K("invoice_schedule")},"skipInvoiceSchedule"),Pi=_(async e=>{if(!o)throw v("Employment ID is required");let n=await Pe(e),s=(await Qn({employmentId:o,values:n}))?.data?.contractor_invoice_preview;if(s)return{...s,content:ft(s.content)}},"previewContractorInvoice"),Ii=_(()=>{o&&je(),Vn()},"handleNextStep"),Ie=pn(async e=>{if(t.currentStep.name==="select_country"){let n=await d(e,q.fields,{isPartialValidation:!1});return q.handleValidation(n)}if(I&&t.currentStep.name==="basic_information"){let n=await d(e,I?.fields,{isPartialValidation:!1});return I?.handleValidation(n)}if(V&&t.currentStep.name==="contract_details"){let n=await d(e,V?.fields,{isPartialValidation:!1});return V?.handleValidation(n)}if(F&&t.currentStep.name==="contract_preview"){let n=await d(e,F?.fields,{isPartialValidation:!0});return F?.handleValidation(n)}if(M&&t.currentStep.name==="pricing_plan"){let n=await d(e,M?.fields,{isPartialValidation:!1});return M?.handleValidation(n)}if(O&&t.currentStep.name==="eligibility_questionnaire"){let n=await d(e,O?.fields,{isPartialValidation:!1});return O?.handleValidation(n)}if(D&&t.currentStep.name==="contract_origin"){let n=await d(e,D?.fields,{isPartialValidation:!1});return D?.handleValidation(n)}if(A&&t.currentStep.name==="invoice_schedule"){let n=await d(e,A?.fields,{isPartialValidation:!1});return A?.handleValidation(n)}if(k&&t.currentStep.name==="create_invoice_schedule"){let n=await d(e,k?.fields,{isPartialValidation:!1});return k?.handleValidation(n)}return null},[t.currentStep.name,q,I,V,F,M,O,D,A,k]),Vi=pn(async e=>{fe(e),B&&["invoice_schedule","create_invoice_schedule"].includes(t.currentStep.name)&&await Ie(e)},[fe,B,t,Ie]);return{isLoading:we||Ce,fieldValues:l,stepState:t,checkFieldUpdates:Vi,markContractAsReviewed:Ci,existingInvoiceSchedule:f,skipInvoiceSchedule:wi,isSkippingInvoiceSchedule:ze.isPending,previewContractorInvoice:Pi,isPreviewingInvoiceSchedule:We.isPending,back:In,next:Ii,goTo:bi,onSubmit:Si,fields:i[t.currentStep.name],meta:{fields:re.current,fieldsets:_i[t.currentStep.name],presentation:yi[t.currentStep.name]},parseFormValues:Pe,canSkipAiValidation:l.services_and_deliverables_error_skippable===!0,handleValidation:Ie,initialValues:hi,employmentId:o,refetchEmployment:je,isSubmitting:xe.isPending||Ne.isPending||ye.isPending||Xe.isPending||Ye.isPending||Qe.isPending||Ue.isPending||Ke.isPending||Ze.isPending||Ge.isPending||$e.isPending||He.isPending,documentPreviewPdf:ve,canInvite:Fn,isEmploymentReadOnly:R,invitedStatus:Dn,employment:u,defaultLegalEntity:On,needsCompanyVerification:Be?.some(e=>e.type==="verify_company")??!1,needsRemotePaymentsSetup:Be?.some(e=>e.type==="setup_remote_payments")??!1,steps:Pn}},"useContractorOnboarding");export{ao as a};
|
|
2
|
+
//# sourceMappingURL=chunk-OMNDZQ4X.js.map
|