@remoteoss/remote-flows 0.7.5 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -7
- package/dist/{chunk-2AOR4YZS.js → chunk-2OYKWBJY.js} +2 -2
- package/dist/{chunk-PCGJH2EO.js → chunk-2VGEHBMK.js} +2 -2
- package/dist/{chunk-V5ENHJL2.js → chunk-3GCWEV4G.js} +2 -2
- package/dist/{chunk-XZ5IR7N3.js → chunk-3KQWGXAR.js} +2 -2
- package/dist/{chunk-WT3QZR6I.js → chunk-3LGFQNYW.js} +2 -2
- package/dist/chunk-466M4PK7.js +2 -0
- package/dist/chunk-466M4PK7.js.map +1 -0
- package/dist/chunk-4F4I7F2P.js +2 -0
- package/dist/chunk-4F4I7F2P.js.map +1 -0
- package/dist/{chunk-7DM7LDK3.js → chunk-5IREEZLM.js} +2 -2
- package/dist/chunk-5PVQUO5Q.js +2 -0
- package/dist/chunk-5PVQUO5Q.js.map +1 -0
- package/dist/{chunk-HCFC46A6.js → chunk-6CU63ESU.js} +2 -2
- package/dist/{chunk-JTC54RNC.js → chunk-6P4XGSZ6.js} +2 -2
- package/dist/chunk-7LZQJ5CL.js +2 -0
- package/dist/chunk-7LZQJ5CL.js.map +1 -0
- package/dist/{chunk-K7CLAEMU.js → chunk-7N2NUY3F.js} +2 -2
- package/dist/{chunk-77WJVEKH.js → chunk-A27ASO7K.js} +2 -2
- package/dist/{chunk-VZB5LUZK.js → chunk-ADE22XT7.js} +2 -2
- package/dist/chunk-AEVZ7GEK.js +2 -0
- package/dist/chunk-AEVZ7GEK.js.map +1 -0
- package/dist/{chunk-SXVOPWRB.js → chunk-AHZSNZSG.js} +2 -2
- package/dist/chunk-AYAQLXJH.js +2 -0
- package/dist/{chunk-NJPNR4DK.js.map → chunk-AYAQLXJH.js.map} +1 -1
- package/dist/{chunk-ONH3EBJZ.js → chunk-BJFZBI3O.js} +2 -2
- package/dist/{chunk-MC6FNME3.js → chunk-C3KZEPUZ.js} +2 -2
- package/dist/{chunk-ZERPSH7S.js → chunk-CQ2QAZBG.js} +2 -2
- package/dist/chunk-DPLXEXMO.js +2 -0
- package/dist/{chunk-RPEWAKDI.js.map → chunk-DPLXEXMO.js.map} +1 -1
- package/dist/chunk-FQNVKX3N.js +2 -0
- package/dist/chunk-FQNVKX3N.js.map +1 -0
- package/dist/{chunk-ZVMBZK3H.js → chunk-G4NBJTHB.js} +2 -2
- package/dist/{chunk-SJVHKOCT.js → chunk-GLOSUWTH.js} +2 -2
- package/dist/{chunk-NVAWIT33.js → chunk-GPS62RDR.js} +2 -2
- package/dist/chunk-HGLI6PUM.js +2 -0
- package/dist/chunk-HGLI6PUM.js.map +1 -0
- package/dist/{chunk-TIHZZ6IF.js → chunk-HQMY3X2R.js} +2 -2
- package/dist/{chunk-Y7P3FLOM.js → chunk-IKYBTQKV.js} +2 -2
- package/dist/{chunk-CEFYPG7Z.js → chunk-IXVV7KPW.js} +2 -2
- package/dist/{chunk-6ZNJ5WMX.js → chunk-IXZAHZ7B.js} +2 -2
- package/dist/{chunk-5HFXSPZZ.js → chunk-KZ6QGSRA.js} +2 -2
- package/dist/{chunk-K6GSGFOD.js → chunk-NXZRK6KL.js} +2 -2
- package/dist/{chunk-J3ZV4EJ5.js → chunk-OGAVWGSY.js} +2 -2
- package/dist/{chunk-SYEPIESJ.js → chunk-OTTIURMN.js} +2 -2
- package/dist/{chunk-4JZ7V73S.js → chunk-PAC52YON.js} +2 -2
- package/dist/{chunk-55OFDAIV.js → chunk-Q5ZUVH3U.js} +2 -2
- package/dist/{chunk-MCWVVCIK.js → chunk-QBV4XS4Z.js} +2 -2
- package/dist/{chunk-HNMDLN2I.js → chunk-QYNAZIHD.js} +2 -2
- package/dist/{chunk-4UKKNARJ.js → chunk-R6OW77R6.js} +2 -2
- package/dist/{chunk-HP4SYBET.js → chunk-S62STPBT.js} +2 -2
- package/dist/{chunk-CAM6PYKR.js → chunk-SHFIZENN.js} +2 -2
- package/dist/chunk-SRZGBJVA.js +2 -0
- package/dist/chunk-SRZGBJVA.js.map +1 -0
- package/dist/{chunk-3QLTEH2U.js → chunk-TMUPJJDK.js} +2 -2
- package/dist/{chunk-VTNGEN34.js → chunk-UNTCBVHB.js} +2 -2
- package/dist/chunk-V6W2SJ4Z.js +2 -0
- package/dist/{chunk-7KQT4QR4.js.map → chunk-V6W2SJ4Z.js.map} +1 -1
- package/dist/{chunk-7NN4M5P2.js → chunk-WFET4MKU.js} +2 -2
- package/dist/{chunk-JQOEHEGL.js → chunk-WJA7PQ2J.js} +2 -2
- package/dist/{chunk-LVACJZSJ.js → chunk-WOUZK5DW.js} +2 -2
- package/dist/chunk-XFY4VAAJ.js +2 -0
- package/dist/chunk-XFY4VAAJ.js.map +1 -0
- package/dist/{chunk-5ZWCZYSA.js → chunk-XQPYSB6Y.js} +2 -2
- package/dist/{chunk-H32UX3PE.js → chunk-YAV236LM.js} +2 -2
- package/dist/chunk-YHSNK7WB.js +2 -0
- package/dist/chunk-YHSNK7WB.js.map +1 -0
- package/dist/{chunk-RUZWAFIN.js → chunk-ZBGBLTFN.js} +2 -2
- package/dist/{chunk-WRZ6WHH7.js → chunk-ZPUELAQZ.js} +2 -2
- package/dist/{chunk-TQYHW6QK.js → chunk-ZVXX43AL.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 +2 -2
- 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 +1 -1
- package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
- package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +1 -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/Results/CostCalculatorBenefitsBreakdown.d.ts +2 -0
- package/dist/flows/CostCalculator/Results/CostCalculatorBenefitsBreakdown.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorContributionsBreakdown.d.ts +1 -0
- package/dist/flows/CostCalculator/Results/CostCalculatorContributionsBreakdown.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorExtraStatutoryPaymentsBreakdown.d.ts +2 -0
- package/dist/flows/CostCalculator/Results/CostCalculatorExtraStatutoryPaymentsBreakdown.js +1 -1
- package/dist/flows/CostCalculator/Results/CostCalculatorGrossSalary.d.ts +2 -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/api.d.ts +1 -1
- package/dist/flows/CostCalculator/api.js +1 -1
- package/dist/flows/CostCalculator/components/SalaryField.d.ts +1 -1
- package/dist/flows/CostCalculator/components/SalaryField.js +1 -1
- package/dist/flows/CostCalculator/context.d.ts +2 -2
- package/dist/flows/CostCalculator/hooks.d.ts +1 -1
- package/dist/flows/CostCalculator/hooks.js +1 -1
- package/dist/flows/CostCalculator/index.d.ts +2 -2
- package/dist/flows/CostCalculator/index.js +1 -1
- package/dist/flows/CostCalculator/types.d.ts +1 -1
- package/dist/flows/CostCalculator/utils.d.ts +2 -2
- package/dist/flows/CostCalculator/utils.js +1 -1
- package/dist/flows/Onboarding/OnboardingFlow.d.ts +2 -2
- package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
- package/dist/flows/Onboarding/api.d.ts +2 -2
- package/dist/flows/Onboarding/api.js +1 -1
- package/dist/flows/Onboarding/components/AnnualGrossSalary.d.ts +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 +2 -2
- 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 +2 -2
- 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 +2 -2
- package/dist/flows/Onboarding/hooks.d.ts +2 -2
- package/dist/flows/Onboarding/hooks.js +1 -1
- package/dist/flows/Onboarding/index.d.ts +2 -2
- 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 +2 -2
- 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/types.d.ts +1 -1
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/{remoteFlows-B-p1H61n.d.ts → remoteFlows-Zmw9pCN3.d.ts} +6 -0
- package/dist/{types.gen-DSJsKiNm.d.ts → types.gen-BqCe1GRY.d.ts} +49 -5
- package/package.json +1 -1
- package/dist/chunk-276MJCIE.js +0 -2
- package/dist/chunk-276MJCIE.js.map +0 -1
- package/dist/chunk-7KQT4QR4.js +0 -2
- package/dist/chunk-E3RHKRLZ.js +0 -2
- package/dist/chunk-E3RHKRLZ.js.map +0 -1
- package/dist/chunk-FBBUL6AE.js +0 -2
- package/dist/chunk-FBBUL6AE.js.map +0 -1
- package/dist/chunk-FL5V45BK.js +0 -2
- package/dist/chunk-FL5V45BK.js.map +0 -1
- package/dist/chunk-FUIAABQ6.js +0 -2
- package/dist/chunk-FUIAABQ6.js.map +0 -1
- package/dist/chunk-ILMVHOL2.js +0 -2
- package/dist/chunk-ILMVHOL2.js.map +0 -1
- package/dist/chunk-INS7FVGA.js +0 -2
- package/dist/chunk-INS7FVGA.js.map +0 -1
- package/dist/chunk-NJPNR4DK.js +0 -2
- package/dist/chunk-QM2ADK6C.js +0 -2
- package/dist/chunk-QM2ADK6C.js.map +0 -1
- package/dist/chunk-RPEWAKDI.js +0 -2
- package/dist/chunk-XJDGWTCQ.js +0 -2
- package/dist/chunk-XJDGWTCQ.js.map +0 -1
- /package/dist/{chunk-2AOR4YZS.js.map → chunk-2OYKWBJY.js.map} +0 -0
- /package/dist/{chunk-PCGJH2EO.js.map → chunk-2VGEHBMK.js.map} +0 -0
- /package/dist/{chunk-V5ENHJL2.js.map → chunk-3GCWEV4G.js.map} +0 -0
- /package/dist/{chunk-XZ5IR7N3.js.map → chunk-3KQWGXAR.js.map} +0 -0
- /package/dist/{chunk-WT3QZR6I.js.map → chunk-3LGFQNYW.js.map} +0 -0
- /package/dist/{chunk-7DM7LDK3.js.map → chunk-5IREEZLM.js.map} +0 -0
- /package/dist/{chunk-HCFC46A6.js.map → chunk-6CU63ESU.js.map} +0 -0
- /package/dist/{chunk-JTC54RNC.js.map → chunk-6P4XGSZ6.js.map} +0 -0
- /package/dist/{chunk-K7CLAEMU.js.map → chunk-7N2NUY3F.js.map} +0 -0
- /package/dist/{chunk-77WJVEKH.js.map → chunk-A27ASO7K.js.map} +0 -0
- /package/dist/{chunk-VZB5LUZK.js.map → chunk-ADE22XT7.js.map} +0 -0
- /package/dist/{chunk-SXVOPWRB.js.map → chunk-AHZSNZSG.js.map} +0 -0
- /package/dist/{chunk-ONH3EBJZ.js.map → chunk-BJFZBI3O.js.map} +0 -0
- /package/dist/{chunk-MC6FNME3.js.map → chunk-C3KZEPUZ.js.map} +0 -0
- /package/dist/{chunk-ZERPSH7S.js.map → chunk-CQ2QAZBG.js.map} +0 -0
- /package/dist/{chunk-ZVMBZK3H.js.map → chunk-G4NBJTHB.js.map} +0 -0
- /package/dist/{chunk-SJVHKOCT.js.map → chunk-GLOSUWTH.js.map} +0 -0
- /package/dist/{chunk-NVAWIT33.js.map → chunk-GPS62RDR.js.map} +0 -0
- /package/dist/{chunk-TIHZZ6IF.js.map → chunk-HQMY3X2R.js.map} +0 -0
- /package/dist/{chunk-Y7P3FLOM.js.map → chunk-IKYBTQKV.js.map} +0 -0
- /package/dist/{chunk-CEFYPG7Z.js.map → chunk-IXVV7KPW.js.map} +0 -0
- /package/dist/{chunk-6ZNJ5WMX.js.map → chunk-IXZAHZ7B.js.map} +0 -0
- /package/dist/{chunk-5HFXSPZZ.js.map → chunk-KZ6QGSRA.js.map} +0 -0
- /package/dist/{chunk-K6GSGFOD.js.map → chunk-NXZRK6KL.js.map} +0 -0
- /package/dist/{chunk-J3ZV4EJ5.js.map → chunk-OGAVWGSY.js.map} +0 -0
- /package/dist/{chunk-SYEPIESJ.js.map → chunk-OTTIURMN.js.map} +0 -0
- /package/dist/{chunk-4JZ7V73S.js.map → chunk-PAC52YON.js.map} +0 -0
- /package/dist/{chunk-55OFDAIV.js.map → chunk-Q5ZUVH3U.js.map} +0 -0
- /package/dist/{chunk-MCWVVCIK.js.map → chunk-QBV4XS4Z.js.map} +0 -0
- /package/dist/{chunk-HNMDLN2I.js.map → chunk-QYNAZIHD.js.map} +0 -0
- /package/dist/{chunk-4UKKNARJ.js.map → chunk-R6OW77R6.js.map} +0 -0
- /package/dist/{chunk-HP4SYBET.js.map → chunk-S62STPBT.js.map} +0 -0
- /package/dist/{chunk-CAM6PYKR.js.map → chunk-SHFIZENN.js.map} +0 -0
- /package/dist/{chunk-3QLTEH2U.js.map → chunk-TMUPJJDK.js.map} +0 -0
- /package/dist/{chunk-VTNGEN34.js.map → chunk-UNTCBVHB.js.map} +0 -0
- /package/dist/{chunk-7NN4M5P2.js.map → chunk-WFET4MKU.js.map} +0 -0
- /package/dist/{chunk-JQOEHEGL.js.map → chunk-WJA7PQ2J.js.map} +0 -0
- /package/dist/{chunk-LVACJZSJ.js.map → chunk-WOUZK5DW.js.map} +0 -0
- /package/dist/{chunk-5ZWCZYSA.js.map → chunk-XQPYSB6Y.js.map} +0 -0
- /package/dist/{chunk-H32UX3PE.js.map → chunk-YAV236LM.js.map} +0 -0
- /package/dist/{chunk-RUZWAFIN.js.map → chunk-ZBGBLTFN.js.map} +0 -0
- /package/dist/{chunk-WRZ6WHH7.js.map → chunk-ZPUELAQZ.js.map} +0 -0
- /package/dist/{chunk-TQYHW6QK.js.map → chunk-ZVXX43AL.js.map} +0 -0
package/README.md
CHANGED
|
@@ -74,13 +74,14 @@ The example app will be available at `http://localhost:3001`. The server handles
|
|
|
74
74
|
|
|
75
75
|
The `RemoteFlows` component serves as a provider for authentication and theming.
|
|
76
76
|
|
|
77
|
-
| Prop | Type | Required | Description
|
|
78
|
-
| ------------- | ----------------------------------------------------------- | -------- |
|
|
79
|
-
| `auth` | `() => Promise<{ accessToken: string, expiresIn: number }>` | Yes | Function to fetch authentication token
|
|
80
|
-
| `
|
|
81
|
-
| `
|
|
82
|
-
| `
|
|
83
|
-
| `
|
|
77
|
+
| Prop | Type | Required | Description |
|
|
78
|
+
| ------------- | ----------------------------------------------------------- | -------- | ------------------------------------------------------------------------------- |
|
|
79
|
+
| `auth` | `() => Promise<{ accessToken: string, expiresIn: number }>` | Yes | Function to fetch authentication token |
|
|
80
|
+
| `authId` | `'default' \| 'client' \|` | No | Id to differenciate between client token authentication and company based token |
|
|
81
|
+
| `environment` | `'partners' \| 'production' \| 'sandbox' \| 'staging'` | No | Environment to use for API calls (defaults to production) |
|
|
82
|
+
| `theme` | `ThemeOptions` | No | Custom theme configuration |
|
|
83
|
+
| `components` | `Components` | No | Custom field components for form rendering |
|
|
84
|
+
| `proxy` | `{ url: string, headers?: Record<string, string> }` | No | Configuration for API request proxy with optional headers |
|
|
84
85
|
|
|
85
86
|
### Custom Field Components
|
|
86
87
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as r}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as r}from"./chunk-QYNAZIHD.js";import{b as n}from"./chunk-MRYRNB7Y.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as a}from"react/jsx-runtime";function u({onSubmit:m}){let{terminationBag:i}=n();return a(r,{onSubmit:o(async t=>{await m?.(i?.parseFormValues(t)),i?.next()},"handleSubmit")})}o(u,"TerminationDetailsForm");export{u as a};
|
|
2
|
+
//# sourceMappingURL=chunk-2OYKWBJY.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{f as m,g as a}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{f as m,g as a}from"./chunk-DPLXEXMO.js";import{c as n}from"./chunk-N6SBUVA6.js";import{b as i}from"./chunk-TVZAFTPT.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as s}from"react/jsx-runtime";function w({onSubmit:d,onError:c,onSuccess:l}){let{contractAmendment:{stepState:u,isSubmitting:f,onSubmit:C,fields:p},formId:A}=i(),e=m({defaultValues:u.values?.form}),F=o(async r=>{let S=n(r,p,{isPartialValidation:!1});await d?.(S);let t=await C(r);t.error?c?.(t.error):await l?.(t.data)},"handleSubmit");return f?null:s(a,{...e,children:s("form",{id:A,onSubmit:e.handleSubmit(F),className:"RemoteFlows__ContractAmendmentConfirmationForm"})})}o(w,"ContractAmendmentConfirmationForm");export{w as a};
|
|
2
|
+
//# sourceMappingURL=chunk-2VGEHBMK.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as P}from"./chunk-WWANHPT7.js";import{a as h}from"./chunk-2Y22JKVE.js";import{a as S}from"./chunk-XFD3ULUF.js";import{a as F}from"./chunk-S4XU4SE7.js";import{a as y}from"./chunk-Z5WMKCRJ.js";import{a as V}from"./chunk-QW4JPW6J.js";import{b as p}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as P}from"./chunk-WWANHPT7.js";import{a as h}from"./chunk-2Y22JKVE.js";import{a as S}from"./chunk-XFD3ULUF.js";import{a as F}from"./chunk-S4XU4SE7.js";import{a as y}from"./chunk-Z5WMKCRJ.js";import{a as V}from"./chunk-QW4JPW6J.js";import{b as p}from"./chunk-FQNVKX3N.js";import{a as T}from"./chunk-PJBAQZ6G.js";import{d as _}from"./chunk-3ZWDIEEM.js";import{c as s}from"./chunk-N6SBUVA6.js";import{a as e}from"./chunk-P37U34EQ.js";import{createHeadlessForm as g,modify as x}from"@remoteoss/json-schema-form";import{useMutation as A,useQuery as K}from"@tanstack/react-query";import L from"lodash.omitby";import q from"lodash.isnull";import z from"lodash.omit";function R(o){return{confidential:"",customer_informed_employee:"",customer_informed_employee_date:"",customer_informed_employee_description:"",personal_email:"",termination_reason:void 0,reason_description:"",termination_reason_files:[],will_challenge_termination:"",will_challenge_termination_description:null,agrees_to_pto_amount:"",agrees_to_pto_amount_notes:null,acknowledge_termination_procedure:!1,additional_comments:"",proposed_termination_date:"",risk_assessment_reasons:[],timesheet_file:void 0,...o}}e(R,"buildInitialValues");var B=e(()=>{let{client:o}=_();return A({mutationFn:e(n=>p({client:o,headers:{Authorization:""},body:n}),"mutationFn")})},"useCreateTermination"),I=e(({formValues:o,jsfModify:n,step:m})=>K({queryKey:["rmt-flows-termination-schema",m],queryFn:e(()=>h[m]??S,"queryFn"),select:e(({data:u})=>{let i=u?.schema||{};if(n){let{schema:d}=x(i,n);i=d}return g(i||{},{initialValues:o||{}})},"select")}),"useTerminationSchema"),ue=e(({employmentId:o,options:n})=>{let{fieldValues:m,setFieldValues:u,stepState:i,previousStep:f,nextStep:d}=T(F),k={...i.values?.[i.currentStep.name],...m},{data:r,isLoading:w}=I({formValues:k,jsfModify:n?.jsfModify,step:i.currentStep.name}),l=g(P.data.schema),c=B(),{mutateAsync:b}=V(c);async function C(a){if(!o)throw new Error("Employment id is missing");if(r){let t=s(a,l.fields,{isPartialValidation:!0}),{customer_informed_employee:j}=t,D=j==="yes"?{employee_awareness:{date:t.customer_informed_employee_date,note:t.customer_informed_employee_description}}:void 0,H=y(t,["agrees_to_pto_amount","confidential","customer_informed_employee","will_challenge_termination"]),J=z(H,"customer_informed_employee_date","customer_informed_employee_description"),O=L({...J,...D},q);return b({employment_id:o,termination_details:O,type:"termination"})}}e(C,"onSubmit");function M(){f()}e(M,"back");function v(){d()}e(v,"next");let E=R({...i.values?.employee_communication,...i.values?.termination_details,...i.values?.paid_time_off,...i.values?.additional_information});return{employmentId:o,stepState:i,fields:r?.fields||[],isLoading:w,isSubmitting:c.isPending,initialValues:E,handleValidation:e(a=>{if(r){let t=s(a,r?.fields);return r?.handleValidation(t)}return null},"handleValidation"),checkFieldUpdates:e(a=>{if(l){let t=s(a,l?.fields,{isPartialValidation:!0});u(t)}},"checkFieldUpdates"),parseFormValues:e(a=>s(a,l.fields,{isPartialValidation:!0}),"parseFormValues"),onSubmit:C,back:M,next:v}},"useTermination");export{ue as a};
|
|
2
|
+
//# sourceMappingURL=chunk-3GCWEV4G.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as p}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as p}from"./chunk-WOUZK5DW.js";import{a as i}from"./chunk-6P4XGSZ6.js";import{a as S}from"./chunk-Z7WBY27D.js";import{a as c}from"./chunk-7TOZZQQJ.js";import{a as m}from"./chunk-ADE22XT7.js";import{a as r}from"./chunk-BJFZBI3O.js";import{a as f}from"./chunk-KZ6QGSRA.js";import{a as s}from"./chunk-QBV4XS4Z.js";import{a}from"./chunk-3LGFQNYW.js";import{a as n}from"./chunk-PGWKJ6FK.js";import{a as e}from"./chunk-5IREEZLM.js";import{a as t}from"./chunk-P37U34EQ.js";import{useId as w,useState as C}from"react";import{jsx as R}from"react/jsx-runtime";var H=t(({employmentId:d,companyId:b,countryCode:u,type:g="employee",skipSteps:B,render:l,options:v})=>{let O=w(),o=e({companyId:b,countryCode:u,employmentId:d,type:g,options:v,skipSteps:B}),[y,I]=C({showReserveInvoice:!1,showInviteSuccessful:!1});return R(n.Provider,{value:{formId:O,onboardingBag:o,creditScore:y,setCreditScore:I},children:l({onboardingBag:o,components:{BasicInformationStep:r,ContractDetailsStep:s,BenefitsStep:f,SubmitButton:i,SaveDraftButton:c,BackButton:a,OnboardingInvite:p,SelectCountryStep:m,ReviewStep:S}})})},"OnboardingFlow");export{H as a};
|
|
2
|
+
//# sourceMappingURL=chunk-3KQWGXAR.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as s}from"./chunk-PGWKJ6FK.js";import{b as u}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as s}from"./chunk-PGWKJ6FK.js";import{b as u}from"./chunk-SHFIZENN.js";import{b as i}from"./chunk-3ZWDIEEM.js";import{a as t}from"./chunk-P37U34EQ.js";import{jsx as m}from"react/jsx-runtime";function f({children:o,onClick:a,...n}){let{onboardingBag:{back:c,isEmploymentReadOnly:B}}=s(),{components:d}=i(),r=t(p=>{B||c(),a?.(p)},"onBackHandler"),e=d?.button;return e?m(e,{...n,onClick:r,children:o}):m(u,{...n,onClick:r,children:o})}t(f,"OnboardingBack");export{f as a};
|
|
2
|
+
//# sourceMappingURL=chunk-3LGFQNYW.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as m,b as d,c as p}from"./chunk-SRZGBJVA.js";import{a as l}from"./chunk-G4NBJTHB.js";import{b as i}from"./chunk-SHFIZENN.js";import{b as r}from"./chunk-HGLI6PUM.js";import{a as o}from"./chunk-P37U34EQ.js";import{Info as v}from"lucide-react";import{Fragment as c,jsx as e,jsxs as t}from"react/jsx-runtime";function w({contributionsTotal:u,currency:a,contributionsBreakdown:n}){let f=d();return t("div",{children:[t("div",{className:"flex justify-between items-center mb-2",children:[e("h3",{className:"font-medium text-primary-foreground",children:"Employer Contributions"}),e("span",{className:"font-semibold text-lg",children:r(u,a)})]}),n?t(c,{children:[e(l,{className:"mb-3"}),e("div",{className:"space-y-3 pl-2",children:n.map((s,g)=>t("div",{className:"flex justify-between items-start text-sm",children:[t("div",{className:"flex items-start gap-2",children:[e("span",{children:s.name}),s.description&&e(m,{content:t(c,{children:[e("span",{children:s.description}),s.zendesk_article_url&&e(p,{zendeskId:s.zendesk_article_id,zendeskURL:s.zendesk_article_url,Trigger:e("button",{onClick:()=>{let k=s.zendesk_article_id;f.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:t(i,{variant:"ghost",size:"icon",className:"h-4 w-4 p-0",children:[e(v,{className:"h-3 w-3 text-gray-400"}),e("span",{className:"sr-only",children:"Info"})]})})]}),e("span",{children:r(s.amount,a)})]},g))})]}):null]})}o(w,"CostCalculatorContributionsBreakdown");export{w as a};
|
|
2
|
+
//# sourceMappingURL=chunk-466M4PK7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/flows/CostCalculator/Results/CostCalculatorContributionsBreakdown.tsx"],"sourcesContent":["import { Info } from 'lucide-react';\n\nimport { BasicTooltip } from '@/src/components/ui/basic-tooltip';\n\nimport { Button } from '@/src/components/ui/button';\nimport { Separator } from '@/src/components/ui/separator';\nimport { formatCurrency } from '@/src/lib/utils';\nimport { ZendeskDrawer } from '@/src/components/shared/zendesk-drawer/ZendeskDrawer';\nimport { useRouter } from '@/src/lib/router';\n\ntype CostCalculatorContributionsBreakdownProps = {\n contributionsTotal: number;\n currency: string;\n contributionsBreakdown:\n | {\n name: string;\n description: string | null;\n amount: number;\n zendesk_article_url: string | null;\n zendesk_article_id: string | null;\n }[]\n | undefined;\n};\n\nexport function CostCalculatorContributionsBreakdown({\n contributionsTotal,\n currency,\n contributionsBreakdown,\n}: CostCalculatorContributionsBreakdownProps) {\n const router = useRouter();\n return (\n <div>\n <div className=\"flex justify-between items-center mb-2\">\n <h3 className=\"font-medium text-primary-foreground\">\n Employer Contributions\n </h3>\n <span className=\"font-semibold text-lg\">\n {formatCurrency(contributionsTotal, currency)}\n </span>\n </div>\n {contributionsBreakdown ? (\n <>\n <Separator className=\"mb-3\" />\n <div className=\"space-y-3 pl-2\">\n {contributionsBreakdown.map((contribution, index) => (\n <div\n key={index}\n className=\"flex justify-between items-start text-sm\"\n >\n <div className=\"flex items-start gap-2\">\n <span>{contribution.name}</span>\n {contribution.description && (\n <BasicTooltip\n content={\n <>\n <span>{contribution.description}</span>\n {contribution.zendesk_article_url && (\n <ZendeskDrawer\n zendeskId={\n contribution.zendesk_article_id as string\n }\n zendeskURL={\n contribution.zendesk_article_url as string\n }\n Trigger={\n <button\n onClick={() => {\n const articleId =\n contribution.zendesk_article_id;\n\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\n variant=\"ghost\"\n size=\"icon\"\n className=\"h-4 w-4 p-0\"\n >\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(contribution.amount, currency)}</span>\n </div>\n ))}\n </div>\n </>\n ) : null}\n </div>\n );\n}\n"],"mappings":"sNAAA,OAAS,QAAAA,MAAY,eAgCf,OAsBkB,YAAAC,EArBhB,OAAAC,EADF,QAAAC,MAAA,oBARC,SAASC,EAAqC,CACnD,mBAAAC,EACA,SAAAC,EACA,uBAAAC,CACF,EAA8C,CAC5C,IAAMC,EAASC,EAAU,EACzB,OACEN,EAAC,OACC,UAAAA,EAAC,OAAI,UAAU,yCACb,UAAAD,EAAC,MAAG,UAAU,sCAAsC,kCAEpD,EACAA,EAAC,QAAK,UAAU,wBACb,SAAAQ,EAAeL,EAAoBC,CAAQ,EAC9C,GACF,EACCC,EACCJ,EAAAF,EAAA,CACE,UAAAC,EAACS,EAAA,CAAU,UAAU,OAAO,EAC5BT,EAAC,OAAI,UAAU,iBACZ,SAAAK,EAAuB,IAAI,CAACK,EAAcC,IACzCV,EAAC,OAEC,UAAU,2CAEV,UAAAA,EAAC,OAAI,UAAU,yBACb,UAAAD,EAAC,QAAM,SAAAU,EAAa,KAAK,EACxBA,EAAa,aACZV,EAACY,EAAA,CACC,QACEX,EAAAF,EAAA,CACE,UAAAC,EAAC,QAAM,SAAAU,EAAa,YAAY,EAC/BA,EAAa,qBACZV,EAACa,EAAA,CACC,UACEH,EAAa,mBAEf,WACEA,EAAa,oBAEf,QACEV,EAAC,UACC,QAAS,IAAM,CACb,IAAMc,EACJJ,EAAa,mBAEfJ,EAAO,gBAAgB,CACrB,UAAWQ,GAAa,EAC1B,CAAC,CACH,EACA,UAAU,iGACX,sBAED,EAEJ,GAEJ,EAGF,SAAAb,EAACc,EAAA,CACC,QAAQ,QACR,KAAK,OACL,UAAU,cAEV,UAAAf,EAACgB,EAAA,CAAK,UAAU,wBAAwB,EACxChB,EAAC,QAAK,UAAU,UAAU,gBAAI,GAChC,EACF,GAEJ,EACAA,EAAC,QAAM,SAAAQ,EAAeE,EAAa,OAAQN,CAAQ,EAAE,IAjDhDO,CAkDP,CACD,EACH,GACF,EACE,MACN,CAEJ,CA/EgBM,EAAAf,EAAA","names":["Info","Fragment","jsx","jsxs","CostCalculatorContributionsBreakdown","contributionsTotal","currency","contributionsBreakdown","router","useRouter","formatCurrency","Separator","contribution","index","BasicTooltip","ZendeskDrawer","articleId","Button","Info","__name"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as u,b as v,c as S,d as w,e as D,f as A,g as h}from"./chunk-7LZQJ5CL.js";import{a as t}from"./chunk-DYB3RWP7.js";import{b as m}from"./chunk-SHFIZENN.js";import{a as n}from"./chunk-HGLI6PUM.js";import{a as f}from"./chunk-P37U34EQ.js";import*as p from"react";import*as r from"@radix-ui/react-scroll-area";import{jsx as l,jsxs as P}from"react/jsx-runtime";var d=p.forwardRef(({className:o,children:a,...c},s)=>P(r.Root,{ref:s,className:n("relative overflow-hidden",o),...c,children:[l(r.Viewport,{className:"h-full w-full rounded-[inherit]",children:a}),l(b,{}),l(r.Corner,{})]}));d.displayName=r.Root.displayName;var b=p.forwardRef(({className:o,orientation:a="vertical",...c},s)=>l(r.ScrollAreaScrollbar,{ref:s,orientation:a,className:n("flex touch-none select-none transition-colors",a==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",a==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",o),...c,children:l(r.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));b.displayName=r.ScrollAreaScrollbar.displayName;import{X as C}from"lucide-react";import{jsx as e,jsxs as i}from"react/jsx-runtime";var B=f(({label:o="Disclaimer"})=>i(u,{children:[e(v,{asChild:!0,children:e(m,{variant:"link",size:"link",children:o})}),i(w,{children:[i(D,{children:[i(S,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[e(C,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"Close"})]}),e(A,{children:t?.data.title}),i(h,{children:["For more details read our"," ",e(m,{variant:"link",size:"link",asChild:!0,children:e("a",{href:t?.data.html_url,target:"_blank",rel:"noopener noreferrer",children:"Disclaimer"})})]})]}),e(d,{className:"px-4 pb-4 overflow-y-auto max-h-[calc(80vh-120px)] cost-calculator-disclaimer-drawer-scroll-area",children:e("div",{className:"cost-calculator-disclaimer-drawer-body",dangerouslySetInnerHTML:{__html:t?.data.body??""}})})]})]}),"CostCalculatorDisclaimer");export{B as a};
|
|
2
|
+
//# sourceMappingURL=chunk-4F4I7F2P.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/ui/scroll-area.tsx","../src/flows/CostCalculator/CostCalculatorDisclaimer.tsx"],"sourcesContent":["import * as React from 'react';\nimport * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';\n\nimport { cn } from '@/src/lib/utils';\n\nconst ScrollArea = React.forwardRef<\n HTMLDivElement,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root>\n>(({ className, children, ...props }, ref) => (\n <ScrollAreaPrimitive.Root\n ref={ref}\n className={cn('relative overflow-hidden', className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport className=\"h-full w-full rounded-[inherit]\">\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n));\nScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;\n\nconst ScrollBar = React.forwardRef<\n HTMLDivElement,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>\n>(({ className, orientation = 'vertical', ...props }, ref) => (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n ref={ref}\n orientation={orientation}\n className={cn(\n 'flex touch-none select-none transition-colors',\n orientation === 'vertical' &&\n 'h-full w-2.5 border-l border-l-transparent p-[1px]',\n orientation === 'horizontal' &&\n 'h-2.5 flex-col border-t border-t-transparent p-[1px]',\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb className=\"relative flex-1 rounded-full bg-border\" />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n));\nScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;\n\nexport { ScrollArea, ScrollBar };\n","import {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerHeader,\n DrawerTitle,\n DrawerTrigger,\n} from '@/src/components/ui/drawer';\nimport { ScrollArea } from '@/src/components/ui/scroll-area';\nimport { X } from 'lucide-react';\nimport { Button } from '@/src/components/ui/button';\nimport { disclaimerData } from '@/src/flows/CostCalculator/disclaimerUtils';\n\ntype CostCalculatorDisclaimerProps = {\n label?: string;\n};\n\nexport const CostCalculatorDisclaimer = ({\n label = 'Disclaimer',\n}: CostCalculatorDisclaimerProps) => {\n return (\n <Drawer>\n <DrawerTrigger asChild>\n <Button variant=\"link\" size=\"link\">\n {label}\n </Button>\n </DrawerTrigger>\n <DrawerContent>\n <DrawerHeader>\n <DrawerClose className=\"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none\">\n <X className=\"h-4 w-4\" />\n <span className=\"sr-only\">Close</span>\n </DrawerClose>\n <DrawerTitle>{disclaimerData?.data.title}</DrawerTitle>\n <DrawerDescription>\n For more details read our{' '}\n <Button variant=\"link\" size=\"link\" asChild>\n <a\n href={disclaimerData?.data.html_url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Disclaimer\n </a>\n </Button>\n </DrawerDescription>\n </DrawerHeader>\n <ScrollArea className=\"px-4 pb-4 overflow-y-auto max-h-[calc(80vh-120px)] cost-calculator-disclaimer-drawer-scroll-area\">\n <div\n className=\"cost-calculator-disclaimer-drawer-body\"\n dangerouslySetInnerHTML={{\n __html: disclaimerData?.data.body ?? '',\n }}\n ></div>\n </ScrollArea>\n </DrawerContent>\n </Drawer>\n );\n};\n"],"mappings":"kPAAA,UAAYA,MAAW,QACvB,UAAYC,MAAyB,8BAQnC,OAKE,OAAAC,EALF,QAAAC,MAAA,oBAJF,IAAMC,EAAmB,aAGvB,CAAC,CAAE,UAAAC,EAAW,SAAAC,EAAU,GAAGC,CAAM,EAAGC,IACpCL,EAAqB,OAApB,CACC,IAAKK,EACL,UAAWC,EAAG,2BAA4BJ,CAAS,EAClD,GAAGE,EAEJ,UAAAL,EAAqB,WAApB,CAA6B,UAAU,kCACrC,SAAAI,EACH,EACAJ,EAACQ,EAAA,EAAU,EACXR,EAAqB,SAApB,EAA2B,GAC9B,CACD,EACDE,EAAW,YAAkC,OAAK,YAElD,IAAMM,EAAkB,aAGtB,CAAC,CAAE,UAAAL,EAAW,YAAAM,EAAc,WAAY,GAAGJ,CAAM,EAAGC,IACpDN,EAAqB,sBAApB,CACC,IAAKM,EACL,YAAaG,EACb,UAAWF,EACT,gDACAE,IAAgB,YACd,qDACFA,IAAgB,cACd,uDACFN,CACF,EACC,GAAGE,EAEJ,SAAAL,EAAqB,kBAApB,CAAoC,UAAU,yCAAyC,EAC1F,CACD,EACDQ,EAAU,YAAkC,sBAAoB,YCjChE,OAAS,KAAAE,MAAS,eAcV,cAAAC,EAME,QAAAC,MANF,oBAND,IAAMC,EAA2BC,EAAA,CAAC,CACvC,MAAAC,EAAQ,YACV,IAEIH,EAACI,EAAA,CACC,UAAAL,EAACM,EAAA,CAAc,QAAO,GACpB,SAAAN,EAACO,EAAA,CAAO,QAAQ,OAAO,KAAK,OACzB,SAAAH,EACH,EACF,EACAH,EAACO,EAAA,CACC,UAAAP,EAACQ,EAAA,CACC,UAAAR,EAACS,EAAA,CAAY,UAAU,4MACrB,UAAAV,EAACW,EAAA,CAAE,UAAU,UAAU,EACvBX,EAAC,QAAK,UAAU,UAAU,iBAAK,GACjC,EACAA,EAACY,EAAA,CAAa,SAAAC,GAAgB,KAAK,MAAM,EACzCZ,EAACa,EAAA,CAAkB,sCACS,IAC1Bd,EAACO,EAAA,CAAO,QAAQ,OAAO,KAAK,OAAO,QAAO,GACxC,SAAAP,EAAC,KACC,KAAMa,GAAgB,KAAK,SAC3B,OAAO,SACP,IAAI,sBACL,sBAED,EACF,GACF,GACF,EACAb,EAACe,EAAA,CAAW,UAAU,mGACpB,SAAAf,EAAC,OACC,UAAU,yCACV,wBAAyB,CACvB,OAAQa,GAAgB,KAAK,MAAQ,EACvC,EACD,EACH,GACF,GACF,EAvCoC","names":["React","ScrollAreaPrimitive","jsx","jsxs","ScrollArea","className","children","props","ref","cn","ScrollBar","orientation","X","jsx","jsxs","CostCalculatorDisclaimer","__name","label","Drawer","DrawerTrigger","Button","DrawerContent","DrawerHeader","DrawerClose","X","DrawerTitle","disclaimerData","DrawerDescription","ScrollArea"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as Oe}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as Oe}from"./chunk-CQ2QAZBG.js";import{a as Pe}from"./chunk-2A5R3YN2.js";import{a as Ee,b as he,c as C,d as Ce,e as Ve}from"./chunk-F66G33YT.js";import{a as de,b as me,c as fe,f as ue,g as ye,h as pe,i as _e,j as Se,l as be,n as ge}from"./chunk-AYAQLXJH.js";import{a as v}from"./chunk-QW4JPW6J.js";import{a as Fe}from"./chunk-PJBAQZ6G.js";import{c as h,d as T,f as U}from"./chunk-N6SBUVA6.js";import{a as c}from"./chunk-P37U34EQ.js";import{useEffect as et,useMemo as d,useRef as tt,useState as Me}from"react";import nt from"lodash.mergewith";import{jsx as Te}from"react/jsx-runtime";var ot={employment_basic_information:"basic_information",contract_details:"contract_details"},it={select_country:null,basic_information:"employment_basic_information",contract_details:"contract_details",benefits:null,review:null},at=c(({isLoadingBasicInformationForm:u,isLoadingContractDetailsForm:R,isLoadingEmployment:j,isLoadingBenefitsOffersSchema:J,isLoadingBenefitOffers:a,isLoadingCompany:N,isLoadingCountries:p,employmentStatus:o,employmentId:D,currentStepName:r,basicInformationFields:L,contractDetailsFields:s})=>{let V=u||R||j||J||a||N||p,I=o&&Ce.includes(o),k=o&&!Ve.includes(o),O=!!(D&&I&&r!=="review"),_=V||O,B=!!(O&&!V&&L.length>0&&s.length>0);return{isLoading:_,isNavigatingToReview:B,isEmploymentReadOnly:I,canInvite:k}},"getLoadingStates"),_t=c(({employmentId:u,companyId:R,countryCode:j,type:J,options:a,skipSteps:N})=>{let p=tt({select_country:{},basic_information:{},contract_details:{},benefits:{}}),[o,D]=Me(u),[r,L]=Me(j||null),{data:s,isLoading:V,refetch:I}=de(o);s?.country?.code&&r!==s.country.code&&L(s.country.code);let{data:k,isLoading:O}=fe(o),{data:_,isLoading:B,refetch:Le}=me(R),Ie=N?.includes("select_country")?he:Ee,{fieldValues:S,stepState:t,setFieldValues:ke,previousStep:Be,nextStep:qe,goToStep:A,setStepValues:H}=Fe(Ie),{selectCountryForm:q,isLoading:W}=be({jsfModify:a?.jsfModify?.select_country,jsonSchemaVersion:a?.jsonSchemaVersion,queryOptions:{enabled:t.currentStep.name==="select_country"}}),G=pe(a),$=_e(a),z=Se(a),we=ge(),{mutateAsync:ve}=v(G),{mutateAsync:K}=v($),{mutateAsync:Re}=v(z),je=it[t.currentStep.name]||"employment_basic_information",Je=ot[je],Ne=s?.[Je]||{},Y=c(({form:n,options:i={},query:l={}})=>ue({countryCode:r,form:n,fieldValues:Object.keys(S).length>0?{...t.values?.[t.currentStep.name],...S}:Ne,query:l,options:{...i,queryOptions:{enabled:i.queryOptions?.enabled??!0}}}),"useJSONSchema"),De=!!(r&&(t.currentStep.name==="basic_information"||u)),Ae=!!(r&&(t.currentStep.name==="contract_details"||u)),{data:m,isLoading:Q}=Y({form:"employment_basic_information",options:{jsfModify:a?.jsfModify?.basic_information,queryOptions:{enabled:De}}}),b=a?.jsfModify?.contract_details?.fields?.annual_gross_salary,x=b&&typeof b=="object"&&"presentation"in b?b.presentation:void 0,X=a?.jsfModify?.contract_details?.fields?.equity_compensation,xe=d(()=>({fields:{annual_gross_salary:{...b,presentation:{annual_gross_salary_conversion_properties:{label:x?.annual_gross_salary_conversion_properties?.label,description:x?.annual_gross_salary_conversion_properties?.description},desiredCurrency:_?.desired_currency,Component:c(n=>Te(Oe,{desiredCurrency:_?.desired_currency||"",...n}),"Component")}},equity_compensation:{...X,presentation:{calculateDynamicProperties:c((n,i)=>{let l=n.equity_compensation?.offer_equity_compensation,w=i?.meta?.cost;return{extra:Te(Pe,{offerEquity:l,equityCost:w})}},"calculateDynamicProperties")}}}}),[b,x,_?.desired_currency,X]),{data:f,isLoading:Z}=Y({form:"contract_details",query:{employment_id:o},options:{jsfModify:{...a?.jsfModify?.contract_details,fields:{...a?.jsfModify?.contract_details?.fields,...xe.fields}},queryOptions:{enabled:Ae}}}),{data:P,isLoading:ee}=ye(o,S,a),te=d(()=>{if(t.currentStep.name==="benefits"){let n={...t.values?.[t.currentStep.name],...S};return nt({},k,n)}return{}},[t.currentStep.name,k,t.values,S]),e=d(()=>({select_country:q?.fields||[],basic_information:m?.fields||[],contract_details:f?.fields||[],benefits:P?.fields||[],review:[]}),[q?.fields,m?.fields,f?.fields,P?.fields]),Ue={select_country:null,basic_information:m?.meta["x-jsf-fieldsets"],contract_details:f?.meta["x-jsf-fieldsets"],benefits:null,review:null},{country:{code:ne}={},basic_information:oe={},contract_details:ie={},status:ae}=s||{},se=t.currentStep.name,g=d(()=>T(e.select_country,{country:r||ne||""}),[e.select_country,r,ne]),F=d(()=>T(e.basic_information,oe||{}),[e.basic_information,oe]),y=d(()=>T(e.contract_details,ie||{}),[e.contract_details,ie]),E=d(()=>T(e.benefits,te),[e.benefits,te]),He=d(()=>s?{select_country:g,basic_information:U(e.basic_information,F),contract_details:s?.contract_details!==null?U(e.contract_details,y):y,benefits:E}:{select_country:g,basic_information:F,contract_details:y,benefits:E},[g,F,y,E,s,e]),{isLoading:We,isNavigatingToReview:re,isEmploymentReadOnly:Ge,canInvite:$e}=d(()=>at({isLoadingBasicInformationForm:Q,isLoadingContractDetailsForm:Z,isLoadingEmployment:V,isLoadingBenefitsOffersSchema:ee,isLoadingBenefitOffers:O,isLoadingCompany:B,isLoadingCountries:W,employmentId:u,employmentStatus:ae,basicInformationFields:e.basic_information,contractDetailsFields:e.contract_details,currentStepName:se}),[Q,Z,V,ee,O,B,W,u,ae,e.basic_information,e.contract_details,se]);et(()=>{re&&(p.current={select_country:C(g,e.select_country),basic_information:C(F,e.basic_information),contract_details:C(y,e.contract_details),benefits:C(E,e.benefits)},H({select_country:g,basic_information:F,contract_details:y,benefits:E,review:{}}),A("review"))},[F,E,y,A,re,g,H,e.basic_information,e.benefits,e.contract_details,e.select_country]);let ce=c(n=>q&&t.currentStep.name==="select_country"?n:m&&t.currentStep.name==="basic_information"?h(n,m?.fields,{isPartialValidation:!1}):f&&t.currentStep.name==="contract_details"?h(n,f?.fields,{isPartialValidation:!1}):{},"parseFormValues");async function ze(n){let i=t.currentStep.name;i in p.current&&(p.current[i]=C(n,e[i]));let l=ce(n);switch(Le(),t.currentStep.name){case"select_country":return L(l.country),Promise.resolve({data:{countryCode:l.country}});case"basic_information":{let w=!o&&r,Xe=o&&r&&s?.country&&s?.country.code!==r;if(w||Xe){let Ze={basic_information:l,type:J,country_code:r};try{let M=await ve(Ze),le=M.data?.data?.employment?.id;return D(le),await we.mutateAsync({employmentId:le,eligible_to_work_in_residing_country:"citizen",employer_or_work_restrictions:!1}),M}catch(M){throw console.error("Error creating onboarding:",M),M}}else if(o)return K({employmentId:o,basic_information:l,pricing_plan_details:{frequency:"monthly"}});return}case"contract_details":return K({employmentId:o,...{contract_details:l,pricing_plan_details:{frequency:"monthly"}}});case"benefits":return Re({employmentId:o,...n})}}c(ze,"onSubmit");function Ke(){Be()}c(Ke,"back");function Ye(){qe()}c(Ye,"next");function Qe(n){A(n)}return c(Qe,"goTo"),{employmentId:o,creditRiskStatus:_?.default_legal_entity_credit_risk_status,fieldValues:S,stepState:t,fields:e[t.currentStep.name],isLoading:We,isSubmitting:G.isPending||$.isPending||z.isPending,initialValues:He,handleValidation:c(n=>{if(t.currentStep.name==="select_country")return q.handleValidation(n);if(t.currentStep.name==="benefits"&&P){let i=h(n,P?.fields,{isPartialValidation:!1});return P?.handleValidation(i)}if(m&&t.currentStep.name==="basic_information"){let i=h(n,m?.fields,{isPartialValidation:!1});return m?.handleValidation(i)}if(f&&t.currentStep.name==="contract_details"){let i=h(n,f?.fields,{isPartialValidation:!1});return f?.handleValidation(i)}return null},"handleValidation"),checkFieldUpdates:ke,parseFormValues:ce,onSubmit:ze,back:Ke,next:Ye,goTo:Qe,meta:{fields:p.current,fieldsets:Ue[t.currentStep.name]},refetchEmployment:I,employment:s,isEmploymentReadOnly:Ge,canInvite:$e}},"useOnboarding");export{_t as a};
|
|
2
|
+
//# sourceMappingURL=chunk-5IREEZLM.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as l,b as m,c}from"./chunk-SRZGBJVA.js";import{a as i}from"./chunk-G4NBJTHB.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-5PVQUO5Q.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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":"iNAAA,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"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as v}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as v}from"./chunk-UNTCBVHB.js";import{a as A}from"./chunk-QW4JPW6J.js";import{a as l,b as _}from"./chunk-LK3DIMYW.js";import{c as E,m as w,v as b}from"./chunk-FQNVKX3N.js";import{a as M}from"./chunk-PJBAQZ6G.js";import{d}from"./chunk-3ZWDIEEM.js";import{a as j,c as S}from"./chunk-N6SBUVA6.js";import{a as t}from"./chunk-P37U34EQ.js";import{createHeadlessForm as I,modify as R}from"@remoteoss/json-schema-form";import{useMutation as Q,useQuery as B}from"@tanstack/react-query";var J=t(({countryCode:a,employment:r,fieldValues:n,options:e})=>{let{client:u}=d(),m=e?.jsonSchemaVersion?.contract_amendments?{json_schema_version:e.jsonSchemaVersion.contract_amendments}:{};return B({queryKey:["contract-amendment-schema"],retry:!1,queryFn:t(async()=>{let o=await E({client:u,headers:{Authorization:""},query:{employment_id:r?.data?.employment?.id,country_code:a,...m}});if(o.error||!o.data)throw new Error("Failed to fetch contract amendment schema");return o},"queryFn"),enabled:!!r,select:t(({data:o})=>{let c=o?.data||{};if(e&&e.jsfModify){let{schema:f}=R(c,e.jsfModify);c=f}let s={...n,annual_gross_salary:n?.annual_gross_salary?j(n?.annual_gross_salary):void 0},y=Object.keys(s).length>0;return I(c,{initialValues:y?s:_(r)})},"select")})},"useContractAmendmentSchemaQuery"),K=t(a=>{let{client:r}=d(),n=a?.jsonSchemaVersion?.contract_amendments?{json_schema_version:a.jsonSchemaVersion.contract_amendments}:{};return Q({mutationFn:t(e=>w({client:r,headers:{Authorization:""},body:e,query:{...n}}),"mutationFn")})},"useCreateContractAmendmentMutation"),U=t(a=>{let{client:r}=d(),n=a?.jsonSchemaVersion?.contract_amendments?{json_schema_version:a.jsonSchemaVersion.contract_amendments}:{};return Q({mutationFn:t(e=>b({client:r,headers:{Authorization:""},body:e,query:{...n}}),"mutationFn")})},"useAutomatableContractAmendmentMutation"),ae=t(({employmentId:a,countryCode:r,options:n})=>{let{fieldValues:e,setFieldValues:u,stepState:m,nextStep:o,previousStep:c}=M(l),{data:s,isLoading:y,isError:V,error:f}=v({employmentId:a}),{data:i,isLoading:q,isError:L,error:T}=J({employment:s,countryCode:r,fieldValues:{...m.values?.[m.currentStep.name],...e},options:n}),k=_(s,i?.fields),F=K(n),g=U(n);async function O(p){let h=S(p,i?.fields||[],{isPartialValidation:!1}),P={employment_id:s?.data.employment?.id,amendment_contract_id:s?.data.employment?.active_contract_id,contract_amendment:{...h}};switch(m.currentStep.name){case l.form.name:{let{mutateAsync:C}=A(g),H=await C(P);return o(),H}case l.confirmation_form.name:{let{mutateAsync:C}=A(F);return C(P)}default:throw new Error("Invalid step state")}}t(O,"onSubmit");function z(p){if(i){let h=S(p,i?.fields);return i?.handleValidation(h)}return null}t(z,"handleValidation");function x(){c()}return t(x,"back"),{stepState:m,fields:i?.fields||[],isLoading:y||q,isError:V||L,error:f||T,isSubmitting:g.isPending||F.isPending,initialValues:k,values:e,handleValidation:z,checkFieldUpdates:u,onSubmit:O,back:x}},"useContractAmendment");export{ae as a};
|
|
2
|
+
//# sourceMappingURL=chunk-6CU63ESU.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as e}from"./chunk-PGWKJ6FK.js";import{b as i}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as e}from"./chunk-PGWKJ6FK.js";import{b as i}from"./chunk-SHFIZENN.js";import{b as m}from"./chunk-3ZWDIEEM.js";import{a as u}from"./chunk-P37U34EQ.js";import{jsx as s}from"react/jsx-runtime";function p({children:t,...o}){let{formId:n}=e(),{components:f}=m(),r=f?.button;return r?s(r,{...o,form:n,children:t}):s(i,{...o,form:n,children:t})}u(p,"OnboardingSubmit");export{p as a};
|
|
2
|
+
//# sourceMappingURL=chunk-6P4XGSZ6.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as i}from"./chunk-HGLI6PUM.js";import{a as s}from"./chunk-P37U34EQ.js";import*as n from"react";import{Drawer as r}from"vaul";import{jsx as a,jsxs as l}from"react/jsx-runtime";var p=s(({shouldScaleBackground:e=!0,...t})=>a(r.Root,{shouldScaleBackground:e,...t}),"Drawer");p.displayName="Drawer";var v=r.Trigger,d=r.Portal,N=r.Close,m=n.forwardRef(({className:e,...t},o)=>a(r.Overlay,{ref:o,className:i("fixed inset-0 z-50 bg-black/80",e),...t}));m.displayName=r.Overlay.displayName;var f=n.forwardRef(({className:e,children:t,...o},c)=>l(d,{children:[a(m,{}),l(r.Content,{ref:c,className:i("fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background",e),...o,children:[a("div",{className:"mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted"}),t]})]}));f.displayName="DrawerContent";var D=s(({className:e,...t})=>a("div",{className:i("grid gap-1.5 p-4 text-center sm:text-left",e),...t}),"DrawerHeader");D.displayName="DrawerHeader";var w=s(({className:e,...t})=>a("div",{className:i("mt-auto flex flex-col gap-2 p-4",e),...t}),"DrawerFooter");w.displayName="DrawerFooter";var R=n.forwardRef(({className:e,...t},o)=>a(r.Title,{ref:o,className:i("text-lg font-semibold leading-none tracking-tight",e),...t}));R.displayName=r.Title.displayName;var g=n.forwardRef(({className:e,...t},o)=>a(r.Description,{ref:o,className:i("text-sm text-muted-foreground",e),...t}));g.displayName=r.Description.displayName;export{p as a,v as b,N as c,f as d,D as e,R as f,g};
|
|
2
|
+
//# sourceMappingURL=chunk-7LZQJ5CL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/ui/drawer.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Drawer as DrawerPrimitive } from 'vaul';\n\nimport { cn } from '@/src/lib/utils';\n\nconst Drawer = ({\n shouldScaleBackground = true,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Root>) => (\n <DrawerPrimitive.Root\n shouldScaleBackground={shouldScaleBackground}\n {...props}\n />\n);\nDrawer.displayName = 'Drawer';\n\nconst DrawerTrigger = DrawerPrimitive.Trigger;\n\nconst DrawerPortal = DrawerPrimitive.Portal;\n\nconst DrawerClose = DrawerPrimitive.Close;\n\nconst DrawerOverlay = React.forwardRef<\n HTMLDivElement,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Overlay\n ref={ref}\n className={cn('fixed inset-0 z-50 bg-black/80', className)}\n {...props}\n />\n));\nDrawerOverlay.displayName = DrawerPrimitive.Overlay.displayName;\n\nconst DrawerContent = React.forwardRef<\n HTMLDivElement,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Content>\n>(({ className, children, ...props }, ref) => (\n <DrawerPortal>\n <DrawerOverlay />\n <DrawerPrimitive.Content\n ref={ref}\n className={cn(\n 'fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background',\n className,\n )}\n {...props}\n >\n <div className=\"mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n));\nDrawerContent.displayName = 'DrawerContent';\n\nconst DrawerHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn('grid gap-1.5 p-4 text-center sm:text-left', className)}\n {...props}\n />\n);\nDrawerHeader.displayName = 'DrawerHeader';\n\nconst DrawerFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn('mt-auto flex flex-col gap-2 p-4', className)}\n {...props}\n />\n);\nDrawerFooter.displayName = 'DrawerFooter';\n\nconst DrawerTitle = React.forwardRef<\n HTMLHeadingElement,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Title\n ref={ref}\n className={cn(\n 'text-lg font-semibold leading-none tracking-tight',\n className,\n )}\n {...props}\n />\n));\nDrawerTitle.displayName = DrawerPrimitive.Title.displayName;\n\nconst DrawerDescription = React.forwardRef<\n HTMLParagraphElement,\n React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Description\n ref={ref}\n className={cn('text-sm text-muted-foreground', className)}\n {...props}\n />\n));\nDrawerDescription.displayName = DrawerPrimitive.Description.displayName;\n\nexport {\n Drawer,\n DrawerPortal,\n DrawerOverlay,\n DrawerTrigger,\n DrawerClose,\n DrawerContent,\n DrawerHeader,\n DrawerFooter,\n DrawerTitle,\n DrawerDescription,\n};\n"],"mappings":"gFAEA,UAAYA,MAAW,QACvB,OAAS,UAAUC,MAAuB,OAQxC,cAAAC,EA+BE,QAAAC,MA/BF,oBAJF,IAAMC,EAASC,EAAA,CAAC,CACd,sBAAAC,EAAwB,GACxB,GAAGC,CACL,IACEL,EAACM,EAAgB,KAAhB,CACC,sBAAuBF,EACtB,GAAGC,EACN,EAPa,UASfH,EAAO,YAAc,SAErB,IAAMK,EAAgBD,EAAgB,QAEhCE,EAAeF,EAAgB,OAE/BG,EAAcH,EAAgB,MAE9BI,EAAsB,aAG1B,CAAC,CAAE,UAAAC,EAAW,GAAGN,CAAM,EAAGO,IAC1BZ,EAACM,EAAgB,QAAhB,CACC,IAAKM,EACL,UAAWC,EAAG,iCAAkCF,CAAS,EACxD,GAAGN,EACN,CACD,EACDK,EAAc,YAAcJ,EAAgB,QAAQ,YAEpD,IAAMQ,EAAsB,aAG1B,CAAC,CAAE,UAAAH,EAAW,SAAAI,EAAU,GAAGV,CAAM,EAAGO,IACpCX,EAACO,EAAA,CACC,UAAAR,EAACU,EAAA,EAAc,EACfT,EAACK,EAAgB,QAAhB,CACC,IAAKM,EACL,UAAWC,EACT,iGACAF,CACF,EACC,GAAGN,EAEJ,UAAAL,EAAC,OAAI,UAAU,mDAAmD,EACjEe,GACH,GACF,CACD,EACDD,EAAc,YAAc,gBAE5B,IAAME,EAAeb,EAAA,CAAC,CACpB,UAAAQ,EACA,GAAGN,CACL,IACEL,EAAC,OACC,UAAWa,EAAG,4CAA6CF,CAAS,EACnE,GAAGN,EACN,EAPmB,gBASrBW,EAAa,YAAc,eAE3B,IAAMC,EAAed,EAAA,CAAC,CACpB,UAAAQ,EACA,GAAGN,CACL,IACEL,EAAC,OACC,UAAWa,EAAG,kCAAmCF,CAAS,EACzD,GAAGN,EACN,EAPmB,gBASrBY,EAAa,YAAc,eAE3B,IAAMC,EAAoB,aAGxB,CAAC,CAAE,UAAAP,EAAW,GAAGN,CAAM,EAAGO,IAC1BZ,EAACM,EAAgB,MAAhB,CACC,IAAKM,EACL,UAAWC,EACT,oDACAF,CACF,EACC,GAAGN,EACN,CACD,EACDa,EAAY,YAAcZ,EAAgB,MAAM,YAEhD,IAAMa,EAA0B,aAG9B,CAAC,CAAE,UAAAR,EAAW,GAAGN,CAAM,EAAGO,IAC1BZ,EAACM,EAAgB,YAAhB,CACC,IAAKM,EACL,UAAWC,EAAG,gCAAiCF,CAAS,EACvD,GAAGN,EACN,CACD,EACDc,EAAkB,YAAcb,EAAgB,YAAY","names":["React","DrawerPrimitive","jsx","jsxs","Drawer","__name","shouldScaleBackground","props","DrawerPrimitive","DrawerTrigger","DrawerPortal","DrawerClose","DrawerOverlay","className","ref","cn","DrawerContent","children","DrawerHeader","DrawerFooter","DrawerTitle","DrawerDescription"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as c}from"./chunk-KSHK3ZPX.js";import{a as C}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{b as c}from"./chunk-KSHK3ZPX.js";import{a as C}from"./chunk-PAC52YON.js";import{g as n}from"./chunk-DPLXEXMO.js";import{a as m}from"./chunk-P37U34EQ.js";import{useEffect as F}from"react";import{jsx as l}from"react/jsx-runtime";function P({onSubmit:f,onError:d,onSuccess:p,shouldResetForm:i,resetFields:s}){let{form:o,formId:E,costCalculatorBag:t}=c(),{formState:{isSubmitSuccessful:e}}=o;F(()=>{if(e&&i){t?.resetForm(),o.reset();return}if(e&&s){let a={...o.getValues()};s.forEach(r=>{a[r]=""}),t?.resetForm(),o.reset(a)}},[e,o,i,t,s]);let S=m(async u=>{let a=t?.parseFormValues(u),r=await t?.onSubmit(a);await f?.(a),r?.error?d?.(r.error):r?.data&&await p?.(r?.data)},"handleSubmit");return l(n,{...o,children:l("form",{id:E,onSubmit:o.handleSubmit(S),className:"space-y-4 RemoteFlows__CostCalculatorForm",children:l(C,{fields:t?.fields??[]})})})}m(P,"CostCalculatorForm");export{P as a};
|
|
2
|
+
//# sourceMappingURL=chunk-7N2NUY3F.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as r}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as r}from"./chunk-HGLI6PUM.js";import{a as e}from"./chunk-P37U34EQ.js";import{Slot as i}from"@radix-ui/react-slot";import{cva as d}from"class-variance-authority";import{jsx as u}from"react/jsx-runtime";var s=d("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-badge text-badge-foreground rounded-full [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground rounded-full [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white rounded-full [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40",outline:"text-foreground rounded-full [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"}},defaultVariants:{variant:"default"}});function g({className:t,variant:a,asChild:o=!1,...n}){return u(o?i:"span",{"data-slot":"badge",className:r(s({variant:a}),t),...n})}e(g,"Badge");export{g as a};
|
|
2
|
+
//# sourceMappingURL=chunk-A27ASO7K.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a}from"./chunk-ZVXX43AL.js";import{b as i}from"./chunk-PGWKJ6FK.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as d}from"react/jsx-runtime";function y({onSubmit:s,onSuccess:c,onError:t}){let{onboardingBag:o}=i(),u=e(async n=>{try{await s?.({countryCode:n.country});let r=await o.onSubmit(n);if(r?.data){await c?.(r?.data),o?.next();return}r?.error&&t?.({error:r.error,rawError:r.rawError,fieldErrors:[]})}catch(r){t?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit"),l=o.stepState.values?.select_country||o.initialValues.select_country;return d(a,{defaultValues:l,onSubmit:u})}e(y,"SelectCountryStep");export{y as a};
|
|
2
|
+
//# sourceMappingURL=chunk-ADE22XT7.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as l,b as m,c as d}from"./chunk-SRZGBJVA.js";import{a as i}from"./chunk-G4NBJTHB.js";import{b as o}from"./chunk-SHFIZENN.js";import{b as r}from"./chunk-HGLI6PUM.js";import{a as n}from"./chunk-P37U34EQ.js";import{Info as g}from"lucide-react";import{Fragment as v,jsx as e,jsxs as t}from"react/jsx-runtime";function b({benefitsTotal:c,benefitsBreakdown:p,currency:a}){let u=m();return t("div",{children:[t("div",{className:"flex justify-between items-center mb-2",children:[e("h3",{className:"font-medium text-primary-foreground-800",children:"Benefits"}),e("span",{className:"font-semibold text-lg",children:r(c,a)})]}),e(i,{className:"mb-3"}),e("div",{className:"space-y-3 pl-2",children:p.map((s,f)=>t("div",{className:"flex justify-between items-start text-sm",children:[t("div",{className:"flex items-start gap-2",children:[e("span",{children:s.name}),s.description&&e(l,{content:t(v,{children:[e("span",{children:s.description}),s.zendesk_article_url&&e(d,{zendeskId:s.zendesk_article_id,zendeskURL:s.zendesk_article_url,Trigger:e("button",{onClick:()=>{let k=s.zendesk_article_id;u.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:t(o,{variant:"ghost",size:"icon",className:"h-4 w-4 p-0",children:[e(g,{className:"h-3 w-3 text-gray-400"}),e("span",{className:"sr-only",children:"Info"})]})})]}),e("span",{children:r(s.amount,a)})]},f))})]})}n(b,"CostCalculatorBenefitsBreakdown");export{b as a};
|
|
2
|
+
//# sourceMappingURL=chunk-AEVZ7GEK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/flows/CostCalculator/Results/CostCalculatorBenefitsBreakdown.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 { useRouter } from '@/src/lib/router';\nimport { ZendeskDrawer } from '@/src/components/shared/zendesk-drawer/ZendeskDrawer';\n\ntype CostCalculatorBenefitsBreakdownProps = {\n benefitsTotal: number | undefined;\n benefitsBreakdown: {\n name: string;\n description: string | null;\n amount: number;\n zendesk_article_url: string | null;\n zendesk_article_id: string | null;\n }[];\n currency: string;\n};\n\nexport function CostCalculatorBenefitsBreakdown({\n benefitsTotal,\n benefitsBreakdown,\n currency,\n}: CostCalculatorBenefitsBreakdownProps) {\n const router = useRouter();\n return (\n <div>\n <div className=\"flex justify-between items-center mb-2\">\n <h3 className=\"font-medium text-primary-foreground-800\">Benefits</h3>\n <span className=\"font-semibold text-lg\">\n {formatCurrency(benefitsTotal, currency)}\n </span>\n </div>\n <Separator className=\"mb-3\" />\n\n <div className=\"space-y-3 pl-2\">\n {benefitsBreakdown.map((benefit, index) => (\n <div key={index} className=\"flex justify-between items-start text-sm\">\n <div className=\"flex items-start gap-2\">\n <span>{benefit.name}</span>\n {benefit.description && (\n <BasicTooltip\n content={\n <>\n <span>{benefit.description}</span>\n {benefit.zendesk_article_url && (\n <ZendeskDrawer\n zendeskId={benefit.zendesk_article_id as string}\n zendeskURL={benefit.zendesk_article_url as string}\n Trigger={\n <button\n onClick={() => {\n const articleId = benefit.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(benefit.amount, currency)}</span>\n </div>\n ))}\n </div>\n </div>\n );\n}\n"],"mappings":"sNAAA,OAAS,QAAAA,MAAY,eA6Bf,OAgBc,YAAAC,EAfZ,OAAAC,EADF,QAAAC,MAAA,oBARC,SAASC,EAAgC,CAC9C,cAAAC,EACA,kBAAAC,EACA,SAAAC,CACF,EAAyC,CACvC,IAAMC,EAASC,EAAU,EACzB,OACEN,EAAC,OACC,UAAAA,EAAC,OAAI,UAAU,yCACb,UAAAD,EAAC,MAAG,UAAU,0CAA0C,oBAAQ,EAChEA,EAAC,QAAK,UAAU,wBACb,SAAAQ,EAAeL,EAAeE,CAAQ,EACzC,GACF,EACAL,EAACS,EAAA,CAAU,UAAU,OAAO,EAE5BT,EAAC,OAAI,UAAU,iBACZ,SAAAI,EAAkB,IAAI,CAACM,EAASC,IAC/BV,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,CA7DgBM,EAAAf,EAAA","names":["Info","Fragment","jsx","jsxs","CostCalculatorBenefitsBreakdown","benefitsTotal","benefitsBreakdown","currency","router","useRouter","formatCurrency","Separator","benefit","index","BasicTooltip","ZendeskDrawer","articleId","Button","Info","__name"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a}from"./chunk-HQMY3X2R.js";import{a as c}from"./chunk-6CU63ESU.js";import{a as e}from"./chunk-OGAVWGSY.js";import{a as m}from"./chunk-2VGEHBMK.js";import{a as r}from"./chunk-IKYBTQKV.js";import{a as o}from"./chunk-TVZAFTPT.js";import{a as n}from"./chunk-P37U34EQ.js";import{useId as f}from"react";import{jsx as s}from"react/jsx-runtime";function k({employmentId:d,countryCode:C,options:p,render:A}){let t=c({employmentId:d,countryCode:C,options:p}),i=f();return s(o.Provider,{value:{formId:i,contractAmendmentBag:t},children:A({contractAmendmentBag:t,components:{Form:r,SubmitButton:a,ConfirmationForm:m,BackButton:e}})})}n(k,"ContractAmendmentFlow");export{k as a};
|
|
2
|
+
//# sourceMappingURL=chunk-AHZSNZSG.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
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-N6SBUVA6.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 Y=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"),Z=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"),$=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"),ee=n(()=>{let{client:e}=a();return m({mutationFn:n(r=>V({client:e,headers:{Authorization:""},path:r}),"mutationFn")})},"useEmploymentInvite"),te=n(()=>{let{client:e}=a();return m({mutationFn:n(r=>j({client:e,headers:{Authorization:""},body:r}),"mutationFn")})},"useCreateReserveInvoice"),ne=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),{});return{meta:{"x-jsf-fieldsets":u["x-jsf-fieldsets"]},...d(u,{initialValues:{...t,...k}})}},"select")})},"useJSONSchemaForm"),re=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"),oe=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"),se=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"),ae=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"),ie=n(()=>{let{client:e}=a();return m({mutationFn:n(r=>S({client:e,headers:{Authorization:""},body:r}),"mutationFn")})},"useMagicLink"),U=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"),me=n(e=>{let{data:r,isLoading:t}=U(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"),ce=n(()=>{let{client:e}=a();return m({mutationFn:n(r=>z({client:e,headers:{Authorization:""},body:r}),"mutationFn")})},"useConvertCurrency"),le=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{Y as a,Z as b,$ as c,ee as d,te as e,ne as f,re as g,oe as h,se as i,ae as j,ie as k,me as l,ce as m,le as n};
|
|
2
|
+
//# sourceMappingURL=chunk-AYAQLXJH.js.map
|
|
@@ -1 +1 @@
|
|
|
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 return {\n meta: {\n 'x-jsf-fieldsets': jsfSchema['x-jsf-fieldsets'] as JSFFieldset,\n },\n ...createHeadlessForm(jsfSchema, {\n initialValues: {\n ...fieldValues,\n ...moneyFieldsData,\n },\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","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"]}
|
|
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 return {\n meta: {\n 'x-jsf-fieldsets': jsfSchema['x-jsf-fieldsets'] as JSFFieldset,\n },\n ...createHeadlessForm(jsfSchema, {\n initialValues: {\n ...fieldValues,\n ...moneyFieldsData,\n },\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","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"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-ZVXX43AL.js";import{b as t}from"./chunk-PGWKJ6FK.js";import{b as e}from"./chunk-QW4JPW6J.js";import{a as i}from"./chunk-P37U34EQ.js";import{jsx as c}from"react/jsx-runtime";function S({onSubmit:m,onSuccess:d,onError:a}){let{onboardingBag:o}=t(),l=i(async n=>{try{await m?.(o.parseFormValues(n));let r=await o.onSubmit(n);if(r?.data){await d?.(r?.data),o?.next();return}if(r?.error){let p=e(r?.fieldErrors||[],o.meta?.fields?.basic_information);a?.({error:r?.error,rawError:r?.rawError,fieldErrors:p})}}catch(r){a?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit"),f=o.stepState.values?.basic_information||o.initialValues.basic_information;return c(s,{defaultValues:f,onSubmit:l})}i(S,"BasicInformationStep");export{S as a};
|
|
2
|
+
//# sourceMappingURL=chunk-BJFZBI3O.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
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,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-V6W2SJ4Z.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as i}from"react/jsx-runtime";var l=e(({currency:n,desiredCurrency:o,annual_gross_salary_conversion_properties:r,...a})=>i(s,{...a,sourceCurrency:n,targetCurrency:o,conversionFieldName:"annual_gross_salary_conversion",conversionProperties:{...r,description:r?.description||"Estimated amount. This is an estimation. We calculate conversions based on spot rates that are subject to fluctuation over time."},classNamePrefix:"RemoteFlows-AnnualGrossSalary"}),"AnnualGrossSalary");export{l as a};
|
|
2
|
+
//# sourceMappingURL=chunk-CQ2QAZBG.js.map
|