@remoteoss/remote-flows 0.1.2 → 0.2.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.
Files changed (151) hide show
  1. package/README.md +2 -0
  2. package/dist/{chunk-2DWTIFOU.js → chunk-2EKC7DK3.js} +2 -2
  3. package/dist/{chunk-G2GI6FEO.js → chunk-55VACCVZ.js} +2 -2
  4. package/dist/{chunk-G2GI6FEO.js.map → chunk-55VACCVZ.js.map} +1 -1
  5. package/dist/{chunk-5YDR5BIG.js → chunk-6LTJBLSD.js} +2 -2
  6. package/dist/chunk-AYFHWLQZ.js +2 -0
  7. package/dist/chunk-AYFHWLQZ.js.map +1 -0
  8. package/dist/chunk-CTG3DYJR.js +2 -0
  9. package/dist/chunk-CTG3DYJR.js.map +1 -0
  10. package/dist/chunk-EQBNHLR4.js +2 -0
  11. package/dist/chunk-EQBNHLR4.js.map +1 -0
  12. package/dist/{chunk-QWZVBZED.js → chunk-F5QJZKDL.js} +2 -2
  13. package/dist/chunk-FZ2HS6G7.js +2 -0
  14. package/dist/chunk-FZ2HS6G7.js.map +1 -0
  15. package/dist/chunk-GW7GG5ZW.js +2 -0
  16. package/dist/chunk-GW7GG5ZW.js.map +1 -0
  17. package/dist/chunk-HP7ZP256.js +2 -0
  18. package/dist/chunk-HP7ZP256.js.map +1 -0
  19. package/dist/{chunk-ZCG5JUUR.js → chunk-IJPE22L7.js} +2 -2
  20. package/dist/chunk-IPZEZMLD.js +2 -0
  21. package/dist/chunk-IPZEZMLD.js.map +1 -0
  22. package/dist/chunk-JLUDKN4H.js +2 -0
  23. package/dist/chunk-JLUDKN4H.js.map +1 -0
  24. package/dist/chunk-JODJFARP.js +2 -0
  25. package/dist/chunk-JODJFARP.js.map +1 -0
  26. package/dist/chunk-KPSFJ6BN.js +2 -0
  27. package/dist/chunk-KPSFJ6BN.js.map +1 -0
  28. package/dist/chunk-LNF27NTC.js +2 -0
  29. package/dist/chunk-LNF27NTC.js.map +1 -0
  30. package/dist/chunk-N5AQSLAU.js +2 -0
  31. package/dist/chunk-N5AQSLAU.js.map +1 -0
  32. package/dist/{chunk-WTGUGPHV.js → chunk-NBD4VOG3.js} +2 -2
  33. package/dist/{chunk-TPKAREI4.js → chunk-RCX4JUI3.js} +2 -2
  34. package/dist/chunk-S56EWAS4.js +2 -0
  35. package/dist/chunk-S56EWAS4.js.map +1 -0
  36. package/dist/chunk-SABMDOWE.js +2 -0
  37. package/dist/chunk-SABMDOWE.js.map +1 -0
  38. package/dist/chunk-SEUQNAF6.js +2 -0
  39. package/dist/chunk-SEUQNAF6.js.map +1 -0
  40. package/dist/chunk-VX2UC3HG.js +2 -0
  41. package/dist/chunk-VX2UC3HG.js.map +1 -0
  42. package/dist/chunk-W5DG5WWJ.js +2 -0
  43. package/dist/chunk-W5DG5WWJ.js.map +1 -0
  44. package/dist/chunk-XFD3ULUF.js +2 -0
  45. package/dist/chunk-XFD3ULUF.js.map +1 -0
  46. package/dist/{chunk-ROPNMSSM.js → chunk-XULIEA44.js} +2 -2
  47. package/dist/{chunk-5O2L2L25.js → chunk-YAHWFLDH.js} +2 -2
  48. package/dist/{chunk-6DMCAUPE.js → chunk-YBACB5A6.js} +2 -2
  49. package/dist/chunk-YBACB5A6.js.map +1 -0
  50. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.d.ts +1 -1
  51. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.js +1 -1
  52. package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +1 -1
  53. package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
  54. package/dist/flows/ContractAmendment/ContractAmendmentForm.d.ts +1 -1
  55. package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
  56. package/dist/flows/ContractAmendment/context.d.ts +1 -1
  57. package/dist/flows/ContractAmendment/hooks.d.ts +1 -1
  58. package/dist/flows/ContractAmendment/hooks.js +1 -1
  59. package/dist/flows/ContractAmendment/index.d.ts +1 -1
  60. package/dist/flows/ContractAmendment/index.js +1 -1
  61. package/dist/flows/ContractAmendment/utils.d.ts +1 -1
  62. package/dist/flows/ContractAmendment/utils.js +1 -1
  63. package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +1 -1
  64. package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
  65. package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +1 -1
  66. package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
  67. package/dist/flows/CostCalculator/Results/CostCalculatorResults.d.ts +1 -1
  68. package/dist/flows/CostCalculator/Results/CostCalculatorResults.js +1 -1
  69. package/dist/flows/CostCalculator/context.d.ts +1 -1
  70. package/dist/flows/CostCalculator/hooks.d.ts +1 -1
  71. package/dist/flows/CostCalculator/hooks.js +1 -1
  72. package/dist/flows/CostCalculator/index.d.ts +1 -1
  73. package/dist/flows/CostCalculator/index.js +1 -1
  74. package/dist/flows/CostCalculator/types.d.ts +1 -1
  75. package/dist/flows/CostCalculator/utils.d.ts +1 -1
  76. package/dist/flows/CostCalculator/utils.js +1 -1
  77. package/dist/flows/Termination/TerminationBack.d.ts +5 -0
  78. package/dist/flows/Termination/TerminationBack.js +2 -0
  79. package/dist/flows/Termination/TerminationFlow.d.ts +31 -5
  80. package/dist/flows/Termination/TerminationFlow.js +1 -1
  81. package/dist/flows/Termination/TerminationForm.d.ts +2 -2
  82. package/dist/flows/Termination/TerminationForm.js +1 -1
  83. package/dist/flows/Termination/TimeOff.d.ts +11 -0
  84. package/dist/flows/Termination/TimeOff.js +2 -0
  85. package/dist/flows/Termination/TimeOff.js.map +1 -0
  86. package/dist/flows/Termination/context.d.ts +14 -5
  87. package/dist/flows/Termination/hooks.d.ts +51 -5
  88. package/dist/flows/Termination/hooks.js +1 -1
  89. package/dist/flows/Termination/index.d.ts +5 -1
  90. package/dist/flows/Termination/index.js +1 -1
  91. package/dist/flows/Termination/json-schemas/additionalInformation.d.ts +25 -0
  92. package/dist/flows/Termination/json-schemas/additionalInformation.js +2 -0
  93. package/dist/flows/Termination/json-schemas/additionalInformation.js.map +1 -0
  94. package/dist/flows/Termination/json-schemas/defaultSchema.d.ts +15 -0
  95. package/dist/flows/Termination/json-schemas/defaultSchema.js +2 -0
  96. package/dist/flows/Termination/json-schemas/defaultSchema.js.map +1 -0
  97. package/dist/flows/Termination/json-schemas/employeeComunication.d.ts +133 -0
  98. package/dist/flows/Termination/json-schemas/employeeComunication.js +2 -0
  99. package/dist/flows/Termination/json-schemas/employeeComunication.js.map +1 -0
  100. package/dist/flows/Termination/{jsonSchema.d.ts → json-schemas/jsonSchema.d.ts} +42 -0
  101. package/dist/flows/Termination/json-schemas/jsonSchema.js +2 -0
  102. package/dist/flows/Termination/json-schemas/jsonSchema.js.map +1 -0
  103. package/dist/flows/Termination/json-schemas/paidTimeOff.d.ts +71 -0
  104. package/dist/flows/Termination/json-schemas/paidTimeOff.js +2 -0
  105. package/dist/flows/Termination/json-schemas/paidTimeOff.js.map +1 -0
  106. package/dist/flows/Termination/json-schemas/schema.d.ts +8 -0
  107. package/dist/flows/Termination/json-schemas/schema.js +2 -0
  108. package/dist/flows/Termination/json-schemas/schema.js.map +1 -0
  109. package/dist/flows/Termination/json-schemas/terminationDetails.d.ts +126 -0
  110. package/dist/flows/Termination/json-schemas/terminationDetails.js +2 -0
  111. package/dist/flows/Termination/json-schemas/terminationDetails.js.map +1 -0
  112. package/dist/flows/Termination/types.d.ts +6 -6
  113. package/dist/flows/Termination/utils.d.ts +8 -0
  114. package/dist/flows/Termination/utils.js +2 -0
  115. package/dist/flows/Termination/utils.js.map +1 -0
  116. package/dist/flows/useStepState.d.ts +6 -6
  117. package/dist/flows/useStepState.js +1 -1
  118. package/dist/index.css +1 -1
  119. package/dist/index.css.map +1 -1
  120. package/dist/index.d.ts +30 -4
  121. package/dist/index.js +1 -1
  122. package/dist/index.js.map +1 -1
  123. package/dist/{types.gen-BhkGMC9-.d.ts → types.gen-BgLeTAqP.d.ts} +1 -1
  124. package/package.json +2 -1
  125. package/dist/chunk-5PXYSIYN.js +0 -2
  126. package/dist/chunk-5PXYSIYN.js.map +0 -1
  127. package/dist/chunk-6DMCAUPE.js.map +0 -1
  128. package/dist/chunk-HELGRHUB.js +0 -2
  129. package/dist/chunk-HELGRHUB.js.map +0 -1
  130. package/dist/chunk-JWMY3OVH.js +0 -2
  131. package/dist/chunk-JWMY3OVH.js.map +0 -1
  132. package/dist/chunk-LUCFM5TE.js +0 -2
  133. package/dist/chunk-LUCFM5TE.js.map +0 -1
  134. package/dist/chunk-RL2KU7BM.js +0 -2
  135. package/dist/chunk-RL2KU7BM.js.map +0 -1
  136. package/dist/chunk-TIXDBKBM.js +0 -2
  137. package/dist/chunk-TIXDBKBM.js.map +0 -1
  138. package/dist/chunk-XFE56PM4.js +0 -2
  139. package/dist/chunk-XFE56PM4.js.map +0 -1
  140. package/dist/chunk-Y5UG6SJJ.js +0 -2
  141. package/dist/chunk-Y5UG6SJJ.js.map +0 -1
  142. package/dist/flows/Termination/jsonSchema.js +0 -2
  143. /package/dist/{chunk-2DWTIFOU.js.map → chunk-2EKC7DK3.js.map} +0 -0
  144. /package/dist/{chunk-5YDR5BIG.js.map → chunk-6LTJBLSD.js.map} +0 -0
  145. /package/dist/{chunk-QWZVBZED.js.map → chunk-F5QJZKDL.js.map} +0 -0
  146. /package/dist/{chunk-ZCG5JUUR.js.map → chunk-IJPE22L7.js.map} +0 -0
  147. /package/dist/{chunk-WTGUGPHV.js.map → chunk-NBD4VOG3.js.map} +0 -0
  148. /package/dist/{chunk-TPKAREI4.js.map → chunk-RCX4JUI3.js.map} +0 -0
  149. /package/dist/{chunk-ROPNMSSM.js.map → chunk-XULIEA44.js.map} +0 -0
  150. /package/dist/{chunk-5O2L2L25.js.map → chunk-YAHWFLDH.js.map} +0 -0
  151. /package/dist/flows/Termination/{jsonSchema.js.map → TerminationBack.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ui/form.tsx","../src/components/ui/label.tsx"],"sourcesContent":["import * as LabelPrimitive from '@radix-ui/react-label';\nimport { Slot } from '@radix-ui/react-slot';\nimport * as React from 'react';\nimport DOMPurify from 'dompurify';\nimport {\n Controller,\n ControllerProps,\n FieldPath,\n FieldValues,\n FormProvider,\n useFormContext,\n useFormState,\n} from 'react-hook-form';\n\nimport { Label } from '@/src/components/ui/label';\nimport { cn } from '@/src/lib/utils';\n\nconst Form = FormProvider;\n\ntype FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> = {\n name: TName;\n};\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>(\n {} as FormFieldContextValue,\n);\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n );\n};\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext);\n const itemContext = React.useContext(FormItemContext);\n const { getFieldState } = useFormContext();\n const formState = useFormState({ name: fieldContext.name });\n const fieldState = getFieldState(fieldContext.name, formState);\n\n if (!fieldContext) {\n throw new Error('useFormField should be used within <FormField>');\n }\n\n const { id } = itemContext;\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n };\n};\n\ntype FormItemContextValue = {\n id: string;\n};\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue,\n);\n\nfunction FormItem({ className, ...props }: React.ComponentProps<'div'>) {\n const id = React.useId();\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div\n data-slot=\"form-item\"\n {...props}\n className={cn('grid gap-2', className)}\n />\n </FormItemContext.Provider>\n );\n}\n\nfunction FormLabel({\n className,\n ...props\n}: React.ComponentProps<typeof LabelPrimitive.Root>) {\n const { error, formItemId } = useFormField();\n\n return (\n <Label\n data-slot=\"form-label\"\n data-error={!!error}\n className={cn(\n 'text-base-color mb-1 data-[error=true]:text-destructive',\n className,\n )}\n htmlFor={formItemId}\n {...props}\n />\n );\n}\n\nconst FormControl = React.forwardRef<\n React.ComponentRef<typeof Slot>,\n React.ComponentPropsWithoutRef<typeof Slot>\n>(({ ...props }, ref) => {\n const { error, formItemId, formDescriptionId, formMessageId } =\n useFormField();\n\n return (\n <Slot\n data-slot=\"form-control\"\n ref={ref}\n id={formItemId}\n aria-describedby={\n !error\n ? `${formDescriptionId}`\n : `${formDescriptionId} ${formMessageId}`\n }\n aria-invalid={!!error}\n {...props}\n />\n );\n});\n\nFormControl.displayName = 'FormControl';\n\n// Deduplicates rel values if necessary and appends noopener and noreferrer\nconst appendSecureRelValue = (rel: string | null) => {\n const attributes = new Set(rel ? rel.toLowerCase().split(' ') : []);\n\n attributes.add('noopener');\n attributes.add('noreferrer');\n\n return Array.from(attributes).join(' ');\n};\n\nif (DOMPurify.isSupported) {\n DOMPurify.addHook('afterSanitizeAttributes', (node) => {\n const target = node.getAttribute('target');\n\n // set value of target to be _blank with rel, or keep as _self if already set\n if (node.tagName === 'A' && (!target || target !== '_self')) {\n node.setAttribute('target', '_blank');\n const rel = node.getAttribute('rel');\n node.setAttribute('rel', appendSecureRelValue(rel));\n }\n });\n}\n\nfunction FormDescription({\n className,\n children,\n ...props\n}: React.ComponentProps<'p'> & {\n children?: React.ReactNode | (() => React.ReactNode);\n}) {\n const { formDescriptionId } = useFormField();\n\n return (\n <p\n data-slot=\"form-description\"\n id={formDescriptionId}\n className={cn('text-base-color text-xs', className)}\n {...(typeof children === 'string'\n ? {\n dangerouslySetInnerHTML: {\n __html: DOMPurify.sanitize(children, { ADD_ATTR: ['target'] }),\n },\n }\n : {})} // Only add dangerouslySetInnerHTML when children is a string\n {...props}\n >\n {typeof children === 'function' ? children() : null}\n </p>\n );\n}\n\nfunction FormMessage({ className, ...props }: React.ComponentProps<'p'>) {\n const { error, formMessageId } = useFormField();\n const body = error ? String(error?.message ?? '') : props.children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n data-slot=\"form-message\"\n id={formMessageId}\n className={cn('text-destructive text-sm', className)}\n {...props}\n >\n {body}\n </p>\n );\n}\n\nexport {\n Form,\n FormControl,\n FormDescription,\n FormField,\n FormItem,\n FormLabel,\n FormMessage,\n useFormField,\n};\n","'use client';\n\nimport * as React from 'react';\nimport * as LabelPrimitive from '@radix-ui/react-label';\n\nimport { cn } from '@/src/lib/utils';\n\nfunction Label({\n className,\n ...props\n}: React.ComponentProps<typeof LabelPrimitive.Root>) {\n return (\n <LabelPrimitive.Root\n data-slot=\"label\"\n className={cn(\n 'flex items-center gap-2 text-sm leading-none select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Label };\n"],"mappings":"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","names":["Slot","React","DOMPurify","Controller","FormProvider","useFormContext","useFormState","React","LabelPrimitive","Label","className","props","cn","__name","Form","FormProvider","FormFieldContext","FormField","__name","props","Controller","useFormField","fieldContext","itemContext","FormItemContext","getFieldState","useFormContext","formState","useFormState","fieldState","id","FormItem","className","cn","FormLabel","error","formItemId","Label","FormControl","ref","formDescriptionId","formMessageId","Slot","appendSecureRelValue","rel","attributes","DOMPurify","node","target","FormDescription","children","FormMessage","body"]}
@@ -1,2 +1,2 @@
1
- import{a as x}from"./chunk-UPRUP24B.js";import{d as j,e as M,g as w,i as B,k as O}from"./chunk-G2GI6FEO.js";import{a as y,c as A}from"./chunk-6DMCAUPE.js";import{a as V}from"./chunk-A4RX3KRZ.js";import{d as f}from"./chunk-WRDKLT4N.js";import{a as r}from"./chunk-AYDF3IFZ.js";import{object as se}from"yup";import{createHeadlessForm as k,modify as I}from"@remoteoss/json-schema-form";import{useMutation as K,useQuery as p}from"@tanstack/react-query";import{useState as q}from"react";import{string as L,ValidationError as J}from"yup";var oe=r(({includePremiumBenefits:e})=>{let{client:o}=f();return p({queryKey:["cost-calculator-countries",e],queryFn:r(()=>w({client:o,headers:{Authorization:""},query:{include_premium_benefits:e}}),"queryFn"),select:r(n=>n.data?.data.map(a=>({value:a.region_slug,label:a.name,childRegions:a.child_regions,hasAdditionalFields:a.has_additional_fields,regionSlug:a.region_slug})),"select")})},"useCostCalculatorCountries"),ie=r(()=>{let{client:e}=f();return p({queryKey:["company-currencies"],queryFn:r(()=>O({client:e,headers:{Authorization:""}}),"queryFn"),select:r(o=>o.data?.data?.company_currencies.map(n=>({value:n.slug,label:n.code})),"select")})},"useCompanyCurrencies"),ne=r(()=>{let{client:e}=f();return K({mutationFn:r(o=>j({client:e,headers:{Authorization:""},body:o}),"mutationFn")})},"useCostCalculatorEstimation"),Fe=r(()=>{let{client:e}=f();return K({mutationFn:r(o=>M({client:e,headers:{Authorization:""},body:o}),"mutationFn")})},"useCostCalculatorEstimationPdf"),ae=r((e,{includePremiumBenefits:o,options:n})=>{let{client:a}=f();return p({queryKey:["cost-calculator-region-fields",e,o],queryFn:r(()=>B({client:a,headers:{Authorization:""},path:{slug:e},query:{include_premium_benefits:o}}),"queryFn"),enabled:!!e,select:r(({data:s})=>{let u=s?.data?.schema||{};if(n&&n.jsfModify){let{schema:c}=I(u,n.jsfModify);u=c}return k(u)},"select")})},"useRegionFields"),E={title:"Estimation",includeBenefits:!1,includeCostBreakdowns:!1,includePremiumBenefits:!1},Pe=r(({defaultRegion:e,estimationOptions:o,options:n}={estimationOptions:E})=>{let{schema:a}=I(x.data.schema,n?.jsfModify||{}),s=k(a),[u,c]=q(e),[h,b]=q(),{data:g,isLoading:G}=oe({includePremiumBenefits:o.includePremiumBenefits}),{data:_,isLoading:U}=ie(),$=u||h?.value,{data:S,isLoading:H}=ae($,{includePremiumBenefits:o.includePremiumBenefits,options:n}),F=ne();async function N(i){try{await C.validate(i,{abortEarly:!1})}catch(t){return{data:null,error:t}}return new Promise((t,d)=>{F.mutate(T(i,o),{onSuccess:r(l=>{l.data?t({data:l.data,error:null}):t({data:null,error:new Error("Something went wrong. Please try again later.")})},"onSuccess"),onError:r(l=>{d({data:null,error:l})},"onError")})})}r(N,"onSubmit");function Q(i){let t=g?.find(({value:d})=>d===i);t&&t.childRegions.length===0&&t.hasAdditionalFields?c(t.regionSlug):c(void 0),b(t)}r(Q,"onCountryChange");function D(i){c(i)}r(D,"onRegionChange");let m=s.fields.find(i=>i.name==="region");if(m){let i=h?.childRegions.map(t=>({value:t.slug,label:t.name}))??[];m.options=i,m.isVisible=i.length>0,m.required=i.length>0,m.onChange=D,m.schema=i.length>0?L().transform(t=>typeof t=="string"?t:"").required("Region is required"):L()}if(_){let i=s.fields.find(t=>t.name==="currency");i&&(i.options=_)}if(g){let i=s.fields.find(t=>t.name==="country");i&&(i.options=g,i.onChange=Q)}let W=r(()=>{b(void 0),c(e)},"resetForm"),P=[...s.fields,...S?.fields||[]],C=z(s.fields);async function X(i){let t=null,d=A(i,P);try{await C.validate(d,{abortEarly:!1}),t={formErrors:{},yupError:new J([],i)}}catch(R){let v=V(R);t={formErrors:Object.entries(v).reduce((ee,[te,re])=>({...ee,[te]:re.message}),{}),yupError:R}}let l=S?.handleValidation(d),Y=[...t?.yupError.inner||[],...l?.yupError?.inner||[]],Z={...t?.yupError?.value||{},...l?.yupError?.value||{}};return{formErrors:{...t?.formErrors||{},...l?.formErrors||{}},yupError:new J(Y,Z)}}return r(X,"handleValidation"),{stepState:{current:0,total:1,isLastStep:!0},fields:P,validationSchema:C,handleValidation:X,isSubmitting:F.isPending,isLoading:G&&U&&H,onSubmit:N,resetForm:W}},"useCostCalculator");function z(e){let o=e.reduce((n,a)=>(n[a.name]=a.schema,n),{});return se(o)}r(z,"buildValidationSchema");function le(e){let o="benefit-";return Object.keys(e).reduce((n,a)=>{let u={benefit_group_slug:a.replace(o,""),benefit_tier_slug:e[a]};return[...n,u]},[])}r(le,"formatBenefits");function T(e,o=E){return{employer_currency_slug:e.currency,include_benefits:o.includeBenefits,include_cost_breakdowns:o.includeCostBreakdowns,include_premium_benefits:o.includePremiumBenefits,employments:[{region_slug:e.region||e.country,annual_gross_salary:y(e.salary),annual_gross_salary_in_employer_currency:y(e.salary),employment_term:e.contract_duration_type??"fixed",title:o.title,regional_to_employer_exchange_rate:"1",age:e.age??void 0,...e.benefits&&{benefits:le(e.benefits)}}]}}r(T,"buildPayload");export{z as a,T as b,Fe as c,E as d,Pe as e};
2
- //# sourceMappingURL=chunk-WTGUGPHV.js.map
1
+ import{a as x}from"./chunk-UPRUP24B.js";import{d as j,e as M,g as w,i as B,k as O}from"./chunk-55VACCVZ.js";import{a as y,c as A}from"./chunk-YBACB5A6.js";import{a as V}from"./chunk-A4RX3KRZ.js";import{d as f}from"./chunk-WRDKLT4N.js";import{a as r}from"./chunk-AYDF3IFZ.js";import{object as se}from"yup";import{createHeadlessForm as k,modify as I}from"@remoteoss/json-schema-form";import{useMutation as K,useQuery as p}from"@tanstack/react-query";import{useState as q}from"react";import{string as L,ValidationError as J}from"yup";var oe=r(({includePremiumBenefits:e})=>{let{client:o}=f();return p({queryKey:["cost-calculator-countries",e],queryFn:r(()=>w({client:o,headers:{Authorization:""},query:{include_premium_benefits:e}}),"queryFn"),select:r(n=>n.data?.data.map(a=>({value:a.region_slug,label:a.name,childRegions:a.child_regions,hasAdditionalFields:a.has_additional_fields,regionSlug:a.region_slug})),"select")})},"useCostCalculatorCountries"),ie=r(()=>{let{client:e}=f();return p({queryKey:["company-currencies"],queryFn:r(()=>O({client:e,headers:{Authorization:""}}),"queryFn"),select:r(o=>o.data?.data?.company_currencies.map(n=>({value:n.slug,label:n.code})),"select")})},"useCompanyCurrencies"),ne=r(()=>{let{client:e}=f();return K({mutationFn:r(o=>j({client:e,headers:{Authorization:""},body:o}),"mutationFn")})},"useCostCalculatorEstimation"),Fe=r(()=>{let{client:e}=f();return K({mutationFn:r(o=>M({client:e,headers:{Authorization:""},body:o}),"mutationFn")})},"useCostCalculatorEstimationPdf"),ae=r((e,{includePremiumBenefits:o,options:n})=>{let{client:a}=f();return p({queryKey:["cost-calculator-region-fields",e,o],queryFn:r(()=>B({client:a,headers:{Authorization:""},path:{slug:e},query:{include_premium_benefits:o}}),"queryFn"),enabled:!!e,select:r(({data:s})=>{let u=s?.data?.schema||{};if(n&&n.jsfModify){let{schema:c}=I(u,n.jsfModify);u=c}return k(u)},"select")})},"useRegionFields"),E={title:"Estimation",includeBenefits:!1,includeCostBreakdowns:!1,includePremiumBenefits:!1},Pe=r(({defaultRegion:e,estimationOptions:o,options:n}={estimationOptions:E})=>{let{schema:a}=I(x.data.schema,n?.jsfModify||{}),s=k(a),[u,c]=q(e),[h,b]=q(),{data:g,isLoading:G}=oe({includePremiumBenefits:o.includePremiumBenefits}),{data:_,isLoading:U}=ie(),$=u||h?.value,{data:S,isLoading:H}=ae($,{includePremiumBenefits:o.includePremiumBenefits,options:n}),F=ne();async function N(i){try{await C.validate(i,{abortEarly:!1})}catch(t){return{data:null,error:t}}return new Promise((t,d)=>{F.mutate(T(i,o),{onSuccess:r(l=>{l.data?t({data:l.data,error:null}):t({data:null,error:new Error("Something went wrong. Please try again later.")})},"onSuccess"),onError:r(l=>{d({data:null,error:l})},"onError")})})}r(N,"onSubmit");function Q(i){let t=g?.find(({value:d})=>d===i);t&&t.childRegions.length===0&&t.hasAdditionalFields?c(t.regionSlug):c(void 0),b(t)}r(Q,"onCountryChange");function D(i){c(i)}r(D,"onRegionChange");let m=s.fields.find(i=>i.name==="region");if(m){let i=h?.childRegions.map(t=>({value:t.slug,label:t.name}))??[];m.options=i,m.isVisible=i.length>0,m.required=i.length>0,m.onChange=D,m.schema=i.length>0?L().transform(t=>typeof t=="string"?t:"").required("Region is required"):L()}if(_){let i=s.fields.find(t=>t.name==="currency");i&&(i.options=_)}if(g){let i=s.fields.find(t=>t.name==="country");i&&(i.options=g,i.onChange=Q)}let W=r(()=>{b(void 0),c(e)},"resetForm"),P=[...s.fields,...S?.fields||[]],C=z(s.fields);async function X(i){let t=null,d=A(i,P);try{await C.validate(d,{abortEarly:!1}),t={formErrors:{},yupError:new J([],i)}}catch(R){let v=V(R);t={formErrors:Object.entries(v).reduce((ee,[te,re])=>({...ee,[te]:re.message}),{}),yupError:R}}let l=S?.handleValidation(d),Y=[...t?.yupError.inner||[],...l?.yupError?.inner||[]],Z={...t?.yupError?.value||{},...l?.yupError?.value||{}};return{formErrors:{...t?.formErrors||{},...l?.formErrors||{}},yupError:new J(Y,Z)}}return r(X,"handleValidation"),{stepState:{current:0,total:1,isLastStep:!0},fields:P,validationSchema:C,handleValidation:X,isSubmitting:F.isPending,isLoading:G&&U&&H,onSubmit:N,resetForm:W}},"useCostCalculator");function z(e){let o=e.reduce((n,a)=>(n[a.name]=a.schema,n),{});return se(o)}r(z,"buildValidationSchema");function le(e){let o="benefit-";return Object.keys(e).reduce((n,a)=>{let u={benefit_group_slug:a.replace(o,""),benefit_tier_slug:e[a]};return[...n,u]},[])}r(le,"formatBenefits");function T(e,o=E){return{employer_currency_slug:e.currency,include_benefits:o.includeBenefits,include_cost_breakdowns:o.includeCostBreakdowns,include_premium_benefits:o.includePremiumBenefits,employments:[{region_slug:e.region||e.country,annual_gross_salary:y(e.salary),annual_gross_salary_in_employer_currency:y(e.salary),employment_term:e.contract_duration_type??"fixed",title:o.title,regional_to_employer_exchange_rate:"1",age:e.age??void 0,...e.benefits&&{benefits:le(e.benefits)}}]}}r(T,"buildPayload");export{z as a,T as b,Fe as c,E as d,Pe as e};
2
+ //# sourceMappingURL=chunk-NBD4VOG3.js.map
@@ -1,2 +1,2 @@
1
- import{b as e}from"./chunk-6DMCAUPE.js";import{a as r}from"./chunk-AYDF3IFZ.js";var m={form:{index:0,name:"form"},confirmation_form:{index:1,name:"confirmation_form"}};function _(t,o){if(!t)return{};if(!o)return{...t.data.employment?.contract_details,effective_date:"",reason_for_change:"",job_title:t.data.employment?.job_title,additional_comments:"",annual_gross_salary:e(t.data.employment?.contract_details?.annual_gross_salary)};let s=o.map(n=>n.name),i=Object.keys(t?.data?.employment?.contract_details||{});return{...s.reduce((n,a)=>{if(i.includes(a)){let c=t?.data?.employment?.contract_details;n[a]=c[a]}return n},{}),effective_date:"",reason_for_change:"",job_title:t.data.employment?.job_title,additional_comments:"",annual_gross_salary:e(t.data.employment?.contract_details?.annual_gross_salary),additional_comments_toggle:!1}}r(_,"buildInitialValues");export{m as a,_ as b};
2
- //# sourceMappingURL=chunk-TPKAREI4.js.map
1
+ import{b as e}from"./chunk-YBACB5A6.js";import{a as r}from"./chunk-AYDF3IFZ.js";var m={form:{index:0,name:"form"},confirmation_form:{index:1,name:"confirmation_form"}};function _(t,o){if(!t)return{};if(!o)return{...t.data.employment?.contract_details,effective_date:"",reason_for_change:"",job_title:t.data.employment?.job_title,additional_comments:"",annual_gross_salary:e(t.data.employment?.contract_details?.annual_gross_salary)};let s=o.map(n=>n.name),i=Object.keys(t?.data?.employment?.contract_details||{});return{...s.reduce((n,a)=>{if(i.includes(a)){let c=t?.data?.employment?.contract_details;n[a]=c[a]}return n},{}),effective_date:"",reason_for_change:"",job_title:t.data.employment?.job_title,additional_comments:"",annual_gross_salary:e(t.data.employment?.contract_details?.annual_gross_salary),additional_comments_toggle:!1}}r(_,"buildInitialValues");export{m as a,_ as b};
2
+ //# sourceMappingURL=chunk-RCX4JUI3.js.map
@@ -0,0 +1,2 @@
1
+ import{a as n}from"./chunk-AYDF3IFZ.js";import{useState as d}from"react";var f=n(s=>{let l=Object.keys(s);if(l.length===0)throw new Error("No steps provided to useStepState");let[r,a]=d({}),[p,i]=d({currentStep:s[l[0]],totalSteps:l.length,values:null});function c(){let{index:u}=p.currentStep,t=Object.values(s).find(e=>e.index===u+1);t&&(i(e=>({...e,currentStep:t,values:{...e.values,[e.currentStep.name]:{...e.values?.[e.currentStep.name],...r}}})),a({}))}n(c,"nextStep");function S(){let{index:u}=p.currentStep,t=Object.values(s).find(e=>e.index===u-1);t&&(i(e=>({...e,currentStep:t,values:{...e.values,[e.currentStep.name]:{...e.values?.[e.currentStep.name],...r}}})),a({}))}return n(S,"previousStep"),{nextStep:c,previousStep:S,stepState:p,fieldValues:r,setFieldValues:a}},"useStepState");export{f as a};
2
+ //# sourceMappingURL=chunk-S56EWAS4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/useStepState.ts"],"sourcesContent":["import { useState } from 'react';\nimport { FieldValues } from 'react-hook-form';\n\nexport type Step = {\n index: number;\n name: string;\n};\n\ntype StepState<T extends string, Fields = FieldValues> = {\n currentStep: Step;\n totalSteps: number;\n values:\n | {\n [key in T]: Fields;\n }\n | null;\n};\n\nexport const useStepState = <T extends string, Fields = FieldValues>(\n steps: Record<T, Step>,\n) => {\n const stepKeys = Object.keys(steps) as Array<keyof typeof steps>;\n\n if (stepKeys.length === 0) {\n throw new Error('No steps provided to useStepState');\n }\n\n const [fieldValues, setFieldValues] = useState<Fields>({} as Fields);\n const [stepState, setStepState] = useState<StepState<T, Fields>>({\n currentStep: steps[stepKeys[0]],\n totalSteps: stepKeys.length,\n values: null,\n });\n\n function nextStep() {\n const { index } = stepState.currentStep;\n const stepValues = Object.values<Step>(steps);\n const nextStep = stepValues.find((step) => step.index === index + 1);\n\n if (nextStep) {\n setStepState((previousState) => ({\n ...previousState,\n currentStep: nextStep,\n values: {\n ...previousState.values,\n [previousState.currentStep.name]: {\n ...previousState.values?.[previousState.currentStep.name as T],\n ...fieldValues,\n },\n } as { [key in T]: Fields },\n }));\n setFieldValues({} as Fields); // Reset field values for the next step\n }\n }\n\n function previousStep() {\n const { index } = stepState.currentStep;\n const stepValues = Object.values<Step>(steps);\n const previousStep = stepValues.find((step) => step.index === index - 1);\n\n if (previousStep) {\n setStepState((previousState) => ({\n ...previousState,\n currentStep: previousStep,\n values: {\n ...previousState.values,\n [previousState.currentStep.name]: {\n ...previousState.values?.[previousState.currentStep.name as T],\n ...fieldValues,\n },\n } as { [key in T]: Fields },\n }));\n setFieldValues({} as Fields); // Reset field values for the previous step\n }\n }\n\n return {\n /**\n * Moves to the next step in the step state.\n * It updates the current step and resets the field values for the next step.\n * The field values for the current step are stored in the step state.\n * @returns {void}\n */\n nextStep,\n /**\n * Moves to the previous step in the step state.\n * It updates the current step and resets the field values for the previous step.\n * The field values for the current step are stored in the step state.\n * @returns {void}\n */\n previousStep,\n /**\n * The current step state containing the current step, total number of steps and\n * the form values for each step.\n * @returns {StepState<T>} The current step state.\n */\n stepState,\n /**\n * The field values for the current step.\n * @returns {FieldValues} The field values for the current step.\n */\n fieldValues,\n /**\n * Sets the field values for the current step.\n * @param values The field values to set.\n * @returns {void}\n */\n setFieldValues,\n };\n};\n"],"mappings":"wCAAA,OAAS,YAAAA,MAAgB,QAkBlB,IAAMC,EAAeC,EAC1BC,GACG,CACH,IAAMC,EAAW,OAAO,KAAKD,CAAK,EAElC,GAAIC,EAAS,SAAW,EACtB,MAAM,IAAI,MAAM,mCAAmC,EAGrD,GAAM,CAACC,EAAaC,CAAc,EAAIC,EAAiB,CAAC,CAAW,EAC7D,CAACC,EAAWC,CAAY,EAAIF,EAA+B,CAC/D,YAAaJ,EAAMC,EAAS,CAAC,CAAC,EAC9B,WAAYA,EAAS,OACrB,OAAQ,IACV,CAAC,EAED,SAASM,GAAW,CAClB,GAAM,CAAE,MAAAC,CAAM,EAAIH,EAAU,YAEtBE,EADa,OAAO,OAAaP,CAAK,EAChB,KAAMS,GAASA,EAAK,QAAUD,EAAQ,CAAC,EAE/DD,IACFD,EAAcI,IAAmB,CAC/B,GAAGA,EACH,YAAaH,EACb,OAAQ,CACN,GAAGG,EAAc,OACjB,CAACA,EAAc,YAAY,IAAI,EAAG,CAChC,GAAGA,EAAc,SAASA,EAAc,YAAY,IAAS,EAC7D,GAAGR,CACL,CACF,CACF,EAAE,EACFC,EAAe,CAAC,CAAW,EAE/B,CAnBSJ,EAAAQ,EAAA,YAqBT,SAASI,GAAe,CACtB,GAAM,CAAE,MAAAH,CAAM,EAAIH,EAAU,YAEtBM,EADa,OAAO,OAAaX,CAAK,EACZ,KAAMS,GAASA,EAAK,QAAUD,EAAQ,CAAC,EAEnEG,IACFL,EAAcI,IAAmB,CAC/B,GAAGA,EACH,YAAaC,EACb,OAAQ,CACN,GAAGD,EAAc,OACjB,CAACA,EAAc,YAAY,IAAI,EAAG,CAChC,GAAGA,EAAc,SAASA,EAAc,YAAY,IAAS,EAC7D,GAAGR,CACL,CACF,CACF,EAAE,EACFC,EAAe,CAAC,CAAW,EAE/B,CAnBS,OAAAJ,EAAAY,EAAA,gBAqBF,CAOL,SAAAJ,EAOA,aAAAI,EAMA,UAAAN,EAKA,YAAAH,EAMA,eAAAC,CACF,CACF,EA3F4B","names":["useState","useStepState","__name","steps","stepKeys","fieldValues","setFieldValues","useState","stepState","setStepState","nextStep","index","step","previousState","previousStep"]}
@@ -0,0 +1,2 @@
1
+ import{a as T}from"./chunk-XFD3ULUF.js";import{a as F}from"./chunk-CTG3DYJR.js";import{a as S}from"./chunk-SEUQNAF6.js";import{a as V}from"./chunk-FZ2HS6G7.js";import{b as y}from"./chunk-36UPHOJS.js";import{a as p}from"./chunk-JRQSZHUU.js";import{b as f}from"./chunk-55VACCVZ.js";import{c as m}from"./chunk-YBACB5A6.js";import{a as _}from"./chunk-S56EWAS4.js";import{d as c}from"./chunk-WRDKLT4N.js";import{a as o}from"./chunk-AYDF3IFZ.js";import{createHeadlessForm as h,modify as J}from"@remoteoss/json-schema-form";import{useMutation as O,useQuery as x}from"@tanstack/react-query";import z from"lodash/omit";function A(i){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,...i}}o(A,"buildInitialValues");var K=o(()=>{let{client:i}=c();return O({mutationFn:o(a=>f({client:i,headers:{Authorization:""},body:a}),"mutationFn")})},"useCreateTermination"),L=o(({formValues:i,jsfModify:a,step:s})=>x({queryKey:["rmt-flows-termination-schema",s],queryFn:o(()=>S[s]??T,"queryFn"),select:o(({data:l})=>{let{schema:e}=J(l.schema,a||{});return h(e||{},{initialValues:i||{}})},"select")}),"useTerminationSchema"),ae=o(({employmentId:i,options:a})=>{let{fieldValues:s,setFieldValues:l,stepState:e,previousStep:u,nextStep:g}=_(V),P=e.values?e.values[e.currentStep.name]:s,{data:n,isLoading:b}=L({formValues:P,jsfModify:a?.jsfModify,step:e.currentStep.name}),k=h(F.data.schema),d=K(),{mutateAsync:w}=p(d);async function C(r){if(!i)throw new Error("Employment id is missing");if(e.currentStep.index<e.totalSteps-1){g();return}if(n){let t=m(r,k.fields),{customer_informed_employee:E}=t,j=E==="yes"?{employee_awareness:{date:t.customer_informed_employee_date,note:t.customer_informed_employee_description}}:void 0,D=y(t,["agrees_to_pto_amount","confidential","customer_informed_employee","will_challenge_termination"]),H={...z(D,"customer_informed_employee_date","customer_informed_employee_description"),...j};return w({employment_id:i,termination_details:H,type:"termination"})}}o(C,"onSubmit");function M(){u()}o(M,"back");let v=A({...e.values?.employee_communication,...e.values?.termination_details,...e.values?.paid_time_off,...e.values?.additional_information});return{employmentId:i,stepState:e,fields:n?.fields||[],isLoading:b,isSubmitting:d.isPending,initialValues:v,handleValidation:o(r=>{if(n){let t=m(r,n?.fields);return n?.handleValidation(t)}return null},"handleValidation"),checkFieldUpdates:o(r=>{if(n){let t=m(r,n?.fields,{isPartialValidation:!0});l(t)}},"checkFieldUpdates"),onSubmit:C,back:M}},"useTermination");export{ae as a};
2
+ //# sourceMappingURL=chunk-SABMDOWE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/Termination/hooks.ts"],"sourcesContent":["import {\n CreateOffboardingParams,\n postCreateOffboarding,\n TerminationDetailsParams,\n} from '@/src/client';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport { Client } from '@hey-api/client-fetch';\nimport { createHeadlessForm, modify } from '@remoteoss/json-schema-form';\nimport { useMutation, useQuery } from '@tanstack/react-query';\nimport { parseJSFToValidate } from '@/src/components/form/utils';\nimport { JSFModify } from '@/src/flows/CostCalculator/types';\nimport { TerminationFormValues } from '@/src/flows/Termination/types';\nimport { useClient } from '@/src/context';\nimport omit from 'lodash/omit';\nimport { parseFormRadioValues } from '@/src/flows/utils';\nimport { useStepState } from '@/src/flows/useStepState';\nimport { STEPS } from '@/src/flows/Termination/utils';\nimport { defaultSchema } from '@/src/flows/Termination/json-schemas/defaultSchema';\nimport { schema } from '@/src/flows/Termination/json-schemas/schema';\nimport { jsonSchema } from '@/src/flows/Termination/json-schemas/jsonSchema';\n\nfunction buildInitialValues(\n stepsInitialValues: Partial<TerminationFormValues>,\n): TerminationFormValues {\n const initialValues: TerminationFormValues = {\n confidential: '',\n customer_informed_employee: '',\n customer_informed_employee_date: '',\n customer_informed_employee_description: '',\n personal_email: '',\n termination_reason: undefined,\n reason_description: '',\n termination_reason_files: [],\n will_challenge_termination: '',\n will_challenge_termination_description: null,\n agrees_to_pto_amount: '',\n agrees_to_pto_amount_notes: null,\n acknowledge_termination_procedure: false,\n additional_comments: '',\n proposed_termination_date: '',\n risk_assessment_reasons: [],\n timesheet_file: undefined,\n ...stepsInitialValues,\n };\n\n return initialValues;\n}\n\nconst useCreateTermination = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (payload: CreateOffboardingParams) => {\n return postCreateOffboarding({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n });\n },\n });\n};\n\nconst useTerminationSchema = ({\n formValues,\n jsfModify,\n step,\n}: {\n formValues?: TerminationFormValues;\n jsfModify?: JSFModify;\n step?: string;\n}) => {\n return useQuery({\n queryKey: ['rmt-flows-termination-schema', step],\n queryFn: () => {\n return schema[step as keyof typeof schema] ?? defaultSchema;\n },\n select: ({ data }) => {\n const { schema } = modify(data.schema, jsfModify || {});\n const form = createHeadlessForm(schema || {}, {\n initialValues: formValues || {},\n });\n return form;\n },\n });\n};\n\ntype TerminationHookProps = {\n employmentId: string;\n options?: {\n jsfModify?: JSFModify;\n };\n};\n\nexport const useTermination = ({\n employmentId,\n options,\n}: TerminationHookProps) => {\n const { fieldValues, setFieldValues, stepState, previousStep, nextStep } =\n useStepState<keyof typeof STEPS, TerminationFormValues>(STEPS);\n\n const formValues = stepState.values\n ? stepState.values[stepState.currentStep.name as keyof typeof STEPS]\n : fieldValues;\n\n const { data: terminationHeadlessForm, isLoading: isLoadingTermination } =\n useTerminationSchema({\n formValues: formValues,\n jsfModify: options?.jsfModify,\n step: stepState.currentStep.name,\n });\n\n const entireTerminationSchema = createHeadlessForm(jsonSchema.data.schema);\n\n const createTermination = useCreateTermination();\n const { mutateAsync } = mutationToPromise(createTermination);\n\n async function onSubmit(values: TerminationFormValues) {\n if (!employmentId) {\n throw new Error('Employment id is missing');\n }\n\n if (stepState.currentStep.index < stepState.totalSteps - 1) {\n nextStep();\n return;\n }\n\n if (terminationHeadlessForm) {\n // this is a hack because I need to validate all form values with the entire schema\n const parsedValues = parseJSFToValidate(\n values,\n entireTerminationSchema.fields,\n );\n\n const { customer_informed_employee: customerInformedEmployee } =\n parsedValues;\n\n const employeeAwareness =\n customerInformedEmployee === 'yes'\n ? {\n employee_awareness: {\n date: parsedValues.customer_informed_employee_date,\n note: parsedValues.customer_informed_employee_description,\n },\n }\n : undefined;\n\n const radioFieldKeys = [\n 'agrees_to_pto_amount',\n 'confidential',\n 'customer_informed_employee',\n 'will_challenge_termination',\n ];\n\n const parsedRadioValues = parseFormRadioValues(\n parsedValues,\n radioFieldKeys,\n );\n\n const normalizedValues = omit(\n parsedRadioValues,\n 'customer_informed_employee_date',\n 'customer_informed_employee_description',\n );\n\n const terminationDetails: TerminationDetailsParams = {\n ...normalizedValues,\n ...employeeAwareness,\n } as TerminationDetailsParams;\n\n const terminationPayload: CreateOffboardingParams = {\n employment_id: employmentId,\n termination_details: terminationDetails,\n type: 'termination',\n };\n\n return mutateAsync(terminationPayload);\n }\n\n return;\n }\n\n function back() {\n previousStep();\n }\n\n const initialValues = buildInitialValues({\n ...stepState.values?.employee_communication,\n ...stepState.values?.termination_details,\n ...stepState.values?.paid_time_off,\n ...stepState.values?.additional_information,\n });\n\n return {\n /**\n * Employment id passed useful to be used between components\n */\n employmentId,\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState,\n /**\n * Array of form fields from the contract amendment schema\n */\n fields: terminationHeadlessForm?.fields || [],\n /**\n * Loading state indicating if the termination schema is being fetched\n */\n isLoading: isLoadingTermination,\n /**\n * Loading state indicating if a contract amendment mutation is in progress\n */\n isSubmitting: createTermination.isPending,\n /**\n * Initial form values\n */\n initialValues: initialValues,\n /**\n * Function to validate form values against the contract amendment schema\n * @param values - Form values to validate\n * @returns Validation result or null if no schema is available\n */\n handleValidation: (values: TerminationFormValues) => {\n if (terminationHeadlessForm) {\n const parsedValues = parseJSFToValidate(\n values,\n terminationHeadlessForm?.fields,\n );\n return terminationHeadlessForm?.handleValidation(parsedValues);\n }\n return null;\n },\n /**\n * Function to update the current form field values\n * @param values - New form values to set\n */\n checkFieldUpdates: (values: Partial<TerminationFormValues>) => {\n if (terminationHeadlessForm) {\n const parsedValues = parseJSFToValidate(\n values,\n terminationHeadlessForm?.fields,\n { isPartialValidation: true },\n );\n setFieldValues(parsedValues as TerminationFormValues);\n }\n },\n /**\n * Function to handle form submission\n * @param values - Form values to submit\n * @returns Promise resolving to the mutation result\n */\n onSubmit,\n\n /**\n * Function to handle going back to the previous step\n * @returns {void}\n */\n back,\n };\n};\n"],"mappings":"wbAOA,OAAS,sBAAAA,EAAoB,UAAAC,MAAc,8BAC3C,OAAS,eAAAC,EAAa,YAAAC,MAAgB,wBAKtC,OAAOC,MAAU,cAQjB,SAASC,EACPC,EACuB,CAsBvB,MArB6C,CAC3C,aAAc,GACd,2BAA4B,GAC5B,gCAAiC,GACjC,uCAAwC,GACxC,eAAgB,GAChB,mBAAoB,OACpB,mBAAoB,GACpB,yBAA0B,CAAC,EAC3B,2BAA4B,GAC5B,uCAAwC,KACxC,qBAAsB,GACtB,2BAA4B,KAC5B,kCAAmC,GACnC,oBAAqB,GACrB,0BAA2B,GAC3B,wBAAyB,CAAC,EAC1B,eAAgB,OAChB,GAAGA,CACL,CAGF,CAzBSC,EAAAF,EAAA,sBA2BT,IAAMG,EAAuBD,EAAA,IAAM,CACjC,GAAM,CAAE,OAAAE,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAY,CACjB,WAAYJ,EAACK,GACJC,EAAsB,CAC3B,OAAQJ,EACR,QAAS,CACP,cAAe,EACjB,EACA,KAAMG,CACR,CAAC,EAPS,aASd,CAAC,CACH,EAb6B,wBAevBE,EAAuBP,EAAA,CAAC,CAC5B,WAAAQ,EACA,UAAAC,EACA,KAAAC,CACF,IAKSC,EAAS,CACd,SAAU,CAAC,+BAAgCD,CAAI,EAC/C,QAASV,EAAA,IACAY,EAAOF,CAA2B,GAAKG,EADvC,WAGT,OAAQb,EAAA,CAAC,CAAE,KAAAc,CAAK,IAAM,CACpB,GAAM,CAAE,OAAAF,CAAO,EAAIG,EAAOD,EAAK,OAAQL,GAAa,CAAC,CAAC,EAItD,OAHaO,EAAmBJ,GAAU,CAAC,EAAG,CAC5C,cAAeJ,GAAc,CAAC,CAChC,CAAC,CAEH,EANQ,SAOV,CAAC,EArB0B,wBA+BhBS,GAAiBjB,EAAA,CAAC,CAC7B,aAAAkB,EACA,QAAAC,CACF,IAA4B,CAC1B,GAAM,CAAE,YAAAC,EAAa,eAAAC,EAAgB,UAAAC,EAAW,aAAAC,EAAc,SAAAC,CAAS,EACrEC,EAAwDC,CAAK,EAEzDlB,EAAac,EAAU,OACzBA,EAAU,OAAOA,EAAU,YAAY,IAA0B,EACjEF,EAEE,CAAE,KAAMO,EAAyB,UAAWC,CAAqB,EACrErB,EAAqB,CACnB,WAAYC,EACZ,UAAWW,GAAS,UACpB,KAAMG,EAAU,YAAY,IAC9B,CAAC,EAEGO,EAA0Bb,EAAmBc,EAAW,KAAK,MAAM,EAEnEC,EAAoB9B,EAAqB,EACzC,CAAE,YAAA+B,CAAY,EAAIC,EAAkBF,CAAiB,EAE3D,eAAeG,EAASC,EAA+B,CACrD,GAAI,CAACjB,EACH,MAAM,IAAI,MAAM,0BAA0B,EAG5C,GAAII,EAAU,YAAY,MAAQA,EAAU,WAAa,EAAG,CAC1DE,EAAS,EACT,MACF,CAEA,GAAIG,EAAyB,CAE3B,IAAMS,EAAeC,EACnBF,EACAN,EAAwB,MAC1B,EAEM,CAAE,2BAA4BS,CAAyB,EAC3DF,EAEIG,EACJD,IAA6B,MACzB,CACE,mBAAoB,CAClB,KAAMF,EAAa,gCACnB,KAAMA,EAAa,sCACrB,CACF,EACA,OASAI,EAAoBC,EACxBL,EARqB,CACrB,uBACA,eACA,6BACA,4BACF,CAKA,EAQMM,EAA+C,CACnD,GAPuBC,EACvBH,EACA,kCACA,wCACF,EAIE,GAAGD,CACL,EAQA,OAAOP,EAN6C,CAClD,cAAed,EACf,oBAAqBwB,EACrB,KAAM,aACR,CAEqC,CACvC,CAGF,CA/De1C,EAAAkC,EAAA,YAiEf,SAASU,GAAO,CACdrB,EAAa,CACf,CAFSvB,EAAA4C,EAAA,QAIT,IAAMC,EAAgB/C,EAAmB,CACvC,GAAGwB,EAAU,QAAQ,uBACrB,GAAGA,EAAU,QAAQ,oBACrB,GAAGA,EAAU,QAAQ,cACrB,GAAGA,EAAU,QAAQ,sBACvB,CAAC,EAED,MAAO,CAIL,aAAAJ,EAIA,UAAAI,EAIA,OAAQK,GAAyB,QAAU,CAAC,EAI5C,UAAWC,EAIX,aAAcG,EAAkB,UAIhC,cAAec,EAMf,iBAAkB7C,EAACmC,GAAkC,CACnD,GAAIR,EAAyB,CAC3B,IAAMS,EAAeC,EACnBF,EACAR,GAAyB,MAC3B,EACA,OAAOA,GAAyB,iBAAiBS,CAAY,CAC/D,CACA,OAAO,IACT,EATkB,oBAclB,kBAAmBpC,EAACmC,GAA2C,CAC7D,GAAIR,EAAyB,CAC3B,IAAMS,EAAeC,EACnBF,EACAR,GAAyB,OACzB,CAAE,oBAAqB,EAAK,CAC9B,EACAN,EAAee,CAAqC,CACtD,CACF,EATmB,qBAenB,SAAAF,EAMA,KAAAU,CACF,CACF,EAtK8B","names":["createHeadlessForm","modify","useMutation","useQuery","omit","buildInitialValues","stepsInitialValues","__name","useCreateTermination","client","useClient","useMutation","payload","postCreateOffboarding","useTerminationSchema","formValues","jsfModify","step","useQuery","schema","defaultSchema","data","modify","createHeadlessForm","useTermination","employmentId","options","fieldValues","setFieldValues","stepState","previousStep","nextStep","useStepState","STEPS","terminationHeadlessForm","isLoadingTermination","entireTerminationSchema","jsonSchema","createTermination","mutateAsync","mutationToPromise","onSubmit","values","parsedValues","parseJSFToValidate","customerInformedEmployee","employeeAwareness","parsedRadioValues","parseFormRadioValues","terminationDetails","omit","back","initialValues"]}
@@ -0,0 +1,2 @@
1
+ import{a as e}from"./chunk-VX2UC3HG.js";import{a as i}from"./chunk-IPZEZMLD.js";import{a as o}from"./chunk-JODJFARP.js";import{a as m}from"./chunk-W5DG5WWJ.js";var p={employee_communication:o,termination_details:e,paid_time_off:m,additional_information:i};export{p as a};
2
+ //# sourceMappingURL=chunk-SEUQNAF6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/Termination/json-schemas/schema.ts"],"sourcesContent":["import { additionalInformationSchema } from '@/src/flows/Termination/json-schemas/additionalInformation';\nimport { employeeComunicationSchema } from '@/src/flows/Termination/json-schemas/employeeComunication';\nimport { paidTimeOffSchema } from '@/src/flows/Termination/json-schemas/paidTimeOff';\nimport { terminationDetailsSchema } from '@/src/flows/Termination/json-schemas/terminationDetails';\nimport { StepTerminationKeys } from '@/src/flows/Termination/utils';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const schema: Record<StepTerminationKeys, Record<string, any>> = {\n employee_communication: employeeComunicationSchema,\n termination_details: terminationDetailsSchema,\n paid_time_off: paidTimeOffSchema,\n additional_information: additionalInformationSchema,\n};\n"],"mappings":"gKAOO,IAAMA,EAA2D,CACtE,uBAAwBC,EACxB,oBAAqBC,EACrB,cAAeC,EACf,uBAAwBC,CAC1B","names":["schema","employeeComunicationSchema","terminationDetailsSchema","paidTimeOffSchema","additionalInformationSchema"]}
@@ -0,0 +1,2 @@
1
+ var e={data:{version:7,schema:{additionalProperties:!1,allOf:[{if:{properties:{will_challenge_termination:{const:"yes"}},required:["will_challenge_termination"]},then:{properties:{will_challenge_termination_description:{type:"string"}},required:["will_challenge_termination_description"]},else:{properties:{will_challenge_termination_description:!1}}}],properties:{termination_reason:{title:"Termination reason",description:"Make sure you choose an accurate termination reason to avoid unfair or unlawful dismissal claims.",type:"string",oneOf:[{const:"gross_misconduct",title:"Gross misconduct"},{const:"performance",title:"Performance"},{const:"workforce_reduction",title:"Workforce Reduction"},{const:"values",title:"Values"},{const:"compliance_issue",title:"Compliance issue"},{const:"incapacity_to_perform_inherent_duties",title:"Incapacity To perform inherent duties"},{const:"mutual_agreement",title:"Mutual agreement"},{const:"cancellation_before_start_date",title:"Decision to cancel hiring before the employee starts"},{const:"job_abandonment",title:"Job abandonment"},{const:"dissatisfaction_with_remote_service",title:"Dissatisfaction with EOR service"},{const:"end_of_fixed_term_contract_compliance_issue",title:"End of fixed-term contract"},{const:"other",title:"Other"}],"x-jsf-presentation":{inputType:"select"}},reason_description:{description:"",maxLength:1e3,title:"Termination reason details",type:"string","x-jsf-presentation":{inputType:"textarea"}},additional_comments:{description:"",maxLength:1e3,title:"Additional details regarding this termination process.",type:"string","x-jsf-presentation":{inputType:"textarea"}},termination_reason_files:{description:"Please upload any supporting documents regarding the termination reason.",title:"Termination reason files",type:"string","x-jsf-presentation":{inputType:"file",accept:".pdf",multiple:!0}},risk_assessment_reasons:{description:"",title:"This employee is...",type:"array",items:{anyOf:[{const:"sick_leave",title:"Currently on or recently returned from sick leave"},{const:"family_leave",title:"Currently on or recently returned from maternity, paternity, or other family leave"},{const:"pregnant_or_breastfeeding",title:"Pregnant or breastfeeding"},{const:"requested_medical_or_family_leave",title:"Requested medical or family leave"},{const:"disabled_or_health_condition",title:"Disabled or has a health condition"},{const:"member_of_union_or_works_council",title:"A member of a union or works council"},{const:"caring_responsibilities",title:"Caring responsibilities"},{const:"reported_concerns_with_workplace",title:"Reported any wrongdoing; raised any allegations of discrimination, harassment, retaliation, etc.; or asserted their employment rights or raised complaints about their working conditions"},{const:"none_of_these",title:"To the best of my knowledge, I am not aware of any of these"}]},"x-jsf-presentation":{inputType:"checkbox",direction:"column"}},will_challenge_termination:{description:"",oneOf:[{const:"yes",description:"",title:"Yes"},{const:"no",description:"",title:"No"}],title:"Do you consider it is likely that the employee will challenge their termination?",type:"string","x-jsf-presentation":{direction:"column",inputType:"radio"}},will_challenge_termination_description:{description:"",maxLength:1e3,title:"Please explain how the employee will challenge their termination",type:["string","null"],"x-jsf-presentation":{inputType:"textarea"}},proposed_termination_date:{description:"",format:"date",maxLength:255,title:"Proposed termination date",type:"string","x-jsf-presentation":{inputType:"date"}}},required:["termination_reason","reason_description","risk_assessment_reasons","will_challenge_termination","proposed_termination_date"],type:"object","x-jsf-order":["termination_reason","reason_description","additional_comments","termination_reason_files","risk_assessment_reasons","will_challenge_termination","will_challenge_termination_description","proposed_termination_date"]}}};export{e as a};
2
+ //# sourceMappingURL=chunk-VX2UC3HG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/Termination/json-schemas/terminationDetails.ts"],"sourcesContent":["export const terminationDetailsSchema = {\n data: {\n version: 7,\n schema: {\n additionalProperties: false,\n allOf: [\n {\n if: {\n properties: {\n will_challenge_termination: {\n const: 'yes',\n },\n },\n required: ['will_challenge_termination'],\n },\n then: {\n properties: {\n will_challenge_termination_description: {\n type: 'string',\n },\n },\n required: ['will_challenge_termination_description'],\n },\n else: {\n properties: {\n will_challenge_termination_description: false,\n },\n },\n },\n ],\n properties: {\n termination_reason: {\n title: 'Termination reason',\n description:\n 'Make sure you choose an accurate termination reason to avoid unfair or unlawful dismissal claims.',\n type: 'string',\n oneOf: [\n {\n const: 'gross_misconduct',\n title: 'Gross misconduct',\n },\n {\n const: 'performance',\n title: 'Performance',\n },\n {\n const: 'workforce_reduction',\n title: 'Workforce Reduction',\n },\n {\n const: 'values',\n title: 'Values',\n },\n {\n const: 'compliance_issue',\n title: 'Compliance issue',\n },\n {\n const: 'incapacity_to_perform_inherent_duties',\n title: 'Incapacity To perform inherent duties',\n },\n {\n const: 'mutual_agreement',\n title: 'Mutual agreement',\n },\n {\n const: 'cancellation_before_start_date',\n title: 'Decision to cancel hiring before the employee starts',\n },\n {\n const: 'job_abandonment',\n title: 'Job abandonment',\n },\n {\n const: 'dissatisfaction_with_remote_service',\n title: 'Dissatisfaction with EOR service',\n },\n {\n const: 'end_of_fixed_term_contract_compliance_issue',\n title: 'End of fixed-term contract',\n },\n {\n const: 'other',\n title: 'Other',\n },\n ],\n 'x-jsf-presentation': {\n inputType: 'select',\n },\n },\n reason_description: {\n description: '',\n maxLength: 1000,\n title: 'Termination reason details',\n type: 'string',\n 'x-jsf-presentation': {\n inputType: 'textarea',\n },\n },\n additional_comments: {\n description: '',\n maxLength: 1000,\n title: 'Additional details regarding this termination process.',\n type: 'string',\n 'x-jsf-presentation': {\n inputType: 'textarea',\n },\n },\n termination_reason_files: {\n description:\n 'Please upload any supporting documents regarding the termination reason.',\n title: 'Termination reason files',\n type: 'string',\n 'x-jsf-presentation': {\n inputType: 'file',\n accept: '.pdf',\n multiple: true,\n },\n },\n risk_assessment_reasons: {\n description: '',\n title: 'This employee is...',\n type: 'array',\n items: {\n anyOf: [\n {\n const: 'sick_leave',\n title: 'Currently on or recently returned from sick leave',\n },\n {\n const: 'family_leave',\n title:\n 'Currently on or recently returned from maternity, paternity, or other family leave',\n },\n {\n const: 'pregnant_or_breastfeeding',\n title: 'Pregnant or breastfeeding',\n },\n {\n const: 'requested_medical_or_family_leave',\n title: 'Requested medical or family leave',\n },\n {\n const: 'disabled_or_health_condition',\n title: 'Disabled or has a health condition',\n },\n {\n const: 'member_of_union_or_works_council',\n title: 'A member of a union or works council',\n },\n {\n const: 'caring_responsibilities',\n title: 'Caring responsibilities',\n },\n {\n const: 'reported_concerns_with_workplace',\n title:\n 'Reported any wrongdoing; raised any allegations of discrimination, harassment, retaliation, etc.; or asserted their employment rights or raised complaints about their working conditions',\n },\n {\n const: 'none_of_these',\n title:\n 'To the best of my knowledge, I am not aware of any of these',\n },\n ],\n },\n 'x-jsf-presentation': {\n inputType: 'checkbox',\n direction: 'column',\n },\n },\n will_challenge_termination: {\n description: '',\n oneOf: [\n {\n const: 'yes',\n description: '',\n title: 'Yes',\n },\n {\n const: 'no',\n description: '',\n title: 'No',\n },\n ],\n title:\n 'Do you consider it is likely that the employee will challenge their termination?',\n type: 'string',\n 'x-jsf-presentation': {\n direction: 'column',\n inputType: 'radio',\n },\n },\n will_challenge_termination_description: {\n description: '',\n maxLength: 1000,\n title:\n 'Please explain how the employee will challenge their termination',\n type: ['string', 'null'],\n 'x-jsf-presentation': {\n inputType: 'textarea',\n },\n },\n proposed_termination_date: {\n description: '',\n format: 'date',\n maxLength: 255,\n title: 'Proposed termination date',\n type: 'string',\n 'x-jsf-presentation': {\n inputType: 'date',\n },\n },\n },\n required: [\n 'termination_reason',\n 'reason_description',\n 'risk_assessment_reasons',\n 'will_challenge_termination',\n 'proposed_termination_date',\n ],\n type: 'object',\n 'x-jsf-order': [\n 'termination_reason',\n 'reason_description',\n 'additional_comments',\n 'termination_reason_files',\n 'risk_assessment_reasons',\n 'will_challenge_termination',\n 'will_challenge_termination_description',\n 'proposed_termination_date',\n ],\n },\n },\n};\n"],"mappings":"AAAO,IAAMA,EAA2B,CACtC,KAAM,CACJ,QAAS,EACT,OAAQ,CACN,qBAAsB,GACtB,MAAO,CACL,CACE,GAAI,CACF,WAAY,CACV,2BAA4B,CAC1B,MAAO,KACT,CACF,EACA,SAAU,CAAC,4BAA4B,CACzC,EACA,KAAM,CACJ,WAAY,CACV,uCAAwC,CACtC,KAAM,QACR,CACF,EACA,SAAU,CAAC,wCAAwC,CACrD,EACA,KAAM,CACJ,WAAY,CACV,uCAAwC,EAC1C,CACF,CACF,CACF,EACA,WAAY,CACV,mBAAoB,CAClB,MAAO,qBACP,YACE,oGACF,KAAM,SACN,MAAO,CACL,CACE,MAAO,mBACP,MAAO,kBACT,EACA,CACE,MAAO,cACP,MAAO,aACT,EACA,CACE,MAAO,sBACP,MAAO,qBACT,EACA,CACE,MAAO,SACP,MAAO,QACT,EACA,CACE,MAAO,mBACP,MAAO,kBACT,EACA,CACE,MAAO,wCACP,MAAO,uCACT,EACA,CACE,MAAO,mBACP,MAAO,kBACT,EACA,CACE,MAAO,iCACP,MAAO,sDACT,EACA,CACE,MAAO,kBACP,MAAO,iBACT,EACA,CACE,MAAO,sCACP,MAAO,kCACT,EACA,CACE,MAAO,8CACP,MAAO,4BACT,EACA,CACE,MAAO,QACP,MAAO,OACT,CACF,EACA,qBAAsB,CACpB,UAAW,QACb,CACF,EACA,mBAAoB,CAClB,YAAa,GACb,UAAW,IACX,MAAO,6BACP,KAAM,SACN,qBAAsB,CACpB,UAAW,UACb,CACF,EACA,oBAAqB,CACnB,YAAa,GACb,UAAW,IACX,MAAO,yDACP,KAAM,SACN,qBAAsB,CACpB,UAAW,UACb,CACF,EACA,yBAA0B,CACxB,YACE,2EACF,MAAO,2BACP,KAAM,SACN,qBAAsB,CACpB,UAAW,OACX,OAAQ,OACR,SAAU,EACZ,CACF,EACA,wBAAyB,CACvB,YAAa,GACb,MAAO,sBACP,KAAM,QACN,MAAO,CACL,MAAO,CACL,CACE,MAAO,aACP,MAAO,mDACT,EACA,CACE,MAAO,eACP,MACE,oFACJ,EACA,CACE,MAAO,4BACP,MAAO,2BACT,EACA,CACE,MAAO,oCACP,MAAO,mCACT,EACA,CACE,MAAO,+BACP,MAAO,oCACT,EACA,CACE,MAAO,mCACP,MAAO,sCACT,EACA,CACE,MAAO,0BACP,MAAO,yBACT,EACA,CACE,MAAO,mCACP,MACE,2LACJ,EACA,CACE,MAAO,gBACP,MACE,6DACJ,CACF,CACF,EACA,qBAAsB,CACpB,UAAW,WACX,UAAW,QACb,CACF,EACA,2BAA4B,CAC1B,YAAa,GACb,MAAO,CACL,CACE,MAAO,MACP,YAAa,GACb,MAAO,KACT,EACA,CACE,MAAO,KACP,YAAa,GACb,MAAO,IACT,CACF,EACA,MACE,mFACF,KAAM,SACN,qBAAsB,CACpB,UAAW,SACX,UAAW,OACb,CACF,EACA,uCAAwC,CACtC,YAAa,GACb,UAAW,IACX,MACE,mEACF,KAAM,CAAC,SAAU,MAAM,EACvB,qBAAsB,CACpB,UAAW,UACb,CACF,EACA,0BAA2B,CACzB,YAAa,GACb,OAAQ,OACR,UAAW,IACX,MAAO,4BACP,KAAM,SACN,qBAAsB,CACpB,UAAW,MACb,CACF,CACF,EACA,SAAU,CACR,qBACA,qBACA,0BACA,6BACA,2BACF,EACA,KAAM,SACN,cAAe,CACb,qBACA,qBACA,sBACA,2BACA,0BACA,6BACA,yCACA,2BACF,CACF,CACF,CACF","names":["terminationDetailsSchema"]}
@@ -0,0 +1,2 @@
1
+ var e={data:{version:7,schema:{additionalProperties:!1,allOf:[{if:{properties:{agrees_to_pto_amount:{const:"no"}},required:["agrees_to_pto_amount"]},then:{properties:{agrees_to_pto_amount_notes:{type:"string"}},required:["agrees_to_pto_amount_notes"]},else:{properties:{agrees_to_pto_amount_notes:!1,timesheet_file:!1}}}],properties:{agrees_to_pto_amount:{description:"",oneOf:[{const:"yes",description:"",title:"Yes"},{const:"no",description:"",title:"No"}],title:"Are these paid time off records correct?",type:"string","x-jsf-presentation":{direction:"column",inputType:"radio"}},agrees_to_pto_amount_notes:{description:"Please provide details regarding any additional days taken, including specific dates, or any other inaccuracy in the time off data.",maxLength:1e3,title:"Provide time off details",type:["string","null"],"x-jsf-presentation":{inputType:"textarea"}},timesheet_file:{description:"Upload a timesheet exported from your HR software. This way we can compare and confirm the total number of Paid time off.",title:"Timesheet document",type:["string","null"],"x-jsf-presentation":{inputType:"file",accept:".pdf"}}},required:["agrees_to_pto_amount"],type:"object","x-jsf-order":["agrees_to_pto_amount","agrees_to_pto_amount_notes","timesheet_file"]}}};export{e as a};
2
+ //# sourceMappingURL=chunk-W5DG5WWJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/Termination/json-schemas/paidTimeOff.ts"],"sourcesContent":["export const paidTimeOffSchema = {\n data: {\n version: 7,\n schema: {\n additionalProperties: false,\n allOf: [\n {\n if: {\n properties: {\n agrees_to_pto_amount: {\n const: 'no',\n },\n },\n required: ['agrees_to_pto_amount'],\n },\n then: {\n properties: {\n agrees_to_pto_amount_notes: {\n type: 'string',\n },\n },\n required: ['agrees_to_pto_amount_notes'],\n },\n else: {\n properties: {\n agrees_to_pto_amount_notes: false,\n timesheet_file: false,\n },\n },\n },\n ],\n properties: {\n agrees_to_pto_amount: {\n description: '',\n oneOf: [\n {\n const: 'yes',\n description: '',\n title: 'Yes',\n },\n {\n const: 'no',\n description: '',\n title: 'No',\n },\n ],\n title: 'Are these paid time off records correct?',\n type: 'string',\n 'x-jsf-presentation': {\n direction: 'column',\n inputType: 'radio',\n },\n },\n agrees_to_pto_amount_notes: {\n description:\n 'Please provide details regarding any additional days taken, including specific dates, or any other inaccuracy in the time off data.',\n maxLength: 1000,\n title: 'Provide time off details',\n type: ['string', 'null'],\n 'x-jsf-presentation': {\n inputType: 'textarea',\n },\n },\n timesheet_file: {\n description:\n 'Upload a timesheet exported from your HR software. This way we can compare and confirm the total number of Paid time off.',\n title: 'Timesheet document',\n type: ['string', 'null'],\n 'x-jsf-presentation': {\n inputType: 'file',\n accept: '.pdf',\n },\n },\n },\n required: ['agrees_to_pto_amount'],\n type: 'object',\n 'x-jsf-order': [\n 'agrees_to_pto_amount',\n 'agrees_to_pto_amount_notes',\n 'timesheet_file',\n ],\n },\n },\n};\n"],"mappings":"AAAO,IAAMA,EAAoB,CAC/B,KAAM,CACJ,QAAS,EACT,OAAQ,CACN,qBAAsB,GACtB,MAAO,CACL,CACE,GAAI,CACF,WAAY,CACV,qBAAsB,CACpB,MAAO,IACT,CACF,EACA,SAAU,CAAC,sBAAsB,CACnC,EACA,KAAM,CACJ,WAAY,CACV,2BAA4B,CAC1B,KAAM,QACR,CACF,EACA,SAAU,CAAC,4BAA4B,CACzC,EACA,KAAM,CACJ,WAAY,CACV,2BAA4B,GAC5B,eAAgB,EAClB,CACF,CACF,CACF,EACA,WAAY,CACV,qBAAsB,CACpB,YAAa,GACb,MAAO,CACL,CACE,MAAO,MACP,YAAa,GACb,MAAO,KACT,EACA,CACE,MAAO,KACP,YAAa,GACb,MAAO,IACT,CACF,EACA,MAAO,2CACP,KAAM,SACN,qBAAsB,CACpB,UAAW,SACX,UAAW,OACb,CACF,EACA,2BAA4B,CAC1B,YACE,sIACF,UAAW,IACX,MAAO,2BACP,KAAM,CAAC,SAAU,MAAM,EACvB,qBAAsB,CACpB,UAAW,UACb,CACF,EACA,eAAgB,CACd,YACE,4HACF,MAAO,qBACP,KAAM,CAAC,SAAU,MAAM,EACvB,qBAAsB,CACpB,UAAW,OACX,OAAQ,MACV,CACF,CACF,EACA,SAAU,CAAC,sBAAsB,EACjC,KAAM,SACN,cAAe,CACb,uBACA,6BACA,gBACF,CACF,CACF,CACF","names":["paidTimeOffSchema"]}
@@ -0,0 +1,2 @@
1
+ var e={data:{version:7,schema:{additionalProperties:!1,allOf:[],properties:{},required:[],type:"object","x-jsf-order":[]}}};export{e as a};
2
+ //# sourceMappingURL=chunk-XFD3ULUF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/Termination/json-schemas/defaultSchema.ts"],"sourcesContent":["export const defaultSchema = {\n data: {\n version: 7,\n schema: {\n additionalProperties: false,\n allOf: [],\n properties: {},\n required: [],\n type: 'object',\n 'x-jsf-order': [],\n },\n },\n};\n"],"mappings":"AAAO,IAAMA,EAAgB,CAC3B,KAAM,CACJ,QAAS,EACT,OAAQ,CACN,qBAAsB,GACtB,MAAO,CAAC,EACR,WAAY,CAAC,EACb,SAAU,CAAC,EACX,KAAM,SACN,cAAe,CAAC,CAClB,CACF,CACF","names":["defaultSchema"]}
@@ -1,2 +1,2 @@
1
- import{b as i}from"./chunk-OLJ2S6A6.js";import{a as e}from"./chunk-LUCFM5TE.js";import{a as l}from"./chunk-TIXDBKBM.js";import{a as r}from"./chunk-AYDF3IFZ.js";import t from"react";function S({onSubmit:u,onError:C,onSuccess:c}){let{form:a,formId:n,costCalculatorBag:s}=i(),d=r(async m=>{let o=await s?.onSubmit(m);await u?.(m),o?.error?C?.(o.error):o?.data&&c?.(o?.data)},"handleSubmit");return t.createElement(l,{...a},t.createElement("form",{id:n,onSubmit:a.handleSubmit(d),className:"space-y-4 RemoteFlows__CostCalculatorForm"},t.createElement(e,{fields:s?.fields??[]})))}r(S,"CostCalculatorForm");export{S as a};
2
- //# sourceMappingURL=chunk-ROPNMSSM.js.map
1
+ import{b as i}from"./chunk-OLJ2S6A6.js";import{a as e}from"./chunk-AYFHWLQZ.js";import{a as l}from"./chunk-N5AQSLAU.js";import{a as r}from"./chunk-AYDF3IFZ.js";import t from"react";function S({onSubmit:u,onError:C,onSuccess:c}){let{form:a,formId:n,costCalculatorBag:s}=i(),d=r(async m=>{let o=await s?.onSubmit(m);await u?.(m),o?.error?C?.(o.error):o?.data&&c?.(o?.data)},"handleSubmit");return t.createElement(l,{...a},t.createElement("form",{id:n,onSubmit:a.handleSubmit(d),className:"space-y-4 RemoteFlows__CostCalculatorForm"},t.createElement(e,{fields:s?.fields??[]})))}r(S,"CostCalculatorForm");export{S as a};
2
+ //# sourceMappingURL=chunk-XULIEA44.js.map
@@ -1,2 +1,2 @@
1
- import{a as x}from"./chunk-J2RINDSC.js";import{a as T}from"./chunk-4F7PYKUZ.js";import{a as P}from"./chunk-YVC4OEFJ.js";import{a as y,b as v,c as h,d as _,e as w}from"./chunk-XEQTLVMV.js";import{a as k}from"./chunk-DOA6BAUQ.js";import{a as n}from"./chunk-SJ56GVNV.js";import{a as s}from"./chunk-AYDF3IFZ.js";import{Euro as H}from"lucide-react";import t,{lazy as G,useState as A}from"react";import*as N from"react";import{Slot as z}from"@radix-ui/react-slot";import{cva as F}from"class-variance-authority";var E=F("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 B({className:a,variant:o,asChild:r=!1,...u}){return N.createElement(r?z:"span",{"data-slot":"badge",className:n(E({variant:o}),a),...u})}s(B,"Badge");import*as m from"react";import*as i from"@radix-ui/react-tabs";function S({className:a,...o}){return m.createElement(i.Root,{"data-slot":"tabs",className:n("flex flex-col gap-2",a),...o})}s(S,"Tabs");function V({className:a,...o}){return m.createElement(i.List,{"data-slot":"tabs-list",className:n("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-1",a),...o})}s(V,"TabsList");function b({className:a,...o}){return m.createElement(i.Trigger,{"data-slot":"tabs-trigger",className:n("data-[state=active]:bg-background data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring inline-flex flex-1 items-center justify-center gap-1.5 rounded-md px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",a),...o})}s(b,"TabsTrigger");var M=G(()=>import("./flows/CostCalculator/Results/CostCalculatorResultsChart.js"));function st({employmentData:a,options:o}){let[r,u]=A("monthly"),l=a.employments?.[0];if(!l)return null;let e=l.employer_currency_costs,c=e.currency.symbol,f=r==="monthly"?e.monthly_gross_salary:e.annual_gross_salary,p=r==="monthly"?e.monthly_benefits_total:e.annual_benefits_total,g=r==="monthly"?e.monthly_contributions_total:e.annual_contributions_total,D=r==="monthly"?e.monthly_total:e.annual_total,d=r==="monthly"?e.monthly_benefits_breakdown:e.annual_benefits_breakdown,L=r==="monthly"?e.monthly_contributions_breakdown:e.annual_contributions_breakdown,C=[{name:"Gross Salary",value:f,color:o?.chartColors?.grossSalary??"#3b82f6"},{name:"Contributions",value:g,color:o?.chartColors?.contributions??"#f59e0b"}];return d&&C.push({name:"Benefits",value:p??0,color:o?.chartColors?.benefits??"#10b981"}),t.createElement(t.Fragment,null,t.createElement("div",{className:"flex flex-col md:flex-row gap-4 md:items-center justify-between mb-6 RemoteFlows__CostCalculatorResults"},t.createElement("div",{className:"RemoteFlows__CostCalculatorResults__Header"},t.createElement("h2",{className:"text-xl font-semibold flex items-center gap-2"},t.createElement("span",{className:"flex items-center gap-1"},t.createElement(H,{className:"h-5 w-5 text-gray-600"}),o?.title??"Cost Calculator"),t.createElement(B,{className:"ml-2"},l.country.name)),t.createElement("p",{className:"text-primary-foreground font-medium mt-1"},o?.description??`Total cost of employment in ${l.country.name}`)),t.createElement(S,{value:r,onValueChange:j=>u(j),className:"w-full md:w-auto RemoteFlows__CostCalculatorResults__Tabs"},t.createElement(V,{className:"grid w-full md:w-[200px] grid-cols-2"},t.createElement(b,{value:"monthly"},"Monthly"),t.createElement(b,{value:"annual"},"Annual")))),t.createElement("div",{className:n("grid grid-cols-1 gap-6",o?.showChart?"md:grid-cols-3":"","RemoteFlows__CostCalculatorResults_CostBreakdown")},t.createElement(y,{className:"md:col-span-2 rounded-lg"},t.createElement(v,{className:"pb-2"},t.createElement(h,null,"Cost Breakdown"),t.createElement(_,null,"Detailed breakdown of all employer costs")),t.createElement(w,null,t.createElement("div",{className:"space-y-6"},t.createElement(P,{grossSalary:f,currency:c}),d?t.createElement(x,{benefitsBreakdown:d,benefitsTotal:p,currency:c}):null,t.createElement(T,{contributionsBreakdown:L,contributionsTotal:g,currency:c}),t.createElement(k,{totalCost:D,currency:c})))),o?.showChart&&t.createElement(M,{chartData:C,currency:c})))}s(st,"CostCalculatorResults");export{st as a};
2
- //# sourceMappingURL=chunk-5O2L2L25.js.map
1
+ import{a as y,b as v,c as h,d as _,e as w}from"./chunk-XEQTLVMV.js";import{a as k}from"./chunk-DOA6BAUQ.js";import{a as x}from"./chunk-J2RINDSC.js";import{a as T}from"./chunk-4F7PYKUZ.js";import{a as P}from"./chunk-YVC4OEFJ.js";import{a as n}from"./chunk-SJ56GVNV.js";import{a as s}from"./chunk-AYDF3IFZ.js";import{Euro as H}from"lucide-react";import t,{lazy as G,useState as A}from"react";import*as N from"react";import{Slot as z}from"@radix-ui/react-slot";import{cva as F}from"class-variance-authority";var E=F("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 B({className:a,variant:o,asChild:r=!1,...u}){return N.createElement(r?z:"span",{"data-slot":"badge",className:n(E({variant:o}),a),...u})}s(B,"Badge");import*as m from"react";import*as i from"@radix-ui/react-tabs";function S({className:a,...o}){return m.createElement(i.Root,{"data-slot":"tabs",className:n("flex flex-col gap-2",a),...o})}s(S,"Tabs");function V({className:a,...o}){return m.createElement(i.List,{"data-slot":"tabs-list",className:n("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-1",a),...o})}s(V,"TabsList");function b({className:a,...o}){return m.createElement(i.Trigger,{"data-slot":"tabs-trigger",className:n("data-[state=active]:bg-background data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring inline-flex flex-1 items-center justify-center gap-1.5 rounded-md px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",a),...o})}s(b,"TabsTrigger");var M=G(()=>import("./flows/CostCalculator/Results/CostCalculatorResultsChart.js"));function st({employmentData:a,options:o}){let[r,u]=A("monthly"),l=a.employments?.[0];if(!l)return null;let e=l.employer_currency_costs,c=e.currency.symbol,f=r==="monthly"?e.monthly_gross_salary:e.annual_gross_salary,p=r==="monthly"?e.monthly_benefits_total:e.annual_benefits_total,g=r==="monthly"?e.monthly_contributions_total:e.annual_contributions_total,D=r==="monthly"?e.monthly_total:e.annual_total,d=r==="monthly"?e.monthly_benefits_breakdown:e.annual_benefits_breakdown,L=r==="monthly"?e.monthly_contributions_breakdown:e.annual_contributions_breakdown,C=[{name:"Gross Salary",value:f,color:o?.chartColors?.grossSalary??"#3b82f6"},{name:"Contributions",value:g,color:o?.chartColors?.contributions??"#f59e0b"}];return d&&C.push({name:"Benefits",value:p??0,color:o?.chartColors?.benefits??"#10b981"}),t.createElement(t.Fragment,null,t.createElement("div",{className:"flex flex-col md:flex-row gap-4 md:items-center justify-between mb-6 RemoteFlows__CostCalculatorResults"},t.createElement("div",{className:"RemoteFlows__CostCalculatorResults__Header"},t.createElement("h2",{className:"text-xl font-semibold flex items-center gap-2"},t.createElement("span",{className:"flex items-center gap-1"},t.createElement(H,{className:"h-5 w-5 text-gray-600"}),o?.title??"Cost Calculator"),t.createElement(B,{className:"ml-2"},l.country.name)),t.createElement("p",{className:"text-primary-foreground font-medium mt-1"},o?.description??`Total cost of employment in ${l.country.name}`)),t.createElement(S,{value:r,onValueChange:j=>u(j),className:"w-full md:w-auto RemoteFlows__CostCalculatorResults__Tabs"},t.createElement(V,{className:"grid w-full md:w-[200px] grid-cols-2"},t.createElement(b,{value:"monthly"},"Monthly"),t.createElement(b,{value:"annual"},"Annual")))),t.createElement("div",{className:n("grid grid-cols-1 gap-6",o?.showChart?"md:grid-cols-3":"","RemoteFlows__CostCalculatorResults_CostBreakdown")},t.createElement(y,{className:"md:col-span-2 rounded-lg"},t.createElement(v,{className:"pb-2"},t.createElement(h,null,"Cost Breakdown"),t.createElement(_,null,"Detailed breakdown of all employer costs")),t.createElement(w,null,t.createElement("div",{className:"space-y-6"},t.createElement(P,{grossSalary:f,currency:c}),d?t.createElement(x,{benefitsBreakdown:d,benefitsTotal:p,currency:c}):null,t.createElement(T,{contributionsBreakdown:L,contributionsTotal:g,currency:c}),t.createElement(k,{totalCost:D,currency:c})))),o?.showChart&&t.createElement(M,{chartData:C,currency:c})))}s(st,"CostCalculatorResults");export{st as a};
2
+ //# sourceMappingURL=chunk-YAHWFLDH.js.map
@@ -1,2 +1,2 @@
1
- import{a as i}from"./chunk-AYDF3IFZ.js";import A from"lodash/get";var R={TEXT:"text",TEXTAREA:"textarea",NUMBER:"number",SELECT:"select",COUNTRIES:"countries",TEL:"tel",EMAIL:"email",MONEY:"money",DATE:"date",DATE_RANGE:"date-range",CURRENCIES:"currencies",TIME:"time"},V={CHECKBOX:"checkbox",ACK_CHECK:"ack-check"},u={FILE:"file",RADIO:"radio",RADIO_CARD:"radio-card",GROUP_ARRAY:"group-array",EXTRA:"extra",STATEMENT:"statement",HIDDEN:"hidden",FIELDSET:"fieldset",FIELDSET_FLAT:"fieldset-flat",WORK_SCHEDULE:"work-schedule",WORK_WEEK_SCHEDULE:"work-week-schedule",BENEFITS:"benefits",SIGNATURE:"signature",SELECT_MULTIPLE:"select-multiple",...R,...V};function g(e){return Math.round((e+Number.EPSILON)*100)/100}i(g,"round");function T(e){return parseFloat(e.replace(/,/g,""))}i(T,"convertToValidCost");function I(e){if(e==null||e===""||Number.isNaN(e)||Array.isArray(e)||typeof e=="boolean")return null;let n;return typeof e=="string"?n=T(e):n=e,g(n*100)}i(I,"convertToCents");function O(e){if(e==null||Number.isNaN(e))return null;let n;return typeof e=="string"?n=T(e||"0"):n=e,g(n/100)}i(O,"convertFromCents");var m=i(e=>Object.entries(e||{}).reduce((n,[s,t])=>(Array.isArray(t)?n[s]=t.map(r=>typeof r=="object"&&r!==null?m(r):typeof r=="string"?r.trim():r):typeof t=="object"&&t!==null?n[s]=m(t):n[s]=typeof t=="string"?t.trim():t,n),{}),"trimStringValues");function p(e){let n={};return Object.entries(e).forEach(([s,t])=>{Array.isArray(t)?n[s]=t.map(r=>typeof r=="object"&&r!==null?p(r):r===""?null:r):typeof t=="object"&&t!==null?n[s]=p(t):n[s]=t===""?null:t}),n}i(p,"convertEmptyStringsToNull");function d(e,n){let s={};return n.forEach(t=>{let r=t.name;if(!(!Object.prototype.hasOwnProperty.call(e,r)&&!(t.type===u.FIELDSET&&t.valueGroupingDisabled))){if(t.type===u.FIELDSET&&t.valueGroupingDisabled){Object.assign(s,d(e,t.fields));return}t.readOnly&&t.defaultValue?s[r]=t.defaultValue:s[r]=e[r]}}),s}i(d,"prefillReadOnlyFields");function b(e,n){return e.reduce((s,t)=>(t.type===u.FIELDSET&&t.valueGroupingDisabled?Object.assign(s,b(t.fields,n)):Object.prototype.hasOwnProperty.call(n,t.name)&&(s[t.name]=n[t.name]),s),{})}i(b,"extractFieldsetFieldsValues");var E={[u.COUNTRIES]:{transformValueFromAPI:i(e=>n=>{if(!e.multiple)return n??"";let s;return typeof n=="string"?s=n.split(","):s=n||[],s.map(r=>e.countries?.find?.(a=>"name"in a&&a.name===r)||{name:r})},"transformValueFromAPI"),transformValueToAPI:i(e=>n=>!e.multiple||typeof n=="string"?n:n.map(s=>typeof s=="string"?s:s.name),"transformValueToAPI"),transformValue:i(e=>{let n=i(s=>s?.name||s?.value||s?.label,"getCountryValue");return Array.isArray(e)?e.map(n):n(e)||""},"transformValue")},[u.NUMBER]:{transformValueToAPI:i(()=>e=>{let n=Number(e);return Number.isNaN(n)?e:n},"transformValueToAPI")},[u.MONEY]:{transformValueFromAPI:i(()=>e=>O(e)??"","transformValueFromAPI"),transformValueToAPI:i(()=>I,"transformValueToAPI")},[u.RADIO]:{transformValueToAPI:i(e=>n=>e.transformToBool?n==="yes":n,"transformValueToAPI")},[u.CHECKBOX]:{transformValueToAPI:i(()=>e=>e===void 0?!1:e,"transformValueToAPI")},[u.SELECT]:{transformValue:i(e=>Array.isArray(e)?e.map(n=>n.value):e?.value??"","transformValue")}};function y(e={},n){return n.filter(r=>e[r.name]||r.type===u.FIELDSET&&r.valueGroupingDisabled).reduce((r,a)=>{switch(a.type){case u.FIELDSET:{let o=a;if(o.valueGroupingDisabled){let l=b(o.fields,e);Object.assign(r,y(l,o.fields))}else r[a.name]=y(e[a.name],o.fields);break}case u.TEXTAREA:case u.TEXT:{r[a.name]=e[a.name].replace(/\0/g,"");break}case u.GROUP_ARRAY:{let o=a?.fields?.().map(c=>({...c,name:c.nameKey||""})),l=e[a.name]?.map(c=>y(c,o));r[a.name]=l;break}case u.EXTRA:{let o=a;if(o.includeValueToApi!==!1){let l=e[o.name],c=o?.transformValueToAPI||E[o.type]?.transformValueToAPI;if(c){r[o.name]=c(a)(l);break}r[o.name]=l;break}r[o.name]=void 0;break}default:{let o=e[a.name],l=a?.transformValueToAPI||E[a.type]?.transformValueToAPI;if(l){r[a.name]=l(a)(o);break}r[a.name]=o;break}}return a.forcedValue!==void 0&&(r[a.name]=a.forcedValue),r},{...e})}i(y,"parseFormValuesToAPI");function D(e,n){return e.visibilityCondition?e.visibilityCondition(n):typeof e.isVisible<"u"?!!e.isVisible:!0}i(D,"isFieldVisible");function F(e,n){return e.calculateDynamicProperties?{...e,...e.calculateDynamicProperties(n)||{}}:e}i(F,"applyFieldDynamicProperties");function f(e,n,s,t){let r={};return n.map(a=>F(a,e)).forEach(a=>{let o=a.name;t&&(o=o?`${t}.${a.name}`:t);let l=A(e,o);if(!(!D(a,e)&&!(s&&l))&&!a.meta?.ignoreValue)if(a.type==="fieldset"&&a.valueGroupingDisabled)Object.assign(r,f(e,a.fields,s,o));else if(Array.isArray(a.fields))r[a.name]=f(e,a.fields,s,o);else{if(l===void 0)return;r[a.name]=l}}),r}i(f,"excludeValuesInvisible");function P(e,n,s){let t=s?.keepInvisibleValues?e:f(e,n),r=y(t,n),a=m(r),o=p(a);return d(o,n)}i(P,"parseSubmitValues");function S(e,n,s={isPartialValidation:!1}){return P(e,n,{keepInvisibleValues:s?.isPartialValidation})}i(S,"parseJSFToValidate");export{I as a,O as b,S as c};
2
- //# sourceMappingURL=chunk-6DMCAUPE.js.map
1
+ import{a as i}from"./chunk-AYDF3IFZ.js";import A from"lodash/get";var R={TEXT:"text",TEXTAREA:"textarea",NUMBER:"number",SELECT:"select",COUNTRIES:"countries",TEL:"tel",EMAIL:"email",MONEY:"money",DATE:"date",DATE_RANGE:"date-range",CURRENCIES:"currencies",TIME:"time"},V={CHECKBOX:"checkbox",ACK_CHECK:"ack-check"},u={FILE:"file",RADIO:"radio",RADIO_CARD:"radio-card",GROUP_ARRAY:"group-array",EXTRA:"extra",STATEMENT:"statement",HIDDEN:"hidden",FIELDSET:"fieldset",FIELDSET_FLAT:"fieldset-flat",WORK_SCHEDULE:"work-schedule",WORK_WEEK_SCHEDULE:"work-week-schedule",BENEFITS:"benefits",SIGNATURE:"signature",SELECT_MULTIPLE:"select-multiple",...R,...V};function g(e){return Math.round((e+Number.EPSILON)*100)/100}i(g,"round");function T(e){return parseFloat(e.replace(/,/g,""))}i(T,"convertToValidCost");function I(e){if(e==null||e===""||Number.isNaN(e)||Array.isArray(e)||typeof e=="boolean")return null;let n;return typeof e=="string"?n=T(e):n=e,g(n*100)}i(I,"convertToCents");function O(e){if(e==null||Number.isNaN(e))return null;let n;return typeof e=="string"?n=T(e||"0"):n=e,g(n/100)}i(O,"convertFromCents");var m=i(e=>Object.entries(e||{}).reduce((n,[s,t])=>(Array.isArray(t)?n[s]=t.map(r=>typeof r=="object"&&r!==null?m(r):typeof r=="string"?r.trim():r):typeof t=="object"&&t!==null?n[s]=m(t):n[s]=typeof t=="string"?t.trim():t,n),{}),"trimStringValues");function p(e){let n={};return Object.entries(e).forEach(([s,t])=>{Array.isArray(t)?n[s]=t.map(r=>typeof r=="object"&&r!==null?p(r):r===""?null:r):typeof t=="object"&&t!==null?n[s]=p(t):n[s]=t===""?null:t}),n}i(p,"convertEmptyStringsToNull");function d(e,n){let s={};return n.forEach(t=>{let r=t.name;if(!(!Object.prototype.hasOwnProperty.call(e,r)&&!(t.type===u.FIELDSET&&t.valueGroupingDisabled))){if(t.type===u.FIELDSET&&t.valueGroupingDisabled){Object.assign(s,d(e,t.fields));return}t.readOnly&&t.defaultValue?s[r]=t.defaultValue:s[r]=e[r]}}),s}i(d,"prefillReadOnlyFields");function b(e,n){return e.reduce((s,t)=>(t.type===u.FIELDSET&&t.valueGroupingDisabled?Object.assign(s,b(t.fields,n)):Object.prototype.hasOwnProperty.call(n,t.name)&&(s[t.name]=n[t.name]),s),{})}i(b,"extractFieldsetFieldsValues");var E={[u.COUNTRIES]:{transformValueFromAPI:i(e=>n=>{if(!e.multiple)return n??"";let s;return typeof n=="string"?s=n.split(","):s=n||[],s.map(r=>e.countries?.find?.(a=>"name"in a&&a.name===r)||{name:r})},"transformValueFromAPI"),transformValueToAPI:i(e=>n=>!e.multiple||typeof n=="string"?n:n.map(s=>typeof s=="string"?s:s.name),"transformValueToAPI"),transformValue:i(e=>{let n=i(s=>s?.name||s?.value||s?.label,"getCountryValue");return Array.isArray(e)?e.map(n):n(e)||""},"transformValue")},[u.NUMBER]:{transformValueToAPI:i(()=>e=>{let n=Number(e);return Number.isNaN(n)?e:n},"transformValueToAPI")},[u.MONEY]:{transformValueFromAPI:i(()=>e=>O(e)??"","transformValueFromAPI"),transformValueToAPI:i(()=>I,"transformValueToAPI")},[u.RADIO]:{transformValueToAPI:i(e=>n=>e.transformToBool?n==="yes":n,"transformValueToAPI")},[u.CHECKBOX]:{transformValueToAPI:i(e=>n=>n===void 0?!1:e.const&&n===!0?e.const:n,"transformValueToAPI")},[u.SELECT]:{transformValue:i(e=>Array.isArray(e)?e.map(n=>n.value):e?.value??"","transformValue")}};function y(e={},n){return n.filter(r=>e[r.name]||r.type===u.FIELDSET&&r.valueGroupingDisabled).reduce((r,a)=>{switch(a.type){case u.FIELDSET:{let o=a;if(o.valueGroupingDisabled){let l=b(o.fields,e);Object.assign(r,y(l,o.fields))}else r[a.name]=y(e[a.name],o.fields);break}case u.TEXTAREA:case u.TEXT:{r[a.name]=e[a.name].replace(/\0/g,"");break}case u.GROUP_ARRAY:{let o=a?.fields?.().map(c=>({...c,name:c.nameKey||""})),l=e[a.name]?.map(c=>y(c,o));r[a.name]=l;break}case u.EXTRA:{let o=a;if(o.includeValueToApi!==!1){let l=e[o.name],c=o?.transformValueToAPI||E[o.type]?.transformValueToAPI;if(c){r[o.name]=c(a)(l);break}r[o.name]=l;break}r[o.name]=void 0;break}default:{let o=e[a.name],l=a?.transformValueToAPI||E[a.type]?.transformValueToAPI;if(l){r[a.name]=l(a)(o);break}r[a.name]=o;break}}return a.forcedValue!==void 0&&(r[a.name]=a.forcedValue),r},{...e})}i(y,"parseFormValuesToAPI");function D(e,n){return e.visibilityCondition?e.visibilityCondition(n):typeof e.isVisible<"u"?!!e.isVisible:!0}i(D,"isFieldVisible");function F(e,n){return e.calculateDynamicProperties?{...e,...e.calculateDynamicProperties(n)||{}}:e}i(F,"applyFieldDynamicProperties");function f(e,n,s,t){let r={};return n.map(a=>F(a,e)).forEach(a=>{let o=a.name;t&&(o=o?`${t}.${a.name}`:t);let l=A(e,o);if(!(!D(a,e)&&!(s&&l))&&!a.meta?.ignoreValue)if(a.type==="fieldset"&&a.valueGroupingDisabled)Object.assign(r,f(e,a.fields,s,o));else if(Array.isArray(a.fields))r[a.name]=f(e,a.fields,s,o);else{if(l===void 0)return;r[a.name]=l}}),r}i(f,"excludeValuesInvisible");function P(e,n,s){let t=s?.keepInvisibleValues?e:f(e,n),r=y(t,n),a=m(r),o=p(a);return d(o,n)}i(P,"parseSubmitValues");function S(e,n,s={isPartialValidation:!1}){return P(e,n,{keepInvisibleValues:s?.isPartialValidation})}i(S,"parseJSFToValidate");export{I as a,O as b,S as c};
2
+ //# sourceMappingURL=chunk-YBACB5A6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/utils.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Fields } from '@remoteoss/json-schema-form';\nimport get from 'lodash/get';\n\nconst textInputTypes = {\n TEXT: 'text',\n TEXTAREA: 'textarea',\n NUMBER: 'number',\n SELECT: 'select',\n COUNTRIES: 'countries',\n TEL: 'tel',\n EMAIL: 'email',\n MONEY: 'money',\n DATE: 'date',\n DATE_RANGE: 'date-range',\n CURRENCIES: 'currencies',\n TIME: 'time',\n} as const;\n\nconst checkboxTypes = {\n CHECKBOX: 'checkbox',\n ACK_CHECK: 'ack-check',\n} as const;\n\nconst supportedTypes = {\n FILE: 'file',\n RADIO: 'radio',\n /** @deprecated */\n RADIO_CARD: 'radio-card',\n GROUP_ARRAY: 'group-array',\n EXTRA: 'extra',\n STATEMENT: 'statement',\n HIDDEN: 'hidden',\n FIELDSET: 'fieldset',\n FIELDSET_FLAT: 'fieldset-flat',\n WORK_SCHEDULE: 'work-schedule',\n WORK_WEEK_SCHEDULE: 'work-week-schedule',\n /** @deprecated we still display benefits in read-only contract details view, but never in any form */\n BENEFITS: 'benefits',\n SIGNATURE: 'signature',\n SELECT_MULTIPLE: 'select-multiple',\n ...textInputTypes,\n ...checkboxTypes,\n} as const;\n\nfunction round(value: number): number {\n return Math.round((value + Number.EPSILON) * 100) / 100;\n}\n\nfunction convertToValidCost(value: string) {\n return parseFloat(value.replace(/,/g, ''));\n}\n\nexport function convertToCents(\n amount?: number | string | string[] | null | boolean,\n) {\n if (\n amount == null ||\n amount === '' ||\n Number.isNaN(amount) ||\n Array.isArray(amount) ||\n typeof amount === 'boolean'\n ) {\n return null;\n }\n\n let validAmount: number;\n\n if (typeof amount === 'string') {\n validAmount = convertToValidCost(amount);\n } else {\n validAmount = amount;\n }\n\n return round(validAmount * 100);\n}\n\nexport function convertFromCents(amount?: number | string | null) {\n if (amount == null || Number.isNaN(amount)) return null;\n\n let normalizedValue: number;\n\n if (typeof amount === 'string') {\n normalizedValue = convertToValidCost(amount || '0');\n } else {\n normalizedValue = amount;\n }\n\n return round(normalizedValue / 100);\n}\n\nconst trimStringValues = (values: Record<string, any>) =>\n Object.entries(values || {}).reduce<Record<string, any>>(\n (result, [key, value]) => {\n if (Array.isArray(value)) {\n // If the value is an array, recursively process each element\n result[key] = value.map((item) =>\n typeof item === 'object' && item !== null\n ? trimStringValues(item)\n : typeof item === 'string'\n ? item.trim()\n : item,\n );\n } else if (typeof value === 'object' && value !== null) {\n // If the value is an object, recursively process it\n result[key] = trimStringValues(value);\n } else {\n // Otherwise, trim the string or keep the value as is\n result[key] = typeof value === 'string' ? value.trim() : value;\n }\n return result;\n },\n {},\n );\n\nfunction convertEmptyStringsToNull(values: Record<string, any>) {\n const result: Record<string, any> = {};\n\n Object.entries(values).forEach(([key, value]) => {\n if (Array.isArray(value)) {\n // If the value is an array, recursively process each element\n result[key] = value.map((item) =>\n typeof item === 'object' && item !== null\n ? convertEmptyStringsToNull(item)\n : item === ''\n ? null\n : item,\n );\n } else if (typeof value === 'object' && value !== null) {\n // If the value is an object, recursively process it\n result[key] = convertEmptyStringsToNull(value);\n } else {\n // Otherwise, convert empty strings to null or keep the value as is\n result[key] = value === '' ? null : value;\n }\n });\n\n return result;\n}\n\n/**\n * Given a list of form values, modify the ones that are readOnly,\n * based on their field config, by adding its defaultValue.\n * This is needed to support readOnly fields that are also conditional\n * based on the \"pivotName\" workaround.\n * @param {Object} values - List with form values { name: value }.\n * @param {Array} fields - Respective form fields configuration.\n */\nfunction prefillReadOnlyFields(values: Record<string, any>, fields: any[]) {\n const newValues: Record<string, any> = {};\n\n fields.forEach((field) => {\n const fieldName = field.name;\n\n if (\n !Object.prototype.hasOwnProperty.call(values, fieldName!) &&\n !(field.type === supportedTypes.FIELDSET && field.valueGroupingDisabled)\n )\n return;\n\n if (field.type === supportedTypes.FIELDSET && field.valueGroupingDisabled) {\n Object.assign(newValues, prefillReadOnlyFields(values, field.fields));\n return;\n }\n\n if (field.readOnly && field.defaultValue) {\n newValues[fieldName!] = field.defaultValue;\n } else {\n newValues[fieldName!] = values[fieldName!];\n }\n });\n\n return newValues;\n}\n/**\n * Recursively extracts fieldsets' fields values and maps them to the field name\n * For nested fields that are fieldsets with valueGroupingDisabled, the values\n * are extracted one level up\n *\n * @param {Array} fields - Fieldset fields configuration.\n * @param {Object} formValues - List with form values { name: value }.\n * @return {Object} – Raw form values mapped to the field name\n */\nfunction extractFieldsetFieldsValues(\n fields: any[],\n formValues: Record<string, unknown>,\n) {\n return fields.reduce<Record<string, any>>((nestedAcc, subField) => {\n const isFieldsetValueGroupingDisabled =\n subField.type === supportedTypes.FIELDSET &&\n subField.valueGroupingDisabled;\n\n if (isFieldsetValueGroupingDisabled) {\n Object.assign(\n nestedAcc,\n extractFieldsetFieldsValues(subField.fields, formValues),\n );\n } else if (\n Object.prototype.hasOwnProperty.call(formValues, subField.name!)\n ) {\n nestedAcc[subField.name!] = formValues[subField.name!];\n }\n\n return nestedAcc;\n }, {});\n}\n\nexport const fieldTypesTransformations: Record<string, any> = {\n [supportedTypes.COUNTRIES]: {\n /**\n *\n * @param {Object} field - Field config that must contain field.countries\n * @param {String[]|String} value - Selected country\n * - Current data (multi): an array of country names - eg: ['Peru', 'Germany']\n * - Legacy data (multi): a string of country names - eg: \"Peru,Germany\"\n * @returns {String[]} Eg [{ label: 'PER', name: 'Peru' }]\n */\n transformValueFromAPI: (field: any) => (value: string) => {\n if (!field.multiple) {\n return value ?? '';\n }\n\n let countryNames;\n\n if (typeof value === 'string') {\n // support legacy data (when the fields were open text fields before)\n countryNames = value.split(',');\n } else {\n countryNames = value || [];\n }\n\n const countryValues = countryNames.map(\n // Return { name: countryName } as fallback to legacy data\n // The \"name\" is used at react-select, to connect to the country flag.\n (countryName) =>\n field.countries?.find?.(\n (country: any) => 'name' in country && country.name === countryName,\n ) || {\n name: countryName,\n },\n );\n\n return countryValues;\n },\n /**\n * @param {String[] | { name: String }[]} value\n * - Excepted: array of strings.\n * - Edge cases: array of objects. (when using dangerousTransformValue)\n * @returns {String[]} - List of countries\n * @example expected: ['Peru', 'Germany'] -> ['Peru', 'Germany']\n * @example edge cases: [{name: 'Peru'}, {name: 'Germany'}] -> ['Peru', 'Germany']\n */\n transformValueToAPI:\n (field: any) => (selectedCountries: string[] | { name: string }[]) => {\n if (!field.multiple || typeof selectedCountries === 'string') {\n return selectedCountries;\n }\n // NOTE: The value should be an array of strings, however legacy data can come as\n // an array of country objects. So, we always send an array of strings to normalize\n // the data (eg old form values being modified) until DB migration is done !5667\n return selectedCountries.map((option) =>\n typeof option === 'string' ? option : option.name,\n );\n },\n /**\n * Used for react-select, where the country selected is transformed\n * before saving on Formik state. Supports both solo and multi select\n * @param {Object|Object[]} selectedCountry[] - Current selected options\n * @param {String} selectedCountry[].value\n * @param {String} selectedCountry[].name\n * @param {String} selectedCountry[].label\n * @returns {String[]} - List of countries selected\n * @example\n * [{ value: 'Hungria' }] -> ['Hungria']\n */\n transformValue: (selectedCountry: any | any[]) => {\n // name or label are used in dragon. value is used in json-schema-form\n // TODO: it should be the same everywhere — read more at !5667\n const getCountryValue = (opt: any) =>\n opt?.name || opt?.value || opt?.label;\n return Array.isArray(selectedCountry)\n ? selectedCountry.map(getCountryValue) // support multi countries\n : getCountryValue(selectedCountry) || ''; // Fallback to '' in case user removes all countries\n },\n },\n [supportedTypes.NUMBER]: {\n transformValueToAPI: () => (value: string) => {\n // this prevents values with letters such as \"2r\" from being considered valid\n // if the input is invalid, number().cast will return NaN\n const castValue = Number(value);\n\n if (Number.isNaN(castValue)) {\n return value;\n }\n\n return castValue;\n },\n },\n [supportedTypes.MONEY]: {\n transformValueFromAPI: () => (value: string | number) =>\n convertFromCents(value) ?? '',\n transformValueToAPI: () => convertToCents,\n },\n [supportedTypes.RADIO]: {\n transformValueToAPI: (field: any) => (value: string) => {\n if (field.transformToBool) {\n return value === 'yes';\n }\n return value;\n },\n },\n [supportedTypes.CHECKBOX]: {\n transformValueToAPI: (field: any) => (value: string | boolean) => {\n if (value === undefined) {\n return false;\n }\n\n if (field.const && value === true) {\n return field.const;\n }\n return value;\n },\n },\n [supportedTypes.SELECT]: {\n /**\n * Used for react-select, where the value is transformed\n * before saving on Formik state.\n * @param {Object | Object[]} option - Object structure with options config\n * @param {String} option[].value - Key for the API\n * @param {Array} this.options[].label - Friendly label\n * @example\n * [{ value: '1', label: 'One' }, { value: '2', label: 'Two' }] -> [\"One\", \"Two\"]\n * { value: '1', label: 'One' } -> \"One\"\n * {} -> \"\"\n */\n transformValue: (option: any | any[]) =>\n Array.isArray(option)\n ? option.map((opt) => opt.value) // multi-options\n : (option?.value ?? ''), // Fallback to '' in case user removes all options,\n },\n};\n\nexport function parseFormValuesToAPI(\n formValues: Record<string, any> = {},\n fields: any[],\n) {\n const filteredFields = fields.filter(\n (field) =>\n formValues[field.name!] ||\n (field.type === supportedTypes.FIELDSET && field.valueGroupingDisabled),\n );\n\n const parsedFormValues = filteredFields.reduce(\n (acc, field) => {\n switch (field.type) {\n case supportedTypes.FIELDSET: {\n const fieldset = field;\n if (fieldset.valueGroupingDisabled) {\n const nestedFormValues = extractFieldsetFieldsValues(\n fieldset.fields,\n formValues,\n );\n\n Object.assign(\n acc,\n parseFormValuesToAPI(nestedFormValues, fieldset.fields),\n );\n } else {\n acc[field.name!] = parseFormValuesToAPI(\n formValues[field.name!],\n fieldset.fields,\n );\n }\n break;\n }\n\n case supportedTypes.TEXTAREA:\n case supportedTypes.TEXT: {\n // Attempt to remove null bytes from form values - https://gitlab.com/remote-com/employ-starbase/tracker/-/issues/10670\n acc[field.name] = formValues[field.name].replace(/\\0/g, '');\n break;\n }\n\n case supportedTypes.GROUP_ARRAY: {\n // NOTE: The field `name` in group arrays represents a path, but we only\n // need the last part of it which is represented by `nameKey`.\n\n const transformedFields = field?.fields?.().map((subField: any) => ({\n ...subField,\n name: subField.nameKey || '',\n }));\n\n // Null check necessary for case where no fields are set due to optional check\n const parsedFieldValues = formValues[field.name]?.map(\n (fieldValues: Record<string, any>) =>\n parseFormValuesToAPI(fieldValues, transformedFields),\n );\n\n acc[field.name] = parsedFieldValues;\n break;\n }\n case supportedTypes.EXTRA: {\n const extraField = field;\n if (extraField.includeValueToApi !== false) {\n const formValue = formValues[extraField.name];\n const fieldTransformValueToAPI =\n extraField?.transformValueToAPI ||\n fieldTypesTransformations[extraField.type]?.transformValueToAPI;\n\n // logErrorOnMissingComplimentaryParams(field);\n\n if (fieldTransformValueToAPI) {\n acc[extraField.name] = fieldTransformValueToAPI(field)(formValue);\n break;\n }\n\n acc[extraField.name] = formValue;\n break;\n }\n acc[extraField.name] = undefined;\n break;\n }\n default: {\n const formValue = formValues[field.name];\n const fieldTransformValueToAPI =\n field?.transformValueToAPI ||\n fieldTypesTransformations[field.type]?.transformValueToAPI;\n // logErrorOnMissingComplimentaryParams(field);\n if (fieldTransformValueToAPI) {\n acc[field.name] = fieldTransformValueToAPI(field)(formValue);\n break;\n }\n acc[field.name] = formValue;\n break;\n }\n }\n\n // this occurs when const === default in a JSON Schema for a given field.\n // without this, values such as money types won't use the correct value.\n if (field.forcedValue !== undefined) {\n acc[field.name!] = field.forcedValue;\n }\n\n return acc;\n },\n { ...formValues },\n );\n\n return parsedFormValues;\n}\n\nfunction isFieldVisible(field: any, formValues: Record<string, unknown>) {\n if (field.visibilityCondition) {\n return field.visibilityCondition(formValues);\n }\n\n if (typeof field.isVisible !== 'undefined') {\n return Boolean(field.isVisible);\n }\n\n return true;\n}\n\nfunction applyFieldDynamicProperties(\n field: any,\n values: Record<string, unknown> | Record<string, unknown>[],\n) {\n if (field.calculateDynamicProperties) {\n return {\n ...field,\n ...(field.calculateDynamicProperties(values) || {}),\n };\n }\n\n return field;\n}\n\nfunction excludeValuesInvisible(\n values: any,\n fields: any[],\n keepTruthyInvisibleValues?: boolean,\n parentFieldKeyPath?: string,\n) {\n const valuesAsked: Record<string, any> = {};\n\n fields\n .map((field) => applyFieldDynamicProperties(field, values))\n .forEach((field) => {\n let fieldKeyPath = field.name;\n if (parentFieldKeyPath) {\n fieldKeyPath = fieldKeyPath\n ? `${parentFieldKeyPath}.${field.name}`\n : parentFieldKeyPath;\n }\n\n const valueOfField = get(values, fieldKeyPath!);\n\n // keepTruthyInvisibleValues: false/undefined -> remove invisible field\n // keepTruthyInvisibleValues: true -> keep invisible field if it has a value\n if (\n !isFieldVisible(field, values) &&\n !(keepTruthyInvisibleValues && !!valueOfField)\n ) {\n return;\n }\n\n if (field.meta?.ignoreValue) {\n return;\n }\n\n if (field.type === 'fieldset' && field.valueGroupingDisabled) {\n Object.assign(\n valuesAsked,\n excludeValuesInvisible(\n values,\n field.fields,\n keepTruthyInvisibleValues,\n fieldKeyPath,\n ),\n );\n } else if (Array.isArray(field.fields)) {\n valuesAsked[field.name!] = excludeValuesInvisible(\n values,\n field.fields,\n keepTruthyInvisibleValues,\n fieldKeyPath,\n );\n } else {\n if (valueOfField === undefined) {\n return;\n }\n valuesAsked[field.name!] = valueOfField;\n }\n });\n\n return valuesAsked;\n}\n\nexport function parseSubmitValues(\n formValues: Record<string, any>,\n fields: any[],\n config?: { keepInvisibleValues?: boolean },\n) {\n const visibleFormValues = config?.keepInvisibleValues\n ? formValues\n : excludeValuesInvisible(formValues, fields);\n const convertedFormValues = parseFormValuesToAPI(visibleFormValues, fields);\n const formValuesWithTrimmedStrings = trimStringValues(convertedFormValues);\n const formValuesWithUndefined = convertEmptyStringsToNull(\n formValuesWithTrimmedStrings,\n );\n const valuesWithReadOnly = prefillReadOnlyFields(\n formValuesWithUndefined,\n fields,\n );\n return valuesWithReadOnly;\n}\n\nexport function parseJSFToValidate(\n formValues: Record<string, any>,\n fields: Fields,\n config: { isPartialValidation: boolean } = {\n isPartialValidation: false,\n },\n) {\n const valuesParsed = parseSubmitValues(formValues, fields, {\n /* We cannot exclude invisible fields (excludeValuesInvisible) because\n they are needed for conditional fields validations */\n keepInvisibleValues: config?.isPartialValidation,\n });\n return valuesParsed;\n}\n"],"mappings":"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","names":["get","textInputTypes","checkboxTypes","supportedTypes","round","value","__name","convertToValidCost","convertToCents","amount","validAmount","convertFromCents","normalizedValue","trimStringValues","values","result","key","item","convertEmptyStringsToNull","prefillReadOnlyFields","fields","newValues","field","fieldName","extractFieldsetFieldsValues","formValues","nestedAcc","subField","fieldTypesTransformations","countryNames","countryName","country","selectedCountries","option","selectedCountry","getCountryValue","opt","castValue","parseFormValuesToAPI","acc","fieldset","nestedFormValues","transformedFields","parsedFieldValues","fieldValues","extraField","formValue","fieldTransformValueToAPI","isFieldVisible","applyFieldDynamicProperties","excludeValuesInvisible","keepTruthyInvisibleValues","parentFieldKeyPath","valuesAsked","fieldKeyPath","valueOfField","get","parseSubmitValues","config","visibleFormValues","convertedFormValues","formValuesWithTrimmedStrings","formValuesWithUndefined","parseJSFToValidate"]}
@@ -1,4 +1,4 @@
1
- import { b as PostCreateContractAmendmentError, a as ContractAmendmentResponse } from '../../types.gen-BhkGMC9-.js';
1
+ import { b as PostCreateContractAmendmentError, a as ContractAmendmentResponse } from '../../types.gen-BgLeTAqP.js';
2
2
  import React__default from 'react';
3
3
  import { FieldValues } from 'react-hook-form';
4
4
 
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-ZCG5JUUR.js";import"../../chunk-TIXDBKBM.js";import"../../chunk-6HGUGIYJ.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as ContractAmendmentConfirmationForm};
1
+ import{a}from"../../chunk-IJPE22L7.js";import"../../chunk-N5AQSLAU.js";import"../../chunk-6HGUGIYJ.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as ContractAmendmentConfirmationForm};
2
2
  //# sourceMappingURL=ContractAmendmentConfirmationForm.js.map
@@ -5,7 +5,7 @@ import { ContractAmendmentForm } from './ContractAmendmentForm.js';
5
5
  import { ContractAmendmentSubmit } from './ContractAmendmentSubmit.js';
6
6
  import { useContractAmendment } from './hooks.js';
7
7
  import { ContractAmendmentParams } from './types.js';
8
- import '../../types.gen-BhkGMC9-.js';
8
+ import '../../types.gen-BgLeTAqP.js';
9
9
  import 'react-hook-form';
10
10
  import '../../mutations-v9H353tz.js';
11
11
  import '@remoteoss/json-schema-form';
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-2DWTIFOU.js";import"../../chunk-5DQBY2TR.js";import"../../chunk-JWMY3OVH.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-TPKAREI4.js";import"../../chunk-G2GI6FEO.js";import"../../chunk-6DMCAUPE.js";import"../../chunk-5PXYSIYN.js";import"../../chunk-37DREOGC.js";import"../../chunk-ZCG5JUUR.js";import"../../chunk-5YDR5BIG.js";import"../../chunk-LUCFM5TE.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-TIXDBKBM.js";import"../../chunk-6HGUGIYJ.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as ContractAmendmentFlow};
1
+ import{a}from"../../chunk-2EKC7DK3.js";import"../../chunk-5DQBY2TR.js";import"../../chunk-GW7GG5ZW.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-JLUDKN4H.js";import"../../chunk-RCX4JUI3.js";import"../../chunk-55VACCVZ.js";import"../../chunk-YBACB5A6.js";import"../../chunk-S56EWAS4.js";import"../../chunk-37DREOGC.js";import"../../chunk-IJPE22L7.js";import"../../chunk-6LTJBLSD.js";import"../../chunk-AYFHWLQZ.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-N5AQSLAU.js";import"../../chunk-6HGUGIYJ.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as ContractAmendmentFlow};
2
2
  //# sourceMappingURL=ContractAmendmentFlow.js.map
@@ -1,4 +1,4 @@
1
- import { P as PostAutomatableContractAmendmentError, C as ContractAmendmentAutomatableResponse } from '../../types.gen-BhkGMC9-.js';
1
+ import { P as PostAutomatableContractAmendmentError, C as ContractAmendmentAutomatableResponse } from '../../types.gen-BgLeTAqP.js';
2
2
  import React__default from 'react';
3
3
  import { FieldValues } from 'react-hook-form';
4
4
 
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-5YDR5BIG.js";import"../../chunk-LUCFM5TE.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-TIXDBKBM.js";import"../../chunk-6HGUGIYJ.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as ContractAmendmentForm};
1
+ import{a}from"../../chunk-6LTJBLSD.js";import"../../chunk-AYFHWLQZ.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-N5AQSLAU.js";import"../../chunk-6HGUGIYJ.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as ContractAmendmentForm};
2
2
  //# sourceMappingURL=ContractAmendmentForm.js.map
@@ -1,5 +1,5 @@
1
1
  import { S as SuccessResponse, E as ErrorResponse } from '../../mutations-v9H353tz.js';
2
- import { C as ContractAmendmentAutomatableResponse, P as PostAutomatableContractAmendmentError, a as ContractAmendmentResponse, b as PostCreateContractAmendmentError } from '../../types.gen-BhkGMC9-.js';
2
+ import { C as ContractAmendmentAutomatableResponse, P as PostAutomatableContractAmendmentError, a as ContractAmendmentResponse, b as PostCreateContractAmendmentError } from '../../types.gen-BgLeTAqP.js';
3
3
  import * as _remoteoss_json_schema_form from '@remoteoss/json-schema-form';
4
4
  import * as React from 'react';
5
5
  import * as react_hook_form from 'react-hook-form';
@@ -1,5 +1,5 @@
1
1
  import { S as SuccessResponse, E as ErrorResponse } from '../../mutations-v9H353tz.js';
2
- import { C as ContractAmendmentAutomatableResponse, P as PostAutomatableContractAmendmentError, a as ContractAmendmentResponse, b as PostCreateContractAmendmentError } from '../../types.gen-BhkGMC9-.js';
2
+ import { C as ContractAmendmentAutomatableResponse, P as PostAutomatableContractAmendmentError, a as ContractAmendmentResponse, b as PostCreateContractAmendmentError } from '../../types.gen-BgLeTAqP.js';
3
3
  import * as React from 'react';
4
4
  import * as _remoteoss_json_schema_form from '@remoteoss/json-schema-form';
5
5
  import { Step } from '../useStepState.js';
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-JWMY3OVH.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-TPKAREI4.js";import"../../chunk-G2GI6FEO.js";import"../../chunk-6DMCAUPE.js";import"../../chunk-5PXYSIYN.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-AYDF3IFZ.js";export{a as useContractAmendment};
1
+ import{a}from"../../chunk-GW7GG5ZW.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-JLUDKN4H.js";import"../../chunk-RCX4JUI3.js";import"../../chunk-55VACCVZ.js";import"../../chunk-YBACB5A6.js";import"../../chunk-S56EWAS4.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-AYDF3IFZ.js";export{a as useContractAmendment};
2
2
  //# sourceMappingURL=hooks.js.map
@@ -3,7 +3,7 @@ export { ContractAmendmentFlow, RenderProps } from './ContractAmendmentFlow.js';
3
3
  export { ContractAmendmentForm } from './ContractAmendmentForm.js';
4
4
  export { ContractAmendmentSubmit } from './ContractAmendmentSubmit.js';
5
5
  export { useContractAmendment } from './hooks.js';
6
- import '../../types.gen-BhkGMC9-.js';
6
+ import '../../types.gen-BgLeTAqP.js';
7
7
  import 'react';
8
8
  import 'react-hook-form';
9
9
  import './ContractAmendmentBack.js';
@@ -1,2 +1,2 @@
1
- import"../../chunk-A7ZJQCNU.js";import{a as e}from"../../chunk-2DWTIFOU.js";import{a as c}from"../../chunk-5DQBY2TR.js";import{a as d}from"../../chunk-JWMY3OVH.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-TPKAREI4.js";import"../../chunk-G2GI6FEO.js";import"../../chunk-6DMCAUPE.js";import"../../chunk-5PXYSIYN.js";import"../../chunk-37DREOGC.js";import{a}from"../../chunk-ZCG5JUUR.js";import{a as b}from"../../chunk-5YDR5BIG.js";import"../../chunk-LUCFM5TE.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-TIXDBKBM.js";import"../../chunk-6HGUGIYJ.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as ContractAmendmentConfirmationForm,e as ContractAmendmentFlow,b as ContractAmendmentForm,c as ContractAmendmentSubmit,d as useContractAmendment};
1
+ import"../../chunk-A7ZJQCNU.js";import{a as e}from"../../chunk-2EKC7DK3.js";import{a as c}from"../../chunk-5DQBY2TR.js";import{a as d}from"../../chunk-GW7GG5ZW.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-JLUDKN4H.js";import"../../chunk-RCX4JUI3.js";import"../../chunk-55VACCVZ.js";import"../../chunk-YBACB5A6.js";import"../../chunk-S56EWAS4.js";import"../../chunk-37DREOGC.js";import{a}from"../../chunk-IJPE22L7.js";import{a as b}from"../../chunk-6LTJBLSD.js";import"../../chunk-AYFHWLQZ.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-N5AQSLAU.js";import"../../chunk-6HGUGIYJ.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as ContractAmendmentConfirmationForm,e as ContractAmendmentFlow,b as ContractAmendmentForm,c as ContractAmendmentSubmit,d as useContractAmendment};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import { E as EmploymentShowResponse } from '../../types.gen-BhkGMC9-.js';
1
+ import { E as EmploymentShowResponse } from '../../types.gen-BgLeTAqP.js';
2
2
  import { Fields } from '@remoteoss/json-schema-form';
3
3
  import { Step } from '../useStepState.js';
4
4
  import 'react';
@@ -1,2 +1,2 @@
1
- import{a,b}from"../../chunk-TPKAREI4.js";import"../../chunk-6DMCAUPE.js";import"../../chunk-AYDF3IFZ.js";export{a as STEPS,b as buildInitialValues};
1
+ import{a,b}from"../../chunk-RCX4JUI3.js";import"../../chunk-YBACB5A6.js";import"../../chunk-AYDF3IFZ.js";export{a as STEPS,b as buildInitialValues};
2
2
  //# sourceMappingURL=utils.js.map
@@ -3,7 +3,7 @@ import { CostCalculatorEstimationOptions, JSFModify } from './types.js';
3
3
  import React__default from 'react';
4
4
  import 'yup';
5
5
  import '@tanstack/react-query';
6
- import '../../types.gen-BhkGMC9-.js';
6
+ import '../../types.gen-BgLeTAqP.js';
7
7
  import '../types.js';
8
8
  import '@remoteoss/json-schema-form';
9
9
 
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-QWZVBZED.js";import"../../chunk-OLJ2S6A6.js";import"../../chunk-WTGUGPHV.js";import"../../chunk-UPRUP24B.js";import"../../chunk-G2GI6FEO.js";import"../../chunk-6DMCAUPE.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-AYDF3IFZ.js";export{a as CostCalculatorFlow};
1
+ import{a}from"../../chunk-F5QJZKDL.js";import"../../chunk-OLJ2S6A6.js";import"../../chunk-NBD4VOG3.js";import"../../chunk-UPRUP24B.js";import"../../chunk-55VACCVZ.js";import"../../chunk-YBACB5A6.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-AYDF3IFZ.js";export{a as CostCalculatorFlow};
2
2
  //# sourceMappingURL=CostCalculatorFlow.js.map
@@ -1,4 +1,4 @@
1
- import { c as CostCalculatorEstimateResponse } from '../../types.gen-BhkGMC9-.js';
1
+ import { c as CostCalculatorEstimateResponse } from '../../types.gen-BgLeTAqP.js';
2
2
  import { EstimationError } from './hooks.js';
3
3
  import { CostCalculatorEstimationFormValues } from './types.js';
4
4
  import React__default from 'react';
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-ROPNMSSM.js";import"../../chunk-OLJ2S6A6.js";import"../../chunk-LUCFM5TE.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-TIXDBKBM.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as CostCalculatorForm};
1
+ import{a}from"../../chunk-XULIEA44.js";import"../../chunk-OLJ2S6A6.js";import"../../chunk-AYFHWLQZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-N5AQSLAU.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{a as CostCalculatorForm};
2
2
  //# sourceMappingURL=CostCalculatorForm.js.map
@@ -1,5 +1,5 @@
1
1
  import React__default from 'react';
2
- import { c as CostCalculatorEstimateResponse } from '../../../types.gen-BhkGMC9-.js';
2
+ import { c as CostCalculatorEstimateResponse } from '../../../types.gen-BgLeTAqP.js';
3
3
 
4
4
  interface CostCalculatorResultProps {
5
5
  employmentData: CostCalculatorEstimateResponse['data'];
@@ -1,2 +1,2 @@
1
- import{a}from"../../../chunk-5O2L2L25.js";import"../../../chunk-J2RINDSC.js";import"../../../chunk-4F7PYKUZ.js";import"../../../chunk-AD7ZWPEI.js";import"../../../chunk-YVC4OEFJ.js";import"../../../chunk-FCRDQVTB.js";import"../../../chunk-XEQTLVMV.js";import"../../../chunk-DOA6BAUQ.js";import"../../../chunk-FI76EKUS.js";import"../../../chunk-SJ56GVNV.js";import"../../../chunk-AYDF3IFZ.js";export{a as CostCalculatorResults};
1
+ import{a}from"../../../chunk-YAHWFLDH.js";import"../../../chunk-XEQTLVMV.js";import"../../../chunk-DOA6BAUQ.js";import"../../../chunk-J2RINDSC.js";import"../../../chunk-4F7PYKUZ.js";import"../../../chunk-AD7ZWPEI.js";import"../../../chunk-YVC4OEFJ.js";import"../../../chunk-FCRDQVTB.js";import"../../../chunk-FI76EKUS.js";import"../../../chunk-SJ56GVNV.js";import"../../../chunk-AYDF3IFZ.js";export{a as CostCalculatorResults};
2
2
  //# sourceMappingURL=CostCalculatorResults.js.map
@@ -2,7 +2,7 @@ import { Result } from '../types.js';
2
2
  import { useCostCalculator, EstimationError } from './hooks.js';
3
3
  import { CostCalculatorEstimationFormValues } from './types.js';
4
4
  import * as React from 'react';
5
- import { c as CostCalculatorEstimateResponse } from '../../types.gen-BhkGMC9-.js';
5
+ import { c as CostCalculatorEstimateResponse } from '../../types.gen-BgLeTAqP.js';
6
6
  import { $TSFixMe } from '@remoteoss/json-schema-form';
7
7
  import * as yup from 'yup';
8
8
  import { UseFormReturn } from 'react-hook-form';
@@ -1,7 +1,7 @@
1
1
  import * as yup from 'yup';
2
2
  import { ValidationError } from 'yup';
3
3
  import * as _tanstack_react_query from '@tanstack/react-query';
4
- import { c as CostCalculatorEstimateResponse, d as PostCreateEstimationError, e as CostCalculatorEstimatePdfResponse, f as PostCreateEstimationPdfError, g as CostCalculatorEstimateParams } from '../../types.gen-BhkGMC9-.js';
4
+ import { c as CostCalculatorEstimateResponse, d as PostCreateEstimationError, e as CostCalculatorEstimatePdfResponse, f as PostCreateEstimationPdfError, g as CostCalculatorEstimateParams } from '../../types.gen-BgLeTAqP.js';
5
5
  import { CostCalculatorEstimationOptions, JSFModify, CostCalculatorEstimationFormValues } from './types.js';
6
6
  import { Result } from '../types.js';
7
7
  import '@remoteoss/json-schema-form';
@@ -1,2 +1,2 @@
1
- import{c as a,d as b,e as c}from"../../chunk-WTGUGPHV.js";import"../../chunk-UPRUP24B.js";import"../../chunk-G2GI6FEO.js";import"../../chunk-6DMCAUPE.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-AYDF3IFZ.js";export{b as defaultEstimationOptions,c as useCostCalculator,a as useCostCalculatorEstimationPdf};
1
+ import{c as a,d as b,e as c}from"../../chunk-NBD4VOG3.js";import"../../chunk-UPRUP24B.js";import"../../chunk-55VACCVZ.js";import"../../chunk-YBACB5A6.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-AYDF3IFZ.js";export{b as defaultEstimationOptions,c as useCostCalculator,a as useCostCalculatorEstimationPdf};
2
2
  //# sourceMappingURL=hooks.js.map
@@ -8,7 +8,7 @@ export { disclaimerData } from './disclaimerUtils.js';
8
8
  export { CostCalculatorResults } from './Results/CostCalculatorResults.js';
9
9
  export { buildPayload as buildCostCalculatorEstimationPayload } from './utils.js';
10
10
  import './types.js';
11
- import '../../types.gen-BhkGMC9-.js';
11
+ import '../../types.gen-BgLeTAqP.js';
12
12
  import '@remoteoss/json-schema-form';
13
13
  import 'react';
14
14
  import 'yup';
@@ -1,2 +1,2 @@
1
- import"../../chunk-FGBEOUQK.js";import{a as j}from"../../chunk-5O2L2L25.js";import"../../chunk-J2RINDSC.js";import"../../chunk-4F7PYKUZ.js";import"../../chunk-AD7ZWPEI.js";import"../../chunk-YVC4OEFJ.js";import"../../chunk-FCRDQVTB.js";import"../../chunk-XEQTLVMV.js";import"../../chunk-DOA6BAUQ.js";import{a as e}from"../../chunk-ROPNMSSM.js";import{a as g}from"../../chunk-OCNLZSS7.js";import{a as f}from"../../chunk-NZFES56Y.js";import{a as i}from"../../chunk-IJWDAD54.js";import{a as h}from"../../chunk-DYB3RWP7.js";import{a as d}from"../../chunk-QWZVBZED.js";import"../../chunk-OLJ2S6A6.js";import{b as a,c as b,e as c}from"../../chunk-WTGUGPHV.js";import"../../chunk-UPRUP24B.js";import"../../chunk-G2GI6FEO.js";import"../../chunk-6DMCAUPE.js";import"../../chunk-LUCFM5TE.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-TIXDBKBM.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{i as CostCalculatorDisclaimer,d as CostCalculatorFlow,e as CostCalculatorForm,g as CostCalculatorResetButton,j as CostCalculatorResults,f as CostCalculatorSubmitButton,a as buildCostCalculatorEstimationPayload,h as disclaimerData,c as useCostCalculator,b as useCostCalculatorEstimationPdf};
1
+ import"../../chunk-FGBEOUQK.js";import{a as j}from"../../chunk-YAHWFLDH.js";import"../../chunk-XEQTLVMV.js";import"../../chunk-DOA6BAUQ.js";import"../../chunk-J2RINDSC.js";import"../../chunk-4F7PYKUZ.js";import"../../chunk-AD7ZWPEI.js";import"../../chunk-YVC4OEFJ.js";import"../../chunk-FCRDQVTB.js";import{a as e}from"../../chunk-XULIEA44.js";import{a as g}from"../../chunk-OCNLZSS7.js";import{a as f}from"../../chunk-NZFES56Y.js";import{a as i}from"../../chunk-IJWDAD54.js";import{a as h}from"../../chunk-DYB3RWP7.js";import{a as d}from"../../chunk-F5QJZKDL.js";import"../../chunk-OLJ2S6A6.js";import{b as a,c as b,e as c}from"../../chunk-NBD4VOG3.js";import"../../chunk-UPRUP24B.js";import"../../chunk-55VACCVZ.js";import"../../chunk-YBACB5A6.js";import"../../chunk-AYFHWLQZ.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-FI76EKUS.js";import"../../chunk-N5AQSLAU.js";import"../../chunk-SJ56GVNV.js";import"../../chunk-AYDF3IFZ.js";export{i as CostCalculatorDisclaimer,d as CostCalculatorFlow,e as CostCalculatorForm,g as CostCalculatorResetButton,j as CostCalculatorResults,f as CostCalculatorSubmitButton,a as buildCostCalculatorEstimationPayload,h as disclaimerData,c as useCostCalculator,b as useCostCalculatorEstimationPdf};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import { i as EmploymentTermType } from '../../types.gen-BhkGMC9-.js';
1
+ import { i as EmploymentTermType } from '../../types.gen-BgLeTAqP.js';
2
2
  import { modify } from '@remoteoss/json-schema-form';
3
3
 
4
4
  type CostCalculatorEstimationFormValues = {