@gusto/embedded-react-sdk 0.46.0 → 0.46.2

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 (152) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/dist/components/Common/DataView/DataCards/DataCards.d.ts +2 -1
  3. package/dist/components/Common/DataView/DataCards/DataCards.js +14 -13
  4. package/dist/components/Common/DataView/DataCards/DataCards.js.map +1 -1
  5. package/dist/components/Common/DataView/DataTable/DataTable.d.ts +2 -1
  6. package/dist/components/Common/DataView/DataTable/DataTable.js +51 -50
  7. package/dist/components/Common/DataView/DataTable/DataTable.js.map +1 -1
  8. package/dist/components/Common/DataView/DataView.d.ts +1 -0
  9. package/dist/components/Common/DataView/DataView.js.map +1 -1
  10. package/dist/components/Common/DataView/useDataView.d.ts +8 -1
  11. package/dist/components/Common/DataView/useDataView.js +20 -17
  12. package/dist/components/Common/DataView/useDataView.js.map +1 -1
  13. package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.d.ts +9 -0
  14. package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.js +76 -0
  15. package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.js.map +1 -0
  16. package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.module.scss.js +8 -0
  17. package/dist/components/Employee/Compensation/management/AddAnotherJob/AddAnotherJob.module.scss.js.map +1 -0
  18. package/dist/components/Employee/Compensation/management/EditCompensation/EditCompensation.js +57 -202
  19. package/dist/components/Employee/Compensation/management/EditCompensation/EditCompensation.js.map +1 -1
  20. package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.d.ts +25 -0
  21. package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.js +81 -0
  22. package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.js.map +1 -0
  23. package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.module.scss.js +8 -0
  24. package/dist/components/Employee/Compensation/management/EditPendingCompensation/EditPendingCompensation.module.scss.js.map +1 -0
  25. package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.d.ts +18 -0
  26. package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js +171 -0
  27. package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js.map +1 -0
  28. package/dist/components/Employee/Compensation/management/index.d.ts +3 -0
  29. package/dist/components/Employee/Compensation/onboarding/EditCompensation/EditCompensation.d.ts +6 -1
  30. package/dist/components/Employee/Compensation/onboarding/EditCompensation/EditCompensation.js +67 -209
  31. package/dist/components/Employee/Compensation/onboarding/EditCompensation/EditCompensation.js.map +1 -1
  32. package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.d.ts +18 -0
  33. package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js +169 -0
  34. package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js.map +1 -0
  35. package/dist/components/Employee/Compensation/shared/useCompensationForm/compensationSchema.d.ts +16 -0
  36. package/dist/components/Employee/Compensation/shared/useCompensationForm/compensationSchema.js +36 -30
  37. package/dist/components/Employee/Compensation/shared/useCompensationForm/compensationSchema.js.map +1 -1
  38. package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.d.ts +1 -1
  39. package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.js.map +1 -1
  40. package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js +213 -191
  41. package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js.map +1 -1
  42. package/dist/components/Employee/Dashboard/Dashboard.js +65 -53
  43. package/dist/components/Employee/Dashboard/Dashboard.js.map +1 -1
  44. package/dist/components/Employee/Dashboard/DashboardComponents.d.ts +3 -3
  45. package/dist/components/Employee/Dashboard/DashboardComponents.js +138 -101
  46. package/dist/components/Employee/Dashboard/DashboardComponents.js.map +1 -1
  47. package/dist/components/Employee/Dashboard/JobAndPayView.js +340 -320
  48. package/dist/components/Employee/Dashboard/JobAndPayView.js.map +1 -1
  49. package/dist/components/Employee/Dashboard/JobAndPayView.module.scss.js +5 -3
  50. package/dist/components/Employee/Dashboard/JobAndPayView.module.scss.js.map +1 -1
  51. package/dist/components/Employee/Dashboard/dashboardStateMachine.js +147 -148
  52. package/dist/components/Employee/Dashboard/dashboardStateMachine.js.map +1 -1
  53. package/dist/components/Employee/Dashboard/getPendingCompensationChanges.d.ts +6 -0
  54. package/dist/components/Employee/Dashboard/getPendingCompensationChanges.js +13 -12
  55. package/dist/components/Employee/Dashboard/getPendingCompensationChanges.js.map +1 -1
  56. package/dist/components/Employee/Dashboard/hooks/useEmployeeCompensation.d.ts +2 -2
  57. package/dist/components/Employee/Dashboard/hooks/useEmployeeCompensation.js +34 -35
  58. package/dist/components/Employee/Dashboard/hooks/useEmployeeCompensation.js.map +1 -1
  59. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js +37 -40
  60. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js.map +1 -1
  61. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.d.ts +1 -2
  62. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js +64 -71
  63. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js.map +1 -1
  64. package/dist/components/Employee/EmployeeListFlow/EmployeeListFlow.d.ts +2 -0
  65. package/dist/components/Employee/EmployeeListFlow/EmployeeListFlow.js +25 -0
  66. package/dist/components/Employee/EmployeeListFlow/EmployeeListFlow.js.map +1 -0
  67. package/dist/components/Employee/EmployeeListFlow/EmployeeListFlowComponents.d.ts +13 -0
  68. package/dist/components/Employee/EmployeeListFlow/EmployeeListFlowComponents.js +37 -0
  69. package/dist/components/Employee/EmployeeListFlow/EmployeeListFlowComponents.js.map +1 -0
  70. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.d.ts +6 -0
  71. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js +69 -0
  72. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js.map +1 -0
  73. package/dist/components/Employee/EmployeeListFlow/index.d.ts +3 -0
  74. package/dist/components/Employee/HomeAddress/management/HomeAddress.js +15 -12
  75. package/dist/components/Employee/HomeAddress/management/HomeAddress.js.map +1 -1
  76. package/dist/components/Employee/HomeAddress/management/HomeAddressView.d.ts +2 -1
  77. package/dist/components/Employee/HomeAddress/management/HomeAddressView.js +86 -83
  78. package/dist/components/Employee/HomeAddress/management/HomeAddressView.js.map +1 -1
  79. package/dist/components/Employee/WorkAddress/management/WorkAddress.js +14 -11
  80. package/dist/components/Employee/WorkAddress/management/WorkAddress.js.map +1 -1
  81. package/dist/components/Employee/WorkAddress/management/WorkAddressView.d.ts +2 -1
  82. package/dist/components/Employee/WorkAddress/management/WorkAddressView.js +92 -89
  83. package/dist/components/Employee/WorkAddress/management/WorkAddressView.js.map +1 -1
  84. package/dist/components/Employee/exports/employeeManagement.d.ts +2 -0
  85. package/dist/components/Employee/exports/employeeManagement.js +18 -16
  86. package/dist/components/Employee/exports/employeeManagement.js.map +1 -1
  87. package/dist/components/Employee/index.d.ts +2 -0
  88. package/dist/components/Employee/index.js +32 -30
  89. package/dist/components/Employee/index.js.map +1 -1
  90. package/dist/components/Flow/FlowHeader.js +34 -31
  91. package/dist/components/Flow/FlowHeader.js.map +1 -1
  92. package/dist/components/Flow/useFlow.d.ts +12 -0
  93. package/dist/components/Flow/useFlow.js.map +1 -1
  94. package/dist/components/TimeOff/PolicyList/PolicyList.js +92 -69
  95. package/dist/components/TimeOff/PolicyList/PolicyList.js.map +1 -1
  96. package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js +23 -23
  97. package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js.map +1 -1
  98. package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.d.ts +1 -1
  99. package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js.map +1 -1
  100. package/dist/components/TimeOff/TimeOffFlow/timeOffStateMachine.js +73 -56
  101. package/dist/components/TimeOff/TimeOffFlow/timeOffStateMachine.js.map +1 -1
  102. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js +58 -58
  103. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js.map +1 -1
  104. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.d.ts +1 -1
  105. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +91 -87
  106. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js.map +1 -1
  107. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormTypes.d.ts +2 -0
  108. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js +91 -124
  109. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js.map +1 -1
  110. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.d.ts +1 -1
  111. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js +72 -87
  112. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js.map +1 -1
  113. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentationTypes.d.ts +1 -6
  114. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js +160 -220
  115. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js.map +1 -1
  116. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.d.ts +7 -3
  117. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js +77 -54
  118. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.js.map +1 -1
  119. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/useSelectEmployeesData.test.d.ts +1 -0
  120. package/dist/components/TimeOff/TimeOffPolicyDetail/EditEmployeeBalanceModal.js +12 -11
  121. package/dist/components/TimeOff/TimeOffPolicyDetail/EditEmployeeBalanceModal.js.map +1 -1
  122. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js +177 -147
  123. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js.map +1 -1
  124. package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.d.ts +1 -1
  125. package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js +38 -36
  126. package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTable.js.map +1 -1
  127. package/dist/components/TimeOff/shared/EmployeeTable/EmployeeTableTypes.d.ts +2 -0
  128. package/dist/i18n/en/Company.TimeOff.SelectEmployees.json.js +10 -10
  129. package/dist/i18n/en/Company.TimeOff.TimeOffPolicies.json.js +17 -15
  130. package/dist/i18n/en/Company.TimeOff.TimeOffPolicies.json.js.map +1 -1
  131. package/dist/i18n/en/Company.TimeOff.TimeOffPolicyDetails.json.js +9 -9
  132. package/dist/i18n/en/Employee.Compensation.json.js +64 -56
  133. package/dist/i18n/en/Employee.Compensation.json.js.map +1 -1
  134. package/dist/i18n/en/Employee.Dashboard.json.js +26 -24
  135. package/dist/i18n/en/Employee.Dashboard.json.js.map +1 -1
  136. package/dist/i18n/en/Employee.HomeAddress.Management.json.js +12 -10
  137. package/dist/i18n/en/Employee.HomeAddress.Management.json.js.map +1 -1
  138. package/dist/i18n/en/Employee.ManagementEmployeeList.json.js +32 -30
  139. package/dist/i18n/en/Employee.ManagementEmployeeList.json.js.map +1 -1
  140. package/dist/i18n/en/Employee.WorkAddress.Management.json.js +16 -14
  141. package/dist/i18n/en/Employee.WorkAddress.Management.json.js.map +1 -1
  142. package/dist/i18n/en/common.json.d.ts +14 -0
  143. package/dist/partner-hook-utils/form/fields/DatePickerHookField.js +33 -32
  144. package/dist/partner-hook-utils/form/fields/DatePickerHookField.js.map +1 -1
  145. package/dist/partner-hook-utils/types.d.ts +4 -0
  146. package/dist/shared/constants.d.ts +2 -0
  147. package/dist/shared/constants.js +13 -12
  148. package/dist/shared/constants.js.map +1 -1
  149. package/dist/style.css +1 -1
  150. package/dist/types/i18next.d.ts +26 -12
  151. package/docs/reference/endpoint-inventory.json +24 -8
  152. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"timeOffStateMachine.js","sources":["../../../../src/components/TimeOff/TimeOffFlow/timeOffStateMachine.ts"],"sourcesContent":["import { transition, reduce, state, guard } from 'robot3'\nimport {\n PolicyListContextual,\n SelectPolicyTypeContextual,\n PolicyDetailsFormContextual,\n PolicySettingsContextual,\n EditPolicySettingsContextual,\n AddEmployeesToPolicyContextual,\n TimeOffPolicyDetailContextual,\n HolidaySelectionFormContextual,\n EditHolidaySelectionFormContextual,\n AddEmployeesHolidayContextual,\n ViewHolidayEmployeesContextual,\n ViewHolidayScheduleContextual,\n type TimeOffFlowContextInterface,\n type TimeOffFlowAlert,\n type AddEmployeesSource,\n} from './TimeOffFlowComponents'\nimport type { TimeOffPolicyType } from './timeOffPolicyTypes'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineTransition } from '@/types/Helpers'\n\ntype PolicyTypePayload = { policyType: 'sick' | 'vacation' | 'holiday' }\ntype PolicyCreatedPayload = { policyId: string; accrualMethod?: string }\ntype ErrorPayload = { alert?: TimeOffFlowAlert }\ntype ViewPolicyPayload = { policyId: string; policyType: TimeOffPolicyType }\ntype PolicyIdPayload = { policyId: string }\n\nfunction isSickOrVacation(_ctx: TimeOffFlowContextInterface, ev: { payload: PolicyTypePayload }) {\n return ev.payload.policyType === 'sick' || ev.payload.policyType === 'vacation'\n}\n\nfunction isHoliday(_ctx: TimeOffFlowContextInterface, ev: { payload: PolicyTypePayload }) {\n return ev.payload.policyType === 'holiday'\n}\n\nfunction isNonHolidayView(_ctx: TimeOffFlowContextInterface, ev: { payload: ViewPolicyPayload }) {\n return ev.payload.policyType !== 'holiday'\n}\n\nfunction isHolidayView(_ctx: TimeOffFlowContextInterface, ev: { payload: ViewPolicyPayload }) {\n return ev.payload.policyType === 'holiday'\n}\n\nfunction isUnlimitedPolicy(\n _ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyCreatedPayload },\n) {\n return ev.payload.accrualMethod === 'unlimited'\n}\n\nfunction addEmployeesSourceIs(source: AddEmployeesSource) {\n return (ctx: TimeOffFlowContextInterface) => ctx.addEmployeesSource === source\n}\n\nconst cancelToPolicyList = transition(\n componentEvents.CANCEL,\n 'policyList',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyListContextual,\n policyId: undefined,\n policyType: undefined,\n alerts: undefined,\n }),\n ),\n)\n\nconst backToListTransition = transition(\n componentEvents.TIME_OFF_BACK_TO_LIST,\n 'policyList',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyListContextual,\n policyId: undefined,\n policyType: undefined,\n alerts: undefined,\n }),\n ),\n)\n\nexport const timeOffMachine = {\n policyList: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_CREATE_POLICY,\n 'policyTypeSelector',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: SelectPolicyTypeContextual,\n policyId: undefined,\n policyType: undefined,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_VIEW_POLICY,\n 'viewTimeOffPolicyDetail',\n guard(isNonHolidayView),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ViewPolicyPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n policyId: ev.payload.policyId,\n policyType: ev.payload.policyType,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_VIEW_POLICY,\n 'viewHolidayEmployees',\n guard(isHolidayView),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ViewPolicyPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n policyId: ev.payload.policyId,\n policyType: ev.payload.policyType,\n alerts: undefined,\n }),\n ),\n ),\n ),\n\n policyTypeSelector: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_TYPE_SELECTED,\n 'policyDetailsForm',\n guard(isSickOrVacation),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyTypePayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n policyType: ev.payload.policyType,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_TYPE_SELECTED,\n 'holidaySelectionForm',\n guard(isHoliday),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyTypePayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: HolidaySelectionFormContextual,\n policyType: ev.payload.policyType,\n alerts: undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n policyDetailsForm: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_DETAILS_DONE,\n 'addEmployeesToPolicy',\n guard(isUnlimitedPolicy),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyCreatedPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesToPolicyContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n addEmployeesSource: 'policyDetailsForm',\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_DETAILS_DONE,\n 'policySettings',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyCreatedPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicySettingsContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_CREATE_ERROR,\n 'policyTypeSelector',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: SelectPolicyTypeContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n policySettings: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_DONE,\n 'addEmployeesToPolicy',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesToPolicyContextual,\n alerts: undefined,\n addEmployeesSource: 'policySettings',\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_BACK,\n 'policyDetailsForm',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_ERROR,\n 'policyDetailsForm',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n addEmployeesToPolicy: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_DONE,\n 'viewTimeOffPolicyDetail',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_BACK,\n 'viewTimeOffPolicyDetail',\n guard(addEmployeesSourceIs('viewTimeOffPolicyDetail')),\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_BACK,\n 'policyDetailsForm',\n guard(addEmployeesSourceIs('policyDetailsForm')),\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_BACK,\n 'policySettings',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicySettingsContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_ERROR,\n 'policyDetailsForm',\n guard(addEmployeesSourceIs('policyDetailsForm')),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_ERROR,\n 'policySettings',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicySettingsContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n viewTimeOffPolicyDetail: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_TO_POLICY,\n 'addEmployeesToPolicy',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyIdPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesToPolicyContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n addEmployeesSource: 'viewTimeOffPolicyDetail',\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_EDIT_POLICY,\n 'editPolicyDetailsForm',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyIdPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_CHANGE_SETTINGS,\n 'editPolicySettings',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyIdPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: EditPolicySettingsContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n }),\n ),\n ),\n backToListTransition,\n ),\n\n // Distinct from `policyDetailsForm` (the create-flow step) so that DONE\n // returns to the policy detail view rather than continuing into the\n // create flow's settings step.\n editPolicyDetailsForm: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_DETAILS_DONE,\n 'viewTimeOffPolicyDetail',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyCreatedPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.CANCEL,\n 'viewTimeOffPolicyDetail',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n }),\n ),\n ),\n ),\n\n // Distinct from `policySettings` (the create-flow step) so that DONE/BACK\n // return to the policy detail view instead of routing into the create\n // flow's add-employees / details-form steps.\n editPolicySettings: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_DONE,\n 'viewTimeOffPolicyDetail',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_BACK,\n 'viewTimeOffPolicyDetail',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n holidaySelectionForm: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_HOLIDAY_SELECTION_DONE,\n 'addEmployeesHoliday',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesHolidayContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_HOLIDAY_CREATE_ERROR,\n 'policyTypeSelector',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: SelectPolicyTypeContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n addEmployeesHoliday: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_HOLIDAY_ADD_EMPLOYEES_DONE,\n 'viewHolidayEmployees',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_HOLIDAY_ADD_EMPLOYEES_ERROR,\n 'holidaySelectionForm',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: HolidaySelectionFormContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n viewHolidayEmployees: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_HOLIDAY_ADD_EMPLOYEES,\n 'addEmployeesHoliday',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesHolidayContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_VIEW_HOLIDAY_SCHEDULE,\n 'viewHolidaySchedule',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayScheduleContextual,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_EDIT_HOLIDAY_POLICY,\n 'editHolidaySelectionForm',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: EditHolidaySelectionFormContextual,\n alerts: undefined,\n }),\n ),\n ),\n backToListTransition,\n ),\n\n viewHolidaySchedule: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_VIEW_HOLIDAY_EMPLOYEES,\n 'viewHolidayEmployees',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_HOLIDAY_ADD_EMPLOYEES,\n 'addEmployeesHoliday',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesHolidayContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_EDIT_HOLIDAY_POLICY,\n 'editHolidaySelectionForm',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: EditHolidaySelectionFormContextual,\n alerts: undefined,\n }),\n ),\n ),\n backToListTransition,\n ),\n\n // Distinct from `holidaySelectionForm` (the create-flow step) so that\n // DONE returns to the holiday detail view instead of routing into\n // `addEmployeesHoliday`.\n editHolidaySelectionForm: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_HOLIDAY_SELECTION_EDIT_DONE,\n 'viewHolidayEmployees',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_HOLIDAY_CREATE_ERROR,\n 'viewHolidayEmployees',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n transition(\n componentEvents.CANCEL,\n 'viewHolidayEmployees',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n alerts: undefined,\n }),\n ),\n ),\n ),\n\n final: state<MachineTransition>(),\n}\n"],"names":["isSickOrVacation","_ctx","ev","isHoliday","isNonHolidayView","isHolidayView","isUnlimitedPolicy","addEmployeesSourceIs","source","ctx","cancelToPolicyList","transition","componentEvents","reduce","PolicyListContextual","backToListTransition","timeOffMachine","state","SelectPolicyTypeContextual","guard","TimeOffPolicyDetailContextual","ViewHolidayEmployeesContextual","PolicyDetailsFormContextual","HolidaySelectionFormContextual","AddEmployeesToPolicyContextual","PolicySettingsContextual","EditPolicySettingsContextual","AddEmployeesHolidayContextual","ViewHolidayScheduleContextual","EditHolidaySelectionFormContextual"],"mappings":"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"}
1
+ {"version":3,"file":"timeOffStateMachine.js","sources":["../../../../src/components/TimeOff/TimeOffFlow/timeOffStateMachine.ts"],"sourcesContent":["import { transition, reduce, state, guard } from 'robot3'\nimport {\n PolicyListContextual,\n SelectPolicyTypeContextual,\n PolicyDetailsFormContextual,\n PolicySettingsContextual,\n EditPolicySettingsContextual,\n AddEmployeesToPolicyContextual,\n TimeOffPolicyDetailContextual,\n HolidaySelectionFormContextual,\n EditHolidaySelectionFormContextual,\n AddEmployeesHolidayContextual,\n ViewHolidayEmployeesContextual,\n ViewHolidayScheduleContextual,\n type TimeOffFlowContextInterface,\n type TimeOffFlowAlert,\n type AddEmployeesSource,\n} from './TimeOffFlowComponents'\nimport type { TimeOffPolicyType } from './timeOffPolicyTypes'\nimport { componentEvents } from '@/shared/constants'\nimport type { MachineTransition } from '@/types/Helpers'\n\ntype PolicyTypePayload = { policyType: 'sick' | 'vacation' | 'holiday' }\ntype PolicyCreatedPayload = { policyId: string; accrualMethod?: string }\ntype ErrorPayload = { alert?: TimeOffFlowAlert }\ntype ViewPolicyPayload = { policyId: string; policyType: TimeOffPolicyType }\ntype PolicyIdPayload = { policyId: string }\n\nfunction isSickOrVacation(_ctx: TimeOffFlowContextInterface, ev: { payload: PolicyTypePayload }) {\n return ev.payload.policyType === 'sick' || ev.payload.policyType === 'vacation'\n}\n\nfunction isHoliday(_ctx: TimeOffFlowContextInterface, ev: { payload: PolicyTypePayload }) {\n return ev.payload.policyType === 'holiday'\n}\n\nfunction isNonHolidayView(_ctx: TimeOffFlowContextInterface, ev: { payload: ViewPolicyPayload }) {\n return ev.payload.policyType !== 'holiday'\n}\n\nfunction isHolidayView(_ctx: TimeOffFlowContextInterface, ev: { payload: ViewPolicyPayload }) {\n return ev.payload.policyType === 'holiday'\n}\n\nfunction isUnlimitedPolicy(\n _ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyCreatedPayload },\n) {\n return ev.payload.accrualMethod === 'unlimited'\n}\n\nfunction addEmployeesSourceIs(source: AddEmployeesSource) {\n return (ctx: TimeOffFlowContextInterface) => ctx.addEmployeesSource === source\n}\n\nconst cancelToPolicyList = transition(\n componentEvents.CANCEL,\n 'policyList',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyListContextual,\n policyId: undefined,\n policyType: undefined,\n alerts: undefined,\n }),\n ),\n)\n\nconst backToListTransition = transition(\n componentEvents.TIME_OFF_BACK_TO_LIST,\n 'policyList',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyListContextual,\n policyId: undefined,\n policyType: undefined,\n alerts: undefined,\n }),\n ),\n)\n\nexport const timeOffMachine = {\n policyList: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_CREATE_POLICY,\n 'policyTypeSelector',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: SelectPolicyTypeContextual,\n policyId: undefined,\n policyType: undefined,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_VIEW_POLICY,\n 'viewTimeOffPolicyDetail',\n guard(isNonHolidayView),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ViewPolicyPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n policyId: ev.payload.policyId,\n policyType: ev.payload.policyType,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_VIEW_POLICY,\n 'viewHolidayEmployees',\n guard(isHolidayView),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ViewPolicyPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n policyId: ev.payload.policyId,\n policyType: ev.payload.policyType,\n alerts: undefined,\n }),\n ),\n ),\n ),\n\n policyTypeSelector: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_TYPE_SELECTED,\n 'policyDetailsForm',\n guard(isSickOrVacation),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyTypePayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n policyType: ev.payload.policyType,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_TYPE_SELECTED,\n 'holidaySelectionForm',\n guard(isHoliday),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyTypePayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: HolidaySelectionFormContextual,\n policyType: ev.payload.policyType,\n alerts: undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n policyDetailsForm: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_DETAILS_DONE,\n 'addEmployeesToPolicy',\n guard(isUnlimitedPolicy),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyCreatedPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesToPolicyContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n addEmployeesSource: 'policyDetailsForm',\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_DETAILS_DONE,\n 'policySettings',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyCreatedPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicySettingsContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_CREATE_ERROR,\n 'policyTypeSelector',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: SelectPolicyTypeContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n policySettings: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_DONE,\n 'addEmployeesToPolicy',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesToPolicyContextual,\n alerts: undefined,\n addEmployeesSource: 'policySettings',\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_BACK,\n 'policyDetailsForm',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_ERROR,\n 'policyDetailsForm',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n addEmployeesToPolicy: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_DONE,\n 'viewTimeOffPolicyDetail',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_BACK,\n 'viewTimeOffPolicyDetail',\n guard(addEmployeesSourceIs('viewTimeOffPolicyDetail')),\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_BACK,\n 'policyDetailsForm',\n guard(addEmployeesSourceIs('policyDetailsForm')),\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_BACK,\n 'policySettings',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicySettingsContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_ERROR,\n 'policyDetailsForm',\n guard(addEmployeesSourceIs('policyDetailsForm')),\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_ERROR,\n 'policySettings',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicySettingsContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n viewTimeOffPolicyDetail: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_ADD_EMPLOYEES_TO_POLICY,\n 'addEmployeesToPolicy',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyIdPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesToPolicyContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n addEmployeesSource: 'viewTimeOffPolicyDetail',\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_EDIT_POLICY,\n 'editPolicyDetailsForm',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyIdPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: PolicyDetailsFormContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_CHANGE_SETTINGS,\n 'editPolicySettings',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyIdPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: EditPolicySettingsContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n }),\n ),\n ),\n backToListTransition,\n ),\n\n // Distinct from `policyDetailsForm` (the create-flow step) so that DONE\n // returns to the policy detail view rather than continuing into the\n // create flow's settings step.\n editPolicyDetailsForm: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_DETAILS_DONE,\n 'viewTimeOffPolicyDetail',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: PolicyCreatedPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n policyId: ev.payload.policyId,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.CANCEL,\n 'viewTimeOffPolicyDetail',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n }),\n ),\n ),\n ),\n\n // Distinct from `policySettings` (the create-flow step) so that DONE/BACK\n // return to the policy detail view instead of routing into the create\n // flow's add-employees / details-form steps.\n editPolicySettings: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_DONE,\n 'viewTimeOffPolicyDetail',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_POLICY_SETTINGS_BACK,\n 'viewTimeOffPolicyDetail',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: TimeOffPolicyDetailContextual,\n alerts: undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n holidaySelectionForm: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_HOLIDAY_SELECTION_DONE,\n 'addEmployeesHoliday',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesHolidayContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_HOLIDAY_CREATE_ERROR,\n 'policyTypeSelector',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: SelectPolicyTypeContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n addEmployeesHoliday: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_HOLIDAY_ADD_EMPLOYEES_DONE,\n 'viewHolidayEmployees',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_HOLIDAY_ADD_EMPLOYEES_ERROR,\n 'holidaySelectionForm',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: HolidaySelectionFormContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.CANCEL,\n 'viewHolidayEmployees',\n guard(addEmployeesSourceIs('viewHolidayEmployees')),\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n alerts: undefined,\n addEmployeesSource: undefined,\n }),\n ),\n ),\n cancelToPolicyList,\n ),\n\n viewHolidayEmployees: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_HOLIDAY_ADD_EMPLOYEES,\n 'addEmployeesHoliday',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesHolidayContextual,\n alerts: undefined,\n addEmployeesSource: 'viewHolidayEmployees',\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_VIEW_HOLIDAY_SCHEDULE,\n 'viewHolidaySchedule',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayScheduleContextual,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_EDIT_HOLIDAY_POLICY,\n 'editHolidaySelectionForm',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: EditHolidaySelectionFormContextual,\n alerts: undefined,\n }),\n ),\n ),\n backToListTransition,\n ),\n\n viewHolidaySchedule: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_VIEW_HOLIDAY_EMPLOYEES,\n 'viewHolidayEmployees',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_HOLIDAY_ADD_EMPLOYEES,\n 'addEmployeesHoliday',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: AddEmployeesHolidayContextual,\n alerts: undefined,\n addEmployeesSource: 'viewHolidayEmployees',\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_EDIT_HOLIDAY_POLICY,\n 'editHolidaySelectionForm',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: EditHolidaySelectionFormContextual,\n alerts: undefined,\n }),\n ),\n ),\n backToListTransition,\n ),\n\n // Distinct from `holidaySelectionForm` (the create-flow step) so that\n // DONE returns to the holiday detail view instead of routing into\n // `addEmployeesHoliday`.\n editHolidaySelectionForm: state<MachineTransition>(\n transition(\n componentEvents.TIME_OFF_HOLIDAY_SELECTION_EDIT_DONE,\n 'viewHolidayEmployees',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n alerts: undefined,\n }),\n ),\n ),\n transition(\n componentEvents.TIME_OFF_HOLIDAY_CREATE_ERROR,\n 'viewHolidayEmployees',\n reduce(\n (\n ctx: TimeOffFlowContextInterface,\n ev: { payload: ErrorPayload },\n ): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n alerts: ev.payload.alert ? [ev.payload.alert] : undefined,\n }),\n ),\n ),\n transition(\n componentEvents.CANCEL,\n 'viewHolidayEmployees',\n reduce(\n (ctx: TimeOffFlowContextInterface): TimeOffFlowContextInterface => ({\n ...ctx,\n component: ViewHolidayEmployeesContextual,\n alerts: undefined,\n }),\n ),\n ),\n ),\n\n final: state<MachineTransition>(),\n}\n"],"names":["isSickOrVacation","_ctx","ev","isHoliday","isNonHolidayView","isHolidayView","isUnlimitedPolicy","addEmployeesSourceIs","source","ctx","cancelToPolicyList","transition","componentEvents","reduce","PolicyListContextual","backToListTransition","timeOffMachine","state","SelectPolicyTypeContextual","guard","TimeOffPolicyDetailContextual","ViewHolidayEmployeesContextual","PolicyDetailsFormContextual","HolidaySelectionFormContextual","AddEmployeesToPolicyContextual","PolicySettingsContextual","EditPolicySettingsContextual","AddEmployeesHolidayContextual","ViewHolidayScheduleContextual","EditHolidaySelectionFormContextual"],"mappings":"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"}
@@ -1,16 +1,16 @@
1
1
  import { jsx as u } from "react/jsx-runtime";
2
- import { useCallback as p } from "react";
3
- import { useTimeOffPoliciesCreateMutation as O } from "@gusto/embedded-api/react-query/timeOffPoliciesCreate";
4
- import { useTimeOffPoliciesUpdateMutation as U } from "@gusto/embedded-api/react-query/timeOffPoliciesUpdate";
5
- import { useTimeOffPoliciesGetSuspense as w } from "@gusto/embedded-api/react-query/timeOffPoliciesGet";
6
- import { useQueryClient as g } from "@tanstack/react-query";
7
- import { PolicyConfigurationFormPresentation as y } from "./PolicyConfigurationFormPresentation.js";
8
- import { BaseComponent as b } from "../../../Base/Base.js";
9
- import { useBase as R } from "../../../Base/useBase.js";
10
- import { componentEvents as m } from "../../../../shared/constants.js";
11
- import { formatMonthDay as v } from "../../../../helpers/dateFormatting.js";
12
- function J(e) {
13
- return /* @__PURE__ */ u(b, { ...e, children: /* @__PURE__ */ u(F, { ...e }) });
2
+ import { useCallback as m } from "react";
3
+ import { useTimeOffPoliciesCreateMutation as g } from "@gusto/embedded-api/react-query/timeOffPoliciesCreate";
4
+ import { useTimeOffPoliciesUpdateMutation as w } from "@gusto/embedded-api/react-query/timeOffPoliciesUpdate";
5
+ import { useTimeOffPoliciesGetSuspense as b } from "@gusto/embedded-api/react-query/timeOffPoliciesGet";
6
+ import { useQueryClient as E } from "@tanstack/react-query";
7
+ import { PolicyConfigurationFormPresentation as R } from "./PolicyConfigurationFormPresentation.js";
8
+ import { BaseComponent as T } from "../../../Base/Base.js";
9
+ import { useBase as v } from "../../../Base/useBase.js";
10
+ import { componentEvents as p } from "../../../../shared/constants.js";
11
+ import { formatMonthDay as M } from "../../../../helpers/dateFormatting.js";
12
+ function V(e) {
13
+ return /* @__PURE__ */ u(T, { ...e, children: /* @__PURE__ */ u(q, { ...e }) });
14
14
  }
15
15
  function D(e) {
16
16
  switch (e.accrualMethod) {
@@ -24,25 +24,25 @@ function D(e) {
24
24
  return e.accrualMethodFixed === "per_pay_period" ? "per_pay_period" : e.resetDateType === "per_anniversary_year" ? "per_anniversary_year" : "per_calendar_year";
25
25
  }
26
26
  }
27
- const E = [
27
+ const S = [
28
28
  "per_hour_paid",
29
29
  "per_hour_paid_no_overtime",
30
30
  "per_hour_worked",
31
31
  "per_hour_worked_no_overtime"
32
32
  ];
33
- function T(e) {
33
+ function k(e) {
34
34
  const r = { name: e.name }, t = e.accrualMethod;
35
- if (t === "unlimited" ? r.accrualMethod = "unlimited" : E.includes(t) ? (r.accrualMethod = "per_hour_paid", r.allPaidHours = t === "per_hour_paid" || t === "per_hour_paid_no_overtime", r.includeOvertime = t === "per_hour_paid" || t === "per_hour_worked", e.accrualRate != null && (r.accrualRate = Number(e.accrualRate)), e.accrualRateUnit != null && (r.accrualRateUnit = Number(e.accrualRateUnit)), e.policyResetDate && (r.resetDateType = "per_calendar_year")) : (r.accrualMethod = "per_calendar_year", t === "per_pay_period" ? (r.accrualMethodFixed = "per_pay_period", r.resetDateType = e.policyResetDate ? "per_calendar_year" : "per_anniversary_year") : (r.accrualMethodFixed = "all_at_once", r.resetDateType = t === "per_anniversary_year" ? "per_anniversary_year" : "per_calendar_year"), e.accrualRate != null && (r.accrualRate = Number(e.accrualRate))), e.policyResetDate) {
35
+ if (t === "unlimited" ? r.accrualMethod = "unlimited" : S.includes(t) ? (r.accrualMethod = "per_hour_paid", r.allPaidHours = t === "per_hour_paid" || t === "per_hour_paid_no_overtime", r.includeOvertime = t === "per_hour_paid" || t === "per_hour_worked", e.accrualRate != null && (r.accrualRate = Number(e.accrualRate)), e.accrualRateUnit != null && (r.accrualRateUnit = Number(e.accrualRateUnit)), e.policyResetDate && (r.resetDateType = "per_calendar_year")) : (r.accrualMethod = "per_calendar_year", t === "per_pay_period" ? (r.accrualMethodFixed = "per_pay_period", r.resetDateType = e.policyResetDate ? "per_calendar_year" : "per_anniversary_year") : (r.accrualMethodFixed = "all_at_once", r.resetDateType = t === "per_anniversary_year" ? "per_anniversary_year" : "per_calendar_year"), e.accrualRate != null && (r.accrualRate = Number(e.accrualRate))), e.policyResetDate) {
36
36
  const [a, n] = e.policyResetDate.split("-").map(Number);
37
37
  a && (r.resetMonth = a), n && (r.resetDay = n);
38
38
  }
39
39
  return r;
40
40
  }
41
- function S(e, r) {
41
+ function A(e, r) {
42
42
  const t = D(e), a = { name: e.name, policyType: r, accrualMethod: t };
43
43
  if (t === "unlimited")
44
44
  return { ...a, complete: !0 };
45
- const n = t === "per_hour_paid" || t === "per_hour_paid_no_overtime" || t === "per_hour_worked" || t === "per_hour_worked_no_overtime", o = e.resetDateType === "per_calendar_year" ? v(e.resetMonth, e.resetDay) : null;
45
+ const n = t === "per_hour_paid" || t === "per_hour_paid_no_overtime" || t === "per_hour_worked" || t === "per_hour_worked_no_overtime", o = e.resetDateType === "per_calendar_year" ? M(e.resetMonth, e.resetDay) : null;
46
46
  return n ? {
47
47
  ...a,
48
48
  accrualRate: e.accrualRate != null ? String(e.accrualRate) : void 0,
@@ -57,7 +57,7 @@ function S(e, r) {
57
57
  complete: !1
58
58
  };
59
59
  }
60
- function k(e, r, t) {
60
+ function F(e, r, t) {
61
61
  const a = D(e), n = {
62
62
  name: e.name,
63
63
  policyType: r,
@@ -69,101 +69,101 @@ function k(e, r, t) {
69
69
  ...n,
70
70
  accrualRate: null,
71
71
  accrualRateUnit: null,
72
- policyResetDate: null,
73
- complete: !0
72
+ policyResetDate: null
74
73
  };
75
- const o = a === "per_hour_paid" || a === "per_hour_paid_no_overtime" || a === "per_hour_worked" || a === "per_hour_worked_no_overtime", i = e.resetDateType === "per_calendar_year" ? v(e.resetMonth, e.resetDay) : null;
74
+ const o = a === "per_hour_paid" || a === "per_hour_paid_no_overtime" || a === "per_hour_worked" || a === "per_hour_worked_no_overtime", c = e.resetDateType === "per_calendar_year" ? M(e.resetMonth, e.resetDay) : null;
76
75
  return o ? {
77
76
  ...n,
78
77
  accrualRate: e.accrualRate != null ? String(e.accrualRate) : void 0,
79
78
  accrualRateUnit: e.accrualRateUnit != null ? String(e.accrualRateUnit) : void 0,
80
- policyResetDate: i
79
+ policyResetDate: c
81
80
  } : {
82
81
  ...n,
83
82
  accrualRate: e.accrualRate != null ? String(e.accrualRate) : void 0,
84
83
  accrualRateUnit: null,
85
- policyResetDate: i
84
+ policyResetDate: c
86
85
  };
87
86
  }
88
- function F({ companyId: e, policyType: r, defaultValues: t, policyId: a }) {
87
+ function q({ companyId: e, policyType: r, defaultValues: t, policyId: a }) {
89
88
  return a ? /* @__PURE__ */ u(
90
- A,
89
+ H,
91
90
  {
92
91
  companyId: e,
93
92
  policyType: r,
94
93
  policyId: a,
95
94
  defaultValues: t
96
95
  }
97
- ) : /* @__PURE__ */ u(q, { companyId: e, policyType: r, defaultValues: t });
96
+ ) : /* @__PURE__ */ u(N, { companyId: e, policyType: r, defaultValues: t });
98
97
  }
99
- function q({ companyId: e, policyType: r, defaultValues: t }) {
100
- const { onEvent: a, baseSubmitHandler: n } = R(), { mutateAsync: o, isPending: i } = O(), d = p(
98
+ function N({ companyId: e, policyType: r, defaultValues: t }) {
99
+ const { onEvent: a, baseSubmitHandler: n } = v(), { mutateAsync: o, isPending: c } = g(), d = m(
101
100
  async (s) => {
102
101
  await n(s, async () => {
103
- const c = S(s, r), _ = await o({
102
+ const i = A(s, r), _ = await o({
104
103
  request: {
105
104
  companyUuid: e,
106
- timeOffPolicyRequest: c
105
+ timeOffPolicyRequest: i
107
106
  }
108
107
  });
109
- a(m.TIME_OFF_POLICY_DETAILS_DONE, {
108
+ a(p.TIME_OFF_POLICY_DETAILS_DONE, {
110
109
  policyId: _.timeOffPolicy.uuid,
111
- accrualMethod: c.accrualMethod
110
+ accrualMethod: i.accrualMethod
112
111
  });
113
112
  });
114
113
  },
115
114
  [n, e, o, a, r]
116
- ), l = p(() => {
117
- a(m.CANCEL);
115
+ ), l = m(() => {
116
+ a(p.CANCEL);
118
117
  }, [a]);
119
118
  return /* @__PURE__ */ u(
120
- y,
119
+ R,
121
120
  {
122
121
  onContinue: d,
123
122
  onCancel: l,
124
123
  defaultValues: t,
125
- isPending: i
124
+ isPending: c
126
125
  }
127
126
  );
128
127
  }
129
- function A({ companyId: e, policyType: r, policyId: t, defaultValues: a }) {
130
- const { onEvent: n, baseSubmitHandler: o } = R(), i = g(), { data: d } = w({
128
+ function H({ companyId: e, policyType: r, policyId: t, defaultValues: a }) {
129
+ const { onEvent: n, baseSubmitHandler: o } = v(), c = E(), { data: d } = b({
131
130
  timeOffPolicyUuid: t
132
- }), { mutateAsync: l, isPending: s } = U(), c = d.timeOffPolicy;
133
- if (!c) throw new Error("Unexpected response: missing timeOffPolicy");
134
- const _ = c.version ?? "", M = { ...T(c), ...a }, C = p(
135
- async (f) => {
136
- await o(f, async () => {
137
- const h = k(f, r, _);
131
+ }), { mutateAsync: l, isPending: s } = w(), i = d.timeOffPolicy;
132
+ if (!i) throw new Error("Unexpected response: missing timeOffPolicy");
133
+ const _ = i.version ?? "", f = k(i), C = { ...f, ...a }, P = i.complete ? f.accrualMethod === "unlimited" ? "unlimited" : "accrual_based" : void 0, O = m(
134
+ async (h) => {
135
+ await o(h, async () => {
136
+ const y = F(h, r, _);
138
137
  await l({
139
138
  request: {
140
139
  timeOffPolicyUuid: t,
141
- requestBody: h
140
+ requestBody: y
142
141
  }
143
- }), i.invalidateQueries({
142
+ }), c.invalidateQueries({
144
143
  queryKey: ["@gusto/embedded-api", "timeOffPolicies", "get"]
145
- }), n(m.TIME_OFF_POLICY_DETAILS_DONE, {
144
+ }), n(p.TIME_OFF_POLICY_DETAILS_DONE, {
146
145
  policyId: t,
147
- accrualMethod: h.accrualMethod
146
+ accrualMethod: y.accrualMethod
148
147
  });
149
148
  });
150
149
  },
151
- [o, t, r, _, l, i, n]
152
- ), P = p(() => {
153
- n(m.CANCEL);
150
+ [o, t, r, _, l, c, n]
151
+ ), U = m(() => {
152
+ n(p.CANCEL);
154
153
  }, [n]);
155
154
  return /* @__PURE__ */ u(
156
- y,
155
+ R,
157
156
  {
158
- onContinue: C,
159
- onCancel: P,
160
- defaultValues: M,
161
- editingPolicyName: c.name,
162
- isPending: s
157
+ onContinue: O,
158
+ onCancel: U,
159
+ defaultValues: C,
160
+ editingPolicyName: i.name,
161
+ isPending: s,
162
+ lockedAccrualCategory: P
163
163
  }
164
164
  );
165
165
  }
166
166
  export {
167
- J as PolicyConfigurationForm
167
+ V as PolicyConfigurationForm
168
168
  };
169
169
  //# sourceMappingURL=PolicyConfigurationForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PolicyConfigurationForm.js","sources":["../../../../../src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.tsx"],"sourcesContent":["import { useCallback } from 'react'\nimport { useTimeOffPoliciesCreateMutation } from '@gusto/embedded-api/react-query/timeOffPoliciesCreate'\nimport { useTimeOffPoliciesUpdateMutation } from '@gusto/embedded-api/react-query/timeOffPoliciesUpdate'\nimport { useTimeOffPoliciesGetSuspense } from '@gusto/embedded-api/react-query/timeOffPoliciesGet'\nimport type { TimeOffPolicyRequest } from '@gusto/embedded-api/models/components/timeoffpolicyrequest'\nimport type { TimeOffPolicy } from '@gusto/embedded-api/models/components/timeoffpolicy'\nimport type { PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody } from '@gusto/embedded-api/models/operations/putv1timeoffpoliciestimeoffpolicyuuid'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { PolicyConfigurationFormPresentation } from './PolicyConfigurationFormPresentation'\nimport type { PolicyConfigurationFormData } from './PolicyConfigurationFormTypes'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { formatMonthDay } from '@/helpers/dateFormatting'\n\nexport interface PolicyConfigurationFormProps extends BaseComponentInterface<'Company.TimeOff.CreateTimeOffPolicy'> {\n companyId: string\n policyType: 'sick' | 'vacation'\n policyId?: string\n defaultValues?: Partial<PolicyConfigurationFormData>\n}\n\nexport function PolicyConfigurationForm(props: PolicyConfigurationFormProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction resolveApiAccrualMethod(\n data: PolicyConfigurationFormData,\n): TimeOffPolicyRequest['accrualMethod'] {\n switch (data.accrualMethod) {\n case 'unlimited':\n return 'unlimited'\n\n case 'per_hour_paid': {\n const paid = data.allPaidHours ?? false\n const overtime = data.includeOvertime ?? false\n\n if (paid && overtime) return 'per_hour_paid'\n if (paid && !overtime) return 'per_hour_paid_no_overtime'\n if (!paid && overtime) return 'per_hour_worked'\n return 'per_hour_worked_no_overtime'\n }\n\n case 'per_calendar_year': {\n if (data.accrualMethodFixed === 'per_pay_period') return 'per_pay_period'\n\n return data.resetDateType === 'per_anniversary_year'\n ? 'per_anniversary_year'\n : 'per_calendar_year'\n }\n }\n}\n\nconst HOURLY_API_METHODS = [\n 'per_hour_paid',\n 'per_hour_paid_no_overtime',\n 'per_hour_worked',\n 'per_hour_worked_no_overtime',\n]\n\nfunction deriveFormDefaults(policy: TimeOffPolicy): Partial<PolicyConfigurationFormData> {\n const defaults: Partial<PolicyConfigurationFormData> = { name: policy.name }\n const apiMethod = policy.accrualMethod\n\n if (apiMethod === 'unlimited') {\n defaults.accrualMethod = 'unlimited'\n } else if (HOURLY_API_METHODS.includes(apiMethod)) {\n defaults.accrualMethod = 'per_hour_paid'\n defaults.allPaidHours =\n apiMethod === 'per_hour_paid' || apiMethod === 'per_hour_paid_no_overtime'\n defaults.includeOvertime = apiMethod === 'per_hour_paid' || apiMethod === 'per_hour_worked'\n\n if (policy.accrualRate != null) defaults.accrualRate = Number(policy.accrualRate)\n if (policy.accrualRateUnit != null) defaults.accrualRateUnit = Number(policy.accrualRateUnit)\n\n if (policy.policyResetDate) {\n defaults.resetDateType = 'per_calendar_year'\n }\n } else {\n defaults.accrualMethod = 'per_calendar_year'\n\n if (apiMethod === 'per_pay_period') {\n defaults.accrualMethodFixed = 'per_pay_period'\n defaults.resetDateType = policy.policyResetDate ? 'per_calendar_year' : 'per_anniversary_year'\n } else {\n defaults.accrualMethodFixed = 'all_at_once'\n defaults.resetDateType =\n apiMethod === 'per_anniversary_year' ? 'per_anniversary_year' : 'per_calendar_year'\n }\n\n if (policy.accrualRate != null) defaults.accrualRate = Number(policy.accrualRate)\n }\n\n if (policy.policyResetDate) {\n const [month, day] = policy.policyResetDate.split('-').map(Number)\n if (month) defaults.resetMonth = month\n if (day) defaults.resetDay = day\n }\n\n return defaults\n}\n\nfunction buildCreateRequestBody(\n data: PolicyConfigurationFormData,\n policyType: 'sick' | 'vacation',\n): TimeOffPolicyRequest {\n const accrualMethod = resolveApiAccrualMethod(data)\n\n const base: TimeOffPolicyRequest = { name: data.name, policyType, accrualMethod }\n\n if (accrualMethod === 'unlimited') {\n return { ...base, complete: true }\n }\n\n const isHourly =\n accrualMethod === 'per_hour_paid' ||\n accrualMethod === 'per_hour_paid_no_overtime' ||\n accrualMethod === 'per_hour_worked' ||\n accrualMethod === 'per_hour_worked_no_overtime'\n\n const policyResetDate =\n data.resetDateType === 'per_calendar_year'\n ? formatMonthDay(data.resetMonth, data.resetDay)\n : null\n\n if (isHourly) {\n return {\n ...base,\n accrualRate: data.accrualRate != null ? String(data.accrualRate) : undefined,\n accrualRateUnit: data.accrualRateUnit != null ? String(data.accrualRateUnit) : undefined,\n policyResetDate,\n complete: false,\n }\n }\n\n return {\n ...base,\n accrualRate: data.accrualRate != null ? String(data.accrualRate) : undefined,\n accrualRateUnit: null,\n policyResetDate,\n complete: false,\n }\n}\n\nfunction buildUpdateRequestBody(\n data: PolicyConfigurationFormData,\n policyType: 'sick' | 'vacation',\n version: string,\n): PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody {\n const accrualMethod = resolveApiAccrualMethod(data)\n\n const base: PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody = {\n name: data.name,\n policyType,\n accrualMethod,\n version,\n }\n\n if (accrualMethod === 'unlimited') {\n return {\n ...base,\n accrualRate: null,\n accrualRateUnit: null,\n policyResetDate: null,\n complete: true,\n }\n }\n\n const isHourly =\n accrualMethod === 'per_hour_paid' ||\n accrualMethod === 'per_hour_paid_no_overtime' ||\n accrualMethod === 'per_hour_worked' ||\n accrualMethod === 'per_hour_worked_no_overtime'\n\n const policyResetDate =\n data.resetDateType === 'per_calendar_year'\n ? formatMonthDay(data.resetMonth, data.resetDay)\n : null\n\n if (isHourly) {\n return {\n ...base,\n accrualRate: data.accrualRate != null ? String(data.accrualRate) : undefined,\n accrualRateUnit: data.accrualRateUnit != null ? String(data.accrualRateUnit) : undefined,\n policyResetDate,\n }\n }\n\n return {\n ...base,\n accrualRate: data.accrualRate != null ? String(data.accrualRate) : undefined,\n accrualRateUnit: null,\n policyResetDate,\n }\n}\n\nfunction Root({ companyId, policyType, defaultValues, policyId }: PolicyConfigurationFormProps) {\n if (policyId) {\n return (\n <EditRoot\n companyId={companyId}\n policyType={policyType}\n policyId={policyId}\n defaultValues={defaultValues}\n />\n )\n }\n return <CreateRoot companyId={companyId} policyType={policyType} defaultValues={defaultValues} />\n}\n\ninterface CreateRootProps {\n companyId: string\n policyType: 'sick' | 'vacation'\n defaultValues?: Partial<PolicyConfigurationFormData>\n}\n\nfunction CreateRoot({ companyId, policyType, defaultValues }: CreateRootProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n\n const { mutateAsync: createTimeOffPolicy, isPending } = useTimeOffPoliciesCreateMutation()\n\n const handleContinue = useCallback(\n async (data: PolicyConfigurationFormData) => {\n await baseSubmitHandler(data, async () => {\n const requestBody = buildCreateRequestBody(data, policyType)\n\n const response = await createTimeOffPolicy({\n request: {\n companyUuid: companyId,\n timeOffPolicyRequest: requestBody,\n },\n })\n\n onEvent(componentEvents.TIME_OFF_POLICY_DETAILS_DONE, {\n policyId: response.timeOffPolicy!.uuid,\n accrualMethod: requestBody.accrualMethod,\n })\n })\n },\n [baseSubmitHandler, companyId, createTimeOffPolicy, onEvent, policyType],\n )\n\n const handleCancel = useCallback(() => {\n onEvent(componentEvents.CANCEL)\n }, [onEvent])\n\n return (\n <PolicyConfigurationFormPresentation\n onContinue={handleContinue}\n onCancel={handleCancel}\n defaultValues={defaultValues}\n isPending={isPending}\n />\n )\n}\n\ninterface EditRootProps {\n companyId: string\n policyType: 'sick' | 'vacation'\n policyId: string\n defaultValues?: Partial<PolicyConfigurationFormData>\n}\n\nfunction EditRoot({ companyId, policyType, policyId, defaultValues }: EditRootProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n const queryClient = useQueryClient()\n\n const { data: policyResponse } = useTimeOffPoliciesGetSuspense({\n timeOffPolicyUuid: policyId,\n })\n\n const { mutateAsync: updateTimeOffPolicy, isPending } = useTimeOffPoliciesUpdateMutation()\n\n const policy = policyResponse.timeOffPolicy\n if (!policy) throw new Error('Unexpected response: missing timeOffPolicy')\n\n const version = policy.version ?? ''\n const fetchedDefaults = deriveFormDefaults(policy)\n const mergedDefaults = { ...fetchedDefaults, ...defaultValues }\n\n const handleContinue = useCallback(\n async (data: PolicyConfigurationFormData) => {\n await baseSubmitHandler(data, async () => {\n const requestBody = buildUpdateRequestBody(data, policyType, version)\n\n await updateTimeOffPolicy({\n request: {\n timeOffPolicyUuid: policyId,\n requestBody,\n },\n })\n\n void queryClient.invalidateQueries({\n queryKey: ['@gusto/embedded-api', 'timeOffPolicies', 'get'],\n })\n\n onEvent(componentEvents.TIME_OFF_POLICY_DETAILS_DONE, {\n policyId,\n accrualMethod: requestBody.accrualMethod,\n })\n })\n },\n [baseSubmitHandler, policyId, policyType, version, updateTimeOffPolicy, queryClient, onEvent],\n )\n\n const handleCancel = useCallback(() => {\n onEvent(componentEvents.CANCEL)\n }, [onEvent])\n\n return (\n <PolicyConfigurationFormPresentation\n onContinue={handleContinue}\n onCancel={handleCancel}\n defaultValues={mergedDefaults}\n editingPolicyName={policy.name}\n isPending={isPending}\n />\n )\n}\n"],"names":["PolicyConfigurationForm","props","jsx","BaseComponent","Root","resolveApiAccrualMethod","data","paid","overtime","HOURLY_API_METHODS","deriveFormDefaults","policy","defaults","apiMethod","month","day","buildCreateRequestBody","policyType","accrualMethod","base","isHourly","policyResetDate","formatMonthDay","buildUpdateRequestBody","version","companyId","defaultValues","policyId","EditRoot","CreateRoot","onEvent","baseSubmitHandler","useBase","createTimeOffPolicy","isPending","useTimeOffPoliciesCreateMutation","handleContinue","useCallback","requestBody","response","componentEvents","handleCancel","PolicyConfigurationFormPresentation","queryClient","useQueryClient","policyResponse","useTimeOffPoliciesGetSuspense","updateTimeOffPolicy","useTimeOffPoliciesUpdateMutation","mergedDefaults"],"mappings":"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"}
1
+ {"version":3,"file":"PolicyConfigurationForm.js","sources":["../../../../../src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.tsx"],"sourcesContent":["import { useCallback } from 'react'\nimport { useTimeOffPoliciesCreateMutation } from '@gusto/embedded-api/react-query/timeOffPoliciesCreate'\nimport { useTimeOffPoliciesUpdateMutation } from '@gusto/embedded-api/react-query/timeOffPoliciesUpdate'\nimport { useTimeOffPoliciesGetSuspense } from '@gusto/embedded-api/react-query/timeOffPoliciesGet'\nimport type { TimeOffPolicyRequest } from '@gusto/embedded-api/models/components/timeoffpolicyrequest'\nimport type { TimeOffPolicy } from '@gusto/embedded-api/models/components/timeoffpolicy'\nimport type { PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody } from '@gusto/embedded-api/models/operations/putv1timeoffpoliciestimeoffpolicyuuid'\nimport { useQueryClient } from '@tanstack/react-query'\nimport { PolicyConfigurationFormPresentation } from './PolicyConfigurationFormPresentation'\nimport type { PolicyConfigurationFormData } from './PolicyConfigurationFormTypes'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { componentEvents } from '@/shared/constants'\nimport { formatMonthDay } from '@/helpers/dateFormatting'\n\nexport interface PolicyConfigurationFormProps extends BaseComponentInterface<'Company.TimeOff.CreateTimeOffPolicy'> {\n companyId: string\n policyType: 'sick' | 'vacation'\n policyId?: string\n defaultValues?: Partial<PolicyConfigurationFormData>\n}\n\nexport function PolicyConfigurationForm(props: PolicyConfigurationFormProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props} />\n </BaseComponent>\n )\n}\n\nfunction resolveApiAccrualMethod(\n data: PolicyConfigurationFormData,\n): TimeOffPolicyRequest['accrualMethod'] {\n switch (data.accrualMethod) {\n case 'unlimited':\n return 'unlimited'\n\n case 'per_hour_paid': {\n const paid = data.allPaidHours ?? false\n const overtime = data.includeOvertime ?? false\n\n if (paid && overtime) return 'per_hour_paid'\n if (paid && !overtime) return 'per_hour_paid_no_overtime'\n if (!paid && overtime) return 'per_hour_worked'\n return 'per_hour_worked_no_overtime'\n }\n\n case 'per_calendar_year': {\n if (data.accrualMethodFixed === 'per_pay_period') return 'per_pay_period'\n\n return data.resetDateType === 'per_anniversary_year'\n ? 'per_anniversary_year'\n : 'per_calendar_year'\n }\n }\n}\n\nconst HOURLY_API_METHODS = [\n 'per_hour_paid',\n 'per_hour_paid_no_overtime',\n 'per_hour_worked',\n 'per_hour_worked_no_overtime',\n]\n\nfunction deriveFormDefaults(policy: TimeOffPolicy): Partial<PolicyConfigurationFormData> {\n const defaults: Partial<PolicyConfigurationFormData> = { name: policy.name }\n const apiMethod = policy.accrualMethod\n\n if (apiMethod === 'unlimited') {\n defaults.accrualMethod = 'unlimited'\n } else if (HOURLY_API_METHODS.includes(apiMethod)) {\n defaults.accrualMethod = 'per_hour_paid'\n defaults.allPaidHours =\n apiMethod === 'per_hour_paid' || apiMethod === 'per_hour_paid_no_overtime'\n defaults.includeOvertime = apiMethod === 'per_hour_paid' || apiMethod === 'per_hour_worked'\n\n if (policy.accrualRate != null) defaults.accrualRate = Number(policy.accrualRate)\n if (policy.accrualRateUnit != null) defaults.accrualRateUnit = Number(policy.accrualRateUnit)\n\n if (policy.policyResetDate) {\n defaults.resetDateType = 'per_calendar_year'\n }\n } else {\n defaults.accrualMethod = 'per_calendar_year'\n\n if (apiMethod === 'per_pay_period') {\n defaults.accrualMethodFixed = 'per_pay_period'\n defaults.resetDateType = policy.policyResetDate ? 'per_calendar_year' : 'per_anniversary_year'\n } else {\n defaults.accrualMethodFixed = 'all_at_once'\n defaults.resetDateType =\n apiMethod === 'per_anniversary_year' ? 'per_anniversary_year' : 'per_calendar_year'\n }\n\n if (policy.accrualRate != null) defaults.accrualRate = Number(policy.accrualRate)\n }\n\n if (policy.policyResetDate) {\n const [month, day] = policy.policyResetDate.split('-').map(Number)\n if (month) defaults.resetMonth = month\n if (day) defaults.resetDay = day\n }\n\n return defaults\n}\n\nfunction buildCreateRequestBody(\n data: PolicyConfigurationFormData,\n policyType: 'sick' | 'vacation',\n): TimeOffPolicyRequest {\n const accrualMethod = resolveApiAccrualMethod(data)\n\n const base: TimeOffPolicyRequest = { name: data.name, policyType, accrualMethod }\n\n if (accrualMethod === 'unlimited') {\n return { ...base, complete: true }\n }\n\n const isHourly =\n accrualMethod === 'per_hour_paid' ||\n accrualMethod === 'per_hour_paid_no_overtime' ||\n accrualMethod === 'per_hour_worked' ||\n accrualMethod === 'per_hour_worked_no_overtime'\n\n const policyResetDate =\n data.resetDateType === 'per_calendar_year'\n ? formatMonthDay(data.resetMonth, data.resetDay)\n : null\n\n if (isHourly) {\n return {\n ...base,\n accrualRate: data.accrualRate != null ? String(data.accrualRate) : undefined,\n accrualRateUnit: data.accrualRateUnit != null ? String(data.accrualRateUnit) : undefined,\n policyResetDate,\n complete: false,\n }\n }\n\n return {\n ...base,\n accrualRate: data.accrualRate != null ? String(data.accrualRate) : undefined,\n accrualRateUnit: null,\n policyResetDate,\n complete: false,\n }\n}\n\nfunction buildUpdateRequestBody(\n data: PolicyConfigurationFormData,\n policyType: 'sick' | 'vacation',\n version: string,\n): PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody {\n const accrualMethod = resolveApiAccrualMethod(data)\n\n const base: PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody = {\n name: data.name,\n policyType,\n accrualMethod,\n version,\n }\n\n if (accrualMethod === 'unlimited') {\n return {\n ...base,\n accrualRate: null,\n accrualRateUnit: null,\n policyResetDate: null,\n }\n }\n\n const isHourly =\n accrualMethod === 'per_hour_paid' ||\n accrualMethod === 'per_hour_paid_no_overtime' ||\n accrualMethod === 'per_hour_worked' ||\n accrualMethod === 'per_hour_worked_no_overtime'\n\n const policyResetDate =\n data.resetDateType === 'per_calendar_year'\n ? formatMonthDay(data.resetMonth, data.resetDay)\n : null\n\n if (isHourly) {\n return {\n ...base,\n accrualRate: data.accrualRate != null ? String(data.accrualRate) : undefined,\n accrualRateUnit: data.accrualRateUnit != null ? String(data.accrualRateUnit) : undefined,\n policyResetDate,\n }\n }\n\n return {\n ...base,\n accrualRate: data.accrualRate != null ? String(data.accrualRate) : undefined,\n accrualRateUnit: null,\n policyResetDate,\n }\n}\n\nfunction Root({ companyId, policyType, defaultValues, policyId }: PolicyConfigurationFormProps) {\n if (policyId) {\n return (\n <EditRoot\n companyId={companyId}\n policyType={policyType}\n policyId={policyId}\n defaultValues={defaultValues}\n />\n )\n }\n return <CreateRoot companyId={companyId} policyType={policyType} defaultValues={defaultValues} />\n}\n\ninterface CreateRootProps {\n companyId: string\n policyType: 'sick' | 'vacation'\n defaultValues?: Partial<PolicyConfigurationFormData>\n}\n\nfunction CreateRoot({ companyId, policyType, defaultValues }: CreateRootProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n\n const { mutateAsync: createTimeOffPolicy, isPending } = useTimeOffPoliciesCreateMutation()\n\n const handleContinue = useCallback(\n async (data: PolicyConfigurationFormData) => {\n await baseSubmitHandler(data, async () => {\n const requestBody = buildCreateRequestBody(data, policyType)\n\n const response = await createTimeOffPolicy({\n request: {\n companyUuid: companyId,\n timeOffPolicyRequest: requestBody,\n },\n })\n\n onEvent(componentEvents.TIME_OFF_POLICY_DETAILS_DONE, {\n policyId: response.timeOffPolicy!.uuid,\n accrualMethod: requestBody.accrualMethod,\n })\n })\n },\n [baseSubmitHandler, companyId, createTimeOffPolicy, onEvent, policyType],\n )\n\n const handleCancel = useCallback(() => {\n onEvent(componentEvents.CANCEL)\n }, [onEvent])\n\n return (\n <PolicyConfigurationFormPresentation\n onContinue={handleContinue}\n onCancel={handleCancel}\n defaultValues={defaultValues}\n isPending={isPending}\n />\n )\n}\n\ninterface EditRootProps {\n companyId: string\n policyType: 'sick' | 'vacation'\n policyId: string\n defaultValues?: Partial<PolicyConfigurationFormData>\n}\n\nfunction EditRoot({ companyId, policyType, policyId, defaultValues }: EditRootProps) {\n const { onEvent, baseSubmitHandler } = useBase()\n const queryClient = useQueryClient()\n\n const { data: policyResponse } = useTimeOffPoliciesGetSuspense({\n timeOffPolicyUuid: policyId,\n })\n\n const { mutateAsync: updateTimeOffPolicy, isPending } = useTimeOffPoliciesUpdateMutation()\n\n const policy = policyResponse.timeOffPolicy\n if (!policy) throw new Error('Unexpected response: missing timeOffPolicy')\n\n const version = policy.version ?? ''\n const fetchedDefaults = deriveFormDefaults(policy)\n const mergedDefaults = { ...fetchedDefaults, ...defaultValues }\n\n const lockedAccrualCategory = policy.complete\n ? fetchedDefaults.accrualMethod === 'unlimited'\n ? ('unlimited' as const)\n : ('accrual_based' as const)\n : undefined\n\n const handleContinue = useCallback(\n async (data: PolicyConfigurationFormData) => {\n await baseSubmitHandler(data, async () => {\n const requestBody = buildUpdateRequestBody(data, policyType, version)\n\n await updateTimeOffPolicy({\n request: {\n timeOffPolicyUuid: policyId,\n requestBody,\n },\n })\n\n void queryClient.invalidateQueries({\n queryKey: ['@gusto/embedded-api', 'timeOffPolicies', 'get'],\n })\n\n onEvent(componentEvents.TIME_OFF_POLICY_DETAILS_DONE, {\n policyId,\n accrualMethod: requestBody.accrualMethod,\n })\n })\n },\n [baseSubmitHandler, policyId, policyType, version, updateTimeOffPolicy, queryClient, onEvent],\n )\n\n const handleCancel = useCallback(() => {\n onEvent(componentEvents.CANCEL)\n }, [onEvent])\n\n return (\n <PolicyConfigurationFormPresentation\n onContinue={handleContinue}\n onCancel={handleCancel}\n defaultValues={mergedDefaults}\n editingPolicyName={policy.name}\n isPending={isPending}\n lockedAccrualCategory={lockedAccrualCategory}\n />\n )\n}\n"],"names":["PolicyConfigurationForm","props","jsx","BaseComponent","Root","resolveApiAccrualMethod","data","paid","overtime","HOURLY_API_METHODS","deriveFormDefaults","policy","defaults","apiMethod","month","day","buildCreateRequestBody","policyType","accrualMethod","base","isHourly","policyResetDate","formatMonthDay","buildUpdateRequestBody","version","companyId","defaultValues","policyId","EditRoot","CreateRoot","onEvent","baseSubmitHandler","useBase","createTimeOffPolicy","isPending","useTimeOffPoliciesCreateMutation","handleContinue","useCallback","requestBody","response","componentEvents","handleCancel","PolicyConfigurationFormPresentation","queryClient","useQueryClient","policyResponse","useTimeOffPoliciesGetSuspense","updateTimeOffPolicy","useTimeOffPoliciesUpdateMutation","fetchedDefaults","mergedDefaults","lockedAccrualCategory"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  import { PolicyConfigurationFormPresentationProps } from './PolicyConfigurationFormTypes';
2
- export declare function PolicyConfigurationFormPresentation({ onContinue, onCancel, defaultValues, editingPolicyName, isPending, }: PolicyConfigurationFormPresentationProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function PolicyConfigurationFormPresentation({ onContinue, onCancel, defaultValues, editingPolicyName, isPending, lockedAccrualCategory, }: PolicyConfigurationFormPresentationProps): import("react/jsx-runtime").JSX.Element;