@remoteoss/remote-flows 0.16.0 → 0.17.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 (81) hide show
  1. package/dist/{chunk-JJHGVDPO.js → chunk-3JTDGPXD.js} +2 -2
  2. package/dist/{chunk-LK4XMOCE.js → chunk-4W2RKQYM.js} +1 -1
  3. package/dist/chunk-4W2RKQYM.js.map +1 -0
  4. package/dist/chunk-4WCT2ZCS.js +2 -0
  5. package/dist/chunk-4WCT2ZCS.js.map +1 -0
  6. package/dist/{chunk-ZCYSBG7R.js → chunk-4YXQJD3M.js} +2 -2
  7. package/dist/{chunk-HBQDXOAG.js → chunk-4ZOKJJZC.js} +2 -2
  8. package/dist/{chunk-QURYMQUD.js → chunk-5GYCZAL7.js} +2 -2
  9. package/dist/chunk-6ZPISRAG.js +2 -0
  10. package/dist/chunk-6ZPISRAG.js.map +1 -0
  11. package/dist/{chunk-HAL2L237.js → chunk-AUZQY3AO.js} +2 -2
  12. package/dist/{chunk-N7QHEESE.js → chunk-BPK3J436.js} +2 -2
  13. package/dist/{chunk-KOPJY6WW.js → chunk-CNOIGOQQ.js} +2 -2
  14. package/dist/{chunk-F3BSJIHU.js → chunk-CWTERQ45.js} +2 -2
  15. package/dist/{chunk-GNXVMZY7.js → chunk-HWNHP6LW.js} +2 -2
  16. package/dist/{chunk-6YN2XQWR.js → chunk-I52TUBVO.js} +2 -2
  17. package/dist/{chunk-MYB6Y5FC.js → chunk-LWAS3Y4S.js} +2 -2
  18. package/dist/chunk-N7DP4HY4.js +2 -0
  19. package/dist/chunk-N7DP4HY4.js.map +1 -0
  20. package/dist/{chunk-XZRGLKXU.js → chunk-O4OZANFQ.js} +2 -2
  21. package/dist/chunk-O6SRXXVZ.js +2 -0
  22. package/dist/chunk-O6SRXXVZ.js.map +1 -0
  23. package/dist/{chunk-JI5BE2MZ.js → chunk-R6JC4SUO.js} +2 -2
  24. package/dist/{chunk-776QJKX5.js → chunk-WQIPP2C3.js} +2 -2
  25. package/dist/{chunk-ZZOY6KD4.js → chunk-Z7CHDOVN.js} +2 -2
  26. package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
  27. package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
  28. package/dist/flows/ContractAmendment/index.js +1 -1
  29. package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +4 -0
  30. package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
  31. package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
  32. package/dist/flows/CostCalculator/EstimationResults/EstimationResults.js +1 -1
  33. package/dist/flows/CostCalculator/hooks.js +1 -1
  34. package/dist/flows/CostCalculator/index.js +1 -1
  35. package/dist/flows/CostCalculator/jsonSchema.d.ts +17 -0
  36. package/dist/flows/CostCalculator/jsonSchema.js +1 -1
  37. package/dist/flows/CostCalculator/types.d.ts +7 -1
  38. package/dist/flows/CostCalculator/utils.js +1 -1
  39. package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
  40. package/dist/flows/Onboarding/components/BasicInformationStep.js +1 -1
  41. package/dist/flows/Onboarding/components/BenefitsStep.js +1 -1
  42. package/dist/flows/Onboarding/components/ContractDetailsStep.js +1 -1
  43. package/dist/flows/Onboarding/components/OnboardingForm.js +1 -1
  44. package/dist/flows/Onboarding/components/SelectCountryStep.js +1 -1
  45. package/dist/flows/Onboarding/context.d.ts +2 -2
  46. package/dist/flows/Onboarding/hooks.d.ts +2 -2
  47. package/dist/flows/Onboarding/index.js +1 -1
  48. package/dist/flows/Termination/AdditionalDetailsForm.js +1 -1
  49. package/dist/flows/Termination/EmployeeComunicationForm.js +1 -1
  50. package/dist/flows/Termination/PaidTimeOffForm.js +1 -1
  51. package/dist/flows/Termination/TerminationDetailsForm.js +1 -1
  52. package/dist/flows/Termination/TerminationFlow.js +1 -1
  53. package/dist/flows/Termination/TerminationForm.js +1 -1
  54. package/dist/flows/Termination/index.js +1 -1
  55. package/dist/index.js +1 -1
  56. package/dist/internals.d.ts +1 -1
  57. package/package.json +2 -2
  58. package/dist/chunk-34JNRT23.js +0 -2
  59. package/dist/chunk-34JNRT23.js.map +0 -1
  60. package/dist/chunk-HVTGLVLT.js +0 -2
  61. package/dist/chunk-HVTGLVLT.js.map +0 -1
  62. package/dist/chunk-IEYBG2G5.js +0 -2
  63. package/dist/chunk-IEYBG2G5.js.map +0 -1
  64. package/dist/chunk-IHPLMALI.js +0 -2
  65. package/dist/chunk-IHPLMALI.js.map +0 -1
  66. package/dist/chunk-LK4XMOCE.js.map +0 -1
  67. /package/dist/{chunk-JJHGVDPO.js.map → chunk-3JTDGPXD.js.map} +0 -0
  68. /package/dist/{chunk-ZCYSBG7R.js.map → chunk-4YXQJD3M.js.map} +0 -0
  69. /package/dist/{chunk-HBQDXOAG.js.map → chunk-4ZOKJJZC.js.map} +0 -0
  70. /package/dist/{chunk-QURYMQUD.js.map → chunk-5GYCZAL7.js.map} +0 -0
  71. /package/dist/{chunk-HAL2L237.js.map → chunk-AUZQY3AO.js.map} +0 -0
  72. /package/dist/{chunk-N7QHEESE.js.map → chunk-BPK3J436.js.map} +0 -0
  73. /package/dist/{chunk-KOPJY6WW.js.map → chunk-CNOIGOQQ.js.map} +0 -0
  74. /package/dist/{chunk-F3BSJIHU.js.map → chunk-CWTERQ45.js.map} +0 -0
  75. /package/dist/{chunk-GNXVMZY7.js.map → chunk-HWNHP6LW.js.map} +0 -0
  76. /package/dist/{chunk-6YN2XQWR.js.map → chunk-I52TUBVO.js.map} +0 -0
  77. /package/dist/{chunk-MYB6Y5FC.js.map → chunk-LWAS3Y4S.js.map} +0 -0
  78. /package/dist/{chunk-XZRGLKXU.js.map → chunk-O4OZANFQ.js.map} +0 -0
  79. /package/dist/{chunk-JI5BE2MZ.js.map → chunk-R6JC4SUO.js.map} +0 -0
  80. /package/dist/{chunk-776QJKX5.js.map → chunk-WQIPP2C3.js.map} +0 -0
  81. /package/dist/{chunk-ZZOY6KD4.js.map → chunk-Z7CHDOVN.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/shared/actions-dropdown/ActionsDropdown.tsx","../src/flows/CostCalculator/EstimationResults/EstimationResults.tsx"],"sourcesContent":["import { Button } from '@/src/components/ui/button';\nimport { cn } from '@/src/lib/utils';\nimport { MoreHorizontal } from 'lucide-react';\nimport { useState, type ReactNode } from 'react';\n\nexport interface DropdownAction {\n label: string;\n icon?: ReactNode;\n onClick: () => void;\n separator?: boolean;\n disabled?: boolean;\n}\n\ninterface ActionsDropdownProps {\n actions?: DropdownAction[];\n label?: string;\n className?: string;\n 'data-testid'?: string;\n}\n\nexport function ActionsDropdown({\n actions = [],\n className,\n label,\n 'data-testid': dataSelector,\n}: ActionsDropdownProps) {\n const [isOpen, setIsOpen] = useState(false);\n\n return (\n <div className={cn('relative', className)}>\n <Button\n data-testid={dataSelector}\n variant='ghost'\n aria-label={label}\n className='h-8 w-8 p-0'\n onClick={() => setIsOpen(!isOpen)}\n >\n <MoreHorizontal className='h-4 w-4' />\n </Button>\n\n {isOpen && (\n <>\n <div\n className='fixed inset-0 z-40'\n onClick={() => setIsOpen(false)}\n />\n <div className='absolute right-0 top-1/2 mt-1 bg-white border border-gray-200 rounded-md shadow-lg z-50 min-w-[120px]'>\n {actions.map((action, index) => (\n <button\n key={index}\n data-testid={`${dataSelector}-${action.label.toLowerCase().replace(' ', '-')}`}\n className={cn(\n 'w-full text-left px-2 py-1.5 text-sm hover:bg-gray-100',\n action.disabled && 'opacity-50 cursor-not-allowed',\n )}\n onClick={() => {\n action.onClick();\n setIsOpen(false);\n }}\n disabled={action.disabled}\n >\n {action.label}\n </button>\n ))}\n </div>\n </>\n )}\n </div>\n );\n}\n","import { MinimalCountry, MinimalRegion } from '@/src/client';\nimport { ActionsDropdown } from '@/src/components/shared/actions-dropdown/ActionsDropdown';\nimport { Card } from '@/src/components/ui/card';\nimport { ChevronDown, Info } from 'lucide-react';\nimport Flag from 'react-flagpack';\nimport { useState } from 'react';\nimport {\n Accordion,\n AccordionContent,\n AccordionItem,\n AccordionTrigger,\n} from '@/src/components/ui/accordion';\nimport { cn, formatCurrency } from '@/src/lib/utils';\nimport { ZendeskTriggerButton } from '@/src/components/shared/zendesk-drawer/ZendeskTriggerButton';\nimport { zendeskArticles } from '@/src/components/shared/zendesk-drawer/utils';\nimport { BasicTooltip } from '@/src/components/ui/basic-tooltip';\nimport { CostCalculatorEstimation } from '@/src/flows/CostCalculator/types';\n\nconst FLAG_CODE_MAPPING: Record<string, string> = {\n GB: 'GB-UKM',\n};\n\nconst EstimationResultsHeader = ({\n title,\n country,\n region,\n annualGrossSalary,\n onDelete,\n onExportPdf,\n onEdit,\n}: {\n title: string;\n country: MinimalCountry;\n region?: MinimalRegion;\n annualGrossSalary: string;\n onDelete: () => void;\n onExportPdf: () => void;\n onEdit: () => void;\n}) => {\n const actions = [\n {\n label: 'Edit',\n onClick: onEdit,\n },\n {\n label: 'Export',\n onClick: onExportPdf,\n },\n {\n label: 'Delete',\n onClick: onDelete,\n },\n ];\n return (\n <div className='RemoteFlows__EstimationResults__Header flex justify-between'>\n <div className='flex flex-row items-center gap-6'>\n <div className='RemoteFlows__EstimationResultsHeader__FlagContainer flex h-16 w-16 items-center justify-center rounded-lg bg-[#F4F4F5]'>\n <Flag\n code={\n FLAG_CODE_MAPPING[country.alpha_2_code] || country.alpha_2_code\n }\n />\n </div>\n <div className='space-y-1'>\n <h2\n data-testid='estimation-results-header-title'\n className='RemoteFlows__EstimationResultsHeader__Title text-lg font-medium leading-none text-[#181818]'\n >\n {title}\n </h2>\n <p className='RemoteFlows__EstimationResultsHeader__Country text-xs text-[#71717A]'>\n {country.name} {region ? ` (${region.name})` : ''}\n </p>\n <p\n data-testid='estimation-results-header-annual-gross-salary'\n className='RemoteFlows__EstimationResultsHeader__AnnualGrossSalary text-xs text-[#71717A]'\n >\n <span className='text-[#181818]'>\n Employee annual gross salary:\n </span>{' '}\n {annualGrossSalary}\n </p>\n </div>\n </div>\n <ActionsDropdown\n label='Actions'\n className='RemoteFlows__EstimationResults__ActionsDropdown'\n actions={actions}\n />\n </div>\n );\n};\n\ninterface OnboardingTimelineStep {\n title: string;\n description: string;\n id: string;\n}\n\ninterface OnboardingTimelineData {\n steps: OnboardingTimelineStep[];\n helpText: string;\n zendeskArticleId?: number;\n}\n\nconst getOnboardingTimelineData = (): OnboardingTimelineData => {\n return {\n steps: [\n {\n id: 'add-employment-details',\n title: 'Add employment details',\n description: 'You add employee employments details.',\n },\n {\n id: 'invite-employee',\n title: 'Invite employee',\n description:\n 'Hire receives an email invitation from Remote to start the self-enrollment process.',\n },\n {\n id: 'verify-information',\n title: 'Verify information',\n description:\n 'Remote prepares the Employment Agreement and verifies all the information.',\n },\n {\n id: 'sign-contract',\n title: 'Sign contract',\n description:\n 'All parties sign the Employment Agreement and are ready to start. 🎉',\n },\n ],\n helpText:\n \"For customers who accept Remote's Terms of Service (ToS), the employee onboarding timeline starts once the employee has been invited to the platform and completed self enrollment.\",\n zendeskArticleId: zendeskArticles.employeeOnboardingTimeline,\n };\n};\n\nfunction OnboardingTimeline({\n minimumOnboardingDays,\n data,\n className,\n}: {\n minimumOnboardingDays: number | null;\n data: OnboardingTimelineData;\n className?: string;\n}) {\n return (\n <Accordion\n type='single'\n collapsible\n className={cn(\n 'RemoteFlows__EstimationResults__OnboardingTimeline w-full',\n className,\n )}\n >\n <AccordionItem\n value='timeline'\n className='RemoteFlows__OnboardingTimeline__AccordionItem border-border'\n >\n <AccordionTrigger className='RemoteFlows__OnboardingTimeline__AccordionTrigger hover:no-underline px-0 py-4'>\n <div className='flex items-center justify-between w-full'>\n <span className='RemoteFlows__OnboardingTimeline__Title text-base font-medium text-[#0F172A]'>\n Onboarding timeline\n </span>\n {minimumOnboardingDays != null && (\n <span className='RemoteFlows__OnboardingTimeline__Description text-base text-muted-foreground mr-4'>\n {minimumOnboardingDays} days\n </span>\n )}\n </div>\n </AccordionTrigger>\n <AccordionContent className='px-0 pb-4'>\n <ul className='RemoteFlows__OnboardingTimeline__List list-disc list-inside space-y-2'>\n {data.steps.map((step) => (\n <li key={step.id}>\n <strong className='font-medium text-[#09090B]'>\n {step.title}\n </strong>{' '}\n - {step.description}\n </li>\n ))}\n </ul>\n <p className='RemoteFlows__OnboardingTimeline__HelpText text-xs text-muted-foreground mt-4'>\n {data.helpText}\n {data.zendeskArticleId && (\n <ZendeskTriggerButton zendeskId={data.zendeskArticleId}>\n Learn more\n </ZendeskTriggerButton>\n )}\n </p>\n </AccordionContent>\n </AccordionItem>\n </Accordion>\n );\n}\n\nfunction HiringSection({\n className,\n countryBenefitsUrl,\n countryGuideUrl,\n country,\n}: {\n className?: string;\n countryBenefitsUrl: string;\n countryGuideUrl: string;\n country: MinimalCountry;\n}) {\n return (\n <Accordion\n type='single'\n collapsible\n className={cn(\n 'RemoteFlows__EstimationResults__HiringSection w-full',\n className,\n )}\n >\n <AccordionItem\n value='timeline'\n className='RemoteFlows__HiringSection__AccordionItem border-border'\n >\n <AccordionTrigger className='RemoteFlows__HiringSection__AccordionTrigger hover:no-underline px-0 py-4'>\n <div className='flex items-center justify-between w-full'>\n <span className='text-base font-medium text-[#0F172A]'>\n Hiring in {country.name}\n </span>\n </div>\n </AccordionTrigger>\n <AccordionContent>\n <div className='flex flex-col gap-1'>\n {countryGuideUrl && (\n <a\n href={countryGuideUrl}\n target='_blank'\n className='RemoteFlows__Link'\n >\n Explore our complete guide ↗\n </a>\n )}\n {countryBenefitsUrl && (\n <a\n href={countryBenefitsUrl}\n target='_blank'\n className='RemoteFlows__Link'\n >\n Explore our available benefits ↗\n </a>\n )}\n </div>\n </AccordionContent>\n </AccordionItem>\n </Accordion>\n );\n}\n\nfunction EstimationHeaders({\n isMultipleCurrency,\n className,\n}: {\n isMultipleCurrency: boolean;\n className?: string;\n}) {\n return (\n <div\n className={cn(\n 'RemoteFlows__EstimationResults__Headers grid grid-cols-3 items-center',\n className,\n )}\n >\n <span aria-hidden />\n {isMultipleCurrency ? (\n <>\n <span className='RemoteFlows__EstimationResults__Headers__Label'>\n Employee currency\n </span>\n <span className='RemoteFlows__EstimationResults__Headers__Label'>\n Employer currency\n </span>\n </>\n ) : (\n <>\n <span></span>\n <span className='RemoteFlows__EstimationResults__Headers__Label'>\n Amount\n </span>\n </>\n )}\n </div>\n );\n}\n\nfunction EstimationRow({\n label,\n amounts,\n className,\n children,\n}: {\n label: string | React.ReactNode;\n amounts: string | string[];\n className?: string;\n children?: React.ReactNode;\n}) {\n const [isOpen, setIsOpen] = useState(true);\n\n return (\n <div className={cn('RemoteFlows__EstimationResults__Row', className)}>\n <div className='grid grid-cols-3 items-center'>\n <div className='flex items-center gap-2'>\n <span\n className={cn(\n 'RemoteFlows__EstimationRow__Title min-w-[140px] font-medium text-[#09090B]',\n )}\n >\n {label}\n </span>\n <button\n onClick={() => setIsOpen(!isOpen)}\n className='RemoteFlows__EstimationRow__CollapseButton p-1 hover:bg-gray-100 rounded'\n >\n <ChevronDown\n className={`h-4 w-4 text-muted-foreground transition-transform ${\n isOpen ? 'rotate-180' : ''\n }`}\n />\n </button>\n </div>\n\n {Array.isArray(amounts) ? (\n amounts.map((amount, index) => (\n <span\n key={index}\n className={cn(\n 'RemoteFlows__EstimationRow__RegionalAmount text-right font-medium text-[#09090B]',\n )}\n >\n {amount}\n </span>\n ))\n ) : (\n <>\n <span></span>\n <span\n className={cn(\n 'RemoteFlows__EstimationRow__EmployerAmount text-right font-medium text-[#09090B]',\n )}\n >\n {amounts}\n </span>\n </>\n )}\n </div>\n\n {/* Collapsible content */}\n {isOpen && children && (\n <div className='RemoteFlows__EstimationRow__CollapsibleContent mt-4'>\n {children}\n </div>\n )}\n </div>\n );\n}\n\ninterface BreakdownItem {\n label: string;\n tooltip?: string;\n dataSelector?: string;\n regionalAmount?: string;\n employerAmount?: string;\n description?: string;\n zendeskId?: string;\n isCollapsible?: boolean;\n children?: BreakdownItem[];\n}\n\nfunction BreakdownListItem({\n item,\n isMultipleCurrency,\n level = 0,\n}: {\n item: BreakdownItem;\n isMultipleCurrency: boolean;\n level?: number;\n}) {\n const [isOpen, setIsOpen] = useState(false);\n const hasChildren = item.children && item.children.length > 0;\n const isNested = level > 0;\n const isCollapsible = item.isCollapsible || hasChildren;\n\n return (\n <li\n className={cn(\n 'RemoteFlows__BreakdownList__Item pb-3',\n isNested && 'pb-1',\n )}\n >\n <div\n className={cn(\n isMultipleCurrency\n ? 'grid grid-cols-3 items-center justify-between'\n : 'grid grid-cols-2 items-center justify-between',\n )}\n >\n <div className={cn('flex items-center gap-2', isNested && 'pl-3')}>\n {!isNested && (\n <span\n className='RemoteFlows__BreakdownList__Bullet w-1 h-1 bg-[#09090B] rounded-full flex-shrink-0'\n aria-hidden='true'\n />\n )}\n\n {isCollapsible ? (\n <button\n onClick={() => setIsOpen(!isOpen)}\n className='flex items-center gap-2 hover:bg-gray-100 rounded p-1'\n >\n <span\n className={cn(\n isNested\n ? 'RemoteFlows__BreakdownList__Text--Nested text-xs text-[#71717A]'\n : 'RemoteFlows__BreakdownList__Text--NotNested text-sm text-[#09090B]',\n )}\n >\n {item.label}\n </span>\n <ChevronDown\n className={`h-3 w-3 text-muted-foreground transition-transform ${\n isOpen ? 'rotate-180' : ''\n }`}\n />\n </button>\n ) : (\n <span\n className={cn(\n isNested\n ? 'RemoteFlows__BreakdownList__Text--Nested text-xs text-[#71717A]'\n : 'RemoteFlows__BreakdownList__Text--NotNested text-sm text-[#09090B] p-1',\n )}\n >\n {item.label}\n </span>\n )}\n\n {item.tooltip && (\n <BasicTooltip\n content={\n <>\n <span>{item.tooltip}</span>{' '}\n {item.zendeskId && (\n <ZendeskTriggerButton zendeskId={Number(item.zendeskId)}>\n Learn more\n </ZendeskTriggerButton>\n )}\n </>\n }\n >\n <button className='RemoteFlows__BreakdownList__InfoButton p-1 hover:bg-gray-100 rounded'>\n <Info\n className={cn(\n 'text-muted-foreground',\n isNested ? 'h-3 w-3' : 'h-4 w-4',\n )}\n />\n </button>\n </BasicTooltip>\n )}\n </div>\n\n {isMultipleCurrency ? (\n <>\n <span\n data-testid={\n item.dataSelector && item.dataSelector + '-employee-amount'\n }\n className={cn(\n 'RemoteFlows__BreakdownList__RegionalAmountText text-sm text-right',\n isNested\n ? 'RemoteFlows__BreakdownList__RegionalAmountText--Nested text-[#71717A]'\n : 'RemoteFlows__BreakdownList__RegionalAmountText--NotNested text-[#09090B]',\n )}\n >\n {item.regionalAmount || '—'}\n </span>\n <span\n data-testid={\n item.dataSelector && item.dataSelector + '-employer-amount'\n }\n className={cn(\n 'RemoteFlows__BreakdownList__EmployerAmountText text-sm text-right',\n isNested\n ? 'RemoteFlows__BreakdownList__EmployerAmountText--Nested text-[#71717A]'\n : 'RemoteFlows__BreakdownList__EmployerAmountText--NotNested text-[#09090B]',\n )}\n >\n {item.employerAmount || '—'}\n </span>\n </>\n ) : (\n <span\n data-testid={item.dataSelector}\n className={cn(\n 'RemoteFlows__BreakdownList__RegionalAmountText text-sm text-right',\n isNested\n ? 'RemoteFlows__BreakdownList__RegionalAmountText--Nested text-[#71717A]'\n : 'RemoteFlows__BreakdownList__RegionalAmountText--NotNested text-[#09090B]',\n )}\n >\n {item.regionalAmount || '—'}\n </span>\n )}\n </div>\n\n {hasChildren && isOpen && (\n <div className='mt-1'>\n <BreakdownList\n items={item.children!}\n isMultipleCurrency={isMultipleCurrency}\n level={level + 1}\n />\n </div>\n )}\n </li>\n );\n}\n\ninterface BreakdownListProps {\n items: BreakdownItem[];\n isMultipleCurrency: boolean;\n className?: string;\n level?: number;\n}\n\nfunction BreakdownList({\n items,\n isMultipleCurrency,\n className,\n level,\n}: BreakdownListProps) {\n return (\n <ul className={cn('RemoteFlows__BreakdownList list-none', className)}>\n {items.map((item, index) => (\n <BreakdownListItem\n key={index}\n item={item}\n isMultipleCurrency={isMultipleCurrency}\n level={level}\n />\n ))}\n </ul>\n );\n}\n\ntype EstimationResultsComponents = {\n HiringSection?: React.ComponentType<{\n country: MinimalCountry;\n countryBenefitsUrl: string;\n countryGuideUrl: string;\n }>;\n OnboardingTimeline?: React.ComponentType<{\n minimumOnboardingDays: number | null;\n data: OnboardingTimelineData;\n }>;\n Header?: React.ComponentType<{\n title: string;\n region?: MinimalRegion;\n country: MinimalCountry;\n onDelete: () => void;\n onExportPdf: () => void;\n }>;\n Footer?: React.ComponentType;\n};\n\ntype EstimationResultsProps = {\n estimation: CostCalculatorEstimation;\n title: string;\n components?: EstimationResultsComponents;\n onDelete: () => void;\n onExportPdf: () => void;\n onEdit: () => void;\n};\n\nexport const EstimationResults = ({\n estimation,\n title,\n components,\n onDelete,\n onExportPdf,\n onEdit,\n}: EstimationResultsProps) => {\n const CustomHiringSection = components?.HiringSection || HiringSection;\n const CustomOnboardingTimeline =\n components?.OnboardingTimeline || OnboardingTimeline;\n const CustomHeader = components?.Header || EstimationResultsHeader;\n const CustomFooter = components?.Footer;\n\n const onboardingTimelineData = getOnboardingTimelineData();\n\n const isMultipleCurrency =\n estimation.employer_currency_costs.currency.code !==\n estimation.regional_currency_costs.currency.code;\n\n const hasManagementFee =\n estimation.employer_currency_costs.monthly_management_fee;\n\n const hasRegion = estimation.region.code !== estimation.country.code;\n\n const formattedSalary = formatCurrency(\n estimation.regional_currency_costs.annual_gross_salary,\n estimation.regional_currency_costs.currency.symbol,\n );\n\n return (\n <Card className='RemoteFlows__EstimationResults__Card p-10'>\n <div className='RemoteFlows__Separator'>\n <CustomHeader\n title={title}\n annualGrossSalary={formattedSalary}\n region={hasRegion ? estimation.region : undefined}\n country={estimation.country}\n onDelete={onDelete}\n onExportPdf={onExportPdf}\n onEdit={onEdit}\n />\n </div>\n <div className='RemoteFlows__Separator'>\n <EstimationHeaders\n isMultipleCurrency={isMultipleCurrency}\n className='mb-3'\n />\n <EstimationRow\n label='Monthly total cost'\n amounts={\n isMultipleCurrency\n ? [\n formatCurrency(\n estimation.regional_currency_costs.monthly_total,\n estimation.regional_currency_costs.currency.symbol,\n ),\n formatCurrency(\n estimation.employer_currency_costs.monthly_total,\n estimation.employer_currency_costs.currency.symbol,\n ),\n ]\n : formatCurrency(\n estimation.regional_currency_costs.monthly_total,\n estimation.regional_currency_costs.currency.symbol,\n )\n }\n >\n <BreakdownList\n items={[\n {\n label: 'Gross monthly salary',\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs.monthly_gross_salary,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n estimation.employer_currency_costs.monthly_gross_salary,\n estimation.employer_currency_costs.currency.symbol,\n ),\n zendeskId: zendeskArticles.extraPayments.toString(),\n tooltip:\n 'This country respects extra payments on top of the gross salary.',\n },\n {\n label: 'Mandatory employer costs',\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs\n .monthly_contributions_total,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n estimation.employer_currency_costs\n .monthly_contributions_total,\n estimation.employer_currency_costs.currency.symbol,\n ),\n children:\n estimation.employer_currency_costs.monthly_contributions_breakdown?.map(\n (item, index) => {\n return {\n label: item.name,\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs\n .monthly_contributions_breakdown?.[index]?.amount,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n item.amount,\n estimation.employer_currency_costs.currency.symbol,\n ),\n zendeskId: item.zendesk_article_id || undefined,\n tooltip: item.description || undefined,\n };\n },\n ) || [],\n },\n {\n label: 'Core benefits',\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs.monthly_benefits_total,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n estimation.employer_currency_costs.monthly_benefits_total,\n estimation.employer_currency_costs.currency.symbol,\n ),\n children:\n estimation.employer_currency_costs.monthly_benefits_breakdown?.map(\n (item, index) => ({\n label: item.name,\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs\n .monthly_benefits_breakdown?.[index]?.amount,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n item.amount,\n estimation.employer_currency_costs.currency.symbol,\n ),\n zendeskId: item.zendesk_article_id || undefined,\n tooltip: item.description || undefined,\n }),\n ) || [],\n },\n ...(hasManagementFee\n ? [\n {\n label: 'Management fee',\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs\n .monthly_management_fee,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n estimation.employer_currency_costs\n .monthly_management_fee,\n estimation.employer_currency_costs.currency.symbol,\n ),\n tooltip:\n 'Discounts may be available based on your commitment and team size. Speak to your account or customer success manager to learn more.',\n },\n ]\n : []),\n ]}\n isMultipleCurrency={isMultipleCurrency}\n />\n </EstimationRow>\n </div>\n <div className='RemoteFlows__Separator'>\n <EstimationRow\n label='Annual total cost'\n amounts={\n isMultipleCurrency\n ? [\n formatCurrency(\n estimation.regional_currency_costs.annual_total,\n estimation.regional_currency_costs.currency.symbol,\n ),\n formatCurrency(\n estimation.employer_currency_costs.annual_total,\n estimation.employer_currency_costs.currency.symbol,\n ),\n ]\n : formatCurrency(\n estimation.regional_currency_costs.annual_total,\n estimation.regional_currency_costs.currency.symbol,\n )\n }\n >\n <BreakdownList\n items={[\n {\n label: 'Annual gross salary',\n dataSelector: 'annual-gross-salary',\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs.annual_gross_salary,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n estimation.employer_currency_costs.annual_gross_salary,\n estimation.employer_currency_costs.currency.symbol,\n ),\n },\n {\n label: 'Mandatory employer costs',\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs.annual_contributions_total,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n estimation.employer_currency_costs.annual_contributions_total,\n estimation.employer_currency_costs.currency.symbol,\n ),\n children:\n estimation.employer_currency_costs.annual_contributions_breakdown?.map(\n (item, index) => ({\n label: item.name,\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs\n .annual_contributions_breakdown?.[index]?.amount,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n item.amount,\n estimation.employer_currency_costs.currency.symbol,\n ),\n zendeskId: item.zendesk_article_id || undefined,\n tooltip: item.description || undefined,\n }),\n ) || [],\n },\n {\n label: 'Core benefits',\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs.annual_benefits_total,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n estimation.employer_currency_costs.annual_benefits_total,\n estimation.employer_currency_costs.currency.symbol,\n ),\n children:\n estimation.employer_currency_costs.annual_benefits_breakdown?.map(\n (item, index) => ({\n label: item.name,\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs\n .annual_benefits_breakdown?.[index]?.amount,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n item.amount,\n estimation.employer_currency_costs.currency.symbol,\n ),\n zendeskId: item.zendesk_article_id || undefined,\n tooltip: item.description || undefined,\n }),\n ) || [],\n },\n {\n label: 'Extra statutory payments',\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs\n .extra_statutory_payments_total,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n estimation.employer_currency_costs\n .extra_statutory_payments_total,\n estimation.employer_currency_costs.currency.symbol,\n ),\n children:\n estimation.employer_currency_costs.extra_statutory_payments_breakdown?.map(\n (item, index) => ({\n label: item.name,\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs\n .extra_statutory_payments_breakdown?.[index]?.amount,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n item.amount,\n estimation.employer_currency_costs.currency.symbol,\n ),\n zendeskId: item.zendesk_article_id || undefined,\n tooltip: item.description || undefined,\n }),\n ) || [],\n },\n ...(hasManagementFee\n ? [\n {\n label: 'Management fee',\n regionalAmount: formatCurrency(\n estimation.regional_currency_costs\n .annual_management_fee,\n estimation.regional_currency_costs.currency.symbol,\n ),\n employerAmount: formatCurrency(\n estimation.employer_currency_costs\n .annual_management_fee,\n estimation.employer_currency_costs.currency.symbol,\n ),\n tooltip:\n 'Discounts may be available based on your commitment and team size. Speak to your account or customer success manager to learn more.',\n },\n ]\n : []),\n ]}\n isMultipleCurrency={isMultipleCurrency}\n />\n </EstimationRow>\n </div>\n <div className='RemoteFlows__Separator'>\n <CustomOnboardingTimeline\n minimumOnboardingDays={estimation.minimum_onboarding_time}\n data={onboardingTimelineData}\n />\n </div>\n\n <CustomHiringSection\n countryBenefitsUrl={estimation.country_benefits_details_url as string}\n countryGuideUrl={estimation.country_guide_url as string}\n country={estimation.country}\n />\n\n {CustomFooter && <CustomFooter />}\n </Card>\n );\n};\n"],"mappings":"4VAEA,OAAS,kBAAAA,MAAsB,eAC/B,OAAS,YAAAC,MAAgC,QAkCjC,OAIA,YAAAC,EAJA,OAAAC,EAIA,QAAAC,MAJA,oBAjBD,SAASC,EAAgB,CAC9B,QAAAC,EAAU,CAAC,EACX,UAAAC,EACA,MAAAC,EACA,cAAeC,CACjB,EAAyB,CACvB,GAAM,CAACC,EAAQC,CAAS,EAAIC,EAAS,EAAK,EAE1C,OACER,EAAC,OAAI,UAAWS,EAAG,WAAYN,CAAS,EACtC,UAAAJ,EAACW,EAAA,CACC,cAAaL,EACb,QAAQ,QACR,aAAYD,EACZ,UAAU,cACV,QAAS,IAAMG,EAAU,CAACD,CAAM,EAEhC,SAAAP,EAACY,EAAA,CAAe,UAAU,UAAU,EACtC,EAECL,GACCN,EAAAF,EAAA,CACE,UAAAC,EAAC,OACC,UAAU,qBACV,QAAS,IAAMQ,EAAU,EAAK,EAChC,EACAR,EAAC,OAAI,UAAU,wGACZ,SAAAG,EAAQ,IAAI,CAACU,EAAQC,IACpBd,EAAC,UAEC,cAAa,GAAGM,CAAY,IAAIO,EAAO,MAAM,YAAY,EAAE,QAAQ,IAAK,GAAG,CAAC,GAC5E,UAAWH,EACT,yDACAG,EAAO,UAAY,+BACrB,EACA,QAAS,IAAM,CACbA,EAAO,QAAQ,EACfL,EAAU,EAAK,CACjB,EACA,SAAUK,EAAO,SAEhB,SAAAA,EAAO,OAZHC,CAaP,CACD,EACH,GACF,GAEJ,CAEJ,CAjDgBC,EAAAb,EAAA,mBCjBhB,OAAS,eAAAc,EAAa,QAAAC,MAAY,eAClC,OAAOC,MAAU,iBACjB,OAAS,YAAAC,MAAgB,QAoDf,OAsNF,YAAAC,EAtNE,OAAAC,EAaA,QAAAC,MAbA,oBAvCV,IAAMC,EAA4C,CAChD,GAAI,QACN,EAEMC,EAA0BC,EAAA,CAAC,CAC/B,MAAAC,EACA,QAAAC,EACA,OAAAC,EACA,kBAAAC,EACA,SAAAC,EACA,YAAAC,EACA,OAAAC,CACF,IAQM,CACJ,IAAMC,EAAU,CACd,CACE,MAAO,OACP,QAASD,CACX,EACA,CACE,MAAO,SACP,QAASD,CACX,EACA,CACE,MAAO,SACP,QAASD,CACX,CACF,EACA,OACER,EAAC,OAAI,UAAU,8DACb,UAAAA,EAAC,OAAI,UAAU,mCACb,UAAAD,EAAC,OAAI,UAAU,yHACb,SAAAA,EAACa,EAAA,CACC,KACEX,EAAkBI,EAAQ,YAAY,GAAKA,EAAQ,aAEvD,EACF,EACAL,EAAC,OAAI,UAAU,YACb,UAAAD,EAAC,MACC,cAAY,kCACZ,UAAU,8FAET,SAAAK,EACH,EACAJ,EAAC,KAAE,UAAU,uEACV,UAAAK,EAAQ,KAAK,IAAEC,EAAS,KAAKA,EAAO,IAAI,IAAM,IACjD,EACAN,EAAC,KACC,cAAY,gDACZ,UAAU,iFAEV,UAAAD,EAAC,QAAK,UAAU,iBAAiB,yCAEjC,EAAQ,IACPQ,GACH,GACF,GACF,EACAR,EAACc,EAAA,CACC,MAAM,UACN,UAAU,kDACV,QAASF,EACX,GACF,CAEJ,EArEgC,2BAmF1BG,EAA4BX,EAAA,KACzB,CACL,MAAO,CACL,CACE,GAAI,yBACJ,MAAO,yBACP,YAAa,uCACf,EACA,CACE,GAAI,kBACJ,MAAO,kBACP,YACE,qFACJ,EACA,CACE,GAAI,qBACJ,MAAO,qBACP,YACE,4EACJ,EACA,CACE,GAAI,gBACJ,MAAO,gBACP,YACE,6EACJ,CACF,EACA,SACE,sLACF,iBAAkBY,EAAgB,0BACpC,GA9BgC,6BAiClC,SAASC,EAAmB,CAC1B,sBAAAC,EACA,KAAAC,EACA,UAAAC,CACF,EAIG,CACD,OACEpB,EAACqB,EAAA,CACC,KAAK,SACL,YAAW,GACX,UAAWC,EACT,4DACAF,CACF,EAEA,SAAAnB,EAACsB,EAAA,CACC,MAAM,WACN,UAAU,+DAEV,UAAAvB,EAACwB,EAAA,CAAiB,UAAU,iFAC1B,SAAAvB,EAAC,OAAI,UAAU,2CACb,UAAAD,EAAC,QAAK,UAAU,8EAA8E,+BAE9F,EACCkB,GAAyB,MACxBjB,EAAC,QAAK,UAAU,oFACb,UAAAiB,EAAsB,SACzB,GAEJ,EACF,EACAjB,EAACwB,EAAA,CAAiB,UAAU,YAC1B,UAAAzB,EAAC,MAAG,UAAU,wEACX,SAAAmB,EAAK,MAAM,IAAKO,GACfzB,EAAC,MACC,UAAAD,EAAC,UAAO,UAAU,6BACf,SAAA0B,EAAK,MACR,EAAU,IAAI,KACXA,EAAK,cAJDA,EAAK,EAKd,CACD,EACH,EACAzB,EAAC,KAAE,UAAU,+EACV,UAAAkB,EAAK,SACLA,EAAK,kBACJnB,EAAC2B,EAAA,CAAqB,UAAWR,EAAK,iBAAkB,sBAExD,GAEJ,GACF,GACF,EACF,CAEJ,CAzDSf,EAAAa,EAAA,sBA2DT,SAASW,EAAc,CACrB,UAAAR,EACA,mBAAAS,EACA,gBAAAC,EACA,QAAAxB,CACF,EAKG,CACD,OACEN,EAACqB,EAAA,CACC,KAAK,SACL,YAAW,GACX,UAAWC,EACT,uDACAF,CACF,EAEA,SAAAnB,EAACsB,EAAA,CACC,MAAM,WACN,UAAU,0DAEV,UAAAvB,EAACwB,EAAA,CAAiB,UAAU,4EAC1B,SAAAxB,EAAC,OAAI,UAAU,2CACb,SAAAC,EAAC,QAAK,UAAU,uCAAuC,uBAC1CK,EAAQ,MACrB,EACF,EACF,EACAN,EAACyB,EAAA,CACC,SAAAxB,EAAC,OAAI,UAAU,sBACZ,UAAA6B,GACC9B,EAAC,KACC,KAAM8B,EACN,OAAO,SACP,UAAU,oBACX,6CAED,EAEDD,GACC7B,EAAC,KACC,KAAM6B,EACN,OAAO,SACP,UAAU,oBACX,iDAED,GAEJ,EACF,GACF,EACF,CAEJ,CAxDSzB,EAAAwB,EAAA,iBA0DT,SAASG,EAAkB,CACzB,mBAAAC,EACA,UAAAZ,CACF,EAGG,CACD,OACEnB,EAAC,OACC,UAAWqB,EACT,wEACAF,CACF,EAEA,UAAApB,EAAC,QAAK,cAAW,GAAC,EACjBgC,EACC/B,EAAAF,EAAA,CACE,UAAAC,EAAC,QAAK,UAAU,iDAAiD,6BAEjE,EACAA,EAAC,QAAK,UAAU,iDAAiD,6BAEjE,GACF,EAEAC,EAAAF,EAAA,CACE,UAAAC,EAAC,SAAK,EACNA,EAAC,QAAK,UAAU,iDAAiD,kBAEjE,GACF,GAEJ,CAEJ,CAlCSI,EAAA2B,EAAA,qBAoCT,SAASE,EAAc,CACrB,MAAAC,EACA,QAAAC,EACA,UAAAf,EACA,SAAAgB,CACF,EAKG,CACD,GAAM,CAACC,EAAQC,CAAS,EAAIC,EAAS,EAAI,EAEzC,OACEtC,EAAC,OAAI,UAAWqB,EAAG,sCAAuCF,CAAS,EACjE,UAAAnB,EAAC,OAAI,UAAU,gCACb,UAAAA,EAAC,OAAI,UAAU,0BACb,UAAAD,EAAC,QACC,UAAWsB,EACT,4EACF,EAEC,SAAAY,EACH,EACAlC,EAAC,UACC,QAAS,IAAMsC,EAAU,CAACD,CAAM,EAChC,UAAU,2EAEV,SAAArC,EAACwC,EAAA,CACC,UAAW,sDACTH,EAAS,aAAe,EAC1B,GACF,EACF,GACF,EAEC,MAAM,QAAQF,CAAO,EACpBA,EAAQ,IAAI,CAACM,EAAQC,IACnB1C,EAAC,QAEC,UAAWsB,EACT,kFACF,EAEC,SAAAmB,GALIC,CAMP,CACD,EAEDzC,EAAAF,EAAA,CACE,UAAAC,EAAC,SAAK,EACNA,EAAC,QACC,UAAWsB,EACT,kFACF,EAEC,SAAAa,EACH,GACF,GAEJ,EAGCE,GAAUD,GACTpC,EAAC,OAAI,UAAU,sDACZ,SAAAoC,EACH,GAEJ,CAEJ,CArEShC,EAAA6B,EAAA,iBAmFT,SAASU,EAAkB,CACzB,KAAAC,EACA,mBAAAZ,EACA,MAAAa,EAAQ,CACV,EAIG,CACD,GAAM,CAACR,EAAQC,CAAS,EAAIC,EAAS,EAAK,EACpCO,EAAcF,EAAK,UAAYA,EAAK,SAAS,OAAS,EACtDG,EAAWF,EAAQ,EACnBG,EAAgBJ,EAAK,eAAiBE,EAE5C,OACE7C,EAAC,MACC,UAAWqB,EACT,wCACAyB,GAAY,MACd,EAEA,UAAA9C,EAAC,OACC,UAAWqB,EACTU,EACI,gDACA,+CACN,EAEA,UAAA/B,EAAC,OAAI,UAAWqB,EAAG,0BAA2ByB,GAAY,MAAM,EAC7D,WAACA,GACA/C,EAAC,QACC,UAAU,qFACV,cAAY,OACd,EAGDgD,EACC/C,EAAC,UACC,QAAS,IAAMqC,EAAU,CAACD,CAAM,EAChC,UAAU,wDAEV,UAAArC,EAAC,QACC,UAAWsB,EACTyB,EACI,kEACA,oEACN,EAEC,SAAAH,EAAK,MACR,EACA5C,EAACwC,EAAA,CACC,UAAW,sDACTH,EAAS,aAAe,EAC1B,GACF,GACF,EAEArC,EAAC,QACC,UAAWsB,EACTyB,EACI,kEACA,wEACN,EAEC,SAAAH,EAAK,MACR,EAGDA,EAAK,SACJ5C,EAACiD,EAAA,CACC,QACEhD,EAAAF,EAAA,CACE,UAAAC,EAAC,QAAM,SAAA4C,EAAK,QAAQ,EAAQ,IAC3BA,EAAK,WACJ5C,EAAC2B,EAAA,CAAqB,UAAW,OAAOiB,EAAK,SAAS,EAAG,sBAEzD,GAEJ,EAGF,SAAA5C,EAAC,UAAO,UAAU,uEAChB,SAAAA,EAACkD,EAAA,CACC,UAAW5B,EACT,wBACAyB,EAAW,UAAY,SACzB,EACF,EACF,EACF,GAEJ,EAECf,EACC/B,EAAAF,EAAA,CACE,UAAAC,EAAC,QACC,cACE4C,EAAK,cAAgBA,EAAK,aAAe,mBAE3C,UAAWtB,EACT,oEACAyB,EACI,wEACA,0EACN,EAEC,SAAAH,EAAK,gBAAkB,SAC1B,EACA5C,EAAC,QACC,cACE4C,EAAK,cAAgBA,EAAK,aAAe,mBAE3C,UAAWtB,EACT,oEACAyB,EACI,wEACA,0EACN,EAEC,SAAAH,EAAK,gBAAkB,SAC1B,GACF,EAEA5C,EAAC,QACC,cAAa4C,EAAK,aAClB,UAAWtB,EACT,oEACAyB,EACI,wEACA,0EACN,EAEC,SAAAH,EAAK,gBAAkB,SAC1B,GAEJ,EAECE,GAAeT,GACdrC,EAAC,OAAI,UAAU,OACb,SAAAA,EAACmD,EAAA,CACC,MAAOP,EAAK,SACZ,mBAAoBZ,EACpB,MAAOa,EAAQ,EACjB,EACF,GAEJ,CAEJ,CApJSzC,EAAAuC,EAAA,qBA6JT,SAASQ,EAAc,CACrB,MAAAC,EACA,mBAAApB,EACA,UAAAZ,EACA,MAAAyB,CACF,EAAuB,CACrB,OACE7C,EAAC,MAAG,UAAWsB,EAAG,uCAAwCF,CAAS,EAChE,SAAAgC,EAAM,IAAI,CAACR,EAAMF,IAChB1C,EAAC2C,EAAA,CAEC,KAAMC,EACN,mBAAoBZ,EACpB,MAAOa,GAHFH,CAIP,CACD,EACH,CAEJ,CAlBStC,EAAA+C,EAAA,iBAiDF,IAAME,GAAoBjD,EAAA,CAAC,CAChC,WAAAkD,EACA,MAAAjD,EACA,WAAAkD,EACA,SAAA9C,EACA,YAAAC,EACA,OAAAC,CACF,IAA8B,CAC5B,IAAM6C,EAAsBD,GAAY,eAAiB3B,EACnD6B,EACJF,GAAY,oBAAsBtC,EAC9ByC,EAAeH,GAAY,QAAUpD,EACrCwD,EAAeJ,GAAY,OAE3BK,EAAyB7C,EAA0B,EAEnDiB,EACJsB,EAAW,wBAAwB,SAAS,OAC5CA,EAAW,wBAAwB,SAAS,KAExCO,EACJP,EAAW,wBAAwB,uBAE/BQ,EAAYR,EAAW,OAAO,OAASA,EAAW,QAAQ,KAE1DS,EAAkBC,EACtBV,EAAW,wBAAwB,oBACnCA,EAAW,wBAAwB,SAAS,MAC9C,EAEA,OACErD,EAACgE,EAAA,CAAK,UAAU,4CACd,UAAAjE,EAAC,OAAI,UAAU,yBACb,SAAAA,EAAC0D,EAAA,CACC,MAAOrD,EACP,kBAAmB0D,EACnB,OAAQD,EAAYR,EAAW,OAAS,OACxC,QAASA,EAAW,QACpB,SAAU7C,EACV,YAAaC,EACb,OAAQC,EACV,EACF,EACAV,EAAC,OAAI,UAAU,yBACb,UAAAD,EAAC+B,EAAA,CACC,mBAAoBC,EACpB,UAAU,OACZ,EACAhC,EAACiC,EAAA,CACC,MAAM,qBACN,QACED,EACI,CACEgC,EACEV,EAAW,wBAAwB,cACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACAU,EACEV,EAAW,wBAAwB,cACnCA,EAAW,wBAAwB,SAAS,MAC9C,CACF,EACAU,EACEV,EAAW,wBAAwB,cACnCA,EAAW,wBAAwB,SAAS,MAC9C,EAGN,SAAAtD,EAACmD,EAAA,CACC,MAAO,CACL,CACE,MAAO,uBACP,eAAgBa,EACdV,EAAW,wBAAwB,qBACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdV,EAAW,wBAAwB,qBACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACA,UAAWtC,EAAgB,cAAc,SAAS,EAClD,QACE,kEACJ,EACA,CACE,MAAO,2BACP,eAAgBgD,EACdV,EAAW,wBACR,4BACHA,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdV,EAAW,wBACR,4BACHA,EAAW,wBAAwB,SAAS,MAC9C,EACA,SACEA,EAAW,wBAAwB,iCAAiC,IAClE,CAACV,EAAMF,KACE,CACL,MAAOE,EAAK,KACZ,eAAgBoB,EACdV,EAAW,wBACR,kCAAkCZ,CAAK,GAAG,OAC7CY,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdpB,EAAK,OACLU,EAAW,wBAAwB,SAAS,MAC9C,EACA,UAAWV,EAAK,oBAAsB,OACtC,QAASA,EAAK,aAAe,MAC/B,EAEJ,GAAK,CAAC,CACV,EACA,CACE,MAAO,gBACP,eAAgBoB,EACdV,EAAW,wBAAwB,uBACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdV,EAAW,wBAAwB,uBACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACA,SACEA,EAAW,wBAAwB,4BAA4B,IAC7D,CAACV,EAAMF,KAAW,CAChB,MAAOE,EAAK,KACZ,eAAgBoB,EACdV,EAAW,wBACR,6BAA6BZ,CAAK,GAAG,OACxCY,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdpB,EAAK,OACLU,EAAW,wBAAwB,SAAS,MAC9C,EACA,UAAWV,EAAK,oBAAsB,OACtC,QAASA,EAAK,aAAe,MAC/B,EACF,GAAK,CAAC,CACV,EACA,GAAIiB,EACA,CACE,CACE,MAAO,iBACP,eAAgBG,EACdV,EAAW,wBACR,uBACHA,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdV,EAAW,wBACR,uBACHA,EAAW,wBAAwB,SAAS,MAC9C,EACA,QACE,qIACJ,CACF,EACA,CAAC,CACP,EACA,mBAAoBtB,EACtB,EACF,GACF,EACAhC,EAAC,OAAI,UAAU,yBACb,SAAAA,EAACiC,EAAA,CACC,MAAM,oBACN,QACED,EACI,CACEgC,EACEV,EAAW,wBAAwB,aACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACAU,EACEV,EAAW,wBAAwB,aACnCA,EAAW,wBAAwB,SAAS,MAC9C,CACF,EACAU,EACEV,EAAW,wBAAwB,aACnCA,EAAW,wBAAwB,SAAS,MAC9C,EAGN,SAAAtD,EAACmD,EAAA,CACC,MAAO,CACL,CACE,MAAO,sBACP,aAAc,sBACd,eAAgBa,EACdV,EAAW,wBAAwB,oBACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdV,EAAW,wBAAwB,oBACnCA,EAAW,wBAAwB,SAAS,MAC9C,CACF,EACA,CACE,MAAO,2BACP,eAAgBU,EACdV,EAAW,wBAAwB,2BACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdV,EAAW,wBAAwB,2BACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACA,SACEA,EAAW,wBAAwB,gCAAgC,IACjE,CAACV,EAAMF,KAAW,CAChB,MAAOE,EAAK,KACZ,eAAgBoB,EACdV,EAAW,wBACR,iCAAiCZ,CAAK,GAAG,OAC5CY,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdpB,EAAK,OACLU,EAAW,wBAAwB,SAAS,MAC9C,EACA,UAAWV,EAAK,oBAAsB,OACtC,QAASA,EAAK,aAAe,MAC/B,EACF,GAAK,CAAC,CACV,EACA,CACE,MAAO,gBACP,eAAgBoB,EACdV,EAAW,wBAAwB,sBACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdV,EAAW,wBAAwB,sBACnCA,EAAW,wBAAwB,SAAS,MAC9C,EACA,SACEA,EAAW,wBAAwB,2BAA2B,IAC5D,CAACV,EAAMF,KAAW,CAChB,MAAOE,EAAK,KACZ,eAAgBoB,EACdV,EAAW,wBACR,4BAA4BZ,CAAK,GAAG,OACvCY,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdpB,EAAK,OACLU,EAAW,wBAAwB,SAAS,MAC9C,EACA,UAAWV,EAAK,oBAAsB,OACtC,QAASA,EAAK,aAAe,MAC/B,EACF,GAAK,CAAC,CACV,EACA,CACE,MAAO,2BACP,eAAgBoB,EACdV,EAAW,wBACR,+BACHA,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdV,EAAW,wBACR,+BACHA,EAAW,wBAAwB,SAAS,MAC9C,EACA,SACEA,EAAW,wBAAwB,oCAAoC,IACrE,CAACV,EAAMF,KAAW,CAChB,MAAOE,EAAK,KACZ,eAAgBoB,EACdV,EAAW,wBACR,qCAAqCZ,CAAK,GAAG,OAChDY,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdpB,EAAK,OACLU,EAAW,wBAAwB,SAAS,MAC9C,EACA,UAAWV,EAAK,oBAAsB,OACtC,QAASA,EAAK,aAAe,MAC/B,EACF,GAAK,CAAC,CACV,EACA,GAAIiB,EACA,CACE,CACE,MAAO,iBACP,eAAgBG,EACdV,EAAW,wBACR,sBACHA,EAAW,wBAAwB,SAAS,MAC9C,EACA,eAAgBU,EACdV,EAAW,wBACR,sBACHA,EAAW,wBAAwB,SAAS,MAC9C,EACA,QACE,qIACJ,CACF,EACA,CAAC,CACP,EACA,mBAAoBtB,EACtB,EACF,EACF,EACAhC,EAAC,OAAI,UAAU,yBACb,SAAAA,EAACyD,EAAA,CACC,sBAAuBH,EAAW,wBAClC,KAAMM,EACR,EACF,EAEA5D,EAACwD,EAAA,CACC,mBAAoBF,EAAW,6BAC/B,gBAAiBA,EAAW,kBAC5B,QAASA,EAAW,QACtB,EAECK,GAAgB3D,EAAC2D,EAAA,EAAa,GACjC,CAEJ,EAzUiC","names":["MoreHorizontal","useState","Fragment","jsx","jsxs","ActionsDropdown","actions","className","label","dataSelector","isOpen","setIsOpen","useState","cn","Button","MoreHorizontal","action","index","__name","ChevronDown","Info","Flag","useState","Fragment","jsx","jsxs","FLAG_CODE_MAPPING","EstimationResultsHeader","__name","title","country","region","annualGrossSalary","onDelete","onExportPdf","onEdit","actions","Flag","ActionsDropdown","getOnboardingTimelineData","zendeskArticles","OnboardingTimeline","minimumOnboardingDays","data","className","Accordion","cn","AccordionItem","AccordionTrigger","AccordionContent","step","ZendeskTriggerButton","HiringSection","countryBenefitsUrl","countryGuideUrl","EstimationHeaders","isMultipleCurrency","EstimationRow","label","amounts","children","isOpen","setIsOpen","useState","ChevronDown","amount","index","BreakdownListItem","item","level","hasChildren","isNested","isCollapsible","BasicTooltip","Info","BreakdownList","items","EstimationResults","estimation","components","CustomHiringSection","CustomOnboardingTimeline","CustomHeader","CustomFooter","onboardingTimelineData","hasManagementFee","hasRegion","formattedSalary","formatCurrency","Card"]}
@@ -1,2 +1,2 @@
1
- import{a as m}from"./chunk-GNXVMZY7.js";import{a as s}from"./chunk-776QJKX5.js";import{a}from"./chunk-63HVO7J5.js";import{a as p}from"./chunk-O4F6PGGV.js";import{a as i}from"./chunk-7JQPHRUK.js";import{a as S}from"./chunk-Z7WBY27D.js";import{a as c}from"./chunk-5KHLOGTR.js";import{a as r}from"./chunk-ZZOY6KD4.js";import{a as f}from"./chunk-KOPJY6WW.js";import{a as e}from"./chunk-DSTM5RRQ.js";import{a as n}from"./chunk-PGWKJ6FK.js";import{a as t}from"./chunk-P37U34EQ.js";import{useId as R,useState as D}from"react";import{jsx as P}from"react/jsx-runtime";var K=t(({employmentId:d,companyId:b,countryCode:u,type:g="employee",externalId:B,skipSteps:l,initialValues:v,render:O,options:y})=>{let I=R(),o=e({companyId:b,countryCode:u,employmentId:d,type:g,options:y,skipSteps:l,externalId:B,initialValues:v}),[w,C]=D({showReserveInvoice:!1,showInviteSuccessful:!1});return P(n.Provider,{value:{formId:I,onboardingBag:o,creditScore:w,setCreditScore:C},children:O({onboardingBag:o,components:{BasicInformationStep:r,ContractDetailsStep:s,BenefitsStep:f,SubmitButton:i,SaveDraftButton:c,BackButton:a,OnboardingInvite:p,SelectCountryStep:m,ReviewStep:S}})})},"OnboardingFlow");export{K as a};
2
- //# sourceMappingURL=chunk-HAL2L237.js.map
1
+ import{a as m}from"./chunk-HWNHP6LW.js";import{a as s}from"./chunk-WQIPP2C3.js";import{a}from"./chunk-63HVO7J5.js";import{a as p}from"./chunk-O4F6PGGV.js";import{a as i}from"./chunk-7JQPHRUK.js";import{a as S}from"./chunk-Z7WBY27D.js";import{a as c}from"./chunk-5KHLOGTR.js";import{a as r}from"./chunk-Z7CHDOVN.js";import{a as f}from"./chunk-CNOIGOQQ.js";import{a as e}from"./chunk-DSTM5RRQ.js";import{a as n}from"./chunk-PGWKJ6FK.js";import{a as t}from"./chunk-P37U34EQ.js";import{useId as R,useState as D}from"react";import{jsx as P}from"react/jsx-runtime";var K=t(({employmentId:d,companyId:b,countryCode:u,type:g="employee",externalId:B,skipSteps:l,initialValues:v,render:O,options:y})=>{let I=R(),o=e({companyId:b,countryCode:u,employmentId:d,type:g,options:y,skipSteps:l,externalId:B,initialValues:v}),[w,C]=D({showReserveInvoice:!1,showInviteSuccessful:!1});return P(n.Provider,{value:{formId:I,onboardingBag:o,creditScore:w,setCreditScore:C},children:O({onboardingBag:o,components:{BasicInformationStep:r,ContractDetailsStep:s,BenefitsStep:f,SubmitButton:i,SaveDraftButton:c,BackButton:a,OnboardingInvite:p,SelectCountryStep:m,ReviewStep:S}})})},"OnboardingFlow");export{K as a};
2
+ //# sourceMappingURL=chunk-AUZQY3AO.js.map
@@ -1,2 +1,2 @@
1
- import{a as r}from"./chunk-JI5BE2MZ.js";import{b as m}from"./chunk-MRYRNB7Y.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as e}from"react/jsx-runtime";function f({onSubmit:n}){let{terminationBag:i}=m();return e(r,{onSubmit:o(async a=>{await n?.(i?.parseFormValues(a)),i?.next()},"handleSubmit")})}o(f,"PaidTimeOffForm");export{f as a};
2
- //# sourceMappingURL=chunk-N7QHEESE.js.map
1
+ import{a as r}from"./chunk-R6JC4SUO.js";import{b as m}from"./chunk-MRYRNB7Y.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as e}from"react/jsx-runtime";function f({onSubmit:n}){let{terminationBag:i}=m();return e(r,{onSubmit:o(async a=>{await n?.(i?.parseFormValues(a)),i?.next()},"handleSubmit")})}o(f,"PaidTimeOffForm");export{f as a};
2
+ //# sourceMappingURL=chunk-BPK3J436.js.map
@@ -1,2 +1,2 @@
1
- import{a as m}from"./chunk-HBQDXOAG.js";import{b as a}from"./chunk-PGWKJ6FK.js";import{b as t}from"./chunk-QW4JPW6J.js";import{d as s}from"./chunk-MXFDOIUA.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function P({components:d,onSubmit:l,onError:i,onSuccess:f}){let{onboardingBag:o}=a(),p=o.fields??[],c=s(p,o.initialValues.benefits);return E(m,{defaultValues:c,components:d,onSubmit:e(async n=>{try{await l?.(n);let r=await o.onSubmit(n);if(r?.data){await f?.(r.data),o?.next();return}if(r?.error){let u=t(r?.fieldErrors||[],o.meta?.fields?.benefits);i?.({error:r.error,rawError:r.rawError,fieldErrors:u})}}catch(r){i?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit")})}e(P,"BenefitsStep");export{P as a};
2
- //# sourceMappingURL=chunk-KOPJY6WW.js.map
1
+ import{a as m}from"./chunk-4ZOKJJZC.js";import{b as a}from"./chunk-PGWKJ6FK.js";import{b as t}from"./chunk-QW4JPW6J.js";import{d as s}from"./chunk-MXFDOIUA.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function P({components:d,onSubmit:l,onError:i,onSuccess:f}){let{onboardingBag:o}=a(),p=o.fields??[],c=s(p,o.initialValues.benefits);return E(m,{defaultValues:c,components:d,onSubmit:e(async n=>{try{await l?.(n);let r=await o.onSubmit(n);if(r?.data){await f?.(r.data),o?.next();return}if(r?.error){let u=t(r?.fieldErrors||[],o.meta?.fields?.benefits);i?.({error:r.error,rawError:r.rawError,fieldErrors:u})}}catch(r){i?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit")})}e(P,"BenefitsStep");export{P as a};
2
+ //# sourceMappingURL=chunk-CNOIGOQQ.js.map
@@ -1,2 +1,2 @@
1
- import{a as r}from"./chunk-JI5BE2MZ.js";import{b as n}from"./chunk-MRYRNB7Y.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as a}from"react/jsx-runtime";function u({onSubmit:m}){let{terminationBag:i}=n();return a(r,{onSubmit:o(async t=>{await m?.(i?.parseFormValues(t)),i?.next()},"handleSubmit")})}o(u,"TerminationDetailsForm");export{u as a};
2
- //# sourceMappingURL=chunk-F3BSJIHU.js.map
1
+ import{a as r}from"./chunk-R6JC4SUO.js";import{b as n}from"./chunk-MRYRNB7Y.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as a}from"react/jsx-runtime";function u({onSubmit:m}){let{terminationBag:i}=n();return a(r,{onSubmit:o(async t=>{await m?.(i?.parseFormValues(t)),i?.next()},"handleSubmit")})}o(u,"TerminationDetailsForm");export{u as a};
2
+ //# sourceMappingURL=chunk-CWTERQ45.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"./chunk-HBQDXOAG.js";import{b as i}from"./chunk-PGWKJ6FK.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as d}from"react/jsx-runtime";function y({onSubmit:s,onSuccess:c,onError:t}){let{onboardingBag:o}=i(),u=e(async n=>{try{await s?.({countryCode:n.country});let r=await o.onSubmit(n);if(r?.data){await c?.(r?.data),o?.next();return}r?.error&&t?.({error:r.error,rawError:r.rawError,fieldErrors:[]})}catch(r){t?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit"),l=o.stepState.values?.select_country||o.initialValues.select_country;return d(a,{defaultValues:l,onSubmit:u})}e(y,"SelectCountryStep");export{y as a};
2
- //# sourceMappingURL=chunk-GNXVMZY7.js.map
1
+ import{a}from"./chunk-4ZOKJJZC.js";import{b as i}from"./chunk-PGWKJ6FK.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as d}from"react/jsx-runtime";function y({onSubmit:s,onSuccess:c,onError:t}){let{onboardingBag:o}=i(),u=e(async n=>{try{await s?.({countryCode:n.country});let r=await o.onSubmit(n);if(r?.data){await c?.(r?.data),o?.next();return}r?.error&&t?.({error:r.error,rawError:r.rawError,fieldErrors:[]})}catch(r){t?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit"),l=o.stepState.values?.select_country||o.initialValues.select_country;return d(a,{defaultValues:l,onSubmit:u})}e(y,"SelectCountryStep");export{y as a};
2
+ //# sourceMappingURL=chunk-HWNHP6LW.js.map
@@ -1,2 +1,2 @@
1
- import{a as n}from"./chunk-JI5BE2MZ.js";import{b as m}from"./chunk-MRYRNB7Y.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as r}from"react/jsx-runtime";function p({onSubmit:e}){let{terminationBag:i}=m();return r(n,{onSubmit:o(async t=>{await e?.(i?.parseFormValues(t)),i?.next()},"handleSubmit")})}o(p,"EmployeeCommunicationForm");export{p as a};
2
- //# sourceMappingURL=chunk-6YN2XQWR.js.map
1
+ import{a as n}from"./chunk-R6JC4SUO.js";import{b as m}from"./chunk-MRYRNB7Y.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as r}from"react/jsx-runtime";function p({onSubmit:e}){let{terminationBag:i}=m();return r(n,{onSubmit:o(async t=>{await e?.(i?.parseFormValues(t)),i?.next()},"handleSubmit")})}o(p,"EmployeeCommunicationForm");export{p as a};
2
+ //# sourceMappingURL=chunk-I52TUBVO.js.map
@@ -1,2 +1,2 @@
1
- import{a as p}from"./chunk-F3BSJIHU.js";import{a as m}from"./chunk-DCRLPAJL.js";import{a as n}from"./chunk-QQ7KPOLK.js";import{a as e}from"./chunk-XCZYKOZU.js";import{a as T}from"./chunk-JJHGVDPO.js";import{a}from"./chunk-6YN2XQWR.js";import{a as f}from"./chunk-N7QHEESE.js";import{a as r}from"./chunk-XGEKV3FC.js";import{a as t}from"./chunk-MRYRNB7Y.js";import{a as i}from"./chunk-P37U34EQ.js";import{useId as c}from"react";import{jsx as u}from"react/jsx-runtime";var A=i(({employmentId:d,render:s,options:l})=>{let y=c(),o=e({employmentId:d,options:l});return u(t.Provider,{value:{formId:y,terminationBag:o},children:s({terminationBag:o,components:{SubmitButton:m,TimeOff:n,Back:r,EmployeeComunicationStep:a,TerminationDetailsStep:p,PaidTimeOffStep:f,AdditionalDetailsStep:T}})})},"TerminationFlow");export{A as a};
2
- //# sourceMappingURL=chunk-MYB6Y5FC.js.map
1
+ import{a as p}from"./chunk-CWTERQ45.js";import{a as m}from"./chunk-DCRLPAJL.js";import{a as n}from"./chunk-QQ7KPOLK.js";import{a as e}from"./chunk-XCZYKOZU.js";import{a as T}from"./chunk-3JTDGPXD.js";import{a}from"./chunk-I52TUBVO.js";import{a as f}from"./chunk-BPK3J436.js";import{a as r}from"./chunk-XGEKV3FC.js";import{a as t}from"./chunk-MRYRNB7Y.js";import{a as i}from"./chunk-P37U34EQ.js";import{useId as c}from"react";import{jsx as u}from"react/jsx-runtime";var A=i(({employmentId:d,render:s,options:l})=>{let y=c(),o=e({employmentId:d,options:l});return u(t.Provider,{value:{formId:y,terminationBag:o},children:s({terminationBag:o,components:{SubmitButton:m,TimeOff:n,Back:r,EmployeeComunicationStep:a,TerminationDetailsStep:p,PaidTimeOffStep:f,AdditionalDetailsStep:T}})})},"TerminationFlow");export{A as a};
2
+ //# sourceMappingURL=chunk-LWAS3Y4S.js.map
@@ -0,0 +1,2 @@
1
+ var e={data:{version:7,schema:{additionalProperties:!1,properties:{country:{title:"Country",description:"",type:"string",oneOf:[],"x-jsf-presentation":{inputType:"select"}},region:{title:"Region",description:"",type:"string",oneOf:[],"x-jsf-presentation":{inputType:"select"}},currency:{title:"Currency",description:"",type:"string",oneOf:[],"x-jsf-presentation":{inputType:"select"}},currency_statement:{type:"null",title:"Company statement","x-jsf-presentation":{inputType:"hidden",hidden:!0,statement:{title:"<TITLE_PLACEHOLDER>",description:"<DESCRIPTION_PLACEHOLDER>",inputType:"statement",severity:"warning"},meta:{ignoreValue:!0}}},hiring_budget:{title:"How would you like to estimate the cost of hiring?",enum:["employee_annual_salary","my_hiring_budget"],type:"string",oneOf:[{title:"With the employee's annual salary",const:"employee_annual_salary"},{title:"With my hiring budget for this role",const:"my_hiring_budget"}],"x-jsf-presentation":{inputType:"radio"}},salary:{description:"",title:"Salary",type:"integer","x-jsf-presentation":{inputType:"money"}},estimation_title:{title:"Estimation title",description:'Employee title. e.g; "Software Engineer".',type:"string","x-jsf-presentation":{inputType:"text",hidden:!0}},salary_conversion:{description:"",title:"Salary",type:"integer","x-jsf-presentation":{inputType:"money",hidden:!0}},salary_converted:{description:"Whether the salary is expressed in regional or employer currency",title:"Salary in employer currency",type:"string","x-jsf-presentation":{inputType:"hidden",hidden:!0}},management:{title:"Management fee",type:"object",properties:{management_fee:{title:"Desired monthly management fee",type:"integer","x-jsf-presentation":{inputType:"money"}}},"x-jsf-presentation":{inputType:"fieldset",hidden:!0}}},required:["country","currency","salary","salary_conversion","salary_converted"],type:"object","x-jsf-order":["country","region","currency","currency_statement","salary","estimation_title","management"]}}};export{e as a};
2
+ //# sourceMappingURL=chunk-N7DP4HY4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/CostCalculator/jsonSchema.ts"],"sourcesContent":["export const jsonSchema = {\n data: {\n version: 7,\n schema: {\n additionalProperties: false,\n properties: {\n country: {\n title: 'Country',\n description: '',\n type: 'string',\n oneOf: [],\n 'x-jsf-presentation': {\n inputType: 'select',\n },\n },\n region: {\n title: 'Region',\n description: '',\n type: 'string',\n oneOf: [],\n 'x-jsf-presentation': {\n inputType: 'select',\n },\n },\n currency: {\n title: 'Currency',\n description: '',\n type: 'string',\n oneOf: [],\n 'x-jsf-presentation': {\n inputType: 'select',\n },\n },\n currency_statement: {\n type: 'null',\n title: 'Company statement',\n 'x-jsf-presentation': {\n inputType: 'hidden',\n hidden: true,\n statement: {\n title: '<TITLE_PLACEHOLDER>',\n description: '<DESCRIPTION_PLACEHOLDER>',\n inputType: 'statement',\n severity: 'warning',\n },\n meta: {\n ignoreValue: true,\n },\n },\n },\n hiring_budget: {\n title: 'How would you like to estimate the cost of hiring?',\n enum: ['employee_annual_salary', 'my_hiring_budget'],\n type: 'string',\n oneOf: [\n {\n title: \"With the employee's annual salary\",\n const: 'employee_annual_salary',\n },\n {\n title: 'With my hiring budget for this role',\n const: 'my_hiring_budget',\n },\n ],\n 'x-jsf-presentation': {\n inputType: 'radio',\n },\n },\n salary: {\n description: '',\n title: 'Salary',\n type: 'integer',\n 'x-jsf-presentation': {\n inputType: 'money',\n },\n },\n estimation_title: {\n title: 'Estimation title',\n description: 'Employee title. e.g; \"Software Engineer\".',\n type: 'string',\n 'x-jsf-presentation': {\n inputType: 'text',\n hidden: true,\n },\n },\n salary_conversion: {\n description: '',\n title: 'Salary',\n type: 'integer',\n 'x-jsf-presentation': {\n inputType: 'money',\n hidden: true,\n },\n },\n salary_converted: {\n description:\n 'Whether the salary is expressed in regional or employer currency',\n title: 'Salary in employer currency',\n type: 'string',\n 'x-jsf-presentation': {\n inputType: 'hidden',\n hidden: true,\n },\n },\n management: {\n title: 'Management fee',\n type: 'object',\n properties: {\n management_fee: {\n title: 'Desired monthly management fee',\n type: 'integer',\n 'x-jsf-presentation': {\n inputType: 'money',\n },\n },\n },\n 'x-jsf-presentation': {\n inputType: 'fieldset',\n hidden: true,\n },\n },\n },\n required: [\n 'country',\n 'currency',\n 'salary',\n 'salary_conversion',\n 'salary_converted',\n ],\n type: 'object',\n 'x-jsf-order': [\n 'country',\n 'region',\n 'currency',\n 'currency_statement',\n 'salary',\n 'estimation_title',\n 'management',\n ],\n },\n },\n};\n"],"mappings":"AAAO,IAAMA,EAAa,CACxB,KAAM,CACJ,QAAS,EACT,OAAQ,CACN,qBAAsB,GACtB,WAAY,CACV,QAAS,CACP,MAAO,UACP,YAAa,GACb,KAAM,SACN,MAAO,CAAC,EACR,qBAAsB,CACpB,UAAW,QACb,CACF,EACA,OAAQ,CACN,MAAO,SACP,YAAa,GACb,KAAM,SACN,MAAO,CAAC,EACR,qBAAsB,CACpB,UAAW,QACb,CACF,EACA,SAAU,CACR,MAAO,WACP,YAAa,GACb,KAAM,SACN,MAAO,CAAC,EACR,qBAAsB,CACpB,UAAW,QACb,CACF,EACA,mBAAoB,CAClB,KAAM,OACN,MAAO,oBACP,qBAAsB,CACpB,UAAW,SACX,OAAQ,GACR,UAAW,CACT,MAAO,sBACP,YAAa,4BACb,UAAW,YACX,SAAU,SACZ,EACA,KAAM,CACJ,YAAa,EACf,CACF,CACF,EACA,cAAe,CACb,MAAO,qDACP,KAAM,CAAC,yBAA0B,kBAAkB,EACnD,KAAM,SACN,MAAO,CACL,CACE,MAAO,oCACP,MAAO,wBACT,EACA,CACE,MAAO,sCACP,MAAO,kBACT,CACF,EACA,qBAAsB,CACpB,UAAW,OACb,CACF,EACA,OAAQ,CACN,YAAa,GACb,MAAO,SACP,KAAM,UACN,qBAAsB,CACpB,UAAW,OACb,CACF,EACA,iBAAkB,CAChB,MAAO,mBACP,YAAa,4CACb,KAAM,SACN,qBAAsB,CACpB,UAAW,OACX,OAAQ,EACV,CACF,EACA,kBAAmB,CACjB,YAAa,GACb,MAAO,SACP,KAAM,UACN,qBAAsB,CACpB,UAAW,QACX,OAAQ,EACV,CACF,EACA,iBAAkB,CAChB,YACE,mEACF,MAAO,8BACP,KAAM,SACN,qBAAsB,CACpB,UAAW,SACX,OAAQ,EACV,CACF,EACA,WAAY,CACV,MAAO,iBACP,KAAM,SACN,WAAY,CACV,eAAgB,CACd,MAAO,iCACP,KAAM,UACN,qBAAsB,CACpB,UAAW,OACb,CACF,CACF,EACA,qBAAsB,CACpB,UAAW,WACX,OAAQ,EACV,CACF,CACF,EACA,SAAU,CACR,UACA,WACA,SACA,oBACA,kBACF,EACA,KAAM,SACN,cAAe,CACb,UACA,SACA,WACA,qBACA,SACA,mBACA,YACF,CACF,CACF,CACF","names":["jsonSchema"]}
@@ -1,2 +1,2 @@
1
- import{b as u}from"./chunk-CFIJKJXD.js";import{a as F}from"./chunk-LK4XMOCE.js";import{f as l,g as p}from"./chunk-3BREUYLG.js";import{c as f}from"./chunk-MXFDOIUA.js";import{b as _}from"./chunk-TVZAFTPT.js";import{a as r}from"./chunk-P37U34EQ.js";import{useEffect as R}from"react";import{jsx as a}from"react/jsx-runtime";var w=["effective_date","reason_for_change","reason_for_change_description","additional_comments","additional_comments_toggle"];function x({onSubmit:b,onError:m,onSuccess:A}){let{formId:C,contractAmendment:{checkFieldUpdates:h,fields:s,onSubmit:S,stepState:g,initialValues:i,handleValidation:y}}=_(),V=u(y),e=l({resolver:V,defaultValues:g.values?.form||i,shouldUnregister:!0,mode:"onBlur"});R(()=>{let t=e?.watch(o=>{(Object.keys(e.formState.dirtyFields).length>0||e.formState.isDirty)&&h(o)});return()=>t?.unsubscribe()},[]);let v=r(async t=>{let o=!1;for(let[c,P]of Object.entries(t))if(!w.includes(c)&&i[c]!==P){o=!0;break}if(!o)return m?.({message:"no_changes_detected_contract_details"});let d=f(t,s,{isPartialValidation:!1});await b?.(d);let n=await S(t);n.error?m?.(n.error):await A?.(n.data)},"handleSubmit");return a(p,{...e,children:a("form",{id:C,"data-testid":"contract-amendment-form",onSubmit:e.handleSubmit(v),className:"space-y-4 RemoteFlows__ContractAmendmentForm",children:a(F,{fields:s})})})}r(x,"ContractAmendmentForm");export{x as a};
2
- //# sourceMappingURL=chunk-XZRGLKXU.js.map
1
+ import{b as u}from"./chunk-CFIJKJXD.js";import{a as F}from"./chunk-4W2RKQYM.js";import{f as l,g as p}from"./chunk-3BREUYLG.js";import{c as f}from"./chunk-MXFDOIUA.js";import{b as _}from"./chunk-TVZAFTPT.js";import{a as r}from"./chunk-P37U34EQ.js";import{useEffect as R}from"react";import{jsx as a}from"react/jsx-runtime";var w=["effective_date","reason_for_change","reason_for_change_description","additional_comments","additional_comments_toggle"];function x({onSubmit:b,onError:m,onSuccess:A}){let{formId:C,contractAmendment:{checkFieldUpdates:h,fields:s,onSubmit:S,stepState:g,initialValues:i,handleValidation:y}}=_(),V=u(y),e=l({resolver:V,defaultValues:g.values?.form||i,shouldUnregister:!0,mode:"onBlur"});R(()=>{let t=e?.watch(o=>{(Object.keys(e.formState.dirtyFields).length>0||e.formState.isDirty)&&h(o)});return()=>t?.unsubscribe()},[]);let v=r(async t=>{let o=!1;for(let[c,P]of Object.entries(t))if(!w.includes(c)&&i[c]!==P){o=!0;break}if(!o)return m?.({message:"no_changes_detected_contract_details"});let d=f(t,s,{isPartialValidation:!1});await b?.(d);let n=await S(t);n.error?m?.(n.error):await A?.(n.data)},"handleSubmit");return a(p,{...e,children:a("form",{id:C,"data-testid":"contract-amendment-form",onSubmit:e.handleSubmit(v),className:"space-y-4 RemoteFlows__ContractAmendmentForm",children:a(F,{fields:s})})})}r(x,"ContractAmendmentForm");export{x as a};
2
+ //# sourceMappingURL=chunk-O4OZANFQ.js.map
@@ -0,0 +1,2 @@
1
+ import{a as Q}from"./chunk-JUGNVM2R.js";import{a as N}from"./chunk-N7DP4HY4.js";import{a as K,b as G,c as I,e as z}from"./chunk-V2YORDAL.js";import{a as p}from"./chunk-HN5HLFTB.js";import{a as v}from"./chunk-CFIJKJXD.js";import{c as M}from"./chunk-MXFDOIUA.js";import{a as i}from"./chunk-P37U34EQ.js";import{number as Re,object as te}from"yup";import{createHeadlessForm as be,modify as Se}from"@remoteoss/json-schema-form";import{useCallback as he,useEffect as W,useMemo as Fe,useState as j}from"react";import{string as X,ValidationError as Y}from"yup";import{jsx as je}from"react/jsx-runtime";var k={title:"Estimation",includeBenefits:!1,includeCostBreakdowns:!1,includePremiumBenefits:!1,enableCurrencyConversion:!1,includeEstimationTitle:!1,includeManagementFee:!1},Ve=i(t=>{let{schema:a}=Se(N.data.schema,t?.jsfModify||{});return be(a)},"useStaticSchema");function Me(t,a){if(typeof t=="object"&&t!==null&&"title"in t){let l=t.title;if(l)return l}return a==="my_hiring_budget"?"Hiring budget":"Employee's annual salary"}i(Me,"getSalaryTitle");var $e=i(({defaultRegion:t,defaultCurrency:a,defaultSalary:l,estimationOptions:s,options:r,version:o}={estimationOptions:k})=>{let[u,S]=j(t),[R,P]=j(),[d,q]=j(),[H,ne]=j(),{data:C,isLoading:re}=K({includePremiumBenefits:s.includePremiumBenefits}),{data:f,isLoading:ae}=G(),ie=u||R?.value,{data:w,isLoading:oe}=z(ie,{includePremiumBenefits:s.includePremiumBenefits,options:r}),U=I(),_=R?.currency,y=r?.jsfModify?.fields?.salary,F=y&&typeof y=="object"&&"presentation"in y?y.presentation:void 0,L=he(()=>{let e=_&&d?_!==d:!1;return _!==d?{from:d,to:_,shouldSwapOrder:e}:{from:_,to:d,shouldSwapOrder:e}},[_,d]),J=s.showManagementFee,se=s.includeEstimationTitle,le=Fe(()=>{let{from:e,to:n,shouldSwapOrder:m}=L(),c=Me(y,H);return{fields:{salary:{...y,title:c,presentation:{salary_conversion_properties:{label:F?.salary_conversion_properties?.label,description:F?.salary_conversion_properties?.description},currencies:{from:e,to:n},Component:i(b=>je(Q,{...b,shouldSwapOrder:m,conversionType:o==="marketing"?"no_spread":"spread",defaultValue:l}),"Component")}},hiring_budget:{presentation:{hidden:o=="marketing"}},management:{...r?.jsfModify?.fields?.management,properties:{...r?.jsfModify?.fields?.management?.properties,management_fee:{...r?.jsfModify?.fields?.management?.properties?.management_fee,"x-jsf-presentation":{inputType:"money",additionalProps:{currency:d||"USD"}}}},presentation:{...typeof r?.jsfModify?.fields?.management=="object"?(r?.jsfModify?.fields?.management)["x-jsf-presentation"]:{},hidden:!J}},estimation_title:{...r?.jsfModify?.fields?.estimation_title,"x-jsf-presentation":{hidden:!se}}}}},[d,y,H,F?.salary_conversion_properties?.description,F?.salary_conversion_properties?.label,l,L,r?.jsfModify?.fields?.management,J,o]),g=Ve({jsfModify:{fields:{...r?.jsfModify?.fields,...le?.fields}}});W(()=>{if(t&&C){let e=C.find(({value:n})=>n===t);e&&P(e)}},[t,C]),W(()=>{if(a&&f){let e=f.find(({value:n})=>n===a);e&&q(e.label)}},[a,f]);async function ce(e){try{await B.validate(e,{abortEarly:!1})}catch(n){return{data:null,error:n}}return new Promise((n,m)=>{U.mutate(ee(e,s,o),{onSuccess:i(c=>{c.data?n({data:c.data,error:null}):m({data:null,error:c.error})},"onSuccess"),onError:i(c=>{m({data:null,error:c})},"onError")})})}i(ce,"onSubmit");function ue(e){let n=C?.find(({value:m})=>m===e);n&&n.childRegions.length===0&&n.hasAdditionalFields?S(n.regionSlug):S(void 0),P(n)}i(ue,"onCountryChange");function me(e){S(e)}i(me,"onRegionChange");function de(e){ne(e.target.value)}i(de,"onHiringBudgetChange");function fe(e){let n=f?.find(m=>m.value===e)?.label;q(n),r?.onCurrencyChange?.(n||"")}i(fe,"onChangeCurrency");let E=g.fields.find(e=>e.name==="region");if(E){let e=R?.childRegions.map(n=>({value:n.slug,label:n.name}))??[];E.options=e,E.isVisible=e.length>0,E.required=e.length>0,E.onChange=me,E.schema=e.length>0?X().transform(n=>typeof n=="string"?n:"").required("Region is required"):X()}if(f){let e=g.fields.find(n=>n.name==="currency");e&&(e.options=f,e.onChange=fe)}let $=g.fields.find(e=>e.name==="hiring_budget");if($&&($.onChange=de),C){let e=g.fields.find(n=>n.name==="country");e&&(e.options=C,e.onChange=ue)}let ge=i(()=>{P(void 0),S(t)},"resetForm"),D=[...g.fields.filter(e=>e.name!=="management"),...w?.fields||[],...g.fields.filter(e=>e.name==="management")],B=Z(g.fields,d||"USD",s.includeEstimationTitle);async function ye(e){let n=null;r?.onValidation?.(e);let m=M(e,D);try{await B.validate(m,{abortEarly:!1}),n={formErrors:{},yupError:new Y([],e)}}catch(h){let x=v(h);n={formErrors:Object.entries(x).reduce((O,[A,V])=>({...O,[A]:V.message}),{}),yupError:h}}let c=w?.handleValidation(m),b=[...n?.yupError.inner||[],...c?.yupError?.inner||[]],T={...n?.yupError?.value||{},...c?.yupError?.value||{}};return{formErrors:{...n?.formErrors||{},...c?.formErrors||{}},yupError:new Y(b,T)}}return i(ye,"handleValidation"),{stepState:{current:0,total:1,isLastStep:!0},fields:D,validationSchema:B,parseFormValues:i(e=>{let{country:n,region:m,currency:c,salary_converted:b,hiring_budget:T,salary_conversion:h,management:x,estimation_title:O,...A}=e,V=e.salary;b==="salary_conversion"&&(V=h);let pe=M({country:n,region:m,salary:V,salary_converted:b,salary_conversion:h,hiring_budget:T,currency:c,management:x,estimation_title:O},g.fields),Ce=M(A,w?.fields||[]),_e={currency_code:f?.find(Ee=>Ee.value===c)?.label};return{...pe,...Ce,..._e}},"parseFormValues"),handleValidation:ye,isSubmitting:U.isPending,isLoading:re&&ae&&oe,onSubmit:ce,resetForm:ge,currencies:f}},"useCostCalculator");function Z(t,a,l){let s=t.reduce((r,o)=>(o.name==="salary"||o.name==="salary_conversion"?r[o.name]=o.schema.when("salary_converted",{is:i(u=>u===o.name,"is"),then:i(u=>u.required("Required field"),"then"),otherwise:i(u=>u.optional(),"otherwise")}):o.name==="management"?r[o.name]=te({management_fee:Re().transform(u=>isNaN(u)?void 0:u).min(0,"Management fee must be greater than or equal to 0").max(a?p[a]:p.USD,()=>`Management fee cannot exceed ${(a?p[a]:p.USD)/100} ${a}`)}):o.name==="estimation_title"&&l?r[o.name]=o.schema.required("Required field"):r[o.name]=o.schema,r),{});return te(s)}i(Z,"buildValidationSchema");function Pe(t){let a="benefit-";return Object.keys(t).reduce((l,s)=>{let r=t[s];if(r==="none")return l;let u={benefit_group_slug:s.replace(a,""),benefit_tier_slug:r};return[...l,u]},[])}i(Pe,"formatBenefits");function we(t,a,l){let s=Number(t.management?.management_fee),r=t.currency_code;return{...{region_slug:t.region||t.country,employment_term:t.contract_duration_type??"fixed",title:t.estimation_title||a.title,age:t.age??void 0,...t.benefits&&{benefits:Pe(t.benefits)},...a.includeManagementFee&&s&&{discount:{quoted_amount:a.showManagementFee?s:p[r]||p.USD,text:""}}},...Be(t,l)}}i(we,"mapValueToEmployment");function Be(t,a){let l=a==="marketing"||t.salary_converted==="salary_conversion",s=a==="standard"&&t.salary_converted==="salary",r=t.hiring_budget==="my_hiring_budget";if(l){let o=t.salary_converted==="salary_conversion";return r?{annual_total_cost_in_employer_currency:t.salary}:{[o?"annual_gross_salary_in_employer_currency":"annual_gross_salary"]:t.salary}}return s?r?{annual_total_cost:t.salary}:{annual_gross_salary:t.salary}:{}}i(Be,"getSalaryFields");function ee(t,a=k,l="standard"){let s=Array.isArray(t)?t:[t];if(s.length===0)throw new Error("At least one employment value is required");return s.length>1&&new Set(s.map(o=>o.currency)).size>1&&console.warn("Multiple currencies detected in array. Using currency from first employment."),{employer_currency_slug:s[0].currency,include_benefits:a.includeBenefits,include_cost_breakdowns:a.includeCostBreakdowns,include_premium_benefits:a.includePremiumBenefits,include_management_fee:a.includeManagementFee,employments:s.map(r=>we(r,a,l))}}i(ee,"buildPayload");export{Z as a,ee as b,k as c,$e as d};
2
+ //# sourceMappingURL=chunk-O6SRXXVZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/CostCalculator/utils.ts","../src/flows/CostCalculator/hooks.tsx"],"sourcesContent":["import type {\n CostCalculatorEmploymentParam,\n CostCalculatorEstimateParams,\n} from '@/src/client';\n\nimport { $TSFixMe } from '@/src/types/remoteFlows';\nimport { AnyObjectSchema, number, object } from 'yup';\nimport { CostCalculatorVersion, defaultEstimationOptions } from './hooks';\nimport type {\n CostCalculatorEstimationOptions,\n CostCalculatorEstimationSubmitValues,\n CurrencyKey,\n} from './types';\nimport { BASE_RATES } from '@/src/flows/CostCalculator/constants';\n\n/**\n * Build the validation schema for the form.\n * @returns\n */\nexport function buildValidationSchema(\n fields: $TSFixMe[],\n employerBillingCurrency: string,\n includeEstimationTitle?: boolean,\n) {\n const fieldsSchema = fields.reduce<Record<string, AnyObjectSchema>>(\n (fieldsSchemaAcc, field) => {\n // Special handling for salary fields\n if (field.name === 'salary' || field.name === 'salary_conversion') {\n fieldsSchemaAcc[field.name] = (field.schema as AnyObjectSchema).when(\n 'salary_converted',\n {\n is: (val: string | null) => val === field.name,\n then: (schema) => schema.required('Required field'),\n otherwise: (schema) => schema.optional(),\n },\n );\n } else if (field.name === 'management') {\n fieldsSchemaAcc[field.name] = object({\n management_fee: number()\n .transform((value) => {\n return isNaN(value) ? undefined : value;\n })\n .min(0, 'Management fee must be greater than or equal to 0')\n .max(\n employerBillingCurrency\n ? BASE_RATES[employerBillingCurrency as CurrencyKey]\n : BASE_RATES.USD,\n () => {\n const maxValue = employerBillingCurrency\n ? BASE_RATES[employerBillingCurrency as CurrencyKey]\n : BASE_RATES.USD;\n const displayValue = maxValue / 100;\n return `Management fee cannot exceed ${displayValue} ${employerBillingCurrency}`;\n },\n ),\n });\n } else if (field.name === 'estimation_title' && includeEstimationTitle) {\n // Make estimation_title required when includeEstimationTitle is true\n fieldsSchemaAcc[field.name] = (\n field.schema as AnyObjectSchema\n ).required('Required field');\n } else {\n fieldsSchemaAcc[field.name] = field.schema as AnyObjectSchema;\n }\n return fieldsSchemaAcc;\n },\n {},\n );\n return object(fieldsSchema) as AnyObjectSchema;\n}\n\n/**\n * Format the benefits to the expected format by the API.\n * @param benefits\n * @returns\n */\nfunction formatBenefits(benefits: Record<string, string>) {\n const needle = 'benefit-';\n return Object.keys(benefits).reduce<\n Array<{ benefit_group_slug: string; benefit_tier_slug: string }>\n >((acc, key) => {\n const benefitTierSlug = benefits[key];\n if (benefitTierSlug === 'none') {\n return acc;\n }\n const benefitGroupSlug = key.replace(needle, '');\n const benefitEntry = {\n benefit_group_slug: benefitGroupSlug,\n benefit_tier_slug: benefitTierSlug,\n };\n return [...acc, benefitEntry];\n }, []);\n}\n\nfunction mapValueToEmployment(\n value: CostCalculatorEstimationSubmitValues,\n estimationOptions: CostCalculatorEstimationOptions,\n version: CostCalculatorVersion,\n): CostCalculatorEmploymentParam {\n const managementFee = Number(value.management?.management_fee);\n const currencyCode = value.currency_code;\n\n const base: CostCalculatorEmploymentParam = {\n region_slug: value.region || value.country,\n employment_term: value.contract_duration_type ?? 'fixed',\n title: value.estimation_title || estimationOptions.title,\n age: value.age ?? undefined,\n ...(value.benefits && { benefits: formatBenefits(value.benefits) }),\n ...(estimationOptions.includeManagementFee &&\n managementFee && {\n discount: {\n quoted_amount: estimationOptions.showManagementFee\n ? managementFee\n : BASE_RATES[currencyCode as keyof typeof BASE_RATES] ||\n BASE_RATES.USD,\n text: '',\n },\n }),\n };\n\n return {\n ...base,\n ...getSalaryFields(value, version),\n };\n}\n\nfunction getSalaryFields(\n value: CostCalculatorEstimationSubmitValues,\n version: CostCalculatorVersion,\n): Partial<CostCalculatorEmploymentParam> {\n const isMarketing =\n version === 'marketing' || value.salary_converted === 'salary_conversion';\n const isStandard =\n version === 'standard' && value.salary_converted === 'salary';\n const useHiringBudget = value.hiring_budget === 'my_hiring_budget';\n\n if (isMarketing) {\n const useEmployerCurrency = value.salary_converted === 'salary_conversion';\n return useHiringBudget\n ? {\n annual_total_cost_in_employer_currency: value.salary,\n }\n : {\n [useEmployerCurrency\n ? 'annual_gross_salary_in_employer_currency'\n : 'annual_gross_salary']: value.salary,\n };\n }\n\n if (isStandard) {\n return useHiringBudget\n ? {\n annual_total_cost: value.salary,\n }\n : {\n annual_gross_salary: value.salary,\n };\n }\n\n return {};\n}\n\n/**\n * Build the payload for the cost calculator estimation.\n * @param values\n * @param estimationOptions\n * @returns\n */\nexport function buildPayload(\n values:\n | CostCalculatorEstimationSubmitValues\n | CostCalculatorEstimationSubmitValues[],\n estimationOptions: CostCalculatorEstimationOptions = defaultEstimationOptions,\n version: CostCalculatorVersion = 'standard',\n): CostCalculatorEstimateParams {\n const employments = Array.isArray(values) ? values : [values];\n\n if (employments.length === 0) {\n throw new Error('At least one employment value is required');\n }\n\n if (employments.length > 1) {\n const currencies = new Set(employments.map((v) => v.currency));\n if (currencies.size > 1) {\n console.warn(\n 'Multiple currencies detected in array. Using currency from first employment.',\n );\n }\n }\n\n return {\n employer_currency_slug: employments[0].currency,\n include_benefits: estimationOptions.includeBenefits,\n include_cost_breakdowns: estimationOptions.includeCostBreakdowns,\n include_premium_benefits: estimationOptions.includePremiumBenefits,\n include_management_fee: estimationOptions.includeManagementFee,\n employments: employments.map((value) =>\n mapValueToEmployment(value, estimationOptions, version),\n ),\n };\n}\n","import {\n CostCalculatorEstimateResponse,\n MinimalRegion,\n PostCreateEstimationError,\n} from '@/src/client';\nimport { jsonSchema } from '@/src/flows/CostCalculator/jsonSchema';\nimport type {\n CostCalculatorEstimationFormValues,\n CostCalculatorEstimationOptions,\n CostCalculatorEstimationSubmitValues,\n EstimationError,\n UseCostCalculatorOptions,\n} from '@/src/flows/CostCalculator/types';\nimport type { JSFModify, Result } from '@/src/flows/types';\n\nimport { parseJSFToValidate } from '@/src/components/form/utils';\nimport { iterateErrors } from '@/src/components/form/yupValidationResolver';\nimport { createHeadlessForm, modify } from '@remoteoss/json-schema-form';\nimport { useCallback, useEffect, useMemo, useState } from 'react';\nimport { string, ValidationError } from 'yup';\nimport { buildPayload, buildValidationSchema } from './utils';\nimport {\n useCompanyCurrencies,\n useCostCalculatorCountries,\n useCostCalculatorEstimation,\n useRegionFields,\n} from '@/src/flows/CostCalculator/api';\nimport { $TSFixMe, JSFField } from '@/src/types/remoteFlows';\nimport { SalaryField } from '@/src/flows/CostCalculator/components/SalaryField';\n\nexport type CostCalculatorVersion = 'standard' | 'marketing';\n\ntype CostCalculatorCountry = {\n value: string;\n label: string;\n childRegions: MinimalRegion[];\n hasAdditionalFields: boolean | undefined;\n regionSlug: string;\n currency: string;\n};\n\ntype JSFValidationError = {\n formErrors: Record<\n string,\n {\n type: string;\n message: string;\n }\n >;\n yupError: ValidationError;\n};\n\nexport const defaultEstimationOptions: CostCalculatorEstimationOptions = {\n title: 'Estimation',\n includeBenefits: false,\n includeCostBreakdowns: false,\n includePremiumBenefits: false,\n enableCurrencyConversion: false,\n includeEstimationTitle: false,\n includeManagementFee: false,\n};\n\ntype UseCostCalculatorParams = {\n /**\n * The default region slug to preselect a country and a region.\n */\n defaultRegion?: string;\n /**\n * The default currency slug to preselect a currency.\n */\n defaultCurrency?: string;\n\n /**\n * The default salary to preselect a salary.\n */\n defaultSalary?: string;\n /**\n * The estimation options.\n */\n estimationOptions: CostCalculatorEstimationOptions;\n options?: UseCostCalculatorOptions;\n version?: CostCalculatorVersion;\n};\n\nconst useStaticSchema = (options?: { jsfModify?: JSFModify }) => {\n const { schema: jsonSchemaModified } = modify(\n jsonSchema.data.schema,\n options?.jsfModify || {},\n );\n\n return createHeadlessForm(jsonSchemaModified);\n};\n\ntype HiringBudget = 'my_hiring_budget' | 'employee_annual_salary';\n\nfunction getSalaryTitle(\n salaryField: unknown,\n hiringBudget?: HiringBudget,\n): string {\n if (\n typeof salaryField === 'object' &&\n salaryField !== null &&\n 'title' in salaryField\n ) {\n const title = (salaryField as { title?: string }).title;\n if (title) return title;\n }\n return hiringBudget === 'my_hiring_budget'\n ? 'Hiring budget'\n : \"Employee's annual salary\";\n}\n\n/**\n * Hook to use the cost calculator.\n */\nexport const useCostCalculator = (\n {\n defaultRegion,\n defaultCurrency,\n defaultSalary,\n estimationOptions,\n options,\n version,\n }: UseCostCalculatorParams = {\n estimationOptions: defaultEstimationOptions,\n },\n) => {\n const [selectedRegion, setSelectedRegion] = useState<string | undefined>(\n defaultRegion,\n );\n const [selectedCountry, setSelectedCountry] =\n useState<CostCalculatorCountry>();\n const [employerBillingCurrency, setEmployerBillingCurrency] = useState<\n string | undefined\n >();\n const [hiringBudget, setHiringBudget] = useState<HiringBudget>();\n const { data: countries, isLoading: isLoadingCountries } =\n useCostCalculatorCountries({\n includePremiumBenefits: estimationOptions.includePremiumBenefits,\n });\n const { data: currencies, isLoading: isLoadingCurrencies } =\n useCompanyCurrencies();\n\n const jsonSchemaRegionSlug = selectedRegion || selectedCountry?.value;\n\n const { data: jsonSchemaRegionFields, isLoading: isLoadingRegionFields } =\n useRegionFields(jsonSchemaRegionSlug, {\n includePremiumBenefits: estimationOptions.includePremiumBenefits,\n options,\n });\n const costCalculatorEstimationMutation = useCostCalculatorEstimation();\n const employeeBillingCurrency = selectedCountry?.currency;\n\n const salaryField = options?.jsfModify?.fields?.salary;\n const salaryFieldPresentation =\n salaryField &&\n typeof salaryField === 'object' &&\n 'presentation' in salaryField\n ? (\n salaryField as {\n presentation?: {\n salary_conversion_properties?: {\n label?: string;\n description?: string;\n };\n };\n }\n ).presentation\n : undefined;\n\n const getCurrencies = useCallback(() => {\n const shouldSwapOrder =\n employeeBillingCurrency && employerBillingCurrency\n ? employeeBillingCurrency !== employerBillingCurrency\n : false;\n\n if (employeeBillingCurrency !== employerBillingCurrency) {\n return {\n from: employerBillingCurrency,\n to: employeeBillingCurrency,\n shouldSwapOrder,\n };\n }\n\n return {\n from: employeeBillingCurrency,\n to: employerBillingCurrency,\n shouldSwapOrder,\n };\n }, [employeeBillingCurrency, employerBillingCurrency]);\n\n const showManagementField = estimationOptions.showManagementFee;\n const showEstimationTitleField = estimationOptions.includeEstimationTitle;\n const customFields = useMemo(() => {\n const { from, to, shouldSwapOrder } = getCurrencies();\n const salaryTitle = getSalaryTitle(salaryField, hiringBudget);\n\n return {\n fields: {\n salary: {\n ...salaryField,\n title: salaryTitle,\n presentation: {\n salary_conversion_properties: {\n label:\n salaryFieldPresentation?.salary_conversion_properties?.label,\n description:\n salaryFieldPresentation?.salary_conversion_properties\n ?.description,\n },\n currencies: { from, to },\n Component: (\n props: JSFField & { currencies: { from: string; to: string } },\n ) => {\n return (\n <SalaryField\n {...props}\n shouldSwapOrder={shouldSwapOrder}\n conversionType={\n version === 'marketing' ? 'no_spread' : 'spread'\n }\n defaultValue={defaultSalary}\n />\n );\n },\n },\n },\n hiring_budget: {\n presentation: {\n hidden: version == 'marketing',\n },\n },\n management: {\n ...options?.jsfModify?.fields?.management,\n properties: {\n ...(options?.jsfModify?.fields?.management as $TSFixMe)?.properties,\n management_fee: {\n ...(options?.jsfModify?.fields?.management as $TSFixMe)\n ?.properties?.management_fee,\n 'x-jsf-presentation': {\n inputType: 'money',\n additionalProps: {\n currency: employerBillingCurrency || 'USD',\n },\n },\n },\n },\n presentation: {\n ...(typeof options?.jsfModify?.fields?.management === 'object'\n ? (\n options?.jsfModify?.fields?.management as Record<\n string,\n $TSFixMe\n >\n )['x-jsf-presentation']\n : {}),\n hidden: !showManagementField,\n },\n },\n estimation_title: {\n ...options?.jsfModify?.fields?.estimation_title,\n 'x-jsf-presentation': {\n hidden: !showEstimationTitleField,\n },\n },\n },\n };\n }, [\n employerBillingCurrency,\n salaryField,\n hiringBudget,\n salaryFieldPresentation?.salary_conversion_properties?.description,\n salaryFieldPresentation?.salary_conversion_properties?.label,\n defaultSalary,\n getCurrencies,\n options?.jsfModify?.fields?.management,\n showManagementField,\n version,\n ]);\n\n const fieldsJSONSchema = useStaticSchema({\n jsfModify: {\n fields: {\n ...options?.jsfModify?.fields,\n ...customFields?.fields,\n },\n },\n });\n\n useEffect(() => {\n // Initialize selectedCountry from defaultRegion\n if (defaultRegion && countries) {\n const defaultCountry = countries.find(\n ({ value }) => value === defaultRegion,\n );\n if (defaultCountry) {\n setSelectedCountry(defaultCountry);\n }\n }\n }, [defaultRegion, countries]);\n\n useEffect(() => {\n // Initialize selectedCurrency from defaultCurrency\n if (defaultCurrency && currencies) {\n const defaultCurrencyObj = currencies.find(\n ({ value }) => value === defaultCurrency,\n );\n if (defaultCurrencyObj) {\n setEmployerBillingCurrency(defaultCurrencyObj.label);\n }\n }\n }, [defaultCurrency, currencies]);\n\n /**\n * Submit the estimation form with the given values.\n * @param values\n */\n async function onSubmit(\n values: CostCalculatorEstimationSubmitValues,\n ): Promise<Result<CostCalculatorEstimateResponse, EstimationError>> {\n try {\n await validationSchema.validate(values, { abortEarly: false });\n } catch (err) {\n return {\n data: null,\n error: err as ValidationError,\n };\n }\n\n return new Promise((resolve, reject) => {\n costCalculatorEstimationMutation.mutate(\n buildPayload(values, estimationOptions, version),\n {\n onSuccess: (response) => {\n if (response.data) {\n resolve({\n data: response.data,\n error: null,\n });\n } else {\n reject({\n data: null,\n error: response.error as PostCreateEstimationError,\n });\n }\n },\n onError: (error) => {\n reject({\n data: null,\n error: error as PostCreateEstimationError,\n });\n },\n },\n );\n });\n }\n\n /**\n * If the selected country has no child regions and has additional fields,\n * set the current region to the country's region slug and fetch the region fields.\n * @param country\n */\n function onCountryChange(country: string) {\n const currentCountry = countries?.find(({ value }) => value === country);\n\n if (\n currentCountry &&\n currentCountry.childRegions.length === 0 &&\n currentCountry.hasAdditionalFields\n ) {\n setSelectedRegion(currentCountry.regionSlug);\n } else {\n setSelectedRegion(undefined);\n }\n setSelectedCountry(currentCountry);\n }\n\n /**\n * Update the selected region and fetch the region fields.\n * @param region\n */\n function onRegionChange(region: string) {\n setSelectedRegion(region);\n }\n\n function onHiringBudgetChange(event: React.ChangeEvent<HTMLInputElement>) {\n setHiringBudget(event.target.value as HiringBudget);\n }\n\n function onChangeCurrency(currency: string) {\n const selectedCurrency = currencies?.find(\n (c) => c.value === currency,\n )?.label;\n setEmployerBillingCurrency(selectedCurrency);\n options?.onCurrencyChange?.(selectedCurrency || '');\n }\n\n const regionField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'region',\n );\n\n if (regionField) {\n const regions =\n selectedCountry?.childRegions.map((region) => ({\n value: region.slug,\n label: region.name,\n })) ?? [];\n regionField.options = regions;\n regionField.isVisible = regions.length > 0;\n regionField.required = regions.length > 0;\n regionField.onChange = onRegionChange;\n regionField.schema =\n regions.length > 0\n ? string()\n .transform((value) => (typeof value === 'string' ? value : ''))\n .required('Region is required')\n : string();\n }\n\n if (currencies) {\n const currencyField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'currency',\n );\n if (currencyField) {\n currencyField.options = currencies;\n currencyField.onChange = onChangeCurrency;\n }\n }\n\n const hiringBudgetField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'hiring_budget',\n );\n if (hiringBudgetField) {\n hiringBudgetField.onChange = onHiringBudgetChange;\n }\n\n if (countries) {\n const countryField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'country',\n );\n if (countryField) {\n countryField.options = countries;\n countryField.onChange = onCountryChange;\n }\n }\n\n const resetForm = () => {\n setSelectedCountry(undefined);\n setSelectedRegion(defaultRegion);\n };\n\n const allFields = [\n ...fieldsJSONSchema.fields.filter((field) => field.name !== 'management'),\n ...(jsonSchemaRegionFields?.fields || []),\n ...fieldsJSONSchema.fields.filter((field) => field.name === 'management'),\n ];\n\n const validationSchema = buildValidationSchema(\n fieldsJSONSchema.fields,\n employerBillingCurrency || 'USD',\n estimationOptions.includeEstimationTitle,\n );\n\n async function handleValidation(values: CostCalculatorEstimationFormValues) {\n let errors: JSFValidationError | null = null;\n\n options?.onValidation?.(values);\n const parsedValues = parseJSFToValidate(values, allFields);\n\n // 1. validate static fields first using Yup validate function\n try {\n await validationSchema.validate(parsedValues, {\n abortEarly: false,\n });\n errors = {\n formErrors: {},\n yupError: new ValidationError([], values),\n };\n } catch (error) {\n const iterateResult = iterateErrors(error as ValidationError);\n\n errors = {\n // convert the errors to a format that can be used in the form\n formErrors: Object.entries(iterateResult).reduce(\n (acc, [key, value]) => ({ ...acc, [key]: value.message }),\n {},\n ),\n yupError: error as ValidationError,\n };\n }\n\n // 2. validate json schema fields using the handleValidation (from json-schema-form)\n const handleValidationResult =\n jsonSchemaRegionFields?.handleValidation(parsedValues);\n\n // 3. combine the errors from both validations\n const combinedInnerErrors = [\n ...(errors?.yupError.inner || []),\n ...(handleValidationResult?.yupError?.inner || []),\n ];\n const combinedValues = {\n ...(errors?.yupError?.value || {}),\n ...(handleValidationResult?.yupError?.value || {}),\n };\n\n return {\n formErrors: {\n ...(errors?.formErrors || {}),\n ...(handleValidationResult?.formErrors || {}),\n },\n yupError: new ValidationError(combinedInnerErrors, combinedValues),\n };\n }\n\n return {\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState: {\n current: 0,\n total: 1,\n isLastStep: true,\n },\n /**\n * Array of form fields from the cost calculator schema + dynamic region fields like benefits, age, etc.\n */\n fields: allFields,\n /**\n * Validation schema for the cost calculator form\n */\n validationSchema,\n /**\n * Function to parse form values before submission\n * @param values - Form values to parse\n * @returns Parsed form values\n */\n parseFormValues: (\n values: CostCalculatorEstimationFormValues,\n ): CostCalculatorEstimationSubmitValues => {\n const {\n country,\n region,\n currency,\n salary_converted,\n hiring_budget,\n salary_conversion,\n management,\n estimation_title,\n ...rest\n } = values;\n\n // If the salary has been converted, we take the one the user has inputted\n let salary = values.salary;\n if (salary_converted === 'salary_conversion') {\n salary = salary_conversion;\n }\n\n const jsonSchemaStaticFieldValues = {\n country,\n region,\n salary,\n salary_converted,\n salary_conversion,\n hiring_budget,\n currency,\n management,\n estimation_title,\n };\n\n const parsedStaticFields = parseJSFToValidate(\n jsonSchemaStaticFieldValues,\n fieldsJSONSchema.fields,\n );\n\n const parsedRegionFields = parseJSFToValidate(\n rest,\n jsonSchemaRegionFields?.fields || [],\n );\n\n const additionalFields = {\n currency_code: currencies?.find((c) => c.value === currency)?.label,\n };\n\n return {\n ...parsedStaticFields,\n ...parsedRegionFields,\n ...additionalFields,\n } as CostCalculatorEstimationSubmitValues;\n },\n /**\n * Function to handle validation of the cost calculator form\n * @param values - Form values to validate\n * @returns Validation result\n */\n handleValidation,\n /**\n * Whether the cost calculator form is currently being submitted\n */\n isSubmitting: costCalculatorEstimationMutation.isPending,\n /**\n * Whether the cost calculator form is currently loading\n */\n isLoading:\n isLoadingCountries && isLoadingCurrencies && isLoadingRegionFields,\n /**\n * Function to submit the cost calculator form\n */\n onSubmit,\n /**\n * Function to reset the cost calculator form\n */\n resetForm,\n\n /**\n * Currencies data useful to get the currency if you have a currencySlug\n */\n currencies,\n };\n};\n"],"mappings":"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","names":["number","object","createHeadlessForm","modify","useCallback","useEffect","useMemo","useState","string","ValidationError","jsx","defaultEstimationOptions","useStaticSchema","__name","options","jsonSchemaModified","modify","jsonSchema","createHeadlessForm","getSalaryTitle","salaryField","hiringBudget","title","useCostCalculator","defaultRegion","defaultCurrency","defaultSalary","estimationOptions","version","selectedRegion","setSelectedRegion","useState","selectedCountry","setSelectedCountry","employerBillingCurrency","setEmployerBillingCurrency","setHiringBudget","countries","isLoadingCountries","useCostCalculatorCountries","currencies","isLoadingCurrencies","useCompanyCurrencies","jsonSchemaRegionSlug","jsonSchemaRegionFields","isLoadingRegionFields","useRegionFields","costCalculatorEstimationMutation","useCostCalculatorEstimation","employeeBillingCurrency","salaryFieldPresentation","getCurrencies","useCallback","shouldSwapOrder","showManagementField","showEstimationTitleField","customFields","useMemo","from","to","salaryTitle","props","SalaryField","fieldsJSONSchema","useEffect","defaultCountry","value","defaultCurrencyObj","onSubmit","values","validationSchema","err","resolve","reject","buildPayload","response","error","onCountryChange","country","currentCountry","onRegionChange","region","onHiringBudgetChange","event","onChangeCurrency","currency","selectedCurrency","c","regionField","field","regions","string","currencyField","hiringBudgetField","countryField","resetForm","allFields","buildValidationSchema","handleValidation","errors","parsedValues","parseJSFToValidate","ValidationError","iterateResult","iterateErrors","acc","key","handleValidationResult","combinedInnerErrors","combinedValues","salary_converted","hiring_budget","salary_conversion","management","estimation_title","rest","salary","parsedStaticFields","parsedRegionFields","additionalFields","buildValidationSchema","fields","employerBillingCurrency","includeEstimationTitle","fieldsSchema","fieldsSchemaAcc","field","__name","val","schema","object","number","value","BASE_RATES","formatBenefits","benefits","needle","acc","key","benefitTierSlug","benefitEntry","mapValueToEmployment","estimationOptions","version","managementFee","currencyCode","getSalaryFields","isMarketing","isStandard","useHiringBudget","useEmployerCurrency","buildPayload","values","defaultEstimationOptions","employments","v"]}
@@ -1,2 +1,2 @@
1
- import{b as d}from"./chunk-MRYRNB7Y.js";import{b as a}from"./chunk-CFIJKJXD.js";import{a as f}from"./chunk-LK4XMOCE.js";import{f as s,g as l}from"./chunk-3BREUYLG.js";import{a as n}from"./chunk-P37U34EQ.js";import{useEffect as T}from"react";import{jsx as e}from"react/jsx-runtime";function A({fields:m,onSubmit:F}){let{formId:u,terminationBag:o}=d(),c=a(o.handleValidation),i=s({resolver:c,defaultValues:o?.initialValues,shouldUnregister:!1,mode:"onBlur"});T(()=>{let y=i?.watch(r=>{Object.keys(r).some(t=>r[t]!==o?.initialValues?.[t])&&o?.checkFieldUpdates(r)});return()=>y?.unsubscribe()},[]);let p=m||(o?.fields??[]);return e(l,{...i,children:e("form",{id:u,onSubmit:i.handleSubmit(F),className:"space-y-4 RemoteFlows__TerminationForm",children:e(f,{fields:p})})})}n(A,"TerminationForm");export{A as a};
2
- //# sourceMappingURL=chunk-JI5BE2MZ.js.map
1
+ import{b as d}from"./chunk-MRYRNB7Y.js";import{b as a}from"./chunk-CFIJKJXD.js";import{a as f}from"./chunk-4W2RKQYM.js";import{f as s,g as l}from"./chunk-3BREUYLG.js";import{a as n}from"./chunk-P37U34EQ.js";import{useEffect as T}from"react";import{jsx as e}from"react/jsx-runtime";function A({fields:m,onSubmit:F}){let{formId:u,terminationBag:o}=d(),c=a(o.handleValidation),i=s({resolver:c,defaultValues:o?.initialValues,shouldUnregister:!1,mode:"onBlur"});T(()=>{let y=i?.watch(r=>{Object.keys(r).some(t=>r[t]!==o?.initialValues?.[t])&&o?.checkFieldUpdates(r)});return()=>y?.unsubscribe()},[]);let p=m||(o?.fields??[]);return e(l,{...i,children:e("form",{id:u,onSubmit:i.handleSubmit(F),className:"space-y-4 RemoteFlows__TerminationForm",children:e(f,{fields:p})})})}n(A,"TerminationForm");export{A as a};
2
+ //# sourceMappingURL=chunk-R6JC4SUO.js.map
@@ -1,2 +1,2 @@
1
- import{a as s}from"./chunk-HBQDXOAG.js";import{b as n}from"./chunk-PGWKJ6FK.js";import{b as i}from"./chunk-QW4JPW6J.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as p}from"react/jsx-runtime";function F({onSubmit:l,onError:t,onSuccess:d}){let{onboardingBag:o}=n(),m=e(async a=>{try{await l?.(o.parseFormValues(a));let r=await o.onSubmit(a);if(r?.data){await d?.(r.data),o?.next();return}if(r?.error){let c=i(r?.fieldErrors||[],o.meta?.fields?.contract_details);t?.({error:r.error,rawError:r.rawError,fieldErrors:c})}}catch(r){t?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit");return p(s,{defaultValues:o.stepState.values?.contract_details||o.initialValues.contract_details,onSubmit:m})}e(F,"ContractDetailsStep");export{F as a};
2
- //# sourceMappingURL=chunk-776QJKX5.js.map
1
+ import{a as s}from"./chunk-4ZOKJJZC.js";import{b as n}from"./chunk-PGWKJ6FK.js";import{b as i}from"./chunk-QW4JPW6J.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as p}from"react/jsx-runtime";function F({onSubmit:l,onError:t,onSuccess:d}){let{onboardingBag:o}=n(),m=e(async a=>{try{await l?.(o.parseFormValues(a));let r=await o.onSubmit(a);if(r?.data){await d?.(r.data),o?.next();return}if(r?.error){let c=i(r?.fieldErrors||[],o.meta?.fields?.contract_details);t?.({error:r.error,rawError:r.rawError,fieldErrors:c})}}catch(r){t?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit");return p(s,{defaultValues:o.stepState.values?.contract_details||o.initialValues.contract_details,onSubmit:m})}e(F,"ContractDetailsStep");export{F as a};
2
+ //# sourceMappingURL=chunk-WQIPP2C3.js.map
@@ -1,2 +1,2 @@
1
- import{a as s}from"./chunk-HBQDXOAG.js";import{b as t}from"./chunk-PGWKJ6FK.js";import{b as e}from"./chunk-QW4JPW6J.js";import{a as i}from"./chunk-P37U34EQ.js";import{jsx as c}from"react/jsx-runtime";function S({onSubmit:m,onSuccess:d,onError:a}){let{onboardingBag:o}=t(),l=i(async n=>{try{await m?.(o.parseFormValues(n));let r=await o.onSubmit(n);if(r?.data){await d?.(r?.data),o?.next();return}if(r?.error){let p=e(r?.fieldErrors||[],o.meta?.fields?.basic_information);a?.({error:r?.error,rawError:r?.rawError,fieldErrors:p})}}catch(r){a?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit"),f=o.stepState.values?.basic_information||o.initialValues.basic_information;return c(s,{defaultValues:f,onSubmit:l})}i(S,"BasicInformationStep");export{S as a};
2
- //# sourceMappingURL=chunk-ZZOY6KD4.js.map
1
+ import{a as s}from"./chunk-4ZOKJJZC.js";import{b as t}from"./chunk-PGWKJ6FK.js";import{b as e}from"./chunk-QW4JPW6J.js";import{a as i}from"./chunk-P37U34EQ.js";import{jsx as c}from"react/jsx-runtime";function S({onSubmit:m,onSuccess:d,onError:a}){let{onboardingBag:o}=t(),l=i(async n=>{try{await m?.(o.parseFormValues(n));let r=await o.onSubmit(n);if(r?.data){await d?.(r?.data),o?.next();return}if(r?.error){let p=e(r?.fieldErrors||[],o.meta?.fields?.basic_information);a?.({error:r?.error,rawError:r?.rawError,fieldErrors:p})}}catch(r){a?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit"),f=o.stepState.values?.basic_information||o.initialValues.basic_information;return c(s,{defaultValues:f,onSubmit:l})}i(S,"BasicInformationStep");export{S as a};
2
+ //# sourceMappingURL=chunk-Z7CHDOVN.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-ZCYSBG7R.js";import"../../chunk-XZRGLKXU.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-LK4XMOCE.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-ITSQE6EW.js";import"../../chunk-DHT7HDHC.js";import"../../chunk-GGBEM452.js";import"../../chunk-QW4JPW6J.js";import"../../chunk-AYJ63EZH.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-PJBAQZ6G.js";import"../../chunk-7P5B6XHM.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-HEKQK6TK.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-TVZAFTPT.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as ContractAmendmentFlow};
1
+ import{a}from"../../chunk-4YXQJD3M.js";import"../../chunk-O4OZANFQ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-4W2RKQYM.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-ITSQE6EW.js";import"../../chunk-DHT7HDHC.js";import"../../chunk-GGBEM452.js";import"../../chunk-QW4JPW6J.js";import"../../chunk-AYJ63EZH.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-PJBAQZ6G.js";import"../../chunk-7P5B6XHM.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-HEKQK6TK.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-TVZAFTPT.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as ContractAmendmentFlow};
2
2
  //# sourceMappingURL=ContractAmendmentFlow.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-XZRGLKXU.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-LK4XMOCE.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-TVZAFTPT.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as ContractAmendmentForm};
1
+ import{a}from"../../chunk-O4OZANFQ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-4W2RKQYM.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-TVZAFTPT.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as ContractAmendmentForm};
2
2
  //# sourceMappingURL=ContractAmendmentForm.js.map
@@ -1,2 +1,2 @@
1
- import"../../chunk-A7ZJQCNU.js";import{a as e}from"../../chunk-ZCYSBG7R.js";import{a as b}from"../../chunk-XZRGLKXU.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-LK4XMOCE.js";import"../../chunk-ZTDKPUB5.js";import{a as c}from"../../chunk-ITSQE6EW.js";import{a as d}from"../../chunk-DHT7HDHC.js";import"../../chunk-GGBEM452.js";import"../../chunk-QW4JPW6J.js";import"../../chunk-AYJ63EZH.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-PJBAQZ6G.js";import"../../chunk-7P5B6XHM.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import{a}from"../../chunk-HEKQK6TK.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-TVZAFTPT.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.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-4YXQJD3M.js";import{a as b}from"../../chunk-O4OZANFQ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-4W2RKQYM.js";import"../../chunk-ZTDKPUB5.js";import{a as c}from"../../chunk-ITSQE6EW.js";import{a as d}from"../../chunk-DHT7HDHC.js";import"../../chunk-GGBEM452.js";import"../../chunk-QW4JPW6J.js";import"../../chunk-AYJ63EZH.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-PJBAQZ6G.js";import"../../chunk-7P5B6XHM.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import{a}from"../../chunk-HEKQK6TK.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-TVZAFTPT.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as ContractAmendmentConfirmationForm,e as ContractAmendmentFlow,b as ContractAmendmentForm,c as ContractAmendmentSubmit,d as useContractAmendment};
2
2
  //# sourceMappingURL=index.js.map
@@ -33,6 +33,10 @@ type CostCalculatorFlowProps = {
33
33
  * Default value for the benefits field.
34
34
  */
35
35
  benefits: Record<string, string>;
36
+ /**
37
+ * Default value for the hiring budget field
38
+ */
39
+ hiringBudget: string;
36
40
  }>;
37
41
  options?: UseCostCalculatorOptions;
38
42
  render: (costCalculatorBag: ReturnType<typeof useCostCalculator>) => React__default.ReactNode;
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-IEYBG2G5.js";import"../../chunk-34JNRT23.js";import"../../chunk-JUGNVM2R.js";import"../../chunk-NBCZF2FO.js";import"../../chunk-IHPLMALI.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import"../../chunk-V2YORDAL.js";import"../../chunk-HN5HLFTB.js";import"../../chunk-KSHK3ZPX.js";import"../../chunk-N5I33LIN.js";import"../../chunk-ANXYPRBG.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as CostCalculatorFlow};
1
+ import{a}from"../../chunk-4WCT2ZCS.js";import"../../chunk-O6SRXXVZ.js";import"../../chunk-JUGNVM2R.js";import"../../chunk-NBCZF2FO.js";import"../../chunk-N7DP4HY4.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import"../../chunk-V2YORDAL.js";import"../../chunk-HN5HLFTB.js";import"../../chunk-KSHK3ZPX.js";import"../../chunk-N5I33LIN.js";import"../../chunk-ANXYPRBG.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as CostCalculatorFlow};
2
2
  //# sourceMappingURL=CostCalculatorFlow.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-QURYMQUD.js";import"../../chunk-KSHK3ZPX.js";import"../../chunk-LK4XMOCE.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as CostCalculatorForm};
1
+ import{a}from"../../chunk-5GYCZAL7.js";import"../../chunk-KSHK3ZPX.js";import"../../chunk-4W2RKQYM.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as CostCalculatorForm};
2
2
  //# sourceMappingURL=CostCalculatorForm.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"../../../chunk-HVTGLVLT.js";import"../../../chunk-4RULC3AZ.js";import"../../../chunk-ZE3YT3Q6.js";import"../../../chunk-NBCZF2FO.js";import"../../../chunk-UHS3QRA3.js";import"../../../chunk-N5I33LIN.js";import"../../../chunk-ANXYPRBG.js";import"../../../chunk-EGQJ7UBR.js";import"../../../chunk-3ZWDIEEM.js";import"../../../chunk-7VUILYZ3.js";import"../../../chunk-3LOVCTCN.js";import"../../../chunk-P37U34EQ.js";export{a as EstimationResults};
1
+ import{a}from"../../../chunk-6ZPISRAG.js";import"../../../chunk-4RULC3AZ.js";import"../../../chunk-ZE3YT3Q6.js";import"../../../chunk-NBCZF2FO.js";import"../../../chunk-UHS3QRA3.js";import"../../../chunk-N5I33LIN.js";import"../../../chunk-ANXYPRBG.js";import"../../../chunk-EGQJ7UBR.js";import"../../../chunk-3ZWDIEEM.js";import"../../../chunk-7VUILYZ3.js";import"../../../chunk-3LOVCTCN.js";import"../../../chunk-P37U34EQ.js";export{a as EstimationResults};
2
2
  //# sourceMappingURL=EstimationResults.js.map
@@ -1,2 +1,2 @@
1
- import{c as a,d as b}from"../../chunk-34JNRT23.js";import"../../chunk-JUGNVM2R.js";import"../../chunk-NBCZF2FO.js";import"../../chunk-IHPLMALI.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import"../../chunk-V2YORDAL.js";import"../../chunk-HN5HLFTB.js";import"../../chunk-N5I33LIN.js";import"../../chunk-ANXYPRBG.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as defaultEstimationOptions,b as useCostCalculator};
1
+ import{c as a,d as b}from"../../chunk-O6SRXXVZ.js";import"../../chunk-JUGNVM2R.js";import"../../chunk-NBCZF2FO.js";import"../../chunk-N7DP4HY4.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import"../../chunk-V2YORDAL.js";import"../../chunk-HN5HLFTB.js";import"../../chunk-N5I33LIN.js";import"../../chunk-ANXYPRBG.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as defaultEstimationOptions,b as useCostCalculator};
2
2
  //# sourceMappingURL=hooks.js.map
@@ -1,2 +1,2 @@
1
- import"../../chunk-Z3BMF4BO.js";import{a as l}from"../../chunk-MLB2I27G.js";import"../../chunk-E5YN6OT3.js";import{a as k}from"../../chunk-R2UI3WAJ.js";import{a as j}from"../../chunk-HVTGLVLT.js";import"../../chunk-4RULC3AZ.js";import"../../chunk-H4KE45NG.js";import"../../chunk-6NKUEDYP.js";import"../../chunk-I2A4EFDY.js";import"../../chunk-4R3ITKOA.js";import"../../chunk-ZE3YT3Q6.js";import"../../chunk-NVMZDPMF.js";import"../../chunk-XJVYASHX.js";import{a as d}from"../../chunk-IEYBG2G5.js";import{b as a,d as c}from"../../chunk-34JNRT23.js";import"../../chunk-JUGNVM2R.js";import"../../chunk-NBCZF2FO.js";import"../../chunk-IHPLMALI.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import{a as e}from"../../chunk-QURYMQUD.js";import{a as g}from"../../chunk-OZ63OC3N.js";import{a as f}from"../../chunk-A4KEKMEQ.js";import{d as b}from"../../chunk-V2YORDAL.js";import"../../chunk-HN5HLFTB.js";import"../../chunk-KSHK3ZPX.js";import{a as i}from"../../chunk-HQI6W7PR.js";import{a as h}from"../../chunk-DYB3RWP7.js";import"../../chunk-CRXPRR3R.js";import"../../chunk-UHS3QRA3.js";import"../../chunk-N5I33LIN.js";import"../../chunk-LBUNJ5J3.js";import"../../chunk-ANXYPRBG.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-LK4XMOCE.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{i as CostCalculatorDisclaimer,d as CostCalculatorFlow,e as CostCalculatorForm,g as CostCalculatorResetButton,l as CostCalculatorResults,f as CostCalculatorSubmitButton,j as EstimationResults,k as SummaryResults,a as buildCostCalculatorEstimationPayload,h as disclaimerData,c as useCostCalculator,b as useCostCalculatorEstimationPdf};
1
+ import"../../chunk-Z3BMF4BO.js";import{a as l}from"../../chunk-MLB2I27G.js";import"../../chunk-E5YN6OT3.js";import{a as k}from"../../chunk-R2UI3WAJ.js";import{a as j}from"../../chunk-6ZPISRAG.js";import"../../chunk-4RULC3AZ.js";import"../../chunk-H4KE45NG.js";import"../../chunk-6NKUEDYP.js";import"../../chunk-I2A4EFDY.js";import"../../chunk-4R3ITKOA.js";import"../../chunk-ZE3YT3Q6.js";import"../../chunk-NVMZDPMF.js";import"../../chunk-XJVYASHX.js";import{a as d}from"../../chunk-4WCT2ZCS.js";import{b as a,d as c}from"../../chunk-O6SRXXVZ.js";import"../../chunk-JUGNVM2R.js";import"../../chunk-NBCZF2FO.js";import"../../chunk-N7DP4HY4.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import{a as e}from"../../chunk-5GYCZAL7.js";import{a as g}from"../../chunk-OZ63OC3N.js";import{a as f}from"../../chunk-A4KEKMEQ.js";import{d as b}from"../../chunk-V2YORDAL.js";import"../../chunk-HN5HLFTB.js";import"../../chunk-KSHK3ZPX.js";import{a as i}from"../../chunk-HQI6W7PR.js";import{a as h}from"../../chunk-DYB3RWP7.js";import"../../chunk-CRXPRR3R.js";import"../../chunk-UHS3QRA3.js";import"../../chunk-N5I33LIN.js";import"../../chunk-LBUNJ5J3.js";import"../../chunk-ANXYPRBG.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-4W2RKQYM.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{i as CostCalculatorDisclaimer,d as CostCalculatorFlow,e as CostCalculatorForm,g as CostCalculatorResetButton,l as CostCalculatorResults,f as CostCalculatorSubmitButton,j as EstimationResults,k as SummaryResults,a as buildCostCalculatorEstimationPayload,h as disclaimerData,c as useCostCalculator,b as useCostCalculatorEstimationPdf};
2
2
  //# sourceMappingURL=index.js.map
@@ -31,6 +31,23 @@ declare const jsonSchema: {
31
31
  inputType: string;
32
32
  };
33
33
  };
34
+ currency_statement: {
35
+ type: string;
36
+ title: string;
37
+ 'x-jsf-presentation': {
38
+ inputType: string;
39
+ hidden: boolean;
40
+ statement: {
41
+ title: string;
42
+ description: string;
43
+ inputType: string;
44
+ severity: string;
45
+ };
46
+ meta: {
47
+ ignoreValue: boolean;
48
+ };
49
+ };
50
+ };
34
51
  hiring_budget: {
35
52
  title: string;
36
53
  enum: string[];
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-IHPLMALI.js";import"../../chunk-P37U34EQ.js";export{a as jsonSchema};
1
+ import{a}from"../../chunk-N7DP4HY4.js";import"../../chunk-P37U34EQ.js";export{a as jsonSchema};
2
2
  //# sourceMappingURL=jsonSchema.js.map
@@ -5,6 +5,7 @@ import '@remoteoss/json-schema-form';
5
5
 
6
6
  type CostCalculatorEstimationSubmitValues = {
7
7
  currency: string;
8
+ currency_code: string;
8
9
  country: string;
9
10
  salary_converted: 'salary' | 'salary_conversion';
10
11
  hiring_budget: string;
@@ -21,6 +22,7 @@ type CostCalculatorEstimationSubmitValues = {
21
22
  }>;
22
23
  type CostCalculatorEstimationFormValues = {
23
24
  currency: string;
25
+ currency_code: string;
24
26
  country: string;
25
27
  salary: string;
26
28
  salary_converted: 'salary' | 'salary_conversion';
@@ -68,7 +70,11 @@ type CostCalculatorEstimationOptions = Partial<{
68
70
  /**
69
71
  * Management fees by currency. Default is null.
70
72
  */
71
- managementFees?: Partial<Record<CurrencyKey, number>>;
73
+ managementFees: Partial<Record<CurrencyKey, number>>;
74
+ /**
75
+ * Show management fee field in the estimation. Default is false.
76
+ */
77
+ showManagementFee: boolean;
72
78
  }>;
73
79
  type EstimationError = PostCreateEstimationError | ValidationError;
74
80
  type UseCostCalculatorOptions = {
@@ -1,2 +1,2 @@
1
- import{a,b}from"../../chunk-34JNRT23.js";import"../../chunk-JUGNVM2R.js";import"../../chunk-NBCZF2FO.js";import"../../chunk-IHPLMALI.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import"../../chunk-V2YORDAL.js";import"../../chunk-HN5HLFTB.js";import"../../chunk-N5I33LIN.js";import"../../chunk-ANXYPRBG.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{b as buildPayload,a as buildValidationSchema};
1
+ import{a,b}from"../../chunk-O6SRXXVZ.js";import"../../chunk-JUGNVM2R.js";import"../../chunk-NBCZF2FO.js";import"../../chunk-N7DP4HY4.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import"../../chunk-V2YORDAL.js";import"../../chunk-HN5HLFTB.js";import"../../chunk-N5I33LIN.js";import"../../chunk-ANXYPRBG.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{b as buildPayload,a as buildValidationSchema};
2
2
  //# sourceMappingURL=utils.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-HAL2L237.js";import"../../chunk-GNXVMZY7.js";import"../../chunk-776QJKX5.js";import"../../chunk-63HVO7J5.js";import"../../chunk-O4F6PGGV.js";import"../../chunk-7JQPHRUK.js";import"../../chunk-Z7WBY27D.js";import"../../chunk-5KHLOGTR.js";import"../../chunk-ZZOY6KD4.js";import"../../chunk-KOPJY6WW.js";import"../../chunk-HBQDXOAG.js";import"../../chunk-DSTM5RRQ.js";import"../../chunk-VAIBLWOY.js";import"../../chunk-C4RJTN2F.js";import"../../chunk-F66G33YT.js";import"../../chunk-PGWKJ6FK.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-LK4XMOCE.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-QW4JPW6J.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-PJBAQZ6G.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as OnboardingFlow};
1
+ import{a}from"../../chunk-AUZQY3AO.js";import"../../chunk-HWNHP6LW.js";import"../../chunk-WQIPP2C3.js";import"../../chunk-63HVO7J5.js";import"../../chunk-O4F6PGGV.js";import"../../chunk-7JQPHRUK.js";import"../../chunk-Z7WBY27D.js";import"../../chunk-5KHLOGTR.js";import"../../chunk-Z7CHDOVN.js";import"../../chunk-CNOIGOQQ.js";import"../../chunk-4ZOKJJZC.js";import"../../chunk-DSTM5RRQ.js";import"../../chunk-VAIBLWOY.js";import"../../chunk-C4RJTN2F.js";import"../../chunk-F66G33YT.js";import"../../chunk-PGWKJ6FK.js";import"../../chunk-JQDP6SAT.js";import"../../chunk-DTGFQMCE.js";import"../../chunk-WVJDCDGZ.js";import"../../chunk-Z5WMKCRJ.js";import"../../chunk-CFIJKJXD.js";import"../../chunk-4W2RKQYM.js";import"../../chunk-ZTDKPUB5.js";import"../../chunk-QW4JPW6J.js";import"../../chunk-KHNAQRGE.js";import"../../chunk-GP237GUO.js";import"../../chunk-TXSJL3HC.js";import"../../chunk-EGQJ7UBR.js";import"../../chunk-PJBAQZ6G.js";import"../../chunk-3ZWDIEEM.js";import"../../chunk-7VUILYZ3.js";import"../../chunk-3BREUYLG.js";import"../../chunk-MXFDOIUA.js";import"../../chunk-BI6U55BD.js";import"../../chunk-3LOVCTCN.js";import"../../chunk-P37U34EQ.js";export{a as OnboardingFlow};
2
2
  //# sourceMappingURL=OnboardingFlow.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"../../../chunk-ZZOY6KD4.js";import"../../../chunk-HBQDXOAG.js";import"../../../chunk-PGWKJ6FK.js";import"../../../chunk-CFIJKJXD.js";import"../../../chunk-LK4XMOCE.js";import"../../../chunk-ZTDKPUB5.js";import"../../../chunk-QW4JPW6J.js";import"../../../chunk-KHNAQRGE.js";import"../../../chunk-GP237GUO.js";import"../../../chunk-TXSJL3HC.js";import"../../../chunk-3ZWDIEEM.js";import"../../../chunk-7VUILYZ3.js";import"../../../chunk-3BREUYLG.js";import"../../../chunk-MXFDOIUA.js";import"../../../chunk-BI6U55BD.js";import"../../../chunk-3LOVCTCN.js";import"../../../chunk-P37U34EQ.js";export{a as BasicInformationStep};
1
+ import{a}from"../../../chunk-Z7CHDOVN.js";import"../../../chunk-4ZOKJJZC.js";import"../../../chunk-PGWKJ6FK.js";import"../../../chunk-CFIJKJXD.js";import"../../../chunk-4W2RKQYM.js";import"../../../chunk-ZTDKPUB5.js";import"../../../chunk-QW4JPW6J.js";import"../../../chunk-KHNAQRGE.js";import"../../../chunk-GP237GUO.js";import"../../../chunk-TXSJL3HC.js";import"../../../chunk-3ZWDIEEM.js";import"../../../chunk-7VUILYZ3.js";import"../../../chunk-3BREUYLG.js";import"../../../chunk-MXFDOIUA.js";import"../../../chunk-BI6U55BD.js";import"../../../chunk-3LOVCTCN.js";import"../../../chunk-P37U34EQ.js";export{a as BasicInformationStep};
2
2
  //# sourceMappingURL=BasicInformationStep.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"../../../chunk-KOPJY6WW.js";import"../../../chunk-HBQDXOAG.js";import"../../../chunk-PGWKJ6FK.js";import"../../../chunk-CFIJKJXD.js";import"../../../chunk-LK4XMOCE.js";import"../../../chunk-ZTDKPUB5.js";import"../../../chunk-QW4JPW6J.js";import"../../../chunk-KHNAQRGE.js";import"../../../chunk-GP237GUO.js";import"../../../chunk-TXSJL3HC.js";import"../../../chunk-3ZWDIEEM.js";import"../../../chunk-7VUILYZ3.js";import"../../../chunk-3BREUYLG.js";import"../../../chunk-MXFDOIUA.js";import"../../../chunk-BI6U55BD.js";import"../../../chunk-3LOVCTCN.js";import"../../../chunk-P37U34EQ.js";export{a as BenefitsStep};
1
+ import{a}from"../../../chunk-CNOIGOQQ.js";import"../../../chunk-4ZOKJJZC.js";import"../../../chunk-PGWKJ6FK.js";import"../../../chunk-CFIJKJXD.js";import"../../../chunk-4W2RKQYM.js";import"../../../chunk-ZTDKPUB5.js";import"../../../chunk-QW4JPW6J.js";import"../../../chunk-KHNAQRGE.js";import"../../../chunk-GP237GUO.js";import"../../../chunk-TXSJL3HC.js";import"../../../chunk-3ZWDIEEM.js";import"../../../chunk-7VUILYZ3.js";import"../../../chunk-3BREUYLG.js";import"../../../chunk-MXFDOIUA.js";import"../../../chunk-BI6U55BD.js";import"../../../chunk-3LOVCTCN.js";import"../../../chunk-P37U34EQ.js";export{a as BenefitsStep};
2
2
  //# sourceMappingURL=BenefitsStep.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"../../../chunk-776QJKX5.js";import"../../../chunk-HBQDXOAG.js";import"../../../chunk-PGWKJ6FK.js";import"../../../chunk-CFIJKJXD.js";import"../../../chunk-LK4XMOCE.js";import"../../../chunk-ZTDKPUB5.js";import"../../../chunk-QW4JPW6J.js";import"../../../chunk-KHNAQRGE.js";import"../../../chunk-GP237GUO.js";import"../../../chunk-TXSJL3HC.js";import"../../../chunk-3ZWDIEEM.js";import"../../../chunk-7VUILYZ3.js";import"../../../chunk-3BREUYLG.js";import"../../../chunk-MXFDOIUA.js";import"../../../chunk-BI6U55BD.js";import"../../../chunk-3LOVCTCN.js";import"../../../chunk-P37U34EQ.js";export{a as ContractDetailsStep};
1
+ import{a}from"../../../chunk-WQIPP2C3.js";import"../../../chunk-4ZOKJJZC.js";import"../../../chunk-PGWKJ6FK.js";import"../../../chunk-CFIJKJXD.js";import"../../../chunk-4W2RKQYM.js";import"../../../chunk-ZTDKPUB5.js";import"../../../chunk-QW4JPW6J.js";import"../../../chunk-KHNAQRGE.js";import"../../../chunk-GP237GUO.js";import"../../../chunk-TXSJL3HC.js";import"../../../chunk-3ZWDIEEM.js";import"../../../chunk-7VUILYZ3.js";import"../../../chunk-3BREUYLG.js";import"../../../chunk-MXFDOIUA.js";import"../../../chunk-BI6U55BD.js";import"../../../chunk-3LOVCTCN.js";import"../../../chunk-P37U34EQ.js";export{a as ContractDetailsStep};
2
2
  //# sourceMappingURL=ContractDetailsStep.js.map