@remoteoss/remote-flows 0.4.0-alpha.8 → 0.4.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 +57 -14
- package/dist/chunk-276MJCIE.js +2 -0
- package/dist/chunk-276MJCIE.js.map +1 -0
- package/dist/chunk-2M24UA4Q.js +2 -0
- package/dist/chunk-2M24UA4Q.js.map +1 -0
- package/dist/{chunk-HSY5OO7D.js → chunk-32RYPLZK.js} +2 -2
- package/dist/chunk-3DQNK6T7.js +2 -0
- package/dist/chunk-3HPG2L62.js +2 -0
- package/dist/chunk-3HPG2L62.js.map +1 -0
- package/dist/{chunk-6T3A6GWH.js → chunk-3LLIAVAT.js} +2 -2
- package/dist/{chunk-4YNOSVYQ.js → chunk-3NZ6PO4D.js} +2 -2
- package/dist/{chunk-WRDKLT4N.js → chunk-3ZWDIEEM.js} +2 -2
- package/dist/{chunk-ZJT4Y4TA.js → chunk-4DBVDTD7.js} +2 -2
- package/dist/chunk-4U36WFL2.js +2 -0
- package/dist/chunk-4U36WFL2.js.map +1 -0
- package/dist/chunk-5Z4FFOUG.js +2 -0
- package/dist/chunk-5Z4FFOUG.js.map +1 -0
- package/dist/{chunk-XQRRFXRN.js → chunk-6O3WKNSB.js} +2 -2
- package/dist/chunk-6O3WKNSB.js.map +1 -0
- package/dist/{chunk-YLWCN7R2.js → chunk-6PU7CB5U.js} +2 -2
- package/dist/chunk-75R6JZDW.js +2 -0
- package/dist/chunk-75R6JZDW.js.map +1 -0
- package/dist/chunk-7TOZZQQJ.js +2 -0
- package/dist/chunk-7TOZZQQJ.js.map +1 -0
- package/dist/chunk-BF7QENCN.js +2 -0
- package/dist/chunk-BF7QENCN.js.map +1 -0
- package/dist/{chunk-A4RX3KRZ.js → chunk-CFIJKJXD.js} +2 -2
- package/dist/chunk-CNYSTJVL.js +2 -0
- package/dist/chunk-CNYSTJVL.js.map +1 -0
- package/dist/chunk-CTTXXEWI.js +2 -0
- package/dist/chunk-CTTXXEWI.js.map +1 -0
- package/dist/chunk-EB6GZ52C.js +2 -0
- package/dist/chunk-EB6GZ52C.js.map +1 -0
- package/dist/{chunk-OIXUBXFU.js → chunk-EEAMZPP6.js} +2 -2
- package/dist/{chunk-U4M5QBBG.js → chunk-EV5YPN4F.js} +2 -2
- package/dist/{chunk-IAHI4OUM.js → chunk-FB5J7SRP.js} +2 -2
- package/dist/chunk-FNPHFDVW.js +2 -0
- package/dist/chunk-FNPHFDVW.js.map +1 -0
- package/dist/chunk-FUIQ7D6L.js +2 -0
- package/dist/chunk-FUIQ7D6L.js.map +1 -0
- package/dist/chunk-G25ZXN6A.js +2 -0
- package/dist/chunk-G25ZXN6A.js.map +1 -0
- package/dist/{chunk-EMVYCKDC.js → chunk-GEYFQVQI.js} +2 -2
- package/dist/chunk-HDN4FDPM.js +2 -0
- package/dist/chunk-HDN4FDPM.js.map +1 -0
- package/dist/chunk-HSW5HMHH.js +2 -0
- package/dist/chunk-IBPMQFJD.js +2 -0
- package/dist/chunk-IBPMQFJD.js.map +1 -0
- package/dist/{chunk-6I6RMJXC.js → chunk-KFVOK5X5.js} +2 -2
- package/dist/chunk-KFVOK5X5.js.map +1 -0
- package/dist/chunk-KM4XVL2X.js +2 -0
- package/dist/chunk-KM4XVL2X.js.map +1 -0
- package/dist/{chunk-5ETXP2QF.js → chunk-KPHSEIR3.js} +2 -2
- package/dist/{chunk-6W5KUXEP.js → chunk-KSD3WMDB.js} +2 -2
- package/dist/{chunk-YG5FFTC4.js → chunk-KSHK3ZPX.js} +2 -2
- package/dist/chunk-LLIGZSYY.js +2 -0
- package/dist/chunk-LLIGZSYY.js.map +1 -0
- package/dist/chunk-MC6FNME3.js +2 -0
- package/dist/chunk-MC6FNME3.js.map +1 -0
- package/dist/chunk-MNO47WC2.js +2 -0
- package/dist/chunk-MNO47WC2.js.map +1 -0
- package/dist/{chunk-DZYFSFZ7.js → chunk-MRYRNB7Y.js} +2 -2
- package/dist/chunk-MSBG52WO.js +2 -0
- package/dist/chunk-MSBG52WO.js.map +1 -0
- package/dist/{chunk-75YWGTNG.js → chunk-O35HIRRS.js} +2 -2
- package/dist/chunk-OLQH5MUO.js +2 -0
- package/dist/chunk-OLQH5MUO.js.map +1 -0
- package/dist/chunk-P37U34EQ.js +2 -0
- package/dist/{chunk-O562EWKG.js → chunk-PGWKJ6FK.js} +2 -2
- package/dist/{chunk-JI4NYTW4.js → chunk-PJBAQZ6G.js} +2 -2
- package/dist/chunk-PJBAQZ6G.js.map +1 -0
- package/dist/{chunk-PH5CQN7X.js → chunk-PJCUSCO4.js} +2 -2
- package/dist/{chunk-G7BISHWK.js → chunk-PWUYHFON.js} +2 -2
- package/dist/chunk-Q7JCPGRV.js +2 -0
- package/dist/chunk-Q7JCPGRV.js.map +1 -0
- package/dist/{chunk-N6RPXNGN.js → chunk-QR7BFA7D.js} +2 -2
- package/dist/chunk-QTEZNOV2.js +2 -0
- package/dist/chunk-QTEZNOV2.js.map +1 -0
- package/dist/chunk-QW4JPW6J.js +2 -0
- package/dist/chunk-QW4JPW6J.js.map +1 -0
- package/dist/chunk-REFXENXG.js +2 -0
- package/dist/chunk-REFXENXG.js.map +1 -0
- package/dist/chunk-RVPWK6LS.js +2 -0
- package/dist/chunk-RVPWK6LS.js.map +1 -0
- package/dist/chunk-RXK4RLF6.js +2 -0
- package/dist/chunk-RXK4RLF6.js.map +1 -0
- package/dist/chunk-SX5W3CBP.js +2 -0
- package/dist/chunk-SX5W3CBP.js.map +1 -0
- package/dist/{chunk-WEIRXEXU.js → chunk-SYEPIESJ.js} +2 -2
- package/dist/chunk-SYEPIESJ.js.map +1 -0
- package/dist/chunk-TLGQADTJ.js +2 -0
- package/dist/chunk-TLGQADTJ.js.map +1 -0
- package/dist/{chunk-6HGUGIYJ.js → chunk-TVZAFTPT.js} +2 -2
- package/dist/chunk-TXQGBSCM.js +2 -0
- package/dist/chunk-TXQGBSCM.js.map +1 -0
- package/dist/chunk-VNSF5IOL.js +2 -0
- package/dist/chunk-VNSF5IOL.js.map +1 -0
- package/dist/{chunk-3PH5E6CZ.js → chunk-VTNGEN34.js} +2 -2
- package/dist/chunk-VTNGEN34.js.map +1 -0
- package/dist/{chunk-P5VTRXW3.js → chunk-WIRFNWEU.js} +2 -2
- package/dist/chunk-X36OBDKD.js +2 -0
- package/dist/chunk-X36OBDKD.js.map +1 -0
- package/dist/chunk-XIPPSRO6.js +2 -0
- package/dist/chunk-XIPPSRO6.js.map +1 -0
- package/dist/{chunk-SQ73CU3B.js → chunk-XK2VKWS4.js} +2 -2
- package/dist/{chunk-NEFNFYRS.js → chunk-XO3JWN33.js} +2 -2
- package/dist/{chunk-R7Z2AN42.js → chunk-Y4RXM5DL.js} +2 -2
- package/dist/chunk-YJXRJTOH.js +1 -0
- package/dist/{chunk-QHN4PPHD.js → chunk-YO4OQIFP.js} +2 -2
- package/dist/{chunk-O3QLBSMV.js → chunk-Z4FTX74F.js} +2 -2
- package/dist/flows/ContractAmendment/ContractAmendmentBack.d.ts +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentBack.js +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.d.ts +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.js +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +2 -3
- package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentForm.d.ts +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentSubmit.d.ts +1 -1
- package/dist/flows/ContractAmendment/ContractAmendmentSubmit.js +1 -1
- package/dist/flows/ContractAmendment/context.d.ts +2 -3
- package/dist/flows/ContractAmendment/context.js +1 -1
- package/dist/flows/ContractAmendment/hooks.d.ts +2 -3
- package/dist/flows/ContractAmendment/hooks.js +1 -1
- package/dist/flows/ContractAmendment/index.d.ts +2 -3
- package/dist/flows/ContractAmendment/index.js +1 -1
- package/dist/flows/ContractAmendment/types.d.ts +0 -2
- package/dist/flows/ContractAmendment/utils.d.ts +1 -1
- package/dist/flows/ContractAmendment/utils.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorDisclaimer.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +9 -6
- package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +1 -2
- package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorResetButton.d.ts +1 -1
- package/dist/flows/CostCalculator/CostCalculatorResetButton.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorSubmitButton.d.ts +1 -1
- package/dist/flows/CostCalculator/CostCalculatorSubmitButton.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorBenefitsBreakdown.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorContributionsBreakdown.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorGrossSalary.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorResults.d.ts +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorResults.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorResultsChart.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorTotalCost.js +1 -1
- package/dist/flows/CostCalculator/api.d.ts +70 -0
- package/dist/flows/CostCalculator/api.js +2 -0
- package/dist/flows/CostCalculator/components/SalaryField.d.ts +20 -0
- package/dist/flows/CostCalculator/components/SalaryField.js +2 -0
- package/dist/flows/CostCalculator/context.d.ts +3 -4
- package/dist/flows/CostCalculator/context.js +1 -1
- package/dist/flows/CostCalculator/disclaimerUtils.js +1 -1
- package/dist/flows/CostCalculator/hooks.d.ts +7 -21
- package/dist/flows/CostCalculator/hooks.js +1 -1
- package/dist/flows/CostCalculator/index.d.ts +6 -5
- package/dist/flows/CostCalculator/index.js +1 -1
- package/dist/flows/CostCalculator/jsonSchema.js +1 -1
- package/dist/flows/CostCalculator/types.d.ts +6 -4
- package/dist/flows/CostCalculator/utils.d.ts +6 -4
- package/dist/flows/CostCalculator/utils.js +1 -1
- package/dist/flows/Onboarding/OnboardingFlow.d.ts +16 -14
- package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
- package/dist/flows/Onboarding/api.d.ts +54 -11
- package/dist/flows/Onboarding/api.js +1 -1
- package/dist/flows/Onboarding/components/AnnualGrossSalary.d.ts +18 -0
- package/dist/flows/Onboarding/components/AnnualGrossSalary.js +2 -0
- package/dist/flows/Onboarding/{BasicInformationStep.d.ts → components/BasicInformationStep.d.ts} +9 -5
- package/dist/flows/Onboarding/components/BasicInformationStep.js +2 -0
- package/dist/flows/Onboarding/{BenefitsStep.d.ts → components/BenefitsStep.d.ts} +11 -7
- package/dist/flows/Onboarding/components/BenefitsStep.js +2 -0
- package/dist/flows/Onboarding/{ContractDetailsStep.d.ts → components/ContractDetailsStep.d.ts} +9 -5
- package/dist/flows/Onboarding/components/ContractDetailsStep.js +2 -0
- package/dist/flows/Onboarding/components/OnboardingBack.d.ts +7 -0
- package/dist/flows/Onboarding/components/OnboardingBack.js +2 -0
- package/dist/flows/Onboarding/{OnboardingForm.d.ts → components/OnboardingForm.d.ts} +5 -6
- package/dist/flows/Onboarding/components/OnboardingForm.js +2 -0
- package/dist/flows/Onboarding/{OnboardingInvite.d.ts → components/OnboardingInvite.d.ts} +9 -4
- package/dist/flows/Onboarding/components/OnboardingInvite.js +2 -0
- package/dist/flows/Onboarding/{OnboardingSubmit.d.ts → components/OnboardingSubmit.d.ts} +1 -1
- package/dist/flows/Onboarding/components/OnboardingSubmit.js +2 -0
- package/dist/flows/Onboarding/components/OnboardingSubmit.js.map +1 -0
- package/dist/flows/Onboarding/{ReviewStep.d.ts → components/ReviewStep.d.ts} +3 -4
- package/dist/flows/Onboarding/components/ReviewStep.js +2 -0
- package/dist/flows/Onboarding/components/ReviewStep.js.map +1 -0
- package/dist/flows/Onboarding/components/SaveDraftButton.d.ts +15 -0
- package/dist/flows/Onboarding/components/SaveDraftButton.js +2 -0
- package/dist/flows/Onboarding/components/SaveDraftButton.js.map +1 -0
- package/dist/flows/Onboarding/{SelectCountryStep.d.ts → components/SelectCountryStep.d.ts} +9 -5
- package/dist/flows/Onboarding/components/SelectCountryStep.js +2 -0
- package/dist/flows/Onboarding/components/SelectCountryStep.js.map +1 -0
- package/dist/flows/Onboarding/context.d.ts +16 -7
- package/dist/flows/Onboarding/context.js +1 -1
- package/dist/flows/Onboarding/hooks.d.ts +24 -8
- package/dist/flows/Onboarding/hooks.js +1 -1
- package/dist/flows/Onboarding/index.d.ts +14 -14
- package/dist/flows/Onboarding/index.js +1 -1
- package/dist/flows/Onboarding/json-schemas/selectCountryStep.js +1 -1
- package/dist/flows/Onboarding/types.d.ts +37 -5
- package/dist/flows/Onboarding/utils.d.ts +11 -1
- package/dist/flows/Onboarding/utils.js +1 -1
- 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 +1 -1
- package/dist/flows/Termination/TerminationBack.js +1 -1
- 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 +1 -1
- package/dist/flows/Termination/TerminationForm.js +1 -1
- package/dist/flows/Termination/TerminationSubmit.d.ts +1 -1
- package/dist/flows/Termination/TerminationSubmit.js +1 -1
- package/dist/flows/Termination/TimeOff.d.ts +1 -1
- package/dist/flows/Termination/TimeOff.js +1 -1
- package/dist/flows/Termination/context.d.ts +3 -3
- package/dist/flows/Termination/context.js +1 -1
- package/dist/flows/Termination/hooks.d.ts +3 -3
- package/dist/flows/Termination/hooks.js +1 -1
- package/dist/flows/Termination/index.d.ts +3 -3
- package/dist/flows/Termination/index.js +1 -1
- package/dist/flows/Termination/json-schemas/additionalInformation.js +1 -1
- package/dist/flows/Termination/json-schemas/defaultSchema.js +1 -1
- package/dist/flows/Termination/json-schemas/employeeComunication.js +1 -1
- package/dist/flows/Termination/json-schemas/jsonSchema.js +1 -1
- package/dist/flows/Termination/json-schemas/paidTimeOff.js +1 -1
- package/dist/flows/Termination/json-schemas/schema.js +1 -1
- package/dist/flows/Termination/json-schemas/terminationDetails.js +1 -1
- package/dist/flows/Termination/types.d.ts +1 -1
- package/dist/flows/Termination/utils.js +1 -1
- package/dist/flows/types.d.ts +3 -4
- package/dist/flows/useStepState.js +1 -1
- package/dist/flows/utils.d.ts +1 -1
- package/dist/flows/utils.js +1 -1
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +21 -19
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mutations-B6HWH-rZ.d.ts +22 -0
- package/dist/remoteFlows-42q2E5rP.d.ts +156 -0
- package/dist/types-Zg1n_9wh.d.ts +3 -0
- package/dist/{types.gen-Ctv2nomK.d.ts → types.gen-DSJsKiNm.d.ts} +93 -1
- package/package.json +2 -1
- package/dist/chunk-2CIPNPU5.js +0 -2
- package/dist/chunk-2CIPNPU5.js.map +0 -1
- package/dist/chunk-2Y22JKVE.js +0 -2
- package/dist/chunk-3PH5E6CZ.js.map +0 -1
- package/dist/chunk-47DB6L3S.js +0 -2
- package/dist/chunk-47DB6L3S.js.map +0 -1
- package/dist/chunk-6I6RMJXC.js.map +0 -1
- package/dist/chunk-AYDF3IFZ.js +0 -2
- package/dist/chunk-CLBAB4TV.js +0 -2
- package/dist/chunk-CLBAB4TV.js.map +0 -1
- package/dist/chunk-CVGR3FDH.js +0 -2
- package/dist/chunk-CVGR3FDH.js.map +0 -1
- package/dist/chunk-CX7YH3EY.js +0 -2
- package/dist/chunk-CX7YH3EY.js.map +0 -1
- package/dist/chunk-DBIPVIBO.js +0 -2
- package/dist/chunk-DBIPVIBO.js.map +0 -1
- package/dist/chunk-ENBY6GBG.js +0 -2
- package/dist/chunk-ENBY6GBG.js.map +0 -1
- package/dist/chunk-ENMJ56WK.js +0 -2
- package/dist/chunk-ENMJ56WK.js.map +0 -1
- package/dist/chunk-FBJNIQRT.js +0 -2
- package/dist/chunk-FBJNIQRT.js.map +0 -1
- package/dist/chunk-FGBEOUQK.js +0 -1
- package/dist/chunk-GFGXPHZP.js +0 -2
- package/dist/chunk-GFGXPHZP.js.map +0 -1
- package/dist/chunk-GMU3QGAR.js +0 -2
- package/dist/chunk-GMU3QGAR.js.map +0 -1
- package/dist/chunk-HBH2PSYQ.js +0 -2
- package/dist/chunk-HBH2PSYQ.js.map +0 -1
- package/dist/chunk-JGUJV45B.js +0 -2
- package/dist/chunk-JGUJV45B.js.map +0 -1
- package/dist/chunk-JI4NYTW4.js.map +0 -1
- package/dist/chunk-JRQSZHUU.js +0 -2
- package/dist/chunk-JRQSZHUU.js.map +0 -1
- package/dist/chunk-KFQTQ6MF.js +0 -2
- package/dist/chunk-MCGIIIED.js +0 -2
- package/dist/chunk-MCGIIIED.js.map +0 -1
- package/dist/chunk-ONZPO4GN.js +0 -2
- package/dist/chunk-ONZPO4GN.js.map +0 -1
- package/dist/chunk-PPRTHZVC.js +0 -2
- package/dist/chunk-PPRTHZVC.js.map +0 -1
- package/dist/chunk-Q6U6K2S6.js +0 -2
- package/dist/chunk-Q6U6K2S6.js.map +0 -1
- package/dist/chunk-RS6OHJ7D.js +0 -2
- package/dist/chunk-RS6OHJ7D.js.map +0 -1
- package/dist/chunk-TPRGCMIZ.js +0 -2
- package/dist/chunk-TPRGCMIZ.js.map +0 -1
- package/dist/chunk-U5ZTX2JG.js +0 -2
- package/dist/chunk-U5ZTX2JG.js.map +0 -1
- package/dist/chunk-U6GTSXBM.js +0 -2
- package/dist/chunk-U6GTSXBM.js.map +0 -1
- package/dist/chunk-UFKVREEJ.js +0 -2
- package/dist/chunk-UFKVREEJ.js.map +0 -1
- package/dist/chunk-VYT6PSLL.js +0 -2
- package/dist/chunk-VYT6PSLL.js.map +0 -1
- package/dist/chunk-WEIRXEXU.js.map +0 -1
- package/dist/chunk-WF4FKBRR.js +0 -2
- package/dist/chunk-WF4FKBRR.js.map +0 -1
- package/dist/chunk-WU77JQYU.js +0 -2
- package/dist/chunk-WU77JQYU.js.map +0 -1
- package/dist/chunk-XQRRFXRN.js.map +0 -1
- package/dist/chunk-XSS46DGP.js +0 -2
- package/dist/chunk-XSS46DGP.js.map +0 -1
- package/dist/chunk-XTE3FJRR.js +0 -2
- package/dist/chunk-XTE3FJRR.js.map +0 -1
- package/dist/flows/Onboarding/BasicInformationStep.js +0 -2
- package/dist/flows/Onboarding/BenefitsStep.js +0 -2
- package/dist/flows/Onboarding/ContractDetailsStep.js +0 -2
- package/dist/flows/Onboarding/OnboardingBack.d.ts +0 -6
- package/dist/flows/Onboarding/OnboardingBack.js +0 -2
- package/dist/flows/Onboarding/OnboardingForm.js +0 -2
- package/dist/flows/Onboarding/OnboardingInvite.js +0 -2
- package/dist/flows/Onboarding/OnboardingSubmit.js +0 -2
- package/dist/flows/Onboarding/ReviewStep.js +0 -2
- package/dist/flows/Onboarding/SelectCountryStep.js +0 -2
- package/dist/mutations-v9H353tz.d.ts +0 -10
- package/dist/remoteFlows-iMN5oBtU.d.ts +0 -116
- package/dist/types-CxSFjQw5.d.ts +0 -3
- /package/dist/{chunk-HSY5OO7D.js.map → chunk-32RYPLZK.js.map} +0 -0
- /package/dist/{chunk-KFQTQ6MF.js.map → chunk-3DQNK6T7.js.map} +0 -0
- /package/dist/{chunk-6T3A6GWH.js.map → chunk-3LLIAVAT.js.map} +0 -0
- /package/dist/{chunk-4YNOSVYQ.js.map → chunk-3NZ6PO4D.js.map} +0 -0
- /package/dist/{chunk-WRDKLT4N.js.map → chunk-3ZWDIEEM.js.map} +0 -0
- /package/dist/{chunk-ZJT4Y4TA.js.map → chunk-4DBVDTD7.js.map} +0 -0
- /package/dist/{chunk-YLWCN7R2.js.map → chunk-6PU7CB5U.js.map} +0 -0
- /package/dist/{chunk-A4RX3KRZ.js.map → chunk-CFIJKJXD.js.map} +0 -0
- /package/dist/{chunk-OIXUBXFU.js.map → chunk-EEAMZPP6.js.map} +0 -0
- /package/dist/{chunk-U4M5QBBG.js.map → chunk-EV5YPN4F.js.map} +0 -0
- /package/dist/{chunk-IAHI4OUM.js.map → chunk-FB5J7SRP.js.map} +0 -0
- /package/dist/{chunk-EMVYCKDC.js.map → chunk-GEYFQVQI.js.map} +0 -0
- /package/dist/{chunk-2Y22JKVE.js.map → chunk-HSW5HMHH.js.map} +0 -0
- /package/dist/{chunk-5ETXP2QF.js.map → chunk-KPHSEIR3.js.map} +0 -0
- /package/dist/{chunk-6W5KUXEP.js.map → chunk-KSD3WMDB.js.map} +0 -0
- /package/dist/{chunk-YG5FFTC4.js.map → chunk-KSHK3ZPX.js.map} +0 -0
- /package/dist/{chunk-DZYFSFZ7.js.map → chunk-MRYRNB7Y.js.map} +0 -0
- /package/dist/{chunk-75YWGTNG.js.map → chunk-O35HIRRS.js.map} +0 -0
- /package/dist/{chunk-AYDF3IFZ.js.map → chunk-P37U34EQ.js.map} +0 -0
- /package/dist/{chunk-O562EWKG.js.map → chunk-PGWKJ6FK.js.map} +0 -0
- /package/dist/{chunk-PH5CQN7X.js.map → chunk-PJCUSCO4.js.map} +0 -0
- /package/dist/{chunk-G7BISHWK.js.map → chunk-PWUYHFON.js.map} +0 -0
- /package/dist/{chunk-N6RPXNGN.js.map → chunk-QR7BFA7D.js.map} +0 -0
- /package/dist/{chunk-6HGUGIYJ.js.map → chunk-TVZAFTPT.js.map} +0 -0
- /package/dist/{chunk-P5VTRXW3.js.map → chunk-WIRFNWEU.js.map} +0 -0
- /package/dist/{chunk-SQ73CU3B.js.map → chunk-XK2VKWS4.js.map} +0 -0
- /package/dist/{chunk-NEFNFYRS.js.map → chunk-XO3JWN33.js.map} +0 -0
- /package/dist/{chunk-R7Z2AN42.js.map → chunk-Y4RXM5DL.js.map} +0 -0
- /package/dist/{chunk-FGBEOUQK.js.map → chunk-YJXRJTOH.js.map} +0 -0
- /package/dist/{chunk-QHN4PPHD.js.map → chunk-YO4OQIFP.js.map} +0 -0
- /package/dist/{chunk-O3QLBSMV.js.map → chunk-Z4FTX74F.js.map} +0 -0
- /package/dist/flows/{Onboarding/BasicInformationStep.js.map → CostCalculator/api.js.map} +0 -0
- /package/dist/flows/{Onboarding/BenefitsStep.js.map → CostCalculator/components/SalaryField.js.map} +0 -0
- /package/dist/flows/Onboarding/{ContractDetailsStep.js.map → components/AnnualGrossSalary.js.map} +0 -0
- /package/dist/flows/Onboarding/{OnboardingBack.js.map → components/BasicInformationStep.js.map} +0 -0
- /package/dist/flows/Onboarding/{OnboardingForm.js.map → components/BenefitsStep.js.map} +0 -0
- /package/dist/flows/Onboarding/{OnboardingInvite.js.map → components/ContractDetailsStep.js.map} +0 -0
- /package/dist/flows/Onboarding/{OnboardingSubmit.js.map → components/OnboardingBack.js.map} +0 -0
- /package/dist/flows/Onboarding/{ReviewStep.js.map → components/OnboardingForm.js.map} +0 -0
- /package/dist/flows/Onboarding/{SelectCountryStep.js.map → components/OnboardingInvite.js.map} +0 -0
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./chunk-M22FKNEY.js";import{a as
|
|
1
|
+
import"./chunk-M22FKNEY.js";import{a as tr}from"./chunk-TLGQADTJ.js";import"./chunk-LLIGZSYY.js";import"./chunk-SYEPIESJ.js";import"./chunk-6O3WKNSB.js";import"./chunk-HSW5HMHH.js";import"./chunk-VX2UC3HG.js";import"./chunk-XSHHMBMT.js";import"./chunk-XFD3ULUF.js";import"./chunk-JODJFARP.js";import"./chunk-WWANHPT7.js";import"./chunk-W5DG5WWJ.js";import"./chunk-S4XU4SE7.js";import"./chunk-4DBVDTD7.js";import"./chunk-XK2VKWS4.js";import"./chunk-QR7BFA7D.js";import"./chunk-BF7QENCN.js";import"./chunk-O35HIRRS.js";import"./chunk-KSD3WMDB.js";import"./chunk-MRYRNB7Y.js";import"./chunk-GULCZWSK.js";import{a as or}from"./chunk-HDN4FDPM.js";import"./chunk-7TOZZQQJ.js";import"./chunk-IBPMQFJD.js";import"./chunk-Q7JCPGRV.js";import"./chunk-4U36WFL2.js";import"./chunk-5Z4FFOUG.js";import"./chunk-MSBG52WO.js";import"./chunk-RVPWK6LS.js";import"./chunk-FNPHFDVW.js";import"./chunk-FUIQ7D6L.js";import"./chunk-KFVOK5X5.js";import"./chunk-PGWKJ6FK.js";import"./chunk-REFXENXG.js";import"./chunk-EB6GZ52C.js";import"./chunk-XIPPSRO6.js";import"./chunk-YJXRJTOH.js";import{a as E}from"./chunk-MNO47WC2.js";import"./chunk-WIRFNWEU.js";import"./chunk-3NZ6PO4D.js";import"./chunk-YO4OQIFP.js";import"./chunk-32RYPLZK.js";import"./chunk-PJCUSCO4.js";import"./chunk-EEAMZPP6.js";import"./chunk-FB5J7SRP.js";import{a as R}from"./chunk-Y4RXM5DL.js";import{a as z}from"./chunk-3HPG2L62.js";import{a as T}from"./chunk-KM4XVL2X.js";import"./chunk-A7ZJQCNU.js";import{a as B}from"./chunk-EV5YPN4F.js";import{a as _}from"./chunk-DYB3RWP7.js";import{a as F}from"./chunk-75R6JZDW.js";import"./chunk-KSHK3ZPX.js";import{b as y,d as P}from"./chunk-2M24UA4Q.js";import"./chunk-OLQH5MUO.js";import"./chunk-UPRUP24B.js";import"./chunk-TXQGBSCM.js";import"./chunk-X36OBDKD.js";import"./chunk-WVJDCDGZ.js";import{d as k}from"./chunk-MC6FNME3.js";import"./chunk-PWUYHFON.js";import{a as er}from"./chunk-3DQNK6T7.js";import{a as H}from"./chunk-RXK4RLF6.js";import{a as ar}from"./chunk-SX5W3CBP.js";import{a as J,b as rr}from"./chunk-VTNGEN34.js";import"./chunk-QW4JPW6J.js";import"./chunk-Z4FTX74F.js";import{a as p}from"./chunk-276MJCIE.js";import"./chunk-PJBAQZ6G.js";import"./chunk-CTTXXEWI.js";import{a as G}from"./chunk-3LLIAVAT.js";import{a as Z}from"./chunk-6PU7CB5U.js";import"./chunk-QTEZNOV2.js";import"./chunk-XO3JWN33.js";import"./chunk-CFIJKJXD.js";import"./chunk-G25ZXN6A.js";import"./chunk-GEYFQVQI.js";import{a as g,c as v}from"./chunk-3ZWDIEEM.js";import"./chunk-VNSF5IOL.js";import"./chunk-CNYSTJVL.js";import"./chunk-TVZAFTPT.js";import{c as C}from"./chunk-KPHSEIR3.js";import{a as e}from"./chunk-P37U34EQ.js";import{QueryClient as L,QueryClientProvider as q}from"@tanstack/react-query";function l(r){let a=document.documentElement;Object.keys(r).forEach(t=>{let o=r[t];o&&a.style.setProperty(t,o)})}e(l,"setCssProperties");function S(r){let a={};return Object.keys(r).forEach(t=>{a[`--${t}`]=r[t]}),a}e(S,"mapThemeColors");function N(r){return{"--spacing":r}}e(N,"mapThemeSpacing");function O(r){return{"--radius":r}}e(O,"mapThemeBorderRadius");function j(r){return{"--fontSizeBase":r.fontSizeBase}}e(j,"mapThemeFont");function h(r){r?.colors&&l(S(r.colors)),r?.spacing&&l(N(r.spacing)),r?.borderRadius&&l(O(r.borderRadius)),r?.font&&l(j(r.font))}e(h,"applyTheme");import{createContext as D,useEffect as I,useMemo as A}from"react";import{jsx as V}from"react/jsx-runtime";var K=D({theme:{}});function u(r){I(()=>{r.theme&&Object.keys(r.theme).length>0&&h(r.theme)},[r.theme]);let a=A(()=>({theme:r.theme}),[r.theme]);return V(K.Provider,{value:a,children:r.children})}e(u,"ThemeProvider");var m={partners:"https://gateway.partners.remote-sandbox.com",production:"https://gateway.remote.com",sandbox:"https://gateway.remote-sandbox.com",staging:"https://gateway.niceremote.com"};import{createClient as U}from"@hey-api/client-fetch";import{useQuery as W}from"@tanstack/react-query";import{useRef as w}from"react";function M(r){try{return new URL(r),!0}catch{return!1}}e(M,"isValidUrl");var f=e(({auth:r,options:a})=>{let t=w(null),{refetch:o}=W({queryKey:["auth"],queryFn:r,enabled:!1}),c=a?.environment?m[a?.environment]:"https://gateway.remote.com",s=p.getConfig(),x="0.4.0",d=!!a?.proxy&&M(a.proxy.url);return a?.proxy&&!d&&console.error("Invalid proxy URL provided. Using default base URL."),w(U({...s,headers:{...s.headers,...d?a?.proxy?.headers:{},"X-Client-Name":"remote-flows-sdk","X-Client-Version":x},baseUrl:d?a.proxy?.url:c,auth:e(async()=>{function b(i){return!i||Date.now()+6e4>i}if(e(b,"hasTokenExpired"),!t.current||b(t.current.expiresAt)){let{data:i}=await o();i&&(t.current={accessToken:i.accessToken,expiresAt:Date.now()+i.expiresIn*1e3})}return t.current?.accessToken},"auth")}))},"useAuth");import{jsx as n}from"react/jsx-runtime";var Q=new L;function X({children:r,auth:a,proxy:t,environment:o}){let c=f({auth:a,options:{proxy:t,environment:o}});return n(v.Provider,{value:{client:c.current},children:r})}e(X,"RemoteFlowContextWrapper");function Y({children:r,components:a}){return n(g.Provider,{value:a?{components:a}:{components:{}},children:r})}e(Y,"FormFieldsProvider");function $({auth:r,children:a,components:t,theme:o,proxy:c,environment:s}){return n(q,{client:Q,children:n(Y,{components:t,children:n(X,{auth:r,proxy:c,environment:s,children:n(u,{theme:o,children:a})})})})}e($,"RemoteFlows");export{G as ContractAmendmentConfirmationForm,er as ContractAmendmentFlow,Z as ContractAmendmentForm,H as ContractAmendmentSubmit,B as CostCalculatorDisclaimer,F as CostCalculatorFlow,R as CostCalculatorForm,z as CostCalculatorResetButton,E as CostCalculatorResults,T as CostCalculatorSubmitButton,or as OnboardingFlow,$ as RemoteFlows,tr as TerminationFlow,y as buildCostCalculatorEstimationPayload,_ as disclaimerData,C as transformYupErrorsIntoObject,ar as useContractAmendment,P as useCostCalculator,k as useCostCalculatorEstimationPdf,J as useEmploymentQuery,rr as useTimeOffQuery};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/RemoteFlowsProvider.tsx","../src/lib/applyTheme.ts","../src/theme.tsx","../src/environments.ts","../src/useAuth.ts"],"sourcesContent":["import { QueryClient, QueryClientProvider } from '@tanstack/react-query';\nimport type { PropsWithChildren } from 'react';\nimport React from 'react';\n\nimport { ThemeProvider } from '@/src/theme';\nimport { FormFieldsContext, RemoteFlowContext } from './context';\nimport { Components, RemoteFlowsSDKProps } from './types/remoteFlows';\nimport { useAuth } from './useAuth';\n\nconst queryClient = new QueryClient();\n\ntype RemoteFlowContextWrapperProps = {\n auth: RemoteFlowsSDKProps['auth'];\n children: React.ReactNode;\n isTestingMode?: RemoteFlowsSDKProps['isTestingMode'];\n proxy?: RemoteFlowsSDKProps['proxy'];\n};\n\nfunction RemoteFlowContextWrapper({\n children,\n auth,\n isTestingMode,\n proxy,\n}: RemoteFlowContextWrapperProps) {\n const remoteApiClient = useAuth({\n auth,\n options: {\n isTestingMode: !!isTestingMode,\n proxy,\n },\n });\n return (\n <RemoteFlowContext.Provider value={{ client: remoteApiClient.current }}>\n {children}\n </RemoteFlowContext.Provider>\n );\n}\n\nexport function FormFieldsProvider({\n children,\n components,\n}: PropsWithChildren<{\n components?: Components;\n}>) {\n return (\n <FormFieldsContext.Provider\n value={components ? { components } : { components: {} }}\n >\n {children}\n </FormFieldsContext.Provider>\n );\n}\n\nexport function RemoteFlows({\n auth,\n children,\n components,\n isTestingMode = false,\n theme,\n proxy,\n}: PropsWithChildren<RemoteFlowsSDKProps>) {\n return (\n <QueryClientProvider client={queryClient}>\n <FormFieldsProvider components={components}>\n <RemoteFlowContextWrapper\n isTestingMode={isTestingMode}\n auth={auth}\n proxy={proxy}\n >\n <ThemeProvider theme={theme}>{children}</ThemeProvider>\n </RemoteFlowContextWrapper>\n </FormFieldsProvider>\n </QueryClientProvider>\n );\n}\n","import {\n CssThemeBorder,\n CssThemeColors,\n CssThemeFont,\n CssThemeSpacing,\n ThemeColors,\n ThemeFont,\n ThemeProviderProps,\n} from '@/src/types/theme';\n\nfunction setCssProperties(variables: Record<string, string>) {\n const root = document.documentElement;\n Object.keys(variables).forEach((v) => {\n const propertyVal = variables[v];\n if (propertyVal) {\n root.style.setProperty(v, propertyVal);\n }\n });\n}\n\nfunction mapThemeColors(colors: ThemeColors): CssThemeColors {\n const result: CssThemeColors = {};\n Object.keys(colors).forEach((key) => {\n result[`--${key}` as keyof CssThemeColors] =\n colors[key as keyof ThemeColors];\n });\n return result;\n}\n\nfunction mapThemeSpacing(spacing: string): CssThemeSpacing {\n return {\n '--spacing': spacing,\n };\n}\n\nfunction mapThemeBorderRadius(borderRadius: string): CssThemeBorder {\n return {\n '--radius': borderRadius,\n };\n}\n\nfunction mapThemeFont(font: ThemeFont): CssThemeFont {\n return {\n '--fontSizeBase': font.fontSizeBase,\n };\n}\n\nexport function applyTheme(theme: ThemeProviderProps['theme']) {\n if (theme?.colors) {\n setCssProperties(mapThemeColors(theme.colors));\n }\n\n if (theme?.spacing) {\n setCssProperties(mapThemeSpacing(theme.spacing));\n }\n\n if (theme?.borderRadius) {\n setCssProperties(mapThemeBorderRadius(theme.borderRadius));\n }\n\n if (theme?.font) {\n setCssProperties(mapThemeFont(theme.font));\n }\n}\n","import { applyTheme } from '@/src/lib/applyTheme';\nimport { createContext, useEffect, useMemo } from 'react';\nimport { ThemeProviderProps } from './types/theme';\n\nconst ThemeContext = createContext<Omit<ThemeProviderProps, 'children'>>({\n theme: {},\n});\n\nexport function ThemeProvider(props: ThemeProviderProps) {\n useEffect(() => {\n if (props.theme && Object.keys(props.theme).length > 0) {\n applyTheme(props.theme);\n }\n }, [props.theme]);\n\n const value = useMemo(() => {\n return { theme: props.theme };\n }, [props.theme]);\n\n return (\n <ThemeContext.Provider value={value}>\n {props.children}\n </ThemeContext.Provider>\n );\n}\n","export const ENVIRONMENTS = {\n staging: 'https://gateway.niceremote.com',\n partners: 'https://gateway.partners.remote-sandbox.com',\n production: 'https://gateway.remote.com',\n};\n","import { client } from '@/src/client/client.gen';\nimport { ENVIRONMENTS } from '@/src/environments';\nimport { createClient } from '@hey-api/client-fetch';\nimport { useQuery } from '@tanstack/react-query';\nimport { useRef } from 'react';\nimport { RemoteFlowsSDKProps } from './types/remoteFlows';\n\ntype AuthResponse = {\n accessToken: string;\n expiresIn: number;\n};\n\ntype Options = {\n isTestingMode: boolean;\n proxy?: RemoteFlowsSDKProps['proxy'];\n};\n\nfunction isValidUrl(url: string) {\n try {\n new URL(url);\n return true;\n } catch {\n return false;\n }\n}\n\nexport const useAuth = ({\n auth,\n options,\n}: {\n auth: () => Promise<AuthResponse>;\n options: Options;\n}) => {\n const session = useRef<{ accessToken: string; expiresAt: number } | null>(\n null,\n );\n const { refetch } = useQuery({\n queryKey: ['auth'],\n queryFn: auth,\n enabled: false,\n });\n\n const baseUrl = options.isTestingMode\n ? ENVIRONMENTS.partners\n : process.env.REMOTE_GATEWAY_URL;\n\n const clientConfig = client.getConfig();\n const npmPackageVersion = process.env.VERSION;\n const isValidProxy = !!options.proxy && isValidUrl(options.proxy.url);\n\n if (options.proxy && !isValidProxy) {\n console.error('Invalid proxy URL provided. Using default base URL.');\n }\n\n return useRef(\n createClient({\n ...clientConfig,\n headers: {\n ...clientConfig.headers,\n ...(isValidProxy ? options.proxy?.headers : {}),\n 'X-Client-Name': 'remote-flows-sdk',\n 'X-Client-Version': npmPackageVersion,\n },\n baseUrl: isValidProxy ? options.proxy?.url : baseUrl,\n auth: async () => {\n function hasTokenExpired(expiresAt: number | undefined) {\n return !expiresAt || Date.now() + 60000 > expiresAt;\n }\n if (!session.current || hasTokenExpired(session.current.expiresAt)) {\n const { data } = await refetch();\n if (data) {\n session.current = {\n accessToken: data.accessToken,\n expiresAt: Date.now() + data.expiresIn * 1000,\n };\n }\n }\n return session.current?.accessToken;\n },\n }),\n );\n};\n"],"mappings":"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","names":["QueryClient","QueryClientProvider","setCssProperties","variables","root","v","propertyVal","__name","mapThemeColors","colors","result","key","mapThemeSpacing","spacing","mapThemeBorderRadius","borderRadius","mapThemeFont","font","applyTheme","theme","createContext","useEffect","useMemo","jsx","ThemeContext","createContext","ThemeProvider","props","useEffect","applyTheme","value","useMemo","__name","ENVIRONMENTS","createClient","useQuery","useRef","isValidUrl","url","__name","useAuth","auth","options","session","useRef","refetch","useQuery","baseUrl","ENVIRONMENTS","clientConfig","client","npmPackageVersion","isValidProxy","createClient","hasTokenExpired","expiresAt","data","jsx","queryClient","QueryClient","RemoteFlowContextWrapper","children","auth","isTestingMode","proxy","remoteApiClient","useAuth","RemoteFlowContext","__name","FormFieldsProvider","components","FormFieldsContext","RemoteFlows","theme","QueryClientProvider","ThemeProvider"]}
|
|
1
|
+
{"version":3,"sources":["../src/RemoteFlowsProvider.tsx","../src/lib/applyTheme.ts","../src/theme.tsx","../src/environments.ts","../src/useAuth.ts"],"sourcesContent":["import { QueryClient, QueryClientProvider } from '@tanstack/react-query';\nimport type { PropsWithChildren } from 'react';\nimport React from 'react';\n\nimport { ThemeProvider } from '@/src/theme';\nimport { FormFieldsContext, RemoteFlowContext } from './context';\nimport { Components, RemoteFlowsSDKProps } from './types/remoteFlows';\nimport { useAuth } from './useAuth';\n\nconst queryClient = new QueryClient();\n\ntype RemoteFlowContextWrapperProps = {\n auth: RemoteFlowsSDKProps['auth'];\n children: React.ReactNode;\n environment?: RemoteFlowsSDKProps['environment'];\n proxy?: RemoteFlowsSDKProps['proxy'];\n};\n\nfunction RemoteFlowContextWrapper({\n children,\n auth,\n proxy,\n environment,\n}: RemoteFlowContextWrapperProps) {\n const remoteApiClient = useAuth({\n auth,\n options: {\n proxy,\n environment,\n },\n });\n return (\n <RemoteFlowContext.Provider value={{ client: remoteApiClient.current }}>\n {children}\n </RemoteFlowContext.Provider>\n );\n}\n\nexport function FormFieldsProvider({\n children,\n components,\n}: PropsWithChildren<{\n components?: Components;\n}>) {\n return (\n <FormFieldsContext.Provider\n value={components ? { components } : { components: {} }}\n >\n {children}\n </FormFieldsContext.Provider>\n );\n}\n\nexport function RemoteFlows({\n auth,\n children,\n components,\n theme,\n proxy,\n environment,\n}: PropsWithChildren<RemoteFlowsSDKProps>) {\n return (\n <QueryClientProvider client={queryClient}>\n <FormFieldsProvider components={components}>\n <RemoteFlowContextWrapper\n auth={auth}\n proxy={proxy}\n environment={environment}\n >\n <ThemeProvider theme={theme}>{children}</ThemeProvider>\n </RemoteFlowContextWrapper>\n </FormFieldsProvider>\n </QueryClientProvider>\n );\n}\n","import {\n CssThemeBorder,\n CssThemeColors,\n CssThemeFont,\n CssThemeSpacing,\n ThemeColors,\n ThemeFont,\n ThemeProviderProps,\n} from '@/src/types/theme';\n\nfunction setCssProperties(variables: Record<string, string>) {\n const root = document.documentElement;\n Object.keys(variables).forEach((v) => {\n const propertyVal = variables[v];\n if (propertyVal) {\n root.style.setProperty(v, propertyVal);\n }\n });\n}\n\nfunction mapThemeColors(colors: ThemeColors): CssThemeColors {\n const result: CssThemeColors = {};\n Object.keys(colors).forEach((key) => {\n result[`--${key}` as keyof CssThemeColors] =\n colors[key as keyof ThemeColors];\n });\n return result;\n}\n\nfunction mapThemeSpacing(spacing: string): CssThemeSpacing {\n return {\n '--spacing': spacing,\n };\n}\n\nfunction mapThemeBorderRadius(borderRadius: string): CssThemeBorder {\n return {\n '--radius': borderRadius,\n };\n}\n\nfunction mapThemeFont(font: ThemeFont): CssThemeFont {\n return {\n '--fontSizeBase': font.fontSizeBase,\n };\n}\n\nexport function applyTheme(theme: ThemeProviderProps['theme']) {\n if (theme?.colors) {\n setCssProperties(mapThemeColors(theme.colors));\n }\n\n if (theme?.spacing) {\n setCssProperties(mapThemeSpacing(theme.spacing));\n }\n\n if (theme?.borderRadius) {\n setCssProperties(mapThemeBorderRadius(theme.borderRadius));\n }\n\n if (theme?.font) {\n setCssProperties(mapThemeFont(theme.font));\n }\n}\n","import { applyTheme } from '@/src/lib/applyTheme';\nimport { createContext, useEffect, useMemo } from 'react';\nimport { ThemeProviderProps } from './types/theme';\n\nconst ThemeContext = createContext<Omit<ThemeProviderProps, 'children'>>({\n theme: {},\n});\n\nexport function ThemeProvider(props: ThemeProviderProps) {\n useEffect(() => {\n if (props.theme && Object.keys(props.theme).length > 0) {\n applyTheme(props.theme);\n }\n }, [props.theme]);\n\n const value = useMemo(() => {\n return { theme: props.theme };\n }, [props.theme]);\n\n return (\n <ThemeContext.Provider value={value}>\n {props.children}\n </ThemeContext.Provider>\n );\n}\n","export const ENVIRONMENTS = {\n partners: 'https://gateway.partners.remote-sandbox.com',\n production: 'https://gateway.remote.com',\n sandbox: 'https://gateway.remote-sandbox.com',\n staging: 'https://gateway.niceremote.com',\n};\n","import { client } from '@/src/client/client.gen';\nimport { ENVIRONMENTS } from '@/src/environments';\nimport { createClient } from '@hey-api/client-fetch';\nimport { useQuery } from '@tanstack/react-query';\nimport { useRef } from 'react';\nimport { RemoteFlowsSDKProps } from './types/remoteFlows';\n\ntype AuthResponse = {\n accessToken: string;\n expiresIn: number;\n};\n\ntype Options = Partial<{\n environment: keyof typeof ENVIRONMENTS;\n proxy: RemoteFlowsSDKProps['proxy'];\n}>;\n\nfunction isValidUrl(url: string) {\n try {\n new URL(url);\n return true;\n } catch {\n return false;\n }\n}\n\nexport const useAuth = ({\n auth,\n options,\n}: {\n auth: () => Promise<AuthResponse>;\n options?: Options;\n}) => {\n const session = useRef<{ accessToken: string; expiresAt: number } | null>(\n null,\n );\n const { refetch } = useQuery({\n queryKey: ['auth'],\n queryFn: auth,\n enabled: false,\n });\n\n const baseUrl = options?.environment\n ? ENVIRONMENTS[options?.environment]\n : process.env.REMOTE_GATEWAY_URL;\n\n const clientConfig = client.getConfig();\n const npmPackageVersion = process.env.VERSION;\n const isValidProxy = !!options?.proxy && isValidUrl(options.proxy.url);\n\n if (options?.proxy && !isValidProxy) {\n console.error('Invalid proxy URL provided. Using default base URL.');\n }\n\n return useRef(\n createClient({\n ...clientConfig,\n headers: {\n ...clientConfig.headers,\n ...(isValidProxy ? options?.proxy?.headers : {}),\n 'X-Client-Name': 'remote-flows-sdk',\n 'X-Client-Version': npmPackageVersion,\n },\n baseUrl: isValidProxy ? options.proxy?.url : baseUrl,\n auth: async () => {\n function hasTokenExpired(expiresAt: number | undefined) {\n return !expiresAt || Date.now() + 60000 > expiresAt;\n }\n if (!session.current || hasTokenExpired(session.current.expiresAt)) {\n const { data } = await refetch();\n if (data) {\n session.current = {\n accessToken: data.accessToken,\n expiresAt: Date.now() + data.expiresIn * 1000,\n };\n }\n }\n return session.current?.accessToken;\n },\n }),\n );\n};\n"],"mappings":"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","names":["QueryClient","QueryClientProvider","setCssProperties","variables","root","v","propertyVal","__name","mapThemeColors","colors","result","key","mapThemeSpacing","spacing","mapThemeBorderRadius","borderRadius","mapThemeFont","font","applyTheme","theme","createContext","useEffect","useMemo","jsx","ThemeContext","createContext","ThemeProvider","props","useEffect","applyTheme","value","useMemo","__name","ENVIRONMENTS","createClient","useQuery","useRef","isValidUrl","url","__name","useAuth","auth","options","session","useRef","refetch","useQuery","baseUrl","ENVIRONMENTS","clientConfig","client","npmPackageVersion","isValidProxy","createClient","hasTokenExpired","expiresAt","data","jsx","queryClient","QueryClient","RemoteFlowContextWrapper","children","auth","proxy","environment","remoteApiClient","useAuth","RemoteFlowContext","__name","FormFieldsProvider","components","FormFieldsContext","RemoteFlows","theme","QueryClientProvider","ThemeProvider"]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
interface SuccessResponse<D> {
|
|
2
|
+
data: D;
|
|
3
|
+
error: null;
|
|
4
|
+
}
|
|
5
|
+
interface FieldError {
|
|
6
|
+
field: string;
|
|
7
|
+
messages: string[];
|
|
8
|
+
}
|
|
9
|
+
interface ErrorResponse<E> {
|
|
10
|
+
data: null;
|
|
11
|
+
error: E;
|
|
12
|
+
rawError: Record<string, unknown>;
|
|
13
|
+
fieldErrors: FieldError[];
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Enhanced FieldError interface with user-friendly labels
|
|
17
|
+
*/
|
|
18
|
+
interface NormalizedFieldError extends FieldError {
|
|
19
|
+
userFriendlyLabel: string;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export type { ErrorResponse as E, FieldError as F, NormalizedFieldError as N, SuccessResponse as S };
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { PropsWithChildren, ReactNode } from 'react';
|
|
2
|
+
import { ControllerRenderProps, FieldValues, ControllerFieldState } from 'react-hook-form';
|
|
3
|
+
import { AnySchema } from 'yup';
|
|
4
|
+
import { S as SupportedTypes } from './types-Zg1n_9wh.js';
|
|
5
|
+
|
|
6
|
+
type ThemeProviderProps = PropsWithChildren<{
|
|
7
|
+
theme?: Partial<{
|
|
8
|
+
colors: ThemeColors;
|
|
9
|
+
spacing: string;
|
|
10
|
+
borderRadius: string;
|
|
11
|
+
font: ThemeFont;
|
|
12
|
+
}>;
|
|
13
|
+
}>;
|
|
14
|
+
type ThemeColors = Partial<{
|
|
15
|
+
borderInput: string;
|
|
16
|
+
primaryBackground: string;
|
|
17
|
+
primaryForeground: string;
|
|
18
|
+
accentBackground: string;
|
|
19
|
+
accentForeground: string;
|
|
20
|
+
danger: string;
|
|
21
|
+
warningBackground: string;
|
|
22
|
+
warningBorder: string;
|
|
23
|
+
}>;
|
|
24
|
+
type ThemeFont = {
|
|
25
|
+
fontSizeBase: string;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
type StatementProps = {
|
|
29
|
+
title?: string;
|
|
30
|
+
description: string;
|
|
31
|
+
severity: 'warning' | 'error' | 'success' | 'info' | 'neutral' | 'time';
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
declare const ENVIRONMENTS: {
|
|
35
|
+
partners: string;
|
|
36
|
+
production: string;
|
|
37
|
+
sandbox: string;
|
|
38
|
+
staging: string;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
type AuthResponse = {
|
|
42
|
+
accessToken: string;
|
|
43
|
+
expiresIn: number;
|
|
44
|
+
};
|
|
45
|
+
type JSFFieldset = {
|
|
46
|
+
[x: string]: {
|
|
47
|
+
propertiesByName: string[];
|
|
48
|
+
title: string;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
type JSFField = {
|
|
52
|
+
computedAttributes: Record<string, unknown>;
|
|
53
|
+
description: ReactNode;
|
|
54
|
+
errorMessage: Record<string, string>;
|
|
55
|
+
inputType: SupportedTypes;
|
|
56
|
+
isVisible: boolean;
|
|
57
|
+
jsonType: string;
|
|
58
|
+
label: string;
|
|
59
|
+
name: string;
|
|
60
|
+
required: boolean;
|
|
61
|
+
schema: AnySchema;
|
|
62
|
+
scopedJsonSchema: Record<string, unknown>;
|
|
63
|
+
type: string;
|
|
64
|
+
options?: Array<{
|
|
65
|
+
value: string;
|
|
66
|
+
label: string;
|
|
67
|
+
description?: string;
|
|
68
|
+
}>;
|
|
69
|
+
defaultValue?: string | number;
|
|
70
|
+
minDate?: string;
|
|
71
|
+
maxLength?: number;
|
|
72
|
+
multiple?: boolean;
|
|
73
|
+
meta?: Record<string, unknown>;
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Props for custom field components.
|
|
77
|
+
* All custom field components receive these three props from React Hook Form's Controller.
|
|
78
|
+
*/
|
|
79
|
+
type FieldComponentProps = {
|
|
80
|
+
/**
|
|
81
|
+
* Field prop from React Hook Form's Controller component.
|
|
82
|
+
* Contains field state and methods for registration.
|
|
83
|
+
* You must bind these props to your HTML elements to ensure proper form state management.
|
|
84
|
+
* @see https://react-hook-form.com/docs/usecontroller/controller
|
|
85
|
+
*/
|
|
86
|
+
field: ControllerRenderProps<FieldValues, string>;
|
|
87
|
+
/**
|
|
88
|
+
* Field state prop from React Hook Form's Controller component.
|
|
89
|
+
* Contains information about the field's state, such as errors, touched status, etc.
|
|
90
|
+
* @see https://react-hook-form.com/docs/usecontroller/controller
|
|
91
|
+
*/
|
|
92
|
+
fieldState: ControllerFieldState;
|
|
93
|
+
/**
|
|
94
|
+
* Metadata derived from JSON schema parsing that provides additional context and validation rules for the field.
|
|
95
|
+
* Contains properties defined in the original JSON schema such as type, format, constraints, etc.
|
|
96
|
+
*/
|
|
97
|
+
fieldData: Partial<JSFField> & {
|
|
98
|
+
metadata?: Record<string, unknown>;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
/**
|
|
102
|
+
* Props for custom button components.
|
|
103
|
+
*/
|
|
104
|
+
type ButtonComponentProps = {
|
|
105
|
+
/**
|
|
106
|
+
* The form ID that the button should be associated with.
|
|
107
|
+
*/
|
|
108
|
+
form?: string;
|
|
109
|
+
/**
|
|
110
|
+
* The children content of the button.
|
|
111
|
+
*/
|
|
112
|
+
children?: React.ReactNode;
|
|
113
|
+
} & React.ButtonHTMLAttributes<HTMLButtonElement> & Record<string, unknown>;
|
|
114
|
+
/**
|
|
115
|
+
* Props for custom statement components.
|
|
116
|
+
*/
|
|
117
|
+
type StatementComponentProps = {
|
|
118
|
+
data: StatementProps;
|
|
119
|
+
};
|
|
120
|
+
type Components = {
|
|
121
|
+
[K in SupportedTypes]?: React.ComponentType<FieldComponentProps>;
|
|
122
|
+
} & {
|
|
123
|
+
statement?: React.ComponentType<StatementComponentProps>;
|
|
124
|
+
button?: React.ComponentType<ButtonComponentProps>;
|
|
125
|
+
};
|
|
126
|
+
type RemoteFlowsSDKProps = Omit<ThemeProviderProps, 'children'> & {
|
|
127
|
+
/**
|
|
128
|
+
* Function to authenticate the user and obtain an access token.
|
|
129
|
+
* @returns A promise that resolves to an object containing the access token and its expiration time.
|
|
130
|
+
*/
|
|
131
|
+
auth: () => Promise<AuthResponse>;
|
|
132
|
+
/**
|
|
133
|
+
* Components to override the default field components used in the SDK.
|
|
134
|
+
*/
|
|
135
|
+
components?: Components;
|
|
136
|
+
/**
|
|
137
|
+
* Environment to use for API calls.
|
|
138
|
+
* If not provided, the SDK will use production environment.
|
|
139
|
+
*/
|
|
140
|
+
environment?: keyof typeof ENVIRONMENTS;
|
|
141
|
+
proxy?: {
|
|
142
|
+
/**
|
|
143
|
+
* URL of the proxy server to use for API calls.
|
|
144
|
+
*/
|
|
145
|
+
url: string;
|
|
146
|
+
/**
|
|
147
|
+
* Headers to include in the API requests.
|
|
148
|
+
*/
|
|
149
|
+
headers?: {
|
|
150
|
+
[key: string]: string;
|
|
151
|
+
};
|
|
152
|
+
};
|
|
153
|
+
};
|
|
154
|
+
type $TSFixMe = any;
|
|
155
|
+
|
|
156
|
+
export type { $TSFixMe as $, ButtonComponentProps as B, Components as C, FieldComponentProps as F, JSFFieldset as J, RemoteFlowsSDKProps as R, StatementComponentProps as S, JSFField as a };
|
|
@@ -38,6 +38,25 @@ type TerminationOffboarding = {
|
|
|
38
38
|
type UnifiedEmploymentUpsertBenefitOffersRequest = {
|
|
39
39
|
[key: string]: unknown;
|
|
40
40
|
};
|
|
41
|
+
/**
|
|
42
|
+
* The response from the currency converter
|
|
43
|
+
*/
|
|
44
|
+
type ConvertCurrency = {
|
|
45
|
+
/**
|
|
46
|
+
* The exchange rate used to convert the amount
|
|
47
|
+
*/
|
|
48
|
+
exchange_rate: number;
|
|
49
|
+
/**
|
|
50
|
+
* The amount in cents in the source currency
|
|
51
|
+
*/
|
|
52
|
+
source_amount: number;
|
|
53
|
+
source_currency: CurrencyDefinition;
|
|
54
|
+
/**
|
|
55
|
+
* The amount in cents in the target currency
|
|
56
|
+
*/
|
|
57
|
+
target_amount: number;
|
|
58
|
+
target_currency: CurrencyDefinition;
|
|
59
|
+
};
|
|
41
60
|
type MinimalCountry = {
|
|
42
61
|
alpha_2_code: string;
|
|
43
62
|
code: string;
|
|
@@ -534,6 +553,23 @@ type RequestDetails = {
|
|
|
534
553
|
reason_for_change_description?: string | null;
|
|
535
554
|
salary_decrease_details?: SalaryDecreaseDetails;
|
|
536
555
|
};
|
|
556
|
+
/**
|
|
557
|
+
* The parameters for the currency conversion
|
|
558
|
+
*/
|
|
559
|
+
type ConvertCurrencyParams = {
|
|
560
|
+
/**
|
|
561
|
+
* The amount to convert in cents
|
|
562
|
+
*/
|
|
563
|
+
amount: number;
|
|
564
|
+
/**
|
|
565
|
+
* The currency code to convert from
|
|
566
|
+
*/
|
|
567
|
+
source_currency: string;
|
|
568
|
+
/**
|
|
569
|
+
* The currency code to convert to
|
|
570
|
+
*/
|
|
571
|
+
target_currency: string;
|
|
572
|
+
};
|
|
537
573
|
/**
|
|
538
574
|
* Indicates the expected start date of the employee or contractor.
|
|
539
575
|
*
|
|
@@ -802,6 +838,14 @@ type TooManyRequestsResponse = {
|
|
|
802
838
|
type ConflictResponse = {
|
|
803
839
|
message?: string;
|
|
804
840
|
};
|
|
841
|
+
/**
|
|
842
|
+
* Currency object without a UUID identifier
|
|
843
|
+
*/
|
|
844
|
+
type CurrencyDefinition = {
|
|
845
|
+
code: string;
|
|
846
|
+
name: string;
|
|
847
|
+
symbol: string;
|
|
848
|
+
};
|
|
805
849
|
/**
|
|
806
850
|
* TimeoffDay schema
|
|
807
851
|
*/
|
|
@@ -940,6 +984,16 @@ type ParameterError = {
|
|
|
940
984
|
param: string;
|
|
941
985
|
};
|
|
942
986
|
type GenericFile = Blob | File;
|
|
987
|
+
type CreateContractEligibilityParams = {
|
|
988
|
+
/**
|
|
989
|
+
* type of employment eligibility to work in residing country
|
|
990
|
+
*/
|
|
991
|
+
eligible_to_work_in_residing_country: 'citizen' | 'permanent_resident' | 'temporary_resident';
|
|
992
|
+
/**
|
|
993
|
+
* whether the employer or work restrictions apply
|
|
994
|
+
*/
|
|
995
|
+
employer_or_work_restrictions: boolean;
|
|
996
|
+
};
|
|
943
997
|
type TimeoffType = 'time_off' | 'sick_leave' | 'public_holiday' | 'unpaid_leave' | 'extended_leave' | 'in_lieu_time' | 'maternity_leave' | 'paternity_leave' | 'parental_leave' | 'bereavement' | 'military_leave' | 'other' | 'paid_time_off' | 'custom_company_leave' | 'rtt' | 'casual_leave' | 'rol' | 'ex_festivita';
|
|
944
998
|
/**
|
|
945
999
|
* The details of the salary decrease request if there is one
|
|
@@ -949,6 +1003,14 @@ type SalaryDecreaseDetails = {
|
|
|
949
1003
|
salary_decrease_reason_description?: string | null;
|
|
950
1004
|
was_employee_informed?: string;
|
|
951
1005
|
} | null;
|
|
1006
|
+
/**
|
|
1007
|
+
* The response from the currency converter
|
|
1008
|
+
*/
|
|
1009
|
+
type ConvertCurrencyResponse = {
|
|
1010
|
+
data: {
|
|
1011
|
+
conversion_data: ConvertCurrency;
|
|
1012
|
+
};
|
|
1013
|
+
};
|
|
952
1014
|
type RequestError = {
|
|
953
1015
|
errors: {
|
|
954
1016
|
/**
|
|
@@ -1175,6 +1237,21 @@ type PatchUpdateEmployment2Errors = {
|
|
|
1175
1237
|
429: TooManyRequestsResponse;
|
|
1176
1238
|
};
|
|
1177
1239
|
type PatchUpdateEmployment2Error = PatchUpdateEmployment2Errors[keyof PatchUpdateEmployment2Errors];
|
|
1240
|
+
type PostCreateContractEligibilityErrors = {
|
|
1241
|
+
/**
|
|
1242
|
+
* Bad Request
|
|
1243
|
+
*/
|
|
1244
|
+
400: BadRequestResponse;
|
|
1245
|
+
/**
|
|
1246
|
+
* Unprocessable Entity
|
|
1247
|
+
*/
|
|
1248
|
+
422: UnprocessableEntityResponse;
|
|
1249
|
+
/**
|
|
1250
|
+
* Unprocessable Entity
|
|
1251
|
+
*/
|
|
1252
|
+
429: TooManyRequestsResponse;
|
|
1253
|
+
};
|
|
1254
|
+
type PostCreateContractEligibilityError = PostCreateContractEligibilityErrors[keyof PostCreateContractEligibilityErrors];
|
|
1178
1255
|
type PostAutomatableContractAmendmentErrors = {
|
|
1179
1256
|
/**
|
|
1180
1257
|
* Unauthorized
|
|
@@ -1209,5 +1286,20 @@ type PostInviteEmploymentInvitationErrors = {
|
|
|
1209
1286
|
429: TooManyRequestsResponse;
|
|
1210
1287
|
};
|
|
1211
1288
|
type PostInviteEmploymentInvitationError = PostInviteEmploymentInvitationErrors[keyof PostInviteEmploymentInvitationErrors];
|
|
1289
|
+
type PostConvertCurrencyConverterErrors = {
|
|
1290
|
+
/**
|
|
1291
|
+
* Unauthorized
|
|
1292
|
+
*/
|
|
1293
|
+
401: UnauthorizedResponse;
|
|
1294
|
+
/**
|
|
1295
|
+
* Not Found
|
|
1296
|
+
*/
|
|
1297
|
+
404: NotFoundResponse;
|
|
1298
|
+
/**
|
|
1299
|
+
* Unprocessable Entity
|
|
1300
|
+
*/
|
|
1301
|
+
422: UnprocessableEntityResponse;
|
|
1302
|
+
};
|
|
1303
|
+
type PostConvertCurrencyConverterError = PostConvertCurrencyConverterErrors[keyof PostConvertCurrencyConverterErrors];
|
|
1212
1304
|
|
|
1213
|
-
export type { ContractAmendmentAutomatableResponse as C, EmploymentShowResponse as E, ListTimeoffResponse as L,
|
|
1305
|
+
export type { CreateContractEligibilityParams as A, PostCreateOffboardingError as B, ContractAmendmentAutomatableResponse as C, TimeoffStatus as D, EmploymentShowResponse as E, CostCalculatorEmployment as F, Currency as G, ListTimeoffResponse as L, MinimalRegion as M, OffboardingResponse as O, PostAutomatableContractAmendmentError as P, SuccessResponse as S, TerminationDetailsParams as T, UnifiedEmploymentUpsertBenefitOffersRequest as U, ContractAmendmentResponse as a, PostCreateContractAmendmentError as b, CostCalculatorEstimateResponse as c, CostCalculatorEstimatePdfResponse as d, PostCreateEstimationPdfError as e, CostCalculatorEstimateParams as f, PostCreateEstimationError as g, EmploymentTermType as h, Employment as i, Company as j, PostInviteEmploymentInvitationError as k, PostCreateRiskReserveError as l, EmploymentCreationResponse as m, PostCreateEmployment2Error as n, EmploymentCreateParams as o, EmploymentResponse as p, PatchUpdateEmployment2Error as q, EmploymentFullParams as r, PutUpdateBenefitOfferError as s, MagicLinkResponse as t, UnprocessableEntityResponse as u, MagicLinkParams as v, ConvertCurrencyResponse as w, PostConvertCurrencyConverterError as x, ConvertCurrencyParams as y, PostCreateContractEligibilityError as z };
|
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remoteoss/remote-flows",
|
|
3
|
-
"version": "0.4.0
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"build": "NODE_ENV=production tsup",
|
|
6
6
|
"ci": "npm run build && npm run check-format && npm run check-exports && npm run lint && npm run test",
|
|
7
7
|
"check-exports": "attw --pack . --ignore-rules=cjs-resolves-to-esm --exclude-entrypoints index.css",
|
|
8
8
|
"check-format": "prettier --check .",
|
|
9
9
|
"dev": "NODE_ENV=development tsup --watch",
|
|
10
|
+
"build:reset": "postcss src/styles/reset.css -o ./example/src/css/reset.css",
|
|
10
11
|
"lint": "eslint .",
|
|
11
12
|
"format": "prettier --write .",
|
|
12
13
|
"openapi-ts": "openapi-ts",
|
package/dist/chunk-2CIPNPU5.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as N,b as U,c as l}from"./chunk-CVGR3FDH.js";import{a as J,b as x,c as H,f as j,g as q,h as D,i as W,j as K,l as Y}from"./chunk-VYT6PSLL.js";import{a as g}from"./chunk-JRQSZHUU.js";import{a as A}from"./chunk-JI4NYTW4.js";import{c as b,d as m}from"./chunk-TPRGCMIZ.js";import{a as c}from"./chunk-AYDF3IFZ.js";import{useEffect as Fe,useMemo as z,useRef as Ve,useState as G}from"react";import Oe from"lodash.mergewith";var Pe={employment_basic_information:"basic_information",contract_details:"contract_details"},Te={select_country:null,basic_information:"employment_basic_information",contract_details:"contract_details",benefits:null,review:null},Ce=["invited","created_awaiting_reserve","created_reserve_paid"],Ae=c(({employmentId:y,companyId:Q,countryCode:P,type:X,options:E})=>{let h=Ve({}),[r,Z]=G(y),[i,$]=G(P||null),{data:o,isLoading:ee,refetch:te}=J(r),{data:T,isLoading:ne}=H(r),{data:C,isLoading:oe,refetch:w}=x(Q),ae=P?U:N,{fieldValues:u,stepState:e,setFieldValues:re,previousStep:ie,nextStep:se,goToStep:F,setStepValues:k}=A(ae),{selectCountryForm:S,isLoading:ce}=Y(E),L=D(),I=W(),v=K(),{mutateAsync:me}=g(L),{mutateAsync:B}=g(I),{mutateAsync:le}=g(v),R=Te[e.currentStep.name]||"employment_basic_information",ue=Pe[R],de=o?.[ue]||{},fe=!!(i&&(e.currentStep.name==="basic_information"||e.currentStep.name==="contract_details"||y)),{data:s,isLoading:pe}=j({countryCode:i,form:R,fieldValues:Object.keys(u).length>0?{...e.values?.[e.currentStep.name],...u}:de,options:E,enabled:fe}),{data:d,isLoading:ye}=q(r,u,E),V=z(()=>{if(e.currentStep.name==="benefits"){let t={...e.values?.[e.currentStep.name],...u};return Oe({},T,t)}return{}},[e.currentStep.name,T,e.values,u]),n=z(()=>({select_country:S?.fields||[],basic_information:s?.fields||[],contract_details:s?.fields||[],benefits:d?.fields||[],review:[]}),[S?.fields,s?.fields,d?.fields]),Se={select_country:m(n[e.currentStep.name],{country:i||o?.country.code||""}),basic_information:m(n[e.currentStep.name],o?.basic_information||{}),contract_details:m(n[e.currentStep.name],o?.contract_details||{}),benefits:V||{}},O=pe||ee||ye||ne||oe||ce;Fe(()=>{if(y&&o&&Ce.includes(o?.status)&&!O&&e.currentStep.name!=="review"){let t=m(n.select_country,{country:i||o?.country.code||""}),a=m(n.basic_information,o?.basic_information||{}),f=m(n.contract_details,o?.contract_details||{}),_=m(n.benefits,V||{});h.current={select_country:l(t,n.select_country),basic_information:l(a,n.basic_information),contract_details:l(f,n.contract_details),benefits:l(_,n.benefits)},k({select_country:t,basic_information:a,contract_details:f,benefits:_,review:{}}),F("review")}},[y,o,O,i,F,V,n,e.currentStep.name,k]);function M(t){return S&&e.currentStep.name==="select_country"?t:s?b(t,s?.fields,{isPartialValidation:!0}):{}}c(M,"parseFormValues");async function _e(t){h.current[e.currentStep.name]=l(t,n[e.currentStep.name]);let a=M(t);switch(w(),e.currentStep.name){case"select_country":return $(a.country),Promise.resolve({data:{countryCode:a.country}});case"basic_information":{let f=!r&&i,_=r&&i&&o?.country&&o?.country.code!==i;if(f||_){let he={basic_information:a,type:X,country_code:i};try{let p=await me(he);return await w(),Z(p.data?.data?.employment?.id),p}catch(p){throw console.error("Error creating onboarding:",p),p}}else if(r)return B({employmentId:r,basic_information:a,pricing_plan_details:{frequency:"monthly"}});return}case"contract_details":return B({employmentId:r,...{contract_details:a,pricing_plan_details:{frequency:"monthly"}}});case"benefits":return le({employmentId:r,...t})}}c(_e,"onSubmit");function be(){ie()}c(be,"back");function ge(){se()}c(ge,"next");function Ee(t){F(t)}return c(Ee,"goTo"),{employmentId:r,creditRiskStatus:C?.default_legal_entity_credit_risk_status,owner_id:C?.company_owner_user_id,stepState:e,fields:n[e.currentStep.name],isLoading:O,isSubmitting:L.isPending||I.isPending||v.isPending,initialValues:Se,handleValidation:c(t=>{if(e.currentStep.name==="select_country")return S.handleValidation(t);if(e.currentStep.name==="benefits"&&d){let a=b(t,d?.fields);return d?.handleValidation(a)}if(s){let a=b(t,s?.fields);return s?.handleValidation(a)}return null},"handleValidation"),checkFieldUpdates:re,parseFormValues:M,onSubmit:_e,back:be,next:ge,goTo:Ee,meta:{fields:h.current},refetchEmployment:te,employment:o}},"useOnboarding");export{Ae as a};
|
|
2
|
-
//# sourceMappingURL=chunk-2CIPNPU5.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/Onboarding/hooks.ts"],"sourcesContent":["import {\n Employment,\n EmploymentCreateParams,\n EmploymentFullParams,\n} from '@/src/client';\nimport { Fields } from '@remoteoss/json-schema-form';\n\nimport { useStepState, Step } from '@/src/flows/useStepState';\nimport {\n prettifyFormValues,\n STEPS,\n STEPS_WITHOUT_SELECT_COUNTRY,\n} from '@/src/flows/Onboarding/utils';\nimport {\n getInitialValues,\n parseJSFToValidate,\n} from '@/src/components/form/utils';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport { FieldValues } from 'react-hook-form';\nimport { OnboardingFlowParams } from '@/src/flows/Onboarding/types';\nimport { useEffect, useMemo, useRef, useState } from 'react';\nimport mergeWith from 'lodash.mergewith';\nimport {\n useBenefitOffers,\n useBenefitOffersSchema,\n useCompany,\n useCountriesSchemaField,\n useCreateEmployment,\n useEmployment,\n useJSONSchemaForm,\n useUpdateBenefitsOffers,\n useUpdateEmployment,\n} from '@/src/flows/Onboarding/api';\nimport { JSONSchemaFormType } from '@/src/flows/types';\n\ntype OnboardingHookProps = OnboardingFlowParams;\n\nconst jsonSchemaToEmployment: Partial<\n Record<JSONSchemaFormType, keyof Employment>\n> = {\n employment_basic_information: 'basic_information',\n contract_details: 'contract_details',\n};\n\nconst stepToFormSchemaMap: Record<\n keyof typeof STEPS,\n JSONSchemaFormType | null\n> = {\n select_country: null,\n basic_information: 'employment_basic_information',\n contract_details: 'contract_details',\n benefits: null,\n review: null,\n};\n\nconst reviewStepAllowedEmploymentStatus: Employment['status'][] = [\n 'invited',\n 'created_awaiting_reserve',\n 'created_reserve_paid',\n];\n\nexport const useOnboarding = ({\n employmentId,\n companyId,\n countryCode,\n type,\n options,\n}: OnboardingHookProps) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const fieldsMetaRef = useRef<Record<string, any>>({});\n const [internalEmploymentId, setInternalEmploymentId] = useState<\n string | undefined\n >(employmentId);\n const [internalCountryCode, setInternalCountryCode] = useState<string | null>(\n countryCode || null,\n );\n const {\n data: employment,\n isLoading: isLoadingEmployment,\n refetch: refetchEmployment,\n } = useEmployment(internalEmploymentId);\n\n const { data: benefitOffers, isLoading: isLoadingBenefitOffers } =\n useBenefitOffers(internalEmploymentId);\n const {\n data: company,\n isLoading: isLoadingCompany,\n refetch: refetchCompany,\n } = useCompany(companyId);\n const stepsToUse = countryCode ? STEPS_WITHOUT_SELECT_COUNTRY : STEPS;\n\n const {\n fieldValues,\n stepState,\n setFieldValues,\n previousStep,\n nextStep,\n goToStep,\n setStepValues,\n } = useStepState(\n stepsToUse as Record<keyof typeof STEPS, Step<keyof typeof STEPS>>,\n );\n\n const { selectCountryForm, isLoading: isLoadingCountries } =\n useCountriesSchemaField(options);\n\n const createEmploymentMutation = useCreateEmployment();\n const updateEmploymentMutation = useUpdateEmployment();\n const updateBenefitsOffersMutation = useUpdateBenefitsOffers();\n const { mutateAsync: createEmploymentMutationAsync } = mutationToPromise(\n createEmploymentMutation,\n );\n const { mutateAsync: updateEmploymentMutationAsync } = mutationToPromise(\n updateEmploymentMutation,\n );\n const { mutateAsync: updateBenefitsOffersMutationAsync } = mutationToPromise(\n updateBenefitsOffersMutation,\n );\n\n const formType =\n stepToFormSchemaMap[stepState.currentStep.name] ||\n 'employment_basic_information';\n const employmentKey = jsonSchemaToEmployment[formType] as keyof Employment;\n const serverEmploymentData = (employment?.[employmentKey] || {}) as Record<\n string,\n unknown\n >;\n\n const isOnboardingFormEnabled = Boolean(\n internalCountryCode &&\n (stepState.currentStep.name === 'basic_information' ||\n stepState.currentStep.name === 'contract_details' ||\n Boolean(employmentId)),\n );\n\n const { data: onboardingForm, isLoading: isLoadingOnboardingForm } =\n useJSONSchemaForm({\n countryCode: internalCountryCode as string,\n form: formType,\n fieldValues:\n Object.keys(fieldValues).length > 0\n ? {\n ...stepState.values?.[stepState.currentStep.name], // Restore values for the current step\n ...fieldValues,\n }\n : serverEmploymentData,\n options: options,\n enabled: isOnboardingFormEnabled,\n });\n\n const {\n data: benefitOffersSchema,\n isLoading: isLoadingBenefitsOffersSchema,\n } = useBenefitOffersSchema(\n internalEmploymentId as string,\n fieldValues,\n options,\n );\n\n const initialValuesBenefitOffers = useMemo(() => {\n if (stepState.currentStep.name === 'benefits') {\n const benefitsFormValues = {\n ...stepState.values?.[stepState.currentStep.name as keyof typeof STEPS], // Restore values for the current step\n ...fieldValues,\n };\n return mergeWith({}, benefitOffers, benefitsFormValues);\n }\n return {};\n }, [\n stepState.currentStep.name,\n benefitOffers,\n stepState.values,\n fieldValues,\n ]);\n\n const stepFields: Record<keyof typeof STEPS, Fields> = useMemo(\n () => ({\n select_country: selectCountryForm?.fields || [],\n basic_information: onboardingForm?.fields || [],\n contract_details: onboardingForm?.fields || [],\n benefits: benefitOffersSchema?.fields || [],\n review: [],\n }),\n [\n selectCountryForm?.fields,\n onboardingForm?.fields,\n benefitOffersSchema?.fields,\n ],\n );\n\n const initialValues = {\n select_country: getInitialValues(stepFields[stepState.currentStep.name], {\n country: internalCountryCode || employment?.country.code || '',\n }),\n basic_information: getInitialValues(\n stepFields[stepState.currentStep.name],\n employment?.basic_information || {},\n ),\n contract_details: getInitialValues(\n stepFields[stepState.currentStep.name],\n employment?.contract_details || {},\n ),\n benefits: initialValuesBenefitOffers || {},\n };\n\n const isLoading =\n isLoadingOnboardingForm ||\n isLoadingEmployment ||\n isLoadingBenefitsOffersSchema ||\n isLoadingBenefitOffers ||\n isLoadingCompany ||\n isLoadingCountries;\n\n useEffect(() => {\n if (\n employmentId &&\n employment &&\n reviewStepAllowedEmploymentStatus.includes(employment?.status) &&\n !isLoading &&\n stepState.currentStep.name !== 'review'\n ) {\n const selectCountryInitialValues = getInitialValues(\n stepFields['select_country'],\n {\n country: internalCountryCode || employment?.country.code || '',\n },\n );\n\n const basicInformationInitialValues = getInitialValues(\n stepFields['basic_information'],\n employment?.basic_information || {},\n );\n\n const contractDetailsInitialValues = getInitialValues(\n stepFields['contract_details'],\n employment?.contract_details || {},\n );\n\n const benefitsInitialValues = getInitialValues(\n stepFields['benefits'],\n initialValuesBenefitOffers || {},\n );\n fieldsMetaRef.current = {\n select_country: prettifyFormValues(\n selectCountryInitialValues,\n stepFields['select_country'],\n ),\n basic_information: prettifyFormValues(\n basicInformationInitialValues,\n stepFields['basic_information'],\n ),\n contract_details: prettifyFormValues(\n contractDetailsInitialValues,\n stepFields['contract_details'],\n ),\n benefits: prettifyFormValues(\n benefitsInitialValues,\n stepFields['benefits'],\n ),\n };\n\n setStepValues({\n select_country: selectCountryInitialValues,\n basic_information: basicInformationInitialValues,\n contract_details: contractDetailsInitialValues,\n benefits: benefitsInitialValues,\n review: {},\n });\n\n goToStep('review');\n }\n }, [\n employmentId,\n employment,\n isLoading,\n internalCountryCode,\n goToStep,\n initialValuesBenefitOffers,\n stepFields,\n stepState.currentStep.name,\n setStepValues,\n ]);\n\n function parseFormValues(values: FieldValues) {\n if (selectCountryForm && stepState.currentStep.name === 'select_country') {\n return values;\n }\n if (onboardingForm) {\n return parseJSFToValidate(values, onboardingForm?.fields, {\n isPartialValidation: true,\n });\n }\n\n return {};\n }\n\n async function onSubmit(values: FieldValues) {\n // Prettify values for the current step\n fieldsMetaRef.current[stepState.currentStep.name] = prettifyFormValues(\n values,\n stepFields[stepState.currentStep.name],\n );\n\n const parsedValues = parseFormValues(values);\n refetchCompany();\n switch (stepState.currentStep.name) {\n case 'select_country': {\n setInternalCountryCode(parsedValues.country);\n return Promise.resolve({ data: { countryCode: parsedValues.country } });\n }\n case 'basic_information': {\n const isEmploymentNotLoaded =\n !internalEmploymentId && internalCountryCode;\n const hasChangedCountry =\n internalEmploymentId &&\n internalCountryCode &&\n employment?.country &&\n employment?.country.code !== internalCountryCode;\n if (isEmploymentNotLoaded || hasChangedCountry) {\n const payload: EmploymentCreateParams = {\n basic_information: parsedValues,\n type: type,\n country_code: internalCountryCode,\n };\n try {\n const response = await createEmploymentMutationAsync(payload);\n await refetchCompany();\n setInternalEmploymentId(\n // @ts-expect-error the types from the response are not matching\n response.data?.data?.employment?.id,\n );\n return response;\n } catch (error) {\n console.error('Error creating onboarding:', error);\n throw error;\n }\n } else if (internalEmploymentId) {\n return updateEmploymentMutationAsync({\n employmentId: internalEmploymentId,\n basic_information: parsedValues,\n pricing_plan_details: {\n frequency: 'monthly',\n },\n });\n }\n\n return;\n }\n case 'contract_details': {\n const payload: EmploymentFullParams = {\n contract_details: parsedValues,\n pricing_plan_details: {\n frequency: 'monthly',\n },\n };\n return updateEmploymentMutationAsync({\n employmentId: internalEmploymentId as string,\n ...payload,\n });\n }\n\n case 'benefits': {\n return updateBenefitsOffersMutationAsync({\n employmentId: internalEmploymentId as string,\n ...values,\n });\n }\n }\n return;\n }\n\n function back() {\n previousStep();\n }\n\n function next() {\n nextStep();\n }\n\n function goTo(step: keyof typeof STEPS) {\n goToStep(step);\n }\n\n return {\n /**\n * Employment id passed useful to be used between components\n */\n employmentId: internalEmploymentId,\n\n /**\n * Credit risk status of the company, useful to know what to to show in the review step\n * The possible values are:\n * - not_started\n * - ready\n * - in_progress\n * - referred\n * - fail\n * - deposit_required\n * - no_deposit_required\n */\n\n creditRiskStatus: company?.default_legal_entity_credit_risk_status,\n\n owner_id: company?.company_owner_user_id,\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState,\n /**\n * Array of form fields from the onboarding schema\n */\n fields: stepFields[stepState.currentStep.name],\n /**\n * Loading state indicating if the onboarding schema is being fetched\n */\n isLoading: isLoading,\n /**\n * Loading state indicating if the onboarding mutation is in progress\n */\n isSubmitting:\n createEmploymentMutation.isPending ||\n updateEmploymentMutation.isPending ||\n updateBenefitsOffersMutation.isPending,\n /**\n * Initial form values\n */\n initialValues,\n /**\n * Function to validate form values against the onboarding schema\n * @param values - Form values to validate\n * @returns Validation result or null if no schema is available\n */\n handleValidation: (values: FieldValues) => {\n if (stepState.currentStep.name === 'select_country') {\n return selectCountryForm.handleValidation(values);\n }\n if (stepState.currentStep.name === 'benefits' && benefitOffersSchema) {\n const parsedValues = parseJSFToValidate(\n values,\n benefitOffersSchema?.fields,\n );\n\n return benefitOffersSchema?.handleValidation(parsedValues);\n }\n if (onboardingForm) {\n const parsedValues = parseJSFToValidate(values, onboardingForm?.fields);\n return onboardingForm?.handleValidation(parsedValues);\n }\n\n return null;\n },\n /**\n * Function to update the current form field values\n * @param values - New form values to set\n */\n checkFieldUpdates: setFieldValues,\n\n /**\n * Function to parse form values before submission\n * @param values - Form values to parse\n * @returns Parsed form values\n */\n parseFormValues,\n\n /**\n * Function to handle form submission\n * @param values - Form values to submit\n * @returns Promise resolving to the mutation result\n */\n onSubmit,\n\n /**\n * Function to handle going back to the previous step\n * @returns {void}\n */\n back,\n\n /**\n * Function to handle going to the next step\n * @returns {void}\n */\n next,\n\n /**\n * Function to handle going to a specific step\n * @param step The step to go to.\n * @returns {void}\n */\n goTo,\n\n /**\n * Fields metadata for each step\n */\n meta: {\n fields: fieldsMetaRef.current,\n },\n\n /**\n * Function to refetch the employment data\n * @returns {void}\n */\n refetchEmployment,\n /**\n * Employment data\n */\n employment,\n };\n};\n"],"mappings":"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","names":["useEffect","useMemo","useRef","useState","mergeWith","jsonSchemaToEmployment","stepToFormSchemaMap","reviewStepAllowedEmploymentStatus","useOnboarding","__name","employmentId","companyId","countryCode","type","options","fieldsMetaRef","useRef","internalEmploymentId","setInternalEmploymentId","useState","internalCountryCode","setInternalCountryCode","employment","isLoadingEmployment","refetchEmployment","useEmployment","benefitOffers","isLoadingBenefitOffers","useBenefitOffers","company","isLoadingCompany","refetchCompany","useCompany","stepsToUse","STEPS_WITHOUT_SELECT_COUNTRY","STEPS","fieldValues","stepState","setFieldValues","previousStep","nextStep","goToStep","setStepValues","useStepState","selectCountryForm","isLoadingCountries","useCountriesSchemaField","createEmploymentMutation","useCreateEmployment","updateEmploymentMutation","useUpdateEmployment","updateBenefitsOffersMutation","useUpdateBenefitsOffers","createEmploymentMutationAsync","mutationToPromise","updateEmploymentMutationAsync","updateBenefitsOffersMutationAsync","formType","employmentKey","serverEmploymentData","isOnboardingFormEnabled","onboardingForm","isLoadingOnboardingForm","useJSONSchemaForm","benefitOffersSchema","isLoadingBenefitsOffersSchema","useBenefitOffersSchema","initialValuesBenefitOffers","useMemo","benefitsFormValues","mergeWith","stepFields","initialValues","getInitialValues","isLoading","useEffect","selectCountryInitialValues","basicInformationInitialValues","contractDetailsInitialValues","benefitsInitialValues","prettifyFormValues","parseFormValues","values","parseJSFToValidate","onSubmit","parsedValues","isEmploymentNotLoaded","hasChangedCountry","payload","response","error","back","next","goTo","step"]}
|
package/dist/chunk-2Y22JKVE.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as o}from"./chunk-JODJFARP.js";import{a as m}from"./chunk-W5DG5WWJ.js";import{a as e}from"./chunk-VX2UC3HG.js";import{a as i}from"./chunk-XSHHMBMT.js";var p={employee_communication:o,termination_details:e,paid_time_off:m,additional_information:i};export{p as a};
|
|
2
|
-
//# sourceMappingURL=chunk-2Y22JKVE.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/hooks.ts"],"sourcesContent":["import {\n getIndexTimeoff,\n getShowEmployment,\n TimeoffStatus,\n} from '@/src/client';\nimport { useClient } from '@/src/context';\nimport { ContractAmendmentParams } from '@/src/flows/ContractAmendment/types';\nimport { Client } from '@hey-api/client-fetch';\nimport { useQuery } from '@tanstack/react-query';\n\ntype UseEmployment = Pick<ContractAmendmentParams, 'employmentId'>;\n\n/**\n * Hook to retrieve employment details for a specific employment ID.\n *\n * @param {Object} params - The parameters for the query.\n * @param {string} params.employmentId - The ID of the employment to fetch details for.\n * @returns {UseQueryResult<any, unknown>} - The result of the query, including the employment details.\n */\nexport const useEmploymentQuery = ({ employmentId }: UseEmployment) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['employment', employmentId],\n retry: false,\n queryFn: () => {\n return getShowEmployment({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: { employment_id: employmentId },\n });\n },\n select: ({ data }) => data,\n });\n};\n\n/**\n * Hook to retrieve time off data for a specific employment.\n *\n * @param {Object} params - The parameters for the query.\n * @param {string} [params.employmentId] - The ID of the employment to fetch time off data for.\n * @param {TimeoffStatus} [params.status] - The status of the time off requests to filter by (e.g., 'approved', 'pending').\n * @returns {UseQueryResult<any, unknown>} - The result of the query, including the time off data.\n *\n */\nexport const useTimeOffQuery = ({\n employmentId,\n status,\n}: {\n employmentId?: string;\n status?: TimeoffStatus;\n}) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['timeoff', employmentId, status],\n retry: false,\n queryFn: () => {\n return getIndexTimeoff({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n query: {\n employment_id: employmentId,\n status: status,\n },\n });\n },\n select: ({ data }) => data,\n });\n};\n"],"mappings":"+HAQA,OAAS,YAAAA,MAAgB,wBAWlB,IAAMC,EAAqBC,EAAA,CAAC,CAAE,aAAAC,CAAa,IAAqB,CACrE,GAAM,CAAE,OAAAC,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAS,CACd,SAAU,CAAC,aAAcH,CAAY,EACrC,MAAO,GACP,QAASD,EAAA,IACAK,EAAkB,CACvB,OAAQH,EACR,QAAS,CACP,cAAe,EACjB,EACA,KAAM,CAAE,cAAeD,CAAa,CACtC,CAAC,EAPM,WAST,OAAQD,EAAA,CAAC,CAAE,KAAAM,CAAK,IAAMA,EAAd,SACV,CAAC,CACH,EAhBkC,sBA2BrBC,EAAkBP,EAAA,CAAC,CAC9B,aAAAC,EACA,OAAAO,CACF,IAGM,CACJ,GAAM,CAAE,OAAAN,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAS,CACd,SAAU,CAAC,UAAWH,EAAcO,CAAM,EAC1C,MAAO,GACP,QAASR,EAAA,IACAS,EAAgB,CACrB,OAAQP,EACR,QAAS,CACP,cAAe,EACjB,EACA,MAAO,CACL,cAAeD,EACf,OAAQO,CACV,CACF,CAAC,EAVM,WAYT,OAAQR,EAAA,CAAC,CAAE,KAAAM,CAAK,IAAMA,EAAd,SACV,CAAC,CACH,EAzB+B","names":["useQuery","useEmploymentQuery","__name","employmentId","client","useClient","useQuery","getShowEmployment","data","useTimeOffQuery","status","getIndexTimeoff"]}
|
package/dist/chunk-47DB6L3S.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{b as r}from"./chunk-DZYFSFZ7.js";import{b as n}from"./chunk-EMVYCKDC.js";import{a as o}from"./chunk-AYDF3IFZ.js";import{jsx as e}from"react/jsx-runtime";function f(t){let{formId:i}=r();return e(n,{...t,form:i,children:t.children})}o(f,"TerminationSubmit");export{f as a};
|
|
2
|
-
//# sourceMappingURL=chunk-47DB6L3S.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/Termination/TerminationSubmit.tsx"],"sourcesContent":["import { Button } from '@/src/components/ui/button';\nimport { ButtonHTMLAttributes, PropsWithChildren } from 'react';\nimport { useTerminationContext } from './context';\n\nexport function TerminationSubmit(\n props: PropsWithChildren<ButtonHTMLAttributes<HTMLButtonElement>>,\n) {\n const { formId } = useTerminationContext();\n\n return (\n <Button {...props} form={formId}>\n {props.children}\n </Button>\n );\n}\n"],"mappings":"wHAUI,cAAAA,MAAA,oBANG,SAASC,EACdC,EACA,CACA,GAAM,CAAE,OAAAC,CAAO,EAAIC,EAAsB,EAEzC,OACEJ,EAACK,EAAA,CAAQ,GAAGH,EAAO,KAAMC,EACtB,SAAAD,EAAM,SACT,CAEJ,CAVgBI,EAAAL,EAAA","names":["jsx","TerminationSubmit","props","formId","useTerminationContext","Button","__name"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/Onboarding/ReviewStep.tsx"],"sourcesContent":["import { useOnboardingContext } from '@/src/flows/Onboarding/context';\nimport {\n CreditRiskStatus,\n CreditRiskState,\n Employment,\n} from '@/src/flows/Onboarding/types';\n\ntype ReviewStepProps = {\n /**\n * Render prop function for customizing the review step credit risk flow UI\n *\n * @param props - Object containing credit risk information\n * @param props.creditRiskState - Current state of the credit risk flow\n * - 'deposit_required': Deposit payment is required but not yet paid\n * - 'deposit_required_successful': Deposit payment has been successfully processed\n * - 'invite': Regular invite flow is available (no deposit required)\n * - 'invite_successful': Invitation has been successfully sent\n * - null: No specific credit risk state applies\n *\n * @param props.creditRiskStatus - Credit risk status from the backend\n * - 'not_started': Credit risk assessment has not been initiated\n * - 'ready': Ready for credit risk assessment\n * - 'in_progress': Credit risk assessment is in progress\n * - 'referred': Company has been referred for manual review\n * - 'fail': Credit risk assessment failed\n * - 'deposit_required': Company requires a deposit payment\n * - 'no_deposit_required': No deposit is required for this company\n * - undefined: Credit risk status not yet determined\n * @returns React.ReactNode to render for the review step\n */\n render: (props: {\n creditRiskState: CreditRiskState;\n creditRiskStatus: CreditRiskStatus | undefined;\n }) => React.ReactNode;\n};\n\nconst statusesToNotShowDeposit: Employment['status'][] = [\n 'invited',\n 'created_reserve_paid',\n];\n\nconst CREDIT_RISK_STATUSES: CreditRiskStatus[] = [\n 'deposit_required',\n 'referred',\n];\n\nexport function ReviewStep({ render }: ReviewStepProps) {\n const { onboardingBag, creditScore } = useOnboardingContext();\n\n // Helper variables to make logic more readable\n const isDepositRequiredCreditRisk =\n onboardingBag.creditRiskStatus === 'deposit_required';\n\n const hasEmploymentStatusThatHidesDeposit =\n onboardingBag.employment?.status &&\n statusesToNotShowDeposit.includes(onboardingBag.employment.status);\n\n const isCreditRiskStatusInExclusionList =\n onboardingBag.creditRiskStatus &&\n CREDIT_RISK_STATUSES.includes(onboardingBag.creditRiskStatus);\n\n const shouldShowDepositFlow =\n isDepositRequiredCreditRisk &&\n onboardingBag.employment?.status &&\n !hasEmploymentStatusThatHidesDeposit;\n\n const shouldShowInviteFlow =\n (onboardingBag.creditRiskStatus && !isCreditRiskStatusInExclusionList) ||\n (onboardingBag.employment?.status && hasEmploymentStatusThatHidesDeposit);\n\n const getCreditRiskState = (): CreditRiskState => {\n // Priority 1: Deposit required flow\n if (shouldShowDepositFlow) {\n return creditScore.showReserveInvoice\n ? 'deposit_required_successful'\n : 'deposit_required';\n }\n\n // Priority 2: Invite flow\n if (shouldShowInviteFlow) {\n return creditScore.showInviteSuccessful ? 'invite_successful' : 'invite';\n }\n\n // Default case\n return null;\n };\n\n const creditRiskState = getCreditRiskState();\n\n return render({\n creditRiskState,\n creditRiskStatus: onboardingBag.creditRiskStatus,\n });\n}\n"],"mappings":"gFAoCA,IAAMA,EAAmD,CACvD,UACA,sBACF,EAEMC,EAA2C,CAC/C,mBACA,UACF,EAEO,SAASC,EAAW,CAAE,OAAAC,CAAO,EAAoB,CACtD,GAAM,CAAE,cAAAC,EAAe,YAAAC,CAAY,EAAIC,EAAqB,EAGtDC,EACJH,EAAc,mBAAqB,mBAE/BI,EACJJ,EAAc,YAAY,QAC1BJ,EAAyB,SAASI,EAAc,WAAW,MAAM,EAE7DK,EACJL,EAAc,kBACdH,EAAqB,SAASG,EAAc,gBAAgB,EAExDM,EACJH,GACAH,EAAc,YAAY,QAC1B,CAACI,EAEGG,EACHP,EAAc,kBAAoB,CAACK,GACnCL,EAAc,YAAY,QAAUI,EAmBjCI,EAjBqBC,EAAA,IAErBH,EACKL,EAAY,mBACf,8BACA,mBAIFM,EACKN,EAAY,qBAAuB,oBAAsB,SAI3D,KAdkB,sBAiBgB,EAE3C,OAAOF,EAAO,CACZ,gBAAAS,EACA,iBAAkBR,EAAc,gBAClC,CAAC,CACH,CA/CgBS,EAAAX,EAAA","names":["statusesToNotShowDeposit","CREDIT_RISK_STATUSES","ReviewStep","render","onboardingBag","creditScore","useOnboardingContext","isDepositRequiredCreditRisk","hasEmploymentStatusThatHidesDeposit","isCreditRiskStatusInExclusionList","shouldShowDepositFlow","shouldShowInviteFlow","creditRiskState","__name"]}
|
package/dist/chunk-AYDF3IFZ.js
DELETED
package/dist/chunk-CLBAB4TV.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./chunk-U5ZTX2JG.js";import{b as t}from"./chunk-O562EWKG.js";import{a}from"./chunk-AYDF3IFZ.js";import{jsx as f}from"react/jsx-runtime";function u({onSubmit:s,onSuccess:m,onError:i}){let{onboardingBag:r}=t(),p=a(async n=>{try{await s?.(r.parseFormValues(n));let o=await r.onSubmit(n);if(o?.data){await m?.(o?.data),r?.next();return}o?.error&&i?.(o?.error)}catch(o){i?.(o)}},"handleSubmit"),c=r.stepState.values?.basic_information||r.initialValues.basic_information;return f(e,{defaultValues:c,onSubmit:p})}a(u,"BasicInformationStep");export{u as a};
|
|
2
|
-
//# sourceMappingURL=chunk-CLBAB4TV.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/Onboarding/BasicInformationStep.tsx"],"sourcesContent":["import { useOnboardingContext } from './context';\nimport { OnboardingForm } from '@/src/flows/Onboarding/OnboardingForm';\nimport { BasicInformationFormPayload } from '@/src/flows/Onboarding/types';\nimport { EmploymentCreationResponse } from '@/src/client';\nimport { $TSFixMe } from '@/src/types/remoteFlows';\n\ntype BasicInformationStepProps = {\n /*\n * The function is called when the form is submitted. It receives the form values as an argument.\n */\n onSubmit?: (payload: BasicInformationFormPayload) => void | Promise<void>;\n /*\n * The function is called when the form submission is successful.\n */\n onSuccess?: (data: EmploymentCreationResponse) => void | Promise<void>;\n /*\n * The function is called when an error occurs during form submission.\n */\n onError?: (error: Error) => void;\n};\n\nexport function BasicInformationStep({\n onSubmit,\n onSuccess,\n onError,\n}: BasicInformationStepProps) {\n const { onboardingBag } = useOnboardingContext();\n const handleSubmit = async (payload: $TSFixMe) => {\n try {\n await onSubmit?.(\n onboardingBag.parseFormValues(payload) as BasicInformationFormPayload,\n );\n const response = await onboardingBag.onSubmit(payload);\n if (response?.data) {\n await onSuccess?.(response?.data as EmploymentCreationResponse);\n onboardingBag?.next();\n return;\n }\n if (response?.error) {\n onError?.(response?.error);\n }\n } catch (error: unknown) {\n onError?.(error as Error);\n }\n };\n\n const initialValues =\n onboardingBag.stepState.values?.basic_information ||\n onboardingBag.initialValues.basic_information;\n\n return (\n <OnboardingForm defaultValues={initialValues} onSubmit={handleSubmit} />\n );\n}\n"],"mappings":"mHAmDI,cAAAA,MAAA,oBA9BG,SAASC,EAAqB,CACnC,SAAAC,EACA,UAAAC,EACA,QAAAC,CACF,EAA8B,CAC5B,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAqB,EACzCC,EAAeC,EAAA,MAAOC,GAAsB,CAChD,GAAI,CACF,MAAMP,IACJG,EAAc,gBAAgBI,CAAO,CACvC,EACA,IAAMC,EAAW,MAAML,EAAc,SAASI,CAAO,EACrD,GAAIC,GAAU,KAAM,CAClB,MAAMP,IAAYO,GAAU,IAAkC,EAC9DL,GAAe,KAAK,EACpB,MACF,CACIK,GAAU,OACZN,IAAUM,GAAU,KAAK,CAE7B,OAASC,EAAgB,CACvBP,IAAUO,CAAc,CAC1B,CACF,EAjBqB,gBAmBfC,EACJP,EAAc,UAAU,QAAQ,mBAChCA,EAAc,cAAc,kBAE9B,OACEL,EAACa,EAAA,CAAe,cAAeD,EAAe,SAAUL,EAAc,CAE1E,CAhCgBC,EAAAP,EAAA","names":["jsx","BasicInformationStep","onSubmit","onSuccess","onError","onboardingBag","useOnboardingContext","handleSubmit","__name","payload","response","error","initialValues","OnboardingForm"]}
|
package/dist/chunk-CVGR3FDH.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as s}from"./chunk-AYDF3IFZ.js";var c={select_country:{index:0,name:"select_country"},basic_information:{index:1,name:"basic_information"},contract_details:{index:2,name:"contract_details"},benefits:{index:3,name:"benefits"},review:{index:4,name:"review"}},d={basic_information:{index:0,name:"basic_information"},contract_details:{index:1,name:"contract_details"},benefits:{index:2,name:"benefits"},review:{index:3,name:"review"}};function l(o,a){return a?Object.fromEntries(Object.entries(o).map(([t,i])=>{if(i===void 0)return[t,void 0];let e=a.find(n=>n.name===t);if(e?.isVisible===!1||e?.deprecated)return[t,void 0];if(e?.type==="radio"||e?.type==="select"){let n=e.options.find(r=>r.value===i);return n?[t,{prettyValue:n?.label,label:e?.label}]:void 0}if(e?.type==="checkbox"&&e?.const)return[t,{prettyValue:!0,label:e.label}];if(e?.type==="countries"&&Array.isArray(i))return[t,{prettyValue:i.join(),label:e.label}];if(e?.type==="fieldset"){let n=l(i,e.fields);if(!n.label&&n.value){let r={...n.value,label:e.label};return[t,r]}return[t,n]}if(e)return[t,{prettyValue:i,label:e.label}]}).filter(Boolean)):{}}s(l,"prettifyFormValues");export{c as a,d as b,l as c};
|
|
2
|
-
//# sourceMappingURL=chunk-CVGR3FDH.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/Onboarding/utils.ts"],"sourcesContent":["import { Step } from '@/src/flows/useStepState';\nimport { Fields } from '@remoteoss/json-schema-form';\n\ntype StepKeys =\n | 'select_country'\n | 'basic_information'\n | 'contract_details'\n | 'benefits'\n | 'review';\n\nexport const STEPS: Record<StepKeys, Step<StepKeys>> = {\n select_country: {\n index: 0,\n name: 'select_country',\n },\n basic_information: { index: 1, name: 'basic_information' },\n contract_details: { index: 2, name: 'contract_details' },\n benefits: { index: 3, name: 'benefits' },\n review: { index: 4, name: 'review' },\n} as const;\n\nexport const STEPS_WITHOUT_SELECT_COUNTRY: Record<\n Exclude<StepKeys, 'select_country'>,\n Step<Exclude<StepKeys, 'select_country'>>\n> = {\n basic_information: { index: 0, name: 'basic_information' },\n contract_details: { index: 1, name: 'contract_details' },\n benefits: { index: 2, name: 'benefits' },\n review: { index: 3, name: 'review' },\n} as const;\n\n/**\n * Function to prettify form values. Returns a pretty value and label for each field.\n * @param values - Form values to prettify\n * @param fields - Form fields\n * @returns Prettified form values\n */\n// @ts-expect-error need to check function return type\nexport function prettifyFormValues(\n values: Record<string, unknown>,\n fields: Fields | undefined,\n) {\n if (!fields) {\n return {};\n }\n return Object.fromEntries(\n Object.entries(values)\n // @ts-expect-error need to check function return type\n .map(([key, value]) => {\n if (value === undefined) {\n return [key, undefined];\n }\n\n const field = fields.find((field) => field.name === key);\n\n if (field?.isVisible === false || field?.deprecated) {\n return [key, undefined];\n }\n\n if (field?.type === 'radio' || field?.type === 'select') {\n const option = (\n field.options as Array<{ value: string; label: string }>\n ).find((option) => option.value === value);\n\n if (option) {\n return [key, { prettyValue: option?.label, label: field?.label }];\n }\n return;\n }\n\n if (field?.type === 'checkbox' && field?.const) {\n return [key, { prettyValue: true, label: field.label }];\n }\n\n if (field?.type === 'countries' && Array.isArray(value)) {\n return [key, { prettyValue: value.join(), label: field.label }];\n }\n\n if (field?.type === 'fieldset') {\n // @ts-expect-error need to check function return type\n const prettiedFieldset = prettifyFormValues(\n value as Record<string, unknown>,\n field.fields as Fields,\n );\n\n // Handles benefits fieldset in specific\n if (!prettiedFieldset.label && prettiedFieldset.value) {\n const prettyValue: Record<string, unknown> = {\n ...prettiedFieldset.value,\n label: field.label,\n };\n return [key, prettyValue];\n }\n\n return [key, prettiedFieldset];\n }\n\n if (field) {\n return [key, { prettyValue: value, label: field.label }];\n }\n })\n .filter(Boolean),\n );\n}\n"],"mappings":"wCAUO,IAAMA,EAA0C,CACrD,eAAgB,CACd,MAAO,EACP,KAAM,gBACR,EACA,kBAAmB,CAAE,MAAO,EAAG,KAAM,mBAAoB,EACzD,iBAAkB,CAAE,MAAO,EAAG,KAAM,kBAAmB,EACvD,SAAU,CAAE,MAAO,EAAG,KAAM,UAAW,EACvC,OAAQ,CAAE,MAAO,EAAG,KAAM,QAAS,CACrC,EAEaC,EAGT,CACF,kBAAmB,CAAE,MAAO,EAAG,KAAM,mBAAoB,EACzD,iBAAkB,CAAE,MAAO,EAAG,KAAM,kBAAmB,EACvD,SAAU,CAAE,MAAO,EAAG,KAAM,UAAW,EACvC,OAAQ,CAAE,MAAO,EAAG,KAAM,QAAS,CACrC,EASO,SAASC,EACdC,EACAC,EACA,CACA,OAAKA,EAGE,OAAO,YACZ,OAAO,QAAQD,CAAM,EAElB,IAAI,CAAC,CAACE,EAAKC,CAAK,IAAM,CACrB,GAAIA,IAAU,OACZ,MAAO,CAACD,EAAK,MAAS,EAGxB,IAAME,EAAQH,EAAO,KAAMG,GAAUA,EAAM,OAASF,CAAG,EAEvD,GAAIE,GAAO,YAAc,IAASA,GAAO,WACvC,MAAO,CAACF,EAAK,MAAS,EAGxB,GAAIE,GAAO,OAAS,SAAWA,GAAO,OAAS,SAAU,CACvD,IAAMC,EACJD,EAAM,QACN,KAAMC,GAAWA,EAAO,QAAUF,CAAK,EAEzC,OAAIE,EACK,CAACH,EAAK,CAAE,YAAaG,GAAQ,MAAO,MAAOD,GAAO,KAAM,CAAC,EAElE,MACF,CAEA,GAAIA,GAAO,OAAS,YAAcA,GAAO,MACvC,MAAO,CAACF,EAAK,CAAE,YAAa,GAAM,MAAOE,EAAM,KAAM,CAAC,EAGxD,GAAIA,GAAO,OAAS,aAAe,MAAM,QAAQD,CAAK,EACpD,MAAO,CAACD,EAAK,CAAE,YAAaC,EAAM,KAAK,EAAG,MAAOC,EAAM,KAAM,CAAC,EAGhE,GAAIA,GAAO,OAAS,WAAY,CAE9B,IAAME,EAAmBP,EACvBI,EACAC,EAAM,MACR,EAGA,GAAI,CAACE,EAAiB,OAASA,EAAiB,MAAO,CACrD,IAAMC,EAAuC,CAC3C,GAAGD,EAAiB,MACpB,MAAOF,EAAM,KACf,EACA,MAAO,CAACF,EAAKK,CAAW,CAC1B,CAEA,MAAO,CAACL,EAAKI,CAAgB,CAC/B,CAEA,GAAIF,EACF,MAAO,CAACF,EAAK,CAAE,YAAaC,EAAO,MAAOC,EAAM,KAAM,CAAC,CAE3D,CAAC,EACA,OAAO,OAAO,CACnB,EA3DS,CAAC,CA4DZ,CAjEgBI,EAAAT,EAAA","names":["STEPS","STEPS_WITHOUT_SELECT_COUNTRY","prettifyFormValues","values","fields","key","value","field","option","prettiedFieldset","prettyValue","__name"]}
|
package/dist/chunk-CX7YH3EY.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as i}from"./chunk-U5ZTX2JG.js";import{b as n}from"./chunk-O562EWKG.js";import{a as r}from"./chunk-AYDF3IFZ.js";import{jsx as l}from"react/jsx-runtime";function u({onSubmit:s,onError:a,onSuccess:m}){let{onboardingBag:t}=n(),p=r(async e=>{try{await s?.(t.parseFormValues(e));let o=await t.onSubmit(e);if(o?.data){await m?.(o.data),t?.next();return}o?.error&&a?.(o.error)}catch(o){a?.(o)}},"handleSubmit");return l(i,{defaultValues:t.stepState.values?.contract_details||t.initialValues.contract_details,onSubmit:p})}r(u,"ContractDetailsStep");export{u as a};
|
|
2
|
-
//# sourceMappingURL=chunk-CX7YH3EY.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/Onboarding/ContractDetailsStep.tsx"],"sourcesContent":["import { useOnboardingContext } from './context';\nimport { OnboardingForm } from '@/src/flows/Onboarding/OnboardingForm';\nimport { EmploymentResponse } from '@/src/client';\nimport { ContractDetailsFormPayload } from '@/src/flows/Onboarding/types';\nimport { $TSFixMe } from '@/src/types/remoteFlows';\n\ntype ContractDetailsStepProps = {\n /*\n * The function is called when the form is submitted. It receives the form values as an argument.\n */\n onSubmit?: (payload: ContractDetailsFormPayload) => void | Promise<void>;\n /*\n * The function is called when the form submission is successful.\n */\n onSuccess?: (response: EmploymentResponse) => void | Promise<void>;\n /*\n * The function is called when an error occurs during form submission.\n */\n onError?: (error: Error) => void;\n};\n\nexport function ContractDetailsStep({\n onSubmit,\n onError,\n onSuccess,\n}: ContractDetailsStepProps) {\n const { onboardingBag } = useOnboardingContext();\n const handleSubmit = async (payload: $TSFixMe) => {\n try {\n await onSubmit?.(\n onboardingBag.parseFormValues(payload) as ContractDetailsFormPayload,\n );\n const response = await onboardingBag.onSubmit(payload);\n if (response?.data) {\n await onSuccess?.(response.data as EmploymentResponse);\n onboardingBag?.next();\n return;\n }\n if (response?.error) {\n onError?.(response.error);\n }\n } catch (error: unknown) {\n onError?.(error as Error);\n }\n };\n\n return (\n <OnboardingForm\n defaultValues={\n onboardingBag.stepState.values?.contract_details ||\n onboardingBag.initialValues.contract_details\n }\n onSubmit={handleSubmit}\n />\n );\n}\n"],"mappings":"wHA+CI,cAAAA,MAAA,oBA1BG,SAASC,EAAoB,CAClC,SAAAC,EACA,QAAAC,EACA,UAAAC,CACF,EAA6B,CAC3B,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAqB,EACzCC,EAAeC,EAAA,MAAOC,GAAsB,CAChD,GAAI,CACF,MAAMP,IACJG,EAAc,gBAAgBI,CAAO,CACvC,EACA,IAAMC,EAAW,MAAML,EAAc,SAASI,CAAO,EACrD,GAAIC,GAAU,KAAM,CAClB,MAAMN,IAAYM,EAAS,IAA0B,EACrDL,GAAe,KAAK,EACpB,MACF,CACIK,GAAU,OACZP,IAAUO,EAAS,KAAK,CAE5B,OAASC,EAAgB,CACvBR,IAAUQ,CAAc,CAC1B,CACF,EAjBqB,gBAmBrB,OACEX,EAACY,EAAA,CACC,cACEP,EAAc,UAAU,QAAQ,kBAChCA,EAAc,cAAc,iBAE9B,SAAUE,EACZ,CAEJ,CAlCgBC,EAAAP,EAAA","names":["jsx","ContractDetailsStep","onSubmit","onError","onSuccess","onboardingBag","useOnboardingContext","handleSubmit","__name","payload","response","error","OnboardingForm"]}
|
package/dist/chunk-DBIPVIBO.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as l}from"./chunk-YG5FFTC4.js";import{d as s,e}from"./chunk-WU77JQYU.js";import{b as a}from"./chunk-A4RX3KRZ.js";import{a as r}from"./chunk-AYDF3IFZ.js";import{useId as g}from"react";import{useForm as y}from"react-hook-form";import{jsx as p}from"react/jsx-runtime";var P=r(({estimationOptions:n=s,defaultValues:o={countryRegionSlug:"",currencySlug:"",salary:""},options:i,render:u})=>{let c=g(),t=e({defaultRegion:o.countryRegionSlug,estimationOptions:n,options:i}),m=a(t.handleValidation),C=y({resolver:m,defaultValues:{country:o?.countryRegionSlug,currency:o?.currencySlug,region:"",salary:o?.salary},shouldUnregister:!1,mode:"onBlur"});return p(l.Provider,{value:{form:C,formId:c,costCalculatorBag:t},children:u(t)})},"CostCalculatorFlow");export{P as a};
|
|
2
|
-
//# sourceMappingURL=chunk-DBIPVIBO.js.map
|