@remoteoss/remote-flows 0.10.0 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-NHAVKODB.js → chunk-3CUVTXRN.js} +2 -2
- package/dist/chunk-3LOVCTCN.js +2 -0
- package/dist/chunk-3LOVCTCN.js.map +1 -0
- package/dist/{chunk-IQOX5IEE.js → chunk-3Z5ZZUO4.js} +2 -2
- package/dist/{chunk-IQOX5IEE.js.map → chunk-3Z5ZZUO4.js.map} +1 -1
- package/dist/chunk-47VYBPE2.js +2 -0
- package/dist/chunk-47VYBPE2.js.map +1 -0
- package/dist/{chunk-E366OTIT.js → chunk-4OEBYZLZ.js} +2 -2
- package/dist/chunk-5E44DBDD.js +2 -0
- package/dist/chunk-5E44DBDD.js.map +1 -0
- package/dist/{chunk-WWMMQZA3.js → chunk-5GUK7MEN.js} +2 -2
- package/dist/chunk-5I6VWJSC.js +2 -0
- package/dist/chunk-5I6VWJSC.js.map +1 -0
- package/dist/chunk-5KKDB7Q7.js +2 -0
- package/dist/chunk-5KKDB7Q7.js.map +1 -0
- package/dist/{chunk-FMWLGLES.js → chunk-77AF2QOD.js} +2 -2
- package/dist/chunk-7TIIT23F.js +2 -0
- package/dist/chunk-7TIIT23F.js.map +1 -0
- package/dist/chunk-AIB34WOA.js +2 -0
- package/dist/chunk-AIB34WOA.js.map +1 -0
- package/dist/{chunk-KMC45C2J.js → chunk-AJVD3O4D.js} +2 -2
- package/dist/chunk-ANCX2TZH.js +2 -0
- package/dist/{chunk-J3MB4Z6R.js.map → chunk-ANCX2TZH.js.map} +1 -1
- package/dist/{chunk-3IXBMIHE.js → chunk-AVA4MEFP.js} +2 -2
- package/dist/{chunk-WFET4MKU.js → chunk-BDZEPXIS.js} +2 -2
- package/dist/{chunk-DS2TO37X.js → chunk-BY5S6EQJ.js} +2 -2
- package/dist/{chunk-XCFIBTQN.js → chunk-CHSULXMN.js} +2 -2
- package/dist/{chunk-SHFIZENN.js → chunk-CSK44J23.js} +2 -2
- package/dist/{chunk-UPRUP24B.js → chunk-D25W2VVQ.js} +2 -2
- package/dist/chunk-D25W2VVQ.js.map +1 -0
- package/dist/{chunk-XSRHFJ3Z.js → chunk-DHT7HDHC.js} +2 -2
- package/dist/chunk-DR7VGNO2.js +2 -0
- package/dist/chunk-DY5CSCPI.js +2 -0
- package/dist/chunk-DY5CSCPI.js.map +1 -0
- package/dist/{chunk-MWLD2A2O.js → chunk-EE54SK65.js} +2 -2
- package/dist/chunk-EGQJ7UBR.js +2 -0
- package/dist/chunk-EGQJ7UBR.js.map +1 -0
- package/dist/{chunk-PRK34ZQH.js → chunk-EW24LQRE.js} +2 -2
- package/dist/chunk-F6U6WDMP.js +2 -0
- package/dist/chunk-F6U6WDMP.js.map +1 -0
- package/dist/{chunk-3QXOTVAD.js → chunk-FBYLX5NA.js} +2 -2
- package/dist/{chunk-YS7XEJJP.js → chunk-G7WJUXZU.js} +2 -2
- package/dist/{chunk-33W6YDCH.js → chunk-GAOBYAJE.js} +2 -2
- package/dist/{chunk-MHEIW3JW.js → chunk-GBD3OCAW.js} +2 -2
- package/dist/{chunk-7R6GAOQG.js → chunk-GCVZ4AY2.js} +2 -2
- package/dist/{chunk-UNTCBVHB.js → chunk-GGBEM452.js} +2 -2
- package/dist/{chunk-N6CK5HE6.js → chunk-GJQ33XQ4.js} +2 -2
- package/dist/{chunk-UWKND5NL.js → chunk-GK3OO5SX.js} +2 -2
- package/dist/chunk-GMA7VTFX.js +2 -0
- package/dist/chunk-GMA7VTFX.js.map +1 -0
- package/dist/{chunk-4HHGKSGL.js → chunk-H2SFR2GL.js} +2 -2
- package/dist/chunk-ILMVHOL2.js +2 -0
- package/dist/chunk-ILMVHOL2.js.map +1 -0
- package/dist/{chunk-7ULN2UW6.js → chunk-KG72IMCX.js} +2 -2
- package/dist/{chunk-ERMOQBXU.js → chunk-KHVEYIMF.js} +2 -2
- package/dist/{chunk-S3C5DJXJ.js → chunk-LIGRV2J5.js} +2 -2
- package/dist/chunk-LT4ALDRM.js +2 -0
- package/dist/chunk-LT4ALDRM.js.map +1 -0
- package/dist/{chunk-G4NBJTHB.js → chunk-MDSGLUUB.js} +2 -2
- package/dist/{chunk-KCXP2NOU.js → chunk-N7PSO5ZD.js} +2 -2
- package/dist/chunk-NBCZF2FO.js +2 -0
- package/dist/chunk-NBCZF2FO.js.map +1 -0
- package/dist/{chunk-XLBQWKQ2.js → chunk-NC3VBBHC.js} +2 -2
- package/dist/{chunk-WHW3ZCTH.js → chunk-NVJYAX22.js} +2 -2
- package/dist/chunk-QI6LLU2N.js +2 -0
- package/dist/chunk-QI6LLU2N.js.map +1 -0
- package/dist/{chunk-OTTIURMN.js → chunk-QQ7KPOLK.js} +2 -2
- package/dist/{chunk-QP755MNN.js → chunk-QVN32YBL.js} +2 -2
- package/dist/chunk-R2SDR47E.js +2 -0
- package/dist/chunk-R2SDR47E.js.map +1 -0
- package/dist/{chunk-FCABBFQ5.js → chunk-R7L6CI5J.js} +2 -2
- package/dist/{chunk-QNSEFFNN.js → chunk-RMVG6YBI.js} +2 -2
- package/dist/{chunk-5TNWGN5T.js → chunk-RUVKAPO5.js} +2 -2
- package/dist/{chunk-FW6EQA43.js → chunk-S7ZMHO5I.js} +2 -2
- package/dist/{chunk-3TQVP4BP.js → chunk-SQICIS7B.js} +2 -2
- package/dist/{chunk-FC7NRKYF.js → chunk-SZOOX2KY.js} +2 -2
- package/dist/chunk-T3L72MV6.js +2 -0
- package/dist/chunk-T3L72MV6.js.map +1 -0
- package/dist/{chunk-ZCIUF3NB.js → chunk-TJK6MTGG.js} +2 -2
- package/dist/{chunk-CLY6BS36.js → chunk-TPSZDGQJ.js} +2 -2
- package/dist/{chunk-CLY6BS36.js.map → chunk-TPSZDGQJ.js.map} +1 -1
- package/dist/{chunk-NAVGSG5R.js → chunk-VD65AUOI.js} +2 -2
- package/dist/{chunk-WJA7PQ2J.js → chunk-WYXN7WW6.js} +2 -2
- package/dist/{chunk-HHE7W23D.js → chunk-XI3AQ3RM.js} +2 -2
- package/dist/chunk-Y4VNFI7K.js +2 -0
- package/dist/chunk-Y4VNFI7K.js.map +1 -0
- package/dist/{chunk-Y4R7VMZM.js → chunk-YRLBMLSA.js} +2 -2
- package/dist/chunk-Z3BMF4BO.js +1 -0
- package/dist/chunk-ZHL2SULA.js +2 -0
- package/dist/chunk-ZHL2SULA.js.map +1 -0
- package/dist/{chunk-ZKNJTAP7.js → chunk-ZSBWDLBS.js} +2 -2
- 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 +1 -1
- 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.js +1 -1
- package/dist/flows/ContractAmendment/context.d.ts +1 -1
- package/dist/flows/ContractAmendment/hooks.d.ts +1 -1
- package/dist/flows/ContractAmendment/hooks.js +1 -1
- package/dist/flows/ContractAmendment/index.d.ts +1 -1
- package/dist/flows/ContractAmendment/index.js +1 -1
- package/dist/flows/ContractAmendment/utils.d.ts +1 -1
- package/dist/flows/CostCalculator/CostCalculatorDisclaimer.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +4 -6
- package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +3 -1
- package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorResetButton.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorSubmitButton.js +1 -1
- package/dist/flows/CostCalculator/EstimationResults/EstimationResults.d.ts +42 -0
- package/dist/flows/CostCalculator/EstimationResults/EstimationResults.js +2 -0
- package/dist/flows/CostCalculator/EstimationResults/EstimationResults.js.map +1 -0
- package/dist/flows/CostCalculator/Results/CostCalculatorBenefitsBreakdown.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorContributionsBreakdown.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorExtraStatutoryPaymentsBreakdown.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorGrossSalary.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorIndirectTax.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/SummaryResults/SummaryResults.d.ts +9 -0
- package/dist/flows/CostCalculator/SummaryResults/SummaryResults.js +2 -0
- package/dist/flows/CostCalculator/SummaryResults/SummaryResults.js.map +1 -0
- package/dist/flows/CostCalculator/api.d.ts +1 -1
- package/dist/flows/CostCalculator/api.js +1 -1
- package/dist/flows/CostCalculator/components/SalaryField.d.ts +2 -1
- package/dist/flows/CostCalculator/components/SalaryField.js +1 -1
- package/dist/flows/CostCalculator/context.d.ts +1 -1
- package/dist/flows/CostCalculator/hooks.d.ts +9 -7
- package/dist/flows/CostCalculator/hooks.js +1 -1
- package/dist/flows/CostCalculator/index.d.ts +5 -3
- package/dist/flows/CostCalculator/index.js +1 -1
- package/dist/flows/CostCalculator/jsonSchema.d.ts +8 -0
- package/dist/flows/CostCalculator/jsonSchema.js +1 -1
- package/dist/flows/CostCalculator/types.d.ts +10 -2
- package/dist/flows/CostCalculator/utils.d.ts +1 -1
- package/dist/flows/CostCalculator/utils.js +1 -1
- package/dist/flows/Onboarding/OnboardingFlow.d.ts +1 -1
- package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
- package/dist/flows/Onboarding/api.d.ts +5 -3
- package/dist/flows/Onboarding/api.js +1 -1
- package/dist/flows/Onboarding/components/AnnualGrossSalary.js +1 -1
- package/dist/flows/Onboarding/components/BasicInformationStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/BasicInformationStep.js +1 -1
- package/dist/flows/Onboarding/components/BenefitsStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/BenefitsStep.js +1 -1
- package/dist/flows/Onboarding/components/ContractDetailsStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/ContractDetailsStep.js +1 -1
- package/dist/flows/Onboarding/components/OnboardingBack.js +1 -1
- package/dist/flows/Onboarding/components/OnboardingForm.d.ts +1 -1
- package/dist/flows/Onboarding/components/OnboardingForm.js +1 -1
- package/dist/flows/Onboarding/components/OnboardingInvite.d.ts +1 -1
- package/dist/flows/Onboarding/components/OnboardingInvite.js +1 -1
- package/dist/flows/Onboarding/components/OnboardingSubmit.js +1 -1
- package/dist/flows/Onboarding/components/ReviewStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/SelectCountryStep.d.ts +1 -1
- package/dist/flows/Onboarding/components/SelectCountryStep.js +1 -1
- package/dist/flows/Onboarding/context.d.ts +1 -1
- package/dist/flows/Onboarding/hooks.d.ts +1 -1
- package/dist/flows/Onboarding/hooks.js +1 -1
- package/dist/flows/Onboarding/index.d.ts +1 -1
- package/dist/flows/Onboarding/index.js +1 -1
- package/dist/flows/Onboarding/types.d.ts +1 -1
- package/dist/flows/Onboarding/utils.d.ts +1 -1
- package/dist/flows/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.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 +1 -1
- 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.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 +1 -1
- package/dist/flows/Termination/hooks.d.ts +1 -1
- package/dist/flows/Termination/hooks.js +1 -1
- package/dist/flows/Termination/index.d.ts +1 -1
- package/dist/flows/Termination/index.js +1 -1
- package/dist/flows/Termination/json-schemas/schema.js +1 -1
- package/dist/flows/Termination/types.d.ts +1 -1
- package/dist/flows/types.d.ts +1 -1
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +15 -5
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internals.d.ts +54 -58
- package/dist/internals.js +1 -1
- package/dist/internals.js.map +1 -1
- package/dist/{types.gen-D9fBRSTj.d.ts → types.gen-CVPKMCVh.d.ts} +29 -17
- package/package.json +5 -2
- package/dist/chunk-2NDBK2EZ.js +0 -2
- package/dist/chunk-2NDBK2EZ.js.map +0 -1
- package/dist/chunk-2Y22JKVE.js +0 -2
- package/dist/chunk-45N2S6JG.js +0 -2
- package/dist/chunk-45N2S6JG.js.map +0 -1
- package/dist/chunk-C3KZEPUZ.js +0 -2
- package/dist/chunk-C3KZEPUZ.js.map +0 -1
- package/dist/chunk-D24ATLAM.js +0 -2
- package/dist/chunk-D24ATLAM.js.map +0 -1
- package/dist/chunk-E6DC4DXP.js +0 -2
- package/dist/chunk-E6DC4DXP.js.map +0 -1
- package/dist/chunk-ERUG7FR3.js +0 -2
- package/dist/chunk-ERUG7FR3.js.map +0 -1
- package/dist/chunk-FQNVKX3N.js +0 -2
- package/dist/chunk-FQNVKX3N.js.map +0 -1
- package/dist/chunk-HGLI6PUM.js +0 -2
- package/dist/chunk-HGLI6PUM.js.map +0 -1
- package/dist/chunk-IS7BYXY6.js +0 -2
- package/dist/chunk-IS7BYXY6.js.map +0 -1
- package/dist/chunk-IV5GLWFN.js +0 -2
- package/dist/chunk-IV5GLWFN.js.map +0 -1
- package/dist/chunk-J3MB4Z6R.js +0 -2
- package/dist/chunk-JNAFD452.js +0 -2
- package/dist/chunk-JNAFD452.js.map +0 -1
- package/dist/chunk-UBAEG2IO.js +0 -2
- package/dist/chunk-UBAEG2IO.js.map +0 -1
- package/dist/chunk-UPRUP24B.js.map +0 -1
- package/dist/chunk-XHBYAMFV.js +0 -2
- package/dist/chunk-XHBYAMFV.js.map +0 -1
- package/dist/chunk-XJ7PCWMR.js +0 -2
- package/dist/chunk-XJ7PCWMR.js.map +0 -1
- package/dist/chunk-YJXRJTOH.js +0 -1
- package/dist/chunk-ZRXXVXV4.js +0 -2
- package/dist/chunk-ZRXXVXV4.js.map +0 -1
- /package/dist/{chunk-NHAVKODB.js.map → chunk-3CUVTXRN.js.map} +0 -0
- /package/dist/{chunk-E366OTIT.js.map → chunk-4OEBYZLZ.js.map} +0 -0
- /package/dist/{chunk-WWMMQZA3.js.map → chunk-5GUK7MEN.js.map} +0 -0
- /package/dist/{chunk-FMWLGLES.js.map → chunk-77AF2QOD.js.map} +0 -0
- /package/dist/{chunk-KMC45C2J.js.map → chunk-AJVD3O4D.js.map} +0 -0
- /package/dist/{chunk-3IXBMIHE.js.map → chunk-AVA4MEFP.js.map} +0 -0
- /package/dist/{chunk-WFET4MKU.js.map → chunk-BDZEPXIS.js.map} +0 -0
- /package/dist/{chunk-DS2TO37X.js.map → chunk-BY5S6EQJ.js.map} +0 -0
- /package/dist/{chunk-XCFIBTQN.js.map → chunk-CHSULXMN.js.map} +0 -0
- /package/dist/{chunk-SHFIZENN.js.map → chunk-CSK44J23.js.map} +0 -0
- /package/dist/{chunk-XSRHFJ3Z.js.map → chunk-DHT7HDHC.js.map} +0 -0
- /package/dist/{chunk-2Y22JKVE.js.map → chunk-DR7VGNO2.js.map} +0 -0
- /package/dist/{chunk-MWLD2A2O.js.map → chunk-EE54SK65.js.map} +0 -0
- /package/dist/{chunk-PRK34ZQH.js.map → chunk-EW24LQRE.js.map} +0 -0
- /package/dist/{chunk-3QXOTVAD.js.map → chunk-FBYLX5NA.js.map} +0 -0
- /package/dist/{chunk-YS7XEJJP.js.map → chunk-G7WJUXZU.js.map} +0 -0
- /package/dist/{chunk-33W6YDCH.js.map → chunk-GAOBYAJE.js.map} +0 -0
- /package/dist/{chunk-MHEIW3JW.js.map → chunk-GBD3OCAW.js.map} +0 -0
- /package/dist/{chunk-7R6GAOQG.js.map → chunk-GCVZ4AY2.js.map} +0 -0
- /package/dist/{chunk-UNTCBVHB.js.map → chunk-GGBEM452.js.map} +0 -0
- /package/dist/{chunk-N6CK5HE6.js.map → chunk-GJQ33XQ4.js.map} +0 -0
- /package/dist/{chunk-UWKND5NL.js.map → chunk-GK3OO5SX.js.map} +0 -0
- /package/dist/{chunk-4HHGKSGL.js.map → chunk-H2SFR2GL.js.map} +0 -0
- /package/dist/{chunk-7ULN2UW6.js.map → chunk-KG72IMCX.js.map} +0 -0
- /package/dist/{chunk-ERMOQBXU.js.map → chunk-KHVEYIMF.js.map} +0 -0
- /package/dist/{chunk-S3C5DJXJ.js.map → chunk-LIGRV2J5.js.map} +0 -0
- /package/dist/{chunk-G4NBJTHB.js.map → chunk-MDSGLUUB.js.map} +0 -0
- /package/dist/{chunk-KCXP2NOU.js.map → chunk-N7PSO5ZD.js.map} +0 -0
- /package/dist/{chunk-XLBQWKQ2.js.map → chunk-NC3VBBHC.js.map} +0 -0
- /package/dist/{chunk-WHW3ZCTH.js.map → chunk-NVJYAX22.js.map} +0 -0
- /package/dist/{chunk-OTTIURMN.js.map → chunk-QQ7KPOLK.js.map} +0 -0
- /package/dist/{chunk-QP755MNN.js.map → chunk-QVN32YBL.js.map} +0 -0
- /package/dist/{chunk-FCABBFQ5.js.map → chunk-R7L6CI5J.js.map} +0 -0
- /package/dist/{chunk-QNSEFFNN.js.map → chunk-RMVG6YBI.js.map} +0 -0
- /package/dist/{chunk-5TNWGN5T.js.map → chunk-RUVKAPO5.js.map} +0 -0
- /package/dist/{chunk-FW6EQA43.js.map → chunk-S7ZMHO5I.js.map} +0 -0
- /package/dist/{chunk-3TQVP4BP.js.map → chunk-SQICIS7B.js.map} +0 -0
- /package/dist/{chunk-FC7NRKYF.js.map → chunk-SZOOX2KY.js.map} +0 -0
- /package/dist/{chunk-ZCIUF3NB.js.map → chunk-TJK6MTGG.js.map} +0 -0
- /package/dist/{chunk-NAVGSG5R.js.map → chunk-VD65AUOI.js.map} +0 -0
- /package/dist/{chunk-WJA7PQ2J.js.map → chunk-WYXN7WW6.js.map} +0 -0
- /package/dist/{chunk-HHE7W23D.js.map → chunk-XI3AQ3RM.js.map} +0 -0
- /package/dist/{chunk-Y4R7VMZM.js.map → chunk-YRLBMLSA.js.map} +0 -0
- /package/dist/{chunk-YJXRJTOH.js.map → chunk-Z3BMF4BO.js.map} +0 -0
- /package/dist/{chunk-ZKNJTAP7.js.map → chunk-ZSBWDLBS.js.map} +0 -0
package/dist/internals.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { c as cn } from './utils-CjDMg_Yr.js';
|
|
|
2
2
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
3
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
4
4
|
import { VariantProps } from 'class-variance-authority';
|
|
5
|
-
import * as React from 'react';
|
|
5
|
+
import * as React$1 from 'react';
|
|
6
6
|
import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
|
|
7
7
|
import { Drawer as Drawer$1 } from 'vaul';
|
|
8
8
|
import * as DialogPrimitive from '@radix-ui/react-dialog';
|
|
@@ -14,94 +14,90 @@ import * as SelectPrimitive from '@radix-ui/react-select';
|
|
|
14
14
|
import 'clsx';
|
|
15
15
|
import 'yup';
|
|
16
16
|
|
|
17
|
-
declare const useRouter: () => {
|
|
18
|
-
push: (url: string) => void;
|
|
19
|
-
replace: (url: string) => void;
|
|
20
|
-
back: () => void;
|
|
21
|
-
forward: () => void;
|
|
22
|
-
setSearchParams: (params: Record<string, string | number | null>) => void;
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
declare const useSearchParams: () => {
|
|
26
|
-
get: (key: string) => string | null;
|
|
27
|
-
has: (key: string) => boolean;
|
|
28
|
-
toString: () => string;
|
|
29
|
-
searchParams: URLSearchParams;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
17
|
declare const buttonVariants: (props?: ({
|
|
33
18
|
variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
34
19
|
size?: "link" | "default" | "sm" | "lg" | "icon" | null | undefined;
|
|
35
20
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
36
|
-
declare function Button({ className, variant, size, asChild, ...props }: React.ComponentProps<'button'> & VariantProps<typeof buttonVariants> & {
|
|
21
|
+
declare function Button({ className, variant, size, asChild, ...props }: React$1.ComponentProps<'button'> & VariantProps<typeof buttonVariants> & {
|
|
37
22
|
asChild?: boolean;
|
|
38
23
|
}): react_jsx_runtime.JSX.Element;
|
|
39
24
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
declare function
|
|
44
|
-
declare function
|
|
45
|
-
declare function
|
|
25
|
+
interface CardProps extends React$1.ComponentProps<'div'> {
|
|
26
|
+
direction?: 'row' | 'col';
|
|
27
|
+
}
|
|
28
|
+
declare function Card({ className, direction, ...props }: CardProps): react_jsx_runtime.JSX.Element;
|
|
29
|
+
declare function CardHeader({ className, ...props }: React$1.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
30
|
+
declare function CardTitle({ className, ...props }: React$1.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
31
|
+
declare function CardDescription({ className, ...props }: React$1.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
32
|
+
declare function CardContent({ className, ...props }: React$1.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
33
|
+
declare function CardFooter({ className, ...props }: React$1.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
46
34
|
|
|
47
|
-
declare const Collapsible: React.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleProps & React.RefAttributes<HTMLDivElement>>;
|
|
48
|
-
declare const CollapsibleTrigger: React.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
49
|
-
declare const CollapsibleContent: React.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
35
|
+
declare const Collapsible: React$1.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
36
|
+
declare const CollapsibleTrigger: React$1.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
37
|
+
declare const CollapsibleContent: React$1.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleContentProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
50
38
|
|
|
51
39
|
declare const Drawer: {
|
|
52
|
-
({ shouldScaleBackground, ...props }: React.ComponentProps<typeof Drawer$1.Root>): react_jsx_runtime.JSX.Element;
|
|
40
|
+
({ shouldScaleBackground, ...props }: React$1.ComponentProps<typeof Drawer$1.Root>): react_jsx_runtime.JSX.Element;
|
|
53
41
|
displayName: string;
|
|
54
42
|
};
|
|
55
|
-
declare const DrawerTrigger: React.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
56
|
-
declare const DrawerContent: React.ForwardRefExoticComponent<Omit<Omit<DialogPrimitive.DialogContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
43
|
+
declare const DrawerTrigger: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
44
|
+
declare const DrawerContent: React$1.ForwardRefExoticComponent<Omit<Omit<DialogPrimitive.DialogContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
57
45
|
showHandle?: boolean;
|
|
58
|
-
} & React.RefAttributes<HTMLDivElement>>;
|
|
46
|
+
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
59
47
|
declare const DrawerHeader: {
|
|
60
|
-
({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
48
|
+
({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
61
49
|
displayName: string;
|
|
62
50
|
};
|
|
63
|
-
declare const DrawerTitle: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
51
|
+
declare const DrawerTitle: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
|
|
64
52
|
|
|
65
|
-
declare function Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
66
|
-
declare function DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
67
|
-
declare function DialogContent({ className, children, ...props }: React.ComponentProps<typeof DialogPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
68
|
-
declare function DialogHeader({ className, ...props }: React.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
69
|
-
declare function DialogFooter({ className, ...props }: React.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
70
|
-
declare function DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>): react_jsx_runtime.JSX.Element;
|
|
71
|
-
declare function DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>): react_jsx_runtime.JSX.Element;
|
|
53
|
+
declare function Dialog({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
54
|
+
declare function DialogTrigger({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
55
|
+
declare function DialogContent({ className, children, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
56
|
+
declare function DialogHeader({ className, ...props }: React$1.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
57
|
+
declare function DialogFooter({ className, ...props }: React$1.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
58
|
+
declare function DialogTitle({ className, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Title>): react_jsx_runtime.JSX.Element;
|
|
59
|
+
declare function DialogDescription({ className, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Description>): react_jsx_runtime.JSX.Element;
|
|
72
60
|
|
|
73
|
-
declare function Tabs({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
74
|
-
declare function TabsList({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.List>): react_jsx_runtime.JSX.Element;
|
|
75
|
-
declare function TabsTrigger({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
76
|
-
declare function TabsContent({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
61
|
+
declare function Tabs({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
62
|
+
declare function TabsList({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.List>): react_jsx_runtime.JSX.Element;
|
|
63
|
+
declare function TabsTrigger({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
64
|
+
declare function TabsContent({ className, ...props }: React$1.ComponentProps<typeof TabsPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
77
65
|
|
|
78
66
|
declare const alertVariants: (props?: ({
|
|
79
67
|
variant?: "default" | "destructive" | "warning" | null | undefined;
|
|
80
68
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
81
|
-
declare function Alert({ className, variant, ...props }: React.ComponentProps<'div'> & VariantProps<typeof alertVariants>): react_jsx_runtime.JSX.Element;
|
|
82
|
-
declare function AlertTitle({ className, ...props }: React.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
83
|
-
declare function AlertDescription({ className, ...props }: React.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
69
|
+
declare function Alert({ className, variant, ...props }: React$1.ComponentProps<'div'> & VariantProps<typeof alertVariants>): react_jsx_runtime.JSX.Element;
|
|
70
|
+
declare function AlertTitle({ className, ...props }: React$1.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
71
|
+
declare function AlertDescription({ className, ...props }: React$1.ComponentProps<'div'>): react_jsx_runtime.JSX.Element;
|
|
84
72
|
|
|
85
73
|
declare const badgeVariants: (props?: ({
|
|
86
74
|
variant?: "default" | "destructive" | "outline" | "secondary" | null | undefined;
|
|
87
75
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
88
|
-
declare function Badge({ className, variant, asChild, ...props }: React.ComponentProps<'span'> & VariantProps<typeof badgeVariants> & {
|
|
76
|
+
declare function Badge({ className, variant, asChild, ...props }: React$1.ComponentProps<'span'> & VariantProps<typeof badgeVariants> & {
|
|
89
77
|
asChild?: boolean;
|
|
90
78
|
}): react_jsx_runtime.JSX.Element;
|
|
91
79
|
|
|
92
|
-
declare function Input({ className, type, ...props }: React.ComponentProps<'input'>): react_jsx_runtime.JSX.Element;
|
|
80
|
+
declare function Input({ className, type, ...props }: React$1.ComponentProps<'input'>): react_jsx_runtime.JSX.Element;
|
|
81
|
+
|
|
82
|
+
declare function Label({ className, ...props }: React$1.ComponentProps<typeof LabelPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
93
83
|
|
|
94
|
-
declare
|
|
84
|
+
declare const Checkbox: React$1.ForwardRefExoticComponent<Omit<CheckboxPrimitive.CheckboxProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
95
85
|
|
|
96
|
-
declare
|
|
86
|
+
declare function RadioGroup({ className, ...props }: React$1.ComponentProps<typeof RadioGroupPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
87
|
+
declare function RadioGroupItem({ className, ...props }: React$1.ComponentProps<typeof RadioGroupPrimitive.Item>): react_jsx_runtime.JSX.Element;
|
|
97
88
|
|
|
98
|
-
declare function
|
|
99
|
-
declare function
|
|
89
|
+
declare function Select({ ...props }: React$1.ComponentProps<typeof SelectPrimitive.Root>): react_jsx_runtime.JSX.Element;
|
|
90
|
+
declare function SelectValue({ ...props }: React$1.ComponentProps<typeof SelectPrimitive.Value>): react_jsx_runtime.JSX.Element;
|
|
91
|
+
declare function SelectTrigger({ className, children, ...props }: React$1.ComponentProps<typeof SelectPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
|
|
92
|
+
declare function SelectContent({ className, children, position, ...props }: React$1.ComponentProps<typeof SelectPrimitive.Content>): react_jsx_runtime.JSX.Element;
|
|
93
|
+
declare function SelectItem({ className, children, ...props }: React$1.ComponentProps<typeof SelectPrimitive.Item>): react_jsx_runtime.JSX.Element;
|
|
100
94
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
95
|
+
interface ZendeskTriggerButtonProps {
|
|
96
|
+
zendeskId: number;
|
|
97
|
+
className?: string;
|
|
98
|
+
onClick?: (zendeskId: number) => void;
|
|
99
|
+
children?: React.ReactNode;
|
|
100
|
+
}
|
|
101
|
+
declare function ZendeskTriggerButton({ zendeskId, className, onClick, children, }: ZendeskTriggerButtonProps): react_jsx_runtime.JSX.Element;
|
|
106
102
|
|
|
107
|
-
export { Alert, AlertDescription, AlertTitle, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerContent, DrawerHeader, DrawerTitle, DrawerTrigger, Input, Label, RadioGroup, RadioGroupItem, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Tabs, TabsContent, TabsList, TabsTrigger, badgeVariants, buttonVariants
|
|
103
|
+
export { Alert, AlertDescription, AlertTitle, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerContent, DrawerHeader, DrawerTitle, DrawerTrigger, Input, Label, RadioGroup, RadioGroupItem, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Tabs, TabsContent, TabsList, TabsTrigger, ZendeskTriggerButton, badgeVariants, buttonVariants };
|
package/dist/internals.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as q,b as y,c as z,d as E}from"./chunk-
|
|
1
|
+
import{a as q,b as y,c as z,d as E}from"./chunk-GCVZ4AY2.js";import{a as F,b as G,c as L,d as h,e as k,f as j}from"./chunk-5I6VWJSC.js";import{a as N}from"./chunk-Y4VNFI7K.js";import{a as l,b as i,d as a,e as p,f as n}from"./chunk-77AF2QOD.js";import{a as C,b as m,c as b,d as x,e as f,f as D,g as T,i as c,j as d,k as u,l as w,m as P,n as A,o as H,p as I,q as R,r as V,s as B}from"./chunk-XI3AQ3RM.js";import{a as S,b as v}from"./chunk-G7WJUXZU.js";import{a as t}from"./chunk-CHSULXMN.js";import"./chunk-EGQJ7UBR.js";import"./chunk-3ZWDIEEM.js";import{a as s,b as g}from"./chunk-CSK44J23.js";import{a as o}from"./chunk-EW24LQRE.js";import{a as r}from"./chunk-3LOVCTCN.js";import"./chunk-P37U34EQ.js";import*as e from"@radix-ui/react-collapsible";var J=e.Root,K=e.CollapsibleTrigger,M=e.CollapsibleContent;export{m as Alert,x as AlertDescription,b as AlertTitle,v as Badge,g as Button,F as Card,k as CardContent,h as CardDescription,j as CardFooter,G as CardHeader,L as CardTitle,C as Checkbox,J as Collapsible,M as CollapsibleContent,K as CollapsibleTrigger,P as Dialog,H as DialogContent,B as DialogDescription,R as DialogFooter,I as DialogHeader,V as DialogTitle,A as DialogTrigger,l as Drawer,a as DrawerContent,p as DrawerHeader,n as DrawerTitle,i as DrawerTrigger,t as Input,o as Label,f as RadioGroup,D as RadioGroupItem,T as Select,u as SelectContent,w as SelectItem,d as SelectTrigger,c as SelectValue,q as Tabs,E as TabsContent,y as TabsList,z as TabsTrigger,N as ZendeskTriggerButton,S as badgeVariants,s as buttonVariants,r as cn};
|
|
2
2
|
//# sourceMappingURL=internals.js.map
|
package/dist/internals.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/ui/collapsible.tsx"],"sourcesContent":["import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';\n\nconst Collapsible = CollapsiblePrimitive.Root;\n\nconst CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger;\n\nconst CollapsibleContent = CollapsiblePrimitive.CollapsibleContent;\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent };\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/components/ui/collapsible.tsx"],"sourcesContent":["import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';\n\nconst Collapsible = CollapsiblePrimitive.Root;\n\nconst CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger;\n\nconst CollapsibleContent = CollapsiblePrimitive.CollapsibleContent;\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent };\n"],"mappings":"6rBAAA,UAAYA,MAA0B,8BAEtC,IAAMC,EAAmC,OAEnCC,EAA0C,qBAE1CC,EAA0C","names":["CollapsiblePrimitive","Collapsible","CollapsibleTrigger","CollapsibleContent"]}
|
|
@@ -110,6 +110,12 @@ type Employment = {
|
|
|
110
110
|
[key: string]: unknown;
|
|
111
111
|
};
|
|
112
112
|
company_id: string;
|
|
113
|
+
/**
|
|
114
|
+
* Work address information. Its properties may vary depending on the country.
|
|
115
|
+
*/
|
|
116
|
+
work_address_details: {
|
|
117
|
+
[key: string]: unknown;
|
|
118
|
+
};
|
|
113
119
|
work_email: string;
|
|
114
120
|
status: EmploymentStatus;
|
|
115
121
|
updated_at: string;
|
|
@@ -132,6 +138,12 @@ type Employment = {
|
|
|
132
138
|
* A unique reference code for the employment record in a non-Remote system. While uniqueness is recommended, it is not strictly enforced within Remote's system.
|
|
133
139
|
*/
|
|
134
140
|
external_id?: string;
|
|
141
|
+
/**
|
|
142
|
+
* For the employment models `peo` and `global_payroll`, only [List employments](#operation/get_index_employment) and
|
|
143
|
+
* [Show employment](#operation/get_show_employment) operations are available.
|
|
144
|
+
*
|
|
145
|
+
*/
|
|
146
|
+
employment_model: 'global_payroll' | 'peo' | 'eor';
|
|
135
147
|
personal_email: string;
|
|
136
148
|
country: Country;
|
|
137
149
|
user_status?: UserStatus;
|
|
@@ -307,7 +319,7 @@ type ResignationOffboarding = {
|
|
|
307
319
|
proposed_last_working_day: string;
|
|
308
320
|
reason_description?: string;
|
|
309
321
|
requested_by: string;
|
|
310
|
-
resignation_reason: 'cancellation_before_start_date' | 'company_culture_or_values' | 'conversion_to_contractor' | 'conversion_to_global_payroll' | 'dissatisfaction_with_remote_service' | 'incapacity_to_perform_inherent_duties' | 'infrastructure_challenges' | 'lack_of_recognition' | 'leadership' | 'mutual_agreement' | 'other' | 'other_job_opportunity' | 'personal_reasons' | 'position_does_not_meet_expectations' | 'relationship_with_coworkers' | 'relocation_from_entity_to_entity_by_employee' | 'relocation_leaving_remote' | 'remuneration_and_benefits' | 'retirement' | 'transfer_and_relocation_new_customer_and_new_country' | 'transfer_between_remote_customer' | 'transfer_from_remote_to_customer' | 'transfer_from_remote_to_other_eor';
|
|
322
|
+
resignation_reason: 'cancellation_before_start_date' | 'company_culture_or_values' | 'conversion_to_contractor' | 'conversion_to_global_payroll' | 'conversion_to_peo' | 'dissatisfaction_with_remote_service' | 'incapacity_to_perform_inherent_duties' | 'infrastructure_challenges' | 'lack_of_recognition' | 'leadership' | 'mutual_agreement' | 'other' | 'other_job_opportunity' | 'personal_reasons' | 'position_does_not_meet_expectations' | 'relationship_with_coworkers' | 'relocation_from_entity_to_entity_by_employee' | 'relocation_leaving_remote' | 'remuneration_and_benefits' | 'retirement' | 'transfer_and_relocation_new_customer_and_new_country' | 'transfer_between_remote_customer' | 'transfer_from_remote_to_customer' | 'transfer_from_remote_to_other_eor';
|
|
311
323
|
status: 'submitted' | 'in_review' | 'done' | 'canceled';
|
|
312
324
|
submitted_at: string;
|
|
313
325
|
/**
|
|
@@ -1165,6 +1177,21 @@ type PostCreateOffboardingErrors = {
|
|
|
1165
1177
|
500: RequestError;
|
|
1166
1178
|
};
|
|
1167
1179
|
type PostCreateOffboardingError = PostCreateOffboardingErrors[keyof PostCreateOffboardingErrors];
|
|
1180
|
+
type PostConvertRawCurrencyConverterErrors = {
|
|
1181
|
+
/**
|
|
1182
|
+
* Unauthorized
|
|
1183
|
+
*/
|
|
1184
|
+
401: UnauthorizedResponse;
|
|
1185
|
+
/**
|
|
1186
|
+
* Not Found
|
|
1187
|
+
*/
|
|
1188
|
+
404: NotFoundResponse;
|
|
1189
|
+
/**
|
|
1190
|
+
* Unprocessable Entity
|
|
1191
|
+
*/
|
|
1192
|
+
422: UnprocessableEntityResponse;
|
|
1193
|
+
};
|
|
1194
|
+
type PostConvertRawCurrencyConverterError = PostConvertRawCurrencyConverterErrors[keyof PostConvertRawCurrencyConverterErrors];
|
|
1168
1195
|
type PostCreateEmployment2Errors = {
|
|
1169
1196
|
/**
|
|
1170
1197
|
* Bad Request
|
|
@@ -1335,20 +1362,5 @@ type PostInviteEmploymentInvitationErrors = {
|
|
|
1335
1362
|
429: TooManyRequestsResponse;
|
|
1336
1363
|
};
|
|
1337
1364
|
type PostInviteEmploymentInvitationError = PostInviteEmploymentInvitationErrors[keyof PostInviteEmploymentInvitationErrors];
|
|
1338
|
-
type PostConvertCurrencyConverterErrors = {
|
|
1339
|
-
/**
|
|
1340
|
-
* Unauthorized
|
|
1341
|
-
*/
|
|
1342
|
-
401: UnauthorizedResponse;
|
|
1343
|
-
/**
|
|
1344
|
-
* Not Found
|
|
1345
|
-
*/
|
|
1346
|
-
404: NotFoundResponse;
|
|
1347
|
-
/**
|
|
1348
|
-
* Unprocessable Entity
|
|
1349
|
-
*/
|
|
1350
|
-
422: UnprocessableEntityResponse;
|
|
1351
|
-
};
|
|
1352
|
-
type PostConvertCurrencyConverterError = PostConvertCurrencyConverterErrors[keyof PostConvertCurrencyConverterErrors];
|
|
1353
1365
|
|
|
1354
|
-
export type { CreateContractEligibilityParams as A,
|
|
1366
|
+
export type { CreateContractEligibilityParams as A, CostCalculatorEmployment as B, ContractAmendmentAutomatableResponse as C, MinimalCountry as D, EmploymentShowResponse as E, PostCreateOffboardingError as F, TimeoffStatus as G, Currency as H, ListTimeoffResponse as L, MinimalRegion as M, OffboardingResponse as O, PostAutomatableContractAmendmentError as P, SuccessResponse as S, TerminationDetailsParams as T, UnifiedEmploymentUpsertBenefitOffersRequest as U, ValidationError as V, 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, PostConvertRawCurrencyConverterError as x, ConvertCurrencyParams as y, PostCreateContractEligibilityError as z };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remoteoss/remote-flows",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.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",
|
|
@@ -64,8 +64,11 @@
|
|
|
64
64
|
"dependencies": {
|
|
65
65
|
"@hey-api/client-fetch": "^0.8.1",
|
|
66
66
|
"@hookform/resolvers": "^4.1.3",
|
|
67
|
+
"@radix-ui/react-accordion": "^1.2.12",
|
|
67
68
|
"@radix-ui/react-checkbox": "^1.1.4",
|
|
69
|
+
"@radix-ui/react-collapsible": "1.1.2",
|
|
68
70
|
"@radix-ui/react-dialog": "^1.1.13",
|
|
71
|
+
"@radix-ui/react-dropdown-menu": "^2.1.16",
|
|
69
72
|
"@radix-ui/react-label": "^2.1.2",
|
|
70
73
|
"@radix-ui/react-popover": "^1.1.6",
|
|
71
74
|
"@radix-ui/react-radio-group": "^1.2.3",
|
|
@@ -75,7 +78,6 @@
|
|
|
75
78
|
"@radix-ui/react-slot": "^1.1.2",
|
|
76
79
|
"@radix-ui/react-tabs": "^1.1.3",
|
|
77
80
|
"@radix-ui/react-tooltip": "^1.1.8",
|
|
78
|
-
"@radix-ui/react-collapsible": "1.1.2",
|
|
79
81
|
"@remoteoss/json-schema-form": "0.11.10-beta.0",
|
|
80
82
|
"@tailwindcss/cli": "^4.0.9",
|
|
81
83
|
"@tailwindcss/postcss": "^4.0.9",
|
|
@@ -95,6 +97,7 @@
|
|
|
95
97
|
"lucide-react": "0.477.0",
|
|
96
98
|
"postcss": "^8.5.3",
|
|
97
99
|
"react-day-picker": "^8.10.1",
|
|
100
|
+
"react-flagpack": "^2.0.6",
|
|
98
101
|
"react-hook-form": "^7.54.2",
|
|
99
102
|
"recharts": "^2.15.1",
|
|
100
103
|
"tailwind-merge": "^3.0.2",
|
package/dist/chunk-2NDBK2EZ.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as b,b as y}from"./chunk-JNAFD452.js";import{a as w,b as f,d as g,e as h,f as v,g as D}from"./chunk-FMWLGLES.js";import{e as p}from"./chunk-FQNVKX3N.js";import{d as m}from"./chunk-3ZWDIEEM.js";import{e as u}from"./chunk-HGLI6PUM.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as T,jsxs as x}from"react/jsx-runtime";var P=e(({children:a,content:t})=>x("div",{className:"relative inline-block group",children:[a,x("div",{className:"absolute bottom-full right-0 mb-2 px-3 py-2 bg-gray-900 text-white text-xs rounded-md opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200 z-50 w-64 whitespace-normal break-words",children:[t,T("div",{className:"absolute top-full right-3 border-4 border-transparent border-t-gray-900"})]})]}),"BasicTooltip");import{useQuery as Z}from"@tanstack/react-query";var N=e((a,t)=>{let{client:s}=m();return Z({queryKey:["zendesk-article",a],queryFn:e(async()=>{let r=await p({client:s,headers:{Authorization:""},path:{id:Number(a)}});if(r.error)throw new Error(r.error.message||"Failed to fetch article");return r},"queryFn"),select:e(r=>r.data?.data.help_center_article,"select"),retry:!1,...t})},"useZendeskArticle");import{useEffect as F,useState as H}from"react";import{jsx as o,jsxs as i}from"react/jsx-runtime";var J=e(({Trigger:a,zendeskId:t,zendeskURL:s})=>{let[r,l]=H(!1),c=y(),k=b();F(()=>{let n=c.get("articleId");l(n===t)},[c,t]);let C=e(()=>{k.setSearchParams({articleId:null}),l(!1)},"handleClose"),{data:d,isLoading:R,error:_}=N(t,{enabled:r});return i(w,{open:r,onOpenChange:n=>!n&&C(),direction:"right",children:[o(f,{asChild:!0,children:a}),o(g,{className:"h-full w-[480px] mt-0 ml-auto RemoteFlows_ZendeskDrawer",children:i("div",{className:"h-full flex flex-col",children:[i(h,{children:[o(v,{children:d?.title}),i(D,{children:["For more details see our"," ",o("a",{href:s,target:"_blank",rel:"noopener noreferrer",children:"help article"})," "]})]}),R&&o("div",{children:"Loading..."}),_&&o("div",{className:"text-sm p-4 text-red-500",children:"Error loading article"}),o("div",{className:"flex-1 overflow-y-auto p-4 RemoteFlows_ZendeskDrawer__Content",dangerouslySetInnerHTML:{__html:u(d?.body||"")}})]})})]})},"ZendeskDrawer");export{P as a,J as b};
|
|
2
|
-
//# sourceMappingURL=chunk-2NDBK2EZ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/ui/basic-tooltip.tsx","../src/components/shared/zendesk-drawer/api.ts","../src/components/shared/zendesk-drawer/ZendeskDrawer.tsx"],"sourcesContent":["export const BasicTooltip = ({\n children,\n content,\n}: {\n children: React.ReactNode;\n content: React.ReactNode;\n}) => {\n return (\n <div className=\"relative inline-block group\">\n {children}\n <div className=\"absolute bottom-full right-0 mb-2 px-3 py-2 bg-gray-900 text-white text-xs rounded-md opacity-0 invisible group-hover:opacity-100 group-hover:visible transition-all duration-200 z-50 w-64 whitespace-normal break-words\">\n {content}\n <div className=\"absolute top-full right-3 border-4 border-transparent border-t-gray-900\"></div>\n </div>\n </div>\n );\n};\n","import { getShowHelpCenterArticle } from '@/src/client';\nimport { useClient } from '@/src/context';\nimport { Client } from '@hey-api/client-fetch';\nimport { useQuery } from '@tanstack/react-query';\n\nexport const useZendeskArticle = (\n zendeskId: string | null,\n queryOptions?: { enabled?: boolean },\n) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['zendesk-article', zendeskId],\n queryFn: async () => {\n const response = await getShowHelpCenterArticle({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n id: Number(zendeskId),\n },\n });\n\n if (response.error) {\n throw new Error(response.error.message || 'Failed to fetch article');\n }\n\n return response;\n },\n select: (data) => data.data?.data.help_center_article,\n retry: false,\n ...queryOptions,\n });\n};\n","import { useZendeskArticle } from '@/src/components/shared/zendesk-drawer/api';\nimport {\n Drawer,\n DrawerTrigger,\n DrawerContent,\n DrawerDescription,\n DrawerHeader,\n DrawerTitle,\n} from '@/src/components/ui/drawer';\nimport { useRouter } from '@/src/lib/router';\nimport { useSearchParams } from '@/src/lib/useSearchParams';\nimport { sanitizeHtml } from '@/src/lib/utils';\nimport { useEffect, useState } from 'react';\n\nexport type ZendeskDrawerProps = {\n Trigger: React.ReactNode;\n zendeskId: string;\n zendeskURL: string;\n};\n\nexport const ZendeskDrawer = ({\n Trigger,\n zendeskId,\n zendeskURL,\n}: ZendeskDrawerProps) => {\n const [isOpen, setIsOpen] = useState(false);\n const searchParams = useSearchParams();\n const router = useRouter();\n\n useEffect(() => {\n const articleId = searchParams.get('articleId');\n setIsOpen(articleId === zendeskId);\n }, [searchParams, zendeskId]);\n\n const handleClose = () => {\n router.setSearchParams({ articleId: null });\n setIsOpen(false);\n };\n\n const { data, isLoading, error } = useZendeskArticle(zendeskId, {\n enabled: isOpen,\n });\n\n return (\n <Drawer\n open={isOpen}\n onOpenChange={(open) => !open && handleClose()}\n direction=\"right\"\n >\n <DrawerTrigger asChild>{Trigger}</DrawerTrigger>\n <DrawerContent className=\"h-full w-[480px] mt-0 ml-auto RemoteFlows_ZendeskDrawer\">\n <div className=\"h-full flex flex-col\">\n <DrawerHeader>\n <DrawerTitle>{data?.title}</DrawerTitle>\n <DrawerDescription>\n For more details see our{' '}\n <a href={zendeskURL} target=\"_blank\" rel=\"noopener noreferrer\">\n help article\n </a>{' '}\n </DrawerDescription>\n </DrawerHeader>\n {isLoading && <div>Loading...</div>}\n {error && (\n <div className=\"text-sm p-4 text-red-500\">\n Error loading article\n </div>\n )}\n <div\n className=\"flex-1 overflow-y-auto p-4 RemoteFlows_ZendeskDrawer__Content\"\n dangerouslySetInnerHTML={{\n __html: sanitizeHtml(data?.body || ''),\n }}\n ></div>\n </div>\n </DrawerContent>\n </Drawer>\n );\n};\n"],"mappings":"0RAUM,OAEE,OAAAA,EAFF,QAAAC,MAAA,oBAVC,IAAMC,EAAeC,EAAA,CAAC,CAC3B,SAAAC,EACA,QAAAC,CACF,IAKIJ,EAAC,OAAI,UAAU,8BACZ,UAAAG,EACDH,EAAC,OAAI,UAAU,4NACZ,UAAAI,EACDL,EAAC,OAAI,UAAU,0EAA0E,GAC3F,GACF,EAdwB,gBCG5B,OAAS,YAAAM,MAAgB,wBAElB,IAAMC,EAAoBC,EAAA,CAC/BC,EACAC,IACG,CACH,GAAM,CAAE,OAAAC,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAS,CACd,SAAU,CAAC,kBAAmBJ,CAAS,EACvC,QAASD,EAAA,SAAY,CACnB,IAAMM,EAAW,MAAMC,EAAyB,CAC9C,OAAQJ,EACR,QAAS,CACP,cAAe,EACjB,EACA,KAAM,CACJ,GAAI,OAAOF,CAAS,CACtB,CACF,CAAC,EAED,GAAIK,EAAS,MACX,MAAM,IAAI,MAAMA,EAAS,MAAM,SAAW,yBAAyB,EAGrE,OAAOA,CACT,EAhBS,WAiBT,OAAQN,EAACQ,GAASA,EAAK,MAAM,KAAK,oBAA1B,UACR,MAAO,GACP,GAAGN,CACL,CAAC,CACH,EA5BiC,qBCOjC,OAAS,aAAAO,EAAW,YAAAC,MAAgB,QAqC9B,cAAAC,EAKM,QAAAC,MALN,oBA7BC,IAAMC,EAAgBC,EAAA,CAAC,CAC5B,QAAAC,EACA,UAAAC,EACA,WAAAC,CACF,IAA0B,CACxB,GAAM,CAACC,EAAQC,CAAS,EAAIC,EAAS,EAAK,EACpCC,EAAeC,EAAgB,EAC/BC,EAASC,EAAU,EAEzBC,EAAU,IAAM,CACd,IAAMC,EAAYL,EAAa,IAAI,WAAW,EAC9CF,EAAUO,IAAcV,CAAS,CACnC,EAAG,CAACK,EAAcL,CAAS,CAAC,EAE5B,IAAMW,EAAcb,EAAA,IAAM,CACxBS,EAAO,gBAAgB,CAAE,UAAW,IAAK,CAAC,EAC1CJ,EAAU,EAAK,CACjB,EAHoB,eAKd,CAAE,KAAAS,EAAM,UAAAC,EAAW,MAAAC,CAAM,EAAIC,EAAkBf,EAAW,CAC9D,QAASE,CACX,CAAC,EAED,OACEN,EAACoB,EAAA,CACC,KAAMd,EACN,aAAee,GAAS,CAACA,GAAQN,EAAY,EAC7C,UAAU,QAEV,UAAAhB,EAACuB,EAAA,CAAc,QAAO,GAAE,SAAAnB,EAAQ,EAChCJ,EAACwB,EAAA,CAAc,UAAU,0DACvB,SAAAvB,EAAC,OAAI,UAAU,uBACb,UAAAA,EAACwB,EAAA,CACC,UAAAzB,EAAC0B,EAAA,CAAa,SAAAT,GAAM,MAAM,EAC1BhB,EAAC0B,EAAA,CAAkB,qCACQ,IACzB3B,EAAC,KAAE,KAAMM,EAAY,OAAO,SAAS,IAAI,sBAAsB,wBAE/D,EAAK,KACP,GACF,EACCY,GAAalB,EAAC,OAAI,sBAAU,EAC5BmB,GACCnB,EAAC,OAAI,UAAU,2BAA2B,iCAE1C,EAEFA,EAAC,OACC,UAAU,gEACV,wBAAyB,CACvB,OAAQ4B,EAAaX,GAAM,MAAQ,EAAE,CACvC,EACD,GACH,EACF,GACF,CAEJ,EAzD6B","names":["jsx","jsxs","BasicTooltip","__name","children","content","useQuery","useZendeskArticle","__name","zendeskId","queryOptions","client","useClient","useQuery","response","getShowHelpCenterArticle","data","useEffect","useState","jsx","jsxs","ZendeskDrawer","__name","Trigger","zendeskId","zendeskURL","isOpen","setIsOpen","useState","searchParams","useSearchParams","router","useRouter","useEffect","articleId","handleClose","data","isLoading","error","useZendeskArticle","Drawer","open","DrawerTrigger","DrawerContent","DrawerHeader","DrawerTitle","DrawerDescription","sanitizeHtml"]}
|
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
|
package/dist/chunk-45N2S6JG.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as q}from"./chunk-XJ7PCWMR.js";import{a as L}from"./chunk-UPRUP24B.js";import{a as x,b as v,c as T,e as k}from"./chunk-C3KZEPUZ.js";import{a as J}from"./chunk-CFIJKJXD.js";import{c as C}from"./chunk-MXFDOIUA.js";import{a as o}from"./chunk-P37U34EQ.js";import{object as ce}from"yup";import{createHeadlessForm as ne,modify as ie}from"@remoteoss/json-schema-form";import{useMemo as se,useState as j}from"react";import{string as U,ValidationError as G}from"yup";import{jsx as le}from"react/jsx-runtime";var P={title:"Estimation",includeBenefits:!1,includeCostBreakdowns:!1,includePremiumBenefits:!1,enableCurrencyConversion:!1},ae=o(r=>{let{schema:n}=ie(L.data.schema,r?.jsfModify||{});return ne(n)},"useStaticSchema"),he=o(({defaultRegion:r,estimationOptions:n,options:i,version:s}={estimationOptions:P})=>{let[c,u]=j(r),[p,w]=j(),[M,H]=j(),{data:g,isLoading:I}=x({includePremiumBenefits:n.includePremiumBenefits}),{data:E,isLoading:N}=v(),D=c||p?.value,{data:S,isLoading:K}=k(D,{includePremiumBenefits:n.includePremiumBenefits,options:i}),B=T(),O=p?.currency,m=i?.jsfModify?.fields?.salary,y=m&&typeof m=="object"&&"presentation"in m?m.presentation:void 0,Q=se(()=>({fields:{salary:{...m,presentation:{salary_conversion_properties:{label:y?.salary_conversion_properties?.label,description:y?.salary_conversion_properties?.description},currencies:{from:O,to:M},Component:o(e=>le(q,{...e}),"Component")}}}}),[O,M,m,y?.salary_conversion_properties?.description,y?.salary_conversion_properties?.label]),d=ae({jsfModify:{fields:{...i?.jsfModify?.fields,...Q?.fields}}});async function W(e){try{await b.validate(e,{abortEarly:!1})}catch(t){return{data:null,error:t}}return new Promise((t,a)=>{B.mutate(z(e,n,s),{onSuccess:o(l=>{l.data?t({data:l.data,error:null}):t({data:null,error:new Error("Something went wrong. Please try again later.")})},"onSuccess"),onError:o(l=>{a({data:null,error:l})},"onError")})})}o(W,"onSubmit");function X(e){let t=g?.find(({value:a})=>a===e);t&&t.childRegions.length===0&&t.hasAdditionalFields?u(t.regionSlug):u(void 0),w(t)}o(X,"onCountryChange");function Y(e){u(e)}o(Y,"onRegionChange");function Z(e){let t=E?.find(a=>a.value===e)?.label;H(t)}o(Z,"onChangeCurrency");let f=d.fields.find(e=>e.name==="region");if(f){let e=p?.childRegions.map(t=>({value:t.slug,label:t.name}))??[];f.options=e,f.isVisible=e.length>0,f.required=e.length>0,f.onChange=Y,f.schema=e.length>0?U().transform(t=>typeof t=="string"?t:"").required("Region is required"):U()}if(E){let e=d.fields.find(t=>t.name==="currency");e&&(e.options=E,e.onChange=Z)}if(g){let e=d.fields.find(t=>t.name==="country");e&&(e.options=g,e.onChange=X)}let ee=o(()=>{w(void 0),u(r)},"resetForm"),A=[...d.fields,...S?.fields||[]],b=$(d.fields);async function te(e){let t=null,a=C(e,A);try{await b.validate(a,{abortEarly:!1}),t={formErrors:{},yupError:new G([],e)}}catch(V){let F=J(V);t={formErrors:Object.entries(F).reduce((R,[re,oe])=>({...R,[re]:oe.message}),{}),yupError:V}}let l=S?.handleValidation(a),h=[...t?.yupError.inner||[],...l?.yupError?.inner||[]],_={...t?.yupError?.value||{},...l?.yupError?.value||{}};return{formErrors:{...t?.formErrors||{},...l?.formErrors||{}},yupError:new G(h,_)}}return o(te,"handleValidation"),{stepState:{current:0,total:1,isLastStep:!0},fields:A,validationSchema:b,parseFormValues:o(e=>{let{country:t,region:a,salary:l,currency:h,..._}=e,F=C({country:t,region:a,salary:l,currency:h},d.fields),R=C(_,S?.fields||[]);return{...F,...R}},"parseFormValues"),handleValidation:te,isSubmitting:B.isPending,isLoading:I&&N&&K,onSubmit:W,resetForm:ee}},"useCostCalculator");function $(r){let n=r.reduce((i,s)=>(i[s.name]=s.schema,i),{});return ce(n)}o($,"buildValidationSchema");function ue(r){let n="benefit-";return Object.keys(r).reduce((i,s)=>{let c=r[s];if(c==="none")return i;let p={benefit_group_slug:s.replace(n,""),benefit_tier_slug:c};return[...i,p]},[])}o(ue,"formatBenefits");function me(r,n,i){return{region_slug:r.region||r.country,annual_gross_salary_in_employer_currency:r.salary,employment_term:r.contract_duration_type??"fixed",title:n.title,age:r.age??void 0,...r.benefits&&{benefits:ue(r.benefits)},...i==="standard"&&{annual_gross_salary:r.salary}}}o(me,"mapValueToEmployment");function z(r,n=P,i="standard"){let s=Array.isArray(r)?r:[r];if(s.length===0)throw new Error("At least one employment value is required");return s.length>1&&new Set(s.map(u=>u.currency)).size>1&&console.warn("Multiple currencies detected in array. Using currency from first employment."),{employer_currency_slug:s[0].currency,include_benefits:n.includeBenefits,include_cost_breakdowns:n.includeCostBreakdowns,include_premium_benefits:n.includePremiumBenefits,employments:s.map(c=>me(c,n,i))}}o(z,"buildPayload");export{$ as a,z as b,P as c,he as d};
|
|
2
|
-
//# sourceMappingURL=chunk-45N2S6JG.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/CostCalculator/utils.ts","../src/flows/CostCalculator/hooks.tsx"],"sourcesContent":["import type { CostCalculatorEstimateParams } from '@/src/client';\n\nimport { $TSFixMe } from '@/src/types/remoteFlows';\nimport { AnyObjectSchema, object } from 'yup';\nimport { CostCalculatorVersion, defaultEstimationOptions } from './hooks';\nimport type {\n CostCalculatorEstimationOptions,\n CostCalculatorEstimationSubmitValues,\n} from './types';\n\n/**\n * Build the validation schema for the form.\n * @returns\n */\nexport function buildValidationSchema(fields: $TSFixMe[]) {\n const fieldsSchema = fields.reduce<Record<string, AnyObjectSchema>>(\n (fieldsSchemaAcc, field) => {\n fieldsSchemaAcc[field.name] = field.schema as AnyObjectSchema;\n return fieldsSchemaAcc;\n },\n {},\n );\n return object(fieldsSchema) as AnyObjectSchema;\n}\n\n/**\n * Format the benefits to the expected format by the API.\n * @param benefits\n * @returns\n */\nfunction formatBenefits(benefits: Record<string, string>) {\n const needle = 'benefit-';\n return Object.keys(benefits).reduce<\n Array<{ benefit_group_slug: string; benefit_tier_slug: string }>\n >((acc, key) => {\n const benefitTierSlug = benefits[key];\n if (benefitTierSlug === 'none') {\n return acc;\n }\n const benefitGroupSlug = key.replace(needle, '');\n const benefitEntry = {\n benefit_group_slug: benefitGroupSlug,\n benefit_tier_slug: benefitTierSlug,\n };\n return [...acc, benefitEntry];\n }, []);\n}\n\nfunction mapValueToEmployment(\n value: CostCalculatorEstimationSubmitValues,\n estimationOptions: CostCalculatorEstimationOptions,\n version: CostCalculatorVersion,\n) {\n return {\n region_slug: value.region || value.country,\n annual_gross_salary_in_employer_currency: value.salary,\n employment_term: value.contract_duration_type ?? 'fixed',\n title: estimationOptions.title,\n age: value.age ?? undefined,\n ...(value.benefits && { benefits: formatBenefits(value.benefits) }),\n ...(version === 'standard' && {\n annual_gross_salary: value.salary,\n }),\n };\n}\n\n/**\n * Build the payload for the cost calculator estimation.\n * @param values\n * @param estimationOptions\n * @returns\n */\nexport function buildPayload(\n values:\n | CostCalculatorEstimationSubmitValues\n | CostCalculatorEstimationSubmitValues[],\n estimationOptions: CostCalculatorEstimationOptions = defaultEstimationOptions,\n version: CostCalculatorVersion = 'standard',\n): CostCalculatorEstimateParams {\n const employments = Array.isArray(values) ? values : [values];\n\n if (employments.length === 0) {\n throw new Error('At least one employment value is required');\n }\n\n if (employments.length > 1) {\n const currencies = new Set(employments.map((v) => v.currency));\n if (currencies.size > 1) {\n console.warn(\n 'Multiple currencies detected in array. Using currency from first employment.',\n );\n }\n }\n\n return {\n employer_currency_slug: employments[0].currency,\n include_benefits: estimationOptions.includeBenefits,\n include_cost_breakdowns: estimationOptions.includeCostBreakdowns,\n include_premium_benefits: estimationOptions.includePremiumBenefits,\n employments: employments.map((value) =>\n mapValueToEmployment(value, estimationOptions, version),\n ),\n };\n}\n","import {\n CostCalculatorEstimateResponse,\n MinimalRegion,\n PostCreateEstimationError,\n} from '@/src/client';\nimport { jsonSchema } from '@/src/flows/CostCalculator/jsonSchema';\nimport type {\n CostCalculatorEstimationFormValues,\n CostCalculatorEstimationOptions,\n CostCalculatorEstimationSubmitValues,\n EstimationError,\n} from '@/src/flows/CostCalculator/types';\nimport type { JSFModify, Result } from '@/src/flows/types';\n\nimport { parseJSFToValidate } from '@/src/components/form/utils';\nimport { iterateErrors } from '@/src/components/form/yupValidationResolver';\nimport { createHeadlessForm, modify } from '@remoteoss/json-schema-form';\nimport { useMemo, useState } from 'react';\nimport { string, ValidationError } from 'yup';\nimport { buildPayload, buildValidationSchema } from './utils';\nimport {\n useCompanyCurrencies,\n useCostCalculatorCountries,\n useCostCalculatorEstimation,\n useRegionFields,\n} from '@/src/flows/CostCalculator/api';\nimport { JSFField } from '@/src/types/remoteFlows';\nimport { SalaryField } from '@/src/flows/CostCalculator/components/SalaryField';\n\nexport type CostCalculatorVersion = 'standard' | 'marketing';\n\ntype CostCalculatorCountry = {\n value: string;\n label: string;\n childRegions: MinimalRegion[];\n hasAdditionalFields: boolean | undefined;\n regionSlug: string;\n currency: string;\n};\n\ntype JSFValidationError = {\n formErrors: Record<\n string,\n {\n type: string;\n message: string;\n }\n >;\n yupError: ValidationError;\n};\n\nexport const defaultEstimationOptions: CostCalculatorEstimationOptions = {\n title: 'Estimation',\n includeBenefits: false,\n includeCostBreakdowns: false,\n includePremiumBenefits: false,\n enableCurrencyConversion: false,\n};\n\ntype UseCostCalculatorParams = {\n /**\n * The default region slug to preselect a country and a region.\n */\n defaultRegion?: string;\n /**\n * The estimation options.\n */\n estimationOptions: CostCalculatorEstimationOptions;\n options?: {\n jsfModify?: JSFModify;\n };\n version?: CostCalculatorVersion;\n};\n\nconst useStaticSchema = (options?: { jsfModify?: JSFModify }) => {\n const { schema: jsonSchemaModified } = modify(\n jsonSchema.data.schema,\n options?.jsfModify || {},\n );\n\n return createHeadlessForm(jsonSchemaModified);\n};\n\n/**\n * Hook to use the cost calculator.\n */\nexport const useCostCalculator = (\n {\n defaultRegion,\n estimationOptions,\n options,\n version,\n }: UseCostCalculatorParams = {\n estimationOptions: defaultEstimationOptions,\n },\n) => {\n const [selectedRegion, setSelectedRegion] = useState<string | undefined>(\n defaultRegion,\n );\n const [selectedCountry, setSelectedCountry] =\n useState<CostCalculatorCountry>();\n const [employerBillingCurrency, setEmployerBillingCurrency] = useState<\n string | undefined\n >();\n const { data: countries, isLoading: isLoadingCountries } =\n useCostCalculatorCountries({\n includePremiumBenefits: estimationOptions.includePremiumBenefits,\n });\n const { data: currencies, isLoading: isLoadingCurrencies } =\n useCompanyCurrencies();\n\n const jsonSchemaRegionSlug = selectedRegion || selectedCountry?.value;\n\n const { data: jsonSchemaRegionFields, isLoading: isLoadingRegionFields } =\n useRegionFields(jsonSchemaRegionSlug, {\n includePremiumBenefits: estimationOptions.includePremiumBenefits,\n options,\n });\n const costCalculatorEstimationMutation = useCostCalculatorEstimation();\n const employeeBillingCurrency = selectedCountry?.currency;\n\n const salaryField = options?.jsfModify?.fields?.salary;\n const salaryFieldPresentation =\n salaryField &&\n typeof salaryField === 'object' &&\n 'presentation' in salaryField\n ? (\n salaryField as {\n presentation?: {\n salary_conversion_properties?: {\n label?: string;\n description?: string;\n };\n };\n }\n ).presentation\n : undefined;\n\n const customFields = useMemo(() => {\n return {\n fields: {\n salary: {\n ...salaryField,\n presentation: {\n salary_conversion_properties: {\n label:\n salaryFieldPresentation?.salary_conversion_properties?.label,\n description:\n salaryFieldPresentation?.salary_conversion_properties\n ?.description,\n },\n currencies: {\n from: employeeBillingCurrency,\n to: employerBillingCurrency,\n },\n Component: (\n props: JSFField & { currencies: { from: string; to: string } },\n ) => {\n return <SalaryField {...props} />;\n },\n },\n },\n },\n };\n }, [\n employeeBillingCurrency,\n employerBillingCurrency,\n salaryField,\n salaryFieldPresentation?.salary_conversion_properties?.description,\n salaryFieldPresentation?.salary_conversion_properties?.label,\n ]);\n\n const fieldsJSONSchema = useStaticSchema({\n jsfModify: {\n fields: {\n ...options?.jsfModify?.fields,\n ...customFields?.fields,\n },\n },\n });\n\n /**\n * Submit the estimation form with the given values.\n * @param values\n */\n async function onSubmit(\n values: CostCalculatorEstimationSubmitValues,\n ): Promise<Result<CostCalculatorEstimateResponse, EstimationError>> {\n try {\n await validationSchema.validate(values, { abortEarly: false });\n } catch (err) {\n return {\n data: null,\n error: err as ValidationError,\n };\n }\n\n return new Promise((resolve, reject) => {\n costCalculatorEstimationMutation.mutate(\n buildPayload(values, estimationOptions, version),\n {\n onSuccess: (response) => {\n if (response.data) {\n resolve({\n data: response.data,\n error: null,\n });\n } else {\n resolve({\n data: null,\n error: new Error(\n 'Something went wrong. Please try again later.',\n ),\n });\n }\n },\n onError: (error) => {\n reject({\n data: null,\n error: error as PostCreateEstimationError,\n });\n },\n },\n );\n });\n }\n\n /**\n * If the selected country has no child regions and has additional fields,\n * set the current region to the country's region slug and fetch the region fields.\n * @param country\n */\n function onCountryChange(country: string) {\n const currentCountry = countries?.find(({ value }) => value === country);\n\n if (\n currentCountry &&\n currentCountry.childRegions.length === 0 &&\n currentCountry.hasAdditionalFields\n ) {\n setSelectedRegion(currentCountry.regionSlug);\n } else {\n setSelectedRegion(undefined);\n }\n setSelectedCountry(currentCountry);\n }\n\n /**\n * Update the selected region and fetch the region fields.\n * @param region\n */\n function onRegionChange(region: string) {\n setSelectedRegion(region);\n }\n\n function onChangeCurrency(currency: string) {\n const selectedCurrency = currencies?.find(\n (c) => c.value === currency,\n )?.label;\n setEmployerBillingCurrency(selectedCurrency);\n }\n\n const regionField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'region',\n );\n\n if (regionField) {\n const regions =\n selectedCountry?.childRegions.map((region) => ({\n value: region.slug,\n label: region.name,\n })) ?? [];\n regionField.options = regions;\n regionField.isVisible = regions.length > 0;\n regionField.required = regions.length > 0;\n regionField.onChange = onRegionChange;\n regionField.schema =\n regions.length > 0\n ? string()\n .transform((value) => (typeof value === 'string' ? value : ''))\n .required('Region is required')\n : string();\n }\n\n if (currencies) {\n const currencyField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'currency',\n );\n if (currencyField) {\n currencyField.options = currencies;\n currencyField.onChange = onChangeCurrency;\n }\n }\n\n if (countries) {\n const countryField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'country',\n );\n if (countryField) {\n countryField.options = countries;\n countryField.onChange = onCountryChange;\n }\n }\n\n const resetForm = () => {\n setSelectedCountry(undefined);\n setSelectedRegion(defaultRegion);\n };\n\n const allFields = [\n ...fieldsJSONSchema.fields,\n ...(jsonSchemaRegionFields?.fields || []),\n ];\n\n const validationSchema = buildValidationSchema(fieldsJSONSchema.fields);\n\n async function handleValidation(values: CostCalculatorEstimationFormValues) {\n let errors: JSFValidationError | null = null;\n\n const parsedValues = parseJSFToValidate(values, allFields);\n\n // 1. validate static fields first using Yup validate function\n try {\n await validationSchema.validate(parsedValues, {\n abortEarly: false,\n });\n errors = {\n formErrors: {},\n yupError: new ValidationError([], values),\n };\n } catch (error) {\n const iterateResult = iterateErrors(error as ValidationError);\n\n errors = {\n // convert the errors to a format that can be used in the form\n formErrors: Object.entries(iterateResult).reduce(\n (acc, [key, value]) => ({ ...acc, [key]: value.message }),\n {},\n ),\n yupError: error as ValidationError,\n };\n }\n\n // 2. validate json schema fields using the handleValidation (from json-schema-form)\n const handleValidationResult =\n jsonSchemaRegionFields?.handleValidation(parsedValues);\n\n // 3. combine the errors from both validations\n const combinedInnerErrors = [\n ...(errors?.yupError.inner || []),\n ...(handleValidationResult?.yupError?.inner || []),\n ];\n const combinedValues = {\n ...(errors?.yupError?.value || {}),\n ...(handleValidationResult?.yupError?.value || {}),\n };\n\n return {\n formErrors: {\n ...(errors?.formErrors || {}),\n ...(handleValidationResult?.formErrors || {}),\n },\n yupError: new ValidationError(combinedInnerErrors, combinedValues),\n };\n }\n\n return {\n stepState: {\n current: 0,\n total: 1,\n isLastStep: true,\n },\n fields: allFields,\n validationSchema,\n parseFormValues: (\n values: CostCalculatorEstimationFormValues,\n ): CostCalculatorEstimationSubmitValues => {\n const { country, region, salary, currency, ...rest } = values;\n const jsonSchemaStaticFieldValues = {\n country,\n region,\n salary,\n currency,\n };\n const parsedStaticFields = parseJSFToValidate(\n jsonSchemaStaticFieldValues,\n fieldsJSONSchema.fields,\n );\n\n const parsedRegionFields = parseJSFToValidate(\n rest,\n jsonSchemaRegionFields?.fields || [],\n );\n\n return {\n ...parsedStaticFields,\n ...parsedRegionFields,\n } as CostCalculatorEstimationSubmitValues;\n },\n handleValidation,\n isSubmitting: costCalculatorEstimationMutation.isPending,\n isLoading:\n isLoadingCountries && isLoadingCurrencies && isLoadingRegionFields,\n onSubmit,\n resetForm,\n };\n};\n"],"mappings":"qQAGA,OAA0B,UAAAA,OAAc,MCaxC,OAAS,sBAAAC,GAAoB,UAAAC,OAAc,8BAC3C,OAAS,WAAAC,GAAS,YAAAC,MAAgB,QAClC,OAAS,UAAAC,EAAQ,mBAAAC,MAAuB,MA4InB,cAAAC,OAAA,oBA3Gd,IAAMC,EAA4D,CACvE,MAAO,aACP,gBAAiB,GACjB,sBAAuB,GACvB,uBAAwB,GACxB,yBAA0B,EAC5B,EAiBMC,GAAkBC,EAACC,GAAwC,CAC/D,GAAM,CAAE,OAAQC,CAAmB,EAAIC,GACrCC,EAAW,KAAK,OAChBH,GAAS,WAAa,CAAC,CACzB,EAEA,OAAOI,GAAmBH,CAAkB,CAC9C,EAPwB,mBAYXI,GAAoBN,EAAA,CAC/B,CACE,cAAAO,EACA,kBAAAC,EACA,QAAAP,EACA,QAAAQ,CACF,EAA6B,CAC3B,kBAAmBX,CACrB,IACG,CACH,GAAM,CAACY,EAAgBC,CAAiB,EAAIC,EAC1CL,CACF,EACM,CAACM,EAAiBC,CAAkB,EACxCF,EAAgC,EAC5B,CAACG,EAAyBC,CAA0B,EAAIJ,EAE5D,EACI,CAAE,KAAMK,EAAW,UAAWC,CAAmB,EACrDC,EAA2B,CACzB,uBAAwBX,EAAkB,sBAC5C,CAAC,EACG,CAAE,KAAMY,EAAY,UAAWC,CAAoB,EACvDC,EAAqB,EAEjBC,EAAuBb,GAAkBG,GAAiB,MAE1D,CAAE,KAAMW,EAAwB,UAAWC,CAAsB,EACrEC,EAAgBH,EAAsB,CACpC,uBAAwBf,EAAkB,uBAC1C,QAAAP,CACF,CAAC,EACG0B,EAAmCC,EAA4B,EAC/DC,EAA0BhB,GAAiB,SAE3CiB,EAAc7B,GAAS,WAAW,QAAQ,OAC1C8B,EACJD,GACA,OAAOA,GAAgB,UACvB,iBAAkBA,EAEZA,EAQA,aACF,OAEAE,EAAeC,GAAQ,KACpB,CACL,OAAQ,CACN,OAAQ,CACN,GAAGH,EACH,aAAc,CACZ,6BAA8B,CAC5B,MACEC,GAAyB,8BAA8B,MACzD,YACEA,GAAyB,8BACrB,WACR,EACA,WAAY,CACV,KAAMF,EACN,GAAId,CACN,EACA,UAAWf,EACTkC,GAEOrC,GAACsC,EAAA,CAAa,GAAGD,EAAO,EAHtB,YAKb,CACF,CACF,CACF,GACC,CACDL,EACAd,EACAe,EACAC,GAAyB,8BAA8B,YACvDA,GAAyB,8BAA8B,KACzD,CAAC,EAEKK,EAAmBrC,GAAgB,CACvC,UAAW,CACT,OAAQ,CACN,GAAGE,GAAS,WAAW,OACvB,GAAG+B,GAAc,MACnB,CACF,CACF,CAAC,EAMD,eAAeK,EACbC,EACkE,CAClE,GAAI,CACF,MAAMC,EAAiB,SAASD,EAAQ,CAAE,WAAY,EAAM,CAAC,CAC/D,OAASE,EAAK,CACZ,MAAO,CACL,KAAM,KACN,MAAOA,CACT,CACF,CAEA,OAAO,IAAI,QAAQ,CAACC,EAASC,IAAW,CACtCf,EAAiC,OAC/BgB,EAAaL,EAAQ9B,EAAmBC,CAAO,EAC/C,CACE,UAAWT,EAAC4C,GAAa,CACnBA,EAAS,KACXH,EAAQ,CACN,KAAMG,EAAS,KACf,MAAO,IACT,CAAC,EAEDH,EAAQ,CACN,KAAM,KACN,MAAO,IAAI,MACT,+CACF,CACF,CAAC,CAEL,EAdW,aAeX,QAASzC,EAAC6C,GAAU,CAClBH,EAAO,CACL,KAAM,KACN,MAAOG,CACT,CAAC,CACH,EALS,UAMX,CACF,CACF,CAAC,CACH,CAxCe7C,EAAAqC,EAAA,YA+Cf,SAASS,EAAgBC,EAAiB,CACxC,IAAMC,EAAiB/B,GAAW,KAAK,CAAC,CAAE,MAAAgC,CAAM,IAAMA,IAAUF,CAAO,EAGrEC,GACAA,EAAe,aAAa,SAAW,GACvCA,EAAe,oBAEfrC,EAAkBqC,EAAe,UAAU,EAE3CrC,EAAkB,MAAS,EAE7BG,EAAmBkC,CAAc,CACnC,CAbShD,EAAA8C,EAAA,mBAmBT,SAASI,EAAeC,EAAgB,CACtCxC,EAAkBwC,CAAM,CAC1B,CAFSnD,EAAAkD,EAAA,kBAIT,SAASE,EAAiBC,EAAkB,CAC1C,IAAMC,EAAmBlC,GAAY,KAClCmC,GAAMA,EAAE,QAAUF,CACrB,GAAG,MACHrC,EAA2BsC,CAAgB,CAC7C,CALStD,EAAAoD,EAAA,oBAOT,IAAMI,EAAcpB,EAAiB,OAAO,KACzCqB,GAAUA,EAAM,OAAS,QAC5B,EAEA,GAAID,EAAa,CACf,IAAME,EACJ7C,GAAiB,aAAa,IAAKsC,IAAY,CAC7C,MAAOA,EAAO,KACd,MAAOA,EAAO,IAChB,EAAE,GAAK,CAAC,EACVK,EAAY,QAAUE,EACtBF,EAAY,UAAYE,EAAQ,OAAS,EACzCF,EAAY,SAAWE,EAAQ,OAAS,EACxCF,EAAY,SAAWN,EACvBM,EAAY,OACVE,EAAQ,OAAS,EACbC,EAAO,EACJ,UAAWV,GAAW,OAAOA,GAAU,SAAWA,EAAQ,EAAG,EAC7D,SAAS,oBAAoB,EAChCU,EAAO,CACf,CAEA,GAAIvC,EAAY,CACd,IAAMwC,EAAgBxB,EAAiB,OAAO,KAC3CqB,GAAUA,EAAM,OAAS,UAC5B,EACIG,IACFA,EAAc,QAAUxC,EACxBwC,EAAc,SAAWR,EAE7B,CAEA,GAAInC,EAAW,CACb,IAAM4C,EAAezB,EAAiB,OAAO,KAC1CqB,GAAUA,EAAM,OAAS,SAC5B,EACII,IACFA,EAAa,QAAU5C,EACvB4C,EAAa,SAAWf,EAE5B,CAEA,IAAMgB,GAAY9D,EAAA,IAAM,CACtBc,EAAmB,MAAS,EAC5BH,EAAkBJ,CAAa,CACjC,EAHkB,aAKZwD,EAAY,CAChB,GAAG3B,EAAiB,OACpB,GAAIZ,GAAwB,QAAU,CAAC,CACzC,EAEMe,EAAmByB,EAAsB5B,EAAiB,MAAM,EAEtE,eAAe6B,GAAiB3B,EAA4C,CAC1E,IAAI4B,EAAoC,KAElCC,EAAeC,EAAmB9B,EAAQyB,CAAS,EAGzD,GAAI,CACF,MAAMxB,EAAiB,SAAS4B,EAAc,CAC5C,WAAY,EACd,CAAC,EACDD,EAAS,CACP,WAAY,CAAC,EACb,SAAU,IAAIG,EAAgB,CAAC,EAAG/B,CAAM,CAC1C,CACF,OAASO,EAAO,CACd,IAAMyB,EAAgBC,EAAc1B,CAAwB,EAE5DqB,EAAS,CAEP,WAAY,OAAO,QAAQI,CAAa,EAAE,OACxC,CAACE,EAAK,CAACC,GAAKxB,EAAK,KAAO,CAAE,GAAGuB,EAAK,CAACC,EAAG,EAAGxB,GAAM,OAAQ,GACvD,CAAC,CACH,EACA,SAAUJ,CACZ,CACF,CAGA,IAAM6B,EACJlD,GAAwB,iBAAiB2C,CAAY,EAGjDQ,EAAsB,CAC1B,GAAIT,GAAQ,SAAS,OAAS,CAAC,EAC/B,GAAIQ,GAAwB,UAAU,OAAS,CAAC,CAClD,EACME,EAAiB,CACrB,GAAIV,GAAQ,UAAU,OAAS,CAAC,EAChC,GAAIQ,GAAwB,UAAU,OAAS,CAAC,CAClD,EAEA,MAAO,CACL,WAAY,CACV,GAAIR,GAAQ,YAAc,CAAC,EAC3B,GAAIQ,GAAwB,YAAc,CAAC,CAC7C,EACA,SAAU,IAAIL,EAAgBM,EAAqBC,CAAc,CACnE,CACF,CAhDe,OAAA5E,EAAAiE,GAAA,oBAkDR,CACL,UAAW,CACT,QAAS,EACT,MAAO,EACP,WAAY,EACd,EACA,OAAQF,EACR,iBAAAxB,EACA,gBAAiBvC,EACfsC,GACyC,CACzC,GAAM,CAAE,QAAAS,EAAS,OAAAI,EAAQ,OAAA0B,EAAQ,SAAAxB,EAAU,GAAGyB,CAAK,EAAIxC,EAOjDyC,EAAqBX,EANS,CAClC,QAAArB,EACA,OAAAI,EACA,OAAA0B,EACA,SAAAxB,CACF,EAGEjB,EAAiB,MACnB,EAEM4C,EAAqBZ,EACzBU,EACAtD,GAAwB,QAAU,CAAC,CACrC,EAEA,MAAO,CACL,GAAGuD,EACH,GAAGC,CACL,CACF,EAxBiB,mBAyBjB,iBAAAf,GACA,aAActC,EAAiC,UAC/C,UACET,GAAsBG,GAAuBI,EAC/C,SAAAY,EACA,UAAAyB,EACF,CACF,EAhUiC,qBDxE1B,SAASmB,EAAsBC,EAAoB,CACxD,IAAMC,EAAeD,EAAO,OAC1B,CAACE,EAAiBC,KAChBD,EAAgBC,EAAM,IAAI,EAAIA,EAAM,OAC7BD,GAET,CAAC,CACH,EACA,OAAOE,GAAOH,CAAY,CAC5B,CATgBI,EAAAN,EAAA,yBAgBhB,SAASO,GAAeC,EAAkC,CACxD,IAAMC,EAAS,WACf,OAAO,OAAO,KAAKD,CAAQ,EAAE,OAE3B,CAACE,EAAKC,IAAQ,CACd,IAAMC,EAAkBJ,EAASG,CAAG,EACpC,GAAIC,IAAoB,OACtB,OAAOF,EAGT,IAAMG,EAAe,CACnB,mBAFuBF,EAAI,QAAQF,EAAQ,EAAE,EAG7C,kBAAmBG,CACrB,EACA,MAAO,CAAC,GAAGF,EAAKG,CAAY,CAC9B,EAAG,CAAC,CAAC,CACP,CAhBSP,EAAAC,GAAA,kBAkBT,SAASO,GACPC,EACAC,EACAC,EACA,CACA,MAAO,CACL,YAAaF,EAAM,QAAUA,EAAM,QACnC,yCAA0CA,EAAM,OAChD,gBAAiBA,EAAM,wBAA0B,QACjD,MAAOC,EAAkB,MACzB,IAAKD,EAAM,KAAO,OAClB,GAAIA,EAAM,UAAY,CAAE,SAAUR,GAAeQ,EAAM,QAAQ,CAAE,EACjE,GAAIE,IAAY,YAAc,CAC5B,oBAAqBF,EAAM,MAC7B,CACF,CACF,CAhBST,EAAAQ,GAAA,wBAwBF,SAASI,EACdC,EAGAH,EAAqDI,EACrDH,EAAiC,WACH,CAC9B,IAAMI,EAAc,MAAM,QAAQF,CAAM,EAAIA,EAAS,CAACA,CAAM,EAE5D,GAAIE,EAAY,SAAW,EACzB,MAAM,IAAI,MAAM,2CAA2C,EAG7D,OAAIA,EAAY,OAAS,GACJ,IAAI,IAAIA,EAAY,IAAKC,GAAMA,EAAE,QAAQ,CAAC,EAC9C,KAAO,GACpB,QAAQ,KACN,8EACF,EAIG,CACL,uBAAwBD,EAAY,CAAC,EAAE,SACvC,iBAAkBL,EAAkB,gBACpC,wBAAyBA,EAAkB,sBAC3C,yBAA0BA,EAAkB,uBAC5C,YAAaK,EAAY,IAAKN,GAC5BD,GAAqBC,EAAOC,EAAmBC,CAAO,CACxD,CACF,CACF,CA/BgBX,EAAAY,EAAA","names":["object","createHeadlessForm","modify","useMemo","useState","string","ValidationError","jsx","defaultEstimationOptions","useStaticSchema","__name","options","jsonSchemaModified","modify","jsonSchema","createHeadlessForm","useCostCalculator","defaultRegion","estimationOptions","version","selectedRegion","setSelectedRegion","useState","selectedCountry","setSelectedCountry","employerBillingCurrency","setEmployerBillingCurrency","countries","isLoadingCountries","useCostCalculatorCountries","currencies","isLoadingCurrencies","useCompanyCurrencies","jsonSchemaRegionSlug","jsonSchemaRegionFields","isLoadingRegionFields","useRegionFields","costCalculatorEstimationMutation","useCostCalculatorEstimation","employeeBillingCurrency","salaryField","salaryFieldPresentation","customFields","useMemo","props","SalaryField","fieldsJSONSchema","onSubmit","values","validationSchema","err","resolve","reject","buildPayload","response","error","onCountryChange","country","currentCountry","value","onRegionChange","region","onChangeCurrency","currency","selectedCurrency","c","regionField","field","regions","string","currencyField","countryField","resetForm","allFields","buildValidationSchema","handleValidation","errors","parsedValues","parseJSFToValidate","ValidationError","iterateResult","iterateErrors","acc","key","handleValidationResult","combinedInnerErrors","combinedValues","salary","rest","parsedStaticFields","parsedRegionFields","buildValidationSchema","fields","fieldsSchema","fieldsSchemaAcc","field","object","__name","formatBenefits","benefits","needle","acc","key","benefitTierSlug","benefitEntry","mapValueToEmployment","value","estimationOptions","version","buildPayload","values","defaultEstimationOptions","employments","v"]}
|
package/dist/chunk-C3KZEPUZ.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{f as l,j as u,o as c,s as m,w as d}from"./chunk-FQNVKX3N.js";import{d as a}from"./chunk-3ZWDIEEM.js";import{a as e}from"./chunk-P37U34EQ.js";import{useMutation as C,useQuery as s}from"@tanstack/react-query";import{createHeadlessForm as y,modify as h}from"@remoteoss/json-schema-form";var b=e(({includePremiumBenefits:t})=>{let{client:i}=a();return s({queryKey:["cost-calculator-countries",t],queryFn:e(()=>c({client:i,headers:{Authorization:""},query:{include_premium_benefits:t}}),"queryFn"),select:e(o=>o.data?.data.map(r=>({value:r.region_slug,label:r.name,childRegions:r.child_regions,hasAdditionalFields:r.has_additional_fields,regionSlug:r.region_slug,currency:r.currency.code})),"select")})},"useCostCalculatorCountries"),x=e(()=>{let{client:t}=a();return s({queryKey:["company-currencies"],queryFn:e(()=>d({client:t,headers:{Authorization:""}}),"queryFn"),select:e(i=>i.data?.data?.company_currencies.map(o=>({value:o.slug,label:o.code})),"select")})},"useCompanyCurrencies"),P=e(()=>{let{client:t}=a();return C({mutationFn:e(i=>l({client:t,headers:{Authorization:""},body:i}),"mutationFn")})},"useCostCalculatorEstimation"),A=e(()=>{let{client:t}=a();return C({mutationFn:e(i=>u({client:t,headers:{Authorization:""},body:i}),"mutationFn")})},"useCostCalculatorEstimationPdf"),M=e((t,{includePremiumBenefits:i,options:o})=>{let{client:r}=a();return s({queryKey:["cost-calculator-region-fields",t,i],queryFn:e(()=>m({client:r,headers:{Authorization:""},path:{slug:t},query:{include_premium_benefits:i}}),"queryFn"),enabled:!!t,select:e(({data:f})=>{let n=f?.data?.schema||{};if(o&&o.jsfModify){let{schema:p}=h(n,o.jsfModify);n=p}return y(n)},"select")})},"useRegionFields");export{b as a,x as b,P as c,A as d,M as e};
|
|
2
|
-
//# sourceMappingURL=chunk-C3KZEPUZ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/CostCalculator/api.ts"],"sourcesContent":["import {\n CostCalculatorEstimateParams,\n getIndexCompanyCurrency,\n getIndexCountry,\n getShowRegionField,\n postCreateEstimation,\n postCreateEstimationPdf,\n} from '@/src/client';\nimport { Client } from '@hey-api/client-fetch';\nimport { useClient } from '@/src/context';\nimport { useMutation, useQuery } from '@tanstack/react-query';\nimport { CostCalculatorEstimationOptions } from '@/src/flows/CostCalculator/types';\nimport { JSFModify } from '@/src/flows/types';\nimport { createHeadlessForm, modify } from '@remoteoss/json-schema-form';\n\n/**\n * Hook to fetch the countries for the cost calculator.\n * @returns\n */\nexport const useCostCalculatorCountries = ({\n includePremiumBenefits,\n}: {\n includePremiumBenefits: CostCalculatorEstimationOptions['includePremiumBenefits'];\n}) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['cost-calculator-countries', includePremiumBenefits],\n queryFn: () => {\n return getIndexCountry({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n query: {\n include_premium_benefits: includePremiumBenefits,\n },\n });\n },\n select: (data) =>\n data.data?.data.map((country) => ({\n value: country.region_slug,\n label: country.name,\n childRegions: country.child_regions,\n hasAdditionalFields: country.has_additional_fields,\n regionSlug: country.region_slug,\n currency: country.currency.code,\n })),\n });\n};\n\n/**\n * Hook to fetch the company currencies.\n * @returns\n */\nexport const useCompanyCurrencies = () => {\n const { client } = useClient();\n\n return useQuery({\n queryKey: ['company-currencies'],\n queryFn: () => {\n return getIndexCompanyCurrency({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n });\n },\n select: (data) =>\n data.data?.data?.company_currencies.map((currency) => ({\n value: currency.slug,\n label: currency.code,\n })),\n });\n};\n\n/**\n * Hook to create an estimation.\n * @returns\n */\nexport const useCostCalculatorEstimation = () => {\n const { client } = useClient();\n\n return useMutation({\n mutationFn: (payload: CostCalculatorEstimateParams) => {\n return postCreateEstimation({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n });\n },\n });\n};\n\n/**\n * Custom hook to create a PDF estimation.\n *\n * @returns\n */\nexport const useCostCalculatorEstimationPdf = () => {\n const { client } = useClient();\n\n return useMutation({\n mutationFn: (payload: CostCalculatorEstimateParams) => {\n return postCreateEstimationPdf({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n });\n },\n });\n};\n\n/**\n * Hook to fetch the region fields.\n * @param region\n * @returns\n */\nexport const useRegionFields = (\n region: string | undefined,\n {\n includePremiumBenefits,\n options,\n }: {\n includePremiumBenefits: CostCalculatorEstimationOptions['includePremiumBenefits'];\n options?: {\n jsfModify?: JSFModify;\n };\n },\n) => {\n const { client } = useClient();\n\n return useQuery({\n queryKey: ['cost-calculator-region-fields', region, includePremiumBenefits],\n queryFn: () => {\n return getShowRegionField({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: { slug: region as string },\n query: {\n include_premium_benefits: includePremiumBenefits,\n },\n });\n },\n enabled: !!region,\n select: ({ data }) => {\n let jsfSchema = data?.data?.schema || {};\n if (options && options.jsfModify) {\n const { schema } = modify(jsfSchema, options.jsfModify);\n jsfSchema = schema;\n }\n return createHeadlessForm(jsfSchema);\n },\n });\n};\n"],"mappings":"oJAUA,OAAS,eAAAA,EAAa,YAAAC,MAAgB,wBAGtC,OAAS,sBAAAC,EAAoB,UAAAC,MAAc,8BAMpC,IAAMC,EAA6BC,EAAA,CAAC,CACzC,uBAAAC,CACF,IAEM,CACJ,GAAM,CAAE,OAAAC,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAS,CACd,SAAU,CAAC,4BAA6BH,CAAsB,EAC9D,QAASD,EAAA,IACAK,EAAgB,CACrB,OAAQH,EACR,QAAS,CACP,cAAe,EACjB,EACA,MAAO,CACL,yBAA0BD,CAC5B,CACF,CAAC,EATM,WAWT,OAAQD,EAACM,GACPA,EAAK,MAAM,KAAK,IAAKC,IAAa,CAChC,MAAOA,EAAQ,YACf,MAAOA,EAAQ,KACf,aAAcA,EAAQ,cACtB,oBAAqBA,EAAQ,sBAC7B,WAAYA,EAAQ,YACpB,SAAUA,EAAQ,SAAS,IAC7B,EAAE,EARI,SASV,CAAC,CACH,EA7B0C,8BAmC7BC,EAAuBR,EAAA,IAAM,CACxC,GAAM,CAAE,OAAAE,CAAO,EAAIC,EAAU,EAE7B,OAAOC,EAAS,CACd,SAAU,CAAC,oBAAoB,EAC/B,QAASJ,EAAA,IACAS,EAAwB,CAC7B,OAAQP,EACR,QAAS,CACP,cAAe,EACjB,CACF,CAAC,EANM,WAQT,OAAQF,EAACM,GACPA,EAAK,MAAM,MAAM,mBAAmB,IAAKI,IAAc,CACrD,MAAOA,EAAS,KAChB,MAAOA,EAAS,IAClB,EAAE,EAJI,SAKV,CAAC,CACH,EAnBoC,wBAyBvBC,EAA8BX,EAAA,IAAM,CAC/C,GAAM,CAAE,OAAAE,CAAO,EAAIC,EAAU,EAE7B,OAAOS,EAAY,CACjB,WAAYZ,EAACa,GACJC,EAAqB,CAC1B,OAAQZ,EACR,QAAS,CACP,cAAe,EACjB,EACA,KAAMW,CACR,CAAC,EAPS,aASd,CAAC,CACH,EAd2C,+BAqB9BE,EAAiCf,EAAA,IAAM,CAClD,GAAM,CAAE,OAAAE,CAAO,EAAIC,EAAU,EAE7B,OAAOS,EAAY,CACjB,WAAYZ,EAACa,GACJG,EAAwB,CAC7B,OAAQd,EACR,QAAS,CACP,cAAe,EACjB,EACA,KAAMW,CACR,CAAC,EAPS,aASd,CAAC,CACH,EAd8C,kCAqBjCI,EAAkBjB,EAAA,CAC7BkB,EACA,CACE,uBAAAjB,EACA,QAAAkB,CACF,IAMG,CACH,GAAM,CAAE,OAAAjB,CAAO,EAAIC,EAAU,EAE7B,OAAOC,EAAS,CACd,SAAU,CAAC,gCAAiCc,EAAQjB,CAAsB,EAC1E,QAASD,EAAA,IACAoB,EAAmB,CACxB,OAAQlB,EACR,QAAS,CACP,cAAe,EACjB,EACA,KAAM,CAAE,KAAMgB,CAAiB,EAC/B,MAAO,CACL,yBAA0BjB,CAC5B,CACF,CAAC,EAVM,WAYT,QAAS,CAAC,CAACiB,EACX,OAAQlB,EAAA,CAAC,CAAE,KAAAM,CAAK,IAAM,CACpB,IAAIe,EAAYf,GAAM,MAAM,QAAU,CAAC,EACvC,GAAIa,GAAWA,EAAQ,UAAW,CAChC,GAAM,CAAE,OAAAG,CAAO,EAAIC,EAAOF,EAAWF,EAAQ,SAAS,EACtDE,EAAYC,CACd,CACA,OAAOE,EAAmBH,CAAS,CACrC,EAPQ,SAQV,CAAC,CACH,EAtC+B","names":["useMutation","useQuery","createHeadlessForm","modify","useCostCalculatorCountries","__name","includePremiumBenefits","client","useClient","useQuery","getIndexCountry","data","country","useCompanyCurrencies","getIndexCompanyCurrency","currency","useCostCalculatorEstimation","useMutation","payload","postCreateEstimation","useCostCalculatorEstimationPdf","postCreateEstimationPdf","useRegionFields","region","options","getShowRegionField","jsfSchema","schema","modify","createHeadlessForm"]}
|
package/dist/chunk-D24ATLAM.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as m,b as l}from"./chunk-2NDBK2EZ.js";import{a as n}from"./chunk-G4NBJTHB.js";import{a as i}from"./chunk-JNAFD452.js";import{b as a}from"./chunk-SHFIZENN.js";import{b as s}from"./chunk-HGLI6PUM.js";import{a as o}from"./chunk-P37U34EQ.js";import{Info as d}from"lucide-react";var e={extraPayments:4466822781709};import{Fragment as x,jsx as t,jsxs as r}from"react/jsx-runtime";function z({grossSalary:c,currency:p,hasExtraStatutoryPayment:u=!1}){let f=i();return r("div",{children:[r("div",{className:"flex justify-between items-center mb-2",children:[r("div",{className:"flex items-center gap-2",children:[t("h3",{className:"font-medium text-primary-foreground",children:"Gross Salary"}),u&&t(m,{content:r(x,{children:[t("span",{children:"This country respects extra payments on top of the gross salary."}),t(l,{zendeskId:e.extraPayments.toString(),zendeskURL:"#",Trigger:t("button",{onClick:()=>{let y=e.extraPayments;f.setSearchParams({articleId:y.toString()||""})},className:"text-blue-500 hover:underline block mt-1 text-xs bg-transparent border-none cursor-pointer p-0",children:"Learn more"})})]}),children:r(a,{variant:"ghost",size:"icon",className:"h-4 w-4 p-0 mt-2",children:[t(d,{className:"h-3 w-3 text-gray-400"}),t("span",{className:"sr-only",children:"Info"})]})})]}),t("span",{className:"font-semibold text-lg",children:s(c,p)})]}),t(n,{})]})}o(z,"CostCalculatorGrossSalary");export{z as a};
|
|
2
|
-
//# sourceMappingURL=chunk-D24ATLAM.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/CostCalculator/Results/CostCalculatorGrossSalary.tsx","../src/components/shared/zendesk-drawer/utils.ts"],"sourcesContent":["import { Separator } from '@/src/components/ui/separator';\nimport { formatCurrency } from '@/src/lib/utils';\nimport { BasicTooltip } from '@/src/components/ui/basic-tooltip';\nimport { Button } from '@/src/components/ui/button';\nimport { useRouter } from '@/src/lib/router';\nimport { Info } from 'lucide-react';\nimport { ZendeskDrawer } from '@/src/components/shared/zendesk-drawer/ZendeskDrawer';\nimport { zendeskArticles } from '@/src/components/shared/zendesk-drawer/utils';\n\ntype CostCalculatorGrossSalaryProps = {\n grossSalary: number;\n currency: string;\n hasExtraStatutoryPayment?: boolean;\n};\n\nexport function CostCalculatorGrossSalary({\n grossSalary,\n currency,\n hasExtraStatutoryPayment = false,\n}: CostCalculatorGrossSalaryProps) {\n const router = useRouter();\n return (\n <div>\n <div className=\"flex justify-between items-center mb-2\">\n <div className=\"flex items-center gap-2\">\n <h3 className=\"font-medium text-primary-foreground\">Gross Salary</h3>\n {hasExtraStatutoryPayment && (\n <BasicTooltip\n content={\n <>\n <span>\n This country respects extra payments on top of the gross\n salary.\n </span>\n <ZendeskDrawer\n zendeskId={zendeskArticles.extraPayments.toString()}\n zendeskURL={'#'}\n Trigger={\n <button\n onClick={() => {\n const articleId = zendeskArticles.extraPayments;\n router.setSearchParams({\n articleId: articleId.toString() || '',\n });\n }}\n className=\"text-blue-500 hover:underline block mt-1 text-xs bg-transparent border-none cursor-pointer p-0\"\n >\n Learn more\n </button>\n }\n />\n </>\n }\n >\n <Button variant=\"ghost\" size=\"icon\" className=\"h-4 w-4 p-0 mt-2\">\n <Info className=\"h-3 w-3 text-gray-400\" />\n <span className=\"sr-only\">Info</span>\n </Button>\n </BasicTooltip>\n )}\n </div>\n <span className=\"font-semibold text-lg\">\n {formatCurrency(grossSalary, currency)}\n </span>\n </div>\n <Separator />\n </div>\n );\n}\n","export const zendeskArticles = {\n extraPayments: 4466822781709,\n};\n"],"mappings":"uPAKA,OAAS,QAAAA,MAAY,eCLd,IAAMC,EAAkB,CAC7B,cAAe,aACjB,EDuBU,OAIM,YAAAC,EAJN,OAAAC,EAIM,QAAAC,MAJN,oBAVH,SAASC,EAA0B,CACxC,YAAAC,EACA,SAAAC,EACA,yBAAAC,EAA2B,EAC7B,EAAmC,CACjC,IAAMC,EAASC,EAAU,EACzB,OACEN,EAAC,OACC,UAAAA,EAAC,OAAI,UAAU,yCACb,UAAAA,EAAC,OAAI,UAAU,0BACb,UAAAD,EAAC,MAAG,UAAU,sCAAsC,wBAAY,EAC/DK,GACCL,EAACQ,EAAA,CACC,QACEP,EAAAF,EAAA,CACE,UAAAC,EAAC,QAAK,4EAGN,EACAA,EAACS,EAAA,CACC,UAAWC,EAAgB,cAAc,SAAS,EAClD,WAAY,IACZ,QACEV,EAAC,UACC,QAAS,IAAM,CACb,IAAMW,EAAYD,EAAgB,cAClCJ,EAAO,gBAAgB,CACrB,UAAWK,EAAU,SAAS,GAAK,EACrC,CAAC,CACH,EACA,UAAU,iGACX,sBAED,EAEJ,GACF,EAGF,SAAAV,EAACW,EAAA,CAAO,QAAQ,QAAQ,KAAK,OAAO,UAAU,mBAC5C,UAAAZ,EAACa,EAAA,CAAK,UAAU,wBAAwB,EACxCb,EAAC,QAAK,UAAU,UAAU,gBAAI,GAChC,EACF,GAEJ,EACAA,EAAC,QAAK,UAAU,wBACb,SAAAc,EAAeX,EAAaC,CAAQ,EACvC,GACF,EACAJ,EAACe,EAAA,EAAU,GACb,CAEJ,CArDgBC,EAAAd,EAAA","names":["Info","zendeskArticles","Fragment","jsx","jsxs","CostCalculatorGrossSalary","grossSalary","currency","hasExtraStatutoryPayment","router","useRouter","BasicTooltip","ZendeskDrawer","zendeskArticles","articleId","Button","Info","formatCurrency","Separator","__name"]}
|
package/dist/chunk-E6DC4DXP.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as A}from"./chunk-WVJDCDGZ.js";import{b as M}from"./chunk-Z5WMKCRJ.js";import{d as F,g as C,h as g,i as S,k as j,l as w,n as E,p as v,q as O,r as q,t as P,u as x,x as V,z}from"./chunk-FQNVKX3N.js";import{d as a}from"./chunk-3ZWDIEEM.js";import{a as b}from"./chunk-MXFDOIUA.js";import{a as n}from"./chunk-P37U34EQ.js";import{createHeadlessForm as d,modify as h}from"@remoteoss/json-schema-form";import{useMutation as m,useQuery as f}from"@tanstack/react-query";var Z=n(e=>{let{client:r}=a();return f({queryKey:["employment",e],retry:!1,enabled:!!e,select:n(({data:t})=>t?.data.employment,"select"),queryFn:n(async()=>{let t=await O({client:r,headers:{Authorization:""},path:{employment_id:e}});if(t.error||!t.data)throw new Error("Failed to fetch employment data");return t},"queryFn")})},"useEmployment"),$=n(e=>{let{client:r}=a();return f({queryKey:["company",e],retry:!1,enabled:!!e,queryFn:n(async()=>{let t=await w({client:r,headers:{Authorization:""},path:{company_id:e}});if(t.error||!t.data)throw new Error("Failed to fetch employment data");return t},"queryFn"),select:n(({data:t})=>t.data.company,"select")})},"useCompany"),ee=n(e=>{let{client:r}=a();return f({queryKey:["benefit-offers",e],retry:!1,enabled:!!e,queryFn:n(async()=>C({client:r,headers:{Authorization:""},path:{employment_id:e}}).then(t=>{if(t.error||!t.data)throw new Error("Failed to fetch benefit offers data");return t}),"queryFn"),select:n(({data:t})=>t?.data?.reduce((o,s)=>({...o,[s.benefit_group.slug]:{value:s.benefit_tier?.slug??"no",...s.benefit_group?.filter?.slug?{filter:s.benefit_group?.filter?.slug}:{}}}),{}),"select")})},"useBenefitOffers"),te=n(()=>{let{client:e}=a();return m({mutationFn:n(r=>V({client:e,headers:{Authorization:""},path:r}),"mutationFn")})},"useEmploymentInvite"),ne=n(()=>{let{client:e}=a();return m({mutationFn:n(r=>j({client:e,headers:{Authorization:""},body:r}),"mutationFn")})},"useCreateReserveInvoice"),re=n(({countryCode:e,form:r,fieldValues:t,options:o,query:s={}})=>{let{client:i}=a(),c=o?.jsonSchemaVersion?.form_schema?.[r]?{json_schema_version:o.jsonSchemaVersion.form_schema[r]}:{};return f({queryKey:["onboarding-json-schema-form",e,r],retry:!1,queryFn:n(async()=>{let l=await E({client:i,headers:{Authorization:""},path:{country_code:e,form:r},query:{skip_benefits:!0,...s,...c}});if(l.error||!l.data)throw new Error("Failed to fetch onboarding schema");return l},"queryFn"),enabled:o?.queryOptions?.enabled,select:n(({data:l})=>{let u=l?.data||{};if(o&&o.jsfModify){let{schema:y}=h(u,o.jsfModify);u=y}let k=M(u.properties||{},"money").reduce((y,_)=>(y[_]=b(t[_]),y),{}),U={...t,...k};return{meta:{"x-jsf-fieldsets":u["x-jsf-fieldsets"]},...d(u,{initialValues:U})}},"select")})},"useJSONSchemaForm"),oe=n((e,r,t)=>{let o=t?.jsonSchemaVersion?.benefit_offers_form_schema?{json_schema_version:t.jsonSchemaVersion.benefit_offers_form_schema}:{},{client:s}=a();return f({queryKey:["benefit-offers-schema",e],retry:!1,enabled:!!e,queryFn:n(async()=>{let i=await v({client:s,headers:{Authorization:""},path:{employment_id:e},query:o});if(i.error||!i.data)throw new Error("Failed to fetch benefit offers schema");return i},"queryFn"),select:n(({data:i})=>{let c=i?.data?.schema||{};if(t&&t.jsfModify?.benefits){let{schema:p}=h(c,t.jsfModify.benefits);c=p}let l=Object.keys(r).length>0;return d(c,{initialValues:l?{...r}:{}})},"select")})},"useBenefitOffersSchema"),se=n(e=>{let{client:r}=a(),t=e?.jsonSchemaVersion?.form_schema?.employment_basic_information?{json_schema_version:e.jsonSchemaVersion.form_schema.employment_basic_information}:{};return m({mutationFn:n(o=>F({client:r,headers:{Authorization:""},body:o,query:{...t}}),"mutationFn")})},"useCreateEmployment"),ae=n(e=>{let{client:r}=a(),t={employment_basic_information_json_schema_version:e?.jsonSchemaVersion?.form_schema?.employment_basic_information,employment_contract_details_json_schema_version:e?.jsonSchemaVersion?.form_schema?.contract_details},o=Object.fromEntries(Object.entries(t).filter(([,s])=>s!==void 0));return m({mutationFn:n(({employmentId:s,...i})=>q({client:r,headers:{Authorization:""},body:i,path:{employment_id:s},query:{skip_benefits:!0,...o}}),"mutationFn")})},"useUpdateEmployment"),ie=n(e=>{let{client:r}=a();return m({mutationFn:n(({employmentId:t,...o})=>{let s=e?.jsonSchemaVersion?.benefit_offers_form_schema?{json_schema_version:e.jsonSchemaVersion.benefit_offers_form_schema}:{};return g({client:r,headers:{Authorization:""},body:o,path:{employment_id:t},query:{...s}})},"mutationFn")})},"useUpdateBenefitsOffers"),me=n(()=>{let{client:e}=a();return m({mutationFn:n(r=>S({client:e,headers:{Authorization:""},body:r}),"mutationFn")})},"useMagicLink"),B=n(e=>{let{client:r}=a();return f({...e,queryKey:["countries"],retry:!1,queryFn:n(async()=>{let t=await x({client:r,headers:{Authorization:""}});if(t.error||!t.data)throw new Error("Failed to fetch supported countries");return t},"queryFn"),select:n(({data:t})=>t?.data?.map(o=>({label:o.name,value:o.code}))||[],"select")})},"useCountries"),ce=n(e=>{let{data:r,isLoading:t}=B(e?.queryOptions),{schema:o}=h(A.data.schema,e?.jsfModify||{}),s=d(o);if(r){let i=s.fields.find(c=>c.name==="country");i&&(i.options=r)}return{isLoading:t,selectCountryForm:s}},"useCountriesSchemaField"),le=n(()=>{let{client:e}=a();return m({mutationFn:n(r=>z({client:e,headers:{Authorization:""},body:r}),"mutationFn")})},"useConvertCurrency"),ue=n(()=>{let{client:e}=a();return m({mutationFn:n(({employmentId:r,...t})=>P({client:e,headers:{Authorization:""},path:{employment_id:r},body:t}),"mutationFn")})},"useUpsertContractEligibility");export{Z as a,$ as b,ee as c,te as d,ne as e,re as f,oe as g,se as h,ae as i,ie as j,me as k,ce as l,le as m,ue as n};
|
|
2
|
-
//# sourceMappingURL=chunk-E6DC4DXP.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/Onboarding/api.ts"],"sourcesContent":["import {\n ConvertCurrencyParams,\n CreateContractEligibilityParams,\n EmploymentCreateParams,\n EmploymentFullParams,\n getIndexBenefitOffer,\n getShowCompany,\n getShowEmployment,\n getShowFormCountry,\n getShowSchema,\n getSupportedCountry,\n MagicLinkParams,\n patchUpdateEmployment2,\n postConvertCurrencyConverter,\n postCreateContractEligibility,\n postCreateEmployment2,\n postCreateRiskReserve,\n postGenerateMagicLink,\n postInviteEmploymentInvitation,\n PostInviteEmploymentInvitationData,\n putUpdateBenefitOffer,\n UnifiedEmploymentUpsertBenefitOffersRequest,\n} from '@/src/client';\nimport { convertToCents } from '@/src/components/form/utils';\nimport { useClient } from '@/src/context';\nimport { selectCountryStepSchema } from '@/src/flows/Onboarding/json-schemas/selectCountryStep';\nimport { OnboardingFlowParams } from '@/src/flows/Onboarding/types';\nimport { FlowOptions, JSONSchemaFormType } from '@/src/flows/types';\nimport { findFieldsByType } from '@/src/flows/utils';\nimport { JSFFieldset } from '@/src/types/remoteFlows';\nimport { Client } from '@hey-api/client-fetch';\nimport { createHeadlessForm, modify } from '@remoteoss/json-schema-form';\nimport { useMutation, useQuery } from '@tanstack/react-query';\nimport { FieldValues } from 'react-hook-form';\n\nexport const useEmployment = (employmentId: string | undefined) => {\n const { client } = useClient();\n\n return useQuery({\n queryKey: ['employment', employmentId],\n retry: false,\n enabled: !!employmentId,\n select: ({ data }) => {\n return data?.data.employment;\n },\n queryFn: async () => {\n const response = await getShowEmployment({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n employment_id: employmentId as string,\n },\n });\n\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch employment data');\n }\n\n return response;\n },\n });\n};\n\nexport const useCompany = (companyId: string) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['company', companyId],\n retry: false,\n enabled: !!companyId,\n queryFn: async () => {\n const response = await getShowCompany({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n company_id: companyId,\n },\n });\n\n if (response.error || !response.data) {\n throw new Error('Failed to fetch employment data');\n }\n\n return response;\n },\n select: ({ data }) => {\n return data.data.company;\n },\n });\n};\n\nexport const useBenefitOffers = (employmentId: string | undefined) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['benefit-offers', employmentId],\n retry: false,\n enabled: !!employmentId,\n queryFn: async () => {\n return getIndexBenefitOffer({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n employment_id: employmentId as string,\n },\n }).then((response) => {\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch benefit offers data');\n }\n\n return response;\n });\n },\n select: ({ data }) =>\n data?.data?.reduce(\n (acc, item) => {\n return {\n ...acc,\n [item.benefit_group.slug]: {\n value: item.benefit_tier?.slug ?? 'no',\n ...(item.benefit_group?.filter?.slug\n ? { filter: item.benefit_group?.filter?.slug }\n : {}),\n },\n };\n },\n {} as Record<string, { value: string }>,\n ),\n });\n};\n/**\n * Use this hook to invite an employee to the onboarding flow\n * @returns\n */\nexport const useEmploymentInvite = () => {\n const { client } = useClient();\n\n return useMutation({\n mutationFn: (payload: PostInviteEmploymentInvitationData['path']) => {\n return postInviteEmploymentInvitation({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: payload,\n });\n },\n });\n};\n\nexport const useCreateReserveInvoice = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (payload: { employment_slug: string }) => {\n return postCreateRiskReserve({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n });\n },\n });\n};\n\n/**\n * Use this hook to get the JSON schema form for the onboarding flow\n * @param param0\n * @returns\n */\nexport const useJSONSchemaForm = ({\n countryCode,\n form,\n fieldValues,\n options,\n query = {},\n}: {\n countryCode: string;\n form: JSONSchemaFormType;\n fieldValues: FieldValues;\n options?: FlowOptions & { queryOptions?: { enabled?: boolean } };\n query?: Record<string, unknown>;\n}) => {\n const { client } = useClient();\n const jsonSchemaQueryParam = options?.jsonSchemaVersion?.form_schema?.[form]\n ? {\n json_schema_version: options.jsonSchemaVersion.form_schema[form],\n }\n : {};\n return useQuery({\n queryKey: ['onboarding-json-schema-form', countryCode, form],\n retry: false,\n queryFn: async () => {\n const response = await getShowFormCountry({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n country_code: countryCode,\n form: form,\n },\n query: {\n skip_benefits: true,\n ...query,\n ...jsonSchemaQueryParam,\n },\n });\n\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch onboarding schema');\n }\n\n return response;\n },\n enabled: options?.queryOptions?.enabled,\n select: ({ data }) => {\n let jsfSchema = data?.data || {};\n if (options && options.jsfModify) {\n const { schema } = modify(jsfSchema, options.jsfModify);\n jsfSchema = schema;\n }\n\n // Contract details contains x-jsf-logic that need to be calculated every time a form value changes\n // In particular there are calculations involving the annual_gross_salary field. However this field value doesn't get\n // here in cents. So we need to convert the money fields to cents, so that the calculations are correct.\n const moneyFields = findFieldsByType(jsfSchema.properties || {}, 'money');\n const moneyFieldsData = moneyFields.reduce<Record<string, number | null>>(\n (acc, field) => {\n acc[field] = convertToCents(fieldValues[field]);\n return acc;\n },\n {},\n );\n\n const initialValues = {\n ...fieldValues,\n ...moneyFieldsData,\n };\n\n return {\n meta: {\n 'x-jsf-fieldsets': jsfSchema['x-jsf-fieldsets'] as JSFFieldset,\n },\n ...createHeadlessForm(jsfSchema, {\n initialValues,\n }),\n };\n },\n });\n};\n\nexport const useBenefitOffersSchema = (\n employmentId: string,\n fieldValues: FieldValues,\n options: OnboardingFlowParams['options'],\n) => {\n const jsonSchemaQueryParam = options?.jsonSchemaVersion\n ?.benefit_offers_form_schema\n ? {\n json_schema_version:\n options.jsonSchemaVersion.benefit_offers_form_schema,\n }\n : {};\n const { client } = useClient();\n return useQuery({\n queryKey: ['benefit-offers-schema', employmentId],\n retry: false,\n enabled: !!employmentId,\n queryFn: async () => {\n const response = await getShowSchema({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n employment_id: employmentId,\n },\n query: jsonSchemaQueryParam,\n });\n\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch benefit offers schema');\n }\n\n return response;\n },\n select: ({ data }) => {\n let jsfSchema = data?.data?.schema || {};\n\n if (options && options.jsfModify?.benefits) {\n const { schema } = modify(jsfSchema, options.jsfModify.benefits);\n jsfSchema = schema;\n }\n const hasFieldValues = Object.keys(fieldValues).length > 0;\n const result = createHeadlessForm(jsfSchema, {\n // we need to clone the fieldValues to prevent side effects\n // if we don't do this, the benefits get included in the other steps\n initialValues: hasFieldValues ? { ...fieldValues } : {},\n });\n return result;\n },\n });\n};\n\n/**\n * Use this hook to create an employment\n * @returns\n */\nexport const useCreateEmployment = (\n options?: OnboardingFlowParams['options'],\n) => {\n const { client } = useClient();\n const jsonSchemaQueryParam = options?.jsonSchemaVersion?.form_schema\n ?.employment_basic_information\n ? {\n json_schema_version:\n options.jsonSchemaVersion.form_schema.employment_basic_information,\n }\n : {};\n return useMutation({\n mutationFn: (payload: EmploymentCreateParams) => {\n return postCreateEmployment2({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n query: {\n ...jsonSchemaQueryParam,\n },\n });\n },\n });\n};\n\nexport const useUpdateEmployment = (\n options?: OnboardingFlowParams['options'],\n) => {\n const { client } = useClient();\n const jsonSchemaQueryParams = {\n employment_basic_information_json_schema_version:\n options?.jsonSchemaVersion?.form_schema?.employment_basic_information,\n employment_contract_details_json_schema_version:\n options?.jsonSchemaVersion?.form_schema?.contract_details,\n };\n\n const filteredQueryParams = Object.fromEntries(\n Object.entries(jsonSchemaQueryParams).filter(\n ([, value]) => value !== undefined,\n ),\n );\n\n return useMutation({\n mutationFn: ({\n employmentId,\n ...payload\n }: EmploymentFullParams & { employmentId: string }) => {\n return patchUpdateEmployment2({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n path: {\n employment_id: employmentId,\n },\n query: {\n skip_benefits: true,\n ...filteredQueryParams,\n },\n });\n },\n });\n};\n\nexport const useUpdateBenefitsOffers = (\n options?: OnboardingFlowParams['options'],\n) => {\n const { client } = useClient();\n return useMutation({\n mutationFn: ({\n employmentId,\n ...payload\n }: UnifiedEmploymentUpsertBenefitOffersRequest & {\n employmentId: string;\n }) => {\n const jsonSchemaQueryParam = options?.jsonSchemaVersion\n ?.benefit_offers_form_schema\n ? {\n json_schema_version:\n options.jsonSchemaVersion.benefit_offers_form_schema,\n }\n : {};\n return putUpdateBenefitOffer({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n path: {\n employment_id: employmentId,\n },\n query: {\n ...jsonSchemaQueryParam,\n },\n });\n },\n });\n};\n\nexport const useMagicLink = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (params: MagicLinkParams) => {\n return postGenerateMagicLink({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: params,\n });\n },\n });\n};\n\nconst useCountries = (queryOptions?: { enabled?: boolean }) => {\n const { client } = useClient();\n return useQuery({\n ...queryOptions,\n queryKey: ['countries'],\n retry: false,\n queryFn: async () => {\n const response = await getSupportedCountry({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n });\n\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch supported countries');\n }\n\n return response;\n },\n select: ({ data }) => {\n return (\n data?.data?.map((country) => {\n return {\n label: country.name,\n value: country.code,\n };\n }) || []\n );\n },\n });\n};\n\nexport const useCountriesSchemaField = (\n options?: FlowOptions & { queryOptions?: { enabled?: boolean } },\n) => {\n const { data: countries, isLoading } = useCountries(options?.queryOptions);\n\n const { schema: selectCountrySchema } = modify(\n selectCountryStepSchema.data.schema,\n options?.jsfModify || {},\n );\n\n const selectCountryForm = createHeadlessForm(selectCountrySchema);\n\n if (countries) {\n const countryField = selectCountryForm.fields.find(\n (field) => field.name === 'country',\n );\n if (countryField) {\n countryField.options = countries;\n }\n }\n\n return {\n isLoading,\n selectCountryForm,\n };\n};\n\nexport const useConvertCurrency = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (payload: ConvertCurrencyParams) => {\n return postConvertCurrencyConverter({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n });\n },\n });\n};\n\nexport const useUpsertContractEligibility = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: ({\n employmentId,\n ...payload\n }: { employmentId: string } & CreateContractEligibilityParams) => {\n return postCreateContractEligibility({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n employment_id: employmentId,\n },\n body: payload,\n });\n },\n });\n};\n"],"mappings":"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","names":["createHeadlessForm","modify","useMutation","useQuery","useEmployment","__name","employmentId","client","useClient","useQuery","data","response","getShowEmployment","useCompany","companyId","getShowCompany","useBenefitOffers","getIndexBenefitOffer","acc","item","useEmploymentInvite","useMutation","payload","postInviteEmploymentInvitation","useCreateReserveInvoice","postCreateRiskReserve","useJSONSchemaForm","countryCode","form","fieldValues","options","query","jsonSchemaQueryParam","getShowFormCountry","jsfSchema","schema","modify","moneyFieldsData","findFieldsByType","field","convertToCents","initialValues","createHeadlessForm","useBenefitOffersSchema","getShowSchema","hasFieldValues","useCreateEmployment","postCreateEmployment2","useUpdateEmployment","jsonSchemaQueryParams","filteredQueryParams","value","patchUpdateEmployment2","useUpdateBenefitsOffers","putUpdateBenefitOffer","useMagicLink","params","postGenerateMagicLink","useCountries","queryOptions","getSupportedCountry","country","useCountriesSchemaField","countries","isLoading","selectCountrySchema","selectCountryStepSchema","selectCountryForm","countryField","useConvertCurrency","postConvertCurrencyConverter","useUpsertContractEligibility","postCreateContractEligibility"]}
|
package/dist/chunk-ERUG7FR3.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as l,b as c}from"./chunk-2NDBK2EZ.js";import{a as i}from"./chunk-G4NBJTHB.js";import{a as m}from"./chunk-JNAFD452.js";import{b as o}from"./chunk-SHFIZENN.js";import{b as a}from"./chunk-HGLI6PUM.js";import{a as n}from"./chunk-P37U34EQ.js";import{Info as x}from"lucide-react";import{Fragment as g,jsx as t,jsxs as r}from"react/jsx-runtime";function P({extraStatutoryPaymentsTotal:d,extraStatutoryPaymentsBreakdown:u,currency:s}){let p=m();return r("div",{children:[r("div",{className:"flex justify-between items-center mb-2",children:[t("h3",{className:"font-medium text-primary-foreground-800",children:"Extra Statutory Payments"}),t("span",{className:"font-semibold text-lg",children:a(d,s)})]}),t(i,{className:"mb-3"}),t("div",{className:"space-y-3 pl-2",children:u.map((e,f)=>r("div",{className:"flex justify-between items-start text-sm",children:[r("div",{className:"flex items-start gap-2",children:[t("span",{children:e.name}),e.description&&t(l,{content:r(g,{children:[t("span",{children:e.description}),e.zendesk_article_url&&t(c,{zendeskId:e.zendesk_article_id,zendeskURL:e.zendesk_article_url,Trigger:t("button",{onClick:()=>{let k=e.zendesk_article_id;p.setSearchParams({articleId:k||""})},className:"text-blue-500 hover:underline block mt-1 text-xs bg-transparent border-none cursor-pointer p-0",children:"Learn more"})})]}),children:r(o,{variant:"ghost",size:"icon",className:"h-4 w-4 p-0",children:[t(x,{className:"h-3 w-3 text-gray-400"}),t("span",{className:"sr-only",children:"Info"})]})})]}),t("span",{children:a(e.amount,s)})]},f))})]})}n(P,"CostCalculatorExtraStatutoryPaymentsBreakdown");export{P as a};
|
|
2
|
-
//# sourceMappingURL=chunk-ERUG7FR3.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/flows/CostCalculator/Results/CostCalculatorExtraStatutoryPaymentsBreakdown.tsx"],"sourcesContent":["import { Info } from 'lucide-react';\n\nimport { Button } from '@/src/components/ui/button';\nimport { Separator } from '@/src/components/ui/separator';\nimport { formatCurrency } from '@/src/lib/utils';\nimport { BasicTooltip } from '@/src/components/ui/basic-tooltip';\nimport { ZendeskDrawer } from '@/src/components/shared/zendesk-drawer/ZendeskDrawer';\nimport { useRouter } from '@/src/lib/router';\n\ntype CostCalculatorExtraStatutoryPaymentsBreakdownProps = {\n extraStatutoryPaymentsTotal: number | null;\n extraStatutoryPaymentsBreakdown: {\n name: string;\n description: string | null;\n zendesk_article_url: string | null;\n zendesk_article_id: string | null;\n amount: number;\n }[];\n currency: string;\n};\n\nexport function CostCalculatorExtraStatutoryPaymentsBreakdown({\n extraStatutoryPaymentsTotal,\n extraStatutoryPaymentsBreakdown,\n currency,\n}: CostCalculatorExtraStatutoryPaymentsBreakdownProps) {\n const router = useRouter();\n\n return (\n <div>\n <div className=\"flex justify-between items-center mb-2\">\n <h3 className=\"font-medium text-primary-foreground-800\">\n Extra Statutory Payments\n </h3>\n <span className=\"font-semibold text-lg\">\n {formatCurrency(extraStatutoryPaymentsTotal, currency)}\n </span>\n </div>\n <Separator className=\"mb-3\" />\n\n <div className=\"space-y-3 pl-2\">\n {extraStatutoryPaymentsBreakdown.map((payment, index) => (\n <div key={index} className=\"flex justify-between items-start text-sm\">\n <div className=\"flex items-start gap-2\">\n <span>{payment.name}</span>\n {payment.description && (\n <BasicTooltip\n content={\n <>\n <span>{payment.description}</span>\n {payment.zendesk_article_url && (\n <ZendeskDrawer\n zendeskId={payment.zendesk_article_id as string}\n zendeskURL={payment.zendesk_article_url as string}\n Trigger={\n <button\n onClick={() => {\n const articleId = payment.zendesk_article_id;\n router.setSearchParams({\n articleId: articleId || '',\n });\n }}\n className=\"text-blue-500 hover:underline block mt-1 text-xs bg-transparent border-none cursor-pointer p-0\"\n >\n Learn more\n </button>\n }\n />\n )}\n </>\n }\n >\n <Button variant=\"ghost\" size=\"icon\" className=\"h-4 w-4 p-0\">\n <Info className=\"h-3 w-3 text-gray-400\" />\n <span className=\"sr-only\">Info</span>\n </Button>\n </BasicTooltip>\n )}\n </div>\n <span>{formatCurrency(payment.amount, currency)}</span>\n </div>\n ))}\n </div>\n </div>\n );\n}\n"],"mappings":"uPAAA,OAAS,QAAAA,MAAY,eA8Bf,OAkBc,YAAAC,EAjBZ,OAAAC,EADF,QAAAC,MAAA,oBATC,SAASC,EAA8C,CAC5D,4BAAAC,EACA,gCAAAC,EACA,SAAAC,CACF,EAAuD,CACrD,IAAMC,EAASC,EAAU,EAEzB,OACEN,EAAC,OACC,UAAAA,EAAC,OAAI,UAAU,yCACb,UAAAD,EAAC,MAAG,UAAU,0CAA0C,oCAExD,EACAA,EAAC,QAAK,UAAU,wBACb,SAAAQ,EAAeL,EAA6BE,CAAQ,EACvD,GACF,EACAL,EAACS,EAAA,CAAU,UAAU,OAAO,EAE5BT,EAAC,OAAI,UAAU,iBACZ,SAAAI,EAAgC,IAAI,CAACM,EAASC,IAC7CV,EAAC,OAAgB,UAAU,2CACzB,UAAAA,EAAC,OAAI,UAAU,yBACb,UAAAD,EAAC,QAAM,SAAAU,EAAQ,KAAK,EACnBA,EAAQ,aACPV,EAACY,EAAA,CACC,QACEX,EAAAF,EAAA,CACE,UAAAC,EAAC,QAAM,SAAAU,EAAQ,YAAY,EAC1BA,EAAQ,qBACPV,EAACa,EAAA,CACC,UAAWH,EAAQ,mBACnB,WAAYA,EAAQ,oBACpB,QACEV,EAAC,UACC,QAAS,IAAM,CACb,IAAMc,EAAYJ,EAAQ,mBAC1BJ,EAAO,gBAAgB,CACrB,UAAWQ,GAAa,EAC1B,CAAC,CACH,EACA,UAAU,iGACX,sBAED,EAEJ,GAEJ,EAGF,SAAAb,EAACc,EAAA,CAAO,QAAQ,QAAQ,KAAK,OAAO,UAAU,cAC5C,UAAAf,EAACgB,EAAA,CAAK,UAAU,wBAAwB,EACxChB,EAAC,QAAK,UAAU,UAAU,gBAAI,GAChC,EACF,GAEJ,EACAA,EAAC,QAAM,SAAAQ,EAAeE,EAAQ,OAAQL,CAAQ,EAAE,IArCxCM,CAsCV,CACD,EACH,GACF,CAEJ,CAhEgBM,EAAAf,EAAA","names":["Info","Fragment","jsx","jsxs","CostCalculatorExtraStatutoryPaymentsBreakdown","extraStatutoryPaymentsTotal","extraStatutoryPaymentsBreakdown","currency","router","useRouter","formatCurrency","Separator","payment","index","BasicTooltip","ZendeskDrawer","articleId","Button","Info","__name"]}
|
package/dist/chunk-FQNVKX3N.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as t}from"./chunk-P37U34EQ.js";import{formDataBodySerializer as i}from"@hey-api/client-fetch";import{createClient as o,createConfig as n}from"@hey-api/client-fetch";var r=o(n({baseUrl:"https://gateway.remote.com/"}));var c=t(e=>(e?.client??r).post({security:[{scheme:"bearer",type:"http"}],url:"/v1/offboardings",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postCreateOffboarding");var h=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/contract-amendments/schema",...e}),"getShowContractAmendmentSchema");var m=t(e=>(e.client??r).post({security:[{scheme:"bearer",type:"http"}],url:"/v1/employments",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postCreateEmployment2"),d=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/help-center-articles/{id}",...e}),"getShowHelpCenterArticle");var y=t(e=>(e.client??r).post({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/cost-calculator/estimation",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postCreateEstimation");var E=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/employments/{employment_id}/benefit-offers",...e}),"getIndexBenefitOffer"),u=t(e=>(e.client??r).put({security:[{scheme:"bearer",type:"http"}],url:"/v1/employments/{employment_id}/benefit-offers",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"putUpdateBenefitOffer");var w=t(e=>(e.client??r).post({security:[{scheme:"bearer",type:"http"}],url:"/v1/magic-link",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postGenerateMagicLink");var C=t(e=>(e?.client??r).post({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/cost-calculator/estimation-pdf",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postCreateEstimationPdf");var T=t(e=>(e.client??r).post({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/risk-reserve",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postCreateRiskReserve"),O=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"}],url:"/v1/companies/{company_id}",...e}),"getShowCompany");var x=t(e=>(e.client??r).post({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/contract-amendments",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postCreateContractAmendment");var f=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/countries/{country_code}/{form}",...e}),"getShowFormCountry");var b=t(e=>(e?.client??r).get({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/cost-calculator/countries",...e}),"getIndexCountry");var P=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/employments/{employment_id}/benefit-offers/schema",...e}),"getShowSchema");var R=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"}],url:"/v1/employments/{employment_id}",...e}),"getShowEmployment"),D=t(e=>(e.client??r).patch({security:[{scheme:"bearer",type:"http"}],url:"/v1/employments/{employment_id}",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"patchUpdateEmployment2");var G=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"}],url:"/v1/cost-calculator/regions/{slug}/fields",...e}),"getShowRegionField");var g=t(e=>(e.client??r).post({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/employments/{employment_id}/contract-eligibility",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postCreateContractEligibility"),I=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"}],url:"/v1/countries",...e}),"getSupportedCountry");var v=t(e=>(e.client??r).post({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/contract-amendments/automatable",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postAutomatableContractAmendment");var S=t(e=>(e?.client??r).get({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/company-currencies",...e}),"getIndexCompanyCurrency");var U=t(e=>(e.client??r).post({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/employments/{employment_id}/invite",...e}),"postInviteEmploymentInvitation");var k=t(e=>(e.client??r).get({security:[{scheme:"bearer",type:"http"},{scheme:"bearer",type:"http"}],url:"/v1/timeoff",...e}),"getIndexTimeoff");var B=t(e=>(e.client??r).post({security:[{scheme:"bearer",type:"http"}],url:"/v1/currency-converter",...e,headers:{"Content-Type":"application/json",...e?.headers}}),"postConvertCurrencyConverter");export{r as a,c as b,h as c,m as d,d as e,y as f,E as g,u as h,w as i,C as j,T as k,O as l,x as m,f as n,b as o,P as p,R as q,D as r,G as s,g as t,I as u,v,S as w,U as x,k as y,B as z};
|
|
2
|
-
//# sourceMappingURL=chunk-FQNVKX3N.js.map
|