@gusto/embedded-react-sdk 0.52.2 → 0.53.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 (459) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/dist/components/Common/DateRangeFilter/DateRangeFilter.d.ts +1 -2
  3. package/dist/components/Common/DateRangeFilter/DateRangeFilter.js +42 -43
  4. package/dist/components/Common/DateRangeFilter/DateRangeFilter.js.map +1 -1
  5. package/dist/components/Common/Fields/PercentageField/PercentageField.js +44 -42
  6. package/dist/components/Common/Fields/PercentageField/PercentageField.js.map +1 -1
  7. package/dist/components/Common/UI/Box/Box.js +6 -6
  8. package/dist/components/Common/UI/Box/Box.js.map +1 -1
  9. package/dist/components/Common/UI/Box/Box.module.scss.js +8 -8
  10. package/dist/components/Common/UI/Box/BoxTypes.d.ts +1 -1
  11. package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
  12. package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js +16 -14
  13. package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js.map +1 -1
  14. package/dist/components/Common/UI/Dialog/Dialog.js +29 -28
  15. package/dist/components/Common/UI/Dialog/Dialog.js.map +1 -1
  16. package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
  17. package/dist/components/Common/UI/FormBox/FormBox.d.ts +1 -1
  18. package/dist/components/Common/UI/FormBox/FormBox.js +9 -8
  19. package/dist/components/Common/UI/FormBox/FormBox.js.map +1 -1
  20. package/dist/components/Common/UI/FormBox/FormBox.module.scss.js +8 -6
  21. package/dist/components/Common/UI/FormBox/FormBox.module.scss.js.map +1 -1
  22. package/dist/components/Common/UI/FormBox/FormBoxTypes.d.ts +5 -1
  23. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  24. package/dist/components/Company/AssignSignatory/AssignSignatory.js +7 -10
  25. package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
  26. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +6 -8
  27. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
  28. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +8 -9
  29. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
  30. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +18 -21
  31. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
  32. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +11 -12
  33. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  34. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +5 -4
  35. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  36. package/dist/components/Company/AssignSignatory/Head.js +8 -9
  37. package/dist/components/Company/AssignSignatory/Head.js.map +1 -1
  38. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +6 -7
  39. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
  40. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +5 -8
  41. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
  42. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +20 -21
  43. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  44. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +5 -4
  45. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  46. package/dist/components/Company/AssignSignatory/TitleSelect.js +10 -12
  47. package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
  48. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +7 -6
  49. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  50. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +2 -3
  51. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js.map +1 -1
  52. package/dist/components/Company/BankAccount/BankAccountForm/Form.js +9 -11
  53. package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
  54. package/dist/components/Company/BankAccount/BankAccountForm/Head.js +2 -3
  55. package/dist/components/Company/BankAccount/BankAccountForm/Head.js.map +1 -1
  56. package/dist/components/Company/BankAccount/BankAccountForm/context.js +5 -4
  57. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  58. package/dist/components/Company/BankAccount/BankAccountList/Actions.js +6 -7
  59. package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
  60. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +7 -8
  61. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
  62. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +4 -6
  63. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
  64. package/dist/components/Company/BankAccount/stateMachine.d.ts +0 -1
  65. package/dist/components/Company/BankAccount/stateMachine.js +33 -35
  66. package/dist/components/Company/BankAccount/stateMachine.js.map +1 -1
  67. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +5 -6
  68. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
  69. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +11 -14
  70. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  71. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +5 -4
  72. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  73. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +7 -8
  74. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  75. package/dist/components/Company/DocumentSigner/shared/useSignCompanyForm/fields.js +4 -4
  76. package/dist/components/Company/DocumentSigner/stateMachine.d.ts +0 -1
  77. package/dist/components/Company/DocumentSigner/stateMachine.js +27 -29
  78. package/dist/components/Company/DocumentSigner/stateMachine.js.map +1 -1
  79. package/dist/components/Company/FederalTaxes/Actions.js +6 -7
  80. package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
  81. package/dist/components/Company/FederalTaxes/FederalTaxes.js +7 -10
  82. package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
  83. package/dist/components/Company/FederalTaxes/Form.js +4 -4
  84. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +10 -9
  85. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  86. package/dist/components/Company/Industry/Actions.js +5 -6
  87. package/dist/components/Company/Industry/Actions.js.map +1 -1
  88. package/dist/components/Company/Industry/Context.js +8 -7
  89. package/dist/components/Company/Industry/Context.js.map +1 -1
  90. package/dist/components/Company/Industry/Edit.js +10 -12
  91. package/dist/components/Company/Industry/Edit.js.map +1 -1
  92. package/dist/components/Company/Industry/IndustrySelect.js +6 -8
  93. package/dist/components/Company/Industry/IndustrySelect.js.map +1 -1
  94. package/dist/components/Company/Locations/LocationForm/Actions.js +6 -7
  95. package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
  96. package/dist/components/Company/Locations/LocationForm/Form.js +4 -6
  97. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  98. package/dist/components/Company/Locations/LocationForm/LocationForm.js +11 -14
  99. package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
  100. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +5 -4
  101. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  102. package/dist/components/Company/Locations/LocationsList/Actions.js +2 -3
  103. package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
  104. package/dist/components/Company/Locations/LocationsList/LocationsList.js +9 -12
  105. package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
  106. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +5 -4
  107. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  108. package/dist/components/Company/OnboardingOverview/Completed.js +5 -6
  109. package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
  110. package/dist/components/Company/OnboardingOverview/MissingRequirements.js +9 -10
  111. package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
  112. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -5
  113. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  114. package/dist/components/Company/OnboardingOverview/context.js +5 -4
  115. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  116. package/dist/components/Company/PaySchedule/PayScheduleForm.js +47 -51
  117. package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
  118. package/dist/components/Company/PaySchedule/payScheduleStateMachine.d.ts +0 -1
  119. package/dist/components/Company/PaySchedule/payScheduleStateMachine.js +26 -28
  120. package/dist/components/Company/PaySchedule/payScheduleStateMachine.js.map +1 -1
  121. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js +5 -5
  122. package/dist/components/Company/StateTaxes/StateTaxes.d.ts +2 -1
  123. package/dist/components/Company/StateTaxes/StateTaxes.js.map +1 -1
  124. package/dist/components/Company/StateTaxes/StateTaxesComponents.d.ts +2 -0
  125. package/dist/components/Company/StateTaxes/StateTaxesComponents.js +29 -16
  126. package/dist/components/Company/StateTaxes/StateTaxesComponents.js.map +1 -1
  127. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +2 -3
  128. package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
  129. package/dist/components/Company/StateTaxes/StateTaxesForm/Form.d.ts +1 -1
  130. package/dist/components/Company/StateTaxes/StateTaxesForm/Form.js +21 -32
  131. package/dist/components/Company/StateTaxes/StateTaxesForm/Form.js.map +1 -1
  132. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +67 -75
  133. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
  134. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +5 -4
  135. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  136. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +6 -7
  137. package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
  138. package/dist/components/Company/StateTaxes/StateTaxesList/List.js +62 -47
  139. package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
  140. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.d.ts +1 -0
  141. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js +26 -23
  142. package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js.map +1 -1
  143. package/dist/components/Company/StateTaxes/StateTaxesList/context.d.ts +1 -0
  144. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +5 -4
  145. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  146. package/dist/components/Company/StateTaxes/TaxRateManagement/AddRateAction.d.ts +12 -0
  147. package/dist/components/Company/StateTaxes/TaxRateManagement/AddRateAction.js +36 -0
  148. package/dist/components/Company/StateTaxes/TaxRateManagement/AddRateAction.js.map +1 -0
  149. package/dist/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.d.ts +10 -0
  150. package/dist/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.js +110 -0
  151. package/dist/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.js.map +1 -0
  152. package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.d.ts +18 -0
  153. package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.js +55 -0
  154. package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.js.map +1 -0
  155. package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.d.ts +47 -0
  156. package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.js +108 -0
  157. package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.js.map +1 -0
  158. package/dist/components/Company/StateTaxes/TaxRateManagement/context.d.ts +25 -0
  159. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +22 -0
  160. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -0
  161. package/dist/components/Company/StateTaxes/TaxRateManagement/index.d.ts +1 -0
  162. package/dist/components/Company/StateTaxes/TaxRateManagement/toHistoryRows.d.ts +29 -0
  163. package/dist/components/Company/StateTaxes/TaxRateManagement/toHistoryRows.js +34 -0
  164. package/dist/components/Company/StateTaxes/TaxRateManagement/toHistoryRows.js.map +1 -0
  165. package/dist/components/Company/StateTaxes/shared/RequirementFields.d.ts +17 -0
  166. package/dist/components/Company/StateTaxes/shared/RequirementFields.js +24 -0
  167. package/dist/components/Company/StateTaxes/shared/RequirementFields.js.map +1 -0
  168. package/dist/components/Company/StateTaxes/{StateTaxesForm → shared}/applicableIf.d.ts +1 -1
  169. package/dist/components/Company/StateTaxes/shared/applicableIf.js.map +1 -0
  170. package/dist/components/Company/StateTaxes/shared/applicableIf.test.d.ts +1 -0
  171. package/dist/components/Company/StateTaxes/shared/buildRequirementSchema.d.ts +19 -0
  172. package/dist/components/Company/StateTaxes/shared/buildRequirementSchema.js +38 -0
  173. package/dist/components/Company/StateTaxes/shared/buildRequirementSchema.js.map +1 -0
  174. package/dist/components/Company/StateTaxes/shared/requirementValue.d.ts +2 -0
  175. package/dist/components/Company/StateTaxes/shared/requirementValue.js +7 -0
  176. package/dist/components/Company/StateTaxes/shared/requirementValue.js.map +1 -0
  177. package/dist/components/Company/StateTaxes/shared/rhfKey.d.ts +23 -0
  178. package/dist/components/Company/StateTaxes/shared/rhfKey.js +13 -0
  179. package/dist/components/Company/StateTaxes/shared/rhfKey.js.map +1 -0
  180. package/dist/components/Company/StateTaxes/shared/rhfKey.test.d.ts +1 -0
  181. package/dist/components/Company/StateTaxes/stateTaxesStateMachine.d.ts +1 -0
  182. package/dist/components/Company/StateTaxes/stateTaxesStateMachine.js +33 -11
  183. package/dist/components/Company/StateTaxes/stateTaxesStateMachine.js.map +1 -1
  184. package/dist/components/Company/exports/companyOnboarding.d.ts +1 -0
  185. package/dist/components/Company/exports/companyOnboarding.js +12 -10
  186. package/dist/components/Company/exports/companyOnboarding.js.map +1 -1
  187. package/dist/components/Contractor/Address/Address.js +11 -12
  188. package/dist/components/Contractor/Address/Address.js.map +1 -1
  189. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.d.ts +39 -0
  190. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js +90 -0
  191. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js.map +1 -0
  192. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts +22 -0
  193. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js +247 -0
  194. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map +1 -0
  195. package/dist/components/Contractor/ContractorList/{index.d.ts → onboarding/ContractorList.d.ts} +3 -3
  196. package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js +51 -0
  197. package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js.map +1 -0
  198. package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.d.ts +16 -0
  199. package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js +113 -0
  200. package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js.map +1 -0
  201. package/dist/components/Contractor/ContractorList/shared/index.d.ts +1 -0
  202. package/dist/components/Contractor/ContractorList/shared/useContractorList.d.ts +87 -0
  203. package/dist/components/Contractor/ContractorList/shared/useContractorList.js +110 -0
  204. package/dist/components/Contractor/ContractorList/shared/useContractorList.js.map +1 -0
  205. package/dist/components/Contractor/Documents/DocumentSigner/stateMachine.d.ts +0 -1
  206. package/dist/components/Contractor/Documents/DocumentSigner/stateMachine.js +18 -20
  207. package/dist/components/Contractor/Documents/DocumentSigner/stateMachine.js.map +1 -1
  208. package/dist/components/Contractor/Documents/DocumentsList/DocumentsList.js +2 -3
  209. package/dist/components/Contractor/Documents/DocumentsList/DocumentsList.js.map +1 -1
  210. package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.js +1 -1
  211. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/fields.js +8 -8
  212. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js +1 -1
  213. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
  214. package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js +9 -10
  215. package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js.map +1 -1
  216. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js +2 -3
  217. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js.map +1 -1
  218. package/dist/components/Contractor/PaymentMethod/shared/useContractorBankAccountForm/fields.js +1 -1
  219. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +162 -251
  220. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
  221. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.d.ts +2 -1
  222. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js +2 -2
  223. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js.map +1 -1
  224. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js +45 -44
  225. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js.map +1 -1
  226. package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js +2 -3
  227. package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js.map +1 -1
  228. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +2 -3
  229. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
  230. package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.d.ts +32 -0
  231. package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.js +107 -0
  232. package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.js.map +1 -0
  233. package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.test.d.ts +1 -0
  234. package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js +6 -7
  235. package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js.map +1 -1
  236. package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js +18 -19
  237. package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js.map +1 -1
  238. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/fields.js +16 -16
  239. package/dist/components/Contractor/Submit/Submit.js +2 -3
  240. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  241. package/dist/components/Contractor/exports/contractorManagement.d.ts +1 -0
  242. package/dist/components/Contractor/exports/contractorManagement.js +12 -10
  243. package/dist/components/Contractor/exports/contractorManagement.js.map +1 -1
  244. package/dist/components/Contractor/exports/contractorOnboarding.d.ts +1 -1
  245. package/dist/components/Contractor/exports/contractorOnboarding.js +1 -1
  246. package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js +32 -33
  247. package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js.map +1 -1
  248. package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js +2 -3
  249. package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js.map +1 -1
  250. package/dist/components/Employee/Compensation/shared/useCompensationForm/fields.js +4 -4
  251. package/dist/components/Employee/Compensation/shared/useJobForm/fields.js +6 -6
  252. package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.js +6 -7
  253. package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.js.map +1 -1
  254. package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.js +14 -15
  255. package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.js.map +1 -1
  256. package/dist/components/Employee/Deductions/shared/useChildSupportGarnishmentForm/fields.js +8 -8
  257. package/dist/components/Employee/Deductions/shared/useDeductionForm/fields.js +4 -4
  258. package/dist/components/Employee/Documents/management/DocumentManager.js +6 -7
  259. package/dist/components/Employee/Documents/management/DocumentManager.js.map +1 -1
  260. package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js +6 -7
  261. package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js.map +1 -1
  262. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js +4 -5
  263. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js.map +1 -1
  264. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js +10 -13
  265. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  266. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.js +5 -6
  267. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.js.map +1 -1
  268. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.module.scss.js +8 -0
  269. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.module.scss.js.map +1 -0
  270. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +5 -4
  271. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  272. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js +22 -21
  273. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js.map +1 -1
  274. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +6 -6
  275. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js +5 -4
  276. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js.map +1 -1
  277. package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js +3 -4
  278. package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js.map +1 -1
  279. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js +6 -7
  280. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
  281. package/dist/components/Employee/Documents/shared/SignatureForm/SignatureForm.js +11 -12
  282. package/dist/components/Employee/Documents/shared/SignatureForm/SignatureForm.js.map +1 -1
  283. package/dist/components/Employee/Documents/shared/useSignEmployeeForm/fields.js +1 -1
  284. package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js +15 -16
  285. package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js.map +1 -1
  286. package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js +6 -7
  287. package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js.map +1 -1
  288. package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js +11 -12
  289. package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js.map +1 -1
  290. package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js +1 -1
  291. package/dist/components/Employee/FederalTaxes/shared/useFederalTaxesForm/fields.js +4 -4
  292. package/dist/components/Employee/HomeAddress/management/HomeAddressCard/HomeAddressCard.js +7 -8
  293. package/dist/components/Employee/HomeAddress/management/HomeAddressCard/HomeAddressCard.js.map +1 -1
  294. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +4 -4
  295. package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js +29 -23
  296. package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js.map +1 -1
  297. package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js +26 -20
  298. package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js.map +1 -1
  299. package/dist/components/Employee/PaymentMethod/onboarding/ListView.js +133 -99
  300. package/dist/components/Employee/PaymentMethod/onboarding/ListView.js.map +1 -1
  301. package/dist/components/Employee/PaymentMethod/onboarding/ListView.module.scss.js +8 -0
  302. package/dist/components/Employee/PaymentMethod/onboarding/ListView.module.scss.js.map +1 -0
  303. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.d.ts +1 -1
  304. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js +19 -20
  305. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js.map +1 -1
  306. package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.js +92 -86
  307. package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.js.map +1 -1
  308. package/dist/components/Employee/PaymentMethod/shared/useBankForm/fields.js +1 -1
  309. package/dist/components/Employee/PaymentMethod/shared/useSplitPaymentsForm/splitFieldFactory.js +4 -4
  310. package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js +65 -64
  311. package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js.map +1 -1
  312. package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js +7 -8
  313. package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js.map +1 -1
  314. package/dist/components/Employee/Profile/management/ProfileEditForm.js +7 -7
  315. package/dist/components/Employee/Profile/onboarding/AdminProfile.js +6 -6
  316. package/dist/components/Employee/Profile/onboarding/EmployeeProfile.js +6 -6
  317. package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/fields.js +8 -8
  318. package/dist/components/Employee/Profile/shared/useHomeAddressForm/fields.js +5 -5
  319. package/dist/components/Employee/Profile/shared/useWorkAddressForm/fields.js +4 -4
  320. package/dist/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.js +11 -12
  321. package/dist/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.js.map +1 -1
  322. package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js +9 -10
  323. package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js.map +1 -1
  324. package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js +6 -7
  325. package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js.map +1 -1
  326. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fieldComponents.js +8 -8
  327. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js +44 -45
  328. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js.map +1 -1
  329. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +23 -22
  330. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
  331. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +27 -27
  332. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -1
  333. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js +9 -10
  334. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js.map +1 -1
  335. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +2 -3
  336. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -1
  337. package/dist/components/Employee/WorkAddress/management/WorkAddressCard/WorkAddressCard.js +16 -17
  338. package/dist/components/Employee/WorkAddress/management/WorkAddressCard/WorkAddressCard.js.map +1 -1
  339. package/dist/components/Flow/Flow.js +1 -1
  340. package/dist/components/Flow/FlowHeader.js +3 -4
  341. package/dist/components/Flow/FlowHeader.js.map +1 -1
  342. package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js +8 -9
  343. package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js.map +1 -1
  344. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +7 -8
  345. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js.map +1 -1
  346. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +37 -37
  347. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -1
  348. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +8 -9
  349. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -1
  350. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +7 -8
  351. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  352. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js +10 -12
  353. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js.map +1 -1
  354. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +0 -1
  355. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
  356. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +7 -8
  357. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
  358. package/dist/components/Payroll/PayrollHistory/PayrollHistory.d.ts +3 -3
  359. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +54 -50
  360. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  361. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +80 -69
  362. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  363. package/dist/components/Payroll/PayrollList/PayrollList.js +20 -18
  364. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  365. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +138 -136
  366. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  367. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js +10 -12
  368. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js.map +1 -1
  369. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +4 -4
  370. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js +2 -3
  371. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js.map +1 -1
  372. package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js +2 -3
  373. package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js.map +1 -1
  374. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +1 -2
  375. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js.map +1 -1
  376. package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js +2 -3
  377. package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js.map +1 -1
  378. package/dist/components/Payroll/usePreparedPayrollData.js +4 -3
  379. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  380. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +2 -3
  381. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -1
  382. package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js +4 -4
  383. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js +4 -4
  384. package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js +34 -36
  385. package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js.map +1 -1
  386. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +4 -4
  387. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +24 -25
  388. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -1
  389. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.d.ts +6 -0
  390. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +29 -28
  391. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  392. package/dist/contexts/LocaleProvider/useLocale.d.ts +1 -9
  393. package/dist/contexts/LocaleProvider/useLocale.js +5 -15
  394. package/dist/contexts/LocaleProvider/useLocale.js.map +1 -1
  395. package/dist/contexts/NonceProvider/index.d.ts +1 -0
  396. package/dist/contexts/NonceProvider/useNonce.d.ts +37 -0
  397. package/dist/contexts/NonceProvider/useNonce.js +7 -0
  398. package/dist/contexts/NonceProvider/useNonce.js.map +1 -0
  399. package/dist/contexts/ThemeProvider/ThemeProvider.js +25 -24
  400. package/dist/contexts/ThemeProvider/ThemeProvider.js.map +1 -1
  401. package/dist/contexts/index.d.ts +1 -0
  402. package/dist/hooks/useDateRangeFilter/useDateRangeFilter.d.ts +12 -7
  403. package/dist/hooks/useDateRangeFilter/useDateRangeFilter.js +25 -21
  404. package/dist/hooks/useDateRangeFilter/useDateRangeFilter.js.map +1 -1
  405. package/dist/i18n/I18n.js +1 -0
  406. package/dist/i18n/I18n.js.map +1 -1
  407. package/dist/i18n/en/Company.StateTaxes.json.js +6 -4
  408. package/dist/i18n/en/Company.StateTaxes.json.js.map +1 -1
  409. package/dist/i18n/en/Contractor.ContractorList.json.js +14 -12
  410. package/dist/i18n/en/Contractor.ContractorList.json.js.map +1 -1
  411. package/dist/i18n/en/Contractor.ManagementContractorList.json.js +60 -0
  412. package/dist/i18n/en/Contractor.ManagementContractorList.json.js.map +1 -0
  413. package/dist/i18n/en/Employee.Management.PaymentMethodBankForm.json.js +18 -16
  414. package/dist/i18n/en/Employee.Management.PaymentMethodBankForm.json.js.map +1 -1
  415. package/dist/i18n/en/Employee.Management.PaymentMethodSplitForm.json.js +2 -2
  416. package/dist/i18n/en/Employee.PaymentMethod.json.js +74 -72
  417. package/dist/i18n/en/Employee.PaymentMethod.json.js.map +1 -1
  418. package/dist/i18n/en/Employee.SplitPaymentsFormBody.json.js +2 -2
  419. package/dist/i18n/en/Payroll.PayrollHistory.json.js +8 -8
  420. package/dist/i18n/en/Payroll.PayrollList.json.js +23 -23
  421. package/dist/i18n/types.d.ts +193 -11
  422. package/dist/index.js +15 -13
  423. package/dist/index.js.map +1 -1
  424. package/dist/models/external.d.ts +4 -0
  425. package/dist/partner-hook-utils/form/SDKFormProvider.js +39 -24
  426. package/dist/partner-hook-utils/form/SDKFormProvider.js.map +1 -1
  427. package/dist/partner-hook-utils/form/fields/CheckboxHookField.js +12 -15
  428. package/dist/partner-hook-utils/form/fields/CheckboxHookField.js.map +1 -1
  429. package/dist/partner-hook-utils/form/fields/NumberInputHookField.js +16 -19
  430. package/dist/partner-hook-utils/form/fields/NumberInputHookField.js.map +1 -1
  431. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js +13 -16
  432. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
  433. package/dist/partner-hook-utils/form/fields/SelectHookField.js +12 -15
  434. package/dist/partner-hook-utils/form/fields/SelectHookField.js.map +1 -1
  435. package/dist/partner-hook-utils/form/fields/SwitchHookField.js +18 -21
  436. package/dist/partner-hook-utils/form/fields/SwitchHookField.js.map +1 -1
  437. package/dist/partner-hook-utils/form/fields/TextInputHookField.js +9 -12
  438. package/dist/partner-hook-utils/form/fields/TextInputHookField.js.map +1 -1
  439. package/dist/partner-hook-utils/form/preprocessors.d.ts +2 -2
  440. package/dist/partner-hook-utils/form/preprocessors.js +8 -7
  441. package/dist/partner-hook-utils/form/preprocessors.js.map +1 -1
  442. package/dist/partner-hook-utils/form/preprocessors.test.d.ts +1 -0
  443. package/dist/shared/constants.d.ts +12 -0
  444. package/dist/shared/constants.js +23 -17
  445. package/dist/shared/constants.js.map +1 -1
  446. package/dist/style.css +1 -1
  447. package/docs/guides/endpoint-inventory.json +61 -0
  448. package/package.json +16 -14
  449. package/dist/components/Company/StateTaxes/StateTaxesForm/applicableIf.js.map +0 -1
  450. package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.d.ts +0 -4
  451. package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js +0 -5
  452. package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js.map +0 -1
  453. package/dist/components/Contractor/ContractorList/index.js +0 -141
  454. package/dist/components/Contractor/ContractorList/index.js.map +0 -1
  455. package/dist/components/Contractor/ContractorList/useContractorList.d.ts +0 -18
  456. package/dist/components/Contractor/ContractorList/useContractorList.js +0 -15
  457. package/dist/components/Contractor/ContractorList/useContractorList.js.map +0 -1
  458. /package/dist/components/Company/StateTaxes/{StateTaxesForm/applicableIf.test.d.ts → TaxRateManagement/toHistoryRows.test.d.ts} +0 -0
  459. /package/dist/components/Company/StateTaxes/{StateTaxesForm → shared}/applicableIf.js +0 -0
@@ -0,0 +1,90 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import { useState as L } from "react";
3
+ import { useContractorList as A } from "../shared/useContractorList.js";
4
+ import { ManagementContractorListView as h } from "./ManagementContractorListView.js";
5
+ import { BaseBoundaries as p, BaseLayout as C } from "../../../Base/Base.js";
6
+ import { useI18n as D, useComponentDictionary as N } from "../../../../i18n/I18n.js";
7
+ import { componentEvents as o } from "../../../../shared/constants.js";
8
+ const f = (r) => {
9
+ switch (r) {
10
+ case "active":
11
+ return "active";
12
+ case "onboarding":
13
+ return "onboarding";
14
+ case "dismissed":
15
+ return "terminated";
16
+ }
17
+ };
18
+ function E({
19
+ companyId: r,
20
+ initialTab: i = "active",
21
+ onEvent: a,
22
+ dictionary: m
23
+ }) {
24
+ D("Contractor.ManagementContractorList"), N("Contractor.ManagementContractorList", m);
25
+ const [s, R] = L(i), n = A({
26
+ companyId: r,
27
+ contractorType: f(s)
28
+ });
29
+ if (n.isLoading)
30
+ return /* @__PURE__ */ e(C, { isLoading: !0, error: n.errorHandling.errors });
31
+ const T = (t) => {
32
+ a(o.CONTRACTOR_UPDATE, { contractorId: t });
33
+ }, d = (t) => {
34
+ a(o.CONTRACTOR_VIEW, { contractorId: t });
35
+ }, l = () => {
36
+ a(o.CONTRACTOR_CREATE);
37
+ }, O = (t) => {
38
+ a(o.CONTRACTOR_DISMISS, { contractorId: t });
39
+ }, g = (t) => {
40
+ a(o.CONTRACTOR_REHIRE, { contractorId: t });
41
+ }, u = (t) => {
42
+ R(t);
43
+ };
44
+ return /* @__PURE__ */ e(C, { error: n.errorHandling.errors, children: /* @__PURE__ */ e(
45
+ h,
46
+ {
47
+ selectedTab: s,
48
+ onTabChange: u,
49
+ contractors: n.data.contractors,
50
+ isFetching: n.status.isFetching,
51
+ pagination: n.pagination,
52
+ status: n.status,
53
+ onEdit: T,
54
+ onView: d,
55
+ onDismiss: O,
56
+ onRehire: g,
57
+ onDelete: async (t) => {
58
+ await n.actions.onDelete(t), a(o.CONTRACTOR_DELETED, { contractorId: t });
59
+ },
60
+ onCancelSelfOnboarding: async (t) => {
61
+ const c = await n.actions.onCancelSelfOnboarding(t);
62
+ c && a(o.CONTRACTOR_SELF_ONBOARDING_CANCELLED, c);
63
+ },
64
+ onCancelDismissal: async (t) => {
65
+ await n.actions.onCancelDismissal(t), a(o.CONTRACTOR_DISMISSAL_CANCELLED, { contractorId: t });
66
+ },
67
+ onCancelRehire: async (t) => {
68
+ await n.actions.onCancelRehire(t), a(o.CONTRACTOR_REHIRE_CANCELLED, { contractorId: t });
69
+ },
70
+ onAddContractor: l
71
+ }
72
+ ) });
73
+ }
74
+ function B({
75
+ FallbackComponent: r,
76
+ ...i
77
+ }) {
78
+ return /* @__PURE__ */ e(
79
+ p,
80
+ {
81
+ componentName: "Contractor.ManagementContractorList",
82
+ FallbackComponent: r,
83
+ children: /* @__PURE__ */ e(E, { ...i })
84
+ }
85
+ );
86
+ }
87
+ export {
88
+ B as ManagementContractorList
89
+ };
90
+ //# sourceMappingURL=ManagementContractorList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManagementContractorList.js","sources":["../../../../../src/components/Contractor/ContractorList/management/ManagementContractorList.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useContractorList, type ContractorType } from '../shared/useContractorList'\nimport { ManagementContractorListView } from './ManagementContractorListView'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base/Base'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\n\n/**\n * The tab currently selected on {@link ManagementContractorList}.\n *\n * @public\n */\nexport type ContractorTab = 'active' | 'onboarding' | 'dismissed'\n\n/**\n * Props for {@link ManagementContractorList}.\n *\n * @public\n */\nexport interface ManagementContractorListProps extends BaseComponentInterface<'Contractor.ManagementContractorList'> {\n /** The associated company identifier. */\n companyId: string\n /** Tab to render first: Active, Onboarding, or Dismissed. Defaults to `'active'`. */\n initialTab?: ContractorTab\n}\n\nconst mapTabToContractorType = (tab: ContractorTab): ContractorType => {\n switch (tab) {\n case 'active':\n return 'active'\n case 'onboarding':\n return 'onboarding'\n case 'dismissed':\n return 'terminated'\n }\n}\n\nfunction ManagementContractorListRoot({\n companyId,\n initialTab = 'active',\n onEvent,\n dictionary,\n}: ManagementContractorListProps) {\n useI18n('Contractor.ManagementContractorList')\n useComponentDictionary('Contractor.ManagementContractorList', dictionary)\n\n const [selectedTab, setSelectedTab] = useState<ContractorTab>(initialTab)\n\n const contractorList = useContractorList({\n companyId,\n contractorType: mapTabToContractorType(selectedTab),\n })\n\n if (contractorList.isLoading) {\n return <BaseLayout isLoading error={contractorList.errorHandling.errors} />\n }\n\n const handleEdit = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_UPDATE, { contractorId })\n }\n\n const handleView = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_VIEW, { contractorId })\n }\n\n const handleAddContractor = () => {\n onEvent(componentEvents.CONTRACTOR_CREATE)\n }\n\n const handleDismiss = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_DISMISS, { contractorId })\n }\n\n const handleRehire = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_REHIRE, { contractorId })\n }\n\n const handleTabChange = (tab: ContractorTab) => {\n setSelectedTab(tab)\n }\n\n return (\n <BaseLayout error={contractorList.errorHandling.errors}>\n <ManagementContractorListView\n selectedTab={selectedTab}\n onTabChange={handleTabChange}\n contractors={contractorList.data.contractors}\n isFetching={contractorList.status.isFetching}\n pagination={contractorList.pagination}\n status={contractorList.status}\n onEdit={handleEdit}\n onView={handleView}\n onDismiss={handleDismiss}\n onRehire={handleRehire}\n onDelete={async (contractorId: string) => {\n await contractorList.actions.onDelete(contractorId)\n onEvent(componentEvents.CONTRACTOR_DELETED, { contractorId })\n }}\n onCancelSelfOnboarding={async (contractorId: string) => {\n const onboardingStatus = await contractorList.actions.onCancelSelfOnboarding(contractorId)\n if (!onboardingStatus) return\n onEvent(componentEvents.CONTRACTOR_SELF_ONBOARDING_CANCELLED, onboardingStatus)\n }}\n onCancelDismissal={async (contractorId: string) => {\n await contractorList.actions.onCancelDismissal(contractorId)\n onEvent(componentEvents.CONTRACTOR_DISMISSAL_CANCELLED, { contractorId })\n }}\n onCancelRehire={async (contractorId: string) => {\n await contractorList.actions.onCancelRehire(contractorId)\n onEvent(componentEvents.CONTRACTOR_REHIRE_CANCELLED, { contractorId })\n }}\n onAddContractor={handleAddContractor}\n />\n </BaseLayout>\n )\n}\n\n/**\n * Renders a tabbed list of a company's contractors split across Active, Onboarding, and Dismissed\n * tabs, with per-row actions tailored to each tab (edit, delete, view details, dismiss, rehire,\n * cancel a scheduled dismissal or rehire).\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/create` | Fired when the user clicks \"Add contractor\". | — |\n * | `contractor/update` | Fired when the user selects \"Edit\"/\"Review\" on an onboarding-tab row. | `{ contractorId: string }` |\n * | `contractor/view` | Fired when the user selects \"View details\" on an active or dismissed row. | `{ contractorId: string }` |\n * | `contractor/deleted` | Fired after an onboarding-tab row's \"Remove\" action completes. | `{ contractorId: string }` |\n * | `contractor/selfOnboarding/cancelled` | Fired after the \"Cancel self-onboarding\" action updates a contractor's onboarding status. | The updated `contractorOnboardingStatus` returned by the API. |\n * | `contractor/dismiss` | Fired when the user selects \"Dismiss\" on an active row. No mutation is performed by this component. | `{ contractorId: string }` |\n * | `contractor/rehire` | Fired when the user selects \"Rehire\" on a dismissed row. No mutation is performed by this component. | `{ contractorId: string }` |\n * | `contractor/dismissal/cancelled` | Fired after a scheduled dismissal is cancelled via the confirm dialog. | `{ contractorId: string }` |\n * | `contractor/rehire/cancelled` | Fired after a scheduled rehire is cancelled via the confirm dialog. | `{ contractorId: string }` |\n *\n * @public\n */\nexport function ManagementContractorList({\n FallbackComponent,\n ...props\n}: ManagementContractorListProps) {\n return (\n <BaseBoundaries\n componentName=\"Contractor.ManagementContractorList\"\n FallbackComponent={FallbackComponent}\n >\n <ManagementContractorListRoot {...props} />\n </BaseBoundaries>\n )\n}\n"],"names":["mapTabToContractorType","tab","ManagementContractorListRoot","companyId","initialTab","onEvent","dictionary","useI18n","useComponentDictionary","selectedTab","setSelectedTab","useState","contractorList","useContractorList","BaseLayout","handleEdit","contractorId","componentEvents","handleView","handleAddContractor","handleDismiss","handleRehire","handleTabChange","jsx","ManagementContractorListView","onboardingStatus","ManagementContractorList","FallbackComponent","props","BaseBoundaries"],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList';
2
+ import { ContractorTab } from './ManagementContractorList';
3
+ /** @internal */
4
+ export interface ManagementContractorListViewProps extends Pick<Extract<UseContractorListResult, {
5
+ isLoading: false;
6
+ }>, 'pagination' | 'status'> {
7
+ contractors: ContractorWithActions[];
8
+ isFetching: boolean;
9
+ selectedTab: ContractorTab;
10
+ onTabChange: (tab: ContractorTab) => void;
11
+ onEdit: (contractorId: string) => void;
12
+ onView: (contractorId: string) => void;
13
+ onDismiss: (contractorId: string) => void;
14
+ onRehire: (contractorId: string) => void;
15
+ onDelete: (contractorId: string) => Promise<void>;
16
+ onCancelSelfOnboarding: (contractorId: string) => Promise<void>;
17
+ onCancelDismissal: (contractorId: string) => Promise<void>;
18
+ onCancelRehire: (contractorId: string) => Promise<void>;
19
+ onAddContractor: () => void;
20
+ }
21
+ /** @internal */
22
+ export declare function ManagementContractorListView({ contractors, isFetching, selectedTab, onTabChange, status, pagination, onEdit, onView, onDismiss, onRehire, onDelete, onCancelSelfOnboarding, onCancelDismissal, onCancelRehire, onAddContractor, }: ManagementContractorListViewProps): import("react").JSX.Element;
@@ -0,0 +1,247 @@
1
+ import { jsxs as m, Fragment as P, jsx as t } from "react/jsx-runtime";
2
+ import { useState as b } from "react";
3
+ import { useTranslation as M } from "react-i18next";
4
+ import { Flex as d } from "../../../Common/Flex/Flex.js";
5
+ import { EmptyData as V } from "../../../Common/EmptyData/EmptyData.js";
6
+ import { HamburgerMenu as y } from "../../../Common/HamburgerMenu/HamburgerMenu.js";
7
+ import { useComponentContext as w } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
8
+ import { ContractorOnboardingStatusBadge as Y } from "../../../Common/OnboardingStatusBadge/index.js";
9
+ import F from "../../../../assets/icons/trashcan.svg.js";
10
+ import h from "../../../../assets/icons/x-circle.svg.js";
11
+ import j from "../../../../assets/icons/eye.svg.js";
12
+ import H from "../../../../assets/icons/slash-circle.svg.js";
13
+ import $ from "../../../../assets/icons/plus-circle.svg.js";
14
+ import { firstLastName as z } from "../../../../helpers/formattedStrings.js";
15
+ import { normalizeToDate as G, formatDateLong as W, formatDateLongWithYear as U } from "../../../../helpers/dateFormatting.js";
16
+ import { ContractorOnboardingStatus as C, CONTRACTOR_TYPE as X } from "../../../../shared/constants.js";
17
+ import { useDataView as q } from "../../../Common/DataView/useDataView.js";
18
+ import { DataView as J } from "../../../Common/DataView/DataView.js";
19
+ function K(n) {
20
+ return n.type === X.BUSINESS ? n.businessName ?? "" : z({ first_name: n.firstName, last_name: n.lastName });
21
+ }
22
+ function Q({ contractor: n }) {
23
+ const l = w();
24
+ return /* @__PURE__ */ m(d, { flexDirection: "column", gap: 0, children: [
25
+ /* @__PURE__ */ t(l.Text, { size: "sm", weight: "medium", children: K(n) }),
26
+ /* @__PURE__ */ t(l.Text, { variant: "supporting", size: "sm", children: n.type ?? "–" })
27
+ ] });
28
+ }
29
+ function u(n) {
30
+ const l = G(n);
31
+ return l ? l.getFullYear() === (/* @__PURE__ */ new Date()).getFullYear() ? W(l) : U(l) : "";
32
+ }
33
+ function Z(n) {
34
+ return n === C.ADMIN_ONBOARDING_REVIEW || n === C.SELF_ONBOARDING_REVIEW;
35
+ }
36
+ function De({
37
+ contractors: n,
38
+ isFetching: l,
39
+ selectedTab: o,
40
+ onTabChange: v,
41
+ status: D,
42
+ pagination: S,
43
+ onEdit: A,
44
+ onView: L,
45
+ onDismiss: I,
46
+ onRehire: R,
47
+ onDelete: k,
48
+ onCancelSelfOnboarding: E,
49
+ onCancelDismissal: N,
50
+ onCancelRehire: O,
51
+ onAddContractor: B
52
+ }) {
53
+ const { t: e } = M("Contractor.ManagementContractorList"), r = w(), [g, p] = b(null), [s, c] = b(null), _ = [
54
+ { id: "active", label: e("tabs.active"), content: null },
55
+ { id: "onboarding", label: e("tabs.onboarding"), content: null },
56
+ { id: "dismissed", label: e("tabs.dismissed"), content: null }
57
+ ], x = () => {
58
+ const a = {
59
+ key: "name",
60
+ title: e("nameLabel"),
61
+ render: (i) => /* @__PURE__ */ t(Q, { contractor: i })
62
+ };
63
+ return o === "active" ? [
64
+ a,
65
+ {
66
+ key: "rate",
67
+ title: e("rateLabel"),
68
+ render: (i) => i.wageType === "Hourly" && i.hourlyRate ? e("rateHourly", { rate: `$${i.hourlyRate}` }) : i.wageType ?? "–"
69
+ },
70
+ {
71
+ key: "status",
72
+ title: "",
73
+ render: (i) => i.upcomingEmployment?.startDate ? /* @__PURE__ */ t(r.Badge, { status: "info", children: e("startsBadge", {
74
+ date: u(i.upcomingEmployment.startDate)
75
+ }) }) : i.dismissalDate ? /* @__PURE__ */ t(r.Badge, { status: "warning", children: e("lastDayBadge", { date: u(i.dismissalDate) }) }) : null
76
+ }
77
+ ] : o === "onboarding" ? [
78
+ a,
79
+ {
80
+ key: "status",
81
+ title: e("onboardingStatusLabel"),
82
+ render: (i) => /* @__PURE__ */ m(d, { alignItems: "center", gap: 8, children: [
83
+ /* @__PURE__ */ t(
84
+ Y,
85
+ {
86
+ onboarded: i.onboarded,
87
+ onboardingStatus: i.onboardingStatus
88
+ }
89
+ ),
90
+ i.onboardingStatus === C.ONBOARDING_COMPLETED && i.upcomingEmployment?.startDate && /* @__PURE__ */ t(r.Badge, { status: "info", children: e("startsBadge", {
91
+ date: u(i.upcomingEmployment.startDate)
92
+ }) })
93
+ ] })
94
+ }
95
+ ] : [
96
+ a,
97
+ {
98
+ key: "dismissalDate",
99
+ title: e("dismissalDateLabel"),
100
+ render: (i) => i.dismissalDate ? u(i.dismissalDate) : "–"
101
+ }
102
+ ];
103
+ }, { ...T } = q({
104
+ data: n,
105
+ columns: x(),
106
+ itemMenu: (a) => {
107
+ if (o === "onboarding") {
108
+ const f = [];
109
+ return a.allowedActions.includes("cancel_self_onboarding") && f.push({
110
+ label: e("cancelSelfOnboardingCta"),
111
+ onClick: () => {
112
+ E(a.uuid);
113
+ },
114
+ icon: /* @__PURE__ */ t(h, { "aria-hidden": !0 })
115
+ }), a.allowedActions.includes("delete") && f.push({
116
+ label: e("removeCta"),
117
+ onClick: () => {
118
+ p(a.uuid);
119
+ },
120
+ icon: /* @__PURE__ */ t(F, { "aria-hidden": !0 })
121
+ }), /* @__PURE__ */ m(d, { alignItems: "center", justifyContent: "flex-end", gap: 4, children: [
122
+ a.allowedActions.includes("edit") && /* @__PURE__ */ t(
123
+ r.Button,
124
+ {
125
+ variant: "secondary",
126
+ onClick: () => {
127
+ A(a.uuid);
128
+ },
129
+ children: Z(a.onboardingStatus) ? e("reviewCta") : e("continueCta")
130
+ }
131
+ ),
132
+ /* @__PURE__ */ t(y, { items: f, triggerLabel: e("hamburgerTitle") })
133
+ ] });
134
+ }
135
+ const i = [];
136
+ return a.allowedActions.includes("view") && i.push({
137
+ label: e("viewDetailsCta"),
138
+ onClick: () => {
139
+ L(a.uuid);
140
+ },
141
+ icon: /* @__PURE__ */ t(j, { "aria-hidden": !0 })
142
+ }), a.allowedActions.includes("cancel_rehire") && i.push({
143
+ label: e("cancelRehireCta"),
144
+ onClick: () => {
145
+ c({ contractorId: a.uuid, type: "rehire" });
146
+ },
147
+ icon: /* @__PURE__ */ t(h, { "aria-hidden": !0 })
148
+ }), a.allowedActions.includes("cancel_dismissal") && i.push({
149
+ label: e("cancelDismissalCta"),
150
+ onClick: () => {
151
+ c({ contractorId: a.uuid, type: "dismissal" });
152
+ },
153
+ icon: /* @__PURE__ */ t(h, { "aria-hidden": !0 })
154
+ }), a.allowedActions.includes("dismiss") && i.push({
155
+ label: e("dismissCta"),
156
+ onClick: () => {
157
+ I(a.uuid);
158
+ },
159
+ icon: /* @__PURE__ */ t(H, { "aria-hidden": !0 })
160
+ }), a.allowedActions.includes("rehire") && i.push({
161
+ label: e("rehireCta"),
162
+ onClick: () => {
163
+ R(a.uuid);
164
+ },
165
+ icon: /* @__PURE__ */ t($, { "aria-hidden": !0 })
166
+ }), /* @__PURE__ */ t(y, { items: i, triggerLabel: e("hamburgerTitle") });
167
+ },
168
+ isFetching: l,
169
+ pagination: S,
170
+ emptyState: () => /* @__PURE__ */ t(
171
+ V,
172
+ {
173
+ title: e(`emptyState.${o}.title`),
174
+ description: e(`emptyState.${o}.description`)
175
+ }
176
+ )
177
+ });
178
+ return /* @__PURE__ */ m(P, { children: [
179
+ /* @__PURE__ */ m(d, { flexDirection: "column", gap: 32, children: [
180
+ /* @__PURE__ */ m(d, { justifyContent: "space-between", alignItems: "center", children: [
181
+ /* @__PURE__ */ t(r.Heading, { as: "h2", children: e("title") }),
182
+ /* @__PURE__ */ t(r.Button, { variant: "secondary", onClick: B, children: e("addContractorCta") })
183
+ ] }),
184
+ /* @__PURE__ */ m(d, { flexDirection: "column", gap: 0, children: [
185
+ /* @__PURE__ */ t(
186
+ r.Tabs,
187
+ {
188
+ tabs: _,
189
+ selectedId: o,
190
+ onSelectionChange: (a) => {
191
+ v(a);
192
+ },
193
+ "aria-label": e("tabsLabel")
194
+ }
195
+ ),
196
+ /* @__PURE__ */ t(J, { label: e("contractorListLabel"), ...T })
197
+ ] })
198
+ ] }),
199
+ /* @__PURE__ */ t(
200
+ r.Dialog,
201
+ {
202
+ isOpen: !!g,
203
+ onClose: () => {
204
+ p(null);
205
+ },
206
+ onPrimaryActionClick: async () => {
207
+ if (g)
208
+ try {
209
+ await k(g), p(null);
210
+ } catch {
211
+ }
212
+ },
213
+ isPrimaryActionLoading: D.isPending,
214
+ isDestructive: !0,
215
+ title: e("removeDialog.title"),
216
+ primaryActionLabel: e("removeDialog.confirmCta"),
217
+ closeActionLabel: e("removeDialog.cancelCta"),
218
+ children: e("removeDialog.description")
219
+ }
220
+ ),
221
+ /* @__PURE__ */ t(
222
+ r.Dialog,
223
+ {
224
+ isOpen: !!s,
225
+ onClose: () => {
226
+ c(null);
227
+ },
228
+ onPrimaryActionClick: async () => {
229
+ if (s)
230
+ try {
231
+ s.type === "rehire" ? await O(s.contractorId) : await N(s.contractorId), c(null);
232
+ } catch {
233
+ }
234
+ },
235
+ isPrimaryActionLoading: D.isPending,
236
+ title: s?.type === "rehire" ? e("cancelRehireDialog.title") : e("cancelDismissalDialog.title"),
237
+ primaryActionLabel: s?.type === "rehire" ? e("cancelRehireDialog.confirmCta") : e("cancelDismissalDialog.confirmCta"),
238
+ closeActionLabel: s?.type === "rehire" ? e("cancelRehireDialog.cancelCta") : e("cancelDismissalDialog.cancelCta"),
239
+ children: s?.type === "rehire" ? e("cancelRehireDialog.description") : e("cancelDismissalDialog.description")
240
+ }
241
+ )
242
+ ] });
243
+ }
244
+ export {
245
+ De as ManagementContractorListView
246
+ };
247
+ //# sourceMappingURL=ManagementContractorListView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManagementContractorListView.js","sources":["../../../../../src/components/Contractor/ContractorList/management/ManagementContractorListView.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport type { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList'\nimport type { ContractorTab } from './ManagementContractorList'\nimport { DataView, EmptyData, useDataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { ContractorOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport XCircleSvg from '@/assets/icons/x-circle.svg?react'\nimport EyeSvg from '@/assets/icons/eye.svg?react'\nimport SlashCircleSvg from '@/assets/icons/slash-circle.svg?react'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport { normalizeToDate, formatDateLong, formatDateLongWithYear } from '@/helpers/dateFormatting'\nimport { CONTRACTOR_TYPE, ContractorOnboardingStatus } from '@/shared/constants'\n\n/** @internal */\nexport interface ManagementContractorListViewProps extends Pick<\n Extract<UseContractorListResult, { isLoading: false }>,\n 'pagination' | 'status'\n> {\n contractors: ContractorWithActions[]\n isFetching: boolean\n selectedTab: ContractorTab\n onTabChange: (tab: ContractorTab) => void\n onEdit: (contractorId: string) => void\n onView: (contractorId: string) => void\n onDismiss: (contractorId: string) => void\n onRehire: (contractorId: string) => void\n onDelete: (contractorId: string) => Promise<void>\n onCancelSelfOnboarding: (contractorId: string) => Promise<void>\n onCancelDismissal: (contractorId: string) => Promise<void>\n onCancelRehire: (contractorId: string) => Promise<void>\n onAddContractor: () => void\n}\n\nfunction contractorDisplayName(contractor: ContractorWithActions) {\n return contractor.type === CONTRACTOR_TYPE.BUSINESS\n ? (contractor.businessName ?? '')\n : firstLastName({ first_name: contractor.firstName, last_name: contractor.lastName })\n}\n\nfunction ContractorNameCell({ contractor }: { contractor: ContractorWithActions }) {\n const Components = useComponentContext()\n return (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text size=\"sm\" weight=\"medium\">\n {contractorDisplayName(contractor)}\n </Components.Text>\n <Components.Text variant=\"supporting\" size=\"sm\">\n {contractor.type ?? '–'}\n </Components.Text>\n </Flex>\n )\n}\n\nfunction formatBadgeDate(dateStr: string): string {\n const date = normalizeToDate(dateStr)\n if (!date) return ''\n const isSameYear = date.getFullYear() === new Date().getFullYear()\n return isSameYear ? formatDateLong(date) : formatDateLongWithYear(date)\n}\n\nfunction isOnboardingEditReview(onboardingStatus?: string | null) {\n return (\n onboardingStatus === ContractorOnboardingStatus.ADMIN_ONBOARDING_REVIEW ||\n onboardingStatus === ContractorOnboardingStatus.SELF_ONBOARDING_REVIEW\n )\n}\n\n/** @internal */\nexport function ManagementContractorListView({\n contractors,\n isFetching,\n selectedTab,\n onTabChange,\n status,\n pagination,\n onEdit,\n onView,\n onDismiss,\n onRehire,\n onDelete,\n onCancelSelfOnboarding,\n onCancelDismissal,\n onCancelRehire,\n onAddContractor,\n}: ManagementContractorListViewProps) {\n const { t } = useTranslation('Contractor.ManagementContractorList')\n const Components = useComponentContext()\n const [contractorToRemove, setContractorToRemove] = useState<string | null>(null)\n const [cancelAction, setCancelAction] = useState<{\n contractorId: string\n type: 'dismissal' | 'rehire'\n } | null>(null)\n\n const tabs = [\n { id: 'active', label: t('tabs.active'), content: null },\n { id: 'onboarding', label: t('tabs.onboarding'), content: null },\n { id: 'dismissed', label: t('tabs.dismissed'), content: null },\n ]\n\n const getColumns = () => {\n const nameColumn = {\n key: 'name',\n title: t('nameLabel'),\n render: (contractor: ContractorWithActions) => <ContractorNameCell contractor={contractor} />,\n }\n\n if (selectedTab === 'active') {\n return [\n nameColumn,\n {\n key: 'rate',\n title: t('rateLabel'),\n render: (contractor: ContractorWithActions) =>\n contractor.wageType === 'Hourly' && contractor.hourlyRate\n ? t('rateHourly', { rate: `$${contractor.hourlyRate}` })\n : (contractor.wageType ?? '–'),\n },\n {\n key: 'status',\n title: '',\n render: (contractor: ContractorWithActions) => {\n if (contractor.upcomingEmployment?.startDate) {\n return (\n <Components.Badge status=\"info\">\n {t('startsBadge', {\n date: formatBadgeDate(contractor.upcomingEmployment.startDate),\n })}\n </Components.Badge>\n )\n }\n if (contractor.dismissalDate) {\n return (\n <Components.Badge status=\"warning\">\n {t('lastDayBadge', { date: formatBadgeDate(contractor.dismissalDate) })}\n </Components.Badge>\n )\n }\n return null\n },\n },\n ]\n }\n\n if (selectedTab === 'onboarding') {\n return [\n nameColumn,\n {\n key: 'status',\n title: t('onboardingStatusLabel'),\n render: (contractor: ContractorWithActions) => (\n <Flex alignItems=\"center\" gap={8}>\n <ContractorOnboardingStatusBadge\n onboarded={contractor.onboarded}\n onboardingStatus={contractor.onboardingStatus}\n />\n {contractor.onboardingStatus === ContractorOnboardingStatus.ONBOARDING_COMPLETED &&\n contractor.upcomingEmployment?.startDate && (\n <Components.Badge status=\"info\">\n {t('startsBadge', {\n date: formatBadgeDate(contractor.upcomingEmployment.startDate),\n })}\n </Components.Badge>\n )}\n </Flex>\n ),\n },\n ]\n }\n\n return [\n nameColumn,\n {\n key: 'dismissalDate',\n title: t('dismissalDateLabel'),\n render: (contractor: ContractorWithActions) =>\n contractor.dismissalDate ? formatBadgeDate(contractor.dismissalDate) : '–',\n },\n ]\n }\n\n const { ...dataViewProps } = useDataView({\n data: contractors,\n columns: getColumns(),\n itemMenu: contractor => {\n if (selectedTab === 'onboarding') {\n const menuItems = []\n\n if (contractor.allowedActions.includes('cancel_self_onboarding')) {\n menuItems.push({\n label: t('cancelSelfOnboardingCta'),\n onClick: () => {\n void onCancelSelfOnboarding(contractor.uuid)\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('delete')) {\n menuItems.push({\n label: t('removeCta'),\n onClick: () => {\n setContractorToRemove(contractor.uuid)\n },\n icon: <TrashCanSvg aria-hidden />,\n })\n }\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"flex-end\" gap={4}>\n {contractor.allowedActions.includes('edit') && (\n <Components.Button\n variant=\"secondary\"\n onClick={() => {\n onEdit(contractor.uuid)\n }}\n >\n {isOnboardingEditReview(contractor.onboardingStatus)\n ? t('reviewCta')\n : t('continueCta')}\n </Components.Button>\n )}\n <HamburgerMenu items={menuItems} triggerLabel={t('hamburgerTitle')} />\n </Flex>\n )\n }\n\n const menuItems = []\n\n if (contractor.allowedActions.includes('view')) {\n menuItems.push({\n label: t('viewDetailsCta'),\n onClick: () => {\n onView(contractor.uuid)\n },\n icon: <EyeSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('cancel_rehire')) {\n menuItems.push({\n label: t('cancelRehireCta'),\n onClick: () => {\n setCancelAction({ contractorId: contractor.uuid, type: 'rehire' })\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('cancel_dismissal')) {\n menuItems.push({\n label: t('cancelDismissalCta'),\n onClick: () => {\n setCancelAction({ contractorId: contractor.uuid, type: 'dismissal' })\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('dismiss')) {\n menuItems.push({\n label: t('dismissCta'),\n onClick: () => {\n onDismiss(contractor.uuid)\n },\n icon: <SlashCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('rehire')) {\n menuItems.push({\n label: t('rehireCta'),\n onClick: () => {\n onRehire(contractor.uuid)\n },\n icon: <PlusCircleIcon aria-hidden />,\n })\n }\n\n return <HamburgerMenu items={menuItems} triggerLabel={t('hamburgerTitle')} />\n },\n isFetching,\n pagination,\n emptyState: () => (\n <EmptyData\n title={t(`emptyState.${selectedTab}.title`)}\n description={t(`emptyState.${selectedTab}.description`)}\n />\n ),\n })\n\n return (\n <>\n <Flex flexDirection=\"column\" gap={32}>\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n <Components.Button variant=\"secondary\" onClick={onAddContractor}>\n {t('addContractorCta')}\n </Components.Button>\n </Flex>\n\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Tabs\n tabs={tabs}\n selectedId={selectedTab}\n onSelectionChange={id => {\n onTabChange(id as ContractorTab)\n }}\n aria-label={t('tabsLabel')}\n />\n\n <DataView label={t('contractorListLabel')} {...dataViewProps} />\n </Flex>\n </Flex>\n\n <Components.Dialog\n isOpen={!!contractorToRemove}\n onClose={() => {\n setContractorToRemove(null)\n }}\n onPrimaryActionClick={async () => {\n if (contractorToRemove) {\n try {\n await onDelete(contractorToRemove)\n setContractorToRemove(null)\n } catch {\n // Keep dialog open on error\n }\n }\n }}\n isPrimaryActionLoading={status.isPending}\n isDestructive\n title={t('removeDialog.title')}\n primaryActionLabel={t('removeDialog.confirmCta')}\n closeActionLabel={t('removeDialog.cancelCta')}\n >\n {t('removeDialog.description')}\n </Components.Dialog>\n\n <Components.Dialog\n isOpen={!!cancelAction}\n onClose={() => {\n setCancelAction(null)\n }}\n onPrimaryActionClick={async () => {\n if (!cancelAction) return\n try {\n if (cancelAction.type === 'rehire') {\n await onCancelRehire(cancelAction.contractorId)\n } else {\n await onCancelDismissal(cancelAction.contractorId)\n }\n setCancelAction(null)\n } catch {\n // Keep dialog open on error\n }\n }}\n isPrimaryActionLoading={status.isPending}\n title={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.title')\n : t('cancelDismissalDialog.title')\n }\n primaryActionLabel={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.confirmCta')\n : t('cancelDismissalDialog.confirmCta')\n }\n closeActionLabel={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.cancelCta')\n : t('cancelDismissalDialog.cancelCta')\n }\n >\n {cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.description')\n : t('cancelDismissalDialog.description')}\n </Components.Dialog>\n </>\n )\n}\n"],"names":["contractorDisplayName","contractor","CONTRACTOR_TYPE","firstLastName","ContractorNameCell","Components","useComponentContext","jsxs","Flex","jsx","formatBadgeDate","dateStr","date","normalizeToDate","formatDateLong","formatDateLongWithYear","isOnboardingEditReview","onboardingStatus","ContractorOnboardingStatus","ManagementContractorListView","contractors","isFetching","selectedTab","onTabChange","status","pagination","onEdit","onView","onDismiss","onRehire","onDelete","onCancelSelfOnboarding","onCancelDismissal","onCancelRehire","onAddContractor","t","useTranslation","contractorToRemove","setContractorToRemove","useState","cancelAction","setCancelAction","tabs","getColumns","nameColumn","ContractorOnboardingStatusBadge","dataViewProps","useDataView","menuItems","XCircleSvg","TrashCanSvg","HamburgerMenu","EyeSvg","SlashCircleSvg","PlusCircleIcon","EmptyData","Fragment","id","DataView"],"mappings":";;;;;;;;;;;;;;;;;;AAqCA,SAASA,EAAsBC,GAAmC;AAChE,SAAOA,EAAW,SAASC,EAAgB,WACtCD,EAAW,gBAAgB,KAC5BE,EAAc,EAAE,YAAYF,EAAW,WAAW,WAAWA,EAAW,UAAU;AACxF;AAEA,SAASG,EAAmB,EAAE,YAAAH,KAAqD;AACjF,QAAMI,IAAaC,EAAA;AACnB,SACE,gBAAAC,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,IAAA,gBAAAC,EAACJ,EAAW,MAAX,EAAgB,MAAK,MAAK,QAAO,UAC/B,UAAAL,EAAsBC,CAAU,EAAA,CACnC;AAAA,IACA,gBAAAQ,EAACJ,EAAW,MAAX,EAAgB,SAAQ,cAAa,MAAK,MACxC,UAAAJ,EAAW,QAAQ,IAAA,CACtB;AAAA,EAAA,GACF;AAEJ;AAEA,SAASS,EAAgBC,GAAyB;AAChD,QAAMC,IAAOC,EAAgBF,CAAO;AACpC,SAAKC,IACcA,EAAK,YAAA,OAAkB,oBAAI,KAAA,GAAO,YAAA,IACjCE,EAAeF,CAAI,IAAIG,EAAuBH,CAAI,IAFpD;AAGpB;AAEA,SAASI,EAAuBC,GAAkC;AAChE,SACEA,MAAqBC,EAA2B,2BAChDD,MAAqBC,EAA2B;AAEpD;AAGO,SAASC,GAA6B;AAAA,EAC3C,aAAAC;AAAA,EACA,YAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,QAAAC;AAAA,EACA,YAAAC;AAAA,EACA,QAAAC;AAAA,EACA,QAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,wBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,iBAAAC;AACF,GAAsC;AACpC,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,qCAAqC,GAC5D/B,IAAaC,EAAA,GACb,CAAC+B,GAAoBC,CAAqB,IAAIC,EAAwB,IAAI,GAC1E,CAACC,GAAcC,CAAe,IAAIF,EAG9B,IAAI,GAERG,IAAO;AAAA,IACX,EAAE,IAAI,UAAU,OAAOP,EAAE,aAAa,GAAG,SAAS,KAAA;AAAA,IAClD,EAAE,IAAI,cAAc,OAAOA,EAAE,iBAAiB,GAAG,SAAS,KAAA;AAAA,IAC1D,EAAE,IAAI,aAAa,OAAOA,EAAE,gBAAgB,GAAG,SAAS,KAAA;AAAA,EAAK,GAGzDQ,IAAa,MAAM;AACvB,UAAMC,IAAa;AAAA,MACjB,KAAK;AAAA,MACL,OAAOT,EAAE,WAAW;AAAA,MACpB,QAAQ,CAAClC,MAAsC,gBAAAQ,EAACL,KAAmB,YAAAH,EAAA,CAAwB;AAAA,IAAA;AAG7F,WAAIqB,MAAgB,WACX;AAAA,MACLsB;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAOT,EAAE,WAAW;AAAA,QACpB,QAAQ,CAAClC,MACPA,EAAW,aAAa,YAAYA,EAAW,aAC3CkC,EAAE,cAAc,EAAE,MAAM,IAAIlC,EAAW,UAAU,IAAI,IACpDA,EAAW,YAAY;AAAA,MAAA;AAAA,MAEhC;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,QAAQ,CAACA,MACHA,EAAW,oBAAoB,8BAE9BI,EAAW,OAAX,EAAiB,QAAO,QACtB,YAAE,eAAe;AAAA,UAChB,MAAMK,EAAgBT,EAAW,mBAAmB,SAAS;AAAA,QAAA,CAC9D,GACH,IAGAA,EAAW,gBAEX,gBAAAQ,EAACJ,EAAW,OAAX,EAAiB,QAAO,WACtB,UAAA8B,EAAE,gBAAgB,EAAE,MAAMzB,EAAgBT,EAAW,aAAa,EAAA,CAAG,GACxE,IAGG;AAAA,MACT;AAAA,IACF,IAIAqB,MAAgB,eACX;AAAA,MACLsB;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAOT,EAAE,uBAAuB;AAAA,QAChC,QAAQ,CAAClC,MACP,gBAAAM,EAACC,KAAK,YAAW,UAAS,KAAK,GAC7B,UAAA;AAAA,UAAA,gBAAAC;AAAA,YAACoC;AAAA,YAAA;AAAA,cACC,WAAW5C,EAAW;AAAA,cACtB,kBAAkBA,EAAW;AAAA,YAAA;AAAA,UAAA;AAAA,UAE9BA,EAAW,qBAAqBiB,EAA2B,wBAC1DjB,EAAW,oBAAoB,aAC7B,gBAAAQ,EAACJ,EAAW,OAAX,EAAiB,QAAO,QACtB,YAAE,eAAe;AAAA,YAChB,MAAMK,EAAgBT,EAAW,mBAAmB,SAAS;AAAA,UAAA,CAC9D,EAAA,CACH;AAAA,QAAA,EAAA,CAEN;AAAA,MAAA;AAAA,IAEJ,IAIG;AAAA,MACL2C;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAOT,EAAE,oBAAoB;AAAA,QAC7B,QAAQ,CAAClC,MACPA,EAAW,gBAAgBS,EAAgBT,EAAW,aAAa,IAAI;AAAA,MAAA;AAAA,IAC3E;AAAA,EAEJ,GAEM,EAAE,GAAG6C,EAAA,IAAkBC,EAAY;AAAA,IACvC,MAAM3B;AAAA,IACN,SAASuB,EAAA;AAAA,IACT,UAAU,CAAA1C,MAAc;AACtB,UAAIqB,MAAgB,cAAc;AAChC,cAAM0B,IAAY,CAAA;AAElB,eAAI/C,EAAW,eAAe,SAAS,wBAAwB,KAC7D+C,EAAU,KAAK;AAAA,UACb,OAAOb,EAAE,yBAAyB;AAAA,UAClC,SAAS,MAAM;AACb,YAAKJ,EAAuB9B,EAAW,IAAI;AAAA,UAC7C;AAAA,UACA,MAAM,gBAAAQ,EAACwC,GAAA,EAAW,eAAW,GAAA,CAAC;AAAA,QAAA,CAC/B,GAGChD,EAAW,eAAe,SAAS,QAAQ,KAC7C+C,EAAU,KAAK;AAAA,UACb,OAAOb,EAAE,WAAW;AAAA,UACpB,SAAS,MAAM;AACb,YAAAG,EAAsBrC,EAAW,IAAI;AAAA,UACvC;AAAA,UACA,MAAM,gBAAAQ,EAACyC,GAAA,EAAY,eAAW,GAAA,CAAC;AAAA,QAAA,CAChC,qBAIA1C,GAAA,EAAK,YAAW,UAAS,gBAAe,YAAW,KAAK,GACtD,UAAA;AAAA,UAAAP,EAAW,eAAe,SAAS,MAAM,KACxC,gBAAAQ;AAAA,YAACJ,EAAW;AAAA,YAAX;AAAA,cACC,SAAQ;AAAA,cACR,SAAS,MAAM;AACb,gBAAAqB,EAAOzB,EAAW,IAAI;AAAA,cACxB;AAAA,cAEC,UAAAe,EAAuBf,EAAW,gBAAgB,IAC/CkC,EAAE,WAAW,IACbA,EAAE,aAAa;AAAA,YAAA;AAAA,UAAA;AAAA,4BAGtBgB,GAAA,EAAc,OAAOH,GAAW,cAAcb,EAAE,gBAAgB,EAAA,CAAG;AAAA,QAAA,GACtE;AAAA,MAEJ;AAEA,YAAMa,IAAY,CAAA;AAElB,aAAI/C,EAAW,eAAe,SAAS,MAAM,KAC3C+C,EAAU,KAAK;AAAA,QACb,OAAOb,EAAE,gBAAgB;AAAA,QACzB,SAAS,MAAM;AACb,UAAAR,EAAO1B,EAAW,IAAI;AAAA,QACxB;AAAA,QACA,MAAM,gBAAAQ,EAAC2C,GAAA,EAAO,eAAW,GAAA,CAAC;AAAA,MAAA,CAC3B,GAGCnD,EAAW,eAAe,SAAS,eAAe,KACpD+C,EAAU,KAAK;AAAA,QACb,OAAOb,EAAE,iBAAiB;AAAA,QAC1B,SAAS,MAAM;AACb,UAAAM,EAAgB,EAAE,cAAcxC,EAAW,MAAM,MAAM,UAAU;AAAA,QACnE;AAAA,QACA,MAAM,gBAAAQ,EAACwC,GAAA,EAAW,eAAW,GAAA,CAAC;AAAA,MAAA,CAC/B,GAGChD,EAAW,eAAe,SAAS,kBAAkB,KACvD+C,EAAU,KAAK;AAAA,QACb,OAAOb,EAAE,oBAAoB;AAAA,QAC7B,SAAS,MAAM;AACb,UAAAM,EAAgB,EAAE,cAAcxC,EAAW,MAAM,MAAM,aAAa;AAAA,QACtE;AAAA,QACA,MAAM,gBAAAQ,EAACwC,GAAA,EAAW,eAAW,GAAA,CAAC;AAAA,MAAA,CAC/B,GAGChD,EAAW,eAAe,SAAS,SAAS,KAC9C+C,EAAU,KAAK;AAAA,QACb,OAAOb,EAAE,YAAY;AAAA,QACrB,SAAS,MAAM;AACb,UAAAP,EAAU3B,EAAW,IAAI;AAAA,QAC3B;AAAA,QACA,MAAM,gBAAAQ,EAAC4C,GAAA,EAAe,eAAW,GAAA,CAAC;AAAA,MAAA,CACnC,GAGCpD,EAAW,eAAe,SAAS,QAAQ,KAC7C+C,EAAU,KAAK;AAAA,QACb,OAAOb,EAAE,WAAW;AAAA,QACpB,SAAS,MAAM;AACb,UAAAN,EAAS5B,EAAW,IAAI;AAAA,QAC1B;AAAA,QACA,MAAM,gBAAAQ,EAAC6C,GAAA,EAAe,eAAW,GAAA,CAAC;AAAA,MAAA,CACnC,qBAGKH,GAAA,EAAc,OAAOH,GAAW,cAAcb,EAAE,gBAAgB,GAAG;AAAA,IAC7E;AAAA,IACA,YAAAd;AAAA,IACA,YAAAI;AAAA,IACA,YAAY,MACV,gBAAAhB;AAAA,MAAC8C;AAAA,MAAA;AAAA,QACC,OAAOpB,EAAE,cAAcb,CAAW,QAAQ;AAAA,QAC1C,aAAaa,EAAE,cAAcb,CAAW,cAAc;AAAA,MAAA;AAAA,IAAA;AAAA,EACxD,CAEH;AAED,SACE,gBAAAf,EAAAiD,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAjD,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,MAAA,gBAAAD,EAACC,GAAA,EAAK,gBAAe,iBAAgB,YAAW,UAC9C,UAAA;AAAA,QAAA,gBAAAC,EAACJ,EAAW,SAAX,EAAmB,IAAG,MAAM,UAAA8B,EAAE,OAAO,GAAE;AAAA,QACxC,gBAAA1B,EAACJ,EAAW,QAAX,EAAkB,SAAQ,aAAY,SAAS6B,GAC7C,UAAAC,EAAE,kBAAkB,EAAA,CACvB;AAAA,MAAA,GACF;AAAA,MAEA,gBAAA5B,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,QAAA,gBAAAC;AAAA,UAACJ,EAAW;AAAA,UAAX;AAAA,YACC,MAAAqC;AAAA,YACA,YAAYpB;AAAA,YACZ,mBAAmB,CAAAmC,MAAM;AACvB,cAAAlC,EAAYkC,CAAmB;AAAA,YACjC;AAAA,YACA,cAAYtB,EAAE,WAAW;AAAA,UAAA;AAAA,QAAA;AAAA,0BAG1BuB,GAAA,EAAS,OAAOvB,EAAE,qBAAqB,GAAI,GAAGW,EAAA,CAAe;AAAA,MAAA,EAAA,CAChE;AAAA,IAAA,GACF;AAAA,IAEA,gBAAArC;AAAA,MAACJ,EAAW;AAAA,MAAX;AAAA,QACC,QAAQ,CAAC,CAACgC;AAAA,QACV,SAAS,MAAM;AACb,UAAAC,EAAsB,IAAI;AAAA,QAC5B;AAAA,QACA,sBAAsB,YAAY;AAChC,cAAID;AACF,gBAAI;AACF,oBAAMP,EAASO,CAAkB,GACjCC,EAAsB,IAAI;AAAA,YAC5B,QAAQ;AAAA,YAER;AAAA,QAEJ;AAAA,QACA,wBAAwBd,EAAO;AAAA,QAC/B,eAAa;AAAA,QACb,OAAOW,EAAE,oBAAoB;AAAA,QAC7B,oBAAoBA,EAAE,yBAAyB;AAAA,QAC/C,kBAAkBA,EAAE,wBAAwB;AAAA,QAE3C,YAAE,0BAA0B;AAAA,MAAA;AAAA,IAAA;AAAA,IAG/B,gBAAA1B;AAAA,MAACJ,EAAW;AAAA,MAAX;AAAA,QACC,QAAQ,CAAC,CAACmC;AAAA,QACV,SAAS,MAAM;AACb,UAAAC,EAAgB,IAAI;AAAA,QACtB;AAAA,QACA,sBAAsB,YAAY;AAChC,cAAKD;AACL,gBAAI;AACF,cAAIA,EAAa,SAAS,WACxB,MAAMP,EAAeO,EAAa,YAAY,IAE9C,MAAMR,EAAkBQ,EAAa,YAAY,GAEnDC,EAAgB,IAAI;AAAA,YACtB,QAAQ;AAAA,YAER;AAAA,QACF;AAAA,QACA,wBAAwBjB,EAAO;AAAA,QAC/B,OACEgB,GAAc,SAAS,WACnBL,EAAE,0BAA0B,IAC5BA,EAAE,6BAA6B;AAAA,QAErC,oBACEK,GAAc,SAAS,WACnBL,EAAE,+BAA+B,IACjCA,EAAE,kCAAkC;AAAA,QAE1C,kBACEK,GAAc,SAAS,WACnBL,EAAE,8BAA8B,IAChCA,EAAE,iCAAiC;AAAA,QAGxC,aAAc,SAAS,WACpBA,EAAE,gCAAgC,IAClCA,EAAE,mCAAmC;AAAA,MAAA;AAAA,IAAA;AAAA,EAC3C,GACF;AAEJ;"}
@@ -1,11 +1,11 @@
1
- import { BaseComponentInterface } from '../../Base';
1
+ import { BaseComponentInterface } from '../../../Base/Base';
2
2
  /**
3
3
  * Props for {@link ContractorList}.
4
4
  *
5
5
  * @public
6
6
  */
7
7
  export interface ContractorListProps extends BaseComponentInterface<'Contractor.ContractorList'> {
8
- /** UUID of the company whose contractors should be listed. */
8
+ /** The associated company identifier. */
9
9
  companyId: string;
10
10
  /** Success message to display in an alert above the list, typically after a create, update, or delete action. */
11
11
  successMessage?: string;
@@ -26,4 +26,4 @@ export interface ContractorListProps extends BaseComponentInterface<'Contractor.
26
26
  * @returns The rendered contractor list.
27
27
  * @public
28
28
  */
29
- export declare function ContractorList(props: ContractorListProps): import("react").JSX.Element;
29
+ export declare function ContractorList({ FallbackComponent, ...props }: ContractorListProps): import("react").JSX.Element;
@@ -0,0 +1,51 @@
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ import { useContractorList as m } from "../shared/useContractorList.js";
3
+ import { ContractorListView as L } from "./ContractorListView.js";
4
+ import { BaseBoundaries as R, BaseLayout as e } from "../../../Base/Base.js";
5
+ import { useI18n as T, useComponentDictionary as l } from "../../../../i18n/I18n.js";
6
+ import { componentEvents as n } from "../../../../shared/constants.js";
7
+ function N({
8
+ companyId: i,
9
+ onEvent: o,
10
+ dictionary: c,
11
+ successMessage: C
12
+ }) {
13
+ T("Contractor.ContractorList"), l("Contractor.ContractorList", c);
14
+ const t = m({ companyId: i });
15
+ if (t.isLoading)
16
+ return /* @__PURE__ */ a(e, { isLoading: !0, error: t.errorHandling.errors });
17
+ const d = () => {
18
+ o(n.CONTRACTOR_CREATE);
19
+ }, u = (r) => {
20
+ o(n.CONTRACTOR_UPDATE, { contractorId: r });
21
+ }, O = () => {
22
+ o(n.CONTRACTOR_ONBOARDING_CONTINUE);
23
+ };
24
+ return /* @__PURE__ */ a(e, { error: t.errorHandling.errors, children: /* @__PURE__ */ a(
25
+ L,
26
+ {
27
+ contractors: t.data.contractors,
28
+ isFetching: t.status.isFetching,
29
+ pagination: t.pagination,
30
+ status: t.status,
31
+ successMessage: C,
32
+ onEdit: u,
33
+ onDelete: async (r) => {
34
+ await t.actions.onDelete(r), o(n.CONTRACTOR_DELETED, { contractorId: r });
35
+ },
36
+ onCancelSelfOnboarding: async (r) => {
37
+ const s = await t.actions.onCancelSelfOnboarding(r);
38
+ s && o(n.CONTRACTOR_SELF_ONBOARDING_CANCELLED, s);
39
+ },
40
+ onAddContractor: d,
41
+ onContinue: O
42
+ }
43
+ ) });
44
+ }
45
+ function _({ FallbackComponent: i, ...o }) {
46
+ return /* @__PURE__ */ a(R, { componentName: "Contractor.ContractorList", FallbackComponent: i, children: /* @__PURE__ */ a(N, { ...o }) });
47
+ }
48
+ export {
49
+ _ as ContractorList
50
+ };
51
+ //# sourceMappingURL=ContractorList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContractorList.js","sources":["../../../../../src/components/Contractor/ContractorList/onboarding/ContractorList.tsx"],"sourcesContent":["import { useContractorList } from '../shared/useContractorList'\nimport { ContractorListView } from './ContractorListView'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base/Base'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\n\n/**\n * Props for {@link ContractorList}.\n *\n * @public\n */\nexport interface ContractorListProps extends BaseComponentInterface<'Contractor.ContractorList'> {\n /** The associated company identifier. */\n companyId: string\n /** Success message to display in an alert above the list, typically after a create, update, or delete action. */\n successMessage?: string\n}\n\nfunction ContractorListRoot({\n companyId,\n onEvent,\n dictionary,\n successMessage,\n}: ContractorListProps) {\n useI18n('Contractor.ContractorList')\n useComponentDictionary('Contractor.ContractorList', dictionary)\n\n const contractorList = useContractorList({ companyId })\n\n if (contractorList.isLoading) {\n return <BaseLayout isLoading error={contractorList.errorHandling.errors} />\n }\n\n const handleAddContractor = () => {\n onEvent(componentEvents.CONTRACTOR_CREATE)\n }\n\n const handleEdit = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_UPDATE, { contractorId })\n }\n\n const handleContinue = () => {\n onEvent(componentEvents.CONTRACTOR_ONBOARDING_CONTINUE)\n }\n\n return (\n <BaseLayout error={contractorList.errorHandling.errors}>\n <ContractorListView\n contractors={contractorList.data.contractors}\n isFetching={contractorList.status.isFetching}\n pagination={contractorList.pagination}\n status={contractorList.status}\n successMessage={successMessage}\n onEdit={handleEdit}\n onDelete={async (contractorId: string) => {\n await contractorList.actions.onDelete(contractorId)\n onEvent(componentEvents.CONTRACTOR_DELETED, { contractorId })\n }}\n onCancelSelfOnboarding={async (contractorId: string) => {\n const onboardingStatus = await contractorList.actions.onCancelSelfOnboarding(contractorId)\n if (!onboardingStatus) return\n onEvent(componentEvents.CONTRACTOR_SELF_ONBOARDING_CANCELLED, onboardingStatus)\n }}\n onAddContractor={handleAddContractor}\n onContinue={handleContinue}\n />\n </BaseLayout>\n )\n}\n\n/**\n * Lists a company's contractors with controls to add, edit, delete, cancel self-onboarding, and continue onboarding.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/create` | The add-contractor action was triggered. | — |\n * | `contractor/update` | A contractor row's edit action was triggered. | `{ contractorId: string }` |\n * | `contractor/deleted` | A contractor was successfully deleted. | `{ contractorId: string }` |\n * | `contractor/selfOnboarding/cancelled` | A contractor's self-onboarding was cancelled, reverting them to admin onboarding. | The updated `contractorOnboardingStatus` returned by the API. |\n * | `contractor/onboarding/continue` | The continue action was triggered to advance onboarding. | — |\n *\n * @param props - See {@link ContractorListProps}.\n * @returns The rendered contractor list.\n * @public\n */\nexport function ContractorList({ FallbackComponent, ...props }: ContractorListProps) {\n return (\n <BaseBoundaries componentName=\"Contractor.ContractorList\" FallbackComponent={FallbackComponent}>\n <ContractorListRoot {...props} />\n </BaseBoundaries>\n )\n}\n"],"names":["ContractorListRoot","companyId","onEvent","dictionary","successMessage","useI18n","useComponentDictionary","contractorList","useContractorList","BaseLayout","handleAddContractor","componentEvents","handleEdit","contractorId","handleContinue","jsx","ContractorListView","onboardingStatus","ContractorList","FallbackComponent","props","BaseBoundaries"],"mappings":";;;;;;AAkBA,SAASA,EAAmB;AAAA,EAC1B,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,gBAAAC;AACF,GAAwB;AACtB,EAAAC,EAAQ,2BAA2B,GACnCC,EAAuB,6BAA6BH,CAAU;AAE9D,QAAMI,IAAiBC,EAAkB,EAAE,WAAAP,GAAW;AAEtD,MAAIM,EAAe;AACjB,6BAAQE,GAAA,EAAW,WAAS,IAAC,OAAOF,EAAe,cAAc,QAAQ;AAG3E,QAAMG,IAAsB,MAAM;AAChC,IAAAR,EAAQS,EAAgB,iBAAiB;AAAA,EAC3C,GAEMC,IAAa,CAACC,MAAyB;AAC3C,IAAAX,EAAQS,EAAgB,mBAAmB,EAAE,cAAAE,EAAA,CAAc;AAAA,EAC7D,GAEMC,IAAiB,MAAM;AAC3B,IAAAZ,EAAQS,EAAgB,8BAA8B;AAAA,EACxD;AAEA,SACE,gBAAAI,EAACN,GAAA,EAAW,OAAOF,EAAe,cAAc,QAC9C,UAAA,gBAAAQ;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,aAAaT,EAAe,KAAK;AAAA,MACjC,YAAYA,EAAe,OAAO;AAAA,MAClC,YAAYA,EAAe;AAAA,MAC3B,QAAQA,EAAe;AAAA,MACvB,gBAAAH;AAAA,MACA,QAAQQ;AAAA,MACR,UAAU,OAAOC,MAAyB;AACxC,cAAMN,EAAe,QAAQ,SAASM,CAAY,GAClDX,EAAQS,EAAgB,oBAAoB,EAAE,cAAAE,EAAA,CAAc;AAAA,MAC9D;AAAA,MACA,wBAAwB,OAAOA,MAAyB;AACtD,cAAMI,IAAmB,MAAMV,EAAe,QAAQ,uBAAuBM,CAAY;AACzF,QAAKI,KACLf,EAAQS,EAAgB,sCAAsCM,CAAgB;AAAA,MAChF;AAAA,MACA,iBAAiBP;AAAA,MACjB,YAAYI;AAAA,IAAA;AAAA,EAAA,GAEhB;AAEJ;AAkBO,SAASI,EAAe,EAAE,mBAAAC,GAAmB,GAAGC,KAA8B;AACnF,SACE,gBAAAL,EAACM,KAAe,eAAc,6BAA4B,mBAAAF,GACxD,UAAA,gBAAAJ,EAACf,GAAA,EAAoB,GAAGoB,EAAA,CAAO,EAAA,CACjC;AAEJ;"}
@@ -0,0 +1,16 @@
1
+ import { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList';
2
+ /** @internal */
3
+ export interface ContractorListViewProps extends Pick<Extract<UseContractorListResult, {
4
+ isLoading: false;
5
+ }>, 'pagination' | 'status'> {
6
+ contractors: ContractorWithActions[];
7
+ isFetching: boolean;
8
+ successMessage?: string;
9
+ onEdit: (contractorId: string) => void;
10
+ onDelete: (contractorId: string) => Promise<void>;
11
+ onCancelSelfOnboarding: (contractorId: string) => Promise<void>;
12
+ onAddContractor: () => void;
13
+ onContinue: () => void;
14
+ }
15
+ /** @internal */
16
+ export declare function ContractorListView({ contractors, isFetching, pagination, status, successMessage, onEdit, onDelete, onCancelSelfOnboarding, onAddContractor, onContinue, }: ContractorListViewProps): import("react").JSX.Element;
@@ -0,0 +1,113 @@
1
+ import { jsx as t, jsxs as s, Fragment as w } from "react/jsx-runtime";
2
+ import { useState as A } from "react";
3
+ import { useTranslation as L } from "react-i18next";
4
+ import { Flex as c } from "../../../Common/Flex/Flex.js";
5
+ import { EmptyData as T } from "../../../Common/EmptyData/EmptyData.js";
6
+ import { ActionsLayout as u } from "../../../Common/ActionsLayout/ActionsLayout.js";
7
+ import { HamburgerMenu as N } from "../../../Common/HamburgerMenu/HamburgerMenu.js";
8
+ import { useComponentContext as v } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
9
+ import { ContractorOnboardingStatusBadge as O } from "../../../Common/OnboardingStatusBadge/index.js";
10
+ import k from "../../../../assets/icons/pencil.svg.js";
11
+ import _ from "../../../../assets/icons/trashcan.svg.js";
12
+ import x from "../../../../assets/icons/x-circle.svg.js";
13
+ import { firstLastName as B } from "../../../../helpers/formattedStrings.js";
14
+ import { CONTRACTOR_TYPE as E, ContractorOnboardingStatus as P } from "../../../../shared/constants.js";
15
+ import { useDataView as I } from "../../../Common/DataView/useDataView.js";
16
+ import { DataView as R } from "../../../Common/DataView/DataView.js";
17
+ function V(n) {
18
+ return n.type === E.BUSINESS ? n.businessName : B({ first_name: n.firstName, last_name: n.lastName });
19
+ }
20
+ function ee({
21
+ contractors: n,
22
+ isFetching: p,
23
+ pagination: f,
24
+ status: C,
25
+ successMessage: d,
26
+ onEdit: b,
27
+ onDelete: g,
28
+ onCancelSelfOnboarding: h,
29
+ onAddContractor: m,
30
+ onContinue: y
31
+ }) {
32
+ const { t: e } = L("Contractor.ContractorList"), o = v(), [r, l] = A(null), { ...D } = I({
33
+ data: n,
34
+ columns: [
35
+ {
36
+ title: e("listHeaders.name"),
37
+ render: (i) => V(i)
38
+ },
39
+ {
40
+ title: e("listHeaders.status"),
41
+ render: (i) => /* @__PURE__ */ t(
42
+ O,
43
+ {
44
+ onboarded: i.onboarded,
45
+ onboardingStatus: i.onboardingStatus
46
+ }
47
+ )
48
+ }
49
+ ],
50
+ itemMenu: (i) => {
51
+ const a = [], S = i.onboardingStatus === P.SELF_ONBOARDING_REVIEW;
52
+ return i.allowedActions.includes("edit") && a.push({
53
+ label: e(S ? "reviewCta" : "editCta"),
54
+ onClick: () => {
55
+ b(i.uuid);
56
+ },
57
+ icon: /* @__PURE__ */ t(k, { "aria-hidden": !0 })
58
+ }), i.allowedActions.includes("cancel_self_onboarding") && a.push({
59
+ label: e("cancelSelfOnboardingCta"),
60
+ onClick: () => {
61
+ h(i.uuid);
62
+ },
63
+ icon: /* @__PURE__ */ t(x, { "aria-hidden": !0 })
64
+ }), i.allowedActions.includes("delete") && a.push({
65
+ label: e("deleteCta"),
66
+ onClick: () => {
67
+ l(i.uuid);
68
+ },
69
+ icon: /* @__PURE__ */ t(_, { "aria-hidden": !0 })
70
+ }), /* @__PURE__ */ t(N, { items: a });
71
+ },
72
+ isFetching: p,
73
+ pagination: f,
74
+ emptyState: () => /* @__PURE__ */ t(T, { title: e("emptyTableTitle"), description: e("emptyTableDescription"), children: /* @__PURE__ */ t(u, { justifyContent: "center", children: /* @__PURE__ */ t(o.Button, { onClick: m, children: e("addContractorCta") }) }) })
75
+ });
76
+ return /* @__PURE__ */ s(w, { children: [
77
+ /* @__PURE__ */ s(c, { flexDirection: "column", children: [
78
+ d && /* @__PURE__ */ t(o.Alert, { label: d, status: "success" }),
79
+ /* @__PURE__ */ s(c, { alignItems: "center", justifyContent: "space-between", children: [
80
+ /* @__PURE__ */ t(o.Heading, { as: "h2", children: e("title") }),
81
+ n.length > 0 && /* @__PURE__ */ t(o.Button, { variant: "secondary", onClick: m, children: e("addAnotherCta") })
82
+ ] }),
83
+ /* @__PURE__ */ t(R, { label: e("contractorListLabel"), ...D }),
84
+ /* @__PURE__ */ t(u, { children: /* @__PURE__ */ t(o.Button, { onClick: y, children: e("continueCta") }) })
85
+ ] }),
86
+ /* @__PURE__ */ t(
87
+ o.Dialog,
88
+ {
89
+ isOpen: !!r,
90
+ onClose: () => {
91
+ l(null);
92
+ },
93
+ onPrimaryActionClick: async () => {
94
+ if (r)
95
+ try {
96
+ await g(r), l(null);
97
+ } catch {
98
+ }
99
+ },
100
+ isPrimaryActionLoading: C.isPending,
101
+ isDestructive: !0,
102
+ title: e("deleteDialog.title"),
103
+ primaryActionLabel: e("deleteDialog.confirmCta"),
104
+ closeActionLabel: e("deleteDialog.cancelCta"),
105
+ children: e("deleteDialog.description")
106
+ }
107
+ )
108
+ ] });
109
+ }
110
+ export {
111
+ ee as ContractorListView
112
+ };
113
+ //# sourceMappingURL=ContractorListView.js.map