@remoteoss/remote-flows 0.4.0-alpha.11 → 0.4.0-alpha.12

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.
Files changed (85) hide show
  1. package/README.md +1 -0
  2. package/dist/chunk-7N7ND6Z4.js +2 -0
  3. package/dist/chunk-7N7ND6Z4.js.map +1 -0
  4. package/dist/chunk-AN7L3GVL.js +2 -0
  5. package/dist/{chunk-RWYOUDM5.js.map → chunk-AN7L3GVL.js.map} +1 -1
  6. package/dist/chunk-AOJAZ4FT.js +2 -0
  7. package/dist/chunk-AOJAZ4FT.js.map +1 -0
  8. package/dist/chunk-ASFAGLQI.js +2 -0
  9. package/dist/chunk-ASFAGLQI.js.map +1 -0
  10. package/dist/chunk-BYFO5OB6.js +2 -0
  11. package/dist/chunk-BYFO5OB6.js.map +1 -0
  12. package/dist/chunk-D53FKWGJ.js +2 -0
  13. package/dist/chunk-D53FKWGJ.js.map +1 -0
  14. package/dist/{chunk-RIWPSA6V.js → chunk-IEZAM2XO.js} +2 -2
  15. package/dist/{chunk-RC2UQDK7.js → chunk-NIOH7TNP.js} +2 -2
  16. package/dist/{chunk-INW2EQZR.js → chunk-OS3QI7CV.js} +2 -2
  17. package/dist/{chunk-3QTURBOX.js → chunk-QUM7V5EP.js} +2 -2
  18. package/dist/{chunk-IG3FJLDR.js → chunk-RDAO365M.js} +2 -2
  19. package/dist/chunk-WRKHWEZA.js +2 -0
  20. package/dist/chunk-WRKHWEZA.js.map +1 -0
  21. package/dist/chunk-X6DRD2I4.js +2 -0
  22. package/dist/chunk-X6DRD2I4.js.map +1 -0
  23. package/dist/chunk-XQXFQ7LM.js +2 -0
  24. package/dist/{chunk-L6LGRALQ.js.map → chunk-XQXFQ7LM.js.map} +1 -1
  25. package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +1 -1
  26. package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
  27. package/dist/flows/ContractAmendment/context.d.ts +1 -1
  28. package/dist/flows/ContractAmendment/hooks.d.ts +1 -1
  29. package/dist/flows/ContractAmendment/hooks.js +1 -1
  30. package/dist/flows/ContractAmendment/index.d.ts +1 -1
  31. package/dist/flows/ContractAmendment/index.js +1 -1
  32. package/dist/flows/Onboarding/AnnualGrossSalary.js +1 -1
  33. package/dist/flows/Onboarding/BasicInformationStep.d.ts +6 -1
  34. package/dist/flows/Onboarding/BasicInformationStep.js +1 -1
  35. package/dist/flows/Onboarding/BenefitsStep.d.ts +6 -1
  36. package/dist/flows/Onboarding/BenefitsStep.js +1 -1
  37. package/dist/flows/Onboarding/ContractDetailsStep.d.ts +6 -1
  38. package/dist/flows/Onboarding/ContractDetailsStep.js +1 -1
  39. package/dist/flows/Onboarding/OnboardingFlow.d.ts +2 -2
  40. package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
  41. package/dist/flows/Onboarding/OnboardingInvite.d.ts +7 -2
  42. package/dist/flows/Onboarding/OnboardingInvite.js +1 -1
  43. package/dist/flows/Onboarding/SelectCountryStep.d.ts +6 -1
  44. package/dist/flows/Onboarding/SelectCountryStep.js +1 -1
  45. package/dist/flows/Onboarding/api.d.ts +5 -1
  46. package/dist/flows/Onboarding/api.js +1 -1
  47. package/dist/flows/Onboarding/context.d.ts +2 -3
  48. package/dist/flows/Onboarding/hooks.d.ts +3 -4
  49. package/dist/flows/Onboarding/hooks.js +1 -1
  50. package/dist/flows/Onboarding/index.d.ts +1 -1
  51. package/dist/flows/Onboarding/index.js +1 -1
  52. package/dist/flows/Onboarding/types.d.ts +19 -0
  53. package/dist/flows/Termination/TerminationFlow.d.ts +1 -1
  54. package/dist/flows/Termination/TerminationFlow.js +1 -1
  55. package/dist/flows/Termination/context.d.ts +1 -1
  56. package/dist/flows/Termination/hooks.d.ts +1 -1
  57. package/dist/flows/Termination/hooks.js +1 -1
  58. package/dist/flows/Termination/index.d.ts +1 -1
  59. package/dist/flows/Termination/index.js +1 -1
  60. package/dist/index.d.ts +1 -1
  61. package/dist/index.js +1 -1
  62. package/dist/mutations-B6HWH-rZ.d.ts +22 -0
  63. package/package.json +1 -1
  64. package/dist/chunk-GAXGAK4P.js +0 -2
  65. package/dist/chunk-GAXGAK4P.js.map +0 -1
  66. package/dist/chunk-HGHKZF7M.js +0 -2
  67. package/dist/chunk-HGHKZF7M.js.map +0 -1
  68. package/dist/chunk-JTP3LZ77.js +0 -2
  69. package/dist/chunk-JTP3LZ77.js.map +0 -1
  70. package/dist/chunk-KHZ2ITFO.js +0 -2
  71. package/dist/chunk-KHZ2ITFO.js.map +0 -1
  72. package/dist/chunk-L6LGRALQ.js +0 -2
  73. package/dist/chunk-RWYOUDM5.js +0 -2
  74. package/dist/chunk-VEOGRXYK.js +0 -2
  75. package/dist/chunk-VEOGRXYK.js.map +0 -1
  76. package/dist/chunk-VJEJUUY2.js +0 -2
  77. package/dist/chunk-VJEJUUY2.js.map +0 -1
  78. package/dist/chunk-VJEL5MZJ.js +0 -2
  79. package/dist/chunk-VJEL5MZJ.js.map +0 -1
  80. package/dist/mutations-v9H353tz.d.ts +0 -10
  81. /package/dist/{chunk-RIWPSA6V.js.map → chunk-IEZAM2XO.js.map} +0 -0
  82. /package/dist/{chunk-RC2UQDK7.js.map → chunk-NIOH7TNP.js.map} +0 -0
  83. /package/dist/{chunk-INW2EQZR.js.map → chunk-OS3QI7CV.js.map} +0 -0
  84. /package/dist/{chunk-3QTURBOX.js.map → chunk-QUM7V5EP.js.map} +0 -0
  85. /package/dist/{chunk-IG3FJLDR.js.map → chunk-RDAO365M.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{a as z}from"./chunk-WVJDCDGZ.js";import{b as x}from"./chunk-PWUYHFON.js";import{d as _,f as F,g as b,h as C,j as g,k as S,m as j,o as w,p as v,q as E,s as O,v as q,x as P}from"./chunk-WKK63LAY.js";import{d as a}from"./chunk-3ZWDIEEM.js";import{a as V}from"./chunk-MH6KKP6K.js";import{a as r}from"./chunk-P37U34EQ.js";import{createHeadlessForm as h,modify as d}from"@remoteoss/json-schema-form";import{useMutation as c,useQuery as l}from"@tanstack/react-query";var H=r(e=>{let{client:n}=a();return l({queryKey:["employment",e],retry:!1,enabled:!!e,select:r(({data:t})=>t?.data.employment,"select"),queryFn:r(async()=>{let t=await v({client:n,headers:{Authorization:""},path:{employment_id:e}});if(t.error||!t.data)throw new Error("Failed to fetch employment data");return t},"queryFn")})},"useEmployment"),W=r(e=>{let{client:n}=a();return l({queryKey:["company",e],retry:!1,enabled:!!e,queryFn:r(async()=>{let t=await S({client:n,headers:{Authorization:""},path:{company_id:e}});if(t.error||!t.data)throw new Error("Failed to fetch employment data");return t},"queryFn"),select:r(({data:t})=>t.data.company,"select")})},"useCompany"),X=r(e=>{let{client:n}=a();return l({queryKey:["benefit-offers",e],retry:!1,enabled:!!e,queryFn:r(async()=>F({client:n,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:r(({data:t})=>t?.data?.reduce((o,s)=>({...o,[s.benefit_group.slug]:{value:s.benefit_tier?.slug??""}}),{}),"select")})},"useBenefitOffers"),Y=r(()=>{let{client:e}=a();return c({mutationFn:r(n=>q({client:e,headers:{Authorization:""},path:n}),"mutationFn")})},"useEmploymentInvite"),Z=r(()=>{let{client:e}=a();return c({mutationFn:r(n=>g({client:e,headers:{Authorization:""},body:n}),"mutationFn")})},"useCreateReserveInvoice"),$=r(({countryCode:e,form:n,fieldValues:t,options:o})=>{let{client:s}=a(),i=o?.jsonSchemaVersion?.form_schema?.[n]?{json_schema_version:o.jsonSchemaVersion.form_schema[n]}:{};return l({queryKey:["onboarding-json-schema-form",e,n],retry:!1,queryFn:r(async()=>{let m=await j({client:s,headers:{Authorization:""},path:{country_code:e,form:n},query:{skip_benefits:!0,...i}});if(m.error||!m.data)throw new Error("Failed to fetch onboarding schema");return m},"queryFn"),enabled:o?.queryOptions?.enabled,select:r(({data:m})=>{let u=m?.data||{};if(o&&o.jsfModify){let{schema:f}=d(u,o.jsfModify);u=f}let y=x(u.properties||{},"money").reduce((f,p)=>(f[p]=V(t[p]),f),{});return h(u,{initialValues:{...t,...y}})},"select")})},"useJSONSchemaForm"),ee=r((e,n,t)=>{let o=t?.jsonSchemaVersion?.benefit_offers_form_schema?{json_schema_version:t.jsonSchemaVersion.benefit_offers_form_schema}:{},{client:s}=a();return l({queryKey:["benefit-offers-schema",e],retry:!1,enabled:!!e,queryFn:r(async()=>{let i=await w({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:r(({data:i})=>{let m=i?.data?.schema||{};if(t&&t.jsfModify?.benefits){let{schema:y}=d(m,t.jsfModify.benefits);m=y}let u=Object.keys(n).length>0;return h(m,{initialValues:u?{...n}:{}})},"select")})},"useBenefitOffersSchema"),te=r(e=>{let{client:n}=a(),t=e?.jsonSchemaVersion?.form_schema?.employment_basic_information?{json_schema_version:e.jsonSchemaVersion.form_schema.employment_basic_information}:{};return c({mutationFn:r(o=>_({client:n,headers:{Authorization:""},body:o,query:{...t}}),"mutationFn")})},"useCreateEmployment"),ne=r(e=>{let{client:n}=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 c({mutationFn:r(({employmentId:s,...i})=>E({client:n,headers:{Authorization:""},body:i,path:{employment_id:s},query:{skip_benefits:!0,...o}}),"mutationFn")})},"useUpdateEmployment"),re=r(e=>{let{client:n}=a();return c({mutationFn:r(({employmentId:t,...o})=>{let s=e?.jsonSchemaVersion?.benefit_offers_form_schema?{json_schema_version:e.jsonSchemaVersion.benefit_offers_form_schema}:{};return b({client:n,headers:{Authorization:""},body:o,path:{employment_id:t},query:{...s}})},"mutationFn")})},"useUpdateBenefitsOffers"),oe=r(()=>{let{client:e}=a();return c({mutationFn:r(n=>C({client:e,headers:{Authorization:""},body:n}),"mutationFn")})},"useMagicLink"),M=r(()=>{let{client:e}=a();return l({queryKey:["countries"],retry:!1,queryFn:r(async()=>{let n=await O({client:e,headers:{Authorization:""}});if(n.error||!n.data)throw new Error("Failed to fetch supported countries");return n},"queryFn"),select:r(({data:n})=>n?.data?.map(t=>({label:t.name,value:t.code}))||[],"select")})},"useCountries"),se=r(e=>{let{data:n,isLoading:t}=M(),{schema:o}=d(z.data.schema,e?.jsfModify||{}),s=h(o);if(n){let i=s.fields.find(m=>m.name==="country");i&&(i.options=n)}return{isLoading:t,selectCountryForm:s}},"useCountriesSchemaField"),ae=r(()=>{let{client:e}=a();return c({mutationFn:r(n=>P({client:e,headers:{Authorization:""},body:n}),"mutationFn")})},"useConvertCurrency");export{H as a,W as b,X as c,Y as d,Z as e,$ as f,ee as g,te as h,ne as i,re as j,oe as k,se as l,ae as m};
2
- //# sourceMappingURL=chunk-RWYOUDM5.js.map
@@ -1,2 +0,0 @@
1
- import{d as g,e as S}from"./chunk-RWYOUDM5.js";import{b as R}from"./chunk-PGWKJ6FK.js";import{a as m}from"./chunk-KHZ2ITFO.js";import{b as f}from"./chunk-GEYFQVQI.js";import{b as y}from"./chunk-3ZWDIEEM.js";import{a}from"./chunk-P37U34EQ.js";import{jsx as w}from"react/jsx-runtime";function O({onSubmit:I,onSuccess:d,onError:o,render:u,...n}){let{components:b}=y(),{onboardingBag:t,setCreditScore:c}=R(),i=g(),s=S(),{mutateAsync:_}=m(i),{mutateAsync:C}=m(s),l=a(async()=>{try{if(await I?.(),t.creditRiskStatus==="deposit_required"&&t.employmentId&&t.employment?.status&&!t.isEmploymentReadOnly){let e=await C({employment_slug:t.employmentId});if(e.data){await d?.({data:e.data,employmentStatus:"created_awaiting_reserve"}),c?.(r=>({...r,showReserveInvoice:!0})),t.refetchEmployment();return}e.error&&o?.(e.error)}else if(t.employmentId){let e=await _({employment_id:t.employmentId});if(e.data){await d?.({data:e.data,employmentStatus:"invited"}),c?.(r=>({...r,showInviteSuccessful:!0})),t.refetchEmployment();return}e.error&&o?.(e.error)}}catch(e){o?.(e)}},"handleSubmit"),p=t.creditRiskStatus==="deposit_required"&&t.employment?.status&&!t.isEmploymentReadOnly,v=b?.button;return v?w(v,{...n,disabled:i.isPending||s.isPending||n.disabled,onClick:e=>{l(),n.onClick?.(e)},children:u({employmentStatus:p?"created_awaiting_reserve":"invited"})}):w(f,{...n,disabled:i.isPending||s.isPending||n.disabled,onClick:()=>{l()},children:u({employmentStatus:p?"created_awaiting_reserve":"invited"})})}a(O,"OnboardingInvite");export{O as a};
2
- //# sourceMappingURL=chunk-VEOGRXYK.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/OnboardingInvite.tsx"],"sourcesContent":["import { ButtonHTMLAttributes, ReactNode } from 'react';\nimport { useEmploymentInvite } from './api';\nimport { Button } from '@/src/components/ui/button';\nimport { useCreateReserveInvoice } from '@/src/flows/Onboarding/api';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport { SuccessResponse } from '@/src/client';\nimport { useOnboardingContext } from './context';\nimport { useFormFields } from '@/src/context';\n\nexport type OnboardingInviteProps = ButtonHTMLAttributes<HTMLButtonElement> & {\n onSuccess?: ({\n data,\n employmentStatus,\n }: {\n data: SuccessResponse;\n employmentStatus: 'invited' | 'created_awaiting_reserve';\n }) => void | Promise<void>;\n onError?: (error: unknown) => void;\n onSubmit?: () => void | Promise<void>;\n render: (props: {\n employmentStatus: 'invited' | 'created_awaiting_reserve';\n }) => ReactNode;\n} & Record<string, unknown>;\n\nexport function OnboardingInvite({\n onSubmit,\n onSuccess,\n onError,\n render,\n ...props\n}: OnboardingInviteProps) {\n const { components } = useFormFields();\n const { onboardingBag, setCreditScore } = useOnboardingContext();\n const employmentInviteMutation = useEmploymentInvite();\n const useCreateReserveInvoiceMutation = useCreateReserveInvoice();\n\n const { mutateAsync: employmentInviteMutationAsync } = mutationToPromise(\n employmentInviteMutation,\n );\n\n const { mutateAsync: createReserveInvoiceMutationAsync } = mutationToPromise(\n useCreateReserveInvoiceMutation,\n );\n\n const handleSubmit = async () => {\n try {\n await onSubmit?.();\n if (\n onboardingBag.creditRiskStatus === 'deposit_required' &&\n onboardingBag.employmentId &&\n onboardingBag.employment?.status &&\n !onboardingBag.isEmploymentReadOnly\n ) {\n const response = await createReserveInvoiceMutationAsync({\n employment_slug: onboardingBag.employmentId,\n });\n if (response.data) {\n await onSuccess?.({\n data: response.data as SuccessResponse,\n employmentStatus: 'created_awaiting_reserve',\n });\n setCreditScore?.((prev) => ({\n ...prev,\n showReserveInvoice: true,\n }));\n onboardingBag.refetchEmployment();\n return;\n }\n\n if (response.error) {\n onError?.(response.error);\n }\n } else if (onboardingBag.employmentId) {\n const response = await employmentInviteMutationAsync({\n employment_id: onboardingBag.employmentId,\n });\n if (response.data) {\n await onSuccess?.({\n data: response.data as SuccessResponse,\n employmentStatus: 'invited',\n });\n setCreditScore?.((prev) => ({\n ...prev,\n showInviteSuccessful: true,\n }));\n onboardingBag.refetchEmployment();\n return;\n }\n if (response.error) {\n onError?.(response.error);\n }\n }\n } catch (error) {\n onError?.(error);\n }\n };\n\n const isReserveFlow =\n onboardingBag.creditRiskStatus === 'deposit_required' &&\n onboardingBag.employment?.status &&\n !onboardingBag.isEmploymentReadOnly;\n\n const CustomButton = components?.button;\n if (CustomButton) {\n return (\n <CustomButton\n {...props}\n disabled={\n employmentInviteMutation.isPending ||\n useCreateReserveInvoiceMutation.isPending ||\n props.disabled\n }\n onClick={(evt) => {\n handleSubmit();\n props.onClick?.(evt);\n }}\n >\n {render({\n employmentStatus: isReserveFlow\n ? 'created_awaiting_reserve'\n : 'invited',\n })}\n </CustomButton>\n );\n }\n\n return (\n <Button\n {...props}\n disabled={\n employmentInviteMutation.isPending ||\n useCreateReserveInvoiceMutation.isPending ||\n props.disabled\n }\n onClick={() => {\n handleSubmit();\n }}\n >\n {render({\n employmentStatus: isReserveFlow\n ? 'created_awaiting_reserve'\n : 'invited',\n })}\n </Button>\n );\n}\n"],"mappings":"kPAyGM,cAAAA,MAAA,oBAjFC,SAASC,EAAiB,CAC/B,SAAAC,EACA,UAAAC,EACA,QAAAC,EACA,OAAAC,EACA,GAAGC,CACL,EAA0B,CACxB,GAAM,CAAE,WAAAC,CAAW,EAAIC,EAAc,EAC/B,CAAE,cAAAC,EAAe,eAAAC,CAAe,EAAIC,EAAqB,EACzDC,EAA2BC,EAAoB,EAC/CC,EAAkCC,EAAwB,EAE1D,CAAE,YAAaC,CAA8B,EAAIC,EACrDL,CACF,EAEM,CAAE,YAAaM,CAAkC,EAAID,EACzDH,CACF,EAEMK,EAAeC,EAAA,SAAY,CAC/B,GAAI,CAEF,GADA,MAAMlB,IAAW,EAEfO,EAAc,mBAAqB,oBACnCA,EAAc,cACdA,EAAc,YAAY,QAC1B,CAACA,EAAc,qBACf,CACA,IAAMY,EAAW,MAAMH,EAAkC,CACvD,gBAAiBT,EAAc,YACjC,CAAC,EACD,GAAIY,EAAS,KAAM,CACjB,MAAMlB,IAAY,CAChB,KAAMkB,EAAS,KACf,iBAAkB,0BACpB,CAAC,EACDX,IAAkBY,IAAU,CAC1B,GAAGA,EACH,mBAAoB,EACtB,EAAE,EACFb,EAAc,kBAAkB,EAChC,MACF,CAEIY,EAAS,OACXjB,IAAUiB,EAAS,KAAK,CAE5B,SAAWZ,EAAc,aAAc,CACrC,IAAMY,EAAW,MAAML,EAA8B,CACnD,cAAeP,EAAc,YAC/B,CAAC,EACD,GAAIY,EAAS,KAAM,CACjB,MAAMlB,IAAY,CAChB,KAAMkB,EAAS,KACf,iBAAkB,SACpB,CAAC,EACDX,IAAkBY,IAAU,CAC1B,GAAGA,EACH,qBAAsB,EACxB,EAAE,EACFb,EAAc,kBAAkB,EAChC,MACF,CACIY,EAAS,OACXjB,IAAUiB,EAAS,KAAK,CAE5B,CACF,OAASE,EAAO,CACdnB,IAAUmB,CAAK,CACjB,CACF,EAnDqB,gBAqDfC,EACJf,EAAc,mBAAqB,oBACnCA,EAAc,YAAY,QAC1B,CAACA,EAAc,qBAEXgB,EAAelB,GAAY,OACjC,OAAIkB,EAEAzB,EAACyB,EAAA,CACE,GAAGnB,EACJ,SACEM,EAAyB,WACzBE,EAAgC,WAChCR,EAAM,SAER,QAAUoB,GAAQ,CAChBP,EAAa,EACbb,EAAM,UAAUoB,CAAG,CACrB,EAEC,SAAArB,EAAO,CACN,iBAAkBmB,EACd,2BACA,SACN,CAAC,EACH,EAKFxB,EAAC2B,EAAA,CACE,GAAGrB,EACJ,SACEM,EAAyB,WACzBE,EAAgC,WAChCR,EAAM,SAER,QAAS,IAAM,CACba,EAAa,CACf,EAEC,SAAAd,EAAO,CACN,iBAAkBmB,EACd,2BACA,SACN,CAAC,EACH,CAEJ,CAzHgBJ,EAAAnB,EAAA","names":["jsx","OnboardingInvite","onSubmit","onSuccess","onError","render","props","components","useFormFields","onboardingBag","setCreditScore","useOnboardingContext","employmentInviteMutation","useEmploymentInvite","useCreateReserveInvoiceMutation","useCreateReserveInvoice","employmentInviteMutationAsync","mutationToPromise","createReserveInvoiceMutationAsync","handleSubmit","__name","response","prev","error","isReserveFlow","CustomButton","evt","Button"]}
@@ -1,2 +0,0 @@
1
- import{a as i}from"./chunk-QKTDO33H.js";import{b as n}from"./chunk-PGWKJ6FK.js";import{a as r}from"./chunk-P37U34EQ.js";import{jsx as l}from"react/jsx-runtime";function u({onSubmit:s,onError:a,onSuccess:m}){let{onboardingBag:t}=n(),p=r(async e=>{try{await s?.(t.parseFormValues(e));let o=await t.onSubmit(e);if(o?.data){await m?.(o.data),t?.next();return}o?.error&&a?.(o.error)}catch(o){a?.(o)}},"handleSubmit");return l(i,{defaultValues:t.stepState.values?.contract_details||t.initialValues.contract_details,onSubmit:p})}r(u,"ContractDetailsStep");export{u as a};
2
- //# sourceMappingURL=chunk-VJEJUUY2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/ContractDetailsStep.tsx"],"sourcesContent":["import { useOnboardingContext } from './context';\nimport { OnboardingForm } from '@/src/flows/Onboarding/OnboardingForm';\nimport { EmploymentResponse } from '@/src/client';\nimport { ContractDetailsFormPayload } from '@/src/flows/Onboarding/types';\nimport { $TSFixMe } from '@/src/types/remoteFlows';\n\ntype ContractDetailsStepProps = {\n /*\n * The function is called when the form is submitted. It receives the form values as an argument.\n */\n onSubmit?: (payload: ContractDetailsFormPayload) => void | Promise<void>;\n /*\n * The function is called when the form submission is successful.\n */\n onSuccess?: (response: EmploymentResponse) => void | Promise<void>;\n /*\n * The function is called when an error occurs during form submission.\n */\n onError?: (error: Error) => void;\n};\n\nexport function ContractDetailsStep({\n onSubmit,\n onError,\n onSuccess,\n}: ContractDetailsStepProps) {\n const { onboardingBag } = useOnboardingContext();\n const handleSubmit = async (payload: $TSFixMe) => {\n try {\n await onSubmit?.(\n onboardingBag.parseFormValues(payload) as ContractDetailsFormPayload,\n );\n const response = await onboardingBag.onSubmit(payload);\n if (response?.data) {\n await onSuccess?.(response.data as EmploymentResponse);\n onboardingBag?.next();\n return;\n }\n if (response?.error) {\n onError?.(response.error);\n }\n } catch (error: unknown) {\n onError?.(error as Error);\n }\n };\n\n return (\n <OnboardingForm\n defaultValues={\n onboardingBag.stepState.values?.contract_details ||\n onboardingBag.initialValues.contract_details\n }\n onSubmit={handleSubmit}\n />\n );\n}\n"],"mappings":"wHA+CI,cAAAA,MAAA,oBA1BG,SAASC,EAAoB,CAClC,SAAAC,EACA,QAAAC,EACA,UAAAC,CACF,EAA6B,CAC3B,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAqB,EACzCC,EAAeC,EAAA,MAAOC,GAAsB,CAChD,GAAI,CACF,MAAMP,IACJG,EAAc,gBAAgBI,CAAO,CACvC,EACA,IAAMC,EAAW,MAAML,EAAc,SAASI,CAAO,EACrD,GAAIC,GAAU,KAAM,CAClB,MAAMN,IAAYM,EAAS,IAA0B,EACrDL,GAAe,KAAK,EACpB,MACF,CACIK,GAAU,OACZP,IAAUO,EAAS,KAAK,CAE5B,OAASC,EAAgB,CACvBR,IAAUQ,CAAc,CAC1B,CACF,EAjBqB,gBAmBrB,OACEX,EAACY,EAAA,CACC,cACEP,EAAc,UAAU,QAAQ,kBAChCA,EAAc,cAAc,iBAE9B,SAAUE,EACZ,CAEJ,CAlCgBC,EAAAP,EAAA","names":["jsx","ContractDetailsStep","onSubmit","onError","onSuccess","onboardingBag","useOnboardingContext","handleSubmit","__name","payload","response","error","OnboardingForm"]}
@@ -1,2 +0,0 @@
1
- import{a}from"./chunk-QKTDO33H.js";import{b as i}from"./chunk-PGWKJ6FK.js";import{d as s}from"./chunk-MH6KKP6K.js";import{a as t}from"./chunk-P37U34EQ.js";import{jsx as d}from"react/jsx-runtime";function P({components:m,onSubmit:p,onError:n,onSuccess:f}){let{onboardingBag:e}=i(),u=e.fields??[],c=s(u,e.initialValues.benefits);return d(a,{defaultValues:c,components:m,onSubmit:t(async r=>{try{await p?.(r);let o=await e.onSubmit(r);if(o?.data){await f?.(o.data),e?.next();return}o?.error&&n?.(o.error)}catch(o){n?.(o)}},"handleSubmit")})}t(P,"BenefitsStep");export{P as a};
2
- //# sourceMappingURL=chunk-VJEL5MZJ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/BenefitsStep.tsx"],"sourcesContent":["import { Components } from '@/src/types/remoteFlows';\nimport { OnboardingForm } from '@/src/flows/Onboarding/OnboardingForm';\nimport { useOnboardingContext } from '@/src/flows/Onboarding/context';\nimport { SuccessResponse } from '@/src/client';\nimport { getInitialValues } from '@/src/components/form/utils';\nimport { BenefitsFormPayload } from '@/src/flows/Onboarding/types';\nimport { $TSFixMe } from '@/src/types/remoteFlows';\n\ntype BenefitsStepProps = {\n components?: Components;\n /**\n * Callback function to be called when the benefits form is submitted.\n * It can be used to perform any additional validation or processing before\n * the onboarding moves to the last step.\n * @param values\n * @returns\n */\n onSubmit?: (values: BenefitsFormPayload) => void | Promise<void>;\n /**\n * Callback function to be called when the submitting benefits form fails.\n * @param error\n * @returns\n */\n onError?: (error: Error) => void;\n /**\n * Callback function to be called when benefits form is successfully submitted.\n * This function is called after the submitting benefits form is submitted.\n * @param data\n * @returns\n */\n onSuccess?: (data: SuccessResponse) => void | Promise<void>;\n};\n\nexport function BenefitsStep({\n components,\n onSubmit,\n onError,\n onSuccess,\n}: BenefitsStepProps) {\n const { onboardingBag } = useOnboardingContext();\n const fields = onboardingBag.fields ?? [];\n const initialValues = getInitialValues(\n fields,\n onboardingBag.initialValues.benefits,\n );\n\n const handleSubmit = async (payload: $TSFixMe) => {\n try {\n await onSubmit?.(payload as BenefitsFormPayload);\n const response = await onboardingBag.onSubmit(payload);\n if (response?.data) {\n await onSuccess?.(response.data as SuccessResponse);\n onboardingBag?.next();\n return;\n }\n if (response?.error) {\n onError?.(response.error);\n }\n } catch (error: unknown) {\n onError?.(error as Error);\n }\n };\n\n return (\n <OnboardingForm\n defaultValues={initialValues}\n components={components}\n onSubmit={handleSubmit}\n />\n );\n}\n"],"mappings":"2JAgEI,cAAAA,MAAA,oBA/BG,SAASC,EAAa,CAC3B,WAAAC,EACA,SAAAC,EACA,QAAAC,EACA,UAAAC,CACF,EAAsB,CACpB,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAqB,EACzCC,EAASF,EAAc,QAAU,CAAC,EAClCG,EAAgBC,EACpBF,EACAF,EAAc,cAAc,QAC9B,EAmBA,OACEN,EAACW,EAAA,CACC,cAAeF,EACf,WAAYP,EACZ,SArBiBU,EAAA,MAAOC,GAAsB,CAChD,GAAI,CACF,MAAMV,IAAWU,CAA8B,EAC/C,IAAMC,EAAW,MAAMR,EAAc,SAASO,CAAO,EACrD,GAAIC,GAAU,KAAM,CAClB,MAAMT,IAAYS,EAAS,IAAuB,EAClDR,GAAe,KAAK,EACpB,MACF,CACIQ,GAAU,OACZV,IAAUU,EAAS,KAAK,CAE5B,OAASC,EAAgB,CACvBX,IAAUW,CAAc,CAC1B,CACF,EAfqB,gBAsBnB,CAEJ,CArCgBH,EAAAX,EAAA","names":["jsx","BenefitsStep","components","onSubmit","onError","onSuccess","onboardingBag","useOnboardingContext","fields","initialValues","getInitialValues","OnboardingForm","__name","payload","response","error"]}
@@ -1,10 +0,0 @@
1
- interface SuccessResponse<D> {
2
- data: D;
3
- error: null;
4
- }
5
- interface ErrorResponse<E> {
6
- data: null;
7
- error: E;
8
- }
9
-
10
- export type { ErrorResponse as E, SuccessResponse as S };